/**********************************************************************************
// team.css
// PC・SP 選手一覧用CSS
// ------------------------------------------------------------
// team-outline-intro - 選手一覧全体（全タブ共通）
// team-outline-profile - 出場校別：チーム
// team-outline-runner - 出場校別：選手
// team-outline-kukan - 区間別
// team-outline-region - 出身高校別：地域
// team-outline-prefecture - 出身高校別：都道府県
// ------------------------------------------------------------
// team-outline-tab - タブ切り替え
// team-outline-share - シェア
// team-outline-modal - モーダル（チーム紹介）
**********************************************************************************/

/**********************************************************************************
// layout
**********************************************************************************/
.hakone-body {
  background-color: #f7f7f7;
}
.hakone-body__inner {
  position: relative;
  overflow: hidden;
}
.hakone-body__inner::before {
  position: absolute;
  top: -200px;
  right: -230px;
  z-index: 0;
  display: block;
  width: 591px;
  height: 560px;
  content: "";
  background: url(/hakone/98/assets/images/common/bg_item_01.png) no-repeat
    center transparent;
  background-size: contain;
}
.hakone-body.bg--transparent .hakone-body__inner::before {
  opacity: 0.2;
}

/***********************************************************
// layout - sp
***********************************************************/
body.isSP .hakone-body__inner::before {
  top: -100px;
  right: -110px;
  width: 290px;
  height: 275px;
}

/**********************************************************************************
// team-outline
**********************************************************************************/
.team-outline {
  position: relative;
  z-index: 1;
  padding: 60px 0;
  font-size: 16px;
}
.team-outline__inner {
  max-width: 860px;
}
.team-outline__title {
  margin-bottom: 40px !important;
}

/***********************************************************
// team-outline - sp
***********************************************************/
body.isSP .team-outline {
  padding: 40px 0 20px;
}
body.isSP .team-outline__title {
  margin-bottom: 20px !important;
}

/**********************************************************************************
// team-outline-intro
// 選手一覧全体
**********************************************************************************/
.team-outline-intro {
  margin-top: 70px;
}
.team-outline-intro__box {
}
.team-outline-intro__box.box--team {
}
.team-outline-intro__box.box--kukan {
}
.team-outline-intro__box.box--school {
  margin-bottom: 40px;
}

.team-outline-intro__title {
  position: relative;
  padding-bottom: 15px;
  margin-bottom: 20px;
  font-size: 22px;
  font-weight: bold;
  letter-spacing: 0.88px;
  border-bottom: 1px solid #e60012;
}
.team-outline-intro__title::before {
  position: absolute;
  bottom: -1px;
  left: 0;
  display: block;
  width: 60px;
  height: 4px;
  content: "";
  background-color: #e60012;
}
.team-outline-intro__subtitle {
  padding: 15px;
  margin-bottom: 20px;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
  letter-spacing: 0.64px;
  background-color: #f0f0f0;
}

/***********************************************************
// team-outline-intro - sp
// 選手一覧全体
***********************************************************/
body.isSP .team-outline-intro {
  margin-top: 40px;
}
body.isSP .team-outline-intro__title {
  font-size: 18px;
  letter-spacing: 0.72px;
}
body.isSP .team-outline-intro__title::before {
  width: 40px;
}
body.isSP .team-outline-intro__subtitle {
  margin-bottom: 10px;
}

/**********************************************************************************
// team-outline-profile
// 出場校別：チーム
**********************************************************************************/
.team-outline-profile {
  display: none;
}
.team-outline-profile.is-show {
  display: block;
}
.team-outline-profile__box {
}
.team-outline-profile__box:not(:first-of-type) {
  margin-top: 40px;
}

