@charset "UTF-8";
/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
functions・SASS関数
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
@-webkit-keyframes mv-animation {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes mv-animation {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

#governance .better__link.--governance {
  color: #005687;
  font-weight: 700;
  background: url(/images/2022/company/arrow-right--blue.svg) no-repeat 95% center;
  background-size: 3.8461538462vw 1.5384615385vw;
}

#customer-harassment .better__link.--customer-harassment {
  color: #005687;
  font-weight: 700;
  background: url(/images/2022/company/arrow-right--blue.svg) no-repeat 95% center;
  background-size: 3.8461538462vw 1.5384615385vw;
}

@media screen and (min-width: 768px) {
  #governance .better__link.--governance {
    background-size: 18px 6px;
  }
  #customer-harassment .better__link.--customer-harassment {
    background-size: 18px 6px;
  }
}

.company__ttl.--better::before {
  content: "GOVERNANCE";
}

.company__ttl.--tvhevent2025::before {
  content: "TVh EVENT 2025";
}

.company__ttl.--customer-harassment::before {
  content: "CUSTOMER HARASSMENT";
}

.better, .member, .council, .youth, .standard, .antisocial, .kinds {
  padding-top: 7.69231vw;
}

@media screen and (min-width: 768px) {
  .better, .member, .council, .youth, .standard, .antisocial, .kinds {
    padding: 0 0 60px;
  }
}

@media screen and (min-width: 768px) {
  #better .better__list {
    width: 768px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 60px auto;
  }
  #better .better__list .better__item:nth-of-type(2) {
    border-top: 1px solid #d9d9d9;
  }
}

.better__list {
  width: 100%;
  margin-top: 15.38462vw;
  padding: 0 3.84615vw;
}

@media screen and (min-width: 768px) {
  .better__list {
    margin: 0;
    width: 300px;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.better__item {
  border-bottom: 1px solid #d9d9d9;
}

.better__item:first-of-type {
  border-top: 1px solid #d9d9d9;
}

@media screen and (min-width: 768px) {
  .better__item {
    width: 367px;
  }
}

.better__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 6.92308vw 3.07692vw;
  font-size: 3.58974vw;
  background: url("/images/2022/company/arrow-right.svg") no-repeat 95% center;
  background-size: 3.84615vw 1.53846vw;
}

@media screen and (min-width: 768px) {
  .better__link {
    font-size: 14px;
    padding: 0 0 0 15px;
    background-position: 93% center;
    background-size: 18px 6px;
    height: 70px;
    -webkit-transition: background-position .3s;
    transition: background-position .3s;
  }
  .better__link:hover {
    background-position: 96% center;
    background-image: url("/images/2022/company/arrow-right--blue.svg");
    color: #005687;
    font-weight: 700;
  }
}

#member .better__link.--member {
  color: #005687;
  font-weight: 700;
  background: url("/images/2022/company/arrow-right--blue.svg") no-repeat 95% center;
  background-size: 3.84615vw 1.53846vw;
}

@media screen and (min-width: 768px) {
  #member .better__link.--member {
    background-size: 18px 6px;
  }
}

