@charset "UTF-8";

/* ▼▼▼ TU用ユニークスタイル ▼▼▼ */
@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@700;900&display=swap');

::selection {
	background: #d0dcf4;
}
::-moz-selection {
	background: #d0dcf4;
}

/* common */
.tu_wrap {
  font-size: 16px;
  line-height: 1.8;
}
.tu_wrap .show_pc {
  display: none;
}
.tu_wrap .img_wrap > img.show_pc {
  display: none;
}
.tu_wrap p {
  margin: 1em 0;
}
.tu_wrap figcaption {
  font-size: 13rem;
  line-height: 1.6;
}
.tu_wrap .w50_sp,
.tu_wrap .w75_sp {
  display: block;
  margin: 0 auto;
}
.tu_wrap .w50_sp {
  width: 50%;
}
.tu_wrap .w75_sp {
  width: 75%;
}
.tu_wrap .txt_note {
  font-size: .75em;
  line-height: 1.6;
  letter-spacing: normal;
}

.tu_wrap .l_col2 {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.tu_wrap .icon_blank > a {
  position: relative;
}
.tu_wrap .icon_blank > a::after {
  position: absolute;
  top: 50%;
  right: 1.5em;
  transform: translateY(-50%);
  display: inline-block;
  font-family: 'Font Awesome 6 Free';
  font-weight: 900;
  font-size: .8em;
  margin-left: .5em;
  content: '\f35d';
}
.tu_wrap .btn_contact .icon_blank::after,
.tu_wrap .recommend_btn figcaption.icon_blank::after {
  display: inline-block;
  font-family: 'Font Awesome 6 Free';
  font-weight: 900;
  font-size: .8em;
  margin-left: .5em;
  content: '\f35d';
}
.tu_wrap .btn_l > a {
  display: flex;
  justify-content: center;
  flex-direction: column;
  padding: .8em 1.25em;
  font-size: 16rem;
  line-height: 1.2;
  color: #fff;
  font-weight: 700;
  background-color: #222;
  min-height: 65rem;
  border: solid 1px #999;
}
.tu_wrap .btn_l.icon_blank > a {
  padding: .8em 3em .8em 1.25em;
}
.tu_wrap .btn_l > a::before {
  position: absolute;
  bottom: 0;
  right: 0;
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 65rem .5em 0 0;
  border-color: transparent #ff0013 transparent transparent;
}
.tu_wrap .btn_l > a:hover {
  color: #ffdc00;
}

.tu_wrap .bg_white {
  background-color: #fff;
}
.tu_wrap .bg_white_sp {
  background-color: #fff;
}
.tu_wrap .txt_read {
  margin-top: 1.5em;
}

/* headline */
.tu_wrap .txt_h1,
.tu_wrap .txt_h2,
.tu_wrap .txt_h3,
.tu_wrap .txt_h4,
.tu_wrap .txt_h5,
.tu_wrap .txt_h6,
.tu_wrap .comment_wrap figcaption,
.tu_wrap .product_list .txt_product_name,
.tu_wrap .timing_list dt,
.tu_wrap .point_box dt {
  font-family: 'Zen Maru Gothic', serif;
  font-weight: 700;
}
.tu_wrap .txt_h2,
.tu_wrap .txt_h3,
.tu_wrap .txt_h4,
.tu_wrap .txt_h5,
.tu_wrap .txt_h6 {
  margin: 2em 0 1em 0;
  text-align: center;
  line-height: 1.5;
  color: var(--colorText1);
}
.tu_wrap .txt_h1 {
  position: absolute;
  top: 12vw;
  left: 6%;
  width: 92%;
  font-size: 11vw;
  line-height: 1.2;
  color: #fff;
  text-shadow:
    0px 0px 4px #324537,
    0px 0px 8px #324537,
    0px 0px 12px #324537;
}
.tu_wrap .txt_h1 .txt_note {
  display: block;
  margin-bottom: .25em;
  font-size: .4em;
  text-shadow:
    0px 0px 2px #324537,
    0px 0px 4px #324537,
    0px 0px 6px #324537,
    0px 0px 8px #324537,
    0px 0px 10px #324537;
}
.tu_wrap .h2_wrap {
  overflow: hidden;
}
.tu_wrap .txt_h2 {
  font-size: 26px;
}
.tu_wrap .txt_h3 {
  font-size: 24px;
}
.tu_wrap .txt_h3 + p {
  margin-top: 0;
}
.tu_wrap .txt_h4 {
  font-size: 20px;
}
.tu_wrap .txt_h5 {
  font-size: 18px;
}
.tu_wrap .txt_h6 {
  font-size: 16px;
}
.tu_wrap .txt_h1 .txt_note,
.tu_wrap .txt_h2 .txt_note,
.tu_wrap .txt_h3 .txt_note,
.tu_wrap .txt_h4 .txt_note,
.tu_wrap .txt_h5 .txt_note,
.tu_wrap .txt_h6 .txt_note {
  display: block;
}

/* header */
.tu_wrap .tu_header > .tu_header_inner {
  overflow: hidden;
  position: relative;
  z-index: 0;
}
.tu_wrap .tu_header > .tu_header_inner::before {
  content: '';
  display: block;
  padding-top: 137%;
}
.tu_wrap .tu_header > .tu_header_inner > .bg_img_wrap {
  position: absolute;
  top: 0;
  left: -40%;
  z-index: -1;
  margin: 0;
  width: 220%;
}
.tu_wrap .tu_header > .tu_header_inner > .bg_img_wrap > img {
  display: block;
  max-width: none;
  width: 100%;
}
.tu_wrap .tu_header > .tu_header_inner > .img_wrap {
  position: absolute;
  right: -9vw;
  bottom: 0;
  width: 40%;
}
.tu_wrap .tu_header > .tu_header_inner > .img_wrap figcaption {
  position: absolute;
  top: -4vw;
  left: -50%;
  transform: scale(-1,1);
  min-width: 32vw;
  padding: 2.2em 1.5em 3.8em 0em;
  font-family: 'Zen Maru Gothic', serif;
  font-weight: 700;
  font-size: 3vw;
  line-height: 1.3;
  white-space: nowrap;
  background: url(../img/balloon.svg) no-repeat;
  background-size: contain;
  background-position: center center;
}
.tu_wrap .tu_header > .tu_header_inner > .img_wrap figcaption span {
  display: block;
  transform: scale(-1,1);
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list {
  position: absolute;
  top: 58vw;
  left: 6%;
  margin: 0;
  list-style: none;
  counter-reset: header_point_num 0;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 24vw;
  height: 24vw;
  font-family: 'Zen Maru Gothic', serif;
  font-weight: 700;
  font-size: 5vw;
  line-height: 1.3;
  text-align: center;
  border: solid 2px var(--colorText1);
  border-radius: 1000px;
  background-color: #FFF699;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li:nth-child(1) {
  top: 0;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li:nth-child(2) {
  top: -7vw;
  left: 20vw;
  letter-spacing: -.1em;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li:nth-child(3) {
  top: 5vw;
  left: 38vw;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li::before,
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li::after {
  position: absolute;
  z-index: 1;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li::before {
  content: '';
  display: block;
  width: 4vw;
  height: 4vw;
  background-color: var(--colorText1);
  border-radius: 1000px;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li::before {
  width: 10vw;
  height: 10vw;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li:nth-child(1)::before {
  top: -3vw;
  left: -4vw;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li:nth-child(2)::before {
  top: -1vw;
  right: -6vw;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li:nth-child(3)::before {
  top: 16vw;
  left: -5vw;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li::after {
  counter-increment: header_point_num 1;
  content: counter(header_point_num) '';
  font-size: 8vw;
  line-height: 1;
  font-family: 'Zen Maru Gothic', serif;
  font-weight: 900;
  color: #fff;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li:nth-child(1)::after {
  top: -2.5vw;
  left: -.75vw;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li:nth-child(2)::after {
  top: -.75vw;
  right: -2.5vw;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li:nth-child(3)::after {
  top: 16.25vw;
  left: -1.75vw;
}

/* credit */
.tu_wrap .credit_wrap {
  margin-right: auto;
  margin-left: auto;
  margin-top: 1em;
  padding: 0;
  width: calc(100% - var(--sidePaddingSp1) * 2);
  font-size: 10px;
  line-height: 1.8;
}
.tu_wrap .credit_wrap .credit_list {
  display: flex;
  flex-wrap: wrap;
}
.tu_wrap .credit_item,
.tu_wrap .credit_item_pr {
  white-space: nowrap;
}
.tu_wrap .credit_item_pr {
  margin-left: 1em;
}
.tu_wrap .credit_item {
  white-space: nowrap;
  font-weight: 700;
  opacity: .75;
}
.tu_wrap .credit_item:not(:nth-last-of-type(2)):not(:nth-last-of-type(3)):after {
  content: '、';
}
.tu_wrap .credit_item > dt,
.tu_wrap .credit_item > dd,
.tu_wrap .credit_item_pr > dt,
.tu_wrap .credit_item_pr > dd {
  display: inline-block;
}
.tu_wrap .credit_item > dt::after {
  display: inline-block;
  content: '=';
}

/* conversion_btn */
.tu_wrap .btn_wrap {
  margin-top: 2.5em;
  text-align: center;
}
.tu_wrap .conversion_btn > a {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1em 2em .5em;
  font-weight: 700;
  color: var(--colorText1);
  text-align: center;
  color: #fff;
  border-radius: 8px;
}
.tu_wrap .conversion_btn > a > span::after {
  display: inline-block;
  font-family: 'Font Awesome 6 Free';
  font-weight: 900;
  font-size: .8em;
  margin-left: .5em;
  content: '\f35d';
}
.tu_wrap #mre .conversion_btn > a {
  flex-direction: column;
  background-color: #00124d;
}
.tu_wrap #mre .conversion_btn > a > img {
  margin-bottom: .25em;
  width: 50%;
}
.tu_wrap #backup .conversion_btn > a {
  padding-bottom: 1em;
  background-color: #d1161b;
}
.tu_wrap #backup .conversion_btn > a > img {
  margin-right: 1em;
  width: 20%;
}
.tu_wrap #climbing_plan .conversion_btn > a {
  flex-direction: column;
  color:  #129144;
  border: solid 2px #129144;
}
.tu_wrap #climbing_plan .conversion_btn > a > img {
  margin-bottom: .25em;
  width: 50%;
}

/* product_list */
.tu_wrap .comment_wrap {
  border-bottom: solid 1px #ccc;
}
.tu_wrap .comment_wrap .img_wrap {
  display: flex;
  align-items: center;
  position: relative;
  z-index: 1;
}
.tu_wrap .comment_wrap .img_wrap img {
  overflow: hidden;
  width: 37.5%;
  border-radius: 1000px;
}
.tu_wrap .comment_wrap .img_wrap figcaption {
  margin-left: 1em;
  text-align: center;
}
.tu_wrap .comment_wrap .txt_wrap {
  margin-top: -2.75em;
  padding-top: 2.5em;
  border-top: solid 1px #ccc;
  position: relative;
  z-index: 0;
}
.tu_wrap .comment_wrap .txt_wrap::before {
  position: absolute;
  top: -1px;
  left: 0;
  content: '';
  display: block;
  width: 18.75%;
  height: 1px;
  background-color: #fff;
}

/* anchor */
.tu_wrap #anchor_area {
  margin-top: 4em;
  padding-bottom: 2em;
  background-color: #f0f0f0;
}
.tu_wrap #anchor_area .headline_wrap {
  text-align: center;
}
.tu_wrap #anchor_area .headline_wrap .txt_h5 {
  margin-top: 1.5em;
  display: inline-block;
  margin-bottom: 2.5em;
  position: relative;
}
.tu_wrap #anchor_area .txt_h5::before,
.tu_wrap #anchor_area .txt_h5::after {
  position: absolute;
  bottom: -.25em;
  content: '';
  display: inline-block;
  width: 2px;
  height: 1.5em;
  background-color: var(--colorText1);
  border-radius: 1000px;
}
.tu_wrap #anchor_area .txt_h5::before {
  left: -1em;
  transform: rotate(-35deg);
}
.tu_wrap #anchor_area .txt_h5::after {
  right: -1em;
  transform: rotate(35deg);
}
.tu_wrap .anchor_list {
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  list-style: none;
  counter-reset: number 0;
}
.tu_wrap .anchor_list li {
  width: 32%;
  font-family: 'Zen Maru Gothic', serif;
  font-weight: 700;
  font-size: 18px;
  line-height: 1.3;
  text-align: center;
  position: relative;
  z-index: 0;
}
.tu_wrap .anchor_list li::before,
.tu_wrap .anchor_list li::after {
  position: absolute;
  z-index: 1;
  bottom: 1em;
  transform: translateY(-50%);
  content: '';
  display: block;
  width: 3px;
  height: 10px;
  background-color: var(--colorText1);
  border-radius: 1000px;
}
.tu_wrap .anchor_list li::before {
  left: calc(50% + 1px);
  transform: rotate(45deg);
}
.tu_wrap .anchor_list li::after {
  left: calc(50% - 1px);
  transform: translateX(-100%) rotate(-45deg);
}
.tu_wrap .anchor_list li a {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1.5em 1em 2em;
  height: 100%;
  border: solid 2px var(--colorText1);
  border-radius: 8px;
  background-color: #FFF699;
}
.tu_wrap .anchor_list li a span::before,
.tu_wrap .anchor_list li a span::after {
  position: absolute;
  left: 50%;
  z-index: 1;
}
.tu_wrap .anchor_list li a span::before {
  top: 0;
  transform: translate(-50%,-50%);
  display: block;
  content: '';
  width: 2.5em;
  height: 2.5em;
  border-radius: 1000px;
  background-color: var(--colorText1);
}
.tu_wrap .anchor_list li a span::after {
  top: 0;
  transform: translate(-50%,-55%);
  counter-increment: number 1;
  content: counter(number) '';
  font-size: 1.6em;
  line-height: 1;
  font-family: 'Zen Maru Gothic', serif;
  font-weight: 900;
  color: #fff;
}

/* fixed_btn */
.tu_wrap .fixed_btn_wrap {
  display: none;
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 10000;
  width: 100%;
}
.tu_wrap .fixed_btn_wrap .anchor_list {
  padding: 2vw;
  background-color: #FFF699;
  box-shadow: 0px -8px 10px 0px rgba(0, 0, 0, 0.1);
}
.tu_wrap .fixed_btn_wrap .anchor_list li {
  width: 32.5%;
  font-size: 12px;
}
.tu_wrap .fixed_btn_wrap .anchor_list li:nth-child(2) {
  letter-spacing: -.1em;
}
.tu_wrap .fixed_btn_wrap .anchor_list li::before,
.tu_wrap .fixed_btn_wrap .anchor_list li::after {
  display: none;
}
.tu_wrap .fixed_btn_wrap .anchor_list li a {
  padding: 1.5em 0 1.5em 2em;
  background-color: #fff;
}
.tu_wrap .fixed_btn_wrap .anchor_list li a span {
  display: block;
  position: relative;
  z-index: 0;
}
.tu_wrap .fixed_btn_wrap .anchor_list li a span::before,
.tu_wrap .fixed_btn_wrap .anchor_list li a span::after {
  top: 50%;
}
.tu_wrap .fixed_btn_wrap .anchor_list li a span::before {
  left: -2em;
  transform: translateY(-50%);
  width: 1.75em;
  height: 1.75em;
}
.tu_wrap .fixed_btn_wrap .anchor_list li a span::after {
  left: -1.1em;
  transform: translateY(-55%);
  font-size: 1.3em;
}

/* profile_box */
.tu_wrap .profile_box {
  margin-top: 2em;
  padding: 1.5em;
  border-radius: 8px;
  background-color: #f0f0f0;
}
.tu_wrap .profile_box .txt_h6 {
  margin: 0 0 .5em 0;
  font-size: 16px;
  text-align: left;
}
.tu_wrap .profile_box p {
  margin: .25em 0 0 0;
  font-size: 15px;
  line-height: 1.6;
}
.tu_wrap .profile_box .txt_ruby {
  display: inline-block;
  padding-top: .5em;
  letter-spacing: .05em;
  position: relative;
}
.tu_wrap .profile_box .txt_rt {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  font-size: .5em;
  letter-spacing: normal;
  white-space: nowrap;
}

/* contents_list */
.tu_wrap .contents_list {
  list-style: none;
  counter-reset: contents_num 0;
}
.tu_wrap .contents_list > li {
  margin: 2em 0;
}
.tu_wrap .contents_list > li:first-child {
  margin-top: 1.5em;
}
.tu_wrap .contents_list > li h2 {
  padding: 1.75em 0 .5em 0;
  font-size: 32px;
  border-top: solid 2px var(--colorText1);
  position: relative;
}
.tu_wrap .contents_list > li h2::before,
.tu_wrap .contents_list > li h2::after {
  position: absolute;
  left: 50%;
  z-index: 1;
}
.tu_wrap .contents_list > li h2::before {
  top: 0;
  transform: translate(-50%,-50%);
  display: block;
  content: '';
  width: 1.75em;
  height: 1.75em;
  border-radius: 1000px;
  background-color: var(--colorText1);
}
.tu_wrap .contents_list > li h2::after {
  top: 0;
  transform: translate(-50%,-55%);
  counter-increment: contents_num 1;
  content: counter(contents_num) '';
  font-size: 1.4em;
  line-height: 1;
  font-family: 'Zen Maru Gothic', serif;
  font-weight: 900;
  color: #fff;
}

/* point_box */
.tu_wrap .point_box {
  margin-bottom: 2em;
  padding: 1em 1em .5em 1em;
  border: solid 2px var(--colorText1);
  border-radius: 8px;
  background-color: #FFF699;
}
.tu_wrap .point_box .txt_h3 {
  position: relative;
  margin-top: .5em;
  font-size: 28px;
  font-weight: 900;
}
.tu_wrap .point_box .txt_h3 .txt_balloon {
  position: absolute;
  top: -3.5em;
  right: -1.5em;
  display: block;
  min-width: 128px;
  padding: 1.4em 1em 2.8em;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.3;
  white-space: nowrap;
  background: url(../img/balloon.svg) no-repeat;
  background-size: contain;
  background-position: center center;
}
.tu_wrap .point_box dl > div {
  padding: 1em 0;
  border-top: solid 1px #ccc;
}
.tu_wrap .point_box dl > div dt {
  padding-bottom: .25em;
  font-size: 18px;
  line-height: 1.4;
}

/* timing_list */
.tu_wrap .timing_list > div + div {
  margin: 4em 0 0 0;
}
.tu_wrap .timing_list dt {
  font-size: 20px;
  position: relative;
  z-index: 0;
}
.tu_wrap .timing_list dt::before {
  position: absolute;
  top: 50%;
  left: 0;
  z-index: -1;
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background-color: #ccc;
}
.tu_wrap .timing_list dt .txt_marker {
  padding: .25em .5em;
  background-color: #FFF699;
}
.tu_wrap .timing_list dd .circle_num {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  transform: translateY(-8%);
  margin: 0 .25em;
  width: 1.6em;
  height: 1.6em;
  font-size: .75em;
  line-height: 1;
  border: solid 1px var(--colorText1);
  border-radius: 1000px;
  background-color: #FFF699;
}

/* product_list */
.tu_wrap .product_list {
  list-style: none;
  counter-reset: product_num 0;
}
.tu_wrap .product_list li {
  margin: 2em 0;
}
.tu_wrap .product_list li a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-left: .8em;
  padding: 1em 1em 1.5em;
  width: calc(100% - 1em);
  border: dotted 2px #ccc;
  border-radius: 8px;
  background-color: #fff;
  position: relative;
}
.tu_wrap .product_list li a::before {
  position: absolute;
  top: 50%;
  left: -.8em;
  transform: translateY(-50%);
  counter-increment: product_num 1;
  content: counter(product_num) '';
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 1.6em;
  height: 1.6em;
  font-family: var(--fontBase);
  font-weight: 700;
  font-size: 1em;
  line-height: 1;
  border: solid 1px var(--colorText1);
  border-radius: 1000px;
  background-color: #FFF699;
}
.tu_wrap .product_list li a .img_wrap {
  margin: 0 0 -.5em 0;
  width: 42%;
}
.tu_wrap .product_list li a .txt_product_name {
  margin: 0 0 .25em 0;
  font-size: 16px;
  line-height: 1.3;
}
.tu_wrap .product_list li a .img_wrap img {
  display: block;
  width: 100%;
}
.tu_wrap .product_list li a .img_wrap  + .txt_wrap {
  width: 54%;
}
.tu_wrap .product_list li a .txt_category {
  margin: 0;
}
.tu_wrap .product_list li a .txt_category span {
  display: inline-block;
  padding: 0 1em;
  font-weight: 700;
  font-size: 13px;
  border-radius: 1000px;
  background-color: #ddd;
}
.tu_wrap .product_list li a .dummy_btn {
  position: absolute;
  right: 1em;
  bottom: -1.2em;
  margin: 0;
  padding: 0 1.5em .2em;
  font-family: 'Zen Maru Gothic', serif;
  font-weight: 700;
  font-size: 14px;
  line-height: 2;
  color: #fff;
  border-radius: 1000px;
  background-color: #ca151d;
}
.tu_wrap .product_list li a .dummy_btn::after {
  display: inline-block;
  transform: translateY(-6%);
  font-family: 'Font Awesome 6 Free';
  font-weight: 900;
  font-size: .75em;
  margin-left: .75em;
  content: '\f35d';
}

