* {
  padding: 0;
  margin: 0;
}

li {
  list-style: none;
}


.textcenter {
  text-align: center;
}

:root {
  --size14: min(0.97vw, 14px);
  --size16: min(1.11vw, 16px);
  --size20: min(1.38vw, 20px);
  --size24: min(1.66vw, 24px);
  --size25: min(1.73vw, 25px);
  --size27: min(1.875vw, 27px);
  --size30: min(2.08vw, 30px);
  --size32: min(2.22vw, 32px);
  --size35: min(2.43vw, 35px);
  --size40: min(2.77vw, 40px);
  --size42: min(2.9vw, 42px);
  --size45: min(3.1vw, 45px);
  --size48: min(3.33vw, 48px);
  --size50: min(3.47vw, 50px);
  --size54: min(3.75vw, 54px);
  --size60: min(4.16vw, 60px);
  --size70: min(4.86vw, 70px)
}

.white {
  color: white;
}

iframe {
  width: 100%;
  margin-left: 40px;
}


body {
  color: #707070;
  font-family: "yu-gothic-pr6n", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.marugo {
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-weight: 700;
  font-style: normal;
}

a {
  text-decoration: none;
  color: #707070;
}

a:hover {
  opacity: 0.6;
}

.footer-link-item a {
  color: white;
}

header {
  display: flex;
  align-items: center;
  grid-template-columns: 0 1fr;
  width: 100%;
  justify-content: space-between;
  padding: 32px 95px;
  /* padding-top: 54px; */
  box-sizing: border-box;
  background-color: #FCF4E8;
  z-index: 1000;
  position: fixed;
  top: 0;
}

.header_logo {
  font-size: 20px;
  color: #707070;
  font-weight: bold;
}


.hamburger-btn {
  display: none;
}

.logo {
  /* width: 30%; */
  font-size: var(--size42);
  text-align: center;
  line-height: 20px;
}

.logo a {
  font-weight: bold;
}

.logo a span {
  font-size: 14px;
}

.footer-logo a {
  color: white;
}

.footer-logo span {
  font-size: 20px;
}

.header-item {
  display: flex;
  width: 100%;
  justify-content: flex-end;
  float: right;
  height: 42px;
  line-height: 42px;
  font-size: 16px;
}

.header-text {
  padding-right: 40px;
}

.header-text:nth-last-child(1) {
  padding: 0;
}

.acc-content {
  display: none;
  position: absolute;
}

.acc-content ul {
  display: flex;
  flex-direction: column;
  /* gap: 20px;
  padding-top: 20px; */
  background-color: #FCF4E8;
}

.acc-item {
  font-size: 17px;
  color: #707070;
  padding: 13px 24px 14px 11px;
}

.acc-item:hover {
  /* background-color: #005CAF; */
  opacity: 0.6;
}

.sp {
  display: none;
}

@media screen and (max-width: 768px) {

  .sp {
    display: block;
  }


  .header_logo {
    font-size: 16px;
  }

  .logo a span {
    font-size: 12px;
  }

  .footer-logo span {
    font-size: 14px;
  }

  iframe {
    width: 100%;
    margin-left: 0;
    margin-top: 32px;
    height: 240px;
  }

  header {
    display: flex;
    width: 100%;
    justify-content: space-between;
    padding: 24px 12px;
    /* padding-top: 54px; */
    box-sizing: border-box;
    background-color: #FCF4E8;
    z-index: 1000;
    position: fixed;
    top: 0;
  }

  .hamburger-btn {
    display: block;
    position: relative;
    border: none;
    background-color: #FCF4E8;
    padding: 0;
    width: 29.61px;
    height: 28px;
    right: 14.8px;
  }

  .hamburger-btn span {
    width: 100%;
    height: 1px;
    background-color: #333333;
    position: relative;
    transition: ease .4s;
    display: block;
  }

  .hamburger-btn span:nth-child(1) {
    top: 0;
  }

  .hamburger-btn.active span:nth-child(1) {
    top: 15px;
    transform: rotate(45deg);
  }

  .hamburger-btn span:nth-child(2) {
    margin: 14px 0;
    width: 18.4px;
    display: block;
  }

  .hamburger-btn.active span:nth-child(2) {
    opacity: 0;
  }

  .hamburger-btn span:nth-child(3) {
    top: 0;
  }

  .hamburger-btn.active span:nth-child(3) {
    top: -14px;
    transform: rotate(-45deg);
  }

  .header-item-wrap {
    position: fixed;
    width: 100%;
    right: -120%;
    top: 102px;
    margin: 0;
    background-color: #FCF4E8;
    height: 100vh !important;
    transition: ease .4s;
    overflow-y: scroll;
  }


  .header-item {
    height: auto;
    padding: 0;
    justify-content: unset;
    flex-direction: column;
    padding-left: 50px;
    text-align: left;
    gap: 20px;
    padding-top: 20px;
    align-items: flex-start;
    font-size: 20px;
  }

  .header-text {
    padding-left: 12px !important;
  }

  .header-item-wrap.active {
    right: 0;
    z-index: 999;
    top: 87px;
  }

  .logo {
    font-size: 20px;
  }

}

/* -----main----- */
main {
  padding-top: 88px;
  overflow-x: hidden;
  /* overflow-y: hidden; */
  padding-bottom: 120px;
  z-index: 10;
  position: relative;
}

@media screen and (max-width: 768px) {
  main {
    padding-top: 72px;
  }
}

/* -----index----- */
.index {
  position: relative;
  background: #FCF4E8;
  height: auto;
  padding-bottom: 120px;
  padding-top: 48px;
}

.attention-img {
  width: min(92.1vw, 1327px);
  width: 92.1vw;
  height: min(40vw, 750px);
  /* background-color: #D8D8D8; */
  background-position: center;
  background-size: cover;
  margin: 0 auto;
  border-radius: 50px;
}

.top-attention {
  background-image: url(assets/top/06.webp);
}

.company-attention {
  background-image: url(assets/recruit/re_2.webp);
}

.business-attention {
  background-image: url(assets/recruit/re_1.webp);
}

.recruit-attention {
  background-image: url(assets/recruit/top.webp);
}

.attention-img img {
  width: 100%;
}


.about-wrap {
  width: 100%;
  margin-top: min(19.8vw, 286px);
  padding-left: min(6.25vw, 90px);
  padding-left: 6.25vw;
  display: flex;
  gap: var(--size60);
  box-sizing: border-box;
  justify-content: space-between;
}

.about-text-wrap {
  display: flex;
  flex-direction: column;
}

.about-title {
  font-size: var(--size40);
  line-height: 54px;
}

.about-text {
  width: min(38.2vw, 550px);
  margin-top: 32px;
}

.about-img {
  width: min(50vw, 720px);
  width: 50vw;
  height: min(35vw, 504px);
  height: 35vw;
  border-top-left-radius: 50px;
  border-bottom-left-radius: 50px;
  background-image: url(assets/top/00.webp);
  background-position: center;
  background-size: cover;
}

.wave {
  position: absolute;
  height: 100px;
  width: 100%;
  background: #FCF4E8;
  bottom: 0;
}

.wave::before,
.wave::after {
  content: "";
  display: block;
  position: absolute;
  border-radius: 50% 100%;
}

.wave::before {
  width: 55%;
  height: 100%;
  background-color: #FCF4E8;
  right: -1.5%;
  top: 40%;
}

.wave::after {
  width: 55%;
  height: 109%;
  background-color: #fff;
  left: -1.5%;
  top: 60%;
}

.footer-tel-btn {
  color: white !important;
}

@media screen and (max-width: 768px) {

  .br_pc {
    display: none;
  }

  .attention-img {
    width: auto;
    height: 540px;
    margin: 0 12px;
    border-radius: 24px;
  }

  .about-wrap {
    flex-direction: column;
    padding-left: 0;
    padding: 0 12px;
  }

  .about-title {
    font-size: 32px;
    line-height: 40px;

  }



  .about-text {
    width: auto;
    margin-top: 24px;
  }

  .about-img {
    width: auto;
    height: 504px;
    margin-right: -12px;
    margin-top: 16px;
  }

  .wave {
    height: 40px;
  }
}


/* -----top-service----- */
.top-service {
  padding-top: min(6.94vw, 100px);
  padding-bottom: min(18.75vw, 270px);
}

.service-title-wrap {
  margin: 0 auto;
  text-align: center;
  width: fit-content;
  margin-top: 64px;
}

.service-title {
  font-size: var(--size40);
  line-height: 54px;
}

.service-text {
  margin-top: min(6vw, 87px);
  font-size: var(--size16);
  width: min(53.6vw, 772px);
  line-height: var(--size27);
}

.service-content-wrap {
  /* width: 100%; */
  padding: 0 min(5vw, 72px);
  display: flex;
  justify-content: space-evenly;
  gap: 60px min(4.7vw, 68px);
  flex-wrap: wrap;
  margin-top: min(9.3vw, 134px);
}

.service-content {
  width: min(42vw, 611px);
  text-align: center;
}

.service-content:nth-child(even) {
  padding-top: 60px;
}

.content-title {
  font-size: var(--size32);
  color: #EF8123;
}

.contetn-img {
  width: 100%;
  background-color: #D8D8D8;
  border-radius: 51px;
  height: min(24.3vw, 350px);
  margin-top: var(--size60);
  background-position: center;
  background-size: cover;
}

.contetn-img._02 {
  background-image: url(assets/top/01.webp);
}

.contetn-img._01 {
  background-image: url(assets/top/02.webp);
}

.contetn-img._03 {
  background-image: url(assets/top/04.webp);
}

.contetn-img._04 {
  background-image: url(assets/top/07.webp);
}



.content-text {
  font-size: var(--size16);
  line-height: var(--size27);
  margin-top: var(--size45);
}

.btn {
  width: min(26vw, 374px);
  height: min(4.09vw, 59px);
  background-color: #F8AC00;
  border: 3px solid #EF8123;
  border-radius: 42px;
  text-align: center;
  color: #fff;
  margin: 0 auto;
}

.content-btn {
  margin-top: var(--size70);
}

.btn-text {
  font-size: var(--size16);
  line-height: var(--size27);
  line-height: min(4.09vw, 59px);
  position: relative;
}

.btn-text span {
  position: absolute;
  right: 25px;
}

@media screen and (max-width: 768px) {
  .service-title {
    font-size: 32px;
    line-height: 40px;
  }

  .service-title span {
    display: block;
  }

  .service-text {
    font-size: 16px;
    width: auto;
    padding: 0 12px;
    line-height: 27px;
  }

  .service-content {
    width: 100%;
  }

  .content-title {
    font-size: 32px;
  }

  .contetn-img {
    height: 350px;
  }

  .content-text {
    font-size: 16px;
    line-height: 27px;
    margin-top: 24px;
  }

  .content-btn {
    margin-top: 70px;
  }

  .btn {
    /* width: 374px; */
    width: 100%;
    height: 59px;
    background-color: #F8AC00;
    border: 3px solid #EF8123;
    border-radius: 42px;
    text-align: center;
    color: #fff;
    margin: 0 auto;
    margin-top: 20px;
  }

  .btn-text {
    font-size: 16px;
    line-height: 59px;
  }

  .service-content:nth-child(even) {
    padding-top: 0px;
  }
}

/* -----recruit----- */
.recruit {
  padding: 0 73px;
  padding: 0 5.06vw;
  padding-bottom: 94px;
  background-image: url(assets/top/03.webp);
  background-position: center;
  background-size: cover;
}

.recruit-wrap {
  width: 100%;
  /* margin-top: min(19.8vw,286px);
  padding-left: min(6.25vw ,90px); */
  display: flex;
  gap: var(--size60);
  box-sizing: border-box;
  justify-content: space-evenly;
}

.recruit-text-wrap {
  display: flex;
  flex-direction: column;
  gap: var(--size60);
  padding-top: min(16.65vw, 355px);
}

.recruit-title {
  font-size: var(--size40);
  line-height: min(4.72vw, 68px);
  font-weight: bold
}

.recruit-text {
  width: min(53.6vw, 772px);
  width: 53.6vw;
  font-size: var(--size16);
  line-height: var(--size27);
}

.recruit-img-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
}

