@charset "utf-8";

/*
 * File       : sub-reservation.css
 * Author     : STUDIO-JT (JSH, KMS)
 * Guideline  : JTstyle.1.1
 *
 * Dependency : css/reset.css
 *              css/jt-strap.css
 *              css/component.css
 *
 * SUMMARY:
 * 01) 장소예약 - 반복요소
 * 02) 장소예약 - LIST
 * 03) 장소예약 - FORM
 * 04) 장소예약 - COMPLETE
 * 05) 마이페이지 - 예약현황
 */



/* **************************************** *
 * 장소예약 - 반복요소
 * **************************************** */
/* 제목 + 새로고침 */
.jt-reservation-refresh { display: block; padding-top: 3.5rem; padding-bottom: 2.8rem; position: relative; font-size: 0; }

.jt-reservation-refresh__title { display: inline-block; vertical-align: middle; font-size: 2rem; font-weight: 600; letter-spacing: -0.05em; line-height: 1.4; color: #222; }
.jt-reservation-refresh__title > span { color: #0F4C82; }

.jt-reservation-refresh__action { display: inline-block; vertical-align: middle; margin-left: 0.5rem; padding: 0.2rem; position: relative; }
.jt-reservation-refresh__action:after { content: '\e968'; font-family: 'jt-font'; font-size: 1.8rem; line-height: 1; color: #222; }

/* 공지사항 UI */
.jt-reservation-notice { padding: 1.8rem 1.6rem; background: #f8f8f8; border-radius: 0.8rem; }
.jt-reservation-notice li { position: relative; font-size: 1.3rem; font-weight: 400; line-height: 1.53; letter-spacing: -0.025em; color: #666; }
.jt-reservation-notice ul li { padding-left: 1.2rem; margin-bottom: 0.7rem; }
.jt-reservation-notice ul li:before { content: ''; display: block; width: 4px; height: 4px; position: absolute; top: 0.8rem; left: 0; background: #0f4c82; border-radius: 50%; }
.jt-reservation-notice ul li:last-child { margin-bottom: 0; }

/* 정보 UI */
.jt-reservation-info { padding: 1.8rem 1.6rem; background: #f8f8f8; border-radius: 0.8rem; }
.jt-reservation-info > li { display: flex; flex-wrap: nowrap; align-items: flex-start; gap: 1.2rem; position: relative; font-size: 0; }
.jt-reservation-info > li + li { margin-top: 0.7rem; }
.jt-reservation-info > li > * { display: inline-block; font-size: 1.3rem; font-weight: 400; letter-spacing: -0.025em; line-height: 1.53; }
.jt-reservation-info > li > span { flex-shrink: 0; position: relative; color: #222; }
.jt-reservation-info > li > span:after { content: ''; width: 1px; height: 0.8rem; position: absolute; right: -0.6rem; top: 0.6rem; background: #ddd; }
.jt-reservation-info > li > p { color: #666; }



/* **************************************** *
 * 장소예약 - LIST
 * **************************************** */
/* 컴포넌트 Override */
body.page-template-adminstration-reservation .article_body > .wrap > .jt-separator:first-child { margin-top: 2rem; }
body.page-template-adminstration-reservation .jt-list-nothing { padding-top: 6rem; padding-bottom: 1rem; }

/* 참조 페이지 이동 링크 */
.jt-reservation-refer { position: absolute; right: 0; bottom: 0.6em; font-size: 1.2em; font-weight: 600; letter-spacing: -0.01em; color: #222; border-bottom: 0.1rem solid #222; }

/* 달력 */
.jt-reservation-calendar__gotoday { display: inline-block; vertical-align: middle; margin-left: 1rem; padding: 0.5rem 2.1rem; position: relative; top: -0.3rem; font-size: 1.2rem; line-height: 1.5; letter-spacing: -0.025em; font-weight: 500; color: #999; border: 0.1rem solid #ddd; transition: border .3s, color .3s; }
.jt-reservation-calendar__gotoday.jt-reservation-calendar__gotoday--striking { color: #0F4C82; border-color: #0F4C82; }

.jt-reservation-calendar { margin-top: 0.5rem; }

.jt-reservation-calendar__header { margin-bottom: 1.6rem; position: relative; text-align: center; }
.jt-reservation-calendar__date { font-size: 1.8rem; font-weight: 600; line-height: 1.27; letter-spacing: -0.025em; color: #222; }
.jt-reservation-calendar__btn { width: 2.3rem; height: 2.3rem; position: absolute; top: 50%; transform: translateY(-50%); }
.jt-reservation-calendar__btn:after { display: block; position: absolute; top: 50%; left: 50%; font-family: 'jt-font'; font-size: 1.2rem; line-height: 1; font-weight: normal; color: #222; transform: translate3d(-50%, -50%, 0); }
.jt-reservation-calendar__prev { left: -0.4em; }
.jt-reservation-calendar__prev:after { content: '\e912'; }
.jt-reservation-calendar__next { right: -0.4em; }
.jt-reservation-calendar__next:after { content: '\e913'; }
.jt-reservation-calendar__btn.jt-reservation-calendar--disabled { pointer-events: none; }
.jt-reservation-calendar__btn.jt-reservation-calendar--disabled:after { color: #ccc; }

.jt-reservation-calendar__list { width: 100%; }
.jt-reservation-calendar__list > ul { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 0 1.8rem; }
.jt-reservation-calendar__list > ul > li { text-align: center; }

.jt-reservation-calendar__col { padding-bottom: 1.5rem; border-bottom: 0.1rem solid #eee; }
.jt-reservation-calendar__col > li { font-size: 1.3rem; font-weight: 400; line-height: 1.53; letter-spacing: -0.025em; color: #222; }

.jt-reservation-calendar__row { margin-top: 1.5rem; }
.jt-reservation-calendar__row > li { padding-top: 100%; position: relative; }
.jt-reservation-calendar__row > li > a { display: block; width: 3.4rem; height: 3.4rem; margin-left: -0.025em; position: absolute; top: 50%; left: 50%; font-size: 1.4rem; font-weight: 500; line-height: 3.2rem; letter-spacing: -0.025em; color: #222; border: 0.1rem solid transparent; border-radius: 50%; box-sizing: border-box; transform: translate(-50%, -50%); }
.jt-reservation-calendar__row > li.jt-reservation-calendar--other a { opacity: 0; pointer-events: none; }
.jt-reservation-calendar__row > li.jt-reservation-calendar--today a { color: #0F4C82; border-color: #A9BED2; }
.jt-reservation-calendar__row > li.jt-reservation-calendar--select a { color: #fff; background: #0F4C82; border-color: #0F4C82; }
.jt-reservation-calendar__row > li.jt-reservation-calendar--past a { font-weight: 400; color: #ccc; background: none; border-color: transparent; pointer-events: none; }

.jt-reservation-calendar__info { margin-top: 1.8rem; font-size: 1.2rem; font-weight: 400; letter-spacing: -0.025em; line-height: 1.5; color: #999; }

/* 장소 필터 */
.jt-reservation-filter { margin-bottom: 3.5rem; }
 
.jt-reservation-filter__search { margin-bottom: 2rem; position: relative; }
.jt-reservation-filter__search .jt-form__field { padding-left: 3.2rem; padding-right: 3.2rem; font-size: 1.5rem; border: none; border-bottom: 0.1rem solid #222; }
.jt-reservation-filter__search .jt-form__clear-btn { right: 0; top: 1.1rem; }
.jt-reservation-filter__submit { display: block; width: 2.8rem; height: 2.8rem; margin-top: -1.5rem; padding: 0; position: absolute; left: 0; top: 50%; background: none; border: none; cursor: pointer; }
.jt-reservation-filter__submit:after { content: '\e932'; font-family: 'jt-font'; font-size: 1.8rem; line-height: 2.8rem; text-align: center; color: #222; }
html.ios .jt-reservation-filter__search .jt-form__field { padding-top: 1rem; padding-bottom: 1.2rem; }
html.ios .jt-reservation-filter__search .jt-form__clear-btn { top: 0.9rem; }

.jt-reservation-filter__list { margin: 0 -2rem; white-space: nowrap; overflow-y: hidden; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.jt-reservation-filter__list > ul { font-size: 0; white-space: nowrap; }
.jt-reservation-filter__list > ul > li { display: inline-block; vertical-align: top; margin-right: 0.6rem; }
.jt-reservation-filter__list > ul > li:first-child { margin-left: 2rem; }
.jt-reservation-filter__list > ul > li:last-child { margin-right: 2rem; }
.jt-reservation-filter__list > ul > li > button { display: block; padding: 0.7rem 3rem 0.7rem 1.3rem; position: relative; font-size: 1.3rem; font-weight: 400; line-height: 1.53; letter-spacing: -0.025em; color: #999; background: #fff; border: 0.1rem solid #ddd; cursor: pointer; transition: color .3s, border .3s, background .3s; }
.jt-reservation-filter__list > ul > li > button:after { position: absolute; right: 1.5rem; top: 50%; content: '\e911'; font-family: 'jt-font'; font-size: 0.6rem; line-height: 1; font-weight: normal; transform: translateY(-50%); }
.jt-reservation-filter__list > ul > li.jt-reservation-filter--active > button { color: #fff; background: #0F4C82; border-color: #0F4C82; }
html.ios .jt-reservation-filter__list > ul > li > button:after,
html.android .jt-reservation-filter__list > ul > li > button:after { top: calc(50% + 0.1rem) }

/* 장소 타입 안내 */
.jt-reservation-program-notice { position: relative; }

.jt-reservation-type { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; margin: 0 -2rem; padding: 1.2rem 2rem; background: #f8f8f8; border: solid #ddd; border-width: 0.1rem 0; }
.jt-reservation-type > span { padding-left: 1.2rem; position: relative; font-size: 1.2rem; font-weight: 400; line-height: 1.5; letter-spacing: -0.025em; color: #666; }
.jt-reservation-type > span:before { content: ''; width: 0.8rem; height: 0.8rem; position: absolute; left: 0; top: 50%; background: #6c9bc5; border: 0.1rem solid #6c9bc5; border-radius: 50%; box-sizing: border-box; transform: translateY(-50%); }
.jt-reservation-type > span.jt-reservation-type--readonly:before { background: #eee; border-color: #ddd; }
.jt-reservation-type>span.jt-reservation-type--disabled:before { background: #bbb; border-color: #bbb; }

.jt-reservation-program-notice .jt-reservation-refresh__action { margin-left: 0; padding-right: 1.8rem; position: absolute; right: 0; top: 50%; transform: translate(0, -50%); font-size: 1.2rem; color: #222; }
.jt-reservation-program-notice .jt-reservation-refresh__action:after { position: absolute; right: 0; top: 50%; transform: translate(0, -50%); font-size: 1.2rem; }

/* 장소 리스트 */
.jt-reservation-program { margin: 0 -2rem; }
.jt-reservation-program__item { padding: 3.5rem 2rem; }
.jt-reservation-program__item:not(:last-child) { border-bottom: 0.1rem solid #ddd; }
.jt-reservation-program__item + .jt-reservation-program__item { border-top: 0.7rem solid #eee; }

.jt-reservation-program__head { margin-bottom: 2rem; position: relative; display: flex; flex-wrap: nowrap; justify-content: space-between; align-items: start; }
.jt-reservation-program__title { padding-right: 1.5rem; font-size: 1.8rem; font-weight: 600; line-height: 1.27; letter-spacing: -0.025em; color: #222; }
.jt-reservation-program__capacity { display: block; padding-left: 2.8rem; position: relative; font-size: 1.3rem; font-weight: 600; line-height: 1.53; font-style: normal; letter-spacing: -0.025em; white-space: nowrap; color: #666; flex-shrink: 0; }
.jt-reservation-program__capacity:before { width: 2.8rem; height: 2.8rem; margin-top: -1.4rem; position: absolute; top: 50%; left: 0; content: '\e96d'; font-family: 'jt-font'; font-size: 1.4rem; line-height: 2.8rem; text-align: center; font-weight: normal; color: #b2b2b2; }

.jt-reservation-program__time-item > b { display: block; margin-bottom: 1rem; font-size: 1.2rem; font-weight: 600; line-height: 1.5; letter-spacing: -0.025em; color: #222; }
.jt-reservation-program__time-item:nth-child(2) { margin-top: 1.6rem; padding-top: 1.6rem; border-top: 0.1rem solid #eee; }

.jt-reservation-program__time-table { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 1.3rem 1px; }
.jt-reservation-program__time-table > li { height: 1rem; margin-bottom: 1.7rem; position: relative; background: #6c9bc5; }
.jt-reservation-program__time-table > li > span,
.jt-reservation-program__time-table > li:after { display: none; position: absolute; top: calc(100% + 0.6rem); font-size: 1.1rem; font-weight: 400; letter-spacing: -0.025em; line-height: 1.1; color: #999; }
.jt-reservation-program__time-table > li > span { left: 0; transform: translateX(-50%); }
.jt-reservation-program__time-table > li:after { content: attr(data-etime); right: 0; }
.jt-reservation-program__time-table > li.jt-reservation-program__time--readonly { background: #eee; }
.jt-reservation-program__time-table > li.jt-reservation-program__time--disabled { background: #bbb; }
.jt-reservation-program__time-table > li.jt-reservation-program__time--helper { background: transparent; }
.jt-reservation-program__time-table > li:nth-child(odd) > span { display: block; }
.jt-reservation-program__time-table > li:first-child,
.jt-reservation-program__time-table > li:nth-child(13) { border-radius: 1rem 0 0 1rem; }
.jt-reservation-program__time-table > li:first-child > span,
.jt-reservation-program__time-table > li:nth-child(13) > span { transform: none; }
.jt-reservation-program__time-table > li:nth-child(12),
.jt-reservation-program__time-table > li:last-child { border-radius: 0 1rem 1rem 0; }
.jt-reservation-program__time-table > li:nth-child(12):after,
.jt-reservation-program__time-table > li:last-child:after { display: block; }

.jt-reservation-program__button { margin-top: 3.5rem; }
.jt-reservation-program__button .jt-btn__basic { display: block; padding: 1.3rem 3.3rem; font-size: 1.5rem; line-height: 1.66; }

.jt-reservation-program__item--disabled .jt-reservation-program__time-table > li { background: #eee; }

/* Bottomsheet (모바일 필터) */
.jt-reservation-bsheet__overlay { display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0, 0, 0, .4); z-index: 9999; }
.jt-reservation-bsheet { display: none; width: 100%; height: 90%; /* max-height: 58.8rem; */ max-height: 44.8rem; position: fixed; left: 0; bottom: 0; background: #fff; border-radius: 0.4rem 0.4rem 0 0; overflow: hidden; z-index: 10000; }
.jt-reservation-bsheet__content { height: 100%; padding: 2.8rem 2rem 6rem; }
.jt-reservation-bsheet__content-inner { height: 100%; padding-top: 1.2rem; padding-bottom: 4rem; overflow-y: auto; }
.jt-reservation-bsheet__content:after { content: ''; width: 100%; height: 1.2rem; position: absolute; top: 2.8rem; left: 0; background: linear-gradient(to bottom, rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%); z-index: 1; }

.jt-reservation-bsheet__actions { position: absolute; bottom: 0; left: 0; right: 0; display: flex; flex-wrap: nowrap; z-index: 1; }
.jt-reservation-bsheet__actions > button { width: 50%; height: 6rem; padding: 0; font-size: 1.6rem; font-weight: 600; line-height: 1; letter-spacing: -0.025em; border: none; cursor: pointer; }
.jt-reservation-bsheet__actions > button.jt-reservation-bsheet__clear { color: #222; background: #ddd; }
.jt-reservation-bsheet__actions > button.jt-reservation-bsheet__action { color: #fff; background: #0f4c82; }

.jt-reservation-bsheet__close { width: 2.4rem; height: 2.4rem; padding: 0; position: absolute; right: 1.4rem; top: 1.4rem; background: none; border: none; z-index: 1; }
.jt-reservation-bsheet__close:after { content: '\e92e'; font-family: 'jt-font'; font-size: 1.7rem; font-weight: normal; text-align: center; line-height: 2.4rem; color: #b2b2b2; }

.jt-reservation-bsheet__list { display: flex; flex-wrap: wrap; gap: 2.4rem 0; }
.jt-reservation-bsheet__list > li { width: 100%; }
.jt-reservation-bsheet__list > li > b { display: block; margin-bottom: 1.2rem; font-size: 1.6rem; line-height: 1.5; letter-spacing: -0.025em; font-weight: 600; color: #222; } 
.jt-reservation-bsheet__select { display: flex; flex-wrap: wrap; gap: 0.8rem; }
.jt-reservation-bsheet__select label { display: block; position: relative; }
.jt-reservation-bsheet__select label > input { position: absolute; opacity: 0; cursor: pointer; left: -9999px; }
.jt-reservation-bsheet__select label > span { display: block; padding: 0.8rem 1.4rem; font-size: 1.3rem; font-weight: 400; line-height: 1.53; letter-spacing: -0.025em; color: #666; background: #fff; border: 0.1rem solid #ddd; transition: border .3s, color .3s; }
.jt-reservation-bsheet__select label > input:checked + span { color: #0f4c82; border-color: #0f4c82; }

body.jt-reservation-filter--open { width: 100%; overflow: hidden; }



/* **************************************** *
 * 장소예약 - FORM
 * **************************************** */
body.page-template-adminstration-reservation-form .jt-form .jt-separator { margin-top: 0; }

/* 공지 및 정보 */
.jt-reservation-notice + .jt-reservation-locaform { margin-top: 1.2rem; }

.jt-reservation-locaform .jt-accordion { background: #f8f8f8; border: none; border-radius: 0.8rem; }
.jt-reservation-locaform .jt-accordion__title { padding: 1.8rem 1.6rem; border: none; z-index: 1; }
.jt-reservation-locaform .jt-accordion__title.jt-accordion--active { z-index: inherit; }
.jt-reservation-locaform .jt-accordion__questions { font-size: 1.3rem; font-weight: 600; line-height: 1.53; letter-spacing: -0.025em; }
.jt-reservation-locaform .jt-accordion__control { right: 0.7rem; margin-top: -1.5em; }
.jt-reservation-locaform .jt-accordion__content { margin-top: -1.1rem; padding-bottom: 1.1rem; background: none; }
.jt-reservation-locaform .jt-accordion__content-inner { padding: 0 1.6rem 0.7rem; }
.jt-reservation-locaform .jt-accordion__content.jt-accordion--active > .jt-accordion__content-inner { border: none; }
.jt-reservation-locaform .jt-accordion__content .jt-reservation-info { padding: 0; background: transparent; }

/* 시간 */
.jt-reservation-choices__head { position: relative; }
.jt-reservation-choices__body { margin-top: -0.8rem; }

.jt-reservation-choices__type { position: absolute; right: 0; top: 4rem; display: flex; flex-wrap: nowrap; gap: 1rem; }
.jt-reservation-choices__type > li { padding-left: 1.2rem; position: relative; font-size: 1.2rem; font-weight: 400; line-height: 1.5; letter-spacing: -0.025em; color: #666; }
.jt-reservation-choices__type>li:before { content: ''; display: block; width: 0.8rem; height: 0.8rem; position: absolute; left: 0; top: 50%; background: #bdd0e2; border-radius: 50%; transform: translate(0, -50%); }
.jt-reservation-choices__type > li.jt-reservation-choices__type--readonly:before { background: #b2b2b2; }
.jt-reservation-choices__type > li.jt-reservation-choices__type--disabled { padding-left: 1.3rem; }
.jt-reservation-choices__type > li.jt-reservation-choices__type--disabled:before { width: 1rem; height: 1rem; content: '\e92e'; font-family: 'jt-font'; font-size: 1rem; font-weight: normal; color: #aaa; background: transparent; top: calc(50% - 0.1rem); scale: 0.85; }
html.ios .jt-reservation-choices__type > li:before { top: calc(50% + 0.1rem); }
html.ios .jt-reservation-choices__type > li.jt-reservation-choices__type--disabled:before { top: calc(50% - 0.15rem); }

.jt-reservation-choices__helper { margin-top: -0.8rem; padding-bottom: 2rem; font-size: 1.2rem; line-height: 1.5; font-weight: 400; color: #b2b2b2; }

.jt-reservation-choices__info { padding: 2rem; margin-bottom: 2.8rem; font-size: 1.3rem; line-height: 1.53; font-weight: 400; letter-spacing: -0.025em; color: #222; background: #f8f8f8; border-radius: 0.8rem; }
.jt-reservation-choices__info > span { font-weight: 600; color: #0f4c82; }
.jt-reservation-choices__info > span:not(:empty):before { content: ', '; font-weight: 400; color: #222; }

.jt-reservation-choices__time > li:nth-child(2) { margin-top: 2.4rem; padding-top: 1.6rem; border-top: 0.1rem solid #eee; }
.jt-reservation-choices__time > li > b { display: block; margin-bottom: 1rem; font-size: 1.2rem; font-weight: 600; line-height: 1.5; letter-spacing: -0.025em; color: #222; }

.jt-reservation-choices__time-table { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem 0.9rem; }
.jt-reservation-choices__time-table > li { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; }
.jt-reservation-choices__time-table > li > label { padding-top: 100%; margin-bottom: 1.7rem; position: relative; cursor: pointer; }
.jt-reservation-choices__time-table > li > label > i { position: absolute; top: 0; bottom: 0; left: 0; right: 0; background: #bdd0e2; border-radius: 0.2rem; overflow: hidden; }
.jt-reservation-choices__time-table > li > label > input { width: 0; height: 0; position: absolute; top: 0; left: 0; opacity: 0; }
.jt-reservation-choices__time-table > li > label:after,
.jt-reservation-choices__time-table > li > label > span { display: none; position: absolute; top: calc(100% + 0.6rem); font-size: 1.1rem; font-weight: 400; letter-spacing: -0.025em; line-height: 1.1rem; color: #999; }
.jt-reservation-choices__time-table > li > label > span { left: -0.5rem; transform: translateX(-50%); }
.jt-reservation-choices__time-table > li > label:first-child > span { display: block; }
.jt-reservation-choices__time-table > li:first-child > label > span,
.jt-reservation-choices__time-table > li:nth-child(4n+1) > label > span { left: 0; transform: none; }
.jt-reservation-choices__time-table > li:last-child > label:last-child:after,
.jt-reservation-choices__time-table > li:nth-child(4n) > label:last-child:after { content: attr(data-etime); display: block; right: 0; }

.jt-reservation-choices__time-table > li > label > input:checked + i { background: #0f4c82; }
.jt-reservation-choices__time-table > li > label > input:checked + i:after { position: absolute; top: 50%; left: 50%; content: '\e935'; font-family: 'jt-font'; font-size: 1.3rem; line-height: 1; font-weight: bold; font-style: normal; color: #fff; transform: translate(-50%, -50%); }
.jt-reservation-choices__time-table > li > label > input[data-readonly] + i { background: #b2b2b2; }
.jt-reservation-choices__time-table > li > label > input:disabled + i { background: #d3d3d3; }
.jt-reservation-choices__time-table > li > label > input:disabled + i:before,
.jt-reservation-choices__time-table > li > label > input:disabled + i:after { content: ''; width: 0.1rem; height: 100%; position: absolute; background: #eee; left: 50%; top: 0; }
.jt-reservation-choices__time-table > li > label > input:disabled + i:before { transform: scale(2) rotate(45deg); }
.jt-reservation-choices__time-table > li > label > input:disabled + i:after { transform: scale(2) rotate(-45deg); }
.jt-reservation-choices__time-table > li > label.jt-reservation-choices__time-disabled { pointer-events: none; }

/* Input */
#jt-reservation-register .jt-form__field-wrap input[type=text] { padding-right: 4rem; }
#jt-reservation-register .jt-form__clear-btn { right: 1.1rem; }



/* **************************************** *
 * 장소예약 - COMPLETE
 * **************************************** */
body.page-template-adminstration-reservation-complete .jt-form__btn:first-child { margin-bottom: 0.8rem; color: #666; border-color: #ddd; }



/* **************************************** *
 * 마이페이지 - 예약현황
 * **************************************** */
.jt-my-reservation { margin-left: -2rem; margin-right: -2rem; border-top: .1rem solid #222; }
.jt-my-reservation__item { position: relative; border-bottom: .1rem solid #ddd; }
.jt-my-reservation__item + .jt-my-reservation__item { border-top: .7rem solid #eee; }
.jt-my-reservation__info { padding: 2rem; }
.jt-my-reservation__info li { display: grid; grid-template-columns: 10rem calc(100% - 10rem); font-size: 1.4rem; line-height: 1.5; letter-spacing: -0.025em; font-weight: 400; }
.jt-my-reservation__info li + li { margin-top: .7rem; }
.jt-my-reservation__info li span { padding-right: 1rem; color: #999; }
.jt-my-reservation__info li p { word-break: break-word; color: #666; }
.jt-my-reservation__info li.important p { color: #6C9BC5; }
.jt-my-reservation__info li.canceled p { color: #dd4242; }

.jt-my-reservation__buttons { border-top: .1rem solid #ddd; font-size: 0; }
.jt-my-reservation__button { display: block; padding: 1.2rem 1rem 1.3rem; font-size: 1.4rem; font-weight: 500; letter-spacing: -0.025em; line-height: 1.5; text-align: center; color: #666; }
