@charset "utf-8";
@import url("https://fonts.googleapis.com/css2?family=Jost:wght@400;700&family=Noto+Sans+JP:wght@400;500;700;800&display=swap");

.jost {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}
.gooddesign {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

/*********************************************************************
*
*  For GOOD DESIGN AWORD 2025
*
*********************************************************************/

#wrap {
  opacity: 1;
}
header {
  background-color: #000;
}

/* mv */
.mv {
  padding: 190px 0 115px;
}
.mv_logo {
  width: 593px;
  margin: 0 auto;
}
.mv_tit1 {
  font-size: 20px;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0;
  line-height: calc(34 / 20);
  margin-top: 38px;
}
.mv_txt1 {
  font-size: 15px;
  font-weight: 400;
  text-align: justify;
  letter-spacing: 0;
  line-height: 2;
  width: 773px;
  margin: 40px auto 0;
}
.mv_txt1 a {
  display: inline-block;
}
@media print, screen and (min-width: 768px) {
}
@media screen and (max-width: 767px) {
  .mv {
    padding: 98px 35px 40px;
  }
  .mv_logo {
    width: 263px;
  }
  .mv_tit1 {
    font-size: 18px;
    text-align: justify;
    line-height: calc(32 / 18);
    margin-top: 40px;
  }
  .mv_txt1 {
    font-size: 15px;
    line-height: calc(28 / 15);
    width: 100%;
    margin-top: 29px;
  }
}

/* about */
.about {
  padding: 82px 0 144px;
}
.gd_tit1 {
  font-size: 48px;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0;
  padding-bottom: 40px;
  position: relative;
}
.gd_tit1.type2 {
  font-size: 38px;
}
.gd_tit1::after {
  content: "";
  width: 46px;
  height: 8px;
  background-color: #000;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.about_box1 {
  padding-top: 70px;
  padding-left: calc((100% - 1110px) / 2);
  display: flex;
  align-items: center;
  gap: 0 56px;
}
.about_box1_in2 {
  width: 687px;
}
.about_box1_t1 {
  font-size: 28px;
  font-weight: 700;
  letter-spacing: 0.05em;
}
.about_box1_t2 {
  width: 533.61px;
  margin-top: 30px;
}
.about_box1_t3 {
  width: 491px;
  margin-top: 41px;
  font-size: 18px;
  font-weight: 600;
  text-align: justify;
  letter-spacing: 0;
  line-height: calc(38 / 18);
}
.about_box2 {
  width: 1017px;
  margin: 80px auto 0;
  background-color: #edf2f1;
  padding: 46px 51px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.about_box2_dt {
  width: 173px;
  height: 140px;
  background-color: #000;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.about_box2_tit {
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0;
  line-height: calc(20 / 16);
  padding-top: 56px;
  position: relative;
}
.about_box2_tit::before {
  content: "";
  width: 61.18px;
  height: 47.46px;
  background: url(../img/ico1.svg) no-repeat center / contain;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.about_box2_dd {
  width: 702px;
  font-size: 14px;
  font-weight: 500;
  text-align: justify;
  letter-spacing: 0;
  line-height: calc(30 / 14);
}
@media print, screen and (min-width: 768px) {
  .about_box2_dt::after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 26px solid transparent;
    border-bottom: 26px solid transparent;
    border-left: 20.48px solid #000000;
    border-right: 0;
    position: absolute;
    top: 0;
    bottom: 0;
    right: -15px;
    margin: auto;
  }
}
@media screen and (max-width: 767px) {
  .about {
    padding: 48px 0 54px;
  }
  .gd_tit1 {
    font-size: 26px;
    padding-bottom: 26px;
  }
  .gd_tit1.type2 {
    font-size: 22px;
  }
  .gd_tit1::after {
    width: 34px;
    height: 5px;
  }
  .about_box1 {
    padding-top: 35px;
    padding-left: 0;
    display: block;
  }
  .about_box1_in2 {
    width: 100%;
    margin-top: 35px;
  }
  .about_box1_t1 {
    font-size: 16px;
    text-align: center;
  }
  .about_box1_t2 {
    width: 302px;
    margin: 17px auto 0;
  }
  .about_box1_t3 {
    width: 100%;
    padding: 0 37px;
    margin-top: 27px;
    font-size: 16px;
    line-height: calc(28 / 16);
  }
  .about_box2 {
    width: 328px;
    margin-top: 38px;
    padding: 39px 36px 45px;
    display: block;
  }
  .about_box2_dt {
    width: 100%;
    height: 76px;
  }
  .about_box2_dt::after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 26px solid transparent;
    border-left: 26px solid transparent;
    border-top: 20.48px solid #000000;
    border-bottom: 0;
    position: absolute;
    bottom: -15px;
    left: 0;
    right: 0;
    margin: auto;
  }
  .about_box2_tit {
    font-size: 16px;
    text-align: left;
    padding-top: 0;
    padding-left: 65px;
  }
  .about_box2_tit::before {
    width: 47.86px;
    height: 37.13px;
    top: 0;
    bottom: 0;
    left: 0;
    right: auto;
  }
  .about_box2_dd {
    width: 100%;
    margin-top: 32px;
    line-height: calc(26 / 14);
  }
}

