.panel__item {
  position: relative; }
  .panel__item a {
    display: block;
    color: #212121; }
    @media only screen and (max-width: 767px) {
      .panel__item a {
        border-radius: 5px;
        padding: 0.13333vw 2.66667vw 2.66667vw 2.66667vw; } }
    .panel__item a:hover .panel__thumb::before {
      top: 5px;
      right: -5px; }
    .panel__item a:hover .panel__text {
      color: #f26d00; }
  @media only screen and (max-width: 767px) {
    .panel__item a {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; } }

.panel__item_new::before {
  content: "";
  position: absolute;
  width: 66px;
  height: 35px;
  background: url(/assets/img/common/icon-new-small.svg) no-repeat center top;
  background-size: 100% 100%;
  top: 20px;
  left: -5px;
  z-index: 10; }
  @media only screen and (max-width: 767px) {
    .panel__item_new::before {
      width: 14.66667vw;
      height: 7.33333vw;
      background: url(/assets/img/common/icon-new_sp.svg) no-repeat center top;
      background-size: 100% 100%;
      top: 4vw;
      left: 2vw;
      z-index: 10; } }

.panel__thumb {
  position: relative; }
  .panel__thumb img {
    width: 100%;
    position: relative;
    z-index: 5; }
    @media only screen and (max-width: 767px) {
      .panel__thumb img {
        width: 100%;
        height: auto; } }
  .panel__thumb::before {
    content: "";
    position: absolute;
    width: 98%;
    height: 100%;
    top: 0;
    right: 4px;
    background: #f26d00;
    z-index: 1;
    border-radius: 6px;
    -webkit-transition: top .25s, right .25s;
    -o-transition: top .25s, right .25s;
    transition: top .25s, right .25s; }
    @media only screen and (max-width: 767px) {
      .panel__thumb::before {
        content: none; } }

.panel__thumb-img {
  overflow: hidden;
  border-radius: 5px;
  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;
  width: 100%;
  height: 160px; }
  @media only screen and (max-width: 767px) {
    .panel__thumb-img {
      width: 28vw;
      height: 22vw;
      margin-top: 2.53333vw;
      border-radius: 0.66667vw; } }
  .panel__thumb-img.img_wide {
    position: relative;
    z-index: 5; }
    @media only screen and (min-width: 768px) {
      .panel__thumb-img.img_wide img {
        width: auto;
        height: 100%;
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%); } }
    @media only screen and (max-width: 767px) {
      .panel__thumb-img.img_wide img {
        width: auto;
        height: 100%; } }

@media only screen and (max-width: 767px) {
  .panel__detail {
    width: 53.33333vw; } }

.panel__item-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 7px;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  @media only screen and (max-width: 767px) {
    .panel__item-head {
      margin-top: 0; } }

.panel__category {
  display: inline-block;
  font-size: 1.2rem;
  font-weight: bold;
  color: #fff;
  line-height: 1.83333;
  border-radius: 11px;
  padding: 2px 10px 0;
  margin-right: 20px;
  margin-top: 10px;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    .panel__category {
      font-size: 2.93333vw;
      line-height: 1.18182;
      padding: 1.2vw 2.66667vw 1.06667vw;
      border-radius: 20px;
      margin-right: 2.66667vw;
      margin-top: 2.53333vw; } }
  .panel__category_gourmet {
    background: #1cb7ff; }
  .panel__category_along {
    background: #ed5d00; }
  .panel__category_event {
    background: #fcc100; }
  .panel__category_hiking {
    background: #5cbb28; }

.panel__station {
  font-size: 1.2rem;
  line-height: 1.66667;
  position: relative;
  padding-left: 17px;
  -webkit-transition: color .25s;
  -o-transition: color .25s;
  transition: color .25s;
  margin-top: 10px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden; }
  @media only screen and (max-width: 767px) {
    .panel__station {
      font-size: 2.93333vw;
      line-height: 1.18182;
      padding-left: 4.66667vw;
      margin-top: 2.53333vw; } }
  .panel__station::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 10px;
    height: 16px;
    margin-top: -8px;
    background: url(/assets/img/common/icon-train.svg) no-repeat center top;
    background-size: 100% 100%; }
    @media only screen and (max-width: 767px) {
      .panel__station::before {
        width: 2.66667vw;
        height: 4.26667vw;
        margin-top: -2.13333vw; } }

.panel__text {
  margin-top: 10px;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.73333;
  -webkit-transition: color .25s;
  -o-transition: color .25s;
  transition: color .25s; }
  @media only screen and (max-width: 767px) {
    .panel__text {
      margin-top: 2vw;
      font-size: 4vw;
      line-height: 1.53333; } }

@media only screen and (max-width: 767px) {
  .panel__item-foot {
    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; } }

.panel__day {
  font-family: 'Lato', sans-serif;
  margin-top: 13px;
  font-size: 1.2rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  word-break: break-all; }
  @media only screen and (max-width: 767px) {
    .panel__day {
      margin-top: 0;
      font-size: 2.93333vw; } }

.panel__heart {
  position: absolute;
  background-color: rgba(255, 255, 255, 0.8);
  top: 125px;
  right: 20px;
  border-radius: 3px;
  z-index: 10; }
  @media only screen and (max-width: 767px) {
    .panel__heart {
      position: static; } }
  .panel__heart span {
    font-family: 'Lato', sans-serif;
    display: block;
    font-size: 1.1rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    padding: 4px 8px 4px 23px;
    position: relative;
    line-height: 1.1; }
    @media only screen and (max-width: 767px) {
      .panel__heart span {
        font-size: 2.93333vw;
        background: url(/assets/img/common/fukidashi_gray.svg) no-repeat center top;
        background-size: 100% 100%;
        padding: 1.33333vw 4vw 1.33333vw 2vw;
        margin-right: 5.06667vw; } }
    .panel__heart span::before {
      content: "";
      position: absolute;
      top: 50%;
      left: 8px;
      width: 10px;
      height: 9px;
      margin-top: -4px;
      background: url(/assets/img/common/icon-favorite.svg) no-repeat center top;
      background-size: 100% 100%; }
      @media only screen and (max-width: 767px) {
        .panel__heart span::before {
          left: auto;
          right: -4.66667vw;
          width: 3.73333vw;
          height: 3.46667vw;
          margin-top: -1.6vw; } }

.panel__course {
  position: relative;
  margin-bottom: 11px;
  padding-left: 21px;
  font-size: 1.2rem; }
  @media only screen and (max-width: 767px) {
    .panel__course {
      margin: 1.06667vw 0 0;
      padding-left: 6.26667vw;
      font-size: 2.93333vw;
      line-height: 1.81818; } }
  .panel__course:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 11px;
    height: 14px;
    margin-top: -7px;
    background: url(/assets/img/common/foot.svg) no-repeat center top;
    background-size: 100% 100%; }
    @media only screen and (max-width: 767px) {
      .panel__course:before {
        width: 3.6vw;
        height: 4.53333vw;
        margin-top: -2.26667vw; } }

.panel__hold {
  display: inline-block;
  background: #fff5e2;
  font-size: 1.2rem;
  vertical-align: middle;
  width: 52px;
  padding: 3px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
  margin-right: 10px;
  margin-bottom: 11px;
  border-radius: 3px; }
  @media only screen and (max-width: 767px) {
    .panel__hold {
      width: 12.66667vw;
      padding: 1.06667vw;
      font-size: 2.93333vw;
      margin: 0 2vw 0 0; } }
  .panel__hold.panel__hold_finish {
    background: #eaeaea; }

.favorite__pc {
  position: relative; }
  @media only screen and (max-width: 767px) {
    .favorite__pc {
      display: none; } }
  .favorite__pc .btn__fav {
    position: relative;
    margin-left: auto;
    display: block;
    width: 165px;
    background-image: url("/assets/img/common/bg_fav_text.png");
    background-repeat: no-repeat;
    background-size: 100%;
    padding: 18px 0 15px 26px; }
  .favorite__pc .check {
    display: inline-block;
    vertical-align: middle;
    width: 18px;
    height: 16px;
    background: url(/assets/img/common/icon-favorite_inactive.svg) no-repeat center top;
    background-size: 100% 100%;
    margin-top: -4px; }
  .favorite__pc input[type="checkbox"] {
    display: none;
    opacity: 0;
    visibility: hidden; }
  .favorite__pc input[type="checkbox"]:checked + .check {
    background: url(/assets/img/common/icon-favorite.svg) no-repeat center top;
    background-size: 100% 100%; }
  .favorite__pc .favorite__text {
    font-size: 1.6rem;
    font-weight: bold;
    margin-left: 4px; }

.favorite__pc:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
  background-image: url("/assets/img/common/bg_fav.png");
  background-size: 100%; }

@media only screen and (max-width: 767px) {
  .event__course-slider {
    position: relative; }
  .favorite__sp {
    position: absolute;
    z-index: 100;
    right: 4vw; }
    .favorite__sp .btn__fav {
      position: relative;
      margin-left: auto;
      display: block;
      width: 13.33333vw;
      height: 13.33333vw;
      border-radius: 100%;
      background-color: #fff3df;
      background-repeat: no-repeat;
      background-size: 100%;
      padding: 10px 0;
      cursor: pointer; }
    .favorite__sp .check {
      width: 5.73333vw;
      height: 4.8vw;
      background: url(/assets/img/common/icon-favorite_inactive.svg) no-repeat center top;
      background-size: 100% 100%;
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); }
    .favorite__sp input[type="checkbox"] {
      opacity: 0;
      visibility: hidden; }
    .favorite__sp input[type="checkbox"]:checked + .check {
      background: url(/assets/img/common/icon-favorite.svg) no-repeat center top;
      background-size: 100% 100%; } }

.course__list {
  width: 100%;
  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; }
  .course__list .panel__item {
    width: 230px; }
    .course__list .panel__item:nth-child(n+4) {
      display: none; }
    @media only screen and (min-width: 768px) {
      .course__list .panel__item:nth-child(n+4) {
        margin-top: 20px; } }
    @media only screen and (max-width: 767px) {
      .course__list .panel__item {
        width: 48.51%;
        border: none; }
        .course__list .panel__item:nth-child(n+3) {
          margin-top: 6.66667vw; } }
    @media only screen and (max-width: 767px) {
      .course__list .panel__item.panel__item_new::before {
        content: "";
        width: 17.06667vw;
        height: 7.33333vw;
        background: url(/assets/img/common/icon-new_sp.svg) no-repeat center top;
        background-size: 100% 100%;
        top: 2.66667vw;
        left: -1.06667vw;
        z-index: 10; } }
    @media only screen and (max-width: 767px) {
      .course__list .panel__item a {
        display: block;
        padding: 0; } }
    .course__list .panel__item a:hover .panel__detail-text {
      color: #f26d00; }
  @media only screen and (max-width: 767px) {
    .course__list .panel__thumb {
      width: 100%; } }
  @media only screen and (max-width: 767px) {
    .course__list .panel__thumb-img {
      width: 43.33333vw;
      height: 30vw;
      margin-top: 0; } }
  @media only screen and (max-width: 767px) {
    .course__list .panel__detail {
      width: 100%; } }
  .course__list .panel__item-head {
    margin-top: 12px; }
    @media only screen and (max-width: 767px) {
      .course__list .panel__item-head {
        margin-top: 1.46667vw; } }
  @media only screen and (max-width: 767px) {
    .course__list .panel__text {
      font-size: 4vw;
      line-height: 1.53333; } }
  .course__list .panel__detail-text {
    margin-top: 6px;
    font-size: 1.4rem;
    line-height: 1.57143;
    -webkit-transition: color .25s;
    -o-transition: color .25s;
    transition: color .25s; }
    @media only screen and (max-width: 767px) {
      .course__list .panel__detail-text {
        margin-top: 1.73333vw;
        font-size: 3.73333vw;
        line-height: 1.57143;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        overflow: hidden; } }
  .course__list .panel__heart {
    top: 125px;
    right: 17px; }
    @media only screen and (max-width: 767px) {
      .course__list .panel__heart {
        position: absolute;
        top: 22vw;
        right: 2.13333vw;
        left: auto;
        bottom: auto;
        margin: 0; } }
    @media only screen and (max-width: 767px) {
      .course__list .panel__heart span {
        padding: 1.06667vw 1.6vw 1.06667vw 6vw;
        margin: 0;
        background: transparent; } }
    @media only screen and (max-width: 767px) {
      .course__list .panel__heart span:before {
        right: auto;
        left: 1.73333vw;
        width: 2.4vw;
        top: 0;
        bottom: 0;
        margin: auto;
        height: 2.13333vw; } }
  .course__list .panel__item-foot {
    margin-top: 17px;
    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; }
    @media only screen and (max-width: 767px) {
      .course__list .panel__item-foot {
        margin-top: 0.66667vw; } }

.course__list:after {
  content: "";
  display: block;
  width: 230px; }

.course__list-other {
  margin-top: 60px; }
  @media only screen and (max-width: 767px) {
    .course__list-other {
      margin-top: 8vw; } }

.course__list:after {
  content: "";
  display: block;
  width: 230px; }

.course__list-moretitle {
  text-align: center;
  font-size: 2.2rem;
  font-weight: bold;
  margin: 80px 0 35px; }
  @media only screen and (max-width: 767px) {
    .course__list-moretitle {
      font-size: 3.73333vw;
      line-height: 6.66667vw;
      margin: 12vw 0 3.33333vw; }
      .course__list-moretitle span {
        font-size: 5.33333vw; } }

.panel__list--discovery {
  position: relative;
  width: 100%;
  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;
  position: relative; }
  .panel__list--discovery .panel__item {
    width: 230px; }
    .panel__list--discovery .panel__item:nth-child(n+4) {
      display: none; }
  .panel__list--discovery .panel__item-head {
    margin-top: 14px; }
  .panel__list--discovery .panel__text {
    margin-top: 4px; }
  @media only screen and (max-width: 767px) {
    .panel__list--discovery {
      display: block;
      border: 2px solid #eaeaea;
      border-radius: 5px;
      background-color: #f9f9f9;
      padding: 6.66667vw 5.06667vw; }
      .panel__list--discovery .panel__item {
        width: 100%; }
        .panel__list--discovery .panel__item a {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: start;
          -ms-flex-align: start;
          align-items: flex-start;
          background: none;
          padding: 0; }
        .panel__list--discovery .panel__item .panel__thumb {
          margin-bottom: 0;
          width: 32vw;
          margin-top: 0; }
        .panel__list--discovery .panel__item .panel__thumb-img {
          width: 32vw;
          height: 22.66667vw;
          margin-top: 0; }
        .panel__list--discovery .panel__item .panel__detail {
          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;
          width: 42vw;
          margin-top: 2.66667vw; }
          .panel__list--discovery .panel__item .panel__detail .panel__item-head {
            -webkit-box-ordinal-group: 3;
            -ms-flex-order: 2;
            order: 2;
            margin-top: -1.33333vw; }
          .panel__list--discovery .panel__item .panel__detail .panel__text {
            -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
            order: 1;
            margin-top: 0; }
      .panel__list--discovery .panel__item:nth-of-type(1n + 2) {
        margin-top: 2.66667vw; } }
  .panel__list--discovery::before {
    content: "";
    top: -72px;
    right: 30px;
    position: absolute;
    width: 93px;
    height: 72px;
    background-image: url("/assets/img/hiking/icon-discovery.png");
    background-repeat: no-repeat;
    background-size: 100%; }
    @media only screen and (max-width: 767px) {
      .panel__list--discovery::before {
        top: -18vw;
        left: 2vw;
        width: 14.53333vw;
        height: 12.4vw;
        background-image: url("/assets/img/hiking/icon-discovery_hukidasi_sp.png"); } }
  @media only screen and (max-width: 767px) {
    .panel__list--discovery::after {
      content: "";
      top: -11vw;
      right: 9vw;
      position: absolute;
      width: 7.86667vw;
      height: 17.33333vw;
      background-image: url("/assets/img/hiking/icon-discovery_sp.png");
      background-repeat: no-repeat;
      background-size: 100%;
      z-index: -1; } }

@media only screen and (max-width: 767px) {
  .event__course-slider {
    position: relative; }
  .favorite__sp {
    bottom: -4vw; } }

.event__title {
  margin-top: 80px; }
  @media only screen and (max-width: 767px) {
    .event__title {
      margin-top: 5.33333vw;
      margin-left: 1.06667vw; } }
  @media only screen and (min-width: 768px) {
    .event__title .event__sub {
      width: 33px; } }
  @media only screen and (max-width: 767px) {
    .event__title .event__sub {
      width: 67.33333vw; } }

.event .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start; }
  @media only screen and (max-width: 767px) {
    .event .inner {
      display: block; } }

.event .event__list-outer {
  width: 750px; }
  @media only screen and (max-width: 767px) {
    .event .event__list-outer {
      width: 100%; } }

.event .event__list {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.keyword-icon_event {
  width: 88px;
  background-color: #fcc100; }
  @media only screen and (max-width: 767px) {
    .keyword-icon_event {
      width: 18.66667vw; } }

.event__keyword {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 5px; }
  @media only screen and (max-width: 767px) {
    .event__keyword {
      margin-top: 6.66667vw;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; } }
  @media only screen and (max-width: 767px) {
    .event__keyword .event__keyword-sp__title {
      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; }
      .event__keyword .event__keyword-sp__title .event__keyword-icon {
        margin-left: 8vw;
        font-size: 2.93333vw; }
      .event__keyword .event__keyword-sp__title .event__keyword-station {
        max-width: 100%;
        line-height: 1.5;
        margin: 2vw 2.66667vw 2vw 8vw; }
        .event__keyword .event__keyword-sp__title .event__keyword-station a {
          color: #1cb7ff; } }
  .event__keyword .event__keyword-that {
    font-size: 1.4rem;
    color: #ffffff;
    font-weight: bold;
    padding: 7px 6px 6px;
    border-radius: 50px;
    text-align: center; }
    .event__keyword .event__keyword-that a {
      color: #fff; }
    @media only screen and (max-width: 767px) {
      .event__keyword .event__keyword-that {
        font-size: 2.93333vw;
        padding: 1.33333vw 2.66667vw; } }
  .event__keyword .event__keyword-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-left: 50px; }
    .event__keyword .event__keyword-list a {
      color: #212121; }
    @media only screen and (max-width: 767px) {
      .event__keyword .event__keyword-list {
        margin: 2vw 0;
        margin-left: 4vw; } }
    .event__keyword .event__keyword-list .event__keyword-icon {
      margin-right: 43px;
      font-size: 1.5rem; }
      @media only screen and (max-width: 767px) {
        .event__keyword .event__keyword-list .event__keyword-icon {
          font-size: 2.93333vw;
          margin-right: 10.13333vw; } }
    .event__keyword .event__keyword-list .event__keyword-icon:nth-of-type(1n + 2) {
      margin-right: 55px; }
      @media only screen and (max-width: 767px) {
        .event__keyword .event__keyword-list .event__keyword-icon:nth-of-type(1n + 2) {
          margin-right: 10.13333vw; } }
    .event__keyword .event__keyword-list .event__keyword-icon:last-of-type {
      margin-right: 0; }
    .event__keyword .event__keyword-list .event__keyword-station {
      max-width: 280px;
      line-height: 1.46667; }
      .event__keyword .event__keyword-list .event__keyword-station a {
        color: #1cb7ff; }
        .event__keyword .event__keyword-list .event__keyword-station a:hover {
          text-decoration: underline; }
    @media only screen and (max-width: 767px) {
      .event__keyword .event__keyword-list .event__keyword-day:before {
        content: "";
        position: absolute;
        left: -3vw;
        top: 50%;
        height: 3.46667vw;
        width: 2px;
        background-color: #ddd;
        opacity: 0.5; } }
    .event__keyword .event__keyword-list .event__keyword--font-lato {
      font-family: 'Lato', sans-serif;
      font-weight: bold;
      letter-spacing: 0.1rem; }
    @media only screen and (max-width: 767px) {
      .event__keyword .event__keyword-list li {
        font-family: 'Lato', sans-serif;
        font-weight: bold; } }
    .event__keyword .event__keyword-list li:after {
      content: "";
      position: absolute;
      top: 50%;
      right: -20px;
      width: 2px;
      height: 12px;
      margin-top: -6px;
      background-color: #ddd;
      opacity: 0.5; }
      @media only screen and (max-width: 767px) {
        .event__keyword .event__keyword-list li:after {
          right: -3.4vw;
          height: 3.46667vw;
          top: 50%;
          margin-top: -1.73333vw; } }
    .event__keyword .event__keyword-list li:last-of-type:after {
      content: none; }
  .event__keyword .event__keyword-icon {
    position: relative; }
  .event__keyword .event__keyword-icon:before {
    content: "";
    position: absolute;
    top: 50%;
    left: -25px;
    width: 16px;
    height: 20px;
    margin-top: -10px; }
    @media only screen and (max-width: 767px) {
      .event__keyword .event__keyword-icon:before {
        width: 2.93333vw;
        height: 4.8vw;
        margin-top: 0;
        left: -5vw;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%); } }
  .event__keyword .event__keyword-station:before {
    background: url(/assets/img/common/icon-train.svg) no-repeat center top;
    background-size: 100% 100%; }
  .event__keyword .event__keyword-course:before {
    background: url(/assets/img/common/foot.svg) no-repeat center top;
    background-size: 100% 100%; }
  .event__keyword .event__keyword-distance:before {
    background: url(/assets/img/common/icon-distance.svg) no-repeat center top;
    background-size: 100% 100%; }
  .event__keyword .event__keyword-heart:before {
    width: 15px;
    height: 13px;
    margin-top: -6px;
    background: url(/assets/img/common/icon-favorite.svg) no-repeat center top;
    background-size: 100% 100%; }
    @media only screen and (max-width: 767px) {
      .event__keyword .event__keyword-heart:before {
        margin-top: 0;
        width: 3.33333vw;
        height: 3.33333vw; } }

.event__id-box {
  margin-top: 30px;
  padding-left: 40px;
  position: relative;
  min-height: 15px; }
  @media only screen and (max-width: 767px) {
    .event__id-box {
      margin-top: 5.33333vw;
      padding-left: 7vw;
      min-height: 4vw; } }
  .event__id-box a {
    line-height: 1.46667;
    font-size: 1.5rem;
    color: #1cb7ff; }
    .event__id-box a:hover {
      text-decoration: underline; }
    @media only screen and (max-width: 767px) {
      .event__id-box a {
        font-size: 2.93333vw;
        line-height: 1.5; } }

.event__id-box:before {
  content: "";
  position: absolute;
  top: -2px;
  left: 3px;
  width: 23px;
  height: 24px;
  background-image: url("/assets/img/common/icon-spotid.svg");
  background-repeat: no-repeat;
  background-size: 100%; }
  @media only screen and (max-width: 767px) {
    .event__id-box:before {
      top: 0;
      width: 4vw;
      height: 4vw; } }

.snsbox {
  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-top: 39px; }
  @media only screen and (max-width: 767px) {
    .snsbox {
      margin-top: 5.33333vw; } }
  .snsbox p {
    width: calc(100% / 3); }
    @media only screen and (max-width: 767px) {
      .snsbox p {
        width: 25%; } }
  .snsbox a {
    display: block;
    width: 100%;
    -webkit-transition: opacity .3s;
    -o-transition: opacity .3s;
    transition: opacity .3s; }
    .snsbox a:hover {
      opacity: .8; }
  .snsbox img {
    width: 100%; }

.course-map__course-view-description .map {
  width: 750px;
  height: 370px; }
  @media only screen and (max-width: 767px) {
    .course-map__course-view-description .map {
      width: 100%;
      height: 64vw; } }

@media only screen and (max-width: 767px) {
  .caption {
    text-align: right;
    margin-top: 4vw; }
    .caption a {
      color: #1cb7ff;
      font-size: 3.2vw;
      font-weight: bold; } }

.course-map__spot, .model-course,
.course-map__normal {
  margin-top: 63px; }
  @media only screen and (max-width: 767px) {
    .course-map__spot, .model-course,
    .course-map__normal {
      margin-top: 8vw; } }

.course-map__normal .link__banner {
  position: relative; }
  @media only screen and (max-width: 767px) {
    .course-map__normal .link__banner a {
      padding-bottom: 0; } }

.course-map__normal .snsbox-min {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  right: 19px;
  bottom: 20px;
  position: absolute;
  width: 460px; }
  @media only screen and (max-width: 767px) {
    .course-map__normal .snsbox-min {
      width: 100%;
      right: 0;
      bottom: 0;
      position: relative;
      padding: 0 2.26667vw 2.66667vw 2.13333vw; } }
  .course-map__normal .snsbox-min p {
    width: calc(100% / 3); }
    @media only screen and (max-width: 767px) {
      .course-map__normal .snsbox-min p {
        width: calc(75.24% / 3); } }
  @media only screen and (max-width: 767px) {
    .course-map__normal .snsbox-min p:last-child {
      width: 24.76%; } }
  .course-map__normal .snsbox-min a {
    display: block;
    width: 100%;
    padding: 0; }
  .course-map__normal .snsbox-min a:before, .course-map__normal .snsbox-min a:after {
    content: none; }
  .course-map__normal .snsbox-min img {
    width: 100%; }

@media only screen and (max-width: 767px) {
  .course-map__event {
    margin-top: 9.33333vw; } }

.event__course-title {
  font-size: 3.4rem;
  line-height: 4.8rem;
  font-weight: bold;
  margin-top: 32px; }
  @media only screen and (max-width: 767px) {
    .event__course-title {
      font-size: 5.6vw;
      margin-top: 3.33333vw;
      line-height: 8vw; } }

.event__course-view-description {
  margin-top: 45px; }
  @media only screen and (max-width: 767px) {
    .event__course-view-description {
      margin-top: 5.33333vw; } }

.event__course-view-img img {
  width: 100%;
  border-radius: 5px; }
  @media only screen and (max-width: 767px) {
    .event__course-view-img img {
      border-radius: 3px; } }

.event__course-view-sentence {
  margin-top: 33px;
  font-size: 1.5rem;
  line-height: 2; }
  @media only screen and (max-width: 767px) {
    .event__course-view-sentence {
      width: 100%;
      margin-top: 4.66667vw;
      font-size: 4vw;
      line-height: 6.66667vw; } }
  .event__course-view-sentence .title {
    font-size: 2.2rem;
    line-height: 3.2rem;
    font-weight: bold; }
    @media only screen and (max-width: 767px) {
      .event__course-view-sentence .title {
        font-size: 4.53333vw;
        line-height: 6.4vw; } }
  .event__course-view-sentence .border {
    border-top: 1px dotted #000000; }
  .event__course-view-sentence .text {
    font-size: 1.5rem;
    line-height: 2;
    margin-top: 15px; }
    @media only screen and (max-width: 767px) {
      .event__course-view-sentence .text {
        font-size: 4vw;
        line-height: 6.66667vw;
        padding-top: 0;
        margin-top: 0; } }

.model-course .model-course__description,
.model-course .model-course__keybox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.model-course .model-course__keybox {
  margin-right: 16px; }
  @media only screen and (max-width: 767px) {
    .model-course .model-course__keybox {
      -webkit-box-pack: start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      margin-right: 0;
      padding-left: 5vw;
      margin-top: 3.33333vw; } }
  .model-course .model-course__keybox p:after {
    content: "";
    position: absolute;
    top: 0;
    right: -24px;
    width: 2px;
    height: 12px;
    background-color: #ddd;
    opacity: 0.5; }
    @media only screen and (max-width: 767px) {
      .model-course .model-course__keybox p:after {
        right: -3.4vw;
        height: 3.46667vw; } }
  .model-course .model-course__keybox p:last-of-type:after {
    content: none; }

@media only screen and (max-width: 767px) {
  .model-course .model-course__description {
    display: block; } }

.model-course .model-course__title {
  font-size: 2.0rem;
  font-weight: bold; }
  @media only screen and (max-width: 767px) {
    .model-course .model-course__title {
      font-size: 4vw; } }

.model-course .model-course__keybox .model-course__list {
  position: relative; }

.model-course .model-course__keybox .model-course__time:before {
  content: "";
  position: absolute;
  top: 0;
  left: -25px;
  width: 16px;
  height: 16px;
  margin-top: -2px;
  background-image: url("/assets/img/common/icon-time_v2.svg");
  background-repeat: no-repeat;
  background-size: 100% 100%; }
  @media only screen and (max-width: 767px) {
    .model-course .model-course__keybox .model-course__time:before {
      width: 3.33333vw;
      height: 3.2vw;
      margin-top: -0.4vw;
      left: -5.33333vw; } }

.model-course .model-course__keybox .model-course__distance:before {
  content: "";
  position: absolute;
  top: 0;
  left: -25px;
  width: 16px;
  height: 18px;
  margin-top: -2px;
  background-image: url("/assets/img/common/icon-distance.svg");
  background-repeat: no-repeat;
  background-size: 100% 100%; }
  @media only screen and (max-width: 767px) {
    .model-course .model-course__keybox .model-course__distance:before {
      width: 3.33333vw;
      height: 4vw;
      margin-top: -0.8vw;
      left: -5.33333vw; } }

.model-course .model-course__keybox .model-course__list:nth-of-type(1n + 2) {
  margin-left: 70px; }
  @media only screen and (max-width: 767px) {
    .model-course .model-course__keybox .model-course__list:nth-of-type(1n + 2) {
      margin-left: 12vw; } }

.model-course .model-course__keybox .model-course__time, .model-course .model-course__keybox .model-course__distance {
  font-size: 1.5rem; }
  @media only screen and (max-width: 767px) {
    .model-course .model-course__keybox .model-course__time, .model-course .model-course__keybox .model-course__distance {
      font-size: 2.93333vw; } }

.model-course .model-course__mapimg {
  margin-top: 30px; }
  @media only screen and (max-width: 767px) {
    .model-course .model-course__mapimg {
      margin-top: 6.26667vw;
      overflow-x: auto; }
      .model-course .model-course__mapimg img {
        width: 286.26667vw; } }

.model-course .model-course__time {
  font-size: 1.5rem; }

.course-map__normal .course-map__pdfbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 40px; }
  @media only screen and (max-width: 767px) {
    .course-map__normal .course-map__pdfbox {
      margin-top: 5.33333vw; }
      .course-map__normal .course-map__pdfbox .pdf__list {
        width: 48%; } }

.course-map__normal .pdf__title {
  font-size: 2.0rem;
  font-weight: bold; }
  @media only screen and (max-width: 767px) {
    .course-map__normal .pdf__title {
      font-size: 3.5vw; } }

.course-map__normal .pdf__images {
  margin-top: 25px; }
  @media only screen and (max-width: 767px) {
    .course-map__normal .pdf__images {
      margin-top: 2.66667vw; } }

.course-map__normal .pdf__watching-icon {
  position: relative;
  display: block; }

.course-map__normal .pdf__watching-icon:before {
  content: "";
  top: 50%;
  left: 50%;
  position: absolute;
  width: 50px;
  height: 50px;
  margin-top: -25px;
  margin-left: -25px;
  background-image: url("/assets/img/common/icon-pdf.png");
  background-repeat: no-repeat;
  background-size: 100%; }
  @media only screen and (max-width: 767px) {
    .course-map__normal .pdf__watching-icon:before {
      width: 8vw;
      height: 8vw;
      margin-top: -4vw;
      margin-left: -4vw; } }

.course-map__place {
  margin-top: 60px; }
  @media only screen and (max-width: 767px) {
    .course-map__place {
      margin-top: 8vw; } }
  .course-map__place .course-map__place-scope {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border: 4px solid #f5f5f5;
    border-radius: 5px;
    padding: 29px 24px 28px;
    height: 140px; }
    @media only screen and (max-width: 767px) {
      .course-map__place .course-map__place-scope {
        -webkit-box-align: normal;
        -ms-flex-align: normal;
        align-items: normal;
        padding: 4.66667vw 4vw;
        height: auto; } }
  .course-map__place .course-map__icon-point {
    position: relative; }
  .course-map__place .course-map__icon-point:before {
    content: "";
    top: -16px;
    left: 34px;
    position: absolute;
    width: 101px;
    height: 82px;
    background-image: url("/assets/img/spot/icon-point.png");
    background-repeat: no-repeat;
    background-size: 100%; }
    @media only screen and (max-width: 767px) {
      .course-map__place .course-map__icon-point:before {
        content: none; } }
  @media only screen and (max-width: 767px) {
    .course-map__place .course-map__icon-point:after {
      content: "";
      top: -9vw;
      right: 3vw;
      position: absolute;
      width: 14.53333vw;
      height: 12.53333vw;
      background-image: url("/assets/img/spot/icon-point_hukidasi_sp.png");
      background-repeat: no-repeat;
      background-size: 100%; } }
  .course-map__place .course-map__title {
    text-align: center;
    font-size: 2.2rem;
    font-weight: bold;
    padding-left: 28px;
    padding-top: 6px; }
    @media only screen and (max-width: 767px) {
      .course-map__place .course-map__title {
        font-size: 3.73333vw;
        line-height: 6.66667vw;
        padding-left: 0;
        padding-top: 0; }
        .course-map__place .course-map__title span {
          font-size: 5.33333vw; } }
  .course-map__place .course-map__place-scope:first-of-type {
    margin-top: 36px; }
    @media only screen and (max-width: 767px) {
      .course-map__place .course-map__place-scope:first-of-type {
        margin-top: 2.66667vw; } }
  .course-map__place .course-map__place-scope:nth-of-type(1n + 2) {
    margin-top: 19px; }
    @media only screen and (max-width: 767px) {
      .course-map__place .course-map__place-scope:nth-of-type(1n + 2) {
        margin-top: 5.33333vw; } }
  .course-map__place .icon-place {
    position: relative; }
  .course-map__place .icon-place:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    margin-top: -3px;
    width: 14px;
    height: 19px;
    background-image: url("/assets/img/common/ranking-icon_orange.svg");
    background-repeat: no-repeat;
    background-size: 100%; }
    @media only screen and (max-width: 767px) {
      .course-map__place .icon-place:before {
        width: 3.33333vw;
        height: 5.33333vw;
        margin-top: 0; } }
  .course-map__place .place__wrap {
    margin-top: -5px; }
    @media only screen and (max-width: 767px) {
      .course-map__place .place__wrap {
        margin-top: 0;
        margin-left: 0; } }
    .course-map__place .place__wrap .place__keybox {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; }
      @media only screen and (max-width: 767px) {
        .course-map__place .place__wrap .place__keybox .name {
          font-size: 3.73333vw;
          font-weight: bold;
          position: relative; }
        .course-map__place .place__wrap .place__keybox .name:before {
          content: "";
          position: absolute;
          right: -3.4vw;
          top: 50%;
          -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
          transform: translateY(-50%);
          height: 3.46667vw;
          width: 2px;
          background-color: #ddd;
          opacity: 0.5; }
        .course-map__place .place__wrap .place__keybox .job {
          font-size: 3.2vw;
          font-weight: bold;
          margin-left: 7vw; } }
    .course-map__place .place__wrap .event__keyword-station {
      position: relative;
      padding-left: 7.33333vw;
      font-size: 2.93333vw; }
    .course-map__place .place__wrap .event__keyword-station:before {
      content: "";
      width: 2.93333vw;
      height: 4.8vw;
      top: 50%;
      left: 3vw;
      position: absolute;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%);
      background: url(/assets/img/common/icon-train.svg) no-repeat center top;
      background-size: 100% 100%; }
  .course-map__place .place__title {
    font-size: 1.2rem;
    font-weight: bold;
    color: #ffffff;
    display: inline-block;
    padding: 5px 10px;
    border-radius: 50px 50px; }
    @media only screen and (max-width: 767px) {
      .course-map__place .place__title {
        font-size: 2.93333vw;
        padding: 1.33333vw 2.66667vw; } }
  .course-map__place .icon-tag__gurume {
    background-color: #1cb7ff; }
  .course-map__place .icon-tag__event {
    background-color: #f93d3d; }
  .course-map__place .icon-tag__event {
    background-color: #fcc100; }
  .course-map__place .place__text {
    font-size: 1.4rem;
    line-height: 2.6rem;
    width: 420px; }
    @media only screen and (max-width: 767px) {
      .course-map__place .place__text {
        font-size: 3.33333vw;
        line-height: 5.33333vw;
        margin-top: 2.66667vw;
        width: 100%; } }
    .course-map__place .place__text a {
      color: #1cb7ff; }
  .course-map__place .place__databox {
    margin-top: 23px; }
    @media only screen and (max-width: 767px) {
      .course-map__place .place__databox {
        margin-top: 4vw; } }
  .course-map__place .place__data {
    font-size: 1.2rem;
    font-weight: bold;
    letter-spacing: 0.1rem;
    font-family: 'Lato', sans-serif; }
    @media only screen and (max-width: 767px) {
      .course-map__place .place__data {
        font-size: 3.2vw;
        line-height: 5.33333vw; } }

.course-map__enjoy {
  border: 4px solid #f5f5f5;
  border-radius: 5px;
  padding: 30px;
  margin-top: 55px;
  position: relative; }
  @media only screen and (max-width: 767px) {
    .course-map__enjoy {
      padding: 5.33333vw;
      margin-top: 10.66667vw; } }
  .course-map__enjoy .enjoy__title {
    font-size: 1.8rem;
    font-weight: bold;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
    @media only screen and (max-width: 767px) {
      .course-map__enjoy .enjoy__title {
        font-size: 4.8vw;
        line-height: 6.66667vw; } }
    .course-map__enjoy .enjoy__title span:first-of-type {
      width: 3px;
      height: 15px;
      background-color: #ed5d00; }
      @media only screen and (max-width: 767px) {
        .course-map__enjoy .enjoy__title span:first-of-type {
          width: 0.93333vw;
          height: 10.66667vw; } }
    .course-map__enjoy .enjoy__title span:last-of-type {
      padding-left: 15px; }
  .course-map__enjoy .enjoy__text {
    margin-top: 15px; }
  .course-map__enjoy .enjoy__text,
  .course-map__enjoy .enjoy__link-text {
    font-size: 1.4rem; }
    @media only screen and (max-width: 767px) {
      .course-map__enjoy .enjoy__text,
      .course-map__enjoy .enjoy__link-text {
        font-size: 3.73333vw; } }
    .course-map__enjoy .enjoy__text .icon-link span:after,
    .course-map__enjoy .enjoy__link-text .icon-link span:after {
      left: 5%; }
  @media only screen and (max-width: 767px) {
    .course-map__enjoy .enjoy__text {
      line-height: 5.33333vw; } }
  .course-map__enjoy .enjoy__link-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 20px; }
    .course-map__enjoy .enjoy__link-box .enjoy__link-text a {
      color: #1cb7ff; }
    .course-map__enjoy .enjoy__link-box .enjoy__link-text:nth-of-type(1n + 2) {
      margin-left: 37px; }
      @media only screen and (max-width: 767px) {
        .course-map__enjoy .enjoy__link-box .enjoy__link-text:nth-of-type(1n + 2) {
          margin-left: 5.33333vw; } }

.course-map__enjoy:before,
.course-map__enjoy:after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: 100%; }

.course-map__enjoy:before {
  top: -30px;
  right: -15px;
  width: 80px;
  height: 69px;
  background-repeat: no-repeat;
  background-size: 100% 100%; }
  @media only screen and (max-width: 767px) {
    .course-map__enjoy:before {
      top: -4vw;
      right: -0;
      width: 14.26667vw;
      height: 12.4vw; } }

.course-map__enjoy:after {
  bottom: 27px;
  right: 26px;
  width: 52px;
  height: 38px;
  background-repeat: no-repeat;
  background-size: 100% 100%; }
  @media only screen and (max-width: 767px) {
    .course-map__enjoy:after {
      top: 7vw;
      right: 10vw;
      bottom: auto;
      width: 11.2vw;
      height: 8.26667vw; } }

.icon-link span {
  -webkit-transition: color .25s;
  -o-transition: color .25s;
  transition: color .25s;
  padding-left: 25px;
  position: relative; }
  @media only screen and (max-width: 767px) {
    .icon-link span {
      padding-left: 6.66667vw; } }
  .icon-link span:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 14px;
    height: 14px;
    margin-top: -8px;
    background: url(/assets/img/common/icon-arrow-orange.svg) no-repeat center center;
    background-size: 100% 100%; }
    @media only screen and (max-width: 767px) {
      .icon-link span:before {
        width: 4vw;
        height: 4vw; } }

.btn__more {
  margin: 40px auto 0; }
  @media only screen and (max-width: 767px) {
    .btn__more {
      margin: 5.33333vw auto 0; } }

.btn__more--bg {
  margin: 29px auto 0; }
  @media only screen and (max-width: 767px) {
    .btn__more--bg {
      margin: 4.66667vw auto 0; } }

.section__column {
  margin-top: 55px; }
  @media only screen and (max-width: 767px) {
    .section__column {
      margin-top: 9.33333vw; } }

.event__column {
  margin-top: 35px;
  clear: both; }
  @media only screen and (max-width: 767px) {
    .event__column {
      margin-top: 4vw; } }
  .event__column .column__text {
    font-size: 1.5rem;
    line-height: 3.0rem;
    margin-top: 34px; }
    @media only screen and (max-width: 767px) {
      .event__column .column__text {
        margin-top: 4vw;
        font-size: 4vw;
        line-height: 6.93333vw; } }
  .event__column p {
    font-size: 1.5rem;
    line-height: 2; }
    @media only screen and (max-width: 767px) {
      .event__column p {
        font-size: 4vw;
        line-height: 6.66667vw; } }
    .event__column p img {
      border-radius: 5px; }
      @media only screen and (max-width: 767px) {
        .event__column p img {
          border-radius: 3px; } }

.event__def {
  margin-top: 63px;
  padding: 30px 36px 38px;
  border: 4px solid #f5f5f5;
  border-radius: 5px; }
  @media only screen and (max-width: 767px) {
    .event__def {
      margin-top: 6.66667vw;
      padding: 5.33333vw 4vw 4vw;
      border-width: 3px; } }
  .event__def .def__titlebox {
    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; }
  .event__def .def__title {
    font-size: 2.2rem;
    font-weight: bold;
    padding-left: 20px; }
    @media only screen and (max-width: 767px) {
      .event__def .def__title {
        font-size: 4.8vw;
        padding-left: 4vw; } }
  @media only screen and (max-width: 767px) {
    .event__def .def__see {
      background-color: #f5f5f5;
      color: #212121;
      border-radius: 4px;
      font-weight: bold;
      margin-top: -4px;
      font-size: 3.2vw;
      text-align: center;
      padding: 4vw 19.333vw 4vw 25.33333vw;
      letter-spacing: 0.1rem;
      margin-top: 5.33333vw; }
      .event__def .def__see span {
        position: relative; }
        .event__def .def__see span:before {
          content: "";
          width: 4vw;
          height: 4vw;
          top: 50%;
          left: -7vw;
          -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
          transform: translateY(-50%);
          position: absolute;
          background-image: url("/assets/img/common/icon-arrow-orange.svg");
          background-repeat: no-repeat;
          background-size: 100%; } }
  .event__def .def__mail {
    background-color: #1cb7ff;
    color: #ffffff;
    font-size: 1.3rem;
    padding: 12px 20px 12px 42px;
    border-radius: 4px;
    font-weight: bold;
    margin-top: -4px;
    -webkit-transition: background-color .3s;
    -o-transition: background-color .3s;
    transition: background-color .3s; }
    @media only screen and (max-width: 767px) {
      .event__def .def__mail {
        font-size: 3.2vw;
        text-align: center;
        padding: 4vw 19.333vw 4vw 25.33333vw;
        letter-spacing: 0.1rem;
        border-radius: 5px;
        margin-top: 5.33333vw; } }
    .event__def .def__mail:hover {
      background-color: #53c8fe; }
  .event__def .def__title:before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 3px;
    height: 100%;
    background: #ed5d00;
    margin-top: -2px; }
    @media only screen and (max-width: 767px) {
      .event__def .def__title:before {
        width: 0.8vw;
        margin-top: -1px; } }
  .event__def .def__mail:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 19px;
    width: 15px;
    height: 12px;
    margin-top: -6px;
    background-image: url("/assets/img/common/icon-mail.svg");
    background-repeat: no-repeat;
    background-size: 100%; }
    @media only screen and (max-width: 767px) {
      .event__def .def__mail:before {
        width: 4vw;
        height: 3.33333vw;
        margin-top: 0;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        left: 19vw; } }
  .event__def .def__mail, .event__def .def__title {
    position: relative; }
  .event__def dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-top: 1px dotted #999999;
    padding: 12px 0 13px; }
    @media only screen and (max-width: 767px) {
      .event__def dl {
        padding: 4vw 0 3.33333vw; } }
  .event__def dl:first-of-type {
    margin-top: 31px; }
    @media only screen and (max-width: 767px) {
      .event__def dl:first-of-type {
        margin-top: 4vw; } }
  .event__def .def__term p,
  .event__def .def__desc p {
    font-size: 1.4rem;
    line-height: 26px; }
    @media only screen and (max-width: 767px) {
      .event__def .def__term p,
      .event__def .def__desc p {
        font-size: 3.73333vw;
        line-height: 5.33333vw; } }
  .event__def .def__term {
    width: 120px; }
    @media only screen and (max-width: 767px) {
      .event__def .def__term {
        width: 21.33333vw; } }
    .event__def .def__term p {
      font-weight: bold; }
  .event__def .def__desc {
    width: 550px; }
    @media only screen and (max-width: 767px) {
      .event__def .def__desc {
        width: 56.66667vw; } }
    @media only screen and (max-width: 767px) {
      .event__def .def__desc p:nth-of-type(1n + 2) {
        margin-top: 0vw;
        word-wrap: break-word; } }
    .event__def .def__desc .def__desc-link {
      color: #1cb7ff; }
      .event__def .def__desc .def__desc-link:hover {
        text-decoration: underline; }
      @media only screen and (max-width: 767px) {
        .event__def .def__desc .def__desc-link {
          word-wrap: break-word; } }
    .event__def .def__desc .def__desc-link:first-of-type {
      margin-right: 15px; }
      @media only screen and (max-width: 767px) {
        .event__def .def__desc .def__desc-link:first-of-type {
          margin-right: 4vw; } }
    @media only screen and (min-width: 768px) {
      .event__def .def__desc .tel-number {
        color: #212121;
        pointer-events: none; } }
    @media only screen and (max-width: 767px) {
      .event__def .def__desc .tel-number {
        color: #1cb7ff; } }
    @media only screen and (max-width: 767px) {
      .event__def .def__desc .tel {
        background-color: #f5f5f5;
        font-size: 3.2vw;
        font-weight: bold;
        color: #212121;
        display: block;
        width: 32vw;
        margin-top: 1.33333vw;
        padding: 2vw 4.66667vw 2vw 8vw;
        position: relative; }
      .event__def .def__desc .tel:before {
        content: "";
        top: 50%;
        left: 4vw;
        position: absolute;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        width: 2.13333vw;
        height: 4vw;
        background-image: url("/assets/img/common/icon-tel.svg");
        background-repeat: no-repeat;
        background-size: 100%; } }
    .event__def .def__desc .telbox:last-of-type {
      margin-top: 25px; }
      @media only screen and (max-width: 767px) {
        .event__def .def__desc .telbox:last-of-type {
          margin-top: 4vw; } }
    .event__def .def__desc .icon-link__map {
      color: #1cb7ff; }
      .event__def .def__desc .icon-link__map:hover {
        text-decoration: underline; }
  .event__def .event__map {
    margin-top: 10px; }
    @media only screen and (max-width: 767px) {
      .event__def .event__map {
        margin-top: 0; } }
    .event__def .event__map iframe {
      width: 100%;
      height: 370px; }
      @media only screen and (max-width: 767px) {
        .event__def .event__map iframe {
          height: 61.33333vw; } }

.list__title + .panel__list {
  margin-top: 40px; }
  @media only screen and (max-width: 767px) {
    .list__title + .panel__list {
      margin-top: 5.33333vw; } }

.course__list-other {
  margin-top: 80px; }
  @media only screen and (max-width: 767px) {
    .course__list-other {
      margin-top: 10.66667vw; } }

/*
common styles
*/
.link__banner {
  margin: 60px 0 53px;
  position: relative;
  border-radius: 10px;
  background-image: url(/assets/img/common/head-bg-mesh02.gif); }
  @media only screen and (max-width: 767px) {
    .link__banner {
      margin: 6.4vw 0 4vw;
      background-size: 0.66667vw; } }
  .link__banner > a {
    pointer-events: none; }
  .link__banner a {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 20px;
    color: #212121;
    -webkit-transition: color .25s;
    -o-transition: color .25s;
    transition: color .25s;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    @media only screen and (max-width: 767px) {
      .link__banner a {
        padding: 3.2vw 2.26667vw 2.66667vw 2.13333vw; } }
    .link__banner a:hover {
      color: #ed5d00; }
  .link__banner .banner__img {
    width: 230px;
    height: 160px;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 5px; }
    @media only screen and (max-width: 767px) {
      .link__banner .banner__img {
        width: 32.4vw;
        height: 22.4vw;
        border-radius: 3px 3px 0 0; } }
    .link__banner .banner__img img {
      width: 100%; }
  .link__banner .banner__info {
    width: 460px;
    padding: 10px 20px;
    border-radius: 5px;
    background: #fff;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    @media only screen and (max-width: 767px) {
      .link__banner .banner__info {
        width: 52.26667vw;
        padding: 2.4vw 1.5vw; } }
    .link__banner .banner__info .banner__title {
      width: 194px;
      margin-bottom: 12px; }
      @media only screen and (max-width: 767px) {
        .link__banner .banner__info .banner__title {
          width: 38.4vw;
          margin-bottom: 2.13333vw; } }
      .link__banner .banner__info .banner__title img {
        width: 100%; }
    .link__banner .banner__info .banner__text {
      position: relative;
      font-size: 2rem;
      font-weight: bold;
      line-height: 1.5;
      padding-left: 13px;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 2;
      overflow: hidden; }
      @media only screen and (min-width: 768px) {
        .link__banner .banner__info .banner__text {
          max-height: 60px; } }
      @media only screen and (max-width: 767px) {
        .link__banner .banner__info .banner__text {
          margin-left: 3.73333vw;
          padding-left: 0vw;
          font-size: 3.46667vw;
          line-height: 1.34615; } }

.link__banner a:before {
  content: "";
  position: absolute;
  bottom: -9px;
  left: -20px;
  width: 88px;
  height: 69px;
  background: url(/assets/img/common/icon-family.svg) no-repeat center top;
  background-size: 100% 100%;
  z-index: 10;
  pointer-events: none; }
  @media only screen and (max-width: 767px) {
    .link__banner a:before {
      content: none;
      bottom: 0;
      left: -3.2vw;
      width: 7.33333vw;
      height: 9.33333vw; } }

.link__banner a:after {
  content: "";
  position: absolute;
  top: -14px;
  right: 61px;
  width: 26px;
  height: 55px;
  background: url(/assets/img/common/icon-foot.png) no-repeat center top;
  background-size: 100% 100%;
  z-index: 10;
  pointer-events: none; }
  @media only screen and (max-width: 767px) {
    .link__banner a:after {
      top: -0.8vw;
      right: -0.8vw;
      width: 5.73333vw;
      height: 12vw; } }

/*# sourceMappingURL=single-style.css.map */