@charset "UTF-8";
/*----------------------------------------------------
基本設定
----------------------------------------------------*/
/*----------------------------------------------------
共通スタイル
----------------------------------------------------*/
* {
  margin: 0;
  padding: 0;
  font-size: 100%;
  font-style: normal;
}

body {
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
  padding: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 13px;
  letter-spacing: 0.05em;
  color: #000;
  /* 751- */
}
@media all and (min-width: 751px) {
  body {
    font-size: 15px;
  }
}

p {
  line-height: 1.8;
  /* 751- */
}
@media all and (min-width: 751px) {
  p {
    line-height: 1.8;
  }
}

*, *::before, *::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

a {
  color: #000;
  text-decoration: none;
}

a img {
  border: none;
}

figure {
  margin: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

ul, li, dl, dt, dd {
  margin: 0;
  padding: 0;
  list-style: none;
}

input, label, select, textarea {
  vertical-align: middle;
}

/*----------------------------------------------------
inner
----------------------------------------------------*/
/* ベース */
.inner {
  padding: 0 20px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .inner {
    padding: 0 40px;
    max-width: 1280px;
    margin: 0 auto;
  }
}

/*----------------------------------------------------
表示 非表示
----------------------------------------------------*/
.only_sp {
  display: block;
  /* 751- */
}
@media all and (min-width: 751px) {
  .only_sp {
    display: none;
  }
}

.only_pc {
  display: none;
  /* 751- */
}
@media all and (min-width: 751px) {
  .only_pc {
    display: block;
  }
}

/*----------------------------------------------------
ヒーローセクション
----------------------------------------------------*/
.hero {
  position: relative;
  width: 100%;
  background: #eae7df;
  overflow: hidden;
}

.hero picture,
.hero img {
  display: block;
  width: 100%;
  height: auto;
}

.hero_catch {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  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: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  padding-top: 35px;
  pointer-events: none;
  z-index: 2;
  text-transform: uppercase;
  /* 751- */
}
@media all and (min-width: 751px) {
  .hero_catch {
    padding-top: 64px;
  }
}

.hero_catch_sub {
  color: #b72c1a;
  font-weight: bold;
  font-size: 17px;
  letter-spacing: 0.08em;
  margin-bottom: 10px;
  text-align: center;
  font-family: "Oswald", sans-serif;
  /* 751- */
}
@media all and (min-width: 751px) {
  .hero_catch_sub {
    font-size: 40px;
    margin-bottom: 24px;
  }
}

.hero_catch_main {
  color: #fff;
  font-size: 42px;
  font-weight: 100;
  letter-spacing: 0.05em;
  text-align: center;
  line-height: 1.1;
  margin-bottom: 12px;
  position: relative;
  font-family: "Anton", sans-serif;
  /* 751- */
}
@media all and (min-width: 751px) {
  .hero_catch_main {
    font-size: 100px;
    margin-bottom: 24px;
  }
}
.hero_catch_main::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 3px;
  background: #fff;
  left: 0;
  bottom: -10px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .hero_catch_main::after {
    height: 5px;
  }
}

.hero_line {
  width: 90%;
  max-width: 700px;
  border: none;
  border-top: 5px solid #fff;
  margin: 0 auto;
  /* 751- */
}
@media all and (min-width: 751px) {
  .hero_line {
    border-top-width: 6px;
  }
}

/*----------------------------------------------------
セクション共通
----------------------------------------------------*/
.touchspeeddome {
  overflow: unset;
}
.touchspeeddome a:hover {
  text-decoration: none;
}
.touchspeeddome section {
  padding: 70px 0;
  /* 751- */
}
@media all and (min-width: 751px) {
  .touchspeeddome section {
    padding: 120px 0;
  }
}
.touchspeeddome img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

.flag_ttl {
  position: relative;
  display: inline-block;
  color: #000;
  font-weight: 700;
  letter-spacing: 0.02em;
  font-size: 13px;
  margin-bottom: 18px;
  text-indent: 25px;
  line-height: 2;
  /* 751- */
}
@media all and (min-width: 751px) {
  .flag_ttl {
    font-size: 18px;
  }
}
.flag_ttl::before {
  content: "";
  position: absolute;
  background-image: url("/client_info/COLEMANJAPAN/view/userweb/images/touchspeeddome/icon_flag.svg");
  width: 17px;
  height: 17px;
  background-size: contain;
  left: 0;
  top: 3px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .flag_ttl::before {
    width: 23px;
    height: 23px;
    top: 7px;
    left: -5px;
  }
}