.voice {
  border-top: 1px solid #939393;
  padding: 116px 0 122px;
}
.gd_tit2 {
  font-size: 48px;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0;
  padding-bottom: 15px;
}
.gd_txt2 {
  font-size: 18px;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0;
  line-height: calc(26 / 16);
  padding-bottom: 40px;
  position: relative;
}
.gd_txt2::after {
  content: "";
  width: 46px;
  height: 8px;
  background-color: #000;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.voice_img1 {
  width: 820px;
  margin: 46px auto 0;
}
@media print, screen and (min-width: 768px) {
}
@media screen and (max-width: 767px) {
  .voice {
    padding: 54px 0 60px;
  }
  .gd_tit2 {
    font-size: 26px;
    padding-bottom: 17px;
  }
  .gd_txt2 {
    font-size: 16px;
    padding-bottom: 26px;
  }
  .gd_txt2::after {
    width: 34px;
    height: 5px;
  }
  .voice_img1 {
    width: 100%;
    padding: 0 24px;
    margin-top: 35px;
  }
}

.voice_list1 {
  padding-top: 98px;
}
.voice_list1 .voice_list1_item {
  width: 1110px;
  margin: 0 auto;
}
.voice_list1 .voice_list1_item + .voice_list1_item {
  margin-top: 103px;
}
.voice_list1_item_box1 {
  width: 555px;
}
.voice_list1_item_box2 {
  width: 549px;
}
.voice_list1_item_tit1 {
  font-size: 42px;
  font-weight: 900;
  letter-spacing: 0;
  line-height: calc(60 / 42);
  word-break: keep-all;
}
.voice_list1_item_txt1 {
  margin-top: 40px;
  font-size: 15px;
  font-weight: 400;
  text-align: justify;
  letter-spacing: 0;
  line-height: calc(30 / 15);
}
.voice_list1_img2 {
  display: flex;
  flex-flow: column;
  gap: 10px 0;
}
.voice_list1_item_clm1 {
  display: flex;
  flex-flow: wrap;
  gap: 10px;
}
.voice_list1_point {
  width: 100%;
  background-color: #edf2f1;
  padding: 24px 20px 34px;
}
.voice_list1_point_tit {
  display: flex;
  align-items: center;
  gap: 0 15px;
}
.voice_list1_point_tit .tit {
  font-size: 32px;
  font-weight: 800;
  letter-spacing: 0.15em;
  line-height: 1;
}
.voice_list1_point_tit .eng {
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0;
  line-height: calc(14 / 12);
  padding-top: 5px;
}
.voice_list1_point_list {
  padding-top: 20px;
  display: flex;
  justify-content: center;
  gap: 0 35px;
}
.voice_list1_point_list .li1 {
  width: 229px;
}
.voice_list1_point_list_txt {
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0;
  line-height: calc(26 / 16);
}
.voice_list1_point_list_img {
  margin: 20px auto 0;
}
.voice_list1_point_list_img.w2 {
  width: 172px;
}
.voice_list1_point_list_img.w3 {
  width: 154px;
}
@media print, screen and (min-width: 768px) {
  .voice_list1 .voice_list1_item {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .voice_list1 .voice_list1_item:nth-of-type(odd) {
    flex-flow: row-reverse;
  }
  .voice_list1 .voice_list1_item:nth-of-type(odd) .voice_list1_item_box2 {
    position: relative;
    left: -69px;
  }
  .voice_list1 .voice_list1_item:nth-of-type(even) .voice_list1_item_box2 {
    position: relative;
    right: -69px;
  }
  .voice_list1_point.w50 {
    width: calc((100% - 10px) / 2);
  }
}
@media screen and (max-width: 767px) {
  .voice_list1 {
    padding-top: 55px;
  }
  .voice_list1 .voice_list1_item {
    width: 100%;
    padding: 0 24px;
  }
  .voice_list1 .voice_list1_item + .voice_list1_item {
    margin-top: 70px;
  }
  .voice_list1_item_box1 {
    width: 100%;
  }
  .voice_list1_item_box2 {
    width: 100%;
    margin-top: 23px;
  }
  .voice_list1_item_tit1 {
    font-size: 24px;
    text-align: center;
    line-height: calc(36 / 24);
  }
  .voice_list1_item_txt1 {
    margin-top: 25px;
    font-size: 14px;
    line-height: calc(26 / 14);
    padding: 0 12px;
  }
  .voice_list1_img1 {
    height: calc((230 / 375) * 100vw);
  }
  .voice_list1_img1 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .voice_list1_point {
    padding: 22px 26px 33px;
  }
  .voice_list1_point_tit .tit {
    font-size: 28px;
  }
  .voice_list1_point_list {
    padding-top: 18px;
    display: block;
  }
  .voice_list1_point_list .li1 {
    width: 100%;
  }
  .voice_list1_point_list .li1:nth-of-type(1n + 2) {
    margin-top: 49px;
    position: relative;
  }
  .voice_list1_point_list .li1:nth-of-type(1n + 2)::before {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #939393;
    position: absolute;
    top: -23px;
    left: 0;
  }
  .voice_list1_point_list_txt {
    font-size: 16px;
  }
  .voice_list1_point_list_img {
    margin-top: 14px;
  }
  .voice_list1_point_list_img.w2 {
    width: 172px;
  }
  .voice_list1_point_list_img.w3 {
    width: 172px;
  }
}

.contents {
  padding: 70px 0 110px;
  border-top: 1px solid #000000;
}
.contents_list1 {
  margin-top: 70px;
  display: flex;
  justify-content: center;
  gap: 0 54px;
}
.contents_list1 .li1 {
  width: 528px;
}
.contents_list1 .link1 {
  width: 100%;
  display: block;
  transition: 0.3s ease;
}
.contents_dl {
  padding-top: 19px;
  display: flex;
  align-items: center;
  gap: 0 11px;
}
.contents_dl .dt1 {
  width: 76px;
  height: 29px;
  background-color: #000;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0;
  line-height: 1;
  padding-bottom: 1px;
}
.contents_dl .dd1 {
  padding-top: 2px;
  font-size: 14.5px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.5;
}
@media print, screen and (min-width: 768px) {
  .contents_list1 .link1:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  .contents {
    padding: 40px 0 44px;
  }
  .contents_list1 {
    margin-top: 22px;
    display: flex;
    flex-flow: column;
    align-items: center;
    gap: 26px 0;
  }
  .contents_list1 .li1 {
    width: 328px;
  }
  .contents_dl {
    padding-top: 11px;
    gap: 0 12px;
  }
  .contents_dl .dt1 {
    width: 86px;
    height: 41px;
    font-size: 16px;
    padding-bottom: 1px;
  }
  .contents_dl .dd1 {
    padding-top: 2px;
    font-size: 14px;
    line-height: calc(22 / 14);
  }
}

@media print, screen and (min-width: 768px) {
}
@media screen and (max-width: 767px) {
}