.better__inner {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

@media screen and (min-width: 768px) {
  .better__inner {
    width: 1058px;
    margin: 60px auto;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.governance__wrap a {
  color: #17a6ff;
  text-decoration: underline;
  overflow-wrap: anywhere;
  word-break: break-all;
}

.btn__link.--blue {
  color: #fff;
  text-decoration: none;
}

.txt__right {
  text-align: right;
}

.member__dl {
  padding: 0 3.84615vw;
  margin-top: 15.38462vw;
  font-size: 3.58974vw;
}

@media screen and (min-width: 768px) {
  .member__dl {
    width: 698px;
    padding: 0;
    margin: 0;
    font-size: 14px;
    border: 1px solid #d9d9d9;
  }
}

.member__dt {
  font-size: inherit;
  font-weight: 700;
  padding: 3.07692vw 3.84615vw;
  background: #ededed;
}

@media screen and (min-width: 768px) {
  .member__dt {
    padding: 1em 1.5em;
  }
}

.member__dd {
  font-size: inherit;
  padding: 3.84615vw;
}

@media screen and (min-width: 768px) {
  .member__dd {
    padding: 1em 1.5em;
  }
}

#council .better__link.--council {
  color: #005687;
  font-weight: 700;
  background: url("/images/2022/company/arrow-right--blue.svg") no-repeat 95% center;
  background-size: 3.84615vw 1.53846vw;
}

@media screen and (min-width: 768px) {
  #council .better__link.--council {
    background-size: 18px 6px;
  }
}

.council__wrap {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .council__wrap {
    width: 698px;
    padding: 0 15px;
  }
}

.council__inner, .youth__inner {
  width: 92.30769vw;
  padding: 3.84615vw;
  margin: 0 auto 6.15385vw;
  border: 1px solid #ededed;
  border-radius: 1.53846vw;
}

.council__inner:first-of-type, .youth__inner:first-of-type {
  margin: 15.38462vw auto 6.15385vw;
}

@media screen and (min-width: 768px) {
  .council__inner, .youth__inner {
    width: 668px;
    padding: 15px;
    border-radius: 6px;
    margin: 0 0 60px;
  }
  .council__inner:first-of-type, .youth__inner:first-of-type {
    margin: 0 0 60px;
  }
}

.council__dl {
  margin-top: 7.69231vw;
  font-size: 3.58974vw;
  display: none;
}

@media screen and (min-width: 768px) {
  .council__dl {
    display: block !important;
    font-size: 14px;
    margin-top: 30px;
  }
}

.council__dt {
  font-size: inherit;
  font-weight: 700;
  background: #ededed;
  padding: 3.84615vw;
}

@media screen and (min-width: 768px) {
  .council__dt {
    padding: 1em 1.5em;
  }
}

.council__dd {
  font-size: inherit;
  border: 1px solid #ededed;
  padding: 3.84615vw;
  margin-bottom: 3.84615vw;
}

@media screen and (min-width: 768px) {
  .council__dd {
    padding: 1em 1.5em;
    margin-bottom: 15px;
  }
}

.council__li {
  font-size: 3.58974vw;
  padding-bottom: 3.84615vw;
  border-bottom: 1px dashed #d9d9d9;
  margin-bottom: 3.84615vw;
  line-height: 1.8;
}

.council__li:last-of-type {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

@media screen and (min-width: 768px) {
  .council__li {
    font-size: 14px;
    padding-bottom: 15px;
    margin-bottom: 15px;
  }
}

.council__span {
  font-size: inherit;
  display: block;
  line-height: inherit;
}

.council__span.--bold {
  font-weight: 700;
}

#youth .better__link.--youth {
  color: #005687;
  font-weight: 700;
  background: url("/images/2022/company/arrow-right--blue.svg") no-repeat 95% center;
  background-size: 3.84615vw 1.53846vw;
}

@media screen and (min-width: 768px) {
  #youth .better__link.--youth {
    background-size: 18px 6px;
  }
}