.team-outline-profile__title {
  padding: 8px 15px;
}
.team-outline-profile__body {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  margin-top: 40px;
}
.team-outline-profile__college {
  display: flex;
  align-items: stretch;
  justify-content: center;
  width: calc((100% - 40px) / 2);
  padding-bottom: 40px;
  border-bottom: 1px solid #ccc;
}
.team-outline-profile__college:nth-child(2n) {
  margin-left: 40px;
}
.team-outline-profile__college:nth-child(n + 3) {
  margin-top: 40px;
}
.team-outline-profile__uniform {
  width: 45.8%;
}
.team-outline-profile__uniform img {
  width: 128px;
  margin: 0 auto;
}
.team-outline-profile__detail {
  width: 54.2%;
  padding: 0 10px 0 20px;
}
.team-outline-profile__detail .college {
}
.team-outline-profile__detail .college__name {
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.72px;
}
.team-outline-profile__detail .college__times {
  font-size: 14px;
  letter-spacing: 0.56px;
}
.team-outline-profile__detail .btn {
  margin-top: 10px;
}
.team-outline-profile__detail .btn a {
  position: relative;
  padding: 7px 20px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.75;
  color: #a4843d;
  text-align: center;
  background-color: #fff;
  border: 1px solid #a4843d;
}
.team-outline-profile__detail .btn a:not(:first-child) {
  margin-top: 10px;
}
.team-outline-profile__detail .btn a.btn--runner {
}
.team-outline-profile__detail .btn a.btn--point {
}
.team-outline-profile__detail .btn a .arrow {
  position: absolute;
  top: 50%;
  right: 10px;
  display: block;
  width: 6px;
  height: 12px;
  transform: translateY(-50%);
}
.team-outline-profile__detail .point {
  display: none;
}

/* team-outline-profile__point - modal contents
========================================== */
.team-outline-profile__point {
}
.team-outline-profile__point .inner {
  overflow: hidden;
  border-radius: 8px;
}
.team-outline-profile__point .title {
  padding: 30px;
  color: #fff;
  text-align: center;
  background-color: #a4843d;
}
.team-outline-profile__point .title__team {
  position: relative;
  font-size: 22px;
  font-weight: bold;
  letter-spacing: 0.88px;
}
.team-outline-profile__point .title__team::before {
  position: absolute;
  bottom: -8px;
  left: 50%;
  display: block;
  width: 40px;
  height: 4px;
  content: "";
  background-color: #fff;
  transform: translateX(-50%);
}
.team-outline-profile__point .title__times {
  margin-top: 25px;
  font-size: 14px;
  letter-spacing: 0.56px;
}
.team-outline-profile__point .body {
  padding: 35px 40px 50px;
  color: #000;
  background-color: #fff;
}
.team-outline-profile__point .body .times {
  display: none; /* from WYSIWYG */
}
.team-outline-profile__point .body dl {
  font-size: 16px;
  letter-spacing: 0.64px;
}
.team-outline-profile__point .body dt {
  position: relative;
  padding-bottom: 15px;
  margin-bottom: 15px;
  font-weight: bold;
  border-bottom: 1px solid #ccc;
}
.team-outline-profile__point .body dt::before {
  margin-right: 10px;
  content: "●";
}
.team-outline-profile__point .body dt:nth-of-type(n + 2) {
  margin-top: 30px;
}
.team-outline-profile__point .body dd {
  margin-top: 15px;
  line-height: 1.8;
  letter-spacing: 0.64px;
}

/***********************************************************
// team-outline-profile - sp
// 出場校別：チーム
***********************************************************/
body.isSP .team-outline-profile__box:not(:first-of-type) {
  margin-top: 30px;
}
body.isSP .team-outline-profile__body {
  padding: 0 3%;
  margin-top: 30px;
}
body.isSP .team-outline-profile__college {
  width: 100%;
  padding-bottom: 30px;
}
body.isSP .team-outline-profile__college:nth-child(2n) {
  margin-left: 0;
}
body.isSP .team-outline-profile__college:nth-child(n + 2) {
  margin-top: 30px;
}
body.isSP .team-outline-profile__uniform {
  width: 38.6%;
}
body.isSP .team-outline-profile__uniform img {
  width: 97.7%;
  margin: 0;
}
body.isSP .team-outline-profile__detail {
  width: 61.4%;
  padding: 0 0 0 10%;
}
body.isSP .team-outline-profile__detail .btn a {
  padding: 9px 20px;
}

/* team-outline-profile__point - modal contents
========================================== */
body.isSP .team-outline-profile__point .title__team {
  font-size: 18px;
  letter-spacing: 0.72px;
}
body.isSP .team-outline-profile__point .body {
  padding: 35px 6.5% 50px;
}