/* #mre */
.tu_wrap #mre .txt_h2 .txt_note {
  display: block;
  font-size: .5em;
}

/* #backup */
.tu_wrap #backup .product_info .txt_h3 + .l_col2_pc {
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
}
.tu_wrap #backup .product_info .txt_h3 + .l_col2_pc > .img_wrap {
  margin-bottom: 1em;
  width: 65%;
}
.tu_wrap #backup .product_info .txt_h3 + .l_col2_pc > .l_col2.img_wrap {
  justify-content: center;
  align-items: flex-end;
}
.tu_wrap #backup .product_info .txt_h3 + .l_col2_pc > .l_col2.img_wrap > img:nth-child(1) {
  margin-right: 8%;
  width: 32%;
}
.tu_wrap #backup .product_info .txt_h3 + .l_col2_pc > .l_col2.img_wrap > img:nth-child(2) {
  width: 46%;
}
.tu_wrap #backup .product_info + .l_col2_pc > img {
  display: block;
  margin-top: 1em;
}
.tu_wrap #backup .txt_h4 > span {
  display: inline-block;
  padding-left: 1.75em;
  position: relative;
}
.tu_wrap #backup .txt_h4 > span::before,
.tu_wrap #backup .txt_h4 > span::after {
  position: absolute;
  bottom: 50%;
  left: 0;
  transform: translateY(50%);
}
.tu_wrap #backup .txt_h4 > span::before {
  content: '';
  display: block;
  width: 1.3em;
  height: 1.3em;
  background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 17.133 15.731"><path style="fill:none;stroke:%23343434;stroke-width:1.134" d="M10.988 2.373C10.316 1.209 9.456.567 8.567.567s-1.749.642-2.421 1.806l-4.964 8.598c-.672 1.165-.798 2.23-.353 3 .444.769 1.429 1.193 2.774 1.193h9.928c1.345 0 2.33-.424 2.774-1.193.445-.77.319-1.835-.353-3l-4.964-8.598z" /></svg>') no-repeat center center;
  background-size: contain;
  background-position: center bottom;
}
.tu_wrap #backup .txt_h4 > span::after {
  content: '!';
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: .15em;
  width: 1.6em;
  height: 1.4em;
  font-size: .8em;
  text-align: center;
  font-weight: 900;
  letter-spacing: normal;
}