.recruit-img {
  height: 400px;
  width: 100%;
}



@media screen and (max-width: 768px) {

  .recruit-img {
    display: none;
  }

  .recruit {
    padding: 0 12px;
    padding-bottom: 60px;
  }

  .recruit-wrap {
    flex-direction: column;
  }

  .recruit-title {
    font-size: 24px;
    line-height: 40px;
    font-weight: bold;
  }

  .recruit-text {
    width: auto;
    font-size: 16px;
    line-height: 27px;
  }
}

.bottom-wave {
  position: relative;
  background: #FCF4E8;
  height: auto;
  padding-top: min(12.15vw, 175px);
  padding-bottom: 115px;
}

.insta-title {
  text-align: center;
  font-size: var(--size40);
  line-height: min(4.72vw, 68px);
}

.insta-img-list {
  width: min(77vw, 1095px);
  padding: 0 min(11.94vw, 172px);
  padding: 0 11.94vw;
  display: flex;
  flex-wrap: wrap;
  gap: 16px 13px;
  padding-top: min(3.33vw, 48px);
  justify-content: center;
  margin: 0 auto;
}

.insta-list-item {
  width: min(18.33vw, 264px);
  height: min(18.68vw, 269px);
  /* background-color: #D8D8D8; */
}

.insta-list-item a img {
  width: 100%;
  height: 100%;
}

