@charset "utf-8";

/* ----------------------------------------------------------------
    ress
----------------------------------------------------------------- */
/*!
 * ress.css v1.2.2
 * MIT License
 * github.com/filipelinhares/ress
 */
/* # =================================================================
   # Global selectors
   # ================================================================= */
html {
  overflow-y: scroll;
  box-sizing: border-box;
  /* All browsers without overlaying scrollbars */
  -webkit-text-size-adjust: 100%;
  /* iOS 8+ */
}

*, ::before, ::after {
  /* Set `background-repeat: no-repeat` to all elements and pseudo elements */
  box-sizing: inherit;
  background-repeat: no-repeat;
}

::before, ::after {
  /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
  vertical-align: inherit;
  text-decoration: inherit;
}

* {
  /* Reset `padding` and `margin` of all elements */
  margin: 0;
  padding: 0;
}

/* # =================================================================
   # General elements
   # ================================================================= */
/* Add the correct display in iOS 4-7.*/
audio:not([controls]) {
  display: none;
  height: 0;
}

hr {
  overflow: visible;
  /* Show the overflow in Edge and IE */
}

/*
* Correct `block` display not defined for any HTML5 element in IE 8/9
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox
* Correct `block` display not defined for `main` in IE 11
*/
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {
  display: block;
}

summary {
  display: list-item;
  /* Add the correct display in all browsers */
}

small {
  font-size: 80%;
  /* Set font-size to 80% in `small` elements */
}

[hidden], template {
  display: none;
  /* Add the correct display in IE */
}

abbr[title] {
  border-bottom: 1px dotted;
  /* Add a bordered underline effect in all browsers */
  text-decoration: none;
  /* Remove text decoration in Firefox 40+ */
}

a {
  background-color: transparent;
  /* Remove the gray background on active links in IE 10 */

  -webkit-text-decoration-skip: objects;
  /* Remove gaps in links underline in iOS 8+ and Safari 8+ */
}

a:active, a:hover {
  outline-width: 0;
  /* Remove the outline when hovering in all browsers */
}

code, kbd, pre, samp {
  font-family: monospace, monospace;
  /* Specify the font family of code elements */
}

b, strong {
  font-weight: bolder;
  /* Correct style set to `bold` in Edge 12+, Safari 6.2+, and Chrome 18+ */
}

dfn {
  font-style: italic;
  /* Address styling not present in Safari and Chrome */
}

/* Address styling not present in IE 8/9 */
mark {
  background-color: #ff0;
  color: #000;
}

/* https://gist.github.com/unruthless/413930 */
sub, sup {
  position: relative;
  margin-right: .5em;
  vertical-align: baseline;
  font-size: 75%;
  line-height: 0;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

/* # =================================================================
   # Forms
   # ================================================================= */
input {
  border-radius: 0;
}

/* Apply cursor pointer to button elements */
button, [type='button'], [type='reset'], [type='submit'], [role='button'] {
  cursor: pointer;
}

/* Replace pointer cursor in disabled elements */
[disabled] {
  cursor: default;
}

[type='number'] {
  width: auto;
  /* Firefox 36+ */
}

[type='search'] {
  -webkit-appearance: textfield;
  /* Safari 8+ */
  -moz-appearance: textfield;
  appearance: field;
}

[type='search']::-webkit-search-cancel-button, [type='search']::-webkit-search-decoration {
  -webkit-appearance: none;
  /* Safari 8 */
}

textarea {
  overflow: auto;
  /* Internet Explorer 11+ */
  resize: vertical;
  /* Specify textarea resizability */
}

button, input, optgroup, select, textarea {
  font: inherit;
  /* Specify font inheritance of form elements */
}

optgroup {
  font-weight: bold;
  /* Restore the font weight unset by the previous rule. */
}

button {
  overflow: visible;
  /* Address `overflow` set to `hidden` in IE 8/9/10/11 */
}

/* Remove inner padding and border in Firefox 4+ */
button::-moz-focus-inner, [type='button']::-moz-focus-inner, [type='reset']::-moz-focus-inner, [type='submit']::-moz-focus-inner {
  padding: 0;
  border-style: 0;
}

/* Replace focus style removed in the border reset above */
button:-moz-focusring, [type='button']::-moz-focus-inner, [type='reset']::-moz-focus-inner, [type='submit']::-moz-focus-inner {
  outline: 1px dotted ButtonText;
}

button, html [type='button'], [type='reset'], [type='submit'] {
  -webkit-appearance: button;
  /* Correct the inability to style clickable types in iOS */
  -moz-appearance: button;
  appearance: button;
}

button, select {
  text-transform: none;
  /* Firefox 40+, Internet Explorer 11- */
}

/* Remove the default button styling in all browsers */
button, input, select, textarea {
  border-style: none;
  background-color: transparent;
  color: inherit;
}

legend {
  /* Correct the color inheritance from `fieldset` elements in IE */
  display: table;
  /* Correct the text wrapping in Edge and IE */
  max-width: 100%;
  border: 0;
  /* Correct `color` not being inherited in IE 8/9/10/11 */
  color: inherit;
  /* Correct the text wrapping in Edge and IE */
  white-space: normal;
  /* Correct the text wrapping in Edge and IE */
}

::-webkit-file-upload-button {
  /* Correct the inability to style clickable types in iOS and Safari */
  font: inherit;
  -webkit-appearance: button;
  /* Change font properties to `inherit` in Chrome and Safari */
}

[type='search'] {
  outline-offset: -2px;
  -webkit-appearance: textfield;
  /* Correct the odd appearance in Chrome and Safari */
  -moz-appearance: textfield;
  appearance: field;
  /* Correct the outline style in Safari */
}

/* # =================================================================
   # Specify media element style
   # ================================================================= */
img {
  border-style: none;
  /* Remove border when inside `a` element in IE 8/9/10 */
}

/* Add the correct vertical alignment in Chrome, Firefox, and Opera */
progress {
  vertical-align: baseline;
}

svg:not(:root) {
  overflow: hidden;
  /* Internet Explorer 11- */
}

audio, canvas, progress, video {
  display: inline-block;
  /* Internet Explorer 11+, Windows Phone 8.1+ */
}

/* # =================================================================
   # Accessibility
   # ================================================================= */
/* Hide content from screens but not screenreaders */
@media screen {
  [hidden~='screen'] {
    display: inherit;
  }
  [hidden~='screen']:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important;
  }
}

/* Specify the progress cursor of updating elements */
[aria-busy='true'] {
  cursor: progress;
}

/* Specify the pointer cursor of trigger elements */
[aria-controls] {
  cursor: pointer;
}

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled] {
  cursor: default;
}

/* # =================================================================
   # Selection
   # ================================================================= */
/* Specify text selection background color and omit drop shadow */

::selection {
  background-color: #b3d4fc;
  /* Required when declaring ::selection */
  color: #000;
  text-shadow: none;
}

/* ----------------------------------------------------------------
    base
----------------------------------------------------------------- */
:root {
  font-size: 62.5%;
}

html, body, h1, h2, h3, h4, h5, h6, li {
  margin: 0;
  padding: 0;
}

html {
  display: flex;
  flex-direction: column;
  overflow: auto;
}

iframe {
  overflow: auto;
}

body {
  color: #000;
  font-size: 1.4rem;
  font-family: Meiryo, 'Hiragino Kaku Gothic ProN', sans-serif;
  line-height: 1.3;
}

ul, ol {
  list-style-type: none;
}

a {
  color: #0f0f69;
  text-decoration: none;
}

a img {
  transition: opacity 1s cubic-bezier(.39, .575, .565, 1);
}

figure {
  margin: 0;
}

button {
  border: 0;
  cursor: pointer;
}

em {
  font-weight: bold;
  font-style: normal;
}

strong {
  font-weight: bold;
  font-style: normal;
}

img {
  max-width: 100%;
  vertical-align: bottom;
}

hr {
  display: none;
}

p, ul, ol, dl {
  margin: 0 0 20px;
  padding: 0;
}

ul > :last-child, ol > :last-child, dl > :last-child {
  margin-bottom: 0;
}

dfn {
  font-style: normal;
}

dd {
  margin: 0;
}

table {
  border-collapse: collapse;
}

table > a {
  text-decoration: underline;
}

table > a:hover, table > a:focus, table > a:active {
  text-decoration: none;
}

blockquote {
  margin: 0;
}

iframe {
  margin: 0;
  padding: 0;
  width: 100%;
  border: 0;
}

input, select {
  padding: 1px;
}

input {
  /* IE */
  /* Edge */
}

input::-webkit-input-placeholder {
  color: #616161;
  opacity: 1;
}

input::placeholder {
  color: #616161;
  opacity: 1;
}

input:-ms-input-placeholder {
  color: #616161;
}

input::-ms-input-placeholder {
  color: #616161;
}

fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}

/* ----------------------------------------------------------------
    Clearfix
----------------------------------------------------------------- */
.media-lyt::after, .form-list._inline::after {
  display: block;
  clear: both;
  content: '';
}

/* ----------------------------------------------------------------
    Loading Spritesheet
----------------------------------------------------------------- */
.h-list-step > li.is-current .h-list-step_inner::before, .h-list-step > li.is-checked .h-list-step_inner::before, .hdg-l1_item_txt > span::before, .hdg-l1_item_txt_share::before, .list > li._anc a::before, .commentList > li._anc a::before, .list-desc-line .list-desc-line_plan_option > li.wifi::before, .list-desc-line .list-desc-line_plan_option > li.power::before, .list-desc-line .list-desc-line_plan_option > li.acusb::before, .list-desc-line .list-desc-line_plan_option > li.monitor::before, .list-desc-line .list-desc-line_plan_option > li.video > span.monitor::before, .list-desc-line .list-desc-line_plan_option > li.video > span.terminal::before, .list-state > li.is-current::before, .list-state .list-state_item ._row-01 ._change::before, .list-spec > .list-spec_item._wifi::before, .list-spec > .list-spec_item._acusb::before, .list-spec > .list-spec_item._usb::before, .list-spec > .list-spec_item._ac::before, .list-spec > .list-spec_item._video > span._monitor::before, .list-spec > .list-spec_item._video > span._terminal::before, .list-info_hdg::before, .list-embargo > li._item_01::before, .list-embargo > li._item_02::before, .list-embargo > li._item_03::before, .list-embargo > li._item_04::before, .list-embargo > li._item_05::before, .list-embargo > li._item_06::before, .list-embargo > li._item_07::before, .list-embargo > li._item_08::before, .btn-03._search > span::before, .btn-03._search._nonstop > span::before, .btn-next._code ._main::before, .btn-media._receipts::after, .btn-media._search::after, .btn-media._search-02::after, .panel .panel_hdg._attention::before, .panel-attention_hdg::before, .panel-login-search .panel-login-search-inner > .panel-login-search-inner_item._login .panel-login-search-inner_hdg span::before, .panel-info_hdg._attention > .panel-info_hdg_inner::before, .panel-flight_hdg_txt::before, .panel-flight_btn_change::before, .panel-flight_btn_grade > button > span::before, .panel-section_content .panel-section_content_item_departure::before, .panel-section_foot .panel-section_foot_item_hdg > ._txt::before, .panel-service_list_btn > li > a._receipts::after, .panel-service_list_btn > li > button._receipts::after, .panel-service_list_btn > li > a._search::after, .panel-service_list_btn > li > button._search::after, .panel-service_list_btn > li > a._lounge::after, .panel-service_list_btn > li > button._lounge::after, .panel-service_hdg_02::before, .panel-option_list_item_sup ._link-anchor a::before, .panel-option_example_lead::before, .lyt-reserve_tbl_txt_flight::before, .lyt-reserve_tbl_inner._change::before, .lyt-flight-chart .lyt-flight-chart-expand ._next > span::before, .lyt-flight-chart-header_target ._btn-search::before, .lyt-ticket_tbl tbody th ._history::before, .lyt-ticket_tbl tbody td ._history::before, .lyt-detail_item .lyt-detail_item_inner_02._change::before, .lyt-detail_item .lyt-detail_item_inner_03::before, .table-flight-chart tbody ._cell-canceled ._cell-canceled-txt > strong::before, .table-flight-chart tbody ._cell-transit ._cell-transit_item ._notice::before, .form-checkbox .form-checkbox_item::after, .form-table-04_inner_02._change::before, .form-table-04_inner_03::before, .modal-refine .modal-refine-btn .lyt-btn-line .btn-reset > span::before, .modal-lounge .modal-refine-btn .lyt-btn-line .btn-reset > span::before, .toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-first .toggle-transit-lyt_item_txt::after, .toggle-transit-lyt .toggle-transit-lyt_item._airport-arrival::after {
  background-image: url(../img/sprite.png);
}

/* ----------------------------------------------------------------
    Pseudo element (Block)
----------------------------------------------------------------- */
.h-list-step_inner::before, .h-list-step_inner::after, #footer .f-inner_list > li::before, .hdg-l1_item_txt > span::before, .hdg-l1_item_txt_share::before, .hdg-l2-02_txt ._date span::after, .hdg-guide::before, .list > li::before, .commentList > li::before, .list > li._anc a::before, .commentList > li._anc a::before, .list-error > li::before, .list-desc-line .list-desc-line_plan_option > li.wifi::before, .list-desc-line .list-desc-line_plan_option > li.power::before, .list-desc-line .list-desc-line_plan_option > li.acusb::before, .list-desc-line .list-desc-line_plan_option > li.monitor::before, .list-desc-line .list-desc-line_plan_option > li.video > span::before, .list-state::before, .list-state > li.is-current::before, .list-state .list-state_item ._row-01 ._change::before, .list-select-time > li:nth-child(2)::before, .list-select-time > li:nth-child(5)::before, .list-select-time > li.list-select-time_prev a::before, .list-select-time > li.list-select-time_next a::before, .list-spec > .list-spec_item._wifi::before, .list-spec > .list-spec_item._acusb::before, .list-spec > .list-spec_item._ac::before, .list-spec > .list-spec_item._usb::before, .list-spec > .list-spec_item._video > span::before, .list-info_hdg::before, .list-order_body::before, .list-embargo > li._item_01::before, .list-embargo > li._item_02::before, .list-embargo > li._item_03::before, .list-embargo > li._item_04::before, .list-embargo > li._item_05::before, .list-embargo > li._item_06::before, .list-embargo > li._item_07::before, .list-embargo > li._item_08::before, .list-flow-boarding > li::after, .link::before, .link-list > li a::before, .link-panel > a::after, .btn::before, .btn-03 > span::before, .btn-03 > span::after, .btn-03._search > span::before, .btn-03._search._nonstop > span::before, .btn-04 > span::before, .btn-04 > span::after, .btn-05 > span::after, .btn-disable::before, .btn-back::before, .btn-next::before, .btn-next._code ._main::before, .btn-class > li .btn-class-item .btn-class-item_radio::before, .btn-more::after, .btn-add > span::before, .btn-add > span::after, .btn-delete > span::before, .btn-delete > span::after, .btn-media::before, .btn-media::after, .btn-toggle > span::before, .btn-toggle > span::after, .panel .panel_hdg._attention::before, .panel-attention_hdg::before, .panel-login-search .panel-login-search-inner > .panel-login-search-inner_item._login .panel-login-search-inner_hdg span::before, .panel-login-search .panel-login-search-inner > .panel-login-search-inner_item._login .panel-login-search-inner_hdg span::after, .panel-modal-condition .form-btn-set::before, .panel-info_hdg._attention > .panel-info_hdg_inner::before, .panel-flight_hdg_txt::before, .panel-flight_hdg_link > li::before, .panel-flight_btn_delete::before, .panel-flight_btn_delete::after, .panel-flight_btn_change::before, .panel-flight_txt_flight > span::before, .panel-flight_txt_flight > ._time::after, .panel-flight_btn_grade > button > span::before, .panel-flight_inner_grade::before, .panel-flight_btn_select > button > span::after, .panel-section::before, .panel-section_head::before, .panel-section_head::after, .panel-section_content .panel-section_content_item_departure::before, .panel-section_foot .panel-section_foot_item_hdg > ._txt::before, .panel-howto_item .panel-howto_item_panel_list > li::before, .panel-service::before, .panel-service::after, .panel-service_list_btn > li > a::before, .panel-service_list_btn > li > button::before, .panel-service_list_btn > li > a::after, .panel-service_list_btn > li > button::after, .panel-service_hdg_02::before, .panel-option::before, .panel-option_list_item_sup ._link-anchor a::before, .panel-option_example::before, .panel-option_example_lead::before, .panel-option_example_point_item._total::before, .lyt-reserve_tbl_txt_flight::before, .lyt-reserve_tbl_link::after, .lyt-reserve_tbl_inner._change::before, .lyt-flight-chart .lyt-flight-chart-expand ._next > span::before, .lyt-flight-chart-header_target::before, .lyt-flight-chart-header_target ._btn-search::before, .lyt-flight-chart-header_paging .lyt-flight-chart-header_paging_btn::before, .lyt-flight-chart-header_paging .lyt-flight-chart-header_paging_btn button::before, .lyt-cell-info ._landing ._landing-departure ._time::before, .lyt-arrow::after, .lyt-table-header_item .lyt-table-header_item_select::before, .lyt-pager_list .lyt-pager_list_prev ._item::before, .lyt-pager_list .lyt-pager_list_next ._item::before, .lyt-ticket_tbl tbody th ._history::before, .lyt-ticket_tbl tbody td ._history::before, .lyt-detail_item .lyt-detail_item_inner_02._change::before, .lyt-detail_item .lyt-detail_item_inner_03::before, .tab_item.is-active::before, .table-flight-chart tbody ._cell-canceled::before, .table-flight-chart tbody ._cell-canceled ._cell-canceled-txt > strong::before, .table-flight-chart tbody ._cell-transit ._cell-transit_item > ._list > li::before, .table-flight-chart tbody ._cell-transit ._cell-transit_item > ._list > li::after, .table-flight-chart tbody ._cell-transit ._cell-transit_item ._notice::before, .table-flight-chart tbody ._cell-transit ._cell-transit_item .toggle-transit ._btn .toggle-state::before, .table-flight-chart tbody ._cell-transit-etc ._cell-transit-etc_item .toggle-transit-etc ._btn > span::before, .table-flight-chart tbody ._cell-transit-etc ._cell-transit-etc_item .toggle-transit-etc ._btn > span::after, .form-list._inline_date > li:before, .form-radio .form-radio_item::before, .form-radio .form-radio_item::after, .form-radio input[type='radio']:disabled + .form-radio_item::after, .form-radio-02::before, .form-radio-02_item + span::before, .form-radio-02_item + span::after, .form-checkbox .form-checkbox_item::before, .form-checkbox .form-checkbox_item::after, .form-checkbox input[type='checkbox']:disabled + .form-checkbox_item::after, .form-select::before, .form-error::before, .form-select-condition::before, .form-table-04_inner_02._change::before, .form-table-04_inner_03::before, .seatmap-list > li > a::before, .seatmap-list > li > a ._num::before, .seatmap-list > li > a ._num::after, .seatmap-emergency > li._left::before, .seatmap-emergency > li._right::after, .seatmap-tooltip_guide .seatmap-tooltip_guide_hdg::before, .seatmap-tooltip_guide .seatmap-tooltip_guide_txt .inPara::before, .seatmap-tooltip_btn-close > button::before, .seatmap-tooltip_btn-close > button::after, .seatmap-alert_btn-close > button::before, .seatmap-alert_btn-close > button::after, .modal_btn-close > button::before, .modal_btn-close > button::after, .modal-refine .modal-refine-btn .lyt-btn-line .btn-reset > span::before, .modal-lounge .modal-refine-btn .lyt-btn-line .btn-reset > span::before, .toggle-transit-lyt .toggle-transit-lyt_item._airport-depaeture::before, .toggle-transit-lyt .toggle-transit-lyt_item._airport-arrival::before, .toggle-transit-lyt .toggle-transit-lyt_item._airport-depaeture::after, .toggle-transit-lyt .toggle-transit-lyt_item._flight::before, .toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-first::before, .toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-first::after, .toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-first .toggle-transit-lyt_item_txt::before, .toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-first .toggle-transit-lyt_item_txt::after, .toggle-transit-lyt .toggle-transit-lyt_item._transit::before, .toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-last::before, .toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-last::after, .toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-last .toggle-transit-lyt_item_txt::before, .toggle-transit-lyt .toggle-transit-lyt_item._airport-arrival::after, .toggle-transit-lyt .toggle-transit-lyt_item._airport-arrival .toggle-transit-lyt_item_txt::after {
  display: block;
  content: '';
}

/* ----------------------------------------------------------------
    Header
----------------------------------------------------------------- */
/* #header
----------------------------------------------- */
#header {
  min-width: 1000px;
  width: 100%;
  border-bottom: 1px solid #e4e4e4;
  box-shadow: 0 -1px 2px #f1f1f1 inset;
}

#header._research {
  min-height: 216px;
  border-bottom: 0;
  background: url('../img/bg_header_001.png') repeat-x center bottom #eef4f8;
  box-shadow: none;
}

._header-thin #header._research {
  min-height: 128px;
}

._header-thin #header._research + #main > form:first-child > .list-state:first-child {
  margin-top: -90px;
}

/* .h-inner
----------------------------------------------- */
.h-inner {
  position: relative;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 25px 0 26px;
  width: 1000px;
  height: 90px;
}

.h-inner > .h-link:last-child {
  right: 0;
}

/* .h-logo
----------------------------------------------- */
.h-logo {
  margin-bottom: 0;
}

.h-logo > a {
  display: inline-block;
}

._coop .h-logo > :first-child {
  margin-right: 38px;
  width: 228px;
}

/* .h-link
----------------------------------------------- */
.h-link {
  position: absolute;
  top: 19px;
  right: 60px;
  margin-bottom: 0;
}

._simple .h-link {
  top: 36px;
}

._coop .h-link {
  right: 0;
}

/* .h-logo-02
----------------------------------------------- */
.h-logo-02 {
  position: absolute;
  top: 24px;
  right: 0;
  margin-bottom: 0;
}

/* .h-list-step
----------------------------------------------- */
.h-list-step {
  position: absolute;
  top: 51px;
  right: 60px;
  display: flex;
  margin-bottom: 0;
  width: 460px;
  color: #333;
  white-space: nowrap;
  font-size: 1.3rem;
  justify-content: space-between;
}

.h-list-step._col3 {
  right: 210px;
  width: 329px;
}

.h-list-step_inner {
  position: relative;
}

.h-list-step_inner::before, .h-list-step_inner::after {
  position: absolute;
}

.h-list-step_inner::before {
  top: -28px;
  left: 50%;
  width: 10px;
  height: 10px;
  border-radius: 10px;
  background-color: #dce1e5;
  transform: translateX(-50%);
}

.h-list-step_inner::after {
  top: -24px;
  left: 50%;
  height: 2px;
  background-color: #dce1e5;
}

.h-list-step_inner._step01::after {
  width: 105px;
}

._col3 .h-list-step_inner._step01::after {
  width: 150px;
}

.h-list-step_inner._step02::after {
  width: 96px;
}

._col3 .h-list-step_inner._step02::after {
  width: 120px;
}

.h-list-step_inner._step03::after {
  width: 68px;
}

._col3 .h-list-step_inner._step03::after {
  content: none;
}

.h-list-step_inner._step04::before {
  left: 25px;
}

.h-list-step_inner._step04::after {
  content: none;
}

.h-list-step_inner._step04 span:first-child {
  padding-left: 18px;
}

.h-list-step_inner._step04 span:last-child {
  padding-left: 10px;
}

.h-list-step > li {
  position: relative;
}

.h-list-step > li[class^='is-'] .h-list-step_inner::before {
  top: -35px;
  z-index: 1;
  background-color: #0000;
}

.h-list-step > li.is-current .h-list-step_inner::before {
  width: 24px;
  height: 26px;
  background-position: -61px -177px;
  background-size: 274px auto;
}

.h-list-step > li.is-checked .h-list-step_inner::before {
  width: 24px;
  height: 24px;
  background-position: -26px -208px;
  background-size: 274px auto;
}

._coop .h-list-step {
  right: 0;
}

.h-list-step._request {
  right: 184px;
  width: 336px;
}

.h-list-step._request .h-list-step_inner._step03::after {
  width: 80px;
}

.h-list-step._request .h-list-step_inner._step04::before {
  left: 50%;
}

/* ----------------------------------------------------------------
    Content
----------------------------------------------------------------- */
/* #body
----------------------------------------------- */
#body {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  height: 100%;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

/* #main
----------------------------------------------- */
#main {
  margin: 0 auto;
  padding-top: 52px;
  width: 1000px;
  flex-grow: 1;
}

#main > :first-child:not(.lyt-head-search) {
  margin-top: 0;
}

/* ----------------------------------------------------------------
    Footer
----------------------------------------------------------------- */
/* #footer
----------------------------------------------- */
#footer {
  margin-top: 60px;
  padding: 10px 0;
  min-width: 1000px;
  background-color: #000;
  color: #fff;
}

#footer .f-inner {
  display: flex;
  margin: 0 auto;
  width: 1000px;
  justify-content: space-between;
  align-items: center;
}

#footer .f-inner_txt {
  margin-bottom: 0;
}

#footer .f-inner_txt small {
  font-size: 1.1rem;
}

#footer .f-inner_list {
  display: flex;
  margin-bottom: 0;
}

#footer .f-inner_list > li {
  position: relative;
  margin-left: 8px;
  padding-left: 8px;
}

#footer .f-inner_list > li::before {
  position: absolute;
  top: 3px;
  left: 0;
  width: 1px;
  height: 10px;
  background-color: #d7d7d7;
}

#footer .f-inner_list > li a {
  color: #999;
  font-size: 1.2rem;
}

#footer .f-inner_list > li a .icon-blank {
  padding: 1px 5px 4px 4px;
}

#footer .f-inner_list > li a:hover, #footer .f-inner_list > li a:active, #footer .f-inner_list > li a:focus {
  text-decoration: underline;
}

/* ----------------------------------------------------------------
    Heading
----------------------------------------------------------------- */
/* .hdg-l1
----------------------------------------------- */
.hdg-l1 {
  margin: 48px 0;
}

.hdg-l1_inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.hdg-l1_reverse {
  display: flex;
  flex-direction: column-reverse;
}

.hdg-l1_reverse > .hdg-l1_link {
  margin-bottom: 8px;
}

.hdg-l1_order {
  display: flex;
  flex-direction: column;
}

.hdg-l1_order .hdg-l1_order_n1 {
  order: 1;
}

.hdg-l1_order .hdg-l1_order_n2 {
  order: 2;
}

.hdg-l1_order .hdg-l1_order_n3 {
  order: 3;
}

.hdg-l1_reverse + .hdg-l1_txt_02 {
  margin-top: 6px;
}

.hdg-l1_txt {
  font-weight: normal;
  font-size: 2.8rem;
}

.hdg-l1_txt + .hdg-l1_txt_02 {
  margin-top: 6px;
}

.hdg-l1_txt_02 {
  font-size: 1.5rem;
  line-height: 1.5;
}

.hdg-l1_item > :last-child {
  margin-bottom: 0;
}

.hdg-l1_item:first-child {
  flex-basis: 0;
  flex-grow: 1;

  flex-shrink: 0;
}

.hdg-l1_item + .hdg-l1_item {
  margin-left: 20px;
}

.hdg-l1_item_txt {
  margin-bottom: 10px;
  text-align: right;
}

.hdg-l1_item_txt > span {
  position: relative;
  display: inline;
  padding-left: 25px;
  font-size: 1.6rem;
}

.hdg-l1_item_txt > span::before {
  position: absolute;
  top: 2px;
  left: 0;
  width: 18px;
  height: 18px;
  background-position: -163px -177px;
  background-size: 274px auto;
}

.hdg-l1_item_txt_share {
  position: relative;
  margin-bottom: 10px;
  padding-left: 20px;
  color: #333;
  font-weight: bold;
}

.hdg-l1_item_txt_share::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 13px;
  height: 13px;
  background-position: -251px -177px;
  background-size: 274px auto;
}

.hdg-l1_item_link {
  text-align: right;
}

.hdg-l1 > :last-child {
  margin-bottom: 0;
}

.hdg-l1._fluid .hdg-l1_item:first-child {
  flex-basis: auto;
  flex-grow: 0;

  flex-shrink: 1;
}

.hdg-l1._fluid .hdg-l1_item:last-child {
  flex-basis: 0;
  flex-grow: 1;

  flex-shrink: 0;
}

.fn-sticky-seatmap-item .hdg-l1 {
  display: flex;
  flex-direction: row;
  margin: 10px 0;
  align-items: baseline;
}

/* .hdg-l1-02
----------------------------------------------- */
.hdg-l1-02 {
  display: flex;
  margin: 68px 0 48px;
  justify-content: space-between;
  align-items: center;
}

.hdg-l1-02_txt {
  font-weight: normal;
  font-size: 2.8rem;
}

.hdg-l1-02_btn {
  margin-top: 12px;
}

.hdg-l1-02_item > :last-child {
  margin-bottom: 0;
}

.hdg-l1-02_item + .hdg-l1-02_item {
  text-align: right;
}

/* .hdg-l1-03
----------------------------------------------- */
.hdg-l1-03 {
  display: flex;
  flex-direction: column-reverse;
  padding: 32px 0 48px;
  border-top: 4px solid #e0e0e0;
  text-align: center;
}

.hdg-l1-03_txt {
  font-weight: normal;
  font-size: 2.8rem;
}

.hdg-l1-03_txt_02 {
  text-align: right;
}

/* .hdg-l2
----------------------------------------------- */
.hdg-l2 {
  margin: 48px 0 32px;
}

.hdg-l2_inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.hdg-l2_txt {
  padding: 3px 0 0 16px;
  border-left: 4px solid #2a344b;
  color: #333;
  font-weight: normal;
  font-size: 2.4rem;
  line-height: 1;
  flex-basis: 0;
  flex-grow: 1;

  flex-shrink: 0;
}

.hdg-l2_item > :last-child {
  margin-bottom: 0;
}

/* .hdg-l2-02
----------------------------------------------- */
.hdg-l2-02 {
  display: flex;
  margin-bottom: 15px;
  padding: 15px 20px;
  background-color: #2a344b;
  color: #fff;
  font-size: 1.6rem;
  justify-content: space-between;
}

.hdg-l2-02_txt {
  font-weight: bold;
  font-size: 1.6rem;
}

.hdg-l2-02_txt ._date span {
  vertical-align: top;
}

.hdg-l2-02_txt ._date span::after {
  display: inline-block;
  margin: 0 20px;
  width: 1px;
  height: 16px;
  background-color: #6a7181;
}

.hdg-l2-02_txt ._flight {
  font-weight: normal;
}

.hdg-l2-02_class {
  display: flex;
  margin-bottom: 0;
}

.hdg-l2-02_class > dd {
  font-weight: bold;
}

.fn-sticky-seatmap-item .hdg-l2-02 {
  margin: 0;
}

/* .hdg-l2-03
----------------------------------------------- */
.hdg-l2-03 {
  margin: 48px 0 16px;
}

.hdg-l2-03_inner {
  display: flex;
  align-items: baseline;
}

.hdg-l2-03_txt {
  color: #333;
  font-size: 2.4rem;
  line-height: 1;
}

.hdg-l2-03_item {
  padding-left: 20px;
}

.hdg-l2-03_item > :last-child {
  margin-bottom: 0;
}

/* .hdg-l3
----------------------------------------------- */
.hdg-l3 {
  margin: 0 0 15px;
  color: #333;
  font-size: 1.8rem;
  line-height: 1.55556;
}

/* .hdg-l3-02
----------------------------------------------- */
.hdg-l3-02 {
  margin: 0 0 15px;
}

.hdg-l3-02_inner {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
}

.hdg-l3-02_txt {
  color: #333;
  font-size: 1.8rem;
  line-height: 1.55556;
}

.hdg-l3-02_item > :last-child {
  margin-bottom: 0;
}

/* .hdg-sub
----------------------------------------------- */
.hdg-sub {
  margin-bottom: 10px;
  font-size: 1.6rem;
}

/* .hdg-guide
----------------------------------------------- */
.hdg-guide {
  position: relative;
  margin: 60px 0 15px;
  width: 100%;
  border-bottom: 3px solid #ccc;
  color: #333;
}

.hdg-guide::before {
  position: absolute;
  bottom: -3px;
  width: 40px;
  height: 3px;
  background-color: #c00;
}

.hdg-guide .hdg-guide_txt {
  padding: 0 0 10px 14px;
  font-weight: bold;
  font-size: 1.8rem;
}

.hdg-guide > :last-child {
  margin-bottom: 0;
}

/* ----------------------------------------------------------------
    Text
----------------------------------------------------------------- */
/* text-strong
----------------------------------------------- */
.text-strong {
  color: #c00;
  font-weight: bold;
}

/* .text-noscript
----------------------------------------------- */
.text-noscript {
  margin: 20px auto 0;
  width: 1000px;
}

/* .txt-total-price
----------------------------------------------- */
.txt-total-price {
  color: #333;
  text-align: right;
  font-weight: bold;
  font-size: 1.8rem;
}

.txt-total-price > span {
  padding-right: 36px;
}

.txt-total-price strong {
  color: #c00;
  font-size: 2.4rem;
}

/* .txt-total-point
----------------------------------------------- */
.txt-total-point {
  margin-bottom: 10px;
  color: #333;
  text-align: right;
  font-weight: bold;
  font-size: 1.6rem;
}

.txt-total-point > span {
  padding-right: 36px;
}

/* .txt-attention
----------------------------------------------- */
.txt-attention {
  margin-bottom: 10px;
}

.txt-attention > strong {
  display: inline-block;
  padding-left: 36px;
  color: #c00;
}

.txt-attention > strong > img {
  position: absolute;
  top: 0;
  left: 10px;
}

.js-tbl-bottom_row .txt-attention {
  margin-top: 10px;
}

/* .txt-desc-price
----------------------------------------------- */
.txt-desc-price {
  margin-bottom: 48px;
  color: #333;
  text-align: right;
  font-weight: bold;
  font-size: 1.6rem;
}

.list-desc-price + .txt-desc-price {
  margin-top: -40px;
}

/* .txt-break
----------------------------------------------- */
.txt-break {
  word-break: break-all;
}

/* .txt-note
----------------------------------------------- */
.txt-note {
  margin-bottom: 5px;
  color: #616161;
  font-size: 1.4rem;
  line-height: 1.5;
}

/* ----------------------------------------------------------------
    Icon
----------------------------------------------------------------- */
/* .icon-blank
----------------------------------------------- */
.icon-blank {
  padding: 0 5px 7px 4px;
  width: 20px;
}

.panel-attention .withIconA img[src*=icon_window_001] {
  vertical-align: baseline;
}

/* .icon-label
----------------------------------------------- */
.icon-label {
  display: inline-block;
  padding: 2px 5px;
  border-radius: 3px;
  color: #fff;
  vertical-align: top;
  font-size: 1.1rem;
}

.icon-label._em {
  background-color: #b22430;
}

.icon-label._normal {
  color: #333;
}

.icon-label._change {
  padding-top: 4px;
  background-color: #2a344b;
  font-weight: bold;
}

.icon-label._alternate {
  padding-top: 4px;
  background-color: #e9eaed;
  color: #2a344b;
  font-weight: bold;
}

.form-table-04 .icon-label._em {
  margin-right: 5px;
}

/* .icon-label_before
----------------------------------------------- */
.icon-label_before {
  display: inline-block;
  padding: 0 0 5px 8px;
}

/* .icon-label-02
----------------------------------------------- */
.icon-label-02 {
  display: inline-block;
  padding: 3px 0;
  width: 70px;
  border-radius: 3px;
  text-align: center;
  font-weight: bold;
  font-size: 1rem;
}

.icon-label-02._dimmed {
  color: #616161;
}

.icon-label-02._unused {
  background-color: #ffe7e7;
}

.icon-label-02._used {
  background-color: #d6ecfc;
}

.icon-label-02._refunded {
  background-color: #e0e0e0;
}

.list-desc-line .icon-label-02 {
  display: block;
  margin-bottom: 10px;
}

