@charset "utf-8";
/*------------------------------------------------------------
	トップページ
------------------------------------------------------------*/
#main .mainVisual {
  position: relative;
}
#main .mainVisual .img {
  position: absolute;
  bottom: -8%;
  left: 2.73%;
  right: 2.8%;
}
#main .mainVisual ul {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
  bottom: 12.4%;
}
#main .mainVisual ul li {
  width: 361px;
  margin: 0 4px;
  display: inline-block;
}
#main .mainVisual ul li a:hover img {
  opacity: 0.7;
}
#main .sec01 .img02 {
  position: relative;
}
#main .sec01 .img02 .icon01 {
  position: absolute;
  left: 0;
  top: -35px;
  text-align: center;
  width: 100%;
}
#main .sec01 .img02 .icon01 img {
  width: 189px;
}
#main .sec01 .img02 .icon02 {
  position: absolute;
  left: 0;
  bottom: -84px;
  text-align: center;
  width: 100%;
}
#main .sec01 .img02 .icon02 img {
  width: 555px;
}
#main .sec02 {
  background-color: #e7edf3;
}
#main .sec02 .topImg {
  position: relative;
}
#main .sec02 .topImg p {
  position: absolute;
  top: 66.6%;
  left: 5%;
  width: 55%;
}
#main .sec02 .topImg p .red {
  color: #c1272d;
}
#main .sec02 .topImg p .size {
  margin-top: 12px;
  font-size: 2.1rem;
  display: block;
}
#main .sec02 .topImg p .size span {
  margin-top: 5px;
  font-size: 2rem;
  display: block;
}
#main .sec02 .txtBox {
  margin: -12.2% 45px 89px 16px;
  position: relative;
}
#main .sec02 .txtBox p {
  position: absolute;
  top: 66.2%;
  left: 13.5%;
  right: 7%;
}
#main .sec02 .txtBox p .red {
  color: #c1272d;
}
#main .sec02 .txtBox p .size {
  font-size: 2.1rem;
  display: block;
}
#main .sec02 .txtBox p .size span {
  margin-top: 5px;
  font-size: 2rem;
  display: block;
}
#main .sec02 .txtBox .icon {
  margin-left: -78px;
  position: absolute;
  left: 50%;
  bottom: -43px;
  text-align: center;
  width: 240px;
}
#main .sec03 {
  margin: -17.8% 0 0;
  padding-top: 18.1%;
  text-align: center;
  background: url("../img/index/bg01.png") no-repeat top center;
  background-size: 100% auto;
}
#main .sec03 .textImg {
  margin: 0 17px 28px 0;
}
#main .sec03 .textImg img {
  width: 712px;
}
#main .sec03 .ttl {
  margin-bottom: 25px;
}
#main .sec03 .btmTxt {
  margin-top: -22%;
}
#main .sec03 .btmTxt .red {
  display: block;
  color: #c1272d;
}
#main .sec03 .btmTxt .size {
  margin-top: 28px;
  display: block;
  font-size: 2rem;
}
#main .sec04 .topImg {
  margin: -6% 0 -33.2%;
}
#main .sec04 .bgBox {
  padding: 90% 0 0;
  background: url("../img/index/bg02.png") no-repeat top center #eeb4a9;
  background-size: 100% auto;
}
#main .sec04 .bgBox .topTtl {
  margin: 10px 0 41px;
  text-align: center;
}
#main .sec04 .bgBox .topTtl span {
  margin-top: 26px;
  display: block;
  font-size: 2rem;
}
#main .sec04 .bgBox .img {
  position: relative;
}
#main .sec04 .bgBox .img p {
  position: absolute;
  width: 56%;
}
#main .sec04 .bgBox .img p .red {
  color: #c1272d;
}
#main .sec04 .bgBox .img .txt01 {
  left: 36%;
  top: 24%;
}
#main .sec04 .bgBox .img .txt02 {
  left: 11%;
  top: 54%;
}
#main .sec04 .bgBox .img .txt03 {
  left: 36%;
  top: 82%;
}
#main .sec04 .bgBox .icon {
  text-align: center;
}
#main .sec04 .bgBox .icon img {
  width: 612px;
  margin-bottom: -60px;
  position: relative;
  z-index: 1;
}
#main .sec05 .img {
  position: relative;
}
#main .sec05 .img p {
  position: absolute;
  width: 47%;
  font-size: 2.9rem;
  line-height: 1.39;
  color: #2a4b67;
}
#main .sec05 .img .txt01 {
  left: 16%;
  top: 29.9%;
}
#main .sec05 .img .txt02 {
  left: 38%;
  top: 50.4%;
  color: #fff;
}
#main .sec05 .img .txt03 {
  left: 16.5%;
  top: 68.5%;
}
#main .sec05 .img .txt04 {
  left: 39%;
  top: 87%;
  color: #fff;
}
#main .sec05 .img .txt04 span {
  display: block;
  font-size: 2rem;
  margin-top: 12px;
}
#main .sec06 {
  padding-bottom: 103px;
  margin-top: -65px;
  background-color: #234b7c;
}
#main .sec06 .photo img {
  margin-bottom: -120px;
}
#main .sec06 .img {
  margin: 0 25px;
  position: relative;
}
#main .sec06 .img01 {
  margin-bottom: 60px;
}
#main .sec06 .img ul {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
  bottom: 19%;
}
#main .sec06 .img01 ul {
  bottom: 20.4%;
}
#main .sec06 .img ul li {
  width: 361px;
  margin: 0 4px;
  display: inline-block;
}
#main .sec06 .img ul li a:hover img {
  opacity: 0.7;
}
#main .sec06 .btmBox {
  padding: 0 46px;
}
#main .sec06 .btmBox .ttl {
  margin-bottom: 27px;
  text-align: center;
  color: #fff;
  font-size: 6rem;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
}
#main .sec06 .btmBox table {
  width: 100%;
  border-collapse: collapse;
}
#main .sec06 .btmBox table th,
#main .sec06 .btmBox table td {
  padding: 24px 29px 23px;
  vertical-align: top;
  text-align: left;
  font-size: 2.5rem;
  color: #fff;
  border: 1px solid #fff;
  box-sizing: border-box;
}
#main .sec06 .btmBox table th {
  padding: 9px 8px;
  width: 29.6%;
  text-align: center;
}
#main .sec06 .btmBox table th span {
  padding: 23px 0 18px;
  color: #6a6a6a;
  font-size: 3.5rem;
  line-height: 1.43;
  display: block;
  background-color: #fff;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
}
#main .sec07 {
  padding-bottom: 101px;
}
#main .sec07 .textImg {
  margin-bottom: 37px;
}
#main .sec07 .textImg img {
  margin: -48px 0 0;
}
#main .sec07 .map {
  margin: 0 45px 48px;
  position: relative;
  padding-bottom: 44.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
  background-color: #ccc;
}
#main .sec07 .map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#main .sec07 .txtUl {
  margin: 0 45px 50px;
  border-top: 2px solid #5f8bb2;
}
#main .sec07 .txtUl li {
  display: flex;
  align-items: center;
  border-bottom: 2px solid #5f8bb2;
}
#main .sec07 .txtUl li .lTxt {
  width: 36%;
  position: relative;
  font-weight: bold;
  text-align: center;
  font-size: 2.5rem;
  color: #5f8bb2;
  box-sizing: border-box;
}
#main .sec07 .txtUl li .rTxt:before {
  position: absolute;
  left: -10px;
  top: -10px;
  width: 20px;
  height: 20px;
  background-color: #fff;
  content: "";
}
#main .sec07 .txtUl li:last-child .rTxt:after {
  position: absolute;
  left: -10px;
  bottom: -10px;
  width: 20px;
  height: 20px;
  background-color: #fff;
  content: "";
}
#main .sec07 .txtUl li .rTxt {
  padding: 33px 55px 24px;
  color: #6f6e6c;
  font-size: 2.7rem;
  line-height: 1.39;
  position: relative;
  border-left: 2px solid #5f8bb2;
  box-sizing: border-box;
}
#main .sec07 .linkUl {
  margin: 0 45px;
  display: flex;
  justify-content: space-between;
}
#main .sec07 .linkUl01 {
  margin-bottom: 103px;
}
#main .sec07 .linkUl li {
  width: 411px;
}
#main .sec07 .linkUl li a:hover img {
  opacity: 0.7;
}
#main .sec08 {
  padding: 103px 45px 63px;
  background: url("../img/index/bg03.png") no-repeat top center #e7edf3;
  background-size: 100% auto;
}
#main .sec08 .textImg {
  margin-bottom: 87px;
  text-align: center;
}
#main .sec08 .textImg img {
  width: 669px;
}
#main .sec08 .title {
  margin-bottom: 18px;
  color: #5f8bb2;
  font-size: 2.5rem;
  font-weight: bold;
}
#main .sec08 .title span {
  font-weight: normal;
  display: block;
  color: #6f6e6c;
  font-size: 6.2rem;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", serif;
}
#main .sec08 dl {
  font-size: 2.5rem;
  color: #6f6e6c;
}
#main .sec08 dt {
  float: left;
}
#main .sec08 dd {
  padding: 0 0 1px 5em;
}
#main .sec08 .title01 {
  margin: 37px 0 3px;
}
#main .sec08 .dlList dd {
  padding-left: 4em;
}
#main .sec08 .dlList .ddStyle01 {
  padding-left: 6em;
}

/* ホームページに戻るボタン・トップへ戻るボタンを追加 2025/07/01 */
#gHeader .logo a:hover {
  opacity: 0.7;
}
#pagetop {
  z-index: 100;
  position: fixed;
  bottom: 40px;
  right: 20px;
}
#pagetop a {
  width: 65px;
  height: 65px;
  display: block;
  -webkit-box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.615);
  box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.615);
  border-radius: 50px;
  -webkit-transition: 0.3s;
  transition: opacity 0.5s ease, visibility 0.5s ease;
  opacity: 0;
  visibility: hidden;
}
#pagetop.show a {
  opacity: 1;
  visibility: visible;
}
@media only screen and (max-width: 640px) {
  #pagetop a {
    width: 100px;
    height: 100px;
  }
}
/* ここまでホームページに戻るボタン・トップへ戻るボタンを追加 2025/07/01 */
