body,
html {
  background-image: url(img/talk-bg.svg);
  background-position: center top -254px;
  background-repeat: repeat-y;
}
@media screen and (max-width: 768px) {
  body,
html {
    background-position: center top 20%;
    background-size: 200% auto;
  }
}

.pagettl5 {
  margin-bottom: 80px;
}
@media screen and (max-width: 768px) {
  .pagettl5 {
    margin-bottom: 20px;
  }
}
.pagettl5 .flex {
  align-items: flex-start;
  gap: 8.9788732394%;
  padding: 192px 70px 120px;
}
@media screen and (max-width: 768px) {
  .pagettl5 .flex {
    display: block;
    padding: 120px 20px 30px;
  }
}
.pagettl5 .flex div h1 {
  margin: 0;
  padding: 0;
  font-family: "Nunito Sans", sans-serif !important;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100, "YTLC" 500;
  font-weight: 600;
  font-size: 72px;
  letter-spacing: 0.04em;
  line-height: 1;
  text-align: left;
  white-space: nowrap;
  color: #171717;
}
@media screen and (max-width: 768px) {
  .pagettl5 .flex div h1 {
    white-space: normal;
    font-size: 13.3333333333vw;
    font-feature-settings: "palt";
  }
}
.pagettl5 .flex div h1 small {
  display: block;
  font-family: "Noto Sans JP";
  font-weight: 500;
  font-size: 0.4444em;
  letter-spacing: 0.06em;
  text-align: left;
  color: #171717;
  padding-top: 1.1em;
}
@media screen and (max-width: 768px) {
  .pagettl5 .flex div h1 small {
    padding-bottom: 2em;
  }
}
.pagettl5 .flex div p {
  font-weight: 500;
  font-size: 16px;
  letter-spacing: 0.02em;
  line-height: 2;
  color: #212121;
  margin: 0;
  padding: 0;
}
@media screen and (max-width: 768px) {
  .pagettl5 .flex div p {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  .pagettl5 figure {
    height: 27vh;
    overflow: hidden;
  }
}
@media screen and (max-width: 768px) {
  .pagettl5 figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

main {
  background: transparent;
}

/*============================
#prof
============================*/
#prof {
  padding: 0 25px;
  margin-bottom: 80px;
}
#prof .box {
  max-width: 1229px;
  margin: auto;
  padding: 80px 30px;
}
@media screen and (max-width: 768px) {
  #prof .box {
    padding: 50px 20px;
  }
}
#prof .box * {
  margin: 0;
  padding: 0;
}
#prof .box h2 {
  font-family: "Nunito Sans", sans-serif !important;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100, "YTLC" 500;
  font-weight: 600;
  font-size: 28px;
  letter-spacing: 0.04em;
  line-height: 1;
  color: #FA7800;
  margin: 0 0 55px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  #prof .box h2 {
    font-size: 20px;
    margin: 0 0 30px;
  }
}
#prof .box .prof-item-list {
  max-width: 1059px;
  margin: auto;
  display: flex;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  #prof .box .prof-item-list {
    display: block;
  }
}
#prof .box .prof-item-list .prof-item {
  flex: 0 0 50%;
  display: flex;
  align-items: flex-start;
  gap: 30px;
  padding-right: 20px;
}
@media screen and (max-width: 768px) {
  #prof .box .prof-item-list .prof-item {
    border: none !important;
    padding: 20px 0 !important;
    gap: 20px;
    padding-right: 0;
    border-bottom: 1px solid #C4C4C4 !important;
  }
}
#prof .box .prof-item-list .prof-item figure {
  display: flex;
  flex: 0 0 104px;
}
@media screen and (max-width: 768px) {
  #prof .box .prof-item-list .prof-item figure {
    flex: 0 0 80px;
  }
}
#prof .box .prof-item-list .prof-item dl dt {
  font-family: "Nunito Sans";
  font-weight: 600;
  font-size: 20px;
  letter-spacing: 0.04em;
  line-height: 1;
  text-align: left;
  color: #fa7800;
  padding-top: 0.5em;
}
@media screen and (max-width: 1024px) {
  #prof .box .prof-item-list .prof-item dl dt {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  #prof .box .prof-item-list .prof-item dl dt {
    font-size: 16px;
    padding-top: 0;
  }
}
#prof .box .prof-item-list .prof-item dl dd {
  font-size: 14px;
  letter-spacing: 0.02em;
  line-height: 1.8;
  padding-top: 1em;
}
@media screen and (max-width: 1024px) {
  #prof .box .prof-item-list .prof-item dl dd {
    font-size: 12px;
  }
}
@media screen and (max-width: 768px) {
  #prof .box .prof-item-list .prof-item dl dd {
    font-size: 11px;
    padding-top: 0.5em;
  }
}
#prof .box .prof-item-list .prof-item:nth-of-type(3),
#prof .box .prof-item-list .prof-item:nth-of-type(4) {
  border-top: 1px solid #C4C4C4;
  padding-top: 45px;
}
#prof .box .prof-item-list .prof-item:nth-of-type(2),
#prof .box .prof-item-list .prof-item:nth-of-type(4) {
  border-left: 1px solid #C4C4C4;
  padding-left: 6.2322946176%;
}
#prof .box .prof-item-list .prof-item:nth-of-type(1),
#prof .box .prof-item-list .prof-item:nth-of-type(2) {
  padding-bottom: 63px;
}

