@charset "utf-8";


/*  l-train
--------------------------------------------------*/
.l-train {
  position: relative;
  padding-bottom: 30.0rem;
}
.train-index {
  position: relative;
}
.train-intro {
  margin-top: 13.0rem;
}
.train-intro__index {
  width: calc(460 / 1560 * 100%);
}
.train-intro__index__detail {
  width: 100%;
}
.train-intro__index__flow {
  width: min(100%,380px);
  margin-inline: 0 auto;
  margin-top: 4.0rem;
}
.train-intro__index__info {
  width: min(100%,380px);
  margin-inline: 0 auto;
  margin-top: 4.0rem;
}
.train-intro__index__info__heading {
  width: 100%;
  font-size: 1.6rem;
  line-height: 1.45;
  letter-spacing: .1em;
  text-align: center;
  color: #48544c;
  border: solid 1px #99a09b;
  margin-bottom: 1.5rem;
  padding-block: .9rem 1.0rem;
}
.train-intro__index__info__detail {
  width: 100%;
  gap: .5rem 0;
}
.train-intro__index__info__detail__item {
  position: relative;
  width: 100%;
  color: var(--color-deep);
  padding-left: 3.0rem;
}
.train-intro__index__info__detail__item::before {
  content: '';
  position: absolute;
  top: 1.7rem;
  left: .5rem;
  width: .8rem;
  height: .8rem;
  border-radius: 50%;
  background-color: #7c8972;
}
.train-intro__index__info__detail__item__box {
  width: 100%;
  gap: 0 1.0rem;
}
.train-intro__index__info__detail__item__heading {
  width: fit-content;
  font-size: 1.6rem;
  letter-spacing: .1em;
}
.train-intro__index__info__detail__item__heading span {
  font-size: calc(20 / 16 * 1em);
  letter-spacing: .1em;
}
.train-intro__index__info__detail__item__distance {
  position: relative;
  flex: 1;
  gap: 0 1.0rem;
}
.train-intro__index__info__detail__item__distance::before {
  content: '';
  position: relative;
  top: .8em;
  height: 2px;
  background-image: radial-gradient(circle at center, #99a09b 1px, transparent 1px);
  background-size: 7px 2px;
  background-repeat: repeat-x;
  flex: 1;
}
.train-intro__index__info__detail__item__distance__box {
  width: 13.5rem;
  font-size: 1.6rem;
}
.train-intro__index__info__detail__item__distance__box .l1 {
  font-size: calc(16 / 16 * 1em);
  letter-spacing: .1em;
}
.train-intro__index__info__detail__item__distance__box .l2 {
  position: relative;
  top: 0.05em;
  width: 3.5rem;
  font-size: calc(30 / 16 * 1em);
  letter-spacing: 0;
  color: var(--color-medium);
  text-align: right;  
}
.train-intro__index__info__detail__item__distance__box .l3 {
  font-size: calc(16 / 16 * 1em);
  letter-spacing: .1em;
}
.train-intro__index__info__detail__item__distance__box .l4 {
  font-size: calc(14 / 16 * 1em);
  letter-spacing: .03em;
}
.train-intro__index__info__detail__item__note {
  font-size: max(10px,1.1rem);
  letter-spacing: .1em;
  color: #5d6760;
  margin-top: .7rem;
}
.train-intro__map {
  width: calc(1060 / 1560 * 100%);
}
.train-list {
  grid-template-columns: repeat(5,1fr);
  gap: 3.5rem;
  margin-top: 14.5rem;
}
.train-list__item {
  position: relative;
  width: 100%;
  height: 45.0rem;
  z-index: 1;
}
.train-list__item__photo {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: clip;
  z-index: -1;
}
.train-list__item__photo img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
}
.train-list__item__detail {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  margin-inline: auto;
  color: rgba(var(--white-rgb), 0.8);
  text-align: center;
  width: fit-content;
  z-index: 1;
}
.train-list__item__detail__sta {
  font-size: 1.8rem;
  letter-spacing: .05em;
  text-shadow: 0 0 10px rgba(var(--black-rgb), 0.4),0 0 10px rgba(var(--black-rgb), 0.4),0 0 10px rgba(var(--black-rgb), 0.4),0 0 10px rgba(var(--black-rgb), 0.4);
}
.train-list__item__detail__sta span {
  font-size: calc(26 / 18 * 1em);
  letter-spacing: .05em;
}
.train-list__item__detail__distance {
  font-size: 1.8rem;
  letter-spacing: .05em;
  text-shadow: 0 0 10px rgba(var(--black-rgb), 0.4),0 0 10px rgba(var(--black-rgb), 0.4),0 0 10px rgba(var(--black-rgb), 0.4),0 0 10px rgba(var(--black-rgb), 0.4);
  margin-top: 1.5rem;
}
.train-list__item__detail__distance .l1 {
  font-size: calc(18 / 18 * 1em);
  letter-spacing: .05em;
}
.train-list__item__detail__distance .l2 {
  font-size: calc(36 / 18 * 1em);
  letter-spacing: .05em;
  font-weight: 300 !important;
}
.train-list__item__detail__distance .l3 {
  font-size: calc(22 / 18 * 1em);
  letter-spacing: .05em;
}
.train-list__item__detail__distance .l4 {
  font-size: calc(16 / 18 * 1em);
  letter-spacing: .05em;
}
.train-list__item__detail__distance .l4 span {
  font-size: calc(20 / 16 * 1em);
  letter-spacing: .05em;
}
.train-list__item__detail__name {
  font-size: 1.8rem;
  letter-spacing: .05em;
  text-shadow: 0 0 10px rgba(var(--black-rgb), 0.4),0 0 10px rgba(var(--black-rgb), 0.4),0 0 10px rgba(var(--black-rgb), 0.4),0 0 10px rgba(var(--black-rgb), 0.4);
  margin-top: 2.3rem;
  padding-top: 2.4rem;
  border-top: solid 1px rgba(var(--white-rgb), 0.8);
}
@media screen and (max-width: 1100px){
  .train-intro__index {
    width: 100%;
  }
  .train-intro__index__info {
    width: 100%;
  }
  .train-intro__map {
    width: 100%;
    margin-top: 10.0rem;
  }
  .train-list {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 767px){
  .l-train {
    padding-bottom: 12.0rem;
  }
  .train-intro {
    margin-top: 6.5rem;
  }
  .train-intro__index {
    width: 100%;
  }
  .train-intro__index__flow {
    width: 100%;
    margin-top: 5.0rem;
  }
  .train-intro__index__info {
    width: 100%;
    margin-top: 4.0rem;
  }
  .train-intro__index__info__heading {
    font-size: 1.4rem;
    margin-bottom: 2.0rem;
    padding-block: .6rem .7rem;
  }
  .train-intro__index__info__detail {
    gap: .5rem 0;
  }
  .train-intro__index__info__detail__item {
    padding-left: 2.0rem;
  }
  .train-intro__index__info__detail__item::before {
    top: .7rem;
    left: .3rem;
    width: .6rem;
    height: .6rem;
  }
  .train-intro__index__info__detail__item__box {
    gap: 0;
  }
  .train-intro__index__info__detail__item__heading {
    font-size: 1.4rem;
  }
  .train-intro__index__info__detail__item__distance {
    margin-top: -.5rem;
  }
  .train-intro__index__info__detail__item__note {
    font-size: 1.0rem;
    text-align: right;
    margin-top: 1.0rem;
  }
  .train-intro__map {
    width: 100%;
    margin-top: 6.0rem;
  }
  .train-list {
    grid-template-columns: repeat(1, 1fr);
    gap: 1.0rem;
    margin-top: 7.0rem;
  }
  .train-list__item {
    /* height: 22.5rem; */
    height: 12.5rem;
  }
  .train-list__item__detail__sta {
    font-size: 1.1rem;
  }
  .train-list__item__detail__distance {
    font-size: 1.1rem;
    margin-top: 1.0rem;
  }
  .train-list__item__detail__name {
    font-size: 1.1rem;
    margin-top: 1.4rem;
    padding-top: 1.5rem;
  }
}




/*  l-romancecar
--------------------------------------------------*/
.l-romancecar {
  padding-bottom: 30.0rem;
}
.romancecar-index {
  position: relative;
}
.romancecar-intro {
  margin-top: 13.0rem;
}
.romancecar-intro__index {
  width: calc(360 / 1560 * 100%);
}
.romancecar-intro__map {
  width: calc(1060 / 1560 * 100%);
}
.romancecar-gallery {
  margin-top: 12.0rem;
}
.romancecar-gallery__inner {
  width: min(95%,1740px);
  margin-inline: 0 auto;
}
.romancecar-gallery__photo {
  width: calc(660 / 1740 * 100%);
}
.romancecar-gallery__list {
  width: calc(930 / 1740 * 100%);
  grid-template-columns: repeat(2,1fr);
  gap: 5.0rem;
}
.romancecar-gallery__list__item {
  position: relative;
  width: 100%;
  height: 26.4rem;
  z-index: 1;
}
.romancecar-gallery__list__item__photo {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: clip;
  z-index: -1;
}
.romancecar-gallery__list__item__photo img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
}
.romancecar-gallery__list__item__detail {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  margin-inline: auto;
  color: rgba(var(--white-rgb), 0.8);
  text-align: center;
  width: fit-content;
  z-index: 1;
}
.romancecar-gallery__list__item__detail__sta {
  font-size: 1.8rem;
  letter-spacing: .05em;
  text-shadow: 0 0 10px rgba(var(--black-rgb), 0.4),0 0 10px rgba(var(--black-rgb), 0.4),0 0 10px rgba(var(--black-rgb), 0.4),0 0 10px rgba(var(--black-rgb), 0.4);
}
.romancecar-gallery__list__item__detail__sta span {
  font-size: calc(26 / 18 * 1em);
  letter-spacing: .05em;
}
.romancecar-gallery__list__item__detail__distance {
  font-size: 1.8rem;
  letter-spacing: .05em;
  text-shadow: 0 0 10px rgba(var(--black-rgb), 0.4),0 0 10px rgba(var(--black-rgb), 0.4),0 0 10px rgba(var(--black-rgb), 0.4),0 0 10px rgba(var(--black-rgb), 0.4);
  margin-top: 1.5rem;
}
.romancecar-gallery__list__item__detail__distance .l1 {
  font-size: calc(18 / 18 * 1em);
  letter-spacing: .05em;
}
.romancecar-gallery__list__item__detail__distance .l2 {
  font-size: calc(36 / 18 * 1em);
  letter-spacing: .05em;
  font-weight: 300 !important;
}
.romancecar-gallery__list__item__detail__distance .l3 {
  font-size: calc(22 / 18 * 1em);
  letter-spacing: .05em;
}
.romancecar-gallery__list__item__detail__distance .l4 {
  font-size: calc(16 / 18 * 1em);
  letter-spacing: .05em;
}
.romancecar-gallery__list__item__detail__distance .l4 span {
  font-size: calc(20 / 16 * 1em);
  letter-spacing: .05em;
}
.romancecar-gallery__list__item__detail__name {
  font-size: 1.8rem;
  letter-spacing: .05em;
  text-shadow: 0 0 10px rgba(var(--black-rgb), 0.4),0 0 10px rgba(var(--black-rgb), 0.4),0 0 10px rgba(var(--black-rgb), 0.4),0 0 10px rgba(var(--black-rgb), 0.4);
  margin-top: 2.3rem;
  padding-top: 2.4rem;
  border-top: solid 1px rgba(var(--white-rgb), 0.8);
}
@media screen and (max-width: 1100px){
  .romancecar-intro__index {
    width: 100%;
  }
  .romancecar-intro__map {
    width: 100%;
    margin-top: 10.0rem;
  }
  .romancecar-gallery__inner {
    width: calc(320 / 380 * 100%);
    margin-inline: auto;
    gap: 5.0rem;
  }
  .romancecar-gallery__photo {
    width: 100%;
  }
  .romancecar-gallery__list {
    width: 100%;
  }
}
@media screen and (max-width: 767px){
  .l-romancecar {
    padding-bottom: 12.0rem;
  }
  .romancecar-intro {
    margin-top: 6.5rem;
  }
  .romancecar-intro__index {
    width: 100%;
  }
  .romancecar-intro__map {
    width: 100%;
    margin-top: 5.0rem;
  }
  .romancecar-gallery {
    margin-top: 5.0rem;
  }
  .romancecar-gallery__inner {
    width: calc(320 / 380 * 100%);
    max-width: 560px;
    margin-inline: auto;
    gap: 2.0rem;
  }
  .romancecar-gallery__photo {
    width: 100%;
  }
  .romancecar-gallery__list {
    width: 100%;
    gap: 1.0rem;
  }
  .romancecar-gallery__list__item {
    height: 22.5rem;
  }
  .romancecar-gallery__list__item__detail__sta {
    font-size: 1.1rem;
  }
  .romancecar-gallery__list__item__detail__distance {
    font-size: 1.1rem;
    margin-top: 1.0rem;
  }
  .romancecar-gallery__list__item__detail__name {
    font-size: 1.1rem;
    margin-top: 1.4rem;
    padding-top: 1.5rem;
  }
}