/* .icon-modal
----------------------------------------------- */
.icon-modal {
  position: absolute;
  top: 28px;
  right: 20px;
}

.btn-05._modal .icon-modal {
  top: .3em;
  right: 0;
}

/* ----------------------------------------------------------------
    List
----------------------------------------------------------------- */
/* .list
----------------------------------------------- */
.list > li, .commentList > li {
  position: relative;
  margin-bottom: 5px;
  padding-left: 22px;
  font-size: 1.4rem;
  line-height: 1.5;
}

.list > li::before, .commentList > li::before {
  position: absolute;
  top: 7px;
  left: 10px;
  width: 4px;
  height: 4px;
  border-radius: 4px;
  background-color: #9e9e9e;
}

.list > li:last-child, .commentList > li:last-child {
  margin-bottom: 0;
}

.list > li > :last-child, .commentList > li > :last-child {
  margin-bottom: 0;
}

.list > li > ul, .list > li > ol, .commentList > li > ul, .commentList > li > ol {
  margin: 10px 0;
}

.list > li strong, .commentList > li strong {
  color: #c00;
  font-weight: normal;
}

.list > li .link-txt, .commentList > li .link-txt {
  padding: 0 2px;
}

.list > li .link-txt .icon-blank, .commentList > li .link-txt .icon-blank {
  margin-left: 3px;
  padding: 0 5px 6px 0;
}

.list > li._anc, .commentList > li._anc {
  padding-left: 0;
}

.list > li._anc::before, .commentList > li._anc::before {
  display: none;
}

.list > li._anc a, .commentList > li._anc a {
  position: relative;
  display: block;
  padding-left: 24px;
  color: #0f0f69;
}

.list > li._anc a:hover, .list > li._anc a:active, .list > li._anc a:focus, .commentList > li._anc a:hover, .commentList > li._anc a:active, .commentList > li._anc a:focus {
  text-decoration: underline;
}

.list > li._anc a::before, .commentList > li._anc a::before {
  position: absolute;
  top: 6px;
  left: 8px;
  width: 9px;
  height: 10px;
  background-position: -265px -79px;
  background-size: 274px auto;
}

.list + .list-note, .list + .link-list, .commentList + .list-note, .commentList + .link-list {
  margin-top: -12px;
}

.list-info .list-info_em .list > li, .list-info .list-info_em
.commentList > li {
  font-size: 1.6rem;
}

.list-info .list-info_em .list > li::before, .list-info .list-info_em
.commentList > li::before {
  top: 9px;
}

/* .list-note
----------------------------------------------- */
.list-note > li {
  display: table;
  box-sizing: border-box;
  margin-bottom: 5px;
  color: #616161;
  font-size: 1.4rem;
  line-height: 1.5;
}

.list-note > li:last-child {
  margin-bottom: 0;
}

.list-note > li > .list-note_mark {
  display: inline-block;
  padding: 0 2px 0 1px;
  white-space: nowrap;
}

.list-note > li > .list-note_body {
  display: table-cell;
  padding-left: 0;
}

.list-note > li > .list-note_body > :last-child {
  margin-bottom: 0 !important;
}

.list-note > li > .list-note_body > ul, .list-note > li > .list-note_body > ol {
  margin: 8px 0;
}

.list-note > li > .list-note_body .link-txt {
  padding-right: 5px;
}

.list-note > li > .list-note_body .link-txt .icon-blank {
  padding: 2px 5px 5px 0;
}

.list-note._right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.form-table-02 th .list-note {
  font-weight: normal;
}

.lyt-total-price .list-note._right > li {
  font-size: 1.2rem;
}

.lyt-total-price_item_result + .list-note {
  margin-top: 20px;
}

.list-desc-02 + .list-note {
  margin-top: -13px;
}

/* .list-error
----------------------------------------------- */
.list-error {
  margin-bottom: 10px;
}

.list-error > li {
  position: relative;
  margin-bottom: 5px;
  padding-left: 16px;
  color: #c00;
  font-weight: bold;
  font-size: 1.4rem;
  line-height: 1.5;
}

.list-error > li::before {
  position: absolute;
  top: 7px;
  left: 3px;
  width: 4px;
  height: 4px;
  border-radius: 4px;
  background-color: #9e9e9e;
}

.list-error > li:last-child {
  margin-bottom: 0;
}

.list-error > li > ul, .list-error > li > ol {
  margin: 10px 0;
}

.list-error > li .link-txt {
  padding-right: 5px;
}

.list-error > li .link-txt .icon-blank {
  padding: 0 5px 6px 0;
}

.list-error + .list-note {
  margin-top: -12px;
}

/* .list-desc
----------------------------------------------- */
.list-desc {
  margin-bottom: 20px;
}

.list-desc_item {
  display: inline-flex;
  margin-bottom: 10px;
  width: 100%;
}

.list-desc_item:last-child {
  margin-bottom: 0;
}

.list-desc_item dt {
  white-space: nowrap;
}

.list-desc._right .list-desc_item {
  justify-content: flex-end;
}

/* .list-desc-02
----------------------------------------------- */
.list-desc-02 {
  margin-bottom: 20px;
}

.list-desc-02_item {
  display: inline-flex;
  margin-bottom: 10px;
  width: 100%;
  align-items: center;
}

.list-desc-02_item:last-child {
  margin-bottom: 0;
}

.list-desc-02_item dt {
  color: #616161;
  white-space: nowrap;
}

.list-desc-02_item dd {
  font-size: 1.6rem;
}

/* .list-desc-line
----------------------------------------------- */
.list-desc-line {
  margin-bottom: 32px;
  border-bottom: 4px solid #e0e0e0;
  color: #333;
}

.list-desc-line > dt {
  padding: 20px 20px 25px;
  border-top: 1px solid #e0e0e0;
  font-size: 1.6rem;
}

.list-desc-line > dt b {
  padding-right: 16px;
}

.list-desc-line > dd {
  position: relative;
  display: flex;
  padding: 0 20px 25px;
  width: 100%;
  flex-wrap: wrap;
  justify-content: space-between;
}

.list-desc-line > dd .btn-add, .list-desc-line > dd .btn-delete {
  position: absolute;
  top: 0;
  right: 0;
  margin-top: -26px;
  transform: translateY(-100%);
}

.list-desc-line > dd > :only-child {
  width: 100%;
}

.list-desc-line .list-desc-line_plan {
  width: 66%;
}

.list-desc-line .list-desc-line_plan > :last-child {
  margin-bottom: 0;
}

.list-desc-line .list-desc-line_plan._flow {
  width: 50%;
}

.list-desc-line .list-desc-line_plan .list-desc-line_plan_date {
  margin-bottom: 16px;
  color: #000;
  font-size: 1.8rem;
}

.list-desc-line .list-desc-line_plan .list-desc-line_plan_date .icon-departure {
  padding: 0 8px 6px 6px;
}

.list-desc-line .list-desc-line_plan .list-desc-line_plan_via {
  margin-bottom: 6px;
}

.list-desc-line .list-desc-line_price {
  display: inline-flex;
  width: 34%;
  justify-content: flex-end;
}

.list-desc-line .list-desc-line_info {
  width: 50%;
}

.list-desc-line .list-desc-line_info > :last-child {
  margin-bottom: 0;
}

.list-desc-line .list-desc-line_plan_class, .list-desc-line .list-desc-line_info_checkin {
  display: flex;
  color: #000;
  font-size: 1.4rem;
}

.list-desc-line .list-desc-line_plan_class > li, .list-desc-line .list-desc-line_info_checkin > li {
  padding-right: 25px;
}

.list-desc-line .list-desc-line_plan_class .item, .list-desc-line .list-desc-line_info_checkin .item {
  color: #616161;
}

.list-desc-line .list-desc-line_plan_class + .list-desc-line_plan_option, .list-desc-line .list-desc-line_plan_class + .list-desc-line_plan_class, .list-desc-line .list-desc-line_info_checkin + .list-desc-line_plan_option, .list-desc-line .list-desc-line_info_checkin + .list-desc-line_plan_class {
  margin-top: -16px;
}

.list-desc-line .list-desc-line_info_checkin {
  font-weight: bold;
}

.list-desc-line .list-desc-line_info_checkin .item {
  font-weight: normal;
}

.list-desc-line .list-desc-line_plan_option {
  display: flex;
  color: #000;
  font-size: 1.4rem;
  flex-wrap: wrap;
}

.list-desc-line .list-desc-line_plan_option > li {
  margin-bottom: 3px;
  padding-right: 14px;
}

.list-desc-line .list-desc-line_plan_option > li:last-child {
  padding-right: 0;
}

.list-desc-line .list-desc-line_plan_option > li.wifi {
  position: relative;
  padding: 2px 14px 0 20px;
  font-size: 1.2rem;
}

.list-desc-line .list-desc-line_plan_option > li.wifi::before {
  position: absolute;
  top: 2px;
  left: 0;
  width: 16px;
  height: 12px;
  background-position: -158px -100px;
  background-size: 274px auto;
}

.list-desc-line .list-desc-line_plan_option > li.power {
  position: relative;
  padding: 2px 14px 0 16px;
  font-size: 1.2rem;
}

.list-desc-line .list-desc-line_plan_option > li.power::before {
  position: absolute;
  top: 1px;
  left: 0;
  width: 10px;
  height: 14px;
  background-position: -12px -235px;
  background-size: 274px auto;
}

.list-desc-line .list-desc-line_plan_option > li.acusb {
  position: relative;
  padding: 2px 14px 0 16px;
  font-size: 1.2rem;
}

.list-desc-line .list-desc-line_plan_option > li.acusb::before {
  position: absolute;
  top: 1px;
  left: 0;
  width: 10px;
  height: 14px;
  background-position: -12px -235px;
  background-size: 274px auto;
}

.list-desc-line .list-desc-line_plan_option > li.monitor {
  position: relative;
  padding: 2px 14px 0 21px;
  font-size: 1.2rem;
}

.list-desc-line .list-desc-line_plan_option > li.monitor::before {
  position: absolute;
  top: 2px;
  left: 0;
  width: 16px;
  height: 14px;
  background-position: -140px -100px;
  background-size: 274px auto;
}

.list-desc-line .list-desc-line_plan_option > li.video {
  padding-top: 2px;
  font-size: 1.2rem;
}

.list-desc-line .list-desc-line_plan_option > li.video > span {
  position: relative;
  display: inline-block;
  margin-left: 2px;
}

.list-desc-line .list-desc-line_plan_option > li.video > span::before {
  position: absolute;
  left: 0;
}

.list-desc-line .list-desc-line_plan_option > li.video > span.monitor {
  padding-left: 21px;
}

.list-desc-line .list-desc-line_plan_option > li.video > span.monitor::before {
  top: 0;
  width: 16px;
  height: 14px;
  background-position: -140px -100px;
  background-size: 274px auto;
}

.list-desc-line .list-desc-line_plan_option > li.video > span.terminal {
  padding-left: 18px;
}

.list-desc-line .list-desc-line_plan_option > li.video > span.terminal::before {
  top: 0;
  width: 13px;
  height: 13px;
  background-position: -141px -208px;
  background-size: 274px auto;
}

.list-desc-line .list-desc-line_plan_option > li.video > span:last-child {
  margin-right: 2px;
}

.list-desc-line .list-desc-line_plan_option > li.video > span + span {
  margin-left: 1px;
}

.list-desc-line .list-desc-line_plan_option .item {
  color: #616161;
}

.list-desc-line .list-desc-line_plan_option + .list-desc-line_plan_option, .list-desc-line .list-desc-line_plan_option + .list-desc-line_plan_class {
  margin-top: -16px;
}

.list-desc-line .list-desc-line_price_table th, .list-desc-line .list-desc-line_price_table td {
  vertical-align: top;
  text-align: right;
}

.list-desc-line .list-desc-line_price_table .total {
  color: #333;
  font-size: 1.8rem;
}

.list-desc-line .list-desc-line_price_table .total th, .list-desc-line .list-desc-line_price_table .total td {
  color: #333;
  font-weight: bold;
}

.list-desc-line .list-desc-line_price_table .total th {
  padding-right: 30px;
}

.list-desc-line .list-desc-line_price_table .total td {
  color: #000;
}

.list-desc-line .list-desc-line_price_table .sup {
  font-size: 1.4rem;
}

.list-desc-line .list-desc-line_price_table .sup th, .list-desc-line .list-desc-line_price_table .sup td {
  padding-top: 10px;
  color: #616161;
}

.list-desc-line .list-desc-line_price_table .sup th {
  padding-right: 30px;
}

.list-desc-line .list-desc-line_price_table .sup td {
  color: #000;
}

.list-desc-line + .txt-total-price, .list-desc-line + .txt-total-point, .list-desc-line + .list-desc-line-after + .txt-total-price, .list-desc-line + .list-desc-line-after + .txt-total-point {
  margin-bottom: 16px;
  padding-right: 20px;
}

.list-desc-line + .txt-total-price + .list-note._right, .list-desc-line + .txt-total-point + .list-note._right, .list-desc-line + .list-desc-line-after + .txt-total-price + .list-note._right, .list-desc-line + .list-desc-line-after + .txt-total-point + .list-note._right {
  padding-right: 20px;
}

.list-desc-line + .txt-total-price + .list-note._right > li, .list-desc-line + .txt-total-point + .list-note._right > li, .list-desc-line + .list-desc-line-after + .txt-total-price + .list-note._right > li, .list-desc-line + .list-desc-line-after + .txt-total-point + .list-note._right > li {
  font-size: 1.2rem;
}

.list-desc-line + .txt-total-price + .txt-total-price, .list-desc-line + .txt-total-point + .txt-total-price, .list-desc-line + .list-desc-line-after + .txt-total-price + .txt-total-price, .list-desc-line + .list-desc-line-after + .txt-total-point + .txt-total-price {
  margin-bottom: 10px;
  padding-right: 20px;
}

.list-desc-line + .txt-total-price + .txt-total-price + .list-note._right, .list-desc-line + .txt-total-point + .txt-total-price + .list-note._right, .list-desc-line + .list-desc-line-after + .txt-total-price + .txt-total-price + .list-note._right, .list-desc-line + .list-desc-line-after + .txt-total-point + .txt-total-price + .list-note._right {
  padding-right: 20px;
}

.list-desc-line + .txt-total-price + .txt-total-price + .list-note._right > li, .list-desc-line + .txt-total-point + .txt-total-price + .list-note._right > li, .list-desc-line + .list-desc-line-after + .txt-total-price + .txt-total-price + .list-note._right > li, .list-desc-line + .list-desc-line-after + .txt-total-point + .txt-total-price + .list-note._right > li {
  font-size: 1.2rem;
}

.list-desc-line .list-desc-line_attention {
  margin-top: 20px;
  margin-bottom: 0;
  width: 100%;
}

.list-desc-line .list-desc-line_attention dt {
  margin-bottom: 5px;
  font-size: 1.4rem;
}

.list-desc-line .list-desc-line_attention dt strong {
  color: #c00;
  font-weight: bold;
}

.list-desc-line .list-desc-line_attention dd {
  font-size: 1.4rem;
  line-height: 1.5;
}

.list-desc-line .list-desc-line_attention dd strong {
  color: #c00;
  font-weight: normal;
}

.list-desc-line + .list-desc-line-after {
  margin: -35px 0 32px;
  padding: 30px 0;
  border-top: 3px solid #fff;
  border-bottom: 4px solid #e0e0e0;
}

.list-desc-line + .list-desc-line-after > :last-child {
  margin-bottom: 0;
}

/* .list-desc-price
----------------------------------------------- */
.list-desc-price {
  margin-bottom: 48px;
}

.list-desc-price > div {
  display: inline-flex;
  padding-right: 20px;
  justify-content: flex-end;
}

.list-desc-price > div:last-child {
  margin-bottom: 0;
}

.list-desc-price > div > dd {
  width: 260px;
}

.list-desc-price ._total, .list-desc-price ._limit {
  margin-bottom: 10px;
  width: 100%;
  color: #333;
  text-align: right;
  font-weight: bold;
  font-size: 1.8rem;
}

.list-desc-price ._total dt ._details, .list-desc-price ._limit dt ._details {
  font-weight: normal;
  font-size: 1.4rem;
}

.list-desc-price ._total dd strong, .list-desc-price ._limit dd strong {
  color: #c00;
  font-size: 2.4rem;
}

.list-desc-price ._total dd .list-note._right, .list-desc-price ._limit dd .list-note._right {
  margin: 10px 0;
  font-weight: normal;
}

.list-desc-price ._total dd .list-note._right > li, .list-desc-price ._limit dd .list-note._right > li {
  font-size: 1.2rem;
}

.list-desc-price ._total dd strong {
  font-size: 2.4rem;
}

.list-desc-price ._limit dd strong {
  font-size: 1.8rem;
}

.list-desc-price ._ratio {
  margin-bottom: 12px;
  width: 100%;
  color: #616161;
  text-align: right;
  font-weight: normal;
  font-size: 1.4rem;
}

.list-desc-price ._ratio ._yen {
  display: block;
  font-size: 1.6rem;
}

.list-desc-price ._ratio ._yen + ._num {
  display: inline-block;
  margin-top: 7px;
}

.list-desc-price ._howto {
  margin-bottom: 10px;
  width: 100%;
  color: #000;
  text-align: right;
  font-weight: normal;
  font-size: 1.6rem;
}

.list-desc-price ._detail {
  margin-bottom: 10px;
  width: 100%;
  color: #616161;
  text-align: right;
  font-weight: normal;
  font-size: 1.4rem;
}

.list-desc-price ._detail dd {
  color: #000;
}

.list-desc-price + .list-desc {
  margin-top: -30px;
  margin-bottom: 60px;
  padding-right: 20px;
}

.lyt-total-price .list-desc-price {
  margin-bottom: 0;
}

.lyt-total-price .list-desc-price ._total {
  padding-right: 0;
}

/* .list-state
----------------------------------------------- */
.list-state {
  position: relative;
  display: flex;
  padding-top: 2px;
  min-height: 70px;
  width: 100%;
  border: 1px solid #ccc;
  border-top: 0;
  border-left: 0;
  background: #fff;
  box-shadow: 0 2px 2px #e7e7e7;
}

.list-state._col2 li {
  width: calc(100% - 240px);
}

.list-state._col2 .list-state_price {
  width: 240px;
}

.list-state._col2 ._time {
  margin-right: 8px;
}

.list-state._col3 li {
  width: calc(calc(100% - 240px) / 2);
}

.list-state._col3 .list-state_price {
  width: 240px;
}

.list-state._col3 ._time {
  margin-right: 8px;
}

.list-state._col4 li {
  width: calc(80% / 3);
}

.list-state._col4 .list-state_price {
  width: 20%;
}

.list-state._col5 li {
  width: 20%;
}

.list-state + .panel-attention {
  margin-top: 40px;
}

.list-state._col3 li ._row-02 ._time + ._place > span {
  display: inline-block;
  overflow: hidden;
  width: 91px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.list-state._col4 li ._row-02 ._place > span {
  display: inline-block;
  overflow: hidden;
  width: 91px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.list-state._col5 li ._row-02 ._place > span {
  display: inline-block;
  overflow: hidden;
  width: 63px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.list-state._col4 li ._row-01 ._hdg ._sup, .list-state._col5 li ._row-01 ._hdg ._sup {
  display: block;
  margin: 10px 0 0;
  white-space: nowrap;
}

.list-state._col4 li ._row-01 ._change, .list-state._col5 li ._row-01 ._change {
  position: absolute;
  right: 20px;
}

.list-state._col4 li ._row-02 ._time, .list-state._col5 li ._row-02 ._time {
  display: block;
}

.list-state._col4 li ._row-02 ._time + ._place, .list-state._col5 li ._row-02 ._time + ._place {
  display: block;
  padding-top: 5px;
}

.list-state::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: url(../img/bg_state_001.png) left top repeat-x;
}

.list-state > li {
  position: relative;
  border-left: 1px solid #e0e0e0;
  background-color: #fff;
  color: #616161;
  font-size: 1.4rem;
  flex-grow: 1;
}

.list-state > li:first-child {
  border-left: 0;
}

.list-state > li:last-child .list-state_item {
  justify-content: center;
}

.list-state > li ._row-02 ._place > span {
  vertical-align: middle;
}

.list-state > li.is-current ._hdg {
  color: #c00;
}

.list-state > li.is-current ._hdg ._sup {
  color: #616161;
}

.list-state > li.is-current::before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 29px;
  height: 29px;
  background-position: 0 -177px;
  background-size: 274px auto;
}

.list-state .list-state_item {
  display: flex;
  flex-direction: column;
  padding: 14px 18px 14px 30px;
  height: 100%;
  justify-content: flex-start;
}

.list-state .list-state_item ._row-01 {
  display: flex;
  line-height: 1;
  justify-content: space-between;
}

.list-state .list-state_item ._row-01 ._hdg {
  font-size: 1.6rem;
}

.list-state .list-state_item ._row-01 ._hdg ._sup {
  margin-left: 8px;
  color: #616161;
  font-size: 1.4rem;
}

.list-state .list-state_item ._row-01 ._yen {
  font-size: 1.6rem;
}

.list-state .list-state_item ._row-01 ._change {
  position: relative;
  padding-left: 18px;
  color: #0f0f69;
}

.list-state .list-state_item ._row-01 ._change::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 12px;
  height: 12px;
  background-position: -215px -208px;
  background-size: 274px auto;
}

.list-state .list-state_item ._row-02 {
  margin-top: 8px;
  line-height: 1.2;
}

.list-state a.list-state_item {
  color: #000;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.list-state a.list-state_item:hover, .list-state a.list-state_item:active, .list-state a.list-state_item:focus {
  opacity: .8;
}

.list-state a.list-state_item:hover ._row-01 ._hdg ._sup, .list-state a.list-state_item:active ._row-01 ._hdg ._sup, .list-state a.list-state_item:focus ._row-01 ._hdg ._sup {
  color: #333;
}

.list-state .list-state_price .list-state_item ._row-02 {
  text-align: right;
}

.list-state .list-state_price .list-state_item ._row-02 b {
  color: #000;
  font-size: 1.6rem;
}

.list-state + .list-state_sup {
  margin-top: -10px;
}

.list-state._stickey {
  z-index: 100;
  width: 1000px;
  box-shadow: none;
}

html.is-modal-open .list-state._stickey {
  z-index: 99;
}

/* .list-state-wrapper
----------------------------------------------- */
.list-state-wrapper {
  position: relative;
}

/* .list-select-time
----------------------------------------------- */
.list-select-time {
  display: flex;
  margin-bottom: 19px;
  border-bottom: 1px solid #ccc;
  justify-content: space-between;
  align-items: center;
}

.list-select-time > li {
  display: flex;
  height: 100%;
  flex-grow: 1;
  justify-content: center;
  align-items: center;
}

.list-select-time > li:nth-child(2)::before, .list-select-time > li:nth-child(5)::before {
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -8px;
  width: 1px;
  height: 16px;
  background-color: #ccc;
}

.list-select-time > li.list-select-time_item {
  position: relative;
  font-size: 1.4rem;
}

.list-select-time > li.list-select-time_item.is-current {
  margin-bottom: -2px;
  padding: 2px 0;
  border: 1px solid #ccc;
  border-bottom: 0;
  border-radius: 3px 3px 0 0;
  background-color: #fff;
}

.list-select-time > li.list-select-time_item.is-current .is-current_item {
  display: inline-flex;
  flex-direction: column;
  height: 56px;
  justify-content: center;
  align-content: center;
}

.list-select-time > li.list-select-time_item.is-current b {
  color: #333;
}

.list-select-time > li.list-select-time_item ._yen {
  color: #c00;
  text-align: center;
  font-size: 1.3rem;
}

.list-select-time > li a {
  display: flex;
  color: #333;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
  justify-content: center;
  align-items: center;
}

.list-select-time > li a:hover, .list-select-time > li a:active, .list-select-time > li a:focus {
  opacity: .8;
}

.list-select-time > li.list-select-time_prev a, .list-select-time > li.list-select-time_next a {
  position: relative;
  min-height: 56px;
  width: 100%;
  color: transparent;
}

.list-select-time > li.list-select-time_prev a::before, .list-select-time > li.list-select-time_next a::before {
  position: absolute;
  top: 50%;
  right: 20px;
  margin-top: -6px;
  width: 12px;
  height: 12px;
  border-top: 2px solid #ccc;
  border-right: 2px solid #ccc;
  transform: rotate(45deg) translate3d(0, 0, 0);
}

.list-select-time > li.list-select-time_prev a::before {
  right: auto;
  left: 20px;
  transform: rotate(-135deg) translate3d(0, 0, 0);
}

/* .list-spec
----------------------------------------------- */
.list-spec {
  display: flex;
  margin-bottom: 18px;
}

.list-spec > .list-spec_item {
  margin-right: 10px;
  font-size: 1.2rem;
}

.list-spec > .list-spec_item._wifi, .list-spec > .list-spec_item._acusb, .list-spec > .list-spec_item._ac, .list-spec > .list-spec_item._usb {
  position: relative;
}

.list-spec > .list-spec_item._wifi::before, .list-spec > .list-spec_item._acusb::before, .list-spec > .list-spec_item._ac::before, .list-spec > .list-spec_item._usb::before {
  position: absolute;
  left: 0;
}

.list-spec > .list-spec_item._wifi {
  padding-left: 22px;
}

.list-spec > .list-spec_item._wifi::before {
  top: 0;
  width: 16px;
  height: 12px;
  background-position: -158px -100px;
  background-size: 274px auto;
}

.list-spec > .list-spec_item._acusb, .list-spec > .list-spec_item._usb {
  padding-left: 15px;
}

.list-spec > .list-spec_item._acusb::before, .list-spec > .list-spec_item._usb::before {
  top: -1px;
  width: 10px;
  height: 14px;
  background-position: -12px -235px;
  background-size: 274px auto;
}

.list-spec > .list-spec_item._ac {
  padding-left: 15px;
}

.list-spec > .list-spec_item._ac::before {
  top: -1px;
  width: 10px;
  height: 14px;
  background-position: -12px -235px;
  background-size: 274px auto;
}

.list-spec > .list-spec_item._cheap-day ._icon {
  margin-right: 4px;
  padding: 0 3px;
  border-radius: 2px;
  background-color: #c00;
  color: #fff;
  letter-spacing: 2px;
  font-weight: bold;
  font-size: 1.1rem;
}

.list-spec > .list-spec_item._cheap-flight ._icon {
  margin-right: 4px;
}

.list-spec > .list-spec_item._video > span {
  position: relative;
  display: inline-block;
  margin-left: 2px;
}

.list-spec > .list-spec_item._video > span::before {
  position: absolute;
  left: 0;
}

.list-spec > .list-spec_item._video > span._monitor {
  padding-left: 22px;
}

.list-spec > .list-spec_item._video > span._monitor::before {
  top: 0;
  width: 16px;
  height: 14px;
  background-position: -140px -100px;
  background-size: 274px auto;
}

.list-spec > .list-spec_item._video > span._terminal {
  padding-left: 18px;
}

.list-spec > .list-spec_item._video > span._terminal::before {
  top: 1px;
  width: 13px;
  height: 13px;
  background-position: -141px -208px;
  background-size: 274px auto;
}

.list-spec > .list-spec_item._video > span:last-child {
  margin-right: 2px;
}

.list-desc-line_plan_option + .list-spec {
  margin-top: -15px;
}

.list-spec._seatmap {
  margin-bottom: 10px;
  padding: 0 20px;
}

.list-spec._seatmap > li {
  margin-right: 20px;
}

.list-spec._seatmap > li:last-child {
  margin-right: 0;
}

.list-spec._seatmap > .list-spec_item {
  margin-top: 2px;
  margin-right: 15px;
}

.list-spec._seatmap > .list-spec_item:last-child {
  margin-right: 0;
}

.list-spec._seatmap > .list-spec_item .item {
  color: #616161;
}

/* .list-radio
----------------------------------------------- */
.list-radio._line {
  display: flex;
  margin-bottom: 5px;
  flex-wrap: wrap;
}

.list-radio._line > li {
  margin: 0 15px 15px 0;
  color: #000;
}

/* .list-info
----------------------------------------------- */
.list-info {
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}

.list-info > li {
  padding: 20px;
  border-bottom: 1px dashed #ccc;
  line-height: 1.71429;
}

.list-info > li:last-child {
  border-bottom: none;
}

.list-info > li > :last-child {
  margin-bottom: 0;
}

.list-info_em {
  font-size: 1.6rem;
}

.list-info_inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.list-info_item {
  width: 700px;
}

.list-info_item > :last-child {
  margin-bottom: 0;
}

.list-info_item + .list-info_item {
  width: 240px;
}

.list-info_inner_02 {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.list-info_inner_02 .list-info_item {
  width: 620px;
}

.list-info_inner_02 .list-info_item + .list-info_item {
  width: 300px;
}

.list-info_inner_02 .list-info_item + .list-info_item .btn, .list-info_inner_02 .list-info_item + .list-info_item .btn-next, .list-info_inner_02 .list-info_item + .list-info_item .btn-back {
  width: 100%;
}

.list-info_inner_02 .list-info_item + .list-info_item .link {
  font-size: 1.5rem;
}

.list-info_inner_02 .list-info_item + .list-info_item .link:before {
  top: 8px;
}

.list-info_hdg {
  position: relative;
  box-sizing: border-box;
  margin-bottom: 10px;
  padding: 9px 0 0 59px;
  min-height: 42px;
  color: #333;
  font-size: 2.2rem;
  line-height: 1.27273;
}

.list-info_hdg::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 42px;
  height: 42px;
  background-position: -231px -126px;
  background-size: 274px auto;
}

.list-info_hdg > strong > span {
  color: #2e7d32;
}

.list-info_hdg_02 {
  margin-bottom: 5px;
  color: #333;
  font-size: 1.6rem;
  line-height: 1.5;
}

/* .list-order
----------------------------------------------- */
.list-order > li {
  position: relative;
  margin-bottom: 20px;
  padding-left: 45px;
}

.list-order > li:last-child {
  margin-bottom: 0;
}

.list-order > li:last-child .list-order_body::before {
  display: none;
}

.list-order > li ul, .list-order > li ol {
  margin: 5px 0;
}

.list-order_mark {
  position: absolute;
  top: 5px;
  left: 0;
  z-index: 1;
  padding: 5px;
  width: 30px;
  height: 30px;
  border: 2px solid #6a7181;
  border-radius: 15px;
  background-color: #fff;
  color: #6a7181;
  text-align: center;
  font-weight: bold;
  font-size: 1.4rem;
}

.list-order_mark._single {
  top: -5px;
}

.list-order_body {
  position: relative;
  line-height: 1.5;
}

.list-order_body::before {
  position: absolute;
  top: 15px;
  left: -31px;
  z-index: 0;
  width: 2px;
  height: calc(100% + 25px);
  background-color: #6a7181;
}

/* .list-embargo
----------------------------------------------- */
.list-embargo {
  display: flex;
  margin-top: -20px;
  flex-wrap: wrap;
}

.list-embargo > li {
  position: relative;
  display: flex;
  flex-direction: column;
  margin-top: 20px;
  padding: 0 10px 0 70px;
  min-height: 62px;
  width: 25%;
  justify-content: center;
}

.list-embargo > li ._num {
  position: absolute;
  top: 0;
  color: #616161;
  font-size: 1.2rem;
}

.list-embargo > li ._txt {
  margin-top: 15px;
  color: #000;
}

.list-embargo > li._item_01::before, .list-embargo > li._item_02::before, .list-embargo > li._item_03::before, .list-embargo > li._item_04::before, .list-embargo > li._item_05::before, .list-embargo > li._item_06::before, .list-embargo > li._item_07::before, .list-embargo > li._item_08::before {
  position: absolute;
  top: 0;
  left: 0;
}

.list-embargo > li._item_01::before {
  width: 52px;
  height: 60px;
  background-position: -177px 0;
  background-size: 274px auto;
}

.list-embargo > li._item_02::before {
  width: 44px;
  height: 65px;
  background-position: -177px -62px;
  background-size: 274px auto;
}

.list-embargo > li._item_03::before {
  width: 54px;
  height: 56px;
  background-position: -56px -117px;
  background-size: 274px auto;
}

.list-embargo > li._item_04::before {
  width: 54px;
  height: 58px;
  background-position: 0 -117px;
  background-size: 274px auto;
}

.list-embargo > li._item_05::before {
  width: 50px;
  height: 54px;
  background-position: -62px -60px;
  background-size: 274px auto;
}

.list-embargo > li._item_06::before {
  width: 43px;
  height: 62px;
  background-position: -231px 0;
  background-size: 274px auto;
}

.list-embargo > li._item_07::before {
  width: 32px;
  height: 60px;
  background-position: -231px -64px;
  background-size: 274px auto;
}

.list-embargo > li._item_08::before {
  width: 52px;
  height: 61px;
  background-position: -123px 0;
  background-size: 274px auto;
}

.list-embargo > :last-child {
  margin-bottom: 0;
}

/* .list-passenger
----------------------------------------------- */
.list-passenger {
  margin-bottom: 0;
}

.list-passenger > li {
  display: flex;
  padding: 15px 60px 15px 20px;
  border-bottom: 1px dashed #ccc;
  vertical-align: middle;
  align-items: center;
}

.list-passenger > li:last-child {
  border-bottom: 1px solid #ccc;
}

.list-passenger > li ._num {
  display: inline-block;
  margin-right: 20px;
  min-width: 24px;
  height: 24px;
  border-radius: 12px;
  background-color: #c00;
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 1.65;
}

.list-passenger > li ._name {
  margin-right: 20px;
  word-break: break-all;
  font-size: 1.6rem;
}

.list-passenger > li ._option {
  margin-right: 20px;
  word-break: keep-all;
}

.list-passenger > li ._seat {
  display: flex;
  margin-bottom: 0;
  margin-left: auto;
  min-width: 100px;
}

.list-passenger > li ._seat > dt {
  margin-right: 10px;
  color: #616161;
  font-size: 1.4rem;
}

.list-passenger > li ._seat > dd {
  font-weight: bold;
  font-size: 1.6rem;
}

/* .list-passenger-02
----------------------------------------------- */
.list-passenger-02 {
  margin-bottom: 10px;
}

.list-passenger-02 > div {
  margin-bottom: 10px;
}

.list-passenger-02 > div > dt {
  font-size: 1.6rem;
}

.list-passenger-02 > div > dd {
  font-weight: bold;
  font-size: 2rem;
}

/* .list-flow-boarding
----------------------------------------------- */
.list-flow-boarding {
  display: flex;
  justify-content: center;
}

.list-flow-boarding > li {
  position: relative;
  margin-right: 63px;
}

.list-flow-boarding > li::after {
  position: absolute;
  top: 91px;
  right: -71px;
  width: 0;
  height: 0;
  border-top: 26px solid transparent;
  border-right: 26px solid transparent;
  border-bottom: 26px solid transparent;
  border-left: 21px solid #f0c2c5;
}

.list-flow-boarding > li:last-child {
  margin-right: 0;
}

.list-flow-boarding > li:last-child::after {
  display: none;
}

.list-flow-boarding_hdg {
  display: flex;
  margin-bottom: 12px;
  min-height: 37px;
  align-items: flex-end;
}

.list-flow-boarding_hdg ._num {
  margin-right: 8px;
}

.list-flow-boarding_txt {
  margin-top: 15px;
  max-width: 230px;
  font-size: 1.3rem;
}

.list-flow-boarding_txt_img {
  margin-top: 96px;
}

/* ----------------------------------------------------------------
    Link
----------------------------------------------------------------- */
/* .link
----------------------------------------------- */
.link {
  position: relative;
  display: inline-block;
  padding-left: 14px;
  transition: color .3s cubic-bezier(.39, .575, .565, 1);
}

.link::before {
  position: absolute;
  top: 5px;
  left: 0;
  width: 6px;
  height: 6px;
  border: 2px solid #b22430;
  border-bottom: transparent;
  border-left: transparent;
  transform: rotate(45deg);
}

.link:hover, .link:active, .link:focus {
  color: #ca0000;
  text-decoration: underline;
}

/* .link-txt
----------------------------------------------- */
.link-txt {
  transition: color .3s cubic-bezier(.39, .575, .565, 1);
}