.sec_ttl_head {
  text-align: center;
  margin-bottom: 30px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .sec_ttl_head {
    margin-bottom: 40px;
  }
}

.sec_ttl {
  font-weight: 500;
  letter-spacing: 0.075em;
  font-size: 40px;
  line-height: 1.1;
  margin-bottom: 20px;
  font-family: "Oswald", sans-serif;
  /* 751- */
}
@media all and (min-width: 751px) {
  .sec_ttl {
    font-size: 72px;
    margin-bottom: 14px;
  }
}

/*--- section下のメニュー ---*/
.sec_menu {
  margin-top: 70px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .sec_menu {
    margin-top: 100px;
  }
}

.secMenu {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  gap: 18px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .secMenu {
    -ms-grid-columns: 1fr 28px 1fr;
    grid-template-columns: 1fr 1fr;
    gap: 28px;
  }
}

.secMenu_card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  border-radius: 12px;
  overflow: hidden;
  min-height: 112px;
  position: relative;
}
.secMenu_card .secMenu_img {
  width: 100px;
  background: #fff;
  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;
  overflow: hidden;
  /* 751- */
}
@media all and (min-width: 751px) {
  .secMenu_card .secMenu_img {
    width: 170px;
  }
}
.secMenu_card .secMenu_img img {
  display: block;
  width: 100%;
  height: auto;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.secMenu_card .secMenu_icon {
  width: 72px;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 72px;
          flex: 0 0 72px;
  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;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.secMenu_card .secMenu_icon::before {
  content: "";
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.95);
  /* 751- */
}
@media all and (min-width: 751px) {
  .secMenu_card .secMenu_icon::before {
    width: 26px;
    height: 26px;
  }
}
.secMenu_card .secMenu_icon::after {
  content: "";
  position: absolute;
  width: 6px;
  height: 6px;
  border-right: 2px solid #595959;
  border-bottom: 2px solid #595959;
  left: 48%;
  -webkit-transform: translateX(-50%) rotate(-45deg);
          transform: translateX(-50%) rotate(-45deg);
  /* 751- */
}
@media all and (min-width: 751px) {
  .secMenu_card .secMenu_icon::after {
    width: 8px;
    height: 8px;
  }
}
.secMenu_card .secMenu_icon.red::after {
  border-right: 2px solid #B7312C;
  border-bottom: 2px solid #B7312C;
}
.secMenu_card:hover .secMenu_img img {
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}
.secMenu_card:hover .secMenu_icon {
  right: -10px;
}

.secMenu_body {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  padding: 18px 0 18px 20px;
  color: #fff;
  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;
  gap: 2px;
}

.secMenu_card--red .secMenu_body {
  background: #b72c1a;
}

.secMenu_card--gray .secMenu_body {
  background: #575757;
}

.secMenu_note {
  font-size: 11px;
  font-weight: 700;
  opacity: 0.9;
  /* 751- */
}
@media all and (min-width: 751px) {
  .secMenu_note {
    font-size: 15px;
  }
}

.secMenu_ttl {
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.02em;
  /* 751- */
}
@media all and (min-width: 751px) {
  .secMenu_ttl {
    font-size: 18px;
  }
}

.secMenu_sub {
  font-size: 10px;
  font-weight: 100;
  opacity: 0.9;
  /* 751- */
}
@media all and (min-width: 751px) {
  .secMenu_sub {
    font-size: 13px;
  }
}

/*----------------------------------------------------
アニメーション
----------------------------------------------------*/
.js_scroll {
  position: relative;
  left: -10px;
  -webkit-transition: all 0.6s;
  transition: all 0.6s;
  opacity: 0;
}
.js_scroll.scroll_active {
  left: 0;
  opacity: 1;
}

/*----------------------------------------------------
リード（ヒーロー下）
----------------------------------------------------*/
.lead {
  background: #f2efe6;
}

.lead_title {
  color: #b72c1a;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.8;
  text-align: center;
  letter-spacing: 0.04em;
  margin: 0 auto 30px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .lead_title {
    font-size: 36px;
    margin-bottom: 22px;
  }
}

.lead_desc {
  text-align: center;
  color: #000;
  letter-spacing: 0.02em;
  margin: 0 auto 50px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .lead_desc {
    margin-bottom: 80px;
  }
}
.lead_desc strong {
  font-weight: 700;
}

.leadNav {
  max-width: 1100px;
  margin: 0 auto;
}

.leadNav_grid {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 10px 1fr;
  grid-template-columns: repeat(2, 1fr);
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
  row-gap: 0;
  /* 751- */
}
@media all and (min-width: 751px) {
  .leadNav_grid {
    -webkit-column-gap: 44px;
       -moz-column-gap: 44px;
            column-gap: 44px;
    -ms-grid-columns: 1fr 44px 1fr 44px 1fr;
    grid-template-columns: repeat(3, 1fr);
  }
}

.leadNav_item {
  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: 10px 0px;
  border-bottom: 1px solid #d9d2c7;
  font-weight: 700;
  letter-spacing: 0.02em;
  font-size: 12px;
  margin-bottom: 10px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .leadNav_item {
    padding: 16px 6px;
    font-size: 18px;
    gap: 14px;
    margin-bottom: 20px;
    border-bottom: 2px solid #d9d2c7;
  }
}

.leadNav_item::after {
  content: "";
  width: 8px;
  height: 8px;
  border-right: 2px solid #b72c1a;
  border-bottom: 2px solid #b72c1a;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  /* 751- */
}
@media all and (min-width: 751px) {
  .leadNav_item::after {
    width: 10px;
    height: 10px;
    border-right: 3px solid #b72c1a;
    border-bottom: 3px solid #b72c1a;
  }
}

/*----------------------------------------------------
ABOUT
----------------------------------------------------*/
.about {
  background: #9F332F;
}

.about_head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 18px;
  margin-bottom: 18px;
  /* -750 */
}
@media all and (max-width: 750px) {
  .about_head {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 12px;
  }
}
.about_head {
  /* 751- */
}
@media all and (min-width: 751px) {
  .about_head {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.about_label {
  color: #fff;
  font-weight: 500;
  letter-spacing: 0.08em;
  font-size: 24px;
  line-height: 1;
  font-family: "Oswald", sans-serif;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  /* 751- */
}
@media all and (min-width: 751px) {
  .about_label {
    font-size: 44px;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    margin-right: 20px;
  }
}

.about_title {
  color: #fff;
  font-weight: 100;
  letter-spacing: 0.02em;
  line-height: 1.05;
  font-size: 42px;
  margin: 0;
  font-family: "Anton", sans-serif;
  /* -750 */
}
@media all and (max-width: 750px) {
  .about_title {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    margin: 10px 0;
  }
}
.about_title {
  /* 751- */
}
@media all and (min-width: 751px) {
  .about_title {
    font-size: 110px;
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    width: 100%;
    margin-top: 18px;
  }
}

.about_topic {
  color: #fff;
  font-weight: 500;
  letter-spacing: 0.02em;
  margin: 0;
  /* -750 */
}
@media all and (max-width: 750px) {
  .about_topic {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}
.about_topic {
  /* 751- */
}
@media all and (min-width: 751px) {
  .about_topic {
    padding-left: 10px;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    border-bottom: 2px solid rgba(255, 255, 255, 0.2);
  }
}
.about_topic.flag_ttl::before {
  -webkit-filter: brightness(0) invert(1);
          filter: brightness(0) invert(1);
}

.about_desc {
  font-weight: 100;
  color: #fff;
  /* 751- */
}
@media all and (min-width: 751px) {
  .about_desc {
    font-size: 17px;
  }
}
.about_desc strong {
  font-weight: 700;
  border-bottom: 2px solid #FFE629;
}

.about_slider {
  margin-top: 50px;
  position: relative;
}

.about_slider .splide__track {
  padding: 10px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .about_slider .splide__track {
    width: calc(100% + 80px);
    margin-left: -40px;
    margin-right: -40px;
  }
}

.about_slider .splide__slide img {
  display: block;
  width: 100%;
  height: auto;
}

.about_slider .splide__pagination {
  position: absolute;
  top: -20px;
  right: 0;
  bottom: auto;
  left: auto;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 0;
  /* 751- */
}
@media all and (min-width: 751px) {
  .about_slider .splide__pagination {
    top: -30px;
  }
}

.about_slider .splide__pagination__page {
  width: 7px;
  height: 7px;
  border-radius: 0;
  background: #fff;
  opacity: 1;
  margin: 0 0 0 8px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .about_slider .splide__pagination__page {
    width: 10px;
    height: 10px;
  }
}

.about_slider .splide__pagination__page.is-active {
  background: #FFE629;
  -webkit-transform: none;
          transform: none;
}

/*----------------------------------------------------
FEATURES
----------------------------------------------------*/
.features {
  background: #f2efe6;
}

.features_intro {
  max-width: 980px;
  margin: 0 auto;
  padding: 20px 0;
  /* 751- */
}
@media all and (min-width: 751px) {
  .features_intro {
    padding: 40px 0;
  }
}

.features_items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 50px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .features_items {
    gap: 60px;
  }
}

.featureCard {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .featureCard {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 80px;
  }
}

.featureCard--reverse {
  /* 751- */
}
@media all and (min-width: 751px) {
  .featureCard--reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}

.featureCard_body {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 24%;
          flex: 1 1 24%;
}

.featureCard_tag {
  color: #b72c1a;
  font-weight: 600;
  letter-spacing: 0.04em;
  font-size: 14px;
  margin-bottom: 10px;
  text-align: center;
  /* 751- */
}
@media all and (min-width: 751px) {
  .featureCard_tag {
    font-size: 16px;
  }
}

.featureCard_ttl {
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 2;
  font-size: 20px;
  margin-bottom: 12px;
  text-align: center;
  /* 751- */
}
@media all and (min-width: 751px) {
  .featureCard_ttl {
    font-size: 28px;
    margin: 20px 0;
  }
}

.featureCard_txt {
  /* 751- */
}
@media all and (min-width: 751px) {
  .featureCard_txt {
    font-size: 15px;
  }
}

.featureCard_media {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 54%;
          flex: 1 1 54%;
  position: relative;
  background: #D16B67;
  border-radius: 6px;
  overflow: hidden;
  /* -750 */
}
@media all and (max-width: 750px) {
  .featureCard_media {
    padding-top: 4px;
  }
}
.featureCard_media {
  /* 751- */
}
@media all and (min-width: 751px) {
  .featureCard_media {
    border-radius: 10px;
    padding-left: 10px;
  }
}
.featureCard_media::before {
  content: "";
  position: absolute;
  background: #D16B67;
  /* -750 */
}
@media all and (max-width: 750px) {
  .featureCard_media::before {
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
  }
}
.featureCard_media::before {
  /* 751- */
}
@media all and (min-width: 751px) {
  .featureCard_media::before {
    top: 0;
    left: 0;
    width: 8px;
    height: 100%;
  }
}

.featureCard--reverse .featureCard_media {
  /* -750 */
}
@media all and (max-width: 750px) {
  .featureCard--reverse .featureCard_media {
    padding-top: 4px;
    padding-left: 0;
    padding-right: 0;
  }
}
.featureCard--reverse .featureCard_media {
  /* -750 */
}
@media all and (max-width: 750px) {
  .featureCard--reverse .featureCard_media {
    padding-top: 4px;
  }
}
.featureCard--reverse .featureCard_media {
  /* 751- */
}
@media all and (min-width: 751px) {
  .featureCard--reverse .featureCard_media {
    padding-left: 0;
    padding-right: 10px;
  }
}
.featureCard--reverse .featureCard_media::before {
  /* -750 */
}
@media all and (max-width: 750px) {
  .featureCard--reverse .featureCard_media::before {
    top: 0;
    left: 0;
    right: auto;
    width: 100%;
    height: 4px;
  }
}
.featureCard--reverse .featureCard_media::before {
  /* 751- */
}
@media all and (min-width: 751px) {
  .featureCard--reverse .featureCard_media::before {
    left: auto;
    right: 0;
  }
}

.featureCard_media picture,
.featureCard_media img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 6px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .featureCard_media picture,
  .featureCard_media img {
    border-radius: 10px;
  }
}

/*----------------------------------------------------
BEST FOR YOU
----------------------------------------------------*/
.best {
  background: #EFE7D9;
}

.best_intro {
  max-width: 1000px;
  margin: 20px auto 80px;
  text-align: left;
  /* 751- */
}
@media all and (min-width: 751px) {
  .best_intro {
    margin: 40px auto 80px;
  }
}

.best_grid {
  /* 751- */
}
@media all and (min-width: 751px) {
  .best_grid {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
  }
}

.bestStaff {
  /* 751- */
}
@media all and (min-width: 751px) {
  .bestStaff {
    -ms-flex-item-align: start;
        -ms-grid-row-align: start;
        align-self: start;
    position: sticky;
    top: 20px;
    width: 300px;
    margin-left: 50px;
    top: 140px;
  }
}
.bestStaff {
  /* -750 */
}
@media all and (max-width: 750px) {
  .bestStaff {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    gap: 20px;
    margin-bottom: 60px;
  }
}

.bestStaff_photo {
  position: relative;
  background: #fff;
  margin-bottom: 16px;
  /* -750 */
}
@media all and (max-width: 750px) {
  .bestStaff_photo {
    width: 200px;
  }
}

.bestStaff_photo::before {
  content: "";
  position: absolute;
  top: -26px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100px;
  height: 50px;
  background: url("/client_info/COLEMANJAPAN/view/userweb/images/touchspeeddome/tape.svg") no-repeat center/contain;
  /* 751- */
}
@media all and (min-width: 751px) {
  .bestStaff_photo::before {
    top: -16px;
    width: 144px;
    height: 43px;
  }
}

.bestStaff_photo img {
  display: block;
  width: 100%;
  height: auto;
}

.bestStaff_cap {
  position: absolute;
  left: 7px;
  bottom: 10px;
  color: #b72c1a;
  font-weight: 500;
  font-size: 12px;
  font-family: "Oswald", sans-serif;
  /* 751- */
}
@media all and (min-width: 751px) {
  .bestStaff_cap {
    font-size: 15px;
    left: 18px;
    bottom: 16px;
  }
}

.bestStaff_nameEn {
  position: absolute;
  bottom: 3px;
  width: 110px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .bestStaff_nameEn {
    right: 10px;
    bottom: 93px;
    width: 190px;
    left: unset;
  }
}
.bestStaff_nameEn {
  /* -750 */
}
@media all and (max-width: 750px) {
  .bestStaff_nameEn {
    left: 80px;
  }
}

.bestStaff_nameImg {
  display: block;
  width: 100%;
  max-width: 260px;
  height: auto;
  /* 751- */
}
@media all and (min-width: 751px) {
  .bestStaff_nameImg {
    max-width: 300px;
  }
}

.bestStaff_name_block {
  /* -750 */
}
@media all and (max-width: 750px) {
  .bestStaff_name_block {
    margin-bottom: 20px;
  }
}

.bestStaff_role {
  font-weight: 700;
  font-size: 12px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .bestStaff_role {
    font-size: 16px;
    margin-top: 40px;
  }
}

.bestStaff_name_wrap {
  /* 751- */
}
@media all and (min-width: 751px) {
  .bestStaff_name_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 20px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.bestStaff_name {
  font-weight: 500;
  font-size: 21px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .bestStaff_name {
    font-size: 28px;
  }
}
.bestStaff_name {
  /* -750 */
}
@media all and (max-width: 750px) {
  .bestStaff_name {
    margin: 5px 0;
  }
}

.bestStaff_badge {
  display: inline-block;
  font-size: 8px;
  padding: 3px 5px;
  border-radius: 4px;
  background: rgba(29, 33, 32, 0.08);
  color: #988773;
  /* 751- */
}
@media all and (min-width: 751px) {
  .bestStaff_badge {
    font-size: 12px;
    padding: 6px 10px;
  }
}

.bestList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 700px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 50px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .bestList {
    gap: 32px;
  }
}

.bestItem {
  /* 751- */
}
@media all and (min-width: 751px) {
  .bestItem {
    padding-bottom: 32px;
  }
}

.bestItem:last-child {
  padding-bottom: 0;
  border-bottom: none;
}

.bestItem_wrap {
  margin-bottom: 20px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .bestItem_wrap {
    margin-bottom: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.bestItem_body {
  /* 751- */
}
@media all and (min-width: 751px) {
  .bestItem_body {
    width: 50%;
  }
}

.bestItem_txt {
  /* 751- */
}
@media all and (min-width: 751px) {
  .bestItem_txt {
    width: 50%;
  }
}

.bestItem_kicker {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  color: #b72c1a;
  font-weight: 500;
  letter-spacing: 0.08em;
  font-size: 15px;
  margin-bottom: 10px;
  font-family: "Oswald", sans-serif;
  /* 751- */
}
@media all and (min-width: 751px) {
  .bestItem_kicker {
    font-size: 20px;
  }
}

.bestItem_kicker::after {
  content: "";
  width: 47px;
  height: 14px;
  background: url("/client_info/COLEMANJAPAN/view/userweb/images/touchspeeddome/arrow_red.svg") no-repeat center/contain;
  /* 751- */
}
@media all and (min-width: 751px) {
  .bestItem_kicker::after {
    width: 94px;
    height: 28px;
  }
}

.bestItem_ttl {
  font-weight: 700;
  font-size: 17px;
  line-height: 2;
  /* 751- */
}
@media all and (min-width: 751px) {
  .bestItem_ttl {
    font-size: 24px;
  }
}
.bestItem_ttl {
  /* -750 */
}
@media all and (max-width: 750px) {
  .bestItem_ttl {
    margin-bottom: 20px;
  }
}

.bestItem_media {
  position: relative;
}

.bestItem_media img,
.bestItem_media video {
  display: block;
  width: 100%;
  height: auto;
}

.bestItem_video {
  background: #000;
}

.bestItem_movieControls {
  position: absolute;
  top: 10px;
  right: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  z-index: 2;
}

.bestItem_movieText,
.bestItem_play,
.bestItem_stop {
  position: relative;
  z-index: 1;
}

.bestItem_movieText {
  font-size: 0.78rem;
}

.bestItem_play,
.bestItem_stop {
  display: block;
  padding: 0;
  background: transparent;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}

.bestItem_play {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 2px solid rgba(255, 255, 255, 0.85);
}

.bestItem_play::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-40%, -50%);
          transform: translate(-40%, -50%);
  width: 0;
  height: 0;
  border-left: 12px solid rgba(255, 255, 255, 0.92);
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
}

.bestItem_stop {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 2px solid rgba(255, 255, 255, 0.85);
}

.bestItem_stop::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 14px;
  height: 14px;
  background: rgba(255, 255, 255, 0.92);
}