/* #climbing_plan */
.tu_wrap #climbing_plan .product_info .txt_h3 + .l_col2_pc {
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
}
.tu_wrap #climbing_plan .product_info .txt_h3 + .l_col2_pc > .img_wrap {
  margin-bottom: 1em;
  width: 65%;
}
.tu_wrap #climbing_plan .product_info + .l_col2_pc > figure {
  display: block;
  margin-top: 1em; 
}
.tu_wrap #climbing_plan .product_info + .l_col2_pc > figure > figcaption {
  margin-top: .5em;
  text-align: center;
}

/* youtube */
.tu_wrap .recommend_mov {
  padding: 3em 0;
  background-color: #f0f0f0;
}
.tu_wrap .recommend_mov .youtube {
  width: 100%;
  aspect-ratio: 16 / 9;
  position: relative;
}
.tu_wrap .recommend_mov .player {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
}
.tu_wrap .recommend_mov .thumb {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  cursor: pointer;
}
.tu_wrap .recommend_mov .thumb::before,
.tu_wrap .recommend_mov .thumb::after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  display: block;
}
.tu_wrap .recommend_mov .thumb::before {
  content: '';
  width: 40px;
  height: 40px;
  background-color: #fff;
  opacity: 0;
}
.tu_wrap .recommend_mov .thumb::after {
  content: '\f167';
  font-family: 'Font Awesome 6 Brands';
  font-weight: 900;
  font-size: 80px;
  line-height: 1;
  color: #fff;
  transition: .5s;
  filter: drop-shadow(0px 0px 12px rgba(0,0,0,.25));
}
.tu_wrap .recommend_mov .thumb:hover::before {
  opacity: 1;
}
.tu_wrap .recommend_mov .thumb:hover::after {
  font-size: 84px;
  color: #f00;
}
.tu_wrap .recommend_mov .txt_h3 {
  margin: 0 0 .75em 0;
  padding-top: 2.5em;
  position: relative;
  z-index: 0;
}
.tu_wrap .recommend_mov .txt_h3 .txt_note.txt_balloon {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  padding: 1em 1.5em;
  font-size: .6em;
  line-height: 1;
  text-align: center;
  border: solid 2px var(--colorText1);
  border-radius: 1000px;
  background-color: #fff;
}
.tu_wrap .recommend_mov .txt_h3 .txt_note.txt_balloon::before,
.tu_wrap .recommend_mov .txt_h3 .txt_note.txt_balloon::after {
  position: absolute;
  top: 3em;
  left: calc(50% - .5em);
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
}
.tu_wrap .recommend_mov .txt_h3 .txt_note.txt_balloon::before {
  z-index: -1;
  border-width: calc(.5em + 2.5px) calc(.5em + 2.5px) 0 0;
  border-color: var(--colorText1) transparent transparent transparent;
}
.tu_wrap .recommend_mov .txt_h3 .txt_note.txt_balloon::after {
  z-index: 1;
  border-width: .5em .5em 0 0;
  border-color: #fff transparent transparent transparent;
}
.tu_wrap .recommend_mov .txt_h3 .txt_note.txt_balloon span {
  white-space: nowrap;
}
.tu_wrap .recommend_mov .txt_h3 .txt_note.txt_balloon .txt_times {
  transform: translateY(.1em);
  display: inline-block;
  width: 1.5em;
  height: 1em;
  position: relative;
}
.tu_wrap .recommend_mov .txt_h3 .txt_note.txt_balloon .txt_times::before,
.tu_wrap .recommend_mov .txt_h3 .txt_note.txt_balloon .txt_times::after {
  position: absolute;
  top: 50%;
  left: 50%;
  content: '';
  display: block;
  width: .175em;
  height: .75em;
  background-color: #999;
}
.tu_wrap .recommend_mov .txt_h3 .txt_note.txt_balloon .txt_times::before {
  transform: translate(-50%,-50%) rotate(45deg);
}
.tu_wrap .recommend_mov .txt_h3 .txt_note.txt_balloon .txt_times::after {
  transform: translate(-50%,-50%) rotate(-45deg);
}