.link-txt:hover, .link-txt:active, .link-txt:focus {
  color: #ca0000;
  text-decoration: underline;
}

p .link-txt {
  margin-left: 5px;
}

.link-txt._line {
  padding-right: 5px;
  text-decoration: underline;
}

.link-txt .icon-blank {
  padding: 0 5px 5px 0;
  width: 16px;
}

/* .link-list
----------------------------------------------- */
.link-list > li {
  margin-bottom: 10px;
  color: #616161;
}

.link-list > li:last-child {
  margin-bottom: 0;
}

.link-list > li > ul, .link-list > li > ol {
  margin: 10px 0;
}

.link-list > li > .link-list {
  margin-left: 18px;
}

.link-list > li a {
  position: relative;
  display: inline-block;
  padding-left: 14px;
  color: #0f0f69;
  text-decoration: none;
  font-size: 1.4rem;
  transition: color .3s cubic-bezier(.39, .575, .565, 1);
}

.link-list > li a::before {
  position: absolute;
  top: 6px;
  left: 0;
  width: 6px;
  height: 6px;
  border-top: 2px solid #d11b1b;
  border-right: 2px solid #d11b1b;
  transform: rotate(45deg) translate3d(0, 0, 0);
}

.link-list > li a .icon-blank {
  top: -6px;
}

.link-list > li a:hover, .link-list > li a:active, .link-list > li a:focus {
  color: #ca0000;
  text-decoration: underline;
}

.link-list > li a.link-list_blank {
  padding-left: 0;
}

.link-list > li a.link-list_blank::before {
  display: none;
}

.link-list._inline {
  display: flex;
  margin-bottom: 0;
  flex-wrap: wrap;
}

.link-list._inline > li {
  margin: 0 18px 24px 0;
}

.link-list-wrap .link-list._inline {
  margin-top: -24px;
}

.link-list-wrap .link-list._inline > li {
  margin-top: 24px;
  margin-bottom: 0;
}

/* .link-list-wrap
----------------------------------------------- */
.link-list-wrap {
  margin: 32px 0;
}

.link-list-wrap > :last-child {
  margin-bottom: 0;
}

/* .link-panel
----------------------------------------------- */
.link-panel {
  margin-bottom: 30px;
  border: 1px solid #ccc;
}

.link-panel_hdg {
  margin-bottom: 9px !important;
  color: #000;
  font-weight: bold;
}

.link-panel > a {
  position: relative;
  display: block;
  padding: 15px 37px 15px 23px;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.link-panel > a > :last-child {
  margin-bottom: 0;
}

.link-panel > a::after {
  position: absolute;
  top: 50%;
  right: 15px;
  margin-top: -4px;
  width: 8px;
  height: 8px;
  border: 2px solid #c00;
  border-bottom: transparent;
  border-left: transparent;
  transform: rotate(45deg);
}

.link-panel > a:hover, .link-panel > a:active, .link-panel > a:focus {
  opacity: .8;
}

/* .link-condition
----------------------------------------------- */
.link-condition {
  position: relative;
  display: block;
  padding: 5px 38px 0 20px;
  width: 100%;
  height: 54px;
  border: 1px solid #ccc;
  border-left: 0;
  background-color: #fff;
  box-shadow: 0 2px 2px #e7e7e7;
  font-size: 1.4rem;
  transition: background-color .3s cubic-bezier(.39, .575, .565, 1);
}

.link-condition._btn {
  padding: 6px 20px;
}

.lyt-head-search .link-condition {
  height: 54px;
  border: 1px solid #fff;
  border-left-color: #ced7e1;
  background-color: rgba(0, 0, 0, 0);
}

.lyt-head-search .link-condition .btn-03 {
  width: 100%;
  height: 100%;
}

.link-condition._calendar {
  height: 100%;
}

.link-condition[role='button'] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.link-condition .link-condition_txt {
  margin-bottom: 8px;
  color: #616161;
  font-size: 1.3rem;
}

.link-condition .link-condition_data {
  margin-bottom: 0;
  color: #000;
}

.link-condition + .modal + .link-condition_sup {
  margin-bottom: 0;
  padding: 15px 18px 0;
}

.link-condition + .link-condition_sup {
  margin-bottom: 0;
  padding: 15px 18px 0;
}

.link-condition + .link-condition_sup a .icon-blank {
  padding: 0 5px 5px 0;
  width: 16px;
}

.link-condition + .link-condition_sup a:hover, .link-condition + .link-condition_sup a:active, .link-condition + .link-condition_sup a:focus {
  color: #ca0000;
  text-decoration: underline;
}

.link-condition.is-disabled {
  background-color: #f8f8f8;
  cursor: default;
}

.link-condition.is-disabled .link-condition_data {
  display: none;
}

/* ----------------------------------------------------------------
    Button
----------------------------------------------------------------- */
/* .btn
----------------------------------------------- */
.btn {
  position: relative;
  display: inline-block;
  padding: 19px 30px;
  min-width: 240px;
  background-color: #c00;
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .25);
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 1.6rem;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.btn._small {
  min-width: 120px;
}

.btn._thin {
  padding: 17px 32px;
}

.btn::before {
  position: absolute;
  top: 50%;
  right: 16px;
  margin-top: -5px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg) translate3d(0, 0, 0);
}

.btn._blank::before {
  display: none;
}

.btn._blank .icon-blank {
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -6px;
}

.btn:hover, .btn:active, .btn:focus {
  opacity: .8;
}

/* .btn-02
----------------------------------------------- */
.btn-02 {
  position: relative;
  display: inline-block;
  padding: 9px;
  border: 1px solid #ccc;
  background: #fff;
}

.btn-02 > span {
  position: relative;
  display: inline-block;
  padding: 0 0 0 22px;
}

/* .btn-03
----------------------------------------------- */
.btn-03 {
  padding: 6px 14px;
  border: 1px solid #ccc;
  background-color: #fff;
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .1);
  color: #0f0f69;
  font-weight: bold;
  font-size: 1.4rem;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.btn-03 > span {
  position: relative;
  padding-left: 20px;
}

.btn-03 > span::before {
  position: absolute;
  top: 2px;
  left: -2px;
  width: 16px;
  height: 16px;
  border: 1px solid #2a344b;
  border-radius: 2px;
}

.btn-03 > span::after {
  position: absolute;
  top: 7px;
  left: 2px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #2a344b;
  border-right: 2px solid #2a344b;
  transform: rotate(45deg) translate3d(0, 0, 0);
}

.btn-03._search {
  padding: 10px;
  font-weight: normal;
}

.btn-03._search > span {
  padding-left: 25px;
}

.btn-03._search > span::before {
  position: absolute;
  top: 2px;
  left: 0;
  width: 16px;
  height: 17px;
  border: none;
  border-radius: 0;
  background-position: -123px -208px;
  background-size: 274px auto;
}

.btn-03._search > span::after {
  display: none;
}

.btn-03._search._nonstop > span::before {
  left: 3px;
  width: 14px;
  height: 15px;
  background-position: -219px -177px;
  background-size: 274px auto;
}

.btn-03._bare {
  padding: 6px 0;
  border: 0;
  background-color: rgba(0, 0, 0, 0);
  box-shadow: none;
  font-weight: normal;
}

.btn-03:hover, .btn-03:active, .btn-03:focus {
  opacity: .8;
}

.hdg-l2 .btn-03 {
  padding: 10px 12px 10px 9px;
  font-weight: normal;
}

.hdg-l2 .btn-03 > span {
  padding-left: 22px;
}

.hdg-l2 .btn-03 > span::before {
  top: 3px;
  left: 0;
}

.hdg-l2 .btn-03 > span::after {
  top: 8px;
  left: 4px;
}