.bestItem_media--movie.is-playing .bestItem_play {
  opacity: 0;
  pointer-events: none;
}

.best_menu {
  margin-top: 44px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .best_menu {
    margin-top: 100px;
  }
}

/*----------------------------------------------------
SPEC
----------------------------------------------------*/
.spec {
  background: #f2efe6;
}

.spec_title {
  font-weight: 500;
  letter-spacing: 0.12em;
  font-size: 40px;
  line-height: 1.1;
  margin-bottom: 10px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .spec_title {
    font-size: 72px;
    margin-bottom: 14px;
  }
}

.spec_hero {
  margin-bottom: 24px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .spec_hero {
    margin-bottom: 60px;
  }
}

.spec_hero picture {
  display: block;
}

.spec_hero img {
  display: block;
  width: 100%;
  height: auto;
}

.spec_content {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  padding-bottom: 40px;
  border-bottom: 1px solid #E0DBCF;
  /* 751- */
}
@media all and (min-width: 751px) {
  .spec_content {
    -ms-grid-columns: 1.05fr 0.95fr;
    grid-template-columns: 1.05fr 0.95fr;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
    padding-bottom: 80px;
  }
}

.spec_diagrams {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 18px;
  max-width: 640px;
}

.spec_info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 22px;
  padding: 40px 0 0;
  /* 751- */
}
@media all and (min-width: 751px) {
  .spec_info {
    padding: 70px;
    gap: 40px;
  }
}