.youth__wrap {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .youth__wrap {
    width: 698px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.youth__inner {
  border: 1px solid #d9d9d9;
}

@media screen and (min-width: 768px) {
  .youth__inner {
    width: 334px;
    margin-bottom: 36px;
  }
  .youth__inner:first-of-type {
    margin-bottom: 36px;
  }
}

.youth__details {
  margin-top: 3.84615vw;
  display: none;
}

@media screen and (min-width: 768px) {
  .youth__details {
    display: block !important;
    margin-top: 15px;
  }
}

.youth__contents {
  font-size: 3.07692vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

@media screen and (min-width: 768px) {
  .youth__contents {
    font-size: 12px;
  }
}

.youth__tag {
  color: #fff;
  font-size: inherit;
  font-weight: 700;
  line-height: 1;
  padding: 1.53846vw 2.30769vw;
  background: #005687;
  letter-spacing: .1em;
}

@media screen and (min-width: 768px) {
  .youth__tag {
    padding: 6px 9px;
  }
}

.youth__date {
  font-size: inherit;
  font-weight: 700;
  margin-top: 2.30769vw;
}

@media screen and (min-width: 768px) {
  .youth__date {
    margin-top: 9px;
  }
}

.youth__txt {
  margin-top: 3.84615vw;
  font-size: 3.58974vw;
  line-height: 1.8;
}

@media screen and (min-width: 768px) {
  .youth__txt {
    margin-top: 15px;
    font-size: 14px;
  }
}

#standard .better__link.--standard {
  color: #005687;
  font-weight: 700;
  background: url("/images/2022/company/arrow-right--blue.svg") no-repeat 95% center;
  background-size: 3.84615vw 1.53846vw;
}

@media screen and (min-width: 768px) {
  #standard .better__link.--standard {
    background-size: 18px 6px;
  }
}

.standard-wrap {
  padding: 0 3.84615vw;
  margin-top: 15.38462vw;
}

@media screen and (min-width: 768px) {
  .standard-wrap {
    margin-top: 0;
    padding: 0;
    width: 698px;
  }
}

.standard__text, .antisocial__text {
  font-size: 3.33333vw;
}

.standard__text.--right, .--right.antisocial__text {
  text-align: right;
}

@media screen and (min-width: 768px) {
  .standard__text, .antisocial__text {
    font-size: 13px;
  }
}

.standard__ol, .antisocial__ol {
  margin-top: 3.84615vw;
  counter-reset: num 0;
}

.standard__ol .standard__li, .antisocial__ol .standard__li, .standard__ol .antisocial__li, .antisocial__ol .antisocial__li {
  position: relative;
  padding-left: 1.5em;
}

.standard__ol .standard__li::before, .antisocial__ol .standard__li::before, .standard__ol .antisocial__li::before, .antisocial__ol .antisocial__li::before {
  position: absolute;
  top: 0;
  left: 0;
  counter-increment: num 1;
  content: counter(num) ". ";
  font-size: 1em;
}

.standard__ol.--inner .standard__li, .--inner.antisocial__ol .standard__li, .standard__ol.--inner .antisocial__li, .--inner.antisocial__ol .antisocial__li {
  padding-left: 2em;
}

.standard__ol.--inner .standard__li::before, .--inner.antisocial__ol .standard__li::before, .standard__ol.--inner .antisocial__li::before, .--inner.antisocial__ol .antisocial__li::before {
  counter-increment: num 1;
  content: "（" counter(num) "）";
}

@media screen and (min-width: 768px) {
  .standard__ol, .antisocial__ol {
    margin-top: 15px;
  }
}

.standard__li, .antisocial__li {
  font-size: 3.58974vw;
}

@media screen and (min-width: 768px) {
  .standard__li, .antisocial__li {
    font-size: 14px;
  }
}

.standard__txt {
  display: block;
  font-size: inherit;
  margin-bottom: .6em;
}

.standard__txt.--ttl {
  margin-bottom: .3em;
}

.standard__link, .kinds__link {
  font-size: inherit;
  font-weight: inherit;
  color: #17a6ff;
  text-decoration: underline;
}

#antisocial .better__link.--antisocial {
  color: #005687;
  font-weight: 700;
  background: url("/images/2022/company/arrow-right--blue.svg") no-repeat 95% center;
  background-size: 3.84615vw 1.53846vw;
}

@media screen and (min-width: 768px) {
  #antisocial .better__link.--antisocial {
    background-size: 18px 6px;
  }
}

.governance__wrap {
  padding: 0 3.84615vw;
  margin-top: 15.38462vw;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .governance__wrap {
    margin-top: 0;
    padding: 0;
    width: 698px;
  }
}

.antisocial__sect {
  margin-top: 15.38462vw;
}

.antisocial__sect:first-of-type {
  margin-top: 0;
}

