@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@700;800&display=swap");
:root,
:host {
  --window-innerHeight: 100vh;
  --color-richBlack: #000;
  --color-black: #333;
  --color-darkGray: #666;
  --color-dullGray: #999;
  --color-mediumGray: #bbb;
  --color-lightGray: #f2f2f2;
  --color-white: #ffffff;
  --color-red: #e50012;
  --color-yellow: #f5b323;
  --color-ibukiDarkGray: #413d3c;
  --color-ibukiGray: #7f7c79;
  --color-ibukiLightGray: #f5f3f0;
  --color-ibukiBeige: #a18c76;
  --color-green: #05c605;
  --color-brand: #64b72f;
  --color-primary: #239b43;
  --bgColor-beige: #f5f3f0;
  --bgColor-hover: var(--color-lightGray);
  --bgColor-white: #ffffff;
  --startColor: var(--color-red);
  --goalColor: #851ccb;
  --borderColor-black: #212121;
  --borderColor-mediumGray: #ccc;
  --borderColor-lightGray: #ddd;
  --borderColor-default: #e4e4e4;
  --borderRadius-large: 16px;
  --borderRadius-medium: 10px;
  --borderRadius-default: 4px;
  --fontSize-xxxxxlarge: 50px;
  --fontSize-xxxxlarge: 40px;
  --fontSize-xxxlarge: 32px;
  --fontSize-xxlarge: 28px;
  --fontSize-xlarge: 24px;
  --fontSize-large: 20px;
  --fontSize-medium: 18px;
  --fontSize-default: 15px;
  --fontSize-small: 13.5px;
  --fontSize-xsmall: 12px;
  --fontSize-xxsmall: 10px;
  --fontSize-button: 15px;
  --fontSize-bodyText: 16px;
  --fontWeight-normal: 400;
  --fontWeight-bold: 700;
  --fontWeight-montserrat-bold: 700;
  --fontWeight-montserrat-extraBold: 800;
  --fontFamily-sans: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3",
    "Hiragino Kaku Gothic ProN", sans-serif;
  --fontFamily-montserrat: "Montserrat", "游ゴシック", YuGothic,
    "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;
  --fontFamily-monospace: Menlo, monospace;
  --lineHeight-xsmall: 1.1;
  --lineHeight-small: 1.3;
  --lineHeight-medium: 1.45;
  --lineHeight-default: 1.6;
  --lineHeight-large: 1.8;
  --margin-xxlarge: 128px;
  --margin-xlarge: 64px;
  --margin-large: 32px;
  --margin-medium: 24px;
  --margin-default: 16px;
  --margin-small: 8px;
  --margin-xsmall: 4px;
  --margin-xxsmall: 2px;
  --button-height: 50px;
  --container-width: 1024px;
  --width-large: 800px;
  --width-medium: 600px;
  --courseLevelColor-a: #92dff2;
  --courseLevelColor-b: #a0d696;
  --courseLevelColor-c: #ffe888;
  --courseLevelColor-d: #f4aa89;
  --header-background-color: var(--bgColor-beige);
  --header-color: var(--color-black);
  --dialog-background-color: var(--bgColor-white);
  --dialog-color: var(--color-black);
  --dialog-border-color: var(--borderColor-default);
  --dialog-border-width: 1px;
  --dialog-shadow-color: var(--color-mediumGray);
  --dialog-shadow-size: 3px;
  --dialog-padding: 3px;
  --info-color: gray;
  --info-background-color: transparent;
  --ok-color: var(--color-green);
  --ok-background-color: transparent;
  --ng-color: red;
  --ng-background-color: transparent; }

html:root {
  --locationColor0: #3cb412;
  --locationColor0-translucent: rgba(60, 180, 18, 0.4);
  --locationColor1: #5d4bcc;
  --locationColor1-translucent: rgba(93, 75, 204, 0.4);
  --locationColor2: #f5c64b;
  --locationColor2-translucent: rgba(245, 198, 75, 0.4);
  --locationColor3: #3bb59f;
  --locationColor3-translucent: rgba(59, 181, 159, 0.4);
  --locationColor4: #ec564d;
  --locationColor4-translucent: rgba(236, 86, 77, 0.4);
  --locationColor5: #b5cf12;
  --locationColor5-translucent: rgba(181, 207, 18, 0.4);
  --locationColor6: #a55cdf;
  --locationColor6-translucent: rgba(165, 92, 223, 0.4);
  --locationColor7: #f98d29;
  --locationColor7-translucent: rgba(249, 141, 41, 0.4);
  --locationColor8: #2b8dc5;
  --locationColor8-translucent: rgba(43, 141, 197, 0.4);
  --locationColor9: #eb81b4;
  --locationColor9-translucent: rgba(235, 129, 180, 0.4); }

html:root[data-theme="redb"],
html:root[data-theme="test1"] {
  --locationColor0: #0f0069;
  --locationColor0-translucent: rgba(15, 0, 105, 0.4); }

html {
  margin: 0;
  padding: 0;
  background: #fff;
  font-family: Helvetica, "Segoe UI", Hiragino Kaku Gothic ProN, "ヒラギノ角ゴ ProN W3", Arial, "メイリオ", Meiryo, sans-serif;
  color: var(--color-black);
  line-height: var(--lineHeight-default); }

body {
  margin: 0;
  padding: 0;
  word-wrap: break-word;
  overflow-wrap: break-word;
  -webkit-hyphens: auto;
      -ms-hyphens: auto;
          hyphens: auto; }

ul,
ul > li {
  list-style: none;
  margin: 0;
  padding: 0; }

.object-config ul > li,
.config-section ul > li {
  list-style: disc;
  margin: 0 1em; }

ul ul {
  margin-left: 1em; }

ul ul li {
  list-style: disc; }

h1,
hgroup > h2 {
  margin: 0;
  padding: 0;
  --timejs-serialization: dtsjp1;
  font-size: 100%; }

h1 a:not(:hover):not(:active) {
  color: inherit;
  background: transparent;
  text-decoration: none; }

p {
  margin: 0; }

pre {
  white-space: pre-wrap; }

a {
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  text-decoration: none;
  color: #239b43; }
  a:hover {
    text-decoration: underline; }

details summary {
  cursor: pointer; }

hr {
  visibility: hidden; }

table {
  border-collapse: collapse; }

list-is-empty:not([hidden]) {
  display: block; }

popup-menu[nolabel] > button > button-label {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden; }

.pager {
  margin: 0;
  text-align: right; }

.pager-center {
  margin: 0;
  text-align: center; }

rb-neighbor-pages:not([hidden]) {
  display: table;
  width: 100%; }

rb-neighbor-pages > rb-box:not([hidden]) {
  display: table-cell; }

rb-neighbor-pages > rb-box:last-child {
  text-align: right; }

rb-neighbor-pages > rb-box:not(:first-child):not(:last-child) {
  text-align: center; }

rb-neighbor-pages > rb-box > a:not([hidden]) {
  display: block;
  font-size: 70%;
  font-weight: normal; }

rb-neighbor-pages > rb-box > a > cite:not([hidden]) {
  display: block;
  font-style: normal;
  font-size: 120%;
  font-weight: bolder; }

.arrow-right:not([hidden]),
.arrow-left:not([hidden]) {
  display: inline-block; }

.arrow-right,
rb-neighbor-pages > rb-box:last-child > a {
  color: #239b43;
  background: url("/images/arrow-right.svg") no-repeat right center;
  background-size: 16px;
  text-decoration: none;
  padding: 0 20px 0 0;
  min-height: 22px;
  line-height: 22px;
  font-weight: bold;
  font-size: 0.9rem; }
  .arrow-right:hover,
  rb-neighbor-pages > rb-box:last-child > a:hover {
    text-decoration: underline; }

@media (max-width: 559px) {
  .arrow-right {
    width: 100%;
    border: 1px solid #239b43;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: center;
    border-radius: 4px;
    padding: 10px 0;
    display: inline-block;
    min-height: auto;
    font-weight: bold;
    background-position: right 10px center;
    font-size: 0.9rem;
    background-size: 15px 20px;
    background-color: #fff; } }

.arrow-left,
rb-neighbor-pages > rb-box:first-child > a {
  color: #239b43;
  background: url("/images/arrow-left.svg") no-repeat left center;
  background-size: 16px;
  text-decoration: none;
  padding: 0 0 0 20px;
  min-height: 22px;
  line-height: 22px;
  font-weight: bold;
  font-size: 0.9rem; }
  .arrow-left:hover,
  rb-neighbor-pages > rb-box:first-child > a:hover {
    text-decoration: underline; }

.tab-vertical-menu .arrow-left {
  margin-top: 16px; }
  @media (max-width: 559px) {
    .tab-vertical-menu .arrow-left {
      margin: 0 0 12px 0px; } }

.arrow-bottom:not([hidden]) {
  border-color: transparent;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  color: #239b43;
  background: url("/images/arrow-bottom.svg") no-repeat right center;
  background-size: 16px;
  text-decoration: none;
  padding: 0 20px 0 0;
  height: 22px;
  line-height: 22px;
  display: inline-block;
  font-size: 0.9rem;
  font-weight: bold; }
  .arrow-bottom:not([hidden]):hover {
    text-decoration: underline; }
  @media (max-width: 559px) {
    .arrow-bottom:not([hidden]) {
      width: 100%;
      border: 1px solid #239b43;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      text-align: center;
      border-radius: 4px;
      padding: 10px 0;
      display: inline-block;
      height: auto;
      font-weight: bold;
      background-position: right 10px center;
      font-size: 0.9rem;
      background-size: 15px 20px;
      background-color: #fff; } }

.buttons .info {
  color: var(--color-darkGray);
  background: var(--color-white);
  font-size: 75%;
  --timejs-serialization: dtsjp1; }

:not(hgroup) > h2::before,
:not(hgroup) > h3::before,
:not(hgroup) > h4::before,
:not(hgroup) > h5::before,
:not(hgroup) > h6::before {
  display: block;
  content: "ERROR: h1 should be used instead of h2, h3, h4, h5, h6";
  border: red 3px solid;
  color: red;
  background: #eee;
  padding: 3px;
  font-size: 1.3rem; }

:-webkit-any(li, dt, dd, course-info, activity-log-info) :-webkit-any(h1, h2, h3, h4, h5, h6):not(.header-in-list)::before {
  display: block;
  content: "ERROR: hn is used in list item";
  border: red 3px solid;
  color: red;
  background: #eee;
  padding: 3px;
  font-size: 1.3rem; }

button:empty::before,
a:empty:not([data-can-empty])::before,
div:empty:not([style]):not([data-can-empty]):not([jstcache]):not([class^="gm"]):not(.noprint)::before,
p:empty:not([data-field]):not([data-can-empty])::before,
strong:empty:not([data-can-empty])::before,
span:empty:not([data-field="count"]):not([data-can-empty]):not([data-field="claimed_by"])::before {
  display: block;
  position: absolute;
  content: "ERROR: -moz-element is empty";
  content: "ERROR: element is empty";
  border: red 3px solid;
  color: red;
  background: #eee;
  padding: 3px;
  font-size: 1.3rem; }

map-area div:empty::before,
rb-gsearch div:empty::before {
  display: none !important; }

info-line:not([hidden]) {
  display: block; }

info-line,
rb-datetime-text {
  font-size: 90%;
  color: gray;
  background: transparent; }

dl > dt::before,
dl > dd::before {
  display: block;
  position: absolute;
  content: "ERROR: no div in dl";
  border: red 3px solid;
  color: red;
  background: #eee;
  padding: 3px;
  font-size: 1.3rem; }

rb-datetime-item:not([hidden]) {
  display: block; }

rb-datetime-item {
  margin: 0.5em 0;
  line-height: 1.3; }

rb-datetime-value:not([hidden]) {
  display: inline-block;
  vertical-align: middle; }

#devices-list rb-datetime-value {
  --timejs-serialization: auto; }

header.page h1:not([hidden]),
.top-contents-title strong:not([hidden]),
.activity-title strong:not([hidden]),
.log-course-name:not([hidden]) {
  unicode-bidi: -webkit-isolate;
  unicode-bidi: -moz-isolate;
  unicode-bidi: isolate;
  display: -webkit-inline-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  vertical-align: middle; }

account-name:not([hidden]),
.top-contents-list rb-tag-item a:not([hidden]),
rb-tag-item a:not([hidden]) {
  unicode-bidi: -webkit-isolate;
  unicode-bidi: -moz-isolate;
  unicode-bidi: isolate;
  display: -webkit-inline-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  vertical-align: middle; }

rb-tag-item a:not([hidden]) {
  max-width: 10em; }

rb-formatted-body {
  white-space: pre-wrap; }

.icon {
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle; }

.icon-help:not([hidden]),
.raw-data-view a.icon-help:not([hidden]) {
  display: inline-block; }

.icon-help,
.raw-data-view a.icon-help {
  width: 18px;
  height: 18px;
  background: url("/images/icon-help.svg") no-repeat;
  position: relative; }
  .icon-help span,
  .raw-data-view a.icon-help span {
    position: absolute;
    width: 100px;
    width: 80px;
    font-size: 11px;
    left: -80px;
    right: -80px;
    margin: auto;
    text-align: center;
    background: #333;
    padding: 2px 4px;
    color: #fff;
    border-radius: 2px;
    top: -32px;
    z-index: 1000;
    display: none; }
    .icon-help span:after,
    .raw-data-view a.icon-help span:after {
      content: "";
      position: absolute;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 6px 6px 0;
      border-color: #333 transparent transparent;
      bottom: -6px;
      left: calc(50% - 6px); }
  .icon-help:hover span,
  .raw-data-view a.icon-help:hover span {
    display: inline-block; }
  @media (max-width: 559px) {
    .icon-help span,
    .raw-data-view a.icon-help span {
      display: none !important; } }

@media (max-width: 768px) {
  .for-pc {
    display: none !important; } }

.for-sp {
  display: none !important; }
  @media (max-width: 768px) {
    .for-sp {
      display: inherit !important; } }

.search-form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .search-form input[type="search"] {
    width: 50%;
    margin: 0 8px 0 0;
    -webkit-appearance: none;
    border-radius: 4px;
    font-size: 0.9rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 8px; }
    .search-form input[type="search"]:hover {
      border-color: #b3b3b3; }
  @media (max-width: 559px) {
    .search-form input[type="search"] {
      width: auto;
      -webkit-box-flex: 1;
          -ms-flex-positive: 1;
              flex-grow: 1; } }

.visibilityHidden {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  white-space: nowrap;
  -webkit-clip-path: polygon(0 0, 1px 0, 1px 1px, 0 1px);
          clip-path: polygon(0 0, 1px 0, 1px 1px, 0 1px); }

.container {
  min-height: calc(100vh - 56px - 165px - 40px); }

page-main:not([hidden]) {
  display: block; }

page-main {
  min-height: calc(max(492px, 100vh));
  margin-top: 40px; }

@media (max-width: 559px) {
  page-main {
    margin-top: 20px; } }

.wrapper-naked {
  margin-left: auto;
  margin-right: auto; }
  @media (max-width: 1080px) {
    .wrapper-naked {
      padding: 0 30px; } }
  @media (max-width: 559px) {
    .wrapper-naked {
      padding: 0 20px; } }
  @media (max-width: 350px) {
    .wrapper-naked {
      padding: 0 12px; } }

.wrapper {
  margin-left: auto;
  margin-right: auto;
  max-width: 1024px; }
  @media (max-width: 1080px) {
    .wrapper {
      padding: 0 30px; } }
  @media (max-width: 559px) {
    .wrapper {
      padding: 0 20px; } }
  @media (max-width: 350px) {
    .wrapper {
      padding: 0 12px; } }

.wrapper-middle {
  margin-left: auto;
  margin-right: auto;
  max-width: 700px; }
  @media (max-width: 1080px) {
    .wrapper-middle {
      padding: 0 30px; } }
  @media (max-width: 559px) {
    .wrapper-middle {
      padding: 0 20px; } }
  @media (max-width: 350px) {
    .wrapper-middle {
      padding: 0 12px; } }

.layout-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 1024px;
  margin: 0 auto;
  position: relative; }
  @media (max-width: 768px) {
    .layout-container {
      display: block; } }

.layout-main {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0; }

.layout-sidebar, .layout-sidebar-left {
  width: 320px;
  margin: 0 0 0 60px; }
  @media (max-width: 768px) {
    .layout-sidebar, .layout-sidebar-left {
      width: 100%;
      margin: 0; } }

.layout-sidebar-left {
  width: 320px;
  margin: 0 60px 0 0; }
  @media (max-width: 768px) {
    .layout-sidebar-left {
      width: 100%;
      margin: 0; } }

input:not([type]),
input[type="text"],
input[type="search"],
input[type="url"],
input[type="number"],
input[type="email"],
input[type="tel"],
input[type="date"],
input[type="time"],
textarea {
  color: var(--color-black);
  border: 1px solid #ccc;
  padding: 0.2em 0.4em; }

select {
  color: var(--color-black);
  min-width: 10em;
  vertical-align: middle; }

input {
  vertical-align: middle; }

input[type="date"] {
  min-width: 10em; }

input:disabled,
textarea:disabled,
select:disabled {
  color: #545454;
  background-color: #ebebe4;
  opacity: 1; }

button,
.button {
  font-size: var(--fontSize-small); }

button {
  cursor: pointer; }

.button:not([hidden]) {
  display: inline-block; }

.button {
  color: var(--color-black);
  background: var(--color-lightGray);
  border: 1px solid var(--color-mediumGray);
  padding: 4px 10px;
  min-width: 5em;
  text-align: center; }

.button:hover,
.button:active,
.button:focus {
  color: var(--color-black);
  background: var(--color-mediumGray); }

.buttons form.inline:not([hidden]) {
  display: inline; }

.btn-wrapper {
  margin: 20px 0; }

.btn-primary, .btn-primary-medium,
.btn-primary-medium,
rb-wizard-button-container .save-button,
.raw-data-view .save-button,
.route-editor .save-button,
.route-editor .next-button {
  border-color: transparent;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #239b43;
  color: #fff;
  padding: 4px 10px;
  font-size: 13px;
  border: 1px solid #239b43;
  text-align: center; }
  .btn-primary:not([hidden]), .btn-primary-medium:not([hidden]),
  .btn-primary-medium:not([hidden]),
  rb-wizard-button-container .save-button:not([hidden]),
  .raw-data-view .save-button:not([hidden]),
  .route-editor .save-button:not([hidden]),
  .route-editor .next-button:not([hidden]) {
    display: inline-block; }
  .btn-primary:hover, .btn-primary-medium:hover, .btn-primary:active, .btn-primary-medium:active, .btn-primary:focus, .btn-primary-medium:focus,
  .btn-primary-medium:hover,
  .btn-primary-medium:active,
  .btn-primary-medium:focus,
  rb-wizard-button-container .save-button:hover,
  rb-wizard-button-container .save-button:active,
  rb-wizard-button-container .save-button:focus,
  .raw-data-view .save-button:hover,
  .raw-data-view .save-button:active,
  .raw-data-view .save-button:focus,
  .route-editor .save-button:hover,
  .route-editor .save-button:active,
  .route-editor .save-button:focus,
  .route-editor .next-button:hover,
  .route-editor .next-button:active,
  .route-editor .next-button:focus {
    background-color: #1e863a;
    text-decoration: none; }
  .btn-primary:disabled, .btn-primary-medium:disabled,
  .btn-primary-medium:disabled,
  rb-wizard-button-container .save-button:disabled,
  .raw-data-view .save-button:disabled,
  .route-editor .save-button:disabled,
  .route-editor .next-button:disabled {
    background-color: #eee;
    border-color: #eee;
    color: #bbb;
    cursor: not-allowed; }

.btn-primary-medium {
  font-size: 14px;
  padding: 6px 12px; }

.btn-green, .btn-green-medium, .btn-green-large {
  border-color: transparent;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #64b72f;
  color: #fff;
  padding: 4px 10px;
  font-size: 13px;
  border: 1px solid #64b72f;
  text-align: center; }
  .btn-green:not([hidden]), .btn-green-medium:not([hidden]), .btn-green-large:not([hidden]) {
    display: inline-block; }
  .btn-green:hover, .btn-green-medium:hover, .btn-green-large:hover, .btn-green:active, .btn-green-medium:active, .btn-green-large:active, .btn-green:focus, .btn-green-medium:focus, .btn-green-large:focus {
    background-color: #59a32a;
    text-decoration: none; }
  .btn-green:disabled, .btn-green-medium:disabled, .btn-green-large:disabled {
    background-color: #eee;
    border-color: #eee;
    color: #bbb;
    cursor: not-allowed; }

.btn-green-medium {
  font-size: 14px;
  padding: 6px 12px; }

.btn-green-large {
  font-size: 18px;
  padding: 8px 14px; }

.btn-white, .btn-white-medium, .create-link, .btn-white-large, .component-courseData .component-courseData-downloadGpx, .page-event .course-share-gpx, .edit-photo-btn {
  border-color: transparent;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #fff;
  color: #239b43;
  padding: 4px 10px;
  font-size: 13px;
  border: 1px solid #239b43;
  text-align: center; }
  .btn-white:not([hidden]), .btn-white-medium:not([hidden]), .create-link:not([hidden]), .btn-white-large:not([hidden]), .component-courseData .component-courseData-downloadGpx:not([hidden]), .page-event .course-share-gpx:not([hidden]), .edit-photo-btn:not([hidden]) {
    display: inline-block; }
  .btn-white:hover, .btn-white-medium:hover, .create-link:hover, .btn-white-large:hover, .component-courseData .component-courseData-downloadGpx:hover, .page-event .course-share-gpx:hover, .edit-photo-btn:hover, .btn-white:active, .btn-white-medium:active, .create-link:active, .btn-white-large:active, .component-courseData .component-courseData-downloadGpx:active, .page-event .course-share-gpx:active, .edit-photo-btn:active, .btn-white:focus, .btn-white-medium:focus, .create-link:focus, .btn-white-large:focus, .component-courseData .component-courseData-downloadGpx:focus, .page-event .course-share-gpx:focus, .edit-photo-btn:focus {
    background-color: #f2f2f2;
    text-decoration: none; }
  .btn-white:hover, .btn-white-medium:hover, .create-link:hover, .btn-white-large:hover, .component-courseData .component-courseData-downloadGpx:hover, .page-event .course-share-gpx:hover, .edit-photo-btn:hover {
    background-color: #e8f4eb; }
  .btn-white:disabled, .btn-white-medium:disabled, .create-link:disabled, .btn-white-large:disabled, .component-courseData .component-courseData-downloadGpx:disabled, .page-event .course-share-gpx:disabled, .edit-photo-btn:disabled {
    background-color: #eee;
    border-color: #eee;
    color: #bbb;
    cursor: not-allowed; }

.btn-white-medium, .create-link {
  font-size: 14px;
  padding: 6px 12px; }

.btn-white-large {
  font-size: 18px;
  padding: 8px 14px; }

.btn-secondary, .btn-secondary-medium {
  border-color: transparent;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #fff;
  color: #333;
  padding: 4px 10px;
  font-size: 13px;
  border: 1px solid #333;
  text-align: center; }
  .btn-secondary:not([hidden]), .btn-secondary-medium:not([hidden]) {
    display: inline-block; }
  .btn-secondary:hover, .btn-secondary-medium:hover, .btn-secondary:active, .btn-secondary-medium:active, .btn-secondary:focus, .btn-secondary-medium:focus {
    background-color: #f2f2f2;
    text-decoration: none; }
  .btn-secondary:hover, .btn-secondary-medium:hover {
    background-color: var(--color-lightGray); }
  .btn-secondary:disabled, .btn-secondary-medium:disabled {
    background-color: #eee;
    border-color: #eee;
    color: #bbb;
    cursor: not-allowed; }

.btn-secondary-medium {
  font-size: 14px;
  padding: 6px 12px; }

.btn-gray {
  border-color: transparent;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #fff;
  color: #999;
  padding: 4px 10px;
  font-size: 13px;
  border: 1px solid #999;
  text-align: center; }
  .btn-gray:not([hidden]) {
    display: inline-block; }
  .btn-gray:hover, .btn-gray:active, .btn-gray:focus {
    background-color: #f2f2f2;
    text-decoration: none; }
  .btn-gray:disabled {
    background-color: #eee;
    border-color: #eee;
    color: #bbb;
    cursor: not-allowed; }

.btn-gray2, .btn-gray2-medium {
  border-color: transparent;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #fff;
  color: #333;
  padding: 4px 10px;
  font-size: 13px;
  border: 1px solid #e4e4e4;
  text-align: center; }
  .btn-gray2:not([hidden]), .btn-gray2-medium:not([hidden]) {
    display: inline-block; }
  .btn-gray2:hover, .btn-gray2-medium:hover, .btn-gray2:active, .btn-gray2-medium:active, .btn-gray2:focus, .btn-gray2-medium:focus {
    background-color: #f2f2f2;
    text-decoration: none; }
  .btn-gray2:disabled, .btn-gray2-medium:disabled {
    background-color: #eee;
    border-color: #eee;
    color: #bbb;
    cursor: not-allowed; }

.btn-gray2-medium {
  font-size: 14px;
  padding: 6px 12px; }

.btn-transparent, .btn-transparent-medium, .btn-transparent-large, .component-courseData .component-courseData-authorAndPreserveArea .course-popup-btn, .component-calinkActivityLogItemPlus-popupBtn, .page-event-item-index #eventHeader-content .event-popup-btn, .page-event-item-results #resultsHeader-results-navigation .event-popup-btn {
  border-color: transparent;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #fff;
  color: #239b43;
  padding: 4px 10px;
  font-size: 13px;
  border: 1px solid transparent;
  text-align: center; }
  .btn-transparent:not([hidden]), .btn-transparent-medium:not([hidden]), .btn-transparent-large:not([hidden]), .component-courseData .component-courseData-authorAndPreserveArea .course-popup-btn:not([hidden]), .component-calinkActivityLogItemPlus-popupBtn:not([hidden]), .page-event-item-index #eventHeader-content .event-popup-btn:not([hidden]), .page-event-item-results #resultsHeader-results-navigation .event-popup-btn:not([hidden]) {
    display: inline-block; }
  .btn-transparent:hover, .btn-transparent-medium:hover, .btn-transparent-large:hover, .component-courseData .component-courseData-authorAndPreserveArea .course-popup-btn:hover, .component-calinkActivityLogItemPlus-popupBtn:hover, .page-event-item-index #eventHeader-content .event-popup-btn:hover, .page-event-item-results #resultsHeader-results-navigation .event-popup-btn:hover, .btn-transparent:active, .btn-transparent-medium:active, .btn-transparent-large:active, .component-courseData .component-courseData-authorAndPreserveArea .course-popup-btn:active, .component-calinkActivityLogItemPlus-popupBtn:active, .page-event-item-index #eventHeader-content .event-popup-btn:active, .page-event-item-results #resultsHeader-results-navigation .event-popup-btn:active, .btn-transparent:focus, .btn-transparent-medium:focus, .btn-transparent-large:focus, .component-courseData .component-courseData-authorAndPreserveArea .course-popup-btn:focus, .component-calinkActivityLogItemPlus-popupBtn:focus, .page-event-item-index #eventHeader-content .event-popup-btn:focus, .page-event-item-results #resultsHeader-results-navigation .event-popup-btn:focus {
    background-color: #f2f2f2;
    text-decoration: none; }
  .btn-transparent:hover, .btn-transparent-medium:hover, .btn-transparent-large:hover, .component-courseData .component-courseData-authorAndPreserveArea .course-popup-btn:hover, .component-calinkActivityLogItemPlus-popupBtn:hover, .page-event-item-index #eventHeader-content .event-popup-btn:hover, .page-event-item-results #resultsHeader-results-navigation .event-popup-btn:hover {
    background-color: #e8f4eb; }
  .btn-transparent:disabled, .btn-transparent-medium:disabled, .btn-transparent-large:disabled, .component-courseData .component-courseData-authorAndPreserveArea .course-popup-btn:disabled, .component-calinkActivityLogItemPlus-popupBtn:disabled, .page-event-item-index #eventHeader-content .event-popup-btn:disabled, .page-event-item-results #resultsHeader-results-navigation .event-popup-btn:disabled {
    background-color: #eee;
    border-color: #eee;
    color: #bbb;
    cursor: not-allowed; }

.btn-transparent-medium {
  font-size: 14px;
  padding: 6px 12px; }

.btn-transparent-large {
  font-size: 18px;
  padding: 8px 14px; }

.btn-black, .btn-black-medium, .btn-black-large, .page-event-item-results #resultsHeader-headerTitle .event-popup-btn {
  border-color: transparent;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #fff;
  color: #333;
  padding: 4px 10px;
  font-size: 13px;
  border: 1px solid transparent;
  text-align: center; }
  .btn-black:not([hidden]), .btn-black-medium:not([hidden]), .btn-black-large:not([hidden]), .page-event-item-results #resultsHeader-headerTitle .event-popup-btn:not([hidden]) {
    display: inline-block; }
  .btn-black:hover, .btn-black-medium:hover, .btn-black-large:hover, .page-event-item-results #resultsHeader-headerTitle .event-popup-btn:hover, .btn-black:active, .btn-black-medium:active, .btn-black-large:active, .page-event-item-results #resultsHeader-headerTitle .event-popup-btn:active, .btn-black:focus, .btn-black-medium:focus, .btn-black-large:focus, .page-event-item-results #resultsHeader-headerTitle .event-popup-btn:focus {
    background-color: #f2f2f2;
    text-decoration: none; }
  .btn-black:hover, .btn-black-medium:hover, .btn-black-large:hover, .page-event-item-results #resultsHeader-headerTitle .event-popup-btn:hover {
    background-color: #e8f4eb; }
  .btn-black:disabled, .btn-black-medium:disabled, .btn-black-large:disabled, .page-event-item-results #resultsHeader-headerTitle .event-popup-btn:disabled {
    background-color: #eee;
    border-color: #eee;
    color: #bbb;
    cursor: not-allowed; }

.btn-black-medium {
  font-size: 14px;
  padding: 6px 12px; }

.btn-black-large {
  font-size: 18px;
  padding: 8px 14px; }

.btn-outline, .btn-outline-medium {
  border-color: transparent;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: transparent;
  color: #64b72f;
  padding: 4px 10px;
  font-size: 13px;
  border: 1px solid #64b72f;
  text-align: center; }
  .btn-outline:not([hidden]), .btn-outline-medium:not([hidden]) {
    display: inline-block; }
  .btn-outline:hover, .btn-outline-medium:hover, .btn-outline:active, .btn-outline-medium:active, .btn-outline:focus, .btn-outline-medium:focus {
    background-color: rgba(100, 183, 47, 0.2);
    text-decoration: none; }

.btn-outline-medium {
  font-size: 14px;
  padding: 6px 12px; }

.btn-outline-white, .btn-outline-white-medium {
  border-color: transparent;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: transparent;
  color: #fff;
  padding: 4px 10px;
  font-size: 13px;
  border: 1px solid #fff;
  text-align: center; }
  .btn-outline-white:not([hidden]), .btn-outline-white-medium:not([hidden]) {
    display: inline-block; }
  .btn-outline-white:hover, .btn-outline-white-medium:hover, .btn-outline-white:active, .btn-outline-white-medium:active, .btn-outline-white:focus, .btn-outline-white-medium:focus {
    background-color: transparent;
    text-decoration: none; }

.btn-outline-white-medium {
  font-size: 14px;
  padding: 6px 12px; }

.reload-button {
  border-color: transparent;
  background-color: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: #fff;
  color: var(--color-black);
  padding: 4px 6px;
  font-size: 10px;
  border: 1px solid var(--borderColor-default); }

.reload-button:not([hidden]) {
  display: inline-block; }

.reload-button:hover {
  background-color: #f2f2f2;
  text-decoration: none; }

.reload-button:disabled {
  background: #fff;
  opacity: 0.4;
  cursor: not-allowed; }

.reload-button img {
  vertical-align: bottom; }

.reverse-button.checked::before,
.sort-button.checked::before,
.grouped-button.checked::before,
.autoreload-button.checked::before {
  content: "✔ "; }

.small-copy-button,
.small-button,
.raw-data-view .small-button,
can-copy button {
  margin: 0 0 0 0.5em;
  border-color: transparent;
  border-radius: 0.5em;
  background-color: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align: middle;
  background-color: #fff;
  color: #999;
  padding: 2px;
  font-size: 10px;
  border: 1px solid #999; }

.small-copy-button:not([hidden]) .small-button:not([hidden]),
.raw-data-view .small-button:not([hidden]),
can-copy button:not([hidden]) {
  display: inline-block; }

.small-copy-button:hover,
.raw-data-view .small-button:hover,
.small-button:hover,
can-copy button:hover {
  background-color: #f2f2f2;
  text-decoration: none; }

.cancel-button {
  border-color: transparent;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #c31313;
  color: #fff;
  padding: 4px 10px;
  font-size: 13px;
  border: 1px solid #c31313;
  text-align: center; }
  .cancel-button:not([hidden]) {
    display: inline-block; }
  .cancel-button:hover, .cancel-button:active, .cancel-button:focus {
    background-color: #ac1111;
    text-decoration: none; }
  .cancel-button:hover:enabled {
    background: rgba(195, 19, 19, 0.8); }
  .cancel-button:disabled {
    color: #eee; }

.main-controls:not([hidden]) {
  display: block;
  text-align: center; }

.main-button:not([hidden]) {
  display: block; }

.main-button {
  margin: 1em auto;
  padding: 2em;
  font-size: 140%; }

button-sample.main-button:not([hidden]) {
  display: inline-block; }

button-sample.main-button {
  margin: 0 0.5em;
  padding: 0.3em;
  font-size: 120%; }

.create-link {
  background-image: url("/images/icon-add.svg");
  background-size: 16px 16px;
  background-repeat: no-repeat;
  background-position: 6px center;
  padding: 4px 8px 4px 24px;
  color: #239b43 !important;
  text-decoration: none !important;
  font-weight: bold;
  font-size: 0.8rem; }

.create-link.live-status {
  background-image: none;
  padding-left: 8px; }
  @media (max-width: 559px) {
    .create-link.live-status {
      padding: 0;
      text-align: center; } }

.live-status::before {
  content: "◎ "; }

.live-status.active::before {
  content: "● ";
  color: red; }

.notes, .helps {
  padding: 12px 16px;
  font-size: .85rem;
  border: 1px solid #e4e4e4; }
  .notes a, .helps a {
    color: #239b43;
    text-decoration: none;
    margin: 0 4px; }
    .notes a:hover, .helps a:hover {
      text-decoration: underline; }

form + script + .notes {
  margin-top: 2em; }

rb-as-message-desc:not([hidden]) {
  display: block;
  font-size: 80%;
  text-align: left; }

mini-notification:not([hidden]) {
  display: inline-block; }

mini-notification {
  position: fixed;
  bottom: 20px;
  left: 20px; }

mini-notification, toast-box {
  color: #fff;
  font-size: .95rem;
  padding: 16px 28px 16px 56px;
  border-radius: 3px;
  -webkit-box-shadow: 0px 1px 4px 1px rgba(0, 0, 0, 0.4);
  box-shadow: 0px 1px 4px 1px rgba(0, 0, 0, 0.4);
  background: #333 url("/images/icon-finish.svg") no-repeat;
  background-size: 30px 30px;
  background-position: 18px center; }

mini-notification {
  margin-left: 32px;
  color: #28b04c; }

@media (max-width: 559px) {
  mini-notification {
    right: 20px; }
  mini-notification, toast-box {
    padding-left: 64px;
    display: block;
    font-size: .85rem; }
  mini-notification:not([hidden]) a {
    display: block;
    margin: 0; } }

toast-box-main {
  -ms-flex-item-align: center;
      align-self: center;
  padding-right: 1em;
  min-width: 20em; }

.header-main {
  -webkit-box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.1);
  font-size: var(--fontSize-small);
  background: #fff;
  width: 100%;
  position: relative;
  z-index: 1000; }
  @media (max-width: 768px) {
    .header-main a {
      color: #239b43; }
    .header-main h1 {
      display: inline-block; } }
  .header-main .header-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    height: 50px;
    line-height: 50px;
    max-width: 1024px;
    margin: 0 auto; }
    @media (max-width: 1080px) {
      .header-main .header-inner {
        padding: 0 30px; } }
    @media (max-width: 768px) {
      .header-main .header-inner {
        padding: 0 8px 0 20px; } }
    @media (max-width: 350px) {
      .header-main .header-inner {
        padding: 0 0 0 12px; } }
  .header-main .logo svg {
    color: var(--color-richBlack);
    max-width: 110px;
    height: auto;
    vertical-align: middle;
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px); }
    @media (max-width: 768px) {
      .header-main .logo svg {
        max-width: 88px; } }
  .header-main .header-left {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    margin: 0 0 0 20px; }
    @media (max-width: 768px) {
      .header-main .header-left {
        margin: 0 0 0 10px; } }
    .header-main .header-left ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      gap: var(--margin-default); }
      .header-main .header-left ul a:not(.btn-white):not(.btn-white-medium):not(.create-link):not(.btn-white-large):not(.edit-photo-btn) {
        text-decoration: none;
        display: block;
        color: var(--color-black); }
        .header-main .header-left ul a:not(.btn-white):not(.btn-white-medium):not(.create-link):not(.btn-white-large):not(.edit-photo-btn):hover, .header-main .header-left ul a:not(.btn-white):not(.btn-white-medium):not(.create-link):not(.btn-white-large):not(.edit-photo-btn):focus {
          text-decoration: underline; }
  .header-main .header-right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .header-main .header-right.no-account a {
      display: block; }
    .header-main .header-right.no-account .for-sp {
      margin: 0 0 0 var(--margin-small); }
  .header-main .header-notify-button {
    position: relative; }
  .header-main .header-notify-new:not([hidden]) {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #f94141;
    position: absolute;
    top: 15px;
    right: 8px;
    color: transparent; }
  .header-main .header-notify-popup {
    margin: 0;
    width: 300px;
    border: 1px solid #e4e4e4;
    padding: 0;
    background: #fff;
    z-index: 100;
    text-align: left;
    border-radius: 2px;
    line-height: var(--lineHeight-default); }
    .header-main .header-notify-popup menu-item:not([hidden]) {
      display: block; }
    .header-main .header-notify-popup a,
    .header-main .header-notify-popup button {
      color: #333 !important;
      display: block;
      padding: 10px 14px;
      font-size: 12px;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      width: 100%; }
      .header-main .header-notify-popup a:hover, .header-main .header-notify-popup a:focus,
      .header-main .header-notify-popup button:hover,
      .header-main .header-notify-popup button:focus {
        background-color: #f2f2f2;
        text-decoration: none; }
    .header-main .header-notify-popup button {
      border-color: transparent;
      background-color: transparent;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      text-align: left; }
    .header-main .header-notify-popup hr {
      visibility: visible;
      border: none;
      border-top: 1px solid #e4e4e4;
      margin: 0; }
    .header-main .header-notify-popup a:not([hidden]) {
      font-size: 14px; }
      .header-main .header-notify-popup a:not([hidden]):hover {
        text-decoration: none; }
    @media (max-width: 768px) {
      .header-main .header-notify-popup {
        width: 100%;
        left: 0 !important;
        right: 0; } }
  .header-main .header-notify-list list-item {
    display: block;
    border-top: 1px solid #e4e4e4; }
    .header-main .header-notify-list list-item:first-child {
      border: none; }
  .header-main .header-notify-link:not([hidden]), .header-main .header-notify-link-star:not([hidden]) {
    display: block;
    position: relative;
    padding: 6px 0 6px 60px;
    min-height: 40px; }
  .header-main .header-notify-link-star {
    background-image: url("/images/icon-star.svg");
    background-repeat: no-repeat;
    background-size: 24px;
    background-position: 18px 12px; }
  .header-main .header-notify-icon {
    position: absolute;
    left: 12px;
    top: 8px;
    width: 36px;
    height: 36px;
    border-radius: 50%; }
  .header-main .header-notify-username {
    font-weight: bold; }
  .header-main .header-notify-time {
    color: #999;
    font-size: 0.85rem; }
  .header-main .header-notify-setting {
    border-top: 1px solid #e4e4e4;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .header-main .header-notify-setting a:not([hidden]) {
      display: block;
      padding: 12px; }
  .header-main .header-notify-empty:not([hidden]) {
    padding: 12px;
    display: block; }
  .header-main rb-notification-menu menu-main {
    max-height: 90vh;
    max-width: 90vw;
    overflow: auto; }
    .header-main rb-notification-menu menu-main a.main {
      font-weight: bolder; }
  .header-main rb-notification-menu is-new-item[value="1"]::before {
    content: "NEW!";
    background: yellow;
    color: blue;
    font-weight: bolder; }
  .header-main .header-notify-button,
  .header-main .header-subMenu-button,
  .header-main .header-create-button,
  .header-main .header-live-button,
  .header-main .header-popup-btn {
    background: none;
    border: none;
    height: 50px;
    display: block;
    color: var(--color-black);
    padding: 0 var(--margin-small); }
    @media (max-width: 768px) {
      .header-main .header-notify-button,
      .header-main .header-subMenu-button,
      .header-main .header-create-button,
      .header-main .header-live-button,
      .header-main .header-popup-btn {
        padding: 0 12px; } }
    .header-main .header-notify-button:hover, .header-main .header-notify-button:focus,
    .header-main .header-subMenu-button:hover,
    .header-main .header-subMenu-button:focus,
    .header-main .header-create-button:hover,
    .header-main .header-create-button:focus,
    .header-main .header-live-button:hover,
    .header-main .header-live-button:focus,
    .header-main .header-popup-btn:hover,
    .header-main .header-popup-btn:focus {
      text-decoration: none;
      background: var(--bgColor-hover); }
    .header-main .header-notify-button svg,
    .header-main .header-notify-button span,
    .header-main .header-subMenu-button svg,
    .header-main .header-subMenu-button span,
    .header-main .header-create-button svg,
    .header-main .header-create-button span,
    .header-main .header-live-button svg,
    .header-main .header-live-button span,
    .header-main .header-popup-btn svg,
    .header-main .header-popup-btn span {
      vertical-align: middle; }
    .header-main .header-notify-button svg,
    .header-main .header-subMenu-button svg,
    .header-main .header-create-button svg,
    .header-main .header-live-button svg,
    .header-main .header-popup-btn svg {
      color: var(--color-richBlack); }
  .header-main .header-create-menu {
    margin: 0;
    width: 150px;
    border: 1px solid #e4e4e4;
    padding: 0;
    background: #fff;
    z-index: 100;
    text-align: left;
    border-radius: 2px;
    line-height: var(--lineHeight-default); }
    .header-main .header-create-menu menu-item:not([hidden]) {
      display: block; }
    .header-main .header-create-menu a,
    .header-main .header-create-menu button {
      color: #333 !important;
      display: block;
      padding: 10px 14px;
      font-size: 12px;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      width: 100%; }
      .header-main .header-create-menu a:hover, .header-main .header-create-menu a:focus,
      .header-main .header-create-menu button:hover,
      .header-main .header-create-menu button:focus {
        background-color: #f2f2f2;
        text-decoration: none; }
    .header-main .header-create-menu button {
      border-color: transparent;
      background-color: transparent;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      text-align: left; }
    .header-main .header-create-menu hr {
      visibility: visible;
      border: none;
      border-top: 1px solid #e4e4e4;
      margin: 0; }
    .header-main .header-create-menu svg,
    .header-main .header-create-menu span {
      vertical-align: middle; }
  .header-main .header-subMenu-menu {
    margin: 0;
    width: 150px;
    border: 1px solid #e4e4e4;
    padding: 0;
    background: #fff;
    z-index: 100;
    text-align: left;
    border-radius: 2px;
    line-height: var(--lineHeight-default); }
    .header-main .header-subMenu-menu menu-item:not([hidden]) {
      display: block; }
    .header-main .header-subMenu-menu a,
    .header-main .header-subMenu-menu button {
      color: #333 !important;
      display: block;
      padding: 10px 14px;
      font-size: 12px;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      width: 100%; }
      .header-main .header-subMenu-menu a:hover, .header-main .header-subMenu-menu a:focus,
      .header-main .header-subMenu-menu button:hover,
      .header-main .header-subMenu-menu button:focus {
        background-color: #f2f2f2;
        text-decoration: none; }
    .header-main .header-subMenu-menu button {
      border-color: transparent;
      background-color: transparent;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      text-align: left; }
    .header-main .header-subMenu-menu hr {
      visibility: visible;
      border: none;
      border-top: 1px solid #e4e4e4;
      margin: 0; }
  .header-main .header-popup-menu {
    margin: 0;
    width: 160px;
    border: 1px solid #e4e4e4;
    padding: 0;
    background: #fff;
    z-index: 100;
    text-align: left;
    border-radius: 2px;
    line-height: var(--lineHeight-default); }
    .header-main .header-popup-menu menu-item:not([hidden]) {
      display: block; }
    .header-main .header-popup-menu a,
    .header-main .header-popup-menu button {
      color: #333 !important;
      display: block;
      padding: 10px 14px;
      font-size: 12px;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      width: 100%; }
      .header-main .header-popup-menu a:hover, .header-main .header-popup-menu a:focus,
      .header-main .header-popup-menu button:hover,
      .header-main .header-popup-menu button:focus {
        background-color: #f2f2f2;
        text-decoration: none; }
    .header-main .header-popup-menu button {
      border-color: transparent;
      background-color: transparent;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      text-align: left; }
    .header-main .header-popup-menu hr {
      visibility: visible;
      border: none;
      border-top: 1px solid #e4e4e4;
      margin: 0; }
    .header-main .header-popup-menu svg,
    .header-main .header-popup-menu span {
      vertical-align: middle; }
    .header-main .header-popup-menu svg {
      width: 20px;
      margin: 0 var(--margin-xsmall) 0 0; }
    .header-main .header-popup-menu .border {
      border-top: 1px solid var(--borderColor-default); }
  .header-main .header-popup-btn account-info {
    display: inline-block;
    width: 26px;
    height: 26px; }
  .header-main .header-popup-btn .header-profile-icon {
    width: 26px;
    height: 26px;
    border-radius: 13px;
    vertical-align: middle;
    background: var(--color-lightGray);
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border: 1px solid var(--color-white); }
  .header-main .header-popup-profile {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: var(--margin-small); }
    .header-main .header-popup-profile img {
      width: 36px;
      height: 36px;
      border-radius: 18px; }

#globalFooter {
  margin: 40px 0 0 0;
  font-size: var(--fontSize-default);
  background: var(--color-ibukiDarkGray);
  color: var(--color-lightGray); }
  @media (max-width: 768px) {
    #globalFooter {
      font-size: var(--fontSize-small); } }

#globalFooter-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 1024px;
  margin: 0 auto;
  gap: var(--margin-xxlarge);
  padding: 40px var(--margin-large) var(--margin-xlarge); }
  @media (max-width: 1080px) {
    #globalFooter-inner {
      display: block;
      padding: var(--margin-large) var(--margin-large) var(--margin-xlarge); } }
  @media (max-width: 768px) {
    #globalFooter-inner {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      gap: var(--margin-large); } }
  @media (max-width: 559px) {
    #globalFooter-inner {
      padding: 20px 20px var(--margin-xlarge);
      display: block; } }

#globalFooter-nav {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: var(--margin-large); }
  @media (max-width: 768px) {
    #globalFooter-nav {
      display: grid;
      grid-template-columns: 1fr 1fr; } }
  #globalFooter-nav ul {
    margin: var(--margin-small) 0 0; }
  #globalFooter-nav a {
    color: var(--color-mediumGray);
    text-decoration: none;
    padding: var(--margin-xsmall) 0;
    display: inline-block; }
    #globalFooter-nav a:hover, #globalFooter-nav a:focus {
      color: var(--color-lightGray); }

@media (max-width: 1080px) {
  #globalFooter-address {
    margin: var(--margin-large) 0 0;
    text-align: center; } }

@media (max-width: 768px) {
  #globalFooter-address {
    margin: 0; } }

@media (max-width: 559px) {
  #globalFooter-address {
    margin: var(--margin-xlarge) 0 0;
    text-align: center; } }

#globalFooter-address a {
  text-decoration: none;
  display: inline-block;
  color: var(--color-white); }

#globalFooter-address address {
  text-align: center; }
  #globalFooter-address address svg {
    max-width: 124px;
    height: auto; }

#globalFooter-address small {
  margin: var(--margin-small) 0 0;
  display: block;
  text-align: center; }

#globalFooter-address ul {
  margin: var(--margin-default) 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: var(--margin-default); }

footer.site {
  grid-area: footer;
  padding: 0.5em;
  font-size: var(--fontSize-default);
  background: var(--color-ibukiDarkGray);
  color: var(--color-lightGray); }

#globalFooter .langs {
  margin: 1em 1em 0 1em;
  text-align: center; }

#globalFooter .langs + .langs {
  margin-top: 0; }

#globalFooter .link {
  color: var(--color-white);
  background: transparent; }

body.object-config footer.site {
  margin-right: 0.5em;
  line-height: 1.3;
  font-size: 80%; }

footer.site p:not([hidden]) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

footer.site p {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

footer.site a {
  margin-left: 0.3em;
  margin-right: 0.3em;
  color: var(--color-lightGray);
  background: transparent; }

footer.site a:visited {
  color: var(--color-mediumGray);
  background: transparent; }

#globalFooterCompact {
  padding: 0 0 env(safe-area-inset-bottom);
  background: var(--color-lightGray);
  font-size: 14px;
  font-size: var(--fontSize-small); }
  #globalFooterCompact small {
    padding: var(--margin-default);
    display: block;
    color: var(--color-dullGray); }

#globalFooterCompact-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: calc(var(--margin-default) + var(--margin-xsmall)) var(--margin-default) 0; }
  #globalFooterCompact-header address svg {
    color: var(--color-richBlack);
    max-width: 92px;
    height: auto; }

#globalFooterCompact-header p svg {
  color: var(--color-richBlack);
  max-width: 92px;
  height: auto; }

#globalFooterCompact-social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-default); }
  #globalFooterCompact-social a {
    display: inline-block;
    color: var(--color-black); }

#globalFooterCompact-nav {
  margin: var(--margin-default) 0 0;
  border-bottom: 1px solid var(--borderColor-default); }
  #globalFooterCompact-nav details {
    border-top: 1px solid var(--borderColor-default); }
    #globalFooterCompact-nav details summary {
      height: var(--button-height);
      line-height: var(--button-height);
      padding: 0 var(--margin-default);
      outline: none; }
      #globalFooterCompact-nav details summary:hover {
        cursor: pointer;
        background: #eee; }
    #globalFooterCompact-nav details ul {
      margin: 0 0 var(--margin-default); }
    #globalFooterCompact-nav details a {
      display: block;
      color: var(--color-darkGray);
      text-decoration: none;
      padding: var(--margin-small) var(--margin-default); }
      #globalFooterCompact-nav details a:hover, #globalFooterCompact-nav details a:focus {
        text-decoration: underline; }

#globalFooterCompact .links a:not([hidden]),
#globalFooterCompact .langs a:not([hidden]),
#globalFooterCompact .langs .link:not([hidden]) {
  display: inline-block; }

#globalFooterCompact .links a,
#globalFooterCompact .langs a,
#globalFooterCompact .langs .link {
  padding: var(--margin-small) var(--margin-default); }

#globalFooterCompact .links a {
  color: var(--color-darkGray);
  background: transparent;
  text-decoration: none; }

#globalFooterCompact .links a:hover,
#globalFooterCompact .links a:focus,
#globalFooterCompact .links a:active {
  text-decoration: underline; }

big-banner:not([hidden]) {
  display: block;
  margin: 0 0 20px 0;
  padding: 1em;
  border: 1px solid #e4e4e4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }

banner-links:not([hidden]) {
  display: block;
  text-align: right; }

banner-links a:not([hidden]) {
  margin-left: 20px; }

.tags-list {
  display: block;
  line-height: 1.2; }
  .course-main .tags-list {
    padding: 0 24px 0 0; }

.tags-item, .top-tags-list a, a.tag {
  display: inline-block;
  margin: 0 8px 0 0;
  text-decoration: none;
  font-size: 12px;
  line-height: 1.6;
  color: #B59861;
  font-weight: bold; }

.tags-item:hover, .top-tags-list a:hover, a.tag:hover {
  text-decoration: underline; }

@media (max-width: 480px) {
  .tags-item, .top-tags-list a, a.tag {
    font-size: .75rem; } }

.tags-list-large li, .tags-list-large rb-tag-item {
  display: inline-block; }

.tags-list-large > p {
  font-size: 0; }

.tags-list-large a {
  border: 1px solid #ccc;
  border-radius: 3px;
  padding: 2px 8px;
  color: #333 !important;
  margin: 0 8px 8px 0 !important;
  text-decoration: none !important;
  font-size: 1rem !important; }
  .tags-list-large a:hover {
    text-decoration: none;
    background: #f2f2f2; }

rb-select-multiple button[is=rb-select-edit-button]:not([hidden]) {
  display: inline-block;
  -webkit-appearance: none;
  border: none;
  min-height: 1em;
  color: inherit;
  background-color: transparent;
  background-image: url(/images/menu.svg);
  background-repeat: no-repeat;
  background-position: center;
  font-size: 13px;
  padding: 2px 8px; }

rb-select-multiple[open] button[is=rb-select-edit-button] {
  background-image: url(/images/menu-focus.svg); }

rb-select-multiple:hover rb-select-viewer,
rb-select-multiple:active rb-select-viewer,
rb-select-multiple:focus rb-select-viewer,
rb-select-multiple:hover button[is=rb-select-edit-button],
rb-select-multiple:active button[is=rb-select-edit-button],
rb-select-multiple:focus button[is=rb-select-edit-button] {
  color: black;
  background-color: #f2f2f2;
  text-decoration: none; }

rb-select-multiple.create-strava-select rb-select-viewer {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  cursor: pointer; }

rb-select-multiple button[is=rb-select-edit-button]:not([hidden]) span {
  position: absolute;
  visibility: hidden; }

rb-select-multiple:not([open]) rb-select-editor {
  display: none !important; }

rb-select-multiple rb-select-editor:not([hidden]) {
  position: absolute;
  display: block;
  border: 1px solid #E4E4E4;
  background: #fff;
  z-index: 100;
  right: 0;
  left: auto;
  top: 3em;
  width: 500px;
  min-height: 3em;
  max-height: 80vh;
  overflow: auto; }

rb-select-mulitple rb-select-item {
  unicode-bidi: -webkit-isolate;
  unicode-bidi: -moz-isolate;
  unicode-bidi: isolate; }

rb-select-multiple.tags rb-select-item:not([hidden]) {
  display: inline-block;
  text-decoration: none;
  line-height: 1.6;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

rb-select-multiple.create-strava-select rb-select-item:not([hidden]) {
  display: block; }

rb-select-multiple.create-strava-select rb-select-editor p:not([hidden]) {
  margin: .5em; }

rb-select-multiple:not([hidden]) {
  unicode-bidi: -webkit-isolate;
  unicode-bidi: -moz-isolate;
  unicode-bidi: isolate;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-appearance: none;
  width: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-size: .9rem;
  padding: 4px;
  color: #444;
  background: transparent;
  vertical-align: middle; }

rb-select-multiple:not([hidden]) rb-tag-item {
  display: inline-block;
  text-decoration: none;
  line-height: 1.6;
  font-weight: bold; }

rb-select-multiple:not([hidden]) rb-tag-item:before {
  content: "#"; }

@media (max-width: 559px) {
  rb-select-multiple:not([hidden]) rb-tag-item {
    font-size: .75rem; } }

rb-select-multiple:not([hidden]) rb-select-item:not([hidden]) {
  color: #B59861;
  font-size: 11px;
  border: 1px solid #E4E4E4;
  background: #fff;
  padding: 2px 4px;
  border-radius: 3px;
  margin: 0 8px 6px 0;
  cursor: pointer; }

rb-select-multiple:not([hidden]) rb-select-item:hover {
  background-color: #f2f2f2;
  text-decoration: none; }

rb-select-multiple:not([hidden]) rb-select-item:not([hidden])[selected] {
  border-color: #808080;
  background-color: #999;
  color: #fff; }

rb-select-multiple:not([hidden]) rb-select-item:not([hidden])[selected]:hover {
  background-color: #8c8c8c; }

rb-select-multiple.map rb-select-editor {
  width: 20em; }

rb-select-multiple.map rb-select-editor rb-select-item:not([hidden]) {
  display: block; }

.tags-selected:not([hidden]) {
  unicode-bidi: -webkit-isolate;
  unicode-bidi: -moz-isolate;
  unicode-bidi: isolate;
  display: block;
  display: -webkit-inline-box;
  cursor: pointer;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  padding: 8px 8px 4px 8px;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  vertical-align: middle;
  border-radius: 3px; }

.tags-tab-contents > section {
  padding: 12px; }

.tags-tab-add {
  margin: 4px 0 0 0; }
  .tags-tab-add input {
    font-size: 12px !important;
    margin: 0 4px 0 0;
    padding: 7px 8px !important; }

course-info:not([hidden]),
rb-event-info:not([hidden]),
rb-group-info:not([hidden]),
activitty-log-info:not([hidden]) {
  position: relative;
  display: block; }

course-info a:not([hidden]),
rb-event-info a:not([hidden]),
rb-group-info a:not([hidden]),
activitty-log-info a:not([hidden]) {
  display: block; }

#gtm rb-event-info a:not([hidden]) {
  display: inline; }

.activity-thumb {
  width: 200px;
  height: 133.33333px;
  max-width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: var(--borderRadius-default); }
  .activity-thumb:hover {
    opacity: 0.8; }
  .activity-thumb:not([hidden]) {
    display: block;
    background: var(--bgColor-beige);
    text-align: center;
    margin: 0 0 8px 0; }
  @media (max-width: 559px) {
    .activity-thumb {
      width: 100%;
      height: 132px; } }
  @media (max-width: 400px) {
    .activity-thumb {
      height: 118px; } }
  @media (max-width: 350px) {
    .activity-thumb {
      height: 97px; } }

.activity-title {
  text-decoration: none;
  font-weight: bold;
  color: #333;
  font-size: 1rem;
  line-height: 1.4;
  margin: 0 0 5px 0; }
  .activity-title:hover {
    text-decoration: underline; }
  @media (max-width: 559px) {
    .activity-title {
      font-size: .9rem;
      margin: 0 0 4px 0; } }

.activity-detail {
  font-size: .85rem;
  color: #999;
  line-height: 1.2;
  margin: 0 0 5px; }
  @media (max-width: 559px) {
    .activity-detail {
      font-size: .75rem; } }
  @media (max-width: 559px) {
    .activity-detail {
      display: block; } }

.activity-gain {
  margin-left: 10px;
  position: relative; }
  .activity-gain:before {
    content: "";
    position: absolute;
    display: inline-block;
    width: 1px;
    height: 12px;
    background: #ccc;
    left: -6px;
    top: 3px; }

.activity-time {
  display: block;
  margin: 2px 0 0 0; }

.activity-count {
  background-color: #fff;
  background-image: url("/images/icon-count.svg");
  background-repeat: no-repeat;
  background-size: 12px 12px;
  background-position: 4px center;
  padding: 4px 2px 4px 20px;
  position: absolute;
  top: 5px;
  right: 5px;
  border-radius: 2px;
  font-size: .9rem;
  line-height: 1;
  color: #666; }
  .activity-count number-unit {
    font-size: .7rem; }

.comment-list {
  padding: 0 var(--margin-default) 24px 64px;
  position: relative; }
  .comment-list:target {
    border: 1px solid #2cc555;
    -webkit-box-shadow: 0 0 0 0.2em #e8f4eb;
            box-shadow: 0 0 0 0.2em #e8f4eb;
    border-radius: 2px; }
  .comment-list header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 8px;
    padding: 0 var(--margin-default) 0 0; }
  .comment-list rb-subthread-info {
    display: inline-block; }
    .comment-list rb-subthread-info a {
      font-size: 0.85rem; }
  .comment-list .component-objectMenu {
    position: absolute;
    right: 12px;
    top: 0; }
  .comment-list p {
    font-size: 0.9rem;
    margin: 12px 0 0; }
  .comment-list rb-formatted-body {
    white-space: pre-wrap; }
  .comment-list figure img {
    max-width: 180px;
    max-height: 180px;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    -o-object-position: top left;
       object-position: top left; }

.comment-list-icon {
  position: absolute;
  top: 4px;
  left: 16px; }
  .comment-list-icon img {
    width: 36px;
    height: 36px;
    border-radius: 18px; }

.comment-list-username {
  font-weight: bold;
  color: #333;
  font-size: 0.9rem; }

.comment-list-timestamp {
  color: #999;
  font-size: 0.85rem; }

.comment-post {
  background: var(--color-ibukiLightGray);
  display: grid;
  grid-template-columns: auto 1fr auto;
  grid-template-areas: "avatar body body" "avatar image submit";
  -webkit-column-gap: 12px;
     -moz-column-gap: 12px;
          column-gap: 12px;
  row-gap: 6px;
  padding: 12px 16px;
  margin: 12px 0 0 0; }

.comment-post-header {
  grid-area: avatar; }

.comment-post-icon {
  display: block; }
  .comment-post-icon img {
    width: 36px;
    height: 36px;
    border-radius: 18px;
    vertical-align: middle; }

.comment-post-body {
  grid-area: body; }

.comment-post-textarea {
  -webkit-appearance: none;
  border-radius: 4px;
  font-size: 0.9rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 8px;
  width: 100%;
  height: 7em;
  vertical-align: top; }
  .comment-post-textarea:hover {
    border-color: #b3b3b3; }

.comment-post-image {
  grid-area: image; }
  .comment-post-image rb-select-image {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }

.comment-post-button {
  grid-area: submit; }

.comment-post-submit {
  font-size: 14px;
  height: 36px;
  border: 1px solid #239b43;
  color: #239b43;
  border-radius: 4px;
  padding: 0 12px;
  background: #fff; }
  .comment-post-submit:hover {
    background: #e8f4eb; }

.component-contents-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 -10px; }
  @media (max-width: 559px) {
    .component-contents-list list-item {
      min-width: 0; } }
  .component-contents-list list-item {
    -ms-flex-preferred-size: calc(25% - 20px);
        flex-basis: calc(25% - 20px);
    margin: 0 10px 40px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
  .component-contents-list .activity-thumb {
    width: 240px;
    height: 160px;
    max-width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: var(--borderRadius-default); }
    .component-contents-list .activity-thumb:hover {
      opacity: 0.8; }
    .component-contents-list .activity-thumb:not([hidden]) {
      display: block;
      background: var(--bgColor-beige);
      text-align: center;
      margin: 0 0 8px 0; }
    @media (max-width: 559px) {
      .component-contents-list .activity-thumb {
        width: 100%;
        height: 132px; } }
    @media (max-width: 400px) {
      .component-contents-list .activity-thumb {
        height: 118px; } }
    @media (max-width: 350px) {
      .component-contents-list .activity-thumb {
        height: 97px; } }
  .component-contents-list .tags-list {
    max-height: 36px;
    overflow: hidden; }
  .component-contents-list .tags-item {
    line-height: 1.2; }
  @media (max-width: 559px) {
    .component-contents-list list-item {
      -ms-flex-preferred-size: calc(50% - 20px);
          flex-basis: calc(50% - 20px); } }
  .component-contents-list a:not([hidden]) {
    display: block;
    text-decoration: none; }

html:not(.race-staged) .c-eventRanking-table {
  margin: var(--margin-default) 0 0 var(--margin-default) !important; }
  @media print {
    html:not(.race-staged) .c-eventRanking-table {
      margin: 0 !important; } }

.c-eventRanking-header {
  padding: var(--margin-default); }
  @media screen and (max-width: 1080px) {
    .c-eventRanking-header {
      border-top: 1px solid var(--borderColor-default); } }
  @media print {
    .c-eventRanking-header {
      padding: var(--margin-default) 0; } }

.c-eventRanking-title {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }
  .c-eventRanking-title h1 {
    max-width: 100%;
    font-size: var(--fontSize-xlarge);
    line-height: var(--lineHeight-small); }
    @media screen {
      .c-eventRanking-title h1 {
        text-overflow: ellipsis;
        white-space: nowrap;
        overflow: hidden;
        display: inline-block;
        width: 100%; } }
    @media screen and (max-width: 1080px) {
      .c-eventRanking-title h1 {
        font-size: var(--fontSize-large); } }
    @media screen and (max-width: 768px) {
      .c-eventRanking-title h1 {
        white-space: normal; } }
    @media print {
      .c-eventRanking-title h1 {
        font-size: var(--fontSize-xxxlarge);
        line-height: var(--lineHeight-xsmall); } }
  .c-eventRanking-title h2 {
    font-weight: normal;
    font-size: var(--fontSize-xsmall); }
    @media print {
      .c-eventRanking-title h2 {
        font-size: var(--fontSize-xlarge); } }

.c-eventRanking-indexes:not([hidden]) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.c-eventRanking-indexes {
  background: var(--bgColor-beige);
  margin: var(--margin-default) 0;
  padding: var(--margin-default) var(--margin-large);
  border-radius: var(--borderRadius-large); }
  @media screen and (max-width: 768px) {
    .c-eventRanking-indexes {
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -ms-flex-pack: distribute;
          justify-content: space-around;
      padding: var(--margin-default) var(--margin-small); } }
  @media screen and (max-width: 350px) {
    .c-eventRanking-indexes {
      display: grid;
      grid-template-columns: 1fr 1fr;
      row-gap: var(--margin-default); } }
  @media print {
    .c-eventRanking-indexes {
      background: none;
      border: 1px solid var(--borderColor-black); } }
  .c-eventRanking-indexes li {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    @media screen and (max-width: 768px) {
      .c-eventRanking-indexes li {
        -webkit-box-flex: initial;
            -ms-flex: initial;
                flex: initial; } }

.c-eventRanking-indexes-label {
  font-size: var(--fontSize-small);
  color: var(--color-darkGray);
  text-align: center; }

.c-eventRanking-indexes-value {
  margin: var(--margin-xsmall) 0 0;
  font-family: var(--fontFamily-montserrat);
  font-size: var(--fontSize-xxxxlarge);
  line-height: 1;
  letter-spacing: 1px; }
  @media screen and (max-width: 1080px) {
    .c-eventRanking-indexes-value {
      font-size: var(--fontSize-xxxlarge); } }
  @media screen and (max-width: 768px) {
    .c-eventRanking-indexes-value {
      font-size: var(--fontSize-xxlarge); } }

.c-eventRanking-indexes-unit {
  font-size: var(--fontSize-small);
  color: var(--color-darkGray); }

.c-eventRanking-chartSection {
  margin: var(--margin-default) 0 0; }

.c-eventRanking-chart {
  margin: var(--margin-small) 0 0; }

.c-eventRanking-stageLinks {
  font-size: var(--fontSize-small);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-small);
  margin: var(--margin-default) 0 0 0; }
  @media print {
    .c-eventRanking-stageLinks {
      display: none; } }

.c-eventRanking-stage {
  margin: 0 0 var(--margin-large); }
  .c-eventRanking-stage action-status {
    border-top: 1px solid var(--borderColor-default);
    margin: 0 0 0 var(--margin-default);
    padding: var(--margin-default) var(--margin-default) var(--margin-default) 0; }

.c-eventRanking-stage-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: var(--margin-default);
  border-top: 1px solid var(--borderColor-default);
  font-size: var(--fontSize-small);
  position: sticky;
  top: 0;
  z-index: 110; }
  @media screen and (max-width: 768px) {
    .c-eventRanking-stage-header {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }
  @media print {
    .c-eventRanking-stage-header {
      padding: var(--margin-default) 0;
      margin: 0;
      border-top-color: var(--borderColor-black); } }

.c-eventRanking-stage-title {
  font-size: var(--fontSize-large); }
  @media print {
    .c-eventRanking-stage-title {
      font-size: var(--fontSize-xxlarge); } }

.c-eventRanking-actions {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: var(--margin-small);
  margin: 0 0 0 auto; }
  @media screen and (max-width: 768px) {
    .c-eventRanking-actions {
      margin: var(--margin-small) 0 0; } }
  @media print {
    .c-eventRanking-actions {
      margin: 0;
      -webkit-box-flex: initial;
          -ms-flex: initial;
              flex: initial; } }
  @media screen and (max-width: 768px) {
    .c-eventRanking-actions .table-filter {
      width: 100%;
      padding: var(--margin-small); } }
  @media print {
    .c-eventRanking-actions .table-filter {
      display: none; } }
  .c-eventRanking-actions .table-filter:hover {
    background: var(--bgColor-hover); }
  .c-eventRanking-actions .table-filter:focus {
    background: var(--bgColor-white);
    border-color: var(--color-green);
    outline: 1px solid var(--color-green); }
  @media print {
    .c-eventRanking-actions .reload-button {
      display: none; } }
  @media print {
    .c-eventRanking-actions .component-objectMenu {
      display: none; } }
  .c-eventRanking-actions .component-objectMenu .component-objectMenu-menu {
    z-index: 102; }

.c-eventRanking-actions-time {
  font-size: var(--fontSize-small);
  color: var(--color-darkGray); }
  @media print {
    .c-eventRanking-actions-time {
      color: var(--color-black); } }

.c-eventRanking-table {
  margin: 0 0 0 var(--margin-default) !important;
  width: calc(100% - var(--margin-default)) !important;
  position: relative;
  border-bottom: 1px solid var(--borderColor-default); }
  @media screen and (max-width: 768px) {
    .c-eventRanking-table {
      display: block; } }
  @media print {
    .c-eventRanking-table {
      margin: 0 !important;
      width: 100% !important; } }
  .c-eventRanking-table thead {
    background: var(--color-white);
    z-index: 101;
    position: sticky;
    top: 0; }
    @media screen and (max-width: 768px) {
      .c-eventRanking-table thead {
        display: none; } }
    .c-eventRanking-table thead th {
      text-align: left;
      font-weight: normal;
      color: var(--color-darkGray);
      font-size: var(--fontSize-xsmall);
      padding: var(--margin-xsmall) var(--margin-default) var(--margin-xsmall) 0; }
      @media print {
        .c-eventRanking-table thead th {
          color: var(--color-black); } }
      .c-eventRanking-table thead th.c-eventRanking-table-rank {
        text-align: center; }
      .c-eventRanking-table thead th.c-eventRanking-table-time {
        text-align: right;
        padding-right: calc(var(--margin-default) + var(--margin-small) + 16px); }
        @media print {
          .c-eventRanking-table thead th.c-eventRanking-table-time {
            padding-right: 0; } }
  @media screen and (max-width: 768px) {
    .c-eventRanking-table tbody {
      display: block; } }
  .c-eventRanking-table tbody tr {
    border: none; }
    @media screen {
      .c-eventRanking-table tbody tr:hover .c-eventRanking-table-teamLabel {
        text-decoration: underline; } }
    @media screen and (max-width: 768px) {
      .c-eventRanking-table tbody tr {
        display: grid !important;
        grid-template-columns: 30px 1fr 1fr;
        grid-template-areas: "rank team time" "rank team markedpoint"; } }
    @media screen and (max-width: 400px) {
      .c-eventRanking-table tbody tr {
        grid-template-columns: 30px 1fr 1.3fr; } }
  .c-eventRanking-table tbody th,
  .c-eventRanking-table tbody td {
    border-top: 1px solid var(--borderColor-default);
    vertical-align: middle; }

.c-eventRanking-table-rank {
  width: 30px; }
  @media screen and (max-width: 768px) {
    .c-eventRanking-table-rank {
      grid-area: rank; } }
  .c-eventRanking-table-rank a {
    display: block;
    color: var(--color-black);
    text-decoration: none;
    padding: var(--margin-default) var(--margin-default) var(--margin-default) 0; }
    @media screen and (max-width: 768px) {
      .c-eventRanking-table-rank a {
        padding: var(--margin-default) var(--margin-default) var(--margin-small) 0;
        height: 100%;
        -webkit-box-sizing: border-box;
                box-sizing: border-box; } }
    @media print {
      .c-eventRanking-table-rank a {
        padding: var(--margin-small) var(--margin-default) var(--margin-small) 0; } }

.c-eventRanking-table-team {
  width: 30%; }
  @media screen and (max-width: 768px) {
    .c-eventRanking-table-team {
      grid-area: team;
      width: 100%; } }
  .c-eventRanking-table-team a {
    display: block;
    text-decoration: none;
    color: var(--color-black);
    padding: var(--margin-default) var(--margin-default) var(--margin-default) 0; }
    @media screen and (max-width: 768px) {
      .c-eventRanking-table-team a {
        padding: var(--margin-default) var(--margin-default) var(--margin-small) 0;
        height: 100%;
        -webkit-box-sizing: border-box;
                box-sizing: border-box; } }
    @media print {
      .c-eventRanking-table-team a {
        padding: var(--margin-small) var(--margin-default) var(--margin-small) 0; } }

.c-eventRanking-table-teamLabel {
  display: inline-block;
  line-height: var(--lineHeight-small); }

.c-eventRanking-table-teamMeta {
  display: block;
  line-height: var(--lineHeight-small); }
  @media print {
    .c-eventRanking-table-teamMeta {
      display: inline-block; } }
  .c-eventRanking-table-teamMeta team-icon {
    position: relative;
    padding: 0.2em;
    vertical-align: middle;
    min-width: 2em;
    background: #eee;
    color: black;
    font-size: 80%;
    line-height: 1;
    text-align: center;
    font-family: sans-serif;
    letter-spacing: 0.05em; }
    @media print {
      .c-eventRanking-table-teamMeta team-icon {
        background: none;
        border: 1px solid var(--borderColor-mediumGray); } }
    .c-eventRanking-table-teamMeta team-icon:not([hidden]) {
      display: inline-block; }
  .c-eventRanking-table-teamMeta span {
    display: inline-block; }

@media screen and (max-width: 768px) {
  .c-eventRanking-table-markedPoint {
    grid-area: markedpoint;
    border: none !important; } }

.c-eventRanking-table-markedPoint rb-if-value:not([hidden]) {
  display: block;
  width: 100%; }

.c-eventRanking-table-markedPoint a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: var(--margin-xsmall);
  text-decoration: none;
  color: var(--color-black);
  padding: var(--margin-default) var(--margin-default) var(--margin-default) 0;
  line-height: var(--lineHeight-small);
  font-size: var(--fontSize-small); }
  @media screen and (max-width: 768px) {
    .c-eventRanking-table-markedPoint a {
      padding: 0 var(--margin-default) calc(var(--margin-default) + var(--margin-xsmall)) 0;
      font-size: var(--fontSize-xsmall);
      color: var(--color-darkGray); } }
  @media print {
    .c-eventRanking-table-markedPoint a {
      padding: var(--margin-small) var(--margin-default) var(--margin-small) 0; } }

.c-eventRanking-table-markedPoint markedpoint-icon {
  position: relative;
  margin: 0;
  padding: 0.2em;
  font-size: var(--fontSize-small);
  white-space: nowrap;
  background: var(--color-black);
  color: white;
  line-height: 1;
  vertical-align: middle; }
  .c-eventRanking-table-markedPoint markedpoint-icon:not([hidden]) {
    display: inline-block; }
  .c-eventRanking-table-markedPoint markedpoint-icon[value="globalStart"], .c-eventRanking-table-markedPoint markedpoint-icon[value="partialStart"] {
    background: var(--startColor);
    color: white; }
  .c-eventRanking-table-markedPoint markedpoint-icon[value="globalGoal"], .c-eventRanking-table-markedPoint markedpoint-icon[value="partialGoal"] {
    background: var(--goalColor);
    color: white; }
  @media print {
    .c-eventRanking-table-markedPoint markedpoint-icon {
      background: none !important;
      border: 1px solid var(--borderColor-mediumGray) !important;
      color: var(--color-black) !important; } }

.c-eventRanking-table-markedPoint markedpoint-icon::before {
  display: none; }

.c-eventRanking-table-markedPoint-label {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0; }

.c-eventRanking-table-time {
  text-align: right; }
  @media screen and (max-width: 768px) {
    .c-eventRanking-table-time {
      grid-area: time;
      text-align: left; } }
  .c-eventRanking-table-time a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: var(--margin-small);
    text-decoration: none;
    color: var(--color-black);
    padding: var(--margin-xsmall) var(--margin-default) var(--margin-xsmall) 0; }
    @media screen and (max-width: 768px) {
      .c-eventRanking-table-time a {
        padding: var(--margin-default) var(--margin-default) var(--margin-small) 0; } }
    @media print {
      .c-eventRanking-table-time a {
        padding: var(--margin-xsmall) 0; } }
  .c-eventRanking-table-time p {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0; }
  .c-eventRanking-table-time span {
    display: block; }
  .c-eventRanking-table-time .c-eventRanking-table-info {
    letter-spacing: 0.05em; }
  .c-eventRanking-table-time .c-eventRanking-table-arrow {
    width: 16px;
    text-align: right; }
    @media print {
      .c-eventRanking-table-time .c-eventRanking-table-arrow {
        display: none; } }
    .c-eventRanking-table-time .c-eventRanking-table-arrow path {
      stroke: var(--color-black);
      stroke-width: 2; }

.c-eventRanking-table-duration {
  font-size: var(--fontSize-large);
  font-family: var(--fontFamily-monospace);
  line-height: var(--lineHeight-xsmall); }
  @media print {
    .c-eventRanking-table-duration {
      font-size: var(--fontSize-medium); } }

.c-eventRanking-table-info {
  font-size: var(--fontSize-xsmall);
  color: var(--color-darkGray); }

.c-eventRanking-disclaimer {
  padding: 0 var(--margin-default) var(--margin-default);
  font-size: var(--fontSize-xsmall);
  color: var(--color-darkGray);
  text-align: center; }
  @media print {
    .c-eventRanking-disclaimer {
      margin: var(--margin-default) 0 0; } }

.mapedit-tab {
  margin: 0 0 8px;
  display: block; }

.tab-column tab-menu:not([hidden]) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.tab-column tab-menu {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  border-bottom: 1px solid #ccc;
  padding: 0 4px;
  margin: 0 0 12px 0;
  font-size: 14px; }

.tab-column tab-menu a {
  display: inline-block;
  padding: 4px 10px;
  color: #333;
  text-decoration: none;
  margin: 0 2px -1px 2px;
  background: transparent;
  border-color: transparent;
  border-radius: 3px 3px 0 0; }

.tab-column tab-menu a:hover {
  text-decoration: underline; }

.tab-column tab-menu a.active {
  font-weight: bold;
  color: #333;
  background: #fff;
  border: 1px solid #ccc;
  border-bottom-color: transparent;
  text-decoration: none !important; }

.tab-column tab-menu tab-menu-extras {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  text-align: right; }

.tab-column > section > h1 {
  display: none; }

.tab-column-large tab-menu {
  display: block;
  width: 100%;
  border-bottom: 1px solid #e4e4e4;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  .tab-column-large tab-menu a {
    display: inline-block;
    line-height: 1.4;
    color: #333;
    padding: 6px 24px; }
    .tab-column-large tab-menu a:hover {
      color: #239b43;
      text-decoration: none; }
    .tab-column-large tab-menu a.active {
      color: #239b43;
      border-bottom: 4px solid #239b43;
      font-weight: bold; }

.tab-column-large-title {
  visibility: hidden;
  height: 24px; }

.tab-column-simple {
  display: block;
  width: 100%;
  border-bottom: 1px solid #e4e4e4;
  padding: 4px 12px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  .tab-column-simple a {
    display: inline-block;
    font-size: 13px;
    font-weight: bold;
    line-height: 1.4;
    color: #999;
    padding: 2px 12px; }
    .tab-column-simple a:hover {
      color: #239b43;
      text-decoration: none; }
    .tab-column-simple a.active {
      color: #239b43;
      border-bottom: 4px solid #239b43; }

.tab-vertical-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media (max-width: 559px) {
    .tab-vertical-container {
      display: block; } }

.tab-vertical-menu {
  -ms-flex-preferred-size: 180px;
  flex-basis: 180px;
  margin: 0 40px 0 0;
  font-size: 0.9rem;
  -ms-flex-negative: 0;
  flex-shrink: 0; }

.tab-vertical-menu ul,
.tab-vertical-menu tab-menu,
tab-menu.tab-vertical-menu {
  border: 1px solid #e4e4e4;
  border-bottom: none;
  display: block;
  position: sticky;
  top: 0;
  overflow: auto;
  max-height: 100vh; }
  .tab-vertical-menu ul ul,
  .tab-vertical-menu tab-menu ul,
  tab-menu.tab-vertical-menu ul {
    border-top: none;
    border-right: none; }

.tab-vertical-menu ul a,
.tab-vertical-menu tab-menu a,
tab-menu.tab-vertical-menu a {
  display: block;
  padding: 8px 16px;
  border-bottom: 1px solid #e4e4e4;
  position: relative;
  color: #333; }

.tab-vertical-menu ul a:hover,
.tab-vertical-menu tab-menu a:hover,
tab-menu.tab-vertical-menu a:hover {
  background: #f2f2f2;
  text-decoration: none; }

.tab-vertical-menu ul a.active,
.tab-vertical-menu tab-menu a.active,
tab-menu.tab-vertical-menu a.active {
  background: #f2f2f2;
  font-weight: bold;
  color: #239b43; }

.tab-vertical-menu ul a.active:before,
.tab-vertical-menu tab-menu a.active:before,
tab-menu.tab-vertical-menu a.active::before {
  content: "";
  position: absolute;
  width: 4px;
  height: 39px;
  background: #239b43;
  top: 0;
  left: 0; }

@media (max-width: 559px) {
  .tab-vertical-menu {
    margin: 0 0 12px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    font-size: 0.8rem;
    min-height: 37px; }
  .tab-vertical-menu ul,
  .tab-vertical-menu tab-menu,
  tab-menu.tab-vertical-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    border: none; }
  .tab-vertical-menu ul a,
  .tab-vertical-menu tab-menu a,
  tab-menu.tab-vertical-menu a {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    text-align: center;
    color: #333;
    padding: 8px; }
  .tab-vertical-menu ul a.active,
  .tab-vertical-menu tab-menu a.active,
  tab-menu.tab-vertical-menu a.active {
    background: none; }
  .tab-vertical-menu ul a.active:before,
  .tab-vertical-menu tab-menu a.active:before,
  tab-menu .tab-vertical-menu a.active::before {
    width: 100%;
    height: 3px;
    top: inherit;
    bottom: 0; }
  .tab-vertical-menu li {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-negative: 0;
    flex-shrink: 0; } }

.tab-vertical-menu ul > li {
  list-style: none;
  margin: 0; }

.tab-vertical-container > section > h1 {
  display: none; }

.tab-vertical-undo {
  margin: 20px 0 0 0; }
  .tab-vertical-undo a {
    background: url("/images/vertical-undo.svg") left 2px no-repeat;
    background-size: 10px 18px;
    padding: 0 0 0 16px;
    display: inline-block; }
  @media (max-width: 559px) {
    .tab-vertical-undo {
      margin: 0 0 12px; } }

.tab-vertical-contents {
  -ms-flex-preferred-size: 800px;
      flex-basis: 800px; }

.c-eventRanking-table .ranking-rank,
#teamResults-table .ranking-rank,
#teamResults-table .rank .ranking-rank[value] {
  text-align: center;
  min-width: 30px;
  background: none;
  color: inherit;
  font-size: var(--fontSize-medium);
  font-weight: normal; }

#results .rank .ranking-rank,
.course-ranking-summary .ranking-rank,
.course-ranking-detail .ranking-rank {
  position: absolute;
  background: #ccc;
  color: #333;
  display: inline-block;
  min-width: 22px;
  height: 22px;
  text-align: center;
  line-height: 22px;
  border-radius: 11px;
  font-size: 11px;
  z-index: 100;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  top: 13px;
  left: 3px; }

.course-ranking-detail .ranking-rank {
  top: 19px; }

#results .rank .ranking-rank[value="1"],
#results .rank .ranking-rank[value="2"],
#results .rank .ranking-rank[value="3"],
.course-ranking-summary .ranking-rank[value="1"],
.course-ranking-summary .ranking-rank[value="2"],
.course-ranking-summary .ranking-rank[value="3"],
.course-ranking-detail .ranking-rank[value="1"],
.course-ranking-detail .ranking-rank[value="2"],
.course-ranking-detail .ranking-rank[value="3"] {
  background-size: 30px 30px;
  padding: 1px 0 0 0;
  width: 30px;
  height: 30px;
  border-radius: 0;
  font-size: 11px;
  top: 9px;
  left: 0; }

.course-ranking-detail .ranking-rank[value="1"],
.course-ranking-detail .ranking-rank[value="2"],
.course-ranking-detail .ranking-rank[value="3"] {
  top: 15px; }

#results .rank .ranking-rank[value="1"],
.course-ranking-summary .ranking-rank[value="1"],
.course-ranking-detail .ranking-rank[value="1"],
.ranking-detail unit-number[value="1"]::before {
  background: url("/images/icon-trophy-1.svg"); }

#results .rank .ranking-rank[value="2"],
.course-ranking-summary .ranking-rank[value="2"],
.course-ranking-detail .ranking-rank[value="2"],
.ranking-detail unit-number[value="2"]::before {
  background: url("/images/icon-trophy-2.svg"); }

#results .rank .ranking-rank[value="3"],
.course-ranking-summary .ranking-rank[value="3"],
.course-ranking-detail .ranking-rank[value="3"],
.ranking-detail unit-number[value="3"]::before {
  background: url("/images/icon-trophy-3.svg"); }

.ranking-detail unit-number[value="1"]::before {
  content: "1"; }

.ranking-detail unit-number[value="2"]::before {
  content: "2"; }

.ranking-detail unit-number[value="3"]::before {
  content: "3"; }

.ranking-name {
  font-size: 0.9rem;
  color: #333;
  font-weight: bold; }

.ranking-time {
  display: block;
  color: #999;
  font-size: 13px;
  line-height: 1.4; }

.ranking-detail {
  background: #f2f2f2;
  display: inline-block;
  color: #606060;
  padding: 1px 6px;
  font-size: 11px;
  border-radius: 12px;
  vertical-align: middle;
  margin: 0 0 0 4px; }
  .ranking-detail:empty {
    display: none; }
  .ranking-detail.male:before {
    content: "男性"; }
  .ranking-detail.female:before {
    content: "女性"; }
  .ranking-detail unit-number:before {
    font-size: 11px;
    width: 36px;
    height: 36px;
    background-repeat: no-repeat;
    background-size: 36px 36px;
    display: inline-block;
    position: absolute;
    left: 0;
    top: 0;
    text-align: center;
    padding: 5px 0 0 0;
    font-weight: bold;
    color: #333;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }

.ranking-list list-item a:not(:focus):not(:active):not(:hover) {
  text-decoration: none; }

.ranking-list unit-number[data-field="totalRank"]:not(:empty)::before {
  content: "(総合"; }

.ranking-list unit-number[data-field="maleRank"]:not(:empty)::before {
  content: "(男性"; }

.ranking-list unit-number[data-field="femaleRank"]:not(:empty)::before {
  content: "(女性"; }

.ranking-list unit-number[data-field="totalRank"]:not(:empty)::after,
.ranking-list unit-number[data-field="maleRank"]:not(:empty)::after,
.ranking-list unit-number[data-field="femaleRank"]:not(:empty)::after {
  content: ")"; }

unit-number[type="distance"] number-unit,
unit-number[type="elevation"] number-unit {
  cursor: default; }

rb-formatted-body rb-event-info:not([hidden]),
rb-formatted-body course-info:not([hidden]),
rb-formatted-body activity-log-info:not([hidden]) {
  display: block;
  white-space: normal;
  vertical-align: middle;
  border: 1px solid #e4e4e4;
  padding: 12px 16px 12px 120px;
  min-height: 116px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 420px;
  margin: 28px 0 0 0;
  position: relative; }
  rb-formatted-body rb-event-info:not([hidden]) a:hover,
  rb-formatted-body course-info:not([hidden]) a:hover,
  rb-formatted-body activity-log-info:not([hidden]) a:hover {
    text-decoration: none; }
  rb-formatted-body rb-event-info:not([hidden]) .activity-title,
  rb-formatted-body course-info:not([hidden]) .activity-title,
  rb-formatted-body activity-log-info:not([hidden]) .activity-title {
    font-size: 1rem;
    margin: 0 0 4px 0 !important; }
  rb-formatted-body rb-event-info:not([hidden]) .activity-thumb,
  rb-formatted-body course-info:not([hidden]) .activity-thumb,
  rb-formatted-body activity-log-info:not([hidden]) .activity-thumb {
    width: 90px;
    height: 90px;
    position: absolute;
    left: 16px; }
  rb-formatted-body rb-event-info:not([hidden]) .tags-list,
  rb-formatted-body course-info:not([hidden]) .tags-list,
  rb-formatted-body activity-log-info:not([hidden]) .tags-list {
    font-size: 0.8rem; }
  rb-formatted-body rb-event-info:not([hidden]) rb-tag-item a:not([hidden]),
  rb-formatted-body course-info:not([hidden]) rb-tag-item a:not([hidden]),
  rb-formatted-body activity-log-info:not([hidden]) rb-tag-item a:not([hidden]) {
    max-width: inherit; }
  rb-formatted-body rb-event-info:not([hidden]) .tags-item,
  rb-formatted-body course-info:not([hidden]) .tags-item,
  rb-formatted-body activity-log-info:not([hidden]) .tags-item {
    display: inline-block; }
  rb-formatted-body rb-event-info:not([hidden]) .activity-meta,
  rb-formatted-body course-info:not([hidden]) .activity-meta,
  rb-formatted-body activity-log-info:not([hidden]) .activity-meta {
    font-size: 0.8rem; }
  rb-formatted-body rb-event-info:not([hidden]) .photo,
  rb-formatted-body course-info:not([hidden]) .photo,
  rb-formatted-body activity-log-info:not([hidden]) .photo {
    margin: 0 !important; }
  @media (max-width: 559px) {
    rb-formatted-body rb-event-info:not([hidden]),
    rb-formatted-body course-info:not([hidden]),
    rb-formatted-body activity-log-info:not([hidden]) {
      width: 100%; } }

list-container:not([hidden]) {
  display: block; }

list-item:not([hidden]) {
  display: block; }

list-is-empty:not([hidden]) {
  display: block;
  font-size: var(--fontSize-xsmall);
  color: var(--color-darkGray);
  margin: 1em 0; }

.component-courseActivityUser {
  display: block;
  color: #333;
  margin: 8px 0 0 0;
  font-size: 0.9rem;
  font-weight: bold;
  position: relative;
  padding-left: 28px; }

.component-courseActivityUser-icon {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 0; }

.component-courseData {
  --paddingVertical: 20px;
  --paddingHorizontal: 30px;
  display: grid;
  gap: var(--paddingVertical) var(--paddingHorizontal);
  grid-template: "trns a1 a1" auto "a2   a3 a4" auto "a5   a6 a6" auto "a7   a7 a7" auto / 140px 1fr auto; }
  @media (max-width: 768px) {
    .component-courseData {
      --paddingVertical: 15px;
      --paddingHorizontal: 15px; } }
  @media (max-width: 768px) {
    .component-courseData {
      grid-template: "a2 a8 a8" auto "a1 a1 a4" auto "a5 a6 a6" auto "a7 a7 a7" auto "a3 a3 a3" auto / 70px 1fr auto; } }
  .component-courseData .component-courseData-header {
    grid-area: a1; }
    @media (max-width: 768px) {
      .component-courseData .component-courseData-header {
        margin: -8px 0 0; } }
  .component-courseData .component-courseData-courseTitle {
    font-size: var(--fontSize-xxxlarge);
    letter-spacing: 2px;
    line-height: var(--lineHeight-small);
    font-family: var(--fontFamily-sans); }
    @media (max-width: 768px) {
      .component-courseData .component-courseData-courseTitle {
        font-size: var(--fontSize-xlarge); } }
    .component-courseData .component-courseData-courseTitle a {
      color: currentColor; }
  .component-courseData .component-courseData-courseSummary {
    letter-spacing: 1px;
    font-family: var(--fontFamily-sans); }
    @media (max-width: 768px) {
      .component-courseData .component-courseData-courseSummary {
        font-size: var(--fontSize-xsmall); } }
  .component-courseData .component-courseData-location {
    grid-area: a2; }
    @media (max-width: 768px) {
      .component-courseData .component-courseData-location {
        grid-area: auto;
        display: contents; } }
    .component-courseData .component-courseData-location rb-tag-list[filter="prefs"] {
      margin: 1px 0 0; }
      @media (max-width: 768px) {
        .component-courseData .component-courseData-location rb-tag-list[filter="prefs"] {
          grid-area: a8; } }
    .component-courseData .component-courseData-location rb-tag-item:not(:last-child) a::after {
      content: "・"; }
    .component-courseData .component-courseData-location rb-tag-item:last-child a::after {
      content: "▶︎";
      display: inline-block;
      margin: 0 0 0 0.25em; }
    .component-courseData .component-courseData-location a {
      font-weight: normal;
      color: var(--color-black);
      margin: 0; }
  .component-courseData .component-courseData-location-label {
    font-size: 14px;
    font-family: var(--fontFamily-montserrat);
    font-weight: var(--fontWeight-montserrat-extraBold);
    letter-spacing: 1px; }
    @media (max-width: 768px) {
      .component-courseData .component-courseData-location-label {
        grid-area: a2; } }
  .component-courseData .component-courseData-authorAndPreserveArea {
    grid-area: a3;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    font-size: var(--fontSize-xsmall); }
    .component-courseData .component-courseData-authorAndPreserveArea popup-menu {
      -ms-flex-item-align: end;
          align-self: flex-end;
      position: relative; }
      @media (max-width: 768px) {
        .component-courseData .component-courseData-authorAndPreserveArea popup-menu {
          -ms-flex-item-align: auto;
              align-self: auto; } }
    .component-courseData .component-courseData-authorAndPreserveArea .course-popup-btn {
      height: 38px;
      margin: 0 var(--margin-small) 0 0; }
    .component-courseData .component-courseData-authorAndPreserveArea .course-popup-menu {
      margin: 0;
      width: 180px;
      border: 1px solid #e4e4e4;
      padding: 0;
      background: #fff;
      z-index: 100;
      text-align: left;
      border-radius: 2px;
      top: 100%;
      right: 0; }
      .component-courseData .component-courseData-authorAndPreserveArea .course-popup-menu menu-item:not([hidden]) {
        display: block; }
      .component-courseData .component-courseData-authorAndPreserveArea .course-popup-menu a,
      .component-courseData .component-courseData-authorAndPreserveArea .course-popup-menu button {
        color: #333 !important;
        display: block;
        padding: 10px 14px;
        font-size: 12px;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        width: 100%; }
        .component-courseData .component-courseData-authorAndPreserveArea .course-popup-menu a:hover, .component-courseData .component-courseData-authorAndPreserveArea .course-popup-menu a:focus,
        .component-courseData .component-courseData-authorAndPreserveArea .course-popup-menu button:hover,
        .component-courseData .component-courseData-authorAndPreserveArea .course-popup-menu button:focus {
          background-color: #f2f2f2;
          text-decoration: none; }
      .component-courseData .component-courseData-authorAndPreserveArea .course-popup-menu button {
        border-color: transparent;
        background-color: transparent;
        -webkit-appearance: none;
           -moz-appearance: none;
                appearance: none;
        text-align: left; }
      .component-courseData .component-courseData-authorAndPreserveArea .course-popup-menu hr {
        visibility: visible;
        border: none;
        border-top: 1px solid #e4e4e4;
        margin: 0; }
  .component-courseData .component-courseData-authorAndPreserve:has(rb-group-info) rb-group-info {
    position: static; }
  @media (max-width: 768px) {
    .component-courseData .component-courseData-authorAndPreserve:has(rb-group-info) {
      padding: 0 0 0 45px;
      position: relative; } }
  .component-courseData .component-courseData-authorAndPreserve a {
    font-size: var(--fontSize-xsmall);
    color: var(--color-black);
    display: inline-block; }
  .component-courseData .component-courseData-authorAndPreserve rb-group-info > a {
    width: 35px;
    height: 35px;
    vertical-align: top;
    margin: var(--margin-xsmall) 0 0; }
    @media (max-width: 768px) {
      .component-courseData .component-courseData-authorAndPreserve rb-group-info > a {
        margin: 0;
        position: absolute;
        top: 0;
        left: 0; } }
  .component-courseData .component-courseData-authorAndPreserve img {
    max-width: 100%;
    max-height: 100%;
    vertical-align: top;
    margin: 0; }
  .component-courseData .component-courseData-menu {
    grid-area: a4;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end; }
    @media (max-width: 768px) {
      .component-courseData .component-courseData-menu {
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start; } }
  .component-courseData .component-courseData-downloadGpx {
    background: url("/images/icon-gpx.svg") no-repeat;
    background-size: 20px 20px;
    background-position: 10px center;
    padding: 8px 12px 8px 36px; }
  @media (max-width: 768px) {
    .component-courseData .component-courseData-downloadGpx-hiddenIfMqSmall {
      display: none; } }
  .component-courseData .component-courseData-data {
    grid-area: a5;
    padding: var(--paddingVertical) 0 0; }
    .component-courseData .component-courseData-data .component-courseData-data-label {
      font-size: 14px;
      font-family: var(--fontFamily-montserrat);
      font-weight: var(--fontWeight-montserrat-extraBold);
      letter-spacing: 1px; }
    .component-courseData .component-courseData-data a {
      font-size: var(--fontSize-xsmall);
      color: var(--color-darkGray);
      line-height: var(--lineHeight-small);
      display: inline-block; }
      @media (max-width: 768px) {
        .component-courseData .component-courseData-data a {
          font-size: var(--fontSize-xxsmall); } }
    .component-courseData .component-courseData-data span {
      display: inline-block; }
  .component-courseData .component-courseData-stats {
    grid-area: a6;
    position: relative; }
    .component-courseData .component-courseData-stats::before {
      content: "";
      position: absolute;
      top: 0;
      left: -170px;
      display: block;
      border-top: 1px dashed var(--color-black);
      width: calc(100% + 170px); }
      @media (max-width: 768px) {
        .component-courseData .component-courseData-stats::before {
          left: -85px;
          width: calc(100% + 85px); } }
  .component-courseData .component-courseData-statsDetails {
    grid-area: a7;
    border-bottom: 1px dashed var(--color-black);
    padding: 0 0 0 170px;
    position: relative; }
    @media (max-width: 768px) {
      .component-courseData .component-courseData-statsDetails {
        padding: 0; } }
    .component-courseData .component-courseData-statsDetails summary {
      font-size: var(--fontSize-xsmall);
      color: var(--color-darkGray);
      position: absolute;
      bottom: calc(100% + var(--paddingVertical));
      left: 0; }
      @media (max-width: 768px) {
        .component-courseData .component-courseData-statsDetails summary {
          position: static;
          font-size: var(--fontSize-xxsmall);
          padding: 0 0 var(--paddingVertical) 85px; } }
    .component-courseData .component-courseData-statsDetails route-stats {
      display: block;
      margin: 0 0 var(--paddingVertical); }

.component-courseStats {
  --paddingVertical: 20px;
  --paddingHorizontal: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  @media (max-width: 768px) {
    .component-courseStats {
      --paddingVertical: 15px;
      --paddingHorizontal: 15px; } }
  @media (max-width: 768px) {
    .component-courseStats {
      position: relative; } }
  .component-courseStats .component-courseStats-tags {
    margin: var(--paddingVertical) var(--margin-large) 0 -5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    @media (max-width: 768px) {
      .component-courseStats .component-courseStats-tags {
        position: absolute;
        bottom: 0;
        left: 50%;
        margin: var(--paddingVertical) 0 0 -5px; } }
  .component-courseStats rb-tag-list[filter="levels"] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: var(--margin-small); }
    .component-courseStats rb-tag-list[filter="levels"] rb-tag-item {
      display: block;
      width: 68px;
      height: 68px;
      border-radius: 34px;
      background: var(--color-lightGray);
      position: relative; }
      @media (max-width: 768px) {
        .component-courseStats rb-tag-list[filter="levels"] rb-tag-item {
          width: 40px;
          height: 40px;
          border-radius: 20px; } }
      .component-courseStats rb-tag-list[filter="levels"] rb-tag-item::before {
        font-size: 14px;
        font-family: var(--fontFamily-montserrat);
        font-weight: var(--fontWeight-montserrat-extraBold);
        letter-spacing: 1px;
        font-size: 8px;
        content: "LEVEL";
        display: block;
        position: absolute;
        top: 12px;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
        letter-spacing: 1px; }
        @media (max-width: 768px) {
          .component-courseStats rb-tag-list[filter="levels"] rb-tag-item::before {
            font-size: 6px;
            top: 7px; } }
      .component-courseStats rb-tag-list[filter="levels"] rb-tag-item::after {
        font-size: 40px;
        font-weight: var(--fontWeight-bold);
        content: "?";
        display: block;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 68px;
        height: 58px;
        line-height: 58px;
        text-align: center; }
        @media (max-width: 768px) {
          .component-courseStats rb-tag-list[filter="levels"] rb-tag-item::after {
            font-size: 20px;
            width: 40px;
            height: 30px;
            line-height: 30px; } }
      .component-courseStats rb-tag-list[filter="levels"] rb-tag-item[name="初心者向け"] {
        background: var(--courseLevelColor-a); }
        .component-courseStats rb-tag-list[filter="levels"] rb-tag-item[name="初心者向け"]::after {
          content: "A"; }
      .component-courseStats rb-tag-list[filter="levels"] rb-tag-item[name="中級者向け"] {
        background: var(--courseLevelColor-b); }
        .component-courseStats rb-tag-list[filter="levels"] rb-tag-item[name="中級者向け"]::after {
          content: "B"; }
      .component-courseStats rb-tag-list[filter="levels"] rb-tag-item[name="上級者向け"] {
        background: var(--courseLevelColor-c); }
        .component-courseStats rb-tag-list[filter="levels"] rb-tag-item[name="上級者向け"]::after {
          content: "C"; }
      .component-courseStats rb-tag-list[filter="levels"] rb-tag-item[name="超上級者向け"] {
        background: var(--courseLevelColor-d); }
        .component-courseStats rb-tag-list[filter="levels"] rb-tag-item[name="超上級者向け"]::after {
          content: "D"; }
      .component-courseStats rb-tag-list[filter="levels"] rb-tag-item a {
        position: relative;
        z-index: 1;
        display: block;
        width: 68px;
        height: 68px;
        opacity: 0; }
  .component-courseStats route-stats {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    @media (max-width: 768px) {
      .component-courseStats route-stats {
        display: block;
        width: 100%; } }
  .component-courseStats ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0; }
    @media (max-width: 768px) {
      .component-courseStats ul {
        margin: var(--paddingVertical) 0 0;
        display: grid;
        grid-template: "distance   cumulativeGain" 40px "trailRatio trans" 40px / 1fr 1fr;
        row-gap: var(--paddingVertical); } }
  .component-courseStats li {
    margin: var(--paddingVertical) var(--margin-large) 0 0; }
    @media (max-width: 768px) {
      .component-courseStats li {
        margin: 0; } }
  @media (max-width: 768px) {
    .component-courseStats .component-courseStats-distance {
      grid-area: distance; } }
  @media (max-width: 768px) {
    .component-courseStats .component-courseStats-cumulativeGain {
      grid-area: cumulativeGain; } }
  @media (max-width: 768px) {
    .component-courseStats .component-courseStats-trailRatio {
      grid-area: trailRatio; } }
  .component-courseStats span {
    display: block; }
  .component-courseStats a {
    font-size: var(--fontSize-xsmall);
    color: var(--color-darkGray); }
  .component-courseStats .component-courseStats-title {
    font-size: var(--fontSize-xsmall);
    color: var(--color-darkGray); }
  .component-courseStats .component-courseStats-value {
    font-family: var(--fontFamily-montserrat);
    font-weight: var(--fontWeight-montserrat-bold);
    letter-spacing: 1px;
    font-size: 45px;
    line-height: 1; }
    @media (max-width: 768px) {
      .component-courseStats .component-courseStats-value {
        font-size: var(--fontSize-large); } }
  .component-courseStats number-unit,
  .component-courseStats .component-courseStats-value-cumulativeGain {
    font-size: var(--fontSize-xlarge); }
    @media (max-width: 768px) {
      .component-courseStats number-unit,
      .component-courseStats .component-courseStats-value-cumulativeGain {
        font-size: var(--fontSize-xsmall); } }

.component-courseStats .component-courseStats-value unit-number[altunit],
.component-courseStats .component-courseStats-value unit-number[altunit] number-unit {
  font-size: var(--fontSize-medium); }

.component-courseMap .map-controller:not([hidden]) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.course-map {
  position: relative; }
  .course-map route-map {
    display: block;
    height: 24em;
    position: relative; }
    @media (max-width: 768px) {
      .course-map route-map {
        max-height: calc(100vh - 2em);
        height: 18em;
        margin: 0; } }

.component-coverImage {
  width: 100%;
  padding-top: 45%;
  position: relative;
  background: var(--color-lightGray); }
  .component-coverImage img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    vertical-align: top; }

.component-coverImage-edit {
  position: absolute;
  right: var(--margin-default);
  bottom: var(--margin-default);
  color: rgba(255, 255, 255, 0.8);
  display: inline-block;
  border: 1px solid rgba(255, 255, 255, 0.8);
  padding: 4px 12px;
  font-size: 0.9rem;
  background: rgba(0, 0, 0, 0.3); }
  .component-coverImage-edit:hover, .component-coverImage-edit:focus {
    text-decoration: none;
    opacity: 0.8; }
  @media (max-width: 768px) {
    .component-coverImage-edit {
      right: 20px;
      bottom: 20px; } }

.stats, .stats-detail, .stats-detail-2x {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 8px 0 12px 0; }
  .stats:not([hidden]), .stats-detail:not([hidden]), .stats-detail-2x:not([hidden]) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  @media (max-width: 559px) {
    .stats, .stats-detail, .stats-detail-2x {
      display: block;
      padding: 0;
      margin: 8px 0; } }
  .stats a, .stats-detail a, .stats-detail-2x a {
    color: #333; }
  .stats .user-link, .stats-detail .user-link, .stats-detail-2x .user-link {
    margin-top: 0; }
  .stats p, .stats-detail p, .stats-detail-2x p {
    margin: 0; }

.stats-detail .stats-block {
  width: 25%; }
  @media (max-width: 559px) {
    .stats-detail .stats-block {
      width: 50%; } }

.stats-detail-2x .stats-block {
  width: 50%; }
  @media (max-width: 559px) {
    .stats-detail-2x .stats-block {
      width: 100%; } }

.stats-block {
  margin: 0 0 12px;
  padding-right: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  @media (max-width: 559px) {
    .stats-block:not([hidden]) {
      display: inline-block; } }
  .stats-block dd {
    margin: 0;
    --timejs-serialization: dtsjp3; }

.stats-title {
  font-size: 11px;
  color: #999;
  line-height: 1;
  margin-right: 2px; }
  .stats-title a {
    color: #999;
    text-decoration: none; }
  @media (max-width: 559px) {
    .stats-title {
      display: inline-block;
      width: auto;
      margin-right: 0; } }

.stats-value {
  font-size: 17px;
  font-family: arial, sans-serif;
  font-weight: bold; }
  @media (max-width: 559px) {
    .stats-value {
      font-size: 16px; } }

.stats-value a:not(:hover):not(:active):not(:focus) {
  color: inherit;
  background: transparent;
  text-decoration: none; }

.stats-value account-info a {
  position: static; }

.stats-value account-info img {
  width: 32px;
  height: 32px;
  vertical-align: middle; }

.status-props {
  margin-left: auto;
  font-size: 12px; }
  .status-props number-value {
    font-family: arial, sans-serif;
    font-size: 16px;
    font-weight: bold; }
  @media (max-width: 559px) {
    .status-props {
      display: none; } }

.component-commentSection-title {
  font-size: 1.2rem;
  margin: 0 var(--margin-default) 1em 0;
  letter-spacing: 0.04em; }
  .component-commentSection-title a {
    color: #333;
    text-decoration: none; }

.comment-more-options {
  padding: var(--margin-default); }

.component-objectMenu.component-objectMenu-right .component-objectMenu-menu {
  right: 0; }

.component-objectMenu .component-objectMenu-button {
  border-color: transparent;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 4px;
  width: 20px;
  height: 20px;
  background-position: center;
  background-image: url("/images/menu.svg");
  background-size: 20px 20px;
  background-repeat: no-repeat;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: inline-block;
  margin: 0 0 0 2px; }
  .component-objectMenu .component-objectMenu-button:hover {
    background-image: url("/images/menu-hover.svg"); }
  popup-menu[open] .component-objectMenu .component-objectMenu-button {
    background-image: url("/images/menu-focus.svg"); }

.component-objectMenu .component-objectMenu-menu {
  margin: 0;
  width: 180px;
  border: 1px solid #e4e4e4;
  padding: 0;
  background: #fff;
  z-index: 100;
  text-align: left;
  border-radius: 2px; }
  .component-objectMenu .component-objectMenu-menu menu-item:not([hidden]) {
    display: block; }
  .component-objectMenu .component-objectMenu-menu a,
  .component-objectMenu .component-objectMenu-menu button {
    color: #333 !important;
    display: block;
    padding: 10px 14px;
    font-size: 12px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%; }
    .component-objectMenu .component-objectMenu-menu a:hover, .component-objectMenu .component-objectMenu-menu a:focus,
    .component-objectMenu .component-objectMenu-menu button:hover,
    .component-objectMenu .component-objectMenu-menu button:focus {
      background-color: #f2f2f2;
      text-decoration: none; }
  .component-objectMenu .component-objectMenu-menu button {
    border-color: transparent;
    background-color: transparent;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    text-align: left; }
  .component-objectMenu .component-objectMenu-menu hr {
    visibility: visible;
    border: none;
    border-top: 1px solid #e4e4e4;
    margin: 0; }

.component-weakText {
  font-size: var(--fontSize-xsmall);
  color: var(--color-darkGray);
  line-height: var(--lineHeight-small); }

.component-steps {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  margin: var(--margin-large);
  font-size: var(--fontSize-xsmall);
  line-height: var(--lineHeight-small);
  padding: 0; }
  @media (max-width: 559px) {
    .component-steps {
      margin: var(--margin-default) 0 var(--margin-large); } }
  .component-steps li {
    width: 25%;
    list-style: none; }
    .component-steps li:first-child div::before {
      display: none; }
  .component-steps div {
    display: block;
    padding: 35px var(--margin-xsmall) 0;
    position: relative; }
    .component-steps div.isCompleted::before, .component-steps div.isCurrent::before {
      border-top: 2px solid var(--color-primary); }
    .component-steps div.isCompleted::after, .component-steps div.isCurrent::after {
      background: var(--color-primary); }
    .component-steps div.isCompleted::after {
      content: "";
      background-image: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjI2IiB2aWV3Qm94PSIwIDAgMjYgMjYiIHdpZHRoPSIyNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtNS41IDEyLjQ5MiA1LjE5MiA1LjU5MSA5LjgwOC0xMC41NjEiIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIiBzdHJva2Utd2lkdGg9IjIuMDAwMTMiLz48L3N2Zz4=);
      width: 26px;
      height: 26px;
      margin: 0; }
    .component-steps div::before {
      content: "";
      display: block;
      height: 0;
      width: 100%;
      border-top: 1px dashed var(--color-primary);
      position: absolute;
      top: 13px;
      right: 50%; }
    .component-steps div::after {
      content: "";
      display: block;
      border: 1px solid var(--color-primary);
      border-radius: 50%;
      width: 12px;
      height: 12px;
      margin: 6px 0 0;
      position: absolute;
      top: 0;
      left: 50%;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%);
      background: var(--color-white);
      z-index: 1; }

.c-trackHeader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 80px;
  color: var(--color-ibukiLightGray);
  z-index: 2;
  -webkit-transition: background 0.1s;
  transition: background 0.1s; }
  @media (max-width: 768px) {
    .c-trackHeader {
      height: var(--button-height); } }
  .c-trackHeader.isScrolled {
    background: var(--color-ibukiDarkGray); }
  .c-trackHeader .wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 100%; }
    @media (max-width: 610px) {
      .c-trackHeader .wrapper {
        padding-right: 8px; } }
    @media (max-width: 350px) {
      .c-trackHeader .wrapper {
        padding-right: 0; } }
  .c-trackHeader hgroup {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0; }
  .c-trackHeader .logo a:hover, .c-trackHeader .logo a:focus {
    color: inherit; }
  .c-trackHeader .logo svg {
    max-height: 22px;
    width: auto;
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px); }
    @media (max-width: 768px) {
      .c-trackHeader .logo svg {
        max-height: 18px; } }

@media (max-width: 350px) {
  .c-trackHeader-pcLinks {
    display: none; } }

.c-trackHeader-pcLinks ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transform: translateY(-0.5px);
          transform: translateY(-0.5px); }
  .c-trackHeader-pcLinks ul li:nth-last-child(2) a {
    padding-right: 24px; }
  .c-trackHeader-pcLinks ul a:not(.btn-outline-medium) {
    display: block;
    color: var(--color-ibukiLightGray);
    font-size: 14px;
    padding: 7px 12px; }
    @media (max-width: 768px) {
      .c-trackHeader-pcLinks ul a:not(.btn-outline-medium) {
        padding: 4px 10px; } }
    @media (max-width: 610px) {
      .c-trackHeader-pcLinks ul a:not(.btn-outline-medium) {
        display: none; } }
  @media (max-width: 768px) {
    .c-trackHeader-pcLinks ul .btn-outline-medium {
      border-color: transparent;
      background-color: transparent;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      background-color: transparent;
      color: #64b72f;
      padding: 4px 10px;
      font-size: 13px;
      border: 1px solid #64b72f;
      text-align: center; }
      .c-trackHeader-pcLinks ul .btn-outline-medium:not([hidden]) {
        display: inline-block; }
      .c-trackHeader-pcLinks ul .btn-outline-medium:hover, .c-trackHeader-pcLinks ul .btn-outline-medium:active, .c-trackHeader-pcLinks ul .btn-outline-medium:focus {
        background-color: rgba(100, 183, 47, 0.2);
        text-decoration: none; } }

.c-trackHeader-spLinks {
  position: relative;
  display: none; }
  @media (max-width: 610px) {
    .c-trackHeader-spLinks {
      display: block; } }
  .c-trackHeader-spLinks ul {
    display: none;
    margin: 0;
    width: 150px;
    border: 1px solid #e4e4e4;
    padding: 0;
    background: #fff;
    z-index: 100;
    text-align: left;
    border-radius: 2px;
    position: absolute;
    top: 100%;
    right: 8px; }
    .c-trackHeader-spLinks ul menu-item:not([hidden]) {
      display: block; }
    .c-trackHeader-spLinks ul a,
    .c-trackHeader-spLinks ul button {
      color: #333 !important;
      display: block;
      padding: 10px 14px;
      font-size: 12px;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      width: 100%; }
      .c-trackHeader-spLinks ul a:hover, .c-trackHeader-spLinks ul a:focus,
      .c-trackHeader-spLinks ul button:hover,
      .c-trackHeader-spLinks ul button:focus {
        background-color: #f2f2f2;
        text-decoration: none; }
    .c-trackHeader-spLinks ul button {
      border-color: transparent;
      background-color: transparent;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      text-align: left; }
    .c-trackHeader-spLinks ul hr {
      visibility: visible;
      border: none;
      border-top: 1px solid #e4e4e4;
      margin: 0; }
    .c-trackHeader-spLinks ul.isOpened {
      display: block; }
  .c-trackHeader-spLinks button {
    background: transparent;
    color: var(--color-white);
    border: none;
    height: var(--button-height);
    width: var(--button-height); }

.c-trackCta {
  background: var(--color-brand);
  color: var(--color-white);
  padding: var(--margin-xlarge) 0; }
  @media (max-width: 768px) {
    .c-trackCta {
      padding: var(--margin-large) 0; } }
  .c-trackCta .c-trackCta-contents {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    @media (max-width: 768px) {
      .c-trackCta .c-trackCta-contents {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        gap: var(--margin-large); } }
  .c-trackCta .c-trackCta-head {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0; }
    @media (max-width: 768px) {
      .c-trackCta .c-trackCta-head {
        width: 100%; } }
  .c-trackCta .c-trackCta-title {
    font-size: var(--fontSize-xxlarge);
    font-family: var(--fontFamily-montserrat); }
    @media (max-width: 768px) {
      .c-trackCta .c-trackCta-title {
        font-size: var(--fontSize-xlarge); } }
    @media (max-width: 350px) {
      .c-trackCta .c-trackCta-title {
        font-size: var(--fontSize-large); } }
    .c-trackCta .c-trackCta-title span {
      display: block; }
  .c-trackCta .c-trackCta-button {
    margin: var(--margin-medium) 0 0; }
  .c-trackCta .c-trackCta-list {
    width: 55%; }
    @media (max-width: 1024px) {
      .c-trackCta .c-trackCta-list {
        width: 50%; } }
    @media (max-width: 850px) {
      .c-trackCta .c-trackCta-list {
        width: 45%; } }
    @media (max-width: 768px) {
      .c-trackCta .c-trackCta-list {
        width: 100%;
        margin: var(--margin-small) 0 0; } }
    .c-trackCta .c-trackCta-list ul {
      margin: 0 auto;
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: var(--margin-large); }
      @media (max-width: 768px) {
        .c-trackCta .c-trackCta-list ul {
          gap: var(--margin-default); } }
    .c-trackCta .c-trackCta-list li {
      border: 1px solid var(--color-white);
      padding: var(--margin-default) calc(var(--margin-default) + var(--margin-xsmall));
      border-radius: var(--borderRadius-large);
      font-weight: var(--fontWeight-bold);
      font-size: var(--fontSize-small);
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
      @media (max-width: 768px) {
        .c-trackCta .c-trackCta-list li {
          border-radius: var(--borderRadius-default);
          padding: var(--margin-default); } }
    .c-trackCta .c-trackCta-list span {
      text-align: left; }

.c-trackSectionTitle {
  font-size: var(--fontSize-xxxlarge);
  line-height: var(--lineHeight-small);
  font-family: var(--fontFamily-montserrat); }
  @media (max-width: 768px) {
    .c-trackSectionTitle {
      font-size: var(--fontSize-xxlarge); } }
  @media (max-width: 559px) {
    .c-trackSectionTitle {
      font-size: var(--fontSize-large); } }
  .c-trackSectionTitle.c-trackSectionTitle-center {
    text-align: center;
    margin: 0 20%; }
    @media (max-width: 768px) {
      .c-trackSectionTitle.c-trackSectionTitle-center {
        margin: 0 15%; } }
    @media (max-width: 559px) {
      .c-trackSectionTitle.c-trackSectionTitle-center {
        margin: 0 10%; } }
  .c-trackSectionTitle span {
    display: inline-block; }

.c-trackSectionLead {
  margin: var(--margin-medium) auto calc(var(--margin-large) + var(--margin-small));
  max-width: 768px;
  text-align: center;
  line-height: var(--lineHeight-large); }
  @media (max-width: 768px) {
    .c-trackSectionLead {
      text-align: left;
      margin: var(--margin-medium) auto var(--margin-large); } }
  .c-trackSectionLead span {
    text-align: left;
    display: inline-block; }
    @media (max-width: 768px) {
      .c-trackSectionLead span {
        display: inline; } }

.c-trackFaq section {
  margin: calc(var(--margin-large) + var(--margin-default)) 0 0; }
  .c-trackFaq section:first-of-type {
    margin: var(--margin-large) 0 0; }
  .c-trackFaq section h1 {
    line-height: 1;
    margin: 0 0 var(--margin-default);
    font-size: var(--fontSize-small);
    font-weight: var(--fontWeight-normal); }

.c-trackFaq details {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  border-top: 1px solid var(--borderColor-default); }
  .c-trackFaq details:last-child {
    border-bottom: 1px solid var(--borderColor-default); }
  .c-trackFaq details[open] {
    padding: 0 0 var(--margin-default); }
    .c-trackFaq details[open] summary {
      padding: var(--margin-default) 0 calc(var(--margin-small) + var(--margin-xsmall)); }
      .c-trackFaq details[open] summary svg {
        -webkit-transform: translateY(-3px) rotate(90deg);
                transform: translateY(-3px) rotate(90deg); }
  .c-trackFaq details summary {
    padding: var(--margin-default) 0;
    font-size: var(--fontSize-medium);
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: var(--margin-default);
    line-height: var(--lineHeight-small); }
    .c-trackFaq details summary::-webkit-details-marker {
      display: none; }
    @media (max-width: 768px) {
      .c-trackFaq details summary {
        font-size: var(--fontSize-default); } }
    .c-trackFaq details summary svg {
      -webkit-transition: -webkit-transform 0.1s;
      transition: -webkit-transform 0.1s;
      transition: transform 0.1s;
      transition: transform 0.1s, -webkit-transform 0.1s;
      -webkit-transform: translateY(-2px);
              transform: translateY(-2px); }
    .c-trackFaq details summary span {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      min-width: 0; }
  .c-trackFaq details p,
  .c-trackFaq details ul {
    margin: 0 0 0 calc(20px + var(--margin-default)); }
    @media (max-width: 768px) {
      .c-trackFaq details p,
      .c-trackFaq details ul {
        font-size: var(--fontSize-small); } }
    .c-trackFaq details p + p,
    .c-trackFaq details p + ul,
    .c-trackFaq details ul + p,
    .c-trackFaq details ul + ul {
      margin-top: var(--margin-small); }

.c-trackPager {
  background: var(--color-ibukiLightGray); }
  .c-trackPager ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .c-trackPager li {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }
    .c-trackPager li.c-trackPager-prev svg {
      -webkit-transform: rotate(180deg) translateY(0.125em);
              transform: rotate(180deg) translateY(0.125em); }
  .c-trackPager a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: var(--margin-small);
    font-size: var(--fontSize-xlarge);
    font-weight: var(--fontWeight-bold);
    padding: var(--margin-xlarge) 0; }
    @media (max-width: 768px) {
      .c-trackPager a {
        font-size: var(--fontSize-large);
        padding: var(--margin-large) 0; } }
  .c-trackPager svg {
    min-height: 1em;
    width: auto;
    -webkit-transform: translateY(-0.05em);
            transform: translateY(-0.05em); }

.c-trackVoices {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-medium);
  margin: var(--margin-large) 0 0; }
  @media (max-width: 768px) {
    .c-trackVoices {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }
  .c-trackVoices figure,
  .c-trackVoices blockquote {
    margin: 0; }
  .c-trackVoices figure {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    background: var(--bgColor-beige);
    padding: var(--margin-large);
    border-radius: var(--borderRadius-large);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    @media (max-width: 768px) {
      .c-trackVoices figure {
        padding: var(--margin-medium); } }
    @media (max-width: 768px) {
      .c-trackVoices figure svg {
        width: 36px;
        height: 36px; } }
  .c-trackVoices blockquote {
    margin: var(--margin-medium) 0;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    line-height: var(--lineHeight-large); }
    @media (max-width: 768px) {
      .c-trackVoices blockquote {
        margin: var(--margin-default) 0;
        font-size: var(--fontSize-small); } }
  .c-trackVoices figcaption {
    font-size: var(--fontSize-xsmall);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: var(--margin-default); }
    .c-trackVoices figcaption img {
      width: 36px;
      height: 36px;
      border-radius: 18px;
      background: var(--color-mediumGray); }
    .c-trackVoices figcaption strong {
      display: block; }

.c-gpsHeader {
  margin: 1px 0 0;
  position: sticky;
  top: 0;
  background: var(--bgColor-white);
  z-index: 3;
  -webkit-box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.1); }
  .c-gpsHeader .wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-top: 8px;
    padding-bottom: 8px; }
    @media (max-width: 1080px) {
      .c-gpsHeader .wrapper {
        padding: 8px 24px 8px 30px; } }
    @media (max-width: 768px) {
      .c-gpsHeader .wrapper {
        padding: 8px 20px; } }
    @media (max-width: 800px) {
      .c-gpsHeader .wrapper {
        padding: 0 8px 0 20px; } }
    @media (max-width: 350px) {
      .c-gpsHeader .wrapper {
        padding: 0 8px 0 12px; } }
  .c-gpsHeader h1 {
    font-size: var(--fontSize-medium); }
    @media (max-width: 768px) {
      .c-gpsHeader h1 {
        font-size: var(--fontSize-default); } }
    .c-gpsHeader h1 a {
      text-decoration: none; }

.c-gpsHeader-pcLinks {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px; }
  @media (max-width: 800px) {
    .c-gpsHeader-pcLinks {
      display: none; } }
  .c-gpsHeader-pcLinks a {
    font-size: var(--fontSize-small); }
    .c-gpsHeader-pcLinks a:not([class^="btn-"]) {
      margin: 0 var(--margin-default) 0 0;
      color: var(--color-black); }

.c-gpsHeader-spLinks {
  position: relative;
  display: none; }
  @media (max-width: 800px) {
    .c-gpsHeader-spLinks {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      gap: 8px; } }
  .c-gpsHeader-spLinks ul {
    display: none;
    margin: 0;
    width: 150px;
    border: 1px solid #e4e4e4;
    padding: 0;
    background: #fff;
    z-index: 100;
    text-align: left;
    border-radius: 2px;
    position: absolute;
    top: 100%;
    right: 8px; }
    .c-gpsHeader-spLinks ul menu-item:not([hidden]) {
      display: block; }
    .c-gpsHeader-spLinks ul a,
    .c-gpsHeader-spLinks ul button {
      color: #333 !important;
      display: block;
      padding: 10px 14px;
      font-size: 12px;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      width: 100%; }
      .c-gpsHeader-spLinks ul a:hover, .c-gpsHeader-spLinks ul a:focus,
      .c-gpsHeader-spLinks ul button:hover,
      .c-gpsHeader-spLinks ul button:focus {
        background-color: #f2f2f2;
        text-decoration: none; }
    .c-gpsHeader-spLinks ul button {
      border-color: transparent;
      background-color: transparent;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      text-align: left; }
    .c-gpsHeader-spLinks ul hr {
      visibility: visible;
      border: none;
      border-top: 1px solid #e4e4e4;
      margin: 0; }
    .c-gpsHeader-spLinks ul.isOpened {
      display: block; }
  .c-gpsHeader-spLinks button {
    background: transparent;
    border: none;
    height: var(--button-height);
    width: var(--button-height); }

.c-gpsFooter + #globalFooter {
  margin: 0; }

.c-gpsFooter .c-gpsFooter-pricingTitle {
  padding: var(--margin-xlarge) 0 calc( var(--margin-xxlarge) * 2 + var(--margin-xlarge) + var(--margin-large) + var(--margin-medium)); }
  @media (max-width: 768px) {
    .c-gpsFooter .c-gpsFooter-pricingTitle {
      padding: var(--margin-large) 0 calc( var(--margin-xxlarge) * 2 + var(--margin-xlarge) + var(--margin-medium)); } }

.c-gpsFooter .c-gpsFooter-buy {
  background: var(--bgColor-white);
  padding: var(--margin-xlarge);
  border-radius: var(--borderRadius-large);
  margin: calc((var(--margin-xxlarge) * 2 + var(--margin-xlarge)) * -1) 0 0;
  border: 2px solid var(--borderColor-black); }
  @media (max-width: 768px) {
    .c-gpsFooter .c-gpsFooter-buy {
      padding: var(--margin-medium); } }

.c-gpsFooter .c-gpsFooter-buy-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: calc(var(--margin-large) + var(--margin-default)); }
  @media (max-width: 768px) {
    .c-gpsFooter .c-gpsFooter-buy-info {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: var(--margin-medium); } }

.c-gpsFooter .c-gpsFooter-buy-image {
  width: 270px; }
  @media (max-width: 768px) {
    .c-gpsFooter .c-gpsFooter-buy-image {
      width: auto;
      margin: var(--margin-default); } }
  .c-gpsFooter .c-gpsFooter-buy-image img {
    max-width: 100%;
    height: auto; }

.c-gpsFooter .c-gpsFooter-buy-description {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: var(--margin-small);
  width: 100%; }
  @media (max-width: 768px) {
    .c-gpsFooter .c-gpsFooter-buy-description h1 {
      text-align: center; } }

.c-gpsFooter .c-gpsFooter-buy-price {
  font-size: var(--fontSize-medium);
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 0.5px; }
  @media (max-width: 768px) {
    .c-gpsFooter .c-gpsFooter-buy-price {
      text-align: center;
      font-size: var(--fontSize-default);
      line-height: var(--lineHeight-small);
      margin: var(--margin-default) 0 0; } }
  .c-gpsFooter .c-gpsFooter-buy-price span {
    display: inline-block; }
    @media (max-width: 768px) {
      .c-gpsFooter .c-gpsFooter-buy-price span {
        display: block; } }

.c-gpsFooter .c-gpsFooter-buy-price-plus {
  margin: 0 0.5em; }
  @media (max-width: 768px) {
    .c-gpsFooter .c-gpsFooter-buy-price-plus {
      margin: 0; } }

.c-gpsFooter .c-gpsFooter-buy-buttons {
  margin: calc(var(--margin-small) + var(--margin-xxsmall)) 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-small); }
  @media (max-width: 768px) {
    .c-gpsFooter .c-gpsFooter-buy-buttons {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      margin: var(--margin-large) 0 0; } }
  .c-gpsFooter .c-gpsFooter-buy-buttons a {
    width: 120px; }
    @media (max-width: 850px) {
      .c-gpsFooter .c-gpsFooter-buy-buttons a {
        width: auto; } }
    .c-gpsFooter .c-gpsFooter-buy-buttons a span {
      display: inline-block; }

.c-gpsFooter .c-gpsFooter-buy-subscription {
  margin: var(--margin-large) var(--margin-small) 0;
  color: var(--color-darkGray); }
  @media (max-width: 768px) {
    .c-gpsFooter .c-gpsFooter-buy-subscription {
      margin: var(--margin-large) 0 0;
      font-size: var(--fontSize-small); } }

.c-gpsFooter .c-gpsFooter-pricingOptions {
  margin: var(--margin-large) 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-large); }
  @media (max-width: 768px) {
    .c-gpsFooter .c-gpsFooter-pricingOptions {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: var(--margin-medium);
      margin: var(--margin-medium) 0; } }
  .c-gpsFooter .c-gpsFooter-pricingOptions section {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    background: var(--bgColor-beige);
    padding: var(--margin-large);
    border-radius: var(--borderRadius-large); }
    @media (max-width: 768px) {
      .c-gpsFooter .c-gpsFooter-pricingOptions section {
        padding: var(--margin-medium); } }
    .c-gpsFooter .c-gpsFooter-pricingOptions section div {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      gap: var(--margin-large); }
  .c-gpsFooter .c-gpsFooter-pricingOptions h1 {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    font-size: var(--fontSize-large);
    line-height: var(--lineHeight-small); }
    @media (max-width: 768px) {
      .c-gpsFooter .c-gpsFooter-pricingOptions h1 {
        font-size: var(--fontSize-default); } }
    .c-gpsFooter .c-gpsFooter-pricingOptions h1 span {
      display: inline-block; }

.c-gpsFooter .c-gpsFooter-pricingOptions-description {
  margin: var(--margin-default) 0 0;
  font-size: var(--fontSize-small);
  color: var(--color-darkGray); }

.c-gpsFooter .c-gpsFooter-faq {
  margin: var(--margin-xlarge) 0; }
  @media (max-width: 768px) {
    .c-gpsFooter .c-gpsFooter-faq {
      margin: calc(var(--margin-large) + var(--margin-default)) 0 var(--margin-large); } }

.c-gpsFooter .c-gpsFooter-help {
  text-align: center; }

.c-gpsFooter .c-gpsFooter-desclaimer {
  margin: var(--margin-xlarge) 0 0;
  background: var(--color-ibukiGray);
  padding: var(--margin-medium) 0;
  font-size: var(--fontSize-small);
  color: var(--color-lightGray); }
  @media (max-width: 768px) {
    .c-gpsFooter .c-gpsFooter-desclaimer {
      margin: var(--margin-large) 0 0; } }

.component-visibilityHidden {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  white-space: nowrap;
  -webkit-clip-path: polygon(0 0, 1px 0, 1px 1px, 0 1px);
          clip-path: polygon(0 0, 1px 0, 1px 1px, 0 1px); }

.component-courseListItemMedium {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important; }
  .component-courseListItemMedium .component-courseListItemMedium-mainLink:hover, .component-courseListItemMedium .component-courseListItemMedium-mainLink:focus {
    text-decoration: none; }
    .component-courseListItemMedium .component-courseListItemMedium-mainLink:hover .activity-title strong, .component-courseListItemMedium .component-courseListItemMedium-mainLink:focus .activity-title strong {
      text-decoration: underline; }
  .component-courseListItemMedium .component-courseListItemMedium-thumb {
    position: relative;
    width: 120px;
    margin: 0 var(--margin-default) 0 0; }
    .component-courseListItemMedium .component-courseListItemMedium-thumb .activity-thumb {
      width: 120px; }
  .component-courseListItemMedium .component-courseListItemMedium-detail {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0; }

.component-eventListItem:hover, .component-eventListItem:focus {
  text-decoration: none; }
  .component-eventListItem:hover .activity-title strong, .component-eventListItem:focus .activity-title strong {
    text-decoration: underline; }

.component-eventListItemMedium {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important; }
  .component-eventListItemMedium:hover, .component-eventListItemMedium:focus {
    text-decoration: none; }
    .component-eventListItemMedium:hover .activity-title strong, .component-eventListItemMedium:focus .activity-title strong {
      text-decoration: underline; }
  .component-eventListItemMedium .activity-thumb {
    width: 120px;
    margin: 0 var(--margin-default) 0 0; }
  .component-eventListItemMedium .component-eventListItemMedium-detail {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0; }

.component-relatedSectionEventListItem {
  display: inline-block !important; }
  .component-relatedSectionEventListItem:hover, .component-relatedSectionEventListItem:focus {
    text-decoration: none; }
    .component-relatedSectionEventListItem:hover .component-relatedSectionEventListItem-title, .component-relatedSectionEventListItem:focus .component-relatedSectionEventListItem-title {
      text-decoration: underline; }
  .component-relatedSectionEventListItem .component-relatedSectionEventListItem-title {
    font-size: var(--fontSize-default); }

.component-calinkActivityLogItem {
  width: 200px; }

.component-calinkActivityLogItem-info {
  position: relative; }
  .component-calinkActivityLogItem-info > div {
    padding: 0 40px 0 0; }
  .component-calinkActivityLogItem-info .object-menu {
    position: absolute;
    top: 0;
    right: 0; }

.component-calinkActivityLogItem-thumbnail {
  width: 200px;
  height: 133.33333px;
  max-width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: var(--borderRadius-default); }
  .component-calinkActivityLogItem-thumbnail:hover {
    opacity: 0.8; }
  .component-calinkActivityLogItem-thumbnail:not([hidden]) {
    display: block;
    background: var(--bgColor-beige);
    text-align: center;
    margin: 0 0 8px 0; }
  @media (max-width: 559px) {
    .component-calinkActivityLogItem-thumbnail {
      width: 100%;
      height: 132px; } }
  @media (max-width: 400px) {
    .component-calinkActivityLogItem-thumbnail {
      height: 118px; } }
  @media (max-width: 350px) {
    .component-calinkActivityLogItem-thumbnail {
      height: 97px; } }
  .component-calinkActivityLogItem-thumbnail:hover, .component-calinkActivityLogItem-thumbnail:focus {
    opacity: 0.8; }
  .component-calinkActivityLogItem-thumbnail.more {
    width: 220px;
    height: 146.66667px;
    max-width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: var(--borderRadius-default); }
    .component-calinkActivityLogItem-thumbnail.more:hover {
      opacity: 0.8; }
    .component-calinkActivityLogItem-thumbnail.more:not([hidden]) {
      display: block;
      background: var(--bgColor-beige);
      text-align: center;
      margin: 0 0 8px 0; }
    @media (max-width: 559px) {
      .component-calinkActivityLogItem-thumbnail.more {
        width: 100%;
        height: 132px; } }
    @media (max-width: 400px) {
      .component-calinkActivityLogItem-thumbnail.more {
        height: 118px; } }
    @media (max-width: 350px) {
      .component-calinkActivityLogItem-thumbnail.more {
        height: 97px; } }

.component-calinkActivityLogItemPlus-popupBtn {
  height: 38px; }

.component-calinkActivityLogItemPlus-popupMenu {
  margin: 0;
  width: 180px;
  border: 1px solid #e4e4e4;
  padding: 0;
  background: #fff;
  z-index: 100;
  text-align: left;
  border-radius: 2px;
  top: 100%;
  right: 0; }
  .component-calinkActivityLogItemPlus-popupMenu menu-item:not([hidden]) {
    display: block; }
  .component-calinkActivityLogItemPlus-popupMenu a,
  .component-calinkActivityLogItemPlus-popupMenu button {
    color: #333 !important;
    display: block;
    padding: 10px 14px;
    font-size: 12px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%; }
    .component-calinkActivityLogItemPlus-popupMenu a:hover, .component-calinkActivityLogItemPlus-popupMenu a:focus,
    .component-calinkActivityLogItemPlus-popupMenu button:hover,
    .component-calinkActivityLogItemPlus-popupMenu button:focus {
      background-color: #f2f2f2;
      text-decoration: none; }
  .component-calinkActivityLogItemPlus-popupMenu button {
    border-color: transparent;
    background-color: transparent;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    text-align: left; }
  .component-calinkActivityLogItemPlus-popupMenu hr {
    visibility: visible;
    border: none;
    border-top: 1px solid #e4e4e4;
    margin: 0; }

.component-groupListItem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.component-groupListItem-thumb {
  width: 120px; }
  .component-groupListItem-thumb img {
    width: 120px;
    border: 1px solid var(--borderColor-default); }

.component-groupListItem-content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  margin: 0 0 0 var(--margin-default); }

.component-groupListItem-linkUrl {
  line-height: 2; }

.page-top #firstView {
  padding: var(--margin-xlarge) 0;
  background: var(--color-brand) url(/images/bg-contour-green.svg) left bottom;
  background-size: 800px 800px;
  position: relative;
  color: var(--color-white); }
  @media (max-width: 1080px) {
    .page-top #firstView {
      padding: 30px 0 var(--margin-large); } }
  @media (max-width: 559px) {
    .page-top #firstView {
      padding: 20px 0 var(--margin-large); } }
  @media (max-width: 350px) {
    .page-top #firstView {
      padding: 12px 0 var(--margin-large); } }
  .page-top #firstView .wrapper {
    position: relative;
    z-index: 1; }
  .page-top #firstView section {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    @media (max-width: 768px) {
      .page-top #firstView section {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
            -ms-flex-direction: column-reverse;
                flex-direction: column-reverse; } }
  .page-top #firstView h1 {
    font-size: var(--fontSize-xxxxxlarge);
    line-height: var(--lineHeight-small); }
    @media (max-width: 768px) {
      .page-top #firstView h1 {
        font-size: var(--fontSize-xxxlarge); } }
    .page-top #firstView h1 span {
      display: inline-block; }
  .page-top #firstView p {
    margin: var(--margin-medium) 0 0;
    font-size: var(--fontSize-large); }
    @media (max-width: 768px) {
      .page-top #firstView p {
        font-size: 1rem;
        margin: var(--margin-default) 0 0; } }

.page-top #firstView-text {
  width: 45%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 var(--margin-large) var(--margin-large) 0; }
  @media (max-width: 768px) {
    .page-top #firstView-text {
      width: auto;
      margin: var(--margin-default) 0 var(--margin-large);
      padding: 0; } }
  .page-top #firstView-text div {
    margin: var(--margin-large) 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: var(--margin-default); }
    @media (max-width: 768px) {
      .page-top #firstView-text div {
        margin: var(--margin-medium) 0 0; } }
    @media (max-width: 400px) {
      .page-top #firstView-text div {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        margin: var(--margin-medium) var(--margin-default) 0; } }
  .page-top #firstView-text a {
    text-align: center; }
    @media (max-width: 850px) {
      .page-top #firstView-text a {
        font-size: var(--fontSize-default); } }
    @media (max-width: 768px) {
      .page-top #firstView-text a {
        font-size: 18px; } }
    @media (max-width: 400px) {
      .page-top #firstView-text a {
        width: 100%; } }
    .page-top #firstView-text a:not(.btn-transparent-large) {
      color: var(--color-white); }

.page-top #firstView-ss {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  text-align: right; }
  .page-top #firstView-ss img {
    vertical-align: middle;
    max-width: 450px;
    height: auto; }
    @media (max-width: 768px) {
      .page-top #firstView-ss img {
        max-width: 100%; } }

.page-top #firstView-image {
  position: absolute;
  top: 0;
  right: 0;
  width: 55%;
  height: 100%;
  background: var(--color-brand);
  -webkit-clip-path: polygon(15% 0, 100% 0, 100% 100%, 0 100%);
          clip-path: polygon(15% 0, 100% 0, 100% 100%, 0 100%); }
  @media (max-width: 768px) {
    .page-top #firstView-image {
      width: 100%;
      height: 36%;
      -webkit-clip-path: none;
              clip-path: none; } }
  .page-top #firstView-image img {
    opacity: 0.3;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover; }

.page-top rb-no-active-gps-device:not([hidden]) + #gtm {
  position: relative;
  z-index: 1;
  margin: calc(var(--margin-large) * -1) auto 0; }
  .page-top rb-no-active-gps-device:not([hidden]) + #gtm .wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: var(--margin-large);
    background: var(--color-black);
    color: var(--color-white);
    padding: var(--margin-large);
    border-radius: var(--borderRadius-large);
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    min-height: 150px; }
    @media (max-width: 768px) {
      .page-top rb-no-active-gps-device:not([hidden]) + #gtm .wrapper {
        display: block;
        padding: calc(var(--margin-default) + var(--margin-small)) var(--margin-large) var(--margin-large); } }
  .page-top rb-no-active-gps-device:not([hidden]) + #gtm h1 {
    font-weight: normal;
    text-align: center;
    font-size: var(--fontSize-default);
    margin: 0; }
    @media (max-width: 768px) {
      .page-top rb-no-active-gps-device:not([hidden]) + #gtm h1 {
        font-size: var(--fontSize-small);
        color: var(--color-mediumGray); } }
  .page-top rb-no-active-gps-device:not([hidden]) + #gtm #gtm-list {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
    @media (max-width: 768px) {
      .page-top rb-no-active-gps-device:not([hidden]) + #gtm #gtm-list {
        font-size: var(--fontSize-default);
        margin: var(--margin-default) 0 0; } }
  .page-top rb-no-active-gps-device:not([hidden]) + #gtm ul {
    line-height: var(--lineHeight-medium); }
  .page-top rb-no-active-gps-device:not([hidden]) + #gtm li {
    display: inline; }
    .page-top rb-no-active-gps-device:not([hidden]) + #gtm li:not(:last-child)::after {
      content: "";
      display: block;
      height: var(--margin-small); }
    .page-top rb-no-active-gps-device:not([hidden]) + #gtm li:nth-child(3) ~ li {
      display: none; }
  .page-top rb-no-active-gps-device:not([hidden]) + #gtm a {
    color: var(--color-brand); }
  .page-top rb-no-active-gps-device:not([hidden]) + #gtm span {
    color: var(--color-dullGray);
    font-size: var(--fontSize-small); }
  .page-top rb-no-active-gps-device:not([hidden]) + #gtm #top-info {
    margin: var(--margin-small) 0 0; }

.page-top rb-no-active-gps-device[hidden] + #gtm.is-loggedIn {
  background: var(--bgColor-beige) url(/images/bg-contour-beige.svg) left bottom;
  background-size: 800px 800px; }
  .page-top rb-no-active-gps-device[hidden] + #gtm.is-loggedIn .wrapper {
    padding: var(--margin-large) 0; }
    @media (max-width: 559px) {
      .page-top rb-no-active-gps-device[hidden] + #gtm.is-loggedIn .wrapper {
        padding: var(--margin-medium) 0; } }
  .page-top rb-no-active-gps-device[hidden] + #gtm.is-loggedIn h1 {
    line-height: var(--lineHeight-small); }
  .page-top rb-no-active-gps-device[hidden] + #gtm.is-loggedIn ul {
    line-height: var(--lineHeight-medium); }
  .page-top rb-no-active-gps-device[hidden] + #gtm.is-loggedIn li {
    background: var(--bgColor-beige);
    display: inline; }
    .page-top rb-no-active-gps-device[hidden] + #gtm.is-loggedIn li:not(:last-child)::after {
      content: "";
      display: block;
      height: var(--margin-small); }
    @media (max-width: 768px) {
      .page-top rb-no-active-gps-device[hidden] + #gtm.is-loggedIn li {
        font-size: var(--fontSize-default); } }
  .page-top rb-no-active-gps-device[hidden] + #gtm.is-loggedIn #top-info {
    display: block;
    margin: var(--margin-small) 0 0; }

.page-top rb-no-active-gps-device[hidden] + #gtm:not(.is-loggedIn) {
  position: relative;
  z-index: 1;
  margin: calc(var(--margin-large) * -1) auto 0; }
  .page-top rb-no-active-gps-device[hidden] + #gtm:not(.is-loggedIn) .wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: var(--margin-large);
    background: var(--color-black);
    color: var(--color-white);
    padding: var(--margin-large);
    border-radius: var(--borderRadius-large);
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    min-height: 150px; }
    @media (max-width: 768px) {
      .page-top rb-no-active-gps-device[hidden] + #gtm:not(.is-loggedIn) .wrapper {
        display: block;
        padding: calc(var(--margin-default) + var(--margin-small)) var(--margin-large) var(--margin-large); } }
  .page-top rb-no-active-gps-device[hidden] + #gtm:not(.is-loggedIn) h1 {
    font-weight: normal;
    text-align: center;
    font-size: var(--fontSize-default);
    margin: 0; }
    @media (max-width: 768px) {
      .page-top rb-no-active-gps-device[hidden] + #gtm:not(.is-loggedIn) h1 {
        font-size: var(--fontSize-small);
        color: var(--color-mediumGray); } }
  .page-top rb-no-active-gps-device[hidden] + #gtm:not(.is-loggedIn) #gtm-list {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
    @media (max-width: 768px) {
      .page-top rb-no-active-gps-device[hidden] + #gtm:not(.is-loggedIn) #gtm-list {
        font-size: var(--fontSize-default);
        margin: var(--margin-default) 0 0; } }
  .page-top rb-no-active-gps-device[hidden] + #gtm:not(.is-loggedIn) ul {
    line-height: var(--lineHeight-medium); }
  .page-top rb-no-active-gps-device[hidden] + #gtm:not(.is-loggedIn) li {
    display: inline; }
    .page-top rb-no-active-gps-device[hidden] + #gtm:not(.is-loggedIn) li:not(:last-child)::after {
      content: "";
      display: block;
      height: var(--margin-small); }
    .page-top rb-no-active-gps-device[hidden] + #gtm:not(.is-loggedIn) li:nth-child(3) ~ li {
      display: none; }
  .page-top rb-no-active-gps-device[hidden] + #gtm:not(.is-loggedIn) a {
    color: var(--color-brand); }
  .page-top rb-no-active-gps-device[hidden] + #gtm:not(.is-loggedIn) span {
    color: var(--color-dullGray);
    font-size: var(--fontSize-small); }
  .page-top rb-no-active-gps-device[hidden] + #gtm:not(.is-loggedIn) #top-info {
    margin: var(--margin-small) 0 0; }

.page-top #gtm big-banner {
  border: 0;
  padding: 0;
  margin: 0; }

.page-top #guide,
.page-top #listing {
  margin: var(--margin-xlarge) auto 0; }
  @media (max-width: 768px) {
    .page-top #guide,
    .page-top #listing {
      margin: var(--margin-large) auto 0; } }

.page-top .guideSection {
  margin: var(--margin-xlarge) 0 0; }
  @media (max-width: 768px) {
    .page-top .guideSection {
      margin: var(--margin-large) 0 0; } }
  .page-top .guideSection .top-title {
    text-align: center;
    display: block; }
    @media (max-width: 768px) {
      .page-top .guideSection .top-title {
        padding: 0 var(--margin-large); } }
    .page-top .guideSection .top-title span {
      display: block; }
      @media (max-width: 768px) {
        .page-top .guideSection .top-title span {
          display: inline; } }

.page-top .guideSection-grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-large);
  margin: var(--margin-xlarge) 0 0; }
  @media (max-width: 768px) {
    .page-top .guideSection-grid {
      margin: var(--margin-large) 0 0; } }
  @media (max-width: 768px) {
    .page-top .guideSection-grid {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }
  .page-top .guideSection-grid section,
  .page-top .guideSection-grid figure {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }
  .page-top .guideSection-grid h1 {
    text-align: center; }

@media (max-width: 768px) {
  .page-top #guideFeatures section {
    padding: var(--margin-medium) 0 0;
    border-top: 1px solid var(--borderColor-default);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; } }

@media (max-width: 768px) {
  .page-top .guideFeatures-icon {
    width: 50px;
    margin: 0 calc(20px + var(--margin-default)) 0 0;
    text-align: center; } }

.page-top .guideFeatures-icon svg {
  width: auto;
  max-height: 40px; }

.page-top .guideFeatures-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: var(--margin-small);
  margin: var(--margin-small) 0 0; }
  @media (max-width: 768px) {
    .page-top .guideFeatures-text {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      min-width: 0;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
      gap: var(--margin-small);
      margin: 0; } }
  .page-top .guideFeatures-text h1 {
    text-align: left; }
  @media (max-width: 768px) {
    .page-top .guideFeatures-text p {
      font-size: var(--fontSize-small); } }
  .page-top .guideFeatures-text .guideSection-link svg {
    vertical-align: middle; }

.page-top #guideGps {
  padding: var(--margin-medium) 0;
  background: var(--bgColor-beige);
  border-radius: var(--borderRadius-large);
  margin: var(--margin-xlarge) 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: var(--margin-medium); }
  @media (max-width: 768px) {
    .page-top #guideGps {
      display: block;
      padding: var(--margin-medium);
      margin: calc(var(--margin-large) + var(--margin-small)) 0 0; } }

.page-top #guideGps-image {
  text-align: center; }
  .page-top #guideGps-image img {
    vertical-align: middle; }
    @media (max-width: 768px) {
      .page-top #guideGps-image img {
        max-width: 200px;
        height: auto; } }

.page-top #guideGps-text {
  width: 300px;
  margin: 0 0 var(--margin-xsmall); }
  @media (max-width: 768px) {
    .page-top #guideGps-text {
      width: auto;
      max-width: 400px;
      margin: var(--margin-default) auto 0; } }
  .page-top #guideGps-text header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: var(--margin-default); }
    @media (max-width: 768px) {
      .page-top #guideGps-text header {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
            -ms-flex-direction: column-reverse;
                flex-direction: column-reverse;
        gap: var(--margin-small); } }
    .page-top #guideGps-text header h1 {
      font-size: var(--fontSize-xlarge);
      line-height: 1; }
    .page-top #guideGps-text header div {
      font-size: var(--fontSize-xsmall);
      color: var(--color-darkGray); }
  .page-top #guideGps-text p {
    margin: var(--margin-small) 0;
    font-size: var(--fontSize-default); }
    @media (max-width: 768px) {
      .page-top #guideGps-text p {
        margin: var(--margin-default) 0; } }
  .page-top #guideGps-text div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: var(--margin-small); }
    @media (max-width: 768px) {
      .page-top #guideGps-text div {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; } }
    @media (max-width: 350px) {
      .page-top #guideGps-text div {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column; } }

.page-top #guideVoices figure,
.page-top #guideVoices blockquote {
  margin: 0; }

.page-top #guideVoices figure {
  background: var(--bgColor-beige);
  padding: var(--margin-large);
  border-radius: var(--borderRadius-large);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media (max-width: 768px) {
    .page-top #guideVoices figure {
      padding: var(--margin-medium); } }
  @media (max-width: 768px) {
    .page-top #guideVoices figure svg {
      width: 36px;
      height: 36px; } }

.page-top #guideVoices blockquote {
  margin: var(--margin-medium) 0;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0; }
  @media (max-width: 768px) {
    .page-top #guideVoices blockquote {
      margin: var(--margin-default) 0;
      font-size: var(--fontSize-small); } }

.page-top #guideVoices figcaption {
  font-size: var(--fontSize-xsmall);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-default); }
  .page-top #guideVoices figcaption img {
    width: 36px;
    height: 36px;
    border-radius: 18px;
    background: var(--color-mediumGray); }
  .page-top #guideVoices figcaption strong {
    display: block; }

.page-top #guideLogos {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: var(--margin-xlarge) 0 0;
  gap: var(--margin-large);
  text-align: center; }
  @media (max-width: 768px) {
    .page-top #guideLogos {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      text-align: center;
      -webkit-column-gap: 0;
         -moz-column-gap: 0;
              column-gap: 0;
      row-gap: var(--margin-default);
      margin: var(--margin-large) var(--margin-default) 0; } }
  @media (max-width: 559px) {
    .page-top #guideLogos {
      grid-template-columns: repeat(2, 1fr); } }
  .page-top #guideLogos a {
    display: block; }
  .page-top #guideLogos img {
    vertical-align: middle;
    max-height: 80px; }
    @media (max-width: 1024px) {
      .page-top #guideLogos img {
        max-height: 60px; } }

.page-top #guideOffer {
  margin: var(--margin-xlarge) 0 0;
  padding: var(--margin-xlarge) 0;
  background: var(--color-brand) url(/images/bg-contour-green.svg) left bottom;
  background-size: 800px 800px;
  color: var(--color-white);
  text-align: center;
  border-radius: var(--borderRadius-large); }
  @media (max-width: 768px) {
    .page-top #guideOffer {
      margin: var(--margin-large) 0 0;
      padding: var(--margin-large); } }
  .page-top #guideOffer h1 span,
  .page-top #guideOffer p span {
    display: inline-block; }
  @media (max-width: 768px) {
    .page-top #guideOffer p {
      font-size: var(--fontSize-small); } }
  .page-top #guideOffer div {
    margin: var(--margin-large) 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: var(--margin-default); }
    @media (max-width: 768px) {
      .page-top #guideOffer div {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column; } }
  .page-top #guideOffer a:not(.btn-transparent-large) {
    color: var(--color-white); }

.page-top .top-title {
  font-size: var(--fontSize-xxlarge);
  line-height: var(--lineHeight-small);
  display: inline-block;
  margin: 0 8px 20px 0; }
  @media (max-width: 559px) {
    .page-top .top-title {
      font-size: var(--fontSize-large);
      line-height: var(--lineHeight-default);
      display: block;
      margin: 0 0 12px; } }

.page-top .top-description {
  font-size: 0.9rem;
  display: inline-block;
  color: #999;
  vertical-align: text-bottom; }
  @media (max-width: 559px) {
    .page-top .top-description {
      margin: -8px 0 12px;
      display: block; } }

.page-top .top-contents {
  margin: 0 0 80px 0; }
  @media (max-width: 559px) {
    .page-top .top-contents {
      margin: 0 0 40px 0;
      padding: 0 0 40px 0;
      border-bottom: 1px solid #e4e4e4; } }

.page-top .component-contents-list course-info.loading {
  opacity: 0.3;
  pointer-events: none;
  cursor: not-allowed; }

.page-top #listen list-main {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: var(--margin-large); }

.page-top #listen bdi,
.page-top #listen time {
  display: block; }

.page-top .top-listen-title {
  display: block;
  text-decoration: none;
  font-size: var(--fontSize-small);
  color: var(--color-black);
  line-height: 1.4; }

.page-top .top-listen-time {
  font-size: var(--fontSize-small);
  color: var(--color-dullGray); }

.page-top .top-news {
  margin: 0 0 40px; }
  @media (max-width: 559px) {
    .page-top .top-news {
      margin: 0 0 40px;
      padding: 0 0 40px;
      border-bottom: 1px solid #e4e4e4; } }

.page-top .top-news-list {
  display: block;
  margin: 0 0 8px; }
  @media (max-width: 559px) {
    .page-top .top-news-list {
      margin: 0 0 20px; } }

.page-top .top-news-title {
  color: #333;
  font-weight: bold;
  font-size: 0.95rem;
  margin-right: 4px; }

.page-top .top-news-time {
  color: #999;
  font-size: 0.8rem; }

@media (max-width: 559px) {
  .page-top .top-facebookWidget {
    margin: 0 0 0 -12px;
    width: calc(100% + 24px);
    text-align: center; } }

#page-account-login .modal-title svg {
  color: var(--color-richBlack);
  max-width: 124px;
  height: auto; }

.page-activityLog-item .pager {
  margin: var(--margin-default) 0; }

#log-header {
  margin: 40px 0 24px 0;
  min-height: 60px;
  position: relative;
  padding: 0 20px; }
  @media (max-width: 559px) {
    #log-header {
      margin: 20px 0 12px;
      padding: 0; } }
  #log-header .component-objectMenu {
    position: absolute;
    right: 0;
    top: 0; }

#log-header-user {
  font-size: 15px;
  margin: 0 0 12px;
  position: relative;
  padding: 0 0 0 52px; }

#log-header-icon {
  position: absolute;
  left: 0; }
  #log-header-icon img {
    width: 40px;
    height: 40px;
    border-radius: 50%; }

#log-header-name {
  color: #333;
  font-weight: bold; }

#log-header-timestamp {
  color: #999;
  font-size: 0.75rem;
  min-height: 20px; }
  #log-header-timestamp:not([hidden]) {
    display: block; }

#log-header-title {
  font-size: 1.8rem;
  line-height: 1.5; }
  #log-header-title a {
    color: #333; }
  @media (max-width: 559px) {
    #log-header-title {
      font-size: 1.5rem; } }

.log-record {
  padding: 12px 20px;
  border: 1px solid #e4e4e4;
  margin: 0 0 80px 0; }
  @media (max-width: 559px) {
    .log-record {
      padding: 4px 0;
      margin: 0 0 40px 0;
      border: none; } }

.log-record-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 4px 0 0; }
  .log-record-header route-stats {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
  .log-record-header .stats, .log-record-header .stats-detail, .log-record-header .stats-detail-2x {
    margin: 0; }
  .log-record-header .stats-value {
    font-size: 16px; }
  .log-record-header .stats-block {
    margin-right: 16px;
    line-height: 1.4; }
  @media (max-width: 559px) {
    .log-record-header {
      display: block;
      position: relative; }
      .log-record-header .stats-block {
        margin-right: 0; } }

.log-details {
  position: relative; }

.log-details-service {
  position: absolute;
  display: inline-block;
  line-height: 1;
  right: 0;
  top: 3px; }
  .log-details-service a,
  .log-details-service list-main,
  .log-details-service list-item {
    display: inline-block;
    line-height: 1;
    vertical-align: bottom; }
  .log-details-service img {
    width: 16px;
    height: 16px;
    vertical-align: middle; }

.paper-bf-text .component-objectMenu {
  position: absolute;
  right: -30px;
  top: -28px; }
  @media (max-width: 559px) {
    .paper-bf-text .component-objectMenu {
      right: -10px; } }

.log-feedback {
  margin: 40px 0 20px 0;
  padding: 40px 0 0 0;
  border-top: 1px solid #e4e4e4; }

.log-star {
  margin: 0 0 32px; }

.log-ranking-empty {
  font-size: 90%; }

.log-create {
  text-align: center;
  margin: 20px 0 0 0; }

.log-editbody {
  text-align: center;
  padding: 0 0 60px 0;
  margin: 40px 0 0 0; }

.log-course {
  border-top: 1px solid #e4e4e4;
  padding: 40px 0 0 0;
  margin: 20px 0 0 0; }

.log-course-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 0 20px; }

.log-course-title {
  font-size: 1.2rem; }
  @media (max-width: 559px) {
    .log-course-title {
      margin: 0 0 1em; } }

.log-course-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9rem; }
  .log-course-table th {
    font-size: 0.9rem;
    text-align: left; }
  .log-course-table td {
    padding: 12px 0; }
  .log-course-table a {
    color: #333; }
  @media (max-width: 559px) {
    .log-course-table {
      position: relative;
      display: block;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      padding-left: 96px; }
      .log-course-table tbody,
      .log-course-table tr {
        display: block; }
      .log-course-table tr {
        min-height: 80px;
        margin: 0 0 16px; }
      .log-course-table thead {
        display: none; }
      .log-course-table td {
        padding: 0; }
      .log-course-table .name {
        display: block; }
      .log-course-table .time unit-number {
        margin-right: 8px; }
      .log-course-table .ranking {
        display: block;
        font-size: 0.8rem; }
        .log-course-table .ranking sub-list {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex; }
        .log-course-table .ranking list-item {
          margin-right: 4px; } }

@media (max-width: 559px) {
  .log-course-table .name course-info {
    position: static; } }

.log-course-table-main {
  width: 50%; }

.log-course-photo {
  width: 90px;
  height: 60px;
  max-width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: var(--borderRadius-default);
  height: 90px;
  vertical-align: middle;
  margin: 0 12px 0 0 !important;
  display: inline-block !important; }
  .log-course-photo:hover {
    opacity: 0.8; }
  .log-course-photo:not([hidden]) {
    display: block;
    background: var(--bgColor-beige);
    text-align: center;
    margin: 0 0 8px 0; }
  @media (max-width: 559px) {
    .log-course-photo {
      width: 100%;
      height: 132px; } }
  @media (max-width: 400px) {
    .log-course-photo {
      height: 118px; } }
  @media (max-width: 350px) {
    .log-course-photo {
      height: 97px; } }
  @media (max-width: 559px) {
    .log-course-photo {
      width: 80px !important;
      height: 80px !important;
      position: absolute;
      left: 0; } }

.log-course-name {
  color: #333;
  font-weight: bold;
  width: calc(100% - 106px); }
  @media (max-width: 559px) {
    .log-course-name {
      width: 100%; } }

.log-footer {
  font-size: 0.9rem;
  color: #999;
  text-align: right; }

.activity-log-create-confirm {
  padding: 1em; }

.activity-log-create-confirm p:first-child {
  margin-top: 0; }

.activity-log-create-confirm p:last-child {
  text-align: center; }

.activity-log-create-confirm button {
  font-size: 150%;
  padding: 0.3em;
  min-width: 8em; }

.course-page stat-item,
.activity-log-page stat-item {
  min-width: 8em; }

.activity-log-strava {
  font-size: 90%; }

.activity-log-strava .strava-title {
  background: url(/images/strava-16.png) center left no-repeat;
  padding-left: 20px; }

.vb-page page-main:not([hidden]) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 30em;
  height: 100vh;
  min-height: 0;
  margin: 0 auto;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

.vb-page page-main > hgroup:not([hidden]) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.vb-page page-main > hgroup > h1:not([hidden]),
.vb-page page-main > hgroup > h2:not([hidden]) {
  display: block;
  margin: 0;
  padding: 0 0.3em 0 0;
  font-size: 100%;
  font-weight: bolder; }

.vb-page .status-now:not([hidden]) {
  display: block;
  text-align: right;
  font-size: 80%;
  color: gray;
  background: transparent; }

.vb-page page-main > tab-set {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  overflow: auto; }

.vb-page page-main > tab-set > section > h1 {
  display: none; }

.vb-page .config td > form {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

.vb-page rb-select-multiple rb-select-viewer {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

.vb-page page-main > form {
  border-top: 1px solid #ccc;
  padding-top: 4px; }

.vb-page .main-controls {
  margin-bottom: 2em; }

.vb-page .main-controls input {
  width: 90%;
  font-size: 150%; }

rb-vb-item:not([hidden]) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 0.5em; }

rb-vb-item time {
  width: -webkit-min-content;
  width: -moz-min-content;
  width: min-content;
  padding: 0 0.5em 0.3em 0;
  font-size: 80%;
  line-height: 1.3; }

rb-vb-item time + input {
  font-size: 130%;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

rb-vb-item input:last-of-type {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  font-size: 90%; }

.vb-page .addinput-form {
  margin: 1em; }

.vb-page p {
  font-size: 90%; }

html:not([data-data_editable]) .if-data_editable {
  display: none !important; }

html[data-data_editable] .unless-data_editable {
  display: none !important; }

html:not([data-map_editable]) .if-map_editable {
  display: none !important; }

html[data-map_editable] .unless-map_editable {
  display: none !important; }

html:not([data-access_editable]) .if-access_editable {
  display: none !important; }

html[data-access_editable] .unless-access_editable {
  display: none !important; }

.page-activityLogLive .container .wrapper {
  max-width: 600px; }

.page-activityLogLive .container .notReadyMessage {
  color: var(--color-black); }
  .page-activityLogLive .container .notReadyMessage .wrapper {
    margin: var(--margin-large) auto; }
  .page-activityLogLive .container .notReadyMessage h1 {
    font-size: var(--fontSize-large);
    text-align: center;
    margin: 0 var(--margin-default); }
    .page-activityLogLive .container .notReadyMessage h1 span {
      display: inline-block; }

.page-activityLogLive .container list-is-empty {
  margin: 0;
  font-size: 1rem; }

.page-activityLogLive .container .notReadyMessage-offer p {
  margin: var(--margin-default) 0;
  font-size: var(--fontSize-default); }

.page-activityLogLive .container .notReadyMessage-offer div {
  margin: var(--margin-default) 0; }

.page-activityLogLive .container .notReadyMessage-offer a {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

.page-activityLogLive .container .dummyClockWrapper {
  --header-background-color: var(--bgColor-beige);
  text-align: center;
  margin: 0 auto;
  padding: var(--margin-default) 0;
  background: var(--header-background-color); }

.page-activityLogLive .container .dummyClock {
  font-size: min(17vw, 500%);
  line-height: 1;
  font-family: var(--fontFamily-monospace);
  font-weight: var(--fontWeight-bold);
  color: var(--color-mediumGray); }

.page-activityLogLive .container .tab-column {
  position: relative; }
  .page-activityLogLive .container .tab-column > action-status {
    position: absolute;
    top: var(--margin-small);
    right: var(--margin-xsmall);
    font-size: var(--fontSize-xsmall); }
    .page-activityLogLive .container .tab-column > action-status progress {
      display: none; }

.page-activityLogLive .container rb-activity-log-live-controller {
  --header-background-color: var(--bgColor-beige); }
  .page-activityLogLive .container rb-activity-log-live-controller:not([hidden]) {
    display: block; }
  .page-activityLogLive .container rb-activity-log-live-controller .requestConflicted-eventTitle {
    display: inline; }
  .page-activityLogLive .container rb-activity-log-live-controller section.start-requested rb-elapsed-clock {
    color: var(--color-mediumGray); }
  .page-activityLogLive .container rb-activity-log-live-controller header {
    text-align: center;
    margin: 0 auto;
    padding: var(--margin-large) 0;
    background: var(--header-background-color); }

@-webkit-keyframes blink {
  0% {
    opacity: 0.7; }
  100% {
    opacity: 1; } }

@keyframes blink {
  0% {
    opacity: 0.7; }
  100% {
    opacity: 1; } }
  .page-activityLogLive .container rb-activity-log-live-controller #liveIndicator {
    font-weight: var(--fontWeight-bold);
    color: var(--color-green);
    letter-spacing: 1.5px;
    -webkit-animation: blink 1s ease-in-out infinite alternate;
            animation: blink 1s ease-in-out infinite alternate;
    font-family: var(--fontFamily-monospace); }
  .page-activityLogLive .container rb-activity-log-live-controller rb-elapsed-clock {
    font-size: min(17vw, 500%);
    line-height: 1;
    font-family: var(--fontFamily-monospace);
    font-weight: var(--fontWeight-bold);
    margin: var(--margin-default) 0; }
    .page-activityLogLive .container rb-activity-log-live-controller rb-elapsed-clock:not([hidden]) {
      display: block; }
    .page-activityLogLive .container rb-activity-log-live-controller rb-elapsed-clock number-separator {
      -webkit-transform: translateY(-0.1em);
              transform: translateY(-0.1em);
      display: inline-block; }
  .page-activityLogLive .container rb-activity-log-live-controller .liveController-headerContent {
    padding: 0 var(--margin-large); }
  .page-activityLogLive .container rb-activity-log-live-controller #modeSwitch {
    padding: 0 0 calc(200px + env(safe-area-inset-bottom)); }
  .page-activityLogLive .container rb-activity-log-live-controller #modeSwitch-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: var(--margin-default) 0;
    font-size: var(--fontSize-default); }
    .page-activityLogLive .container rb-activity-log-live-controller #modeSwitch-header a {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
  .page-activityLogLive .container rb-activity-log-live-controller #modeSwitch-modeSelector {
    border-bottom: 1px solid var(--borderColor-default); }
    .page-activityLogLive .container rb-activity-log-live-controller #modeSwitch-modeSelector .isActive .modeSwitch-modeSelector-modeTitle {
      font-weight: bold;
      color: var(--color-green); }
      .page-activityLogLive .container rb-activity-log-live-controller #modeSwitch-modeSelector .isActive .modeSwitch-modeSelector-modeTitle::before {
        border: 6px solid var(--color-green); }
    .page-activityLogLive .container rb-activity-log-live-controller #modeSwitch-modeSelector list-item {
      border-top: 1px solid var(--borderColor-default); }
      .page-activityLogLive .container rb-activity-log-live-controller #modeSwitch-modeSelector list-item a {
        display: block;
        color: var(--color-black);
        text-decoration: none; }
        .page-activityLogLive .container rb-activity-log-live-controller #modeSwitch-modeSelector list-item a:hover, .page-activityLogLive .container rb-activity-log-live-controller #modeSwitch-modeSelector list-item a:focus {
          color: var(--color-green); }
        .page-activityLogLive .container rb-activity-log-live-controller #modeSwitch-modeSelector list-item a .wrapper {
          height: var(--button-height);
          line-height: var(--button-height);
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-pack: justify;
              -ms-flex-pack: justify;
                  justify-content: space-between; }
      .page-activityLogLive .container rb-activity-log-live-controller #modeSwitch-modeSelector list-item .modeSwitch-modeSelector-modeTitle {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        width: 100%; }
        .page-activityLogLive .container rb-activity-log-live-controller #modeSwitch-modeSelector list-item .modeSwitch-modeSelector-modeTitle::before {
          content: "";
          display: inline-block;
          width: 20px;
          height: 20px;
          border-radius: 10px;
          border: 2px solid var(--borderColor-mediumGray);
          -webkit-box-sizing: border-box;
                  box-sizing: border-box; }
      .page-activityLogLive .container rb-activity-log-live-controller #modeSwitch-modeSelector list-item .modeSwitch-modeSelector-icon {
        margin: 0 var(--margin-default) 0 calc(var(--margin-default) + var(--margin-small));
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; }
        .page-activityLogLive .container rb-activity-log-live-controller #modeSwitch-modeSelector list-item .modeSwitch-modeSelector-icon svg {
          width: 22px;
          height: 22px; }
      .page-activityLogLive .container rb-activity-log-live-controller #modeSwitch-modeSelector list-item .modeSwitch-modeSelector-title {
        min-width: 0;
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
        text-overflow: ellipsis;
        white-space: nowrap;
        overflow: hidden;
        display: inline-block;
        width: 100%; }
  .page-activityLogLive .container rb-activity-log-live-controller .modeSwitch-modeSelector-eventStartDate {
    font-size: var(--fontSize-xsmall);
    color: var(--color-darkGray);
    white-space: nowrap;
    margin: 0 0 0 var(--margin-default); }
    .page-activityLogLive .container rb-activity-log-live-controller .modeSwitch-modeSelector-eventStartDate:not([hidden]) {
      display: block; }
  .page-activityLogLive .container rb-activity-log-live-controller .mainControls {
    padding: var(--margin-default) 0 0; }
    .page-activityLogLive .container rb-activity-log-live-controller .mainControls.fixed {
      padding: var(--margin-default) 0 calc(var(--margin-default) + env(safe-area-inset-bottom));
      position: fixed;
      left: 0;
      bottom: 0;
      width: 100%;
      -webkit-box-shadow: 0 -1px 0 rgba(0, 0, 0, 0.1);
              box-shadow: 0 -1px 0 rgba(0, 0, 0, 0.1);
      background: var(--bgColor-white); }
  .page-activityLogLive .container rb-activity-log-live-controller .mainControls-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative; }
    .page-activityLogLive .container rb-activity-log-live-controller .mainControls-inner > div,
    .page-activityLogLive .container rb-activity-log-live-controller .mainControls-inner > form,
    .page-activityLogLive .container rb-activity-log-live-controller .mainControls-inner > rb-if-value {
      width: 30%;
      margin: 0 0 0 2.5%;
      text-align: center; }
    .page-activityLogLive .container rb-activity-log-live-controller .mainControls-inner button {
      width: 100%;
      background: none;
      border: none;
      padding: none !important; }
      .page-activityLogLive .container rb-activity-log-live-controller .mainControls-inner button div {
        font-size: var(--fontSize-xsmall);
        color: var(--color-dullGray);
        letter-spacing: 0.5px;
        margin: var(--margin-xsmall) 0 0; }
      .page-activityLogLive .container rb-activity-log-live-controller .mainControls-inner button:disabled svg circle {
        fill: #cccbcb; }

.page-activityLogLive .container .promoteSharing {
  text-align: center;
  margin: var(--margin-large) var(--margin-default);
  font-size: var(--fontSize-small); }

.page-activityLogLive .container tab-set:not(.settings) > section > header {
  display: none; }

.page-activityLogLive .container tab-set.settings > section > *:not(header) {
  display: none; }

.page-activityLogLive .container tab-set.settings > section > header > h1 {
  display: none; }

.page-activityLogLive .container tab-menu {
  display: block;
  border: none;
  padding: 0;
  margin: 0;
  font-size: var(--fontSize-default);
  border-bottom: 1px solid var(--borderColor-default); }
  .page-activityLogLive .container tab-menu a {
    border: none;
    border-top: 1px solid var(--borderColor-default);
    display: block;
    height: var(--button-height);
    line-height: var(--button-height);
    font-weight: bold;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    padding: 0;
    margin: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    font-weight: normal; }
    .page-activityLogLive .container tab-menu a.active::before {
      border: 6px solid var(--color-green); }
    .page-activityLogLive .container tab-menu a::before {
      content: "";
      display: inline-block;
      width: 20px;
      height: 20px;
      border-radius: 10px;
      border: 2px solid var(--borderColor-mediumGray);
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      margin: 0 var(--margin-default) 0 0; }

#page-activityLogLive-settingsContainer {
  color: var(--color-black); }
  #page-activityLogLive-settingsContainer:not([hidden]) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  #page-activityLogLive-settingsContainer > section {
    background: var(--color-white);
    padding: 0 0 env(safe-area-inset-bottom); }
  #page-activityLogLive-settingsContainer .wrapper {
    max-width: 600px;
    padding: var(--margin-default); }
  #page-activityLogLive-settingsContainer header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  #page-activityLogLive-settingsContainer #settingsContainer-title {
    font-weight: bold; }
  #page-activityLogLive-settingsContainer #settingsContainer-actions {
    font-size: var(--fontSize-default);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: var(--margin-default); }
    #page-activityLogLive-settingsContainer #settingsContainer-actions button {
      border: none;
      padding: 0;
      background: none;
      color: var(--color-primary);
      font-size: var(--fontSize-default);
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      gap: var(--margin-small); }
      #page-activityLogLive-settingsContainer #settingsContainer-actions button svg {
        height: 14px;
        width: 14px; }
  #page-activityLogLive-settingsContainer #settingsContainer-devices header,
  #page-activityLogLive-settingsContainer #settingsContainer-contact header {
    font-size: var(--fontSize-small);
    margin: var(--margin-large) 0 var(--margin-small); }
    #page-activityLogLive-settingsContainer #settingsContainer-devices header h1,
    #page-activityLogLive-settingsContainer #settingsContainer-contact header h1 {
      font-weight: normal; }
  #page-activityLogLive-settingsContainer #settingsContainer-contact-content {
    border-top: 1px solid var(--borderColor-default);
    font-size: var(--fontSize-small);
    padding: var(--margin-small) 0; }
    #page-activityLogLive-settingsContainer #settingsContainer-contact-content span {
      display: inline-block; }

.page-activityLogLive > dialog-backdrop {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }
  .page-activityLogLive > dialog-backdrop > article {
    background: var(--color-white);
    padding: 0 0 calc( var(--button-height) + var(--margin-default) * 2 + env(safe-area-inset-bottom));
    margin: 0;
    max-width: 100%; }
    .page-activityLogLive > dialog-backdrop > article > header {
      border-top: 1px solid rgba(0, 0, 0, 0.1);
      position: fixed;
      left: 0;
      top: auto;
      bottom: 0;
      background: var(--color-white);
      z-index: 1;
      height: auto;
      padding: var(--margin-default); }
      .page-activityLogLive > dialog-backdrop > article > header h1 {
        display: none; }
      .page-activityLogLive > dialog-backdrop > article > header .dialog-close-button {
        position: static;
        width: 100%;
        height: var(--button-height);
        color: var(--color-black);
        border: 1px solid var(--color-primary);
        color: var(--color-primary);
        max-width: calc(600px - var(--margin-default) * 2);
        margin: 0 auto; }
        .page-activityLogLive > dialog-backdrop > article > header .dialog-close-button::after {
          content: "閉じる";
          font-size: var(--fontSize-default);
          font-weight: bold;
          display: inline-block;
          margin: 0 0 0 var(--margin-small);
          vertical-align: middle; }

.page-activityLogLive .page-activityLogLive-stoppedInfo {
  padding: var(--margin-default);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 0;
  max-width: 600px;
  margin: 0 auto; }
  .page-activityLogLive .page-activityLogLive-stoppedInfo activity-log-info {
    margin: var(--margin-default) 0 0;
    display: block; }
  .page-activityLogLive .page-activityLogLive-stoppedInfo route-map {
    height: 250px; }
  .page-activityLogLive .page-activityLogLive-stoppedInfo .gm-style-mtc,
  .page-activityLogLive .page-activityLogLive-stoppedInfo .gm-fullscreen-control,
  .page-activityLogLive .page-activityLogLive-stoppedInfo map-controls,
  .page-activityLogLive .page-activityLogLive-stoppedInfo .gm-svpc {
    display: none; }
  .page-activityLogLive .page-activityLogLive-stoppedInfo route-stats {
    margin: var(--margin-default) 0 0;
    display: block; }
  .page-activityLogLive .page-activityLogLive-stoppedInfo .stats, .page-activityLogLive .page-activityLogLive-stoppedInfo .stats-detail, .page-activityLogLive .page-activityLogLive-stoppedInfo .stats-detail-2x {
    margin: 0; }
  .page-activityLogLive .page-activityLogLive-stoppedInfo .stats-block {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }
  .page-activityLogLive .page-activityLogLive-stoppedInfo .stats-title,
  .page-activityLogLive .page-activityLogLive-stoppedInfo .stats-value {
    display: block; }
  .page-activityLogLive .page-activityLogLive-stoppedInfo .stats-value {
    font-family: var(--fontFamily-montserrat);
    font-size: var(--fontSize-xxxlarge);
    line-height: var(--lineHeight-small); }
  .page-activityLogLive .page-activityLogLive-stoppedInfo .activityLogLiveInfo-lead {
    display: none; }

.page-activityLogLive #page-activityLogLive-stoppedInfo-message {
  text-align: center;
  margin: var(--margin-small) 0 0; }

.page-activityLogLive #page-activityLogLive-stoppedInfo-shareMessage {
  border-top: 1px dashed var(--color-black);
  padding: var(--margin-default) 0 0;
  font-size: var(--fontSize-small); }

.page-activityLogLive .activityLogLiveInfo {
  margin: var(--margin-large) 0 0; }
  .page-activityLogLive .activityLogLiveInfo:not([hidden]) {
    display: block; }

.page-activityLogLive .activityLogLiveInfo-lead {
  font-size: var(--fontSize-small); }

.page-activityLogLive .activityLogLiveInfo-container {
  border: 1px solid var(--borderColor-lightGray);
  border-radius: var(--borderRadius-large);
  -webkit-box-shadow: 0 2px 2px rgba(0, 0, 0, 0.05);
          box-shadow: 0 2px 2px rgba(0, 0, 0, 0.05);
  margin: var(--margin-small) 0 0; }

.page-activityLogLive .activityLogLiveInfo-title a {
  color: var(--color-black);
  padding: var(--margin-default) var(--margin-default) 0;
  display: block; }

.page-activityLogLive .activityLogLiveInfo-title cite {
  font-weight: bolder;
  font-style: normal; }

.page-activityLogLive .activityLogLiveInfo-primaryLinks {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: var(--margin-small) 0 var(--margin-default); }
  .page-activityLogLive .activityLogLiveInfo-primaryLinks a {
    color: var(--color-black);
    font-size: var(--fontSize-xsmall);
    line-height: var(--lineHeight-small); }
    .page-activityLogLive .activityLogLiveInfo-primaryLinks a:first-child {
      padding: 0 var(--margin-small) 0 var(--margin-default); }
    .page-activityLogLive .activityLogLiveInfo-primaryLinks a:nth-child(2) {
      padding: 0 var(--margin-small);
      border-left: 1px solid var(--borderColor-lightGray); }
    .page-activityLogLive .activityLogLiveInfo-primaryLinks a:last-child {
      padding: 0 var(--margin-default) 0 var(--margin-small);
      border-left: 1px solid var(--borderColor-lightGray); }

.page-activityLogLive .activityLogLiveInfo-detailLink {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.page-activityLogLive .activityLogLiveInfo-settingsLink {
  width: var(--button-height); }

.page-activityLogLive .activityLogLiveInfo-icon {
  width: var(--button-height);
  height: var(--button-height);
  border: 1px solid var(--borderColor-lightGray);
  border-radius: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 var(--margin-small) 0 0; }
  .page-activityLogLive .activityLogLiveInfo-icon + div {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0; }
  .page-activityLogLive .activityLogLiveInfo-icon svg {
    width: 20px;
    height: 20px; }

.page-activityLogLive .activityLogLiveInfo-shareButtons {
  border-top: 1px solid var(--borderColor-lightGray);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: var(--fontSize-xsmall); }
  .page-activityLogLive .activityLogLiveInfo-shareButtons .qrModal,
  .page-activityLogLive .activityLogLiveInfo-shareButtons button {
    width: 50%; }
  .page-activityLogLive .activityLogLiveInfo-shareButtons button {
    border: none;
    padding: 0;
    background: none;
    height: var(--button-height);
    line-height: var(--button-height);
    border-left: 1px solid var(--borderColor-lightGray);
    font-size: var(--fontSize-xsmall); }

.page-activityLogLive .qrModal summary {
  display: block;
  height: var(--button-height);
  line-height: var(--button-height);
  text-align: center; }
  .page-activityLogLive .qrModal summary::-webkit-details-marker {
    display: none; }

.page-activityLogLive .qrModal article {
  height: 100%;
  padding: var(--margin-default);
  font-size: var(--fontSize-default);
  background: var(--color-white);
  color: var(--color-black);
  overflow-y: auto;
  overflow-x: hidden; }
  .page-activityLogLive .qrModal article .qrCode {
    margin: var(--margin-default) 0; }
    .page-activityLogLive .qrModal article .qrCode div,
    .page-activityLogLive .qrModal article .qrCode qr-code {
      text-align: center; }
  .page-activityLogLive .qrModal article qr-code {
    display: block; }

.page-course .course-cover {
  max-width: var(--container-width);
  margin: var(--margin-large) auto 0; }
  @media (max-width: 1024px) {
    .page-course .course-cover {
      margin: 0; } }

.page-course page-main {
  margin: 20px auto 0;
  letter-spacing: 0.075em; }

.page-course .course-tab {
  margin: var(--margin-large) 0 0; }
  .page-course .course-tab > tab-set:not([hidden]) {
    display: grid;
    grid-template: "tab-menu tab-menu" "tab-primary tab-secondary" / 1fr 300px; }
    @media (max-width: 768px) {
      .page-course .course-tab > tab-set:not([hidden]) {
        grid-template: "tab-menu tab-menu" "tab-secondary tab-secondary" "tab-primary tab-primary"; } }
  .page-course .course-tab > tab-set > tab-menu {
    grid-area: tab-menu; }
  .page-course .course-tab > tab-set > * {
    grid-column: 1 / 3; }
  .page-course .course-tab > tab-set > #overview.active {
    display: contents; }
  .page-course .course-tab > tab-set > #overview > * {
    grid-column: 1 / 3; }
  .page-course .course-tab > tab-set > #overview > section:first-of-type {
    grid-area: tab-primary; }
  .page-course .course-tab #overview.active ~ #map:not(.active) {
    display: block;
    grid-area: tab-secondary; }
    .page-course .course-tab #overview.active ~ #map:not(.active) > div {
      position: sticky;
      top: var(--margin-default); }

.page-course .course-mainContainer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: var(--margin-large) 0 0; }
  .page-course .course-mainContainer.course-mainContainer-flexDirection-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  @media (max-width: 768px) {
    .page-course .course-mainContainer {
      display: block;
      margin: 0; } }

.page-course .course-mainContainer-primary {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  margin: 0 var(--margin-xlarge) 0 0; }
  @media (max-width: 768px) {
    .page-course .course-mainContainer-primary {
      margin: 0; } }

.page-course .course-mainContainer-secondary {
  width: 300px; }
  @media (max-width: 768px) {
    .page-course .course-mainContainer-secondary {
      width: 100%; } }

.page-course .course-mainContainer-secondary-stickyContents {
  position: sticky;
  top: var(--margin-default); }

.page-course .course-description {
  font-family: var(--fontFamily-sans);
  font-size: var(--fontSize-bodyText);
  margin: 0 0 var(--margin-xlarge); }
  @media (max-width: 768px) {
    .page-course .course-description {
      margin: var(--margin-large) 0 var(--margin-xlarge); } }
  .page-course .course-description rb-formatted-body > *:first-child {
    margin: 0; }
  .page-course .course-description section {
    margin: var(--margin-xlarge) 0 0; }
  .page-course .course-description h1 {
    font-family: var(--fontFamily-montserrat);
    font-weight: var(--fontWeight-montserrat-bold);
    letter-spacing: 1px;
    font-size: var(--fontSize-xxlarge);
    line-height: var(--lineHeight-small);
    margin: 0 0 var(--margin-default);
    width: 75%; }
    @media (max-width: 768px) {
      .page-course .course-description h1 {
        font-size: var(--fontSize-large);
        width: 90%; } }
  .page-course .course-description p {
    margin: 1.5em 0; }
  .page-course .course-description img {
    vertical-align: top;
    margin: 0.5em 0; }
  .page-course .course-description figure {
    margin: 2em 0; }
    .page-course .course-description figure:not(.product) {
      text-align: center; }
      .page-course .course-description figure:not(.product) img {
        max-height: min(660px, 100vw); }
    .page-course .course-description figure p {
      margin: 0; }
  .page-course .course-description figcaption {
    margin: 0 4em;
    font-size: var(--fontSize-default);
    text-align: center; }
  .page-course .course-description figure.product {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .page-course .course-description figure.product img {
      max-width: 150px;
      margin: 0; }
      @media (max-width: 768px) {
        .page-course .course-description figure.product img {
          max-width: 100px; } }
    .page-course .course-description figure.product p:first-child a {
      display: block; }
    .page-course .course-description figure.product p:last-child {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      min-width: 0;
      margin: 0 0 0 1.5em; }

.page-course .course-contents-title {
  font-size: 1.2rem;
  margin: 0 0 1em;
  letter-spacing: 0.04em; }
  .page-course .course-contents-title a {
    color: #333;
    text-decoration: none; }

.page-course #comments {
  border-top: 1px solid #e4e4e4;
  margin: var(--margin-xlarge) 0;
  padding: 24px 0 0px; }

.page-course #courseFooter {
  border-top: 1px dashed var(--color-black);
  padding: var(--margin-large) 0; }

@media (max-width: 768px) {
  .page-course #ranking-summary {
    margin: var(--margin-large) 0 0 0; } }

.page-course .course-activity-summary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 -10px;
  margin-top: 20px; }
  @media (max-width: 559px) {
    .page-course .course-activity-summary list-item {
      min-width: 0; } }
  .page-course .course-activity-summary list-item {
    -ms-flex-preferred-size: calc(33.333333% - 20px);
        flex-basis: calc(33.333333% - 20px);
    margin: 0 10px 40px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
    @media (max-width: 559px) {
      .page-course .course-activity-summary list-item {
        -ms-flex-preferred-size: calc(50% - 20px);
            flex-basis: calc(50% - 20px); } }
    @media (max-width: 559px) {
      .page-course .course-activity-summary list-item .component-calinkActivityLogItem {
        max-width: 100%; } }
    @media (max-width: 559px) {
      .page-course .course-activity-summary list-item .component-calinkActivityLogItem-thumbnail {
        max-width: 100%; } }

.page-course .course-ranking-summary list-item {
  position: relative;
  padding: 0 0 0 100px;
  min-height: 48px;
  margin: 0 0 20px 0; }
  .page-course .course-ranking-summary list-item a:not([hidden]) {
    display: block;
    text-decoration: none; }

.page-course .course-ranking-summary .course-ranking-icon {
  width: 48px;
  height: 48px;
  border-radius: 24px;
  left: 40px;
  position: absolute; }

.page-course #relatedCourses {
  border-top: 1px dashed var(--color-black);
  padding: var(--margin-large) 0; }

.page-course .course-related-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 -10px; }
  @media (max-width: 559px) {
    .page-course .course-related-list list-item {
      min-width: 0; } }
  .page-course .course-related-list list-item {
    -ms-flex-preferred-size: calc(25% - 20px);
        flex-basis: calc(25% - 20px);
    margin: 0 10px 40px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
    @media (max-width: 559px) {
      .page-course .course-related-list list-item {
        -ms-flex-preferred-size: calc(50% - 20px);
            flex-basis: calc(50% - 20px); } }
  .page-course .course-related-list .activity-thumb {
    width: 240px;
    height: 160px;
    max-width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: var(--borderRadius-default); }
    .page-course .course-related-list .activity-thumb:hover {
      opacity: 0.8; }
    .page-course .course-related-list .activity-thumb:not([hidden]) {
      display: block;
      background: var(--bgColor-beige);
      text-align: center;
      margin: 0 0 8px 0; }
    @media (max-width: 559px) {
      .page-course .course-related-list .activity-thumb {
        width: 100%;
        height: 132px; } }
    @media (max-width: 400px) {
      .page-course .course-related-list .activity-thumb {
        height: 118px; } }
    @media (max-width: 350px) {
      .page-course .course-related-list .activity-thumb {
        height: 97px; } }
  .page-course .course-related-list .tags-list {
    max-height: 36px;
    overflow: hidden; }

.page-course #map.active #course-tab-open-button {
  display: none; }

.page-course #map.active .course-map route-map {
  height: 30em; }

.page-course #map.active #mapLinks {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: var(--margin-medium);
     -moz-column-gap: var(--margin-medium);
          column-gap: var(--margin-medium);
  row-gap: var(--margin-small);
  padding: var(--margin-small) var(--margin-default) var(--margin-medium);
  margin: 0 0 var(--margin-large);
  border-bottom: 1px solid var(--borderColor-lightGray); }
  .page-course #map.active #mapLinks a {
    font-size: var(--fontSize-small); }

.page-course #map #course-tab-open-button a:after {
  content: "▶︎";
  display: inline-block;
  margin: 0 0 0 0.25em;
  font-size: 0.9em;
  -webkit-transform: translateY(-0.05em);
          transform: translateY(-0.05em); }

.page-course #mapContents {
  margin: var(--margin-default) 0 0;
  padding: var(--margin-default) 0 0;
  border-top: 1px solid var(--borderColor-lightGray);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-default); }

.page-course #mapLinks {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  margin: -4px 0 0; }
  .page-course #mapLinks a {
    display: inline-block;
    background-position: 0 center;
    background-size: 15px 15px;
    padding: 0 4px 0 21px;
    font-size: var(--fontSize-xsmall); }

.page-course #mapLinks-gpx {
  background: url("/images/icon-gpx.svg") no-repeat; }

.page-course #mapLinks-geographica {
  background: url("/images/geographica.png") no-repeat; }

@media (max-width: 768px) {
  .page-course #activities .course-mainContainer-primary > section,
  .page-course #activities .course-mainContainer-secondary > section {
    margin: var(--margin-large) 0 0; } }

.page-course #my-activity-logs,
.page-course #activities-activityAll {
  margin: var(--margin-large) 0 0; }
  .page-course #my-activity-logs list-item .component-calinkActivityLogItem,
  .page-course #activities-activityAll list-item .component-calinkActivityLogItem {
    width: 240px; }
    @media (max-width: 559px) {
      .page-course #my-activity-logs list-item .component-calinkActivityLogItem,
      .page-course #activities-activityAll list-item .component-calinkActivityLogItem {
        width: 100%; } }
  .page-course #my-activity-logs list-item .component-calinkActivityLogItem-thumbnail,
  .page-course #activities-activityAll list-item .component-calinkActivityLogItem-thumbnail {
    width: 240px;
    height: 160px;
    max-width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: var(--borderRadius-default); }
    .page-course #my-activity-logs list-item .component-calinkActivityLogItem-thumbnail:hover,
    .page-course #activities-activityAll list-item .component-calinkActivityLogItem-thumbnail:hover {
      opacity: 0.8; }
    .page-course #my-activity-logs list-item .component-calinkActivityLogItem-thumbnail:not([hidden]),
    .page-course #activities-activityAll list-item .component-calinkActivityLogItem-thumbnail:not([hidden]) {
      display: block;
      background: var(--bgColor-beige);
      text-align: center;
      margin: 0 0 8px 0; }
    @media (max-width: 559px) {
      .page-course #my-activity-logs list-item .component-calinkActivityLogItem-thumbnail,
      .page-course #activities-activityAll list-item .component-calinkActivityLogItem-thumbnail {
        width: 100%;
        height: 132px; } }
    @media (max-width: 400px) {
      .page-course #my-activity-logs list-item .component-calinkActivityLogItem-thumbnail,
      .page-course #activities-activityAll list-item .component-calinkActivityLogItem-thumbnail {
        height: 118px; } }
    @media (max-width: 350px) {
      .page-course #my-activity-logs list-item .component-calinkActivityLogItem-thumbnail,
      .page-course #activities-activityAll list-item .component-calinkActivityLogItem-thumbnail {
        height: 97px; } }

.page-course .course-ranking-detail list-item {
  position: relative;
  padding: 0 0 16px 0;
  min-height: 48px; }

.page-course .course-ranking-detail .course-ranking-detail-container {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 6px 0 0 40px; }
  .page-course .course-ranking-detail .course-ranking-detail-container:target {
    border: 1px solid #2cc555;
    -webkit-box-shadow: 0 0 0 0.2em #e8f4eb;
            box-shadow: 0 0 0 0.2em #e8f4eb;
    border-radius: 2px; }

.page-course .course-ranking-detail account-info {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 150px; }

.page-course .course-ranking-detail .course-ranking-icon {
  width: 48px;
  height: 48px;
  border-radius: 24px;
  vertical-align: middle;
  margin: 0 8px 0 0; }

.page-course .course-ranking-detail .course-ranking-detail-account {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .page-course .course-ranking-detail .course-ranking-detail-account div {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .page-course .course-ranking-detail .course-ranking-detail-account .course-ranking-name {
    color: #333;
    font-weight: bold;
    margin: 0 var(--margin-small) 0 0; }
  .page-course .course-ranking-detail .course-ranking-detail-account .course-ranking-time {
    font-family: var(--fontFamily-monospace);
    color: var(--color-darkGray); }

.page-course .course-ranking-detail .course-ranking-detail-activity {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 150px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 48px;
  margin: 0 0 0 56px; }
  .page-course .course-ranking-detail .course-ranking-detail-activity .course-ranking-detail-thumb:not([hidden]) {
    width: 48px;
    height: 48px;
    -o-object-fit: cover;
       object-fit: cover;
    display: inline-block;
    background: #f2f2f2;
    margin: 0 10px 0 0;
    -ms-flex-item-align: start;
        align-self: flex-start; }
  .page-course .course-ranking-detail .course-ranking-detail-activity .activity-title {
    margin: 0;
    font-size: var(--fontSize-xsmall); }
  .page-course .course-ranking-detail .course-ranking-detail-activity time {
    font-size: var(--fontSize-xsmall);
    color: var(--color-darkGray);
    line-height: var(--lineHeight-small); }

.page-course .course-ranking-detail-activity {
  position: relative;
  padding: 0 0 0 80px;
  min-height: 60px;
  margin-left: auto;
  -ms-flex-preferred-size: 300px;
      flex-basis: 300px; }
  .page-course .course-ranking-detail-activity .activity-title {
    margin: 8px 0 0 0;
    font-size: 0.9rem; }

.page-course .course-ranking-detail-thumb:not([hidden]) {
  width: 60px;
  height: 60px;
  max-width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: inline-block;
  background: #f2f2f2;
  position: absolute;
  left: 0; }

.page-course .course-ranking-count-container time {
  font-size: var(--fontSize-xsmall);
  color: var(--color-darkGray);
  line-height: var(--lineHeight-small); }

.page-course .course-activity-all {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 -10px;
  margin-top: 20px; }
  @media (max-width: 559px) {
    .page-course .course-activity-all list-item {
      min-width: 0; } }
  .page-course .course-activity-all list-item {
    -ms-flex-preferred-size: calc(25% - 20px);
        flex-basis: calc(25% - 20px);
    margin: 0 10px 40px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
    @media (max-width: 559px) {
      .page-course .course-activity-all list-item {
        -ms-flex-preferred-size: calc(50% - 20px);
            flex-basis: calc(50% - 20px); } }

.page-create form[data-step="1"] {
  grid-template-areas: "palette operations" "map operations" "map buttons";
  grid-template-rows: 2em auto -webkit-min-content;
  grid-template-rows: 2em auto min-content; }

.page-create form[data-step="2"] {
  grid-template-areas: "map operations" "map operations" "map buttons"; }

.page-create .container {
  padding-top: 0; }

@media (max-width: 559px) {
  .page-create {
    margin-bottom: 55px; } }

@media (max-width: 60em) {
  .page-create form {
    display: block;
    height: auto; } }

.page-create form > edit-palette {
  grid-area: palette; }

.page-create form > section:not([hidden]) {
  grid-area: operations;
  overflow: auto;
  width: auto; }

.page-create form tab-set section > h1 {
  display: none; }

@media (max-width: 559px) {
  .page-create form > route-map {
    margin: 20px 0; }
    .page-create form > route-map > map-area {
      min-height: inherit; } }

.page-create section[data-step="0"]:not([hidden]) {
  display: grid;
  grid-template: "header" "cands" "selected" "photos";
  grid-template-rows: -webkit-max-content auto auto;
  grid-template-rows: max-content auto auto; }

.page-create section[data-step="0"] h1 {
  grid-area: header; }

.page-create section[data-step="0"] tab-set {
  grid-area: cands;
  overflow: auto; }

.page-create section[data-step="0"] list-container {
  grid-area: selected;
  overflow: auto;
  font-size: 0.85rem;
  max-height: 240px; }

.page-create section[data-step="0"] list-container + list-container {
  grid-area: photos; }

list-container[loader="photoListLoader"] figure:not([hidden]) {
  display: inline-block;
  margin: 0; }

list-container[loader="photoListLoader"] img {
  max-width: 4em;
  max-height: 4em;
  -o-object-fit: cover;
  object-fit: cover; }

.create {
  max-width: 1024px;
  margin: 0 auto; }

.create-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 0 12px 0; }

.create-title {
  font-size: 20px; }

.create-description {
  margin: 0 0 20px 0;
  font-size: 0.9rem; }

.create-form {
  display: grid;
  grid-template-areas: "map operations" "map operations" "map buttons";
  grid-template-columns: auto minmax(20em, 35%);
  grid-template-rows: auto auto -webkit-min-content;
  grid-template-rows: auto auto min-content;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }

.create-route {
  grid-area: map;
  margin: 20px 40px 0 0; }
  @media (max-width: 559px) {
    .create-route {
      margin: 20px 0 0 0; } }

.route-editor header.page:not([hidden]) {
  margin: 0; }

.route-editor body:not([hidden]) {
  display: grid; }

.route-editor body {
  grid-template: "header header" -webkit-min-content "view   selector" calc(min(30em, 60vh)) "view   selected" "view   buttons" "status buttons" min-content/auto 30em;
  grid-template: "header header" min-content "view   selector" calc(min(30em, 60vh)) "view   selected" "view   buttons" "status buttons" min-content/auto 30em;
  height: 100vh;
  overflow: hidden; }

@media (max-width: 60em) {
  .route-editor body {
    grid-template: "header" "selector" "view" "buttons" "status" "selected";
    height: auto;
    overflow: auto; }
  .route-editor rb-editor-area[name=view] {
    padding-left: 1em;
    padding-right: 1em;
    height: 30em; }
  .route-editor body > form > action-status {
    margin-left: 1em;
    margin-right: 1em; } }

.route-editor body > form:not([hidden]) {
  display: contents; }

.route-editor body > form > rb-route-editor:not([hidden]) {
  display: contents; }

.route-editor rb-editor-area[name=view] {
  grid-area: view; }

.route-editor rb-editor-area[name=selector] {
  grid-area: selector; }

.route-editor rb-editor-area[name=selected] {
  grid-area: selected; }

.route-editor rb-editor-area {
  overflow: auto; }

.route-editor rb-editor-area[name=view]:not([hidden]) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.route-editor rb-editor-area[name=view] {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

.route-editor rb-editor-area[name=view] > route-map {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1; }

.route-editor rb-editor-area[name=selector] {
  padding: .5em .5em 0 .5em; }

.route-editor .source-selector {
  height: 100%; }

.route-editor .source-selector > tab-set:not([hidden]) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.route-editor .source-selector > tab-set {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-bottom: .5em;
  border-bottom: 1px solid #ccc; }

.route-editor .source-selector > tab-set > section:not([hidden]).active {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.route-editor .source-selector > tab-set > section {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

.route-editor .source-selector #gpx-uploader,
.route-editor .source-selector .create-strava {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1; }

.route-editor .source-selector #gpx-uploader p {
  margin: .5em;
  max-width: 25em; }

.route-editor .source-selector #gpx-uploader button {
  font-size: 130%;
  line-height: 2; }

.route-editor .selected-item-list {
  min-height: 20em;
  padding: .5em; }

.route-editor .selected-item-list ol:not([hidden]) {
  display: block; }

.route-editor .selected-item-list ol {
  margin: 0;
  padding: 0; }

.route-editor .selected-item-list ol > li:not([hidden]) {
  display: block; }

.route-editor .selected-item-list ol > li {
  margin: 0 0 0.5em 0;
  padding: 0 0.5em;
  font-size: 90%; }

.route-editor .selected-item-list ol > li.error {
  padding: .5em;
  text-align: start; }

.route-editor .selected-item-list ol > li input[type=checkbox] {
  margin-left: 0;
  padding-left: 0; }

.route-editor .selected-item-list ol > li p {
  margin-left: 1em; }

.route-editor .selected-item-list ol > li .buttons {
  text-align: end; }

.route-editor rb-route-editor > .buttons {
  grid-area: buttons;
  -ms-flex-item-align: center;
      align-self: center;
  justify-self: end;
  padding: .5em; }

.route-editor rb-route-editor > .buttons button {
  min-width: 10em;
  line-height: 2; }

.route-editor body > form > action-status {
  grid-area: status; }

.route-editor dialog-backdrop:not([hidden]) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.route-editor dialog-backdrop {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: rgba(0, 0, 0, 0.3);
  color: black; }

.route-editor dialog-backdrop > section {
  width: 30em;
  min-height: 20em;
  max-width: 90vw;
  max-height: 90vh;
  background: var(--dialog-background-color);
  color: var(--dialog-color);
  overflow: auto; }

.route-editor dialog-backdrop > section > header {
  text-align: end; }

.route-editor dialog-backdrop > section > p,
.route-editor dialog-backdrop > section > ul {
  margin-left: .5em;
  margin-right: .5em;
  width: auto; }

.create-step-number {
  display: inline-block;
  background: #f2f2f2;
  color: #888888;
  padding: 2px 8px;
  font-size: 12px;
  border-radius: 12px;
  font-weight: bold;
  margin: 0 0 4px; }

.create-step-title {
  display: block;
  margin: 0 0 0.8em; }

.create-tab-description {
  font-size: 14px;
  margin: 0 0 12px 0; }

.create-droparea {
  min-height: 10em;
  border: dashed black 3px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.create-droparea-text {
  color: #ccc;
  font-weight: bold;
  margin: 12px 0 0 0; }

.create-strava {
  margin: 8px 0 0 0;
  border: 1px solid #ccc; }
  .create-strava button {
    -webkit-appearance: none;
    width: 100%;
    background: transparent;
    color: black;
    border: none;
    text-align: start;
    cursor: pointer; }
    .create-strava button:hover {
      background-color: black;
      color: white; }

.create-strava-list {
  display: block; }

.create-strava-photo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .create-strava-photo list-item {
    margin: 0 4px 0 0; }

.create-strava-select popup-menu > button {
  padding: 8px 12px;
  border: 1px solid #ccc;
  border-radius: 3px; }
  .create-strava-select popup-menu > button:after {
    content: "";
    margin: 0 0 0 4px;
    width: 16px;
    height: 16px;
    display: inline-block;
    background-image: url("/images/menu.svg");
    background-size: 16px 16px;
    background-repeat: no-repeat;
    vertical-align: middle; }
  .create-strava-select popup-menu > button:hover:after {
    background-image: url("/images/menu-hover.svg"); }
  .create-strava-select popup-menu > button span {
    vertical-align: middle; }

.create-strava-account {
  background: url("/images/icon-strava.svg") no-repeat;
  background-size: 16px 16px;
  padding-left: 24px;
  min-height: 16px;
  display: inline-block; }

rb-select-multiple.create-strava-select rb-select-item:not([hidden]) {
  margin: 0;
  border-color: transparent;
  -webkit-appearance: none;
  padding: 4px 8px 4px 30px;
  min-height: 16px;
  border: none;
  border-radius: 3px;
  font-size: 0.9rem;
  background: url("/images/icon-strava.svg") no-repeat 8px center;
  background-color: transparent;
  background-size: 16px 16px;
  color: inherit; }

rb-select-multiple.create-strava-select rb-select-item:not([hidden]):hover,
rb-select-multiple.create-strava-select rb-select-item:not([hidden])[selected]:hover {
  background-color: #f2f2f2;
  color: inherit; }

rb-select-multiple.create-strava-select rb-select-viewer rb-select-item:not([hidden]) {
  display: inline-block; }

rb-select-multiple rb-select-editor.create-strava-popup-menu {
  margin: 0;
  top: 1.7em;
  width: 100%;
  border: 1px solid #e4e4e4;
  background: #fff;
  z-index: 100;
  text-align: left;
  border-radius: 2px;
  padding: 0;
  margin: 8px 0 0 0; }

.create-strava-popup-menu p a {
  margin: 8px 0 0 0; }

.create-strava-guide {
  padding: 16px; }
  .create-strava-guide h1 {
    margin: 0 0 8px 0; }
    .create-strava-guide h1 img {
      vertical-align: middle; }
    .create-strava-guide h1 span {
      color: #999;
      font-size: 12px;
      font-weight: normal;
      position: relative;
      padding-left: 22px; }
      .create-strava-guide h1 span:before {
        content: "";
        width: 10px;
        height: 1px;
        position: absolute;
        display: inline-block;
        background: #999;
        left: 8px;
        top: 6px; }

.create-strava-guide-link {
  margin: 8px 0 0 0; }
  .create-strava-guide-link a {
    background: url("/images/icon-link-outside.svg") no-repeat right 2px;
    background-size: 10px 10px;
    padding-right: 14px; }

.create-save {
  text-align: center;
  margin: 12px 0 0 0; }

.create-btn {
  grid-area: buttons;
  text-align: center;
  margin: 20px 0 0 0; }
  @media (max-width: 559px) {
    .create-btn {
      position: fixed;
      bottom: 0;
      background: #fff;
      padding: 12px 0;
      margin: 0;
      width: 100%;
      left: 0;
      right: 0;
      border-top: 1px solid #ddd; }
      .create-btn action-status {
        font-size: 0.8rem;
        position: absolute;
        top: -40px;
        left: 0;
        right: 0; }
      .create-btn action-status-message {
        background: #808080;
        padding: 2px 12px;
        border-radius: 12px;
        color: #fff;
        display: inline-block; }
      .create-btn action-status progress:not([hidden]) {
        display: inline-block;
        width: auto; } }

.create-btn-prev {
  border-color: transparent;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #fff;
  color: #999;
  padding: 4px 10px;
  font-size: 14px;
  border: 1px solid #999;
  text-align: center;
  margin-right: 4px; }
  .create-btn-prev:not([hidden]) {
    display: inline-block; }
  .create-btn-prev:hover, .create-btn-prev:active, .create-btn-prev:focus {
    background-color: #f2f2f2;
    text-decoration: none; }
  .create-btn-prev:disabled {
    background: #fff;
    opacity: 0.4;
    cursor: not-allowed; }
  @media (max-width: 559px) {
    .create-btn-prev {
      padding: 6px 12px;
      margin-right: 8px; } }

.create-btn-next {
  border-color: transparent;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #239b43;
  color: #fff;
  padding: 4px 10px;
  font-size: 14px;
  border: 1px solid #239b43;
  text-align: center; }
  .create-btn-next:not([hidden]) {
    display: inline-block; }
  .create-btn-next:hover, .create-btn-next:active, .create-btn-next:focus {
    background-color: #1e863a;
    text-decoration: none; }
  .create-btn-next:disabled {
    opacity: 0.8;
    cursor: not-allowed; }
  @media (max-width: 559px) {
    .create-btn-next {
      padding: 6px 12px; } }

.create-course-title {
  margin: 2em 0 0.4em; }

.create-course-description {
  margin: 0 0 1em 0;
  font-size: 0.85rem; }

.page-course-create route-map {
  display: block;
  height: 300px; }

.page-course-tag .course-tag-header {
  position: relative;
  margin: 0 0 24px;
  padding: 0 80px 0 0; }
  @media (max-width: 768px) {
    .page-course-tag .course-tag-header {
      padding: 0; } }
  .page-course-tag .course-tag-header popup-menu {
    position: absolute;
    top: 0;
    right: 0; }

.page-course-tag .course-tag-title {
  font-size: 1.4rem;
  margin: 0 0 4px 0; }

.page-course-tag .course-explanation {
  margin: 0 0 16px;
  font-size: 0.9rem; }
  .page-course-tag .course-explanation rb-formatted-body p {
    margin-bottom: 0.5em; }
  .page-course-tag .course-explanation rb-formatted-body course-info p,
  .page-course-tag .course-explanation rb-formatted-body activity-log-info p {
    margin-bottom: 0; }
  .page-course-tag .course-explanation .tag {
    font-size: inherit;
    font-size: normal;
    margin: 0 2px;
    text-decoration: underline;
    color: #999;
    font-weight: normal; }
  .page-course-tag .course-explanation h1 {
    font-size: 1.1rem;
    margin: 16px 0 0.75em; }

.page-course-tag .course-tag-title-sub {
  font-size: 1.1rem;
  margin: 0 0 0.75em; }

.page-course-tag .course-tag-empty {
  max-width: 640px;
  margin: 0 0 12px;
  font-size: 0.9rem; }

.page-course-tag .course-tag-contents {
  margin: 0 8px 0 0; }

.page-course-tag .course-tag-related {
  margin: 0 0 40px 0; }
  .page-course-tag .course-tag-related .tags-item {
    font-size: 16px; }

.page-course-tag .course-search {
  margin: 40px 0; }

.page-event .layout-main {
  position: relative; }

.page-event .event-header-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.page-event .event-title {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  margin: 0 var(--margin-small);
  font-size: 1.5em;
  line-height: 1.4; }

.page-event hgroup.event-title-team .event-title,
.page-event hgroup.event-title-markedpoint .event-title {
  margin: 0; }
  .page-event hgroup.event-title-team .event-title a,
  .page-event hgroup.event-title-markedpoint .event-title a {
    color: var(--color-black); }

.page-event .event-title-alternatives {
  font-size: 100%;
  font-weight: normal; }

.page-event hgroup.event-title-team h3.event-title-alternatives {
  font-size: 80%;
  text-align: right; }

.page-event .event-canceled {
  margin: 2em;
  font-size: 200%;
  font-family: serif;
  text-align: center; }

.page-event .event-canceled strong {
  font-weight: bolder;
  font-family: sans-serif;
  background: transparent;
  color: red; }

.page-event .stats .stats-block, .page-event .stats-detail .stats-block, .page-event .stats-detail-2x .stats-block {
  display: inline-block; }
  @media (max-width: 559px) {
    .page-event .stats .stats-block, .page-event .stats-detail .stats-block, .page-event .stats-detail-2x .stats-block {
      width: 100%; } }

.page-event .event-map-link {
  margin: 0 0 20px 0; }

@media (max-width: 559px) {
  .page-event .stats-detail .stats-block {
    width: 50%; } }

.page-event .pager {
  margin: 20px 0; }

.page-event .course-share {
  position: absolute;
  width: 340px;
  top: 0;
  right: -400px; }
  @media (max-width: 768px) {
    .page-event .course-share {
      position: static;
      width: 100%;
      margin: 0 0 20px 0; } }

.page-event .course-share-gpx {
  background: url("/images/icon-gpx.svg") no-repeat;
  background-size: 20px 20px;
  background-position: 10px center;
  padding: 8px 12px 8px 36px; }

.page-event .course-aside-contents {
  border: 1px solid #e4e4e4;
  padding: 24px;
  margin: 24px 0 40px 0; }
  .page-event .course-aside-contents:first-child {
    margin-top: 68px; }
  @media (max-width: 559px) {
    .page-event .course-aside-contents {
      padding: 20px; } }

.page-event .course-aside-title {
  margin: 0 0 8px; }
  .page-event .course-aside-title a {
    color: #333;
    text-decoration: none; }

.page-event .course-activity-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 -10px; }
  @media (max-width: 559px) {
    .page-event .course-activity-list list-item {
      min-width: 0; } }
  .page-event .course-activity-list list-item {
    -ms-flex-preferred-size: calc(33.334% - 20px);
        flex-basis: calc(33.334% - 20px);
    margin: 0 10px 40px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
  @media (max-width: 559px) {
    .page-event .course-activity-list list-item {
      -ms-flex-preferred-size: calc(50% - 20px);
          flex-basis: calc(50% - 20px); } }

.page-event .course-activity-empty:not([hidden]) {
  font-size: 0.9rem;
  margin: 0 0 16px;
  display: block; }

.page-event .course-details {
  margin: 4px 0 12px;
  font-size: 0.8rem;
  color: #999;
  position: relative; }
  .page-event .course-details a {
    color: #999; }
  .page-event .course-details details {
    text-align: left; }

.page-event .course-related-list course-info {
  position: static; }

.page-event .course-related-list list-item {
  margin: 0 0 20px 0;
  position: relative;
  min-height: 80px;
  padding: 0 0 0 96px; }

.page-event .course-related-list .activity-meta {
  font-size: 0.8rem; }

.page-event .course-related-list .activity-title {
  font-size: 0.9rem; }

.page-event .course-related-list .activity-thumb {
  width: 80px;
  height: 80px;
  left: 0;
  position: absolute;
  margin: 0; }

.page-event .course-related-list .activity-count {
  font-size: 0.8rem;
  right: auto;
  left: 5px; }

@media (max-width: 559px) {
  .page-event .course-related-list .activity-count {
    right: auto;
    left: 5px; } }

#results section {
  margin: 0px 0 40px;
  padding: 0; }

#result #openIbukiLive {
  margin: 0 0 var(--margin-large); }

.ranking-table-info {
  font-size: 80%;
  text-align: right;
  color: gray;
  background: transparent; }

#results .main-table {
  margin: 0.5em; }

#results .main-table th.rank,
#results .main-table td.rank {
  position: relative;
  width: 2.5em;
  text-align: center; }

#results .main-table td.rank > rb-if-value:not([hidden]) {
  display: block; }

#results .main-table td.rank > rb-if-value {
  min-height: 39px; }

#results .main-table td.team p.info {
  text-align: right; }

#results .main-table td.time {
  width: 10em; }

#results .main-table td.time p:not(.markers) {
  text-align: right; }

#results .main-table td.time .stats-value {
  font-size: 140%; }

#results .result-stage-selector {
  display: none; }

html:not(.race-staged) .stage-result {
  display: none; }

html:not(.race-staged) thead > tr:first-child > th.all-result {
  display: none; }

@media (max-width: 1020px) {
  .race-staged .result-stage-selector:not([hidden]) {
    display: block; }
  #results[data-stage="only"] .all-result {
    display: none; }
  #results:not([data-stage="only"]) .stage-result {
    display: none; } }

@media (max-width: 480px) {
  #results tr:not([hidden]) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  #results tr > .team,
  #results tr > .time {
    -webkit-box-flex: 2;
        -ms-flex-positive: 2;
            flex-grow: 2; }
  #results tr > .markedPoint {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; } }

.sort-buttons {
  float: right; }

.sort-buttons .sort-button {
  display: block;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  line-height: 1;
  min-width: 0;
  width: auto;
  font-size: 70%;
  background: transparent;
  color: gray;
  border: none;
  padding: 0.5em; }

.raw-matrix-table {
  margin-top: 0.5em;
  margin-bottom: 0.5em; }

.raw-matrix-table can-copy {
  --paco-copy-button-label: "複"; }

.raw-matrix-table td {
  vertical-align: bottom;
  min-width: 8rem; }

.raw-matrix-table > thead > tr > td {
  position: sticky;
  top: 0;
  background-color: var(--header-background-color);
  color: var(--header-color);
  z-index: 100; }

.raw-matrix-table > tfoot > tr > td {
  /*  position: sticky;
  bottom: 0; */
  background-color: var(--header-background-color);
  color: var(--header-color);
  vertical-align: top; }

.raw-matrix-table > tbody > tr > td:first-child {
  position: sticky;
  left: 0;
  background-color: var(--header-background-color);
  color: var(--header-color); }

.raw-matrix-table rb-raw-matrix-mp:not([hidden]) {
  display: grid; }

.raw-matrix-table rb-raw-matrix-mp {
  grid-template: "name  name  name" "abbr  dk    sort" "links links sort" / auto auto -webkit-min-content;
  grid-template: "name  name  name" "abbr  dk    sort" "links links sort" / auto auto min-content;
  padding: 0.5em 0 0 0; }

.raw-matrix-table tfoot rb-raw-matrix-mp {
  grid-template: "links links sort" "abbr  dk    sort" "name  name  name" / auto auto -webkit-min-content;
  grid-template: "links links sort" "abbr  dk    sort" "name  name  name" / auto auto min-content;
  padding: 0 0 0.5em 0; }

.raw-matrix-table rb-raw-matrix-mp > p:first-child:not([hidden]) {
  display: contents; }

.raw-matrix-table rb-raw-matrix-mp > p:first-child > markedpoint-icon {
  grid-area: abbr;
  -ms-flex-item-align: center;
      align-self: center;
  justify-self: center;
  text-align: center; }

.raw-matrix-table rb-raw-matrix-mp > p:first-child > bdi {
  grid-area: name;
  padding: 0 0.5em 0 0;
  font-size: 80%;
  line-height: 1;
  text-align: end; }

.raw-matrix-table rb-raw-matrix-mp > p:first-child > .sort-buttons {
  grid-area: sort;
  -ms-flex-item-align: end;
      align-self: end;
  justify-self: end; }

.raw-matrix-table tfoot rb-raw-matrix-mp > p:first-child > .sort-buttons {
  -ms-flex-item-align: start;
      align-self: start; }

.raw-matrix-table rb-raw-matrix-mp > p.info:nth-child(2) {
  grid-area: dk;
  -ms-flex-item-align: center;
      align-self: center;
  justify-self: end;
  text-align: end; }

.raw-matrix-table rb-raw-matrix-mp > p.info:nth-child(3) {
  grid-area: links; }

rb-raw-matrix-data:not([hidden]) {
  display: block; }

rb-raw-matrix-data + rb-raw-matrix-data {
  margin-top: 0.25em; }

.raw-matrix-table rb-raw-matrix-data > p:first-child {
  margin-bottom: 0.25em;
  text-align: center;
  line-height: 1; }

.raw-matrix-empty rb-raw-matrix-data,
.main-table .raw-matrix-empty rb-raw-matrix-data p.info {
  color: #eee;
  background: transparent; }

rb-raw-matrix-data > p.info:not([hidden]) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

rb-raw-matrix-data > p.info {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1; }

rb-raw-matrix-data > p.info > can-copy:not([hidden]) {
  display: contents; }

rb-raw-matrix-data > p.info > can-copy > time {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  text-align: center; }

rb-raw-matrix-data can-copy > button,
.raw-matrix-table rb-raw-matrix-data can-copy + .small-button {
  margin: 0;
  min-width: 2em; }

.raw-matrix-table .small-button {
  margin: 0 0 0 0.5em;
  padding: 0;
  line-height: 1.8;
  min-width: 2rem;
  text-align: center; }

.raw-matrix-table .small-button.raw-matrix-modified {
  color: var(--color-black);
  background: var(--color-lightGray); }

.page-event-item-index page-main {
  margin: 0 auto; }

.page-event-item-index #globalFooter {
  margin: 0; }

.page-event-item-index #eventParents {
  background: var(--bgColor-beige);
  padding: var(--margin-default) 0; }
  .page-event-item-index #eventParents .wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }

.page-event-item-index #eventParents-listMain {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-default); }
  @media (max-width: 768px) {
    .page-event-item-index #eventParents-listMain {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: var(--margin-small); } }

.page-event-item-index .eventParents-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: var(--margin-small);
  color: var(--color-black);
  font-size: var(--fontSize-small); }
  .page-event-item-index .eventParents-item svg path {
    stroke: var(--color-black); }

.page-event-item-index #eventHeader {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: var(--margin-large) 0;
  gap: var(--margin-small); }
  @media (max-width: 768px) {
    .page-event-item-index #eventHeader {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: var(--margin-default); } }
  @media (max-width: 559px) {
    .page-event-item-index #eventHeader {
      margin: var(--margin-default) 0; } }

.page-event-item-index #eventInfo-header-thumbnail {
  max-width: 160px; }
  @media (max-width: 768px) {
    .page-event-item-index #eventInfo-header-thumbnail {
      max-width: 80px; } }
  .page-event-item-index #eventInfo-header-thumbnail img {
    max-width: 100%;
    height: auto;
    vertical-align: top;
    background: var(--bgColor-beige); }

.page-event-item-index #eventHeader-content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-medium); }
  @media (max-width: 768px) {
    .page-event-item-index #eventHeader-content {
      gap: var(--margin-default); } }
  @media (max-width: 768px) {
    .page-event-item-index #eventHeader-content .object-menu {
      margin: calc(var(--margin-small) * -1) calc(var(--margin-small) * -1) 0 0; } }
  .page-event-item-index #eventHeader-content .event-popup-btn {
    height: 38px;
    margin: 0 var(--margin-small) 0 0; }
    @media (max-width: 768px) {
      .page-event-item-index #eventHeader-content .event-popup-btn {
        margin: 0; } }
  .page-event-item-index #eventHeader-content .event-popup-menu {
    margin: 0;
    width: 180px;
    border: 1px solid #e4e4e4;
    padding: 0;
    background: #fff;
    z-index: 100;
    text-align: left;
    border-radius: 2px;
    left: 0; }
    .page-event-item-index #eventHeader-content .event-popup-menu menu-item:not([hidden]) {
      display: block; }
    .page-event-item-index #eventHeader-content .event-popup-menu a,
    .page-event-item-index #eventHeader-content .event-popup-menu button {
      color: #333 !important;
      display: block;
      padding: 10px 14px;
      font-size: 12px;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      width: 100%; }
      .page-event-item-index #eventHeader-content .event-popup-menu a:hover, .page-event-item-index #eventHeader-content .event-popup-menu a:focus,
      .page-event-item-index #eventHeader-content .event-popup-menu button:hover,
      .page-event-item-index #eventHeader-content .event-popup-menu button:focus {
        background-color: #f2f2f2;
        text-decoration: none; }
    .page-event-item-index #eventHeader-content .event-popup-menu button {
      border-color: transparent;
      background-color: transparent;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      text-align: left; }
    .page-event-item-index #eventHeader-content .event-popup-menu hr {
      visibility: visible;
      border: none;
      border-top: 1px solid #e4e4e4;
      margin: 0; }
    @media (max-width: 768px) {
      .page-event-item-index #eventHeader-content .event-popup-menu {
        right: 0; } }

.page-event-item-index .event-contents {
  border-top: 1px solid #e4e4e4;
  padding: var(--margin-large) 0; }

.page-event-item-index .event-contents-title {
  font-size: 1.2rem;
  margin: 0 0 1em;
  letter-spacing: 0.04em; }
  .page-event-item-index .event-contents-title a {
    color: #333;
    text-decoration: none; }

.page-event-item-index #eventHeader-title {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0; }
  .page-event-item-index #eventHeader-title h1 {
    font-size: var(--fontSize-xxxlarge);
    letter-spacing: 1px;
    line-height: var(--lineHeight-small);
    font-family: var(--fontFamily-sans); }
    @media (max-width: 768px) {
      .page-event-item-index #eventHeader-title h1 {
        font-size: var(--fontSize-medium); } }
    .page-event-item-index #eventHeader-title h1 a {
      color: currentColor; }

.page-event-item-index #eventHeader-status {
  font-size: var(--fontSize-xsmall);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: var(--margin-small); }
  @media (max-width: 768px) {
    .page-event-item-index #eventHeader-status {
      padding: 0 38px 0 0;
      -webkit-box-sizing: border-box;
              box-sizing: border-box; } }
  .page-event-item-index #eventHeader-status rb-tag-list[filter="prefs"] {
    margin: 1px 0 0; }
  .page-event-item-index #eventHeader-status rb-tag-item:not(:last-child) a::after {
    content: "・"; }
  .page-event-item-index #eventHeader-status rb-tag-item:last-child a::after {
    content: "▶︎";
    display: inline-block;
    margin: 0 0 0 0.25em; }
  .page-event-item-index #eventHeader-status a {
    font-weight: normal;
    color: var(--color-black);
    margin: 0; }

.page-event-item-index #eventHeader-status-eventLabel {
  font-size: 14px;
  font-family: var(--fontFamily-montserrat);
  font-weight: var(--fontWeight-montserrat-extraBold);
  letter-spacing: 1px; }

.page-event-item-index #eventHeader-dateTime {
  letter-spacing: 0.75px; }
  @media (max-width: 768px) {
    .page-event-item-index #eventHeader-dateTime {
      margin: var(--margin-small) 0 0;
      font-size: var(--fontSize-xsmall); } }

.page-event-item-index #eventHeader-mapPageButton {
  width: 180px; }
  @media (max-width: 768px) {
    .page-event-item-index #eventHeader-mapPageButton {
      width: auto; } }
  .page-event-item-index #eventHeader-mapPageButton div + div {
    margin: var(--margin-small) 0 0; }
  .page-event-item-index #eventHeader-mapPageButton a {
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: var(--margin-small); }
  .page-event-item-index #eventHeader-mapPageButton enum-value {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    text-align: center; }
  .page-event-item-index #eventHeader-mapPageButton svg {
    max-width: 16px;
    height: auto; }

.page-event-item-index #eventHeader-isLive {
  text-align: center;
  font-size: var(--fontSize-xsmall);
  color: var(--color-darkGray);
  margin: var(--margin-small); }

.page-event-item-index #eventHeader-comments {
  display: none; }
  @media (max-width: 768px) {
    .page-event-item-index #eventHeader-comments {
      display: block; } }
  .page-event-item-index #eventHeader-comments a {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: var(--margin-xsmall);
    color: var(--color-black); }
  .page-event-item-index #eventHeader-comments enum-value {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial; }

.page-event-item-index #eventLive {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-default);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: var(--bgColor-beige);
  padding: var(--margin-default);
  margin: var(--margin-default) 0; }
  @media (max-width: 768px) {
    .page-event-item-index #eventLive {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }

.page-event-item-index #eventLive-content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0; }
  .page-event-item-index #eventLive-content h1 {
    font-size: var(--fontSize-default); }
    @media (max-width: 768px) {
      .page-event-item-index #eventLive-content h1 {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: var(--margin-default); } }
    .page-event-item-index #eventLive-content h1 div {
      display: inline-block; }
      @media (max-width: 768px) {
        .page-event-item-index #eventLive-content h1 div {
          -webkit-box-flex: 1;
              -ms-flex: 1;
                  flex: 1;
          min-width: 0; } }
    .page-event-item-index #eventLive-content h1 svg {
      height: 25px;
      vertical-align: bottom; }

.page-event-item-index #eventLive-description {
  margin: var(--margin-xsmall) 0 0;
  font-size: var(--fontSize-small); }
  .page-event-item-index #eventLive-description p + p {
    margin: var(--margin-xsmall) 0 0; }

.page-event-item-index #eventLive-button .btn-white-medium, .page-event-item-index #eventLive-button .create-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: var(--margin-small); }

.page-event-item-index #eventCourse {
  padding: 0 0 var(--margin-xlarge); }
  @media (max-width: 768px) {
    .page-event-item-index #eventCourse {
      padding: 0; } }

.page-event-item-index #eventDataAndActions {
  display: grid;
  grid-template-columns: auto 1fr auto;
  grid-template-rows: auto 1fr;
  grid-template-areas: "title       stats actions" "statsDetail stats actions";
  margin: var(--margin-large) 0 0 0;
  position: relative;
  -webkit-column-gap: var(--margin-large);
     -moz-column-gap: var(--margin-large);
          column-gap: var(--margin-large); }
  @media (max-width: 768px) {
    .page-event-item-index #eventDataAndActions {
      grid-template-columns: 70px 1fr;
      grid-template-rows: auto auto auto;
      grid-template-areas: "actions actions" "title stats" "title statsDetail"; } }

.page-event-item-index #eventCourse-dataTitle {
  grid-area: title;
  font-family: var(--fontFamily-montserrat);
  font-weight: var(--fontWeight-montserrat-extraBold);
  letter-spacing: 0.05em;
  font-size: var(--fontSize-small); }
  @media (max-width: 768px) {
    .page-event-item-index #eventCourse-dataTitle {
      padding: var(--margin-default) 0 0; } }

.page-event-item-index #eventCourse-stats {
  grid-area: stats;
  border-left: 1px solid var(--color-black);
  padding: 0 0 0 var(--margin-large); }
  @media (max-width: 768px) {
    .page-event-item-index #eventCourse-stats {
      border: none;
      padding: 0; } }
  .page-event-item-index #eventCourse-stats .component-courseStats {
    gap: var(--margin-medium); }
    .page-event-item-index #eventCourse-stats .component-courseStats route-stats ul {
      gap: var(--margin-medium); }
      @media (max-width: 768px) {
        .page-event-item-index #eventCourse-stats .component-courseStats route-stats ul {
          gap: var(--paddingVertical) 0; } }
    .page-event-item-index #eventCourse-stats .component-courseStats route-stats li {
      margin: 0; }
  .page-event-item-index #eventCourse-stats .component-courseStats-tags {
    margin: 0; }
    .page-event-item-index #eventCourse-stats .component-courseStats-tags rb-tag-list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      gap: var(--margin-small); }

.page-event-item-index #eventCourse-statsDetail {
  grid-area: statsDetail; }
  @media (max-width: 768px) {
    .page-event-item-index #eventCourse-statsDetail {
      padding: var(--margin-default) 0 0 0; } }
  .page-event-item-index #eventCourse-statsDetail details summary {
    font-size: var(--fontSize-xsmall);
    padding: 0 0 var(--margin-default) 3px; }
    @media (max-width: 768px) {
      .page-event-item-index #eventCourse-statsDetail details summary {
        padding: 0 0 var(--margin-default);
        font-size: var(--fontSize-xxsmall);
        color: var(--color-darkGray); } }
  .page-event-item-index #eventCourse-statsDetail details route-stats {
    position: absolute;
    left: 0;
    border-radius: var(--borderRadius-default);
    -webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
            box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
    background: var(--color-white);
    padding: var(--margin-default);
    z-index: 1;
    display: block; }
    @media (max-width: 768px) {
      .page-event-item-index #eventCourse-statsDetail details route-stats {
        position: static;
        -webkit-box-shadow: none;
                box-shadow: none;
        padding: 0 0 var(--margin-default); } }
    .page-event-item-index #eventCourse-statsDetail details route-stats::before {
      content: "";
      display: block;
      z-index: -1;
      border-radius: var(--borderRadius-default);
      border: 1px solid rgba(0, 0, 0, 0.1);
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      -webkit-box-sizing: border-box;
              box-sizing: border-box; }
      @media (max-width: 768px) {
        .page-event-item-index #eventCourse-statsDetail details route-stats::before {
          display: none; } }

.page-event-item-index #eventCourse-actions {
  grid-area: actions;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-default);
  -ms-flex-pack: distribute;
      justify-content: space-around;
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly; }
  @media (max-width: 768px) {
    .page-event-item-index #eventCourse-actions {
      border-bottom: 1px solid var(--borderColor-default);
      padding: 0 0 var(--margin-large); } }
  .page-event-item-index #eventCourse-actions a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: calc(var(--margin-small) + var(--margin-xsmall));
    font-size: var(--fontSize-xsmall);
    line-height: var(--lineHeight-small);
    width: 80px;
    text-align: center;
    color: var(--color-black); }
  .page-event-item-index #eventCourse-actions svg,
  .page-event-item-index #eventCourse-actions img {
    width: 24px;
    height: 24px; }

.page-event-item-index #eventInfo {
  border-top: 1px solid var(--borderColor-default);
  overflow: hidden; }
  @media (max-width: 768px) {
    .page-event-item-index #eventInfo {
      border: none; } }
  @media (max-width: 768px) {
    .page-event-item-index #eventInfo .wrapper {
      padding: 0; } }

.page-event-item-index #eventInfo-main {
  padding: var(--margin-large) 0; }
  @media (max-width: 768px) {
    .page-event-item-index #eventInfo-main {
      margin-left: auto;
      margin-right: auto; } }
  @media (max-width: 768px) and (max-width: 1080px) {
    .page-event-item-index #eventInfo-main {
      padding: 0 30px; } }
  @media (max-width: 768px) and (max-width: 559px) {
    .page-event-item-index #eventInfo-main {
      padding: 0 20px; } }
  @media (max-width: 768px) and (max-width: 350px) {
    .page-event-item-index #eventInfo-main {
      padding: 0 12px; } }
  @media (max-width: 768px) {
    .page-event-item-index #eventInfo-main > *:first-of-type {
      border-top: 1px solid var(--borderColor-default);
      padding-top: var(--margin-large); } }
  .page-event-item-index #eventInfo-main section:not([hidden]) h1 {
    font-size: 1.2rem;
    margin: 0 0 var(--margin-default); }
    @media (max-width: 559px) {
      .page-event-item-index #eventInfo-main section:not([hidden]) h1 {
        margin: 0 0 1em; } }
  .page-event-item-index #eventInfo-main section:not([hidden]) list-item:not(:first-child) {
    margin: var(--margin-default) 0 0; }

.page-event-item-index #eventInfo-plane + #eventInfo-summary {
  border-top: 1px solid var(--borderColor-default);
  padding-top: var(--margin-large);
  margin-top: var(--margin-large); }

.page-event-item-index #eventInfo-planeList {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--margin-xlarge) var(--margin-large); }
  @media (max-width: 768px) {
    .page-event-item-index #eventInfo-planeList {
      grid-template-columns: 1fr;
      gap: var(--margin-default); } }
  .page-event-item-index #eventInfo-planeList li:nth-child(2n + 1):not(:first-of-type) {
    position: relative; }
    .page-event-item-index #eventInfo-planeList li:nth-child(2n + 1):not(:first-of-type)::before {
      content: "";
      display: block;
      width: calc(200% + var(--margin-large));
      height: 0;
      border-top: 1px dotted var(--borderColor-default);
      position: absolute;
      top: calc(var(--margin-large) * -1);
      left: 0; }

.page-event-item-index .eventInfo-planeItem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-default); }
  .page-event-item-index .eventInfo-planeItem a {
    display: block; }
    .page-event-item-index .eventInfo-planeItem a:hover, .page-event-item-index .eventInfo-planeItem a:focus {
      text-decoration: none; }
      .page-event-item-index .eventInfo-planeItem a:hover .eventInfo-planeItem-linkLabel, .page-event-item-index .eventInfo-planeItem a:focus .eventInfo-planeItem-linkLabel {
        text-decoration: underline; }
  .page-event-item-index .eventInfo-planeItem > div {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0; }
  .page-event-item-index .eventInfo-planeItem img {
    max-width: 80px;
    height: auto;
    background: var(--bgColor-beige); }
  .page-event-item-index .eventInfo-planeItem .eventInfo-planeItem-primaryLinkLabel {
    color: var(--color-black);
    font-weight: var(--fontWeight-bold); }

.page-event-item-index .eventInfo-planeItem-resultsLink {
  font-size: var(--fontSize-small);
  line-height: 1; }

.page-event-item-index #eventInfo-summary {
  overflow: hidden;
  border: none;
  padding: 0; }
  .page-event-item-index #eventInfo-summary > h1 {
    font-size: var(--fontSize-large); }
  .page-event-item-index #eventInfo-summary rb-tag-list {
    margin: var(--margin-small) 0 0; }

.page-event-item-index #eventInfo-summary-descriptionBody {
  margin: var(--margin-default) 0 0;
  font-size: var(--fontSize-default); }

.page-event-item-index #eventData {
  margin: var(--margin-large) 0 0;
  border-bottom: 1px solid var(--borderColor-default); }
  .page-event-item-index #eventData div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-top: 1px solid var(--borderColor-default);
    padding: var(--margin-small) 0; }
  .page-event-item-index #eventData dt {
    width: 7em;
    font-weight: bold;
    font-size: var(--fontSize-xsmall);
    margin: 4px 0 0; }
  .page-event-item-index #eventData dd {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    margin: 0;
    font-size: var(--fontSize-default); }
  .page-event-item-index #eventData span {
    display: inline-block; }
    .page-event-item-index #eventData span:first-child {
      margin: 0 var(--margin-small) 0 0; }
    @media (max-width: 768px) {
      .page-event-item-index #eventData span {
        display: block; } }

.page-event-item-index #eventData-host account-info {
  display: block; }

.page-event-item-index #eventData-host a {
  vertical-align: middle;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: var(--color-black); }
  .page-event-item-index #eventData-host a:hover, .page-event-item-index #eventData-host a:focus {
    color: var(--color-primary); }

.page-event-item-index #eventData-host img {
  width: 20px;
  height: 20px;
  border-radius: 10px;
  margin: 0 8px 0 -2px; }

.page-event-item-index #eventDateTime {
  font-size: var(--fontSize-xsmall);
  color: var(--color-darkGray);
  margin: var(--margin-default) 0 var(--margin-xlarge);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-default); }
  @media (max-width: 768px) {
    .page-event-item-index #eventDateTime {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: 0; } }

.page-event-item-index #activity-logs .course-activity-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 -10px;
  margin-top: 20px; }
  @media (max-width: 559px) {
    .page-event-item-index #activity-logs .course-activity-list list-item {
      min-width: 0; } }
  .page-event-item-index #activity-logs .course-activity-list list-item {
    -ms-flex-preferred-size: calc(33.333333% - 20px);
        flex-basis: calc(33.333333% - 20px);
    margin: 0 10px 40px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
    @media (max-width: 559px) {
      .page-event-item-index #activity-logs .course-activity-list list-item {
        -ms-flex-preferred-size: calc(50% - 20px);
            flex-basis: calc(50% - 20px); } }

.page-event-item-index #activity-logs .log-create svg,
.page-event-item-index #activity-logs .log-create span {
  vertical-align: middle; }

.page-event-item-index #event-activity-notes {
  padding: 12px 16px;
  font-size: 14px;
  margin: 32px 0 0 0;
  border: 1px solid #e4e4e4; }

.page-event-item-index #comments {
  position: relative; }
  @media (max-width: 768px) {
    .page-event-item-index #comments {
      background: var(--bgColor-beige); } }
  .page-event-item-index #comments::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100%;
    background: var(--bgColor-beige);
    z-index: -1; }
    @media (max-width: 768px) {
      .page-event-item-index #comments::before {
        display: none; } }

.page-event-item-index #eventInfo-sidebar {
  padding: var(--margin-large) 0 var(--margin-large) var(--margin-default); }
  @media (max-width: 768px) {
    .page-event-item-index #eventInfo-sidebar {
      padding: var(--margin-large) 0; } }

.page-event-item-index #results .layout-container {
  margin: var(--margin-large) 0 0; }

.page-event-item-index #comments .component-commentSection-title {
  margin-left: var(--margin-default); }

.map-page {
  scroll-behavior: smooth; }

.map-page-outer {
  height: 100dvh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media (max-width: 768px) {
    .map-page-outer {
      display: block;
      height: auto; } }
  @media (max-width: 768px) {
    .map-page-outer rb-route-map-container {
      height: calc(100svh - var(--navigationHeight, 60px) - 100px);
      position: sticky;
      top: 0; } }
  .map-page-outer #eventInfo {
    height: 100dvh;
    width: 350px;
    line-height: 1.5;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    color: var(--color-white);
    background: var(--color-black);
    position: relative; }
    .map-page-outer #eventInfo:has(#media list-main:empty) #eventInfoTab-media {
      display: none; }
    @media (max-width: 768px) {
      .map-page-outer #eventInfo {
        width: 100%;
        position: relative;
        z-index: 1;
        -webkit-box-shadow: 0 -3px 5px rgba(0, 0, 0, 0.15);
                box-shadow: 0 -3px 5px rgba(0, 0, 0, 0.15); } }
    .map-page-outer #eventInfo .event-popup-btn {
      -webkit-appearance: none;
      border: none;
      color: var(--color-white);
      background-color: transparent;
      padding-right: var(--margin-default);
      padding-left: var(--margin-default);
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
    .map-page-outer #eventInfo .event-popup-menu {
      margin: 0;
      width: 200px;
      border: 1px solid #e4e4e4;
      padding: 0;
      background: #fff;
      z-index: 100;
      text-align: left;
      border-radius: 2px;
      border-color: var(--color-richBlack);
      right: 0; }
      .map-page-outer #eventInfo .event-popup-menu menu-item:not([hidden]) {
        display: block; }
      .map-page-outer #eventInfo .event-popup-menu a,
      .map-page-outer #eventInfo .event-popup-menu label,
      .map-page-outer #eventInfo .event-popup-menu button {
        color: #333 !important;
        display: block;
        padding: 10px 14px;
        font-size: 12px;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        width: 100%; }
        .map-page-outer #eventInfo .event-popup-menu a:hover, .map-page-outer #eventInfo .event-popup-menu a:focus,
        .map-page-outer #eventInfo .event-popup-menu button:hover,
        .map-page-outer #eventInfo .event-popup-menu label:focus,
        .map-page-outer #eventInfo .event-popup-menu label:hover,
        .map-page-outer #eventInfo .event-popup-menu button:focus {
          background-color: #f2f2f2;
          text-decoration: none; }
      .map-page-outer #eventInfo .event-popup-menu button {
        border-color: transparent;
        background-color: transparent;
        -webkit-appearance: none;
           -moz-appearance: none;
                appearance: none;
        text-align: left; }
      .map-page-outer #eventInfo .event-popup-menu hr {
        visibility: visible;
        border: none;
        border-top: 1px solid #e4e4e4;
        margin: 0; }
    .map-page-outer #eventInfo rb-with-menu {
      position: relative; }
    .map-page-outer #eventInfo rb-with-menu-main {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      min-width: 0; }
  @media (max-width: 768px) {
    .map-page-outer #eventInfoNavigation {
      position: fixed;
      bottom: 0;
      left: 0;
      width: 100%;
      z-index: 2; } }
  .map-page-outer #eventInfoNavigation:has(#tab-teams:checked) ~ #teams,
  .map-page-outer #eventInfoNavigation:has(#tab-media:checked) ~ #media,
  .map-page-outer #eventInfoNavigation:has(#tab-info:checked) ~ #info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .map-page-outer #eventContentsPlayer:not([hidden]) {
    display: block; }
  @media (min-width: 769px) {
    .map-page-outer #eventContentsPlayer {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      z-index: 2; } }
  .map-page-outer .eventContentsPlayer-listen {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border-top: 1px solid var(--color-richBlack);
    background: var(--color-black); }
  .map-page-outer .eventContentsPlayer-listen-thumbnail {
    padding: var(--margin-small); }
    .map-page-outer .eventContentsPlayer-listen-thumbnail img {
      background: var(--color-ibukiDarkGray);
      width: 32px;
      height: 32px;
      border-radius: var(--borderRadius-default);
      vertical-align: top; }
  .map-page-outer .eventContentsPlayer-listen-title {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    font-size: var(--fontSize-small);
    line-height: var(--lineHeight-small);
    padding: var(--margin-small) 0; }
  .map-page-outer .eventContentsPlayer-listen-episodeTitle {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    display: inline-block;
    width: 100%;
    vertical-align: bottom; }
  .map-page-outer .eventContentsPlayer-listen-media {
    color: var(--color-mediumGray);
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    display: inline-block;
    width: 100%;
    vertical-align: bottom; }
  .map-page-outer .eventContentsPlayer-listen-actions {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .map-page-outer .eventContentsPlayer-listen-actions button {
      width: 48px;
      height: 48px;
      line-height: 48px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      background: none;
      border: none;
      padding: 0;
      color: var(--color-white); }
  .map-page-outer .eventContentsPlayer-youtube {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding-left: 48px; }
  .map-page-outer .eventContentsPlayer-youtube-contents {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background: var(--color-black); }
  .map-page-outer .eventContentsPlayer-youtube-video img {
    background: var(--color-ibukiDarkGray);
    width: 200px;
    height: 110px;
    vertical-align: top; }
  .map-page-outer .eventContentsPlayer-youtube-actions button {
    width: 48px;
    height: 48px;
    line-height: 48px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background: none;
    border: none;
    padding: 0;
    color: var(--color-white); }
  .map-page-outer #eventInfoTab {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background: var(--color-black);
    border-bottom: 1px solid var(--color-richBlack); }
    @media (max-width: 768px) {
      .map-page-outer #eventInfoTab {
        border: none;
        border-top: 1px solid var(--color-richBlack); } }
    .map-page-outer #eventInfoTab label {
      cursor: pointer;
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      gap: var(--margin-xsmall);
      padding: var(--margin-small) var(--margin-default);
      padding-bottom: calc(var(--margin-small) + env(safe-area-inset-bottom));
      color: var(--color-white);
      font-size: var(--fontSize-xxsmall);
      position: relative;
      margin: 0; }
      .map-page-outer #eventInfoTab label:hover {
        background: #292929; }
      .map-page-outer #eventInfoTab label:has(input:checked) {
        color: var(--color-green); }
      .map-page-outer #eventInfoTab label input {
        position: absolute;
        top: 0;
        left: 0;
        opacity: 0; }
      .map-page-outer #eventInfoTab label svg {
        width: 22px;
        height: 22px; }
  .map-page-outer #teams,
  .map-page-outer #media,
  .map-page-outer #info {
    display: none;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-height: 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .map-page-outer .backToTop {
    position: relative;
    padding: var(--margin-small) 0;
    display: none; }
    @media (max-width: 768px) {
      .map-page-outer .backToTop {
        display: block; } }
    .map-page-outer .backToTop span {
      position: absolute;
      width: 1px;
      height: 1px;
      overflow: hidden;
      white-space: nowrap;
      -webkit-clip-path: polygon(0 0, 1px 0, 1px 1px, 0 1px);
              clip-path: polygon(0 0, 1px 0, 1px 1px, 0 1px); }
    .map-page-outer .backToTop::before {
      content: "";
      display: block;
      width: 72px;
      height: 4px;
      border-radius: 2px;
      background: var(--color-darkGray);
      margin: 0 auto; }
  @media (max-width: 768px) {
    .map-page-outer .eventInfo-header {
      position: sticky;
      top: 0;
      z-index: 1; } }
  .map-page-outer .eventInfo-contents {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    overflow: auto;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    z-index: 0;
    padding-bottom: calc( var(--margin-default) + var(--navigationHeight, 100px)); }
    @media (min-width: 769px) {
      .map-page-outer .eventInfo-contents {
        padding-bottom: 126px; } }
  .map-page-outer #media .eventInfo-contents list-main {
    display: block; }
  .map-page-outer #media .eventInfo-contents list-item {
    display: block;
    padding: var(--margin-small) var(--margin-default); }
  .map-page-outer #media .eventInfo-contents iframe {
    border-radius: var(--borderRadius-large);
    vertical-align: top; }
  .map-page-outer #media .eventInfo-contents .list-prev,
  .map-page-outer #media .eventInfo-contents .list-next {
    padding: 0 var(--margin-default);
    width: 100%;
    background: none;
    border: none; }
    .map-page-outer #media .eventInfo-contents .list-prev:hover, .map-page-outer #media .eventInfo-contents .list-prev:focus-visible,
    .map-page-outer #media .eventInfo-contents .list-next:hover,
    .map-page-outer #media .eventInfo-contents .list-next:focus-visible {
      outline: none; }
      .map-page-outer #media .eventInfo-contents .list-prev:hover div, .map-page-outer #media .eventInfo-contents .list-prev:focus-visible div,
      .map-page-outer #media .eventInfo-contents .list-next:hover div,
      .map-page-outer #media .eventInfo-contents .list-next:focus-visible div {
        color: var(--color-lightGray);
        background: #4b4b4b; }
    .map-page-outer #media .eventInfo-contents .list-prev:focus-visible div,
    .map-page-outer #media .eventInfo-contents .list-next:focus-visible div {
      border: 1px solid var(--color-green); }
    .map-page-outer #media .eventInfo-contents .list-prev:active div,
    .map-page-outer #media .eventInfo-contents .list-next:active div {
      background: #454545; }
    .map-page-outer #media .eventInfo-contents .list-prev div,
    .map-page-outer #media .eventInfo-contents .list-next div {
      background: #555;
      color: var(--color-lightGray);
      border: 1px solid transparent;
      border-radius: var(--borderRadius-default);
      display: block;
      padding: var(--margin-small) var(--margin-default);
      text-align: center;
      font-size: var(--fontSize-default);
      text-decoration: none; }
      @media (max-width: 768px) {
        .map-page-outer #media .eventInfo-contents .list-prev div,
        .map-page-outer #media .eventInfo-contents .list-next div {
          padding: 0.8em 0.5em !important; } }
  .map-page-outer #media .eventInfo-contents .list-prev {
    margin: 0 0 var(--margin-small); }
  .map-page-outer #media .eventInfo-contents .list-next {
    margin: var(--margin-small) 0 0; }
  .map-page-outer #elapsedTime {
    padding: var(--margin-small) 0;
    font-size: var(--fontSize-xsmall);
    text-align: center;
    font-family: var(--fontFamily-monospace);
    color: var(--color-dullGray);
    min-height: 34px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0 0 0 50px; }
    .map-page-outer #elapsedTime .clock-delta {
      font-size: 150%; }
      .map-page-outer #elapsedTime .clock-delta:not([hidden]) {
        display: block; }

@keyframes blink {
  0% {
    opacity: 0.5; }
  100% {
    opacity: 1; } }
  .map-page-outer #elapsedTime-live {
    font-weight: var(--fontWeight-bold);
    color: var(--color-green);
    letter-spacing: 1.5px;
    -webkit-animation: blink 1s ease-in-out infinite alternate;
            animation: blink 1s ease-in-out infinite alternate; }
  .map-page-outer .list-filter {
    background: var(--color-black);
    padding: 0 var(--margin-small) var(--margin-small) var(--margin-small);
    border-bottom: 1px solid var(--color-richBlack);
    position: sticky;
    top: 0;
    z-index: 2; }
    .map-page-outer .list-filter:not([hidden]) {
      display: block; }
    .map-page-outer .list-filter[hidden] + list-main::before {
      content: "";
      display: block;
      top: 0;
      left: 0;
      width: 100%;
      height: 0;
      border-bottom: 1px solid var(--color-richBlack);
      position: sticky;
      top: 0; }
  .map-page-outer #map-controller {
    padding: 0 var(--margin-small) var(--margin-small);
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
    .map-page-outer #map-controller section {
      background: #1e1e1e;
      border-radius: var(--borderRadius-large); }
    .map-page-outer #map-controller details[open] summary svg {
      -webkit-transform: rotate(90deg);
              transform: rotate(90deg); }
    .map-page-outer #map-controller summary {
      list-style-type: none;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      gap: var(--margin-small);
      padding: calc(var(--margin-small) + var(--margin-xsmall)) var(--margin-small) calc(var(--margin-small) + var(--margin-xsmall)) var(--margin-default); }
      .map-page-outer #map-controller summary::-webkit-details-marker {
        display: none; }
      .map-page-outer #map-controller summary svg {
        width: 12px;
        height: 12px; }
    .map-page-outer #map-controller header {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      min-width: 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .map-page-outer #map-controller header div {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: end;
            -ms-flex-pack: end;
                justify-content: end;
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1; }
    .map-page-outer #map-controller enum-value {
      font-size: 13px; }
    .map-page-outer #map-controller .ui-select {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      margin: 0 var(--margin-small) 0 0;
      position: relative; }
      .map-page-outer #map-controller .ui-select:hover::before, .map-page-outer #map-controller .ui-select:focus::before {
        content: "";
        background: var(--color-lightGray);
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: -2; }
      .map-page-outer #map-controller .ui-select img {
        position: absolute;
        right: 4px;
        top: 50%;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
        z-index: -1;
        display: none; }
    .map-page-outer #map-controller select:not([hidden]) {
      display: inline-block;
      border: none;
      min-width: auto;
      padding: 0 8px;
      background: none;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      cursor: pointer;
      text-align: center;
      color: var(--color-white);
      border-radius: var(--borderRadius-default); }
      .map-page-outer #map-controller select:not([hidden]):hover, .map-page-outer #map-controller select:not([hidden]):focus {
        background: var(--color-black); }
      .map-page-outer #map-controller select:not([hidden]) + img {
        display: inline; }
    .map-page-outer #map-controller a[target="help"] {
      margin-left: 0.5em;
      font-size: 13px; }
  .map-page-outer #map-controller-content {
    padding: 0 var(--margin-small) var(--margin-small); }
    .map-page-outer #map-controller-content input[type="range"] {
      width: 100%;
      margin: 0;
      cursor: pointer; }
    .map-page-outer #map-controller-content .map-controls {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: distribute;
          justify-content: space-around;
      margin: var(--margin-small) 0 0; }
      .map-page-outer #map-controller-content .map-controls button {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
        border: none;
        background: none;
        padding: 0;
        color: var(--color-white);
        border-radius: var(--borderRadius-default); }
        .map-page-outer #map-controller-content .map-controls button:hover, .map-page-outer #map-controller-content .map-controls button:focus {
          background: var(--color-black); }
  .map-page-outer #list-filter-field {
    background-color: #555;
    color: var(--color-white);
    border-radius: var(--borderRadius-default);
    padding: 0 0 0 var(--margin-default);
    color: var(--color-mediumGray);
    border: 2px solid transparent;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    cursor: text;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .map-page-outer #list-filter-field:hover {
      background-color: #4b4b4b; }
      .map-page-outer #list-filter-field:hover input[type="search"] {
        background-color: #4b4b4b; }
    .map-page-outer #list-filter-field:focus-within {
      background: var(--color-richBlack);
      color: var(--color-white);
      border-color: var(--color-green); }
      .map-page-outer #list-filter-field:focus-within input[type="search"] {
        background: var(--color-richBlack);
        color: var(--color-white); }
        .map-page-outer #list-filter-field:focus-within input[type="search"]::-webkit-input-placeholder {
          color: var(--color-dullGray); }
        .map-page-outer #list-filter-field:focus-within input[type="search"]::-moz-placeholder {
          color: var(--color-dullGray); }
        .map-page-outer #list-filter-field:focus-within input[type="search"]::-ms-input-placeholder {
          color: var(--color-dullGray); }
        .map-page-outer #list-filter-field:focus-within input[type="search"]::placeholder {
          color: var(--color-dullGray); }
    .map-page-outer #list-filter-field input[type="search"] {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      min-width: 0;
      background-color: #555;
      border: none;
      outline: none;
      border-radius: var(--borderRadius-default);
      padding: 8px var(--margin-default);
      line-height: 1;
      color: var(--color-white); }
      .map-page-outer #list-filter-field input[type="search"]::-webkit-input-placeholder {
        color: var(--color-mediumGray); }
      .map-page-outer #list-filter-field input[type="search"]::-moz-placeholder {
        color: var(--color-mediumGray); }
      .map-page-outer #list-filter-field input[type="search"]::-ms-input-placeholder {
        color: var(--color-mediumGray); }
      .map-page-outer #list-filter-field input[type="search"]::placeholder {
        color: var(--color-mediumGray); }
  .map-page-outer #changeAllButtons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: var(--margin-small);
    padding: 0 var(--margin-small) var(--margin-small); }
    .map-page-outer #changeAllButtons button {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      background: #555;
      color: var(--color-lightGray);
      border: none;
      border-radius: var(--borderRadius-default);
      font-size: 12px; }
      @media (max-width: 768px) {
        .map-page-outer #changeAllButtons button {
          padding: 0.8em 0.5em !important; } }
      .map-page-outer #changeAllButtons button:hover, .map-page-outer #changeAllButtons button:focus-visible {
        background: #4b4b4b; }
      .map-page-outer #changeAllButtons button:active {
        background: #454545; }
  .map-page-outer list-is-empty {
    color: var(--color-dullGray);
    border-top: 1px solid var(--color-richBlack);
    height: var(--button-height);
    line-height: var(--button-height);
    text-align: center;
    margin: 0; }
  .map-page-outer #selector-select .map-team-item {
    border-bottom: 1px solid var(--color-richBlack);
    position: relative; }
  .map-page-outer #selector-select .map-plane-item {
    --bgcolor: #292929;
    background: var(--bgcolor);
    border-bottom: 1px solid var(--color-richBlack); }
    .map-page-outer #selector-select .map-plane-item button {
      height: auto;
      line-height: var(--lineHeight-small);
      padding-top: var(--margin-small);
      padding-bottom: var(--margin-small);
      color: var(--color-white); }
    .map-page-outer #selector-select .map-plane-item .toggle-button {
      background: var(--bgcolor);
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      font-size: var(--fontSize-xsmall);
      padding-left: var(--margin-xsmall);
      padding-right: 50px;
      gap: var(--margin-small); }
      .map-page-outer #selector-select .map-plane-item .toggle-button::before {
        content: url(/images/icon-accordion-close.svg);
        height: 16px; }
      .map-page-outer #selector-select .map-plane-item .toggle-button.active::before {
        content: url(/images/icon-accordion-open.svg); }
    .map-page-outer #selector-select .map-plane-item .toggle-button-indicator {
      visibility: visible; }
    .map-page-outer #selector-select .map-plane-item .object-menu {
      position: absolute;
      top: 50%;
      right: 2px;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      z-index: 1; }
      .map-page-outer #selector-select .map-plane-item .object-menu .event-popup-btn {
        margin: 0 0 0 auto; }
  .map-page-outer .toggle-button {
    -webkit-appearance: none;
    width: 100%;
    border: none;
    border-left: 8px solid transparent;
    padding: 0 calc(var(--margin-small) + var(--button-height)) 0 var(--margin-default);
    text-align: left;
    background: var(--color-black);
    height: var(--button-height);
    line-height: var(--button-height);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    outline: none;
    font-size: var(--fontSize-default);
    color: var(--color-dullGray); }
    .map-page-outer .toggle-button[data-mode="tracked"] {
      color: var(--color-green); }
      .map-page-outer .toggle-button[data-mode="tracked"] .toggle-button-indicator {
        visibility: visible; }
      .map-page-outer .toggle-button[data-mode="tracked"] team-icon {
        color: var(--color-white);
        color: var(--color-green); }
    .map-page-outer .toggle-button[data-mode="showHistory"], .map-page-outer .toggle-button[data-mode="showCurrent"] {
      color: var(--color-white); }
      .map-page-outer .toggle-button[data-mode="showHistory"] team-icon, .map-page-outer .toggle-button[data-mode="showCurrent"] team-icon {
        color: var(--color-white); }
    .map-page-outer .toggle-button:hover {
      background: #292929; }
    .map-page-outer .toggle-button:active, .map-page-outer .toggle-button:focus-visible {
      outline: 2px solid var(--color-green);
      outline-offset: -2px; }
    .map-page-outer .toggle-button[data-locationhistory="0"] {
      border-color: var(--locationColor0); }
    .map-page-outer .toggle-button[data-locationhistory="1"] {
      border-color: var(--locationColor1); }
    .map-page-outer .toggle-button[data-locationhistory="2"] {
      border-color: var(--locationColor2); }
    .map-page-outer .toggle-button[data-locationhistory="3"] {
      border-color: var(--locationColor3); }
    .map-page-outer .toggle-button[data-locationhistory="4"] {
      border-color: var(--locationColor4); }
    .map-page-outer .toggle-button[data-locationhistory="5"] {
      border-color: var(--locationColor5); }
    .map-page-outer .toggle-button[data-locationhistory="6"] {
      border-color: var(--locationColor6); }
    .map-page-outer .toggle-button[data-locationhistory="7"] {
      border-color: var(--locationColor7); }
    .map-page-outer .toggle-button[data-locationhistory="8"] {
      border-color: var(--locationColor8); }
    .map-page-outer .toggle-button[data-locationhistory="9"] {
      border-color: var(--locationColor9); }
    .map-page-outer .toggle-button .toggle-button-label {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      min-width: 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
    .map-page-outer .toggle-button .toggle-button-indicator {
      visibility: hidden;
      margin: 0 calc(var(--margin-default) - 3px) -1px 0; }
    .map-page-outer .toggle-button team-icon {
      position: static;
      padding: 0 0 var(--margin-xsmall);
      margin: 0 var(--margin-small) -3px 0;
      border-bottom: 1px solid currentColor;
      font-size: var(--fontSize-xsmall);
      color: var(--color-dullGray);
      background: none;
      width: 36px; }
    .map-page-outer .toggle-button .team-icon-img {
      width: 24px;
      height: 24px;
      border-radius: 12px;
      vertical-align: middle;
      margin: 0 calc(var(--margin-small) + 6px) 0 6px; }
    .map-page-outer .toggle-button bdi {
      text-overflow: ellipsis;
      white-space: nowrap;
      overflow: hidden;
      line-height: 1;
      padding: 0 var(--margin-small) 0 0;
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      min-width: 0; }
    .map-page-outer .toggle-button info-line:hover {
      color: var(--color-mediumGray); }
    .map-page-outer .toggle-button enum-value[data-mode]:not([hidden]) {
      font-size: var(--fontSize-xsmall);
      display: inline-block; }
  .map-page-outer .team-panel-button {
    background: none;
    border: none;
    padding: 0;
    height: var(--button-height);
    width: var(--button-height);
    line-height: var(--button-height);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: var(--color-mediumGray);
    position: absolute;
    top: 0;
    right: 0; }
    .map-page-outer .team-panel-button:hover {
      background: #292929;
      color: var(--color-white); }
    .map-page-outer .team-panel-button:active, .map-page-outer .team-panel-button:focus-visible {
      outline: 2px solid var(--color-green);
      outline-offset: -2px; }
  .map-page-outer .tab-header {
    padding: calc(var(--margin-small) + var(--margin-xsmall)) var(--margin-default) var(--margin-default); }
    .map-page-outer .tab-header h1 {
      font-size: var(--fontSize-medium);
      font-weight: normal; }
      .map-page-outer .tab-header h1.secondary {
        font-size: var(--fontSize-xsmall); }
    .map-page-outer .tab-header a {
      text-decoration: none; }
      .map-page-outer .tab-header a:hover, .map-page-outer .tab-header a:focus {
        color: var(--color-green); }
  .map-page-outer .eventInfo-header-buttons {
    margin-top: var(--margin-default); }
  .map-page-outer .eventInfo-button {
    background: #555;
    color: var(--color-lightGray);
    border: none;
    border-radius: var(--borderRadius-default);
    display: block;
    padding: var(--margin-small) var(--margin-default);
    text-align: center;
    font-size: var(--fontSize-default);
    text-decoration: none;
    margin: var(--margin-small) 0 0; }
    @media (max-width: 768px) {
      .map-page-outer .eventInfo-button {
        padding: 0.8em 0.5em !important; } }
    .map-page-outer .eventInfo-button:hover, .map-page-outer .eventInfo-button:focus-visible {
      color: var(--color-lightGray) !important;
      background: #4b4b4b; }
    .map-page-outer .eventInfo-button:active {
      background: #454545; }
  .map-page-outer #eventInfo-header-ibuki a {
    font-size: var(--fontSize-xxsmall);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: var(--color-lightGray);
    padding: var(--margin-default) 0;
    gap: var(--margin-small);
    letter-spacing: 0.05em; }
  .map-page-outer #eventInfo-header-ibuki svg {
    color: var(--color-white);
    max-height: 14px;
    width: auto; }
  .map-page-outer .map-section {
    background: #1e1e1e;
    border-radius: var(--borderRadius-large);
    padding: var(--margin-default);
    font-size: var(--fontSize-default); }
    .map-page-outer .map-section h1 {
      color: var(--color-lightGray);
      font-size: var(--fontSize-xsmall);
      font-weight: normal; }
    .map-page-outer .map-section list-container {
      margin: var(--margin-small) 0 0; }
    .map-page-outer .map-section list-item a {
      padding: var(--margin-xsmall) 0;
      display: inline-block;
      vertical-align: middle; }
    .map-page-outer .map-section a,
    .map-page-outer .map-section button {
      color: var(--color-lightGray);
      text-decoration: none;
      -webkit-transition: none;
      transition: none; }
      .map-page-outer .map-section a:hover, .map-page-outer .map-section a:focus,
      .map-page-outer .map-section button:hover,
      .map-page-outer .map-section button:focus {
        color: var(--color-green); }
  .map-page-outer #info .eventInfo-contents {
    padding-right: var(--margin-default);
    padding-left: var(--margin-default);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: var(--margin-default); }
  .map-page-outer #gps-banner {
    padding: 0;
    font-size: var(--fontSize-small); }
    .map-page-outer #gps-banner a {
      padding: var(--margin-default);
      color: var(--color-lightGray);
      font-size: var(--fontSize-xsmall);
      text-decoration: none;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      gap: var(--margin-default); }
    .map-page-outer #gps-banner div {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      min-width: 0; }
    .map-page-outer #gps-banner img {
      width: 100px;
      height: 62px; }
    .map-page-outer #gps-banner span {
      display: inline-block;
      border-bottom: 1px solid rgba(255, 255, 255, 0.3); }
      .map-page-outer #gps-banner span:hover, .map-page-outer #gps-banner span:focus {
        color: var(--color-green);
        border-bottom: 1px solid var(--color-green); }

rb-route-map-container:not([hidden]) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

rb-route-map-container {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  overflow: hidden;
  width: 100%;
  height: 100vh;
  position: relative; }

rb-route-map-container > route-map {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  width: 100%;
  height: 100%; }

rb-route-map-container > route-graph,
rb-route-map-container > .mp-status-graph-section {
  height: 14em;
  padding-right: 1em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

rb-route-map-container > .team-progress-graph-section {
  padding-right: 1em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

div[is="route-data"] rb-route-map-container > route-graph[hidden] {
  display: none; }

.mp-status-graph-section,
.team-progress-graph-section {
  position: relative; }

.team-progress-graph-section {
  max-height: max(40%, 20em); }

.mp-status-graph-section > header,
.team-progress-graph-section > header {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0;
  padding: 0;
  -ms-flex-item-align: end;
      align-self: flex-end;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end; }

.team-progress-graph-section > header {
  top: 0;
  bottom: auto; }

@media (max-width: 768px) {
  .mp-status-graph-section > header {
    top: 0;
    bottom: auto; } }

.mp-status-graph-section > header > h1,
.team-progress-graph-section > header > h1 {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-flex: 2;
      -ms-flex: 2;
          flex: 2; }

.mp-status-graph-section > header > div {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1; }

.mp-status-graph-section > header > h1 > *,
.mp-status-graph-section > header > div > * {
  background: rgba(200, 200, 200, 0.1); }

.mp-status-graph-section rb-barsets-chart {
  height: 17em; }

.mp-status-graph-section .rb-barset-passed {
  display: none; }

.team-progress-graph-section rb-time-distance-graph:not([hidden]) {
  display: block; }

.team-progress-graph-section rb-time-distance-graph {
  height: 100%; }

.team-progress-graph-section rb-graph-main {
  overflow: auto;
  max-height: 100%; }

.team-progress-graph-section footer {
  position: absolute;
  bottom: 0;
  right: 0; }

#event-team-info,
#event-mp-info {
  border-top: 4px solid var(--color-richBlack);
  overflow: auto;
  max-height: 33dvh;
  padding: var(--margin-default); }
  @media (max-width: 768px) {
    #event-team-info,
    #event-mp-info {
      padding-bottom: calc( var(--margin-default) + var(--navigationHeight, 100px)); } }

#event-team-info header:not([hidden]),
#event-mp-info header:not([hidden]) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

#event-team-info header h1,
#event-mp-info header h1 {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1; }

#event-team-info .buttons,
#event-mp-info .buttons {
  text-align: end; }

#event-team-info .more:not(:hover):not(:active):not(:focus),
#event-mp-info .more:not(:hover):not(:active):not(:focus) {
  color: inherit;
  background: transparent; }

#event-team-info p button:only-child,
#event-mp-info p button:only-child {
  width: 100%; }

#event-team-info .if-has-sms-notes {
  display: none; }

#event-team-info.has-sms-notes .if-has-sms-notes {
  display: block; }

.ecf-section .team-selector,
.ecf-section .ecf-disabled,
.ecf-section div[data-ecf="loading"],
.ecf-section div[data-ecf="not-finished"] {
  min-height: 20em; }

.ecf-section .team-selector rb-list-filter:not([hidden]) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.ecf-section .team-selector rb-list-filter input {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1; }

.ecf-section .team-selector button {
  min-width: 20em;
  background: transparent;
  color: inherit;
  border: none;
  text-align: start; }

.ecf-section .team-selector button:-webkit-any(:hover, :active, :focus) {
  background-color: #f2f2f2;
  color: black; }

.ecf-section div[data-ecf="view"] {
  width: 100%;
  text-align: center; }

.ecf-section div[data-ecf="view"] .buttons {
  text-align: end; }

.ecf-viewer {
  width: 100%; }

.ecf-dialog {
  padding: 1em; }

.ecf-dialog .config {
  margin: 2em;
  width: -webkit-fill-available; }

.ecf-dialog .buttons {
  padding: 0.5em;
  text-align: center; }

#gps-footer-primary,
#gps-footer-secondary {
  text-align: center; }
  #gps-footer-primary p,
  #gps-footer-secondary p {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  #gps-footer-primary button,
  #gps-footer-primary a,
  #gps-footer-secondary button,
  #gps-footer-secondary a {
    padding: var(--margin-small);
    display: inline-block; }

#gps-footer-primary {
  font-size: var(--fontSize-small); }

#gps-footer-secondary {
  font-size: var(--fontSize-xsmall); }

html:not(.race-staged) .page-event-item-results .stage-result {
  display: none !important; }

html:not(.race-staged) .page-event-item-results #teamResults-table thead th.teamResults-table-thBorder {
  padding-left: calc(var(--margin-small) + var(--margin-xsmall)); }

@media print {
  .page-event-item-results {
    background: var(--bgColor-beige); } }

.page-event-item-results #resultsContainer {
  min-height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media screen and (max-width: 1080px) {
    .page-event-item-results #resultsContainer {
      display: grid;
      grid-template-columns: auto 1fr;
      grid-template-areas: "header main" "header sidebar"; } }
  @media screen and (max-width: 768px) {
    .page-event-item-results #resultsContainer {
      display: block; } }
  @media print {
    .page-event-item-results #resultsContainer {
      display: block;
      width: 210mm;
      background: var(--bgColor-white); } }

.page-event-item-results #resultsHeader {
  width: 220px;
  grid-area: header;
  position: relative;
  z-index: 1; }
  @media screen and (max-width: 768px) {
    .page-event-item-results #resultsHeader {
      width: 100%; } }
  @media print {
    .page-event-item-results #resultsHeader {
      width: 100%; } }

.page-event-item-results #resultsHeader-container {
  position: sticky;
  top: 0;
  height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }
  @media screen and (max-width: 768px) {
    .page-event-item-results #resultsHeader-container {
      height: auto; } }
  @media print {
    .page-event-item-results #resultsHeader-container {
      height: auto;
      display: grid;
      grid-template-areas: "ibuki ibuki" "image contents";
      grid-template-columns: auto 1fr;
      row-gap: 5mm;
      padding: 0 0 5mm; } }

.page-event-item-results #resultsHeader-image {
  background: var(--color-ibukiDarkGray); }
  @media screen and (max-width: 768px) {
    .page-event-item-results #resultsHeader-image {
      height: auto;
      text-align: center; } }
  @media print {
    .page-event-item-results #resultsHeader-image {
      background: none;
      grid-area: image; } }
  .page-event-item-results #resultsHeader-image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    vertical-align: top;
    aspect-ratio: 440 / 294; }
    @media print {
      .page-event-item-results #resultsHeader-image img {
        width: 24mm;
        height: auto;
        aspect-ratio: 440 / 294;
        border: 1px solid var(--color-black);
        -webkit-filter: grayscale(100%);
                filter: grayscale(100%); } }

@keyframes blink {
  0% {
    opacity: 0.7; }
  100% {
    opacity: 1; } }

.page-event-item-results #resultsHeader-liveIndicator {
  background: var(--color-green);
  text-align: center; }
  .page-event-item-results #resultsHeader-liveIndicator enum-value {
    font-weight: var(--fontWeight-bold);
    color: var(--color-white);
    letter-spacing: 1.5px;
    -webkit-animation: blink 1s ease-in-out infinite alternate;
            animation: blink 1s ease-in-out infinite alternate;
    font-family: var(--fontFamily-monospace);
    font-size: var(--fontSize-small);
    vertical-align: bottom; }

.page-event-item-results #resultsHeader-ibuki {
  -webkit-box-shadow: 0 -1px 0 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 -1px 0 0 rgba(0, 0, 0, 0.1);
  border-bottom: 1px solid var(--borderColor-default); }
  @media print {
    .page-event-item-results #resultsHeader-ibuki {
      -webkit-box-shadow: none;
              box-shadow: none;
      padding: 3mm 0 5mm;
      border-bottom-color: var(--borderColor-black);
      grid-area: ibuki; } }
  .page-event-item-results #resultsHeader-ibuki a {
    font-size: var(--fontSize-xxsmall);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: var(--color-darkGray);
    padding: var(--margin-small) 0;
    gap: var(--margin-small); }
    @media print {
      .page-event-item-results #resultsHeader-ibuki a {
        -webkit-box-pack: start;
            -ms-flex-pack: start;
                justify-content: flex-start;
        padding: 0; } }
    @media print {
      .page-event-item-results #resultsHeader-ibuki a enum-value {
        display: none; } }
  .page-event-item-results #resultsHeader-ibuki svg {
    color: var(--color-richBlack);
    max-height: 12px;
    width: auto; }
    @media print {
      .page-event-item-results #resultsHeader-ibuki svg {
        max-height: 8mm; } }

.page-event-item-results #resultsHeader-contents {
  overflow-y: auto;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-height: 0; }
  @media print {
    .page-event-item-results #resultsHeader-contents {
      grid-area: contents; } }

.page-event-item-results #resultsHeader-headerTitle {
  padding: var(--margin-small) var(--margin-small) 0 var(--margin-default);
  overflow: hidden; }
  @media print {
    .page-event-item-results #resultsHeader-headerTitle {
      padding: 0 0 0 var(--margin-default); } }
  .page-event-item-results #resultsHeader-headerTitle h1 {
    display: block;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    margin: var(--margin-xsmall) var(--margin-xsmall) 0 0;
    font-size: var(--fontSize-medium);
    line-height: var(--lineHeight-medium); }
    @media print {
      .page-event-item-results #resultsHeader-headerTitle h1 {
        margin: 0;
        font-size: var(--fontSize-xxlarge); } }
  .page-event-item-results #resultsHeader-headerTitle .object-menu {
    display: block;
    float: right; }
    @media print {
      .page-event-item-results #resultsHeader-headerTitle .object-menu {
        display: none; } }
  .page-event-item-results #resultsHeader-headerTitle .event-popup-btn {
    height: 38px;
    cursor: pointer; }
  .page-event-item-results #resultsHeader-headerTitle .event-popup-menu {
    margin: 0;
    width: 180px;
    border: 1px solid #e4e4e4;
    padding: 0;
    background: #fff;
    z-index: 100;
    text-align: left;
    border-radius: 2px;
    right: 0; }
    .page-event-item-results #resultsHeader-headerTitle .event-popup-menu menu-item:not([hidden]) {
      display: block; }
    .page-event-item-results #resultsHeader-headerTitle .event-popup-menu a,
    .page-event-item-results #resultsHeader-headerTitle .event-popup-menu button {
      color: #333 !important;
      display: block;
      padding: 10px 14px;
      font-size: 12px;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      width: 100%; }
      .page-event-item-results #resultsHeader-headerTitle .event-popup-menu a:hover, .page-event-item-results #resultsHeader-headerTitle .event-popup-menu a:focus,
      .page-event-item-results #resultsHeader-headerTitle .event-popup-menu button:hover,
      .page-event-item-results #resultsHeader-headerTitle .event-popup-menu button:focus {
        background-color: #f2f2f2;
        text-decoration: none; }
    .page-event-item-results #resultsHeader-headerTitle .event-popup-menu button {
      border-color: transparent;
      background-color: transparent;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      text-align: left; }
    .page-event-item-results #resultsHeader-headerTitle .event-popup-menu hr {
      visibility: visible;
      border: none;
      border-top: 1px solid #e4e4e4;
      margin: 0; }

.page-event-item-results #eventParents {
  margin: var(--margin-small) 0; }
  @media print {
    .page-event-item-results #eventParents {
      margin: 0; } }
  .page-event-item-results #eventParents list-main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0 var(--margin-default); }
  .page-event-item-results #eventParents .eventParents-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: var(--margin-small);
    color: var(--color-darkGray);
    font-size: var(--fontSize-small); }
    .page-event-item-results #eventParents .eventParents-item:hover, .page-event-item-results #eventParents .eventParents-item:focus {
      color: var(--color-primary); }
    @media print {
      .page-event-item-results #eventParents .eventParents-item {
        color: var(--color-black); } }
    .page-event-item-results #eventParents .eventParents-item svg {
      height: var(--fontSize-small);
      width: auto; }
      @media print {
        .page-event-item-results #eventParents .eventParents-item svg {
          display: none; } }
      .page-event-item-results #eventParents .eventParents-item svg path {
        stroke: var(--color-darkGray); }

.page-event-item-results #resultsHeader-eventDate {
  padding: var(--margin-xsmall) var(--margin-default) 0; }
  @media print {
    .page-event-item-results #resultsHeader-eventDate {
      display: none; } }

.page-event-item-results #resultsHeader-eventDate-date {
  font-size: var(--fontSize-small);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: var(--margin-small);
     -moz-column-gap: var(--margin-small);
          column-gap: var(--margin-small);
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

.page-event-item-results #resultsHeader-publicStatus {
  padding: var(--margin-xsmall) var(--margin-default) 0;
  font-size: var(--fontSize-small);
  color: var(--color-darkGray); }
  @media print {
    .page-event-item-results #resultsHeader-publicStatus {
      display: none; } }

.page-event-item-results #resultsHeader-eventCanceled {
  padding: var(--margin-small) var(--margin-default) 0;
  font-size: var(--fontSize-small);
  line-height: var(--lineHeight-small);
  color: var(--color-red); }
  @media print {
    .page-event-item-results #resultsHeader-eventCanceled {
      display: none; } }

.page-event-item-results #resultsHeader-mapPageButton,
.page-event-item-results #resultsMain-mapPageButton {
  margin: var(--margin-default) var(--margin-default) 0; }
  @media print {
    .page-event-item-results #resultsHeader-mapPageButton,
    .page-event-item-results #resultsMain-mapPageButton {
      display: none !important; } }
  .page-event-item-results #resultsHeader-mapPageButton a,
  .page-event-item-results #resultsMain-mapPageButton a {
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: var(--margin-small); }
  .page-event-item-results #resultsHeader-mapPageButton svg,
  .page-event-item-results #resultsMain-mapPageButton svg {
    max-width: 14px; }
    .page-event-item-results #resultsHeader-mapPageButton svg path,
    .page-event-item-results #resultsMain-mapPageButton svg path {
      stroke: var(--color-primary); }

.page-event-item-results #resultsHeader-relatedSections {
  padding: var(--margin-medium) var(--margin-default) 0 var(--margin-default); }
  @media print {
    .page-event-item-results #resultsHeader-relatedSections {
      display: none; } }
  .page-event-item-results #resultsHeader-relatedSections h1 {
    font-weight: normal;
    font-size: var(--fontSize-xsmall); }
  .page-event-item-results #resultsHeader-relatedSections list-container {
    margin: var(--margin-xsmall) 0 0; }
  .page-event-item-results #resultsHeader-relatedSections list-item a {
    display: inline-block;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    display: inline-block;
    width: 100%; }

.page-event-item-results #resultsHeader-chartLinks:not([hidden]) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.page-event-item-results #resultsHeader-chartLinks {
  padding: var(--margin-default);
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: var(--margin-small); }
  @media screen and (max-width: 768px) {
    .page-event-item-results #resultsHeader-chartLinks {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row; } }
  @media print {
    .page-event-item-results #resultsHeader-chartLinks {
      display: none; } }
  .page-event-item-results #resultsHeader-chartLinks a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: var(--margin-default);
    font-size: var(--fontSize-small);
    border: 1px solid var(--borderColor-default);
    padding: var(--margin-small) var(--margin-default);
    color: var(--color-black);
    line-height: var(--lineHeight-small); }
    @media screen and (max-width: 768px) {
      .page-event-item-results #resultsHeader-chartLinks a {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        text-align: center;
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
        gap: var(--margin-small); } }
    .page-event-item-results #resultsHeader-chartLinks a:hover {
      text-decoration: none;
      border-color: var(--borderColor-mediumGray);
      background: var(--bgColor-beige); }
    .page-event-item-results #resultsHeader-chartLinks a.active {
      border: 2px solid var(--color-primary);
      background: #ebf9e2; }
  .page-event-item-results #resultsHeader-chartLinks span {
    display: inline-block; }
    @media screen and (max-width: 768px) {
      .page-event-item-results #resultsHeader-chartLinks span {
        display: block; } }

.page-event-item-results #resultsHeader-navigation {
  margin: var(--margin-default) 0 0;
  font-size: var(--fontSize-default); }
  @media print {
    .page-event-item-results #resultsHeader-navigation {
      display: none !important; } }
  .page-event-item-results #resultsHeader-navigation a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: var(--margin-xsmall); }

.page-event-item-results #resultsHeader-results {
  border-top: 1px solid var(--borderColor-default);
  margin: 0 0 var(--margin-default);
  padding: var(--margin-default); }
  @media screen and (max-width: 768px) {
    .page-event-item-results #resultsHeader-results {
      background: var(--bgColor-beige);
      margin: 0;
      padding: var(--margin-default) var(--margin-default) 0; } }
  @media print {
    .page-event-item-results #resultsHeader-results {
      display: none; } }
  .page-event-item-results #resultsHeader-results h1 {
    font-size: var(--fontSize-default); }
    @media screen and (max-width: 768px) {
      .page-event-item-results #resultsHeader-results h1 {
        font-size: var(--fontSize-large); } }

.page-event-item-results #resultsHeader-results-navigation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse; }
  @media screen and (max-width: 768px) {
    .page-event-item-results #resultsHeader-results-navigation {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      gap: var(--margin-small);
      margin: var(--margin-default) 0 0; } }
  .page-event-item-results #resultsHeader-results-navigation section {
    margin: var(--margin-default) 0 0; }
    @media screen and (max-width: 768px) {
      .page-event-item-results #resultsHeader-results-navigation section {
        margin: 0; } }
    .page-event-item-results #resultsHeader-results-navigation section h1 {
      font-weight: normal;
      font-size: var(--fontSize-xsmall); }
  .page-event-item-results #resultsHeader-results-navigation .event-popup-btn {
    height: 38px;
    border: 1px solid var(--borderColor-mediumGray);
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: var(--margin-small);
    color: var(--color-black); }
    .page-event-item-results #resultsHeader-results-navigation .event-popup-btn:not([hidden]) {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
    @media screen and (min-width: 769px) {
      .page-event-item-results #resultsHeader-results-navigation .event-popup-btn {
        display: none !important; } }
    .page-event-item-results #resultsHeader-results-navigation .event-popup-btn button-label {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      min-width: 0;
      max-height: 38px;
      overflow: hidden; }
  .page-event-item-results #resultsHeader-results-navigation .event-popup-menu {
    margin: 0;
    width: 180px;
    border: 1px solid #e4e4e4;
    padding: 0;
    background: #fff;
    z-index: 100;
    text-align: left;
    border-radius: 2px;
    left: 0; }
    .page-event-item-results #resultsHeader-results-navigation .event-popup-menu menu-item:not([hidden]) {
      display: block; }
    .page-event-item-results #resultsHeader-results-navigation .event-popup-menu a,
    .page-event-item-results #resultsHeader-results-navigation .event-popup-menu button {
      color: #333 !important;
      display: block;
      padding: 10px 14px;
      font-size: 12px;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      width: 100%; }
      .page-event-item-results #resultsHeader-results-navigation .event-popup-menu a:hover, .page-event-item-results #resultsHeader-results-navigation .event-popup-menu a:focus,
      .page-event-item-results #resultsHeader-results-navigation .event-popup-menu button:hover,
      .page-event-item-results #resultsHeader-results-navigation .event-popup-menu button:focus {
        background-color: #f2f2f2;
        text-decoration: none; }
    .page-event-item-results #resultsHeader-results-navigation .event-popup-menu button {
      border-color: transparent;
      background-color: transparent;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      text-align: left; }
    .page-event-item-results #resultsHeader-results-navigation .event-popup-menu hr {
      visibility: visible;
      border: none;
      border-top: 1px solid #e4e4e4;
      margin: 0; }
    @media screen and (min-width: 769px) {
      .page-event-item-results #resultsHeader-results-navigation .event-popup-menu {
        display: block;
        position: static;
        border: none;
        width: auto; } }
    @media screen and (min-width: 769px) {
      .page-event-item-results #resultsHeader-results-navigation .event-popup-menu a {
        padding: var(--margin-xsmall) 0;
        font-size: var(--fontSize-small);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start;
        gap: var(--margin-small); } }
    @media screen and (min-width: 769px) {
      .page-event-item-results #resultsHeader-results-navigation .event-popup-menu a:not(.hideRadioButtonEffect)::before {
        content: "";
        display: inline-block;
        width: 20px;
        height: 20px;
        border-radius: 10px;
        border: 2px solid var(--borderColor-mediumGray);
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        background: var(--bgColor-white); } }

@media screen and (min-width: 769px) and (min-width: 769px) {
  .page-event-item-results #resultsHeader-results-navigation .event-popup-menu a:not(.hideRadioButtonEffect).active::before {
    border: 6px solid var(--color-green); } }
    .page-event-item-results #resultsHeader-results-navigation .event-popup-menu a:hover team-icon, .page-event-item-results #resultsHeader-results-navigation .event-popup-menu a:focus team-icon {
      background: #ddd; }
    .page-event-item-results #resultsHeader-results-navigation .event-popup-menu a team-icon {
      position: relative;
      padding: 0.2em;
      margin: 0.3em 0 0;
      min-width: 2em;
      background: #eee;
      color: black;
      font-size: 80%;
      line-height: 1;
      text-align: center;
      font-family: sans-serif;
      letter-spacing: 0.05em; }
      .page-event-item-results #resultsHeader-results-navigation .event-popup-menu a team-icon:not([hidden]) {
        display: inline-block; }
    @media screen and (min-width: 769px) {
      .page-event-item-results #resultsHeader-results-navigation .event-popup-menu .resultsHeader-popup-labelWrapper {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
        min-width: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start;
        gap: var(--margin-small); } }
    .page-event-item-results #resultsHeader-results-navigation .event-popup-menu .resultsHeader-popup-labelWrapper markedpoint-icon,
    .page-event-item-results #resultsHeader-results-navigation .event-popup-menu .resultsHeader-popup-labelWrapper #resultsHeader-live {
      margin: 0; }
      @media screen and (min-width: 769px) {
        .page-event-item-results #resultsHeader-results-navigation .event-popup-menu .resultsHeader-popup-labelWrapper markedpoint-icon,
        .page-event-item-results #resultsHeader-results-navigation .event-popup-menu .resultsHeader-popup-labelWrapper #resultsHeader-live {
          margin: 2px 0 0; } }
    @media screen and (min-width: 769px) {
      .page-event-item-results #resultsHeader-results-navigation .event-popup-menu .resultsHeader-popup-label {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
        min-width: 0; } }
    .page-event-item-results #resultsHeader-results-navigation .event-popup-menu #resultsHeader-seeMore button {
      display: none; }
      .page-event-item-results #resultsHeader-results-navigation .event-popup-menu #resultsHeader-seeMore button:not([hidden]) {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        font-size: 12px; }
        @media screen and (min-width: 769px) {
          .page-event-item-results #resultsHeader-results-navigation .event-popup-menu #resultsHeader-seeMore button:not([hidden]) {
            padding: var(--margin-xsmall) 0;
            font-size: var(--fontSize-small);
            gap: var(--margin-xsmall); } }

.page-event-item-results .resultsHeader-backLink {
  margin: var(--margin-default) 0 0; }
  @media screen and (max-width: 768px) {
    .page-event-item-results .resultsHeader-backLink {
      width: 100%;
      margin: 0 0 var(--margin-small); } }
  .page-event-item-results .resultsHeader-backLink a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: var(--margin-small);
    font-size: var(--fontSize-small); }
  .page-event-item-results .resultsHeader-backLink svg {
    -webkit-transform: rotate(180deg) translateY(1px);
            transform: rotate(180deg) translateY(1px); }

.page-event-item-results .teamResults-table-markedPoint markedpoint-icon,
.page-event-item-results #resultsHeader-markedPoint markedpoint-icon {
  background: var(--color-black);
  color: white; }
  .page-event-item-results .teamResults-table-markedPoint markedpoint-icon:not([hidden]),
  .page-event-item-results #resultsHeader-markedPoint markedpoint-icon:not([hidden]) {
    display: inline-block;
    position: relative;
    padding: 0.2em;
    line-height: 1;
    vertical-align: middle; }
  .page-event-item-results .teamResults-table-markedPoint markedpoint-icon[value="globalStart"], .page-event-item-results .teamResults-table-markedPoint markedpoint-icon[value="partialStart"],
  .page-event-item-results #resultsHeader-markedPoint markedpoint-icon[value="globalStart"],
  .page-event-item-results #resultsHeader-markedPoint markedpoint-icon[value="partialStart"] {
    background: var(--startColor);
    color: white; }
  .page-event-item-results .teamResults-table-markedPoint markedpoint-icon[value="globalGoal"], .page-event-item-results .teamResults-table-markedPoint markedpoint-icon[value="partialGoal"],
  .page-event-item-results #resultsHeader-markedPoint markedpoint-icon[value="globalGoal"],
  .page-event-item-results #resultsHeader-markedPoint markedpoint-icon[value="partialGoal"] {
    background: var(--goalColor);
    color: white; }
  @media print {
    .page-event-item-results .teamResults-table-markedPoint markedpoint-icon,
    .page-event-item-results #resultsHeader-markedPoint markedpoint-icon {
      background: none !important;
      border: 1px solid var(--borderColor-mediumGray) !important;
      color: var(--color-black) !important; } }
  .page-event-item-results .teamResults-table-markedPoint markedpoint-icon::before,
  .page-event-item-results #resultsHeader-markedPoint markedpoint-icon::before {
    display: none; }

.page-event-item-results #resultsHeader-live {
  display: inline-block;
  position: relative;
  margin: 0 0.2em 0 0;
  padding: 0.2em 0.2em 0.2em 0.3em;
  font-size: 95%;
  line-height: 1;
  vertical-align: middle;
  min-width: 1em;
  text-align: center;
  background: var(--color-green);
  color: white;
  letter-spacing: 0.05em; }

.page-event-item-results #resultsMain {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  border-left: 1px solid var(--borderColor-default);
  grid-area: main;
  position: relative;
  z-index: 0; }
  @media screen and (max-width: 768px) {
    .page-event-item-results #resultsMain {
      background: var(--bgColor-beige);
      padding-top: 20px; } }
  @media print {
    .page-event-item-results #resultsMain {
      border: none; } }
  @media screen and (max-width: 768px) {
    .page-event-item-results #resultsMain > #results {
      background: var(--bgColor-white); } }

@media screen and (max-width: 768px) {
  .page-event-item-results #resultsMainMarkedPoint {
    background: var(--bgColor-white);
    border-radius: var(--borderRadius-large) var(--borderRadius-large) 0 0;
    -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 20px rgba(0, 0, 0, 0.1); } }

.page-event-item-results #resultsMain-teamInfo {
  border-top: 1px solid var(--borderColor-default);
  padding: var(--margin-default) var(--margin-default) var(--margin-xlarge); }
  @media screen and (max-width: 768px) {
    .page-event-item-results #resultsMain-teamInfo {
      padding: var(--margin-default); } }
  @media print {
    .page-event-item-results #resultsMain-teamInfo {
      border-top-color: var(--borderColor-black);
      padding: 0 0 var(--margin-default);
      border: none; } }

.page-event-item-results #resultsMain-temaInfo-name {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: var(--margin-default);
  color: var(--color-black);
  text-decoration: none; }
  .page-event-item-results #resultsMain-temaInfo-name:hover h1, .page-event-item-results #resultsMain-temaInfo-name:focus h1 {
    text-decoration: underline; }
  .page-event-item-results #resultsMain-temaInfo-name h1 {
    font-size: var(--fontSize-xxxxlarge);
    line-height: var(--lineHeight-small); }
    @media screen and (max-width: 768px) {
      .page-event-item-results #resultsMain-temaInfo-name h1 {
        font-size: var(--fontSize-xxlarge); } }
  .page-event-item-results #resultsMain-temaInfo-name team-icon {
    position: relative;
    padding: 0.2em;
    margin: 0.3em 0 0;
    min-width: 2em;
    background: #eee;
    color: black;
    font-size: 80%;
    line-height: 1;
    text-align: center;
    font-family: sans-serif;
    letter-spacing: 0.05em;
    font-size: var(--fontSize-medium); }
    @media screen and (max-width: 768px) {
      .page-event-item-results #resultsMain-temaInfo-name team-icon {
        font-size: var(--fontSize-default); } }
    @media print {
      .page-event-item-results #resultsMain-temaInfo-name team-icon {
        background: none;
        border: 1px solid var(--borderColor-mediumGray); } }
    .page-event-item-results #resultsMain-temaInfo-name team-icon:not([hidden]) {
      display: inline-block; }
  @media print {
    .page-event-item-results #resultsMain-temaInfo-name markedpoint-icon {
      background: none;
      border: 1px solid var(--borderColor-mediumGray);
      color: var(--color-black);
      -webkit-filter: grayscale(100%);
              filter: grayscale(100%); } }
  @media print {
    .page-event-item-results #resultsMain-temaInfo-name popup-menu {
      display: none; } }

.page-event-item-results #resultsMain-teamInfo-alternatives {
  font-size: var(--fontSize-small);
  color: var(--color-darkGray); }

.page-event-item-results #resultsMain-teamInfo-description {
  margin: var(--margin-default) 0 0; }

.page-event-item-results #resultsMain-teamInfo-ownerData {
  margin: var(--margin-small) 0 0; }
  .page-event-item-results #resultsMain-teamInfo-ownerData .stats-value {
    font-weight: normal; }

.page-event-item-results #resultsSidebar {
  width: 20%;
  min-width: 225px;
  background: var(--color-ibukiLightGray);
  border-left: 1px solid var(--borderColor-default);
  position: relative;
  grid-area: sidebar;
  padding: 0 0 var(--margin-default); }
  @media screen and (max-width: 1080px) {
    .page-event-item-results #resultsSidebar {
      width: 100%;
      border: none;
      border-top: 1px solid var(--borderColor-default); } }
  @media print {
    .page-event-item-results #resultsSidebar {
      display: none; } }

.page-event-item-results #resultsSidebar-mapPageButton {
  padding: var(--margin-default);
  position: sticky;
  top: 0;
  background: var(--color-ibukiLightGray);
  z-index: 1; }
  @media screen and (max-width: 1080px) {
    .page-event-item-results #resultsSidebar-mapPageButton {
      position: static; } }
  .page-event-item-results #resultsSidebar-mapPageButton a {
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: var(--margin-small); }
  .page-event-item-results #resultsSidebar-mapPageButton svg {
    max-width: 14px; }
    .page-event-item-results #resultsSidebar-mapPageButton svg path {
      stroke: var(--color-white); }

.page-event-item-results #resultsSidebar-map {
  background: var(--bgColor-white);
  border-radius: var(--borderRadius-medium);
  overflow: hidden;
  border: 1px solid var(--color-white);
  margin: 0 var(--margin-default) var(--margin-default) var(--margin-default); }
  @media screen and (max-width: 768px) {
    .page-event-item-results #resultsSidebar-map {
      margin: var(--margin-default); } }
  .page-event-item-results #resultsSidebar-map route-graph {
    margin: var(--margin-default) auto; }

.page-event-item-results #resultsSidebar-map-links {
  margin: var(--margin-default);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  row-gap: var(--margin-default); }

.page-event-item-results #resultsSidebar-map-links-gpx {
  font-size: var(--fontSize-small);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin: 0 var(--margin-default) 0 0; }
  .page-event-item-results #resultsSidebar-map-links-gpx a,
  .page-event-item-results #resultsSidebar-map-links-gpx button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    white-space: nowrap;
    gap: var(--margin-small);
    color: var(--color-black); }
    .page-event-item-results #resultsSidebar-map-links-gpx a:hover, .page-event-item-results #resultsSidebar-map-links-gpx a:focus,
    .page-event-item-results #resultsSidebar-map-links-gpx button:hover,
    .page-event-item-results #resultsSidebar-map-links-gpx button:focus {
      color: var(--color-primary); }
  .page-event-item-results #resultsSidebar-map-links-gpx button {
    background: none;
    border: none;
    padding: 0;
    text-align: left; }

.page-event-item-results #resultsSidebar-comments {
  margin: var(--margin-default) 0 0; }
  .page-event-item-results #resultsSidebar-comments .pager a {
    display: block;
    border-top: 1px solid var(--borderColor-lightGray);
    border-bottom: 1px solid var(--borderColor-lightGray);
    padding: var(--margin-small) 0;
    margin: var(--margin-default) var(--margin-default);
    text-align: center; }
    .page-event-item-results #resultsSidebar-comments .pager a[hidden] {
      display: none; }
  .page-event-item-results #resultsSidebar-comments list-main {
    margin: var(--margin-default) 0 0 0;
    display: block; }
  .page-event-item-results #resultsSidebar-comments .component-commentSection-title {
    margin-left: var(--margin-default); }
  .page-event-item-results #resultsSidebar-comments .comment-list team-icon {
    position: relative;
    padding: 0.2em;
    margin: 0.3em 0 0;
    min-width: 2em;
    background: #ddd;
    color: black;
    font-size: 80%;
    line-height: 1;
    text-align: center;
    font-family: sans-serif;
    letter-spacing: 0.05em; }
    .page-event-item-results #resultsSidebar-comments .comment-list team-icon:not([hidden]) {
      display: inline-block; }
  .page-event-item-results #resultsSidebar-comments .comment-post {
    padding: 0 var(--margin-default) var(--margin-large);
    margin: 0;
    grid-template-columns: auto 1fr;
    grid-template-areas: "avatar body" "avatar image" "avatar submit" "more   more"; }
    @media screen and (max-width: 1080px) {
      .page-event-item-results #resultsSidebar-comments .comment-post {
        grid-template-columns: auto 1fr auto;
        grid-template-areas: "avatar body body" "avatar image submit" "more   more  more"; } }
  .page-event-item-results #resultsSidebar-comments .star-btn,
  .page-event-item-results #resultsSidebar-comments .star-btn-option {
    border-left-color: var(--borderColor-lightGray); }
  .page-event-item-results #resultsSidebar-comments .no-account.notes {
    margin: 0 var(--margin-default); }
  .page-event-item-results #resultsSidebar-comments action-status {
    margin: 0 var(--margin-default); }

.page-event-item-results #globalFooter {
  margin: 0; }

.page-event-item-results #teamResults-header {
  border-top: 1px solid var(--borderColor-default);
  padding: var(--margin-default);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media print {
    .page-event-item-results #teamResults-header {
      padding: var(--margin-default) 0;
      border-top-color: var(--borderColor-black); } }
  .page-event-item-results #teamResults-header h1 {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    font-size: var(--fontSize-large); }

.page-event-item-results #teamResults-rankingChart {
  padding: var(--margin-default); }
  @media screen and (max-width: 768px) {
    .page-event-item-results #teamResults-rankingChart {
      border-top: 1px solid var(--borderColor-default); } }
  @media print {
    .page-event-item-results #teamResults-rankingChart {
      padding: var(--margin-default) 0;
      border-top: 1px solid var(--borderColor-black); } }
  .page-event-item-results #teamResults-rankingChart > h1 {
    font-size: var(--fontSize-large); }
  .page-event-item-results #teamResults-rankingChart section h1 {
    font-weight: normal; }

.page-event-item-results #teamResults-actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: var(--margin-small);
  font-size: var(--fontSize-small);
  color: var(--color-darkGray); }
  @media print {
    .page-event-item-results #teamResults-actions {
      border: none;
      padding-right: 0;
      color: var(--color-black); } }
  @media print {
    .page-event-item-results #teamResults-actions .reload-button {
      display: none; } }

.page-event-item-results #teamResults-table {
  overflow-x: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
  padding: 0 var(--margin-default); }
  .page-event-item-results #teamResults-table::-webkit-scrollbar {
    display: none; }
  @media print {
    .page-event-item-results #teamResults-table {
      padding: 0; } }
  .page-event-item-results #teamResults-table .main-table {
    border: 1px solid var(--borderColor-default);
    border-radius: var(--borderRadius-large);
    white-space: nowrap;
    border-collapse: separate;
    border-spacing: 0;
    overflow: hidden; }
    @media print {
      .page-event-item-results #teamResults-table .main-table {
        border: none;
        border-top: 1px solid var(--borderColor-default);
        border-bottom: 1px solid var(--borderColor-default);
        border-radius: 0; } }
  .page-event-item-results #teamResults-table tr {
    border: none; }
  .page-event-item-results #teamResults-table .teamResults-table-thBorder,
  .page-event-item-results #teamResults-table .time {
    border-left: 1px solid var(--borderColor-default); }
  .page-event-item-results #teamResults-table .rank {
    text-align: center;
    padding: var(--margin-small); }
  .page-event-item-results #teamResults-table td {
    padding: var(--margin-small) calc(var(--margin-small) + var(--margin-xsmall)); }
    .page-event-item-results #teamResults-table td:first-child {
      background: var(--bgColor-beige); }
      @media print {
        .page-event-item-results #teamResults-table td:first-child {
          background: var(--bgColor-white); } }
  @media print {
    .page-event-item-results #teamResults-table thead tr.markedPoint th:first-child {
      padding-left: 0; } }
  .page-event-item-results #teamResults-table thead tr.markedPoint .all-result,
  .page-event-item-results #teamResults-table thead tr.markedPoint .stage-result {
    padding-bottom: 0; }
  .page-event-item-results #teamResults-table thead th {
    text-align: left;
    padding: var(--margin-small) calc(var(--margin-small) + var(--margin-xsmall));
    font-weight: normal;
    color: var(--color-darkGray);
    font-size: var(--fontSize-xsmall);
    background: var(--bgColor-beige); }
    @media print {
      .page-event-item-results #teamResults-table thead th {
        color: var(--color-black);
        background: var(--color-lightGray); } }
  .page-event-item-results #teamResults-table tbody tr:first-child td {
    border-top: 1px solid var(--borderColor-default); }
  .page-event-item-results #teamResults-table tbody td {
    border-bottom: 1px solid var(--borderColor-default); }
  .page-event-item-results #teamResults-table tfoot {
    font-size: var(--fontSize-default); }
    @media print {
      .page-event-item-results #teamResults-table tfoot .teamResults-footer-title {
        padding-left: 0; } }
    .page-event-item-results #teamResults-table tfoot span {
      display: none; }

@media print {
  .page-event-item-results .teamResults-table-markedPoint {
    padding-left: 0 !important; } }

.page-event-item-results .teamResults-table-markedPoint-label {
  color: var(--color-black);
  white-space: normal;
  font-size: var(--fontSize-default);
  line-height: var(--lineHeight-xsmall); }
  @media screen and (max-width: 768px) {
    .page-event-item-results .teamResults-table-markedPoint-label {
      width: 33vw;
      display: block; } }
  .page-event-item-results .teamResults-table-markedPoint-label:hover > span, .page-event-item-results .teamResults-table-markedPoint-label:focus > span {
    text-decoration: underline; }
  .page-event-item-results .teamResults-table-markedPoint-label > span {
    margin: 0 var(--margin-xsmall) 0 0;
    line-height: var(--lineHeight-medium); }
  .page-event-item-results .teamResults-table-markedPoint-label markedpoint-icon {
    font-size: var(--fontSize-small);
    margin: 0; }

.page-event-item-results .teamResults-table-distance {
  display: inline-block;
  font-size: var(--fontSize-xsmall);
  color: var(--color-darkGray); }

.page-event-item-results .teamResults-table-time {
  padding-right: var(--margin-xsmall) !important; }
  .page-event-item-results .teamResults-table-time .stats-value {
    font-weight: normal;
    font-size: var(--fontSize-medium);
    font-family: var(--fontFamily-monospace);
    line-height: var(--lineHeight-xsmall); }
    @media print {
      .page-event-item-results .teamResults-table-time .stats-value {
        font-size: var(--fontSize-medium); } }

.page-event-item-results #teamResults-disclaimer {
  padding: var(--margin-default) var(--margin-default);
  font-size: var(--fontSize-xsmall);
  color: var(--color-darkGray);
  text-align: center; }

@media print {
  .page-event-item-results #globalFooter {
    display: none; } }

@media screen and (max-width: 768px) {
  .page-event-item-results#page-event-team-item #resultsHeader-image,
  .page-event-item-results#page-event-team-item #resultsHeader-contents {
    display: none; } }

@media screen and (max-width: 768px) {
  .page-event-item-results#page-event-team-item #resultsMain {
    background: var(--bgColor-white);
    padding-top: 0; } }

.page-event-item-results#page-event-team-item #resultsMain-teamInfo {
  border: none;
  padding: var(--margin-default) var(--margin-default) var(--margin-small);
  background: var(--bgColor-beige); }
  @media screen and (max-width: 768px) {
    .page-event-item-results#page-event-team-item #resultsMain-teamInfo {
      display: block;
      padding: var(--margin-default); } }
  @media print {
    .page-event-item-results#page-event-team-item #resultsMain-teamInfo {
      background: none;
      padding: 0; } }
  .page-event-item-results#page-event-team-item #resultsMain-teamInfo .resultsHeader-backLink {
    display: none; }
    @media screen and (max-width: 768px) {
      .page-event-item-results#page-event-team-item #resultsMain-teamInfo .resultsHeader-backLink {
        display: block; } }

.page-event-item-results#page-event-team-item #resultsMain-teamInfoInner {
  padding: var(--margin-large);
  background: var(--bgColor-white);
  border-radius: var(--borderRadius-large);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media screen and (max-width: 768px) {
    .page-event-item-results#page-event-team-item #resultsMain-teamInfoInner {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      padding-bottom: var(--margin-xlarge); } }
  @media print {
    .page-event-item-results#page-event-team-item #resultsMain-teamInfoInner {
      padding: var(--margin-default) 0 var(--margin-large); } }

.page-event-item-results#page-event-team-item #resultsMain-temaInfo-name {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse; }
  @media screen and (max-width: 768px) {
    .page-event-item-results#page-event-team-item #resultsMain-temaInfo-name {
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; } }

.page-event-item-results#page-event-team-item #resultsMain-teamInfoInner-team {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0; }
  @media screen and (max-width: 768px) {
    .page-event-item-results#page-event-team-item #resultsMain-teamInfoInner-team {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      gap: var(--margin-large); } }

@media screen and (max-width: 768px) {
  .page-event-item-results#page-event-team-item #resultsMain-teamInfoInner-teamData,
  .page-event-item-results#page-event-team-item #resultsMain-teamInfoInner-teamData header,
  .page-event-item-results#page-event-team-item #resultsMain-teamInfoInner-teamData header a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; } }

.page-event-item-results#page-event-team-item #resultsMain-teamInfo-eventTitle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: var(--margin-default);
  margin: var(--margin-default) 0 0; }
  @media screen and (max-width: 768px) {
    .page-event-item-results#page-event-team-item #resultsMain-teamInfo-eventTitle {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }
  @media print {
    .page-event-item-results#page-event-team-item #resultsMain-teamInfo-eventTitle {
      display: none; } }
  .page-event-item-results#page-event-team-item #resultsMain-teamInfo-eventTitle a {
    color: var(--color-black); }

.page-event-item-results#page-event-team-item #resultsMain-teamInfo-eventTitle-image {
  background: var(--color-ibukiDarkGray);
  max-width: 64px; }
  @media print {
    .page-event-item-results#page-event-team-item #resultsMain-teamInfo-eventTitle-image {
      background: none; } }
  .page-event-item-results#page-event-team-item #resultsMain-teamInfo-eventTitle-image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    vertical-align: top;
    aspect-ratio: 440 / 294; }
    @media print {
      .page-event-item-results#page-event-team-item #resultsMain-teamInfo-eventTitle-image img {
        width: 24mm;
        height: auto;
        aspect-ratio: 440 / 294;
        border: 1px solid var(--color-black);
        -webkit-filter: grayscale(100%);
                filter: grayscale(100%); } }

.page-event-item-results#page-event-team-item #resultsMain-teamInfoInner-results {
  width: 33%;
  border-left: 1px solid var(--borderColor-black);
  padding: 0 0 0 var(--margin-large);
  margin: 0 0 0 var(--margin-large);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  @media screen and (max-width: 768px) {
    .page-event-item-results#page-event-team-item #resultsMain-teamInfoInner-results {
      width: 100%;
      border: none;
      border-top: 1px solid var(--borderColor-black);
      padding: var(--margin-large) 0 0 0;
      margin: var(--margin-large) 0 0 0; } }
  .page-event-item-results#page-event-team-item #resultsMain-teamInfoInner-results list-container,
  .page-event-item-results#page-event-team-item #resultsMain-teamInfoInner-results table {
    width: 100%; }

.page-event-item-results#page-event-team-item .resultsMain-teamInfoInner-results-title {
  padding: var(--margin-default) 0 0 0;
  color: var(--color-darkGray);
  font-size: var(--fontSize-default);
  font-weight: var(--fontWeight-normal);
  line-height: var(--lineHeight-xsmall);
  text-align: right;
  width: 33%; }
  @media screen and (max-width: 768px) {
    .page-event-item-results#page-event-team-item .resultsMain-teamInfoInner-results-title {
      width: 40%; } }

.page-event-item-results#page-event-team-item .resultsMain-teamInfoInner-results-number {
  padding: var(--margin-default) 0 0 var(--margin-default);
  font-family: var(--fontFamily-montserrat);
  font-weight: var(--fontWeight-montserrat-bold);
  letter-spacing: 3px;
  font-size: var(--fontSize-xxxlarge);
  line-height: 1; }
  .page-event-item-results#page-event-team-item .resultsMain-teamInfoInner-results-number rb-if-value:not([hidden]) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .page-event-item-results#page-event-team-item .resultsMain-teamInfoInner-results-number rb-if-value {
    gap: var(--margin-xsmall);
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .page-event-item-results#page-event-team-item .resultsMain-teamInfoInner-results-number enum-value {
    font-size: var(--fontSize-large); }

.page-event-item-results#page-event-team-item .resultsMain-teamInfoInner-results-markedPoint {
  padding: var(--margin-default) 0 0 var(--margin-default); }
  .page-event-item-results#page-event-team-item .resultsMain-teamInfoInner-results-markedPoint a {
    padding: 0;
    gap: var(--margin-small);
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .page-event-item-results#page-event-team-item .resultsMain-teamInfoInner-results-markedPoint .c-eventRanking-table-markedPoint-label {
    -webkit-box-flex: initial;
        -ms-flex: initial;
            flex: initial; }

.page-event-item-results#page-event-team-item .resultsMain-teamInfoInner-results-time {
  padding: var(--margin-default) 0 0 var(--margin-default); }
  .page-event-item-results#page-event-team-item .resultsMain-teamInfoInner-results-time .stats-value {
    font-family: var(--fontFamily-monospace);
    font-size: var(--fontSize-xlarge);
    line-height: var(--lineHeight-xsmall); }

.page-event-item-results#page-event-team-item #resultMain-teamActions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
  margin: 0 auto;
  background: var(--bgColor-beige);
  padding: 0 12.5% var(--margin-small); }
  @media screen and (max-width: 768px) {
    .page-event-item-results#page-event-team-item #resultMain-teamActions {
      width: auto;
      padding: 0 var(--margin-default) var(--margin-small);
      background: var(--bgColor-white); } }
  @media print {
    .page-event-item-results#page-event-team-item #resultMain-teamActions {
      display: none; } }
  .page-event-item-results#page-event-team-item #resultMain-teamActions > a,
  .page-event-item-results#page-event-team-item #resultMain-teamActions > button,
  .page-event-item-results#page-event-team-item #resultMain-teamActions > popup-menu {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }
  .page-event-item-results#page-event-team-item #resultMain-teamActions popup-menu {
    position: relative; }
    .page-event-item-results#page-event-team-item #resultMain-teamActions popup-menu menu-main {
      top: calc(100% - var(--margin-small)) !important; }
      @media screen and (max-width: 768px) {
        .page-event-item-results#page-event-team-item #resultMain-teamActions popup-menu menu-main {
          right: 0; } }
  .page-event-item-results#page-event-team-item #resultMain-teamActions button {
    background: none;
    border: none;
    padding: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .page-event-item-results#page-event-team-item #resultMain-teamActions a:hover .resultMain-teamAction-actionInner, .page-event-item-results#page-event-team-item #resultMain-teamActions a:focus .resultMain-teamAction-actionInner,
  .page-event-item-results#page-event-team-item #resultMain-teamActions button:hover .resultMain-teamAction-actionInner,
  .page-event-item-results#page-event-team-item #resultMain-teamActions button:focus .resultMain-teamAction-actionInner {
    text-decoration: underline; }
  .page-event-item-results#page-event-team-item #resultMain-teamActions .resultMain-teamAction-actionInner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: calc(var(--margin-small) + var(--margin-xsmall));
    font-size: var(--fontSize-xsmall);
    line-height: var(--lineHeight-small);
    text-align: center;
    color: var(--color-black);
    padding: var(--margin-default) var(--margin-small);
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
  .page-event-item-results#page-event-team-item #resultMain-teamActions svg,
  .page-event-item-results#page-event-team-item #resultMain-teamActions img {
    width: 24px;
    height: 24px; }

.page-event-item-results#page-event-team-item #resultsMain-mapPageButton {
  margin: 0 var(--margin-default); }
  @media print {
    .page-event-item-results#page-event-team-item #resultsMain-mapPageButton {
      display: none; } }

.page-event-item-results#page-event-team-item #resultsMain-navigateCommentsButton {
  margin: var(--margin-small) var(--margin-default) var(--margin-default);
  font-size: var(--fontSize-default); }
  @media print {
    .page-event-item-results#page-event-team-item #resultsMain-navigateCommentsButton {
      display: none !important; } }
  .page-event-item-results#page-event-team-item #resultsMain-navigateCommentsButton a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: var(--margin-xsmall); }

@media (max-width: 559px) {
  .page-edit .container {
    padding-top: 0; } }

.edit-header {
  max-width: 1024px;
  margin: 0 auto 20px; }
  @media (max-width: 559px) {
    .edit-header {
      margin-bottom: 4px; } }

.edit-header-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 20px 0 0 0; }
  .edit-header-inner > a {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    margin: 0 0 0 8px; }
  @media (max-width: 559px) {
    .edit-header-inner {
      margin-top: 16px; } }

@media (max-width: 559px) {
  .edit-title {
    font-size: 0.85rem; } }

.edit-description {
  font-size: 0.9rem; }

paper-body-editor:not([hidden]) {
  display: block;
  width: 100%; }

paper-body-editor > iframe:not([hidden]) {
  display: block;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: none;
  min-height: calc(100vh - 200px); }

.edit-contents-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 0 12px 0; }

.edit-delete {
  margin: 40px 0 0 0;
  border-top: 1px solid #e4e4e4;
  padding: 20px 0 0 0; }

.edit-body-wrapper {
  margin: 0 0 40px; }
  .edit-body-wrapper h1 {
    display: none; }

.edit-body-wraper {
  height: 100%; }

.edit-body-contents {
  border: 1px solid #e4e4e4;
  margin: 0 0 16px 0;
  border-radius: 3px; }
  @media (max-width: 559px) {
    .edit-body-contents {
      margin-bottom: 12px; } }

.edit-body-details {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .edit-body-details action-status {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 0 0 0 12px; }
  .edit-body-details action-status-message {
    -ms-flex-negative: 0;
        flex-shrink: 0; }

.edit-photo-btn {
  background-image: url("/images/add-image-btn.svg");
  background-size: 40px 22px;
  background-repeat: no-repeat;
  background-position: 4px center;
  padding: 4px 12px 4px 40px;
  font-size: 15px;
  margin: 0 12px 0 0;
  min-height: 35px; }
  .edit-photo-btn:disabled {
    background-image: url("/images/add-image-btn-disable.svg"); }

.edit-summary-textarea {
  height: 4em !important; }

.edit-footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -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-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin: 40px 0 0 0; }

.edit-footer-save {
  display: inline-block;
  margin-bottom: 3em; }

.edit-footer-save action-status:not([hidden]) {
  display: inline-block;
  vertical-align: middle; }

.edit-footer-save progress:not([hidden]) {
  display: inline-block; }

@media (max-width: 559px) {
  .edit-footer-save {
    text-align: right; } }

.edit-history {
  margin: 0 0 40px 0; }

.edit-notify-user {
  color: #333;
  font-weight: bold; }
  .edit-notify-user img {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    vertical-align: middle; }

.edit-notify-contents {
  margin: 4px 0 0 0; }

.edit-notify-log {
  margin: 20px 0 16px;
  padding: 16px 20px;
  border: 1px solid #e4e4e4; }
  .edit-notify-log > li {
    list-style: none; }
  .edit-notify-log .edit-notify-contents {
    padding-left: 20px; }

.user-header list-main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: var(--bgColor-beige);
  white-space: nowrap;
  overflow-x: hidden; }

.user-header list-item {
  display: inline-block;
  vertical-align: middle; }
  .user-header list-item img {
    width: 255px;
    height: 170px;
    max-width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: var(--borderRadius-default);
    margin: 0 !important;
    vertical-align: middle;
    border-radius: 0; }
    .user-header list-item img:hover {
      opacity: 0.8; }
    .user-header list-item img:not([hidden]) {
      display: block;
      background: var(--bgColor-beige);
      text-align: center;
      margin: 0 0 8px 0; }
    @media (max-width: 559px) {
      .user-header list-item img {
        width: 100%;
        height: 132px; } }
    @media (max-width: 400px) {
      .user-header list-item img {
        height: 118px; } }
    @media (max-width: 350px) {
      .user-header list-item img {
        height: 97px; } }

.user-header list-item:nth-child(n+6) {
  display: none; }

@media (min-width: 1275px) {
  .user-header list-item:nth-child(6) {
    display: inherit; }
  .user-header list-item:nth-child(n+7) {
    display: none; } }

@media (max-width: 1020px) and (min-width: 480px) {
  .user-header list-item:nth-child(n+5) {
    display: none; } }

@media (max-width: 559px) {
  .user-header list-main {
    display: block;
    overflow-x: scroll; }
  .user-header list-item img {
    width: 142px;
    height: 142px;
    border-right: 4px solid #fff; } }

.user-profile {
  margin: 0 0 40px;
  position: relative;
  min-height: 120px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  @media (max-width: 559px) {
    .user-profile {
      padding: 0;
      text-align: center;
      margin: 32px 0 20px; } }

.user-profile-name {
  font-size: 1.1rem;
  text-align: center;
  margin: 4px 0;
  max-width: 204px; }
  @media (max-width: 559px) {
    .user-profile-name {
      font-size: 1.2rem;
      display: block !important;
      text-align: center;
      max-width: 300px; } }

.user-profile-icon {
  width: 100px;
  height: 100px;
  background: #fff;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  display: inline-block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 4px solid #e4e4e4;
  vertical-align: middle;
  margin: 0 4px 0 0; }
  @media (max-width: 559px) {
    .user-profile-icon {
      position: static;
      display: block;
      margin: 0 auto; } }

.user-desc {
  text-align: left;
  padding: 0 24px 0 0;
  margin: 12px 0 0 0; }

.user-desc-edit {
  position: absolute;
  right: 0;
  top: 0;
  font-size: .9rem; }
  .user-desc-edit .btn-white, .user-desc-edit .btn-white-medium, .user-desc-edit .create-link, .user-desc-edit .btn-white-large, .user-desc-edit .component-courseData .component-courseData-downloadGpx, .component-courseData .user-desc-edit .component-courseData-downloadGpx, .user-desc-edit .page-event .course-share-gpx, .page-event .user-desc-edit .course-share-gpx, .user-desc-edit .edit-photo-btn {
    font-size: 12px; }
  @media (max-width: 559px) {
    .user-desc-edit {
      top: -12px; } }

.user-profile-service {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: .9rem; }

.user-link {
  margin: 10px 16px 0 0;
  padding-left: 20px;
  background-size: 16px 16px;
  background-repeat: no-repeat;
  background-position: left 3px; }
  .user-link a {
    color: #999; }

.link-url {
  background-image: url(/images/icon-link.svg); }

.user-link[data-service=strava] {
  background-image: url(/images/icon-strava.svg); }

.user-link[data-service=twitter] {
  background-image: url(/images/icon-twitter.svg); }

.user-contents {
  border-bottom: 1px solid #e4e4e4;
  margin: 0 0 40px;
  padding: 0 0 40px; }
  @media (max-width: 559px) {
    .user-contents {
      margin: 0 0 24px;
      padding: 0 0 24px; } }

.user-contents-header {
  margin: 0 0 var(--margin-large); }

.user-contents-title {
  font-size: 1.2rem; }

.user-contents-description {
  color: var(--color-darkGray);
  font-size: var(--fontSize-small); }

.user-activity-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 -10px; }
  @media (max-width: 559px) {
    .user-activity-list list-item {
      min-width: 0; } }
  .user-activity-list list-item {
    -ms-flex-preferred-size: calc(33.333% - 20px);
        flex-basis: calc(33.333% - 20px);
    margin: 0 10px 40px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
  @media (max-width: 559px) {
    .user-activity-list list-item {
      -ms-flex-preferred-size: calc(50% - 20px);
          flex-basis: calc(50% - 20px); } }

@media (max-width: 768px) {
  .user-ranking {
    border-bottom: 1px solid #e4e4e4;
    margin: 0 0 40px;
    padding: 0 0 40px; } }

@media (max-width: 559px) {
  .user-ranking .ranking-detail {
    margin: 0 0 2px 0;
    padding: 0 6px; }
    .user-ranking .ranking-detail unit-number:before {
      left: 16px;
      top: 12px; }
  .user-ranking .ranking-time {
    display: none; } }

.user-ranking-list > list-item {
  margin: 0 0 20px;
  padding: 0 0 0 48px;
  position: relative; }

@media (max-width: 559px) {
  .user-ranking-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow-x: scroll;
    white-space: nowrap;
    margin: 0 -20px; }
    .user-ranking-list > list-item {
      border: 1px solid #e4e4e4;
      border-radius: 3px;
      -ms-flex-preferred-size: 160px;
          flex-basis: 160px;
      -ms-flex-negative: 0;
          flex-shrink: 0;
      display: inline-block;
      white-space: normal;
      margin: 0 8px 0 0;
      padding: 56px 12px 12px 12px;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      background: #fff; }
      .user-ranking-list > list-item:first-child {
        margin-left: 20px; }
      .user-ranking-list > list-item:last-child {
        margin-right: 40px; } }

.user-ranking-list-sub:not([hidden]) {
  display: inline-block; }
  .user-ranking-list-sub:not([hidden]) list-item {
    display: inline-block;
    margin-right: 4px; }
  @media (max-width: 559px) {
    .user-ranking-list-sub:not([hidden]) list-item:nth-child(n+3) {
      display: none; } }

.user-ranking-title {
  font-size: 16px;
  margin: 0 0 .8em; }
  @media (max-width: 559px) {
    .user-ranking-title {
      font-size: 14px; } }

.user-ranking-name {
  font-weight: bold;
  display: inline-block;
  font-size: .9rem; }
  .user-ranking-name a {
    color: #333; }
  @media (max-width: 559px) {
    .user-ranking-name {
      font-size: .8rem;
      display: block;
      line-height: 1.4;
      margin: 0 0 .2em 0; } }

.user-pager-select {
  margin: 8px 0 0 0;
  display: inline-block; }

#liveonly section h1 {
  margin: 0 0 var(--margin-default); }

.user-futureEvent:hover, .user-futureEvent:focus {
  text-decoration: none; }
  .user-futureEvent:hover .user-futureEvent-title, .user-futureEvent:focus .user-futureEvent-title {
    text-decoration: underline; }

.user-futureEvent-icon {
  width: 200px;
  height: 133.33333px;
  max-width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: var(--borderRadius-default);
  background: var(--bgColor-beige);
  border-radius: var(--borderRadius-default);
  color: var(--color-darkGray);
  width: 100%; }
  .user-futureEvent-icon:hover {
    opacity: 0.8; }
  .user-futureEvent-icon:not([hidden]) {
    display: block;
    background: var(--bgColor-beige);
    text-align: center;
    margin: 0 0 8px 0; }
  @media (max-width: 559px) {
    .user-futureEvent-icon {
      width: 100%;
      height: 132px; } }
  @media (max-width: 400px) {
    .user-futureEvent-icon {
      height: 118px; } }
  @media (max-width: 350px) {
    .user-futureEvent-icon {
      height: 97px; } }
  .user-futureEvent-icon:not([hidden]) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .user-futureEvent-icon svg {
    width: 44px;
    height: 44px; }

.user-futureEvent-title {
  font-weight: var(--fontWeight-bold);
  color: var(--color-black);
  margin: 0 0 5px; }

.user-futureEvent-eventStartDate {
  font-size: .85rem;
  color: var(--color-dullGray);
  line-height: 1.2; }
  .user-futureEvent-eventStartDate:not([hidden]) {
    display: block; }

rb-formatted-body {
  white-space: pre-wrap;
  word-wrap: break-word; }

.url-link {
  word-break: break-all; }

.main-table {
  width: 100%;
  border-collapse: collapse; }

.main-table tr {
  border-bottom: #eee 1px solid; }

.main-table tr.device-avail-false,
.main-table tr.device-avail-false > th {
  background-color: #f7f7f7;
  color: gray; }

.main-table th {
  text-align: center;
  color: var(--color-black);
  background: rgba(255, 255, 255, 0.8); }

.main-table thead th {
  position: relative;
  position: sticky;
  top: 0; }

.main-table tbody th {
  text-align: left; }

.main-table td {
  padding: 0.2em; }

.main-table td p {
  margin: 0; }

.main-table th p.info,
.main-table td p.info,
.info.data-markers {
  font-size: 75%;
  font-weight: normal;
  color: gray;
  background: transparent; }

.main-imei {
  font-size: 200%; }

.main-table td a.main-link:not([hidden]) {
  display: block; }

.info.data-markers {
  text-align: right; }

@media (max-width: 480px) {
  .main-table:not(.large-table) tr {
    display: block;
    overflow: auto; }
  .main-table:not(.large-table) th,
  .main-table:not(.large-table) td {
    display: block; } }

.config {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  margin: 0.5em auto;
  position: relative; }

.config th {
  width: 120px;
  font-weight: normal;
  text-align: left;
  vertical-align: top;
  padding: 12px 8px 0 0;
  font-size: 0.9rem; }

.config.compact th {
  padding: 0; }

.config td:not([hidden]) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.config td {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 0.9rem;
  padding: 0.4em; }

.config td.config-text {
  padding-top: 10px; }

.config textarea,
.config input:not([type]),
.config input[type="text"],
.config input[type="url"],
.config input[type="tel"],
.config input[type="email"],
.config input[type="date"],
.config input[type="time"] {
  -webkit-appearance: none;
  border-radius: 4px;
  font-size: 0.9rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 8px; }

.config textarea:hover,
.config input:not([type]):hover,
.config input[type="text"]:hover,
.config input[type="url"]:hover,
.config input[type="tel"]:hover,
.config input[type="email"]:hover,
.config input[type="date"]:hover,
.config input[type="time"]:hover {
  border-color: #b3b3b3; }

.config input:not([type]),
.config input[type="text"],
.config input[type="url"],
.config input[type="email"],
.config input[type="tel"] {
  width: 240px;
  max-width: 240px;
  -webkit-box-flex: 2;
      -ms-flex: 2;
          flex: 2; }

.config textarea {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  height: 12em;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.config select {
  -webkit-appearance: none;
  border-radius: 4px;
  font-size: 0.9rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 8px;
  border-color: #ccc;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
  position: relative;
  background-image: url(/images/menu.svg);
  background-position: right 8px center;
  background-repeat: no-repeat;
  background-size: 20px; }

.config select:hover {
  border-color: #b3b3b3; }

.config select:enabled {
  background-image: #fff; }

.config output {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1; }

.config with-popup-menu {
  width: 100%; }

.config .config-twitter {
  position: relative; }

.config .config-twitter:before {
  content: "@";
  position: absolute;
  top: 6px;
  left: 8px;
  color: #999; }

.config .config-twitter input {
  padding-left: 24px; }

.config .config-course-title {
  width: 100%;
  max-width: 100% !important; }

.config.compact td {
  padding: 0; }

.config .config-text {
  padding-top: 12px; }

.config .config-icon {
  width: 40px;
  height: 40px;
  vertical-align: middle;
  border-radius: 50%; }

@media (max-width: 559px) {
  .config th {
    color: #999;
    font-size: 0.75rem;
    width: 100%;
    display: block;
    padding: 16px 0 2px 0; }
  .config td:not([hidden]) {
    padding: 0; }
  .config input:not([type]),
  .config input[type="text"],
  .config input[type="url"],
  .config input[type="email"],
  .config input[type="date"] {
    width: 100% !important;
    max-width: inherit !important; } }

.config-wide th {
  color: #999;
  font-size: 0.8rem;
  text-align: left;
  width: 100%;
  display: block;
  padding: 16px 0 2px 0; }

.config-wide td:not([hidden]) {
  padding: 0; }

.config-wide input {
  width: 100%;
  max-width: inherit !important; }

.config-check-icon {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  margin-right: 8px; }

.config-check-input {
  margin: 8px 0 0 0; }

.config-check-input label {
  cursor: pointer; }

.config td {
  --timejs-serialization: dtsjp1; }

.config td > p {
  width: 100%; }

.config td .info:not([hidden]) {
  display: inline-block; }

.config td .info {
  padding: .5em;
  color: var(--color-darkGray);
  background: var(--color-white);
  font-size: 75%;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1; }

.config.compact td .info {
  padding-top: 0;
  padding-bottom: 0; }

td.checkbox {
  text-align: center; }

td.checkbox input[type=checkbox] {
  min-width: 1.5em;
  min-height: 1.5em; }

enum-value[data-field=check_result]::before {
  font-size: 120%;
  font-weight: bolder; }

enum-value[data-field=check_result][value=completed]::before {
  content: "✔ ";
  color: var(--ok-color);
  background-color: var(--ok-background-color); }

enum-value[data-field=check_result]:not([value=completed])::before {
  content: "× ";
  color: var(--ng-color);
  background-color: var(--ng-background-color); }

.contact-body {
  font-size: 1rem;
  min-height: 10em; }

.attached-image-preview img {
  max-width: 10em;
  max-height: 10em;
  cursor: pointer; }

.vb-page,
.vb-list-table {
  --timejs-serialization: dtsjp3; }

.XXX {
  border: red 0.5em solid;
  padding: 0.5em; }

.history-user a {
  color: #333; }

.history-user-icon {
  width: 48px;
  height: 48px;
  border-radius: 34px;
  vertical-align: middle;
  display: inline-block;
  padding: 10px; }

.history-user-name {
  font-weight: bold; }

.config-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.edit-page {
  --timejs-serialization: dtsjp3; }

.edit-page account-info img {
  width: 16px;
  height: 16px;
  margin: 1px;
  vertical-align: middle; }

.edit-page section h1 {
  font-size: 1.2rem;
  margin: 0 0 0.4em; }

.edit-page section {
  margin: 0 0 40px; }

.config-section-sub {
  margin: 0 0 20px; }

.config-buttons {
  margin: 0 0 12px; }

.page-static .container {
  padding-top: 0; }

.page-static .tab-vertical-menu {
  -ms-flex-preferred-size: 240px;
      flex-basis: 240px; }
  @media (max-width: 559px) {
    .page-static .tab-vertical-menu {
      border: 1px solid #e4e4e4;
      margin: 0 0 40px 0; }
      .page-static .tab-vertical-menu > ul > li {
        display: block; }
        .page-static .tab-vertical-menu > ul > li:not(:first-of-type) {
          border-top: 1px solid #e4e4e4; }
        .page-static .tab-vertical-menu > ul > li > a {
          color: var(--color-black); }
      .page-static .tab-vertical-menu ul {
        display: inline;
        margin: 0;
        vertical-align: top; }
      .page-static .tab-vertical-menu li {
        display: inline; }
      .page-static .tab-vertical-menu a {
        display: inline-block;
        border: none;
        vertical-align: top;
        color: #239b43; } }

.page-static .tab-vertical-contents {
  -ms-flex-preferred-size: 740px;
      flex-basis: 740px; }

.static-title {
  font-size: 1.2rem;
  margin: 0 0 1em; }

.static-contents {
  margin: 0 0 100px 0; }
  .static-contents > section:not(:first-child) {
    margin: 60px 0 0;
    padding: 60px 0 0;
    border-top: 3px solid var(--borderColor-default); }
  .static-contents > section > h1 {
    font-size: 1.3rem; }
  .static-contents > section > section {
    padding: 30px 0 0 0; }
  .static-contents a[href^="#"] {
    border-bottom: 1px solid #ccc;
    color: inherit;
    background: transparent;
    text-decoration: none; }
  .static-contents h1 {
    font-size: 1.05rem;
    margin: 0 0 0.4em 0; }
  .static-contents p {
    line-height: 1.8;
    margin: 1em 0; }
  .static-contents dd {
    margin: 4px 0 16px 20px; }
  .static-contents ul,
  .static-contents ul > li {
    list-style: inherit; }
  .static-contents ul,
  .static-contents ol {
    padding: 0 0 0 40px;
    margin: 8px 0 16px 0; }
    .static-contents ul li,
    .static-contents ol li {
      margin: 0 0 0.2em; }
  .static-contents ol ul {
    list-style: disc; }
  .static-contents .notes {
    margin: 12px 0 16px;
    padding: 12px 16px 12px 32px;
    list-style: disc; }
  .static-contents figure.table {
    margin: 1em 0; }
  .static-contents table {
    width: 100%;
    border-top: 1px solid var(--borderColor-mediumGray);
    border-left: 1px solid var(--borderColor-mediumGray); }
  .static-contents th,
  .static-contents td {
    border-right: 1px solid var(--borderColor-mediumGray);
    border-bottom: 1px solid var(--borderColor-mediumGray);
    vertical-align: top;
    padding: var(--margin-small); }
  .static-contents th {
    text-align: left;
    white-space: nowrap; }

.share-dialog-menu a:not([hidden]) {
  display: block; }

html[data-theme="announce"] .page-group .wrapper-middle {
  max-width: var(--container-width);
  margin-left: auto;
  margin-right: auto; }
  @media (max-width: 1080px) {
    html[data-theme="announce"] .page-group .wrapper-middle {
      padding: 0 30px; } }
  @media (max-width: 559px) {
    html[data-theme="announce"] .page-group .wrapper-middle {
      padding: 0 20px; } }
  @media (max-width: 350px) {
    html[data-theme="announce"] .page-group .wrapper-middle {
      padding: 0 12px; } }

html[data-theme="announce"] .page-group #groupIndex-header hgroup h1 {
  font-family: var(--fontFamily-montserrat);
  font-weight: var(--fontWeight-montserrat-extraBold);
  letter-spacing: 0.1em;
  font-size: var(--fontSize-xxlarge);
  text-align: center;
  border: 1px solid var(--color-brand);
  padding: var(--margin-xlarge) var(--margin-default);
  background: url(/images/bg-contour-announce.svg) left bottom;
  background-size: 800px 800px;
  margin: var(--margin-xlarge) 0 calc(var(--margin-xlarge) + var(--margin-default)); }
  @media (max-width: 768px) {
    html[data-theme="announce"] .page-group #groupIndex-header hgroup h1 {
      font-size: var(--fontSize-xlarge);
      margin: 0 0 40px; } }
  @media (max-width: 559px) {
    html[data-theme="announce"] .page-group #groupIndex-header hgroup h1 {
      padding: var(--margin-xlarge); } }
  html[data-theme="announce"] .page-group #groupIndex-header hgroup h1 a {
    text-decoration: none; }

html[data-theme="announce"] .page-group #groupIndex-header hgroup h2 {
  display: none; }

html[data-theme="announce"] .page-group #groupIndex-header .component-objectMenu > button {
  width: 50px;
  height: 50px; }

html[data-theme="announce"] .page-group .component-coverImage,
html[data-theme="announce"] .page-group .group-header-status,
html[data-theme="announce"] .page-group .group-description,
html[data-theme="announce"] .page-group tab-menu,
html[data-theme="announce"] .page-group .group-blog h1 {
  display: none; }

html[data-theme="announce"] .page-group .blogList list-main {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: var(--margin-xlarge) var(--margin-large); }
  @media (max-width: 768px) {
    html[data-theme="announce"] .page-group .blogList list-main {
      gap: 40px var(--margin-large); } }

html[data-theme="announce"] .page-group .blogList list-item {
  margin: 0; }

html[data-theme="announce"] .page-group .blogItem {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }
  html[data-theme="announce"] .page-group .blogItem img {
    width: 100%; }

.page-group #groupIndex-header {
  margin: 20px 0 0; }
  .page-group #groupIndex-header .component-objectMenu {
    position: absolute;
    top: 0;
    right: 0; }

.page-group .group-description {
  margin: var(--margin-default) 0; }

.page-group .blogList list-item {
  margin: var(--margin-default) 0 0; }

.page-group .blogList .pager {
  text-align: center;
  margin: var(--margin-xlarge) 0 var(--margin-xxlarge); }
  @media (max-width: 768px) {
    .page-group .blogList .pager {
      margin: var(--margin-large) 0 var(--margin-xlarge); } }

.page-group .blogItem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-default);
  text-decoration: none; }
  @media (max-width: 559px) {
    .page-group .blogItem {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }
  .page-group .blogItem:hover bdi, .page-group .blogItem:focus bdi {
    text-decoration: underline; }
  .page-group .blogItem img {
    margin: 0;
    height: auto;
    aspect-ratio: 3 / 2; }

.page-group .blogItem-textContent {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0; }
  .page-group .blogItem-textContent bdi {
    font-weight: bold;
    color: var(--color-black); }
  .page-group .blogItem-textContent time {
    display: block;
    font-size: var(--fontSize-small);
    color: var(--color-darkGray); }

.group-header h1 {
  font-size: 0.8rem;
  color: #999;
  font-weight: normal; }
  .group-header h1 a {
    color: #999; }

.group-header-top {
  position: relative; }
  .group-header-top h1 {
    font-size: 1.2rem;
    margin: 0 0 1em 0; }

.group-header-status {
  color: #999;
  font-size: 0.8rem; }

.group-blog {
  margin: 10px 0 0 0; }

.group-edit-textarea {
  width: 100%;
  height: 16em; }

.group-photo-uploader image-editor {
  width: 100% !important; }

.group-photo-current {
  margin: 0 0 20px 0; }
  .group-photo-current img {
    max-width: 100%;
    max-height: 50%;
    text-align: center; }

html[data-theme="announce"] .page-groupEntry .wrapper-middle {
  max-width: var(--container-width);
  margin-left: auto;
  margin-right: auto; }
  @media (max-width: 1080px) {
    html[data-theme="announce"] .page-groupEntry .wrapper-middle {
      padding: 0 30px; } }
  @media (max-width: 559px) {
    html[data-theme="announce"] .page-groupEntry .wrapper-middle {
      padding: 0 20px; } }
  @media (max-width: 350px) {
    html[data-theme="announce"] .page-groupEntry .wrapper-middle {
      padding: 0 12px; } }

html[data-theme="announce"] .page-groupEntry .group-header a {
  color: var(--color-brand);
  font-family: var(--fontFamily-montserrat);
  font-weight: var(--fontWeight-montserrat-extraBold);
  font-size: var(--fontSize-small);
  letter-spacing: 0.1em; }

html[data-theme="announce"] .page-groupEntry #group-entry-header {
  padding: calc(var(--margin-xxlarge) - var(--margin-large)) 0 var(--margin-xxlarge);
  margin: 0;
  position: relative; }
  html[data-theme="announce"] .page-groupEntry #group-entry-header::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 42%;
    right: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    display: block;
    width: 50%;
    height: 60%;
    border: 1px solid var(--color-brand);
    background: url(/images/bg-contour-announce.svg) left bottom;
    background-size: 800px 800px;
    opacity: 0.6; }
    @media (max-width: 768px) {
      html[data-theme="announce"] .page-groupEntry #group-entry-header::before {
        width: 40%; } }
  @media (max-width: 768px) {
    html[data-theme="announce"] .page-groupEntry #group-entry-header {
      padding-bottom: var(--margin-xlarge); } }

html[data-theme="announce"] .page-groupEntry #group-entry-title {
  margin: 0;
  max-width: 80%; }

html[data-theme="announce"] .page-groupEntry #group-entry-main {
  max-width: var(--width-medium);
  margin: 0 auto; }

.page-groupEntry #group-entry rb-formatted-body {
  white-space: pre-wrap;
  line-height: var(--lineHeight-large); }
  .page-groupEntry #group-entry rb-formatted-body > *:first-child {
    margin-top: 0; }
  .page-groupEntry #group-entry rb-formatted-body section {
    margin: var(--margin-xlarge) 0 0; }
    .page-groupEntry #group-entry rb-formatted-body section h1 {
      font-family: var(--fontFamily-montserrat);
      font-weight: var(--fontWeight-montserrat-bold);
      letter-spacing: 1px;
      font-size: var(--fontSize-xxlarge);
      line-height: var(--lineHeight-small);
      margin: 0 0 var(--margin-default); }
      @media (max-width: 768px) {
        .page-groupEntry #group-entry rb-formatted-body section h1 {
          font-size: var(--fontSize-large); } }
    .page-groupEntry #group-entry rb-formatted-body section section h1 {
      font-size: var(--fontSize-xlarge); }
      @media (max-width: 768px) {
        .page-groupEntry #group-entry rb-formatted-body section section h1 {
          font-size: var(--fontSize-medium); } }
    .page-groupEntry #group-entry rb-formatted-body section section section h1 {
      font-size: var(--fontSize-large); }
      @media (max-width: 768px) {
        .page-groupEntry #group-entry rb-formatted-body section section section h1 {
          font-size: var(--fontSize-default); } }
  .page-groupEntry #group-entry rb-formatted-body p {
    margin: 2.2em 0; }
  .page-groupEntry #group-entry rb-formatted-body ul,
  .page-groupEntry #group-entry rb-formatted-body ul > li {
    list-style: inherit; }
  .page-groupEntry #group-entry rb-formatted-body ul,
  .page-groupEntry #group-entry rb-formatted-body ol {
    padding: 0 0 0 24px;
    margin: 2.7em 0; }
  .page-groupEntry #group-entry rb-formatted-body figure {
    margin: 2.7em 0; }
    .page-groupEntry #group-entry rb-formatted-body figure img {
      height: auto;
      vertical-align: top; }
  .page-groupEntry #group-entry rb-formatted-body figcaption {
    margin: 0 4em;
    font-size: var(--fontSize-default);
    text-align: center; }
  .page-groupEntry #group-entry rb-formatted-body preamble,
  .page-groupEntry #group-entry rb-formatted-body postamble {
    display: block;
    background: var(--bgColor-beige);
    padding: var(--margin-default) calc(var(--margin-default) + var(--margin-xsmall)); }
    .page-groupEntry #group-entry rb-formatted-body preamble > *:first-child,
    .page-groupEntry #group-entry rb-formatted-body postamble > *:first-child {
      margin-top: 0; }
    .page-groupEntry #group-entry rb-formatted-body preamble > *:last-child,
    .page-groupEntry #group-entry rb-formatted-body postamble > *:last-child {
      margin-bottom: 0; }
    .page-groupEntry #group-entry rb-formatted-body preamble p,
    .page-groupEntry #group-entry rb-formatted-body postamble p {
      margin: 1em 0; }
  .page-groupEntry #group-entry rb-formatted-body blockquote {
    margin: 0 0 1em;
    border: 1px solid var(--borderColor-default);
    padding: var(--margin-default) calc(var(--margin-default) + var(--margin-xsmall)); }
    .page-groupEntry #group-entry rb-formatted-body blockquote > *:first-child {
      margin-top: 0; }
    .page-groupEntry #group-entry rb-formatted-body blockquote > *:last-child {
      margin-bottom: 0; }
    .page-groupEntry #group-entry rb-formatted-body blockquote p {
      margin: 1em 0; }
  .page-groupEntry #group-entry rb-formatted-body hr {
    border: none;
    border-top: 1px solid var(--borderColor-default);
    visibility: visible;
    margin: 2.7em 0; }
  .page-groupEntry #group-entry rb-formatted-body .tag {
    font-size: var(--fontSize-default);
    font-weight: var(--fontWeight-normal); }

.page-groupEntry #group-entry rb-neighbor-pages {
  margin: var(--margin-xxlarge) 0; }

.page-groupEntry #group-entry-header {
  margin: 0 0 var(--margin-default); }

.page-groupEntry #group-entry-title {
  font-size: var(--fontSize-xxxlarge);
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 0.1em;
  margin: var(--margin-default) 0 0; }
  @media (max-width: 768px) {
    .page-groupEntry #group-entry-title {
      font-size: var(--fontSize-large);
      letter-spacing: 0.05em; } }
  .page-groupEntry #group-entry-title a {
    color: #333; }

.page-groupEntry #group-entry-datetime {
  font-size: var(--fontSize-small);
  color: var(--color-darkGray);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-default);
  margin: var(--margin-default) 0 0; }
  @media (max-width: 768px) {
    .page-groupEntry #group-entry-datetime {
      font-size: var(--fontSize-xsmall);
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: 0; } }

.page-groupEntry #group-details {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: var(--margin-small);
  margin: var(--margin-xlarge) 0 0 calc(var(--margin-small) * -1); }

.page-groupEntry #group-details-shareButton {
  color: var(--color-black);
  background: none;
  padding: var(--margin-small);
  border: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: var(--margin-small); }

.page-guide .guide-main {
  max-width: 700px;
  margin: 0 auto 80px; }
  @media (max-width: 559px) {
    .page-guide .guide-main {
      padding: 0 10px; } }

.page-guide .guide-title {
  text-align: center;
  margin: 1em 0; }
  .page-guide .guide-title img {
    width: 180px;
    height: 160px;
    vertical-align: middle; }
    @media (max-width: 559px) {
      .page-guide .guide-title img {
        width: 150px;
        height: 133px; } }

.page-guide .guide-catch {
  text-align: center;
  color: #239b43;
  font-size: 1.6rem;
  font-weight: bold;
  margin: 0 0 0.8em 0; }
  @media (max-width: 559px) {
    .page-guide .guide-catch {
      font-size: 1.1rem;
      margin: 0 0 2em; } }

.page-guide .guide-description {
  font-size: 1.1rem;
  margin: 0 20px 0.5em;
  font-weight: bold;
  line-height: 1.8; }
  @media (max-width: 559px) {
    .page-guide .guide-description {
      font-size: 1rem;
      margin: 0 0 0.8em; } }

.page-guide .guide-howto {
  max-width: 700px;
  margin: 0 auto; }
  @media (max-width: 559px) {
    .page-guide .guide-howto {
      padding: 0 10px; } }

.page-guide .guide-howto-title {
  color: #239b43;
  text-align: center;
  font-size: 1.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1;
  margin: 0 0 60px; }
  .page-guide .guide-howto-title:before, .page-guide .guide-howto-title:after {
    content: "";
    display: block;
    height: 1px;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    background: #ddd; }
  .page-guide .guide-howto-title:before {
    margin-right: 20px; }
  .page-guide .guide-howto-title:after {
    margin-left: 20px; }
  @media (max-width: 559px) {
    .page-guide .guide-howto-title {
      font-size: 1.2rem;
      margin: 0 0 30px; }
      .page-guide .guide-howto-title:before {
        margin-right: 8px; }
      .page-guide .guide-howto-title:after {
        margin-left: 8px; } }

.page-guide .guide-howto-title-sub {
  font-size: 1.2rem;
  margin: 0 0 0.8em; }
  @media (max-width: 559px) {
    .page-guide .guide-howto-title-sub {
      text-align: center;
      font-size: 1.1rem; } }

.page-guide .guide-howto-description {
  margin: 0 0 20px 0;
  line-height: 1.8; }
  @media (max-width: 559px) {
    .page-guide .guide-howto-description {
      font-size: 0.9rem; } }

.page-guide .guide-howto-section1 {
  margin: 0 0 80px;
  padding: 0 0 0 260px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-size: 220px 220px;
  background-repeat: no-repeat;
  background-image: url("/images/guide-1.svg"); }
  @media (max-width: 559px) {
    .page-guide .guide-howto-section1 {
      padding: 210px 0 0 0;
      background-size: 200px 200px;
      background-position: top center; } }

.page-guide .guide-howto-section2 {
  margin: 0 0 80px;
  padding: 0 0 0 260px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-size: 220px 220px;
  background-repeat: no-repeat;
  background-image: url("/images/guide-2.svg"); }
  @media (max-width: 559px) {
    .page-guide .guide-howto-section2 {
      padding: 210px 0 0 0;
      background-size: 200px 200px;
      background-position: top center; } }

.page-guide .guide-howto-section3 {
  margin: 0 0 80px;
  padding: 0 0 0 260px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-size: 220px 220px;
  background-repeat: no-repeat;
  background-image: url("/images/guide-3.svg"); }
  @media (max-width: 559px) {
    .page-guide .guide-howto-section3 {
      padding: 210px 0 0 0;
      background-size: 200px 200px;
      background-position: top center; } }

.page-guide .guide-tips {
  padding: 24px;
  background-image: url("/images/line-left.svg"), url("/images/line-right.svg");
  background-position: left bottom, right top;
  background-repeat: no-repeat;
  background-size: 40px 40px; }
  @media (max-width: 559px) {
    .page-guide .guide-tips {
      padding: 20px; } }

.page-guide .guide-tips-title {
  margin: 0 0 0.5em;
  background: url("/images/guide-tips.svg") no-repeat;
  background-size: 50px 24px;
  padding: 0 0 0 58px; }

.page-guide .guide-tips-description {
  font-size: 0.85rem;
  line-height: 1.8; }

.page-guide-ambassadors #container {
  line-height: 1.8; }

.page-guide-ambassadors .header {
  background: var(--bgColor-beige);
  text-align: center;
  padding: var(--margin-xlarge) 0; }
  @media (max-width: 768px) {
    .page-guide-ambassadors .header {
      padding: var(--margin-large) 0; } }
  .page-guide-ambassadors .header h1 {
    font-size: var(--fontSize-xxxlarge);
    line-height: var(--lineHeight-medium);
    margin: 0 var(--margin-large); }
    @media (max-width: 768px) {
      .page-guide-ambassadors .header h1 {
        font-size: var(--fontSize-xxlarge); } }
    .page-guide-ambassadors .header h1 span {
      display: inline-block; }

.page-guide-ambassadors #ambassadors {
  margin: var(--margin-xlarge) 0;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: var(--margin-large);
  text-align: center; }
  @media (max-width: 559px) {
    .page-guide-ambassadors #ambassadors {
      margin: 20px 0 var(--margin-large);
      -webkit-column-gap: var(--margin-default);
         -moz-column-gap: var(--margin-default);
              column-gap: var(--margin-default); } }
  @media (max-width: 350px) {
    .page-guide-ambassadors #ambassadors {
      margin: 12px 0 var(--margin-large); } }
  .page-guide-ambassadors #ambassadors img {
    max-width: 100%; }
  .page-guide-ambassadors #ambassadors h1 {
    margin: var(--margin-default) 0 var(--margin-xsmall); }
  .page-guide-ambassadors #ambassadors p {
    font-size: var(--fontSize-small);
    color: var(--color-darkGray); }
  .page-guide-ambassadors #ambassadors ul {
    margin: var(--margin-xsmall) 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .page-guide-ambassadors #ambassadors a {
    color: var(--color-black);
    padding: var(--margin-small);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }

.page-guide-ambassadors .c-gpsFooter-pricingTitle {
  background: var(--bgColor-beige); }

.page-guide-gps #summary,
.page-guide-gps #youtube,
.page-guide-gps #cases,
.page-guide-gps #voices,
.page-guide-gps #events,
.page-guide-gps #system,
.page-guide-gps .feature,
.page-guide-gps #steps {
  padding: var(--margin-xlarge) 0; }
  @media (max-width: 768px) {
    .page-guide-gps #summary,
    .page-guide-gps #youtube,
    .page-guide-gps #cases,
    .page-guide-gps #voices,
    .page-guide-gps #events,
    .page-guide-gps #system,
    .page-guide-gps .feature,
    .page-guide-gps #steps {
      padding: var(--margin-large) 0; } }

.page-guide-gps #firstView {
  height: 50vw;
  max-height: 75vh;
  min-height: 600px;
  background: var(--bgColor-beige);
  position: relative; }
  @media (max-width: 768px) {
    .page-guide-gps #firstView {
      height: auto;
      max-height: none;
      min-height: auto;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }

.page-guide-gps #firstView-catchphrase {
  position: absolute;
  left: var(--margin-xlarge);
  bottom: var(--margin-xlarge);
  color: var(--color-white);
  z-index: 2; }
  @media (max-width: 768px) {
    .page-guide-gps #firstView-catchphrase {
      padding: var(--margin-large) var(--margin-large) var(--margin-medium);
      position: static;
      background: var(--color-brand) url(/images/bg-contour-green.svg) left bottom;
      background-size: 800px 800px;
      z-index: 0; } }
  @media (max-width: 768px) {
    .page-guide-gps #firstView-catchphrase svg {
      display: none; } }
  .page-guide-gps #firstView-catchphrase h1 {
    margin: var(--margin-large) 0 0;
    font-size: var(--fontSize-xxxlarge);
    line-height: var(--lineHeight-medium); }
    @media (max-width: 768px) {
      .page-guide-gps #firstView-catchphrase h1 {
        margin: 0;
        font-size: var(--fontSize-xxlarge);
        text-align: center; } }

@media (max-width: 768px) {
  .page-guide-gps .firstView-images {
    position: relative;
    height: 100vw; } }

.page-guide-gps .firstView-images::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.1);
  z-index: 1; }

.page-guide-gps .firstView-images img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0;
  -webkit-animation-name: fade;
          animation-name: fade;
  -webkit-animation-duration: 12s;
          animation-duration: 12s;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite; }

@-webkit-keyframes fade {
  0% {
    opacity: 0; }
  8.33333% {
    opacity: 1; }
  33.33333% {
    opacity: 1; }
  41.66667% {
    opacity: 0; }
  100% {
    opacity: 0; } }

@keyframes fade {
  0% {
    opacity: 0; }
  8.33333% {
    opacity: 1; }
  33.33333% {
    opacity: 1; }
  41.66667% {
    opacity: 0; }
  100% {
    opacity: 0; } }
  .page-guide-gps .firstView-images img:nth-child(1) {
    -webkit-animation-delay: 0s;
            animation-delay: 0s; }
  .page-guide-gps .firstView-images img:nth-child(2) {
    -webkit-animation-delay: 4s;
            animation-delay: 4s; }
  .page-guide-gps .firstView-images img:nth-child(3) {
    -webkit-animation-delay: 8s;
            animation-delay: 8s; }

.page-guide-gps .firstView-images-sp {
  display: none; }
  @media (max-width: 768px) {
    .page-guide-gps .firstView-images-sp {
      display: block; } }

@media (max-width: 768px) {
  .page-guide-gps .firstView-images-pc {
    display: none; } }

.page-guide-gps #firstView-product {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 50%;
  width: 50%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  @media (max-width: 768px) {
    .page-guide-gps #firstView-product {
      display: block;
      position: relative;
      left: 0;
      width: 100%;
      height: 0; } }

.page-guide-gps #firstView-product-app {
  margin: -5% 0 0;
  position: relative; }
  @media (max-width: 768px) {
    .page-guide-gps #firstView-product-app {
      margin: 0;
      position: absolute;
      right: 0;
      bottom: 0;
      -webkit-transform: translate(calc(var(--margin-large) * -1), calc((var(--margin-large) + var(--margin-medium)) * -1));
              transform: translate(calc(var(--margin-large) * -1), calc((var(--margin-large) + var(--margin-medium)) * -1)); } }

.page-guide-gps #firstView-product-app-image {
  height: 35vw;
  max-height: 65vh;
  width: auto; }
  @media (max-width: 768px) {
    .page-guide-gps #firstView-product-app-image {
      height: 65vw; } }

.page-guide-gps #firstView-product-gps-image {
  height: 14vw;
  max-height: 28vh;
  width: auto;
  position: absolute;
  left: 0;
  bottom: 0;
  -webkit-transform: translate(-50%, 25%);
          transform: translate(-50%, 25%); }
  @media (max-width: 768px) {
    .page-guide-gps #firstView-product-gps-image {
      height: 28vw; } }

.page-guide-gps #summary {
  color: var(--color-white);
  background: var(--color-brand) url(/images/bg-contour-green.svg) left bottom;
  background-size: 800px 800px; }
  .page-guide-gps #summary .wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: var(--margin-xlarge);
    max-width: var(--width-large); }
    @media (max-width: 768px) {
      .page-guide-gps #summary .wrapper {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        gap: var(--margin-medium); } }
  .page-guide-gps #summary h1 {
    font-size: var(--fontSize-xlarge);
    line-height: var(--lineHeight-medium); }
    @media (max-width: 768px) {
      .page-guide-gps #summary h1 {
        font-size: var(--fontSize-large); } }
  .page-guide-gps #summary p {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0; }

@-webkit-keyframes infinity-scroll-left {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%); } }

@keyframes infinity-scroll-left {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%); } }

.page-guide-gps #ambassadors {
  background: var(--color-black);
  position: relative; }
  .page-guide-gps #ambassadors h1 {
    position: absolute;
    bottom: 1vw;
    left: 0;
    right: 0;
    text-align: center;
    z-index: 2;
    color: var(--color-white);
    font-family: var(--fontFamily-montserrat);
    font-size: 7.7vw;
    line-height: 1;
    letter-spacing: 0.5vw;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    pointer-events: none; }
    @media (max-width: 768px) {
      .page-guide-gps #ambassadors h1 {
        line-height: 1.2;
        font-size: 10vw;
        bottom: 50%;
        -webkit-transform: translateY(25%);
                transform: translateY(25%); } }
    @media (max-width: 768px) {
      .page-guide-gps #ambassadors h1 span {
        display: block; } }
  .page-guide-gps #ambassadors a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    position: relative; }
    .page-guide-gps #ambassadors a::before {
      content: "";
      display: block;
      background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.1)));
      background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1));
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      height: 70%;
      z-index: 1; }
      @media (max-width: 559px) {
        .page-guide-gps #ambassadors a::before {
          display: none; } }
  .page-guide-gps #ambassadors div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-animation: infinity-scroll-left 40s infinite linear;
            animation: infinity-scroll-left 40s infinite linear; }
    @media (max-width: 768px) {
      .page-guide-gps #ambassadors div {
        display: grid;
        grid-template-columns: repeat(6, 1fr);
        -webkit-animation: infinity-scroll-left 20s infinite linear;
                animation: infinity-scroll-left 20s infinite linear; } }
  .page-guide-gps #ambassadors img {
    max-width: calc(100vw / 6); }
    @media (max-width: 768px) {
      .page-guide-gps #ambassadors img {
        max-width: calc(100vw / 3); } }

.page-guide-gps .ambassadors-hiddenIfPC {
  display: none; }
  @media (max-width: 768px) {
    .page-guide-gps .ambassadors-hiddenIfPC {
      display: block; } }

.page-guide-gps #youtube .wrapper {
  max-width: var(--width-large); }

.page-guide-gps #youtube h1 {
  font-size: var(--fontSize-xlarge);
  line-height: var(--lineHeight-small);
  text-align: center;
  margin: 0 var(--margin-large); }
  @media (max-width: 768px) {
    .page-guide-gps #youtube h1 {
      font-size: var(--fontSize-medium); } }
  .page-guide-gps #youtube h1 span {
    display: inline-block; }

.page-guide-gps #youtube-videos {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: calc(var(--margin-large) + var(--margin-medium));
  margin: calc(var(--margin-large) + var(--margin-default)) 0 0; }
  @media (max-width: 768px) {
    .page-guide-gps #youtube-videos {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: var(--margin-large);
      margin: var(--margin-large) 0 0; } }
  .page-guide-gps #youtube-videos > div {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }
  .page-guide-gps #youtube-videos iframe {
    aspect-ratio: 560 / 315;
    width: 100%;
    background: var(--color-richBlack); }
  .page-guide-gps #youtube-videos a {
    color: var(--color-black);
    display: block;
    text-decoration: none; }
    .page-guide-gps #youtube-videos a:hover .youtube-title, .page-guide-gps #youtube-videos a:focus .youtube-title {
      text-decoration: underline; }

.page-guide-gps .youtube-title {
  margin: var(--margin-default) 0 0;
  font-weight: var(--fontWeight-bold);
  line-height: var(--lineHeight-medium); }
  @media (max-width: 768px) {
    .page-guide-gps .youtube-title {
      font-size: var(--fontSize-small); } }

.page-guide-gps .youtube-channel {
  margin: var(--margin-small) 0 0;
  font-size: var(--fontSize-small);
  color: var(--color-darkGray); }
  @media (max-width: 768px) {
    .page-guide-gps .youtube-channel {
      font-size: var(--fontSize-xsmall); } }

.page-guide-gps #keyfeatures {
  color: var(--color-white); }
  .page-guide-gps #keyfeatures section {
    background-size: cover;
    background-position: center;
    padding: var(--margin-xxlarge) 0; }
    @media (max-width: 768px) {
      .page-guide-gps #keyfeatures section {
        padding: 0 0 100vw; } }
    .page-guide-gps #keyfeatures section:nth-child(even) .keyfeature {
      margin: 0 0 0 auto; }
  @media (max-width: 768px) {
    .page-guide-gps #keyfeatures .wrapper {
      padding: 0; } }
  .page-guide-gps #keyfeatures .keyfeature {
    width: 40%;
    padding: var(--margin-large);
    border-radius: var(--borderRadius-large); }
    @media (max-width: 768px) {
      .page-guide-gps #keyfeatures .keyfeature {
        width: auto;
        border-radius: 0; } }
    .page-guide-gps #keyfeatures .keyfeature h1 {
      font-size: var(--fontSize-xxlarge);
      line-height: var(--lineHeight-medium); }
      @media (max-width: 768px) {
        .page-guide-gps #keyfeatures .keyfeature h1 {
          font-size: var(--fontSize-large);
          text-align: center;
          margin: var(--margin-default) 0 var(--margin-large); } }
      .page-guide-gps #keyfeatures .keyfeature h1 span {
        display: inline-block; }
    .page-guide-gps #keyfeatures .keyfeature p {
      margin: var(--margin-default) 0 0;
      line-height: var(--lineHeight-large); }

.page-guide-gps #keyfeatures-trouble {
  background: var(--color-black) url(/images/guide-gps-keyfeatures-trouble.jpg); }
  @media (max-width: 768px) {
    .page-guide-gps #keyfeatures-trouble {
      background-position: 80% center !important; } }
  @media (max-width: 768px) {
    .page-guide-gps #keyfeatures-trouble .keyfeature {
      background: rgba(31, 45, 61, 0.68); } }

.page-guide-gps #keyfeatures-style {
  background: rgba(81, 112, 96, 0.68) url(/images/guide-gps-keyfeatures-style.jpg); }
  @media (max-width: 768px) {
    .page-guide-gps #keyfeatures-style {
      background-position: 28% center !important; } }
  .page-guide-gps #keyfeatures-style .keyfeature {
    background: rgba(81, 112, 96, 0.68); }

.page-guide-gps #keyfeatures-battery {
  background: rgba(93, 95, 92, 0.78) url(/images/guide-gps-keyfeatures-battery.jpg); }
  @media (max-width: 768px) {
    .page-guide-gps #keyfeatures-battery {
      background-position: 70% center !important; } }
  .page-guide-gps #keyfeatures-battery .keyfeature {
    background: rgba(93, 95, 92, 0.78); }

.page-guide-gps #cases-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-xlarge);
  margin: var(--margin-xlarge) 0 0; }
  @media (max-width: 768px) {
    .page-guide-gps #cases-list {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: var(--margin-large);
      margin: var(--margin-large) 0 0; } }
  .page-guide-gps #cases-list section {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }
    .page-guide-gps #cases-list section > div,
    .page-guide-gps #cases-list section h1 {
      margin: var(--margin-default) 0 0; }
  .page-guide-gps #cases-list img {
    max-width: 100%;
    height: auto;
    border-radius: var(--borderRadius-large);
    background: var(--bgColor-beige); }
  .page-guide-gps #cases-list h1 {
    font-size: var(--fontSize-medium); }
  .page-guide-gps #cases-list p {
    margin: var(--margin-default) 0 0;
    line-height: var(--lineHeight-large); }
    @media (max-width: 768px) {
      .page-guide-gps #cases-list p {
        margin: var(--margin-small) 0 0;
        font-size: var(--fontSize-small); } }

.page-guide-gps .cases-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4px; }
  .page-guide-gps .cases-icon div {
    width: 36px;
    height: 36px;
    border-radius: 18px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: var(--color-white);
    border: 1px solid var(--color-white); }
    .page-guide-gps .cases-icon div svg {
      width: 16px;
      height: 16px; }

.page-guide-gps #cases-solo .cases-icon div {
  background: var(--color-brand); }

.page-guide-gps #cases-group .cases-icon div {
  background: var(--color-ibukiBeige); }
  .page-guide-gps #cases-group .cases-icon div:not(:first-child) {
    margin: 0 0 0 -12px;
    z-index: -1; }

.page-guide-gps #cases-hiking .cases-icon div:first-child {
  background: var(--color-brand); }

.page-guide-gps #cases-hiking .cases-icon div:last-child {
  background: var(--color-ibukiGray); }

.page-guide-gps #voices {
  background: var(--bgColor-beige); }
  .page-guide-gps #voices ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: var(--margin-large);
    margin: var(--margin-xlarge) 0 0; }
    @media (max-width: 768px) {
      .page-guide-gps #voices ul {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        margin: var(--margin-large) 0 0; } }
  .page-guide-gps #voices li {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    background: var(--bgColor-white);
    border-radius: var(--borderRadius-large);
    padding: var(--margin-large); }
  .page-guide-gps #voices p {
    margin: var(--margin-medium) 0 0;
    line-height: var(--lineHeight-large); }
    @media (max-width: 768px) {
      .page-guide-gps #voices p {
        font-size: var(--fontSize-small); } }

.page-guide-gps #events h1 {
  margin: calc(var(--margin-default) + var(--margin-large)) 0 0; }
  @media (max-width: 768px) {
    .page-guide-gps #events h1 {
      margin: var(--margin-large) 0 0; } }

.page-guide-gps #events p {
  max-width: var(--width-medium); }

.page-guide-gps #events ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: var(--margin-large) 0 0;
  gap: var(--margin-xlarge);
  text-align: center; }
  @media (max-width: 768px) {
    .page-guide-gps #events ul {
      margin: var(--margin-large) auto;
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      text-align: center;
      -webkit-column-gap: 0;
         -moz-column-gap: 0;
              column-gap: 0;
      row-gap: var(--margin-default); } }
  .page-guide-gps #events ul a {
    display: block; }
  .page-guide-gps #events ul img {
    vertical-align: middle;
    max-height: 7vw;
    width: auto; }
    @media (max-width: 768px) {
      .page-guide-gps #events ul img {
        max-height: 15vw; } }

.page-guide-gps #events-image {
  max-width: 100%;
  height: auto;
  background: var(--color-mediumGray); }

.page-guide-gps #story {
  background: var(--color-black) url(/images/guide-gps-story.jpg);
  background-size: cover;
  background-position: center;
  padding: var(--margin-xxlarge) 0;
  color: var(--color-white); }
  @media (max-width: 559px) {
    .page-guide-gps #story {
      background-position: 45% center; } }
  @media (max-width: 400px) {
    .page-guide-gps #story {
      background-position: 40% center; } }
  .page-guide-gps #story .wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
    .page-guide-gps #story .wrapper > div {
      width: 50%; }
      .page-guide-gps #story .wrapper > div h1 {
        margin: var(--margin-small) 0 0; }
      .page-guide-gps #story .wrapper > div p {
        margin: var(--margin-default) 0 0; }

.page-guide-gps #system {
  background: var(--bgColor-beige); }
  .page-guide-gps #system p {
    max-width: var(--width-medium); }

.page-guide-gps #system-image {
  max-width: var(--width-large);
  margin: 0 auto; }
  .page-guide-gps #system-image img {
    max-width: 100%;
    height: auto;
    border: 2px solid var(--color-white);
    border-radius: var(--borderRadius-large); }

.page-guide-gps .feature:nth-of-type(odd) .featureContent {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }

.page-guide-gps .feature .featureContent {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: var(--margin-xlarge); }
  @media (max-width: 768px) {
    .page-guide-gps .feature .featureContent {
      -webkit-box-orient: vertical !important;
      -webkit-box-direction: normal !important;
          -ms-flex-direction: column !important;
              flex-direction: column !important;
      gap: var(--margin-large); } }

.page-guide-gps .feature-description {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  padding: 0 var(--margin-xlarge) 0 0; }
  @media (max-width: 850px) {
    .page-guide-gps .feature-description {
      padding: 0 var(--margin-large) 0 0; } }
  @media (max-width: 768px) {
    .page-guide-gps .feature-description {
      padding: 0; } }
  .page-guide-gps .feature-description hgroup,
  .page-guide-gps .feature-description p {
    max-width: 78%; }
    @media (max-width: 1024px) {
      .page-guide-gps .feature-description hgroup,
      .page-guide-gps .feature-description p {
        max-width: 90%; } }
    @media (max-width: 768px) {
      .page-guide-gps .feature-description hgroup,
      .page-guide-gps .feature-description p {
        max-width: none; } }
  .page-guide-gps .feature-description h2 {
    color: var(--color-brand);
    margin: 0 0 0 0.05em;
    font-size: var(--fontSize-large); }
    @media (max-width: 768px) {
      .page-guide-gps .feature-description h2 {
        font-size: var(--fontSize-small); } }
  .page-guide-gps .feature-description h1 {
    margin: var(--margin-default) 0 0; }
    .page-guide-gps .feature-description h1 span {
      display: inline-block; }
  .page-guide-gps .feature-description p {
    margin: var(--margin-default) 0 0;
    line-height: var(--lineHeight-large); }

.page-guide-gps .feature-image {
  width: 50%;
  position: relative; }
  @media (max-width: 768px) {
    .page-guide-gps .feature-image {
      width: 100%; } }
  .page-guide-gps .feature-image img {
    max-width: 100%;
    height: auto; }

.page-guide-gps #location-device {
  position: relative;
  height: 50px; }
  .page-guide-gps #location-device img {
    position: absolute;
    bottom: 0;
    left: 40%;
    max-width: 30%;
    height: auto; }
    @media (max-width: 768px) {
      .page-guide-gps #location-device img {
        max-width: 60%;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%); } }

.page-guide-gps #location-lpwa {
  max-width: var(--width-large);
  background: var(--bgColor-beige);
  border-radius: var(--borderRadius-large);
  padding: var(--margin-large);
  margin: var(--margin-xlarge) auto 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  @media (max-width: 768px) {
    .page-guide-gps #location-lpwa {
      padding: var(--margin-medium);
      margin: var(--margin-large) var(--margin-default) var(--margin-default); } }

.page-guide-gps #location-lpwa-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-large);
  margin: var(--margin-default) 0 0; }
  @media (max-width: 768px) {
    .page-guide-gps #location-lpwa-content {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: var(--margin-medium); } }
  .page-guide-gps #location-lpwa-content p {
    font-size: var(--fontSize-small); }
    .page-guide-gps #location-lpwa-content p + p {
      margin: var(--margin-default) 0 0; }
  .page-guide-gps #location-lpwa-content table {
    border-right: 1px solid var(--borderColor-mediumGray);
    border-bottom: 1px solid var(--borderColor-mediumGray); }
  .page-guide-gps #location-lpwa-content th,
  .page-guide-gps #location-lpwa-content td {
    padding: var(--margin-default);
    border-top: 1px solid var(--borderColor-mediumGray);
    border-left: 1px solid var(--borderColor-mediumGray);
    text-align: center;
    background: var(--bgColor-white);
    font-size: var(--fontSize-small);
    font-weight: var(--fontWeight-normal);
    white-space: nowrap; }
    @media (max-width: 768px) {
      .page-guide-gps #location-lpwa-content th,
      .page-guide-gps #location-lpwa-content td {
        font-size: var(--fontSize-xsmall);
        padding: var(--margin-default) var(--margin-small); } }

.page-guide-gps #location-row-lpwa th,
.page-guide-gps #location-row-lpwa td {
  background: var(--bgColor-beige); }

.page-guide-gps #battery {
  background: var(--bgColor-beige); }

.page-guide-gps #battery-device {
  position: relative;
  height: 120px; }
  @media (max-width: 1024px) {
    .page-guide-gps #battery-device {
      height: 150px; } }
  @media (max-width: 768px) {
    .page-guide-gps #battery-device {
      height: 80px; } }
  .page-guide-gps #battery-device img {
    position: absolute;
    bottom: 0;
    left: 40%;
    max-width: 35%;
    height: auto; }
    @media (max-width: 768px) {
      .page-guide-gps #battery-device img {
        max-width: 80%;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%); } }

.page-guide-gps #battery-example {
  max-width: var(--width-large);
  background: var(--bgColor-white);
  border-radius: var(--borderRadius-large);
  padding: var(--margin-large);
  margin: var(--margin-xlarge) auto 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: var(--margin-large); }
  @media (max-width: 768px) {
    .page-guide-gps #battery-example {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      padding: var(--margin-medium);
      margin: var(--margin-large) var(--margin-default) var(--margin-default); } }

.page-guide-gps #battery-duration {
  text-align: center;
  width: 30%;
  margin: var(--margin-default) 0 0; }
  @media (max-width: 768px) {
    .page-guide-gps #battery-duration {
      width: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      gap: var(--margin-medium);
      text-align: left; } }
  @media (max-width: 768px) {
    .page-guide-gps #battery-duration svg {
      margin: 0 0 0 var(--margin-small); } }

.page-guide-gps #battery-duration-label {
  margin: var(--margin-default) 0 0;
  font-size: var(--fontSize-small); }
  @media (max-width: 768px) {
    .page-guide-gps #battery-duration-label {
      margin: var(--margin-xsmall) 0 0;
      font-size: var(--fontSize-xsmall); } }

.page-guide-gps #battery-duration-duration {
  margin: 0;
  font-size: var(--fontSize-large);
  font-weight: var(--fontWeight-bold); }

.page-guide-gps #battery-list {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  font-size: var(--fontSize-small); }
  @media (max-width: 768px) {
    .page-guide-gps #battery-list {
      width: 100%; } }
  .page-guide-gps #battery-list dl {
    margin: var(--margin-small) 0 0; }
    .page-guide-gps #battery-list dl div {
      padding: var(--margin-small) 0;
      border-top: 1px solid var(--borderColor-default);
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .page-guide-gps #battery-list dl div:last-of-type {
        padding-bottom: 0; }
  .page-guide-gps #battery-list dt {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0; }

.page-guide-gps #easy-device {
  position: relative;
  height: 200px; }
  @media (max-width: 768px) {
    .page-guide-gps #easy-device {
      margin: 0 0 var(--margin-default); } }
  .page-guide-gps #easy-device img {
    position: absolute;
    bottom: 0;
    left: 38%;
    max-width: 30%;
    height: auto; }
    @media (max-width: 768px) {
      .page-guide-gps #easy-device img {
        max-width: 60%;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%); } }

.page-guide-gps #pouch {
  background: var(--bgColor-beige); }

.page-guide-gps #pouch-pouch {
  position: relative;
  height: 370px; }
  @media (max-width: 768px) {
    .page-guide-gps #pouch-pouch {
      height: 120px;
      margin: 0 0 var(--margin-default); } }
  .page-guide-gps #pouch-pouch img {
    position: absolute;
    bottom: 0;
    left: 25%;
    max-width: 65%;
    height: auto; }
    @media (max-width: 768px) {
      .page-guide-gps #pouch-pouch img {
        max-width: 120%;
        left: 0;
        -webkit-transform: translateX(-25%);
                transform: translateX(-25%); } }

.page-guide-gps #steps ol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-large);
  counter-reset: steps 0;
  margin: var(--margin-large) 0 0;
  padding: 0; }
  @media (max-width: 768px) {
    .page-guide-gps #steps ol {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }

.page-guide-gps #steps li {
  list-style: none;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  background: var(--bgColor-beige);
  border-radius: var(--borderRadius-large);
  padding: var(--margin-medium) var(--margin-large) var(--margin-large);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: var(--margin-default); }
  @media (max-width: 768px) {
    .page-guide-gps #steps li {
      padding: var(--margin-medium);
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      gap: var(--margin-medium); } }
  .page-guide-gps #steps li::before {
    display: block;
    counter-increment: steps 1;
    content: counter(steps);
    font-size: var(--fontSize-xlarge);
    line-height: var(--lineHeight-small);
    font-family: var(--fontFamily-montserrat);
    font-weight: var(--fontWeight-bold); }
    @media (max-width: 768px) {
      .page-guide-gps #steps li::before {
        display: none; } }

.page-guide-gps #steps p {
  margin: var(--margin-large) 0 0; }
  @media (max-width: 768px) {
    .page-guide-gps #steps p {
      margin: var(--margin-small) 0 0;
      font-size: var(--fontSize-small); } }

.page-guide-gps .steps-svg {
  height: 75px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  @media (max-width: 768px) {
    .page-guide-gps .steps-svg {
      height: auto;
      width: 75px; } }

@media (max-width: 768px) {
  .page-guide-gps .steps-content {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0; } }

.page-guide-gps .steps-title {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-height: 0;
  font-size: var(--fontSize-large);
  font-weight: var(--fontWeight-bold);
  line-height: var(--lineHeight-small);
  text-align: center; }
  @media (max-width: 768px) {
    .page-guide-gps .steps-title {
      font-size: var(--fontSize-medium);
      text-align: left; } }
  @media (max-width: 768px) {
    .page-guide-gps .steps-title::before {
      display: inline;
      counter-increment: steps 1;
      content: counter(steps);
      font-family: var(--fontFamily-montserrat); } }
  .page-guide-gps .steps-title > span {
    display: block; }
    @media (max-width: 768px) {
      .page-guide-gps .steps-title > span {
        display: inline; } }
    .page-guide-gps .steps-title > span span {
      display: inline-block; }
    @media (max-width: 768px) {
      .page-guide-gps .steps-title > span:first-of-type::before {
        display: inline-block;
        content: ".";
        margin: 0 0.5em 0 0; } }

.page-guide-gps .c-gpsFooter-pricingTitle {
  background: var(--bgColor-beige) url(/images/bg-contour-beige.svg) left bottom;
  background-size: 800px 800px; }

.page-guide-gps-story #firstView {
  height: 100vh;
  max-height: 50vh;
  min-height: 400px;
  background: var(--color-black) url(/images/guide-gps-story-fv.jpg);
  background-size: cover;
  background-position: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: var(--color-white);
  position: relative; }
  .page-guide-gps-story #firstView::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.2); }
  .page-guide-gps-story #firstView hgroup {
    text-align: center;
    position: relative;
    z-index: 1;
    margin: calc(var(--margin-default) * -1) 0 0; }
    .page-guide-gps-story #firstView hgroup h1 {
      margin: var(--margin-default) 0 0; }

.page-guide-gps-story .body,
.page-guide-gps-story .center {
  max-width: var(--width-medium);
  margin: var(--margin-xlarge) auto;
  padding: 0 var(--margin-large);
  line-height: var(--lineHeight-large); }
  @media (max-width: 559px) {
    .page-guide-gps-story .body,
    .page-guide-gps-story .center {
      margin: calc(var(--margin-large) + var(--margin-small)) auto; } }
  .page-guide-gps-story .body p + p,
  .page-guide-gps-story .center p + p {
    margin: 2em 0 0; }

.page-guide-gps-story .center {
  text-align: center; }

.page-guide-gps-story figure {
  margin: 0;
  position: relative;
  height: 50vh; }
  @media (max-width: 559px) {
    .page-guide-gps-story figure {
      height: 100vw; } }
  .page-guide-gps-story figure img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover; }

@media (max-width: 559px) {
  .page-guide-gps-story #image-story img {
    -o-object-position: 30% center;
       object-position: 30% center; } }

@media (max-width: 559px) {
  .page-guide-gps-story #image-2 img {
    -o-object-position: 73% center;
       object-position: 73% center; } }

@media (max-width: 559px) {
  .page-guide-gps-story #image-4 img {
    -o-object-position: 75% center;
       object-position: 75% center; } }

@media (max-width: 559px) {
  .page-guide-gps-story #image-5 img {
    -o-object-position: 75% center;
       object-position: 75% center; } }

@media (max-width: 559px) {
  .page-guide-gps-story #image-7 img {
    -o-object-position: 28% center;
       object-position: 28% center; } }

.page-guide-gps-specs #container {
  line-height: 1.8; }

.page-guide-gps-specs .header {
  background: var(--bgColor-beige);
  text-align: center;
  padding: var(--margin-xlarge) 0; }
  @media (max-width: 768px) {
    .page-guide-gps-specs .header {
      padding: var(--margin-large) 0; } }
  .page-guide-gps-specs .header h1 {
    font-size: var(--fontSize-xxxlarge);
    line-height: var(--lineHeight-medium);
    margin: 0 var(--margin-large); }
    @media (max-width: 768px) {
      .page-guide-gps-specs .header h1 {
        font-size: var(--fontSize-xxlarge); } }
    .page-guide-gps-specs .header h1 span {
      display: inline-block; }
  .page-guide-gps-specs .header figure {
    margin: calc(var(--margin-large) + var(--margin-small)) auto 0; }
    @media (max-width: 768px) {
      .page-guide-gps-specs .header figure {
        margin: var(--margin-default) var(--margin-default) 0; } }
    .page-guide-gps-specs .header figure svg {
      max-width: 100%;
      height: auto; }

.page-guide-gps-specs #features {
  max-width: var(--width-large);
  margin: var(--margin-large) auto; }
  @media (max-width: 768px) {
    .page-guide-gps-specs #features {
      margin: var(--margin-medium) auto; } }
  .page-guide-gps-specs #features img {
    max-width: 100%;
    height: auto; }

@media (max-width: 768px) {
  .page-guide-gps-specs #specs {
    font-size: var(--fontSize-default); } }

.page-guide-gps-specs #specs > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-top: 1px solid var(--borderColor-default);
  padding: var(--margin-medium) 0; }
  @media (max-width: 768px) {
    .page-guide-gps-specs #specs > div {
      padding: var(--margin-default) 0; } }

.page-guide-gps-specs #specs dt {
  width: 25%;
  font-weight: var(--fontWeight-bold);
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  line-height: var(--lineHeight-small);
  margin: var(--margin-xxsmall) 0 0; }
  @media (max-width: 768px) {
    .page-guide-gps-specs #specs dt {
      width: 8em; } }
  .page-guide-gps-specs #specs dt span {
    display: inline-block; }
    @media (max-width: 768px) {
      .page-guide-gps-specs #specs dt span {
        display: block; } }

.page-guide-gps-specs #specs dd {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  margin: 0 12.5% 0 0; }
  @media (max-width: 768px) {
    .page-guide-gps-specs #specs dd {
      margin: 0; } }
  .page-guide-gps-specs #specs dd span {
    display: block; }
  .page-guide-gps-specs #specs dd div + div {
    margin: var(--margin-default) 0 0; }

.page-guide-gps-specs #specs #specs-pouch li {
  padding-left: 25px;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 1px; }

.page-guide-gps-specs #specs #specs-pouch span {
  display: inline-block;
  margin-left: -25px;
  width: 25px; }

.page-guide-gps-specs #specs .weak {
  font-size: var(--fontSize-small);
  color: var(--color-darkGray); }
  @media (max-width: 768px) {
    .page-guide-gps-specs #specs .weak {
      font-size: var(--fontSize-xsmall); } }

.page-guide-gps-specs #onlyIbuki {
  border-top: 1px solid var(--borderColor-default);
  padding: var(--margin-medium) 0 var(--margin-xlarge);
  font-size: var(--fontSize-small);
  text-align: center; }
  @media (max-width: 768px) {
    .page-guide-gps-specs #onlyIbuki {
      padding: var(--margin-medium) 0 var(--margin-large); } }
  .page-guide-gps-specs #onlyIbuki span {
    display: inline-block;
    text-align: left; }

@media (max-width: 768px) {
  .page-guide-gps-specs #pouchHeaderImage svg {
    max-width: 30vw; } }

.page-guide-gps-specs #pouch {
  margin: var(--margin-xlarge) auto 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-xlarge); }
  @media (max-width: 768px) {
    .page-guide-gps-specs #pouch {
      margin: var(--margin-large) auto;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: var(--margin-large); } }
  .page-guide-gps-specs #pouch div,
  .page-guide-gps-specs #pouch figure {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }
  .page-guide-gps-specs #pouch figure {
    margin: 0; }
    .page-guide-gps-specs #pouch figure img {
      max-width: 100%;
      height: auto; }

.page-guide-gps-specs #pouchSizes {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-default);
  margin: 2em 0 0; }
  @media (max-width: 768px) {
    .page-guide-gps-specs #pouchSizes {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }
  .page-guide-gps-specs #pouchSizes > div {
    background: var(--bgColor-beige);
    border-radius: var(--borderRadius-large);
    padding: var(--margin-default); }
  .page-guide-gps-specs #pouchSizes dt,
  .page-guide-gps-specs #pouchSizes dd {
    margin: 0; }
  .page-guide-gps-specs #pouchSizes dt {
    font-size: var(--fontSize-medium);
    font-family: var(--fontFamily-montserrat);
    font-weight: var(--fontWeight-montserrat-bold);
    line-height: var(--lineHeight-small); }
  .page-guide-gps-specs #pouchSizes dd {
    font-size: var(--fontSize-small);
    line-height: var(--lineHeight-small); }
    .page-guide-gps-specs #pouchSizes dd div {
      margin: var(--margin-small) 0 0; }
      .page-guide-gps-specs #pouchSizes dd div + div {
        margin: var(--margin-default) 0 0;
        font-size: var(--fontSize-xsmall); }

.page-guide-gps-specs #pouchImage {
  margin: var(--margin-xlarge) auto 0;
  max-width: 60%;
  overflow: hidden;
  aspect-ratio: 2 / 1; }
  @media (max-width: 768px) {
    .page-guide-gps-specs #pouchImage {
      display: none; } }
  .page-guide-gps-specs #pouchImage figure {
    margin: 0;
    aspect-ratio: 1 / 1.422764; }
  .page-guide-gps-specs #pouchImage img {
    width: 100%;
    height: auto; }

.page-guide-gps-specs .c-gpsFooter-pricingTitle {
  background: var(--bgColor-beige); }

.page-guide-gps-howto .ledLamp {
  margin: var(--margin-medium) 0 0;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: var(--margin-default);
  border-radius: var(--borderRadius-large);
  background: var(--bgColor-beige);
  gap: var(--margin-small); }
  .page-guide-gps-howto .ledLamp p {
    margin: 0 !important;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: var(--margin-xsmall); }
    @media (max-width: 768px) {
      .page-guide-gps-howto .ledLamp p {
        font-size: var(--fontSize-small) !important; } }
    .page-guide-gps-howto .ledLamp p[class^="ledLamp"]::after {
      content: "";
      display: inline-block;
      width: 0.75em;
      height: 0.75em;
      border-radius: 9999px; }
      @media (max-width: 768px) {
        .page-guide-gps-howto .ledLamp p[class^="ledLamp"]::after {
          width: 0.7em;
          height: 0.7em; } }
  .page-guide-gps-howto .ledLamp.ledLamp-vertical {
    gap: var(--margin-default); }
    .page-guide-gps-howto .ledLamp.ledLamp-vertical p {
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse;
      gap: var(--margin-small);
      line-height: 1; }

.page-guide-gps-howto .ledLamp-red::after {
  background: var(--color-red); }

.page-guide-gps-howto .ledLamp-yellow::after {
  background: var(--color-yellow); }

.page-guide-gps-howto .ledLamp-green::after {
  background: var(--color-green); }

.page-guide-gps-howto #container {
  line-height: 1.8; }

.page-guide-gps-howto #firstView {
  background: var(--bgColor-beige);
  text-align: center;
  padding: var(--margin-xlarge) 0; }
  @media (max-width: 768px) {
    .page-guide-gps-howto #firstView {
      padding: var(--margin-large) 0; } }
  .page-guide-gps-howto #firstView figure {
    margin: 0 auto;
    max-width: 300px; }
  .page-guide-gps-howto #firstView h1 {
    margin: var(--margin-medium) 0 0;
    font-size: var(--fontSize-xxxlarge);
    line-height: var(--lineHeight-medium); }
    @media (max-width: 768px) {
      .page-guide-gps-howto #firstView h1 {
        font-size: var(--fontSize-xxlarge); } }
    .page-guide-gps-howto #firstView h1 span {
      display: inline-block; }
  .page-guide-gps-howto #firstView p {
    max-width: 500px;
    margin: var(--margin-small) auto 0; }
    @media (max-width: 768px) {
      .page-guide-gps-howto #firstView p {
        margin: var(--margin-medium) auto 0;
        text-align: left; } }

.page-guide-gps-howto #internalLinks {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
  text-align: left;
  line-height: var(--lineHeight-default);
  max-width: var(--width-medium);
  margin: calc(var(--margin-large) + var(--margin-default)) auto 0; }
  @media (max-width: 768px) {
    .page-guide-gps-howto #internalLinks {
      display: block;
      margin: var(--margin-large) auto 0; } }
  .page-guide-gps-howto #internalLinks li {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    border: var(--borderColor-default) solid;
    border-width: 1px 0 1px 1px;
    background: var(--bgColor-white);
    overflow: hidden; }
    @media (max-width: 768px) {
      .page-guide-gps-howto #internalLinks li {
        border-width: 1px 1px 0 1px; } }
    .page-guide-gps-howto #internalLinks li:first-of-type {
      border-radius: var(--borderRadius-large) 0 0 var(--borderRadius-large); }
      @media (max-width: 768px) {
        .page-guide-gps-howto #internalLinks li:first-of-type {
          border-radius: var(--borderRadius-large) var(--borderRadius-large) 0 0; } }
    .page-guide-gps-howto #internalLinks li:last-of-type {
      border-width: 1px;
      border-radius: 0 var(--borderRadius-large) var(--borderRadius-large) 0; }
      @media (max-width: 768px) {
        .page-guide-gps-howto #internalLinks li:last-of-type {
          border-radius: 0 0 var(--borderRadius-large) var(--borderRadius-large); } }
  .page-guide-gps-howto #internalLinks a {
    padding: var(--margin-default) var(--margin-large) var(--margin-default) var(--margin-medium);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: var(--margin-default);
    color: var(--color-black); }
    .page-guide-gps-howto #internalLinks a:hover, .page-guide-gps-howto #internalLinks a:focus {
      text-decoration: none;
      background: var(--bgColor-hover); }
  .page-guide-gps-howto #internalLinks svg {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg); }
  .page-guide-gps-howto #internalLinks .internalLinks-step {
    font-size: var(--fontSize-xsmall);
    line-height: var(--lineHeight-default);
    color: var(--color-darkGray); }
  .page-guide-gps-howto #internalLinks .internalLinks-text {
    font-weight: var(--fontWeight-bold);
    line-height: var(--lineHeight-default); }
    @media (max-width: 768px) {
      .page-guide-gps-howto #internalLinks .internalLinks-text {
        font-size: var(--fontSize-default); } }

.page-guide-gps-howto .group {
  padding: var(--margin-xlarge) 0;
  scroll-margin-top: 50px; }
  @media (max-width: 768px) {
    .page-guide-gps-howto .group {
      padding: var(--margin-large) 0; } }
  .page-guide-gps-howto .group hgroup h2 {
    font-family: var(--fontFamily-montserrat);
    letter-spacing: 2px; }
  .page-guide-gps-howto .group hgroup h1 {
    font-size: var(--fontSize-xxxxlarge); }
    @media (max-width: 768px) {
      .page-guide-gps-howto .group hgroup h1 {
        font-size: var(--fontSize-xxxlarge); } }

.page-guide-gps-howto .section {
  margin: var(--margin-xlarge) 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-xlarge); }
  @media (max-width: 768px) {
    .page-guide-gps-howto .section {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: var(--margin-large); } }

.page-guide-gps-howto .section-text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0; }
  .page-guide-gps-howto .section-text h1 {
    font-size: var(--fontSize-xlarge);
    line-height: var(--lineHeight-medium); }
    @media (max-width: 768px) {
      .page-guide-gps-howto .section-text h1 {
        font-size: var(--fontSize-large); } }
  .page-guide-gps-howto .section-text p {
    margin: var(--margin-small) 0 0; }
    @media (max-width: 768px) {
      .page-guide-gps-howto .section-text p {
        font-size: var(--fontSize-default); } }
  .page-guide-gps-howto .section-text p.note {
    font-size: var(--fontSize-small);
    color: var(--color-darkGray); }
  .page-guide-gps-howto .section-text aside {
    border-left: 3px solid var(--color-ibukiBeige);
    margin: var(--margin-medium) 0;
    padding: 0 var(--margin-default);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: var(--margin-default);
    margin: var(--margin-medium) 0 0; }
    .page-guide-gps-howto .section-text aside div {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      min-width: 0; }
    .page-guide-gps-howto .section-text aside h1 {
      font-size: var(--fontSize-medium); }
      @media (max-width: 768px) {
        .page-guide-gps-howto .section-text aside h1 {
          font-size: var(--fontSize-default); } }
    .page-guide-gps-howto .section-text aside p {
      font-size: var(--fontSize-default); }
      @media (max-width: 768px) {
        .page-guide-gps-howto .section-text aside p {
          font-size: var(--fontSize-small); } }

.page-guide-gps-howto .section-figure {
  width: 50%;
  text-align: center; }
  @media (max-width: 768px) {
    .page-guide-gps-howto .section-figure {
      width: auto; } }
  .page-guide-gps-howto .section-figure figure {
    margin: 0 auto;
    display: inline-block; }
  .page-guide-gps-howto .section-figure img,
  .page-guide-gps-howto .section-figure svg {
    max-width: 100%;
    height: auto; }

@media (max-width: 768px) {
  .page-guide-gps-howto .section-figure-addSpacing {
    margin: 0 0 0 10vw; } }

.page-guide-gps-howto .sectionCenter {
  margin: var(--margin-xlarge) 0 0;
  text-align: center; }
  .page-guide-gps-howto .sectionCenter .ledLamp {
    background: var(--bgColor-white); }
  .page-guide-gps-howto .sectionCenter p {
    margin: var(--margin-default) 0 0; }
    @media (max-width: 768px) {
      .page-guide-gps-howto .sectionCenter p {
        text-align: left; } }
    .page-guide-gps-howto .sectionCenter p span {
      display: block; }
      @media (max-width: 768px) {
        .page-guide-gps-howto .sectionCenter p span {
          display: inline; } }

.page-guide-gps-howto .sectionCenter-header h1 {
  font-size: var(--fontSize-xlarge);
  line-height: var(--lineHeight-default); }
  @media (max-width: 768px) {
    .page-guide-gps-howto .sectionCenter-header h1 {
      font-size: var(--fontSize-large); } }
  .page-guide-gps-howto .sectionCenter-header h1 span {
    display: inline-block; }

.page-guide-gps-howto #step2 {
  background: var(--bgColor-beige); }
  .page-guide-gps-howto #step2 .section-figure figure {
    text-align: right; }

.page-guide-gps-howto #modes {
  margin: var(--margin-xlarge) 0 0; }

.page-guide-gps-howto #modesHeader h1 {
  font-size: var(--fontSize-xlarge);
  text-align: center; }
  @media (max-width: 768px) {
    .page-guide-gps-howto #modesHeader h1 {
      font-size: var(--fontSize-large); } }

.page-guide-gps-howto #modesTable {
  margin: var(--margin-large) 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-large); }
  @media (max-width: 768px) {
    .page-guide-gps-howto #modesTable {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      margin: var(--margin-default) 0 0; } }
  .page-guide-gps-howto #modesTable section {
    background: var(--bgColor-white);
    border-radius: var(--borderRadius-large);
    padding: var(--margin-medium);
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .page-guide-gps-howto #modesTable .modesTable-description {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-height: 0; }
  .page-guide-gps-howto #modesTable h1 {
    font-size: var(--fontSize-large); }
    @media (max-width: 768px) {
      .page-guide-gps-howto #modesTable h1 {
        font-size: var(--fontSize-medium); } }
  @media (max-width: 768px) {
    .page-guide-gps-howto #modesTable dl {
      font-size: var(--fontSize-small); } }
  .page-guide-gps-howto #modesTable dl div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: var(--margin-small); }
    .page-guide-gps-howto #modesTable dl div + div {
      margin: var(--margin-xsmall) 0 0; }
      @media (max-width: 768px) {
        .page-guide-gps-howto #modesTable dl div + div {
          margin: 0; } }
  .page-guide-gps-howto #modesTable dl dt svg {
    width: 1em;
    height: 1em; }
  .page-guide-gps-howto #modesTable dl dd {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    margin: 0; }
  @media (max-width: 768px) {
    .page-guide-gps-howto #modesTable p {
      font-size: var(--fontSize-small); } }
  .page-guide-gps-howto #modesTable p + p {
    margin: var(--margin-small) 0 0; }
  .page-guide-gps-howto #modesTable p.note {
    font-size: var(--fontSize-small);
    color: var(--color-darkGray); }
    @media (max-width: 768px) {
      .page-guide-gps-howto #modesTable p.note {
        font-size: var(--fontSize-xsmall); } }
  .page-guide-gps-howto #modesTable figure {
    margin: var(--margin-medium) 0 0; }

.page-guide-gps-howto #raceMode {
  background: var(--bgColor-white);
  border-radius: var(--borderRadius-large);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-xlarge);
  padding: var(--margin-xlarge);
  margin: var(--margin-xlarge) 0 0; }
  @media (max-width: 768px) {
    .page-guide-gps-howto #raceMode {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      padding: var(--margin-medium); } }
  .page-guide-gps-howto #raceMode h2 {
    color: var(--color-brand); }
  .page-guide-gps-howto #raceMode h1,
  .page-guide-gps-howto #raceMode p {
    margin: var(--margin-default) 0 0; }
  .page-guide-gps-howto #raceMode h1 {
    font-size: var(--fontSize-xlarge); }
  .page-guide-gps-howto #raceMode div,
  .page-guide-gps-howto #raceMode ul {
    width: 50%; }
    @media (max-width: 768px) {
      .page-guide-gps-howto #raceMode div,
      .page-guide-gps-howto #raceMode ul {
        width: auto; } }
  .page-guide-gps-howto #raceMode ul {
    display: grid;
    grid-template-columns: 1fr 1fr;
    -webkit-column-gap: var(--margin-xlarge);
       -moz-column-gap: var(--margin-xlarge);
            column-gap: var(--margin-xlarge);
    row-gap: var(--margin-default);
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .page-guide-gps-howto #raceMode img {
    max-width: 100%;
    height: auto; }

.page-guide-gps-howto #afterLive {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--margin-large);
  text-align: left;
  margin: var(--margin-large) 0 0; }
  @media (max-width: 768px) {
    .page-guide-gps-howto #afterLive {
      margin: var(--margin-medium) 0 0;
      grid-template-columns: 1fr;
      gap: var(--margin-medium); } }
  .page-guide-gps-howto #afterLive li {
    background: var(--bgColor-beige);
    border-radius: var(--borderRadius-large);
    padding: var(--margin-large);
    line-height: var(--lineHeight-default); }
    @media (max-width: 768px) {
      .page-guide-gps-howto #afterLive li {
        padding: var(--margin-medium); } }
    .page-guide-gps-howto #afterLive li div:first-of-type {
      font-size: var(--fontSize-large);
      font-weight: var(--fontWeight-bold); }
      @media (max-width: 768px) {
        .page-guide-gps-howto #afterLive li div:first-of-type {
          font-size: var(--fontSize-default); } }
    .page-guide-gps-howto #afterLive li div:last-of-type {
      margin: var(--margin-default) 0 0; }
      @media (max-width: 768px) {
        .page-guide-gps-howto #afterLive li div:last-of-type {
          font-size: var(--fontSize-small); } }

.page-guide-gps-howto #button {
  background: var(--bgColor-beige); }
  .page-guide-gps-howto #button .section {
    margin: 0; }

.page-guide-gps-howto #buttonInstructions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--margin-large);
  text-align: left;
  margin: var(--margin-large) 0 0; }
  @media (max-width: 768px) {
    .page-guide-gps-howto #buttonInstructions {
      margin: var(--margin-medium) 0 0;
      grid-template-columns: 1fr;
      gap: var(--margin-medium); } }
  .page-guide-gps-howto #buttonInstructions li {
    background: var(--bgColor-white);
    border-radius: var(--borderRadius-large);
    padding: var(--margin-large);
    line-height: var(--lineHeight-default); }
    @media (max-width: 768px) {
      .page-guide-gps-howto #buttonInstructions li {
        padding: var(--margin-medium); } }
    .page-guide-gps-howto #buttonInstructions li div:first-of-type {
      font-size: var(--fontSize-large);
      font-weight: var(--fontWeight-bold); }
      @media (max-width: 768px) {
        .page-guide-gps-howto #buttonInstructions li div:first-of-type {
          font-size: var(--fontSize-default); } }
    .page-guide-gps-howto #buttonInstructions li div:not(:first-of-type) {
      margin: var(--margin-default) 0 0; }
      @media (max-width: 768px) {
        .page-guide-gps-howto #buttonInstructions li div:not(:first-of-type) {
          font-size: var(--fontSize-small); } }

.page-guide-gps-howto #buttonInstructions-signal {
  grid-row: span 2; }

.page-guide-gps-howto #buttonNote {
  margin: var(--margin-xlarge) 0 0;
  font-size: var(--fontSize-small);
  color: var(--color-darkGray);
  padding: 0; }
  @media (max-width: 768px) {
    .page-guide-gps-howto #buttonNote {
      margin: var(--margin-medium) var(--margin-small) 0; } }
  .page-guide-gps-howto #buttonNote li {
    list-style-type: none; }

.page-guide-track .container {
  font-size: var(--fontSize-default);
  line-height: var(--lineHeight-default); }
  .page-guide-track .container main > section {
    padding: calc(var(--margin-xlarge) + var(--margin-large)) 0; }
    @media (max-width: 768px) {
      .page-guide-track .container main > section {
        padding: var(--margin-large) 0; } }
  .page-guide-track .container .trackSectionImages {
    position: relative;
    z-index: -1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background: var(--color-black); }
    .page-guide-track .container .trackSectionImages img {
      width: 50%;
      height: auto;
      aspect-ratio: 3 / 2;
      -o-object-fit: cover;
         object-fit: cover;
      opacity: 0.85; }

.page-guide-track #firstView {
  color: var(--color-ibukiLightGray);
  background: var(--color-ibukiDarkGray) url(/images/bg-contour-black.svg) left bottom;
  background-size: 800px 800px;
  padding: 20px 0; }
  .page-guide-track #firstView .wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-top: 80px;
    padding-bottom: 50px; }
    @media (max-width: 768px) {
      .page-guide-track #firstView .wrapper {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        padding-top: 70px;
        padding-bottom: 0; } }

.page-guide-track #firstView-text {
  width: 43%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 var(--margin-xlarge) 0 0; }
  @media (max-width: 850px) {
    .page-guide-track #firstView-text {
      padding: 0 var(--margin-large) 0 0; } }
  @media (max-width: 768px) {
    .page-guide-track #firstView-text {
      width: 100%;
      padding: 0; } }
  .page-guide-track #firstView-text h1 {
    font-size: 45px;
    line-height: var(--lineHeight-small); }
    @media (max-width: 850px) {
      .page-guide-track #firstView-text h1 {
        font-size: 40px; } }
    @media (max-width: 768px) {
      .page-guide-track #firstView-text h1 {
        font-size: 30px; } }
    .page-guide-track #firstView-text h1 span {
      display: inline-block; }
      @media (max-width: 768px) {
        .page-guide-track #firstView-text h1 span {
          display: inline; } }
  .page-guide-track #firstView-text p {
    margin: var(--margin-medium) 0 0;
    font-size: var(--fontSize-large); }
    @media (max-width: 850px) {
      .page-guide-track #firstView-text p {
        font-size: var(--fontSize-medium); } }
    @media (max-width: 768px) {
      .page-guide-track #firstView-text p {
        font-size: var(--fontSize-default);
        margin: var(--margin-default) 0 0; } }
  .page-guide-track #firstView-text div {
    margin: var(--margin-medium) 0 0; }
    @media (max-width: 768px) {
      .page-guide-track #firstView-text div a {
        width: 100%;
        -webkit-box-sizing: border-box;
                box-sizing: border-box; } }

.page-guide-track #firstView-ss {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  text-align: right; }
  @media (max-width: 768px) {
    .page-guide-track #firstView-ss {
      margin: calc(var(--margin-large) + var(--margin-default)) 0 var(--margin-default); } }
  .page-guide-track #firstView-ss img {
    vertical-align: middle;
    max-width: 100%;
    height: auto; }
    @media (max-width: 768px) {
      .page-guide-track #firstView-ss img {
        max-width: 100%; } }

.page-guide-track #customers {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: calc(var(--margin-large) + var(--margin-small)) auto;
  gap: var(--margin-large);
  text-align: center; }
  @media (max-width: 768px) {
    .page-guide-track #customers {
      margin: var(--margin-large) auto; } }
  @media (max-width: 640px) {
    .page-guide-track #customers {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      text-align: center;
      -webkit-column-gap: 0;
         -moz-column-gap: 0;
              column-gap: 0;
      row-gap: var(--margin-default); } }
  .page-guide-track #customers a {
    display: block; }
  .page-guide-track #customers img {
    vertical-align: middle;
    max-height: 60px;
    width: auto; }
    @media (max-width: 768px) {
      .page-guide-track #customers img {
        max-height: 50px; } }
    @media (max-width: 400px) {
      .page-guide-track #customers img {
        max-height: 40px; } }

.page-guide-track #about,
.page-guide-track #problems {
  padding: 0 0 calc(var(--margin-xlarge) + var(--margin-large)); }
  @media (max-width: 768px) {
    .page-guide-track #about,
    .page-guide-track #problems {
      padding: 0 0 var(--margin-large); } }

.page-guide-track #about-container,
.page-guide-track #problems-container {
  margin: calc(var(--margin-xlarge) * -1.8) 0 0;
  padding: var(--margin-xlarge) var(--margin-large) 0;
  background: var(--color-white);
  border-radius: var(--borderRadius-large); }
  @media (max-width: 1080px) {
    .page-guide-track #about-container,
    .page-guide-track #problems-container {
      margin: calc(var(--margin-xlarge) * -1) 0 0; } }
  @media (max-width: 768px) {
    .page-guide-track #about-container,
    .page-guide-track #problems-container {
      border-radius: var(--borderRadius-default);
      margin: calc(var(--margin-default) * -2) 0 0;
      padding: calc(var(--margin-large) + var(--margin-default)) var(--margin-default) 0; } }
  @media (max-width: 559px) {
    .page-guide-track #about-container,
    .page-guide-track #problems-container {
      padding: var(--margin-large) var(--margin-default) 0; } }

.page-guide-track #about-container .c-trackSectionLead {
  text-align: left;
  margin-bottom: 0; }

.page-guide-track #about-contents {
  display: grid;
  grid-template-areas: "figure body" "figure small";
  grid-template-columns: 1fr 1.5fr;
  -webkit-column-gap: var(--margin-xlarge);
     -moz-column-gap: var(--margin-xlarge);
          column-gap: var(--margin-xlarge); }
  @media (max-width: 768px) {
    .page-guide-track #about-contents {
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse;
      gap: 0;
      grid-template-areas: "body" "figure" "small";
      grid-template-columns: 1fr; } }

.page-guide-track #about-body {
  grid-area: body; }
  .page-guide-track #about-body p {
    margin: 1em 0; }
    .page-guide-track #about-body p:first-child {
      margin-top: 0; }
  .page-guide-track #about-body sup,
  .page-guide-track #about-body small {
    scroll-margin-top: 110px; }
    .page-guide-track #about-body sup:target,
    .page-guide-track #about-body small:target {
      background: var(--color-ibukiLightGray); }
  .page-guide-track #about-body ol {
    padding: 0; }
  .page-guide-track #about-body li {
    list-style-type: none; }

.page-guide-track #about-figure {
  grid-area: figure;
  padding: var(--margin-large) 0 0; }
  @media (max-width: 768px) {
    .page-guide-track #about-figure {
      padding: var(--margin-small) 0 0; } }

.page-guide-track #about-figure-content {
  white-space: nowrap;
  text-align: center;
  font-weight: var(--fontWeight-bold);
  font-size: var(--fontSize-xlarge);
  color: var(--color-brand);
  letter-spacing: 0.05em;
  font-family: var(--fontFamily-montserrat); }
  @media (max-width: 768px) {
    .page-guide-track #about-figure-content {
      font-size: var(--fontSize-large);
      line-height: var(--lineHeight-small); } }

.page-guide-track #about-figure-block {
  display: inline-block;
  margin: var(--margin-default) 0 0;
  padding: var(--margin-large);
  border-radius: var(--borderRadius-large);
  border: 3px solid var(--color-brand); }
  @media (max-width: 768px) {
    .page-guide-track #about-figure-block {
      padding: var(--margin-default);
      font-size: var(--fontSize-large); } }
  .page-guide-track #about-figure-block svg {
    width: 30px;
    height: 30px; }
    @media (max-width: 768px) {
      .page-guide-track #about-figure-block svg {
        width: 20px;
        height: 20px; } }

.page-guide-track #about-small {
  grid-area: small;
  border-top: 1px solid var(--borderColor-default);
  font-size: var(--fontSize-small);
  margin: var(--margin-medium) 0 0;
  padding: var(--margin-default) 0 0; }
  @media (max-width: 768px) {
    .page-guide-track #about-small {
      margin: var(--margin-medium) 0 0;
      border: none;
      line-height: var(--lineHeight-small); } }
  .page-guide-track #about-small ol {
    padding: 0;
    margin-bottom: var(--margin-xsmall);
    list-style: none; }
  .page-guide-track #about-small small {
    font-size: var(--fontSize-xsmall); }
    @media (max-width: 768px) {
      .page-guide-track #about-small small {
        font-size: var(--fontSize-xxsmall); } }

.page-guide-track #problems ul {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: var(--margin-medium); }

.page-guide-track #problems li {
  background: var(--color-ibukiLightGray);
  padding: var(--margin-medium);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: var(--borderRadius-large); }
  .page-guide-track #problems li div:first-child {
    text-align: center;
    font-weight: var(--fontWeight-bold); }
  .page-guide-track #problems li div:last-child {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    margin: 0 0 0 var(--margin-medium);
    text-align: justify;
    font-size: var(--fontSize-small); }

.page-guide-track #reason {
  background: var(--color-ibukiLightGray); }
  .page-guide-track #reason .wrapper {
    padding: 0; }
    @media (max-width: 768px) {
      .page-guide-track #reason .wrapper {
        margin-left: auto;
        margin-right: auto; } }
  @media (max-width: 768px) and (max-width: 1080px) {
    .page-guide-track #reason .wrapper {
      padding: 0 30px; } }
  @media (max-width: 768px) and (max-width: 559px) {
    .page-guide-track #reason .wrapper {
      padding: 0 20px; } }
  @media (max-width: 768px) and (max-width: 350px) {
    .page-guide-track #reason .wrapper {
      padding: 0 12px; } }

.page-guide-track #reason-image {
  text-align: center;
  margin: 0 var(--margin-large); }
  @media (max-width: 768px) {
    .page-guide-track #reason-image {
      margin: 0; } }
  .page-guide-track #reason-image img {
    max-width: 100%;
    height: auto;
    border-radius: var(--borderRadius-large);
    background: #e9e6e1; }

.page-guide-track #points section {
  position: relative;
  margin: var(--margin-large) 0 var(--margin-xlarge); }
  @media (max-width: 768px) {
    .page-guide-track #points section {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse;
      margin: var(--margin-large) 0; } }
  .page-guide-track #points section:last-child {
    margin-bottom: 0; }
  .page-guide-track #points section:nth-child(even) .points-body {
    left: 5vw; }
  .page-guide-track #points section:nth-child(even) .points-image {
    margin: 0 0 0 auto; }
  .page-guide-track #points section:nth-child(odd) .points-body {
    right: 5vw; }

.page-guide-track #points .points-body {
  border: 3px solid var(--color-ibukiLightGray);
  background: var(--color-white);
  width: 40%;
  padding: var(--margin-large);
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 1;
  line-height: var(--lineHeight-large); }
  @media (max-width: 768px) {
    .page-guide-track #points .points-body {
      width: auto;
      position: static;
      -webkit-transform: none;
              transform: none;
      margin: calc(var(--margin-default) * -2) var(--margin-default) 0;
      padding: var(--margin-default) var(--margin-medium) var(--margin-medium); } }

.page-guide-track #points .points-number {
  font-family: var(--fontFamily-montserrat);
  font-size: var(--fontSize-xxxxxlarge);
  color: var(--color-brand); }
  @media (max-width: 768px) {
    .page-guide-track #points .points-number {
      font-size: var(--fontSize-xxxlarge); } }

.page-guide-track #points .points-title {
  font-size: var(--fontSize-xxlarge);
  line-height: var(--lineHeight-small);
  font-family: var(--fontFamily-montserrat); }
  @media (max-width: 768px) {
    .page-guide-track #points .points-title {
      font-size: var(--fontSize-large);
      line-height: var(--lineHeight-default); } }
  .page-guide-track #points .points-title span {
    display: inline-block; }

.page-guide-track #points .points-text {
  margin: var(--margin-medium) 0 0; }

.page-guide-track #points .points-image {
  width: 60%; }
  @media (max-width: 768px) {
    .page-guide-track #points .points-image {
      width: 100%; } }
  .page-guide-track #points .points-image img {
    max-width: 100%;
    height: auto;
    background: var(--bgColor-beige); }

.page-guide-track #sports {
  background: var(--color-ibukiLightGray); }
  .page-guide-track #sports ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: var(--margin-medium);
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    @media (max-width: 768px) {
      .page-guide-track #sports ul {
        gap: var(--margin-default);
        margin: 0 0 var(--margin-small); } }
  .page-guide-track #sports li {
    background: var(--color-white);
    padding: var(--margin-default); }
    @media (max-width: 768px) {
      .page-guide-track #sports li {
        font-size: var(--fontSize-small); } }
    @media (max-width: 559px) {
      .page-guide-track #sports li {
        padding: var(--margin-small); } }

.page-guide-track #flow {
  background: var(--color-ibukiLightGray); }

.page-guide-track #flow-chart {
  --gap: var(--margin-large);
  --gap-sp: var(--margin-default);
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -webkit-column-gap: var(--gap);
     -moz-column-gap: var(--gap);
          column-gap: var(--gap);
  row-gap: calc(var(--gap) * 1.5); }
  @media (max-width: 768px) {
    .page-guide-track #flow-chart {
      grid-template-columns: repeat(1, 1fr);
      row-gap: var(--gap); } }
  @media (max-width: 559px) {
    .page-guide-track #flow-chart {
      gap: var(--gap-sp); } }
  @media (max-width: 768px) {
    .page-guide-track #flow-chart section {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; } }
  @media (max-width: 768px) {
    .page-guide-track #flow-chart ul {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      min-width: 0; } }
  .page-guide-track #flow-chart h1 {
    margin: 0 0 var(--margin-default);
    font-weight: var(--fontWeight-normal);
    position: relative;
    font-size: var(--fontSize-xsmall); }
    @media (max-width: 768px) {
      .page-guide-track #flow-chart h1 {
        width: 4em;
        margin: 0 calc(var(--margin-default) + var(--margin-default)) 0 0; } }
    @media (max-width: 559px) {
      .page-guide-track #flow-chart h1 {
        margin: 0 calc(var(--margin-default) + var(--margin-xsmall)) 0 0; } }
    @media (max-width: 350px) {
      .page-guide-track #flow-chart h1 {
        margin: 0 var(--margin-default) 0 0; } }
    .page-guide-track #flow-chart h1 span {
      position: relative;
      z-index: 1;
      background: var(--color-ibukiLightGray);
      padding: 0 var(--margin-xsmall) 0 0; }
      @media (max-width: 768px) {
        .page-guide-track #flow-chart h1 span {
          display: block;
          text-align: center;
          padding: calc(var(--margin-default) + var(--margin-small)) 0 var(--margin-xsmall); } }
    .page-guide-track #flow-chart h1::before {
      content: "";
      display: block;
      width: 100%;
      height: 0;
      border-top: 1px solid var(--borderColor-mediumGray);
      position: absolute;
      top: 50%;
      left: 0;
      margin: -1px 0 0; }
      @media (max-width: 768px) {
        .page-guide-track #flow-chart h1::before {
          width: 0;
          height: 100%;
          border: none;
          border-left: 1px solid var(--borderColor-mediumGray);
          top: 0;
          left: 50%;
          margin: 0 0 0 -1px; } }
  .page-guide-track #flow-chart ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: var(--gap); }
    @media (max-width: 559px) {
      .page-guide-track #flow-chart ul {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        gap: var(--gap-sp); } }
  .page-guide-track #flow-chart li {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    background: var(--color-white);
    padding: var(--margin-default) var(--margin-medium) var(--margin-medium);
    border-radius: var(--borderRadius-large);
    position: relative; }
  .page-guide-track #flow-chart .flow-step-number {
    color: var(--color-brand);
    font-size: var(--fontSize-large);
    font-family: var(--fontFamily-montserrat);
    font-weight: var(--fontWeight-bold); }
    @media (max-width: 559px) {
      .page-guide-track #flow-chart .flow-step-number {
        float: left;
        margin: 0 var(--margin-small) 0 0;
        -webkit-transform: translateY(3px);
                transform: translateY(3px); } }
  .page-guide-track #flow-chart .flow-step-title {
    margin: var(--margin-small) 0 0;
    font-weight: var(--fontWeight-bold);
    display: inline-block; }
  .page-guide-track #flow-chart .flow-step-body {
    margin: calc(var(--margin-small) + var(--margin-xsmall)) 0 0;
    font-size: var(--fontSize-small); }

.page-guide-track #flow-chart-before {
  grid-column: span 2; }
  @media (max-width: 768px) {
    .page-guide-track #flow-chart-before {
      grid-column: auto; } }
  @media (max-width: 768px) {
    .page-guide-track #flow-chart-before ul {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: var(--gap); } }
  @media (max-width: 559px) {
    .page-guide-track #flow-chart-before ul {
      grid-template-columns: repeat(1, 1fr);
      gap: var(--gap-sp); } }

.page-guide-track #desclaimer {
  background: var(--color-ibukiGray);
  padding: var(--margin-medium) 0;
  font-size: var(--fontSize-small);
  color: var(--color-lightGray); }

.page-guide-track #globalFooter {
  margin: 0; }

.page-guide-track-features .container {
  font-size: var(--fontSize-default);
  line-height: var(--lineHeight-default); }

.page-guide-track-features #firstView {
  padding: 20px 0;
  position: relative;
  color: var(--color-ibukiLightGray); }
  .page-guide-track-features #firstView::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--color-ibukiDarkGray) url(/images/bg-contour-black.svg) left bottom;
    background-size: 800px 800px;
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 70%, 0 90%);
            clip-path: polygon(0 0, 100% 0, 100% 70%, 0 90%); }
    @media (max-width: 768px) {
      .page-guide-track-features #firstView::before {
        -webkit-clip-path: polygon(0 0, 100% 0, 100% 68%, 0 78%);
                clip-path: polygon(0 0, 100% 0, 100% 68%, 0 78%); } }
  .page-guide-track-features #firstView .wrapper {
    position: relative;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: var(--margin-large);
    padding-top: 90px; }
    @media (max-width: 768px) {
      .page-guide-track-features #firstView .wrapper {
        padding-top: 70px;
        display: block; } }

.page-guide-track-features #firstView-text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  padding: 0 80px 100px 0; }
  @media (max-width: 768px) {
    .page-guide-track-features #firstView-text {
      padding: 0; } }
  .page-guide-track-features #firstView-text h1 {
    font-size: 40px;
    line-height: var(--lineHeight-small);
    color: var(--color-ibukiLightGray); }
    @media (max-width: 1024px) {
      .page-guide-track-features #firstView-text h1 {
        font-size: 32px; } }
    @media (max-width: 768px) {
      .page-guide-track-features #firstView-text h1 {
        font-size: 24px; } }
    .page-guide-track-features #firstView-text h1 span {
      display: inline-block; }
      @media (max-width: 850px) {
        .page-guide-track-features #firstView-text h1 span {
          display: inline; } }
  .page-guide-track-features #firstView-text p {
    margin: var(--margin-medium) 0 0;
    font-size: var(--fontSize-large); }
    @media (max-width: 850px) {
      .page-guide-track-features #firstView-text p {
        font-size: var(--fontSize-medium); } }
    @media (max-width: 768px) {
      .page-guide-track-features #firstView-text p {
        font-size: var(--fontSize-default);
        margin: var(--margin-default) 0 0; } }
    .page-guide-track-features #firstView-text p span {
      display: inline-block; }
      @media (max-width: 768px) {
        .page-guide-track-features #firstView-text p span {
          display: inline; } }

.page-guide-track-features #firstView-scene {
  position: relative;
  max-width: min(400px, 50%);
  margin: 0 0 0 auto; }
  @media (max-width: 768px) {
    .page-guide-track-features #firstView-scene {
      max-width: 100%;
      margin: var(--margin-large) 0 0; } }
  .page-guide-track-features #firstView-scene img {
    max-width: 100%;
    height: auto; }

.page-guide-track-features #firstView-scene-photo {
  max-width: 100%; }

.page-guide-track-features #firstView-scene-tjar {
  background: var(--color-ibukiLightGray);
  padding: 10px 20px 7px;
  margin: 0 0 0 auto;
  max-width: 25%; }

.page-guide-track-features #firstView-scene-gps {
  max-width: 80%;
  position: absolute;
  left: -20%;
  bottom: -20%; }
  @media (max-width: 768px) {
    .page-guide-track-features #firstView-scene-gps {
      width: 60%;
      left: 2%;
      bottom: -5%; } }

.page-guide-track-features #features section {
  padding: calc(var(--margin-xlarge) + var(--margin-large)) 0; }
  @media (max-width: 768px) {
    .page-guide-track-features #features section {
      padding: var(--margin-large) 0; } }

.page-guide-track-features #features .featureLabel {
  color: var(--color-brand);
  font-weight: bold;
  margin: 0 0 0 2px; }

.page-guide-track-features #features .featureText h1,
.page-guide-track-features #features .featureText p {
  margin: var(--margin-default) 0 0; }

.page-guide-track-features #features .featureText p {
  line-height: var(--lineHeight-large); }

.page-guide-track-features #firstView,
.page-guide-track-features #gps,
.page-guide-track-features #beacon,
.page-guide-track-features #otherFeatures {
  background: var(--color-ibukiLightGray); }

.page-guide-track-features #gps .wrapper,
.page-guide-track-features #live .wrapper,
.page-guide-track-features #results .wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  @media (max-width: 768px) {
    .page-guide-track-features #gps .wrapper,
    .page-guide-track-features #live .wrapper,
    .page-guide-track-features #results .wrapper {
      display: block; } }

.page-guide-track-features #gps .featureText,
.page-guide-track-features #live .featureText,
.page-guide-track-features #results .featureText {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0; }

.page-guide-track-features #gps .featureImage img,
.page-guide-track-features #live .featureImage img,
.page-guide-track-features #results .featureImage img {
  max-width: 100%;
  height: auto; }

.page-guide-track-features #gps {
  padding-top: var(--margin-default) !important; }
  @media (max-width: 1024px) {
    .page-guide-track-features #gps {
      padding-top: var(--margin-large) !important; } }
  .page-guide-track-features #gps .wrapper {
    gap: var(--margin-xxlarge); }
  .page-guide-track-features #gps .featureImage {
    width: 50%; }
    @media (max-width: 768px) {
      .page-guide-track-features #gps .featureImage {
        width: 100%; } }
  @media (max-width: 768px) {
    .page-guide-track-features #gps .featureText {
      margin: var(--margin-large) 0 0; } }

.page-guide-track-features #live,
.page-guide-track-features #results {
  position: relative; }
  .page-guide-track-features #live::before,
  .page-guide-track-features #results::before {
    content: "";
    background: var(--color-brand);
    display: block;
    position: absolute;
    top: var(--margin-large);
    bottom: var(--margin-large);
    width: 35%;
    z-index: -1; }
    @media (max-width: 768px) {
      .page-guide-track-features #live::before,
      .page-guide-track-features #results::before {
        top: 0;
        bottom: auto;
        left: 0;
        right: 0;
        width: 100%;
        height: 40%; } }
    @media (max-width: 559px) {
      .page-guide-track-features #live::before,
      .page-guide-track-features #results::before {
        height: 32%; } }
    @media (max-width: 400px) {
      .page-guide-track-features #live::before,
      .page-guide-track-features #results::before {
        height: 25%; } }
  .page-guide-track-features #live .wrapper,
  .page-guide-track-features #results .wrapper {
    gap: var(--margin-xlarge); }
  .page-guide-track-features #live .featureImage,
  .page-guide-track-features #results .featureImage {
    width: 55%; }
    @media (max-width: 768px) {
      .page-guide-track-features #live .featureImage,
      .page-guide-track-features #results .featureImage {
        margin: 0 auto;
        width: 80%; } }
  @media (max-width: 768px) {
    .page-guide-track-features #live .featureText,
    .page-guide-track-features #results .featureText {
      margin: var(--margin-large) 0 0; } }

.page-guide-track-features #live::before {
  left: 0; }

.page-guide-track-features #live .wrapper {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row; }

.page-guide-track-features #results::before {
  right: 0; }

.page-guide-track-features #results img {
  background: var(--color-white);
  border: 1px solid var(--color-darkGray); }

.page-guide-track-features #sms {
  padding: var(--margin-large) 0 calc(var(--margin-xlarge) + var(--margin-large)) !important; }
  @media (max-width: 768px) {
    .page-guide-track-features #sms {
      padding: 0 0 var(--margin-xlarge) !important; } }

.page-guide-track-features #sms-inner {
  background: var(--bgColor-beige);
  border-radius: var(--borderRadius-large);
  overflow: hidden; }

.page-guide-track-features #sms-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }
  @media (max-width: 768px) {
    .page-guide-track-features #sms-header {
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse; } }

.page-guide-track-features #sms-header-contents {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  padding: var(--margin-large); }

.page-guide-track-features #sms-header-image {
  width: 40%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 230px;
  overflow: hidden; }
  @media (max-width: 768px) {
    .page-guide-track-features #sms-header-image {
      width: 100%; } }
  .page-guide-track-features #sms-header-image img {
    width: 100%;
    max-width: 400px;
    height: auto; }
    @media (max-width: 768px) {
      .page-guide-track-features #sms-header-image img {
        max-width: 85%; } }
    @media (max-width: 559px) {
      .page-guide-track-features #sms-header-image img {
        max-width: 100%; } }

.page-guide-track-features #sms-useCases {
  padding: 0 var(--margin-large) var(--margin-large);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-large); }
  @media (max-width: 768px) {
    .page-guide-track-features #sms-useCases {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }
  .page-guide-track-features #sms-useCases section {
    padding: 0;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    background: var(--bgColor-white);
    border-radius: var(--borderRadius-large);
    padding: var(--margin-medium) var(--margin-large); }
    .page-guide-track-features #sms-useCases section h1 {
      margin: 0 0 var(--margin-default) !important; }
  .page-guide-track-features #sms-useCases ul {
    padding-left: 1.3em; }
  .page-guide-track-features #sms-useCases li {
    list-style-type: disc; }
    .page-guide-track-features #sms-useCases li + li {
      margin: var(--margin-small) 0 0; }

.page-guide-track-features #beacon .featureImage {
  margin: var(--margin-large) 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.page-guide-track-features #beacon img {
  max-width: 50%;
  height: auto; }

.page-guide-track-features #beacon .featureText {
  margin: calc(var(--margin-default) + var(--margin-large)) 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0 var(--margin-large); }
  @media (max-width: 768px) {
    .page-guide-track-features #beacon .featureText {
      display: block;
      margin: var(--margin-large) 0 0;
      padding: 0; } }
  .page-guide-track-features #beacon .featureText div,
  .page-guide-track-features #beacon .featureText p {
    width: 50%; }
    @media (max-width: 768px) {
      .page-guide-track-features #beacon .featureText div,
      .page-guide-track-features #beacon .featureText p {
        width: 100%; } }
  .page-guide-track-features #beacon .featureText p {
    margin: 0 0 0 var(--margin-large); }
    @media (max-width: 768px) {
      .page-guide-track-features #beacon .featureText p {
        margin: var(--margin-default) 0 0; } }

.page-guide-track-features #otherFeatures .wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--margin-xlarge); }
  @media (max-width: 1024px) {
    .page-guide-track-features #otherFeatures .wrapper {
      gap: var(--margin-large); } }
  @media (max-width: 768px) {
    .page-guide-track-features #otherFeatures .wrapper {
      display: block;
      padding: 0; } }

.page-guide-track-features #otherFeatures section {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  padding: var(--margin-xlarge) 0 calc(var(--margin-xlarge) + var(--margin-large)); }
  @media (max-width: 768px) {
    .page-guide-track-features #otherFeatures section {
      padding: var(--margin-large) 30px; } }
  @media (max-width: 559px) {
    .page-guide-track-features #otherFeatures section {
      padding: var(--margin-large) 20px; } }
  @media (max-width: 350px) {
    .page-guide-track-features #otherFeatures section {
      padding: var(--margin-large) 12px; } }
  @media (max-width: 768px) {
    .page-guide-track-features #otherFeatures section:nth-child(2) {
      background: var(--bgColor-white); } }

.page-guide-track-features #otherFeatures .featureImage {
  padding-top: 100%;
  position: relative; }
  @media (max-width: 768px) {
    .page-guide-track-features #otherFeatures .featureImage {
      padding: 0; } }

.page-guide-track-features #otherFeatures img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain; }
  @media (max-width: 768px) {
    .page-guide-track-features #otherFeatures img {
      position: relative;
      max-width: 100%;
      width: 100%;
      height: auto;
      -o-object-fit: fill;
         object-fit: fill; } }

.page-guide-track-features #otherFeatures h1 {
  font-family: var(--fontFamily-montserrat);
  font-size: var(--fontSize-large);
  line-height: 1.5; }
  @media (max-width: 768px) {
    .page-guide-track-features #otherFeatures h1 {
      font-size: var(--fontSize-xxlarge); } }
  @media (max-width: 559px) {
    .page-guide-track-features #otherFeatures h1 {
      font-size: var(--fontSize-large); } }
  .page-guide-track-features #otherFeatures h1 span {
    display: inline-block; }

@media (max-width: 768px) {
  .page-guide-track-features #csv .featureText {
    margin: var(--margin-small) 0 0; } }

@media (max-width: 768px) {
  .page-guide-track-features #cheer .featureText {
    margin: var(--margin-large) 0 0; } }

.page-guide-track-features #performance {
  font-weight: bold;
  padding: calc(var(--margin-xlarge) + var(--margin-large)) 0; }
  @media (max-width: 768px) {
    .page-guide-track-features #performance {
      padding: var(--margin-xlarge) 0; } }
  .page-guide-track-features #performance span {
    display: inline-block; }
    @media (max-width: 768px) {
      .page-guide-track-features #performance span {
        display: inline; } }

.page-guide-track-features #globalFooter {
  margin: 0; }

.page-guide-track-pricing .container {
  font-size: var(--fontSize-default);
  line-height: var(--lineHeight-default); }
  .page-guide-track-pricing .container #firstView {
    padding: 0;
    position: relative; }
    .page-guide-track-pricing .container #firstView::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: var(--color-ibukiDarkGray) url(/images/bg-contour-black.svg) left bottom;
      background-size: 800px 800px;
      z-index: -1;
      -webkit-clip-path: polygon(0 0, 100% 0, 100% 75%, 0 95%);
              clip-path: polygon(0 0, 100% 0, 100% 75%, 0 95%); }
      @media (max-width: 768px) {
        .page-guide-track-pricing .container #firstView::before {
          -webkit-clip-path: polygon(0 0, 100% 0, 100% 83%, 0 90%);
                  clip-path: polygon(0 0, 100% 0, 100% 83%, 0 90%); } }
    .page-guide-track-pricing .container #firstView .wrapper {
      padding-top: 90px; }
      @media (max-width: 768px) {
        .page-guide-track-pricing .container #firstView .wrapper {
          padding-top: 70px; } }
    .page-guide-track-pricing .container #firstView h1 {
      font-size: 40px;
      text-align: center;
      color: var(--color-ibukiLightGray); }
      @media (max-width: 850px) {
        .page-guide-track-pricing .container #firstView h1 {
          font-size: 32px;
          margin: 0 10%; } }
      @media (max-width: 768px) {
        .page-guide-track-pricing .container #firstView h1 {
          font-size: 24px;
          margin: 0 5%; } }
      .page-guide-track-pricing .container #firstView h1 span {
        display: inline-block; }
  .page-guide-track-pricing .container #pricing {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: var(--margin-xlarge);
    margin: var(--margin-large) 0 0; }
    @media (max-width: 768px) {
      .page-guide-track-pricing .container #pricing {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        gap: var(--margin-large); } }
  .page-guide-track-pricing .container .pricingItem {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: var(--margin-large);
    text-align: center;
    border: 1px solid var(--borderColor-black);
    background: var(--bgColor-white);
    border-radius: var(--borderRadius-large);
    padding: var(--margin-large);
    position: relative; }
    @media (max-width: 768px) {
      .page-guide-track-pricing .container .pricingItem {
        display: block;
        padding: var(--margin-medium); } }
    .page-guide-track-pricing .container .pricingItem:not(:first-of-type)::before {
      content: "+";
      position: absolute;
      right: 100%;
      top: 50%;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      text-align: center;
      width: var(--margin-xlarge);
      color: var(--color-ibukiLightGray);
      font-size: var(--fontSize-xxxlarge); }
      @media (max-width: 768px) {
        .page-guide-track-pricing .container .pricingItem:not(:first-of-type)::before {
          right: 0;
          top: auto;
          bottom: 100%;
          width: 100%;
          -webkit-transform: translateY(-2px);
                  transform: translateY(-2px);
          height: var(--margin-large);
          line-height: var(--margin-large); } }
    .page-guide-track-pricing .container .pricingItem span {
      display: inline-block; }
  .page-guide-track-pricing .container .pricingItem-title {
    font-weight: var(--fontWeight-bold);
    font-size: var(--fontSize-medium); }
    @media (max-width: 768px) {
      .page-guide-track-pricing .container .pricingItem-title {
        font-size: var(--fontSize-default); } }
  .page-guide-track-pricing .container .pricingItem-price {
    font-weight: var(--fontWeight-bold);
    font-size: var(--fontSize-xxlarge);
    color: var(--color-brand);
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-height: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    @media (max-width: 768px) {
      .page-guide-track-pricing .container .pricingItem-price {
        font-size: var(--fontSize-large);
        margin: var(--margin-xsmall) 0; } }
  .page-guide-track-pricing .container .pricingItem-description {
    font-size: var(--fontSize-small);
    color: var(--color-darkGray); }
    @media (max-width: 768px) {
      .page-guide-track-pricing .container .pricingItem-description {
        font-size: var(--fontSize-xsmall); } }
  .page-guide-track-pricing .container #estimate {
    padding: var(--margin-xlarge) 0; }
    @media (max-width: 768px) {
      .page-guide-track-pricing .container #estimate {
        padding: var(--margin-xlarge) 0 var(--margin-large); } }
  .page-guide-track-pricing .container #estimateList {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: var(--margin-large); }
    @media (max-width: 559px) {
      .page-guide-track-pricing .container #estimateList {
        gap: var(--margin-medium); } }
  @media (max-width: 559px) {
    .page-guide-track-pricing .container .estimateListItem {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
      gap: var(--margin-default); } }
  .page-guide-track-pricing .container .estimateListItem img {
    max-width: 100%;
    border-radius: var(--borderRadius-large); }
    @media (max-width: 559px) {
      .page-guide-track-pricing .container .estimateListItem img {
        max-width: 100px;
        border-radius: var(--borderRadius-medium); } }
  @media (max-width: 559px) {
    .page-guide-track-pricing .container .estimate-summary {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      min-width: 0; } }
  .page-guide-track-pricing .container .estimate-title,
  .page-guide-track-pricing .container .estimate-total {
    font-size: var(--fontSize-medium);
    font-weight: var(--fontWeight-bold); }
    @media (max-width: 768px) {
      .page-guide-track-pricing .container .estimate-title,
      .page-guide-track-pricing .container .estimate-total {
        font-size: var(--fontSize-default); } }
  .page-guide-track-pricing .container .estimate-title {
    margin: var(--margin-default) 0 0;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    letter-spacing: 0.05em; }
    @media (max-width: 559px) {
      .page-guide-track-pricing .container .estimate-title {
        margin: 0; } }
  .page-guide-track-pricing .container .estimate-features {
    margin: var(--margin-xsmall) 0;
    font-size: var(--fontSize-small);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: var(--margin-xsmall); }
    @media (max-width: 768px) {
      .page-guide-track-pricing .container .estimate-features {
        font-size: var(--fontSize-xsmall); } }
    .page-guide-track-pricing .container .estimate-features li {
      list-style: none;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      gap: var(--margin-xsmall);
      color: var(--color-darkGray); }
      .page-guide-track-pricing .container .estimate-features li:not(:last-of-type)::after {
        content: "/";
        color: var(--color-dullGray); }
  .page-guide-track-pricing .container #comparison {
    background: var(--bgColor-beige);
    padding: var(--margin-xlarge) 0; }
    @media (max-width: 768px) {
      .page-guide-track-pricing .container #comparison {
        padding: var(--margin-large) 0; } }
  @media (min-width: 769px) {
    .page-guide-track-pricing .container #comparison-wrapper {
      max-width: 1024px;
      margin: 0 auto;
      padding: 0 var(--margin-large); } }
  .page-guide-track-pricing .container .comparison-services {
    --gap: 30px;
    margin: calc(var(--margin-xlarge) + var(--margin-large)) 0 var(--margin-large);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    @media (max-width: 559px) {
      .page-guide-track-pricing .container .comparison-services {
        --gap: 20px; } }
    @media (max-width: 350px) {
      .page-guide-track-pricing .container .comparison-services {
        --gap: 16px; } }
    @media (max-width: 768px) {
      .page-guide-track-pricing .container .comparison-services {
        margin: var(--margin-large) 0 0;
        overflow-y: hidden;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        -ms-scroll-snap-type: x mandatory;
            scroll-snap-type: x mandatory; }
        .page-guide-track-pricing .container .comparison-services::-webkit-scrollbar {
          display: none; } }
  .page-guide-track-pricing .container .comparison-service {
    scroll-snap-align: start; }
    @media (max-width: 768px) {
      .page-guide-track-pricing .container .comparison-service {
        padding: 0 0 0 var(--gap); }
        .page-guide-track-pricing .container .comparison-service:last-of-type {
          padding: 0 var(--gap); } }
    .page-guide-track-pricing .container .comparison-service.ibuki {
      -webkit-box-flex: 2;
          -ms-flex: 2;
              flex: 2;
      position: relative; }
      .page-guide-track-pricing .container .comparison-service.ibuki::before {
        content: "";
        display: block;
        background: var(--bgColor-white);
        position: absolute;
        top: calc(var(--margin-large) * -1);
        left: 50%;
        height: calc(100% + var(--margin-large) * 2);
        width: 50%;
        border-radius: var(--borderRadius-large);
        border: 2px solid var(--borderColor-black);
        -webkit-box-sizing: border-box;
                box-sizing: border-box; }
        @media (max-width: 768px) {
          .page-guide-track-pricing .container .comparison-service.ibuki::before {
            display: none; } }
      .page-guide-track-pricing .container .comparison-service.ibuki .comparison-serviceInner {
        position: relative;
        z-index: 1; }
        @media (max-width: 768px) {
          .page-guide-track-pricing .container .comparison-service.ibuki .comparison-serviceInner {
            padding: calc(var(--margin-medium) - 2px) var(--margin-medium);
            border: 2px solid var(--borderColor-black); } }
      .page-guide-track-pricing .container .comparison-service.ibuki .comparison-serviceName {
        margin: 0 0 0 50%;
        font-size: var(--fontSize-medium);
        font-weight: var(--fontWeight-bold); }
        @media (max-width: 768px) {
          .page-guide-track-pricing .container .comparison-service.ibuki .comparison-serviceName {
            margin: 0; } }
      .page-guide-track-pricing .container .comparison-service.ibuki .comparison-row {
        display: grid;
        grid-template-columns: 50% auto 1fr;
        grid-template-areas: "title value description";
        padding: 0 var(--margin-large) 0 0;
        -webkit-column-gap: var(--margin-small);
           -moz-column-gap: var(--margin-small);
                column-gap: var(--margin-small);
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; }
        @media (max-width: 768px) {
          .page-guide-track-pricing .container .comparison-service.ibuki .comparison-row {
            grid-template-columns: 1fr auto;
            grid-template-rows: auto 1fr;
            grid-template-areas: "title value" "description value";
            padding: 0;
            -webkit-box-align: start;
                -ms-flex-align: start;
                    align-items: flex-start; } }
      .page-guide-track-pricing .container .comparison-service.ibuki .comparison-rowValue {
        padding: 0 0 0 var(--margin-large); }
        @media (max-width: 768px) {
          .page-guide-track-pricing .container .comparison-service.ibuki .comparison-rowValue {
            padding: 0; } }
    .page-guide-track-pricing .container .comparison-service.other {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1; }
      .page-guide-track-pricing .container .comparison-service.other .comparison-sectionTitle span {
        opacity: 0; }
        @media (max-width: 768px) {
          .page-guide-track-pricing .container .comparison-service.other .comparison-sectionTitle span {
            opacity: 1; } }
      .page-guide-track-pricing .container .comparison-service.other .comparison-row {
        display: grid;
        grid-template-columns: auto 1fr;
        grid-template-areas: "value description";
        padding: 0 var(--margin-large);
        -webkit-column-gap: var(--margin-small);
           -moz-column-gap: var(--margin-small);
                column-gap: var(--margin-small);
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; }
        @media (max-width: 768px) {
          .page-guide-track-pricing .container .comparison-service.other .comparison-row {
            grid-template-columns: 1fr auto;
            grid-template-rows: auto 1fr;
            grid-template-areas: "title value" "description value";
            padding: 0;
            -webkit-box-align: start;
                -ms-flex-align: start;
                    align-items: flex-start; } }
      .page-guide-track-pricing .container .comparison-service.other .comparison-rowTitle {
        display: none; }
        @media (max-width: 768px) {
          .page-guide-track-pricing .container .comparison-service.other .comparison-rowTitle {
            display: block; } }
  .page-guide-track-pricing .container .comparison-serviceInner {
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
    @media (max-width: 768px) {
      .page-guide-track-pricing .container .comparison-serviceInner {
        padding: var(--margin-medium);
        background: var(--bgColor-white);
        width: calc(100vw - var(--gap) * 4);
        border-radius: var(--borderRadius-large); } }
  .page-guide-track-pricing .container .comparison-serviceName {
    height: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-left: var(--margin-large);
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    @media (max-width: 768px) {
      .page-guide-track-pricing .container .comparison-serviceName {
        padding-left: 0; } }
    .page-guide-track-pricing .container .comparison-serviceName span {
      display: inline-block; }
  .page-guide-track-pricing .container .comparison-section {
    margin: var(--margin-large) 0 0; }
  .page-guide-track-pricing .container .comparison-sectionTitle {
    font-size: var(--fontSize-medium);
    font-weight: var(--fontWeight-bold);
    padding: 0 0 var(--margin-small);
    border-bottom: 1px solid var(--borderColor-default); }
    @media (max-width: 768px) {
      .page-guide-track-pricing .container .comparison-sectionTitle {
        margin: 0 0 var(--margin-large);
        font-size: var(--fontSize-default); } }
  .page-guide-track-pricing .container .comparison-row {
    height: 75px; }
  .page-guide-track-pricing .container .comparison-rowTitle {
    grid-area: title; }
  .page-guide-track-pricing .container .comparison-rowValue {
    grid-area: value;
    width: 26px;
    text-align: center; }
  .page-guide-track-pricing .container .comparison-rowDescription {
    grid-area: description;
    color: var(--color-darkGray);
    font-size: var(--fontSize-small); }
    @media (max-width: 768px) {
      .page-guide-track-pricing .container .comparison-rowDescription {
        font-size: var(--fontSize-xsmall); } }
  .page-guide-track-pricing .container .c-trackFaq {
    margin: var(--margin-xlarge) 0 0; }
    @media (max-width: 768px) {
      .page-guide-track-pricing .container .c-trackFaq {
        margin: var(--margin-large) 0; } }
  .page-guide-track-pricing .container #featureSection {
    padding: 0 0 calc(var(--margin-xlarge) + var(--margin-large)); }
    @media (max-width: 768px) {
      .page-guide-track-pricing .container #featureSection {
        padding: 0 0 var(--margin-large); } }
    .page-guide-track-pricing .container #featureSection > section {
      margin: var(--margin-xlarge) 0 0; }
      .page-guide-track-pricing .container #featureSection > section > section {
        margin: var(--margin-xlarge) 0 0; }
        .page-guide-track-pricing .container #featureSection > section > section:first-of-type {
          margin: var(--margin-large) 0 0; }
  .page-guide-track-pricing .container .featureSection-featureTitle {
    font-size: var(--fontSize-medium);
    line-height: var(--lineHeight-small); }
    @media (max-width: 768px) {
      .page-guide-track-pricing .container .featureSection-featureTitle {
        font-size: var(--fontSize-default);
        text-align: center; } }
  .page-guide-track-pricing .container .featureSection-featureList {
    margin: var(--margin-medium) 0 0;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: var(--margin-medium); }
    .page-guide-track-pricing .container .featureSection-featureList li {
      background: var(--color-ibukiLightGray);
      padding: var(--margin-medium);
      border-radius: var(--borderRadius-large); }
      .page-guide-track-pricing .container .featureSection-featureList li div:first-child {
        text-align: center;
        font-size: var(--fontSize-medium);
        font-weight: var(--fontWeight-bold); }
        @media (max-width: 768px) {
          .page-guide-track-pricing .container .featureSection-featureList li div:first-child {
            font-size: var(--fontSize-default); } }
        .page-guide-track-pricing .container .featureSection-featureList li div:first-child span {
          display: inline-block; }
      .page-guide-track-pricing .container .featureSection-featureList li div:last-child {
        margin: var(--margin-medium) 0 0;
        text-align: justify;
        font-size: var(--fontSize-small); }

.page-guide-track-pricing #globalFooter {
  margin: 0; }

.page-guide-track-customers .container {
  font-size: var(--fontSize-default);
  line-height: var(--lineHeight-default); }
  .page-guide-track-customers .container section {
    padding: calc(var(--margin-xlarge) + var(--margin-large)) 0; }
    @media (max-width: 768px) {
      .page-guide-track-customers .container section {
        padding: var(--margin-large) 0; } }

.page-guide-track-customers #firstView {
  color: var(--color-ibukiLightGray);
  background: var(--color-ibukiDarkGray) url(/images/bg-contour-black.svg) left bottom;
  background-size: 800px 800px;
  padding: 20px 0 0; }
  .page-guide-track-customers #firstView .wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-top: 90px;
    padding-bottom: 50px; }
    @media (max-width: 768px) {
      .page-guide-track-customers #firstView .wrapper {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        padding-top: 70px;
        padding-bottom: 20px; } }

.page-guide-track-customers #firstView-text {
  width: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  @media (max-width: 768px) {
    .page-guide-track-customers #firstView-text {
      width: 100%; } }
  .page-guide-track-customers #firstView-text h1 {
    font-size: 40px;
    line-height: var(--lineHeight-small); }
    @media (max-width: 850px) {
      .page-guide-track-customers #firstView-text h1 {
        font-size: 32px; } }
    @media (max-width: 768px) {
      .page-guide-track-customers #firstView-text h1 {
        font-size: 24px; } }
    .page-guide-track-customers #firstView-text h1 span {
      display: inline-block; }
      @media (max-width: 768px) {
        .page-guide-track-customers #firstView-text h1 span {
          display: inline; } }
  .page-guide-track-customers #firstView-text p {
    margin: var(--margin-medium) 0 0;
    font-size: var(--fontSize-large); }
    @media (max-width: 850px) {
      .page-guide-track-customers #firstView-text p {
        font-size: var(--fontSize-medium); } }
    @media (max-width: 768px) {
      .page-guide-track-customers #firstView-text p {
        font-size: var(--fontSize-default);
        margin: var(--margin-default) 0 0; } }

.page-guide-track-customers #customers {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: var(--margin-medium);
  text-align: center;
  margin: var(--margin-xlarge) auto; }
  @media (max-width: 559px) {
    .page-guide-track-customers #customers {
      margin: var(--margin-large) auto;
      grid-template-columns: repeat(2, 1fr); } }
  .page-guide-track-customers #customers a {
    display: block; }
  .page-guide-track-customers #customers img {
    vertical-align: middle;
    max-height: 75px;
    width: auto; }
    @media (max-width: 768px) {
      .page-guide-track-customers #customers img {
        max-height: 65px; } }
    @media (max-width: 400px) {
      .page-guide-track-customers #customers img {
        max-height: 55px; } }

@media (max-width: 768px) {
  .page-guide-track-customers #cases {
    margin: var(--margin-large) 0 0; } }

.page-guide-track-customers #cases ul {
  margin: var(--margin-large) 0 0; }

.page-guide-track-customers #cases li {
  border-top: 1px solid var(--borderColor-default);
  padding: var(--margin-large) 0;
  display: grid;
  gap: var(--margin-default) var(--margin-large);
  grid-template-columns: 200px 1fr 150px;
  grid-template-areas: "thumb title links" "thumb body links"; }
  @media (max-width: 768px) {
    .page-guide-track-customers #cases li {
      grid-template-columns: 200px 1fr;
      grid-template-areas: "thumb title" "thumb body" "thumb links"; } }
  @media (max-width: 559px) {
    .page-guide-track-customers #cases li {
      border: none;
      padding: 0 0 var(--margin-xlarge);
      gap: var(--margin-default);
      grid-template-columns: 1fr;
      grid-template-areas: "thumb" "title" "body" "links"; } }
  .page-guide-track-customers #cases li:last-child {
    border-bottom: 1px solid var(--borderColor-default); }
    @media (max-width: 559px) {
      .page-guide-track-customers #cases li:last-child {
        border: none; } }

.page-guide-track-customers #cases .cases-thumb {
  grid-area: thumb; }
  .page-guide-track-customers #cases .cases-thumb a {
    display: block; }
  .page-guide-track-customers #cases .cases-thumb img {
    max-width: 100%; }

.page-guide-track-customers #cases .cases-title {
  grid-area: title;
  font-size: var(--fontSize-large); }
  @media (max-width: 559px) {
    .page-guide-track-customers #cases .cases-title {
      font-size: var(--fontSize-medium);
      padding: var(--margin-xsmall) 0 0; } }
  .page-guide-track-customers #cases .cases-title a {
    color: var(--color-black); }
    .page-guide-track-customers #cases .cases-title a:hover, .page-guide-track-customers #cases .cases-title a:focus {
      color: var(--color-primary); }
  .page-guide-track-customers #cases .cases-title svg {
    -webkit-transform: translateY(0.07em);
            transform: translateY(0.07em);
    margin: 0 0 0 var(--margin-xsmall); }

.page-guide-track-customers #cases .cases-body {
  grid-area: body;
  line-height: var(--lineHeight-large); }
  @media (max-width: 768px) {
    .page-guide-track-customers #cases .cases-body {
      margin: 0 0 var(--margin-small); } }
  .page-guide-track-customers #cases .cases-body p + p {
    margin: var(--margin-default) 0 0; }

.page-guide-track-customers #cases .cases-links {
  grid-area: links;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: var(--margin-small); }
  @media (max-width: 768px) {
    .page-guide-track-customers #cases .cases-links {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row; } }
  @media (max-width: 768px) {
    .page-guide-track-customers #cases .cases-links a {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1; } }

.page-guide-track-customers #globalFooter {
  margin: 0; }

.page-shop-gps-index .wrapper {
  max-width: 700px;
  margin-top: 40px; }
  @media (max-width: 559px) {
    .page-shop-gps-index .wrapper {
      margin-top: 20px; } }

.page-shop-gps-index .container section header {
  text-align: center; }
  .page-shop-gps-index .container section header h1 {
    font-size: var(--fontSize-xxxlarge); }
    @media (max-width: 559px) {
      .page-shop-gps-index .container section header h1 {
        font-size: var(--fontSize-large); } }
  .page-shop-gps-index .container section header h2 {
    font-weight: normal;
    font-size: var(--fontSize-default); }

.page-shop-gps-index #shopDetail {
  border-collapse: collapse;
  margin: var(--margin-large) 0 0; }
  @media (max-width: 559px) {
    .page-shop-gps-index #shopDetail {
      display: block; } }
  @media (max-width: 559px) {
    .page-shop-gps-index #shopDetail tbody,
    .page-shop-gps-index #shopDetail tr,
    .page-shop-gps-index #shopDetail th,
    .page-shop-gps-index #shopDetail td {
      display: block; } }
  @media (max-width: 559px) {
    .page-shop-gps-index #shopDetail tr {
      margin: var(--margin-default) 0 0; } }
  .page-shop-gps-index #shopDetail th,
  .page-shop-gps-index #shopDetail td {
    vertical-align: top;
    border-top: 1px solid var(--borderColor-default);
    padding: var(--margin-default) 0; }
  .page-shop-gps-index #shopDetail th {
    font-weight: normal;
    text-align: left;
    width: 150px; }
    @media (max-width: 559px) {
      .page-shop-gps-index #shopDetail th {
        width: 100%;
        border: none;
        padding: 0 0 var(--margin-small) 0;
        font-weight: bold; } }
  .page-shop-gps-index #shopDetail .component-weakText {
    margin: var(--margin-xsmall) 0 0; }
  .page-shop-gps-index #shopDetail .itemRow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: var(--margin-default) 0;
    border-top: 1px solid var(--borderColor-default); }
    .page-shop-gps-index #shopDetail .itemRow:first-child {
      border: none;
      padding-top: 0; }
    .page-shop-gps-index #shopDetail .itemRow:last-child {
      padding-bottom: 0; }
  .page-shop-gps-index #shopDetail .itemRow-title {
    width: 150px; }
    @media (max-width: 559px) {
      .page-shop-gps-index #shopDetail .itemRow-title {
        width: 100px; } }
    .page-shop-gps-index #shopDetail .itemRow-title + div {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      min-width: 0; }
      .page-shop-gps-index #shopDetail .itemRow-title + div > div {
        line-height: var(--lineHeight-small);
        margin: var(--margin-xsmall) 0; }
  .page-shop-gps-index #shopDetail .itemRow-image {
    width: calc(150px - var(--margin-default));
    height: calc(150px - var(--margin-default));
    background: var(--color-lightGray);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 10px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
    @media (max-width: 559px) {
      .page-shop-gps-index #shopDetail .itemRow-image {
        width: calc(100px - var(--margin-default));
        height: calc(100px - var(--margin-default)); } }
    .page-shop-gps-index #shopDetail .itemRow-image img {
      max-width: 100%;
      max-height: 100%; }
  .page-shop-gps-index #shopDetail .itemRow-qty::after {
    content: "";
    display: inline-block;
    width: 0.8em;
    height: 0;
    border-top: 1px solid var(--color-dullGray);
    margin: 0 0.2em 0 0.4em;
    vertical-align: middle;
    -webkit-transform: translateY(-1px);
            transform: translateY(-1px); }

.page-shop-gps-index #shopClose p + p {
  margin: var(--margin-small) 0 0; }

.page-shop-gps-index #loginRequired {
  text-align: center; }
  .page-shop-gps-index #loginRequired p + p {
    margin: var(--margin-small) 0 0; }
  .page-shop-gps-index #loginRequired p span {
    display: inline-block;
    text-align: left; }

.page-shop-gps-index #shopOpen {
  text-align: center; }
  .page-shop-gps-index #shopOpen span {
    display: inline-block;
    text-align: left; }

.page-shop-gps-index #about-size {
  margin: 0; }
  .page-shop-gps-index #about-size div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .page-shop-gps-index #about-size div + div {
      margin: var(--margin-xsmall) 0 0; }
  .page-shop-gps-index #about-size dt,
  .page-shop-gps-index #about-size dd {
    margin: 0; }
  .page-shop-gps-index #about-size dt {
    width: 5em; }
  .page-shop-gps-index #about-size dd {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0; }

.page-shop-gps-index #form-additional_input {
  padding: 8px;
  border-radius: 3px;
  font-size: var(--fontSize-default);
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  @media (max-width: 559px) {
    .page-shop-gps-index #form-additional_input {
      width: 100%; } }

.page-shop-gps-index #form-additional_input-description {
  margin: var(--margin-default) 0 0; }

.page-shop-gps-index #cautions ul {
  padding: 0 0 0 1em; }

.page-shop-gps-index #cautions li {
  list-style: disc;
  margin: 0 0 0.5em; }

.page-shop-gps-index #cautions input[type="checkbox"] {
  margin: 0 var(--margin-xsmall) 0 0; }

.page-shop-gps-index #button {
  border-top: 1px solid var(--borderColor-default);
  padding: var(--margin-large) 0 0;
  text-align: center; }
  @media (max-width: 559px) {
    .page-shop-gps-index #button {
      margin: var(--margin-default) 0 0; } }

.page-shop-complete .wrapper {
  max-width: 700px; }

.page-shop-complete .container section header {
  text-align: center; }
  .page-shop-complete .container section header h1 {
    font-size: var(--fontSize-xxxlarge); }
    @media (max-width: 559px) {
      .page-shop-complete .container section header h1 {
        font-size: var(--fontSize-large); } }

.page-shop-complete .container section p {
  text-align: center; }
  .page-shop-complete .container section p + p {
    margin: var(--margin-small) 0 0; }
  .page-shop-complete .container section p span {
    display: inline-block;
    text-align: left; }

#page-feedback .modal-title {
  margin-bottom: 0; }

#page-feedback #feedback-responseTime {
  color: var(--color-darkGray);
  font-size: var(--fontSize-small);
  text-align: center;
  margin: 0 0 20px; }

#page-feedback .notes {
  padding: 12px 16px 12px 2em; }
  #page-feedback .notes li {
    list-style: disc; }