@media (min-width: 768px) {

/* テンプレート上書き */
.bottom-area::before {
  top: -100rem;
  height: 100rem;
}
.tu_wrap .article-single-share_wrap {
  margin-bottom: 0;
}

/* ▼▼▼ TU用ユニークスタイル ▼▼▼ */
/* common */
.tu_wrap {
  font-size: 16rem;
  line-height: 2;
}
.tu_wrap .article-single-body.mt30-sp > section:first-of-type,
.tu_wrap .article-single-body.mt30-sp > section:first-of-type .txt_h2 {
  margin-top: 0;
  padding-top: 0;
}
.tu_wrap .show_sp {
  display: none;
}
.tu_wrap .show_pc {
  display: inline-block;
}
.tu_wrap .img_wrap > img.show_sp {
  display: none;
}
.tu_wrap .img_wrap > img.show_pc {
  display: block;
}
.tu_wrap .article-single-body.mt30-sp > section {
  padding: 40px 0;
}
.tu_wrap .l_frame {
  padding: 2em 8px 80px;
}
.tu_wrap .bg_white_sp {
  background-color: transparent;
}
.tu_wrap .bg_white_sp .txt_wrap {
  margin: 0 auto;
  max-width: 720px;
}
.tu_wrap .w50_sp,
.tu_wrap .w75_sp {
  margin-right: 0;
  margin-left: 0;
  width: 100%;
}
.tu_wrap .w50_pc,
.tu_wrap .w75_pc {
  margin: 0 auto;
}
.tu_wrap .w50_pc {
  width: 50%;
}
.tu_wrap .w75_pc {
  max-width: 720px;
}
.tu_wrap .max720_pc {
  margin-right: auto;
  margin-left: auto;
  max-width: 720px;
}
.tu_wrap .l_col2_pc {
  display: flex;
  justify-content: space-between;
}
.tu_wrap .l_col2_pc > .txt_wrap > p:first-child {
  margin-top: 0;
}
.tu_wrap .txt_read {
  margin: 80px auto;
  max-width: 720px;
  font-size: 18rem;
  font-weight: 700;
  text-align: center;
}

/* headline */
.tu_wrap .txt_h1 {
  top: 4vw;
  left: 16%;
  font-size: 5.5vw;
}
.tu_wrap .txt_h2 {
  padding-top: 1.5em;
  font-size: 32px;
}
.tu_wrap .txt_h3 {
  margin-top: 2em;
  font-size: 28px;
}
.tu_wrap .txt_h4 {
  margin-top: 2em;
  font-size: 24px;
}
.tu_wrap .txt_h5 {
  font-size: 20px;
  line-height: 1.4;
}

/* header */
.tu_wrap .tu_header > .tu_header_inner::before {
  padding-top: 40%;
}
.tu_wrap .tu_header > .tu_header_inner > .bg_img_wrap {
  top: auto;
  bottom: -6vw;
  left: 0;
  width: 100%;
}
.tu_wrap .tu_header > .tu_header_inner > .img_wrap {
  right: 12vw;
  width: 22%;
}
.tu_wrap .tu_header > .tu_header_inner > .img_wrap figcaption {
  top: -6vw;
  left: -36%;
  padding-right: 1.25em;
  min-width: 15vw;
  font-size: 1.5vw;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list {
  top: 25vw;
  left: 21%;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li {
  width: 10vw;
  height: 10vw;
  font-size: 2vw;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li:nth-child(1) {
  top: 0;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li:nth-child(2) {
  top: -2.5vw;
  left: 8.5vw;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li:nth-child(3) {
  top: 2vw;
  left: 16.5vw;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li::before {
  width: 4vw;
  height: 4vw;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li:nth-child(1)::before {
  top: -.5vw;
  left: -1.75vw;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li:nth-child(2)::before {
  top: -.5vw;
  right: -2vw;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li:nth-child(3)::before {
  top: 6vw;
  left: -2.25vw;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li::after {
  font-size: 3vw;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li:nth-child(1)::after {
  top: -.2vw;
  left: -.45vw;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li:nth-child(2)::after {
  top: -.3vw;
  right: -.45vw;
}
.tu_wrap .tu_header > .tu_header_inner > .header_point_list li:nth-child(3)::after {
  top: 6.3vw;
  left: -.95vw;
}

/* credit */
.tu_wrap .credit_wrap {
  width: calc(100% - 2em);
  font-size: 12rem;
}
.tu_wrap .credit_wrap .credit_list {
  justify-content: flex-end;
}
.tu_wrap .credit_item:nth-last-of-type(3):after {
  content: '、';
}

/* conversion_btn */
.tu_wrap .conversion_btn {
  display: inline-block;
  width: 560px;
}
.tu_wrap .conversion_btn > a {
  padding: 1em 2em;
  border-radius: 1000px;
}
.tu_wrap #mre .conversion_btn > a {
  flex-direction: row;
}
.tu_wrap #mre .conversion_btn > a > img {
  margin-right: 1em;
  margin-bottom: 0;
  width: 36.88%;
}
.tu_wrap #backup .conversion_btn > a {
  padding: .54em 2em;
}
.tu_wrap #backup .conversion_btn > a > img {
  margin-right: 1em;
  width: 12.65%;
}
.tu_wrap #climbing_plan .conversion_btn > a {
  flex-direction: row;
  padding: .93em 2em;
}
.tu_wrap #climbing_plan .conversion_btn > a > img {
  margin-right: 1em;
  margin-bottom: 0;
  width: 40%;
}

/* fixed_btn */
.tu_wrap .fixed_btn_wrap {
  display: none;
}
.tu_wrap .comment_wrap .txt_wrap {
  margin-top: -1.5em;
  padding-top: 1.5em;
}

/* product_list */
.tu_wrap .comment_wrap .img_wrap img {
  width: 12.5%;
}
.tu_wrap .comment_wrap .txt_wrap::before {
  display: block;
  width: 6.25%;
}

/* anchor */
.tu_wrap #anchor_area {
  padding-bottom: 3em;
}
.tu_wrap #anchor_area .headline_wrap .txt_h5 {
  margin-top: 0;
  margin-bottom: 2em;
  font-size: 24px;
}
.tu_wrap #anchor_area .anchor_list li {
  width: 31%;
  font-size: 20px;
}


/* contents_list */
.tu_wrap .contents_list > li {
  margin: 4em 0;
}
.tu_wrap .contents_list > li:first-child {
  margin-top: 4em;
}

/* point_box */
.tu_wrap .point_box {
  margin-bottom: 0;
  padding: 1em 2em 1.5em 2em;
  border: solid 2px var(--colorText1);
  border-radius: 8px;
  background-color: #FFF699;
}
.tu_wrap .point_box .txt_h3 {
  margin-top: 0;
  margin-bottom: 0;
  padding-bottom: .5em;
  font-size: 20px;
  border-bottom: solid 1px #ccc;
}
.tu_wrap .point_box .txt_h3 .txt_balloon {
  top: -5.5em;
  right: 1em;
  font-size: 20px;
}
.tu_wrap .point_box > dl {
  display: flex;
  margin-right: -1em;
  padding-top: 1.5em;
}
.tu_wrap .point_box > dl > div {
  width: calc(calc(100% + 1em) /3);
}
.tu_wrap .point_box dl > div {
  padding: 0 1em 0 0;
  border-top: none;
}
.tu_wrap .point_box dl > div:nth-child(1) {
}
.tu_wrap .point_box dl > div:nth-child(2) {
  margin-left: 1em;
}
.tu_wrap .point_box dl > div:nth-child(3) {
  margin-left: 1em;
}
.tu_wrap .point_box dl > div:not(:last-child) {
  border-right: solid 1px #ccc;
}
.tu_wrap .point_box dl > div dt {
  padding-bottom: .5em;
  font-size: 18rem;
}
.tu_wrap .point_box dl > div dd {
  font-family: 15px;
  line-height: 1.6;
}
.tu_wrap #backup .point_box dl > div dt {
  display: flex;
  justify-content: center;
  flex-direction: column;
  min-height: 3.3em;
}

/* timing_list */
.tu_wrap .timing_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.tu_wrap .timing_list > div,
.tu_wrap .timing_list > div + div {
  margin-top: 2%;
}
.tu_wrap .timing_list > div {
  padding: 1.5em 1em 0;
  width: 49%;
  background-color: #f0f0f0;
}
.tu_wrap .timing_list dt {
  font-size: 20px;
  position: relative;
  z-index: 0;
}
.tu_wrap .timing_list dt::before {
  position: absolute;
  top: 50%;
  left: 0;
  z-index: -1;
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background-color: #ccc;
}
.tu_wrap .timing_list dt .txt_marker {
  padding: 0.25em 1em;
  border-radius: 1000px;
  border: solid 1px #ccc;
}
.tu_wrap .timing_list dd .circle_num {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  transform: translateY(-8%);
  margin: 0 .25em;
  width: 1.6em;
  height: 1.6em;
  font-weight: 700;
  font-size: .75em;
  line-height: 1;
  border: solid 1px var(--colorText1);
  border-radius: 1000px;
  background-color: #FFF699;
}

/* product_list */
.tu_wrap .product_list li a .img_wrap figcaption {
  padding: .5em 1em .5em 2.5em;
  border-radius: 1000px;
  background-color: #fff;
  border: solid 1px #ccc;
}
.tu_wrap .product_list li a .img_wrap figcaption::before {
  top: 50%;
  left: .5em;
  transform: translateY(-50%);
}
.tu_wrap .product_list li a .txt_category span {
  display: inline-block;
  padding: 0 1em;
  font-weight: 700;
  font-size: 13px;
  border-radius: 1000px;
  background-color: #ddd;
}
.tu_wrap .product_list li a .dummy_btn {
  position: absolute;
  right: 1em;
  bottom: -1.2em;
  margin: 0;
  padding: 0 1.5em .2em;
  font-family: 'Zen Maru Gothic', serif;
  font-weight: 700;
  line-height: 2.2;
  color: #fff;
  border-radius: 1000px;
  background-color: #ca151d;
}
.tu_wrap .product_list li a .dummy_btn::after {
  display: inline-block;
  transform: translateY(-6%);
  font-family: 'Font Awesome 6 Free';
  font-weight: 900;
  font-size: .75em;
  margin-left: .75em;
  content: '\f35d';
}

/* #mre */
.tu_wrap #mre .txt_h2 .txt_note {
  display: block;
  font-size: .5em;
}

/* #backup */
.tu_wrap #backup .product_info .txt_h3 + .l_col2_pc {
  flex-direction: row;
  align-items: stretch;
}
.tu_wrap #backup .product_info .txt_h3 + .l_col2_pc > .txt_wrap {
  width: 56%;
}
.tu_wrap #backup .product_info .txt_h3 + .l_col2_pc > .txt_wrap p {
  margin: 0;
}
.tu_wrap #backup .product_info .txt_h3 + .l_col2_pc > .l_col2.img_wrap {
  padding: 3%;
  width: 40%;
  border: solid 1px #ccc;
}
.tu_wrap #backup .product_info .txt_h3 + .l_col2_pc > .l_col2.img_wrap > img:nth-child(1) {
  width: 28%;
}
.tu_wrap #backup .product_info .txt_h3 + .l_col2_pc > .l_col2.img_wrap > img:nth-child(2) {
  width: 40%;
}
.tu_wrap #backup .product_info + .l_col2_pc > img {
  margin-top: 2em;
  width: 50%;
}

