@charset "utf-8";
@media all and (max-width:1320px) {
  #mainVisual .slick-dots {
    left: 15px;
    width: 100%;
  }
}
@media all and (max-width:1220px) {
  #mainVisual {
    height: 700px;
  }
}
@media all and (max-width:1024px) {
  #mainVisual .main-visual-item .main-visual-txt-con .area {
    padding: 0 8%;
  }
  #mainVisual .slick-dots {
    left: 8%;
  }
  #mainVisual p {
    font-size: 18px;
  }
  #mainVisual h2 {
    font-size: 40px;
  }
  .main-title {
    margin-bottom: 40px;
  }
  .main-title h3 {
    font-size: 45px;
    margin-bottom: 20px;
  }
  #section1 {
    padding: 70px 2%;
  }
  .main_sec01_item a {
    padding: 70px 15%;
    min-height: 486px;
  }
  .main_sec01_org > h5 {
    font-size: 25px;
    line-height: 1.4;
    word-break: keep-all;
  }
  .main_sec01_org .arrow {
    opacity: 1;
    margin-top: 24px;
  }
  .main_sec01_org .arrow p {
    font-size: 0.8em;
    line-height: 1.4;
  }
  p.nor-btn {
    padding: 7px 25px;
    font-size: 0.8em;
    margin-top: 20px !important;
  }
  #section2 {
    padding: 70px 2%;
  }
  .mainsec02_item a {
    padding: 45px 10px 45px 10px;
  }
  .mainsec02_item p.img img {
    width: 100px;
  }
  #section3 {
    padding: 70px 2%;
    flex-wrap: wrap;
  }
  #section3 .main-title {
    text-align: center;
    width: 100%;
  }
  #section3 .main-title h3 + p br {
    display: none
  }
  #section3 .main-title h3 + p + .nor-btn {
    display: none;
  }
  .main-result {
    width: 100%;
  }
  #section4 {
    padding: 70px 0%;
  }
  .mainsec04_item {
    background: #fff url(../images/mainsec04_icon02.png) no-repeat calc(100% - 20px) calc(100% - 20px);
    padding: 40px 25px;
    background-size: 70px auto;
  }
  .mainsec04_item:first-child {
    background: #fff url(../images/mainsec04_icon01.png) no-repeat calc(100% - 20px) calc(100% - 20px);
    background-size: 70px auto;
  }
  .mainsec04_item:last-child {
    background: #fff url(../images/mainsec04_icon03.png) no-repeat calc(100% - 20px) calc(100% - 20px);
    background-size: 70px auto;
  }
  .mainsec04_item h5 {
    font-size: 25px;
    margin-bottom: 15px;
  }
  .mainsec04_item p br {
    display: none
  }
  .mainsec04_item a {
    padding: 7px 20px;
    margin-top: 20px;
  }
}
@media all and (max-width:950px) {
  #mainVisual {
    height: 600px;
  }
}
@media all and (max-width: 800px) {
  #mainVisual {
    height: 550px;
  }
  #mainVisual p {
    font-size: 16px;
  }
  #mainVisual h2 {
    font-size: 30px;
    margin-bottom: 15px;
  }
	#mainVisual .slick-dots {
    bottom: 50px;
}
  .main-title {
    margin-bottom: 30px;
  }
  .main-title h3 {
    font-size: 35px;
    margin-bottom: 10px;
  }
  #section1 {
    padding:50px 2%;
  }
  .main_sec01_item a {
    padding: 50px 15%;
    min-height: 386px;
  }
  .main_sec01_org > h5 {
    font-size: 20px;
  }
  .main_sec01_org .arrow {
    margin-top: 18px;
  }
  p.nor-btn {
    margin-top: 15px !important;
  }
  #section2 {
    padding: 50px 2%;
  }
	.mainsec02_flex {
    gap: 10px;
}
  .mainsec02_item a {
    padding: 35px 10px 35px 10px;
  }
  .mainsec02_item p.img img {
    width:80px;
  }
  #section3 {
    padding: 50px 2%;
  }
  #section4 {
    padding: 50px 0%;
  }
.mainsec04_flex {
    gap: 15px;
}
  .mainsec04_item h5 {
    font-size: 20px;
    margin-bottom: 15px;
  }
  .mainsec04_item a {
    padding: 5px 20px;
    margin-top: 15px;
  }
}
@media all and (max-width:480px) {
  #mainVisual {
    height: 300px;
  }
  #mainVisual h2 {
    font-size: 24px;
  }
  #mainVisual p {
    font-size: 14px;
  }
   .main-title {
    margin-bottom: 30px;
  }
  .main-title h3 {
    font-size: 25px;
  }
  #section1 {
    padding:30px 15px;
  }
	.main_sec01_flex {
		flex-wrap:wrap;
	}
	.main_sec01_item {
    width: calc(50% - 6px);
}
  .main_sec01_item a {
    padding: 40px 15%;
    min-height: 300px;
  }
  .main_sec01_org > h5 {
    font-size: 20px;
  }
  .main_sec01_org .arrow {
    margin-top: 18px;
  }
  p.nor-btn {
    margin-top: 15px !important;
  }
  #section2 {
    padding: 30px 15px;
  }
	.mainsec02_flex {
            flex-wrap: wrap;
		justify-content: center;
}
	.mainsec02_item {
    width: calc(33.333% - 10px);
}
  .mainsec02_item a {
   padding: 25px 5px 25px 5px;
  }
	.mainsec02_item p.img {
    margin-bottom: 10px;
}
  .mainsec02_item p.img img {
    width:50px;
  }
  #section3 {
    padding: 30px 15px;
  }
	.main_result_list li {
    width: calc(50% - 5px);
    padding: 5px 5px 15px 5px;
}
  #section4 {
    padding: 30px 0%;
  }
.mainsec04_flex {
    gap: 15px;
}
	 .mainsec04_item {
    background: #fff url(../images/mainsec04_icon02.png) no-repeat calc(100% - 15px) calc(100% - 15px);
    padding: 20px 15px 60px 15px;
    background-size: 40px auto;
  }
  .mainsec04_item:first-child {
    background: #fff url(../images/mainsec04_icon01.png) no-repeat calc(100% - 15px) calc(100% - 15px);
    background-size: 40px auto;
  }
  .mainsec04_item:last-child {
    background: #fff url(../images/mainsec04_icon03.png) no-repeat calc(100% - 15px) calc(100% - 15px);
    background-size: 40px auto;
  }
	.mainsec04_item p {display:none;}
	    .mainsec04_flex {
        gap: 5px;
    }
  .mainsec04_item h5 {
    font-size: 20px;
    margin-bottom: 10px;
  }
  .mainsec04_item a {
    padding: 5px 10px;
    margin-top: 0px;
  }
}