@charset 'utf-8';

/* ------------------------------------------------------------

  SP | corporate

------------------------------------------------------------ */

/*
 swiper -[js]-
----------------------------------------*/
/* sign */
#sign {
  background-color: #3bb6a9;
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-background-size: 100% 100%;
  background-size: 100% 100%;
  padding-top: 10px;
}

#sign img {
  width: 100%;
  vertical-align: bottom;
}

map area {
  outline: none
}


/*
 accordion -[js]-
----------------------------------------*/
#accordion .button {
  color: #fff;
  position: relative;
  border-radius: 4px;
  border: 1px solid #cc0032;
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  width: 61.80%;
  height: 48px;
  margin: 0 auto;
  background-color: #fff;
}

#accordion .button::before {
  content: '';
  position: absolute;
  top: 50%;
  right: 16px;
  width: 24px;
  height: 24px;
  margin-top: -12px;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23ffffff%22%20stroke-width%3D%221%22%20stroke-linecap%3D%22square%22%20stroke-linejoin%3D%22arcs%22%3E%3Cpath%20d%3D%22M18%2015l-6-6-6%206%22%2F%3E%3C%2Fsvg%3E');
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-background-size: 80% 80%;
  background-size: 80% 80%;
  transform: rotate(180deg);
}

#accordion[data-visibility="visible"] .button::before {
  transform: rotate(0deg);
}

#accordion .accordionInner {
  position: relative;
}

#accordion .accordionList {
  position: absolute;
  top: 8px;
  left: 0;
  z-index: 100;
  width: 100%;
  height: 100%;
}

#accordion[data-visibility="hidden"] .accordionList {
  visibility: hidden;
}

#accordion[data-visibility="visible"] .accordionList {
  visibility: visible;
}

#accordion .accordionList>li+li {
  margin-top: 8px;
}

#accordion .accordionList>li a {
  position: relative;
  border-radius: 4px;
  border: 1px solid #cc0032;
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  width: 61.80%;
  height: 48px;
  margin: 0 auto;
  background-color: #fff;
}


/*
 heading
----------------------------------------*/
.heading[layout="athlete"] {
  font-weight: bold;
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  margin-bottom: 16px;
}

.heading[layout="athlete"]::before {
  display: block;
  width: 32px;
  height: 32px;
  margin-right: 8px;
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-background-size: 100% auto;
  background-size: 100% auto;
}