.specInfo_ttl {
  font-weight: 700;
  font-size: 15px;
  letter-spacing: 0.04em;
  margin-bottom: 10px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .specInfo_ttl {
    font-size: 18px;
  }
}

.specItems {
  padding: 40px 0;
  /* 751- */
}
@media all and (min-width: 751px) {
  .specItems {
    padding: 80px 0;
  }
}

.specItems_title {
  font-weight: 700;
  font-size: 17px;
  padding-bottom: 30px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .specItems_title {
    font-size: 24px;
    padding-bottom: 60px;
  }
}

.specItems_slider {
  margin-right: -20px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .specItems_slider {
    margin-right: calc(50% - 50vw);
  }
}
.specItems_slider .splide__list {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  /* -750 */
}
@media all and (max-width: 750px) {
  .specItems_slider .splide__list {
    gap: 10px;
  }
}
.specItems_slider .splide__slide {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.specItems_slider .splide__slide > a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

.no-flex-gap .specItems_slider .splide__slide:not(:last-child) {
  margin-right: 14px;
}
.no-flex-gap .specItems_slider {
  /* 751- */
}
@media all and (min-width: 751px) {
  .no-flex-gap .specItems_slider .splide__slide:not(:last-child) {
    margin-right: 18px;
  }
}

.specItems_slider .splide_track {
  padding: 2px 0;
}

.specItems_list {
  margin: 0;
  padding: 0;
}

.specItem {
  position: relative;
  width: 250px;
  background: #fff;
  border-radius: 10px;
  margin-top: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  /* 751- */
}
@media all and (min-width: 751px) {
  .specItem {
    width: auto;
  }
}

.specItem_badge {
  position: absolute;
  top: -24px;
  left: 10px;
  background: rgba(29, 33, 32, 0.8);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  padding: 4px 8px 10px;
  border-radius: 10px 10px 0px 0px;
  z-index: -1;
}

.specItem_img {
  padding: 15px 15px 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;
  /* 751- */
}
@media all and (min-width: 751px) {
  .specItem_img {
    padding: 20px 20px 0px;
  }
}

.specItem_img img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.specText {
  padding: 15px;
  font-weight: bold;
  font-size: 13px;
  -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-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  /* 751- */
}
@media all and (min-width: 751px) {
  .specText {
    padding: 20px;
    font-size: 17px;
  }
}

.specItem_price {
  padding: 10px 0;
}

.specItem_desc {
  font-size: 11px;
  line-height: 1.7;
  font-weight: normal;
  /* 751- */
}
@media all and (min-width: 751px) {
  .specItem_desc {
    font-size: 13px;
  }
}

.spec_menu {
  margin-top: 34px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .spec_menu {
    margin-top: 44px;
  }
}

/*----------------------------------------------------
HOW TO MOVIE
----------------------------------------------------*/
.setup {
  background: #f2efe6;
  padding: 0px 0 20px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .setup {
    padding: 20px 0 40px;
  }
}

.setup_movie {
  position: relative;
  width: 100%;
  max-width: 900px;
  aspect-ratio: 16/9;
  margin: 0 auto;
}
.setup_movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}