.footer-wave {
  position: absolute;
  height: 100px;
  width: 100%;
  background: #FCF4E8;
  bottom: 0;
}

.footer-wave::before,
.footer-wave::after {
  content: "";
  display: block;
  position: absolute;
  border-radius: 100% 50%;
}

.footer-wave::before {
  width: 55%;
  height: 109%;
  background-color: #F8AC00;
  right: -1.5%;
  top: 60%;
}

.footer-wave::after {
  width: 55%;
  height: 100%;
  background-color: #FCF4E8;
  left: -1.5%;
  top: 40%;
}

@media screen and (max-width:768px) {
  .insta-title {
    font-size: 32px;
    line-height: 40px;
  }

  .insta-img-list {
    padding: 0 12px;
    padding-top: 32px;
    flex-direction: column;
    align-items: center;
  }

  .insta-list-item {
    width: 100%;
    height: auto;
    aspect-ratio: 264/269;
  }

  .footer-wave {
    height: 40px;
  }
}

/* ----footer----- */
footer {
  background-color: #F8AC00;
  position: relative;
  padding: 0 min(9.3vw, 134px);
  margin-top: -120px;
  padding-top: 120px;
  color: #fff;
}

.footer-wrap {
  display: flex;
  justify-content: space-between;
}

.footer-content {
  width: min(41.52vw, 598px);
  padding-bottom: 117px;
}