.heading[layout="athlete"]._photo::before {
  content: '';
  background-image: url(https://www.nttcom.co.jp/corporate/athlete/img/bg_gallery.png);
}

.heading[layout="athlete"]._interview::before {
  content: '';
  background-image: url(https://www.nttcom.co.jp/corporate/athlete/img/bg_review.png);
}

.heading[layout="athlete"] .en {
  font-size: 1.2rem;
  font-weight: normal;
  color: #00b9a9;
  display: block;
}

@media screen and (max-width: 960px) {
  .heading[layout="athlete"] .en {
    color: #cc0032;
  }
}

#sign .swiper-background {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background-color: #3bb6a9;
}

/*
 definition -[module]-
----------------------------------------*/
/* component-01 */
.definition[component="01"] .description .paragraph+span {
  text-align: right;
  color: #00837d;
  display: block;
  margin-top: 8px;
}

.definition[component="01"] .description small {
  line-height: 2;
  vertical-align: middle;
  display: inline-block;
  width: .8em;
  height: 0;
  padding-top: .8em;
  margin-left: 8px;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2213%22%20height%3D%2214%22%20viewBox%3D%220%200%2013%2014%22%3E%20%3Cg%20id%3D%22copy%22%20transform%3D%22translate(-3.5%20-2.5)%22%3E%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_194%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%20194%22%20width%3D%229%22%20height%3D%2210%22%20transform%3D%22translate(7%206)%22%20fill%3D%22none%22%20stroke%3D%22%23007871%22%20stroke-linecap%3D%22square%22%20stroke-width%3D%221%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_199%22%20data-name%3D%22%E3%83%91%E3%82%B9%20199%22%20d%3D%22M12.918%2C3H4V13.4%22%20fill%3D%22none%22%20stroke%3D%22%23007871%22%20stroke-linecap%3D%22square%22%20stroke-width%3D%221%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E');
  background-position: left top;
  background-repeat: no-repeat;
  -webkit-background-size: 100% 100%;
  background-size: 100% 100%;
  overflow: hidden;
}


/*
 item
----------------------------------------*/
.item[layout] .data {
  position: relative;
}

.item[layout] .data>.link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* relation */
.item[layout="relation"] {
  margin-bottom: 48px;
}

.item[layout="relation"] .list>li+li {
  margin-top: 24px;
}

.item[layout="relation"] .wrap {
  position: relative;
  border-radius: 4px;
  width: 100%;
  height: 100%;
  background-color: #fff;
  box-shadow:
    0 1px 1px 0 rgba(66, 66, 66, 0.08), 0 1px 3px 1px rgba(66, 66, 66, 0.16);
  overflow: hidden;
  transition: 235ms 0ms cubic-bezier(0.4, 0, 0.2, 1);
}

.item[layout="relation"] .wrap:hover {
  box-shadow:
    0 1px 3px 1px rgba(66, 66, 66, 0.2), 0 2px 8px 4px rgba(66, 66, 66, 0.1);
}

.item[layout="relation"] .column {
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  padding: 16px;
}

.item[layout="relation"] .columnInnerEq1 {
  width: 48px;
}

.item[layout="relation"] .columnInnerEq1 .image {
  display: block;
  width: 100%;
  height: auto;
}

.item[layout="relation"] .columnInnerEq2 {
  -webkit-box-flex: 1;
  flex: 1;
  margin-left: 16px;
}

.item[layout="relation"] .columnInnerEq2 .title .icon {
  font-size: 1.2rem;
  color: #fff;
  border-radius: 4px;
  display: inline-block;
  margin-bottom: 4px;
  padding: 4px 12px;
}

.item[layout="relation"] .columnInnerEq2 .title .icon._01 {
  background-color: #af2423;
}

.item[layout="relation"] .columnInnerEq2 .title .icon._02 {
  background-color: #0e307c;
}

.item[layout="relation"] .columnInnerEq2 .title .icon+span {
  display: block;
}

/* review */
.item[layout="review"] .list>li+li {
  margin-top: 24px;
}

.item[layout="review"] .wrap {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  transition: 235ms 0ms cubic-bezier(0.4, 0, 0.2, 1);
}

.item[layout="review"] .column {
  display: -webkit-flex;
  display: -webkit-box;
  display: flex;
}

.item[layout="review"] .columnInnerEq1 {
  width: 104px;
}

.item[layout="review"] .columnInnerEq1 .image {
  display: block;
  width: 100%;
  height: auto;
}

.item[layout="review"] .columnInnerEq2 {
  -webkit-box-flex: 1;
  flex: 1;
  margin-left: 16px;
}

.item[layout="review"] .columnInnerEq2 .title .icon {
  font-size: 1.2rem;
  color: #fff;
  border-radius: 4px;
  display: inline-block;
  margin-bottom: 4px;
  padding: 4px 12px;
}

.item[layout="review"] .columnInnerEq2 .title .icon._01 {
  background-color: #af2423;
}

.item[layout="review"] .columnInnerEq2 .title .icon._02 {
  background-color: #0e307c;
}

.item[layout="review"] .columnInnerEq2 .title .icon+span {
  display: block;
}

.item[layout="review"] .columnInnerEq2 .description {
  font-size: 1.4rem;
  color: #707070;
}


/*
 background-color
----------------------------------------*/
/* base */
[bg-color="athlete"] {
  margin-right: 0 !important;
  margin-left: 0 !important;
  padding: 40px 16px;
  background-color: #f1f9f9;
}

@media screen and (max-width: 960px) {
  #container [bg-color="athlete"] {
    background-color: rgb(230, 230, 230);
  }
}

[bg-color="athlete"] .unit+.unit {
  margin-top: 0;
}

[bg-color="athlete"] .unit+.unit::before {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  margin: 32px 0;
  background-image: linear-gradient(90deg, #00bbae, #00bbae 50%, transparent 50%, transparent 100%);
  -webkit-background-size: 3px 1px;
  -moz-background-size: 3px 1px;
  background-size: 3px 1px;
}