/*----------------------------------------------------
REVIEW / FAQ
----------------------------------------------------*/
.touchspeeddome section .review {
  background: #f2efe6;
  padding: 0px 0 0;
  /* 751- */
}
@media all and (min-width: 751px) {
  .touchspeeddome section .review {
    padding: 0 0 0;
  }
}

.review_head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px;
  margin-bottom: 22px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .review_head {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 40px;
  }
}

.review_title {
  text-align: center;
  /* 751- */
}
@media all and (min-width: 751px) {
  .review_title {
    text-align: left;
  }
}

.review_topic {
  margin-bottom: 0;
}

.review_slider {
  position: relative;
  margin-right: -20px;
  padding-top: 10px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .review_slider {
    margin-right: calc(50% - 50vw);
  }
}
.review_slider .splide__arrows {
  display: none;
}
.review_slider .splide__arrow {
  display: none;
}

.review_slider .splide_track {
  padding: 8px 0 0;
}

.review_arrows {
  position: static;
  -webkit-transform: none;
          transform: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  /* 751- */
}
@media all and (min-width: 751px) {
  .review_arrows {
    gap: 12px;
  }
}
.review_arrows {
  /* -750 */
}
@media all and (max-width: 750px) {
  .review_arrows {
    display: none;
  }
}