@media screen and (min-width: 768px) {
  .antisocial__sect {
    margin-top: 90px;
  }
}

.antisocial__text {
  display: block;
  margin: 1em 0;
}

#compliance .better__link.--compliance {
  color: #005687;
  font-weight: 700;
  background: url("/images/2022/company/arrow-right--blue.svg") no-repeat 95% center;
  background-size: 3.84615vw 1.53846vw;
}

@media screen and (min-width: 768px) {
  #compliance .better__link.--compliance {
    background-size: 18px 6px;
  }
}

#kinds .better__link.--kinds {
  color: #005687;
  font-weight: 700;
  background: url("/images/2022/company/arrow-right--blue.svg") no-repeat 95% center;
  background-size: 3.84615vw 1.53846vw;
}

@media screen and (min-width: 768px) {
  #kinds .better__link.--kinds {
    background-size: 18px 6px;
  }
}

.kinds__sect {
  border: 1px solid #d9d9d9;
  padding: 3.84615vw;
  border-radius: 1.53846vw;
  margin-top: 3.84615vw;
}

.kinds__sect:first-of-type {
  margin-top: 0;
}

@media screen and (min-width: 768px) {
  .kinds__sect {
    padding: 15px;
    border-radius: 6px;
    margin-top: 15px;
  }
}

.kinds-wrap {
  padding: 0 3.84615vw;
  margin-top: 15.38462vw;
}

@media screen and (min-width: 768px) {
  .kinds-wrap {
    padding: 0;
    margin: 0;
    width: 698px;
  }
}

.kinds__details {
  margin-top: 7.69231vw;
}

@media screen and (min-width: 768px) {
  .kinds__details {
    margin-top: 30px;
  }
}

.kinds__container {
  display: none;
}

@media screen and (min-width: 768px) {
  .kinds__container {
    display: block !important;
  }
}

.kinds__ttl {
  font-weight: 700;
  margin-top: 11.53846vw;
}

@media screen and (min-width: 768px) {
  .kinds__ttl {
    margin-top: 30px;
  }
}

.kinds__list {
  display: none;
  margin-top: 7.69231vw;
}

.kinds__list.--inner {
  display: block;
  margin-top: 0;
}

@media screen and (min-width: 768px) {
  .kinds__list {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    margin-top: 30px;
  }
}

.kinds__item:last-of-type .kinds__item-link {
  border-bottom: none;
}

@media screen and (min-width: 768px) {
  .kinds__item {
    width: 310px;
    min-height: 56px;
  }
  .kinds__item:last-of-type .kinds__item-link {
    border-bottom: 1px dashed #ededed;
  }
}

.kinds__item-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 3.84615vw 0;
  border-bottom: 1px dashed #ededed;
}