/*============================
.talk-section
============================*/
.talk-section {
  margin: 0 0 80px;
}
.talk-section * {
  margin: 0;
  padding: 0;
}
.talk-section .box {
  position: relative;
  width: 100%;
  background: transparent;
  padding: 0 0 128px 0;
  margin: 0;
}
@media screen and (max-width: 768px) {
  .talk-section .box {
    padding-bottom: 30px;
  }
}
.talk-section .box::before {
  content: "";
  display: block;
  width: calc(100% - 53px);
  height: calc(100% - 88px);
  position: absolute;
  left: 53px;
  top: 88px;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .talk-section .box::before {
    width: 100%;
    height: 100%;
    left: 0;
    right: 0;
    top: 0;
  }
}
.talk-section .box .talk-sec-ttl {
  margin-left: 110px;
  margin-bottom: 120px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .talk-section .box .talk-sec-ttl {
    margin: 0 0 20px !important;
  }
}
.talk-section .box .talk-sec-ttl .sec-mv {
  margin: 0;
  padding: 0;
}
.talk-section .box .talk-sec-ttl h2 {
  position: absolute;
  left: 104px;
  bottom: 55px;
  z-index: 1;
  width: 100%;
  max-width: 853px;
  font-weight: 500;
  font-size: 28px;
  letter-spacing: 0.06em;
  line-height: 1.8;
  text-align: left;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .talk-section .box .talk-sec-ttl h2 {
    position: static;
    color: #000;
    font-size: 19.6px;
    padding: 20px;
  }
}
.talk-section .box .talk-sec-ttl h2 small {
  display: block;
  font-family: "Nunito Sans", sans-serif !important;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100, "YTLC" 500;
  font-weight: normal;
  font-size: 20px;
  font-size: 0.7143em;
  letter-spacing: 0.04em;
  line-height: 1;
  color: #FA7800;
  padding-bottom: 0.5em;
}
.talk-section .box .talk-body {
  position: relative;
  max-width: 853px;
  margin: auto;
  box-sizing: content-box;
  padding: 0 90px;
}
@media screen and (max-width: 768px) {
  .talk-section .box .talk-body {
    padding: 0 20px;
  }
}
.talk-section .box .talk-body .talk-item {
  display: flex;
  gap: 44px;
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .talk-section .box .talk-body .talk-item {
    gap: 25px;
  }
}
.talk-section .box .talk-body .talk-item dt {
  font-family: "Nunito Sans", sans-serif !important;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100, "YTLC" 500;
  font-weight: normal;
  font-size: 14px;
  letter-spacing: 0.04em;
  line-height: 1;
  text-align: center;
  color: #fa7800;
}
.talk-section .box .talk-body .talk-item dt::before {
  content: "";
  display: block;
  width: 60px;
  height: 60px;
  background-image: url(img/talk-icon-tk.jpg);
  background-size: cover;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 768px) {
  .talk-section .box .talk-body .talk-item dt::before {
    width: 50px;
    height: 50px;
  }
}
.talk-section .box .talk-body .talk-item dd {
  font-size: 15px;
  letter-spacing: 0.02em;
  line-height: 2;
  text-align: left;
  color: #171717;
}
@media screen and (max-width: 768px) {
  .talk-section .box .talk-body .talk-item dd {
    font-size: 13px;
  }
}
.talk-section .box .talk-body .talk-item-tk dt::before {
  background-image: url(img/talk-icon-tk.jpg);
}
.talk-section .box .talk-body .talk-item-am dt::before {
  background-image: url(img/talk-icon-am.jpg);
}
.talk-section .box .talk-body .talk-item-sy dt::before {
  background-image: url(img/talk-icon-sy.jpg);
}
.talk-section .box .talk-body .talk-item-km dt::before {
  background-image: url(img/talk-icon-km.jpg);
}
.talk-section .box .talk-body figure.floatR {
  width: 416px;
  float: right;
  margin-right: -146px;
  margin-left: 63px;
}
.talk-section .box .talk-body figure.floatL {
  width: 416px;
  float: left;
  margin-left: -158px;
  margin-right: 63px;
}
@media screen and (max-width: 768px) {
  .talk-section .box .talk-body figure.floatR,
.talk-section .box .talk-body figure.floatL {
    width: auto;
    float: none;
    margin: 0 30px 30px;
  }
}
.talk-section .box .talk-body figure.floatR img,
.talk-section .box .talk-body figure.floatL img {
  width: 100%;
}

/*============================
#sec01
============================*/
/*============================
#sec02
#sec04
============================*/
#sec02 .box::before,
#sec04 .box::before {
  left: 0;
}
#sec02 .box .talk-sec-ttl,
#sec04 .box .talk-sec-ttl {
  margin-left: 0;
  margin-right: 110px;
}