.review_arrows .splide__arrow {
  position: static;
  -webkit-transform: none;
          transform: none;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid #E0DBCF;
  opacity: 1;
  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;
  /* 751- */
}
@media all and (min-width: 751px) {
  .review_arrows .splide__arrow {
    width: 80px;
    height: 80px;
  }
}
.review_arrows .splide__arrow::before {
  content: "";
  width: 12px;
  height: 12px;
  border-right: 2px solid rgba(29, 33, 32, 0.8);
  border-bottom: 2px solid rgba(29, 33, 32, 0.8);
}
.review_arrows .splide__arrow.splide__arrow--prev::before {
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
  margin-left: 2px;
}
.review_arrows .splide__arrow.splide__arrow--next::before {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  margin-right: 2px;
}

.review_arrows .splide__arrow:disabled {
  opacity: 0.35;
  background: rgba(255, 255, 255, 0.5);
}
.review_arrows .splide__arrow:disabled::before {
  border-color: rgba(29, 33, 32, 0.4);
}

.review_arrows .splide__arrow svg {
  display: none;
}

.reviewList {
  margin: 0;
  padding: 0;
}

.reviewCard {
  background: #fff;
  padding: 18px 18px 16px;
  min-height: 240px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .reviewCard {
    min-height: 260px;
  }
}

