@media screen and (max-width: 1800px) {
	.header-menu > li a{
		padding: 0 1vw;
	}
	.header-box01 .logo {
		max-width: 12vw;
	}
	.g-sub-nav02 .g-sub-nav-list.flex li:first-child a {
        position: relative;
		font-size: 2.3rem;
	}
	.g-sub-nav02 .g-sub-nav-list.flex li:last-child a {
  font-size: 1.5rem;
  text-align: center;
  margin-left: 0px;
	}
	  .header-inner.flex, .header-box01, .header-box02 {
    padding: 0;
  }
	.header-sub-box{
		width: 16vw;
	}
}

@media screen and (max-width: 1200px) {
	.header-menu > li a {
		font-size: 1.5rem;
	}
	  .g-sub-nav02 .g-sub-nav-list.flex li:first-child a {
    position: relative;
    font-size: 18px;
	}
	.g-sub-nav02 .g-sub-nav-list.flex li:first-child a::before {

  width: 20px;
		height: 20px;
	}
}
@media screen and (max-width: 1024px) {
    header {
        position: relative;
        top: 0;
    }
    .footer-inner {
        width: 90%;
    }
	#page-top{
		z-index: 100;
	}
	.sp-header-inner .logo img {
  max-height: 100px;
  width: auto;
  margin-left: 5px;
  background: #fff;
  border-radius: 50%;
  padding: 10px;
}
}

@media screen and (max-width:820px) {
	p, a, li, dt, dd, time, h1, h2, h3, h4, h5, h6, th, td, span {
  font-size: 1.6rem;
}
    .txt-slider {
        font-size: 2rem;
		font-weight: 900;
    }
	.txt-center{
		width: 100%;
  text-align: center;
	}
    .mb100 {
        margin-bottom: 50px !important;
    }
    .box50 {
        width: 100%;
    }
	#area{
		padding:100px 0;
	}
    .block-greet {
        background: #fff;
        padding: 30px;
    }
    .footer-address p {
        font-size: 14px;
    }
    #greeting .ab02 {
        width: 20vw;
    }
	.list-pdf{
		display:block;
	}
	.list-pdf li{
		width:80%;
		margin:0 auto 20px;
	}
	#policy01 {
		padding: 50px 0;
	}
	#policy02 {
		padding: 50px 0 20vw;
	}
	.frame02{
		padding: 20px;
	}
	.frame02 p{
		text-align:left;
	}
	.list01 li{
		font-size:14px;
    }
	.ttl01 {
  font-weight: 500;
  font-size: 2rem;
  margin-bottom: 50px;
  width: 90%;
  text-align: center;
		margin: 0 auto 30px;
	}
	
	span.ftbl {
		display: inline-block;
		font-size: 14px;
	}
}
@media screen and (max-width:600px) {
    .com-menu01-list {
        padding: 20px;
    }
    .list-pdf a {
        width: 80%;
        margin: 0 auto 20px;
    }
}

@media screen and (max-width:450px) {
	.job-table th{
		width:100%;
	}
	  #policy01 {
    padding: 20px 0;
  }
	  #policy02 {
    padding: 10px 0 20vw;
  }
}

/*2025-1125 contact_header*/
@media screen and (max-width: 1024px) {
	.contact {
    padding: 0px 0;
  }
}