/**********************************************************************************
// team-outline-runner
// 出場校別：選手
**********************************************************************************/
.team-outline-runner {
  display: none;
}
.team-outline-runner.is-show {
  display: block;
}
.team-outline-runner__box {
}

.team-outline-runner__title {
}
.team-outline-runner__list {
}
.team-outline-runner__item {
  font-size: 16px;
}
.team-outline-runner__item:not(:first-of-type) {
  padding-top: 35px;
  margin-top: 40px;
  border-top: 1px solid #ccc;
}
.team-outline-runner__kukan {
  margin-bottom: 15px;
  font-size: 18px;
  font-weight: bold;
}
.team-outline-runner__kukan span {
  position: relative;
}
.team-outline-runner__profile {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-start;
}
.team-outline-runner__profile .photo {
  width: 21.72%;
}
.team-outline-runner__profile .photo img {
  width: 100%;
}
.team-outline-runner__profile .info {
  width: 78.28%;
  padding-left: 20px;
}
.team-outline-runner__profile .info__ranking {
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0.56px;
}
.team-outline-runner__profile .info__ranking span {
  display: inline-block;
  min-width: 70px;
  margin-right: 10px;
  font-size: 12px;
  font-weight: normal;
  line-height: 1.5;
  color: #fff;
  text-align: center;
  letter-spacing: 0.48px;
  background-color: #e60012;
  border-radius: 4px;
}
.team-outline-runner__profile .info__ranking span:nth-of-type(n + 2) {
  margin-left: 15px;
}
.team-outline-runner__profile .info__ranking br {
  display: none;
}
.team-outline-runner__profile .info__name {
  margin-top: 12px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.4;
  letter-spacing: 0.72px;
}
.team-outline-runner__profile .info__name span {
  display: block;
  margin-top: 5px;
  font-size: 14px;
  font-weight: normal;
  letter-spacing: 0.56px;
}
.team-outline-runner__profile .info__grade {
  margin-top: 5px;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.8;
  letter-spacing: 0.56px;
}
.team-outline-runner__profile .record {
  width: 100%;
  margin-top: 20px;
}
.team-outline-runner__profile .record__title {
  margin-bottom: 10px;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 0.48px;
}
.team-outline-runner__profile .record__title span {
}
.team-outline-runner__profile .record__list {
  display: flex;
  width: 100%;
  font-size: 14px;
  line-height: 1.6;
  text-align: center;
  letter-spacing: 0.56px;
}
.team-outline-runner__profile .record__item {
  display: flex;
  width: calc(100% / 3);
}
.team-outline-runner__profile .record__item .grade,
.team-outline-runner__profile .record__item .kukan,
.team-outline-runner__profile .record__item .rank {
  padding: 4px;
}

.team-outline-runner__profile .record__item .grade {
  width: 25%;
  font-weight: bold;
  background-color: #f0f0f0;
}
.team-outline-runner__profile .record__item .kukan {
  width: 25%;
  background-color: #fff;
  border-right: 1px solid #f0f0f0;
}
.team-outline-runner__profile .record__item .rank {
  width: 50%;
  background-color: #fff;
}
.team-outline-runner__profile .record__item .rank span.mark {
  font-weight: bold;
  color: #e60012;
}

.team-outline-runner__profile .best {
  width: 100%;
  margin-top: 20px;
}
.team-outline-runner__profile .best__title {
  margin-bottom: 10px;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 0.48px;
}
.team-outline-runner__profile .best__title span {
}
.team-outline-runner__profile .best__list {
  display: flex;
  width: 100%;
  font-size: 14px;
  line-height: 1.6;
  text-align: center;
  letter-spacing: 0.56px;
}
.team-outline-runner__profile .best__item {
  display: flex;
  width: 50%;
}
.team-outline-runner__profile .best__item .distance,
.team-outline-runner__profile .best__item .time {
  padding: 4px;
}
.team-outline-runner__profile .best__item .distance {
  width: 52.8%;
  font-weight: bold;
  background-color: #f0f0f0;
}
.team-outline-runner__profile .best__item .time {
  width: 47.2%;
  background-color: #fff;
}

/* team-outline-runner__item is-in / is-out
------------------------------------------ */
.team-outline-runner__item.is-in .team-outline-runner__kukan span::after,
.team-outline-runner__item.is-out .team-outline-runner__kukan span::after {
  position: relative;
  padding: 4px 6px;
  font-size: 10px;
  vertical-align: middle;
  border-radius: 4px;
}

