@media screen and (max-width: 1500px) {
  .header-inner.flex {
    max-width: calc(100% - 30px);
  }
}

@media screen and (max-width: 1400px) {
  .logo {
    width: 270px;
  }

  .g-menu-wrap {
    width: calc(100% - 280px);
  }

  .g-menu-a-list > li {
    width: calc(100% / 6);
    padding: 0 8px;
  }

  .menu-image-title {
    font-size: 1.3rem;
  }

  .link-img {
    width: 200px;
  }

  .link-content {
    width: calc(100% - 200px);
  }
}
@media screen and (max-width: 480px) {
    section.slider {
        margin: 20px 20px auto;
        border-radius: 80px 80px 10px 10px;
        overflow: hidden;
    }
}
@media screen and (max-width: 600px) {
    section.slider {
        margin: 30px 20px auto;
        border-radius: 100px 100px 10px 10px;
        overflow: hidden;
    }
	.slider::after {
    bottom: -20px;
}
}

@media screen and (max-width: 1024px) {	
	body {
    margin-bottom: 46px;
  }
	.title01, .title02, .title03 {
    font-size: 2rem;
}
	.title02 {
    padding-left: 3em;
}
	.title03 {
    margin-bottom: 10px;
}
	
ul.file-box.flex li {
    width: 100%;
    text-align: center;
}

  .open-btn-wrap,
  .pc-side-menu,
  .side-btn-wrap {
    display: none;
  }

  .foot-btn-wrap {
    display: flex;
    position: fixed;
    bottom: 0;
    width: 100%;
  }

  .foot-btn {
    width: 50%;
  }

  .foot-btn02 {
    border-left: 1px solid #fff;
  }

  .foot-btn a {
    display: block;
    padding: 10px;
    text-align: center;
    color: #fff;
    background-color: #FF99B3;
    font-size: 1.5rem;
    font-weight: bold;
  }
	.sub-header {
    width: calc(100% - 30px);
    height: 200px;

}
	.sub-header-txt {
    font-size: 2.5rem;
}
	#page-top {
    position: fixed;
    right: 15px;
    bottom: 55px;
    z-index: 2;
  }
	div#page-top img {
    max-width: 50px;
}

}

@media screen and (max-width:820px) {}


@media screen and (max-width: 1200px) {
	.rinen-box {
    padding: 15px!important;
    width: 96%!important;
}
}

@media screen and (max-width: 1024px) {}

@media screen and (max-width:820px) {}

@media screen and (max-width:600px) {}

 
@media screen and (max-width:770px) {
	br.pc {
    display: none;
}
	br.sp {
    display: block;
}
	.pc {
    display: none;
}
	.sp {
    display: block;
}
	.half {
    width: 100%;
}
	.left30, .right70, .left70, .right30, .left40, .right60, .left60, .right40 {
    width: 100%;
}
	.receive {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
}
	
	.news-con {
    padding: 30px;
}
	section#greeting {
    background-position: 100% 0, -10% 5%, 110% 98%, 0 0;
    background-size: 25%, 40%, 40%, contain;
    padding: 150px 0 100px;
}
	.greet-box .left40 img {
    max-width: 300px;
}
	.greet-img:before {
    content: "";
    width: 110px;
    height: 100px;
    position: absolute;
    bottom: 10px;
    left: -15px;
}
	p.greeting-txt {
    font-size: 15px;
    line-height: 25px;
}
	
	.rinen-box {
    padding: 30px;
    border-radius: 30px;
    width: 95%;
}
	.intro-box-item img {
    width: 100%;
    height: 120px;
    object-fit: cover;
    border-radius: 10px;
}
	.intro-box .intro-box-item {
    width: 46%;
    margin-bottom: 20px;
}
	h3.intro-title {
    font-size: 15px;
}
	p.rinen-txt.mb30 {
    font-size: 15px;
    line-height: 25px;
    text-align: left;
}
	section#introduction {
    background-size: 30%, 30%, 100%, 100%;
}
	.com-flow02-txt {
        text-align: left!important;
    }
	section#flow {
    background-size: 100%, 30%, 30%;
    background-position: 0 bottom, 95% 0%, 0% 99%;
}
    section#overview {
        background-size: 30%;
        background-position: 0 7%, 100% 98%;
    }
	
	ul.company-list.flex {
    display: block;
}
	ul.company-list.flex li {
    width: 100%;
}
	a.bnr, a.bnr02 {
    width: 100%;
}
	span.number {
    font-size: 24px;
}
	.pdf-list a {
    font-size: 16px;
}
	section#massage {
    background-size: 30%;
    background-position: 0 5%, 100% 5%;
}
	.mass-box p {
    text-align: left;
    font-size: 16px;
    margin-bottom: 40px;
}
	section#contact {
    background-size: 50%;
    background-position: -25% -3%, 110% 102%;
}
	section.recruit-section02 {
    padding: 30px 10px 10px;
}
	ul.work-list li {
    width: 100%;
}
	h3.work-title {
    font-size: 16px;
}
	.com-interview02-img img {
        height: 50vw!important;
    }
	
	section.recruit-section03 {
    background: #fff;
    border-radius: 0;
    margin: 0;
    padding: 30px 10px 10px;
}
	p.con-txt {
    font-size: 15px;
}
	


	}