.reviewCard_meta {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 44px 12px 1fr;
  grid-template-columns: 44px 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}

.reviewCard_avatar {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(29, 33, 32, 0.12);
}

.reviewCard_stars {
  color: #b72c1a;
  font-weight: 500;
  letter-spacing: 0.06em;
  font-size: 0.78rem;
  line-height: 1;
  margin-bottom: 6px;
}

.reviewCard_by {
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.2;
  opacity: 0.9;
}

.reviewCard_ttl {
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.6;
  margin-bottom: 10px;
}

.reviewCard_txt {
  font-size: 0.84rem;
  line-height: 1.9;
  margin-bottom: 12px;
}

.reviewCard_more {
  display: inline-block;
  color: #b72c1a;
  font-weight: 700;
  font-size: 0.82rem;
}

/* FAQ */
.faq_grid {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  gap: 28px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .faq_grid {
    -ms-grid-columns: 320px 46px 1fr;
    grid-template-columns: 320px 1fr;
    gap: 46px;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
  }
}

.faq_head {
  /* 751- */
}
@media all and (min-width: 751px) {
  .faq_head {
    text-align: left;
  }
}
.faq_head {
  /* -750 */
}
@media all and (max-width: 750px) {
  .faq_head {
    margin-bottom: 0px;
  }
}