/* team-outline-runner__item is-in
------------------------------------------ */
.team-outline-runner__item.is-in .team-outline-runner__kukan span::after {
  left: 15px;
  color: #e60012;
  content: "エントリー変更・IN";
  border: 1px solid #e60012;
}

/* team-outline-runner__item is-out
------------------------------------------ */
.team-outline-runner__item.is-out .team-outline-runner__kukan span::after {
  color: #666;
  content: "エントリー変更・OUT";
  border: 1px solid #666;
}

/* team-outline-runner__item is-out / is-blank
------------------------------------------ */
.team-outline-runner__item.is-out .team-outline-runner__profile .info__name,
.team-outline-runner__item.is-blank .team-outline-runner__profile .info__name {
  margin-top: 7px;
}

/* team-outline-runner__item is-blank
------------------------------------------ */
.team-outline-runner__item.is-blank {
  padding-top: 40px;
}
.team-outline-runner__item.is-blank .team-outline-runner__kukan {
  margin-bottom: 0;
  font-size: 0;
}

.team-outline-runner__btn {
  margin-top: 40px;
}
.team-outline-runner__btn .hakone-btn {
  max-width: 320px;
}

/***********************************************************
// team-outline-runner - sp
// 出場校別：選手
***********************************************************/
body.isSP .team-outline-runner__list {
  padding: 0 3%;
}
body.isSP .team-outline-runner__profile .photo {
  width: 47%;
}
body.isSP .team-outline-runner__profile .info {
  width: 53%;
  padding-left: 5%;
}
body.isSP .team-outline-runner__profile .info__ranking br {
  display: block;
}
body.isSP .team-outline-runner__profile .info__ranking span {
  padding: 2px 0;
  font-size: 10px;
  letter-spacing: 0.4px;
}
body.isSP .team-outline-runner__profile .info__ranking span:nth-of-type(n + 2) {
  margin-top: 10px;
  margin-left: 0;
}
body.isSP .team-outline-runner__profile .info__name {
  margin-top: 15px;
}
body.isSP .team-outline-runner__profile .record {
  margin-top: 15px;
}
body.isSP .team-outline-runner__profile .record__list {
  flex-wrap: wrap;
  font-size: 12px;
  line-height: 1.6;
  letter-spacing: 0.48px;
}
body.isSP .team-outline-runner__profile .record__item {
  width: 50%;
}
body.isSP .team-outline-runner__profile .record__item:nth-child(n + 3) .grade {
  border-top: 1px solid #fff;
}
body.isSP .team-outline-runner__profile .record__item:nth-child(n + 3) .kukan,
body.isSP .team-outline-runner__profile .record__item:nth-child(n + 3) .rank {
  border-top: 1px solid #f0f0f0;
}
body.isSP .team-outline-runner__profile .best {
  margin-top: 15px;
}
body.isSP .team-outline-runner__profile .best__list {
  font-size: 12px;
  letter-spacing: 0.48px;
}
body.isSP .team-outline-runner__profile .best__item {
  flex-direction: column;
}
body.isSP .team-outline-runner__profile .best__item .distance,
body.isSP .team-outline-runner__profile .best__item .time {
  width: 100%;
}
body.isSP .team-outline-runner__profile .best__item:nth-child(even) .distance {
  border-left: 1px solid #fff;
}
body.isSP .team-outline-runner__profile .best__item:nth-child(even) .time {
  border-left: 1px solid #f0f0f0;
}
body.isSP .team-outline-runner__btn .hakone-btn {
  max-width: 100%;
  padding: 15px 30px;
}

/**********************************************************************************
// team-outline-kukan
// 区間別
**********************************************************************************/
.team-outline-kukan {
  display: none;
}
.team-outline-kukan.is-show {
  display: block;
}
.team-outline-kukan__box {
}