/* .btn-04
----------------------------------------------- */
.btn-04 {
  display: inline-block;
  padding: 10px;
  min-width: 180px;
  border: 1px solid #ccc;
  text-align: center;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.btn-04 > span {
  position: relative;
  padding-left: 20px;
}

.btn-04 > span::before {
  position: absolute;
  top: 2px;
  left: -2px;
  width: 16px;
  height: 16px;
  border: 1px solid #2a344b;
  border-radius: 2px;
}

.btn-04 > span::after {
  position: absolute;
  top: 7px;
  left: 2px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #2a344b;
  border-right: 2px solid #2a344b;
  transform: rotate(45deg) translate3d(0, 0, 0);
}

.btn-04 .icon-blank {
  position: relative;
  top: 2px;
}

.btn-04:hover, .btn-04:active, .btn-04:focus {
  opacity: .8;
}

/* .btn-05
----------------------------------------------- */
.btn-05 {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding: 10px 15px;
  border: 1px solid #ccc;
  background-color: #fff;
  color: #000;
  text-align: center;
  font-weight: bold;
  font-size: 1.4rem;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.btn-05 > span {
  position: relative;
  display: inline-block;
  padding-right: 17px;
  width: 100%;
  text-align: center;
}

.btn-05 > span::after {
  position: absolute;
  top: 50%;
  right: 3px;
  margin-top: -5px;
  width: 8px;
  height: 8px;
  border: 2px solid #c00;
  border-bottom: transparent;
  border-left: transparent;
  transform: rotate(45deg);
}

.btn-05:hover, .btn-05:active, .btn-05:focus {
  opacity: .8;
}

.btn-05._blank > span::after {
  display: none;
}

.btn-05._blank > span .icon-blank {
  position: absolute;
  top: 50%;
  right: -5px;
  margin-top: -6px;
}

.btn-05._modal > span::after {
  display: none;
}

/* .btn-wrap
----------------------------------------------- */
.btn-wrap {
  margin-top: 60px;
  margin-bottom: 30px;
}

/* .btn-wrap-02
----------------------------------------------- */
.btn-wrap-02 {
  margin-top: 32px;
  margin-bottom: 32px;
}

.btn-wrap-02 > :last-child {
  margin-bottom: 0;
}

/* .btn-disable
----------------------------------------------- */
.btn-disable {
  position: relative;
  display: inline-block;
  padding: 19px 30px;
  min-width: 240px;
  background-color: #eee;
  color: #616161;
  text-align: center;
  font-weight: bold;
  font-size: 1.6rem;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.btn-disable::before {
  position: absolute;
  top: 50%;
  right: 16px;
  margin-top: -5px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #616161;
  border-right: 2px solid #616161;
  transform: rotate(45deg) translate3d(0, 0, 0);
}

/* .btn-back
----------------------------------------------- */
.btn-back {
  position: relative;
  display: inline-block;
  padding: 19px 22px 19px 36px;
  min-width: 240px;
  border: 1px solid #ccc;
  background-color: #fff;
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .1);
  color: #333;
  text-align: center;
  font-weight: bold;
  font-size: 1.6rem;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.btn-back._small {
  min-width: 120px;
}

.btn-back._thin {
  padding: 17px 22px 17px 36px;
}

.btn-back::before {
  position: absolute;
  top: 50%;
  left: 20px;
  margin-top: -5px;
  width: 10px;
  height: 10px;
  border-top: 2px solid #c00;
  border-right: 2px solid #c00;
  transform: rotate(-135deg) translate3d(0, 0, 0);
}

.btn-back:hover, .btn-back:active, .btn-back:focus {
  opacity: .8;
}

/* .btn-next
----------------------------------------------- */
.btn-next {
  position: relative;
  display: inline-block;
  padding: 19px 36px 19px 22px;
  min-width: 240px;
  border: 1px solid #ccc;
  background-color: #fff;
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .1);
  color: #333;
  text-align: center;
  font-weight: bold;
  font-size: 1.6rem;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.btn-next._small {
  min-width: 120px;
}

.btn-next._thin {
  padding: 17px 36px 17px 18px;
}

.btn-next::before {
  position: absolute;
  top: 50%;
  right: 20px;
  margin-top: -5px;
  width: 10px;
  height: 10px;
  border-top: 2px solid #c00;
  border-right: 2px solid #c00;
  transform: rotate(45deg) translate3d(0, 0, 0);
}

.btn-next._code {
  padding: 7px 46px 7px 32px;
}

.btn-next._code ._main {
  position: relative;
  display: block;
  padding-left: 30px;
}

.btn-next._code ._main::before {
  position: absolute;
  top: -1px;
  left: 4px;
  width: 18px;
  height: 18px;
  background-position: -143px -177px;
  background-size: 274px auto;
}

.btn-next._code ._sup {
  font-weight: normal;
  font-size: 1.2rem;
}

.btn-next._blank::before {
  display: none;
}

.btn-next._blank .icon-blank {
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -6px;
}

.btn-next:hover, .btn-next:active, .btn-next:focus {
  opacity: .8;
}

/* .btn-class
----------------------------------------------- */
.btn-class {
  display: flex;
}

.btn-class > li {
  margin-left: 10px;
  width: calc(100% / 3);
}

.btn-class > li:first-child, .btn-class > li:nth-child(3n+1) {
  margin-left: 0;
}

.btn-class > li .btn-class-item {
  position: relative;
  display: block;
  width: 243px;
  border: 1px solid #d0d0d0;
}

.btn-class > li .btn-class-item .btn-class-item_radio {
  display: block;
  padding: 14px 32px;
  color: #000;
  cursor: pointer;
}

.btn-class > li .btn-class-item .btn-class-item_radio::before {
  position: absolute;
  top: 50%;
  left: 12px;
  margin-top: -2px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #c00;
  border-right: 2px solid #c00;
  transform: rotate(45deg) translateY(-50%);
}

.btn-class > li .btn-class-item input[type='radio'] {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.btn-class > li .btn-class-item input[type='radio']::-ms-expand {
  display: none;
}

.btn-class > li .btn-class-item input[type='radio']:focus + label {
  outline: 2px solid #a6c8ff;
}

.btn-class > li .btn-class-item input[type='radio']:checked + .btn-class-item_radio {
  background-color: #555;
  color: #fff;
  font-weight: bold;
}

.btn-class > li .btn-class-item input[type='radio']:checked + .btn-class-item_radio::before {
  border-top-color: #fff;
  border-right-color: #fff;
}

.btn-class > li .btn-class-item input[type='radio']:disabled + .btn-class-item_radio {
  background-color: #ccc;
  color: #333;
}

.btn-class > li .btn-class-item input[type='radio']:disabled + .btn-class-item_radio::before {
  border-top-color: #777;
  border-right-color: #777;
}

.btn-class + .btn-class {
  margin-top: -10px;
}

/* .btn-more
----------------------------------------------- */
.btn-more {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding: 17px 45px;
  min-width: 240px;
  border: 1px solid #ccc;
  background-color: #fff;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, .1);
  color: #333;
  text-align: center;
  font-weight: bold;
  font-size: 1.6rem;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.btn-more::after {
  position: absolute;
  top: 50%;
  right: 19px;
  margin-top: -5px;
  width: 8px;
  height: 8px;
  border: 2px solid #c00;
  border-bottom: transparent;
  border-left: transparent;
  transform: rotate(135deg);
}

.btn-more:hover, .btn-more:active, .btn-more:focus {
  opacity: .8;
}

/* .btn-add
----------------------------------------------- */
.btn-add {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding: 11px 11px 9px;
  border: 1px solid #ccc;
  background-color: #fff;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, .1);
  color: #0f0f69;
  font-size: 1.4rem;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.btn-add > span {
  position: relative;
  display: inline-block;
  padding-left: 20px;
}

.btn-add > span::before, .btn-add > span::after {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -2px;
  width: 12px;
  height: 2px;
  background-color: #2a344b;
}

.btn-add > span::after {
  transform: rotate(90deg);
}

.btn-add:hover, .btn-add:active, .btn-add:focus {
  opacity: .8;
}

/* .btn-delete
----------------------------------------------- */
.btn-delete {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding: 11px 11px 9px;
  border: 1px solid #ccc;
  background-color: #fff;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, .1);
  color: #0f0f69;
  font-size: 1.4rem;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.btn-delete > span {
  position: relative;
  display: inline-block;
  padding-left: 20px;
}

.btn-delete > span::before, .btn-delete > span::after {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -2px;
  width: 12px;
  height: 2px;
  background-color: #2a344b;
  transform: rotate(45deg);
}

.btn-delete > span::after {
  transform: rotate(-45deg);
}

.btn-delete:hover, .btn-delete:active, .btn-delete:focus {
  opacity: .8;
}

/* .btn-list
----------------------------------------------- */
.btn-list {
  display: flex;
}

.btn-list > li {
  margin-left: 10px;
}

.btn-list > li:first-child {
  margin-left: 0;
}

.btn-list > li._hidden {
  visibility: hidden;
}

.btn-list._right {
  justify-content: flex-end;
}

/* .btn-media
----------------------------------------------- */
.btn-media {
  position: relative;
  display: block;
  padding: 15px 44px 15px 84px;
  width: 320px;
  border: 1px solid #ccc;
  background-color: #fff;
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .1);
  text-align: left;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.btn-media:hover, .btn-media:active, .btn-media:focus {
  opacity: .8;
}

.btn-media ._hdg {
  display: block;
  margin-bottom: 6px;
  color: #333;
  font-weight: bold;
  font-size: 1.6rem;
}

.btn-media ._txt {
  display: block;
  color: #000;
  font-size: 1.4rem;
}

.btn-media::before {
  position: absolute;
  top: 50%;
  right: 17px;
  margin-top: -4px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #c00;
  border-right: 2px solid #c00;
  transform: rotate(45deg) translate3d(0, 0, 0);
}

.btn-media._blank::before {
  display: none;
}

.btn-media._blank .icon-blank {
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -5px;
}

.btn-media::after {
  position: absolute;
}

.btn-media._receipts::after {
  top: 8px;
  left: 8px;
  width: 59px;
  height: 58px;
  background-position: 0 0;
  background-size: 274px auto;
}

.btn-media._search::after {
  top: 10px;
  left: 13px;
  width: 60px;
  height: 55px;
  background-position: -61px 0;
  background-size: 274px auto;
}

.btn-media._search-02::after {
  top: 10px;
  left: 13px;
  width: 60px;
  height: 55px;
  background-position: 0 -60px;
  background-size: 274px auto;
}

/* .btn-toggle
----------------------------------------------- */
.btn-toggle {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding: 11px 11px 9px;
  min-width: 250px;
  border: 1px solid #ccc;
  background-color: #fff;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, .1);
  color: #0f0f69;
  font-size: 1.4rem;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.btn-toggle > span {
  display: inline-block;
  padding-left: 20px;
}

.btn-toggle > span::before, .btn-toggle > span::after {
  position: absolute;
  top: 50%;
  left: 10px;
  margin-top: -2px;
  width: 12px;
  height: 2px;
  background-color: #2a344b;
}

.btn-toggle > span::after {
  transform: rotate(90deg);
}

.btn-toggle[aria-expanded='true'] > span::after {
  display: none;
}

.btn-toggle:hover, .btn-toggle:active, .btn-toggle:focus {
  opacity: .8;
}

/* ----------------------------------------------------------------
    Grid
----------------------------------------------------------------- */
/* .grid[data-col="2"]
----------------------------------------------- */
.grid[data-col='2'] {
  margin-left: -5.66038%;
}

.grid[data-col='2'] .grid_col {
  margin-left: 5.66038%;
  flex-basis: calc(50% - 5.66038%);
}

.grid[data-col='2']._stick {
  margin-left: 0;
}

.grid[data-col='2']._stick .grid_col {
  margin-left: 0;
  flex-basis: calc(50% - 0%);
}

.grid[data-col='2']._col-wide {
  margin-left: -.39841%;
}

.grid[data-col='2']._col-wide .grid_col {
  margin-left: .39841%;
  flex-basis: calc(50% - .39841%);
}

/* .grid[data-col="3"]
----------------------------------------------- */
.grid[data-col='3'] {
  margin-left: -4.7619%;
}

.grid[data-col='3'] .grid_col {
  margin-left: 4.7619%;
  flex-basis: calc(33.33333% - 4.7619%);
}

.grid[data-col='3']._stick {
  margin-left: 0;
}

.grid[data-col='3']._stick .grid_col {
  margin-left: 0;
  flex-basis: calc(33.33333% - 0%);
}

/* .grid[data-col="4"]
----------------------------------------------- */
.grid[data-col='4'] {
  margin-left: -3.10078%;
}

.grid[data-col='4'] .grid_col {
  margin-left: 3.10078%;
  flex-basis: calc(25% - 3.10078%);
}

.grid[data-col='4']._stick {
  margin-left: 0;
}

.grid[data-col='4']._stick .grid_col {
  margin-left: 0;
  flex-basis: calc(25% - 0%);
}

/* .grid
----------------------------------------------- */
.grid {
  display: flex;
  margin-top: -60px;
  margin-bottom: 60px;
  flex-wrap: wrap;
}

.grid > :last-child {
  margin-bottom: 0;
}

.grid .grid_col {
  margin-top: 60px;
}

.grid .grid_col > :first-child {
  margin-top: 0;
}

.grid .grid_col > :last-child {
  margin-bottom: 0;
}

.grid._stick {
  margin-top: -20px;
  margin-bottom: 20px;
}

.grid._stick .grid_col {
  margin-top: 20px;
}

.grid._stick._condition[data-col='2'] .grid_col:nth-child(odd) .form-select-condition, .grid._stick._condition[data-col='2'] .grid_col:nth-child(odd) .link-condition {
  border-left: 1px solid #ccc;
  border-radius: 2px 0 0 2px;
}

.grid._stick._condition[data-col='2'] .grid_col:nth-child(even) .form-select-condition, .grid._stick._condition[data-col='2'] .grid_col:nth-child(even) .link-condition, .grid._stick._condition[data-col='2'] .grid_col:last-child .form-select-condition, .grid._stick._condition[data-col='2'] .grid_col:last-child .link-condition {
  border-radius: 0 2px 2px 0;
}

.grid._stick._condition[data-col='3'] .grid_col:first-child .form-select-condition, .grid._stick._condition[data-col='3'] .grid_col:first-child .link-condition, .grid._stick._condition[data-col='3'] .grid_col:nth-child(3n+1) .form-select-condition, .grid._stick._condition[data-col='3'] .grid_col:nth-child(3n+1) .link-condition {
  border-left: 1px solid #ccc;
  border-radius: 2px 0 0 2px;
}

.grid._stick._condition[data-col='3'] .grid_col:nth-child(3n) .form-select-condition, .grid._stick._condition[data-col='3'] .grid_col:nth-child(3n) .link-condition, .grid._stick._condition[data-col='3'] .grid_col:last-child .form-select-condition, .grid._stick._condition[data-col='3'] .grid_col:last-child .link-condition {
  border-radius: 0 2px 2px 0;
}

.grid._stick._condition[data-col='4'] .grid_col:first-child .form-select-condition, .grid._stick._condition[data-col='4'] .grid_col:first-child .link-condition, .grid._stick._condition[data-col='4'] .grid_col:nth-child(4n+1) .form-select-condition, .grid._stick._condition[data-col='4'] .grid_col:nth-child(4n+1) .link-condition {
  border-left: 1px solid #ccc;
  border-radius: 2px 0 0 2px;
}

.grid._stick._condition[data-col='4'] .grid_col:nth-child(4n) .form-select-condition, .grid._stick._condition[data-col='4'] .grid_col:nth-child(4n) .link-condition, .grid._stick._condition[data-col='4'] .grid_col:last-child .form-select-condition, .grid._stick._condition[data-col='4'] .grid_col:last-child .link-condition {
  border-radius: 0 2px 2px 0;
}

.lyt-head-search .grid._stick._condition .grid_col {
  width: 206px;
  flex-grow: 1;
}

.lyt-head-search .grid._stick._condition .grid_col:first-child {
  border-radius: 2px 0 0 2px;
}

.lyt-head-search .grid._stick._condition .grid_col:last-child {
  border-radius: 0 2px 2px 0;
}

.lyt-head-search .grid._stick._condition .grid_col._outgoing .form-select-condition {
  border-left: 1px solid #ced7e1;
}

.lyt-head-search .grid._stick._condition .grid_col._departure {
  width: 180px;
}

.lyt-head-search .grid._stick._condition .grid_col._number {
  width: 228px;
}

.lyt-head-search .grid._stick._condition .grid_col._search {
  width: 180px;
}

/* ----------------------------------------------------------------
    Panel
----------------------------------------------------------------- */
/* .panel
----------------------------------------------- */
.panel {
  margin-bottom: 30px;
  padding: 18px;
  border: 1px solid #ccc;
}

.panel > :first-child {
  margin-top: 0;
}

.panel > :last-child {
  margin-bottom: 0;
}

.panel .panel_hdg {
  position: relative;
  margin-bottom: 10px;
  color: #000;
  font-weight: bold;
  font-size: 1.6rem;
}

.panel .panel_hdg._attention {
  padding-left: 22px;
}

.panel .panel_hdg._attention::before {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 12px;
  height: 12px;
  background-position: -187px -208px;
  background-size: 274px auto;
}

.panel_hdg-02 {
  margin: 0 0 4px;
  color: #565656;
  font-size: 1.4rem;
}

/* .panel-02
----------------------------------------------- */
.panel-02 {
  margin: 40px 0;
  padding: 20px;
  background-color: #f8f8f8;
}

.panel-02-inner {
  padding: 25px 22px 30px;
  background-color: #fff;
}

.panel-02-inner > :last-child {
  margin-bottom: 0;
}

.panel-02-inner_hdg {
  margin: 24px 0 13px;
  font-size: 1.6rem;
}

.panel-02-inner_content {
  margin-top: 20px;
}

.panel-02-inner_content.is-hide {
  display: none;
}

.panel-02-inner_content :last-child {
  margin-bottom: 0;
}

.panel-02 .panel-02_hdg {
  margin-bottom: 30px;
  font-size: 1.8rem;
}

.panel-02 .panel-02_hdg + .panel-02_txt {
  margin-top: -20px;
}

.panel-02 .panel-02_hdg._space-narrow {
  margin-bottom: 10px;
}

.panel-02 .panel-02_txt {
  line-height: 1.5;
}

.panel-02 .panel-02_txt .form-table {
  margin-top: -10px;
}

.grid .grid_col._col-stretch .panel-02 {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.grid .grid_col._col-stretch .panel-02 .panel-02-inner {
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* .panel-02-grid
----------------------------------------------- */
.panel-02-grid {
  margin: 40px 0;
  padding: 20px;
  background-color: #f8f8f8;
}

.panel-02-grid-inner {
  display: flex;
  justify-content: space-between;
}

.panel-02-grid-inner > :last-child {
  margin-bottom: 0;
}

.panel-02-grid-inner_item {
  display: flex;
  flex-direction: column;
  padding: 25px 22px 30px;
  width: calc(50% - 2px);
  background-color: #fff;
  justify-content: space-between;
}

.panel-02-grid-inner_item > :last-child {
  margin-bottom: 0;
}

.panel-02-grid .panel-02_hdg {
  margin-bottom: 30px;
  font-size: 1.8rem;
}

.panel-02-grid .panel-02_hdg + .panel-02_txt {
  margin-top: -20px;
}

.panel-02-grid .panel-02_txt .form-table {
  margin-top: -10px;
}

/* .panel-attention
----------------------------------------------- */
.panel-attention {
  margin-bottom: 30px;
  padding: 18px;
  border: 2px solid #c00;
  background-color: #fdf5f5;
}

.panel-attention > :first-child {
  margin-top: 0;
}

.panel-attention > :last-child {
  margin-bottom: 0;
}

.panel-attention_hdg {
  position: relative;
  margin-bottom: 10px;
  padding-left: 34px;
  color: #c00;
  font-weight: bold;
  font-size: 2rem;
}

.panel-attention_hdg::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 24px;
  height: 24px;
  background-position: -52px -208px;
  background-size: 274px auto;
}

.hdg-l1 + .panel-attention, form > .panel-attention {
  margin-top: -16px;
  margin-bottom: 48px;
}

/* .panel-login-search
----------------------------------------------- */
.panel-login-search {
  margin-bottom: 30px;
  padding: 20px;
  background-color: #f8f8f8;
}

.panel-login-search .panel-login-search-inner {
  display: flex;
  justify-content: space-between;
}

.panel-login-search .panel-login-search-inner > .panel-login-search-inner_item {
  padding: 30px;
  width: calc(50% - 10px);
  border: 1px solid #ccc;
  border-top: 4px solid #ccc;
  background-color: #fff;
}

.panel-login-search .panel-login-search-inner > .panel-login-search-inner_item._login {
  border-top-color: #03428f;
}

.panel-login-search .panel-login-search-inner > .panel-login-search-inner_item._login .panel-login-search-inner_hdg span {
  position: relative;
  z-index: 1;
  padding-left: 40px;
}

.panel-login-search .panel-login-search-inner > .panel-login-search-inner_item._login .panel-login-search-inner_hdg span::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 28px;
  height: 28px;
  background-position: -31px -177px;
  background-size: 274px auto;
}

.panel-login-search .panel-login-search-inner > .panel-login-search-inner_item._login .panel-login-search-inner_hdg span::after {
  position: absolute;
  top: 17px;
  left: 35px;
  z-index: -1;
  width: calc(100% - 35px);
  height: 8px;
  background-color: #fff;
  background-image: linear-gradient(45deg, #f4f5f6 25%, #f4f5f6 25%, transparent 25%, transparent 75%, #f4f5f6 75%, #f4f5f6 75%), linear-gradient(-135deg, #f4f5f6 25%, #f4f5f6 25%, transparent 25%, transparent 75%, #f4f5f6 75%, #f4f5f6 75%);
  background-position: 0 0, 2px 2px;
  background-size: 4px 4px;
  background-repeat: repeat;
}

.panel-login-search .panel-login-search-inner > .panel-login-search-inner_item > :first-child {
  margin-top: 0;
}

.panel-login-search .panel-login-search-inner > .panel-login-search-inner_item > :last-child {
  margin-bottom: 0;
}

.panel-login-search .panel-login-search-inner .panel-login-search-inner_hdg {
  margin-bottom: 28px;
  color: #333;
  text-align: center;
  font-size: 1.8rem;
}

/* .panel-modal-condition
----------------------------------------------- */
.panel-modal-condition {
  width: 800px;
  background-color: #fff;
}

.panel-modal-condition .panel-modal-condition_hdg {
  padding: 10px 50px 8px 20px;
  background-color: #e0e0e0;
  color: #333;
  font-weight: normal;
  font-size: 2.4rem;
}

.panel-modal-condition .panel-modal-condition_item {
  padding: 20px 25px;
}

.panel-modal-condition .panel-modal-condition_item .panel-modal-condition_item_sup > p {
  text-align: left;
}

.panel-modal-condition .panel-modal-condition_item .panel-modal-condition_item_sup > :last-child {
  margin-bottom: 0;
}

.panel-modal-condition .panel-modal-condition_item > :last-child {
  margin-bottom: 0;
}

.panel-modal-condition .panel-modal-condition_foot {
  padding: 20px;
  border-top: 1px solid #d0d0d0;
  background: #eaeaea;
}

.panel-modal-condition .panel-modal-condition_foot > :last-child {
  margin-bottom: 0;
}

.panel-modal-condition .form-btn-set {
  position: relative;
  padding: 15px 40px;
  background: #555;
  color: #fff;
}

.panel-modal-condition .form-btn-set::before {
  position: absolute;
  top: 50%;
  right: 16px;
  margin-top: -5px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg) translate3d(0, 0, 0);
}

/* .panel-info
----------------------------------------------- */
.panel-info {
  margin: 0 0 64px;
  padding: 24px 20px 20px;
  background: url(../img/bg_panel_001.png) repeat #fdf3f4;
}

.panel-info > :last-child {
  margin-bottom: 0;
}

.panel-info_hdg {
  margin: 0 0 20px;
  color: #c00;
  text-align: center;
  font-size: 2.2rem;
  line-height: 1.27273;
}

.panel-info_hdg > span {
  display: inline-block;
  margin: 0 0 9px;
  color: #000;
  font-size: 1.4rem;
  line-height: 1.71429;
}

.panel-info_hdg._attention > .panel-info_hdg_inner {
  position: relative;
  margin-bottom: 0;
  padding-left: 34px;
  color: #c00;
  font-size: 2.2rem;
  line-height: 1.27273;
}

.panel-info_hdg._attention > .panel-info_hdg_inner::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 24px;
  height: 24px;
  background-position: -52px -208px;
  background-size: 274px auto;
}

.panel-info_inner {
  margin: 0 0 4px;
  padding: 24px 32px;
  background: #fff;
}

.panel-info_inner > :first-child {
  margin-top: 0;
}

.panel-info_inner > :last-child {
  margin-bottom: 0;
}

.panel-info_inner > :last-child > :last-child {
  margin-bottom: 0;
}

.panel-info_inner .lyt-flex .lyt-flex_item > p {
  line-height: 1.5;
}

.panel-info_inner_hdg {
  display: flex;
  margin: 24px 0 13px;
  font-size: 1.6rem;
}

.panel-info_inner_hdg .panel-info_inner_hdg_txt {
  font-size: 1.6rem;
  line-height: 1.5;
}

.panel-info_inner_hdg .panel-info_inner_hdg_sup {
  display: flex;
  padding-left: 15px;
  font-size: 1.4rem;
  align-items: center;
}

.panel-info_inner_hdg_02 {
  margin-bottom: 30px;
  font-size: 1.8rem;
}

.panel-info_inner_hdg_02 > ._small {
  font-size: 1.6rem;
}

.panel-info_inner_hdg_02._space-narrow {
  margin-bottom: 10px;
}

.panel-info_inner_content {
  margin-top: 20px;
}

.panel-info_inner_content.is-hide {
  display: none;
}

.grid .grid_col._col-stretch .panel-info {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.grid .grid_col._col-stretch .panel-info_inner {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.panel-info._space-narrow {
  padding-top: 20px;
}

.panel-info._space-narrow .panel-info_inner {
  padding: 25px 22px 30px;
}

/* .panel-flight
----------------------------------------------- */
.panel-flight {
  margin-bottom: 32px;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .2);
}

.panel-flight_hdg {
  display: flex;
  padding: 12px 20px 10px;
  background-color: #2a344b;
  justify-content: space-between;
  align-items: center;
}

.panel-flight_hdg > :last-child {
  margin-bottom: 0;
}

.panel-flight_hdg_txt {
  position: relative;
  padding-left: 29px;
  color: #fff;
  font-weight: bold;
  font-size: 1.6rem;
  align-items: center;
}

.panel-flight_hdg_txt::before {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -10px;
  width: 19px;
  width: 19px;
  height: 20px;
  height: 20px;
  background-position: -102px -208px;
  background-size: 274px auto;
}

.panel-flight_hdg_link {
  display: inline-flex;
}

.panel-flight_hdg_link > li {
  position: relative;
  margin-left: 15px;
  padding-left: 17px;
}

.panel-flight_hdg_link > li::before {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -8px;
  width: 1px;
  height: 16px;
  background-color: #6a7181;
}

.panel-flight_hdg_link > li:first-child {
  margin-left: 0;
  padding-left: 0;
}

.panel-flight_hdg_link > li:first-child::before {
  display: none;
}

.panel-flight_btn_delete, .panel-flight_btn_change {
  position: relative;
  display: inline-block;
  padding-left: 21px;
  color: #fff;
  text-align: left;
}

.panel-flight_btn_delete::before, .panel-flight_btn_delete::after {
  position: absolute;
  top: 50%;
  left: -1px;
  margin-top: -1px;
  width: 14px;
  height: 2px;
  background-color: #fff;
}

.panel-flight_btn_delete::before {
  transform: rotate(45deg);
}

.panel-flight_btn_delete::after {
  transform: rotate(-45deg);
}

.panel-flight_btn_change::before {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -6px;
  width: 12px;
  width: 12px;
  height: 12px;
  height: 12px;
  background-position: -201px -208px;
  background-size: 274px auto;
}

.panel-flight_inner {
  display: flex;
  padding: 24px 0;
  align-items: center;
}

.panel-flight_inner > :last-child {
  margin-bottom: 0;
}

.panel-flight_inner_info, .panel-flight_inner_price {
  box-sizing: border-box;
  width: 100%;
}

.panel-flight_inner_info > :last-child, .panel-flight_inner_price > :last-child {
  margin-bottom: 0;
}

.panel-flight_inner_info {
  position: relative;
  padding: 0 10px 0 31px;
  max-width: 774px;
  flex-basis: 0;
  flex-grow: 1;

  flex-shrink: 0;
}

.panel-flight_txt_date {
  margin-bottom: 10px;
}

.panel-flight_inner_info_lyt {
  display: flex;
}

.panel-flight_inner_info_time, .panel-flight_inner_info_detail {
  box-sizing: border-box;
  width: 100%;
}

.panel-flight_inner_info_time > :last-child, .panel-flight_inner_info_detail > :last-child {
  margin-bottom: 0;
}

.panel-flight_inner_info_time {
  box-sizing: border-box;
  padding-right: 15px;
  max-width: 278px;
  flex-basis: 0;
  flex-grow: 1;

  flex-shrink: 0;
}

.panel-flight_txt_flight > span {
  position: relative;
  display: block;
  padding-left: 25px;
}

.panel-flight_txt_flight > span::before {
  position: absolute;
}

.panel-flight_txt_flight > ._airport {
  font-size: 1.8rem;
}

.panel-flight_txt_flight > ._airport::before {
  top: .3em;
  left: 0;
  box-sizing: border-box;
  width: 12px;
  height: 12px;
  border: 2px solid #ccc;
  border-radius: 6px;
}

.panel-flight_txt_flight > ._time {
  padding-top: 20px;
  padding-bottom: 20px;
  color: #616161;
}

.panel-flight_txt_flight > ._time::before {
  top: 0;
  left: 5px;
  width: 2px;
  height: 100%;
  background-color: #ccc;
}

.panel-flight_txt_flight > ._time::after {
  position: absolute;
  bottom: 0;
  left: 7px;
  width: 2px;
  height: 9px;
  background-color: #ccc;
  transform: rotate(30deg);
}

.panel-flight_inner_info_detail {
  max-width: 460px;
}

.panel-flight_list_detail {
  display: flex;
  margin: -6px 0 15px -10px;
  flex-wrap: wrap;
}

.panel-flight_list_detail_col {
  display: flex;
  margin: 6px 0 0 10px;
  width: calc(50% - 10px);
}

.panel-flight_list_detail_col > dt {
  color: #616161;
}

.panel-flight_list_detail_col > dd {
  margin-left: 5px;
  flex-basis: 0;
  flex-grow: 1;

  flex-shrink: 0;
}

.panel-flight_list_detail_col > dd .text-strong {
  font-weight: normal;
}

.panel-flight_inner_price {
  padding: 10px 31px;
  max-width: 226px;
  border-left: 2px dotted #d8d8d8;
}

.panel-flight_txt_price {
  margin-bottom: 0;
  color: #616161;
  text-align: center;
}

.panel-flight_txt_price > span {
  display: block;
  margin-top: 4px;
  color: #000;
  font-weight: bold;
  font-size: 2.2rem;
}

.panel-flight_txt_price + .panel-flight_txt_price {
  margin-top: 10px;
}

.panel-flight_btn_grade > button {
  position: relative;
  display: inline-block;
  padding: 7px 15px 4px;
  border: 1px solid #ccc;
  text-align: left;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.panel-flight_btn_grade > button > span {
  position: relative;
  display: inline-block;
  padding-left: 32px;
  font-weight: bold;
}

.panel-flight_btn_grade > button > span::before {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -10px;
  width: 20px;
  width: 20px;
  height: 19px;
  height: 19px;
  background-position: -121px -177px;
  background-size: 274px auto;
}

.panel-flight_btn_grade > button > span > span {
  display: block;
  margin-top: 1px;
  color: #616161;
  font-weight: normal;
  font-size: 1.2rem;
}

.panel-flight_btn_grade > button:hover, .panel-flight_btn_grade > button:active, .panel-flight_btn_grade > button:focus {
  opacity: .8;
}

.panel-flight_txt_price + .panel-flight_btn_grade {
  margin-top: 14px;
}

.panel-flight_inner_grade {
  position: relative;
  display: none;
  border-top: 1px solid #d3d3d3;
  box-shadow: inset 0 1px 0 0 rgba(204, 204, 204, .1);
}

.panel-flight_inner_grade.is-show {
  display: block;
}

.no-js .panel-flight_inner_grade {
  display: block;
}

.panel-flight_inner_grade::before {
  position: absolute;
  top: -8px;
  right: 111px;
  width: 15px;
  height: 15px;
  border-top: 1px solid #d3d3d3;
  border-right: 1px solid #d3d3d3;
  background-color: #fafafa;
  transform: rotate(-45deg) translate3d(0, 0, 0);
}

.panel-flight_list_grade {
  background-color: #fafafa;
}

.panel-flight_list_grade > li {
  display: flex;
  padding: 15px 24px 15px 32px;
  border-top: 1px dashed #ccc;
  justify-content: space-between;
  align-items: center;
}

.panel-flight_list_grade > li:first-child {
  border-top: none;
}

.panel-flight_list_grade > li._class-01 {
  border-left: 4px solid #990d09;
}

.panel-flight_list_grade > li._class-02 {
  border-left: 4px solid #be9b33;
}

.panel-flight_list_grade > li > :last-child {
  margin-bottom: 0;
}

.panel-flight_list_grade_info > :last-child, .panel-flight_list_grade_price > :last-child {
  margin-bottom: 0;
}

.panel-flight_list_grade_info > dl {
  position: relative;
  padding-left: 60px;
}

.panel-flight_list_grade_info > dl > dt {
  font-weight: bold;
  font-size: 1.6rem;
}

.panel-flight_list_grade_info > dl > dt > img {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -18px;
}

.panel-flight_list_grade_info > dl > dt > span {
  display: inline-block;
  margin-left: 3px;
  color: #616161;
  font-size: 1.4rem;
}

.panel-flight_list_grade_info > dl > dd {
  margin-top: 5px;
}

.panel-flight_list_grade_info > dl > dd > ul {
  display: flex;
  margin-bottom: 0;
  flex-wrap: wrap;
}

.panel-flight_list_grade_info > dl > dd > ul > li {
  margin-right: 10px;
  color: #616161;
  font-size: 1.3rem;
}

.panel-flight_list_grade_info > dl > dd > ul > li::after {
  padding-left: 10px;
  content: '\002f';
}

.panel-flight_list_grade_info > dl > dd > ul > li:last-child {
  margin-right: 0;
}

.panel-flight_list_grade_info > dl > dd > ul > li:last-child::after {
  display: none;
}

.panel-flight_list_grade_price {
  display: flex;
  align-items: center;
}

.panel-flight_btn_select > button {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding: 10px 15px;
  min-width: 112px;
  border: 1px solid #ccc;
  background-color: #fff;
  color: #000;
  font-weight: bold;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.panel-flight_btn_select > button > span {
  position: relative;
  display: inline-block;
  padding-right: 17px;
}

.panel-flight_btn_select > button > span::after {
  position: absolute;
  top: .3em;
  right: 3px;
  width: 8px;
  height: 8px;
  border: 2px solid #c00;
  border-bottom: transparent;
  border-left: transparent;
  transform: rotate(45deg);
}

.panel-flight_btn_select > button:hover, .panel-flight_btn_select > button:active, .panel-flight_btn_select > button:focus {
  opacity: .8;
}

.panel-flight_txt_price + .panel-flight_btn_select {
  margin-left: 16px;
}

/* .panel-detail-booking
----------------------------------------------- */
.panel-detail-booking {
  margin-bottom: 40px;
  padding: 30px 20px;
  background: #f8f8f8;
}

.panel-detail-booking > :last-child {
  margin-bottom: 0;
}

.panel-detail-booking_head {
  position: relative;
  display: flex;
  margin: 0 20px 28px;
  justify-content: space-between;
}

.panel-detail-booking_head::before {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: 3px;
  width: 5px;
  height: 5px;
  border-width: 5px 5px;
  border-style: solid;
  border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #fff;
  transform: translate3d(-50%, -50%, 0);
}

.panel-detail-booking_head .panel-detail-booking_head_item {
  flex-grow: 1;
}

.panel-detail-booking_head .panel-detail-booking_head_item > :last-child {
  margin-bottom: 0;
}

.panel-detail-booking_head .panel-detail-booking_head_table {
  margin-bottom: 14px;
  max-width: 650px;
}

.panel-detail-booking_head .panel-detail-booking_head_table th, .panel-detail-booking_head .panel-detail-booking_head_table td {
  color: #000;
  vertical-align: top;
  text-align: left;
  white-space: nowrap;
  font-weight: normal;
  font-size: 1.4rem;
}

.panel-detail-booking_head .panel-detail-booking_head_table thead th {
  padding: 0 10px 5px 10px;
  color: #616161;
  white-space: nowrap;
  font-size: 1.4rem;
}

.panel-detail-booking_head .panel-detail-booking_head_table thead th:first-child {
  padding-left: 0;
}

.panel-detail-booking_head .panel-detail-booking_head_table thead th:last-child {
  padding-right: 0;
}

.panel-detail-booking_head .panel-detail-booking_head_table tbody th, .panel-detail-booking_head .panel-detail-booking_head_table tbody td {
  padding: 5px 10px 0 10px;
  color: #000;
  font-size: 1.6rem;
}

.panel-detail-booking_head .panel-detail-booking_head_table tbody th:first-child, .panel-detail-booking_head .panel-detail-booking_head_table tbody td:first-child {
  padding-left: 0;
  font-weight: bold;
}

.panel-detail-booking_head .panel-detail-booking_head_table tbody th:last-child, .panel-detail-booking_head .panel-detail-booking_head_table tbody td:last-child {
  padding-right: 0;
}

.panel-detail-booking_head .panel-detail-booking_head_table tbody th strong._state, .panel-detail-booking_head .panel-detail-booking_head_table tbody td strong._state {
  color: #b22430;
  font-weight: normal;
}

.panel-detail-booking_head .panel-detail-booking_head_table tbody th strong._date, .panel-detail-booking_head .panel-detail-booking_head_table tbody td strong._date {
  color: #2e7d32;
  font-weight: bold;
}

.panel-detail-booking_head .panel-detail-booking_head_table tbody th strong._date > span, .panel-detail-booking_head .panel-detail-booking_head_table tbody td strong._date > span {
  font-weight: bold;
}

.panel-detail-booking_head .panel-detail-booking_head_btn {
  display: flex;
  flex-direction: column;
  margin-left: 10px;
  justify-content: flex-start;
  align-items: flex-end;
}

.panel-detail-booking_head .panel-detail-booking_head_btn > button + p, .panel-detail-booking_head .panel-detail-booking_head_btn > a + p {
  margin-top: 10px;
}

.panel-detail-booking_head .panel-detail-booking_head_btn > button + button, .panel-detail-booking_head .panel-detail-booking_head_btn > a + button {
  margin-top: 15px;
}

.panel-detail-booking_head .panel-detail-booking_head_btn > :last-child {
  margin-bottom: 0;
}

.panel-detail-booking_foot {
  display: flex;
  margin: 0 20px;
  justify-content: space-between;
}

.panel-detail-booking_foot > :last-child {
  margin-bottom: 0;
}

.panel-detail-booking_foot .panel-detail-booking_foot_item {
  display: flex;
}

.panel-detail-booking_foot .panel-detail-booking_foot_item .link-list._inline > li {
  margin-bottom: 10px;
}

.panel-detail-booking_foot .panel-detail-booking_foot_item > :last-child {
  margin-bottom: 0;
}

.panel-detail-booking_foot .panel-detail-booking_foot_item._btn {
  flex-direction: column;
}

.panel-detail-booking_foot .panel-detail-booking_foot_item._btn > p:first-child {
  margin-bottom: 15px;
  text-align: right;
}

.panel-detail-booking_foot .panel-detail-booking_foot_item._btn_02 {
  width: 100%;
}

.panel-detail-booking_foot .panel-detail-booking_foot_item._btn_02 .lyt-btn-line-02 {
  margin-top: 0;
  width: 100%;
}

.panel-detail-booking_foot .panel-detail-booking_foot_item_inner {
  margin-right: 36px;
}

.panel-detail-booking_foot .panel-detail-booking_foot_item_hdg {
  margin-bottom: 10px;
  color: #333;
  font-weight: bold;
  font-size: 1.4rem;
}

/* .panel-section
----------------------------------------------- */
.panel-section {
  position: relative;
  margin-bottom: 30px;
  padding-top: 2px;
  background-color: #fff;
  box-shadow: 0 2px 2px #cecece;
}

.panel-section::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: url(../img/bg_state_001.png) left top repeat-x;
}

.panel-section_head {
  position: relative;
  margin: 4px 20px 0;
  padding: 0 10px 12px;
  border-bottom: 1px solid #ccc;
  color: #000;
}

.panel-section_head::before {
  position: absolute;
  bottom: -11px;
  left: -19px;
  width: 10px;
  height: 10px;
  background-color: #f8f8f8;
  box-shadow: 0 2px 3px -2px rgba(0, 0, 0, .25) inset;
  transform: translate3d(-50%, -50%, 0) rotate(45deg);
}

.panel-section_head::after {
  position: absolute;
  right: -30px;
  bottom: -11px;
  width: 10px;
  height: 10px;
  background-color: #f8f8f8;
  box-shadow: 0 2px 3px -2px rgba(0, 0, 0, .25) inset;
  transform: translate3d(-50%, -50%, 0) rotate(-135deg);
}

.panel-section_head .panel-section_head_inner {
  display: flex;
  justify-content: space-between;
}

.panel-section_head .panel-section_head_item {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.panel-section_head .panel-section_head_item .list-spec {
  margin-top: 10px;
  margin-bottom: 0;
}

.panel-section_head .panel-section_head_item .list-spec > .list-spec_item {
  margin-right: 15px;
}

.panel-section_head .panel-section_head_item_hdg {
  margin-top: 10px;
  margin-right: 10px;
  color: #333;
  font-size: 1.6rem;
}

.panel-section_head .panel-section_head_item_txt {
  margin: 10px 15px 0 0;
  font-size: 1.6rem;
}

.panel-section_head .panel-section_head_item_link {
  margin: 10px 15px 0 0;
  font-size: 1.4rem;
}

.panel-section_head .panel-section_head_item_desc {
  margin-top: 10px;
  margin-bottom: 0;
}

.panel-section_head .panel-section_head_item_desc ._item {
  display: inline-flex;
  margin-bottom: 0;
  width: 100%;
  color: #616161;
  flex-wrap: wrap;
}

.panel-section_head .panel-section_head_item_desc ._item strong {
  color: #b22430;
  font-weight: normal;
}

.panel-section_head .panel-section_head_item_desc ._item + ._item {
  margin-top: 6px;
}

.panel-section_content {
  display: flex;
  padding: 30px 30px 20px;
  flex-wrap: wrap;
  justify-content: space-between;
}

.panel-section_content .panel-section_content_attention {
  margin-bottom: 30px;
  width: 100%;
}

.panel-section_content .panel-section_content_attention:first-child {
  margin-top: -10px;
}

.panel-section_content .panel-section_content_attention > :last-child {
  margin-bottom: 0;
}

.panel-section_content .panel-section_content_attention ._hdg {
  margin-bottom: 0;
  font-size: 1.8rem;
}

.panel-section_content .panel-section_content_attention ._hdg strong {
  color: #c00;
  font-weight: bold;
}

.panel-section_content .panel-section_content_attention ._hdg + ._txt {
  margin-top: 10px;
}

.panel-section_content .panel-section_content_attention ._txt {
  font-size: 1.2rem;
}

.panel-section_content .panel-section_content_attention ._txt strong {
  color: #c00;
  font-weight: normal;
}

.panel-section_content .panel-section_content_item {
  display: flex;
}

.panel-section_content .panel-section_content_item._detail {
  flex-direction: column;
  width: 100%;
}

.panel-section_content .panel-section_content_item_departure {
  position: relative;
  padding-right: 70px;
  min-width: 270px;
}

.panel-section_content .panel-section_content_item_departure::before {
  position: absolute;
  top: -8px;
  right: 20px;
  width: 37px;
  height: 35px;
  background-position: -123px -63px;
  background-size: 274px auto;
}

.panel-section_content .panel-section_content_item_arrival {
  min-width: 200px;
}

.panel-section_content .panel-section_content_item_departure ._place, .panel-section_content .panel-section_content_item_arrival ._place {
  margin-bottom: 20px;
  color: #616161;
}

.panel-section_content .panel-section_content_item_departure ._place > span, .panel-section_content .panel-section_content_item_arrival ._place > span {
  padding-right: 10px;
  color: #000;
  font-size: 2.2rem;
}

.panel-section_content .panel-section_content_item_table th, .panel-section_content .panel-section_content_item_table td {
  color: #000;
  vertical-align: top;
  text-align: center;
  font-weight: normal;
  font-size: 1.4rem;
}

.panel-section_content .panel-section_content_item_table thead th {
  padding: 0 20px 5px 20px;
  color: #616161;
}

.panel-section_content .panel-section_content_item_table thead th:first-child {
  padding-left: 0;
}

.panel-section_content .panel-section_content_item_table thead th:last-child {
  padding-right: 0;
}

.panel-section_content .panel-section_content_item_table tbody th, .panel-section_content .panel-section_content_item_table tbody td {
  padding: 5px 20px 0 20px;
  color: #000;
  font-size: 1.6rem;
}

.panel-section_content .panel-section_content_item_table tbody th:first-child, .panel-section_content .panel-section_content_item_table tbody td:first-child {
  padding-left: 0;
}

.panel-section_content .panel-section_content_item_table tbody th:last-child, .panel-section_content .panel-section_content_item_table tbody td:last-child {
  padding-right: 0;
}

.panel-section_content .panel-section_content_item_table tbody th strong, .panel-section_content .panel-section_content_item_table tbody td strong {
  font-weight: normal;
}

.panel-section_content .panel-section_content_item_table tbody th strong._state, .panel-section_content .panel-section_content_item_table tbody td strong._state {
  color: #b22430;
}

.panel-section_content .panel-section_content_item_table tbody th strong._date, .panel-section_content .panel-section_content_item_table tbody td strong._date {
  color: #2e7d32;
}

.panel-section_content .panel-section_content_item_desc {
  display: flex;
  flex-direction: column;
  margin: 0 20px 0 40px;
  justify-content: flex-start;
  align-items: flex-start;
}

.panel-section_content .panel-section_content_item_desc ._item {
  display: inline-flex;
  width: 100%;
  color: #616161;
  flex-wrap: wrap;
}

.panel-section_content .panel-section_content_item_desc ._item strong {
  color: #b22430;
  font-weight: normal;
}

.panel-section_content .panel-section_content_item_desc ._item + ._item {
  margin-top: 8px;
}

.panel-section_content .panel-section_content_item_desc ._item dd {
  color: #000;
}

.panel-section_foot {
  display: flex;
  padding: 15px 30px 20px;
  background-color: #fafafa;
  justify-content: space-between;
}

.panel-section_foot .panel-section_foot_item {
  display: flex;
}

.panel-section_foot .panel-section_foot_item > :last-child {
  margin-bottom: 0;
}

.panel-section_foot .panel-section_foot_item_hdg > ._txt {
  position: relative;
  padding: 0 30px 0 40px;
  color: #616161;
  white-space: nowrap;
  font-weight: bold;
  font-size: 1.4rem;
}

.panel-section_foot .panel-section_foot_item_hdg > ._txt::before {
  position: absolute;
  top: -2px;
  left: 8px;
  width: 22px;
  height: 21px;
  background-position: -78px -208px;
  background-size: 274px auto;
}

.panel-section_foot .panel-section_foot_item_table {
  margin-bottom: 0;
  max-width: 650px;
}

.panel-section_foot .panel-section_foot_item_table .w-passenger {
  max-width: 270px;
}

.panel-section_foot .panel-section_foot_item_table .w-seat {
  max-width: 100px;
}

.panel-section_foot .panel-section_foot_item_table .w-howto {
  max-width: 230px;
}

.panel-section_foot .panel-section_foot_item_table th, .panel-section_foot .panel-section_foot_item_table td {
  color: #000;
  vertical-align: top;
  text-align: left;
  font-weight: normal;
  font-size: 1.4rem;
}

.panel-section_foot .panel-section_foot_item_table thead th {
  padding: 0 20px;
  color: #616161;
  font-size: 1.4rem;
}

.panel-section_foot .panel-section_foot_item_table thead th:first-child {
  padding-left: 0;
}

.panel-section_foot .panel-section_foot_item_table thead th:last-child {
  padding-right: 0;
}

.panel-section_foot .panel-section_foot_item_table tbody th, .panel-section_foot .panel-section_foot_item_table tbody td {
  padding: 10px 20px 0 20px;
  max-width: 270px;
  color: #000;
}

.panel-section_foot .panel-section_foot_item_table tbody th:first-child, .panel-section_foot .panel-section_foot_item_table tbody td:first-child {
  padding-left: 0;
}

.panel-section_foot .panel-section_foot_item_table tbody th:last-child, .panel-section_foot .panel-section_foot_item_table tbody td:last-child {
  padding-right: 0;
}

.panel-section_foot .panel-section_foot_item_table tbody th._change, .panel-section_foot .panel-section_foot_item_table tbody td._change {
  color: #c00;
}

.panel-section_foot .panel-section_foot_item_table tbody th strong, .panel-section_foot .panel-section_foot_item_table tbody td strong {
  font-weight: normal;
}

.panel-section_foot .panel-section_foot_item_table tbody th strong._state, .panel-section_foot .panel-section_foot_item_table tbody td strong._state {
  color: #b22430;
}

.panel-section_foot .panel-section_foot_item_table tbody th strong._date, .panel-section_foot .panel-section_foot_item_table tbody td strong._date {
  color: #2e7d32;
}

.panel-detail-booking .panel-section_content .form-table-04 {
  border-bottom: 0;
}

/* .panel-news
----------------------------------------------- */
.panel-news {
  display: flex;
  margin-bottom: 20px;
  padding: 16px 20px;
  background-color: #f8f8f8;
  align-items: flex-start;
}

.panel-news > :last-child {
  margin-bottom: 0;
}

.panel-news_hdg {
  padding: 5px 46px;
  background-color: #2a344b;
  color: #fff;
  font-weight: bold;
  font-size: 1.2rem;
}

.panel-news_item {
  padding-left: 20px;
	line-height: 1.8;
}

.panel-news_item > :last-child {
  margin-bottom: 0;
}

/* .panel-howto
----------------------------------------------- */
.panel-howto {
  display: flex;
  margin-bottom: 60px;
  padding: 20px;
  background-color: #f8f8f8;
  justify-content: space-between;
}

.panel-howto_item {
  display: flex;
  flex-direction: column;
  width: calc(50% - 2px);
  background-color: #fff;
  justify-content: space-between;
}

.panel-howto_item .panel-howto_item_inner {
  padding: 30px;
}

.panel-howto_item .panel-howto_item_inner > :last-child {
  margin-bottom: 0;
}

.panel-howto_item .panel-howto_item_inner + .panel-howto_item_inner {
  padding-top: 0;
}

.panel-howto_item .panel-howto_item_hdg {
  position: relative;
  padding: 10px 0 20px 110px;
  color: #333;
  font-size: 1.8rem;
}

.panel-howto_item .panel-howto_item_hdg ._thum {
  position: absolute;
  top: -8px;
  left: -6px;
}

.panel-howto_item .panel-howto_item_hdg_02 {
  margin-bottom: 15px;
  color: #333;
  text-align: center;
  font-weight: normal;
  font-size: 1.6rem;
}

.panel-howto_item .panel-howto_item_panel {
  margin-bottom: 20px;
  padding: 15px 20px 20px;
  background: #fdf5f5;
}

.panel-howto_item .panel-howto_item_panel > :last-child {
  margin-bottom: 0;
}

.panel-howto_item .panel-howto_item_panel_hdg {
  margin-bottom: 20px;
  padding: 0 60px;
  color: #b22430;
  text-align: center;
  font-weight: bold;
}

.panel-howto_item .panel-howto_item_panel_list {
  display: flex;
  flex-wrap: wrap;
}

.panel-howto_item .panel-howto_item_panel_list > li {
  position: relative;
  margin-bottom: 5px;
  padding-left: 20px;
  width: 50%;
  font-size: 1.4rem;
  line-height: 1.5;
}

.panel-howto_item .panel-howto_item_panel_list > li::before {
  position: absolute;
  top: 7px;
  left: 6px;
  width: 4px;
  height: 4px;
  border-radius: 4px;
  background-color: #9e9e9e;
}

.panel-howto_item .panel-howto_item_panel_list > li:last-child {
  margin-bottom: 0;
}

.panel-howto_item .panel-howto_item_panel_list > li > ul, .panel-howto_item .panel-howto_item_panel_list > li > ol {
  margin: 10px 0;
}

/* .panel-service
----------------------------------------------- */
.panel-service {
  position: relative;
  margin-bottom: 60px;
  padding: 40px 0;
}

.panel-service::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 12px;
  background: url('../img/bg_service_001.png') repeat-x;
}

.panel-service::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 12px;
  background: url('../img/bg_service_001.png') repeat-x;
}

.panel-service_item {
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #ccc;
}

.panel-service_item:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: 0;
}

.panel-service_item > :last-child {
  margin-bottom: 0;
}

.panel-service_item_list > li {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px dashed #ccc;
}

.panel-service_item_list > li:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: 0;
}

.panel-service_item_list > li > :last-child {
  margin-bottom: 0;
}

.panel-service_item_list_inner {
  display: flex;
}

.panel-service_item_list_inner ._item {
  width: 600px;
  line-height: 1.5;
}

.panel-service_item_list_inner ._item > :last-child {
  margin-bottom: 0;
}

.panel-service_item_list_inner ._btn {
  display: flex;
  padding-left: 30px;
  width: 400px;
  justify-content: flex-end;
  align-items: center;
}

.panel-service_item_list_inner ._btn > :last-child {
  margin-bottom: 0;
}

.panel-service_list_btn {
  display: flex;
  margin-top: -20px;
  margin-bottom: 20px;
  flex-wrap: wrap;
}

.panel-service_list_btn > li {
  margin-top: 20px;
  margin-left: 20px;
  width: 320px;
}

.panel-service_list_btn > li:first-child, .panel-service_list_btn > li:nth-child(3n+1) {
  margin-left: 0;
}

.panel-service_list_btn > li > a, .panel-service_list_btn > li > button {
  position: relative;
  display: block;
  padding: 15px 44px 15px 84px;
  border: 1px solid #ccc;
  background-color: #fff;
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .1);
  text-align: left;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.panel-service_list_btn > li > a:hover, .panel-service_list_btn > li > a:active, .panel-service_list_btn > li > a:focus, .panel-service_list_btn > li > button:hover, .panel-service_list_btn > li > button:active, .panel-service_list_btn > li > button:focus {
  opacity: .8;
}

.panel-service_list_btn > li > a ._hdg, .panel-service_list_btn > li > button ._hdg {
  display: block;
  margin-bottom: 6px;
  color: #333;
  font-weight: bold;
  font-size: 1.6rem;
}

.panel-service_list_btn > li > a ._txt, .panel-service_list_btn > li > button ._txt {
  display: block;
  color: #000;
  font-size: 1.4rem;
}

.panel-service_list_btn > li > a::before, .panel-service_list_btn > li > button::before {
  position: absolute;
  top: 50%;
  right: 17px;
  margin-top: -4px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #c00;
  border-right: 2px solid #c00;
  transform: rotate(45deg) translate3d(0, 0, 0);
}

.panel-service_list_btn > li > a::after, .panel-service_list_btn > li > button::after {
  position: absolute;
}

.panel-service_list_btn > li > a._blank::before, .panel-service_list_btn > li > button._blank::before {
  display: none;
}

.panel-service_list_btn > li > a._blank .icon-blank, .panel-service_list_btn > li > button._blank .icon-blank {
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -5px;
}

.panel-service_list_btn > li > a._receipts::after, .panel-service_list_btn > li > button._receipts::after {
  top: 8px;
  left: 8px;
  width: 59px;
  height: 58px;
  background-position: 0 0;
  background-size: 274px auto;
}

.panel-service_list_btn > li > a._search::after, .panel-service_list_btn > li > button._search::after {
  top: 10px;
  left: 13px;
  width: 60px;
  height: 55px;
  background-position: -61px 0;
  background-size: 274px auto;
}

.panel-service_list_btn > li > a._lounge::after, .panel-service_list_btn > li > button._lounge::after {
  top: 20px;
  left: 8px;
  width: 60px;
  height: 50px;
  background-position: -112px -117px;
  background-size: 274px auto;
}

.panel-service_hdg {
  margin-bottom: 20px;
  color: #b22430;
  font-weight: normal;
  font-size: 2rem;
}

.panel-service_hdg_02 {
  position: relative;
  margin-bottom: 8px;
  padding-left: 16px;
  color: #333;
  font-weight: bold;
  font-size: 1.6rem;
}

.panel-service_hdg_02::before {
  position: absolute;
  top: 2px;
  left: 0;
  width: 7px;
  height: 13px;
  background-position: -265px -64px;
  background-size: 274px auto;
}

/* .panel-option
----------------------------------------------- */
.panel-option {
  position: relative;
  z-index: 1;
  margin-bottom: 70px;
  background-color: #fff;
}

.panel-option::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 160px;
  background-color: #fff;
  background-image: linear-gradient(to left, #d0e1f5 0%, #f6f9fd 50%, #d0e1f5 100%);
  background-repeat: repeat;
}

.panel-option > :last-child {
  margin-bottom: 0;
}

.panel-option_hdg {
  display: flex;
  flex-direction: column-reverse;
  padding: 20px 0 30px;
  color: #03428f;
  text-align: center;
  font-size: 2.2rem;
}

.panel-option_list {
  display: flex;
  margin-bottom: 0;
  padding: 0 20px;
  justify-content: center;
}

.panel-option_list > li {
  position: relative;
  margin-bottom: 70px;
  padding: 0 18px;
  width: 25%;
  border-left: 1px solid #d0e1f5;
}

.panel-option_list > li:first-child {
  border-left: 0;
}

.panel-option_list._one + .panel-option_example::before {
  left: 500px;
}

.panel-option_list._two + .panel-option_example::before {
  left: 622px;
}

.panel-option_list._three + .panel-option_example::before {
  left: 254px;
}

.panel-option_list_hdg {
  display: flex;
  flex-direction: column-reverse;
  margin-bottom: 5px;
  color: #333;
}

.panel-option_list_hdg ._img {
  margin-bottom: 20px;
}

.panel-option_list_hdg ._img, .panel-option_list_hdg ._item {
  text-align: center;
}

.panel-option_list_item {
  height: 100%;
}

.panel-option_list_item_inner {
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: space-between;
}

.panel-option_list_item_inner_head > ._txt {
  margin-bottom: 5px;
}

.panel-option_list_item_inner_foot ._txt {
  margin-bottom: 10px;
  color: #616161;
  text-align: center;
  line-height: 1.8;
}

.panel-option_list_item_inner_foot ._txt ._mile {
  margin-left: 10px;
  color: #03428f;
  font-weight: bold;
}

.panel-option_list_item_inner_foot ._btn {
  margin-bottom: 0;
  text-align: center;
}

.panel-option_list_item_sup {
  position: absolute;
  top: 100%;
  left: 50%;
  margin-top: 10px;
  margin-left: 12px;
  width: 100%;
  text-align: center;
  transform: translateX(-50%);
}

.panel-option_list_item_sup .list-note {
  margin-bottom: 0;
}

.panel-option_list_item_sup .list-note > li {
  white-space: nowrap;
  font-size: 1.2rem;
}

.panel-option_list_item_sup ._link-anchor {
  margin-bottom: 0;
}

.panel-option_list_item_sup ._link-anchor a {
  position: relative;
  top: 25px;
  left: -12px;
  padding-left: 16px;
  font-size: 1.3rem;
  transition: all .3s cubic-bezier(.39, .575, .565, 1);
}

.panel-option_list_item_sup ._link-anchor a::before {
  position: absolute;
  top: 5px;
  left: 0;
  width: 9px;
  height: 10px;
  background-position: -265px -79px;
  background-size: 274px auto;
}

.panel-option_list_item_sup ._link-anchor a:hover, .panel-option_list_item_sup ._link-anchor a:active, .panel-option_list_item_sup ._link-anchor a:focus {
  color: #ca0000;
  text-decoration: underline;
}

/* .panel-option_example
----------------------------------------------- */
.panel-option_example {
  position: relative;
  padding: 14px 70px 25px;
  border-top: 1px solid #73a6e3;
  background-color: #f1f6fc;
}

.panel-option_example::before {
  position: absolute;
  top: -2px;
  left: 383px;
  margin-top: -5px;
  width: 12px;
  height: 12px;
  border-top: 1px solid #73a6e3;
  border-right: 1px solid #73a6e3;
  background-color: #f1f6fc;
  transform: rotate(-45deg) translate3d(0, 0, 0);
}

.panel-option_example > :last-child {
  margin-bottom: 0;
}

.panel-option_example_lead {
  position: relative;
  margin-bottom: 0;
  padding: 10px 0 20px 52px;
  color: #333;
  font-size: 1.6rem;
  line-height: 1.5;
}

.panel-option_example_lead::before {
  position: absolute;
  top: 5px;
  left: 0;
  width: 44px;
  height: 33px;
  background-position: -177px -129px;
  background-size: 274px auto;
}

.panel-option_example_hdg {
  margin: 0 0 8px 0;
  color: #03428f;
  font-weight: normal;
  font-size: 1.4rem;
}

.panel-option_example_point {
  overflow: hidden;
  margin-bottom: 10px;
  width: 812px;
  border: 2px solid #acc3db;
  border-radius: 5px;
  background: #fff;
}

.panel-option_example_point > p {
  display: flex;
  margin-bottom: 0;
  text-align: center;
  justify-content: center;
  align-items: center;
}

.panel-option_example_point > p ._plus {
  width: 30px;
  color: #03428f;
  text-align: center;
  font-size: 2.2rem;
}

.panel-option_example_point_item {
  padding: 10px 20px;
  min-height: 50px;
  border-radius: 5px;
  color: #333;
  font-size: 1.2rem;
  line-height: 1.5;
}

.panel-option_example_point_item._flightmile {
  width: 160px;
}

.panel-option_example_point_item._bonus {
  width: 190px;
}

.panel-option_example_point_item._bonus_02 {
  position: relative;
  z-index: 1;
  width: 190px;
}

.panel-option_example_point_item._total {
  position: relative;
  display: flex;
  padding: 5px 0 0 30px;
  width: 300px;
  justify-content: center;
  align-items: center;
}

.panel-option_example_point_item._total::before {
  position: absolute;
  top: 50%;
  left: -120px;
  margin-top: -70px;
  width: 140px;
  height: 140px;
  border: 2px solid #acc3db;
  border-bottom-color: rgba(0, 0, 0, 0);
  border-left-color: rgba(0, 0, 0, 0);
  background-color: rgba(0, 0, 0, 0);
  transform: rotate(45deg);
}

.panel-option_example_point_item._total ._total-inner {
  display: block;
  padding: 10px 0;
  width: 100%;
  height: 100%;
  line-height: 1;
}

.panel-option_example_point_item._total ._total-inner ._label {
  position: relative;
  top: -2px;
  padding: 0 9px;
  background-color: #fff;
  color: #c00;
  font-size: 1.5rem;
}

.panel-option_example_point_item._total ._total-inner ._num {
  margin-right: 5px;
  color: #c00;
  font-weight: bold;
  font-size: 2rem;
}

.panel-option_example_point_item._total ._total-inner ._mile {
  position: relative;
  top: -2px;
  color: #c00;
  font-weight: bold;
  font-size: 1.4rem;
}

.panel-option_example_point_item ._num {
  font-weight: bold;
  font-size: 1.6rem;
}

.panel-option_example_point_item ._mile {
  font-size: 1.4rem;
}

.panel-option_example .list-note {
  margin-bottom: 0;
}

.panel-option_example .list-note > li {
  color: #000;
  font-size: 1.2rem;
}

.panel-option_example .list-note + .panel-option_example_point {
  margin-top: 10px;
}

/* ----------------------------------------------------------------
    Layout
----------------------------------------------------------------- */
/* .lyt-flex
----------------------------------------------- */
.lyt-flex {
  display: flex;
}

.lyt-flex > .lyt-flex_item {
  margin-bottom: 0;
}

.lyt-flex > .lyt-flex_item + .lyt-flex_item {
  margin-left: 28px;
}

.lyt-flex > .lyt-flex_item + div[role=alert] + .lyt-flex_item {
  margin-left: 28px;
}

.lyt-flex > .lyt-flex_item > .media-lyt {
  margin-bottom: 0;
}

.lyt-flex > .lyt-flex_item > :first-child {
  margin-top: 0;
}

.lyt-flex > .lyt-flex_item > :last-child {
  margin-bottom: 0;
}

.lyt-flex._between {
  justify-content: space-between;
}

.lyt-flex._middle {
  align-items: center;
}

.lyt-flex._bottom {
  align-items: flex-end;
}

.lyt-flex._reverse {
  flex-direction: column-reverse;
}

/* .lyt-txt
----------------------------------------------- */
.lyt-txt_hdg {
  font-size: 1.5rem;
}

.lyt-txt_hdg + .lyt-txt_item {
  margin-top: -15px;
}

.lyt-txt_hdg + .table-number {
  margin-bottom: 15px;
}

/* .lyt-head-search
----------------------------------------------- */
.lyt-head-search {
  margin: -198px auto 32px;
  width: 1000px;
}

.lyt-head-search .grid._stick .grid_col:first-child .form-select-condition {
  border-left: 1px solid #fff;
}

/* .lyt-embargo
----------------------------------------------- */
.lyt-embargo {
  min-height: 140px;
  background: url('../img/bg_embargo_001.png') no-repeat 50% 50%;
}

.lyt-embargo > :last-child {
  margin-bottom: 0;
}

/* .lyt-jmb-inq
----------------------------------------------- */
.lyt-jmb-inq-inner {
  margin-bottom: 20px;
  padding: 0 20px 10px;
  border-bottom: 1px solid #e0e0e0;
}

.lyt-jmb-inq-inner .media-lyt {
  margin-bottom: 0;
}

.lyt-jmb-inq-inner .media-lyt .media-lyt_col > .lyt-jmb-inq-inner_txt {
  margin-bottom: 5px;
  color: #333;
  font-size: 1.3rem;
}

.lyt-jmb-inq_sup {
  color: #000;
  text-align: center;
}

/* .lyt-total-price
----------------------------------------------- */
.lyt-total-price {
  margin-bottom: 50px;
  padding: 30px 20px 0;
  border-top: 4px solid #e0e0e0;
}

.lyt-total-price_txt_attention {
  margin-bottom: 10px;
  text-align: right;
  font-size: 1.2rem;
}

.lyt-total-price_txt_attention > strong {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  color: #616161;
}

.lyt-total-price_txt_attention > strong > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 12px;
  height: 12px;
}

.lyt-total-price_item_txt > :last-child {
  margin-bottom: 0;
}

.lyt-total-price_item_result {
  margin-top: 20px;
}

.lyt-total-price_item_result > :last-child {
  margin-bottom: 0;
}

.lyt-total-price_item_desc > ._item {
  display: inline-flex;
  margin-bottom: 12px;
}

.lyt-total-price_item_desc > ._item:last-child {
  margin-bottom: 0;
}

.lyt-total-price_item_desc > ._item > dt {
  padding-right: 20px;
  min-width: 188px;
}

.lyt-total-price_item_desc > ._item > dd {
  width: 100%;
}

.lyt-total-price_item_desc > ._item > dd > ._txt {
  display: inline-flex;
  padding-right: 20px;
  min-width: 130px;
  color: #333;
}

.lyt-total-price_item_desc > ._item > dd > ._txt ._change {
  color: #000;
}

.lyt-total-price_item_desc > ._item > dd > ._txt > :last-child {
  margin-bottom: 0;
}

/* .lyt-calender
----------------------------------------------- */
.lyt-calender {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.lyt-calender .lyt-calender-wrap {
  position: relative;
  display: flex;
  padding-top: 25px;
  justify-content: space-between;
}

.lyt-calender .lyt-calender-wrap .lyt-calender_holiday {
  position: absolute;
  top: 0;
  right: 15px;
  margin-bottom: 0;
  color: #333;
  font-size: 1.3rem;
  line-height: 1;
}

.lyt-calender .lyt-calender-wrap .lyt-calender_holiday > img {
  padding-right: 5px;
  vertical-align: top;
}

.lyt-calender .lyt-calender-wrap .lyt-calender-item {
  margin: 0 15px;
  min-width: 278px;
  min-height: 290px;
}

.lyt-calender .lyt-calendar_hdg {
  margin-bottom: 15px;
  text-align: center;
  font-size: 1.6rem;
  line-height: 1;
}

.lyt-calender .lyt-calendar_hdg .lyt-calendar_hdg_num {
  vertical-align: baseline;
  font-size: 2rem;
}

.lyt-calender .lyt-calendar_hdg .icon-label {
  margin-top: 2px;
}

.lyt-calender .lyt-calender-prev, .lyt-calender .lyt-calender-next {
  width: 55px;
  height: 40px;
  border: 1px solid #ccc;
}

.lyt-calender .lyt-calendar_table {
  width: 100%;
}

.lyt-calender .lyt-calendar_table thead th {
  font-weight: normal;
}

.lyt-calender .lyt-calendar_table tbody th, .lyt-calender .lyt-calendar_table tbody td {
  border: 1px solid #ccc;
  vertical-align: middle;
  text-align: center;
}

.lyt-calender .lyt-calendar_table tbody th a, .lyt-calender .lyt-calendar_table tbody td a {
  position: relative;
  display: block;
  padding: 10px;
  color: #333;
  transition: background-color .3s cubic-bezier(.39, .575, .565, 1);
}

.lyt-calender .lyt-calendar_table tbody th a.is-disabled, .lyt-calender .lyt-calendar_table tbody td a.is-disabled {
  color: #c1c1c1;
}

.lyt-calender .lyt-calendar_table tbody th a.is-active, .lyt-calender .lyt-calendar_table tbody td a.is-active {
  background-color: #fdfd95;
}

.lyt-calender .lyt-calendar_table tbody th a.is-today, .lyt-calender .lyt-calendar_table tbody td a.is-today {
  font-weight: bold;
}

.lyt-calender .lyt-calendar_table tbody th a ._icon-incoming, .lyt-calender .lyt-calendar_table tbody td a ._icon-incoming {
  position: absolute;
  top: 7px;
  left: 0;
}

.lyt-calender .lyt-calendar_table tbody th a ._icon-outgoing, .lyt-calender .lyt-calendar_table tbody td a ._icon-outgoing {
  position: absolute;
  top: 7px;
  right: 0;
}

.lyt-calender .lyt-calendar_table tbody th a:not(.is-disabled):hover, .lyt-calender .lyt-calendar_table tbody th a:not(.is-disabled):focus, .lyt-calender .lyt-calendar_table tbody th a:not(.is-disabled):active, .lyt-calender .lyt-calendar_table tbody td a:not(.is-disabled):hover, .lyt-calender .lyt-calendar_table tbody td a:not(.is-disabled):focus, .lyt-calender .lyt-calendar_table tbody td a:not(.is-disabled):active {
  background: #ffffd0;
  color: #c00;
  text-decoration: underline;
}

.lyt-calender .lyt-calendar_table tbody th a > ._icon, .lyt-calender .lyt-calendar_table tbody td a > ._icon {
  position: absolute;
  top: 0;
  right: 0;
  width: 7px;
}

.lyt-calender .lyt-calendar_table tbody th.is-saturday, .lyt-calender .lyt-calendar_table tbody td.is-saturday {
  background-color: #e7f5fa;
}

.lyt-calender .lyt-calendar_table tbody th.is-sunday, .lyt-calender .lyt-calendar_table tbody th.is-holiday, .lyt-calender .lyt-calendar_table tbody td.is-sunday, .lyt-calender .lyt-calendar_table tbody td.is-holiday {
  background-color: #fae7e7;
}

/* .lyt-btn
----------------------------------------------- */
.lyt-btn {
  display: flex;
  margin-bottom: 30px;
  justify-content: center;
  align-items: center;
}

.lyt-btn .lyt-btn-item {
  margin: 0 10px;
}

/* .lyt-btn-line
----------------------------------------------- */
.lyt-btn-line {
  position: relative;
  margin-bottom: 70px;
  min-height: 60px;
}

.lyt-btn-line_sup {
  margin-bottom: 24px;
  color: #616161;
  text-align: center;
}

.lyt-btn-line_sup + .lyt-btn-line_sup {
  margin-top: -12px;
}

.lyt-btn-line_inner {
  position: relative;
  display: flex;
  justify-content: center;
}

.lyt-btn-line_inner .lyt-btn-line_inner_item + .lyt-btn-line_inner_item {
  margin-left: 20px;
}

.lyt-btn-line_inner .lyt-btn-line_inner_left {
  position: absolute;
  left: 0;
}

.lyt-btn-line_inner .lyt-btn-line_inner_right {
  position: absolute;
  right: 0;
}

.lyt-btn-line + .form-list-02 {
  margin-top: -40px;
}

/* .lyt-btn-line-02
----------------------------------------------- */
.lyt-btn-line-02 {
  margin-top: 60px;
  margin-bottom: 70px;
}

.lyt-btn-line-02_inner {
  display: flex;
  flex-direction: row-reverse;
}

.lyt-btn-line-02_inner .lyt-btn-line-02_inner_sub {
  margin-right: 20px;
}

.lyt-btn-line-02_inner .lyt-btn-line-02_inner_left {
  margin-right: auto;
}

/* .lyt-radio-info
----------------------------------------------- */
.lyt-radio-info {
  position: relative;
  line-height: 1.4;
}

.lyt-radio-info_sup {
  margin-left: 15px;
  color: #000;
}

.lyt-radio-info_sup > .item {
  color: #616161;
}

.lyt-radio-info > .btn-update {
  margin-left: 20px;
}

.lyt-radio-info + .lyt-radio-info_next {
  position: relative;
  padding-top: 20px;
  padding-left: 30px;
}

.lyt-radio-info + .form-table-wrap {
  padding-top: 15px;
}

/* .lyt-checkbox_right
----------------------------------------------- */
.lyt-checkbox_right {
  display: block;
  margin-bottom: 10px;
  text-align: right;
}

/* .lyt-reserve
----------------------------------------------- */
.lyt-reserve {
  position: relative;
  margin-bottom: 30px;
  border: 1px solid #ccc;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .2);
}

.lyt-reserve > a {
  display: block;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.lyt-reserve > a > :last-child {
  margin-bottom: 0;
}

.lyt-reserve > a:hover, .lyt-reserve > a:active, .lyt-reserve > a:focus {
  opacity: .9;
}

.lyt-reserve_hdg {
  position: absolute;
  top: 13px;
  left: 20px;
  color: #333;
  font-size: 1.6rem;
  line-height: 1.5;
}

.lyt-reserve_tbl {
  width: 100%;
}

.lyt-reserve_tbl th, .lyt-reserve_tbl td {
  padding: 15px 10px;
  vertical-align: top;
}

.lyt-reserve_tbl thead th, .lyt-reserve_tbl thead td {
  background-color: #fafafa;
  color: #333;
  text-align: left;
  font-weight: normal;
}

.lyt-reserve_tbl tbody th, .lyt-reserve_tbl tbody td {
  position: relative;
  border-top: 1px dashed #ccc;
  color: #000;
}

.lyt-reserve_tbl tbody tr:first-child th, .lyt-reserve_tbl tbody tr:first-child td {
  border-top: none;
}

.lyt-reserve_tbl .lyt-reserve_tbl_lyt th, .lyt-reserve_tbl .lyt-reserve_tbl_lyt td {
  padding-top: 5px;
  padding-bottom: 5px;
  border-top: none;
}

.lyt-reserve_tbl .lyt-reserve_tbl_lyt:last-child th, .lyt-reserve_tbl .lyt-reserve_tbl_lyt:last-child td {
  padding-bottom: 15px;
}

.lyt-reserve_tbl_img {
  position: relative;
  top: -5px;
  right: 5px;
}

.lyt-reserve_tbl_txt {
  color: #616161;
}

.lyt-reserve_tbl_txt_02 {
  font-size: 1rem;
}

.lyt-reserve_tbl_txt_flight {
  position: relative;
  display: inline-block;
  padding-left: 44px;
}

.lyt-reserve_tbl_txt_flight::before {
  position: absolute;
  top: 0;
  left: 10px;
  width: 24px;
  height: 25px;
  background-position: 0 -208px;
  background-size: 274px auto;
}

.lyt-reserve_tbl_txt_flight._no-flight::before {
  display: none;
}

.lyt-reserve_tbl_txt_attention {
  margin-bottom: 10px;
}

.lyt-reserve_tbl_txt_attention > strong {
  display: inline-block;
  padding-left: 36px;
  color: #c00;
}

.lyt-reserve_tbl_txt_attention > strong > img {
  position: absolute;
  top: 0;
  left: 10px;
}

.lyt-reserve_tbl_txt_msg {
  margin-bottom: 10px;
  padding-left: 10px;
}

.lyt-reserve_tbl_txt_change {
  color: #c00;
}

.lyt-reserve_tbl_link {
  position: relative;
  display: inline-block;
  padding-right: 16px;
}

.lyt-reserve_tbl_link::after {
  position: absolute;
  top: .3em;
  right: 3px;
  width: 8px;
  height: 8px;
  border: 2px solid #c00;
  border-bottom: transparent;
  border-left: transparent;
  transform: rotate(45deg);
}

.lyt-reserve_tbl_em {
  background-color: #fdf5f5;
}

.lyt-reserve_tbl_inner._change {
  position: relative;
  display: flex;
  margin-left: 10px;
  align-items: flex-start;
}

.lyt-reserve_tbl_inner._change::before {
  position: absolute;
  bottom: -34px;
  left: 15px;
  width: 12px;
  height: 22px;
  background-position: -162px -63px;
  background-size: 274px auto;
}

.lyt-reserve_tbl_inner._alternate {
  margin-left: 63px;
}

.lyt-reserve_tbl_inner._change .lyt-reserve_tbl_inner_txt {
  margin-left: 10px;
}

.lyt-reserve_tbl_inner._alternate .lyt-reserve_tbl_inner_txt {
  display: block;
  margin-top: 5px;
}

.lyt-reserve._attention {
  border: 1px solid #c00;
}

.lyt-reserve._attention .lyt-reserve_hdg {
  color: #fff;
}

.lyt-reserve._attention .lyt-reserve_tbl thead th, .lyt-reserve._attention .lyt-reserve_tbl thead td {
  background-color: #b22430;
  color: #fff;
}

.lyt-reserve._attention .lyt-reserve_tbl_link {
  color: #c00;
}

/* .lyt-spec
----------------------------------------------- */
.lyt-spec {
  display: flex;
  justify-content: space-between;
}

.lyt-spec > .lyt-spec_sup .list-note li {
  font-size: 1.2rem;
  line-height: 1;
}

/* .lyt-flight-chart
----------------------------------------------- */
.lyt-flight-chart {
  position: relative;
  overflow: hidden;
  margin-bottom: 45px;
}

.lyt-flight-chart .lyt-flight-chart_header {
  position: absolute;
  top: 0;
  left: calc((100% - 1000px) / 2);
  z-index: 401;
  overflow: hidden;
  width: 1000px;
  height: 100vh;
  pointer-events: none;
}

.lyt-flight-chart .lyt-flight-chart_header > * {
  pointer-events: auto;
}

.lyt-flight-chart .lyt-flight-chart-content {
  min-height: 360px;
  border-bottom: 1px solid #ccc;
}

.lyt-flight-chart .lyt-flight-chart-content td ._cell-expand {
  top: -56px;
}

.lyt-flight-chart .lyt-flight-chart-content td ._cell-expand.is-fixed {
  position: fixed;
  top: 56px;
  right: calc((100% - 1000px) / 2);
}

.lyt-flight-chart .lyt-flight-chart-expand {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 10;
  display: flex;
  flex-direction: column;
  width: 50px;
  height: calc(100% - 1px);
  border-right: 1px solid #f1f1f1;
  border-left: 1px solid #f1f1f1;
  background-color: rgba(255, 255, 255, .85);
  justify-content: center;
}

.lyt-flight-chart .lyt-flight-chart-expand button {
  transition: all .3s cubic-bezier(.39, .575, .565, 1);
}

.lyt-flight-chart .lyt-flight-chart-expand button:hover, .lyt-flight-chart .lyt-flight-chart-expand button:active, .lyt-flight-chart .lyt-flight-chart-expand button:focus {
  background: rgba(255, 255, 255, .6);
  color: #333;
  opacity: .9;
}

.lyt-flight-chart .lyt-flight-chart-expand ._next {
  margin-right: 12px;
  margin-bottom: 20px;
  padding: 22px 12px;
  border: 1px solid #e4e4e4;
  border-left: 0;
  border-radius: 0 8px 8px 0;
  background-color: #fff;
  box-shadow: -4px 0 20px -2px rgba(0, 0, 0, .1) inset;
  color: #727272;
  font-size: 1.2rem;
}

.lyt-flight-chart .lyt-flight-chart-expand ._next > span {
  position: relative;
  display: block;
  padding-top: 20px;
  width: 1em;
  height: 200px;
  -ms-writing-mode: tb-rl;
  white-space: nowrap;
  letter-spacing: 3px;

  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
}

.lyt-flight-chart .lyt-flight-chart-expand ._next > span::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 12px;
  height: 10px;
  background-position: -177px -164px;
  background-size: 274px auto;
}

.lyt-flight-chart .lyt-flight-chart-expand ._prev {
  margin-right: 12px;
  padding: 18px 12px;
  border: 1px solid #e4e4e4;
  border-left: 0;
  border-radius: 0 8px 8px 0;
  background-color: #fff;
  box-shadow: -4px 0 20px -2px rgba(0, 0, 0, .1) inset;
  color: rgba(0, 0, 0, 0);
  font-size: 1rem;
}

.lyt-flight-chart .lyt-flight-chart-expand ._prev > span {
  position: relative;
  top: -3px;
  display: block;
  width: 1em;
  height: 10px;
}

.no-js .lyt-flight-chart .lyt-flight-chart-expand {
  display: none;
}

.lyt-flight-chart .lyt-flight-chart-expand.is-fixed {
  position: fixed;
  top: 0;
  right: calc((100% - 1000px) / 2);
  height: calc(100vh - 125px);
}

/* .lyt-flight-chart-header
----------------------------------------------- */
.lyt-flight-chart-header {
  display: flex;
  margin-bottom: 0;
  padding: 12px 14px;
  width: 1000px;
  border-bottom: 1px solid #4a5266;
  background-color: #2a344b;
  color: #fff;
  justify-content: space-between;
  align-items: center;
}

.lyt-flight-chart-header_class {
  display: flex;
  align-items: center;
}

.lyt-flight-chart-header_class .lyt-flight-chart-header_class_hdg {
  margin-right: 14px;
  margin-bottom: 0;
  font-size: 1.2rem;
}

.lyt-flight-chart-header_class .lyt-flight-chart-header_class_list {
  display: flex;
  margin-bottom: 0;
}

.lyt-flight-chart-header_class .lyt-flight-chart-header_class_list > li ._label {
  border-right: 1px solid #000;
}

.lyt-flight-chart-header_class .lyt-flight-chart-header_class_list > li:first-child ._label {
  border-radius: 3px 0 0 3px;
}

.lyt-flight-chart-header_class .lyt-flight-chart-header_class_list > li:first-child:last-child ._label {
  border-right: 0;
  border-radius: 3px;
}

.lyt-flight-chart-header_class .lyt-flight-chart-header_class_list > li:last-child ._label {
  border-right: 0;
  border-radius: 0 3px 3px 0;
}

.lyt-flight-chart-header_class .lyt-flight-chart-header_class_list ._item {
  position: relative;
  display: block;
  width: 80px;
  text-align: center;
}

.lyt-flight-chart-header_class .lyt-flight-chart-header_class_list ._item input[type='radio'] {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.lyt-flight-chart-header_class .lyt-flight-chart-header_class_list ._item input[type='radio']:checked + ._label {
  background-color: #fafafa;
  color: #333;
  font-weight: bold;
}

.lyt-flight-chart-header_class .lyt-flight-chart-header_class_list ._item input[type='radio']:focus + label {
  border: 1px dotted #777;
}

.lyt-flight-chart-header_class .lyt-flight-chart-header_class_list ._item ._label {
  display: block;
  padding: 7px 2px;
  border-top: 1px dotted rgba(0, 0, 0, 0);
  border-bottom: 1px dotted rgba(0, 0, 0, 0);
  background-color: #444d61;
  box-shadow: 0 2px 3px rgba(0, 0, 0, .25);
  color: #fff;
  font-size: 1.2rem;
  cursor: pointer;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.lyt-flight-chart-header_class .lyt-flight-chart-header_class_list ._item ._label:hover, .lyt-flight-chart-header_class .lyt-flight-chart-header_class_list ._item ._label:active, .lyt-flight-chart-header_class .lyt-flight-chart-header_class_list ._item ._label:focus {
  opacity: .8;
}

.lyt-flight-chart-header_class .lyt-flight-chart-header_class_list ._first ._item {
  width: 130px;
}

.lyt-flight-chart-header_target {
  position: relative;
  display: flex;
  margin-left: 20px;
  padding-left: 20px;
  flex-grow: 1;
  justify-content: flex-start;
  align-items: center;
}

.lyt-flight-chart-header_target::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 1px;
  height: 16px;
  background-color: #7f8593;
  transform: translateY(-50%);
}

.lyt-flight-chart-header_target ._btn-search {
  position: relative;
  display: block;
  padding: 7px 12px;
  padding-left: 30px;
  min-width: 96px;
  border-radius: 3px;
  background-color: #444d61;
  box-shadow: 0 2px 3px rgba(0, 0, 0, .25);
  color: #fff;
  font-size: 1.2rem;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.lyt-flight-chart-header_target ._btn-search:hover, .lyt-flight-chart-header_target ._btn-search:active, .lyt-flight-chart-header_target ._btn-search:focus {
  opacity: .8;
}

.lyt-flight-chart-header_target ._btn-search::before {
  position: absolute;
  top: 8px;
  left: 12px;
  width: 13px;
  height: 12px;
  background-position: -172px -208px;
  background-size: 274px auto;
}

.lyt-flight-chart-header_paging {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.lyt-flight-chart-header_paging > ._link {
  margin-bottom: 0;
}

.lyt-flight-chart-header_paging > ._link .link-txt {
  color: #fff;
  font-size: 1.2rem;
}

.lyt-flight-chart-header_paging .lyt-flight-chart-header_paging_btn {
  position: relative;
  margin-left: 20px;
  padding-left: 20px;
}

.lyt-flight-chart-header_paging .lyt-flight-chart-header_paging_btn::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 1px;
  height: 16px;
  background-color: #7f8593;
  transform: translateY(-50%);
}

.lyt-flight-chart-header_paging .lyt-flight-chart-header_paging_btn button {
  position: relative;
  width: 28px;
  height: 32px;
  background-color: #444d61;
  box-shadow: 0 2px 3px rgba(0, 0, 0, .25);
  color: transparent;
  font-size: 1rem;
}

.lyt-flight-chart-header_paging .lyt-flight-chart-header_paging_btn button::before {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: 3px;
  width: 5px;
  height: 5px;
  border-width: 5px 5px;
  border-style: solid;
  border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #fff;
  transform: translate3d(-50%, -50%, 0);
}

.lyt-flight-chart-header_paging .lyt-flight-chart-header_paging_btn button:not(:disabled) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.lyt-flight-chart-header_paging .lyt-flight-chart-header_paging_btn button:not(:disabled):hover, .lyt-flight-chart-header_paging .lyt-flight-chart-header_paging_btn button:not(:disabled):active, .lyt-flight-chart-header_paging .lyt-flight-chart-header_paging_btn button:not(:disabled):focus {
  opacity: .8;
}

.lyt-flight-chart-header_paging .lyt-flight-chart-header_paging_btn button._prev {
  margin-right: 6px;
  border-radius: 3px 0 0 3px;
}

.lyt-flight-chart-header_paging .lyt-flight-chart-header_paging_btn button._prev::before {
  margin-left: -3px;
  transform: translate3d(-50%, -50%, 0) rotate(-180deg);
}

.lyt-flight-chart-header_paging .lyt-flight-chart-header_paging_btn button._next {
  border-radius: 0 3px 3px 0;
}

.lyt-flight-chart-header_paging .lyt-flight-chart-header_paging_btn button:disabled {
  background-color: #9095a0;
  box-shadow: none;
}

.lyt-flight-chart-header_paging .lyt-flight-chart-header_paging_btn button:disabled:before {
  border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #565d6a;
}

.lyt-flight-chart-header._stickey {
  z-index: 99;
  width: 1000px;
}

/* .lyt-flight-chart-content
----------------------------------------------- */
.lyt-flight-chart-content {
  position: relative;
}

/* .lyt-cell-info
----------------------------------------------- */
.lyt-cell-info {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.lyt-cell-info ._total {
  margin: 10px 0;
}

.lyt-cell-info ._landing {
  display: flex;
}

.lyt-cell-info ._landing ._landing-departure, .lyt-cell-info ._landing ._landing-arrival {
  margin-bottom: 0;
}

.lyt-cell-info ._landing ._landing-departure ._place, .lyt-cell-info ._landing ._landing-arrival ._place {
  margin-bottom: 10px;
  color: #333;
  white-space: nowrap;
  font-size: 1.1rem;
  line-height: 1;
}

.lyt-cell-info ._landing ._landing-departure ._place ._place-multi, .lyt-cell-info ._landing ._landing-arrival ._place ._place-multi {
  color: #d81b60;
  font-weight: normal;
}

.lyt-cell-info ._landing ._landing-departure ._time, .lyt-cell-info ._landing ._landing-arrival ._time {
  color: #000;
  font-size: 2rem;
  line-height: 1;
}

.lyt-cell-info ._landing ._landing-departure {
  display: flex;
  flex-direction: column;
}

.lyt-cell-info ._landing ._landing-departure ._time {
  position: relative;
  padding-right: 60px;
}

.lyt-cell-info ._landing ._landing-departure ._time::before {
  position: absolute;
  top: 50%;
  right: 18px;
  margin-top: -2px;
  width: 24px;
  height: 2px;
  background-color: #ccc;
}

.lyt-cell-info ._landing ._landing-arrival {
  display: flex;
  flex-direction: column;
}

.lyt-cell-info ._landing-open {
  margin-bottom: 0;
  width: 100%;
}

.lyt-cell-info ._landing-open ._place {
  display: flex;
  margin-bottom: 10px;
  width: 100%;
  color: #333;
  white-space: nowrap;
  font-size: 1.1rem;
  line-height: 1;
}

.lyt-cell-info ._landing-open ._place ._place-multi {
  color: #d81b60;
  font-weight: normal;
}

.lyt-cell-info ._landing-open ._place > span:first-child, .lyt-cell-info ._landing-open ._place > b:first-child {
  width: 118px;
}

.lyt-cell-info ._landing-open ._name {
  color: #000;
  font-size: 2rem;
  line-height: 1;
}

.lyt-cell-info ._via {
  margin-top: 16px;
  font-size: 1.2rem;
}

.lyt-cell-info ._via + ._detail {
  margin-top: 6px;
}

.lyt-cell-info ._detail {
  display: flex;
  margin-top: 16px;
  justify-content: space-between;
}

.lyt-cell-info ._detail ._detail-service ._name {
  margin-right: 5px;
  color: #333;
  font-size: 1.2rem;
}

.lyt-cell-info ._detail ._detail-service ._num {
  margin-right: 5px;
  font-size: 1.2rem;
}

.lyt-cell-info ._detail ._detail-service ._sup {
  margin-top: 3px;
  margin-bottom: 0;
  color: #333;
  font-size: 1.2rem;
  line-height: 1;
}

.lyt-cell-info ._detail ._detail-service ._sup > span {
  margin-left: 10px;
}

.lyt-cell-info ._detail ._detail-service ._sup > span:first-child {
  margin-left: 0;
}

.lyt-cell-info ._detail ._detail-service ._sup .icon-blank {
  padding: 0 5px 0 0;
}

.lyt-cell-info ._detail ._list-icon {
  display: flex;
  margin-bottom: 0;
  align-items: flex-end;

  flex-shrink: 0;
}

.lyt-cell-info ._detail ._list-icon > li {
  margin: 0 0 0 5px;
}

.js-table-flight-chart_row.is-hide {
  display: none;
}

/* .lyt-arrow
----------------------------------------------- */
.lyt-arrow {
  position: relative;
  margin-bottom: 48px;
  padding-bottom: 30px;
}

.lyt-arrow::after {
  position: absolute;
  left: 50%;
  margin-top: 30px;
  margin-left: -22px;
  width: 0;
  height: 0;
  border-top: 22px solid #a92730;
  border-right: 22px solid transparent;
  border-bottom: 22px solid transparent;
  border-left: 22px solid transparent;
}

.lyt-arrow :last-child {
  margin-bottom: 0;
}

/* .lyt-table-header
----------------------------------------------- */
.lyt-table-header {
  display: flex;
  margin-bottom: 30px;
  padding: 12px 14px;
  width: 1000px;
  border-bottom: 1px solid #4a5266;
  background-color: #2a344b;
  color: #fff;
  align-items: center;
}

.lyt-table-header_item {
  display: flex;
  margin-right: 30px;
  align-items: center;
}

.lyt-table-header_item:last-child {
  margin-right: 0;
}

.lyt-table-header_item .lyt-table-header_item_hdg {
  margin-right: 14px;
  margin-bottom: 0;
  font-size: 1.2rem;
}

.lyt-table-header_item .lyt-table-header_item_list {
  display: flex;
  margin-bottom: 0;
}

.lyt-table-header_item .lyt-table-header_item_list > li ._label {
  border-right: 1px solid #000;
}

.lyt-table-header_item .lyt-table-header_item_list > li:first-child ._label {
  border-radius: 3px 0 0 3px;
}

.lyt-table-header_item .lyt-table-header_item_list > li:first-child:last-child ._label {
  border-right: 0;
  border-radius: 3px;
}

.lyt-table-header_item .lyt-table-header_item_list > li:last-child ._label {
  border-right: 0;
  border-radius: 0 3px 3px 0;
}

.lyt-table-header_item .lyt-table-header_item_list ._btn {
  position: relative;
  display: block;
  width: 80px;
  text-align: center;
}

.lyt-table-header_item .lyt-table-header_item_list ._btn input[type='radio'] {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.lyt-table-header_item .lyt-table-header_item_list ._btn input[type='radio']:checked + ._label {
  background-color: #fafafa;
  color: #333;
  font-weight: bold;
}

.lyt-table-header_item .lyt-table-header_item_list ._btn input[type='radio']:focus + label {
  border: 1px dotted #777;
}

.lyt-table-header_item .lyt-table-header_item_list ._btn ._label {
  display: block;
  padding: 7px 10px;
  border-top: 1px dotted rgba(0, 0, 0, 0);
  border-bottom: 1px dotted rgba(0, 0, 0, 0);
  background-color: #444d61;
  box-shadow: 0 2px 3px rgba(0, 0, 0, .25);
  color: #fff;
  font-size: 1.2rem;
  cursor: pointer;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.lyt-table-header_item .lyt-table-header_item_list ._btn ._label:hover, .lyt-table-header_item .lyt-table-header_item_list ._btn ._label:active, .lyt-table-header_item .lyt-table-header_item_list ._btn ._label:focus {
  opacity: .8;
}

.lyt-table-header_item .lyt-table-header_item_list ._open ._btn {
  width: 145px;
}

.lyt-table-header_item .lyt-table-header_item_list ._refunded ._btn {
  width: 95px;
}

.lyt-table-header_item .lyt-table-header_item_select {
  position: relative;
  display: flex;
}

.lyt-table-header_item .lyt-table-header_item_select::before {
  position: absolute;
  right: 60px;
  bottom: 9px;
  width: 8px;
  height: 8px;
  border: 4px solid transparent;
  border-top: 5px solid #555;
  pointer-events: none;
}

.lyt-table-header_item .lyt-table-header_item_select select {
  padding: 3px 3px 3px 6px;
  width: 195px;
  border: 1px solid #ccc;
  border-right: 0;
  border-radius: 3px 0 0 3px;
  background-color: #fff;
  box-shadow: 0 2px 3px rgba(0, 0, 0, .25);
  color: #000;
  font-size: 1.2rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.lyt-table-header_item .lyt-table-header_item_select select::-ms-expand {
  display: none;
}

.lyt-table-header_item .lyt-table-header_item_select ._btn {
  display: block;
  padding: 7px 13px;
  border-top: 1px dotted rgba(0, 0, 0, 0);
  border-bottom: 1px dotted rgba(0, 0, 0, 0);
  border-radius: 0 3px 3px 0;
  background-color: #444d61;
  box-shadow: 0 2px 3px rgba(0, 0, 0, .25);
  color: #fff;
  font-size: 1.2rem;
  cursor: pointer;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.lyt-table-header_item .lyt-table-header_item_select ._btn:hover, .lyt-table-header_item .lyt-table-header_item_select ._btn:active, .lyt-table-header_item .lyt-table-header_item_select ._btn:focus {
  opacity: .8;
}

/* .lyt-pager
----------------------------------------------- */
.lyt-pager {
  position: relative;
  margin-bottom: 30px;
}

.lyt-pager_txt {
  position: absolute;
  margin-top: 8px;
  margin-left: 10px;
}

.lyt-pager_txt .num {
  margin-right: 2px;
  font-weight: bold;
  font-size: 2rem;
}

.lyt-pager_list {
  display: flex;
  margin-bottom: 0;
  justify-content: center;
}

.lyt-pager_list .lyt-pager_list_link > ul {
  display: flex;
  margin-bottom: 0;
}

.lyt-pager_list .lyt-pager_list_link > ul > li ._item {
  margin-right: 2.5px;
  margin-left: 2.5px;
  padding: 8px 0;
  width: 35px;
  border: 1px solid #ccc;
}

.lyt-pager_list .lyt-pager_list_link > ul > li.is-current ._item {
  border-color: #2a344b;
  background-color: #2a344b;
  color: #fff;
}

.lyt-pager_list .lyt-pager_list_link > ul > li:not(.is-current) ._item:hover, .lyt-pager_list .lyt-pager_list_link > ul > li:not(.is-current) ._item:active, .lyt-pager_list .lyt-pager_list_link > ul > li:not(.is-current) ._item:focus {
  opacity: .8;
}

.lyt-pager_list .lyt-pager_list_prev ._item, .lyt-pager_list .lyt-pager_list_next ._item {
  position: relative;
  margin-right: 2.5px;
  margin-left: 2.5px;
  padding: 9px 0;
  width: 35px;
  color: rgba(0, 0, 0, 0);
}

.lyt-pager_list .lyt-pager_list_prev ._item::before, .lyt-pager_list .lyt-pager_list_next ._item::before {
  position: absolute;
  top: 50%;
  margin-top: -7px;
  width: 14px;
  height: 14px;
  border-top: 2px solid #ccc;
  border-right: 2px solid #ccc;
}

.lyt-pager_list .lyt-pager_list_prev ._item:hover, .lyt-pager_list .lyt-pager_list_prev ._item:active, .lyt-pager_list .lyt-pager_list_prev ._item:focus, .lyt-pager_list .lyt-pager_list_next ._item:hover, .lyt-pager_list .lyt-pager_list_next ._item:active, .lyt-pager_list .lyt-pager_list_next ._item:focus {
  opacity: .8;
}

.lyt-pager_list .lyt-pager_list_prev._hidden, .lyt-pager_list .lyt-pager_list_next._hidden {
  visibility: hidden;
}

.lyt-pager_list .lyt-pager_list_prev ._item::before {
  left: 12px;
  transform: rotate(-135deg) translate3d(0, 0, 0);
}

.lyt-pager_list .lyt-pager_list_next ._item::before {
  right: 12px;
  transform: rotate(45deg) translate3d(0, 0, 0);
}

.lyt-pager_sup {
  position: absolute;
  top: 14px;
  right: 0;
}

.lyt-pager_sup .list-note li {
  font-size: 1.2rem;
}

/* .lyt-ticket
----------------------------------------------- */
.lyt-ticket {
  position: relative;
  margin-bottom: 40px;
  border: 1px solid #ccc;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .2);
}

.lyt-ticket_tbl {
  width: 100%;
  height: 100%;
  line-height: 1.5;
}

.lyt-ticket_tbl th, .lyt-ticket_tbl td {
  padding: 15px 5px;
  vertical-align: middle;
  font-size: 1.3rem;
}

.lyt-ticket_tbl thead th, .lyt-ticket_tbl thead td {
  background-color: #fafafa;
  color: #616161;
  text-align: left;
  font-weight: normal;
}

.lyt-ticket_tbl thead th {
  color: #333;
}

.lyt-ticket_tbl thead th:first-child {
  padding-left: 10px;
}

.lyt-ticket_tbl tbody {
  height: 100%;
}

.lyt-ticket_tbl tbody th, .lyt-ticket_tbl tbody td {
  border-top: 1px solid #d3d3d3;
  color: #000;
}

.lyt-ticket_tbl tbody th .icon-label-02, .lyt-ticket_tbl tbody td .icon-label-02 {
  margin-left: 5px;
}

.lyt-ticket_tbl tbody th ._place, .lyt-ticket_tbl tbody td ._place {
  display: block;
}

.lyt-ticket_tbl tbody th ._place > span, .lyt-ticket_tbl tbody td ._place > span {
  display: inline-block;
  overflow: hidden;
  width: 71px;
  vertical-align: middle;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.lyt-ticket_tbl tbody th ._history, .lyt-ticket_tbl tbody td ._history {
  position: relative;
  display: flex;
}

.lyt-ticket_tbl tbody th ._history::before, .lyt-ticket_tbl tbody td ._history::before {
  margin-top: 2px;
  margin-left: 5px;
  width: 14px;
  height: 16px;
  background-position: -203px -177px;
  background-size: 274px auto;
}

.lyt-ticket_tbl tbody th ._history .icon-label-02, .lyt-ticket_tbl tbody td ._history .icon-label-02 {
  text-align: left;
}

.lyt-ticket_tbl tbody th .icon-label-02 + ._history, .lyt-ticket_tbl tbody td .icon-label-02 + ._history {
  margin-top: 5px;
}

.lyt-ticket_tbl tbody td {
  height: 100%;
}

.lyt-ticket_tbl tbody tr {
  position: relative;
}

.lyt-ticket_tbl tbody tr._clickable {
  cursor: pointer;
}

.lyt-ticket_tbl tbody tr:first-child th, .lyt-ticket_tbl tbody tr:first-child td {
  border-top: none;
}

.lyt-ticket_tbl .lyt-ticket_tbl_link {
  padding: 0;
  text-align: center;
}

.lyt-ticket_tbl .lyt-ticket_tbl_link ._btn {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
}

.lyt-ticket_tbl .lyt-ticket_tbl_link ._btn > img {
  position: absolute;
  top: -5px;
  right: 0;
  bottom: 0;
  left: -5px;
  margin: auto;
}

/* .lyt-detail
----------------------------------------------- */
.lyt-detail {
  display: flex;
  padding: 0 10px;
  width: 100%;
  align-items: center;
}

.lyt-detail_item {
  padding: 13px 10px 10px;
  vertical-align: top;
  text-align: left;
  font-size: 1.6rem;
}

.lyt-detail_item._date {
  width: 50%;
}

.lyt-detail_item._class {
  width: 30%;
}

.lyt-detail_item._btn {
  width: 20%;
}

.lyt-detail_item._btn .btn-list {
  margin-bottom: 0;
}

.lyt-detail_item .lyt-detail_item_inner {
  position: relative;
}

.lyt-detail_item .lyt-detail_item_txt {
  color: #333;
  font-weight: normal;
  font-size: 1.2rem;
}

.lyt-detail_item .lyt-detail_item_txt_02 {
  color: #616161;
}

.lyt-detail_item .lyt-detail_item_txt_03 {
  display: inline-block;
  font-size: 1rem;
}

.lyt-detail_item .lyt-detail_item_txt_change {
  color: #c00;
}

.lyt-detail_item .lyt-detail_item_link {
  display: inline-block;
  margin-top: 5px;
}

.lyt-detail_item .lyt-detail_item_link > a {
  font-weight: normal;
}

.lyt-detail_item .lyt-detail_item_inner_02._change {
  position: relative;
  display: flex;
  align-items: flex-start;
}

.lyt-detail_item .lyt-detail_item_inner_02._change::before {
  position: absolute;
  bottom: -37px;
  left: 20px;
  width: 12px;
  height: 22px;
  background-position: -162px -63px;
  background-size: 274px auto;
}

.lyt-detail_item .lyt-detail_item_inner_02._change .lyt-detail_item_inner_02_txt {
  margin-left: 10px;
}

.lyt-detail_item .lyt-detail_item_inner_02._alternate {
  margin-left: 53px;
}

.lyt-detail_item .lyt-detail_item_inner_02._alternate .lyt-detail_item_inner_02_txt {
  display: block;
  margin-top: 5px;
}

.lyt-detail_item .lyt-detail_item_inner_03 {
  position: relative;
  display: inline-block;
  padding-left: 34px;
}

.lyt-detail_item .lyt-detail_item_inner_03::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 24px;
  height: 25px;
  background-position: 0 -208px;
  background-size: 274px auto;
}

.lyt-detail_item .lyt-detail_item_inner_03._no-flight::before {
  display: none;
}

.lyt-detail + .lyt-detail {
  border-top: 1px dashed #ccc;
}

/* ----------------------------------------------------------------
    Media
----------------------------------------------------------------- */
/* .media-lyt
----------------------------------------------- */
.media-lyt {
  margin-bottom: 20px;
}

.media-lyt > .media-lyt_item > :last-child {
  margin-bottom: 0;
}

.media-lyt > .media-lyt_item img {
  display: block;
  margin: 0 auto;
}

.media-lyt > .media-lyt_item img._border {
  padding: 10px;
  border: 2px solid #e0e0e0;
}

.media-lyt > .media-lyt_item p {
  margin-top: 10px;
}

.media-lyt[data-organize*=left] > .media-lyt_item {
  float: left;
  margin-right: 15px;
  margin-bottom: 10px;
}

.media-lyt[data-organize*=right] > .media-lyt_item {
  float: right;
  margin-bottom: 10px;
  margin-left: 15px;
}

.media-lyt[data-organize*=parallel] > .media-lyt_col {
  overflow: hidden;
}

.media-lyt figure {
  margin: 0;
}

.media-lyt .media-lyt_col > p, .media-lyt .media-lyt_col > ul, .media-lyt .media-lyt_col > ol, .media-lyt .media-lyt_col > dl {
  margin-bottom: 16px;
}

.media-lyt .media-lyt_col > div, .media-lyt .media-lyt_col > p, .media-lyt .media-lyt_col > ul, .media-lyt .media-lyt_col > ol, .media-lyt .media-lyt_col > dl {
  overflow: hidden;
}

.media-lyt .media-lyt_col > :first-child {
  margin-top: 0;
}

.media-lyt .media-lyt_col > :last-child {
  margin-bottom: 0;
}

.link-panel .media-lyt[data-organize*=left] .media-lyt_item {
  margin-bottom: 0;
}

/* ----------------------------------------------------------------
    Tab
----------------------------------------------------------------- */
/* .tab
----------------------------------------------- */
.tab {
  margin: 0 0 65px;
}

.tab_list {
  display: flex;
}

.tab_list[data-col='4'] {
  margin-left: -2%;
}

.tab_list[data-col='4'] > li {
  display: flex;
  margin-left: 2%;
  width: calc(25% - 2%);
  flex-basis: calc(25% - 2%);
  align-items: center;
}

.tab_list > li {
  border: 1px solid #ccc;
  border-top-width: 5px;
  border-radius: 2px;
}

.tab_list > li .form-radio {
  display: flex;
  width: 100%;
}

.tab_list > li .form-radio .form-radio_item {
  display: flex;
  padding: 25px 9px 25px 40px;
  min-height: 120px;
  width: 100%;
  line-height: 1.3;
  flex-wrap: wrap;
  align-items: center;
}

.tab_list > li .form-radio .form-radio_item::before {
  top: 50%;
  left: 14px;
  margin-top: -10px;
}

.tab_list > li .form-radio .form-radio_item::after {
  top: 50%;
  left: 19px;
  margin-top: -5px;
}

.tab_list > li .form-radio .form-radio_item .form-radio_item_point {
  display: block;
  margin-top: -5px;
  color: #616161;
  white-space: nowrap;
  font-size: 1.2rem;
}

.tab_list > li.is-current {
  border-top-color: #b22430;
  background-color: #fafafa;
}

.tab_item {
  display: none;
  border-top: 2px solid #b22430;
}

.tab_item.no-js .tab_item {
  display: block;
}

.tab_item .tab_item_form {
  margin-bottom: 64px;
  padding: 30px 20px 20px;
  background-color: #fafafa;
}

.tab_item .tab_item_form p, .tab_item .tab_item_form ul, .tab_item .tab_item_form ol, .tab_item .tab_item_form dl {
  line-height: 1.5;
}

.tab_item .tab_item_form > :last-child {
  margin-bottom: 0;
}

.tab_item > form > :last-child {
  margin-bottom: 0;
}

.tab_item > :last-child {
  margin-bottom: 0;
}

.tab_item.is-active {
  position: relative;
  display: block;
}

.tab_item.is-active::before {
  position: absolute;
  top: -4px;
  margin-top: -5px;
  width: 16px;
  height: 16px;
  border-top: 2px solid #b22430;
  border-right: 2px solid #b22430;
  background-color: #fafafa;
  transform: rotate(-45deg) translate3d(0, 0, 0);
}

.tab_item:first-child::before {
  left: 107px;
}

.tab_item:nth-child(2)::before {
  left: 365px;
}

.tab_item:nth-child(3)::before {
  left: 619px;
}

.tab_item:nth-child(4)::before {
  left: 875px;
}

.tab_hdg {
  position: relative;
  display: flex;
  margin: 0 0 20px;
}

.tab_hdg .tab_hdg_txt {
  color: #333;
  font-size: 1.8rem;
  line-height: 1.55556;
}

.tab_hdg .tab_hdg_list {
  position: relative;
  display: flex;
  margin: 0;
}

.tab_hdg .tab_hdg_sup {
  display: flex;
  margin-left: 20px;
  font-size: 1.4rem;
  align-items: center;
}

.tab_hdg .tab_hdg_sup_right {
  position: absolute;
  top: 23px;
  right: 20px;
  line-height: 1.4;
}

.tab_hdg + .lyt-checkbox_right {
  margin-top: -20px;
}

.tab_hdg-02 {
  margin: 0 0 15px;
  color: #616161;
  font-size: 1.6rem;
}

.tab_txt_point {
  color: #000;
  font-size: 1.8rem;
}

.tab_txt_point > .num {
  padding-left: 14px;
  color: #333;
}

/* ----------------------------------------------------------------
    Table
----------------------------------------------------------------- */
/* table-flight-chart
----------------------------------------------- */
.table-flight-chart {
  position: relative;
  width: 1000px;
  background-color: #fafafa;
  table-layout: fixed;
}

.table-flight-chart .w-flight-info {
  position: relative;
  z-index: 2;
  width: 240px !important;
  border-right: 2px solid #4a5266;
  text-align: left;
}

.table-flight-chart .w-flight-info_inner {
  display: flex;
  margin-left: -9px;
  padding: 0 9px;
}

.table-flight-chart .w-flight-info_inner > span {
  margin-left: 9px;
  width: calc(50% - 9px);
}

.table-flight-chart .w-flight-class {
  position: relative;
  z-index: 2;
  width: 68px !important;
}

.table-flight-chart .w-flight-time {
  position: relative;
  z-index: 2;
  width: 134px !important;
}

.table-flight-chart .w-flight-time + .w-flight-item {
  width: 127px !important;
}

.table-flight-chart .w-flight-time._cheap + .w-flight-item {
  width: 133px !important;
}

.table-flight-chart .table-flight-chart_thead {
  position: relative;
  z-index: 0;
}

.table-flight-chart .w-flight-item {
  width: 124px !important;
}

.table-flight-chart thead {
  background-color: #2a344b;
}

.table-flight-chart thead th {
  padding: 8px 0;
  color: #fff;
  font-weight: normal;
  font-size: 1.2rem;
}

.table-flight-chart thead th ._name {
  color: #fff;
  text-decoration: underline;
}

.table-flight-chart thead th ._mile {
  display: block;
  margin-top: 5px;
  font-size: 1rem;
  line-height: 1;
}

.table-flight-chart thead.js-stickey_item {
  z-index: 3;
}

.table-flight-chart thead._stickey {
  z-index: 3;
}

.table-flight-chart thead._stickey::after {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: calc(100% - 1000px);
  height: 100%;
  background: #fff;
  content: '';
}

.table-flight-chart tbody th {
  font-weight: normal;
}

.table-flight-chart tbody > tr:first-child ._cell-info, .table-flight-chart tbody > tr:first-child ._cell-class, .table-flight-chart tbody > tr:first-child ._cell-item {
  border-top: 0;
}

.table-flight-chart tbody > tr:last-child ._cell-transit-etc, .table-flight-chart tbody > tr:last-child ._cell-class, .table-flight-chart tbody > tr:last-child ._cell-item {
  border-bottom: 0;
}

.table-flight-chart tbody ._cell-info {
  padding: 9px;
  border-top: 1px dashed #ccc;
  border-right: 2px solid #e0e0e0;
  background-color: #fff;
  text-align: left;
}

.table-flight-chart tbody ._cell-class {
  padding: 9px;
  border-top: 1px dashed #ccc;
  background-color: #fff;
  color: #616161;
  vertical-align: middle;
  text-align: center;
  font-size: 1.1rem;
}

.table-flight-chart tbody ._cell-canceled {
  border-top: 1px dashed #ccc;
  background-color: #fafafa;
}

.table-flight-chart tbody ._cell-canceled::before {
  float: left;
  height: 107px;
}

.table-flight-chart tbody ._cell-canceled ._cell-canceled-txt {
  position: absolute;
  left: 550px;
  margin-top: 46px;
  margin-bottom: 0;
  color: #616161;
  font-size: 1.6rem;
  line-height: 1;
}

.table-flight-chart tbody ._cell-canceled ._cell-canceled-txt > strong {
  position: relative;
  padding-left: 30px;
  font-weight: normal;
}

.table-flight-chart tbody ._cell-canceled ._cell-canceled-txt > strong::before {
  position: absolute;
  top: 3px;
  left: 0;
  width: 18px;
  height: 16px;
  background-position: -183px -177px;
  background-size: 274px auto;
}

.table-flight-chart tbody ._cell-item {
  padding: 10px 7px;
  border-top: 1px dashed #ccc;
  background-color: rgba(0, 0, 0, 0);
}

.table-flight-chart tbody ._cell-item._cheap {
  padding: 10px 12px;
  background: url(../img/bg_panel_001.png) repeat #fdf3f4;
}

.table-flight-chart tbody ._cell-item._cheap + ._cell-item {
  padding-left: 13px;
}

.table-flight-chart tbody ._cell-item ._cell-item_price {
  position: relative;
  display: flex;
  width: 100%;
  height: 86px;
  border-radius: 5px;
  background: #fff;
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .1);
  justify-content: center;
  align-items: center;
}

.table-flight-chart tbody ._cell-item ._cell-item_price:not(:disabled) {
  transition: background .3s cubic-bezier(.39, .575, .565, 1);
}

.table-flight-chart tbody ._cell-item ._cell-item_price:not(:disabled):hover, .table-flight-chart tbody ._cell-item ._cell-item_price:not(:disabled):active, .table-flight-chart tbody ._cell-item ._cell-item_price:not(:disabled):focus {
  background-color: #ffffd0;
}

.table-flight-chart tbody ._cell-item ._cell-item_price.is-dimmed {
  background-color: rgba(0, 0, 0, 0);
  box-shadow: none;
}

.table-flight-chart tbody ._cell-item ._cell-item_price.is-dimmed ._yen {
  color: #616161;
}

.table-flight-chart tbody ._cell-item ._cell-item_price.is-dimmed ._balance {
  color: #666;
}

.table-flight-chart tbody ._cell-item ._cell-item_price.is-standby ._yen {
  color: #616161;
}

.table-flight-chart tbody ._cell-item ._cell-item_price.is-standby ._balance {
  color: #666;
}

.table-flight-chart tbody ._cell-item ._cell-item_price.is-cheapest {
  border: 2px solid #c00;
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .25);
}

.table-flight-chart tbody ._cell-item ._cell-item_price.is-checked {
  border: 2px solid #2e7d32;
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .25);
}

.table-flight-chart tbody ._cell-item ._cell-item_price.is-checked ._cheap-icon {
  top: 7px;
  right: 2px;
}

.table-flight-chart tbody ._cell-item ._cell-item_price:hover + ._cell-item-tooltip, .table-flight-chart tbody ._cell-item ._cell-item_price:focus + ._cell-item-tooltip {
  z-index: 301;
  display: block;
  animation-name: flight-tooltip;
  animation-duration: 1s;
}

.table-flight-chart tbody ._cell-item ._cell-item_price ._yen {
  display: block;
  width: 100%;
  color: #000;
  font-size: 1.8rem;
  line-height: 1;
}

.table-flight-chart tbody ._cell-item ._cell-item_price ._sup {
  position: absolute;
  top: 12px;
  left: 10px;
  color: #333;
  font-size: 1.2rem;
  line-height: 1;
}

.table-flight-chart tbody ._cell-item ._cell-item_price ._balance {
  position: absolute;
  bottom: 10px;
  left: 50%;
  color: #333;
  white-space: nowrap;
  font-weight: normal;
  font-size: 1.2rem;
  line-height: 1;
  transform: translateX(-50%);
}

.table-flight-chart tbody ._cell-item ._cell-item_price ._balance strong {
  font-weight: normal;
}

.table-flight-chart tbody ._cell-item ._cell-item_price ._balance strong._caution {
  color: #b22430;
  font-weight: normal;
}

.table-flight-chart tbody ._cell-item ._cell-item_price ._cheap-icon {
  position: absolute;
  top: 8px;
  right: 8px;
  line-height: 1;
}

.table-flight-chart tbody ._cell-item ._cell-item_price ._cheapest-icon {
  position: absolute;
  top: -4px;
  right: -4px;
  line-height: 1;
}

.table-flight-chart tbody ._cell-item-tooltip {
  position: relative;
  display: none;
}

.table-flight-chart tbody ._cell-item-tooltip ._cell-item-tooltip_item {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 100;
  margin-top: -30px;
  margin-left: 110px;
  padding: 15px 10px;
  width: 144%;
  border: 1px solid #d6caba;
  background-color: #fefaef;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .5);
  transform: translateX(-50%);
  pointer-events: none;
}

.table-flight-chart tbody ._cell-item-tooltip ._cell-item-tooltip_item ._cell-item-tooltip_item_txt {
  margin-bottom: 8px;
  color: #333;
  font-size: 1.2rem;
}

.table-flight-chart tbody ._cell-item-tooltip ._cell-item-tooltip_item ._cell-item-tooltip_item_desc {
  margin-bottom: 0;
  color: #333;
  font-size: 1.2rem;
}

.table-flight-chart tbody ._cell-item-tooltip ._cell-item-tooltip_item ._cell-item-tooltip_item_desc ._item {
  display: inline-flex;
  margin-bottom: 6px;
  width: 100%;
  flex-wrap: wrap;
}

.table-flight-chart tbody ._cell-item-tooltip ._cell-item-tooltip_item ._cell-item-tooltip_item_desc ._item:last-child {
  margin-bottom: 0;
}

.table-flight-chart tbody ._cell-item-tooltip ._cell-item-tooltip_item ._cell-item-tooltip_item_desc ._item dt {
  padding-right: 4px;
}

.table-flight-chart tbody ._cell-item-tooltip ._cell-item-tooltip_item._reverse {
  right: 0;
  left: auto;
}

.table-flight-chart tbody ._cell-transit {
  padding: 16px;
  border-top: 1px solid #e0e0e0;
  border-bottom: 1px solid #e0e0e0;
  background-color: #f4f5f5;
  font-weight: normal;
}

.table-flight-chart tbody ._cell-transit ._cell-transit_item {
  display: flex;
  align-items: center;
}

.table-flight-chart tbody ._cell-transit ._cell-transit_item > ._time {
  position: relative;
  margin: 0 20px 0 0;
  color: #333;
  line-height: 1;
}

.table-flight-chart tbody ._cell-transit ._cell-transit_item > ._time > span {
  margin-left: 14px;
}

.table-flight-chart tbody ._cell-transit ._cell-transit_item > ._list {
  display: flex;
  margin-bottom: 0;
}

.table-flight-chart tbody ._cell-transit ._cell-transit_item > ._list > li {
  position: relative;
  padding-right: 24px;
  color: #000;
  line-height: 1;
}

.table-flight-chart tbody ._cell-transit ._cell-transit_item > ._list > li::before {
  position: absolute;
  top: 7px;
  right: 7px;
  width: 12px;
  height: 1px;
  background-color: #464e62;
}

.table-flight-chart tbody ._cell-transit ._cell-transit_item > ._list > li::after {
  position: absolute;
  top: 3px;
  right: 9px;
  width: 1px;
  height: 6px;
  background-color: #464e62;
  transform: rotate(135deg);
}

.table-flight-chart tbody ._cell-transit ._cell-transit_item > ._list > li:last-child {
  padding-right: 10px;
}

.table-flight-chart tbody ._cell-transit ._cell-transit_item > ._list > li:last-child::before, .table-flight-chart tbody ._cell-transit ._cell-transit_item > ._list > li:last-child::after {
  content: none;
}

.table-flight-chart tbody ._cell-transit ._cell-transit_item ._notice {
  position: relative;
  margin-bottom: 0;
  padding-left: 18px;
  font-size: 1.2rem;
  line-height: 1;
}

.table-flight-chart tbody ._cell-transit ._cell-transit_item ._notice::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 12px;
  height: 12px;
  background-position: -187px -208px;
  background-size: 274px auto;
}

.table-flight-chart tbody ._cell-transit ._cell-transit_item ._notice strong {
  color: #b22430;
  font-weight: bold;
}

.table-flight-chart tbody ._cell-transit ._cell-transit_item .toggle-transit {
  margin-right: 20px;
}

.table-flight-chart tbody ._cell-transit ._cell-transit_item .toggle-transit ._btn {
  position: relative;
  padding-left: 20px;
  color: #0f0f69;
  font-size: 1.2rem;
  line-height: 1;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.table-flight-chart tbody ._cell-transit ._cell-transit_item .toggle-transit ._btn:hover, .table-flight-chart tbody ._cell-transit ._cell-transit_item .toggle-transit ._btn:active, .table-flight-chart tbody ._cell-transit ._cell-transit_item .toggle-transit ._btn:focus {
  opacity: .8;
}

.table-flight-chart tbody ._cell-transit ._cell-transit_item .toggle-transit ._btn .toggle-state {
  position: absolute;
  top: -2px;
  left: 0;
  display: inline-flex;
  margin-right: 5px;
  width: 15px;
  height: 15px;
  border: 1px solid #0f0f69;
  border-radius: 2px;
  background-color: #fff;
  color: rgba(0, 0, 0, 0);
  font-size: 1rem;
}

.table-flight-chart tbody ._cell-transit ._cell-transit_item .toggle-transit ._btn .toggle-state::before {
  position: absolute;
  top: 50%;
  left: 4px;
  margin-top: -4px;
  width: 5px;
  height: 5px;
  border: 1px solid #0f0f69;
  border-bottom: rgba(0, 0, 0, 0);
  border-left: rgba(0, 0, 0, 0);
  transform: rotate(135deg);
}

.table-flight-chart tbody ._cell-transit ._cell-transit_item .toggle-transit .toggle-panel-content {
  display: none;
}

.table-flight-chart tbody ._cell-transit ._cell-transit_item .toggle-transit.is-open {
  position: relative;
}

.table-flight-chart tbody ._cell-transit ._cell-transit_item .toggle-transit.is-open ._btn .toggle-state::before {
  margin-top: -2px;
  transform: rotate(-45deg);
}

.table-flight-chart tbody ._cell-transit ._cell-transit_item .toggle-transit.is-open .toggle-panel-content {
  position: absolute;
  top: 100%;
  left: calc(-534px / 2);
  z-index: 1;
  display: block;
  margin-top: 5px;
  margin-left: 46px;
  padding: 0 5px 15px;
  width: 534px;
  border: 1px solid #353535;
  background-color: #fff;
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .1);
}

.table-flight-chart tbody ._cell-transit-etc {
  padding: 12px 16px;
  border-top: 1px solid #e0e0e0;
  border-bottom: 1px solid #e0e0e0;
  background-color: #fafafa;
}

.table-flight-chart tbody ._cell-transit-etc ._cell-transit-etc_item {
  display: flex;
  align-items: center;
}

.table-flight-chart tbody ._cell-transit-etc ._cell-transit-etc_item ._txt {
  margin-bottom: 0;
  color: #333;
  font-size: 1.4rem;
}

.table-flight-chart tbody ._cell-transit-etc ._cell-transit-etc_item .toggle-transit-etc ._btn {
  padding: 9px 11px;
  border: 1px solid #ccc;
  background-color: #fff;
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .1);
  color: #0f0f69;
  font-size: 1.4rem;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.table-flight-chart tbody ._cell-transit-etc ._cell-transit-etc_item .toggle-transit-etc ._btn > span {
  position: relative;
  padding-left: 20px;
  font-weight: normal;
}

.table-flight-chart tbody ._cell-transit-etc ._cell-transit-etc_item .toggle-transit-etc ._btn > span::before, .table-flight-chart tbody ._cell-transit-etc ._cell-transit-etc_item .toggle-transit-etc ._btn > span::after {
  position: absolute;
  background-color: #2a344b;
}

.table-flight-chart tbody ._cell-transit-etc ._cell-transit-etc_item .toggle-transit-etc ._btn > span::before {
  top: 4px;
  left: 5px;
  width: 2px;
  height: 12px;
}

.table-flight-chart tbody ._cell-transit-etc ._cell-transit-etc_item .toggle-transit-etc ._btn > span::after {
  top: 9px;
  left: 0;
  width: 12px;
  height: 2px;
}

.table-flight-chart tbody ._cell-transit-etc ._cell-transit-etc_item .toggle-transit-etc ._btn:hover, .table-flight-chart tbody ._cell-transit-etc ._cell-transit-etc_item .toggle-transit-etc ._btn:active, .table-flight-chart tbody ._cell-transit-etc ._cell-transit-etc_item .toggle-transit-etc ._btn:focus {
  opacity: .8;
}

.table-flight-chart._few {
  width: auto;
}

.table-flight-chart._few thead {
  width: 1000px !important;
}

.table-flight-chart._few tbody ._cell-info {
  width: 240px;
}

.table-flight-chart._few tbody ._cell-class {
  width: 68px;
}

.table-flight-chart._few tbody ._cell-item {
  width: 692px;
}

.table-flight-chart._few tbody ._cell-item ._cell-item_price {
  width: 110px;
}

/* keyframes [._cell-item-tooltip]
----------------------------------------------- */
@keyframes flight-tooltip {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/* .table-lounge
----------------------------------------------- */
.table-lounge {
  width: 100%;
}

.table-lounge > caption {
  padding-right: 20px;
  padding-bottom: 15px;
  text-align: left;
  font-size: 1.6rem;
}

.table-lounge > caption .link-txt._line {
  margin-left: 10px;
  font-size: 1.4rem;
}

.table-lounge > thead tr {
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}

.table-lounge > thead tr th, .table-lounge > thead tr td {
  padding: 10px;
  background-color: #fafafa;
  color: #333;
}

.table-lounge > thead tr th {
  text-align: left;
}

.table-lounge > tbody {
  border-bottom: 1px solid #ccc;
}

.table-lounge > tbody tr + tr {
  border-top: 1px dotted #ccc;
}

.table-lounge > tbody tr th, .table-lounge > tbody tr td {
  padding: 10px;
  color: #333;
}

/* .table-number
----------------------------------------------- */
.table-number {
  margin-bottom: 50px;
}

.table-number + form, .table-number + .panel-attention {
  margin-top: -30px;
}

.table-number ._title {
  margin-bottom: 10px;
  color: #333;
  text-align: left;
  font-size: 1.8rem;
}

.table-number ._name {
  padding-left: 28px;
  vertical-align: top;
  text-align: left;
  word-break: break-all;
  font-weight: bold;
  font-size: 2.2rem;
}

.table-number ._label {
  text-align: left;
  font-size: 2.2rem;
}

.table-number ._num {
  color: #c00;
  vertical-align: top;
  font-size: 2.2rem;
}

.table-number ._num-02 {
  vertical-align: top;
  font-size: 2.2rem;
}

.panel-02 .table-number, .panel-info .table-number {
  margin-bottom: 20px;
}

.panel-02 .panel-02_hdg._space-narrow + .table-number, .panel-info_inner_hdg_02._space-narrow + .table-number {
  margin-bottom: 10px;
}

/* ----------------------------------------------------------------
    Form
----------------------------------------------------------------- */
/* form-list
----------------------------------------------- */
.form-list > li {
  margin-bottom: 10px;
}

.form-list > li:last-child {
  margin-bottom: 0;
}

.form-list > li > :last-child {
  margin-bottom: 0;
}

.form-list._inline > li {
  float: left;
  margin-right: 40px;
}

.form-list._inline ._inline_sup {
  margin-right: 14px;
}

.form-list._inline_date {
  display: flex;
  flex-wrap: wrap;
}

.form-list._inline_date > li {
  position: relative;
  display: inline-flex;
  margin-right: 35px;
  margin-bottom: 0;
  align-items: center;
}

.form-list._inline_date > li .form-list_item {
  padding-left: 15px;
  color: #333;
}

.form-list._inline_date > li:before {
  position: absolute;
  top: 14px;
  right: -16px;
  width: 1px;
  height: 15px;
  background-color: #6c6c6c;
  transform: rotate(20deg);
}

.form-list._inline_date > li:last-child:before {
  display: none;
}

.form-list._inline_date ._inline_sup {
  margin-right: 10px;
}

.form-table-02 .form-list._inline, .form-table-04 .form-list._inline {
  margin-top: -15px;
}

.form-table-02 .form-list._inline > li, .form-table-04 .form-list._inline > li {
  margin: 15px 15px 0 0;
}

.form-table-02 .form-list._inline > li label + div[role=alert] .form-error, .form-table-04 .form-list._inline > li label + div[role=alert] .form-error {
  left: 28px;
}

.form-list_inner {
  padding: 10px 0 0 26px;
}

.form-list_inner > :last-child {
  margin-bottom: 0;
}

/* .form-list-02
----------------------------------------------- */
.form-list-02 > li {
  margin: 0 0 16px;
  padding: 16px 14px;
  border: 1px solid #ccc;
  border-radius: 3px;
  background: #fff;
}

.form-list-02 > li:last-child {
  margin-bottom: 0;
}

.form-list-02 > li > .form-table-wrap {
  padding: 16px 30px;
}

.form-list-02 > li > .form-table {
  margin-top: 10px;
}

.form-list-02 > li > .form-table + .btn-wrap {
  margin-top: 0;
  margin-bottom: 30px;
  text-align: center;
}

.form-list-02 > li > :last-child {
  margin-bottom: 0;
}

.form-list-02 > li._all {
  padding: 0;
}

.form-list-02 > li._all .form-checkbox {
  width: 100%;
}

.form-list-02 > li._all .form-checkbox .form-checkbox_item {
  padding: 16px 14px 16px 48px;
}

.form-list-02 > li._all .form-checkbox .form-checkbox_item::before {
  top: 15px;
  left: 17px;
}

.form-list-02 > li._all .form-checkbox .form-checkbox_item::after {
  top: 19px;
  left: 20px;
}

.form-list-02 > li .lyt-checkbox_right {
  display: block;
  margin-right: 32px;
  margin-bottom: 0;
  text-align: right;
}

/* form-list-03
----------------------------------------------- */
.form-list-03 > li {
  margin-top: 25px;
}

.form-list-03 > li:first-child {
  margin-top: 0;
}

.form-list-03 > li .lyt-flex > .lyt-flex_item .btn-05 {
  margin-bottom: 3px;
}

.form-list-03 > li .lyt-flex > .lyt-flex_item + .lyt-flex_item {
  margin-left: 14px;
}

.form-list-03_txt {
  display: block;
  margin-bottom: 5px;
  font-size: 1.6rem;
}

/* .form-table
----------------------------------------------- */
.form-table {
  margin-bottom: 20px;
  width: 100%;
}

.form-table tr th, .form-table tr td {
  vertical-align: top;
  text-align: left;
}

.form-table tr th > :first-child, .form-table tr td > :first-child {
  margin-top: 0;
}

.form-table tr th > :last-child, .form-table tr td > :last-child {
  margin-bottom: 0;
}

.form-table tr th {
  padding: 10px 0;
  color: #333;
  font-weight: bold;
  font-size: 1.6rem;
}

.form-table tr th.form-table_label {
  padding-top: 24px;
}

.form-table tr td {
  padding: 10px 0 10px 15px;
  font-size: 1.4rem;
}

.form-table tr td .form-table th {
  font-size: 1.4rem;
}

.form-table tr .form-table tr td {
  padding: 10px 0 10px 10px;
}

.form-table tr.form-table-thin td {
  padding-top: 0;
}

.form-table tr.form-table-thin th.form-table_label {
  padding-top: 15px;
}

.form-table .form-table_txt {
  margin-bottom: 8px;
}

.form-table .form-table_txt + .form-table {
  margin-top: -8px;
}

.form-table .form-txt + .form-table_txt, .form-table .form-select + .form-table_txt, .form-table .form-table + .form-table_txt, .form-table .form-error + .form-table_txt, .form-table div[role='alert'] + .form-table_txt {
  margin-top: 6px;
}

.form-table .form-txt + .form-table_txt._sup, .form-table .form-select + .form-table_txt._sup, .form-table .form-table + .form-table_txt._sup, .form-table .form-error + .form-table_txt._sup, .form-table div[role='alert'] + .form-table_txt._sup {
  margin-left: 14px;
}

.form-table._headcount {
  margin-bottom: 10px;
}

.form-table._headcount .form-table_label {
  font-weight: normal;
}

/* .form-txt
----------------------------------------------- */
.form-txt {
  box-sizing: border-box;
  padding: 12px;
  max-width: 240px;
  width: 100%;
  height: 46px;
  border: 1px solid #ccc;
  border-radius: 3px;
  background: #fff;
  font-size: 1.6rem;
  /* IE */
  /* Edge */
}

.form-txt[disabled] {
  border: 1px solid #e0e0e0;
  background: #eee;
}

.form-txt[disabled]::-webkit-input-placeholder {
  color: #555;
  opacity: 1;
}

.form-txt[disabled]::placeholder {
  color: #555;
  opacity: 1;
}

.form-txt[disabled]:-ms-input-placeholder {
  color: #555;
}

.form-txt[disabled]::-ms-input-placeholder {
  color: #555;
}

.form-txt.is-blank {
  background-color: #fdf5f5;
}

.form-txt.is-error {
  border: 2px solid #c00;
}

.form-txt._full {
  max-width: none;
}

.form-txt._card {
  max-width: 278px;
}

.form-txt._name {
  max-width: 195px;
}

.form-txt._yen {
  max-width: 158px;
}

.form-txt._small {
  max-width: 120px;
}

.form-txt._small-02 {
  max-width: 150px;
}

.form-txt._age {
  max-width: 62px;
}

.form-txt._mail {
  max-width: 280px;
}

.form-txt._tel {
  max-width: 180px;
}

.form-txt._flight-num {
  min-width: 280px;
  max-width: none;
}

.form-txt._tktno {
  max-width: 190px;
}

.form-txt + .form-txt_sup {
  padding-left: 10px;
}

/* .form-radio
----------------------------------------------- */
.form-radio {
  position: relative;
  display: inline-block;
}

.form-radio.is-error .form-radio_item::before {
  border: 2px solid #c00;
}

.form-radio.is-blank .form-radio_item::before {
  background-color: #fdf5f5;
}

.form-radio .is-checked {
  display: inline;
  background-color: #ccc;
}

.form-radio input[type='radio'] {
  position: absolute;
  z-index: -1;
  opacity: 0;
}

.form-radio .form-radio_item {
  position: relative;
  display: block;
  margin-left: 2px;
  padding: 0 0 0 26px;
  font-size: 1.6rem;
  cursor: pointer;
}

.form-radio .form-radio_item::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  border: 1px solid #9aa3b3;
  border-radius: 20px;
  background-color: #fff;
  box-shadow: 0 1px 1px #ccc inset;
}

.form-radio .form-radio_item::after {
  position: absolute;
  top: 5px;
  left: 5px;
  z-index: 1;
  width: 10px;
  height: 10px;
  border-radius: 10px;
  background-color: #555;
  opacity: 0;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.form-radio input[type='radio']:focus + label {
  outline: 2px solid #a6c8ff;
}

.form-radio input[type='radio']:checked + .form-radio_item::after {
  opacity: 1;
}

.form-radio input[type='radio']:disabled + .form-radio_item {
  color: #bfbfbf;
}

.form-radio input[type='radio']:disabled + .form-radio_item::after {
  position: absolute;
  top: -4px;
  left: 11px;
  width: 1px;
  height: 32px;
  background-color: #ccc;
  transform: rotate(135deg);
}

.form-radio input[type='radio'].is-blank + .form-radio_item::before {
  background-color: #fdf5f5;
}

.form-radio input[type='radio'].is-blank:checked + .form-radio_item::before {
  background-color: #fff;
}

/* .form-radio-02
----------------------------------------------- */
.form-radio-02 {
  position: relative;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.form-radio-02::before {
  position: absolute;
  top: -37px;
  left: 50%;
  margin-left: -34px;
  width: 67px;
  height: 67px;
}

.form-radio-02_item {
  position: absolute;
  opacity: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.form-radio-02_item:checked + span::after {
  opacity: 1;
  transform: scale(1);
}

.form-radio-02_item:focus + span {
  outline: 1px dotted #777;
}

.form-radio-02_item:disabled + span {
  color: #888;
}

.form-radio-02_item:disabled + span::before {
  background: #f2f2f2;
}

.form-radio-02_item + span {
  position: relative;
  display: inline-block;
  padding: 2px 0 0 26px;
}

.form-radio-02_item + span::before, .form-radio-02_item + span::after {
  position: absolute;
  left: 0;
  box-sizing: border-box;
}

.form-radio-02_item + span::before {
  top: 0;
  width: 20px;
  height: 20px;
  border: 1px solid #aaa;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 1px 1px #ccc inset;
}

.form-radio-02_item + span::after {
  top: 5px;
  left: 5px;
  width: 10px;
  height: 10px;
  border-radius: 8px;
  background: #555;
  opacity: 0;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
  transform: scale(0);
}

.form-radio-02._class-01::before {
  position: absolute;
  top: -38px;
  left: 62px;
  width: 86px;
  height: 67px;
  background-image: url('//www.jal.co.jp/jp/ja/guidance/dom/system_contents/img/bg_normalclass_001.png');
}

.form-radio-02._class-02::before {
  position: absolute;
  top: -38px;
  left: 68px;
  width: 83px;
  height: 67px;
  background-image: url('//www.jal.co.jp/jp/ja/guidance/dom/system_contents/img/bg_classj_001.png');
}

.form-radio-02._class-03::before {
  position: absolute;
  top: -42px;
  left: 64px;
  width: 92px;
  height: 72px;
  background-image: url('//www.jal.co.jp/jp/ja/guidance/dom/system_contents/img/bg_firstclass_001.png');
}

.form-radio-02._class-03 .form-radio-02_item + span {
  letter-spacing: -1px;
}

.form-radio-02._class-04::before {
  position: absolute;
  top: -18px;
  left: 59px;
  width: 114px;
  height: 46px;
  background-image: url('//www.jal.co.jp/jp/ja/guidance/dom/system_contents/img/bg_allclass_001.png');
}

.form-list-class .form-radio-02 {
  display: flex;
  padding: 40px 11px 11px;
  cursor: pointer;
  justify-content: center;
}

.form-list-class .is-current .form-radio-02 .form-radio-02_item + span {
  font-weight: bold;
}

/* .form-checkbox
----------------------------------------------- */
.form-checkbox {
  position: relative;
  display: inline-block;
}

.form-checkbox .is-checked {
  display: inline;
  background-color: #ccc;
}

.form-checkbox input[type='checkbox'] {
  position: absolute;
  z-index: -1;
  opacity: 0;
}

.modal-refine .form-checkbox {
  margin: 12px 0 0;
  color: #000;
}

.form-checkbox .form-checkbox_item {
  position: relative;
  display: block;
  margin-left: 2px;
  padding: 0 0 0 28px;
  font-size: 1.6rem;
  cursor: pointer;
}

.form-checkbox .form-checkbox_item::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  border: 1px solid #9aa3b3;
  border-radius: 3px;
  background-color: #fff;
  box-shadow: 0 1px 1px #ccc inset;
}

.form-checkbox .form-checkbox_item::after {
  position: absolute;
  top: 4px;
  left: 3px;
  z-index: 1;
  width: 14px;
  height: 12px;
  background-position: -156px -208px;
  background-size: 274px auto;
  opacity: 0;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.form-checkbox .form-checkbox_item.is-blank::before {
  background-color: #fdf5f5;
}

.form-checkbox .form-checkbox_item.is-error::before {
  border: 2px solid #c00;
}

.form-checkbox input[type='checkbox']:focus + label {
  outline: 2px solid #a6c8ff;
}

.form-checkbox input[type='checkbox']:checked + .form-checkbox_item::after {
  opacity: 1;
}

.form-checkbox input[type='checkbox']:checked + .form-checkbox_item.is-blank::before {
  background-color: #fff;
}

.form-checkbox input[type='checkbox'].is-blank + .form-checkbox_item::before {
  background-color: #fdf5f5;
}

.form-checkbox input[type='checkbox'].is-blank:checked + .form-checkbox_item::before {
  background-color: #fff;
}

.form-checkbox input[type='checkbox']:disabled + .form-checkbox_item {
  color: #bfbfbf;
}

.form-checkbox input[type='checkbox']:disabled + .form-checkbox_item::after {
  position: absolute;
  top: -4px;
  left: 11px;
  width: 1px;
  height: 32px;
  background-color: #ccc;
  transform: rotate(135deg);
}

.form-checkbox_item-inner {
  font-size: 1.4rem;
}

/* .form-select
----------------------------------------------- */
.form-select {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  max-width: 240px;
  width: 100%;
  border-radius: 3px;
  font-size: 1.6rem;
  line-height: 1.3;
}

.form-select::before {
  position: absolute;
  right: 16px;
  bottom: 20px;
  z-index: 1;
  z-index: 1;
  width: 8px;
  height: 8px;
  border-top: 2px solid #c00;
  border-right: 2px solid #c00;
  transform: rotate(135deg) translate3d(0, 0, 0);
  pointer-events: none;
}

.form-select select {
  position: relative;
  display: block;
  padding: 10px 30px 10px 12px;
  width: 100%;
  height: 46px;
  border: 1px solid #ccc;
  border-radius: 3px;
  background: #fff;
  font-size: 1.6rem;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.form-select select::-ms-expand {
  display: none;
}

.form-select.is-blank select {
  background-color: #fdf5f5;
}

.form-select.is-error select {
  border: 2px solid #c00;
}

.form-select._date {
  max-width: 70px;
}

.form-select._date::before {
  right: 12px;
}

.form-select._age {
  max-width: 62px;
}

.form-select._age select {
  padding-right: 20px;
}

.form-select._age::before {
  right: 12px;
}

.form-select._full {
  max-width: none;
}

.form-select._small {
  max-width: 120px;
}

.form-select._bank {
  min-width: 100px;
}

.form-select._sector {
  max-width: none;
}

/* .form-error
----------------------------------------------- */
.form-error {
  position: relative;
  z-index: 1;
  width: 100%;
}

.form-error::before {
  position: absolute;
  top: -3px;
  left: 20px;
  z-index: 1;
  width: 8px;
  height: 8px;
  border-right: 5px solid rgba(0, 0, 0, 0);
  border-bottom: 5px solid rgba(204, 0, 0, .8);
  border-left: 5px solid rgba(0, 0, 0, 0);
}

.form-error .form-error_txt {
  position: absolute;
  top: 4px;
  margin-bottom: 0;
  padding: 6px 8px;
  border-radius: 3px;
  background-color: rgba(204, 0, 0, .8);
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .25);
  color: #fff;
  font-size: 1.2rem;
}

/* .form-list-class
----------------------------------------------- */
.form-list-class {
  display: inline-flex;
  border: 1px solid #ccc;
  border-radius: 3px;
}

.form-list-class > li {
  width: 155px;
  border-right: 1px solid #ccc;
}

.form-list-class > li:last-child {
  border-right: none;
}

.form-list-class > li.is-current {
  background-color: #fafafa;
}

.form-list-class > li.is-current:first-child {
  border-top-left-radius: 2px;
  border-bottom-left-radius: 2px;
}

.form-list-class > li.is-current:last-child {
  border-top-right-radius: 2px;
  border-bottom-right-radius: 2px;
}

.form-list-class + .list-note._right {
  margin-top: -13px;
}

.form-list-class + .list-note._right > li {
  font-size: 1.2rem;
}

/* .form-link-calendar
----------------------------------------------- */
.form-link-calendar {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding: 12px 44px 12px 12px;
  min-height: 46px;
  max-width: 240px;
  width: 100%;
  border: 1px solid #ccc;
  border-radius: 3px;
  background: #fff;
  font-size: 1.6rem;
}

.form-link-calendar._full {
  max-width: none;
}

.form-link-calendar .form-link-calendar_data {
  margin-bottom: 0;
  color: #000;
}

.form-link-calendar .icon-modal {
  top: 15px;
}

.form-link-calendar.is-error {
  padding: 11px 44px 11px 12px;
  border: 2px solid #c00;
}

/* .form-select-condition
----------------------------------------------- */
.form-select-condition {
  position: relative;
  height: 100%;
  border: 1px solid #ccc;
  border-left: 0;
  box-shadow: 0 2px 2px #e7e7e7;
}

.form-select-condition::before {
  position: absolute;
  right: 20px;
  bottom: 14px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #c00;
  border-right: 2px solid #c00;
  transform: rotate(135deg) translate3d(0, 0, 0);
}

.form-select-condition._incoming::before {
  right: 32px;
}

.form-select-condition._incoming select {
  padding-right: 50px;
}

.form-select-condition._outgoing .form-select-condition_txt {
  left: 30px;
}

.form-select-condition._outgoing select {
  padding-left: 26px;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  .form-select-condition._outgoing select {
    padding-left: 30px;
  }
}

.form-select-condition select {
  position: relative;
  display: block;
  padding: 28px 38px 5px 16px;
  width: 100%;
  height: 52px;
  font-size: 1.4rem;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.form-select-condition select::-ms-expand {
  display: none;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  .form-select-condition select {
    padding: 28px 38px 5px 20px;
  }
}

.form-select-condition .form-select-condition_txt {
  position: absolute;
  top: 6px;
  left: 20px;
  margin-bottom: 0;
  color: #616161;
  font-size: 1.3rem;
}

.form-select-condition .form-select-condition_exc {
  position: absolute;
  top: 50%;
  right: -20px;
  z-index: 1;
  margin-top: -18px;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.form-select-condition .form-select-condition_exc:hover, .form-select-condition .form-select-condition_exc:active, .form-select-condition .form-select-condition_exc:focus {
  opacity: .8;
}

.lyt-head-search .form-select-condition {
  border-color: #fff;
}

/* .form-table-02
----------------------------------------------- */
.form-table-02 {
  margin-bottom: 20px;
  width: 100%;
  border: 1px solid #ccc;
}

.form-table-02 th, .form-table-02 td {
  padding: 20px;
}

.form-table-02 th {
  background: #fafafa;
  text-align: left;
}

.form-table-02 td {
  background: #fff;
  color: #333;
}

.form-table-02 tbody th, .form-table-02 tbody td {
  border-bottom: 1px dashed #ccc;
}

.form-table-02 tbody th .form-table, .form-table-02 tbody td .form-table {
  margin-bottom: 0;
}

.form-table-02 tbody th .form-table th, .form-table-02 tbody th .form-table td, .form-table-02 tbody td .form-table th, .form-table-02 tbody td .form-table td {
  border-bottom: 0;
}

.form-table-02 tbody th .form-table th, .form-table-02 tbody td .form-table th {
  background: #fff;
}

.form-table-02 tbody th .form-table-02_sup, .form-table-02 tbody td .form-table-02_sup {
  margin-bottom: 10px;
  color: #616161;
  font-size: 1.4rem;
  line-height: 1.5;
}

.form-table-02 tbody th .form-lyt-label + .form-table-02_sup, .form-table-02 tbody td .form-lyt-label + .form-table-02_sup {
  margin-top: 20px;
}

.form-table-02 tbody th .icon-label._em, .form-table-02 tbody td .icon-label._em {
  display: inline;
  padding: 1px 8px 0;
  vertical-align: middle;
}

.form-table-02 tbody th p + div[role=alert], .form-table-02 tbody td p + div[role=alert] {
  margin-top: -20px;
}

.form-table-02 tbody th > :last-child, .form-table-02 tbody td > :last-child {
  margin-bottom: 0;
}

.form-table-02 tbody th > .toggle:last-child > p, .form-table-02 tbody td > .toggle:last-child > p {
  margin-bottom: 0;
}

.form-table-02 tbody th > .toggle:last-child > p + .toggle_content, .form-table-02 tbody td > .toggle:last-child > p + .toggle_content {
  margin-top: 10px;
}

.form-table-02 tbody th {
  color: #333;
}

.form-table-02 tbody tr:last-child {
  border-bottom: none;
}

.form-table-02_inner_txt {
  display: inline-block;
  padding: 0 0 5px 10px;
}

.form-table-02_txt {
  margin-top: 20px;
}

.form-table-02_inner-02 {
  margin: 0 0 20px 20px;
}

.form-table-02_inner-02 > :last-child {
  margin-bottom: 0;
}

.form-table-02_txt-02 {
  font-size: 1.6rem;
}

.form-table-02 + .panel-info {
  margin-top: 60px;
}

/* .form-table-03
----------------------------------------------- */
.form-table-03 {
  margin: 0 0 30px;
  width: 100%;
  border: 1px solid #ccc;
}

.form-table-03 th, .form-table-03 td {
  color: #333;
  font-size: 1.6rem;
}

.form-table-03 th._nowrap, .form-table-03 td._nowrap {
  white-space: nowrap;
}

.form-table-03 thead th, .form-table-03 thead td {
  background-color: #fafafa;
  text-align: left;
}

.form-table-03 thead th .form-table-03_sup, .form-table-03 thead td .form-table-03_sup {
  display: block;
  color: #333;
  font-size: 1.2rem;
}

.form-table-03 thead tr th, .form-table-03 thead tr td {
  padding: 13px 10px;
}

.form-table-03 thead tr th:first-child, .form-table-03 thead tr td:first-child {
  padding-left: 20px;
}

.form-table-03 thead tr th:last-child, .form-table-03 thead tr td:last-child {
  padding-right: 20px;
}

.form-table-03 thead tr th._yen, .form-table-03 thead tr td._yen {
  padding-left: 40px;
}

.form-table-03 tbody th, .form-table-03 tbody td {
  padding: 30px 10px;
  border-bottom: 1px dashed #ccc;
  background-color: #fff;
  color: #333;
  text-align: left;
}

.form-table-03 tbody tr th:first-child, .form-table-03 tbody tr td:first-child {
  padding-left: 20px;
}

.form-table-03 tbody tr th:last-child, .form-table-03 tbody tr td:last-child {
  padding-right: 20px;
}

.form-table-03 tbody tr th._yen, .form-table-03 tbody tr td._yen {
  padding-left: 40px;
}

.form-table-03 tbody tr:last-child th, .form-table-03 tbody tr:last-child td {
  border-bottom: none;
}

.form-table-03 .form-table-03_total th, .form-table-03 .form-table-03_total .yen {
  font-weight: bold;
  font-size: 1.8rem;
}

.form-table-03 .form-table-03_total .point, .form-table-03 .form-table-03_total .pay {
  color: #c00;
  font-weight: normal;
}

/* .form-table-04
----------------------------------------------- */
.form-table-04 {
  margin: 0 0 30px;
  width: 100%;
  border-spacing: 0;
  border-collapse: separate;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}

.form-table-04 th, .form-table-04 td {
  padding: 13px 10px 10px;
  vertical-align: top;
  text-align: left;
  font-size: 1.6rem;
}

.form-table-04 th > :last-child, .form-table-04 td > :last-child {
  margin-bottom: 0;
}

.form-table-04 th ._num, .form-table-04 td ._num {
  display: inline-flex;
}

.form-table-04 th ._keep, .form-table-04 td ._keep {
  white-space: nowrap;
}

.form-table-04 thead th, .form-table-04 thead td {
  background: #fafafa;
  color: #333;
}

.form-table-04 tbody th, .form-table-04 tbody td {
  border-bottom: 1px dashed #ccc;
}

.form-table-04 tbody th {
  color: #333;
  font-size: 1.4rem;
}

.form-table-04 tbody tr:last-child > th, .form-table-04 tbody tr:last-child > td {
  border-bottom: none;
}

.form-table-04 tbody tr:nth-last-child(2) > th[rowspan='2'], .form-table-04 tbody tr:nth-last-child(2) > td[rowspan='2'] {
  border-bottom: none;
}

.form-table-04 tbody tr.selected {
  background: #f9e6e5;
}

.form-table-04 tbody ._pair th, .form-table-04 tbody ._pair td {
  padding-bottom: 2px;
  border-bottom: 0;
}

.form-table-04 tbody ._pair + tr th, .form-table-04 tbody ._pair + tr td {
  padding-top: 2px;
}

.form-table-04 tr > :first-child {
  padding-left: 20px;
}

.form-table-04 tr > :last-child {
  padding-right: 20px;
}

.form-table-04_inner {
  position: relative;
}

.form-table-04_txt {
  color: #333;
  font-weight: normal;
  font-size: 1.2rem;
}

.form-table-04_txt_02 {
  color: #616161;
}

.form-table-04_txt_03 {
  display: inline-block;
  font-size: 1rem;
}

.form-table-04_txt_change {
  color: #c00;
}

.form-table-04_link {
  display: inline-block;
  margin-top: 5px;
}

.form-table-04_link > a {
  font-weight: normal;
}

.form-table-04_inner_02._change {
  position: relative;
  display: flex;
  align-items: flex-start;
}

.form-table-04_inner_02._change::before {
  position: absolute;
  bottom: -37px;
  left: 20px;
  width: 12px;
  height: 22px;
  background-position: -162px -63px;
  background-size: 274px auto;
}

.form-table-04_inner_02._change .form-table-04_inner_02_txt {
  margin-left: 10px;
}

.form-table-04_inner_02._alternate {
  margin-left: 53px;
}

.form-table-04_inner_02._alternate .form-table-04_inner_02_txt {
  display: block;
  margin-top: 5px;
}

.form-table-04_inner_03 {
  position: relative;
  display: inline-block;
  padding-left: 34px;
}

.form-table-04_inner_03::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 24px;
  height: 25px;
  background-position: 0 -208px;
  background-size: 274px auto;
}

.form-table-04_inner_03._no-flight::before {
  display: none;
}

.form-table-04._small thead th, .form-table-04._small thead td, .form-table-04._small tbody th, .form-table-04._small tbody td {
  font-size: 1.4rem;
}

.form-table-04._passenger tbody th, .form-table-04._passenger tbody td {
  padding-top: 32px;
  padding-bottom: 34px;
}

.form-table-04._passenger tbody tr:not(.middle) th, .form-table-04._passenger tbody tr:not(.middle) td {
  padding-bottom: 30px;
}

.form-table-04._passenger tbody tr:not(.middle) th {
  padding-top: 36px;
}

.form-table-04._passenger tbody tr:not(.middle) th > span {
  display: flex;
  flex-direction: column;
  height: 36px;
  vertical-align: middle;
  line-height: 1.45;
  justify-content: center;
}

.form-table-04._passenger tbody tr:not(.middle) td .form-list._inline {
  margin-top: -2px;
}

.form-table-04 + .panel-info {
  margin-top: 60px;
}

.form-table-04 + .form-table-04_sup {
  margin-top: -10px;
  margin-bottom: 35px;
}

.form-table-04 + .form-table-04_sup > :last-child {
  margin-bottom: 0;
}

/* .form-table-05
----------------------------------------------- */
.form-table-05 {
  margin: 0 0 30px;
  width: 100%;
  border-bottom: 1px solid #ccc;
}

.form-table-05 th, .form-table-05 td {
  padding: 13px 20px 10px;
  vertical-align: top;
  text-align: left;
  font-size: 1.6rem;
}

.form-table-05 th > :last-child, .form-table-05 td > :last-child {
  margin-bottom: 0;
}

.form-table-05 tbody th, .form-table-05 tbody td {
  border-bottom: 1px solid #ccc;
}

.form-table-05 tbody th {
  color: #333;
}

.form-table-05_link {
  margin-left: 10px;
  font-weight: normal;
  font-size: 1.4rem;
  transition: color .3s cubic-bezier(.39, .575, .565, 1);
}

.form-table-05_link:hover, .form-table-05_link:active, .form-table-05_link:focus {
  color: #ca0000;
  text-decoration: underline;
}

/* .form-table-list
----------------------------------------------- */
.form-table-list {
  margin-bottom: 0;
}

.form-table-list > li {
  padding-top: 20px;
  padding-bottom: 20px;
  border-bottom: 1px dashed #ccc;
}

.form-table-list > li:first-child {
  padding-top: 0;
}

.form-table-list > li:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.form-table-list > li > :last-child {
  margin-bottom: 0;
}

.form-table-list .lyt-radio-info_next .lyt-flex_item + div[role=alert] {
  position: absolute;
  left: 30px;
  margin-top: 46px;
  min-width: 150px;
}

/* .form-table-wrap
----------------------------------------------- */
.form-table-wrap {
  padding: 0 36px 10px 30px;
}

.form-table-wrap > :last-child {
  margin-bottom: 0;
}

/* .form-txt-sup
----------------------------------------------- */
.form-txt-sup {
  margin: 6px 0 0 14px;
  min-height: 18px;
  word-break: break-all;
}

.form-table-04_inner .form-txt-sup {
  margin-top: 4px;
  margin-bottom: -20px;
}

/* .form-lyt-label
----------------------------------------------- */
.form-lyt-label {
  display: flex;
}

.form-lyt-label_item > :last-child {
  margin-bottom: 0;
}

.form-lyt-label_item + .form-lyt-label_item {
  margin-left: 15px;
}

.form-lyt-label_txt {
  display: inline-block;
  margin-top: 14px;
}

/* ----------------------------------------------------------------
    Unique
----------------------------------------------------------------- */
/* .seatmap-lyt
----------------------------------------------- */
.seatmap-lyt {
  position: relative;
  margin-bottom: 40px;
}

.seatmap-lyt_main {
  position: relative;
  margin-right: auto;
  width: 820px;
}

.seatmap-lyt_sub {
  position: absolute;
  display: flex;
  margin: 0 auto;
  min-width: 1000px;
  justify-content: flex-end;
}

.seatmap-lyt_sub .seatmap-lyt_sub_inner {
  width: 180px;
}

.seatmap-lyt_sub.is-fixed {
  position: fixed;
  overflow: auto;
}

/* seatmap
----------------------------------------------- */
.seatmap {
  position: relative;
  width: 100%;
}

/* seatmap-list
----------------------------------------------- */
.seatmap-list {
  margin-bottom: 0;
}

.seatmap-list > li {
  position: absolute;
  padding: 5px;
}

.seatmap-list > li > a {
  position: relative;
  display: block;
  color: #000;
  text-align: center;
}

.seatmap-list > li > a:focus {
  outline: 2px solid rgba(146, 176, 252, .7);
}

.seatmap-list > li > a::before {
  width: 100%;
  height: 100%;
}

.seatmap-list > li > a ._num {
  position: absolute;
  display: block;
  width: 100%;
  font-weight: bold;
}

.seatmap-list > li > a ._num::before {
  position: absolute;
  left: 50%;
  z-index: 3;
  visibility: hidden;
  margin-left: -7px;
  border: 7px solid transparent;
  border-bottom: 7px solid #2a344b;
}

.seatmap-list > li > a ._num::after {
  position: absolute;
  left: 50%;
  z-index: 4;
  visibility: hidden;
  margin-left: -7px;
  border: 7px solid transparent;
  border-bottom: 7px solid #fff;
}

.seatmap-list > li > a.is-show ._num::before, .seatmap-list > li > a.is-show ._num::after {
  visibility: visible;
}

.seatmap-list > li > a ._class {
  position: absolute;
  display: block;
  width: 100%;
  font-size: 1rem;
}

.seatmap-list > li > a ._status {
  position: absolute;
}

.seatmap-list > li > a ._side, .seatmap-list > li > a._selected ._status {
  position: absolute;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0;
  width: 1px;
  height: 1px;
  border: 0;
}

.seatmap-list > li > a._rotate-r, .seatmap-list > li > a._rotate-l {
  box-sizing: content-box;
}

.seatmap-list > li > a._rotate-r::before, .seatmap-list > li > a._rotate-l::before {
  float: left;
}

.seatmap-list > li > a._rotate-r > *, .seatmap-list > li > a._rotate-l > * {
  box-sizing: border-box;
}

.seatmap-list > li > a._rotate-r::before {
  transform: rotate(30deg);
}

.seatmap-list > li > a._rotate-l::before {
  transform: rotate(-30deg);
}

.seatmap-list > li > a._classj, .seatmap-list > li > a._normalclass {
  color: #fff;
}

.seatmap-list > li > a._assigned ._num {
  position: absolute;
  top: 1px;
  left: 0;
  z-index: -1;
  color: transparent;
  font-size: .8rem;
}

.seatmap-list > li > a._assigned ._status {
  right: 0;
  left: 0;
}

.seatmap-list > li > a._selected ._assign {
  position: absolute;
  right: 0;
  left: 0;
  display: inline-block;
  margin: auto;
  padding-top: 5px;
  width: 34px;
  height: 34px;
  border-radius: 17px;
  background-color: #c00;
  color: #fff;
  font-weight: bold;
  font-size: 1.9rem;
}

.seatmap-list > li > a._selected ._num, .seatmap-list > li > a._selected ._class {
  position: absolute;
  color: transparent;
  font-size: .8rem;
}

.seatmap-list > li > a._type-a {
  width: 76px;
  height: 79px;
}

.seatmap-list > li > a._type-a ._num {
  top: 11px;
  font-size: 1.8rem;
}

.seatmap-list > li > a._type-a ._num::before {
  bottom: -45px;
}

.seatmap-list > li > a._type-a ._num::after {
  bottom: -46px;
}

.seatmap-list > li > a._type-a ._class {
  top: 40px;
}

.seatmap-list > li > a._type-a._firstclass::before {
  background: url(../img/seat/seat_firstclass_001.png) no-repeat;
}

.seatmap-list > li > a._type-a._classj::before {
  background: url(../img/seat/seat_classj_001.png) no-repeat;
}

.seatmap-list > li > a._type-a._normalclass::before {
  background: url(../img/seat/seat_normalclass_001.png) no-repeat;
}

.seatmap-list > li > a._type-a._assigned::before {
  background: url(../img/seat/seat_assigned_001.png) no-repeat;
}

.seatmap-list > li > a._type-a._assigned ._status {
  top: 6px;
}

.seatmap-list > li > a._type-a._assigned._child ._status {
  top: 13px;
}

.seatmap-list > li > a._type-a._selected::before {
  background: url(../img/seat/seat_selected_001.png) no-repeat;
}

.seatmap-list > li > a._type-a._selected ._assign {
  top: 12px;
}

.seatmap-list > li > a._type-a._rotate-r, .seatmap-list > li > a._type-a._rotate-l {
  margin: -8px;
  padding: 8px;
}

.seatmap-list > li > a._type-a._rotate-r ._num::before, .seatmap-list > li > a._type-a._rotate-l ._num::before {
  bottom: -47px;
}

.seatmap-list > li > a._type-a._rotate-r ._num::after, .seatmap-list > li > a._type-a._rotate-l ._num::after {
  bottom: -48px;
}

.seatmap-list > li > a._type-a._rotate-r ._num {
  margin-top: 6px;
  margin-left: -3px;
}

.seatmap-list > li > a._type-a._rotate-r ._class {
  margin-top: 4px;
  margin-left: -6px;
}

.seatmap-list > li > a._type-a._rotate-r._assigned ._status {
  margin-top: 6px;
  margin-left: 12px;
}

.seatmap-list > li > a._type-a._rotate-r._assigned._child ._status {
  margin-top: 5px;
  margin-left: 10px;
}

.seatmap-list > li > a._type-a._rotate-r._selected ._assign {
  margin-top: 9px;
  margin-right: 24px;
}

.seatmap-list > li > a._type-a._rotate-l ._num {
  margin-top: 7px;
  margin-left: -14px;
}

.seatmap-list > li > a._type-a._rotate-l ._class {
  margin-top: 3px;
  margin-left: -10px;
}

.seatmap-list > li > a._type-a._rotate-l._assigned ._status {
  margin-top: 6px;
  margin-right: 12px;
}

.seatmap-list > li > a._type-a._rotate-l._assigned._child ._status {
  margin-top: 5px;
  margin-right: 10px;
}

.seatmap-list > li > a._type-a._rotate-l._selected ._assign {
  margin-top: 9px;
  margin-left: 24px;
}

.seatmap-list > li > a._type-b {
  width: 66px;
  height: 69px;
}

.seatmap-list > li > a._type-b ._num {
  top: 13px;
  font-size: 1.5rem;
}

.seatmap-list > li > a._type-b ._num::before {
  bottom: -37px;
}

.seatmap-list > li > a._type-b ._num::after {
  bottom: -38px;
}

.seatmap-list > li > a._type-b ._class {
  top: 34px;
}

.seatmap-list > li > a._type-b._firstclass::before {
  background: url(../img/seat/seat_firstclass_002.png) no-repeat;
}

.seatmap-list > li > a._type-b._classj::before {
  background: url(../img/seat/seat_classj_002.png) no-repeat;
}

.seatmap-list > li > a._type-b._normalclass::before {
  background: url(../img/seat/seat_normalclass_002.png) no-repeat;
}

.seatmap-list > li > a._type-b._assigned::before {
  background: url(../img/seat/seat_assigned_002.png) no-repeat;
}

.seatmap-list > li > a._type-b._assigned ._status {
  top: 2px;
}

.seatmap-list > li > a._type-b._assigned._child ._status {
  top: 10px;
}

.seatmap-list > li > a._type-b._selected::before {
  background: url(../img/seat/seat_selected_002.png) no-repeat;
}

.seatmap-list > li > a._type-b._selected ._assign {
  top: 8px;
}

.seatmap-list > li > a._type-b._rotate-r, .seatmap-list > li > a._type-b._rotate-l {
  margin: -6px;
  padding: 6px;
}

.seatmap-list > li > a._type-b._rotate-r ._num::before, .seatmap-list > li > a._type-b._rotate-l ._num::before {
  bottom: -40px;
}

.seatmap-list > li > a._type-b._rotate-r ._num::after, .seatmap-list > li > a._type-b._rotate-l ._num::after {
  bottom: -41px;
}

.seatmap-list > li > a._type-b._rotate-r ._num {
  margin-top: 3px;
  margin-left: -4px;
}

.seatmap-list > li > a._type-b._rotate-r ._class {
  margin-top: 2px;
  margin-left: -3px;
}

.seatmap-list > li > a._type-b._rotate-r._assigned ._status {
  margin-top: 5px;
  margin-left: 10px;
}

.seatmap-list > li > a._type-b._rotate-r._assigned._child ._status {
  margin-top: 4px;
  margin-left: 8px;
}

.seatmap-list > li > a._type-b._rotate-r._selected ._assign {
  margin-top: 7px;
  margin-right: 17px;
}

.seatmap-list > li > a._type-b._rotate-l ._num {
  margin-top: 4px;
  margin-left: -9px;
}

.seatmap-list > li > a._type-b._rotate-l ._class {
  margin-top: 2px;
  margin-left: -8px;
}

.seatmap-list > li > a._type-b._rotate-l._assigned ._status {
  margin-top: 5px;
  margin-right: 10px;
}

.seatmap-list > li > a._type-b._rotate-l._assigned._child ._status {
  margin-top: 4px;
  margin-right: 8px;
}

.seatmap-list > li > a._type-b._rotate-l._selected ._assign {
  margin-top: 7px;
  margin-left: 17px;
}

.seatmap-list > li > a._type-c {
  width: 58px;
  height: 61px;
}

.seatmap-list > li > a._type-c ._num {
  top: 12px;
  font-size: 1.3rem;
}

.seatmap-list > li > a._type-c ._num::before {
  bottom: -33px;
}

.seatmap-list > li > a._type-c ._num::after {
  bottom: -34px;
}

.seatmap-list > li > a._type-c ._class {
  top: 29px;
}

.seatmap-list > li > a._type-c._normalclass::before {
  background: url(../img/seat/seat_normalclass_003.png) no-repeat;
}

.seatmap-list > li > a._type-c._assigned::before {
  background: url(../img/seat/seat_assigned_003.png) no-repeat;
}

.seatmap-list > li > a._type-c._assigned ._status {
  top: -2px;
}

.seatmap-list > li > a._type-c._assigned._child ._status {
  top: 4px;
}

.seatmap-list > li > a._type-c._selected::before {
  background: url(../img/seat/seat_selected_003.png) no-repeat;
}

.seatmap-list > li > a._type-c._selected ._assign {
  top: 5px;
}

.seatmap-list > li > a._type-c._rotate-r, .seatmap-list > li > a._type-c._rotate-l {
  margin: -4px;
  padding: 4px;
}

.seatmap-list > li > a._type-c._rotate-r ._num::before, .seatmap-list > li > a._type-c._rotate-l ._num::before {
  bottom: -36px;
}

.seatmap-list > li > a._type-c._rotate-r ._num::after, .seatmap-list > li > a._type-c._rotate-l ._num::after {
  bottom: -37px;
}

.seatmap-list > li > a._type-c._rotate-r ._num {
  margin-top: 1px;
  margin-left: -2px;
}

.seatmap-list > li > a._type-c._rotate-r ._class {
  margin-top: 1px;
  margin-left: -1px;
}

.seatmap-list > li > a._type-c._rotate-r._assigned ._status {
  margin-top: 5px;
  margin-left: 10px;
}

.seatmap-list > li > a._type-c._rotate-r._assigned._child ._status {
  margin-top: 4px;
  margin-left: 8px;
}

.seatmap-list > li > a._type-c._rotate-r._selected ._assign {
  margin-top: 5px;
  margin-right: 12px;
}

.seatmap-list > li > a._type-c._rotate-l ._num {
  margin-top: 2px;
  margin-left: -6px;
}

.seatmap-list > li > a._type-c._rotate-l ._class {
  margin-left: -6px;
}

.seatmap-list > li > a._type-c._rotate-l._assigned ._status {
  margin-top: 5px;
  margin-right: 10px;
}

.seatmap-list > li > a._type-c._rotate-l._assigned._child ._status {
  margin-top: 4px;
  margin-right: 8px;
}

.seatmap-list > li > a._type-c._rotate-l._selected ._assign {
  margin-top: 5px;
  margin-left: 12px;
}

.seatmap-list > li ._other, .seatmap-list > li ._priority {
  position: absolute;
  z-index: 2;
  display: flex;
}

.seatmap-list > li ._other {
  top: -5px;
  left: 0;
}

.seatmap-list > li ._priority {
  bottom: -3px;
  left: 0;
}

/* seatmap-position
----------------------------------------------- */
.seatmap-position {
  position: absolute;
  right: 0;
  left: 0;
  z-index: -1;
  display: flex;
  margin: auto;
  width: 100%;
  text-align: center;
  justify-content: space-around;
}

/* seatmap-emergency
----------------------------------------------- */
.seatmap-emergency {
  position: absolute;
  width: 100%;
}

.seatmap-emergency > li {
  position: absolute;
  padding: 12px 0;
  width: 80px;
  height: 40px;
  background: #fff;
  color: #525b6d;
  text-align: center;
  font-weight: bold;
  font-size: 1.5rem;
}

.seatmap-emergency > li ._hidden {
  position: absolute;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0;
  width: 1px;
  height: 1px;
  border: 0;
}

.seatmap-emergency > li._left {
  background-image: linear-gradient(to right, #fff, #f4f5f6);
}

.seatmap-emergency > li._left::before {
  display: inline-block;
  margin-right: 6px;
  border: 5px solid transparent;
  border-right: 8px solid #c00;
}

.seatmap-emergency > li._right {
  background-image: linear-gradient(to left, #fff, #f4f5f6);
}

.seatmap-emergency > li._right::after {
  display: inline-block;
  margin-left: 6px;
  border: 5px solid transparent;
  border-left: 8px solid #c00;
}

/* seatmap-overview
----------------------------------------------- */
.seatmap-overview {
  display: flex;
  margin-top: 15px;
  margin-bottom: 15px;
  width: 100px;
  height: 105px;
}

.seatmap-overview_hdg {
  position: absolute;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0;
  width: 1px;
  height: 1px;
  border: 0;
}

.seatmap-overview_pos {
  position: relative;
}

.seatmap-overview_pos ._image {
  position: relative;
  z-index: 1;
}

.seatmap-overview_pos ._focus {
  position: absolute;
  top: 10px;
  right: 0;
  left: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  height: 84px;
}

.seatmap-overview_pos ._focus > li {
  margin: -1px auto 0;
  width: 40px;
  border: 1px solid #ccced4;
  background-color: rgba(42, 52, 75, .05);
  color: transparent;
  flex-grow: 1;
}

.seatmap-overview_pos ._focus > li ._txt {
  position: absolute;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0;
  width: 1px;
  height: 1px;
  border: 0;
}

.seatmap-overview_pos ._focus > li._selected {
  position: relative;
  z-index: 2;
  border-color: #c00;
  background-color: rgba(42, 52, 75, 0);
  box-shadow: 0 2px 4px rgba(0, 0, 0, .2);
}

/* .seatmap-legend
----------------------------------------------- */
.seatmap-legend_hdg {
  font-weight: normal;
  font-size: 1.6rem;
}

.seatmap-legend_desc ._item {
  margin-bottom: 15px;
}

.seatmap-legend_desc ._item > dt {
  margin-top: 10px;
  margin-bottom: 10px;
  font-weight: bold;
  font-size: 1.4rem;
}

.seatmap-legend_desc ._item > dt > ._link {
  display: inline-block;
  margin-top: 5px;
}

.seatmap-legend_desc ._item > dd {
  overflow: hidden;
  margin-bottom: 5px;
  padding-top: 2px;
  padding-left: 36px;
}

.seatmap-legend_desc ._item > dd ._icon {
  float: left;
  margin-top: -2px;
  margin-left: -36px;
  width: 26px;
  vertical-align: text-top;
  text-align: center;
}

/* seatmap-notwindow
----------------------------------------------- */
.seatmap-notwindow {
  position: absolute;
  width: 100%;
}

.seatmap-notwindow > li {
  position: absolute;
}

/* seatmap-tooltip
----------------------------------------------- */
.seatmap-tooltip {
  position: absolute;
  left: 0;
  z-index: 3;
  display: none;
}

.seatmap-tooltip :last-child {
  margin-bottom: 0;
}

.seatmap-tooltip.is-show {
  display: block;
}

.seatmap-tooltip_inner {
  padding: 25px 40px;
  width: 660px;
  border: 1px solid #2a344b;
  background-color: #fff;
}

.seatmap-tooltip_inner .list-passenger > li {
  padding-right: 0;
  padding-left: 0;
}

.seatmap-tooltip_inner .list-passenger > li:last-child {
  border-bottom: 0;
}

.seatmap-tooltip_inner .list-passenger ._btn {
  margin-left: 20px;
  min-width: 150px;
}

.seatmap-tooltip_inner .list-passenger ._btn > .btn-05 {
  width: 100%;
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .1);
}

.seatmap-tooltip_inner .list-passenger ._name + ._btn, .seatmap-tooltip_inner .list-passenger ._option + ._btn {
  margin-left: auto;
}

.seatmap-tooltip_inner .lyt-btn-line {
  margin-bottom: 0;
}

.seatmap-tooltip_hdg {
  display: flex;
  font-weight: bold;
  align-items: baseline;
}

.seatmap-tooltip_hdg ._num {
  margin-right: 20px;
  font-size: 3.2rem;
}

.seatmap-tooltip_hdg ._class {
  margin-right: 35px;
  font-size: 1.6rem;
}

.seatmap-tooltip_hdg ._txt {
  margin-right: 5px;
  padding-right: 5px;
  border-right: 1px solid #ccc;
  font-weight: normal;
}

.seatmap-tooltip_hdg :last-child {
  margin-right: 0;
  padding-right: 0;
  border-right: 0;
}

.seatmap-tooltip_guide {
  margin-top: 10px;
  margin-bottom: 20px;
  padding: 15px 20px;
  background: #f8f8f8;
}

.seatmap-tooltip_guide .seatmap-tooltip_guide_hdg {
  margin-bottom: 10px;
  color: #2a344b;
  font-weight: bold;
}

.seatmap-tooltip_guide .seatmap-tooltip_guide_hdg::before {
  display: inline-block;
  margin-right: 5px;
  width: 14px;
  height: 16px;
  background: url(../img/seat/icon_guide.png) no-repeat;
}

.seatmap-tooltip_guide .seatmap-tooltip_guide_hdg_02 {
  margin-bottom: 10px;
  color: #2a344b;
  font-weight: bold;
}

.seatmap-tooltip_guide .seatmap-tooltip_guide_txt {
  margin-bottom: 15px;
  line-height: 1.6;
}

.seatmap-tooltip_guide .seatmap-tooltip_guide_txt .inPara {
  margin-left: 5px;
  padding-right: 5px;
  text-decoration: underline;
  transition: color .3s cubic-bezier(.39, .575, .565, 1);
}

.seatmap-tooltip_guide .seatmap-tooltip_guide_txt .inPara::before {
  display: inline-block;
  margin-right: 5px;
  width: 11px;
  height: 10px;
  background: url(../img/icon_blank_001.png);
}

.seatmap-tooltip_guide .seatmap-tooltip_guide_txt .inPara:hover, .seatmap-tooltip_guide .seatmap-tooltip_guide_txt .inPara:active, .seatmap-tooltip_guide .seatmap-tooltip_guide_txt .inPara:focus {
  color: #ca0000;
  text-decoration: underline;
}

.seatmap-tooltip_guide .list, .seatmap-tooltip_guide .commentList {
  margin-top: 5px;
  margin-bottom: 15px;
}

.seatmap-tooltip_btn-close {
  position: absolute;
  top: 0;
  right: 0;
  width: 22px;
  height: 22px;
}

.seatmap-tooltip_btn-close > button {
  position: absolute;
  top: 11px;
  left: -15px;
  overflow: hidden;
  padding: 0;
  width: 100%;
  height: 100%;
  border: 0;
  background: none;
  color: transparent;
}

.seatmap-tooltip_btn-close > button::before, .seatmap-tooltip_btn-close > button::after {
  position: absolute;
  background: #2a344b;
  transform: rotate(45deg);
}

.seatmap-tooltip_btn-close > button::before {
  top: 0;
  left: 10px;
  width: 2px;
  height: 22px;
}

.seatmap-tooltip_btn-close > button::after {
  top: 10px;
  left: 0;
  width: 22px;
  height: 2px;
}

/* seatmap-alert
----------------------------------------------- */
.seatmap-alert {
  z-index: 3;
}

.seatmap-alert :last-child {
  margin-bottom: 0;
}

.seatmap-alert_inner {
  padding: 40px;
  width: 660px;
  border: 1px solid #2a344b;
  background-color: #fff;
}

.seatmap-alert._attention .seatmap-alert_inner {
  background-color: #fdf5f5;
}

.seatmap-alert_inner .lyt-btn-line {
  margin-bottom: 0;
}

.seatmap-alert_hdg {
  display: flex;
  font-weight: bold;
  align-items: baseline;
}

.seatmap-alert_hdg ._txt {
  margin-bottom: 15px;
  font-weight: bold;
}

.seatmap-alert._attention .seatmap-alert_hdg ._txt {
  position: relative;
  font-size: 1.6rem;
}

.seatmap-alert_btn-close {
  position: absolute;
  top: 0;
  right: 0;
  width: 22px;
  height: 22px;
}

.seatmap-alert_btn-close > button {
  position: absolute;
  top: 11px;
  left: -15px;
  overflow: hidden;
  padding: 0;
  width: 100%;
  height: 100%;
  border: 0;
  background: none;
  color: transparent;
}

.seatmap-alert_btn-close > button::before, .seatmap-alert_btn-close > button::after {
  position: absolute;
  background: #2a344b;
  transform: rotate(45deg);
}

.seatmap-alert_btn-close > button::before {
  top: 0;
  left: 10px;
  width: 2px;
  height: 22px;
}

.seatmap-alert_btn-close > button::after {
  top: 10px;
  left: 0;
  width: 22px;
  height: 2px;
}

/* ----------------------------------------------------------------
    Javascript Off
----------------------------------------------------------------- */
/* .no-js
----------------------------------------------- */
.no-js .form-select-condition_exc {
  display: none;
}

/* ----------------------------------------------------------------
    Modal (.modal[-*])
----------------------------------------------------------------- */
/* .modal
----------------------------------------------- */
.modal_inner {
  position: relative;
  margin: 15px;
  min-height: calc(100vh - (15px * 2));
  max-width: 920px;
  height: calc(100vh - (15px * 2));
}

.modal_body {
  position: relative;
  padding: 0 0 32px;
}

.modal_body > :nth-last-child(-n+2) {
  margin-bottom: 0;
}

.modal_overlay {
  background: #000;
}

.modal_btn-close {
  position: absolute;
  top: 0;
  right: 0;
  width: 22px;
  height: 22px;
}

.modal_btn-close > button {
  position: absolute;
  top: 11px;
  left: -15px;
  overflow: hidden;
  padding: 0;
  width: 100%;
  height: 100%;
  border: 0;
  background: none;
  color: transparent;
}

.modal_btn-close > button::before, .modal_btn-close > button::after {
  position: absolute;
  background: #2a344b;
  transform: rotate(45deg);
}

.modal_btn-close > button::before {
  top: 0;
  left: 10px;
  width: 2px;
  height: 22px;
}

.modal_btn-close > button::after {
  top: 10px;
  left: 0;
  width: 22px;
  height: 2px;
}

.modal-refine {
  background: rgba(0, 0, 0, .5);
}

.modal-refine .modal_body.fn-modal_body {
  margin-bottom: 0;
  padding: 24px;
  padding-bottom: 0;
  width: 560px;
  border: 1px solid #2a344b;
  background-color: #fff;
}

.modal-refine .modal-refine-item {
  display: block;
  margin-top: 24px;
  border-bottom: 1px solid #ccc;
  color: #333;
}

.modal-refine .modal-refine-item:first-child {
  margin-top: 0;
  padding-top: 0;
}

.modal-refine .modal-refine-item_hdg {
  margin-bottom: 12px;
  color: #333;
  font-size: 1.6rem;
}

.modal-refine .modal-refine-item_grid {
  display: flex;
  padding-top: 24px;
  padding-bottom: 24px;
  justify-content: space-between;
}

.modal-refine .modal-refine-item_grid .form-select {
  color: #616161;
}

.modal-refine .modal-refine-item_grid .form-select select {
  border-radius: 3px;
}

.modal-refine .modal-refine-item_col {
  width: calc(50% - 16px);
}

.modal-refine .modal-refine-item_hdg {
  margin-bottom: 12px;
  color: #333;
  font-size: 1.6rem;
}

.modal-refine .modal-refine-btn {
  margin: 0 -24px;
  padding: 15px;
  background: #fafafa;
}

.modal-refine .modal-refine-btn .lyt-btn-line {
  margin-bottom: 0;
}

.modal-refine .modal-refine-btn .lyt-btn-line .btn {
  padding: 10px 28px;
  min-width: 160px;
}

.modal-refine .modal-refine-btn .lyt-btn-line .btn-reset {
  padding: 9px 11px;
  border: 1px solid #ccc;
  background-color: #fff;
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .1);
  color: #0f0f69;
  font-size: 1.4rem;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.modal-refine .modal-refine-btn .lyt-btn-line .btn-reset > span {
  position: relative;
  padding-left: 24px;
  font-weight: normal;
}

.modal-refine .modal-refine-btn .lyt-btn-line .btn-reset > span::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 15px;
  height: 15px;
  background-position: -123px -100px;
  background-size: 274px auto;
}

.modal-refine .modal-refine-btn .lyt-btn-line .btn-reset:hover, .modal-refine .modal-refine-btn .lyt-btn-line .btn-reset:active, .modal-refine .modal-refine-btn .lyt-btn-line .btn-reset:focus {
  opacity: .8;
}

.modal-refine .modal-refine-btn .lyt-btn-line .lyt-btn-line_inner .lyt-btn-line_inner_left {
  left: 6px;
}

.modal-lounge {
  background: rgba(0, 0, 0, .5);
}

.modal-lounge .modal_body.fn-modal_body {
  margin-bottom: 0;
  padding: 24px;
  width: 620px;
  border: 1px solid #2a344b;
  background-color: #fff;
}

.modal-lounge .modal-refine-item {
  display: block;
  margin-top: 24px;
  border-bottom: 1px solid #ccc;
  color: #333;
}

.modal-lounge .modal-refine-item:first-child {
  margin-top: 0;
  padding-top: 0;
}

.modal-lounge .modal-refine-item_hdg {
  margin-bottom: 12px;
  color: #333;
  font-size: 1.6rem;
}

.modal-lounge .modal-refine-item_grid {
  display: flex;
  padding-top: 24px;
  padding-bottom: 24px;
  justify-content: space-between;
}

.modal-lounge .modal-refine-item_grid .form-select {
  color: #616161;
}

.modal-lounge .modal-refine-item_grid .form-select select {
  border-radius: 3px;
}

.modal-lounge .modal-refine-item_col {
  width: calc(50% - 16px);
}

.modal-lounge .modal-refine-item_hdg {
  margin-bottom: 12px;
  color: #333;
  font-size: 1.6rem;
}

.modal-lounge .modal-refine-btn {
  margin: 0 -24px;
  padding: 15px;
  background: #fafafa;
}

.modal-lounge .modal-refine-btn .lyt-btn-line {
  margin-bottom: 0;
}

.modal-lounge .modal-refine-btn .lyt-btn-line .btn {
  padding: 10px 28px;
  min-width: 160px;
}

.modal-lounge .modal-refine-btn .lyt-btn-line .btn-reset {
  padding: 9px 11px;
  border: 1px solid #ccc;
  background-color: #fff;
  box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .1);
  color: #0f0f69;
  font-size: 1.4rem;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.modal-lounge .modal-refine-btn .lyt-btn-line .btn-reset > span {
  position: relative;
  padding-left: 24px;
  font-weight: normal;
}

.modal-lounge .modal-refine-btn .lyt-btn-line .btn-reset > span::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 15px;
  height: 15px;
  background-position: -123px -100px;
  background-size: 274px auto;
}

.modal-lounge .modal-refine-btn .lyt-btn-line .btn-reset:hover, .modal-lounge .modal-refine-btn .lyt-btn-line .btn-reset:active, .modal-lounge .modal-refine-btn .lyt-btn-line .btn-reset:focus {
  opacity: .8;
}

.modal-lounge .modal-refine-btn .lyt-btn-line .lyt-btn-line_inner .lyt-btn-line_inner_left {
  left: 6px;
}

.modal-alert {
  background: rgba(0, 0, 0, .5);
}

/* .modal-01
----------------------------------------------- */
.modal-01 .modal_body {
  width: 920px;
}

.modal-01 .modal_inner {
  height: auto;
}

.modal-01_content {
  padding: 20px;
  background-color: #fff;
}

.modal-01_content > :last-child {
  margin-bottom: 0;
}

.modal-01_hdg {
  margin: -20px -20px 20px;
  padding: 10px 50px 8px 20px;
  background-color: #e0e0e0;
  color: #333;
  font-weight: bold;
  font-size: 2rem;
}

/* ----------------------------------------------------------------
    Function Modal (.fn-modal[-*])
----------------------------------------------------------------- */
/* .fn-modal
----------------------------------------------- */
.fn-modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 500;
  display: none;
  -webkit-overflow-scrolling: touch;
  opacity: 0;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.fn-modal.is-modal-animate {
  will-change: opacity;
}

.fn-modal.is-modal-render {
  display: block;
  overflow-x: hidden;
  overflow-y: auto;
}

.fn-modal.is-modal-show {
  opacity: 1;
}

.fn-modal.is-modal-hide {
  transition-delay: 0s;
}

.fn-modal_overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 400;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1);
}

.fn-modal_overlay.is-overlay-animate {
  will-change: opacity;
}

.fn-modal_overlay.is-overlay-render {
  opacity: 0;
}

.fn-modal_overlay.is-overlay-show {
  opacity: .5;
}

.fn-modal_overlay.is-overlay-hide {
  transition-delay: .2s;
}

.fn-modal_inner {
  position: relative;
  display: flex;
  margin-right: auto;
  margin-left: auto;
  justify-content: center;
  align-items: center;
}

.fn-modal_body {
  box-sizing: border-box;
  transition: transform .3s cubic-bezier(.39, .575, .565, 1);
  transform: translateY(-10px);
}

.is-modal-animate .fn-modal_body {
  will-change: transform;
}

.is-modal-open .fn-modal_body {
  overflow-y: auto;
}

.is-modal-show .fn-modal_body {
  transform: translateY(0);
}

.is-modal-hide .fn-modal_body {
  transition-delay: 0s;
}

/* .is-modal-open
----------------------------------------------- */
.is-modal-open, .is-modal-open body {
  overflow: hidden;
}

/* JavaScript Off
----------------------------------------------- */
.no-js .fn-modal {
  display: none;
}

.no-js .fn-modal_inner {
  transform: none;
}

.no-js ._nojs-hidden {
  display: none !important;
}

/* ----------------------------------------------------------------
    Toggle
----------------------------------------------------------------- */
/* toggle
----------------------------------------------- */
.toggle-content.is-hide {
  display: none;
}

/* .toggle-transit-lyt
----------------------------------------------- */
.toggle-transit-lyt {
  display: flex;
  justify-content: space-between;
}

.toggle-transit-lyt .toggle-transit-lyt_item {
  padding-top: 40px;
  color: #616161;
  font-size: 1.2rem;
  flex-grow: 1;
}

.toggle-transit-lyt .toggle-transit-lyt_item_txt {
  position: relative;
  margin-bottom: 0;
  text-align: center;
}

.toggle-transit-lyt .toggle-transit-lyt_item_txt ._time {
  display: block;
  line-height: 1;
}

.toggle-transit-lyt .toggle-transit-lyt_item_txt ._place {
  display: block;
  margin-top: 5px;
  line-height: 1;
}

.toggle-transit-lyt .toggle-transit-lyt_item .icon-transit {
  display: inline-block;
  margin-top: 5px;
  padding: 2px 6px;
  border-radius: 3px;
  background-color: #6a7181;
  color: #fff;
  text-align: center;
}

.toggle-transit-lyt .toggle-transit-lyt_item._airport-depaeture, .toggle-transit-lyt .toggle-transit-lyt_item._airport-arrival, .toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-first, .toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-last {
  margin-bottom: 0;
  font-size: 1.4rem;
}

.toggle-transit-lyt .toggle-transit-lyt_item._airport-depaeture b, .toggle-transit-lyt .toggle-transit-lyt_item._airport-arrival b, .toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-first b, .toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-last b {
  color: #000;
}

.toggle-transit-lyt .toggle-transit-lyt_item._airport-depaeture, .toggle-transit-lyt .toggle-transit-lyt_item._airport-arrival {
  position: relative;
}

.toggle-transit-lyt .toggle-transit-lyt_item._airport-depaeture::before, .toggle-transit-lyt .toggle-transit-lyt_item._airport-arrival::before {
  position: absolute;
  top: 18px;
  left: 50%;
  z-index: 2;
  width: 12px;
  height: 12px;
  border: 2px solid #cecece;
  border-radius: 12px;
  background-color: #fff;
  transform: translateX(-50%);
}

.toggle-transit-lyt .toggle-transit-lyt_item._airport-depaeture::after {
  position: absolute;
  top: 24px;
  left: 100%;
  margin-left: 12px;
  width: 100%;
  height: 2px;
  background-color: #ccc;
  transform: translateX(-50%);
}

.toggle-transit-lyt .toggle-transit-lyt_item._flight {
  position: relative;
}

.toggle-transit-lyt .toggle-transit-lyt_item._flight::before {
  position: absolute;
  top: 24px;
  left: 50%;
  width: 100%;
  height: 2px;
  background-color: #ccc;
  transform: translateX(-50%);
}

.toggle-transit-lyt .toggle-transit-lyt_item._flight .toggle-transit-lyt_item_txt {
  margin-top: -8px;
}

.toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-first {
  position: relative;
  overflow: hidden;
  min-width: 50px;
}

.toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-first::before {
  position: absolute;
  top: 24px;
  left: 0;
  margin-left: -14px;
  width: 100%;
  height: 2px;
  background-color: #ccc;
  transform: translateX(-50%);
}

.toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-first::after {
  position: absolute;
  top: 24px;
  left: 100%;
  margin-left: 12px;
  width: 100%;
  height: 1px;
  border: 1px dashed #ccc;
  transform: translateX(-50%);
}

.toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-first .toggle-transit-lyt_item_txt {
  position: relative;
}

.toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-first .toggle-transit-lyt_item_txt::before {
  position: absolute;
  top: -21px;
  left: 50%;
  width: 12px;
  height: 12px;
  border: 2px solid #cecece;
  border-radius: 12px;
  background-color: #e4e4e4;
  transform: translateX(-50%);
}

.toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-first .toggle-transit-lyt_item_txt::after {
  position: absolute;
  top: -24px;
  left: 50%;
  margin-left: -22px;
  width: 32px;
  height: 19px;
  background-position: -87px -177px;
  background-size: 274px auto;
  transform: translateX(-50%);
}

.toggle-transit-lyt .toggle-transit-lyt_item._transit {
  position: relative;
  overflow: hidden;
}

.toggle-transit-lyt .toggle-transit-lyt_item._transit::before {
  position: absolute;
  top: 24px;
  left: 50%;
  width: 100%;
  height: 1px;
  border: 1px dashed #ccc;
  background-color: transparent;
  transform: translateX(-50%);
}

.toggle-transit-lyt .toggle-transit-lyt_item._transit .toggle-transit-lyt_item_txt {
  margin-top: -8px;
}

.toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-last {
  position: relative;
  overflow: hidden;
}

.toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-last::before {
  position: absolute;
  top: 24px;
  left: 0;
  margin-left: -14px;
  width: 100%;
  height: 1px;
  border: 1px dashed #ccc;
  transform: translateX(-50%);
}

.toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-last::after {
  position: absolute;
  top: 24px;
  left: 100%;
  margin-left: 12px;
  width: 100%;
  height: 2px;
  background-color: #ccc;
  transform: translateX(-50%);
}

.toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-last .toggle-transit-lyt_item_txt {
  position: relative;
}

.toggle-transit-lyt .toggle-transit-lyt_item._airport-transit-last .toggle-transit-lyt_item_txt::before {
  position: absolute;
  top: -21px;
  left: 50%;
  width: 12px;
  height: 12px;
  border: 2px solid #cecece;
  border-radius: 12px;
  background-color: #e4e4e4;
  transform: translateX(-50%);
}

.toggle-transit-lyt .toggle-transit-lyt_item._airport-arrival {
  min-width: 50px;
}

.toggle-transit-lyt .toggle-transit-lyt_item._airport-arrival::after {
  position: absolute;
  top: 16px;
  left: 50%;
  margin-left: -20px;
  width: 32px;
  height: 19px;
  background-position: -87px -177px;
  background-size: 274px auto;
  transform: translateX(-50%);
}

.toggle-transit-lyt .toggle-transit-lyt_item._airport-arrival .toggle-transit-lyt_item_txt::after {
  position: absolute;
  top: -16px;
  left: 0;
  margin-left: -20px;
  width: 100%;
  height: 2px;
  background-color: #ccc;
  transform: translateX(-50%);
}

/* ----------------------------------------------------------------
    Sticky Seatmap
----------------------------------------------------------------- */
.fn-sticky-seatmap-item {
  position: fixed;
  top: 0;
  z-index: 100;
  width: 1000px;
  background: #fff;
  transition: all ease .5s;
  transform: translateY(-100%);
}

.fn-sticky-seatmap-item.is-fixed {
  transform: translateY(0);
}

.fn-sticky-seatmap-item.is-none {
  display: none;
}

/* ----------------------------------------------------------------
    Helpers
----------------------------------------------------------------- */
/* Control Align
----------------------------------------------- */
.top {
  vertical-align: top !important;
}

.middle {
  vertical-align: middle !important;
}

.middle th, .middle td {
  vertical-align: middle !important;
}

.bottom {
  vertical-align: bottom !important;
}

.left {
  text-align: left !important;
}

.center {
  margin-right: auto !important;
  margin-left: auto !important;
  text-align: center !important;
}

.right {
  text-align: right !important;
}

/* Control Width
----------------------------------------------- */
.w-1 {
    width: 1% !important;
}
.w-2 {
    width: 2% !important;
}
.w-3 {
    width: 3% !important;
}
.w-4 {
    width: 4% !important;
}
.w-5 {
    width: 5% !important;
}
.w-6 {
    width: 6% !important;
}
.w-7 {
    width: 7% !important;
}
.w-8 {
    width: 8% !important;
}
.w-9 {
    width: 9% !important;
}
.w-10 {
    width: 10% !important;
}
.w-11 {
    width: 11% !important;
}
.w-12 {
    width: 12% !important;
}
.w-13 {
    width: 13% !important;
}
.w-14 {
    width: 14% !important;
}
.w-15 {
    width: 15% !important;
}
.w-16 {
    width: 16% !important;
}
.w-17 {
    width: 17% !important;
}
.w-18 {
    width: 18% !important;
}
.w-19 {
    width: 19% !important;
}
.w-20 {
    width: 20% !important;
}
.w-21 {
    width: 21% !important;
}
.w-22 {
    width: 22% !important;
}
.w-23 {
    width: 23% !important;
}
.w-24 {
    width: 24% !important;
}
.w-25 {
    width: 25% !important;
}
.w-26 {
    width: 26% !important;
}
.w-27 {
    width: 27% !important;
}
.w-28 {
    width: 28% !important;
}
.w-29 {
    width: 29% !important;
}
.w-30 {
    width: 30% !important;
}
.w-31 {
    width: 31% !important;
}
.w-32 {
    width: 32% !important;
}
.w-33 {
    width: 33% !important;
}
.w-34 {
    width: 34% !important;
}
.w-35 {
    width: 35% !important;
}
.w-36 {
    width: 36% !important;
}
.w-37 {
    width: 37% !important;
}
.w-38 {
    width: 38% !important;
}
.w-39 {
    width: 39% !important;
}
.w-40 {
    width: 40% !important;
}
.w-41 {
    width: 41% !important;
}
.w-42 {
    width: 42% !important;
}
.w-43 {
    width: 43% !important;
}
.w-44 {
    width: 44% !important;
}
.w-45 {
    width: 45% !important;
}
.w-46 {
    width: 46% !important;
}
.w-47 {
    width: 47% !important;
}
.w-48 {
    width: 48% !important;
}
.w-49 {
    width: 49% !important;
}
.w-50 {
    width: 50% !important;
}
.w-51 {
    width: 51% !important;
}
.w-52 {
    width: 52% !important;
}
.w-53 {
    width: 53% !important;
}
.w-54 {
    width: 54% !important;
}
.w-55 {
    width: 55% !important;
}
.w-56 {
    width: 56% !important;
}
.w-57 {
    width: 57% !important;
}
.w-58 {
    width: 58% !important;
}
.w-59 {
    width: 59% !important;
}
.w-60 {
    width: 60% !important;
}
.w-61 {
    width: 61% !important;
}
.w-62 {
    width: 62% !important;
}
.w-63 {
    width: 63% !important;
}
.w-64 {
    width: 64% !important;
}
.w-65 {
    width: 65% !important;
}
.w-66 {
    width: 66% !important;
}
.w-67 {
    width: 67% !important;
}
.w-68 {
    width: 68% !important;
}
.w-69 {
    width: 69% !important;
}
.w-70 {
    width: 70% !important;
}
.w-71 {
    width: 71% !important;
}
.w-72 {
    width: 72% !important;
}
.w-73 {
    width: 73% !important;
}
.w-74 {
    width: 74% !important;
}
.w-75 {
    width: 75% !important;
}
.w-76 {
    width: 76% !important;
}
.w-77 {
    width: 77% !important;
}
.w-78 {
    width: 78% !important;
}
.w-79 {
    width: 79% !important;
}
.w-80 {
    width: 80% !important;
}
.w-81 {
    width: 81% !important;
}
.w-82 {
    width: 82% !important;
}
.w-83 {
    width: 83% !important;
}
.w-84 {
    width: 84% !important;
}
.w-85 {
    width: 85% !important;
}
.w-86 {
    width: 86% !important;
}
.w-87 {
    width: 87% !important;
}
.w-88 {
    width: 88% !important;
}
.w-89 {
    width: 89% !important;
}
.w-90 {
    width: 90% !important;
}
.w-91 {
    width: 91% !important;
}
.w-92 {
    width: 92% !important;
}
.w-93 {
    width: 93% !important;
}
.w-94 {
    width: 94% !important;
}
.w-95 {
    width: 95% !important;
}
.w-96 {
    width: 96% !important;
}
.w-97 {
    width: 97% !important;
}
.w-98 {
    width: 98% !important;
}
.w-99 {
    width: 99% !important;
}
.w-100 {
    width: 100% !important;
}

/* Control Margin and Padding
----------------------------------------------- */
.pt-0 {
  padding-top: 0 !important;
}

.pr-0 {
  padding-right: 0 !important;
}

.pb-0 {
  padding-bottom: 0 !important;
}

.pl-0 {
  padding-left: 0 !important;
}

.mt-0 {
  margin-top: 0 !important;
}

.mr-0 {
  margin-right: 0 !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.ml-0 {
  margin-left: 0 !important;
}

.pt-5 {
  padding-top: 5px !important;
}

.pr-5 {
  padding-right: 5px !important;
}

.pb-5 {
  padding-bottom: 5px !important;
}

.pl-5 {
  padding-left: 5px !important;
}

.mt-5 {
  margin-top: 5px !important;
}

.mr-5 {
  margin-right: 5px !important;
}

.mb-5 {
  margin-bottom: 5px !important;
}

.ml-5 {
  margin-left: 5px !important;
}

.pt-10 {
  padding-top: 10px !important;
}

.pr-10 {
  padding-right: 10px !important;
}

.pb-10 {
  padding-bottom: 10px !important;
}

.pl-10 {
  padding-left: 10px !important;
}

.mt-10 {
  margin-top: 10px !important;
}

.mr-10 {
  margin-right: 10px !important;
}

.mb-10 {
  margin-bottom: 10px !important;
}

.ml-10 {
  margin-left: 10px !important;
}

.pt-15 {
  padding-top: 15px !important;
}

.pr-15 {
  padding-right: 15px !important;
}

.pb-15 {
  padding-bottom: 15px !important;
}

.pl-15 {
  padding-left: 15px !important;
}

.mt-15 {
  margin-top: 15px !important;
}

.mr-15 {
  margin-right: 15px !important;
}

.mb-15 {
  margin-bottom: 15px !important;
}

.ml-15 {
  margin-left: 15px !important;
}

.pt-20 {
  padding-top: 20px !important;
}

.pr-20 {
  padding-right: 20px !important;
}

.pb-20 {
  padding-bottom: 20px !important;
}

.pl-20 {
  padding-left: 20px !important;
}

.mt-20 {
  margin-top: 20px !important;
}

.mr-20 {
  margin-right: 20px !important;
}

.mb-20 {
  margin-bottom: 20px !important;
}

.ml-20 {
  margin-left: 20px !important;
}

.pt-25 {
  padding-top: 25px !important;
}

.pr-25 {
  padding-right: 25px !important;
}

.pb-25 {
  padding-bottom: 25px !important;
}

.pl-25 {
  padding-left: 25px !important;
}

.mt-25 {
  margin-top: 25px !important;
}

.mr-25 {
  margin-right: 25px !important;
}

.mb-25 {
  margin-bottom: 25px !important;
}

.ml-25 {
  margin-left: 25px !important;
}

.pt-30 {
  padding-top: 30px !important;
}

.pr-30 {
  padding-right: 30px !important;
}

.pb-30 {
  padding-bottom: 30px !important;
}

.pl-30 {
  padding-left: 30px !important;
}

.mt-30 {
  margin-top: 30px !important;
}

.mr-30 {
  margin-right: 30px !important;
}

.mb-30 {
  margin-bottom: 30px !important;
}

.ml-30 {
  margin-left: 30px !important;
}

.pt-35 {
  padding-top: 35px !important;
}

.pr-35 {
  padding-right: 35px !important;
}

.pb-35 {
  padding-bottom: 35px !important;
}

.pl-35 {
  padding-left: 35px !important;
}

.mt-35 {
  margin-top: 35px !important;
}

.mr-35 {
  margin-right: 35px !important;
}

.mb-35 {
  margin-bottom: 35px !important;
}

.ml-35 {
  margin-left: 35px !important;
}

.pt-40 {
  padding-top: 40px !important;
}

.pr-40 {
  padding-right: 40px !important;
}

.pb-40 {
  padding-bottom: 40px !important;
}

.pl-40 {
  padding-left: 40px !important;
}

.mt-40 {
  margin-top: 40px !important;
}

.mr-40 {
  margin-right: 40px !important;
}

.mb-40 {
  margin-bottom: 40px !important;
}

.ml-40 {
  margin-left: 40px !important;
}

.pt-45 {
  padding-top: 45px !important;
}

.pr-45 {
  padding-right: 45px !important;
}

.pb-45 {
  padding-bottom: 45px !important;
}

.pl-45 {
  padding-left: 45px !important;
}

.mt-45 {
  margin-top: 45px !important;
}

.mr-45 {
  margin-right: 45px !important;
}

.mb-45 {
  margin-bottom: 45px !important;
}

.ml-45 {
  margin-left: 45px !important;
}

.pt-50 {
  padding-top: 50px !important;
}

.pr-50 {
  padding-right: 50px !important;
}

.pb-50 {
  padding-bottom: 50px !important;
}

.pl-50 {
  padding-left: 50px !important;
}

.mt-50 {
  margin-top: 50px !important;
}

.mr-50 {
  margin-right: 50px !important;
}

.mb-50 {
  margin-bottom: 50px !important;
}

.ml-50 {
  margin-left: 50px !important;
}

/* Other
----------------------------------------------- */
.wide-none {
  display: none !important;
}

@media only screen and (max-width: 767px) {
  .wide-none {
    display: block !important;
  }
  .narrow-none {
    display: none !important;
  }
}

.js-form-add .is-none {
  display: none;
}

.js-form-add .is-block {
  display: block;
}

.js-form-add .is-added > th, .js-form-add .is-added > td {
  border-bottom: 0;
}

.fn-row-add-item.is-none {
  display: none;
}