.faq_title {
  /* -750 */
}
@media all and (max-width: 750px) {
  .faq_title {
    text-align: center;
  }
}

.faq_list {
  border-top: 1px solid rgba(29, 33, 32, 0.14);
}

.faqItem {
  border-bottom: 1px solid rgba(29, 33, 32, 0.14);
  padding: 20px 0 20px 20px;
}

.faqItem_q {
  list-style: none;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 28px 5px 1fr 5px 28px;
  grid-template-columns: 28px 1fr 28px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5px;
  cursor: pointer;
  /* 751- */
}
@media all and (min-width: 751px) {
  .faqItem_q {
    gap: 14px;
  }
}

.faqItem_q::-webkit-details-marker {
  display: none;
}

.faqItem_qMark {
  font-weight: 500;
  font-size: 20px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .faqItem_qMark {
    font-size: 26px;
  }
}

.faqItem_qText {
  font-weight: 700;
}

.faqItem_q::after {
  content: "";
  width: 24px;
  height: 24px;
  -ms-grid-column-align: end;
      justify-self: end;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(29, 33, 32, 0.7)), to(rgba(29, 33, 32, 0.7))) center/14px 2px no-repeat, -webkit-gradient(linear, left top, left bottom, from(rgba(29, 33, 32, 0.7)), to(rgba(29, 33, 32, 0.7))) center/2px 14px no-repeat;
  background: linear-gradient(rgba(29, 33, 32, 0.7), rgba(29, 33, 32, 0.7)) center/14px 2px no-repeat, linear-gradient(rgba(29, 33, 32, 0.7), rgba(29, 33, 32, 0.7)) center/2px 14px no-repeat;
}

.faqItem[open] .faqItem_q::after {
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(29, 33, 32, 0.7)), to(rgba(29, 33, 32, 0.7))) center/14px 2px no-repeat;
  background: linear-gradient(rgba(29, 33, 32, 0.7), rgba(29, 33, 32, 0.7)) center/14px 2px no-repeat;
}

.faqItem_a {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 28px 5px 1fr;
  grid-template-columns: 28px 1fr;
  gap: 5px;
  padding: 0 40px 0 0;
  height: 0;
  overflow: hidden;
  -webkit-transition: height 0.3s ease-out, opacity 0.3s ease-out;
  transition: height 0.3s ease-out, opacity 0.3s ease-out;
  opacity: 0;
  /* 751- */
}
@media all and (min-width: 751px) {
  .faqItem_a {
    gap: 14px;
  }
}

.faqItem[open] .faqItem_a {
  padding: 20px 40px 0 0;
  opacity: 1;
}

.faqItem_aMark {
  font-weight: 500;
  font-size: 20px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .faqItem_aMark {
    font-size: 26px;
  }
}

.faqItem_aText {
  font-size: 12px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .faqItem_aText {
    font-size: 14px;
  }
}