.team-outline-kukan__nav {
  margin: 20px auto 40px;
}
.team-outline-kukan__nav .inner {
}
.team-outline-kukan__nav .list {
  display: flex;
  align-items: center;
  justify-content: center;
}
.team-outline-kukan__nav .item {
  width: calc((100% - 72px) / 10);
}
.team-outline-kukan__nav .item:not(:first-child) {
  margin-left: 8px;
}
.team-outline-kukan__nav .item a {
  padding: 3px 10px;
  font-size: 14px;
  font-weight: bold;
  color: #a4843d;
  text-align: center;
  letter-spacing: 0.56px;
  background-color: #fff;
  border: 1px solid #a4843d;
  border-radius: 22px;
}
.team-outline-kukan__nav .item a.is-active {
  color: #fff;
  pointer-events: none;
  cursor: pointer;
  background-color: #a4843d;
  border: 1px solid #a4843d;
  opacity: 1 !important;
}

.team-outline-kukan__title {
}
.team-outline-kukan__list {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}
.team-outline-kukan__item {
  width: calc((100% - 40px) / 2);
  font-size: 16px;
}
.team-outline-kukan__item:nth-child(2n) {
  margin-left: 40px;
}
.team-outline-kukan__item:nth-child(n + 3) {
  margin-top: 40px;
}
.team-outline-kukan__team {
  padding-bottom: 15px;
  margin-bottom: 20px;
  border-bottom: 1px solid #ccc;
}
.team-outline-kukan__team a {
  position: relative;
}
.team-outline-kukan__team a::after {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 7px;
  height: 14px;
  content: "";
  background: url(/hakone/98/assets/images/arrow/icon_arrow_black.png) no-repeat
    center transparent;
  background-size: contain;
  transform: translateY(-50%);
}
.team-outline-kukan__team .inner {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.team-outline-kukan__team .uniform {
  width: 11.2%;
}
.team-outline-kukan__team .uniform img {
  width: 100%;
}
.team-outline-kukan__team .name {
  width: 88.8%;
  padding-left: 20px;
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.72px;
}
.team-outline-kukan__profile {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-start;
  margin-top: 20px;
}
.team-outline-kukan__profile .photo {
  width: 45.8%;
}
.team-outline-kukan__profile .photo img {
  width: 100%;
}
.team-outline-kukan__profile .info {
  width: 54.2%;
  padding-left: 20px;
}
.team-outline-kukan__profile .info__ranking {
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0.56px;
}
.team-outline-kukan__profile .info__ranking span {
  display: inline-block;
  min-width: 70px;
  margin-right: 10px;
  font-size: 12px;
  font-weight: normal;
  line-height: 1.5;
  color: #fff;
  text-align: center;
  letter-spacing: 0.48px;
  background-color: #e60012;
  border-radius: 4px;
}
.team-outline-kukan__profile .info__ranking br {
  display: none;
}
.team-outline-kukan__profile .info__name {
  margin-top: 5px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.4;
  letter-spacing: 0.72px;
}
.team-outline-kukan__profile .info__name span {
  display: block;
  margin-top: 5px;
  font-size: 14px;
  font-weight: normal;
  letter-spacing: 0.56px;
}
.team-outline-kukan__profile .info__grade {
  margin-top: 15px;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.8;
  letter-spacing: 0.56px;
}
.team-outline-kukan__profile .record {
  width: 100%;
  margin-top: 20px;
}
.team-outline-kukan__profile .record__title {
  margin-bottom: 10px;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 0.48px;
}
.team-outline-kukan__profile .record__title span {
}
.team-outline-kukan__profile .record__list {
  display: flex;
  width: 100%;
  font-size: 14px;
  line-height: 1.6;
  text-align: center;
  letter-spacing: 0.56px;
}
.team-outline-kukan__profile .record__item {
  display: flex;
  width: calc(100% / 2);
}
.team-outline-kukan__profile .record__item .grade,
.team-outline-kukan__profile .record__item .kukan,
.team-outline-kukan__profile .record__item .rank {
  padding: 4px;
}

.team-outline-kukan__profile .record__item .grade {
  width: 25%;
  font-weight: bold;
  background-color: #f0f0f0;
}
.team-outline-kukan__profile .record__item .kukan {
  width: 25%;
  background-color: #fff;
  border-right: 1px solid #f0f0f0;
}
.team-outline-kukan__profile .record__item .rank {
  width: 50%;
  background-color: #fff;
}
.team-outline-kukan__profile .record__item .rank span.mark {
  font-weight: bold;
  color: #e60012;
}
.team-outline-kukan__profile .best {
  width: 100%;
  margin-top: 20px;
}
.team-outline-kukan__profile .best__title {
  margin-bottom: 10px;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 0.48px;
}
.team-outline-kukan__profile .best__title span {
}
.team-outline-kukan__profile .best__list {
  display: flex;
  width: 100%;
  font-size: 14px;
  line-height: 1.6;
  text-align: center;
  letter-spacing: 0.56px;
}
.team-outline-kukan__profile .best__item {
  width: 50%;
}
.team-outline-kukan__profile .best__item:nth-child(2) {
  margin-left: 1px;
}
.team-outline-kukan__profile .best__item .distance,
.team-outline-kukan__profile .best__item .time {
  padding: 4px;
}
.team-outline-kukan__profile .best__item .distance {
  width: 100%;
  font-weight: bold;
  background-color: #f0f0f0;
}
.team-outline-kukan__profile .best__item .time {
  width: 100%;
  background-color: #fff;
}

/***********************************************************
// team-outline-kukan - sp
// 区間別
***********************************************************/
body.isSP .team-outline-kukan__nav {
  margin: 20px auto;
}
body.isSP .team-outline-kukan__nav .inner {
  width: 100vw;
  margin-left: -20px;
  overflow-x: auto;
}
body.isSP .team-outline-kukan__nav .list {
  display: inline-flex;
  flex-wrap: nowrap;
  padding: 0 5%;
}
body.isSP .team-outline-kukan__nav .item {
  width: 88px;
}
body.isSP .team-outline-kukan__nav .item:first-child {
  margin-left: 0 !important;
}
body.isSP .team-outline-kukan__nav .item a {
  padding: 7px 10px;
}
body.isSP .team-outline-kukan__list {
  flex-direction: column;
  padding: 0 3%;
  margin-top: 40px;
}
body.isSP .team-outline-kukan__item {
  width: 100%;
}
body.isSP .team-outline-kukan__item:nth-child(2n) {
  margin-left: 0;
}
body.isSP .team-outline-kukan__item:nth-child(n + 2) {
  margin-top: 40px;
}
body.isSP .team-outline-kukan__item .photo {
  width: 47%;
}
body.isSP .team-outline-kukan__item .info {
  width: 53%;
  padding-left: 5%;
}
body.isSP .team-outline-kukan__profile .info__ranking br {
  display: block;
}
body.isSP .team-outline-kukan__profile .info__name {
  margin-top: 15px;
}
body.isSP .team-outline-kukan__profile .info__grade {
  margin-top: 5px;
}
body.isSP .team-outline-kukan__profile .info__ranking span {
  padding: 2px 0;
  font-size: 10px;
  letter-spacing: 0.4px;
}
body.isSP .team-outline-kukan__profile .info__ranking span:nth-of-type(n + 2) {
  margin-top: 10px;
  margin-left: 0;
}
body.isSP .team-outline-kukan__profile .record {
  margin-top: 15px;
}
body.isSP .team-outline-kukan__profile .record__list {
  flex-wrap: wrap;
  font-size: 12px;
  line-height: 1.6;
  letter-spacing: 0.48px;
}
body.isSP .team-outline-kukan__profile .record__item {
  width: 50%;
}
body.isSP .team-outline-kukan__profile .record__item:nth-child(n + 3) .grade {
  border-top: 1px solid #fff;
}
body.isSP .team-outline-kukan__profile .record__item:nth-child(n + 3) .kukan,
body.isSP .team-outline-kukan__profile .record__item:nth-child(n + 3) .rank {
  border-top: 1px solid #f0f0f0;
}
body.isSP .team-outline-kukan__profile .best {
  margin-top: 15px;
}
body.isSP .team-outline-kukan__profile .best__list {
  font-size: 12px;
  letter-spacing: 0.48px;
}
body.isSP .team-outline-kukan__profile .best__item {
  flex-direction: column;
}
body.isSP .team-outline-kukan__profile .best__item .distance,
body.isSP .team-outline-kukan__profile .best__item .time {
  width: 100%;
}
body.isSP .team-outline-kukan__profile .best__item:nth-child(even) .distance {
  border-left: 1px solid #fff;
}
body.isSP .team-outline-kukan__profile .best__item:nth-child(even) .time {
  border-left: 1px solid #f0f0f0;
}
body.isSP .team-outline-kukan__btn .hakone-btn {
  max-width: 100%;
  padding: 15px 30px;
}

/**********************************************************************************
// team-outline-region
// 出身高校別：地域
**********************************************************************************/
.team-outline-region {
  display: none;
}
.team-outline-region.is-show {
  display: block;
}
.team-outline-region__box {
}

.team-outline-region__body {
}
.team-outline-region__nav {
}
.team-outline-region__nav:not(:first-of-type) {
  margin-top: 40px;
}
.team-outline-region__nav .title {
  margin-bottom: 30px;
}
.team-outline-region__nav .btn {
}
.team-outline-region__nav .btn__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
}
.team-outline-region__nav .btn__item {
  width: calc((100% - 60px) / 4);
  margin-left: 20px;
}
.team-outline-region__nav .btn__item:nth-child(4n + 1) {
  margin-left: 0;
}
.team-outline-region__nav .btn__item:nth-child(n + 5) {
  margin-top: 20px;
}
.team-outline-region__nav .btn__item a {
  position: relative;
  padding: 12px 20px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.75;
  color: #a4843d;
  text-align: center;
  background-color: #fff;
  border: 1px solid #a4843d;
}
.team-outline-region__nav .btn__item a::after {
  position: absolute;
  top: 50%;
  right: 12px;
  display: block;
  width: 6px;
  height: 12px;
  content: "";
  background: url(/hakone/98/assets/images/arrow/icon_arrow_gold.png) no-repeat
    center transparent;
  background-size: contain;
  transform: translateY(-50%);
}
.team-outline-region__nav .btn__item a:not([href]) {
  color: #fff;
  pointer-events: none;
  cursor: pointer;
  background-color: #ccc;
  border: 1px solid #ccc;
}
.team-outline-region__nav .btn__item a:not([href])::after {
  display: none;
}