@media screen and (min-width: 768px) {
  .kinds__item-link {
    padding: 15px 0;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.kinds__link-txt {
  font-size: 3.33333vw;
  display: block;
}

.kinds__link-txt:hover {
  text-decoration: underline;
}

@media screen and (min-width: 768px) {
  .kinds__link-txt {
    font-size: 13px;
    margin-bottom: 6px;
  }
}

.kinds__pdf {
  display: block;
  font-size: 2.5641vw;
  color: #fff;
  background: #525252;
  padding: 1.53846vw 3.07692vw 1.15385vw;
  line-height: 1;
  border-radius: 6.15385vw;
  margin-top: 2.30769vw;
}

@media screen and (min-width: 768px) {
  .kinds__pdf {
    font-size: 10px;
    padding: 6px 12px;
    border-radius: 9999px;
    margin: 0;
  }
}

.kinds__text {
  margin-top: 3.84615vw;
  font-size: 3.58974vw;
  line-height: 1.8;
}

@media screen and (min-width: 768px) {
  .kinds__text {
    margin-top: 30px;
    font-size: 14px;
  }
}

.governance__item {
  border: 1px solid #d9d9d9;
  margin-top: 5vw;
  margin-bottom: 5vw;
  padding: 2vw;
}

@media screen and (min-width: 768px) {
  .governance__item {
    margin-top: 30px;
    margin-bottom: 30px;
    padding: 30px;
  }
}

.governance__item h2 {
  font-size: 4.61538vw;
  font-weight: bold;
  margin-bottom: 1rem;
}

@media screen and (min-width: 768px) {
  .governance__item h2 {
    font-size: 18px;
  }
}

.governance__item p,
.governance__item li {
  font-size: 3.84615vw !important;
  line-height: 1.5;
  margin-bottom: 1rem;
}

@media screen and (min-width: 768px) {
  .governance__item p,
  .governance__item li {
    font-size: 15px !important;
  }
}

.governance__table {
  width: 100%;
  border-collapse: collapse;
  border-top: 1px solid #ededed;
  border-left: 1px solid #ededed;
}

.governance__table th {
  background: #ededed;
  font-size: 3.58974vw;
  font-weight: bold;
  padding: 1vw;
  border-right: 1px solid #ededed;
  border-bottom: 1px solid #ededed;
}

@media screen and (min-width: 768px) {
  .governance__table th {
    font-size: 14px;
    padding: 5px;
  }
}

.governance__table td {
  padding: 1vw;
  font-size: 3.07692vw;
  line-height: 1.5;
  margin-bottom: 1rem;
  border-right: 1px solid #ededed;
  border-bottom: 1px solid #ededed;
}

.governance__table td.none {
  border-bottom: none;
}

.governance__table td.bordertop {
  border-top: 1px solid #ededed;
}

@media screen and (min-width: 768px) {
  .governance__table td {
    padding: 5px;
    font-size: 12px;
  }
}

.governance__table td.right {
  text-align: right;
}

.event__link .member__dl {
  margin-top: 5vw;
  padding: 0;
}

@media screen and (min-width: 768px) {
  .event__link .member__dl {
    margin-top: 10px;
  }
}

.member__dd--long p {
  position: relative;
  padding-left: 9em;
}

.member__dd--long p span {
  position: absolute;
  left: 0;
}

.member__dd--short p {
  position: relative;
  padding-left: 6em;
}

.member__dd--short p span {
  position: absolute;
  left: 0;
}

@media screen and (min-width: 768px) {
  .btn {
    width: 256px;
    height: 44px;
  }
}

.event__wrap h2 {
  font-size: 4.61538vw;
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  .event__wrap h2 {
    font-size: 18px;
  }
}

.event__wrap h3 {
  font-size: 4.10256vw;
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  .event__wrap h3 {
    font-size: 18px;
  }
}

.event__wrap p {
  font-size: 3.07692vw;
}

@media screen and (min-width: 768px) {
  .event__wrap p {
    font-size: 14px;
  }
}

.governance__wrap p,
.governance__wrap li {
  font-size: 3.58974vw;
  margin-bottom: 1em;
  overflow-wrap: anywhere;
  word-break: break-all;
}

@media screen and (min-width: 768px) {
  .governance__wrap p,
  .governance__wrap li {
    font-size: 14px;
  }
}

.customer-harassment__ul li {
  font-size: 3.58974vw;
}

@media screen and (min-width: 768px) {
  .customer-harassment__ul li {
    font-size: 14px;
    padding-left: 2em;
    text-indent: -.5em;
  }
}

.tableimage {
  height: auto;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .tableimage {
    width: auto;
  }
}

.event__ttl {
  color: #005687;
}

.fs10 {
  font-size: 2.5641vw !important;
}

@media screen and (min-width: 768px) {
  .fs10 {
    font-size: 10px !important;
  }
}

.fs12 {
  font-size: 3.07692vw !important;
}

@media screen and (min-width: 768px) {
  .fs12 {
    font-size: 12px !important;
  }
}

.fs14 {
  font-size: 3.58974vw !important;
}

@media screen and (min-width: 768px) {
  .fs14 {
    font-size: 14px !important;
  }
}

.mb1em {
  margin-bottom: 1em;
}