/* #climbing_plan */
.tu_wrap #climbing_plan {
  
}
.tu_wrap #climbing_plan .product_info .txt_h3 + .l_col2_pc {
  flex-direction: row;
  align-items: stretch;
}
.tu_wrap #climbing_plan .product_info .txt_h3 + .l_col2_pc > .txt_wrap {
  width: 56%;
}
.tu_wrap #climbing_plan .product_info .txt_h3 + .l_col2_pc > .txt_wrap p {
  margin: 0;
}
.tu_wrap #climbing_plan .product_info .txt_h3 + .l_col2_pc > .img_wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 0;
  width: 40%;
  border: solid 1px #ccc;
}
.tu_wrap #climbing_plan .product_info .txt_h3 + .l_col2_pc > .img_wrap img {
  display: block;
  width: 64%;
}
.tu_wrap #climbing_plan .product_info + .l_col2_pc {
  align-items: center;
  margin-top: 2em; 
}
.tu_wrap #climbing_plan .product_info + .l_col2_pc > figure {
  margin-top: 0;
}
.tu_wrap #climbing_plan .product_info + .l_col2_pc > figure:nth-child(1) {
  width: 74.39%;
}
.tu_wrap #climbing_plan .product_info + .l_col2_pc > figure:nth-child(2) {
  margin-right: 0;
  margin-left: 0;
  width: 23.5%;
}
.tu_wrap #climbing_plan .contents_width > .txt_h4 + .l_col2_pc > .txt_wrap {
  width: 64%;
}
.tu_wrap #climbing_plan .contents_width > .txt_h4 + .l_col2_pc > .img_wrap {
  width: 32%;
}
.tu_wrap #climbing_plan .contents_width > .txt_h4 + .l_col2_pc > .img_wrap > img {
  margin-right: 0;
  margin-left: 0;
  width: 100%;
}

/* youtube */
.tu_wrap .recommend_mov .txt_h3 {
  margin: 0 0 .5em 0;
  padding-top: 2em;
  text-align: left;
}
.tu_wrap .recommend_mov .txt_h3 .txt_note.txt_balloon {
  left: 0;
  transform: translateX(0);
  font-size: .5em;
}
.tu_wrap .recommend_mov .txt_h3 .txt_note.txt_balloon::before,
.tu_wrap .recommend_mov .txt_h3 .txt_note.txt_balloon::after {
  left: 2em;
  transform: translateX(0);
}
.tu_wrap .recommend_mov .l_col2_pc {
  align-items: center;
}
.tu_wrap .recommend_mov .l_col2_pc .txt_wrap {
  width: 46%;
}
.tu_wrap .recommend_mov .l_col2_pc .img_wrap {
  width: 50%;
}

}