/***********************************************************
// team-outline-region - sp
// 出身高校別：地域
***********************************************************/
body.isSP .team-outline-region__nav .btn__list {
  padding: 0 3%;
}
body.isSP .team-outline-region__nav .btn__item {
  width: 47.75%;
  margin-left: 4.5%;
}
body.isSP .team-outline-region__nav .btn__item:nth-child(2n + 1) {
  margin-left: 0;
}
body.isSP .team-outline-region__nav .btn__item:nth-child(n + 3) {
  margin-top: 20px;
}

/**********************************************************************************
// team-outline-prefecture
// 出身高校別：都道府県
**********************************************************************************/
.team-outline-prefecture {
  display: none;
}
.team-outline-prefecture.is-show {
  display: block;
}
.team-outline-prefecture__box {
}

.team-outline-prefecture__body {
}
.team-outline-prefecture__list {
  display: none;
}
.team-outline-prefecture__list.is-show {
  display: block;
}
.team-outline-prefecture__item {
}
.team-outline-prefecture__item:not(:first-of-type) {
  margin-top: 30px;
}
.team-outline-prefecture__title {
  padding-top: 20px;
  padding-bottom: 15px;
  margin-bottom: 20px;
  font-size: 18px;
  font-weight: bold;
  border-bottom: 1px solid #ccc;
}
.team-outline-prefecture__table {
  width: 100%;
  margin-top: 20px;
  border-top: none;
  border-bottom: 1px solid #ccc;
}
.team-outline-prefecture__table tr:nth-of-type(1) {
  background-color: #f0f0f0;
}
.team-outline-prefecture__table tr:nth-of-type(2) td {
  border: none;
}
.team-outline-prefecture__table th {
  height: 54px;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  vertical-align: middle;
}
.team-outline-prefecture__table th.name {
  border-right: 1px solid #fff;
  border-left: 1px solid #fff;
}
.team-outline-prefecture__table td {
  padding: 15px 10px;
  vertical-align: middle;
  border-top: 1px solid #ccc;
}
.team-outline-prefecture__table td.school {
  width: 38%;
}
.team-outline-prefecture__table td.name {
  width: 54%;
}
.team-outline-prefecture__table td.name span {
  display: block;
}
.team-outline-prefecture__table td.name span.runner {
  font-size: 16px;
  letter-spacing: 0.64px;
}
.team-outline-prefecture__table td.name span.team {
  font-size: 14px;
  letter-spacing: 0.56px;
}
.team-outline-prefecture__table td.grade {
  width: 8%;
  text-align: center;
}
.team-outline-prefecture__btn {
  margin-top: 25px;
}
.team-outline-prefecture__btn .hakone-btn {
  max-width: 150px;
  padding: 0 0 0 28px;
  margin-left: 0;
  text-align: left;
  background-color: transparent;
  border: none;
}
.team-outline-prefecture__btn .hakone-btn.btn--back::before {
  left: 0;
  width: 8px;
  height: 16px;
}