/*  l-caraccess
--------------------------------------------------*/
.l-caraccess {
  padding-bottom: 30.0rem;
}
.caraccess-contents__outer {
  margin-top: 13.0rem;
}
.caraccess-contents__inner {
  width: min(95%,1740px);
  margin-inline: auto 0;
}
.caraccess-contents__map {
  width: calc(930 / 1740 * 100%);
}
.caraccess-contents__reference {
  width: calc(660 / 1740 * 100%);
  margin-bottom: 23px;
}
.caraccess-contents__reference__photo {
  width: 100%;
}
.caraccess-contents__reference__info {
  width: min(95%,480px);
  margin-inline: 0 auto;
  margin-top: 6.0rem;
}
.caraccess-contents__reference__info__heading {
  width: 100%;
  font-size: 1.8rem;
  line-height: 1.45;
  letter-spacing: .05em;
  margin-bottom: 4.0rem;
}
.caraccess-contents__reference__info__heading span {
  font-size: calc(26 / 18 * 1em);
  letter-spacing: .05em;
}
.caraccess-contents__reference__info__detail {
  width: 100%;
  gap: 4.5rem 0;
  padding-left: 3.6rem;
  border-left: solid 1px var(--color-medium);
}
.caraccess-contents__reference__info__detail__item {
  position: relative;
  width: 100%;
  color: var(--color-medium);
}
.caraccess-contents__reference__info__detail__item__box {
  width: 100%;
  gap: 0 1.5rem;
}
.caraccess-contents__reference__info__detail__item__heading {
  width: fit-content;
  font-size: 1.8rem;
  letter-spacing: .05em;
}
.caraccess-contents__reference__info__detail__item__heading span {
  font-size: calc(26 / 18 * 1em);
  letter-spacing: .05em;
}
.caraccess-contents__reference__info__detail__item__distance {
  position: relative;
  flex: 1;
  gap: 0 1.5rem;
}
.caraccess-contents__reference__info__detail__item__distance::before {
  content: '';
  position: relative;
  top: .5em;
  height: 2px;
  background: linear-gradient(to right, #6e7c62 2px, transparent 2px) repeat-x left top / 4px 1px;
  flex: 1;
}
.caraccess-contents__reference__info__detail__item__distance__box {
  width: 13.5rem;
  font-size: 1.8rem;
}
.caraccess-contents__reference__info__detail__item__distance__box .l1 {
  font-size: calc(18 / 18 * 1em);
  letter-spacing: .05em;
}
.caraccess-contents__reference__info__detail__item__distance__box .l2 {
  position: relative;
  width: 4.5rem;
  font-size: calc(36 / 18 * 1em);
  letter-spacing: .05em !important;
  font-weight: 300 !important;
  text-align: right;
  transform: translateY(0.05em);
}
.caraccess-contents__reference__info__detail__item__distance__box .l3 {
  font-size: calc(22 / 18 * 1em);
  letter-spacing: .05em;
}
.caraccess-contents__reference__info__detail__item__distance__box .l4 {
  font-size: calc(14 / 18 * 1em);
  letter-spacing: .05em;
}
.caraccess-contents__reference__info__detail__item__note {
  font-size: max(10px,1.1rem);
  letter-spacing: .1em;
  color: #666666;
  line-height: 1.45;
  margin-top: 1.3rem;
}
@media screen and (max-width: 1100px){
  .caraccess-contents__inner {
    width: calc(320 / 380 * 100%);
    margin-inline: auto;
  }
  .caraccess-contents__map {
    width: 100%;
  }
  .caraccess-contents__reference {
    width: 100%;
    margin-bottom: 0;
    margin-top: 10.0rem;
  }
}
@media screen and (max-width: 767px){
  .l-caraccess {
    padding-bottom: 12.0rem;
  }
  .caraccess-contents__outer {
    margin-top: 6.5rem;
  }
  .caraccess-contents__inner {
    width: calc(320 / 380 * 100%);
    max-width: 560px;
    margin-inline: auto;
  }
  .caraccess-contents__map {
    width: 100%;
  }
  .caraccess-contents__reference {
    width: 100%;
    margin-bottom: 0;
    margin-top: 5.0rem;
  }
  .caraccess-contents__reference__photo {
    width: 100%;
  }
  .caraccess-contents__reference__info {
    width: 100%;
    margin-top: 5.0rem;
  }
  .caraccess-contents__reference__info__heading {
    font-size: 1.4rem;
    margin-bottom: 2.5rem;
  }
  .caraccess-contents__reference__info__detail {
    gap: 2.0rem 0;
    padding-left: 2.0rem;
  }
  .caraccess-contents__reference__info__detail__item__box {
    gap: 0 1.0rem;
  }
  .caraccess-contents__reference__info__detail__item__heading {
    font-size: 1.3rem;
  }
  .caraccess-contents__reference__info__detail__item__distance {
    gap: 0 1.0rem;
  }
  .caraccess-contents__reference__info__detail__item__distance__box {
    width: 10.5rem;
    font-size: 1.4rem;
  }
  .caraccess-contents__reference__info__detail__item__distance__box .l2 {
    width: 3.6rem;
  }
  .caraccess-contents__reference__info__detail__item__note {
    font-size: 1.0rem;
    margin-top: 1.0rem;
  }
}
