body {
  padding-top: 0;
}
header {
  /* background-color: unset; */
}
footer {
  margin-top: 0;
}
/* ------------------------------------------
  sec_mv
------------------------------------------ */
.sec_mv {
  background-image: url(../img/top/top_mv.png);
  background-position: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  height: 110rem;
}
@media screen and (min-width: 2200px) {
  .sec_mv {
    height: 110rem;
  }
}
.sec_mv .mv_container {
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: flex-end;
  margin: 0 auto;
  max-width: 133rem;
  padding: 0 2rem;
}
.sec_mv .mv_container .sec_mv_text {
  margin-bottom: 20rem;
  position: relative;
  z-index: 3;
}
.sec_mv .mv_container .sec_mv_text .bold {
  display: inline-block;
  color: #666666;
  font-size: 6.0rem;
  font-weight: 700;
  line-height: calc(99/69);
  background-color: #FFFFFF;
  padding: 0 1rem;
  letter-spacing: 0.5rem;
}
.sec_mv .mv_container .sec_mv_text .bold:last-of-type {
  margin-bottom: 1rem;
}
.sec_mv .mv_container .sec_mv_text .bold span {
  font-size: 4.7rem;
  font-weight: 700;
  line-height: 2;
  line-height: calc(99/47);
}
.sec_mv .mv_container .sec_mv_text .circle img {
  max-width: 35rem;
  margin-top: 2rem;
}
.sec_mv .mv_container .sec_mv_text .circle .text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  width: 100%;
}
.sec_mv .mv_container .sec_mv_text .circle .white {
  font-family: "BIZ UDGothic", sans-serif;
  color: #fff;
  font-weight: 500;
  font-size: 5.5rem;
  line-height: calc(55/40);
  letter-spacing: 0.15em;
  padding-top: 2rem;
}
.sec_mv .mv_container .sec_mv_text .circle .white span {
  font-size: 2.2rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: calc(23/40);
  display: block;
}
.sec_mv .mv_container .sec_mv_text .circle .num {
  font-family: "Oswald", sans-serif;
  color: #FFF000;
  font-size: 5rem;
  font-weight: 700;
  line-height: calc(50/57);
}
.sec_mv .mv_container .sec_mv_text .circle .num span {
  font-family: "BIZ UDGothic", sans-serif;
  font-size: 3.2rem;
  line-height: 1.8;
  font-weight: 400;
}
.sec_mv .mv_container .sec_mv_text .circle .yellow {
  font-family: "BIZ UDGothic", sans-serif;
  color: #FFF000;
  font-size: 4.1rem;
  letter-spacing: 0.1em;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .sec_mv {
    background-image: url(../img/top/top_mv_sp.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 35rem;
  }
  .sec_mv .mv_container {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: flex-end;
    margin: 0 auto;
    max-width: 150rem;
    /*padding: 0 2rem;*/
    padding: 50rem 2rem 0rem 2rem;
  }
  .sec_mv .mv_container .sec_mv_text {
    margin-bottom: 0rem;
  }
  .sec_mv .mv_container .sec_mv_text .bold {
    display: inline-block;
    font-size: 3.0rem;
    line-height: calc(85/69);
    background-color: #FFFFFF;
    padding: 0 1rem;
  }
  .sec_mv .mv_container .sec_mv_text .bold:last-of-type {
    margin-bottom: 1rem;
  }
  .sec_mv .mv_container .sec_mv_text .bold span {
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 2em;
    line-height: calc(18/47);
  }
  .sec_mv .mv_container .sec_mv_text .circle img {
    max-width: 15rem;
    margin-top: 2rem;
  }
}
/* ------------------------------------------
  sec01
------------------------------------------ */
.sec01 {
  background-image: url(../img/top/sec01_back.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: 2;
padding: 1rem 0 5rem 0;
    margin-top: -85rem;
}
@media screen and (min-width: 2200px) {
  .sec01 {
    padding: 90rem 0 20rem 0;
  }
}
.sec01 .title_img {
  max-width: 50rem;
  margin: 0 auto;
  padding-bottom: 5rem;
}
.logo_imgs {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 2rem;
  padding-bottom: 6rem;
}
.logo_imgs img {
  max-width: 50rem;
}
.sec01 .sec_ttl {
  text-align: center;
  padding-bottom: 5rem;
}
.sec01 .sec_ttl .en {
  color: #00A65A;
  font-size: 3.6rem;
  font-family: "Cabin", sans-serif;
  font-weight: 700;
  line-height: calc(48/36);
  letter-spacing: 0.1em;
  padding-bottom: 2rem;
}
.sec01 .sec_ttl .ja {
  font-size: 6rem;
  font-weight: 700;
  line-height: calc(48/70);
  letter-spacing: 0.4em;
}
.sec01 .sub {
  font-size: 3.9rem;
  font-weight: 900;
  line-height: calc(68/49);
  letter-spacing: 0.15em;
  text-align: center;
  padding-bottom: 5rem;
}
.sec01 .text {
  font-size: 2rem;
  font-weight: 500;
  line-height: calc(50/25);
  padding-bottom: 10rem;
}
@media screen and (max-width: 767px) {
  .sec01 {
    background-image: url(../img/top/sec01_back_sp.png);
    background-position: top center;
    background-repeat: no-repeat;
    background-size: 100%;
    margin-top: -15rem;
    padding: 32rem 0 25rem 0;
  }
  .sec01 .title_img {
    width: 100%;
    padding-bottom: 1rem;
  }
  .logo_imgs {
    gap: 1rem;
    padding-bottom: 1rem;
  }
  .logo_imgs img {
    width: calc((100% - 1rem) /2);
  }
  .sec01 .sec_ttl {
    text-align: center;
    padding-bottom: 1rem;
  }
  .sec01 .sec_ttl .en {
    font-size: 2rem;
    line-height: calc(48/20);
    padding-bottom: 0rem;
  }
  .sec01 .sec_ttl .ja {
    font-size: 3rem;
    line-height: calc(48/32);
  }
  .sec01 .sub {
    font-size: 2rem;
    padding-bottom: 1rem;
  }
  .sec01 .text {
    font-size: 1.6rem;
    padding-bottom: 1rem;
  }
}

.sec01 .sec_ttl {
  text-align: center;
  padding-bottom: 5rem;
margin-top: 85rem;
}
.sec01 .sec_ttl .min {
  font-size: 3.6rem;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: calc(60/36);
}
.sec01 .sec_ttl .ja {
  font-size: 7rem;
  font-weight: 700;
  letter-spacing: .2em;
  line-height: calc(60/70);
}
.sec01 .held .img {
  max-width: 110rem;
  margin: 0 auto;
  position: relative;
}
.sec01 .held .img .posi {
  position: absolute;
  max-width: 25rem;
  top: 32%;
}
.sec01 .txt {
  font-size: 2rem;
  line-height: 2.1;
  padding-bottom: 5rem;
}
.sec01 .imgs {
  display: flex;
  justify-content: center;
  gap: 4.8rem;
}
.sec01 .imgs img {
  width: 35rem;
}
.sec01 .imgs .flex {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding-top: 3rem;
}
.sec01 .imgs .flex img {
  width: 3rem;
}
.sec01 .imgs .flex p {
  font-size: 2.8rem;
  color: #606060;
  font-weight: 700;
  line-height: 0.96;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 2200px) {
  .sec01 {
    padding: 35rem 0 25rem 0;
  }
}
@media screen and (max-width: 767px) {
  .sec01 {
    padding: 0.5rem 0 10rem 0;
    margin-top: -15rem;
  }
  .sec01 .sec_ttl {
    padding-bottom: 2.5rem;
	  margin-top: 32rem;
  }
  .sec01 .sec_ttl .min {
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: calc(60/20);
  }
  .sec01 .sec_ttl .ja {
    font-size: 3rem;
    font-weight: 700;
    letter-spacing: .2em;
    line-height: calc(60/40);
  }
  .sec01 .held .img {
    max-width: 110rem;
    margin: 0 auto;
    position: relative;
  }
  .sec01 .held .img .posi {
    position: absolute;
    top: 39%;
    max-width: 7rem;
  }
  .sec01 .held .img .posi .circle {
    width: 8rem;
    height: 8rem;
    border-radius: 999px;
    background-color: #E95741;
    position: relative;
  }
  .sec01 .held .img .posi .circle .text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    width: 100%;
  }
  .sec01 .held .img .posi .circle .num {
    color: #FFF000;
    font-size: 1.6rem;
    line-height: .42;
  }
  .sec01 .held .img .posi .circle .num span {
    font-size: 1rem;
    line-height: 1.7;
  }
  .sec01 .held .img .posi .circle .yellow {
    color: #FFF000;
    font-size: 1.4rem;
    line-height: 1.4;
    letter-spacing: 0.1em;
  }
  .sec01 .txt {
    font-size: 1.6rem;
    line-height: 2.1;
    padding-bottom: 2.5rem;
  }
  .sec01 .imgs {
    flex-direction: column;
    gap: 4.8rem;
    max-width: 80%;
    margin: 0 auto;
  }
  .sec01 .imgs img {
    width: 35rem;
  }
  .sec01 .imgs .flex {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    padding-top: 3rem;
  }
  .sec01 .imgs .flex img {
    width: 3rem;
  }
  .sec01 .imgs .flex p {
    font-size: 2rem;
    line-height: 0.96;
    letter-spacing: 0.1em;
  }
}



/* ------------------------------------------
  sec02
------------------------------------------ */
.sec02 {
  background-color: #F4F0ED;
  padding: 30rem 0 12rem 0;
  margin-top: -25rem;
}
.sec02 .sec_ttl {
  text-align: center;
  padding-bottom: 5rem;
}
.sec02 .sec_ttl .min {
  font-size: 3.6rem;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: calc(60/36);
}
.sec02 .sec_ttl .ja {
  font-size: 7rem;
  font-weight: 700;
  letter-spacing: .2em;
  line-height: calc(60/70);
}
.sec02 .held .img {
  max-width: 110rem;
  margin: 0 auto;
  position: relative;
}
.sec02 .held .img .posi {
  position: absolute;
  max-width: 25rem;
  top: 32%;
}
.sec02 .txt {
  font-size: 2rem;
  line-height: 2.1;
  padding-bottom: 5rem;
}
.sec02 .imgs {
  display: flex;
  justify-content: center;
  gap: 4.8rem;
}
.sec02 .imgs img {
  width: 35rem;
}
.sec02 .imgs .flex {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding-top: 3rem;
}
.sec02 .imgs .flex img {
  width: 3rem;
}
.sec02 .imgs .flex p {
  font-size: 2.8rem;
  color: #606060;
  font-weight: 700;
  line-height: 0.96;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 2200px) {
  .sec02 {
    padding: 35rem 0 25rem 0;
  }
}
@media screen and (max-width: 767px) {
  .sec02 {
    background-color: #F4F0ED;
    padding: 0.5rem 0 10rem 0;
    margin-top: -25rem;
  }
  .sec02 .sec_ttl {
    padding-bottom: 2.5rem;
  }
  .sec02 .sec_ttl .min {
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: calc(60/20);
  }
  .sec02 .sec_ttl .ja {
    font-size: 3rem;
    font-weight: 700;
    letter-spacing: .2em;
    line-height: calc(60/40);
  }
  .sec02 .held .img {
    max-width: 110rem;
    margin: 0 auto;
    position: relative;
  }
  .sec02 .held .img .posi {
    position: absolute;
    top: 39%;
    max-width: 7rem;
  }
  .sec02 .held .img .posi .circle {
    width: 8rem;
    height: 8rem;
    border-radius: 999px;
    background-color: #E95741;
    position: relative;
  }
  .sec02 .held .img .posi .circle .text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    width: 100%;
  }
  .sec02 .held .img .posi .circle .num {
    color: #FFF000;
    font-size: 1.6rem;
    line-height: .42;
  }
  .sec02 .held .img .posi .circle .num span {
    font-size: 1rem;
    line-height: 1.7;
  }
  .sec02 .held .img .posi .circle .yellow {
    color: #FFF000;
    font-size: 1.4rem;
    line-height: 1.4;
    letter-spacing: 0.1em;
  }
  .sec02 .txt {
    font-size: 1.6rem;
    line-height: 2.1;
    padding-bottom: 2.5rem;
  }
  .sec02 .imgs {
flex-direction: column;
        gap: 4.8rem;
        max-width: 80%;
        margin: 0 auto;
  }
  .sec02 .imgs img {
    width: 35rem;
  }
  .sec02 .imgs .flex {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    padding-top: 3rem;
  }
  .sec02 .imgs .flex img {
    width: 3rem;
  }
  .sec02 .imgs .flex p {
    font-size: 2rem;
    line-height: 0.96;
    letter-spacing: 0.1em;
  }
}
/* ------------------------------------------
  sec03
------------------------------------------ */
.sec03 {
  background-image: url(../img/top/sec03_back.png);
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 16rem 0 18rem 0;
  margin-top: -13rem;
  position: relative;
  z-index: 2;
}
.sec03 .sec_ttl {
  text-align: center;
  padding-bottom: 5rem;
}
.sec03 .sec_ttl .en {
  font-family: "Cabin", sans-serif;
  color: #E95741;
  font-size: 3.6rem;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: calc(100/40);
  padding-bottom: 2rem;
}
.sec03 .sec_ttl .ja {
  font-size: 7rem;
  font-weight: 700;
  letter-spacing: .04em;
  line-height: calc(48/70);
}
.sec03 .text {
  font-size: 2.5rem;
  font-weight: 500;
  letter-spacing: .05em;
  line-height: calc(50/25);
  text-align: center;
  padding-bottom: 10rem;
}
.sec03 .imgs {
  width: 38rem;
  margin: 0 auto;
}
.sec03 .imgs .img .flex {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding-top: 3rem;
}
.sec03 .imgs .img .flex img {
  width: 3rem;
}
.sec03 .imgs .img .flex p {
  color: #606060;
  font-weight: 700;
  font-size: 2.8rem;
  line-height: 0.96;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 2200px) {
  .sec03 {
    margin-top: -25rem;
  }
}
@media screen and (max-width: 767px) {
  .sec03 {
    background-image: url(../img/top/sec03_back.png);
    background-repeat: no-repeat;
    padding: 10rem 0;
  }
  .sec03 .sec_ttl {
    padding-bottom: 2.5rem;
  }
  .sec03 .sec_ttl .en {
    color: #E95741;
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: calc(0/40);
  }
  .sec03 .sec_ttl .ja {
    font-size: 3rem;
    font-weight: 700;
    letter-spacing: .04em;
    line-height: calc(48/40);
  }
  .sec03 .text {
    font-size: 1.8rem;
    line-height: calc(50/25);
    padding-bottom: 5rem;
  }
  .sec03 .imgs {
    width: 80%;
    margin: 0 auto;
  }
  .sec03 .imgs .img .flex {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    padding-top: 3rem;
  }
  .sec03 .imgs .img .flex img {
    width: 3rem;
  }
  .sec03 .imgs .img .flex p {
    font-size: 2rem;
    line-height: 0.96;
    letter-spacing: 0.1em;
  }
}
/* ------------------------------------------
  sec04
------------------------------------------ */
.sec04 {
  background-color: #EAEFFF;
  margin-top: -27rem;
  padding: 20rem 0 6rem 0;
}
.sec04 .sec_ttl {
  text-align: center;
  padding-bottom: 15rem;
}
.sec04 .sec_ttl .en {
  font-family: "Cabin", sans-serif;
  font-size: 3.6rem;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: calc(48/36);
  padding-bottom: 2rem;
}
.sec04 .sec_ttl .ja {
  font-size: 7rem;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: calc(60/70);
}
.sec04 .items {
  display: flex;
  justify-content: center;
  gap: 4rem;
  padding-right: calc((16 / 1200) *100vw);
}
@media screen and (min-width: 1216px) {
  .sec04 .items {
    padding-right: 0;
  }
}
.sec04 .item {
  width: calc((100% - 12rem) / 4);
}
.sec04 .item .senior {
  position: relative;
}
.sec04 .item .senior .img {
  width: 19rem;
  position: absolute;
  z-index: 2;
  top: 50%;
  right: -15%;
}
.sec04 .item .title {
  text-align: center;
  padding-top: 1.5rem;
}
.sec04 .item .title .ja {
  font-size: 2.7rem;
  font-weight: 500;
  letter-spacing: .1em;
  line-height: calc(38/27);
}
.sec04 .item .title .en {
  font-family: "Cabin", sans-serif;
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: .1em;
  line-height: calc(38/12);
}
.sec04 .item .interview {
  display: flex;
  justify-content: center;
  border: 1px solid #8DC21F;
  position: relative;
}
.sec04 .item .interview a {
  font-size: 1.8rem;
  line-height: calc(27/18);
  letter-spacing: 0.1em;
  color: #8DC21F;
  background-position: right 1.2rem center;
  background-size: 3rem 3.1rem;
  background-repeat: no-repeat;
  display: table;
  padding: 1rem 0;
  width: 100%;
  padding-left: 2rem;
	text-align: center;
}
.sec04 .link {
  width: 35rem;
  margin: 0 auto;
  padding-top: 10rem;
}
.sec04 .link .flex {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding-top: 3rem;
}
.sec04 .link .flex img {
  width: 3rem;
}
.sec04 .link .flex p {
  color: #606060;
  font-weight: 700;
  font-size: 2.8rem;
  line-height: 0.96;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .sec04 {
padding: 25rem 0 5rem 0;
        margin-top: -35rem;
  }
  .sec04 .sec_ttl {
    padding-bottom: 5rem;
  }
  .sec04 .sec_ttl .en {
    font-size: 2rem;
    font-weight: 700;
    line-height: calc(0/20);
  }
  .sec04 .sec_ttl .ja {
    font-size: 3rem;
    line-height: calc(60/40);
  }
  .sec04 .items {
    flex-wrap: wrap;
    gap: 1.5rem;
  }
  .sec04 .item {
    width: calc((100% - 1.5rem) / 2);
  }
  .sec04 .item .senior {
    position: relative;
  }
  .sec04 .item .senior .img {
    width: 10rem;
    top: 55%;
    right: -13%;
  }
  .sec04 .item .title {
    padding-top: 2rem;
  }
  .sec04 .item .title .ja {
    font-size: 2rem;
    line-height: calc(38/20);
  }
  .sec04 .item .title .en {
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: .1em;
    line-height: calc(38/10);
  }
  .sec04 .item .interview {
    display: flex;
    justify-content: center;
    border: 1px solid #8DC21F;
    position: relative;
  }
  .sec04 .item .interview a {
    font-size: 1.2rem;
    line-height: calc(27/12);
    background-position: right 1rem center;
    background-size: 2rem 2.1rem;
    padding-left: 1rem;
  }
  .sec04 .link {
    width: 35rem;
    margin: 0 auto;
    padding-top: 5rem;
	          max-width: 80%;
  }
  .sec04 .link .flex {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    padding-top: 3rem;
  }
  .sec04 .link .flex img {
    width: 3rem;
  }
  .sec04 .link .flex p {
    font-size: 2rem;
    line-height: 0.96;
    letter-spacing: 0.1em;
  }
}
/* ------------------------------------------
  sec05
------------------------------------------ */
.sec05 {
  padding: 0rem 0;
}
.sec05 .bg_container {
  background-color: #F4F0ED;
  margin: 0 auto;
  padding: 5rem 0 5rem 0;
}
.sec05 .sec_ttl {
  text-align: center;
  padding-bottom: 12rem;
}
.sec05 .sec_ttl .en {
  font-family: "Cabin", sans-serif;
  font-size: 3.6rem;
  font-weight: bold;
  line-height: calc(48/36);
  letter-spacing: 0.1em;
  padding-bottom: 2rem;
}
.sec05 .sec_ttl .ja {
  font-size: 7rem;
  font-weight: bold;
  line-height: calc(60/70);
  letter-spacing: 0.2em;
}
.sec05 .texts {}
.sec05 .texts .green {
  color: #00A65A;
  font-size: 3.6rem;
  font-weight: 500;
  line-height: calc(48/36);
  letter-spacing: 0.1em;
  padding-bottom: 4rem;
}
.sec05 .texts .text {
  font-size: 2rem;
  font-weight: 500;
  line-height: calc(50/25);
  letter-spacing: 0.05em;
  padding-bottom: 7rem;
}
.sec05 .workplace01 {
  display: flex;
  flex-wrap: wrap;
  gap: 2.5rem;
}
.sec05 .workplace01 img {
  width: calc((100% - 7.5rem) / 4);
}
.sec05 .item {
  padding-top: 1rem;
}
.sec05 .workplace02 {
  display: flex;
  flex-wrap: wrap;
  gap: 2.2rem;
}
.sec05 .workplace02 img {
  width: calc((100% - 8.8rem) / 5);
}
.sec05 .workplace03 {
  display: flex;
  flex-wrap: wrap;
  gap: 2.2rem;
}
.sec05 .workplace03 img {
  width: calc((100% - 8.8rem) / 5);
}
.sec05 .workplace03 img:last-of-type {
  margin: 0 auto;
  width: 33rem;
}
.sec05 .links {
  display: flex;
  justify-content: center;
  gap: 4.8rem;
  padding-top: 1rem;
}
.sec05 .links .link img {
  width: 40rem;
}
.sec05 .links .link .flex {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding-top: 3rem;
}
.sec05 .links .link .flex img {
  width: 3rem;
}
.sec05 .links .link .flex p {
  color: #606060;
  font-weight: 700;
  font-size: 2.8rem;
  line-height: 0.96;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .sec05 {
    padding: 0rem 0;
  }
  .sec05 .bg_container {
    background-color: #F4F0ED;
    max-width: 100%;
    padding: 2rem 0;
  }
  .sec05 .sec_ttl {
    padding-bottom: 2.5rem;
  }
  .sec05 .sec_ttl .en {
    font-size: 2rem;
    line-height: calc(0/20);
  }
  .sec05 .sec_ttl .ja {
    font-size: 3rem;
    line-height: calc(60/40);
  }
  .sec05 .texts {}
  .sec05 .texts .green {
    font-size: 2.4rem;
    padding-bottom: 2.5rem;
  }
  .sec05 .texts .text {
    font-size: 1.6rem;
    padding-bottom: 5rem;
  }
  .sec05 .workplace01 {
    gap: 1.5rem;
  }
  .sec05 .workplace01 img {
    width: calc((100% - 1.5rem) / 2);
  }
  .sec05 .item {
    padding-top: 0rem;
  }
  .sec05 .workplace02 {
    gap: 2rem;
  }
  .sec05 .workplace02 img {
    width: calc((100% - 2rem) / 2);
  }
  .sec05 .workplace03 {
    gap: 2rem;
  }
  .sec05 .workplace03 img {
    width: calc((100% - 2rem) / 2);
  }
  .sec05 .workplace03 img:last-of-type {
    width: 20rem;
  }
  .sec05 .links {
    flex-direction: column;
    gap: 4.8rem;
    padding-top: 0rem;
  }
  .sec05 .links .link img {
        width: 80%;
   
  }
  .sec05 .links .link .flex {
    gap: 1rem;
    padding-top: 3rem;
  }
  .sec05 .links .link .flex img {
    width: 3rem;
  }
  .sec05 .links .link .flex p {
    font-size: 2rem;
    line-height: 0.96;
    letter-spacing: 0.1em;
  }
  .sec05 .links .link .center{	
	margin:0 auto;
}

/* ------------------------------------------
  よくある質問
------------------------------------------ */
.sec06 {}
.sec06 .bg_container {
  background-color: #F4DDD9;
  max-width: 136.6rem;
  margin: 0 auto;
  padding: 10rem 0 15rem 0;
}
.sec06 .sec_ttl {
  text-align: center;
  padding-bottom: 15rem;
}
.sec06 .sec_ttl .en {
  font-family: "Cabin", sans-serif;
  font-size: 3.6rem;
  font-weight: bold;
  line-height: calc(48/36);
  letter-spacing: 0.1em;
  padding-bottom: 2rem;
}
.sec06 .sec_ttl .ja {
  font-size: 7rem;
  font-weight: bold;
  line-height: calc(60/70);
  letter-spacing: 0.2em;
}
.sec06 .faq_item {
  margin-bottom: 2rem;
}
.sec06 .faq_item .question {
  align-items: center;
  background-image: url(../img/top/open_icon.png);
  background-position: right 2.5rem center;
  background-repeat: no-repeat;
  background-size: 4.2rem 4.2rem;
  cursor: pointer;
  display: flex;
  padding-right: 8rem;
  transition: .3s ease;
  font-weight: 500;
  font-size: 2rem;
  line-height: calc(50/38);
}
.sec06 .faq_item .question::before {
  background-image: url(../img/top/faq.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 4.2rem;
  content: "";
  padding: 6rem 0;
  flex-shrink: 0;
  width: 12rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-right: 3rem;
  background-color: #8DC21F;
  color: #FFFFFF;
}
.sec06 .faq_item {
  background-color: #fff;
  transition: .3s ease;
}
.sec06 .faq_item.open .question {
  background-image: url(../img/top/close_icon.png);
}
.sec06 .faq_item .answer {
  display: none;
  padding: 1rem;
}
.sec06 .faq_item .answer_inner {
  padding: 2rem;
  transition: .3s ease;
  display: flex;
  font-size: 2rem;
  line-height: calc(30/20);
  color: #333;
  background-color: #F4F0ED;
}
.sec06 .faq_item.open .answer {
  display: block;
}
@media screen and (max-width:767px) {
  .sec06 {}
  .sec06 .bg_container {
    background-color: #F4DDD9;
    max-width: 100%;
    margin: 0 auto;
    padding: 2.5rem 0;
  }
  .sec06 .sec_ttl {
    padding-bottom: 5rem;
  }
  .sec06 .sec_ttl .en {
    font-size: 2rem;
  }
  .sec06 .sec_ttl .ja {
    font-size: 3rem;
  }
  .sec06 .faq_contents {}
  .sec06 .faq_item {
    margin-bottom: 2rem;
  }
  .sec06 .faq_item:last-child {}
  .sec06 .faq_item .question {
    align-items: center;
    background-image: url(../img/top/open_icon.png);
    background-position: right .5rem center;
    background-size: 3rem;
    transition: .3s ease;
    font-weight: 500;
    font-size: 1.4rem;
    padding-right: 4.5rem;
    padding-top: 2rem;
    padding-bottom: 2rem;
    position: relative;
    /* padding-left: 3.5rem; */
    margin-left: 4.5rem;
    /* min-height: 14rem; */
  }
  .sec06 .faq_item .question::before {
    background-size: 2rem;
    /* padding: 1.6rem 0; */
    width: 3.5rem;
    margin-right: 1rem;
    /* height: fit-content; */
    position: absolute;
    top: 0;
    /* padding-left: 3.5rem; */
    bottom: 0;
    left: -4.5rem;
    align-items: stretch;
    padding: 0;
  }
  .sec06 .faq_item {
    background-color: #fff;
    transition: .3s ease;
    margin-bottom: 1rem;
  }
  .sec06 .faq_item.open .question {
    background-image: url(../img/top/close_icon.png);
  }
  .sec06 .faq_item .answer {
    display: none;
    padding: 1rem;
  }
  .sec06 .faq_item .answer_inner {
    padding: 2rem;
    transition: .3s ease;
    display: flex;
    font-size: 1.4rem;
    line-height: calc(30/20);
    color: #333;
    background-color: #F4F0ED;
  }
  .sec06 .faq_item.open .answer {
    display: block;
  }
}
/* ------------------------------------------
  sec07
------------------------------------------ */
.sec07 {
  padding: 16rem 0 10rem 0;
}
.sec07 .sec_ttl {
  text-align: center;
  padding-bottom: 15rem;
}
.sec07 .sec_ttl .en {
  font-family: "Cabin", sans-serif;
  font-size: 3.6rem;
  font-weight: bold;
  line-height: calc(0/36);
  letter-spacing: 0.1em;
  padding-bottom: 2rem;
}
.sec07 .sec_ttl .ja {
  font-size: 7rem;
  font-weight: bold;
  line-height: calc(60/70);
  letter-spacing: 0.2em;
}
.sec07 .imgs {
  display: flex;
  flex-wrap: wrap;
  gap: 3rem;
  border-bottom: 0.5px solid #343434;
  /* margin-bottom: 10rem; */
  padding-bottom: 3rem;
  position: relative;
}
.sec07 .line {
  display: inline-block;
  border-left: 0.5px solid #343434;
  height: 6rem;
  position: relative;
  left: 50%;
  margin: 2rem 0;
}
/* .sec07 .imgs::after{
  position: absolute;
  content: "";
  bottom: -16%;
  transform: translateX(-50%);
  left: 50%;
  border-left: 0.5px solid #343434;
  height: 6rem;
} */
.sec07 .imgs .item {
  width: calc((100% - 6rem) / 3);
}
.sec07 .imgs .item .flex {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 1rem;
  padding-top: 3rem;
}
.sec07 .imgs .item .flex img {
  width: 3rem;
}
.sec07 .imgs .item .flex p {
  color: #606060;
  font-weight: 700;
  font-size: 2.8rem;
  line-height: calc(28/21);
  letter-spacing: .1em;
}
.sec07 .btn {
  text-align: center;
}
.sec07 .btn .link {
  display: inline-block;
  border: 0.5px solid #343434;
}
.sec07 .btn .link .flex {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 1rem;
  padding: 1rem 4.5rem;
}
.sec07 .btn .link img {
  width: 3rem;
}
.sec07 .btn .link p {
  color: #606060;
  font-weight: 700;
  font-size: 2.8rem;
  line-height: calc(27/28);
  letter-spacing: .1em;
}
@media screen and (max-width: 767px) {
  .sec07 {
    padding: 5rem 0;
  }
  .sec07 .sec_ttl {
    padding-bottom: 5rem;
  }
  .sec07 .sec_ttl .en {
    font-size: 2rem;
  }
  .sec07 .sec_ttl .ja {
    font-size: 3rem;
    line-height: calc(60/40);
  }
  .sec07 .imgs {
    gap: 3rem;
    border-bottom: 0.5px solid #343434;
    padding-bottom: 3rem;
	  max-width: 80%;
	  margin:0 auto;
  }
  .sec07 .line {
    height: 3rem;
    margin: 1rem 0;
  }
  .sec07 .imgs .item {
    width: 100%;
  }
  .sec07 .imgs .item .flex {
    gap: 1rem;
    padding-top: 3rem;
  }
  .sec07 .imgs .item .flex img {
    width: 3rem;
  }
  .sec07 .imgs .item .flex p {
    font-size: 2rem;
    letter-spacing: .1em;
  }
  .sec07 .btn {
    text-align: center;
  }
  .sec07 .btn .link {
    display: inline-block;
    border: 0.5px solid #343434;
  }
  .sec07 .btn .link .flex {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 1rem;
    padding: 1rem 4.1rem;
  }
  .sec07 .btn .link img {
    width: 3rem;
  }
  .sec07 .btn .link p {
    font-size: 2rem;
    line-height: calc(27/28);
    letter-spacing: .1em;
  }
}
/* ------------------------------------------
  リンクボタン02
------------------------------------------ */
.block .more_btn_lists02 {
  display: flex;
  gap: 3rem;
}
.block .more_btn_lists02 .more_btn_list {
  width: calc((100% - 80rem) / 1);
  border: 0.5px solid #707070;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  padding: 2rem 0;
  background-color: #fff;
  text-align: center;
  margin: 0 auto 10rem auto;
}
.block .more_btn_lists02 .more_btn_list img {
  width: 2rem;
}
.block .more_btn_lists02 .more_btn_list a {
  color: #606060;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 0.96;
}
@media screen and (max-width: 767px) {
  .block .more_btn_lists02 {
    flex-direction: column;
  }
  .block .more_btn_lists02 .more_btn_list {
    width: 33rem;
    margin: 2rem auto 3rem auto;
    padding: 1.5rem 0;
  }
}