/***********************************************************
// team-outline-prefecture - sp
// 出身高校別：都道府県
***********************************************************/
body.isSP .team-outline-prefecture__table td.school {
  width: 42%;
}
body.isSP .team-outline-prefecture__table td.name {
  width: 42%;
}
body.isSP .team-outline-prefecture__table td.grade {
  width: 16%;
}

/**********************************************************************************
// team-outline-tab
// タブ切り替え
**********************************************************************************/
.team-outline-tab {
}
.team-outline-tab__list {
  display: flex;
  align-items: center;
  justify-content: center;
}
.team-outline-tab__item {
  width: 180px;
}
.team-outline-tab__item:not(:first-child) {
  margin-left: 20px;
}
.team-outline-tab__item a {
  padding: 10px;
  font-size: 14px;
  font-weight: bold;
  color: #a4843d;
  text-align: center;
  letter-spacing: 0.56px;
  background-color: #f7f7f7;
  border: 1px solid #a4843d;
  border-radius: 22px;
}
.team-outline-tab__item.is-active a {
  color: #fff;
  pointer-events: none;
  cursor: pointer;
  background-color: #a4843d;
  border: 1px solid #f7f7f7;
  opacity: 1 !important;
}
.team-outline-tab__contents {
  margin-top: 35px;
}
.team-outline-tab__content {
  display: none;
}