.footer-logo {
  font-size: min(2.58vw, 66px);
  line-height: 48px;
  font-weight: bold;
}

.footer-add {
  font-size: var(--size16);
  line-height: var(--size27);
  margin-top: 32px;
}

.footer-link-wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 27.5px;
  margin-top: 24px;
}

.footer-link-item {
  width: min(19.79vw, 285px);
  text-align: left;
  border-bottom: 1px solid;
  font-size: var(--size20);
  line-height: min(2.36vw, 34px);
  padding-bottom: 12.5px;
  font-weight: bold;
}

.footer-btn-wrap {
  display: flex;
  margin-top: 40px;
  gap: 28px;
}

.footer-contact-btn {
  width: min(19.79vw, 285px);
  height: var(--size70);
  line-height: var(--size70);
  position: relative;
  border-radius: 10px;
  color: #F8AC00;
  background-color: #fff;
  text-align: left;
  padding: 0 22px 0 32px;
  box-sizing: border-box;
  margin: 0;
  border: none;
}

.footer-contact-btn span {
  position: absolute;
  right: 25px;
}

.footer-tel-btn {
  width: min(19.79vw, 285px);
  height: var(--size70);
  line-height: var(--size70);
  position: relative;
  border-radius: 10px;
  border: 1px solid #fff;
  text-align: left;
  padding-left: 28px;
  box-sizing: border-box;
}

.footer-tel-time {
  font-size: var(--size14);
  line-height: var(--size24);
}

.copyright {
  font-size: var(--size14);
  line-height: var(--size24);
  margin-top: 16px;
  padding-bottom: 24px;
}

.footer-map {
  width: min(32.43vw, 467px);
  width: 32.43vw;
  height: min(25.2vw, 363px);
  height: 25.2vw;
  aspect-ratio: 467 / 363;
  background-color: #D8D8D8;
}

@media screen and (max-width:768px) {
  footer {
    padding: 0 12px;
    padding-top: 80px;
  }

  .footer-wrap {
    flex-direction: column;
  }

  .footer-content {
    width: 100%;
    padding-bottom: 0;
  }

  .footer-logo {
    font-size: 24px;
    line-height: 35px;
  }

  .footer-add {
    font-size: 16px;
    line-height: 27px;
  }

  .footer-link-wrap {
    flex-direction: column;
    margin-top: 20px;
  }

  .footer-link-item {
    width: 100%;
    font-size: 20px;
    line-height: 34px;
  }

  .footer-btn-wrap {
    flex-direction: column;
  }

  .footer-contact-btn {
    width: 100%;
    height: 70px;
    line-height: 70px;
  }

  .footer-tel-btn {
    width: 100%;
    height: 70px;
    line-height: 70px;
    margin-top: 0;
  }

  .footer-tel-time {
    font-size: 14px;
    line-height: 24px;
  }

  .copyright {
    font-size: 14px;
    line-height: 24px;
    width: 100%;
    text-align: center;
    padding-bottom: 16px;
  }

  .footer-map {
    width: 100%;
    height: auto;
    aspect-ratio: 467 / 363;
    margin-top: 30px;
    margin-bottom: 80px;
  }
}