/***********************************************************
// team-outline-tab - sp
// タブ切り替え
***********************************************************/
body.isSP .team-outline-tab__item {
  width: 30.6%;
}
body.isSP .team-outline-tab__item:not(:first-child) {
  margin-left: 4.1%;
}

/**********************************************************************************
// team-outline-share
// シェア
**********************************************************************************/
.team-outline-share {
  margin-top: 30px;
}

/***********************************************************
// team-outline-share - sp
// シェア
***********************************************************/
body.isSP .team-outline-share {
  margin-top: 20px;
}

/**********************************************************************************
// team-outline-modal
// モーダル（チーム紹介）
**********************************************************************************/
.team-outline-modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  height: 100%;
  padding: 0 50px;
  overflow-y: auto;
  background-color: rgba(0, 0, 0, 0.8);
}
.team-outline-modal__box {
  z-index: 200;
  display: block;
  width: 100%;
  max-width: 760px;
  margin: 50px auto;
  opacity: 1;
  transition: all 0.8s;
}
.team-outline-modal__close {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 100;
  width: 40px;
  height: 40px;
  font-size: 0;
  cursor: pointer;
  background: url(/hakone/98/assets/images/icon/white/icon_menu_close.png)
    no-repeat center transparent;
  background-size: contain;
}
.team-outline-modal__close::after {
  position: absolute;
  bottom: -2rem;
  left: 50%;
  display: block;
  width: 6rem;
  font-size: 14px;
  line-height: 1;
  color: #fff;
  text-align: center;
  letter-spacing: 0.56px;
  content: "閉じる";
  transform: translateX(-50%);
}

/***********************************************************
// team-outline-modal - pc
// モーダル
***********************************************************/
body.isPC .team-outline-modal {
  position: absolute;
  min-width: 1100px;
  overflow-x: scroll;
}

/***********************************************************
// team-outline-modal - sp
// モーダル
***********************************************************/
body.isSP .team-outline-modal {
  padding: 0 5%;
}
body.isSP .team-outline-modal__close {
  top: 12px;
  right: 15px;
  width: 20px;
  height: 20px;
}
body.isSP .team-outline-modal__close::after {
  bottom: -1.2rem;
  width: 4rem;
  font-size: 8px;
}
