@charset "UTF-8";
/*!
 * v:2025/01/28 15:20:46
 */
/*
base
 */
/*
color
 */
/*
animation
 */
.onlySp,
img.onlyPc {
  display: none !important;
}

.onlySp {
  display: block;
}

img.onlySp {
  display: inline-block;
}

html {
  font-family: "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Geneva, Arial, Verdana, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 16px;
  line-height: 1.5em;
  color: #000000;
  -webkit-text-size-adjust: 100%;
}

@media (max-width: 1024px) {
  html.pc {
    font-size: 12.4878px;
  }
}

@media (max-width: 1312px) and (min-width: 1025px) {
  html.pc {
    font-size: 1.21951vw;
  }
}

@media (min-width: 1313px) {
  html.pc {
    font-size: 16px;
  }
}

@media (max-width: 1024px) {
  html.pc.w1392 {
    font-size: 11.13043px;
  }
}

@media (max-width: 1472px) and (min-width: 1025px) {
  html.pc.w1392 {
    font-size: 1.08696vw;
  }
}

@media (min-width: 1473px) {
  html.pc.w1392 {
    font-size: 16px;
  }
}

html.pc html, html.pc body {
  min-width: 1024px;
}

* {
  margin: 0;
  padding: 0;
}

a {
  color: #0074BD;
  text-decoration: none;
  transition: color 0.3s;
}

html.pc a:hover {
  color: #0067A8;
}

a img {
  border: none;
}

img,
svg {
  width: 100%;
  vertical-align: middle;
  margin: 0;
  padding: 0;
}

ol, ul {
  list-style: none;
}

html.webkit img[src$=svg] {
  transform: translate3d(0, 0, 0);
}

img:-moz-loading {
  visibility: hidden;
}

.js-svgDelayLoad, .js-svgChange {
  display: block;
  color: rgba(0, 0, 0, 0);
  position: relative;
}

.js-svgDelayLoad svg, .js-svgChange svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.js-svgDelayLoad, .js-delayLoad, .js-delayLoad_bg {
  opacity: 0;
  transition: opacity 0.3s;
}

.js-svgDelayLoad.isLoadEnd, .js-delayLoad.isLoadEnd, .js-delayLoad_bg.isLoadEnd {
  opacity: 1;
}

#g_header .g_wrap_logo, #g_nav .g_wrap_logo {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1105;
}

#g_header .g_wrap_logo .toggle, #g_nav .g_wrap_logo .toggle {
  position: absolute;
  top: .5rem;
  left: .7rem;
  width: 2.5rem;
  height: 2.5rem;
}

#g_header .g_wrap_logo .toggle a, #g_nav .g_wrap_logo .toggle a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  border-radius: 50%;
}

#g_header .g_wrap_logo .toggle a .js-ripple_effect > span, #g_nav .g_wrap_logo .toggle a .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

#g_header .g_wrap_logo .toggle a .open, #g_header .g_wrap_logo .toggle a .close, #g_nav .g_wrap_logo .toggle a .open, #g_nav .g_wrap_logo .toggle a .close {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), opacity 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  line-height: 0;
}

#g_header .g_wrap_logo .toggle a .open svg path, #g_header .g_wrap_logo .toggle a .close svg path, #g_nav .g_wrap_logo .toggle a .open svg path, #g_nav .g_wrap_logo .toggle a .close svg path {
  fill: #80868B;
  transition: fill 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

html.pc #g_header .g_wrap_logo .toggle a:hover .open svg path, html.pc #g_header .g_wrap_logo .toggle a:hover .close svg path, #g_nav .g_wrap_logo .toggle a:hover .open svg path, #g_nav .g_wrap_logo .toggle a:hover .close svg path {
  fill: #80868B;
}

#g_header .g_wrap_logo .logo, #g_nav .g_wrap_logo .logo {
  position: absolute;
  top: .3rem;
  left: 4rem;
  width: 9rem;
}

#g_header .g_wrap_logo .logo a, #g_nav .g_wrap_logo .logo a {
  position: relative;
  display: block;
}

#g_header .g_wrap_logo .logo a:before, #g_nav .g_wrap_logo .logo a:before {
  content: '';
  display: block;
  padding: 32.5% 0 0 0;
}

#g_header .g_wrap_logo .logo a > img, #g_nav .g_wrap_logo .logo a > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#g_header {
  height: 3.5em;
}

#g_header.isHide .g_header_fix_target {
  transform: translateY(-100%);
}

#g_header.isNoFixed .g_header_fix_target {
  position: absolute;
}

#g_header.isNoFixed.isHide .g_header_fix_target {
  transform: none;
}

#g_header .g_header_fix_target {
  position: fixed;
  top: 0;
  left: 0;
  height: 3.5em;
  width: 100%;
  z-index: 1100;
  background-color: #ffffff;
  -webkit-box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
  transition: transform 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  transform: translateY(0%);
}

html.pc #g_header .g_header_fix_target {
  min-width: 1024px;
}

#g_header .g_header_fix_target .g_wrap_logo {
  position: absolute;
}

#g_header .g_header_fix_target .others {
  top: .7rem;
  position: absolute;
  right: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#g_header .g_header_fix_target .others ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#g_header .g_header_fix_target .others ul li .css_button {
  border-radius: 10em;
  width: auto;
  height: 2.25rem;
  padding: 0 1rem;
  box-shadow: none;
  margin: 0 0 0 0.5rem;
}

#g_header .g_header_fix_target .others ul li .css_button.logout {
  background-color: #DDD;
  color: #000;
}

#g_header .g_header_fix_target .others ul li .css_button.simple {
  border-color: #0074BD;
}

#g_header .g_header_fix_target .others ul li a:not(.css_button) {
  border-radius: 0.25rem;
  background-color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  height: 2.25rem;
  padding: 0 1rem;
  color: #000000;
}

html.pc #g_header .g_header_fix_target .others ul li a:not(.css_button) {
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

html.pc #g_header .g_header_fix_target .others ul li a:not(.css_button):hover {
  background-color: #F2F2F2;
}

#g_header .g_header_fix_target .others .user {
  margin: 0 0 0 0.625rem;
}

#g_header .g_header_fix_target .others .user span {
  background-color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

html.pc #g_header .g_header_fix_target .others .user span:hover {
  background-color: #F2F2F2;
}

html.pc #g_header .g_header_fix_target .others .user span:hover .icon {
  opacity: 0.7;
}

#g_header .g_header_fix_target .others .user span .name {
  font-size: 0.875rem;
  line-height: 1em;
  letter-spacing: 0em;
  margin: 0 0.625rem 0 0;
}

#g_header .g_header_fix_target .others .user span .icon {
  width: 2rem;
  height: 2rem;
  overflow: hidden;
  border-radius: 50%;
  transition: opacity 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#g_header .g_header_fix_target .others .g_header_faq {
  font-weight: bold;
  color: #0074BD !important;
}

#g_header .g_header_fix_target .others .g_header_faq img {
  width: 1.1rem;
  margin-right: .3em;
}

#g_header .tab {
  position: absolute;
  top: 0;
  left: 15rem;
  height: 100%;
}

#g_header .tab ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  height: 100%;
}

#g_header .tab ul li {
  margin: 0;
  height: 100%;
  border-right: 1px solid #DDD;
}

#g_header .tab ul li:first-child {
  border-left: 1px solid #DDD;
}

#g_header .tab ul li a {
  flex-direction: column;
  padding: .2em .6em 0;
  box-sizing: border-box;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  height: 100%;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: normal;
  color: #80868B;
  background-color: #ffffff;
}

html.pc #g_header .tab ul li a {
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

html.pc #g_header .tab ul li a:hover {
  background-color: #F2F2F2;
}

#g_header .tab ul li a:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.25rem;
  background-color: #0074BD;
  opacity: 0;
  transition: opacity 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#g_header .tab ul li a .icon {
  width: 4em;
  margin-bottom: .4rem;
}

#g_header .tab ul li a .icon img {
  max-height: 1.5em;
}

#g_header .tab ul li .menu {
  color: #000;
  font-size: .8rem;
  line-height: 1;
}

#g_header .tab ul li.isActive a {
  font-weight: bold;
  color: #000000;
}

#g_header .tab ul li.isActive a:after {
  opacity: 1;
}

#g_header .nav_service_icon {
  position: absolute;
  display: block;
  top: -0.38em;
  right: -1.7em;
  padding: 0.3em 0.4em;
  transform: scale(0.5);
  background-color: #F00;
  color: #FFF;
  white-space: nowrap;
}

#g_nav {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1110;
  width: 17.5rem;
  height: 100%;
  background-color: #ffffff;
  -webkit-box-shadow: 0em 0em 1.5em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0em 1.5em 0em rgba(0, 0, 0, 0.16);
  padding-top: 5rem;
  box-sizing: border-box;
  transform: translateX(-100%);
}

#g_nav.isNavReady {
  transition: transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#g_nav.isOpen {
  transform: translateX(0);
}

#g_nav .g_wrap_logo {
  position: absolute;
}

#g_nav .g_nav_inner {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: auto;
  box-sizing: border-box;
  padding: 0 2.5rem;
}

#g_nav .g_nav_inner .box {
  padding: 1.5rem 0;
  border-bottom: 1px solid #DBDBDB;
}

#g_nav .g_nav_inner .box:last-child {
  border-bottom: none;
}

#g_nav .g_nav_inner .box a {
  color: #000000;
}

html.pc #g_nav .g_nav_inner .box a:hover {
  color: #80868B;
}

#g_nav .g_nav_inner .box h3 {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0;
}

#g_nav .g_nav_inner .box h3 + ul {
  padding-top: 1.5rem;
}

#g_nav .g_nav_inner .box ul {
  font-size: 1rem;
  line-height: 2em;
  letter-spacing: 0em;
}

#g_footer {
  position: relative;
  z-index: 1000;
  padding: 5rem 0 5.625rem;
  background-color: #333333;
}

#g_footer .g_footer_inner {
  width: 77rem;
  margin: 0 auto;
  color: #DBDBDB;
}

#g_footer .g_footer_inner a {
  color: #DBDBDB;
}

html.pc #g_footer .g_footer_inner a:hover {
  color: #F2F2F2;
}

#g_footer .g_footer_inner .wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin: 0 -0.5rem;
}

#g_footer .g_footer_inner .wrap .box {
  margin: 0 0.5rem;
  flex-shrink: 1;
  flex-grow: 1;
}

#g_footer .g_footer_inner .wrap .box h3 {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  padding: 0 0 1rem;
  border-bottom: 1px solid #DBDBDB;
}

#g_footer .g_footer_inner .wrap .box .items + h3 {
  padding-top: 2.5rem;
}

#g_footer .g_footer_inner .wrap .box ul {
  font-size: 1rem;
  line-height: 2em;
  letter-spacing: 0em;
  padding: 1rem 0 0;
}

#g_footer .g_footer_inner .sns {
  padding: 0 0 2.5rem;
}

#g_footer .g_footer_inner .sns ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#g_footer .g_footer_inner .sns ul li {
  margin: 0 1rem 0 0;
}

#g_footer .g_footer_inner .sns ul li a {
  width: 3rem;
  position: relative;
  display: block;
  transition: opacity 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#g_footer .g_footer_inner .sns ul li a:before {
  content: '';
  display: block;
  padding: 100% 0 0 0;
}

#g_footer .g_footer_inner .sns ul li a > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

html.pc #g_footer .g_footer_inner .sns ul li a:hover {
  opacity: 0.7;
}

#g_footer .g_footer_inner .copy small {
  display: block;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.exceptDomesticLogin {
  margin: 2rem 0 3rem 0;
}

.exceptDomesticLogin h1 {
  margin: 0 0 1rem 0;
}

.exceptDomesticLogin .urlTitle {
  margin: 1rem 0 0 0;
}

.exceptDomesticLogin .urlTitle a {
  margin-right: 3rem;
}

.exceptDomesticLogin .urlTitle a span {
  margin-right: 0.5rem;
}

.clickable {
  cursor: pointer;
}

.returnTop {
  position: relative;
  float: right;
  right: 1rem;
  margin-right: 0.5rem;
  width: 3.75rem;
  height: 3.75rem;
  background-repeat: no-repeat;
  background-size: contain;
  cursor: pointer;
  z-index: 10010;
}

.returnTopLowPrice {
  margin-right: 12.5rem;
}

.pointer {
  cursor: pointer;
}

.teaser {
  height: 200px;
  background-image: url("../img/1868444_l.jpg");
  background-size: cover;
  background-position: center right;
}

.statusLogin .css_button span.css_button_inner, .statusLogout .css_button span.css_button_inner {
  font-size: .8rem;
}

.statusLogin .css_button span.css_button_inner img, .statusLogout .css_button span.css_button_inner img {
  width: 1em;
  margin-right: .3em;
}

.red {
  color: red;
}

.main_inner {
  padding: 0 0 10rem;
}

.wrap_contents {
  margin: 0 auto;
  box-sizing: border-box;
}

html.pc .wrap_contents.w1392 {
  width: 87rem;
}

html.pc .wrap_contents.w1232 {
  width: 77rem;
}

html.pc .wrap_contents.w816 {
  width: 51rem;
}

html.pc .wrap_contents.w1024 {
  width: 64rem;
  margin: 0 0 0 auto;
}

.section + form > .section:first-child {
  margin-top: 2.5rem;
}

.section {
  padding-bottom: 2.5rem;
  background-color: #FAFAFA;
}

.section + .section {
  margin-top: 2.5rem;
}

html.pc .section .section_inner {
  padding: 1.5rem 0 0;
  width: 38rem;
  margin: 0 auto;
  padding: 1.5rem;
}

html.pc .section .section_inner h2 {
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
}

html.pc .section .section_inner h3 {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0;
}

html.pc .section .section_inner .mailTag {
  padding: 1.5rem 0 0 0;
  font-size: 0.8rem;
  line-height: 1em;
  letter-spacing: 0em;
  line-height: 1.5;
}

h1 {
  font-size: 2.5rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: normal;
  padding: 1.5rem 0;
}

h1 a {
  color: #000000;
}

html.pc h1 a:hover {
  color: #80868B;
}

html.pc h1 + .section {
  margin-top: 1.5rem;
}

.page_airplane_search h1 {
  font-size: 2em;
  line-height: 1.2;
  font-weight: bold;
  padding: 1rem 0;
}

h2 {
  font-size: 2rem;
  line-height: 1.5em;
  letter-spacing: 0em;
  font-weight: bold;
  padding: 1.25rem 0;
}

h2 a {
  color: #000000;
}

html.pc h2 a:hover {
  color: #80868B;
}

h3 {
  font-size: 1.5rem;
  line-height: 1.5em;
  letter-spacing: 0em;
  font-weight: bold;
  padding: 1.125rem 0;
}

h3 a {
  color: #000000;
}

html.pc h3 a:hover {
  color: #80868B;
}

h4 {
  font-size: 1.25rem;
  line-height: 1.5em;
  letter-spacing: 0em;
  font-weight: bold;
}

h4 a {
  color: #000000;
}

html.pc h4 a:hover {
  color: #80868B;
}

.css_loader {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10001;
  background: url("https://img2.tour.l-tike.com/image/common/pc/preloader.svg") no-repeat center #ffffff;
  background-size: 12.5em auto;
}

.items_css_loader {
  position: relative;
  float: left;
  left: 0;
  top: 0;
  width: 100%;
  height: 5rem;
  margin-bottom: 110rem;
  z-index: 1000;
  background: url("https://img2.tour.l-tike.com/image/common/pc/preloader.svg") no-repeat center #ffffff;
  background-size: 12.5em auto;
}

.css_button {
  display: block;
  width: 21.4375rem;
  height: 4rem;
  margin: 0 auto;
  background-color: #0074BD;
  -webkit-box-shadow: 0em 0.25em 0.5em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.25em 0.5em 0em rgba(0, 0, 0, 0.16);
  color: #ffffff;
  border-radius: 0.5rem;
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  box-sizing: border-box;
}

.css_button + .css_button {
  margin-top: 1rem;
}

.css_button span.css_button_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 100%;
  height: 100%;
  font-weight: bold;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
}

html.pc .css_button:hover {
  color: #fff;
}

html.pc .css_button:hover {
  background-color: #0067A8;
}

.css_button.pink {
  background-color: #F64E83;
}

html.pc .css_button.pink:hover {
  background-color: #DD2C64;
}

.css_button.pink.disable, .css_button.pink.disabled, .css_button.pink[readonly], .css_button.pink[disabled] {
  background-color: #fa97b6;
}

.css_button.negative {
  background-color: #80868B;
}

html.pc .css_button.negative:hover {
  background-color: #80868B;
}

.css_button.disable, .css_button.disabled, .css_button[readonly], .css_button[disabled] {
  background-color: #a8acb0;
  cursor: not-allowed;
  pointer-events: none;
}

.css_button.simple {
  width: 25rem;
  height: 2.75rem;
  box-shadow: none;
  background-color: #fff;
  border: 1px solid #DBDBDB;
  color: #0074BD;
  border-radius: 0.1875rem;
}

html.pc .css_button.simple:hover {
  color: #0074BD;
  background-color: #F2F2F2;
}

.css_button.simple.disable, .css_button.simple.disabled, .css_button.simple[readonly], .css_button.simple[disabled] {
  border-color: #DBDBDB;
  background-color: #fff;
  color: #DBDBDB;
}

.js-ripple {
  position: relative;
  overflow: hidden;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.js-ripple.css_button.simple .js-ripple_effect > span,
.js-ripple.css_radio_button .js-ripple_effect > span,
.js-ripple.css_select .js-ripple_effect > span {
  background: rgba(0, 0, 0, 0.1);
}

.js-ripple.css_radio_button input:checked + span .js-ripple_effect > span {
  background: rgba(255, 255, 255, 0.25);
}

.js-ripple .js-ripple_effect {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: transparent;
}

.js-ripple .js-ripple_effect > span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  display: block;
  width: 0;
  height: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.25);
}

.js-ripple > * {
  position: relative;
  z-index: 2;
}

.js-print {
  display: inline-block;
}

.js-print span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.js-print span:before {
  content: "";
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  margin-right: 0.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_print.svg") no-repeat center transparent;
  background-size: contain;
}

input[type=text], input[type=tel], input[type=email], input[type=password] {
  width: 100%;
  height: 3.5rem;
  padding: 0 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  border-radius: 0.5rem;
  border: 1px solid #DBDBDB;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
}

input[type=text].disabled, input[type=text][readonly], input[type=text][disabled], input[type=tel].disabled, input[type=tel][readonly], input[type=tel][disabled], input[type=email].disabled, input[type=email][readonly], input[type=email][disabled], input[type=password].disabled, input[type=password][readonly], input[type=password][disabled] {
  cursor: not-allowed;
  color: #b5b5b5;
  background-color: whitesmoke;
}

input::-webkit-input-placeholder {
  color: #DBDBDB;
}

input:-moz-placeholder {
  color: #DBDBDB;
}

input::-moz-placeholder {
  color: #DBDBDB;
}

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

button.css_button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
  border: none;
  outline: none;
}

.css_radio {
  cursor: pointer;
  display: inline-block;
}

.css_radio input {
  display: none;
}

.css_radio input:checked + span .icon:after {
  opacity: 1;
}

.css_radio input:checked + span .txt {
  font-weight: bold;
}

.css_radio > span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.css_radio > span span {
  display: block;
}

.css_radio > span span.icon {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 1.875rem;
  height: 1.875rem;
  box-sizing: border-box;
  border: 2px solid #0074BD;
  margin: 0 0.5rem 0 0;
  border-radius: 50%;
}

.css_radio > span span.icon:after {
  content: "";
  display: block;
  width: 1rem;
  height: 1rem;
  background-color: #0074BD;
  border-radius: 50%;
  opacity: 0;
  transition: opacity 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.css_radio > span span.txt {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.css_radio_button {
  cursor: pointer;
  display: block;
  border-radius: 0.5rem;
  overflow: hidden;
}

.css_radio_button input {
  display: none;
}

.css_radio_button input:checked + span {
  border-color: #0074BD;
  background-color: #0074BD;
  color: #ffffff;
}

.css_radio_button > span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 100%;
  height: 3.5rem;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  border: 1px solid #DBDBDB;
  background-color: #ffffff;
  transition: border 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  box-sizing: border-box;
  border-radius: 0.5rem;
  overflow: hidden;
}

html.pc .css_radio_button:hover > span {
  background-color: #F2F2F2;
}

html.pc .css_radio_button:hover input:checked + span {
  background-color: #0067A8;
}

.css_checkbox {
  cursor: pointer;
  display: block;
}

.css_checkbox + .css_checkbox {
  margin-top: 0.5rem;
}

.css_checkbox input {
  display: none;
}

.css_checkbox input:checked + span .icon {
  background-color: #0074BD;
  border-color: #0074BD;
}

.css_checkbox > span {
  position: relative;
  display: block;
  padding-left: 2.5rem;
  min-height: 1.875rem;
  box-sizing: border-box;
}

.css_checkbox > span span {
  display: block;
}

.css_checkbox > span span.icon {
  position: absolute;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 1.875rem;
  height: 1.875rem;
  border-radius: 0.5rem;
  background-color: #ffffff;
  border: 1px solid #DBDBDB;
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), border-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  flex-grow: 0;
  flex-shrink: 0;
  box-sizing: border-box;
}

.css_checkbox > span span.icon:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_checkbox.svg") no-repeat center transparent;
  background-size: contain;
}

.css_checkbox > span span.txt {
  padding: 0.25rem 0 0;
  font-size: 1rem;
  line-height: 1.5em;
  letter-spacing: 0em;
}

html.pc .css_checkbox:hover > span .icon {
  background-color: #F2F2F2;
}

html.pc .css_checkbox:hover input:checked + span .icon {
  background-color: #0067A8;
}

.css_select {
  position: relative;
  display: block;
  width: 100%;
  height: 3.5rem;
  border: 1px solid #DBDBDB;
  border-radius: 0.5rem;
  box-sizing: border-box;
  background-color: #ffffff;
  transition: background 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.css_select:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0.5rem;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_triangle.svg") no-repeat center transparent;
  background-size: contain;
  margin-top: -0.75rem;
}

.css_select select {
  cursor: pointer;
  position: relative;
  display: block;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 100%;
  height: 100%;
  border: none;
  box-sizing: border-box;
  padding: 0 1.625rem 0 1rem;
  border-radius: 0;
  background-color: transparent;
  outline: none;
  font-size: 1rem;
  line-height: 1.2em;
  letter-spacing: 0em;
}

.css_select select::-ms-expand {
  display: none;
}

.css_select select.disabled, .css_select select[readonly], .css_select select[disabled] {
  cursor: not-allowed;
  color: #c2c2c2;
  background-color: #DBDBDB;
}

html.pc .css_select:hover {
  background-color: #F2F2F2;
}

.wrap_form dl dt {
  position: relative;
  font-size: 1rem;
  line-height: 1.5em;
  letter-spacing: 0em;
  font-weight: bold;
  margin: 1.5rem 0 1rem;
}

.wrap_form dl dt span {
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding-left: 0.5em;
  color: #80868B;
}

.wrap_form dl dt a {
  position: absolute;
  top: 50%;
  right: 0;
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  margin-top: -0.5em;
}

.wrap_form .block_name {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.wrap_form .block_name dl {
  flex-grow: 0;
  flex-shrink: 1;
  width: 48.68421%;
}

.wrap_form .block_birthday dl dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.wrap_form .block_birthday dl dd label {
  flex-grow: 0;
  flex-shrink: 1;
}

html.pc .wrap_form .block_birthday dl dd label {
  margin-left: 1rem;
}

.wrap_form .block_birthday dl dd label:nth-of-type(1) {
  width: 20.39474%;
}

html.pc .wrap_form .block_birthday dl dd label:nth-of-type(1) {
  margin-left: 0;
}

.wrap_form .block_birthday dl dd label:nth-of-type(2) {
  width: 16.44737%;
}

.wrap_form .block_birthday dl dd label:nth-of-type(3) {
  width: 16.44737%;
}

.wrap_form .block_card_date dl dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.wrap_form .block_card_date dl dd label {
  flex-grow: 0;
  flex-shrink: 1;
  width: 24.34211%;
}

.wrap_form .block_card_date dl dd .split_text {
  flex-grow: 0;
  flex-shrink: 1;
  text-align: center;
}

html.pc .wrap_form .block_card_date dl dd .split_text {
  padding: 0 1em;
}

.wrap_form .block_radio_button_h dl dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.wrap_form .block_radio_button_h dl dd label {
  flex-grow: 0;
  flex-shrink: 1;
  width: 6rem;
}

html.pc .wrap_form .block_radio_button_h dl dd label + label {
  margin-left: 1rem;
}

.wrap_form .block_radio_button_h .block_radio_button_h_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.wrap_form .block_radio_button_h .block_radio_button_h_inner label {
  flex-grow: 0;
  flex-shrink: 1;
  width: 48.68421%;
}

.wrap_form .block_radio_button_v dl dd label + label {
  margin-top: 0.5rem;
}

.wrap_form .block_radio_button_v dl dd label span {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 0 1.5rem;
  box-sizing: border-box;
}

.input_error {
  display: block;
  font-size: 0.8125rem;
  line-height: 1.5em;
  letter-spacing: 0em;
  font-weight: bold;
  color: #F23939;
  padding: 0.3125rem 0 0;
}

input.error, .css_select.error {
  border-color: #F23939;
}

.css_radio_button.error span {
  border-color: #F23939;
}

.submit_error {
  padding: 2.5rem 0 0;
}

.submit_error p {
  box-sizing: border-box;
  border-radius: 0.5rem;
  border: 1px solid #F23939;
  color: #F23939;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0.625rem 1rem;
  background-color: #FFF8DE;
}

.section .submit_error,
.section_inner .submit_error {
  width: 100%;
}

.wrap_breadcrumb {
  background-color: #FAFAFA;
  padding: 1.25rem 0;
  white-space: nowrap;
}

.wrap_breadcrumb ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.wrap_breadcrumb ul li {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.wrap_breadcrumb ul li .icon {
  width: 0.75rem;
  position: relative;
  display: block;
  transform: rotate(-90deg);
  margin: 0 1rem;
}

.wrap_breadcrumb ul li .icon:before {
  content: '';
  display: block;
  padding: 61.66667% 0 0 0;
}

.wrap_breadcrumb ul li .icon > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.wrap_breadcrumb ul li .icon svg path {
  fill: #80868B;
}

.wrap_breadcrumb ul li:after {
  content: "";
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  transform: rotate(-90deg);
  margin: 0 0.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_arrow_gray.svg") no-repeat center transparent;
  background-size: contain;
}

.wrap_breadcrumb ul li:last-child {
  width: 60%;
}

.wrap_breadcrumb ul li:last-child:after {
  display: none;
}

.wrap_breadcrumb_microdata {
  background-color: #fafafa;
  white-space: nowrap;
  padding: 0.5em 0;
}

.wrap_breadcrumb_microdata .inner_breadcrumb {
  width: 77rem;
  margin: 0 auto;
}

.wrap_breadcrumb_microdata .breadcrumb_list {
  overflow-x: auto;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
  box-sizing: border-box;
  display: webkit-box;
  display: ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.wrap_breadcrumb_microdata .breadcrumb_item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.wrap_breadcrumb_microdata .breadcrumb_item:after {
  content: "";
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  transform: rotate(-90deg);
  margin: 0 0.2rem;
  background: url(https://img2.tour.l-tike.com/image/common/pc/icon_arrow_gray.svg) no-repeat center transparent;
  background-size: contain;
}

.wrap_breadcrumb_microdata .breadcrumb_item:last-child:after {
  display: none;
}

@media (max-width: 1232px) {
  .wrap_breadcrumb_microdata html.pc .wrap_contents.w1232 {
    width: 100%;
  }
  .wrap_breadcrumb_microdata .wrap_breadcrumb_microdata {
    padding: 0.2em 0;
  }
  .wrap_breadcrumb_microdata .inner_breadcrumb {
    width: 100%;
  }
  .wrap_breadcrumb_microdata .breadcrumb_list {
    padding-left: 1em;
  }
  .wrap_breadcrumb_microdata .breadcrumb_item {
    font-size: 12px;
  }
}

.wrap_input_step, .wrap_dp_step {
  margin: 0 auto;
  padding: 2.5rem 0 1.5rem;
}

.wrap_input_step ol, .wrap_dp_step ol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.wrap_input_step ol li, .wrap_dp_step ol li {
  position: relative;
  width: 33.33%;
  flex-shrink: 1;
  flex-grow: 1;
}

.wrap_input_step ol li .icon, .wrap_dp_step ol li .icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 3.75rem;
  height: 3.75rem;
  border-radius: 50%;
  background-color: #FAFAFA;
  margin: 0 auto;
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.wrap_input_step ol li .icon span, .wrap_dp_step ol li .icon span {
  width: 100%;
  height: 100%;
}

.wrap_input_step ol li .icon span svg path, .wrap_dp_step ol li .icon span svg path {
  fill: #DBDBDB;
  transition: fill 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.wrap_input_step ol li .txt, .wrap_dp_step ol li .txt {
  padding: 1rem 0 0;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  text-align: center;
  color: #80868B;
  transition: color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.wrap_input_step ol li:before, .wrap_dp_step ol li:before {
  content: "";
  position: absolute;
  top: 1.875rem;
  left: 50%;
  width: calc(100% - 6.875rem);
  height: 1px;
  background-color: #DBDBDB;
  margin-left: 3.4375rem;
}

.wrap_input_step ol li:last-child:before, .wrap_dp_step ol li:last-child:before {
  display: none;
}

.wrap_input_step[data-now="1"] ol li:nth-of-type(1) .icon,
.wrap_input_step[data-now="2"] ol li:nth-of-type(2) .icon,
.wrap_input_step[data-now="3"] ol li:nth-of-type(3) .icon, .wrap_dp_step[data-now="1"] ol li:nth-of-type(1) .icon,
.wrap_dp_step[data-now="2"] ol li:nth-of-type(2) .icon,
.wrap_dp_step[data-now="3"] ol li:nth-of-type(3) .icon {
  background-color: #0074BD;
}

.wrap_input_step[data-now="1"] ol li:nth-of-type(1) .icon span svg path,
.wrap_input_step[data-now="2"] ol li:nth-of-type(2) .icon span svg path,
.wrap_input_step[data-now="3"] ol li:nth-of-type(3) .icon span svg path, .wrap_dp_step[data-now="1"] ol li:nth-of-type(1) .icon span svg path,
.wrap_dp_step[data-now="2"] ol li:nth-of-type(2) .icon span svg path,
.wrap_dp_step[data-now="3"] ol li:nth-of-type(3) .icon span svg path {
  fill: #ffffff;
}

.wrap_input_step[data-now="1"] ol li:nth-of-type(1) .txt,
.wrap_input_step[data-now="2"] ol li:nth-of-type(2) .txt,
.wrap_input_step[data-now="3"] ol li:nth-of-type(3) .txt, .wrap_dp_step[data-now="1"] ol li:nth-of-type(1) .txt,
.wrap_dp_step[data-now="2"] ol li:nth-of-type(2) .txt,
.wrap_dp_step[data-now="3"] ol li:nth-of-type(3) .txt {
  font-weight: bold;
  color: #000000;
}

.wrap_input_step[data-now="2"] ol li:nth-of-type(1) .icon,
.wrap_input_step[data-now="3"] ol li:nth-of-type(1) .icon,
.wrap_input_step[data-now="3"] ol li:nth-of-type(2) .icon,
.wrap_input_step[data-now="4"] ol li:nth-of-type(1) .icon,
.wrap_input_step[data-now="4"] ol li:nth-of-type(2) .icon,
.wrap_input_step[data-now="4"] ol li:nth-of-type(3) .icon, .wrap_dp_step[data-now="2"] ol li:nth-of-type(1) .icon,
.wrap_dp_step[data-now="3"] ol li:nth-of-type(1) .icon,
.wrap_dp_step[data-now="3"] ol li:nth-of-type(2) .icon,
.wrap_dp_step[data-now="4"] ol li:nth-of-type(1) .icon,
.wrap_dp_step[data-now="4"] ol li:nth-of-type(2) .icon,
.wrap_dp_step[data-now="4"] ol li:nth-of-type(3) .icon {
  background-color: #80868B;
}

.wrap_input_step[data-now="2"] ol li:nth-of-type(1) .icon span svg path,
.wrap_input_step[data-now="3"] ol li:nth-of-type(1) .icon span svg path,
.wrap_input_step[data-now="3"] ol li:nth-of-type(2) .icon span svg path,
.wrap_input_step[data-now="4"] ol li:nth-of-type(1) .icon span svg path,
.wrap_input_step[data-now="4"] ol li:nth-of-type(2) .icon span svg path,
.wrap_input_step[data-now="4"] ol li:nth-of-type(3) .icon span svg path, .wrap_dp_step[data-now="2"] ol li:nth-of-type(1) .icon span svg path,
.wrap_dp_step[data-now="3"] ol li:nth-of-type(1) .icon span svg path,
.wrap_dp_step[data-now="3"] ol li:nth-of-type(2) .icon span svg path,
.wrap_dp_step[data-now="4"] ol li:nth-of-type(1) .icon span svg path,
.wrap_dp_step[data-now="4"] ol li:nth-of-type(2) .icon span svg path,
.wrap_dp_step[data-now="4"] ol li:nth-of-type(3) .icon span svg path {
  fill: #ffffff;
}

.flight_detail .date {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0 0 1rem;
}

.flight_detail .airline {
  padding: 0 0 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.flight_detail .airline .icon {
  flex-grow: 0;
  flex-shrink: 0;
  width: 5.8125rem;
  position: relative;
  display: block;
  background-color: #ffffff;
  border-radius: 0.125rem;
  overflow: hidden;
  margin-right: 1.48125rem;
}

.flight_detail .airline .icon:before {
  content: '';
  display: block;
  padding: 48.3871% 0 0 0;
}

.flight_detail .airline .icon > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.flight_detail .airline p {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  color: #80868B;
}

.flight_detail .wrap_time {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.flight_detail .wrap_time .from, .flight_detail .wrap_time .to {
  flex-grow: 0;
  flex-shrink: 1;
}

.flight_detail .wrap_time .from .name, .flight_detail .wrap_time .to .name {
  font-size: 1rem;
  line-height: 1.375em;
  letter-spacing: 0em;
  color: #80868B;
  padding: 0 0 0.5rem;
  font-weight: bold;
}

.flight_detail .wrap_time .from .time, .flight_detail .wrap_time .to .time {
  font-size: 2rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

.flight_detail .wrap_time .from {
  margin-right: 3.5rem;
}

.flight_detail .wrap_time .from .time {
  position: relative;
}

.flight_detail .wrap_time .from .time:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -2.5rem;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.75rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_arrow_l.svg") no-repeat center transparent;
  background-size: contain;
}

.flight_detail .type {
  padding-top: 1rem;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  color: #80868B;
}

.flight_detail .date_jal {
  font-weight: bold;
  background: lightgrey;
  padding: 0.75rem;
  display: flex;
  justify-content: space-between;
}

.flight_detail .person_total_jal {
  padding: 0.75rem 0;
}

.flight_detail .date_jal_transmit {
  font-weight: bold;
  background: lightgrey;
  display: flex;
  justify-content: space-between;
}

.flight_detail .transmit {
  background: darkslategrey;
  color: white;
  padding: 0.375rem;
}

.flight_detail .dep_date {
  padding: 0.375rem;
}

.flight_detail .transmit_line {
  color: #666;
  padding: 1.5rem 0 0;
}

.person_detail {
  font-size: 1rem;
  line-height: 1.6875em;
  letter-spacing: 0em;
  font-weight: normal;
}

.person_detail + .person_detail {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px dashed #DBDBDB;
}

.wrap_button {
  padding: 2.5rem 0;
}

.wrap_button + .wrap_button {
  padding-top: 0;
  margin-top: -1.25rem;
}

.wrap_button .section_inner {
  width: 100%;
}

.wrap_button p {
  text-align: center;
  font-weight: bold;
  font-size: 0.8125rem;
  line-height: 1.69231em;
  letter-spacing: 0em;
  color: #80868B;
  padding: 0 0 1rem;
}

.wrap_button p.attention {
  color: #F64E83;
}

.wrap_button_plan {
  padding: 0 0 1.5625rem 0;
}

.tour_back_text {
  font-size: 0.9375rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.section_price_confirm .display_top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding-bottom: 1.5rem;
}

.section_price_confirm .display_top .price_total {
  color: #F64E83;
  font-size: 2.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  font-family: Arial,sans-serif;
}

.section_price_confirm .display_top .price_total span {
  font-size: 1.6875rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.section_price_confirm .display_top .detail_toggle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.section_price_confirm .display_top .detail_toggle .txt {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.section_price_confirm .display_top .detail_toggle .txt .close {
  display: none;
}

.section_price_confirm .display_top .detail_toggle .icon {
  margin-left: 0.5rem;
  width: 0.75rem;
  height: 0.4375rem;
  transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_link.svg") no-repeat center transparent;
  background-size: contain;
}

.section_price_confirm .display_top .detail_toggle.isOpen .icon {
  transform: rotate(180deg);
}

.section_price_confirm .display_top .detail_toggle.isOpen .txt .open {
  display: none;
}

.section_price_confirm .display_top .detail_toggle.isOpen .txt .close {
  display: block;
}

.section_price_confirm .display_bottom .display_bottom_inner .wrap_price_detail {
  padding: 1.5rem 0;
  border-top: 1px solid #DBDBDB;
}

.section_price_confirm .display_bottom .display_bottom_inner .wrap_price_detail h4 {
  padding: 0 0 1.25rem;
}

.section_price_confirm .display_bottom .display_bottom_inner .pink {
  color: #F64E83;
}

.section_price_confirm .display_bottom .display_bottom_inner .price_detail {
  font-size: 1rem;
  line-height: 1.5em;
  letter-spacing: 0em;
}

.section_price_confirm .display_bottom .display_bottom_inner .price_detail + .price_detail {
  padding: 1.6875rem 0 0;
}

.section_price_confirm .display_bottom .display_bottom_inner .price_detail dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.section_price_confirm .display_bottom .display_bottom_inner .price_detail dl dt, .section_price_confirm .display_bottom .display_bottom_inner .price_detail dl dd {
  flex-grow: 1;
  flex-shrink: 1;
}

.section_price_confirm .display_bottom .display_bottom_inner .price_detail dl dd {
  text-align: right;
}

.section_price_confirm .display_bottom .display_bottom_inner .price_detail .total {
  text-align: right;
  font-weight: bold;
}

.section_price_confirm .display_bottom .display_bottom_inner .price_detail .text {
  text-align: right;
  font-weight: bold;
}

.section_price_confirm .display_bottom .display_bottom_inner .price_detail.other, .section_price_confirm .display_bottom .display_bottom_inner .price_detail.total {
  border-top: 1px solid #DBDBDB;
}

.section_price_confirm .display_bottom .display_bottom_inner .price_detail.other {
  padding: 1.25rem 0;
}

.section_price_confirm .display_bottom .display_bottom_inner .price_detail.total {
  padding: 1.5rem 0 0;
}

.section_price_confirm .display_bottom .display_bottom_inner .price_detail.total dl {
  margin: 0.5rem 0;
}

.section_price_confirm .display_bottom .display_bottom_inner .price_detail.total dt {
  font-weight: bold;
  font-size: 1.125rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.section_price_confirm .display_bottom .display_bottom_inner .price_detail.total dd {
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
  color: #000000;
  font-weight: bold;
  font-family: Arial,sans-serif;
}

.section_price_confirm .display_bottom .display_bottom_inner .price_detail.total dd.attention {
  color: #F64E83;
}

.section_price_confirm .display_bottom .display_bottom_inner .price_detail.total hr {
  border: none;
  border-top: 1px solid #DBDBDB;
}

.section_price_confirm .display_bottom .display_bottom_inner .price_detail.text {
  padding: 0.625rem 0 0;
  font-size: 1rem;
  line-height: 1.5em;
  letter-spacing: 0em;
}

.section_price_confirm .display_bottom .display_bottom_inner .price_detail.text dl dd {
  text-align: right;
  font-weight: bold;
}

.section_price_confirm .display_bottom .display_bottom_inner .note_min-number-guests {
  color: #F00;
  border: 1px solid #F00;
  padding: 0.5em;
  background-color: #FFF5F5;
  font-size: .9em;
  line-height: 1.2;
  margin: 0 0 0.5em 0;
}

.wrap_ponta_point {
  padding: 0.625rem 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.wrap_ponta_point .icon {
  width: 1.0625rem;
  position: relative;
  display: block;
  margin-right: 0.4375rem;
  flex-shrink: 0;
  flex-grow: 0;
}

.wrap_ponta_point .icon:before {
  content: '';
  display: block;
  padding: 94.11765% 0 0 0;
}

.wrap_ponta_point .icon > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.wrap_ponta_point .point {
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  color: #F08406;
}

.wrap_calender .slide_wrap {
  position: relative;
  z-index: 1;
}

.wrap_calender .slide_wrap .slide_mask {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  overflow: hidden;
}

.wrap_calender .slide_wrap .slide_inner {
  position: relative;
  left: 0;
  height: 100%;
}

.wrap_calender .slide_wrap {
  width: 48.25rem;
  margin: 0 auto;
}

.wrap_calender .slide_wrap .slide_mask {
  position: relative;
  height: auto;
}

.wrap_calender .wrap {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin: 0 auto;
}

.wrap_calender .wrap .box {
  width: 22.75rem;
  flex-grow: 0;
  flex-shrink: 0;
  margin-right: 2.75rem;
}

.wrap_calender .wrap .box h4 {
  font-weight: normal;
  font-size: 1rem;
  line-height: 1.2em;
  letter-spacing: 0em;
  text-align: center;
  padding: 0 0 1rem;
}

.wrap_calender .wrap .box ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.wrap_calender .wrap .box ul:nth-of-type(1) li {
  height: auto;
  padding: 0 0 0.75rem;
}

.wrap_calender .wrap .box ul li {
  text-align: center;
  color: #80868B;
  font-size: 0.9375rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-family: Arial,sans-serif;
  width: 3.25rem;
  height: 3.25rem;
  box-sizing: border-box;
  padding: 0 1px 1px;
  flex-shrink: 1;
  flex-grow: 1;
}

.wrap_calender .wrap .box ul li:nth-of-type(7n-6) {
  color: #F64E83;
}

.wrap_calender .wrap .box ul li:nth-of-type(7n-6) a {
  color: #F64E83;
}

.wrap_calender .wrap .box ul li:nth-of-type(7n) {
  color: #0074BD;
}

.wrap_calender .wrap .box ul li:nth-of-type(7n) a {
  color: #0074BD;
}

.wrap_calender .wrap .box ul li:nth-of-type(7n) {
  margin-right: 0;
}

.wrap_calender .wrap .box ul li > span {
  color: #DBDBDB;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 100%;
  height: 100%;
}

.wrap_calender .wrap .box ul li a {
  color: #80868B;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  border-radius: 0.25rem;
  transition: background 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.wrap_calender .wrap .box ul li a .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

.wrap_calender .wrap .box ul li a:hover {
  background-color: #F2F2F2;
}

.wrap_calender .wrap .box ul li a .inner {
  display: block;
  text-align: center;
}

.wrap_calender .wrap .box ul li a .inner span {
  display: block;
}

.wrap_calender .wrap .box ul li a .inner span.price {
  padding: 0.1875rem 0 0;
  font-size: 0.625rem;
  line-height: 1em;
  letter-spacing: 0em;
  word-break: break-all;
  transition: color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.wrap_calender .wrap .box ul li a .inner .holiday {
  color: #F64E83;
}

.wrap_calender .wrap .box ul li a[data-type=active] {
  background-color: #0074BD;
  color: #ffffff;
}

.wrap_calender .wrap .box ul li a[data-type=active] .inner span.day {
  color: #ffffff;
}

.wrap_calender .wrap .box ul li a[data-type=active] .inner span.price {
  color: #ffffff;
}

.wrap_calender .wrap .box ul li a[data-type=active]:hover {
  background-color: #0067A8;
}

.wrap_calender .wrap .box ul li a[data-type=middle] {
  background-color: #DBDBDB;
}

.wrap_calender .wrap .box ul li a[data-type=middle]:hover {
  background-color: #F2F2F2;
}

.wrap_calender .arrow {
  position: absolute;
  top: 50%;
  display: block;
  width: 3rem;
  height: 3rem;
  -webkit-box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
  border-radius: 50%;
  transition: background 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), box-shadow 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  background-color: #ffffff;
  margin-top: -1.5rem;
}

.wrap_calender .arrow .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

.wrap_calender .arrow.isDisable {
  display: none;
}

html.pc .wrap_calender .arrow:hover {
  background-color: #F2F2F2;
  -webkit-box-shadow: 0em 0.125em 0.5em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.125em 0.5em 0em rgba(0, 0, 0, 0.16);
}

.wrap_calender .arrow:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  margin: -0.75rem 0 0 -0.75rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_triangle.svg") no-repeat center transparent;
  background-size: contain;
}

.wrap_calender .arrow.prev {
  left: -4.59375rem;
}

.wrap_calender .arrow.prev:after {
  transform: rotate(90deg);
}

.wrap_calender .arrow.next {
  right: -4.59375rem;
}

.wrap_calender .arrow.next:after {
  transform: rotate(-90deg);
}

.section_tour_info .tour_subtitle {
  color: #80868B;
  font-weight: bold;
  padding: 0 0 0.5rem;
}

.section_tour_info .tour_schedule table.schedule {
  border-collapse: collapse;
  width: 100%;
  border: #d1d1d1 1px solid;
  margin: 1rem 0 1rem;
  table-layout: fixed;
}

.section_tour_info .tour_schedule table.schedule th {
  border: #d1d1d1 1px solid;
  text-align: left;
  vertical-align: top;
  background: #f4f4f4;
  font-weight: normal;
  padding: 0.5rem 1rem;
}

.section_tour_info .tour_schedule table.schedule td {
  border: #d1d1d1 1px solid;
  text-align: left;
  vertical-align: top;
  padding: 1rem;
  background: white;
}

.section_tour_info .tour_schedule table.schedule td img {
  padding-bottom: 0.3rem;
  padding-right: 0.3rem;
  width: 1.5rem;
  height: auto;
  vertical-align: middle;
}

.section_tour_info .tour_schedule table.schedule td p {
  padding: 0.5rem 0;
}

.section_tour_info .tour_schedule table.schedule td .bd_b {
  border-bottom: dotted 1px #ccc;
  margin-bottom: 0.5rem;
}

.section_tour_info .tour_schedule table.schedule td p.flight {
  display: table;
}

.section_tour_info .tour_schedule table.schedule td p.flight span {
  display: table-cell;
}

.section_tour_info .tour_schedule table.schedule td p.hotel {
  display: table;
}

.section_tour_info .tour_schedule table.schedule td p.hotel span {
  display: table-cell;
}

.section_tour_info .tour_schedule table.schedule th.date {
  width: 15%;
}

.section_tour_info .tour_schedule table.schedule th.itinerary {
  width: 75%;
}

.section_tour_info .tour_schedule table.schedule tr:nth-child(2) td .bd_b {
  border-top: dotted 1px #ccc;
  margin-top: 0.5rem;
}

.section_airline_ticket_detail .person_total {
  padding: 0 0 1rem;
}

.section_airline_ticket_detail .box + .box {
  padding: 2.5rem 0 0;
  margin: 2.5rem 0 0;
  border-top: 1px dashed #DBDBDB;
}

.section_information .attention {
  color: #F64E83;
  font-size: 0.8125rem;
  line-height: 1.69231em;
  letter-spacing: 0em;
  font-weight: bold;
  padding: 0 0 1.5625rem;
}

html.pc .section_information .attention {
  font-size: 1rem;
  line-height: 1.7em;
  letter-spacing: 0em;
  font-weight: normal;
}

.section_information p.attention {
  position: relative;
  padding-left: 1em;
}

.section_information p.attention:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "※";
}

.section_information ul.attention li {
  position: relative;
  padding: 0 0 0 1em;
}

.section_information ul.attention li:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "※";
}

.section_information .section_inner h2 {
  padding-bottom: 0;
}

.section_information .block {
  padding: 0 0 1.5rem;
  font-size: 0.875rem;
  line-height: 1.71429em;
  letter-spacing: 0em;
  color: #666;
}

.section_information .block:last-child {
  padding-bottom: 0;
}

.section_information .block h3 {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  color: #000000;
}

html.pc .section_information .block h3 {
  padding: 0;
}

.section_information .block .no_refund {
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0.3125rem 0.6875rem;
  border-radius: 0.125rem;
  display: inline-block;
  color: #fff;
  background-color: #F64E83;
  margin-top: 0.625rem;
}

.section_information .block p {
  padding: 1rem 0 0;
}

.section_information .block ul {
  padding: 1rem 0 0;
}

.section_information .block ul li {
  padding: 0 0 0 1em;
  position: relative;
}

.section_information .block ul li:before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}

.section_terms .attention {
  color: #F64E83;
  font-size: 0.8125rem;
  line-height: 1.69231em;
  letter-spacing: 0em;
  font-weight: bold;
  padding: 0 0 1.5625rem;
}

html.pc .section_terms .attention {
  font-size: 1rem;
  line-height: 1.7em;
  letter-spacing: 0em;
  font-weight: normal;
}

.section_terms p.attention {
  position: relative;
  padding-left: 1em;
}

.section_terms p.attention:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "※";
}

.section_terms ul.attention li {
  position: relative;
  padding: 0 0 0 1em;
}

.section_terms ul.attention li:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "※";
}

.section_terms .section_inner h2 {
  padding-bottom: 0;
}

.section_terms .section_inner div.block {
  padding: 0 0 1.625rem;
}

.section_terms .section_inner div.block:last-child {
  padding-bottom: 0;
}

.section_terms .section_inner div.block h3 {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0;
  color: #000000;
}

.section_terms .section_inner div.block .especially {
  color: #F64E83;
}

.section_terms .section_inner div.block p {
  font-size: 0.8125rem;
  line-height: 1.69231em;
  letter-spacing: 0em;
  padding: 0;
  color: #80868B;
}

.section_terms .section_inner div.block p.lcc_important {
  color: #F64E83;
  font-size: 0.8125rem;
  line-height: 1.69231em;
  letter-spacing: 0em;
  font-weight: bold !important;
}

html.pc .section_terms .section_inner div.block p.lcc_important {
  font-size: 1rem;
  line-height: 1.7em;
  letter-spacing: 0em;
  font-weight: normal;
}

.section_terms .item {
  border-top: 1px solid #DBDBDB;
  width: 38rem;
  margin: 0 auto;
}

.section_terms .item.especially h3 a {
  color: #F64E83;
}

html.pc .section_terms .item.especially h3 a:hover {
  color: #DD2C64;
}

.section_terms .item h3 {
  margin: 0;
  padding: 0;
  font-weight: normal;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.section_terms .item h3 a {
  position: relative;
  display: block;
  padding: 1.375rem 3.875rem 1.375rem 0;
  color: #000000;
}

.section_terms .item h3 a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 1rem;
  margin-top: -0.75rem;
  width: 1.5rem;
  height: 1.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_arrow.svg") no-repeat center transparent;
  background-size: contain;
  transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.section_terms .item h3 a.isOpen:after {
  transform: rotate(180deg);
}

.section_terms .item .detail .detail_inner {
  padding: 0 1rem 1.375rem;
}

.section_agreement_list .attention {
  color: #F64E83;
  font-size: 0.8125rem;
  line-height: 1.69231em;
  letter-spacing: 0em;
  font-weight: bold;
  padding: 0 0 1.5625rem;
}

html.pc .section_agreement_list .attention {
  font-size: 1rem;
  line-height: 1.7em;
  letter-spacing: 0em;
  font-weight: normal;
}

.section_agreement_list .section_inner h2 {
  padding-bottom: 0;
}

.section_agreement_list .item {
  width: 38rem;
  margin: 0 auto;
  padding: 0.5rem 0;
}

.section_agreement_list .item:first-child {
  padding-top: 0;
}

.section_select_payment .ex_card {
  padding-top: 1.5rem;
}

.section_select_payment .attention {
  color: #F64E83;
  font-size: 0.8125rem;
  line-height: 1.69231em;
  letter-spacing: 0em;
  font-weight: bold;
  padding: 0 0 1.5625rem;
}

html.pc .section_select_payment .attention {
  font-size: 1rem;
  line-height: 1.7em;
  letter-spacing: 0em;
  font-weight: normal;
}

.section_select_payment .note {
  font-size: 0.8125rem;
  line-height: 1.69231em;
  letter-spacing: 0em;
  color: #80868B;
  font-weight: bold;
  padding: 0.3125rem 0 0;
}

.section_select_payment .section_inner h2 {
  padding-bottom: 0;
}

.section_request_information {
  margin: 1.5rem 0;
  padding: 2.5rem 0;
  background-color: #FFF8DE;
}

html.pc .section_request_information .section_inner {
  padding: 0;
}

.section_request_information h3 {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0 0 0.625rem;
}

.section_request_complete {
  background-color: #FFF8DE;
}

html.pc .section_request_complete h1 {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 2.5rem 0 0.625rem;
  font-weight: bold;
  width: 38rem;
  margin: 0 auto;
}

html.pc .section_request_complete .section_inner {
  padding-top: 0;
}

.section_request_complete h2 {
  padding: 2.75rem 0 1.5rem;
}

.section_request_complete .number {
  font-size: 2rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

.section_request_complete .email {
  padding: 1rem 0;
}

.section_request_complete .note {
  font-size: 0.8125rem;
  line-height: 1.69231em;
  letter-spacing: 0em;
  font-weight: bold;
  color: #80868B;
  padding: 1.875rem 0 1rem;
}

.section_request_complete .note:before {
  content: "※";
}

.section_request_complete .print {
  padding: 0 0 2.5rem;
}

.section + .section_next_step {
  margin-top: 1.5rem;
}

.section_next_step {
  background-color: transparent;
}

html.pc .section_next_step .section_inner {
  padding: 0;
  width: 100%;
}

.section_next_step p {
  font-weight: bold;
  font-size: 1.25rem;
  line-height: 1.3em;
  letter-spacing: 0em;
}

.section_next_step .btn {
  padding: 2.1875rem 0 6.25rem;
  border-bottom: 1px solid #DBDBDB;
}

.page_login .login {
  position: relative;
}

.page_login .login + .section {
  margin-top: 0;
}

.page_login .login .link_pass {
  padding: 2.5rem 0 0;
  text-align: center;
}

.page_login .login .link_pass a {
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.page_login .login .css_button {
  margin-top: 2.5rem;
}

html.pc .page_login .join .section_inner {
  padding-top: 2.5rem;
}

.page_login .join .section_inner:before {
  content: "";
  display: block;
  height: 1px;
  background-color: #DBDBDB;
  margin-bottom: 2.5rem;
}

.page_input .input_detail .attention {
  color: #F64E83;
  font-size: 0.8125rem;
  line-height: 1.69231em;
  letter-spacing: 0em;
  font-weight: bold;
  padding: 0;
}

html.pc .page_input .input_detail .attention {
  font-size: 1rem;
  line-height: 1.7em;
  letter-spacing: 0em;
  font-weight: normal;
}

.page_input .input_detail p.attention {
  position: relative;
  padding-left: 1em;
}

.page_input .input_detail p.attention:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "※";
}

.page_input .input_detail ul.attention li {
  position: relative;
  padding: 0 0 0 1em;
}

.page_input .input_detail ul.attention li:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "※";
}

.page_input .input_detail .attention {
  margin-bottom: 0.5rem;
}

.page_input .input_detail .input_room_person {
  border-top: 1px solid #DBDBDB;
  padding: 2.5rem 0;
}

.page_input .input_detail .input_room_person:first-child {
  padding-top: 0;
  border-top: none;
}

.page_input .input_detail .input_room_person:last-child {
  padding-bottom: 0;
}

html.pc .page_input .input_detail .input_room_person h2 {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 1.5rem 0 0;
}

html.pc .page_input .input_detail .input_room_person h3 {
  font-size: 1.125rem;
  line-height: 1.5em;
  letter-spacing: 0em;
  padding: 0;
}

.page_input .input_detail .input_person {
  padding: 2.5rem 0;
}

.page_input .input_detail .input_person:last-child {
  padding-bottom: 0;
}

.page_input .input_detail .input_person + .input_person:not(.tab_target) {
  border-top: 1px solid #DBDBDB;
}

.page_input .input_detail .input_person h4 {
  padding-bottom: 1rem;
}

.page_input .select_options .airline {
  padding: 0 0 2.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  border-bottom: 1px solid #DBDBDB;
  margin-bottom: 2.5rem;
}

.page_input .select_options .airline .icon {
  flex-grow: 0;
  flex-shrink: 0;
  width: 5rem;
  position: relative;
  display: block;
  background-color: #ffffff;
  border-radius: 0.125rem;
  overflow: hidden;
  margin-right: 1rem;
}

.page_input .select_options .airline .icon:before {
  content: '';
  display: block;
  padding: 48.3871% 0 0 0;
}

.page_input .select_options .airline .icon > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.page_input .select_options .airline p {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

.page_input .select_options .detail .flight_detail {
  padding: 2.5rem 0;
}

.page_input .select_options .detail .option_detail + .option_detail {
  padding-top: 2.5rem;
}

.page_input .select_options .detail .option_detail h4 {
  margin-bottom: 1rem;
}

.page_input .select_options .detail .option_detail .base {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 100%;
  height: 3.5rem;
  background-color: #DBDBDB;
  border-radius: 0.5rem;
}

.page_input .select_options .detail .option_detail .base span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.page_input .select_options .detail .option_detail .base span:before {
  content: "";
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_baggage.svg") no-repeat center transparent;
  background-size: contain;
  margin-right: 0.5rem;
}

.page_input .select_options .detail .option_detail .plus {
  padding: 1rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.page_input .select_options .detail .option_detail .plus span {
  width: 1.5rem;
  position: relative;
  display: block;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_plus_black.svg") no-repeat center transparent;
  background-size: contain;
}

.page_input .select_options .detail .option_detail .plus span:before {
  content: '';
  display: block;
  padding: 100% 0 0 0;
}

.page_input .select_options .detail .option_detail .plus span > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.page_input .select_options .detail .option_detail .note {
  padding-top: 0.5rem;
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  color: #80868B;
}

.page_input .select_options .detail .option_detail .note:before {
  content: "※";
}

.page_input .coupon .wrap_form dl dt {
  margin-top: 0;
}

.page_input .coupon .css_select {
  margin-bottom: 0.5rem;
}

.page_input_nonmember .input_detail .attention {
  color: #F64E83;
  font-size: 0.8125rem;
  line-height: 1.69231em;
  letter-spacing: 0em;
  font-weight: bold;
  padding: 0;
}

html.pc .page_input_nonmember .input_detail .attention {
  font-size: 1rem;
  line-height: 1.7em;
  letter-spacing: 0em;
  font-weight: normal;
}

.page_input_nonmember .input_detail p.attention {
  position: relative;
  padding-left: 1em;
}

.page_input_nonmember .input_detail p.attention:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "※";
}

.page_input_nonmember .input_detail ul.attention li {
  position: relative;
  padding: 0 0 0 1em;
}

.page_input_nonmember .input_detail ul.attention li:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "※";
}

.page_input_nonmember .input_detail .attention {
  margin-bottom: 0.5rem;
}

.page_input_nonmember .input_detail .input_room_person {
  border-top: 1px solid #DBDBDB;
  padding: 2.5rem 0;
}

.page_input_nonmember .input_detail .input_room_person:first-child {
  padding-top: 0;
  border-top: none;
}

.page_input_nonmember .input_detail .input_room_person:last-child {
  padding-bottom: 0;
}

html.pc .page_input_nonmember .input_detail .input_room_person h2 {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 1.5rem 0 0;
}

html.pc .page_input_nonmember .input_detail .input_room_person h3 {
  font-size: 1.125rem;
  line-height: 1.5em;
  letter-spacing: 0em;
  padding: 0;
}

.page_input_nonmember .input_detail .input_person {
  padding: 2.5rem 0;
}

.page_input_nonmember .input_detail .input_person:last-child {
  padding-bottom: 0;
}

.page_input_nonmember .input_detail .input_person + .input_person:not(.tab_target) {
  border-top: 1px solid #DBDBDB;
}

.page_input_nonmember .input_detail .input_person h4 {
  padding-bottom: 1rem;
}

.page_input_nonmember .select_options .airline {
  padding: 0 0 2.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  border-bottom: 1px solid #DBDBDB;
  margin-bottom: 2.5rem;
}

.page_input_nonmember .select_options .airline .icon {
  flex-grow: 0;
  flex-shrink: 0;
  width: 5rem;
  position: relative;
  display: block;
  background-color: #ffffff;
  border-radius: 0.125rem;
  overflow: hidden;
  margin-right: 1rem;
}

.page_input_nonmember .select_options .airline .icon:before {
  content: '';
  display: block;
  padding: 48.3871% 0 0 0;
}

.page_input_nonmember .select_options .airline .icon > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.page_input_nonmember .select_options .airline p {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

.page_input_nonmember .select_options .detail .flight_detail {
  padding: 2.5rem 0;
}

.page_input_nonmember .select_options .detail .option_detail + .option_detail {
  padding-top: 2.5rem;
}

.page_input_nonmember .select_options .detail .option_detail h4 {
  margin-bottom: 1rem;
}

.page_input_nonmember .select_options .detail .option_detail .base {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 100%;
  height: 3.5rem;
  background-color: #DBDBDB;
  border-radius: 0.5rem;
}

.page_input_nonmember .select_options .detail .option_detail .base span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.page_input_nonmember .select_options .detail .option_detail .base span:before {
  content: "";
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_baggage.svg") no-repeat center transparent;
  background-size: contain;
  margin-right: 0.5rem;
}

.page_input_nonmember .select_options .detail .option_detail .plus {
  padding: 1rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.page_input_nonmember .select_options .detail .option_detail .plus span {
  width: 1.5rem;
  position: relative;
  display: block;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_plus_black.svg") no-repeat center transparent;
  background-size: contain;
}

.page_input_nonmember .select_options .detail .option_detail .plus span:before {
  content: '';
  display: block;
  padding: 100% 0 0 0;
}

.page_input_nonmember .select_options .detail .option_detail .plus span > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.page_input_nonmember .select_options .detail .option_detail .note {
  padding-top: 0.5rem;
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  color: #80868B;
}

.page_input_nonmember .select_options .detail .option_detail .note:before {
  content: "※";
}

.page_input_nonmember .coupon .wrap_form dl dt {
  margin-top: 0;
}

.page_input_nonmember .coupon .css_select {
  margin-bottom: 0.5rem;
}

.page_input_nonmember .section_chosen_ticket {
  display: none;
}

.page_input_nonmember .section_chosen_ticket .affiliate_title {
  color: #F64E83;
}

.page_input_nonmember .section_chosen_ticket .block + .block {
  margin-top: 3rem;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.page_input_nonmember .section_chosen_ticket .block > dl > dt {
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

.page_input_nonmember .section_chosen_ticket .block > dl > dd {
  width: 64rem;
}

.page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket {
  padding: 1.5rem;
  border-radius: 0.5rem;
  border: 1px solid #DBDBDB;
  background-color: #FAFAFA;
}

.page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 0 0 .5rem;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .airline_logo {
  width: 5.8125rem;
  position: relative;
  display: block;
  border-radius: 0.125rem;
  overflow: hidden;
  margin-right: .5rem;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .airline_logo:before {
  content: '';
  display: block;
  padding: 41.79104% 0 0 0;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .airline_logo > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .name {
  width: 5.75rem;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .from_to {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin-right: .5rem;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .from_to dl {
  margin-right: 3.5rem;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .from_to dl:last-child {
  margin-right: 0;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .from_to dl dt {
  color: #000;
  font-size: .8em;
  text-align: center;
  padding: 0 0 0.5rem;
  font-weight: bold;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .from_to dl dd {
  font-size: 2rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  text-align: center;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .from_to dl:first-child dd {
  position: relative;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .from_to dl:first-child dd:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -2.5rem;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.75rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_arrow_l.svg") no-repeat center transparent;
  background-size: contain;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .type {
  width: 11.75rem;
  color: #80868B;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .type .category {
  font-weight: bold;
  padding: 0 0 0.3125rem;
  text-align: center;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .type .seat {
  text-align: center;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price {
  width: 7.75rem;
  text-align: right;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .total {
  font-family: Arial,sans-serif;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  color: #F64E83;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .other {
  padding: 0.25rem 0 0.5rem;
  color: #F64E83;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .btn a {
  position: relative;
  display: inline-block;
  padding: 0 1.25rem 0 0;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .btn a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 0.75rem;
  height: 0.4375rem;
  margin-top: -0.21875rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_link.svg") no-repeat center transparent;
  background-size: contain;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .btn a .txt {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .btn a .txt .close {
  display: none;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .btn a.isOpen:after {
  transform: rotate(180deg);
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .btn a.isOpen .txt .open {
  display: none;
}

html.pc .page_input_nonmember .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .btn a.isOpen .txt .close {
  display: block;
}

.page_input_nonmember .section_chosen_ticket .block.applicationAmount {
  margin-top: 1.5rem;
  text-align: right;
  font-family: Arial,sans-serif;
  font-weight: bold;
}

.page_input_nonmember .section_chosen_ticket .block.applicationAmount .title {
  margin-right: 0.25rem;
  font-size: 1.125rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.page_input_nonmember .section_chosen_ticket .block.applicationAmount .amount {
  margin-right: 1rem;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.page_input_nonmember .section_chosen_ticket .block.lccAdditionalAmount {
  margin-top: 1.5rem;
  text-align: right;
  font-family: Arial,sans-serif;
}

.page_input_nonmember .section_chosen_ticket .block.lccAdditionalAmount .title {
  margin-right: 0.25rem;
  font-size: 1.125rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.page_input_nonmember .section_chosen_ticket .block.lccAdditionalAmount .amount {
  margin-right: 1rem;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.page_input_nonmember .section_chosen_ticket .block.payment {
  margin-top: 0;
}

.page_input_nonmember .section_chosen_ticket .button {
  padding: 5rem 0 0;
}

.page_input_nonmember .section_chosen_ticket.isComplete, .page_input_nonmember .section_chosen_ticket.selected {
  display: block;
}

.page_input_nonmember .section_chosen_ticket .applicationAmount, .page_input_nonmember .section_chosen_ticket .payment {
  display: none;
}

.page_input_nonmember .section_chosen_ticket.isComplete .applicationAmount, .page_input_nonmember .section_chosen_ticket.isComplete .payment {
  display: block;
}

.page_input_nonmember .section_chosen_ticket.isComplete .pay_methods {
  display: block;
}

.page_input_nonmember .section_chosen_ticket .going, .page_input_nonmember .section_chosen_ticket .back {
  display: none;
}

.page_input_nonmember .section_chosen_ticket .going.isComplete, .page_input_nonmember .section_chosen_ticket .back.isComplete {
  display: block;
}

.page_input_nonmember .section_chosen_ticket .back {
  margin-top: 3rem;
}

.page_input_nonmember .section_chosen_ticket .back[disabled] {
  display: none !important;
}

.page_input_nonmember .section_chosen_ticket .section_price_confirm .display_bottom .display_bottom_inner.toggle_target_inner {
  margin-top: 2rem;
}

html.pc .page_input_nonmember .section_chosen_ticket .section_price_confirm .display_bottom .display_bottom_inner .price_detail dl dt {
  flex-grow: 3;
  text-align: right;
}

.page_input_nonmember .label_sf {
  display: inline-block;
  position: relative;
  z-index: 4;
}

.page_input_nonmember .label_sf:before {
  content: "";
}

.page_input_nonmember .label_sf.static {
  float: left;
  cursor: pointer;
  border-radius: 50%;
  border: 1px solid #80868B;
  background-color: #80868B;
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  text-align: center;
  height: 1.125rem;
  width: 1.125rem;
  padding: 0.00313rem 0;
  box-sizing: border-box;
  color: #ffffff;
  margin-right: 0.5rem;
  vertical-align: middle;
  line-height: 1.4em;
}

.page_input_nonmember .label_sf.static:before {
  content: "?";
}

.page_input_nonmember .label_sf.static:hover > .sf_balloon {
  display: inline-block;
}

.page_input_nonmember .label_sf.static.isNotSelect {
  display: none;
}

.page_input_nonmember .sf_balloon {
  display: none;
  position: relative;
  text-align: left;
  top: -3.5rem;
  right: 20rem;
  margin: 1em 0;
  padding: 0.5rem;
  width: 18rem;
  color: #80868B;
  font-size: 0.875rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: normal;
  background: #ffffff;
  border: solid 1px #DBDBDB;
  box-sizing: border-box;
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.4);
  border-radius: 5px;
  z-index: 10;
}

.page_input_nonmember .sf_balloon:before {
  content: "";
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  right: -26px;
  top: 20px;
  border-right: 23px solid #dbdbdb;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  transform: rotate(180deg);
}

.page_input_nonmember .sf_balloon:after {
  content: "";
  position: absolute;
  right: -24px;
  top: 20px;
  border-right: 24px solid #ffff;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  transform: rotate(180deg);
  z-index: 9;
}

.page_input_nonmember .sf_balloon p {
  font-size: 0.875rem;
  line-height: 1.71429em;
  letter-spacing: 0em;
  color: #80868B;
}

.page_input_nonmember .label_kind {
  display: block;
  border-radius: 0.125rem;
  border: 1px solid #DBDBDB;
  background-color: #ffffff;
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  text-align: center;
  width: 4.625rem;
  padding: 0.25rem 0;
  box-sizing: border-box;
  color: #80868B;
}

.page_input_nonmember .label_kind:before {
  content: "変更可";
}

.page_input_nonmember .label_kind.static:before {
  content: "変更不可";
}

.page_input_confirm #inner_loader {
  display: none;
}

html.pc .page_input_complete .section_request_complete + .section_inner,
html.pc .page_input_complete .section_next_step + .section_inner {
  padding-left: 0;
  padding-right: 0;
}

html.pc .page_input_complete .section_request_complete + .section_inner h2,
html.pc .page_input_complete .section_next_step + .section_inner h2 {
  font-size: 2.5rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: normal;
  padding: 1.5rem 0;
}

html.pc .page_input_complete .section_request_complete + .section_inner h2 {
  margin: 1.5rem 0 0;
}

.page_input_error .section {
  background-color: transparent;
}

.page_input_error .section .section_inner p + p {
  padding-top: 2em;
}

html.pc .pick_modal {
  position: absolute;
  top: 0;
  left: 0;
  display: none;
  opacity: 0;
  z-index: 1000;
  background-color: #ffffff;
  -webkit-box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
  padding: 1.5rem;
  border-radius: 0.5rem;
  box-sizing: border-box;
}

html.pc .pick_modal[data-id=area], html.pc .pick_modal[data-id=round] {
  width: 8rem;
  padding: 1rem 0;
  margin: -0.5rem 0 0 -0.5rem;
}

html.pc .pick_modal[data-id=area] ul li a, html.pc .pick_modal[data-id=round] ul li a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  height: 2.5rem;
  color: #000000;
  transition: background 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

html.pc .pick_modal[data-id=area] ul li a .js-ripple_effect > span, html.pc .pick_modal[data-id=round] ul li a .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

html.pc .pick_modal[data-id=area] ul li a:before, html.pc .pick_modal[data-id=round] ul li a:before {
  content: "";
  display: block;
  margin: 0 1.7125rem 0 1.6875rem;
  width: 1.09937rem;
  height: 0.83813rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_check.svg") no-repeat center transparent;
  background-size: contain;
  opacity: 0;
  transition: opacity 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

html.pc .pick_modal[data-id=area] ul li a:hover, html.pc .pick_modal[data-id=round] ul li a:hover {
  background-color: #F2F2F2;
}

html.pc .pick_modal[data-id=area] ul li.isActive a:before, html.pc .pick_modal[data-id=round] ul li.isActive a:before {
  opacity: 1;
}

html.pc .pick_modal[data-id=departure], html.pc .pick_modal[data-id=arrive] {
  width: 49.875rem;
  min-height: 8.25rem;
  max-height: 31.25rem;
  margin: -1.5rem 0 0 -1.5rem;
  overflow: auto;
  padding-bottom: 0;
}

html.pc .pick_modal[data-id=departure] .wrap, html.pc .pick_modal[data-id=arrive] .wrap {
  padding-bottom: 1.5rem;
}

html.pc .pick_modal[data-id=departure] .block h3, html.pc .pick_modal[data-id=arrive] .block h3 {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 1rem 0;
}

html.pc .pick_modal[data-id=departure] .block ul, html.pc .pick_modal[data-id=arrive] .block ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

html.pc .pick_modal[data-id=departure] .block ul li, html.pc .pick_modal[data-id=arrive] .block ul li {
  width: 15rem;
  height: 2.75rem;
}

html.pc .pick_modal[data-id=departure] .block ul li a, html.pc .pick_modal[data-id=arrive] .block ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 100%;
  height: 100%;
  border-radius: 0.5rem;
  color: #000000;
  transition: background 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  box-sizing: border-box;
  padding: 0.875rem 1rem;
}

html.pc .pick_modal[data-id=departure] .block ul li a .js-ripple_effect > span, html.pc .pick_modal[data-id=arrive] .block ul li a .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

html.pc .pick_modal[data-id=departure] .block ul li a:hover, html.pc .pick_modal[data-id=departure] .block ul li a.isActive, html.pc .pick_modal[data-id=arrive] .block ul li a:hover, html.pc .pick_modal[data-id=arrive] .block ul li a.isActive {
  background-color: #F2F2F2;
}

html.pc .pick_modal[data-id=passengers] {
  width: 21rem;
  margin: -1.5rem -1.5rem 0 0;
}

html.pc .pick_modal[data-id=passengers] dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

html.pc .pick_modal[data-id=passengers] dl + dl {
  margin-top: 1rem;
}

html.pc .pick_modal[data-id=passengers] dl dt {
  height: 2.75rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  font-weight: bold;
}

html.pc .pick_modal[data-id=passengers] dl dt span {
  font-size: 0.875rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: normal;
}

html.pc .pick_modal[data-id=passengers] dl dd {
  width: 9.25rem;
}

html.pc .pick_modal[data-id=passengers] dl dd .css_select + .css_select {
  margin-top: 1rem;
}

html.pc .pick_modal[data-id=passengers] dl.count dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

html.pc .pick_modal[data-id=passengers] dl.count dd a {
  display: block;
  width: 2.75rem;
  height: 2.75rem;
  background: no-repeat center #ffffff;
  background-size: 1.5rem;
  padding: 0;
  border-radius: 50%;
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  border: 1px solid #DBDBDB;
}

html.pc .pick_modal[data-id=passengers] dl.count dd a .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

html.pc .pick_modal[data-id=passengers] dl.count dd a.minus {
  background-image: url(https://img2.tour.l-tike.com/image/common/pc/icon_minus.svg);
}

html.pc .pick_modal[data-id=passengers] dl.count dd a.plus {
  background-image: url(https://img2.tour.l-tike.com/image/common/pc/icon_plus.svg);
}

html.pc .pick_modal[data-id=passengers] dl.count dd a:hover {
  background-color: #F2F2F2;
}

html.pc .pick_modal[data-id=passengers] dl.count dd .n {
  font-family: Arial,sans-serif;
  font-size: 1.375rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  color: #000000;
}

html.pc .pick_modal[data-id=passengers] .years_old_template, html.pc .pick_modal[data-id=passengers] .years_old_select_template {
  display: none;
}

html.pc .pick_modal[data-id=passengers] .child_years_old {
  margin-top: 1rem;
}

html.pc .pick_modal[data-id=passengers] .buttons {
  padding: 2.5rem 0 0;
}

html.pc .pick_modal[data-id=passengers] .buttons ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

html.pc .pick_modal[data-id=passengers] .buttons ul li:first-child {
  margin-right: 1.5rem;
}

html.pc .pick_modal[data-id=passengers] .buttons ul li a {
  transition: color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

html.pc .pick_modal[data-id=passengers] .buttons ul li a.negative {
  color: #80868B;
}

html.pc .pick_modal[data-id=passengers] .buttons ul li a.negative:hover {
  color: #80868B;
}

html.pc .pick_modal[data-id*=calender] {
  width: 60.5625rem;
  margin: -1.5rem 0 0 -37.5625rem;
}

html.pc .pick_modal[data-id*=calender] h3 {
  padding: 1rem 0;
  margin: 0 0 2.125rem;
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
}

html.pc .pick_modal[data-id*=calender] h3 span:nth-of-type(2) {
  display: none;
}

html.pc .pick_modal[data-id*=calender] .now_selected {
  position: absolute;
  top: 1.5rem;
  right: 1.5rem;
  width: 18.5rem;
  height: 3.5rem;
  background-color: #fff;
  z-index: 10;
  margin-top: -1px;
  border-radius: 0.5rem;
  border: 1px solid #DBDBDB;
  padding: 0 0 0 3.4375rem;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

html.pc .pick_modal[data-id*=calender] .now_selected:before {
  content: "";
  position: absolute;
  top: 50%;
  display: block;
  background: no-repeat center transparent;
  background-size: contain;
  z-index: 2;
  left: 1rem;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.75rem;
  background-image: url(https://img2.tour.l-tike.com/image/common/pc/icon_calendar.svg);
}

html.pc .pick_modal[data-id*=calender] .now_selected div {
  position: relative;
  font-family: Arial,sans-serif;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 5.625rem;
  height: 100%;
  box-sizing: border-box;
  padding: 0.3125rem 0;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
}

html.pc .pick_modal[data-id*=calender] .now_selected div:first-child {
  position: relative;
  margin: 0 1.875rem 0 0;
}

html.pc .pick_modal[data-id*=calender] .now_selected div:first-child:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -0.875rem;
  display: block;
  width: 0.5rem;
  border-bottom: 1px solid #80868B;
}

html.pc .pick_modal[data-id*=calender].from h3 span:nth-of-type(1) {
  display: block;
}

html.pc .pick_modal[data-id*=calender].from h3 span:nth-of-type(2) {
  display: none;
}

html.pc .pick_modal[data-id*=calender].to h3 span:nth-of-type(1) {
  display: none;
}

html.pc .pick_modal[data-id*=calender].to h3 span:nth-of-type(2) {
  display: block;
}

html.pc .pick_modal[data-id*=calender] .slide_wrap .slide_mask {
  position: relative;
  height: auto;
}

html.pc .pick_modal[data-id=simple_calender] {
  margin: 0;
  z-index: 10101;
}

html.pc .pick_modal .button {
  padding: 2.5rem 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

html.pc .pick_modal .button a {
  width: 7.0625rem;
  height: 2.75rem;
  border-radius: 0.1875rem;
  margin: 0;
}

.toggle_target {
  overflow: hidden;
  height: 0;
}

.toggle_target[data-toggle_defaultopen] {
  height: auto;
}

.tab_target {
  display: none;
}

.wrap_breadcrumb + .deprecated_terminal {
  margin-top: 1.5rem;
}

.deprecated_terminal {
  padding: 1.25em;
  box-sizing: border-box;
  border-radius: 0.5rem;
  border: 1px solid #F23939;
  background-color: #FFF8DE;
}

html.pc .deprecated_terminal:first-child {
  margin-top: 2.5rem;
}

.deprecated_terminal p + p {
  padding-top: 1.5em;
}

#inner_loader {
  background-color: rgba(255, 255, 255, 0.8);
  z-index: 100;
}

#submit_loader {
  display: none;
  background-color: rgba(255, 255, 255, 0.5);
  z-index: 1101;
}

#translucent_loader {
  background-color: rgba(255, 255, 255, 0.8);
  z-index: 100;
}

.alert_window {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10000;
  background-color: rgba(0, 0, 0, 0.5);
  overflow: auto;
}

.alert_window .alert_window_inner {
  position: relative;
}

.alert_window .bg {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}

.alert_window .window {
  position: relative;
  width: 38rem;
  padding: 2.5rem;
  box-sizing: border-box;
  margin: 0 auto;
  background-color: #fff;
  border-radius: 0.5rem;
  -webkit-box-shadow: 0em 0.25em 1.5em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.25em 1.5em 0em rgba(0, 0, 0, 0.16);
}

.alert_window .window .title {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  padding: 0 0 1rem;
}

.alert_window .window .text {
  padding: 0 0 1rem;
}

.alert_window .window .buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  text-align: right;
}

.alert_window .window .buttons a {
  display: block;
  margin: 0 0 0 3.125rem;
}

.alert_window .window .buttons a.positive {
  font-weight: bold;
}

.css_tabnav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  border-bottom: 1px solid #DBDBDB;
}

.css_tabnav ul li {
  padding: 0 2.5rem 0 0;
}

.css_tabnav ul li a {
  position: relative;
  display: block;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 1rem 0;
  color: #80868B;
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

html.pc .css_tabnav ul li a:hover {
  color: #80868B;
  background-color: #F2F2F2;
}

.css_tabnav ul li a:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.25rem;
  background-color: #0074BD;
  opacity: 0;
}

.css_tabnav ul li.isActive a {
  font-weight: bold;
  color: #000000;
}

html.pc .css_tabnav ul li.isActive a:hover {
  color: #000000;
  background-color: #F2F2F2;
}

.css_tabnav ul li.isActive a:after {
  opacity: 1;
}

.css_slider .slider_body {
  position: relative;
  margin: 0 0.8125rem;
}

.css_slider .slider_body .bg {
  height: 0.375rem;
  background-color: #DBDBDB;
  border-radius: 0.1875rem;
  overflow: hidden;
}

.css_slider .slider_body .bg .bar {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 100%;
  background-color: #0074BD;
}

.css_slider .slider_body .point {
  position: absolute;
  top: 50%;
  cursor: pointer;
}

.css_slider .slider_body .point span {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 1.625rem;
  height: 1.625rem;
  margin: -0.8125rem 0 0 -0.8125rem;
  border-radius: 50%;
  background-color: #0074BD;
  border: 2px solid #ffffff;
  -webkit-box-shadow: 0em 0.25em 0.5em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.25em 0.5em 0em rgba(0, 0, 0, 0.16);
  box-sizing: border-box;
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

html.pc .css_slider .slider_body .point:hover:after {
  background-color: #0067A8;
}

.css_slider .slider_body .point.a {
  left: 0;
}

.css_slider .slider_body .point.b {
  right: 0;
}

.css_slider .value {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  color: #0074BD;
  padding: 1.25rem 0 0;
}

.css_slider .value div {
  width: 50%;
  flex-grow: 1;
  flex-shrink: 1;
}

.css_slider .value div.a {
  text-align: left;
}

.css_slider .value div.b {
  text-align: right;
}

.css_star {
  width: 8.4375rem;
  position: relative;
  display: inline-block;
}

.css_star:before {
  content: '';
  display: block;
  padding: 20% 0 0 0;
}

.css_star > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.css_star:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_star_off.svg") repeat left top transparent;
  background-size: auto 100%;
}

.css_star:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  width: 0;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_star_on.svg") repeat left top transparent;
  background-size: auto 100%;
}

.css_star[data-val="5"]:after {
  width: 100%;
}

.css_star[data-val="4.5"]:after {
  width: 90%;
}

.css_star[data-val="4"]:after {
  width: 80%;
}

.css_star[data-val="3.5"]:after {
  width: 70%;
}

.css_star[data-val="3"]:after {
  width: 60%;
}

.css_star[data-val="2.5"]:after {
  width: 50%;
}

.css_star[data-val="2"]:after {
  width: 40%;
}

.css_star[data-val="1.5"]:after {
  width: 30%;
}

.css_star[data-val="1"]:after {
  width: 20%;
}

.css_star[data-val="0.5"]:after {
  width: 10%;
}

.css_balloon {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-box-shadow: 0em 0.125em 1em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.125em 1em 0em rgba(0, 0, 0, 0.16);
  border-radius: 0.5rem;
  background-color: #fff;
  box-sizing: border-box;
  border: 1px solid #DBDBDB;
  padding: 1rem;
  width: 18.75rem;
  margin: 0.9375rem 0 0 -9.375rem;
  z-index: 1000;
}

.css_balloon .arrow {
  position: absolute;
  top: -0.625rem;
  left: 50%;
}

.css_balloon .arrow:before, .css_balloon .arrow:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
}

.css_balloon .arrow:before {
  margin-left: -0.6875rem;
  border-width: 0 0.6875rem 0.625rem 0.6875rem;
  border-color: transparent transparent #DBDBDB transparent;
}

.css_balloon .arrow:after {
  top: 0.0625rem;
  margin-left: -0.625rem;
  border-width: 0 0.625rem 0.625rem 0.625rem;
  border-color: transparent transparent #ffffff transparent;
}

.css_balloon.tripadvisor {
  width: 300px;
  height: 350px;
  padding: 16px;
  margin-top: 15px;
  margin-left: -150px;
}

.css_balloon.tripadvisor .arrow:before {
  margin-left: -11px;
  border-width: 0 11px 11px 11px;
}

.css_balloon.tripadvisor .arrow:after {
  top: 1px;
  margin-left: -10px;
  border-width: 0 10px 10px 10px;
}

.css_balloon.tripadvisor iframe {
  width: 100%;
  height: 100%;
}

.css_balloon.cancel_policy {
  margin-top: 0;
  margin-bottom: 0.9375rem;
  margin-left: -14.375rem;
}

.css_balloon.cancel_policy .arrow {
  top: auto;
  bottom: -0.625rem;
  margin-left: 5rem;
}

.css_balloon.cancel_policy .arrow:before, .css_balloon.cancel_policy .arrow:after {
  top: auto;
  transform: rotate(180deg);
}

.css_balloon.cancel_policy .arrow:before {
  bottom: 0;
}

.css_balloon.cancel_policy .arrow:after {
  bottom: 0.0625rem;
}

.css_balloon.cancel_policy p {
  font-size: 0.875rem;
  line-height: 1.71429em;
  letter-spacing: 0em;
  color: #80868B;
}

.wrap_copy {
  text-align: right;
  padding: 1rem 0;
  font-size: 0.875rem;
  line-height: 1em;
  letter-spacing: 0em;
  color: #80868B;
}

.wrap_slide_gallery_free_frame {
  padding: 5rem 0 0;
}

.wrap_slide_gallery_free_frame h2 {
  padding: 1.5rem 0;
}

.wrap_slide_gallery_free_frame .slide_wrap {
  position: relative;
  z-index: 1;
}

.wrap_slide_gallery_free_frame .slide_wrap .slide_mask {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  overflow: hidden;
}

.wrap_slide_gallery_free_frame .slide_wrap .slide_inner {
  position: relative;
  left: 0;
  height: 100%;
}

.wrap_slide_gallery_free_frame .slide_wrap .slide_mask {
  position: relative;
  height: auto;
}

.wrap_slide_gallery_free_frame .slide_wrap .slide_mask .slide_inner {
  height: auto;
}

html.pc .wrap_slide_gallery_free_frame .slide_wrap .slide_mask .slide_inner {
  margin-left: -0.5rem;
  transform: translate3d(0, 0, 0);
}

.wrap_slide_gallery_free_frame a {
  display: block;
  transition: opacity 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.wrap_slide_gallery_free_frame a .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

.wrap_slide_gallery_free_frame a .js-ripple_effect {
  z-index: 5;
}

html.pc .wrap_slide_gallery_free_frame a:hover {
  opacity: 0.7;
}

.wrap_slide_gallery_free_frame ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  will-change: transfrom;
}

.wrap_slide_gallery_free_frame ul li {
  flex-shrink: 0;
  flex-grow: 0;
  padding: 0 0.5rem;
}

.wrap_slide_gallery_free_frame .arrow {
  position: absolute;
  top: 50%;
  display: block;
  width: 2.375rem;
  height: 2.375rem;
  box-sizing: border-box;
  background-color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  color: #000000;
  -webkit-box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
  margin: -1.1875rem 0 0;
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), box-shadow 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  z-index: 5;
  border-radius: 50%;
}

html.pc .wrap_slide_gallery_free_frame .arrow .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

html.pc .wrap_slide_gallery_free_frame .arrow:hover {
  opacity: 1;
  background-color: #F2F2F2;
}

.wrap_slide_gallery_free_frame .arrow.isDisable {
  background-color: #FAFAFA;
  -webkit-box-shadow: 0em 0em 0em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0em 0em 0em rgba(0, 0, 0, 0.16);
}

.wrap_slide_gallery_free_frame .arrow.isDisable:after {
  opacity: 0.1;
}

.wrap_slide_gallery_free_frame .arrow:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 1.3125rem;
  height: 1.3125rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_arrow_gray.svg") no-repeat center transparent;
  background-size: contain;
  margin: -0.65625rem 0 0 -0.65625rem;
  transition: opacity 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.wrap_slide_gallery_free_frame .arrow.prev {
  left: -0.6875rem;
}

.wrap_slide_gallery_free_frame .arrow.prev:after {
  transform: rotate(90deg);
}

.wrap_slide_gallery_free_frame .arrow.next {
  right: -0.6875rem;
}

.wrap_slide_gallery_free_frame .arrow.next:after {
  transform: rotate(-90deg);
}

.wrap_slide_gallery_free_frame.type1 ul li a {
  width: 28.3125rem;
  position: relative;
  display: block;
  border-radius: 0.625rem;
  overflow: hidden;
}

.wrap_slide_gallery_free_frame.type1 ul li a:before {
  content: '';
  display: block;
  padding: 53.42163% 0 0 0;
}

.wrap_slide_gallery_free_frame.type1 ul li a > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.wrap_slide_gallery_free_frame.type2 ul li a {
  width: 21rem;
  height: 100%;
  color: #000000;
}

.wrap_slide_gallery_free_frame.type2 ul li a .js-ripple_effect {
  border-radius: 0.625rem;
}

.wrap_slide_gallery_free_frame.type2 ul li a .img {
  position: relative;
  display: block;
  border-radius: 0.625rem;
  overflow: hidden;
}

.wrap_slide_gallery_free_frame.type2 ul li a .img:before {
  content: '';
  display: block;
  padding: 72.02381% 0 0 0;
}

.wrap_slide_gallery_free_frame.type2 ul li a .img > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.wrap_slide_gallery_free_frame.type2 ul li a h3 {
  font-size: 1rem;
  line-height: 1.875em;
  letter-spacing: 0em;
  padding: 1rem 0;
}

.wrap_slide_gallery_free_frame.type2 ul li a p {
  font-size: 1rem;
  line-height: 1.5em;
  letter-spacing: 0em;
}

.wrap_slide_gallery_free_frame.type2 .arrow {
  top: 7.5625rem;
}

.wrap_slide_gallery_free_frame.type3 ul li a {
  width: 28.3125rem;
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 0.625rem;
}

.wrap_slide_gallery_free_frame.type3 ul li a:before {
  content: '';
  display: block;
  padding: 53.42163% 0 0 0;
}

.wrap_slide_gallery_free_frame.type3 ul li a > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.wrap_slide_gallery_free_frame.type3 ul li a .img {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}

.wrap_slide_gallery_free_frame.type3 ul li a .img:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,000000+100&0+0,0+50,0.5+100 */
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.5) 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.wrap_slide_gallery_free_frame.type3 ul li a h3 {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 1rem 1.5rem;
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  color: #fff;
}

.wrap_notification {
  padding: 2.5rem 0 0;
}

.wrap_notification .inner {
  width: 51rem;
  background-color: #FFF8DE;
  padding: 1rem;
  border-radius: 0.5rem;
  margin: 0 auto;
  box-sizing: border-box;
}

.wrap_notification .inner ul {
  border-radius: 0.25rem;
  border: 1px solid #DBDBDB;
  overflow: hidden;
}

.wrap_notification .inner ul li:last-child a {
  border-bottom: none;
}

.wrap_notification .inner ul li a {
  position: relative;
  display: block;
  padding: 1rem 3.5rem 1rem 1rem;
  background-color: #ffffff;
  border-bottom: 1px solid #DBDBDB;
  transition: background 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.wrap_notification .inner ul li a .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

html.pc .wrap_notification .inner ul li a:hover {
  background-color: #F2F2F2;
}

.wrap_notification .inner ul li a:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 1rem;
  display: block;
  transform: rotate(-90deg);
  margin-top: -0.75rem;
  width: 1.5rem;
  height: 1.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_arrow_blue.svg") no-repeat center transparent;
  background-size: contain;
}

.css_calender_button {
  font-family: Arial,sans-serif;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  height: 3.5rem;
  border-radius: 0.5rem;
  background-color: #ffffff;
  transition: background 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  color: #000000;
  box-sizing: border-box;
  padding: 0 0 0 3.4375rem;
  overflow: hidden;
  border: 1px solid #DBDBDB;
}

.css_calender_button .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

.css_calender_button .text {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.css_calender_button .text {
  padding: 0 0.9375rem 0 0;
}

.css_calender_button:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 1rem;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.75rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_calendar.svg") no-repeat center transparent;
  background-size: contain;
  z-index: 2;
}

html.pc .css_calender_button:hover {
  color: #000000;
  background-color: #F2F2F2;
}

.css_calender_button .box {
  width: 6.25rem;
  height: 100%;
  box-sizing: border-box;
  padding: 0.3125rem 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  /*
    * row(初期値) : 子要素を左から右に配置
    * row-reverse : 子要素を右から左に配置
    * column : 子要素を上から下に配置
    * column-reverse : 子要素を下から上に配置
    */
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.css_calender_button .box .text {
  padding: 0;
}

.css_calender_button .box .ttl {
  font-size: 0.6875rem;
  line-height: 1em;
  letter-spacing: 0em;
  color: #80868B;
  margin: 0 0 0.125rem;
}

.css_calender_button .box .date_text {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.css_calender_button .box.going {
  position: relative;
  margin: 0 1.25rem 0 -0.3125rem;
}

.css_calender_button .box.going:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -0.875rem;
  display: block;
  width: 0.5rem;
  border-bottom: 1px solid #80868B;
}

.css_calender_button .box.back {
  width: 7.5rem;
}

.registeration .main_inner .registeration_complete {
  margin: 5rem auto 5rem auto;
}

.registeration .main_inner .registeration_complete p {
  line-height: 1.7;
  margin-bottom: 1em;
  text-align: center;
}

.registeration .main_inner .registeration_close {
  text-align: center;
}

.pay_methods {
  margin-top: 2rem;
  text-align: left;
  overflow: hidden;
}

.pay_methods img.card {
  width: auto;
}

.pay_methods img.card_confirm {
  width: 100%;
}

.pay_methods .comment1 {
  margin-top: 0.5rem;
  margin-bottom: 0.25rem;
}

.pay_methods .comment2 {
  margin-top: 0.5rem;
  font-size: 0.875rem;
  line-height: 1em;
  letter-spacing: 0em;
  color: #80868B;
}

.pay_methods .comment3 {
  margin-top: 0.625rem;
  font-weight: bold;
}

.pay_attention {
  font-size: 14px;
  color: #F67198;
}

section.campaign {
  margin-top: 2rem;
  display: inline-flex;
  flex-wrap: wrap;
}

section.campaign div.title {
  width: 100%;
  color: #0067A8;
}

section.campaign div.agreeContent {
  margin-top: 2rem;
  width: 100%;
  font-size: 1rem;
  line-height: 1.5em;
  letter-spacing: 0em;
}

section.campaign div.agreeContent div.content {
  padding: 0.25rem;
  border: 3px solid #F23939;
  background-color: #FEEBEB;
}

section.campaign div.agreeContent div.content .part1 {
  margin-bottom: 1rem;
}

section.campaign div.agreeContent div.content .part1 span.title {
  font-weight: bold;
}

section.campaign div.agreeContent div.content .part1 ul.items {
  padding: 1.5rem;
  list-style-type: disc;
}

section.campaign div.agreeContent div.content .part1 .detailLink {
  text-align: center;
}

section.campaign div.agreeContent div.agreeCheckbox {
  width: 100%;
  display: grid;
  justify-content: center;
  margin-top: 1rem;
  padding: 0.5rem;
  background-color: #FFF8DE;
  text-align: center;
}

section.campaign div.agreeContent div.agreeCheckbox .css_checkbox {
  display: inline-block;
}

.section_back {
  display: none;
}

.section_going {
  display: block;
}

.section_going.selected {
  display: none;
}

.section_going .affiliate_title {
  color: #F64E83;
}

.section_back {
  display: none;
}

.section_back[disabled] {
  display: none !important;
}

.section_going.selected + .section_back {
  display: block;
}

.section_going.selected + .section_back.selected {
  display: none;
}

div#loginForm .loginForm {
  -webkit-box-shadow: 0em 0.1875em 0.75em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.1875em 0.75em 0em rgba(0, 0, 0, 0.16);
  background-color: #ffffff;
  overflow: hidden;
  margin: 1rem 0 1rem;
}

div#loginForm .loginForm a.clickBtn {
  position: relative;
  padding: 1.5rem;
  color: #000000;
  transition: background 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  border: 1px solid #0067A8;
  border-radius: 0.5rem;
}

html.pc div#loginForm .loginForm a.clickBtn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

div#loginForm .loginForm a.clickBtn .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

div#loginForm .loginForm a.clickBtn:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 1.5rem;
  margin-top: -1.125em;
  width: 2.25em;
  height: 2.25em;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_arrow_white.svg") no-repeat center transparent;
  background-size: contain;
  transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

div#loginForm .loginForm a.clickBtn.isOpen:after {
  transform: rotate(180deg);
}

html.pc div#loginForm .loginForm a.clickBtn:hover {
  background-color: #F2F2F2;
}

div#loginForm .loginForm .login {
  position: relative;
}

div#loginForm .loginForm .login + .section {
  margin-top: 0;
}

div#loginForm .loginForm .login .link_pass {
  padding: 2.5rem 0 0;
  text-align: center;
}

div#loginForm .loginForm .login .link_pass a {
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
}

div#loginForm .loginForm .login .css_button {
  margin-top: 2.5rem;
}

html.pc div#loginForm .loginForm .join .section_inner {
  padding-top: 2.5rem;
}

div#loginForm .loginForm .join .section_inner:before {
  content: "";
  display: block;
  height: 1px;
  background-color: #DBDBDB;
  margin-bottom: 2.5rem;
}

div#loginForm .loginForm a[data-toggle_target] span {
  width: 100%;
  text-align: center;
  color: #0067A8;
}

div#loginForm .loginForm .loginBtnColor {
  background-color: #0074BD;
}

div#loginForm .loginForm .loginBtnColor:hover {
  background-color: #0067A8 !important;
}

div#loginForm .loginForm .loginBtnColor span {
  color: white !important;
}

div#loginForm .withoutBorderShadow {
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  background-color: transparent !important;
}

div#customerInputForm .input_detail .attention {
  color: #F64E83;
  font-size: 0.8125rem;
  line-height: 1.69231em;
  letter-spacing: 0em;
  font-weight: bold;
  padding: 0;
}

html.pc div#customerInputForm .input_detail .attention {
  font-size: 1rem;
  line-height: 1.7em;
  letter-spacing: 0em;
  font-weight: normal;
}

div#customerInputForm .input_detail p.attention {
  position: relative;
  padding-left: 1em;
}

div#customerInputForm .input_detail p.attention:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "※";
}

div#customerInputForm .input_detail ul.attention li {
  position: relative;
  padding: 0 0 0 1em;
}

div#customerInputForm .input_detail ul.attention li:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "※";
}

div#customerInputForm .input_detail .attention {
  margin-bottom: 0.5rem;
}

div#customerInputForm .input_detail .input_room_person {
  border-top: 1px solid #DBDBDB;
  padding: 2.5rem 0;
}

div#customerInputForm .input_detail .input_room_person:first-child {
  padding-top: 0;
  border-top: none;
}

div#customerInputForm .input_detail .input_room_person:last-child {
  padding-bottom: 0;
}

html.pc div#customerInputForm .input_detail .input_room_person h2 {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0.5rem;
}

html.pc div#customerInputForm .input_detail .input_room_person h3 {
  font-size: 1.125rem;
  line-height: 1.5em;
  letter-spacing: 0em;
  padding: 0;
}

div#customerInputForm .input_detail .input_person {
  padding: 2.5rem 0;
}

div#customerInputForm .input_detail .input_person:last-child {
  padding-bottom: 0;
}

div#customerInputForm .input_detail .input_person + .input_person:not(.tab_target) {
  border-top: 1px solid #DBDBDB;
}

div#customerInputForm .input_detail .input_person h4 {
  padding-bottom: 1rem;
}

#submitBtn {
  display: none;
}

div.button.center {
  text-align: center;
}

.payment_detail {
  margin-top: 2.5rem;
  margin-bottom: 2.5rem;
  border: solid 1px #ddd;
}

.payment_detail .section_payment {
  padding: 0.6rem 0 0.6rem;
  width: 47rem;
  margin: 0 auto;
}

.payment_detail .dividing_line {
  border-top: 1px solid #DBDBDB;
}

.payment_detail .flex {
  display: flex;
  justify-content: space-between;
  padding-top: 20px;
}

.payment_detail .blod {
  font-weight: bold;
}

.payment_detail .blue {
  color: #4185ea;
}

.reservation_page .inner_section {
  margin: 15px;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 6px;
}

.reservation_page .toggle_target {
  background: #fafafa;
}

.reservation_page h3 {
  position: relative;
  font-size: 2rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.reservation_page h3 span[class^="icon_"] {
  display: block;
  position: relative;
  padding: 0 0 0 2.75rem;
}

.reservation_page h3 span[class^="icon_"]:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 2.25rem;
  height: 2.25rem;
  background: no-repeat center transparent;
  background-size: contain;
  margin-top: -1.125rem;
}

.reservation_page h3 span[class^="icon_"].icon_airplane:before {
  background-image: url("https://img2.tour.l-tike.com/image/common/pc/icon_air_blue.svg");
}

.reservation_page h3 span[class^="icon_"].icon_hotel:before {
  background-image: url("https://img2.tour.l-tike.com/image/common/pc/icon_hotel_blue.svg");
}

.reservation_page h3 span[class^="icon_"].icon_dp {
  padding-left: 5rem;
}

.reservation_page h3 span[class^="icon_"].icon_dp:before {
  width: 4.5rem;
  background-image: url("https://img2.tour.l-tike.com/image/common/pc/icon_set_blue.svg");
}

.reservation_page h3 span[class^="icon_"].icon_rdp:before {
  background-image: url("https://img2.tour.l-tike.com/image/common/pc/icon_japan_blue.svg");
}

.reservation_page h3 span[class^="icon_"].icon_arrow {
  position: absolute;
  top: 50%;
  right: 0;
  padding: 0;
  width: 2.25rem;
  height: 2.25rem;
  margin-top: -1.125rem;
  transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.reservation_page h3 span[class^="icon_"].icon_arrow:before {
  display: none;
}

.reservation_page h3 span[class^="icon_"].icon_arrow svg path {
  fill: #000000;
  transition: fill 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.reservation_page .icon_airplane {
  display: block;
  position: relative;
  padding: 0 0 0 2.75rem;
}

.section_block_reserved {
  background-color: #fff;
  border-radius: 0.5rem;
  border: 1px solid #DBDBDB;
  margin: 0 0 2.5rem;
  padding: 2.5rem;
}

.section_block_reserved:last-child {
  margin-bottom: 0;
}

.section_block_reserved .label {
  padding: 0.5rem 0.625rem;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  display: inline-block;
  color: #ffffff;
  background-color: #F64E83;
  border-radius: 0.125rem;
  margin-bottom: 0.875rem;
}

.section_block_reserved.cancel {
  background-color: #FAFAFA;
}

.section_block_reserved.cancel .label {
  background-color: #DBDBDB;
}

.section_block_reserved .items dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 0 0 0.8125rem;
}

.section_block_reserved .items dl:last-child {
  padding-bottom: 0;
}

.section_block_reserved .items dl dt {
  width: 13rem;
  font-weight: bold;
  flex-grow: 0;
  flex-shrink: 0;
}

.section_block_reserved .items dl dd {
  flex-grow: 1;
  flex-shrink: 1;
}

.section_block_reserved .items dl dd b {
  color: #F64E83;
}

.section_block_reserved .buttons {
  padding: 2.5rem 0 0;
}

.section_bill_amount .toggle_target {
  background: none;
}

.section_bill_amount .display_top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding-bottom: 1.5rem;
}

.section_bill_amount .display_top .price_total {
  color: #F64E83;
  font-size: 2.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  font-family: Arial,sans-serif;
}

.section_bill_amount .display_top .price_total span {
  font-size: 1.6875rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.section_bill_amount .display_top .detail_toggle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.section_bill_amount .display_top .detail_toggle .txt {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.section_bill_amount .display_top .detail_toggle .txt .close {
  display: none;
}

.section_bill_amount .display_top .detail_toggle .icon {
  margin-left: 0.5rem;
  width: 0.75rem;
  height: 0.4375rem;
  transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_link.svg") no-repeat center transparent;
  background-size: contain;
}

.section_bill_amount .display_top .detail_toggle.isOpen .icon {
  transform: rotate(180deg);
}

.section_bill_amount .display_top .detail_toggle.isOpen .txt .open {
  display: none;
}

.section_bill_amount .display_top .detail_toggle.isOpen .txt .close {
  display: block;
}

.section_bill_amount .display_bottom .display_bottom_inner .wrap_price_detail {
  padding: 1.5rem 0;
  border-top: 1px solid #DBDBDB;
}

.section_bill_amount .display_bottom .display_bottom_inner .wrap_price_detail h4 {
  padding: 0 0 1.25rem;
}

.section_bill_amount .display_bottom .display_bottom_inner .pink {
  color: #F64E83;
}

.section_bill_amount .display_bottom .display_bottom_inner .price_detail {
  font-size: 1rem;
  line-height: 1.5em;
  letter-spacing: 0em;
}

.section_bill_amount .display_bottom .display_bottom_inner .price_detail + .price_detail {
  padding: 1.6875rem 0 0;
}

.section_bill_amount .display_bottom .display_bottom_inner .price_detail dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.section_bill_amount .display_bottom .display_bottom_inner .price_detail dl dt, .section_bill_amount .display_bottom .display_bottom_inner .price_detail dl dd {
  flex-grow: 1;
  flex-shrink: 1;
}

.section_bill_amount .display_bottom .display_bottom_inner .price_detail dl dd {
  text-align: right;
}

.section_bill_amount .display_bottom .display_bottom_inner .price_detail .total {
  text-align: right;
  font-weight: bold;
}

.section_bill_amount .display_bottom .display_bottom_inner .price_detail .text {
  text-align: right;
  font-weight: bold;
}

.section_bill_amount .display_bottom .display_bottom_inner .price_detail.other, .section_bill_amount .display_bottom .display_bottom_inner .price_detail.total {
  border-top: 1px solid #DBDBDB;
}

.section_bill_amount .display_bottom .display_bottom_inner .price_detail.other {
  padding: 1.25rem 0;
}

.section_bill_amount .display_bottom .display_bottom_inner .price_detail.total {
  padding: 1.5rem 0 0;
}

.section_bill_amount .display_bottom .display_bottom_inner .price_detail.total dl {
  margin: 0.5rem 0;
}

.section_bill_amount .display_bottom .display_bottom_inner .price_detail.total dt {
  font-weight: bold;
  font-size: 1.125rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.section_bill_amount .display_bottom .display_bottom_inner .price_detail.total dd {
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
  color: #000000;
  font-weight: bold;
  font-family: Arial,sans-serif;
}

.section_bill_amount .display_bottom .display_bottom_inner .price_detail.total dd.attention {
  color: #F64E83;
}

.section_bill_amount .display_bottom .display_bottom_inner .price_detail.total hr {
  border: none;
  border-top: 1px solid #DBDBDB;
}

.section_bill_amount .display_bottom .display_bottom_inner .price_detail.text {
  padding: 0.625rem 0 0;
  font-size: 1rem;
  line-height: 1.5em;
  letter-spacing: 0em;
}

.section_bill_amount .display_bottom .display_bottom_inner .price_detail.text dl dd {
  text-align: right;
  font-weight: bold;
}

.section_block_detail {
  background-color: #fff;
  border-radius: 0.5rem;
  margin: 0 0 2.5rem;
}

.section_block_detail:last-child {
  margin-bottom: 0;
}

.section_block_detail h4 {
  padding: 0 0 1rem;
}

.section_block_detail.price .section_price_confirm {
  width: 100%;
  background: none;
}

.section_block_detail.price .section_price_confirm .section_inner {
  width: 100%;
  padding: 0;
  margin: 0;
}

.section_block_detail.price .section_price_confirm h2 {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0 0 1rem;
  margin: 0;
}

.section_block_detail.price .section_price_confirm .wrap_price_detail + h3,
.section_block_detail.price .section_price_confirm .price_detail + h3 {
  padding-top: 2rem;
  border-top: 1px solid #DBDBDB;
}

.section_block_detail.price .section_price_confirm h3 {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0 0 1rem;
}

.section_block_detail.price .section_price_confirm h4 {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0 0 1rem;
}

.section_block_detail.flight_date .box + .box, .section_block_detail.hotel_date .box + .box {
  padding-top: 1.5rem;
  margin-top: 1.5rem;
  border-top: 1px dashed #DBDBDB;
}

.section_block_detail.flight_date .box .label, .section_block_detail.hotel_date .box .label {
  padding: 0.5rem 0.625rem;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  display: inline-block;
  color: #ffffff;
  background-color: #F64E83;
  border-radius: 0.125rem;
  margin-bottom: 0.875rem;
}

.section_block_detail.flight_date .airline_logo, .section_block_detail.hotel_date .airline_logo {
  width: 3.875rem;
  position: relative;
  display: block;
  margin: 1rem 0 0.8125rem;
}

.section_block_detail.flight_date .airline_logo:before, .section_block_detail.hotel_date .airline_logo:before {
  content: '';
  display: block;
  padding: 48.3871% 0 0 0;
}

.section_block_detail.flight_date .airline_logo > img, .section_block_detail.hotel_date .airline_logo > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.section_block_detail.flight_date .items .wrap, .section_block_detail.hotel_date .items .wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.section_block_detail.flight_date .items dl, .section_block_detail.hotel_date .items dl {
  flex-shrink: 1;
  flex-grow: 1;
  padding: 0 0 1rem;
}

.section_block_detail.flight_date .items dl:last-child, .section_block_detail.hotel_date .items dl:last-child {
  padding-bottom: 0;
}

.section_block_detail.flight_date .items dl dt, .section_block_detail.hotel_date .items dl dt {
  color: #80868B;
  padding: 0 0 0.3125rem;
}

.section_block_detail.flight_date .items dl dd, .section_block_detail.hotel_date .items dl dd {
  font-weight: bold;
  padding-right: 5px;
}

.section_block_detail.flight_date .items dl dd .link, .section_block_detail.hotel_date .items dl dd .link {
  text-align: right;
  font-weight: normal;
}

.section_block_detail.flight_date .items dl dd .link a, .section_block_detail.hotel_date .items dl dd .link a {
  text-decoration: underline;
}

.section_block_detail.flight_date .items dl.booking_number dd, .section_block_detail.hotel_date .items dl.booking_number dd {
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.section_block_detail.flight_date .items .sch_wrap dl, .section_block_detail.hotel_date .items .sch_wrap dl {
  flex-shrink: 1;
  flex-grow: 1;
  padding: 0 0 1rem;
}

.section_block_detail.flight_date .items .sch_wrap dl:last-child, .section_block_detail.hotel_date .items .sch_wrap dl:last-child {
  padding-bottom: 0;
}

.section_block_detail.flight_date .items .sch_wrap dl:nth-child(1), .section_block_detail.hotel_date .items .sch_wrap dl:nth-child(1) {
  width: 30%;
}

.section_block_detail.flight_date .items .sch_wrap dl:nth-child(2), .section_block_detail.hotel_date .items .sch_wrap dl:nth-child(2) {
  width: 40%;
}

.section_block_detail.flight_date .time, .section_block_detail.hotel_date .time {
  padding: 1rem 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.section_block_detail.flight_date .time .from, .section_block_detail.hotel_date .time .from {
  margin: 0 3.4375rem 0 0;
}

.section_block_detail.flight_date .time .from .t, .section_block_detail.hotel_date .time .from .t {
  position: relative;
}

.section_block_detail.flight_date .time .from .t:after, .section_block_detail.hotel_date .time .from .t:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -2.5rem;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_arrow_l.svg") no-repeat center transparent;
  background-size: contain;
  margin-top: -0.75rem;
}

.section_block_detail.flight_date .time .a, .section_block_detail.hotel_date .time .a {
  font-weight: bold;
  color: #80868B;
}

.section_block_detail.flight_date .time .d, .section_block_detail.hotel_date .time .d {
  font-size: 0.875rem;
  line-height: 1em;
  letter-spacing: 0em;
  color: #80868B;
  padding: 0.25rem 0;
}

.section_block_detail.flight_date .time .t, .section_block_detail.hotel_date .time .t {
  font-size: 2rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

.section_block_detail.flight_date .wrap dl:nth-of-type(3) {
  width: 18.75rem;
}

.section_block_detail.hotel_date .wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.section_block_detail.hotel_date .wrap dl {
  flex-grow: 0;
  flex-shrink: 0;
  margin: 0 3.125rem 0 0;
}

.section_block_detail.hotel_date .time {
  padding-bottom: 1rem;
}

.section_block_detail.hotel_date .time .t {
  padding: 0.25rem 0 0;
}

.section_hotel_plan .hotel_date .box + .box {
  padding-top: 1.5rem;
  margin-top: 1.5rem;
  border-top: 1px dashed #DBDBDB;
}

.section_hotel_plan .hotel_date .box .label {
  padding: 0.5rem 0.625rem;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  display: inline-block;
  color: #ffffff;
  background-color: #F64E83;
  border-radius: 0.125rem;
  margin-bottom: 0.875rem;
}

.section_hotel_plan .hotel_date .airline_logo {
  width: 3.875rem;
  position: relative;
  display: block;
  margin: 1rem 0 0.8125rem;
}

.section_hotel_plan .hotel_date .airline_logo:before {
  content: '';
  display: block;
  padding: 48.3871% 0 0 0;
}

.section_hotel_plan .hotel_date .airline_logo > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.section_hotel_plan .hotel_date .items .wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.section_hotel_plan .hotel_date .items dl {
  flex-shrink: 1;
  flex-grow: 1;
  padding: 0 0 1rem;
}

.section_hotel_plan .hotel_date .items dl:last-child {
  padding-bottom: 0;
}

.section_hotel_plan .hotel_date .items dl dt {
  color: #80868B;
  padding: 0 0 0.3125rem;
}

.section_hotel_plan .hotel_date .items dl dd {
  font-weight: bold;
  padding-right: 5px;
}

.section_hotel_plan .hotel_date .items dl dd .link {
  text-align: right;
  font-weight: normal;
}

.section_hotel_plan .hotel_date .items dl dd .link a {
  text-decoration: underline;
}

.section_hotel_plan .hotel_date .items dl.booking_number dd {
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.section_hotel_plan .hotel_date .items .sch_wrap dl {
  flex-shrink: 1;
  flex-grow: 1;
  padding: 0 0 1rem;
}

.section_hotel_plan .hotel_date .items .sch_wrap dl:last-child {
  padding-bottom: 0;
}

.section_hotel_plan .hotel_date .items .sch_wrap dl:nth-child(1) {
  width: 20%;
}

.section_hotel_plan .hotel_date .items .sch_wrap dl:nth-child(2) {
  width: 40%;
}

.section_hotel_plan .hotel_date .time {
  padding: 1rem 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.section_hotel_plan .hotel_date .time .from {
  margin: 0 3.4375rem 0 0;
}

.section_hotel_plan .hotel_date .time .from .t {
  position: relative;
}

.section_hotel_plan .hotel_date .time .from .t:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -2.5rem;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_arrow_l.svg") no-repeat center transparent;
  background-size: contain;
  margin-top: -0.75rem;
}

.section_hotel_plan .hotel_date .time .a {
  font-weight: bold;
  color: #80868B;
}

.section_hotel_plan .hotel_date .time .d {
  font-size: 0.875rem;
  line-height: 1em;
  letter-spacing: 0em;
  color: #80868B;
  padding: 0.25rem 0;
}

.section_hotel_plan .hotel_date .time .t {
  font-size: 2rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

.section_passenger_detail .person_detail p {
  position: relative;
  padding-left: 2.5rem;
}

.section_passenger_detail .person_detail p:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  background: url(https://img2.tour.l-tike.com/image/common/pc/icon_person.svg) no-repeat center transparent;
  background-size: contain;
}

.section_guest_info .passengers .person_detail h3, .section_guest_info .applicant .person_detail h3 {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0 0 1rem;
}

.section_guest_info .passengers .person_detail p, .section_guest_info .applicant .person_detail p {
  position: relative;
  padding-left: 2.5rem;
}

.section_guest_info .passengers .person_detail p:before, .section_guest_info .applicant .person_detail p:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_person.svg") no-repeat center transparent;
  background-size: contain;
}

.section_applicant_detail .passengers .person_detail h3, .section_applicant_detail .applicant .person_detail h3 {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0 0 1rem;
}

.section_applicant_detail .passengers .person_detail p, .section_applicant_detail .applicant .person_detail p {
  position: relative;
  padding-left: 2.5rem;
}

.section_applicant_detail .passengers .person_detail p:before, .section_applicant_detail .applicant .person_detail p:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_person.svg") no-repeat center transparent;
  background-size: contain;
}

.section_terms_info {
  margin-top: 2.5rem;
}

.section_terms_info .attention {
  color: #F64E83;
  font-size: 0.8125rem;
  line-height: 1.69231em;
  letter-spacing: 0em;
  font-weight: bold;
  padding: 0 0 1.5625rem;
}

html.pc .section_terms_info .attention {
  font-size: 1rem;
  line-height: 1.7em;
  letter-spacing: 0em;
  font-weight: normal;
}

.section_terms_info p.attention {
  position: relative;
  padding-left: 1em;
}

.section_terms_info p.attention:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "※";
}

.section_terms_info ul.attention li {
  position: relative;
  padding: 0 0 0 1em;
}

.section_terms_info ul.attention li:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "※";
}

.section_terms_info .section_inner h2 {
  padding-bottom: 0;
}

.section_terms_info .section_inner div.block {
  padding: 0 0 1.625rem;
}

.section_terms_info .section_inner div.block:last-child {
  padding-bottom: 0;
}

.section_terms_info .section_inner div.block h3 {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0;
  color: #000000;
}

.section_terms_info .section_inner div.block .especially {
  color: #F64E83;
}

.section_terms_info .section_inner div.block p {
  font-size: 0.8125rem;
  line-height: 1.69231em;
  letter-spacing: 0em;
  padding: 0;
  color: #80868B;
}

.section_terms_info .section_inner div.block p.lcc_important {
  color: #F64E83;
  font-size: 0.8125rem;
  line-height: 1.69231em;
  letter-spacing: 0em;
  font-weight: bold !important;
}

html.pc .section_terms_info .section_inner div.block p.lcc_important {
  font-size: 1rem;
  line-height: 1.7em;
  letter-spacing: 0em;
  font-weight: normal;
}

.section_terms_info .item {
  border-top: 1px solid #DBDBDB;
  width: 38rem;
  margin: 0 auto;
}

.section_terms_info .item.especially h3 a {
  color: #F64E83;
}

html.pc .section_terms_info .item.especially h3 a:hover {
  color: #DD2C64;
}

.section_terms_info .item h3 {
  margin: 0;
  padding: 0;
  font-weight: normal;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.section_terms_info .item h3 a {
  position: relative;
  display: block;
  padding: 1.375rem 3.875rem 1.375rem 0;
  color: #000000;
}

.section_terms_info .item h3 a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 1rem;
  margin-top: -0.75rem;
  width: 1.5rem;
  height: 1.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_arrow.svg") no-repeat center transparent;
  background-size: contain;
  transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.section_terms_info .item h3 a.isOpen:after {
  transform: rotate(180deg);
}

.section_terms_info .item .detail .detail_inner {
  padding: 0 1rem 1.375rem;
}

.payment_method .payment_section {
  margin-top: 0.5rem;
  border: solid 1px #ddd;
  display: flex;
  justify-content: space-between;
}

.payment_method .css_radio_button input {
  position: absolute;
  z-index: 3;
  top: 46%;
  left: 12%;
  display: inline-flex !important;
}

.payment_method p {
  padding-top: 15px;
  padding-bottom: 12px;
}

.payment_method .wrap_form {
  padding: 3px;
  width: 32%;
}

.payment_method .pay_methods {
  margin: 5% 15% 5% 5% !important;
  width: 300px;
}

.payment_method .css_radio_button {
  justify-content: center;
  height: 100%;
  border-radius: 0px !important;
}

.payment_method .red {
  color: red;
  font-weight: bold;
}

.payment_method .payment_font {
  height: 100% !important;
  border-radius: 0px !important;
}

.section_payment_complete {
  margin-top: 5%;
}

.section_payment_complete h1 {
  font-size: 1.8rem;
  padding: 0.5rem 0 0.625rem;
  color: red;
}

.section_payment_complete .title {
  padding: 1.4rem 0;
}

.section_payment_complete .top {
  margin-top: 5%;
}

.section_payment_complete .section_inner {
  padding-top: 5%;
}

.section_payment_complete div p {
  font-size: 15px;
}

.section_payment_complete #reservation_confirm_buttom {
  margin-top: 1.5em;
}

.section_payment_complete #reservation_font {
  text-align: center;
  padding-right: 4em;
  padding-top: 2em;
}

.payment_method_confirm .payment_section {
  margin-top: 0.5rem;
  border: solid 1px #ddd;
  display: flex;
  justify-content: space-between;
}

.payment_method_confirm .css_radio_button input {
  position: absolute;
  z-index: 3;
  top: 47%;
  left: 5%;
  display: inline-flex !important;
}

.payment_method_confirm p {
  padding-top: 15px;
  padding-bottom: 12px;
}

.payment_method_confirm .wrap_form {
  padding: 3px;
  width: 40%;
}

.payment_method_confirm .pay_methods {
  margin: 5% 5% 5% 5% !important;
  width: 400px;
}

.payment_method_confirm .css_radio_button {
  justify-content: center;
  height: 100%;
  border-radius: 0px !important;
}

.payment_method_confirm .red {
  color: red;
  font-weight: bold;
}

.payment_method_confirm .payment_font {
  height: 100% !important;
  border-radius: 0px !important;
}

.payment_detail_confirm {
  margin-top: 2.5rem;
  margin-bottom: 2.5rem;
  border: solid 1px #ddd;
}

.payment_detail_confirm .section_payment {
  margin: 0 auto;
}

.payment_detail_confirm .dividing_line {
  border-top: 1px solid #DBDBDB;
}

.payment_detail_confirm .flex {
  padding: 0 10px 0 10px;
  display: flex;
  justify-content: space-between;
}

.payment_detail_confirm .blod {
  font-weight: bold;
}

.payment_detail_confirm .red {
  color: #F67198;
}

.convenience_store_icon img.convenience_store_icon_lawson {
  margin-top: 4px;
  margin-right: 4px;
  width: 170px;
}

.convenience_store_icon img.convenience_store_icon_ministop {
  margin-top: 4px;
  margin-right: 4px;
  width: 42px;
}

.convenience_store_icon img.convenience_store_icon_familymart {
  margin-top: 4px;
  margin-right: 4px;
  width: 100px;
}

.convenience_store_icon img.convenience_store_icon_seicomart {
  margin-top: 4px;
  margin-right: 4px;
  width: 114px;
}

.convenience_store_icon img.convenience_store_icon_yamazaki {
  margin-top: 4px;
  margin-right: 4px;
  width: 47px;
}

.page_airplane_search_alart p {
  padding-top: 1em;
}

.tour_infomation table.tour_table {
  margin: .5rem 0 1rem;
  border-collapse: collapse;
  width: 100%;
}

.tour_infomation table.tour_table th {
  border: #d1d1d1 1px solid;
  padding: 1rem;
  background: #f4f4f4;
  width: 120px;
  text-align: left;
}

.tour_infomation table.tour_table td {
  border: #d1d1d1 1px solid;
  padding: .3rem 1rem;
  text-align: left;
  line-height: 1.3;
}

.rdp_plan .main_inner {
  padding: 0 0 5rem;
}

html.pc .rdp_plan .section {
  padding-bottom: initial;
}

html.pc .rdp_plan .section .section_inner {
  padding: 1.5rem;
  width: initial;
}

html.pc .rdp_plan .section .section_inner h2 {
  padding: 0 0 1rem;
}

html.pc .rdp_plan h1 {
  font-size: 2rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  padding: 1.5rem 0 0.5rem;
}

html.pc .rdp_plan .css_button {
  width: 24rem;
}

html.pc .rdp_plan input[type=text], html.pc .rdp_plan input[type=tel], html.pc .rdp_plan input[type=email], html.pc .rdp_plan input[type=password] {
  max-width: 400px;
}

html.pc .rdp_plan .css_select {
  max-width: 400px;
}

html.pc .rdp_plan .wrap_form dl dt {
  line-height: 1;
  margin: 1.5rem 0 0.3rem;
}

html.pc .rdp_plan .wrap_form .block_radio_button_h dl dd label {
  width: 6rem;
}

html.pc .rdp_plan .wrap_button.back a {
  display: block;
  width: 25rem;
  margin: 0 auto;
}

.rdp_plan .pay_methods {
  margin-top: 1rem;
}

.rdp_plan section.campaign div.agreeContent div.content {
  padding: 1rem;
  font-size: .8rem;
  line-height: 1.4;
}

html.pc .rdp_plan div#customerInputForm .input_detail .attention {
  font-size: .8rem;
  line-height: 1.5;
}

html.pc .rdp_plan div#customerInputForm .input_detail .input_room_person {
  padding: initial;
}

html.pc .rdp_plan div#customerInputForm .input_detail .input_room_person h2 {
  padding: 0.5rem;
  background-color: #BFBFBF;
  margin-top: 1.5rem;
}

html.pc .rdp_plan div#customerInputForm .input_detail .input_room_person h3 {
  border-bottom: 1px solid #DBDBDB;
}

html.pc .rdp_plan div#customerInputForm .input_detail .input_person {
  padding: 1.5rem 0 0;
}

.rdp_plan div#customerInputForm .input_detail .input_person h4 {
  padding: 1rem;
}

.rdp_plan div#customerInputForm .input_detail .input_person .wrap_form {
  padding: 1rem;
}

.rdp_plan div#customerInputForm .input_detail .input_person + .input_person:not(.tab_target) {
  border-top: initial;
}

.jal_plan .main_inner {
  padding: 0 0 5rem;
}

html.pc .jal_plan .section {
  padding-bottom: initial;
}

html.pc .jal_plan .section .section_inner {
  padding: 1.5rem;
  width: initial;
}

html.pc .jal_plan .section .section_inner h2 {
  padding: 0 0 1rem;
}

html.pc .jal_plan h1 {
  font-size: 2rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  padding: 1.5rem 0 0.5rem;
}

html.pc .jal_plan .css_button {
  width: 24rem;
}

html.pc .jal_plan input[type=text], html.pc .jal_plan input[type=tel], html.pc .jal_plan input[type=email], html.pc .jal_plan input[type=password] {
  max-width: 400px;
}

html.pc .jal_plan .css_select {
  max-width: 400px;
}

html.pc .jal_plan .wrap_form dl dt {
  line-height: 1;
  margin: 1.5rem 0 0.3rem;
}

html.pc .jal_plan .wrap_form .block_radio_button_h dl dd label {
  width: 6rem;
}

html.pc .jal_plan .wrap_button.back a {
  display: block;
  width: 25rem;
  margin: 0 auto;
}

.jal_plan .pay_methods {
  margin-top: 1rem;
}

.jal_plan section.campaign div.agreeContent div.content {
  padding: 1rem;
  font-size: .8rem;
  line-height: 1.4;
}

html.pc .jal_plan div#customerInputForm .input_detail .attention {
  font-size: .8rem;
  line-height: 1.5;
}

html.pc .jal_plan div#customerInputForm .input_detail .input_room_person {
  padding: initial;
}

html.pc .jal_plan div#customerInputForm .input_detail .input_room_person h2 {
  padding: 0.5rem;
  background-color: #BFBFBF;
  margin-top: 1.5rem;
}

html.pc .jal_plan div#customerInputForm .input_detail .input_room_person h3 {
  border-bottom: 1px solid #DBDBDB;
}

html.pc .jal_plan div#customerInputForm .input_detail .input_person {
  padding: 1.5rem 0 0;
}

.jal_plan div#customerInputForm .input_detail .input_person h4 {
  padding: 1rem;
}

.jal_plan div#customerInputForm .input_detail .input_person .wrap_form {
  padding: 1rem;
}

.jal_plan div#customerInputForm .input_detail .input_person + .input_person:not(.tab_target) {
  border-top: initial;
}

.jal_confirm .section {
  padding-bottom: 0 !important;
}

.jal_confirm .section_request_information {
  padding: 0 !important;
  margin: 1.5rem 0 !important;
  background-color: #FFF8DE !important;
}

.jal_confirm .section_request_information .section_inner {
  padding: 1.5rem !important;
}

.jal_confirm .plans {
  padding: 1rem 0 0 1rem !important;
}

.jal_confirm .section_inner {
  margin: 0 !important;
  width: auto !important;
}

.jal_confirm .section_inner .passengers {
  padding: 2rem 0 0 !important;
  border-bottom: 1px dotted #DBDBDB !important;
  font-weight: bold !important;
}

.jal_confirm .section_inner .tour_subtitle {
  color: #444 !important;
  font-weight: normal !important;
  padding: 0 !important;
}

.jal_confirm .section_inner .flight_detail .airline {
  padding: 0 0 0.5rem !important;
}

.jal_confirm .section_inner .flight_detail .name {
  padding: 0 !important;
  color: black !important;
}

.jal_confirm .section_inner .link {
  padding: 0 0 1rem !important;
  text-align: right !important;
}

.jal_confirm .section_inner .link a {
  text-decoration: underline;
}

.jal_confirm .section_inner .wrap_time .ttl {
  color: #666 !important;
  font-weight: normal !important;
  padding: 0 !important;
}

.jal_confirm .section_airline_ticket_detail .box {
  border-top: 0 !important;
  margin: 0 !important;
}

.jal_confirm .section_hotel_plan_detail .passengers h4,
.jal_confirm .section_hotel_plan_detail .plans h4 {
  padding: 0 !important;
}

.jal_confirm .cancel_table th {
  padding: 3px !important;
}

.jal_confirm .cancel_table td {
  padding: 3px !important;
}

.modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 11000;
  background-color: rgba(0, 0, 0, 0.5);
  overflow: auto;
}

.modal .modal_inner {
  position: relative;
}

.modal .bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.modal .window {
  width: 51rem;
  box-sizing: border-box;
  position: relative;
  margin: 0 auto;
  background-color: #fff;
  -webkit-box-shadow: 0em 1em 2em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 1em 2em 0em rgba(0, 0, 0, 0.16);
  border-radius: 1.5rem;
}

.modal .window .close {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 3rem;
  height: 3rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/modal_btn_close.svg") no-repeat center #fff;
  background-size: contain;
  border-radius: 50%;
  -webkit-box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
  margin: -1.5rem -1.5rem 0 0;
}

.modal .window .close .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

#modal_receipt .window_inner {
  padding: 2.5rem 0 5rem;
  width: 38.125rem;
  margin: 0 auto;
}

#modal_receipt .window_inner .detail {
  padding: 2.5rem;
  background-color: #FAFAFA;
}

#modal_receipt .window_inner .detail dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 0 0 1.5rem;
}

#modal_receipt .window_inner .detail dl:last-child {
  padding-bottom: 0;
}

#modal_receipt .window_inner .detail dl dt {
  width: 9rem;
  font-weight: bold;
}

#modal_receipt .window_inner .detail dl dd input[type=text] {
  display: inline-block;
  width: 20rem;
  margin-right: 1rem;
}

#modal_receipt .window_inner .wrap_button {
  padding: 2.5rem 0;
}

#modal_image_gallery .window {
  padding: 5rem 6.5rem;
}

#modal_map .window {
  padding: 5rem;
  height: 31.25rem;
}

#modal_map .window .window_inner {
  height: 100%;
}

#modal_map .window .window_inner .wrap_map_embed {
  height: 100%;
  background-color: #DBDBDB;
}

#modal_hotel_plan .window {
  padding: 2.5rem 6.5rem;
}

#modal_hotel_plan .window .window_inner .content {
  display: none;
}

#modal_hotel_detail .window {
  padding: 2.5rem 6.5rem;
}

#modal_payment_select_error .window {
  padding: 5rem;
}

#modal_payment_select_error .window .payment_select_error_message {
  color: red;
  font-size: 18px;
}

#main {
  display: block;
}

#main.page_top .mainvisual {
  position: relative;
  margin: 0 0 0.125rem;
}

#main.page_top .mainvisual .bg {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  background: no-repeat top center transparent;
  background-size: cover;
}

#main.page_top .mainvisual h1 {
  position: relative;
  text-align: center;
  line-height: 200px !important;
  font-size: 3rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0;
  font-weight: bold;
  color: #fff;
}

#main.page_top .mainvisual .nav {
  position: relative;
  width: 68.125rem;
  height: 9.5rem;
  margin: 0 auto;
  background-color: #ffffff;
  border-radius: 1rem;
  -webkit-box-shadow: 0em 0.5em 2em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.5em 2em 0em rgba(0, 0, 0, 0.16);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_top .mainvisual .nav .items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_top .mainvisual .nav .items li {
  padding: 0 0.25rem;
  box-sizing: border-box;
}

#main.page_top .mainvisual .nav .items li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  /*
    * row(初期値) : 子要素を左から右に配置
    * row-reverse : 子要素を右から左に配置
    * column : 子要素を上から下に配置
    * column-reverse : 子要素を下から上に配置
    */
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%;
  color: #000000;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  background-color: #ffffff;
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  box-sizing: border-box;
  padding: 0.625rem;
  border-radius: 0.3125rem;
}

#main.page_top .mainvisual .nav .items li a .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

html.pc #main.page_top .mainvisual .nav .items li a:hover {
  background-color: #F2F2F2;
}

#main.page_top .mainvisual .nav .items li a .icon {
  background: no-repeat center transparent;
  background-size: contain;
}

#main.page_top .mainvisual .nav .items li a .icon[data-src$="airplane.svg"] {
  width: 8.75rem;
  position: relative;
  display: block;
}

#main.page_top .mainvisual .nav .items li a .icon[data-src$="airplane.svg"]:before {
  content: '';
  display: block;
  padding: 78.57143% 0 0 0;
}

#main.page_top .mainvisual .nav .items li a .icon[data-src$="airplane.svg"] > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#main.page_top .mainvisual .nav .items li a .icon[data-src$="hotel.svg"] {
  width: 8.75rem;
  position: relative;
  display: block;
}

#main.page_top .mainvisual .nav .items li a .icon[data-src$="hotel.svg"]:before {
  content: '';
  display: block;
  padding: 78.57143% 0 0 0;
}

#main.page_top .mainvisual .nav .items li a .icon[data-src$="hotel.svg"] > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#main.page_top .mainvisual .nav .items li a .icon[data-src$="dp.svg"] {
  width: 8.75rem;
  position: relative;
  display: block;
}

#main.page_top .mainvisual .nav .items li a .icon[data-src$="dp.svg"]:before {
  content: '';
  display: block;
  padding: 78.57143% 0 0 0;
}

#main.page_top .mainvisual .nav .items li a .icon[data-src$="dp.svg"] > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#main.page_top .mainvisual .nav .items li a .icon[data-src$="tour.svg"] {
  width: 8.75rem;
  position: relative;
  display: block;
}

#main.page_top .mainvisual .nav .items li a .icon[data-src$="tour.svg"]:before {
  content: '';
  display: block;
  padding: 78.57143% 0 0 0;
}

#main.page_top .mainvisual .nav .items li a .icon[data-src$="tour.svg"] > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#main.page_top .other_links {
  padding: 5rem 0 0;
}

#main.page_top .other_links h2 {
  padding: 1.5rem 0;
}

#main.page_top .other_links a {
  display: block;
  transition: opacity 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#main.page_top .other_links a .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

#main.page_top .other_links a .js-ripple_effect {
  z-index: 5;
}

html.pc #main.page_top .other_links a:hover {
  opacity: 0.7;
}

#main.page_top .other_links ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_top .other_links ul li {
  flex-shrink: 0;
  flex-grow: 0;
}

#main.page_top .other_links ul li a {
  width: 21rem;
  position: relative;
  display: block;
  border-radius: 0.5rem;
  overflow: hidden;
}

#main.page_top .other_links ul li a:before {
  content: '';
  display: block;
  padding: 41.66667% 0 0 0;
}

#main.page_top .other_links ul li a > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

html.pc #main.page_top .wrap_recommend_ticket {
  padding: 5rem 0 0;
}

html.pc #main.page_top .wrap_recommend_ticket h2 {
  padding: 1.5rem 0;
}

html.pc #main.page_top .wrap_recommend_ticket .items ul li {
  width: 13.5625rem;
}

html.pc #main.page_top .wrap_recommend_ticket .items ul:nth-of-type(1) li {
  width: 20.875rem;
}

#main.page_top .coupon_list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-gap: 12px;
  padding-top: 1.75rem;
  margin: 1em 0;
}

#main.page_top .coupon_list li .css_button_inner {
  font-weight: normal !important;
}

#main.page_top .coupon_list li .css_button.simple {
  width: 29rem !important;
}

#main .wrap_news_nav {
  padding: 1.5rem 0 2.5em;
}

html.pc #main .section_news_list .section_inner {
  width: 100%;
}

#main .section_news_list h3 + ul li:first-child {
  border-top: none;
}

#main .section_news_list ul li {
  border-bottom: 1px solid #DBDBDB;
}

#main .section_news_list ul li:first-child {
  border-top: 1px solid #DBDBDB;
}

#main .section_news_list ul li a {
  position: relative;
  display: block;
  padding: 0.9375rem 3.5rem 0.9375rem 0;
  color: #000000;
  transition: background 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#main .section_news_list ul li a .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

html.pc #main .section_news_list ul li a:hover {
  background-color: #F2F2F2;
}

#main .section_news_list ul li a .date {
  padding: 0.3125rem 0 0;
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  color: #80868B;
}

#main .section_news_list ul li a:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 1rem;
  display: block;
  margin: -0.75rem 0 0;
  width: 1.5rem;
  height: 1.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_arrow.svg") no-repeat center transparent;
  background-size: contain;
  transform: rotate(-90deg);
}

#main .section_news_detail + .section_news_list {
  padding-top: 0.9375rem;
}

#main .section_news_detail .date {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  color: #000000;
  padding: 0 0 2.5rem;
}

#main .section_news_detail .article {
  border-bottom: 1px solid #DBDBDB;
  padding: 0 0 1.25rem;
}

#main .section_news_detail .article p + p {
  padding-top: 2em;
}

#main .section_news_detail .article img {
  max-width: 100%;
}

html.pc #main.page_news_list .read p {
  padding: 0.625rem 0 2.5rem;
}

#main.page_news_list .wrap_pagination {
  padding: 2.5rem 0;
}

#main.page_news_list .wrap_pagination + .wrap_button {
  padding-top: 0;
}

#main.page_news_list .wrap_pagination ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_news_list .wrap_pagination ul li {
  width: 2.75rem;
  height: 2.75rem;
  margin: 0 1rem;
}

#main.page_news_list .wrap_pagination ul li a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  border: 1px solid #DBDBDB;
  border-radius: 50%;
  background-color: #ffffff;
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#main.page_news_list .wrap_pagination ul li a:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_arrow.svg") no-repeat center transparent;
  background-size: contain;
  margin: -0.75rem 0 0 -0.75rem;
}

#main.page_news_list .wrap_pagination ul li a .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

html.pc #main.page_news_list .wrap_pagination ul li a:hover {
  background-color: #F2F2F2;
}

#main.page_news_list .wrap_pagination ul li:nth-of-type(1) a:after {
  transform: rotate(90deg);
}

#main.page_news_list .wrap_pagination ul li:nth-of-type(2) a:after {
  transform: rotate(-90deg);
}

html.pc #main.page_news_detail .section_news_list .section_inner, html.pc #main.page_news_detail .section_news_detail .section_inner {
  width: 100%;
}

html.pc #main.page_news_detail .section_news_list {
  padding: 2.5rem 0 0;
}

html.pc #main.page_news_detail .section_news_list ul li:first-child {
  border-top: none;
}

#main .section_search_airplane {
  background: no-repeat center #0074BD;
  background-size: cover;
  padding: 2.5rem 0;
  opacity: 1;
}

#main .section_search_airplane.isOneWay .detail .date dl {
  width: 11.625rem;
}

#main .section_search_airplane.isOneWay .detail .date dl dd .box.going {
  margin-right: 0;
}

#main .section_search_airplane.isOneWay .detail .date dl dd .box.going:after {
  display: none;
}

#main .section_search_airplane .type {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 0 0 1.5rem;
}

#main .section_search_airplane .type .css_radio_button {
  width: 4rem;
  margin-right: 0.5rem;
}

#main .section_search_airplane .type .css_radio_button input:checked + span {
  border-color: #0067A8;
  background-color: #0067A8;
}

#main .section_search_airplane .type .css_radio_button > span {
  height: 2.75rem;
  font-weight: bold;
  border: none;
  color: #ffffff;
  background-color: rgba(255, 255, 255, 0.18);
}

html.pc #main .section_search_airplane .type .css_radio_button:hover > span {
  background-color: rgba(255, 255, 255, 0.3);
}

html.pc #main .section_search_airplane .type .css_radio_button:hover input:checked + span {
  background-color: #0074BD;
}

#main .section_search_airplane .detail {
  padding: 0 0 1.5rem;
}

html.pc #main .section_search_airplane .detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main .section_search_airplane .detail .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin: 0 1.5rem 0 0;
}

#main .section_search_airplane .detail .item:last-child {
  padding-right: 0;
}

#main .section_search_airplane .detail .item dl {
  width: 16.5rem;
}

#main .section_search_airplane .detail .item dl dt {
  color: #ffffff;
  font-weight: bold;
  padding: 0 0 0.3125rem;
}

#main .section_search_airplane .detail .item dl dd {
  font-family: Arial,sans-serif;
}

#main .section_search_airplane .detail .item dl dd a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  height: 3.5rem;
  border-radius: 0.5rem;
  background-color: #ffffff;
  transition: background 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  color: #000000;
  box-sizing: border-box;
  padding: 0 0 0 3.4375rem;
  overflow: hidden;
}

#main .section_search_airplane .detail .item dl dd a .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

#main .section_search_airplane .detail .item dl dd a .text {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

#main .section_search_airplane .detail .item dl dd a .text {
  padding: 0 0.9375rem 0 0;
}

#main .section_search_airplane .detail .item dl dd a:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 1rem;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.75rem;
  background: no-repeat center transparent;
  background-size: contain;
  z-index: 2;
}

html.pc #main .section_search_airplane .detail .item dl dd a:hover {
  background-color: #F2F2F2;
}

#main .section_search_airplane .detail .airport {
  position: relative;
}

#main .section_search_airplane .detail .airport .departure {
  padding: 0 2rem 0 0;
}

#main .section_search_airplane .detail .airport .departure a:before {
  background-image: url(https://img2.tour.l-tike.com/image/common/pc/icon_airport_departure.svg);
}

#main .section_search_airplane .detail .airport .arrive a:before {
  background-image: url(https://img2.tour.l-tike.com/image/common/pc/icon_airport_arrive.svg);
}

#main .section_search_airplane .detail .airport .btn_switch {
  position: absolute;
  bottom: 1.75rem;
  left: 50%;
  z-index: 10;
  margin: 0 0 -1.625rem -1.625rem;
  width: 3.25rem;
  height: 3.25rem;
}

#main .section_search_airplane .detail .airport .btn_switch a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  border: 4px solid #ffffff;
  background-color: #0074BD;
  transition: background 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), box-shadow 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  border-radius: 50%;
  -webkit-box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
}

#main .section_search_airplane .detail .airport .btn_switch a .icon {
  width: 1.125rem;
  position: relative;
  display: block;
}

#main .section_search_airplane .detail .airport .btn_switch a .icon:before {
  content: '';
  display: block;
  padding: 133.33333% 0 0 0;
}

#main .section_search_airplane .detail .airport .btn_switch a .icon > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

html.pc #main .section_search_airplane .detail .airport .btn_switch a:hover {
  background-color: #0067A8;
  -webkit-box-shadow: 0em 0.125em 0.625em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.125em 0.625em 0em rgba(0, 0, 0, 0.16);
}

#main .section_search_airplane .detail .date dl {
  width: 18.5rem;
}

#main .section_search_airplane .detail .date dl dd a {
  border: 1px solid transparent;
}

html.pc.isCalenderModalOpen #main .section_search_airplane .detail .date dl dd a {
  pointer-events: none;
  position: relative;
  z-index: 1005;
  border-color: #DBDBDB;
}

#main .section_search_airplane .detail .date dl dd a:before {
  background-image: url(https://img2.tour.l-tike.com/image/common/pc/icon_calendar.svg);
}

#main .section_search_airplane .detail .date dl dd .box {
  width: 6.25rem;
  height: 100%;
  box-sizing: border-box;
  padding: 0.3125rem 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  /*
    * row(初期値) : 子要素を左から右に配置
    * row-reverse : 子要素を右から左に配置
    * column : 子要素を上から下に配置
    * column-reverse : 子要素を下から上に配置
    */
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

#main .section_search_airplane .detail .date dl dd .box .text {
  padding: 0;
}

#main .section_search_airplane .detail .date dl dd .box .ttl {
  font-size: 0.6875rem;
  line-height: 1em;
  letter-spacing: 0em;
  color: #80868B;
  margin: 0 0 0.125rem;
}

#main .section_search_airplane .detail .date dl dd .box .date_text {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main .section_search_airplane .detail .date dl dd .box.going {
  position: relative;
  margin: 0 1.25rem 0 -0.3125rem;
}

#main .section_search_airplane .detail .date dl dd .box.going:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -0.875rem;
  display: block;
  width: 0.5rem;
  border-bottom: 1px solid #80868B;
}

#main .section_search_airplane .detail .passengers {
  position: relative;
}

#main .section_search_airplane .detail .passengers .passengers_error {
  display: none;
  opacity: 0;
  position: absolute;
  top: -3.5rem;
  right: -1.5rem;
  height: 2.75rem;
  z-index: 100;
}

#main .section_search_airplane .detail .passengers .passengers_error p {
  height: 100%;
  white-space: nowrap;
  box-sizing: border-box;
  border-radius: 0.5rem;
  border: 1px solid #F23939;
  color: #F23939;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0 1rem;
  background-color: #FFF8DE;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main .section_search_airplane .detail .passengers dl {
  width: 16.5rem;
}

#main .section_search_airplane .detail .passengers dl dd a:before {
  background-image: url(https://img2.tour.l-tike.com/image/common/pc/icon_people.svg);
}

#main .section_search_airplane .submit_error {
  display: none;
  padding: 0 0 1.5rem;
}

html.pc #main .section_search_airplane .submit_error p {
  display: inline-block;
}

html.pc #main .section_search_airplane .btn .css_button {
  border-radius: 0.1875rem;
  width: 16.5rem;
  height: 3.5rem;
  margin: 0;
}

html.pc #main .section_search_airplane.simple {
  border-radius: 0.5rem;
  padding: 2.5rem 1.75rem;
  box-sizing: border-box;
}

html.pc #main .section_search_airplane.simple.isOneWay .detail .date dl {
  width: 9.625rem;
}

html.pc #main .section_search_airplane.simple .section_inner {
  width: 100%;
}

html.pc #main .section_search_airplane.simple .detail {
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

html.pc #main .section_search_airplane.simple .detail .item {
  margin: 0 0.5rem 0 0;
}

html.pc #main .section_search_airplane.simple .detail .item:last-child {
  margin-right: 0.5rem;
}

html.pc #main .section_search_airplane.simple .detail .item dl {
  width: 12.75rem;
}

html.pc #main .section_search_airplane.simple .detail .item dl dd a {
  padding: 0 0 0 0.9375rem;
}

html.pc #main .section_search_airplane.simple .detail .item dl dd a:before {
  display: none;
}

html.pc #main .section_search_airplane.simple .detail .date dl {
  width: 16.5rem;
}

html.pc #main .section_search_airplane.simple .detail .date dl dd a {
  padding: 0 0.625rem;
}

html.pc #main .section_search_airplane.simple .detail .date dl dd:before {
  display: none;
}

html.pc #main .section_search_airplane.simple .detail .passengers dl {
  width: 14rem;
}

html.pc #main .section_search_airplane.simple .detail .btn .css_button {
  border-radius: 0.1875rem;
  width: 14rem;
  height: 3.5rem;
  margin: 0;
}

html.pc #main .section_search_airplane.simple .submit_error {
  padding: 1.5rem 0 0;
}

#main.page_airplane_top h1 {
  position: relative;
}

#main.page_airplane_top .to_world {
  display: block;
  position: relative;
  bottom: 2.5rem;
  float: right;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

#main.page_airplane_top .to_world a {
  display: block;
  position: relative;
  color: #0074BD;
  padding: 0 2rem 0 0;
}

html.pc #main.page_airplane_top .to_world a:hover {
  color: #0067A8;
}

html.pc #main.page_airplane_top .to_world a:hover svg path {
  fill: #0067A8;
}

#main.page_airplane_top .to_world a .icon {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  margin: -0.75rem 0 0;
  width: 1.5rem;
  height: 1.5rem;
  transform: rotate(-90deg);
}

#main.page_airplane_top .to_world a .icon svg path {
  fill: #0074BD;
  transition: fill 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#main.page_airplane_top .wrap_ads {
  padding: 2rem 0 0;
}

html.pc #main.page_airplane_top .wrap_ads ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

#main.page_airplane_top .wrap_ads ul li {
  margin: 0.5rem 0.5rem;
}

#main.page_airplane_top .wrap_ads ul li a {
  width: 29.25rem;
  position: relative;
  display: block;
}

#main.page_airplane_top .wrap_ads ul li a:before {
  content: '';
  display: block;
  padding: 21.36752% 0 0 0;
}

#main.page_airplane_top .wrap_ads ul li a > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#main.page_airplane_top .airlines {
  padding: 4.5rem 0 0;
}

#main.page_airplane_top .airlines .inner {
  padding: 2.5rem 0 1.5rem;
  color: #ffffff;
  background: no-repeat center transparent;
  background-size: cover;
  border-radius: 1rem;
}

#main.page_airplane_top .airlines .inner h3 {
  padding: 0 1.5rem;
}

#main.page_airplane_top .airlines .inner p {
  font-weight: normal;
  padding: 1.5rem 1.5rem 1.5rem;
}

#main.page_airplane_top .airlines .inner .no_slide {
  padding: 0 8%;
}

#main.page_airplane_top .airlines .inner .no_slide ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  flex-wrap: wrap;
}

#main.page_airplane_top .airlines .inner .no_slide ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin-right: 0.4875rem;
  margin-bottom: 0.4875rem;
  overflow: hidden;
}

#main.page_airplane_top .airlines .inner .no_slide ul li span img {
  display: block;
  border-radius: 0.25rem;
  background-color: #fff;
  position: static;
  width: 12.5rem;
  height: 5.25rem;
}

#main.page_airplane_top .airlines .inner .items .slide_wrap {
  position: relative;
  z-index: 1;
}

#main.page_airplane_top .airlines .inner .items .slide_wrap .slide_mask {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  overflow: hidden;
}

#main.page_airplane_top .airlines .inner .items .slide_wrap .slide_inner {
  position: relative;
  left: 0;
  height: 100%;
}

#main.page_airplane_top .airlines .inner .items .slide_wrap {
  height: 2.625rem;
  margin: 0 0 1rem;
}

#main.page_airplane_top .airlines .inner .items .slide_wrap .slide_inner ul {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_airplane_top .airlines .inner .items .slide_wrap .slide_inner ul li {
  flex-grow: 0;
  flex-shrink: 0;
  width: 6.25rem;
  margin-right: 0.41875rem;
  position: relative;
  display: block;
}

#main.page_airplane_top .airlines .inner .items .slide_wrap .slide_inner ul li:before {
  content: '';
  display: block;
  padding: 41.79104% 0 0 0;
}

#main.page_airplane_top .airlines .inner .items .slide_wrap .slide_inner ul li > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#main.page_airplane_searchwindow .main_inner {
  padding: 0;
}

#main.page_airplane_search {
  position: relative;
}

#main.page_airplane_search .calender ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_airplane_search .calender ul li {
  flex-grow: 0;
  flex-shrink: 0;
  width: 8.75rem;
  height: 5.5rem;
  margin: 0 0.5rem;
}

#main.page_airplane_search .calender ul li > div, #main.page_airplane_search .calender ul li a {
  display: block;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  border-radius: 0.5rem;
  -webkit-box-shadow: 0em 0.0625em 0.25em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.0625em 0.25em 0em rgba(0, 0, 0, 0.16);
  transition: background 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), box-shadow 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#main.page_airplane_search .calender ul li > div div, #main.page_airplane_search .calender ul li a div {
  text-align: center;
}

#main.page_airplane_search .calender ul li > div div:nth-of-type(1), #main.page_airplane_search .calender ul li a div:nth-of-type(1) {
  padding: 0.625em 0 0;
  font-size: 0.875rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_airplane_search .calender ul li > div div:nth-of-type(2), #main.page_airplane_search .calender ul li a div:nth-of-type(2) {
  padding: 0.75rem 0 0.8125rem;
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

#main.page_airplane_search .calender ul li > div div:nth-of-type(3), #main.page_airplane_search .calender ul li a div:nth-of-type(3) {
  font-size: 0.875rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_airplane_search .calender ul li > div {
  background-color: #DBDBDB;
  color: #ffffff;
}

html.pc #main.page_airplane_search .calender ul li > a:hover {
  background-color: #F2F2F2;
  -webkit-box-shadow: 0em 0.0625em 0.125em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.0625em 0.125em 0em rgba(0, 0, 0, 0.16);
}

#main.page_airplane_search .calender ul li > a div {
  color: #80868B;
}

#main.page_airplane_search .calender ul li > a div.holiday {
  color: #F64E83;
}

#main.page_airplane_search .calender ul li > a div.saturday {
  color: #0074BD;
}

#main.page_airplane_search .calender ul li:last-child > a div:nth-of-type(1) {
  padding: 1.125rem 0 0;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

#main.page_airplane_search .calender ul li:last-child > a div:nth-of-type(1):before {
  content: "";
  display: block;
  width: 1.875rem;
  height: 2rem;
  margin: 0 auto 0.75rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_calendar.svg") no-repeat center transparent;
  background-size: contain;
}

#main.page_airplane_search .calender ul li:not(.isActive) a .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

#main.page_airplane_search .calender ul li.isActive a {
  background-color: #0074BD;
}

#main.page_airplane_search .calender ul li.isActive a div:nth-of-type(1), #main.page_airplane_search .calender ul li.isActive a div:nth-of-type(2), #main.page_airplane_search .calender ul li.isActive a div:nth-of-type(3) {
  color: #ffffff;
}

html.pc #main.page_airplane_search .calender ul li.isActive a:hover {
  background-color: #0067A8;
}

#main.page_airplane_search .mics {
  padding: 2.5rem 0;
}

html.pc #main.page_airplane_search .mics {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_airplane_search .mics .wrap_left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  font-weight: bold;
}

#main.page_airplane_search .mics .wrap_left .date {
  padding: 0 2.5rem 0 0;
}

#main.page_airplane_search .mics .wrap_right {
  width: 12rem;
}

#main.page_airplane_search .column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_airplane_search .column .left_column {
  width: 23.5rem;
}

#main.page_airplane_search .column .left_column .tools .block {
  padding: 0 0 2.5rem;
}

#main.page_airplane_search .column .left_column .tools .block h4 {
  font-size: 1.125rem;
  line-height: 1em;
  letter-spacing: 0em;
  border-bottom: 1px solid #DBDBDB;
  padding: 0 0 1rem;
}

#main.page_airplane_search .column .left_column .tools .block ul {
  padding: 1rem 0 0;
}

#main.page_airplane_search .column .left_column .tools .block ul li {
  padding: 0 0 1rem;
}

#main.page_airplane_search .column .left_column .tools .block ul li:last-child {
  padding-bottom: 0;
}

#main.page_airplane_search .column .left_column .tools .block ul li.isNotSelect {
  display: none;
}

#main.page_airplane_search .column .right_column {
  width: 51rem;
}

#main.page_airplane_search .column_low_price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: distribute;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_airplane_search .error_msg {
  display: none;
  padding: 2.5rem 0;
}

#main.page_airplane_search .items .box {
  border-radius: 0.5rem;
  -webkit-box-shadow: 0em 0.1875em 0.75em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.1875em 0.75em 0em rgba(0, 0, 0, 0.16);
  background-color: #ffffff;
  overflow: hidden;
  margin: 0 0 1rem;
}

#main.page_airplane_search .items .box .display_top a {
  position: relative;
  padding: 1.5rem;
  color: #000000;
  transition: background 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

html.pc #main.page_airplane_search .items .box .display_top a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_airplane_search .items .box .display_top a .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

#main.page_airplane_search .items .box .display_top a .airline {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_airplane_search .items .box .display_top a .airline .logo {
  width: 5.8125rem;
  position: relative;
  display: block;
  border-radius: 0.125rem;
  overflow: hidden;
  margin-right: 1.5rem;
}

#main.page_airplane_search .items .box .display_top a .airline .logo:before {
  content: '';
  display: block;
  padding: 41.79104% 0 0 0;
}

#main.page_airplane_search .items .box .display_top a .airline .logo > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#main.page_airplane_search .items .box .display_top a .airline .name {
  width: 5.75rem;
}

#main.page_airplane_search .items .box .display_top a .from_to {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_airplane_search .items .box .display_top a .from_to dl {
  margin-right: 2.75rem;
  text-align: center;
}

#main.page_airplane_search .items .box .display_top a .from_to dl:last-child {
  margin-right: 0;
}

#main.page_airplane_search .items .box .display_top a .from_to dl:first-child dt {
  position: relative;
}

#main.page_airplane_search .items .box .display_top a .from_to dl:first-child dt:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -2.125rem;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.75rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_arrow_l.svg") no-repeat center transparent;
  background-size: contain;
}

#main.page_airplane_search .items .box .display_top a .from_to dl dt {
  font-size: 2rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

#main.page_airplane_search .items .box .display_top a .from_to dl dd {
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  color: #80868B;
  padding: 0.25rem 0 0;
}

#main.page_airplane_search .items .box .display_top a .price {
  text-align: right;
  width: 16rem;
  color: #F64E83;
  font-family: Arial,sans-serif;
  font-size: 2rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

#main.page_airplane_search .items .box .display_top a .price span {
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_airplane_search .items .box .display_top a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 1.5rem;
  margin-top: -1.125em;
  width: 2.25em;
  height: 2.25em;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_arrow.svg") no-repeat center transparent;
  background-size: contain;
  transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

html.pc #main.page_airplane_search .items .box .display_top a:hover {
  background-color: #F2F2F2;
}

#main.page_airplane_search .items .box.isOpen .display_top a:after {
  transform: rotate(180deg);
}

#main.page_airplane_search .items .box .display_bottom {
  overflow: hidden;
  height: 0;
}

#main.page_airplane_search .items .box .display_bottom ul {
  border-top: 1px dashed #DBDBDB;
}

#main.page_airplane_search .items .box .display_bottom ul li:last-child {
  border-bottom: none;
}

#main.page_airplane_search .items .box .display_bottom ul li a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 1rem;
  color: #80868B;
  background-color: #FAFAFA;
  border-bottom: 1px solid #DBDBDB;
  transition: background 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#main.page_airplane_search .items .box .display_bottom ul li a .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

#main.page_airplane_search .items .box .display_bottom ul li a .wrap_detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin-right: 2.5rem;
}

#main.page_airplane_search .items .box .display_bottom ul li a .wrap_detail .category {
  width: 13.5625rem;
}

#main.page_airplane_search .items .box .display_bottom ul li a .wrap_detail .seat {
  width: 9.9375rem;
}

#main.page_airplane_search .items .box .display_bottom ul li a .wrap_price {
  width: 10.5rem;
}

#main.page_airplane_search .items .box .display_bottom ul li a .category {
  font-weight: bold;
}

#main.page_airplane_search .items .box .display_bottom ul li a .price {
  color: #F64E83;
  font-family: Arial,sans-serif;
  font-weight: bold;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_airplane_search .items .box .display_bottom ul li a .wrap_ponta_point {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 0.375rem 0 0;
}

#main.page_airplane_search .items .box .display_bottom ul li a .wrap_ponta_point .icon {
  margin-top: -0.125rem;
}

#main.page_airplane_search .items .box .display_bottom ul li a .status {
  width: 6.5rem;
  text-align: center;
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_airplane_search .items .box .display_bottom ul li a .arrow {
  position: absolute;
  top: 50%;
  right: 1.5rem;
  width: 2.25rem;
  height: 2.25rem;
  margin-top: -1.125rem;
  transform: rotate(-90deg);
}

#main.page_airplane_search .items .box .display_bottom ul li a .arrow span {
  display: block;
  width: 100%;
  height: 100%;
}

#main.page_airplane_search .items .box .display_bottom ul li a .arrow span svg path {
  fill: #DBDBDB;
}

#main.page_airplane_search .items .box .display_bottom ul li a .seatCount {
  position: absolute;
  right: 3rem;
}

html.pc #main.page_airplane_search .items .box .display_bottom ul li a:hover {
  background-color: #F2F2F2;
}

#main.page_airplane_search .items .box .display_bottom ul li.isNotSelect {
  display: none;
}

#main.page_airplane_search .items .box.isNotSelect {
  display: none;
}

#main.page_airplane_search .label_kind {
  display: block;
  border-radius: 0.125rem;
  border: 1px solid #DBDBDB;
  background-color: #ffffff;
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  text-align: center;
  width: 4.625rem;
  padding: 0.25rem 0;
  box-sizing: border-box;
  color: #80868B;
}

#main.page_airplane_search .label_kind:before {
  content: "変更可";
}

#main.page_airplane_search .label_kind.static:before {
  content: "変更不可";
}

#main.page_airplane_search .label_box {
  z-index: 3;
  width: 1.5em;
}

#main.page_airplane_search .label_sf {
  display: inline-block;
  position: relative;
  z-index: 4;
}

#main.page_airplane_search .label_sf:before {
  content: "";
}

#main.page_airplane_search .label_sf.static {
  float: left;
  cursor: pointer;
  border-radius: 50%;
  border: 1px solid #80868B;
  background-color: #80868B;
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  text-align: center;
  height: 1.125rem;
  width: 1.125rem;
  padding: 0.00313rem 0;
  box-sizing: border-box;
  color: #ffffff;
  margin-right: 0.5rem;
  vertical-align: middle;
  line-height: 1.4em;
}

#main.page_airplane_search .label_sf.static:before {
  content: "?";
}

#main.page_airplane_search .label_sf.static:hover > .sf_balloon {
  display: inline-block;
}

#main.page_airplane_search .label_sf.static.isNotSelect {
  display: none;
}

#main.page_airplane_search .ov-v {
  overflow: visible;
  transform: initial;
}

#main.page_airplane_search .sf_balloon {
  display: none;
  position: relative;
  text-align: left;
  top: -3.5rem;
  right: 20rem;
  margin: 1em 0;
  padding: 0.5rem;
  width: 18rem;
  color: #80868B;
  font-size: 0.875rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: normal;
  background: #ffffff;
  border: solid 1px #DBDBDB;
  box-sizing: border-box;
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.4);
  border-radius: 5px;
  z-index: 10;
}

#main.page_airplane_search .sf_balloon:before {
  content: "";
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  right: -26px;
  top: 20px;
  border-right: 23px solid #dbdbdb;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  transform: rotate(180deg);
}

#main.page_airplane_search .sf_balloon:after {
  content: "";
  position: absolute;
  right: -24px;
  top: 20px;
  border-right: 24px solid #ffff;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  transform: rotate(180deg);
  z-index: 9;
}

#main.page_airplane_search .sf_balloon p {
  font-size: 0.875rem;
  line-height: 1.71429em;
  letter-spacing: 0em;
  color: #80868B;
}

#main.page_airplane_search .notes {
  padding: 5rem 0 0;
}

#main.page_airplane_search .notes p + p {
  margin-top: 1.25rem;
}

#main.page_airplane_search .notes p > span {
  display: block;
  padding: 0 0 0.3125rem;
}

#main.page_airplane_search .section_chosen_ticket {
  display: none;
}

#main.page_airplane_search .section_chosen_ticket .affiliate_title {
  color: #F64E83;
}

#main.page_airplane_search .section_chosen_ticket .block + .block {
  margin-top: 3rem;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_airplane_search .section_chosen_ticket .block > dl > dt {
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

#main.page_airplane_search .section_chosen_ticket .block > dl > dd {
  width: 64rem;
}

#main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket {
  padding: 1.5rem;
  border-radius: 0.5rem;
  border: 1px solid #DBDBDB;
  background-color: #FAFAFA;
}

#main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 0 0 1.5625rem;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .airline_logo {
  width: 5.8125rem;
  position: relative;
  display: block;
  border-radius: 0.125rem;
  overflow: hidden;
  margin-right: 1.5rem;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .airline_logo:before {
  content: '';
  display: block;
  padding: 41.79104% 0 0 0;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .airline_logo > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .name {
  width: 5.75rem;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .from_to {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin-right: 3.4375rem;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .from_to dl {
  margin-right: 3.5rem;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .from_to dl:last-child {
  margin-right: 0;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .from_to dl dt {
  color: #80868B;
  padding: 0 0 0.5rem;
  font-weight: bold;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .from_to dl dd {
  font-size: 2rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .from_to dl:first-child dd {
  position: relative;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .from_to dl:first-child dd:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -2.5rem;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.75rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_arrow_l.svg") no-repeat center transparent;
  background-size: contain;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .type {
  width: 11.75rem;
  color: #80868B;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .type .category {
  font-weight: bold;
  padding: 0 0 0.3125rem;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price {
  width: 11.75rem;
  text-align: right;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .total {
  font-family: Arial,sans-serif;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  color: #F64E83;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .other {
  padding: 0.25rem 0 0.5rem;
  color: #F64E83;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .btn a {
  position: relative;
  display: inline-block;
  padding: 0 1.25rem 0 0;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .btn a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 0.75rem;
  height: 0.4375rem;
  margin-top: -0.21875rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_link.svg") no-repeat center transparent;
  background-size: contain;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .btn a .txt {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .btn a .txt .close {
  display: none;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .btn a.isOpen:after {
  transform: rotate(180deg);
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .btn a.isOpen .txt .open {
  display: none;
}

html.pc #main.page_airplane_search .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .btn a.isOpen .txt .close {
  display: block;
}

#main.page_airplane_search .section_chosen_ticket .block.applicationAmount {
  margin-top: 1.5rem;
  text-align: right;
  font-family: Arial,sans-serif;
  font-weight: bold;
}

#main.page_airplane_search .section_chosen_ticket .block.applicationAmount .title {
  margin-right: 0.25rem;
  font-size: 1.125rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_airplane_search .section_chosen_ticket .block.applicationAmount .amount {
  margin-right: 1rem;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_airplane_search .section_chosen_ticket .block.lccAdditionalFee {
  margin-top: 1.5rem;
  text-align: right;
  font-family: Arial,sans-serif;
}

#main.page_airplane_search .section_chosen_ticket .block.lccAdditionalFee .title {
  margin-right: 0.25rem;
  font-size: 1.125rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_airplane_search .section_chosen_ticket .block.lccAdditionalFee .fee {
  margin-right: 1rem;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_airplane_search .section_chosen_ticket .block.payment {
  margin-top: 0;
}

#main.page_airplane_search .section_chosen_ticket .button {
  padding: 5rem 0 0;
}

#main.page_airplane_search .section_chosen_ticket.isComplete, #main.page_airplane_search .section_chosen_ticket.selected {
  display: block;
}

#main.page_airplane_search .section_chosen_ticket .applicationAmount, #main.page_airplane_search .section_chosen_ticket .payment {
  display: none;
}

#main.page_airplane_search .section_chosen_ticket .lccAdditionalFee {
  display: none;
}

#main.page_airplane_search .section_chosen_ticket.isComplete .applicationAmount, #main.page_airplane_search .section_chosen_ticket.isComplete .payment {
  display: block;
}

#main.page_airplane_search .section_chosen_ticket.isComplete .pay_methods {
  display: block;
}

#main.page_airplane_search .section_chosen_ticket.isComplete .lccAdditionalFee.travelkoLanding {
  display: block;
}

#main.page_airplane_search .section_chosen_ticket.isComplete .lccAdditionalFee.skyscannerLanding {
  display: block;
}

#main.page_airplane_search .section_chosen_ticket .going, #main.page_airplane_search .section_chosen_ticket .back {
  display: none;
}

#main.page_airplane_search .section_chosen_ticket .going.isComplete, #main.page_airplane_search .section_chosen_ticket .back.isComplete {
  display: block;
}

#main.page_airplane_search .section_chosen_ticket .back {
  margin-top: 3rem;
}

#main.page_airplane_search .section_chosen_ticket .back[disabled] {
  display: none !important;
}

#main.page_airplane_search div#loginForm {
  display: none;
}

#main.page_airplane_search div#customerInputForm {
  display: none;
}

#main.page_airplane_search .information {
  padding: 5rem 0 2.5rem;
}

#main.page_airplane_search .information .block {
  padding: 2.5rem;
  margin: 0 0 2.8125rem;
  box-sizing: border-box;
}

#main.page_airplane_search .information .block:last-child {
  margin-bottom: 0;
}

#main.page_airplane_search .information .block .section_inner {
  width: 100%;
  padding: 0;
}

#main.page_airplane_search .information .block .section_inner h4 {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0 0 1rem;
}

#main.page_airplane_surprise .mainvisual {
  background: no-repeat center transparent;
  background-size: cover;
  height: 14rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_airplane_surprise .mainvisual .inner h2 {
  text-align: center;
  padding: 0;
  color: #ffffff;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
  font-size: 3rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_airplane_surprise .mainvisual .inner .price {
  margin: 0 auto;
  width: 38rem;
  height: 8.3125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  background-color: rgba(255, 255, 255, 0.9);
  border-radius: 0.25rem;
}

#main.page_airplane_surprise .mainvisual .inner .price span {
  display: block;
}

#main.page_airplane_surprise .mainvisual .inner .price span:nth-of-type(1) {
  border-radius: 0.125rem;
  padding: 0.625rem 1rem;
  background-color: #0074BD;
  color: #ffffff;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

#main.page_airplane_surprise .mainvisual .inner .price span:nth-of-type(2) {
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
  margin: 0 1.5rem 0 1rem;
}

#main.page_airplane_surprise .mainvisual .inner .price span:nth-of-type(3) {
  font-size: 3rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-family: Arial,sans-serif;
  font-weight: bold;
  color: #F64E83;
}

#main.page_airplane_surprise .price_list {
  background-color: transparent;
  padding: 2.5rem 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_airplane_surprise .price_list .block {
  position: relative;
  flex-grow: 0;
  flex-shrink: 0;
  width: 18.5rem;
  height: 8.8125rem;
  text-align: center;
  margin: 0 0.5rem;
}

#main.page_airplane_surprise .price_list .block a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  /*
    * row(初期値) : 子要素を左から右に配置
    * row-reverse : 子要素を右から左に配置
    * column : 子要素を上から下に配置
    * column-reverse : 子要素を下から上に配置
    */
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%;
  color: #000000;
  background-color: #ffffff;
  border-radius: 0.5rem;
  -webkit-box-shadow: 0em 0.0625em 0.25em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.0625em 0.25em 0em rgba(0, 0, 0, 0.16);
  overflow: hidden;
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), box-shadow 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#main.page_airplane_surprise .price_list .block a .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

html.pc #main.page_airplane_surprise .price_list .block a:hover {
  background-color: #F2F2F2;
  -webkit-box-shadow: 0em 0.0625em 0.125em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.0625em 0.125em 0em rgba(0, 0, 0, 0.16);
}

#main.page_airplane_surprise .price_list .block .m {
  width: 15.5rem;
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  margin: 0 auto 1rem;
  padding: 0 0 1rem;
  border-bottom: 1px solid #DBDBDB;
  font-weight: bold;
}

#main.page_airplane_surprise .price_list .block .p {
  font-size: 2.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-family: Arial,sans-serif;
  font-weight: bold;
  color: #F64E83;
}

#main.page_airplane_surprise .price_list .block .flag {
  position: absolute;
  top: 1rem;
  left: -0.5rem;
  width: 5.3125rem;
  height: 1.875rem;
}

#main.page_airplane_surprise .price_list .block .flag:before {
  content: "";
  position: absolute;
  bottom: -0.3125rem;
  left: 0;
  display: block;
  width: 0.5rem;
  height: 100%;
  background-color: #B71347;
  border-bottom-left-radius: 0.25rem;
}

#main.page_airplane_surprise .price_list .block .flag:after {
  position: relative;
  content: "最安値";
  border-radius: 0.25rem;
  border-bottom-left-radius: 0;
  background-color: #F64E83;
  color: #ffffff;
  font-size: 1.125rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  height: 100%;
}

#main.page_airplane_surprise .calender {
  padding: 0 0 5rem;
}

#main.page_airplane_surprise .calender h2 {
  padding: 4rem 0;
}

#main.page_airplane_surprise .calender .wrap_calender .slide_wrap {
  width: 60.3125rem;
}

#main.page_airplane_surprise .calender .wrap_calender .wrap .box {
  width: 28.4375rem;
  margin-right: 3.4375rem;
}

#main.page_airplane_surprise .calender .wrap_calender .wrap .box ul:nth-of-type(1) li {
  height: auto;
  padding: 0 0 0.75rem;
}

#main.page_airplane_surprise .calender .wrap_calender .wrap .box ul li {
  width: 4.0625rem;
  height: 4.0625rem;
}

#main.page_airplane_surprise .information {
  padding: 5rem 0 2.5rem;
}

#main.page_airplane_surprise .information .block {
  padding: 2.5rem;
  margin: 0 0 2.8125rem;
  box-sizing: border-box;
}

#main.page_airplane_surprise .information .block:last-child {
  margin-bottom: 0;
}

#main.page_airplane_surprise .information .block .section_inner {
  width: 100%;
  padding: 0;
}

#main.page_airplane_surprise .information .block .section_inner h4 {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0 0 1rem;
}

#main.page_airplane_search_t .wrap_total_price_detail {
  display: block;
}

#main.page_airplane_search_t .alertText .red {
  font-size: 1.5em;
  font-weight: bold;
}

#main.page_airplane_search_t .section.plan_detail {
  background-color: transparent;
}

#main.page_airplane_search_t .section.plan_detail > .section_inner {
  position: relative;
}

html.pc #main.page_airplane_search_t .section.plan_detail > .section_inner {
  padding: 1.5rem 6.5rem 0;
  -webkit-box-shadow: 0em 0.1875em 0.75em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.1875em 0.75em 0em rgba(0, 0, 0, 0.16);
  border-radius: 0.5rem;
}

#main.page_airplane_search_t .section.plan_detail > .section_inner .change {
  top: 1rem;
  right: 1.5rem;
}

html.pc #main.page_airplane_search_t .section.plan_detail > .section_inner .change {
  position: absolute;
}

#main.page_airplane_search_t .hotelfee_area {
  border: 3px solid #f23939;
  padding: 20px;
  background-color: #feebeb;
  margin: 1.875rem 0;
}

#main.page_airplane_search_t .hotelfee_area span {
  color: gray;
  font-size: 12px;
}

#main.page_airplane_search_t .section.attention {
  background-color: #FFF8DE;
}

#main.page_airplane_search_t .section.attention .section_inner {
  text-align: center;
}

#main.page_airplane_search_t .section.attention .section_inner p {
  font-weight: bold;
  color: #F64E83;
  padding: 0 0 1.875rem;
}

#main.page_airplane_search_t .section.attention .section_inner .css_checkbox {
  display: inline-block;
}

#main.page_airplane_search_t .section_chosen_ticket {
  display: none;
}

#main.page_airplane_search_t .section_chosen_ticket .affiliate_title {
  color: #F64E83;
}

#main.page_airplane_search_t .section_chosen_ticket .block + .block {
  margin-top: 3rem;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_airplane_search_t .section_chosen_ticket .block > dl > dt {
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

#main.page_airplane_search_t .section_chosen_ticket .block > dl > dd {
  width: 64rem;
}

#main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket {
  padding: 1.5rem;
  border-radius: 0.5rem;
  border: 1px solid #DBDBDB;
  background-color: #FAFAFA;
}

#main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 0 0 .5rem;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .airline_logo {
  width: 5.8125rem;
  position: relative;
  display: block;
  border-radius: 0.125rem;
  overflow: hidden;
  margin-right: .5rem;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .airline_logo:before {
  content: '';
  display: block;
  padding: 41.79104% 0 0 0;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .airline_logo > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .name {
  width: 5.75rem;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .from_to {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin-right: .5rem;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .from_to dl {
  margin-right: 3.5rem;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .from_to dl:last-child {
  margin-right: 0;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .from_to dl dt {
  color: #000;
  font-size: .8em;
  text-align: center;
  padding: 0 0 0.5rem;
  font-weight: bold;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .from_to dl dd {
  font-size: 2rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  text-align: center;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .from_to dl:first-child dd {
  position: relative;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .from_to dl:first-child dd:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -2.5rem;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.75rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_arrow_l.svg") no-repeat center transparent;
  background-size: contain;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .type {
  width: 11.75rem;
  color: #80868B;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .type .category {
  font-weight: bold;
  padding: 0 0 0.3125rem;
  text-align: center;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .type .seat {
  text-align: center;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price {
  width: 7.75rem;
  text-align: right;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .total {
  font-family: Arial,sans-serif;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  color: #F64E83;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .other {
  padding: 0.25rem 0 0.5rem;
  color: #F64E83;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .btn a {
  position: relative;
  display: inline-block;
  padding: 0 1.25rem 0 0;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .btn a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 0.75rem;
  height: 0.4375rem;
  margin-top: -0.21875rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_link.svg") no-repeat center transparent;
  background-size: contain;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .btn a .txt {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .btn a .txt .close {
  display: none;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .btn a.isOpen:after {
  transform: rotate(180deg);
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .btn a.isOpen .txt .open {
  display: none;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .block > dl > dd .ticket .middle .wrap_price .btn a.isOpen .txt .close {
  display: block;
}

#main.page_airplane_search_t .section_chosen_ticket .block.applicationAmount {
  margin-top: 1.5rem;
  text-align: right;
  font-family: Arial,sans-serif;
  font-weight: bold;
}

#main.page_airplane_search_t .section_chosen_ticket .block.applicationAmount .title {
  margin-right: 0.25rem;
  font-size: 1.125rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_airplane_search_t .section_chosen_ticket .block.applicationAmount .amount {
  margin-right: 1rem;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_airplane_search_t .section_chosen_ticket .block.lccAdditionalAmount {
  margin-top: 1.5rem;
  text-align: right;
  font-family: Arial,sans-serif;
}

#main.page_airplane_search_t .section_chosen_ticket .block.lccAdditionalAmount .title {
  margin-right: 0.25rem;
  font-size: 1.125rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_airplane_search_t .section_chosen_ticket .block.lccAdditionalAmount .amount {
  margin-right: 1rem;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_airplane_search_t .section_chosen_ticket .block.payment {
  margin-top: 0;
}

#main.page_airplane_search_t .section_chosen_ticket .button {
  padding: 5rem 0 0;
}

#main.page_airplane_search_t .section_chosen_ticket.isComplete, #main.page_airplane_search_t .section_chosen_ticket.selected {
  display: block;
}

#main.page_airplane_search_t .section_chosen_ticket .applicationAmount, #main.page_airplane_search_t .section_chosen_ticket .payment {
  display: none;
}

#main.page_airplane_search_t .section_chosen_ticket.isComplete .applicationAmount, #main.page_airplane_search_t .section_chosen_ticket.isComplete .payment {
  display: block;
}

#main.page_airplane_search_t .section_chosen_ticket.isComplete .pay_methods {
  display: block;
}

#main.page_airplane_search_t .section_chosen_ticket .going, #main.page_airplane_search_t .section_chosen_ticket .back {
  display: none;
}

#main.page_airplane_search_t .section_chosen_ticket .going.isComplete, #main.page_airplane_search_t .section_chosen_ticket .back.isComplete {
  display: block;
}

#main.page_airplane_search_t .section_chosen_ticket .back {
  margin-top: 3rem;
}

#main.page_airplane_search_t .section_chosen_ticket .back[disabled] {
  display: none !important;
}

html.pc #main.page_airplane_search_t .section_chosen_ticket .section_price_confirm .display_bottom .display_bottom_inner .price_detail dl dt {
  flex-grow: 3;
  text-align: right;
}

#main.page_airplane_search_t .label_box {
  z-index: 3;
  width: 1.5em;
}

#main.page_airplane_search_t .label_sf {
  display: inline-block;
  position: relative;
  z-index: 4;
}

#main.page_airplane_search_t .label_sf:before {
  content: "";
}

#main.page_airplane_search_t .label_sf.static {
  float: left;
  cursor: pointer;
  border-radius: 50%;
  border: 1px solid #80868B;
  background-color: #80868B;
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  text-align: center;
  height: 1.125rem;
  width: 1.125rem;
  padding: 0.00313rem 0;
  box-sizing: border-box;
  color: #ffffff;
  margin-right: 0.5rem;
  vertical-align: middle;
  line-height: 1.4em;
}

#main.page_airplane_search_t .label_sf.static:before {
  content: "?";
}

#main.page_airplane_search_t .label_sf.static:hover > .sf_balloon {
  display: inline-block;
}

#main.page_airplane_search_t .label_sf.static.isNotSelect {
  display: none;
}

#main.page_airplane_search_t .ov-v {
  overflow: visible;
  transform: initial;
}

#main.page_airplane_search_t .sf_balloon {
  display: none;
  position: relative;
  text-align: left;
  top: -3.5rem;
  right: 20rem;
  margin: 1em 0;
  padding: 0.5rem;
  width: 18rem;
  color: #80868B;
  font-size: 0.875rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: normal;
  background: #ffffff;
  border: solid 1px #DBDBDB;
  box-sizing: border-box;
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.4);
  border-radius: 5px;
  z-index: 10;
}

#main.page_airplane_search_t .sf_balloon:before {
  content: "";
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  right: -26px;
  top: 20px;
  border-right: 23px solid #dbdbdb;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  transform: rotate(180deg);
}

#main.page_airplane_search_t .sf_balloon:after {
  content: "";
  position: absolute;
  right: -24px;
  top: 20px;
  border-right: 24px solid #ffff;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  transform: rotate(180deg);
  z-index: 9;
}

#main.page_airplane_search_t .sf_balloon p {
  font-size: 0.875rem;
  line-height: 1.71429em;
  letter-spacing: 0em;
  color: #80868B;
}

#main.page_airplane_search_t .label_kind {
  display: block;
  border-radius: 0.125rem;
  border: 1px solid #DBDBDB;
  background-color: #ffffff;
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  text-align: center;
  width: 4.625rem;
  padding: 0.25rem 0;
  box-sizing: border-box;
  color: #80868B;
}

#main.page_airplane_search_t .label_kind:before {
  content: "変更可";
}

#main.page_airplane_search_t .label_kind.static:before {
  content: "変更不可";
}

#main.page_airplane_search_t .notes {
  padding: 5rem 0 0;
}

#main.page_airplane_search_t .notes p + p {
  margin-top: 1.25rem;
}

#main.page_airplane_search_t .notes p > span {
  display: block;
  padding: 0 0 0.3125rem;
}

#main.page_signs #mainbox {
  text-align: left;
  margin-top: 0.625rem;
  margin-left: 25%;
  margin-right: 25%;
}

#main.page_signs #mainbox #title h1 {
  font-weight: bold;
}

#main.page_signs #mainbox #case01 {
  display: block;
  margin-bottom: 0.75rem;
}

#main.page_signs #mainbox #case01 table {
  height: 2rem;
  margin: 0.5rem 0 0 0;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 0.875rem;
}

#main.page_signs #mainbox #case01 table tr {
  margin-left: 1.125rem;
}

#main.page_signs #mainbox #case01 table th {
  width: 12.5rem;
  background-color: #EEEEEE;
}

#main.page_signs #mainbox #case01 table th div {
  margin-left: 0.375rem;
  font-weight: bold;
}

#main.page_signs #mainbox #case01 table td {
  padding: 0.375rem;
}

#main.page_signs #mainbox #case01 table table {
  margin: 0;
}

#main.page_signs #mainbox #case01 table table td {
  padding: 0;
}

#main.page_signs #mainbox #case01 #adminName {
  padding-left: 0.625rem;
}

.wrap_recommend_ticket {
  padding: 2.5rem 0 0;
}

.wrap_recommend_ticket .items ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.wrap_recommend_ticket .items ul li {
  flex-grow: 0;
  flex-shrink: 1;
  width: 12rem;
  height: 8.0625rem;
  margin: 0 1rem 1rem 0;
}

.wrap_recommend_ticket .items ul li:last-child {
  margin-right: 0;
}

.wrap_recommend_ticket .items ul li a {
  display: block;
  height: 100%;
  -webkit-box-shadow: 0em 0.0625em 0.25em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.0625em 0.25em 0em rgba(0, 0, 0, 0.16);
  border-radius: 0.25rem;
  padding: 1rem;
  box-sizing: border-box;
  background-color: #ffffff;
  transition: background 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), box-shadow 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

html.pc .wrap_recommend_ticket .items ul li a:hover {
  background-color: #F2F2F2;
  -webkit-box-shadow: 0em 0.0625em 0.125em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.0625em 0.125em 0em rgba(0, 0, 0, 0.16);
}

.wrap_recommend_ticket .items ul li a .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

.wrap_recommend_ticket .items ul li a .from_to {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 100%;
  border-bottom: 1px solid #DBDBDB;
  padding: 0 0 1rem;
}

.wrap_recommend_ticket .items ul li a .from_to dl {
  margin-right: 2.5rem;
}

.wrap_recommend_ticket .items ul li a .from_to dl:last-child {
  margin-right: 0;
}

.wrap_recommend_ticket .items ul li a .from_to dl:first-child dt {
  position: relative;
}

.wrap_recommend_ticket .items ul li a .from_to dl:first-child dt:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -2rem;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.75rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_arrow_l.svg") no-repeat center transparent;
  background-size: contain;
}

.wrap_recommend_ticket .items ul li a .from_to dl dt {
  font-weight: bold;
  color: #000000;
}

.wrap_recommend_ticket .items ul li a .from_to dl dd {
  padding: 0.5rem 0 0;
  color: #80868B;
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

.wrap_recommend_ticket .items ul li a .price {
  padding: 1rem 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  font-family: Arial,sans-serif;
  font-weight: bold;
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  color: #F64E83;
}

html.pc .wrap_recommend_ticket .items ul:nth-of-type(1) li {
  width: 18.5rem;
  height: 4.5625rem;
}

html.pc .wrap_recommend_ticket .items ul:nth-of-type(1) li a {
  padding: 1rem 0.5rem 1rem 1rem;
}

html.pc .wrap_recommend_ticket .items ul:nth-of-type(1) li a .wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

html.pc .wrap_recommend_ticket .items ul:nth-of-type(1) li a .wrap .from_to {
  width: auto;
  border-bottom: none;
  padding: 0;
}

html.pc .wrap_recommend_ticket .items ul:nth-of-type(1) li a .wrap .price {
  padding: 0;
}

html.pc .wrap_recommend_ticket .items ul:last-child li {
  margin-bottom: 0;
}

html.pc .flight.pick_modal[data-id=passengers] .passengers_error {
  opacity: 0;
  position: absolute;
  display: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  height: 2.75rem;
  z-index: 100;
  margin: -2.75rem 0 0;
}

html.pc .flight.pick_modal[data-id=passengers] .passengers_error p {
  height: 100%;
  white-space: nowrap;
  box-sizing: border-box;
  border-radius: 0.5rem;
  border: 1px solid #F23939;
  color: #F23939;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0 1rem;
  background-color: #FFF8DE;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.news_block {
  padding: 4.5rem 0 0;
}

html.pc .news_block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.news_block .section_news_list {
  position: relative;
  width: 25rem;
  padding: 0 0 3.75rem;
  flex-grow: 0;
  flex-shrink: 1;
}

.news_block .section_news_list .section_inner {
  padding: 0;
}

html.pc .news_block .section_news_list .section_inner ul li a {
  padding-right: 2rem;
}

html.pc .news_block .section_news_list .section_inner ul li a:before {
  right: 0;
}

html.pc .news_block .section_news_list .section_inner .css_button {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  border-color: #0074BD;
  border-radius: 0.1875rem;
}

#main.mypage .wrap_page {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 1.5rem 0 0;
}

#main.mypage .wrap_page .side_nav {
  width: 23.5rem;
}

#main.mypage .wrap_page .side_nav h3 {
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 1.5rem 0;
}

#main.mypage .wrap_page .side_nav h4 {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 1rem 0;
}

#main.mypage .wrap_page .side_nav ul {
  border-top: 1px solid #DBDBDB;
  padding: 0.75rem 0 4rem;
}

#main.mypage .wrap_page .side_nav ul li {
  padding: 0 0 0.75rem;
}

#main.mypage .wrap_page .side_nav ul li:last-child {
  padding-bottom: 0;
}

#main.mypage .wrap_page .side_nav ul li.isActive a {
  font-weight: bold;
}

#main.mypage .wrap_page .side_nav ul li a {
  color: #000000;
}

html.pc #main.mypage .wrap_page .side_nav ul li a:hover {
  color: #80868B;
}

#main.mypage .wrap_page .mypage_body {
  width: 51rem;
}

#main.mypage .wrap_page .mypage_body .list_nav {
  margin-bottom: 2.5rem;
}

html.pc #main.mypage .wrap_page .mypage_body .wrap_button {
  padding-left: 0;
  padding-right: 0;
}

#main.mypage .wrap_page .mypage_body .wrap_ads {
  padding: 2.5rem 0 0;
}

#main.mypage .wrap_page .mypage_body .wrap_ads ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

#main.mypage .wrap_page .mypage_body .wrap_ads ul li {
  width: 49%;
  margin: 0 .5%;
}

#main.mypage .wrap_page .mypage_body .wrap_ads ul li a {
  position: relative;
  display: block;
}

#main.mypage .wrap_page .mypage_body .wrap_ads ul li a:before {
  content: '';
  display: block;
  padding: 31.25% 0 0 0;
}

#main.mypage .wrap_page .mypage_body .wrap_ads ul li a > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#main.mypage .section {
  padding: 0;
}

#main.mypage .section .section_inner {
  padding: 1rem 0 2.5rem;
}

#main.mypage .attention_faq, #main.mypage .attention_error {
  background-color: #FFF8DE;
}

#main.mypage .attention_faq .section_inner, #main.mypage .attention_error .section_inner {
  padding: 2.5rem 0;
}

#main.mypage .attention_faq p, #main.mypage .attention_error p {
  padding: 1rem 0;
}

#main.mypage .attention_error {
  background-color: rgba(242, 57, 57, 0.11);
  border: 2px solid #F23939;
  box-sizing: border-box;
}

#main.mypage .section + h2 {
  margin-top: 2.5rem;
}

#main.mypage h2 {
  position: relative;
  font-size: 2rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 1.5rem 0;
}

#main.mypage h2 .paylater {
  display: inline-block;
  position: relative;
  left: 20px;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
  margin-top: -0.5em;
  color: #F23939;
}

#main.mypage h2 .to_list {
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: normal;
  margin-top: -0.5em;
}

#main.mypage h2 .to_list a {
  display: block;
  position: relative;
  color: #0074BD;
  padding: 0 0.875rem 0 0;
}

html.pc #main.mypage h2 .to_list a:hover {
  color: #0067A8;
}

html.pc #main.mypage h2 .to_list a:hover svg path {
  fill: #0067A8;
}

#main.mypage h2 .to_list a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 0.75rem;
  height: 0.4375rem;
  margin-top: -0.21875rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_link.svg") no-repeat center transparent;
  background-size: contain;
}

#main.mypage h2 .to_list a:after {
  transform: rotate(-90deg);
}

#main.mypage .toggle_target + h3 {
  margin-top: 2.5rem;
}

#main.mypage h3 {
  position: relative;
  font-size: 2rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 1.5rem 0;
}

#main.mypage h3 a {
  display: block;
}

#main.mypage h3 a.isOpen .icon_arrow {
  transform: rotate(180deg);
}

html.pc #main.mypage h3 a:hover .icon_arrow svg path {
  fill: #80868B;
}

#main.mypage h3 span[class^="icon_"] {
  display: block;
  position: relative;
  padding: 0 0 0 2.75rem;
}

#main.mypage h3 span[class^="icon_"]:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 2.25rem;
  height: 2.25rem;
  background: no-repeat center transparent;
  background-size: contain;
  margin-top: -1.125rem;
}

#main.mypage h3 span[class^="icon_"].icon_airplane:before {
  background-image: url("https://img2.tour.l-tike.com/image/common/pc/icon_air_blue.svg");
}

#main.mypage h3 span[class^="icon_"].icon_hotel:before {
  background-image: url("https://img2.tour.l-tike.com/image/common/pc/icon_hotel_blue.svg");
}

#main.mypage h3 span[class^="icon_"].icon_dp {
  padding-left: 5rem;
}

#main.mypage h3 span[class^="icon_"].icon_dp:before {
  width: 4.5rem;
  background-image: url("https://img2.tour.l-tike.com/image/common/pc/icon_set_blue.svg");
}

#main.mypage h3 span[class^="icon_"].icon_rdp:before {
  background-image: url("https://img2.tour.l-tike.com/image/common/pc/icon_japan_blue.svg");
}

#main.mypage h3 span[class^="icon_"].icon_arrow {
  position: absolute;
  top: 50%;
  right: 0;
  padding: 0;
  width: 2.25rem;
  height: 2.25rem;
  margin-top: -1.125rem;
  transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#main.mypage h3 span[class^="icon_"].icon_arrow:before {
  display: none;
}

#main.mypage h3 span[class^="icon_"].icon_arrow svg path {
  fill: #000000;
  transition: fill 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#main.mypage .convenience {
  font-weight: bold;
  color: #0074BD;
}

#main.mypage .block_reserved {
  background-color: #fff;
  border-radius: 0.5rem;
  border: 1px solid #DBDBDB;
  margin: 0 0 2.5rem;
  padding: 2.5rem;
}

#main.mypage .block_reserved:last-child {
  margin-bottom: 0;
}

#main.mypage .block_reserved .label {
  padding: 0.5rem 0.625rem;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  display: inline-block;
  color: #ffffff;
  background-color: #F64E83;
  border-radius: 0.125rem;
  margin-bottom: 0.875rem;
}

#main.mypage .block_reserved.cancel {
  background-color: #FAFAFA;
}

#main.mypage .block_reserved.cancel .label {
  background-color: #DBDBDB;
}

#main.mypage .block_reserved .items dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 0 0 0.8125rem;
}

#main.mypage .block_reserved .items dl:last-child {
  padding-bottom: 0;
}

#main.mypage .block_reserved .items dl dt {
  width: 13rem;
  font-weight: bold;
  flex-grow: 0;
  flex-shrink: 0;
}

#main.mypage .block_reserved .items dl dd {
  flex-grow: 1;
  flex-shrink: 1;
}

#main.mypage .block_reserved .items dl dd b {
  color: #F64E83;
}

#main.mypage .block_reserved .buttons {
  padding: 2.5rem 0 0;
}

#main.mypage .zero {
  padding: 0 0 2.5rem;
}

#main.mypage .block_detail {
  background-color: #fff;
  border-radius: 0.5rem;
  border: 1px solid #DBDBDB;
  margin: 0 0 2.5rem;
  padding: 2.5rem;
}

#main.mypage .block_detail:last-child {
  margin-bottom: 0;
}

#main.mypage .block_detail h4 {
  padding: 0 0 1rem;
}

#main.mypage .block_detail.price .section_price_confirm {
  width: 100%;
  background: none;
}

#main.mypage .block_detail.price .section_price_confirm .section_inner {
  width: 100%;
  padding: 0;
  margin: 0;
}

#main.mypage .block_detail.price .section_price_confirm h2 {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0 0 1rem;
  margin: 0;
}

#main.mypage .block_detail.price .section_price_confirm .wrap_price_detail + h3,
#main.mypage .block_detail.price .section_price_confirm .price_detail + h3 {
  padding-top: 2rem;
  border-top: 1px solid #DBDBDB;
}

#main.mypage .block_detail.price .section_price_confirm h3 {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0 0 1rem;
}

#main.mypage .block_detail.price .section_price_confirm h4 {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0 0 1rem;
}

#main.mypage .block_detail.flight_date .box + .box, #main.mypage .block_detail.hotel_date .box + .box {
  padding-top: 1.5rem;
  margin-top: 1.5rem;
  border-top: 1px dashed #DBDBDB;
}

#main.mypage .block_detail.flight_date .box .label, #main.mypage .block_detail.hotel_date .box .label {
  padding: 0.5rem 0.625rem;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  display: inline-block;
  color: #ffffff;
  background-color: #F64E83;
  border-radius: 0.125rem;
  margin-bottom: 0.875rem;
}

#main.mypage .block_detail.flight_date .airline_logo, #main.mypage .block_detail.hotel_date .airline_logo {
  width: 3.875rem;
  position: relative;
  display: block;
  margin: 1rem 0 0.8125rem;
}

#main.mypage .block_detail.flight_date .airline_logo:before, #main.mypage .block_detail.hotel_date .airline_logo:before {
  content: '';
  display: block;
  padding: 48.3871% 0 0 0;
}

#main.mypage .block_detail.flight_date .airline_logo > img, #main.mypage .block_detail.hotel_date .airline_logo > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#main.mypage .block_detail.flight_date .items .wrap, #main.mypage .block_detail.hotel_date .items .wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.mypage .block_detail.flight_date .items dl, #main.mypage .block_detail.hotel_date .items dl {
  flex-shrink: 1;
  flex-grow: 1;
  padding: 0 0 1rem;
}

#main.mypage .block_detail.flight_date .items dl:last-child, #main.mypage .block_detail.hotel_date .items dl:last-child {
  padding-bottom: 0;
}

#main.mypage .block_detail.flight_date .items dl dt, #main.mypage .block_detail.hotel_date .items dl dt {
  color: #80868B;
  padding: 0 0 0.3125rem;
}

#main.mypage .block_detail.flight_date .items dl dd, #main.mypage .block_detail.hotel_date .items dl dd {
  font-weight: bold;
  padding-right: 5px;
}

#main.mypage .block_detail.flight_date .items dl dd .link, #main.mypage .block_detail.hotel_date .items dl dd .link {
  text-align: right;
  font-weight: normal;
}

#main.mypage .block_detail.flight_date .items dl dd .link a, #main.mypage .block_detail.hotel_date .items dl dd .link a {
  text-decoration: underline;
}

#main.mypage .block_detail.flight_date .items dl dd.jointOperator, #main.mypage .block_detail.hotel_date .items dl dd.jointOperator {
  white-space: nowrap;
}

#main.mypage .block_detail.flight_date .items dl.booking_number dd, #main.mypage .block_detail.hotel_date .items dl.booking_number dd {
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.mypage .block_detail.flight_date .items .sch_wrap dl, #main.mypage .block_detail.hotel_date .items .sch_wrap dl {
  flex-shrink: 1;
  flex-grow: 1;
  padding: 0 0 1rem;
}

#main.mypage .block_detail.flight_date .items .sch_wrap dl:last-child, #main.mypage .block_detail.hotel_date .items .sch_wrap dl:last-child {
  padding-bottom: 0;
}

#main.mypage .block_detail.flight_date .items .sch_wrap dl:nth-child(1), #main.mypage .block_detail.hotel_date .items .sch_wrap dl:nth-child(1) {
  width: 35%;
}

#main.mypage .block_detail.flight_date .items .sch_wrap dl:nth-child(2), #main.mypage .block_detail.hotel_date .items .sch_wrap dl:nth-child(2) {
  width: 40%;
}

#main.mypage .block_detail.flight_date .items .booking_number_jal, #main.mypage .block_detail.hotel_date .items .booking_number_jal {
  padding: 0 !important;
  margin-top: 1rem;
}

#main.mypage .block_detail.flight_date .time, #main.mypage .block_detail.hotel_date .time {
  padding: 1rem 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.mypage .block_detail.flight_date .time .from, #main.mypage .block_detail.hotel_date .time .from {
  margin: 0 3.4375rem 0 0;
}

#main.mypage .block_detail.flight_date .time .from .t, #main.mypage .block_detail.hotel_date .time .from .t {
  position: relative;
}

#main.mypage .block_detail.flight_date .time .from .t:after, #main.mypage .block_detail.hotel_date .time .from .t:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -2.5rem;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_arrow_l.svg") no-repeat center transparent;
  background-size: contain;
  margin-top: -0.75rem;
}

#main.mypage .block_detail.flight_date .time .a, #main.mypage .block_detail.hotel_date .time .a {
  font-weight: bold;
  color: #80868B;
}

#main.mypage .block_detail.flight_date .time .d, #main.mypage .block_detail.hotel_date .time .d {
  font-size: 0.875rem;
  line-height: 1em;
  letter-spacing: 0em;
  color: #80868B;
  padding: 0.25rem 0;
}

#main.mypage .block_detail.flight_date .time .t, #main.mypage .block_detail.hotel_date .time .t {
  font-size: 2rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

#main.mypage .block_detail.flight_date .wrap dl:nth-of-type(3) {
  width: 18.75rem;
}

#main.mypage .block_detail.flight_date .date_jal {
  font-weight: bold;
  background: lightgrey;
  padding: 0.75rem;
  display: flex;
  justify-content: space-between;
}

#main.mypage .block_detail.flight_date .person_total_jal {
  padding: 0.75rem 0;
}

#main.mypage .block_detail.flight_date .date_jal_transmit {
  font-weight: bold;
  background: lightgrey;
  display: flex;
  justify-content: space-between;
}

#main.mypage .block_detail.flight_date .transmit {
  background: darkslategrey;
  color: white;
  padding: 0.375rem;
}

#main.mypage .block_detail.flight_date .dep_date {
  padding: 0.375rem;
}

#main.mypage .block_detail.flight_date .transmit_line {
  padding: 1.125rem 0;
}

#main.mypage .block_detail.hotel_date .wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

#main.mypage .block_detail.hotel_date .wrap dl {
  flex-grow: 0;
  flex-shrink: 0;
  margin: 0 3.125rem 0 0;
}

#main.mypage .block_detail.hotel_date .time {
  padding-bottom: 1rem;
}

#main.mypage .block_detail.hotel_date .time .t {
  padding: 0.25rem 0 0;
}

#main.mypage .block_detail .tour_schedule table.schedule {
  border-collapse: collapse;
  width: 100%;
  border: #d1d1d1 1px solid;
  table-layout: fixed;
}

#main.mypage .block_detail .tour_schedule table.schedule th {
  border: #d1d1d1 1px solid;
  text-align: left;
  vertical-align: top;
  background: #f4f4f4;
  font-weight: normal;
  padding: 0.5rem 1rem;
}

#main.mypage .block_detail .tour_schedule table.schedule td {
  border: #d1d1d1 1px solid;
  text-align: left;
  vertical-align: top;
  padding: 1rem;
  background: white;
}

#main.mypage .block_detail .tour_schedule table.schedule td img {
  padding-bottom: 0.3rem;
  padding-right: 0.3rem;
  width: 1.5rem;
  height: auto;
  vertical-align: middle;
}

#main.mypage .block_detail .tour_schedule table.schedule td p {
  padding: 0.5rem 0;
}

#main.mypage .block_detail .tour_schedule table.schedule td .bd_b {
  border-bottom: dotted 1px #ccc;
  margin-bottom: 0.5rem;
}

#main.mypage .block_detail .tour_schedule table.schedule td p.flight {
  display: table;
}

#main.mypage .block_detail .tour_schedule table.schedule td p.flight span {
  display: table-cell;
}

#main.mypage .block_detail .tour_schedule table.schedule td p.hotel {
  display: table;
}

#main.mypage .block_detail .tour_schedule table.schedule td p.hotel span {
  display: table-cell;
}

#main.mypage .block_detail .tour_schedule table.schedule th.date {
  width: 15%;
}

#main.mypage .block_detail .tour_schedule table.schedule th.itinerary {
  width: 75%;
}

#main.mypage .block_detail .tour_schedule table.schedule tr:nth-child(2) td .bd_b {
  border-top: dotted 1px #ccc;
  margin-top: 0.5rem;
}

#main.mypage .passengers .person_detail h3, #main.mypage .applicant .person_detail h3 {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0 0 1rem;
}

#main.mypage .passengers .person_detail p, #main.mypage .applicant .person_detail p {
  position: relative;
  padding-left: 2.5rem;
}

#main.mypage .passengers .person_detail p:before, #main.mypage .applicant .person_detail p:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_person.svg") no-repeat center transparent;
  background-size: contain;
}

#main.mypage .mypage_tour_info .tour_subtitle {
  color: #80868B;
  font-weight: bold;
  padding: 0 0 0.5rem;
}

#main.mypage .mypage_tour_info .mypage_tour_schedule table.schedule {
  color: #000000;
  border-collapse: collapse;
  width: 100%;
  border: #d1d1d1 1px solid;
  table-layout: fixed;
}

#main.mypage .mypage_tour_info .mypage_tour_schedule table.schedule th {
  border: #d1d1d1 1px solid;
  text-align: left;
  vertical-align: top;
  background: #f4f4f4;
  font-weight: normal;
  padding: 0.5rem 1rem;
}

#main.mypage .mypage_tour_info .mypage_tour_schedule table.schedule td {
  border: #d1d1d1 1px solid;
  text-align: left;
  vertical-align: top;
  padding: 1rem;
  background: white;
}

#main.mypage .mypage_tour_info .mypage_tour_schedule table.schedule td img {
  padding-bottom: 0.3rem;
  padding-right: 0.3rem;
  width: 1.5rem;
  height: auto;
  vertical-align: middle;
}

#main.mypage .mypage_tour_info .mypage_tour_schedule table.schedule td p {
  padding: 0.5rem 0;
}

#main.mypage .mypage_tour_info .mypage_tour_schedule table.schedule td .bd_b {
  border-bottom: dotted 1px #ccc;
  margin-bottom: 0.5rem;
}

#main.mypage .mypage_tour_info .mypage_tour_schedule table.schedule td p.flight {
  display: table;
}

#main.mypage .mypage_tour_info .mypage_tour_schedule table.schedule td p.flight span {
  display: table-cell;
  font-weight: bold;
}

#main.mypage .mypage_tour_info .mypage_tour_schedule table.schedule td p.hotel {
  display: table;
}

#main.mypage .mypage_tour_info .mypage_tour_schedule table.schedule td p.hotel span {
  display: table-cell;
  font-weight: bold;
}

#main.mypage .mypage_tour_info .mypage_tour_schedule table.schedule th.date {
  width: 15%;
}

#main.mypage .mypage_tour_info .mypage_tour_schedule table.schedule th.itinerary {
  width: 75%;
}

#main.mypage .mypage_tour_info .mypage_tour_schedule table.schedule tr:nth-child(2) td .bd_b {
  border-top: dotted 1px #ccc;
  margin-top: 0.5rem;
}

#main.mypage div#mypage_header_notice {
  width: 1232px;
  margin: 0 auto;
  box-sizing: border-box;
}

@media screen and (max-width: 1262px) {
  #main.mypage div#mypage_header_notice {
    width: 100%;
  }
}

#main.mypage .red {
  color: red;
}

#main.page_cancel_confirm .lead {
  padding: 0 0 1.5rem;
}

#main.page_cancel_confirm .wrap_block {
  background-color: #fff;
  border-radius: 0.5rem;
  border: 1px solid #DBDBDB;
  padding: 2.5rem;
  margin: 0 0 2.5rem;
}

#main.page_cancel_confirm .wrap_block .block_detail {
  border: none;
  margin: 0;
  padding: 0;
}

#main.page_cancel_confirm .wrap_block .red {
  padding-top: 1rem;
}

#main.page_cancel_confirm .wrap_block .flight_date .box + .box, #main.page_cancel_confirm .wrap_block .hotel_date .box + .box {
  padding-top: 2.5rem;
  margin-top: 2.5rem;
  border-top-style: solid;
}

#main.page_cancel_confirm .wrap_block .flight_date .passengers, #main.page_cancel_confirm .wrap_block .hotel_date .passengers {
  padding: 2.5rem 0 0;
}

#main.page_cancel_confirm .how_to_cancel {
  background-color: #FFF8DE;
}

#main.page_cancel_confirm .how_to_cancel .section_inner {
  padding: 2.5rem 0;
}

#main.page_cancel_confirm .how_to_cancel .section_inner dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  font-weight: bold;
  padding: 1.5rem 0 0 0;
}

#main.page_cancel_confirm .how_to_cancel .section_inner dl dt {
  margin-right: 2.5rem;
}

#main.page_cancel_confirm .how_to_cancel .section_inner dl dd {
  color: #F64E83;
}

#main.page_cancel_confirm .important {
  padding: 2.5rem 0;
  font-weight: bold;
  color: #F64E83;
  text-align: center;
}

#main.page_cancel_confirm .important_left {
  padding: 1.875rem 0.625rem 0 0;
  font-weight: bold;
  color: #F64E83;
  text-align: left;
}

#main.page_cancel_confirm .important_left span {
  color: #000000;
  font-weight: normal;
}

#main.page_cancel_confirm .important_left a {
  font-weight: normal;
  color: #0074BD;
  text-decoration: none;
  transition: color 0.3s;
}

#main.page_cancel_confirm .notes .lead {
  padding: 2.5rem 0;
}

#main.page_cancel_confirm .notes .item {
  border-top: 1px solid #DBDBDB;
  border-bottom: 1px solid #DBDBDB;
}

#main.page_cancel_confirm .notes .item h3 {
  margin: 0;
  padding: 0;
  font-weight: normal;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_cancel_confirm .notes .item h3 a {
  position: relative;
  display: block;
  padding: 1.375rem 3.875rem 1.375rem 0;
  color: #000000;
}

#main.page_cancel_confirm .notes .item h3 a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0.5rem;
  margin-top: -0.75rem;
  width: 1.5rem;
  height: 1.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_arrow.svg") no-repeat center transparent;
  background-size: contain;
  transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#main.page_cancel_confirm .notes .item h3 a.isOpen:after {
  transform: rotate(180deg);
}

#main.page_cancel_confirm .notes .item .detail .detail_inner {
  padding: 0 0 1.375rem;
}

#main.page_cancel_confirm .wrap_form {
  text-align: center;
  padding: 3.125rem 0 0;
}

#main.page_cancel_confirm .wrap_form .css_checkbox {
  display: inline-block;
}

#main.page_cancel_complete .mypage_body .icon {
  padding: 1.5rem 0 2.5rem;
}

#main.page_cancel_complete .mypage_body .icon span {
  width: 9rem;
  position: relative;
  display: block;
  margin: 0 auto;
}

#main.page_cancel_complete .mypage_body .icon span:before {
  content: '';
  display: block;
  padding: 100% 0 0 0;
}

#main.page_cancel_complete .mypage_body .icon span > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#main.page_payment_select .expired_alert {
  padding-top: 30px;
  font-size: 18px;
}

#main.page_payment_select .expired_font {
  color: red;
}

#main.page_payment_select .section_terms {
  margin-top: 2.5rem;
}

#main.page_payment_select .section_checkbox {
  padding-top: 2.5rem;
  padding-left: 30%;
}

#main .section_search_hotel {
  background: no-repeat center #0074BD;
  background-size: cover;
  padding: 2.5rem 0;
  opacity: 1;
}

#main .section_search_hotel .detail {
  padding: 0 0 1.5rem;
}

html.pc #main .section_search_hotel .detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main .section_search_hotel .detail .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin: 0 1rem 0 0;
}

#main .section_search_hotel .detail .item:last-child {
  padding-right: 0;
}

#main .section_search_hotel .detail .item dl {
  flex-shrink: 1;
  flex-grow: 1;
}

#main .section_search_hotel .detail .item dl dt {
  color: #ffffff;
  font-weight: bold;
  padding: 0 0 0.3125rem;
}

#main .section_search_hotel .detail .item dl dd {
  font-family: Arial,sans-serif;
}

#main .section_search_hotel .detail .item dl dd a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  height: 3.5rem;
  border-radius: 0.5rem;
  background-color: #ffffff;
  transition: background 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  color: #000000;
  box-sizing: border-box;
  padding: 0 0 0 3.4375rem;
  overflow: hidden;
}

#main .section_search_hotel .detail .item dl dd a .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

#main .section_search_hotel .detail .item dl dd a .text {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

#main .section_search_hotel .detail .item dl dd a .text {
  padding: 0 0.9375rem 0 0;
}

#main .section_search_hotel .detail .item dl dd a:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 1rem;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.75rem;
  background: no-repeat center transparent;
  background-size: contain;
  z-index: 2;
}

html.pc #main .section_search_hotel .detail .item dl dd a:hover {
  background-color: #F2F2F2;
}

#main .section_search_hotel .detail .place dl {
  flex-shrink: 0;
  flex-grow: 0;
  width: 31.5rem;
}

html.pc #main .section_search_hotel .detail .place dl dd {
  position: relative;
  padding: 0 0 0 3.4375rem;
  background-color: #fff;
  border-radius: 0.5rem;
}

html.pc #main .section_search_hotel .detail .place dl dd:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 1rem;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.75rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_place.svg") no-repeat center transparent;
  background-size: contain;
  z-index: 2;
}

html.pc #main .section_search_hotel .detail .place dl dd input {
  border: none;
  width: 100%;
  height: 3.5rem;
  padding-left: 0;
}

html.pc #main .section_search_hotel .detail .place dl dd input::placeholder {
  color: #80868B;
  opacity: 1;
}

html.pc #main .section_search_hotel .detail .place dl dd input::-webkit-input-placeholder {
  color: #80868B;
}

html.pc #main .section_search_hotel .detail .place dl dd input:-moz-placeholder {
  color: #80868B;
  opacity: 1;
}

html.pc #main .section_search_hotel .detail .place dl dd input::-moz-placeholder {
  color: #80868B;
  opacity: 1;
}

html.pc #main .section_search_hotel .detail .place dl dd input:-ms-input-placeholder {
  color: #80868B;
}

html.pc #main .section_search_hotel .detail .place dl dd input::-ms-input-placeholder {
  color: #80868B;
}

#main .section_search_hotel .detail .place dl dd a:before {
  background-image: url(https://img2.tour.l-tike.com/image/common/pc/icon_place.svg);
}

#main .section_search_hotel .detail .date dl {
  width: 18.5rem;
}

#main .section_search_hotel .detail .date dl dd a {
  border: 1px solid transparent;
}

#main .section_search_hotel .detail .date dl dd a:before {
  background-image: url(https://img2.tour.l-tike.com/image/common/pc/icon_calendar.svg);
}

html.pc.isCalenderModalOpen #main .section_search_hotel .detail .date dl dd a {
  pointer-events: none;
  position: relative;
  z-index: 1005;
  border-color: #DBDBDB;
}

#main .section_search_hotel .detail .date dl dd .box {
  width: 6.25rem;
  height: 100%;
  box-sizing: border-box;
  padding: 0.3125rem 0 0.3125rem 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  /*
    * row(初期値) : 子要素を左から右に配置
    * row-reverse : 子要素を右から左に配置
    * column : 子要素を上から下に配置
    * column-reverse : 子要素を下から上に配置
    */
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

#main .section_search_hotel .detail .date dl dd .box .text {
  padding: 0;
}

#main .section_search_hotel .detail .date dl dd .box:before {
  display: none;
}

#main .section_search_hotel .detail .date dl dd .box .ttl {
  font-size: 0.6875rem;
  line-height: 1em;
  letter-spacing: 0em;
  color: #80868B;
  margin: 0 0 0.125rem;
}

#main .section_search_hotel .detail .date dl dd .box .date_text {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main .section_search_hotel .detail .date dl dd .box.going {
  position: relative;
  margin: 0 1.25rem 0 -0.3125rem;
}

#main .section_search_hotel .detail .date dl dd .box.going:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -0.875rem;
  display: block;
  width: 0.5rem;
  border-bottom: 1px solid #80868B;
}

#main .section_search_hotel .detail .date dl dd .box.back {
  width: 7.5rem;
}

#main .section_search_hotel .detail .passengers {
  position: relative;
}

#main .section_search_hotel .detail .passengers dl {
  width: 25rem;
}

#main .section_search_hotel .detail .passengers dl dd a:before {
  background-image: url(https://img2.tour.l-tike.com/image/common/pc/icon_people.svg);
}

#main .section_search_hotel .submit_error {
  display: none;
  padding: 0 0 1.5rem;
}

html.pc #main .section_search_hotel .submit_error p {
  display: inline-block;
}

html.pc #main .section_search_hotel .btn .css_button {
  border-radius: 0.1875rem;
  width: 16.5rem;
  height: 3.5rem;
  margin: 0;
}

html.pc #main .section_search_hotel.simple .detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

html.pc #main .section_search_hotel.simple .detail .place dl {
  width: 18.5rem;
}

html.pc #main .section_search_hotel.simple .detail .date dl {
  width: 18.5rem;
}

html.pc #main .section_search_hotel.simple .detail .passengers dl {
  width: 18.5rem;
}

html.pc #main .section_search_hotel.simple .detail .btn .css_button {
  border-radius: 0.1875rem;
  width: 18.5rem;
  height: 3.5rem;
  margin: 0;
}

html.pc #main .section_search_hotel.simple .submit_error {
  padding: 1.5rem 0 0;
}

#main.page_hotel_top h1 {
  position: relative;
}

#main.page_hotel_top .to_world {
  display: block;
  position: relative;
  bottom: 2.5rem;
  float: right;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

#main.page_hotel_top .to_world a {
  display: block;
  position: relative;
  color: #0074BD;
  padding: 0 2.0625rem 0 0;
}

html.pc #main.page_hotel_top .to_world a:hover {
  color: #0067A8;
}

html.pc #main.page_hotel_top .to_world a:hover svg path {
  fill: #0067A8;
}

#main.page_hotel_top .to_world a .icon {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  margin: -0.75rem 0 0;
  width: 1.5rem;
  height: 1.5rem;
  transform: rotate(-90deg);
}

#main.page_hotel_top .to_world a .icon svg path {
  fill: #0074BD;
  transition: fill 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#main.page_hotel_top .recommend_cities {
  padding: 5rem 0 0;
}

#main.page_hotel_top .recommend_cities h2 {
  padding: 1.5rem 0;
}

html.pc #main.page_hotel_top .recommend_cities .wrap_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -0.5rem;
}

#main.page_hotel_top .recommend_cities .wrap_box .box {
  width: 28.3125rem;
  flex-shrink: 1;
  flex-grow: 0;
  margin: 0 0.5rem 1rem;
  background-color: #ffffff;
  -webkit-box-shadow: 0em 0.0625em 0.25em 0em rgba(0, 0, 0, 0.24);
  box-shadow: 0em 0.0625em 0.25em 0em rgba(0, 0, 0, 0.24);
  border-radius: 0.5rem;
}

#main.page_hotel_top .recommend_cities .wrap_box .box .img {
  border-radius: 0.5rem;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  background: no-repeat center transparent;
  background-size: cover;
  position: relative;
  display: block;
}

#main.page_hotel_top .recommend_cities .wrap_box .box .img:before {
  content: '';
  display: block;
  padding: 36.86534% 0 0 0;
}

#main.page_hotel_top .recommend_cities .wrap_box .box .img > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#main.page_hotel_top .recommend_cities .wrap_box .box .inner {
  padding: 1rem 1.5rem 1rem;
}

#main.page_hotel_top .recommend_cities .wrap_box .box .inner h3 {
  padding: 0 0 1rem;
  font-size: 1.125rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

#main.page_hotel_top .recommend_cities .wrap_box .box .inner ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

#main.page_hotel_top .recommend_cities .wrap_box .box .inner ul li {
  width: 11.5625rem;
  padding: 0 0 1rem;
  flex-grow: 0;
  flex-shrink: 1;
  font-size: 1.2em;
}

#main.page_hotel_top .recommend_cities .wrap_box .box .inner ul li a {
  position: relative;
  display: block;
  color: #000000;
  padding: 0 2rem 0 0;
}

html.pc #main.page_hotel_top .recommend_cities .wrap_box .box .inner ul li a:hover {
  color: #80868B;
}

#main.page_hotel_top .recommend_cities .wrap_box .box .inner ul li a:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 1.5rem;
  height: 1.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_arrow_blue.svg") no-repeat center transparent;
  background-size: contain;
  transform: rotate(-90deg);
}

#main.page_hotel_search .wrap_page {
  padding: 1.5rem 0 0;
}

#main.page_hotel_search .wrap_page .column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_hotel_search .wrap_page .column .left_column {
  width: 23.5rem;
}

#main.page_hotel_search .wrap_page .column .left_column .css_loader {
  position: relative;
  padding: 50% 0 0;
  z-index: 1;
}

#main.page_hotel_search .wrap_page .column .left_column .block {
  display: none;
  padding: 0 0 2.5rem;
}

#main.page_hotel_search .wrap_page .column .left_column .block h4 {
  padding: 0 0 1rem;
  font-size: 1.125rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_hotel_search .wrap_page .column .left_column .block h4 span {
  font-size: 0.75rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: normal;
  padding: 0 0 0 1em;
}

#main.page_hotel_search .wrap_page .column .left_column .block.price .css_slider {
  padding: 0.8125rem 1rem 1.5rem;
}

#main.page_hotel_search .wrap_page .column .left_column .block.price .category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_hotel_search .wrap_page .column .left_column .block.price .category .css_radio_button {
  width: 11.25rem;
}

#main.page_hotel_search .wrap_page .column .left_column .block ul li {
  padding: 0 0 1rem;
}

#main.page_hotel_search .wrap_page .column .left_column .block.rank h4, #main.page_hotel_search .wrap_page .column .left_column .block.type h4, #main.page_hotel_search .wrap_page .column .left_column .block.area h4, #main.page_hotel_search .wrap_page .column .left_column .block.review h4 {
  border-bottom: 1px solid #DBDBDB;
  margin-bottom: 1rem;
}

#main.page_hotel_search .wrap_page .column .left_column .block .css_star {
  width: 8.4375rem;
  display: inline-block;
  vertical-align: middle;
  margin: -0.3125rem 0.6875rem 0 0;
}

#main.page_hotel_search .wrap_page .column .left_column .block .more a {
  margin: 1.5rem 0 0;
  display: inline-block;
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  text-decoration: underline;
}

#main.page_hotel_search .wrap_page .column .left_column .block .more a .close {
  display: none;
}

#main.page_hotel_search .wrap_page .column .left_column .block .more a.isOpen .open {
  display: none;
}

#main.page_hotel_search .wrap_page .column .left_column .block .more a.isOpen .close {
  display: inline;
}

#main.page_hotel_search .wrap_page .column .left_column .tools_submit_button {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 1.5rem 0;
  background-color: #0074BD;
  z-index: 1100;
  transform: translateY(100%);
  transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#main.page_hotel_search .wrap_page .column .left_column .tools_submit_button.isShow {
  transform: translateY(0%);
}

#main.page_hotel_search .wrap_page .column .left_column .tools_submit_button .css_button {
  margin: 0;
  width: 23.5rem;
  height: 2.75rem;
}

#main.page_hotel_search .wrap_page .column .left_column .filter_reset {
  width: 15rem;
  height: 2.75rem;
}

#main.page_hotel_search .wrap_page .column .left_column .filter_reset .css_button_inner {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  font-family: MS UI Gothic;
}

#main.page_hotel_search .wrap_page .column .right_column {
  width: 51rem;
}

#main.page_hotel_search .wrap_page .column .right_column .error_msg {
  padding: 2.5rem 0;
}

#main.page_hotel_search .wrap_page .column .right_column .mics {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_hotel_search .wrap_page .column .right_column .mics .count {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_hotel_search .wrap_page .column .right_column .mics .sort {
  width: 12rem;
}

#main.page_hotel_search .wrap_page .items {
  padding: 2.5rem 0 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

#main.page_hotel_search .wrap_page .items .block {
  width: 25rem;
  margin: 0 0 1rem;
}

#main.page_hotel_search .wrap_page .items .block .floatLabel {
  float: left;
}

#main.page_hotel_search .wrap_page .items .block .floatLabel div {
  white-space: nowrap;
  position: relative;
  z-index: 5;
  margin: 1rem 0;
}

#main.page_hotel_search .wrap_page .items .block .floatLabel div:first-child {
  margin: 0;
}

#main.page_hotel_search .wrap_page .items .block .flag {
  top: 0.5rem;
  left: -0.5rem;
  border-radius: 0.25rem;
  border-bottom-left-radius: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-family: Arial,sans-serif;
  font-weight: bold;
  width: fit-content;
  height: 1.875rem;
  color: #ffffff;
}

#main.page_hotel_search .wrap_page .items .block .flag.flag_campaign {
  height: 1.875rem;
  justify-content: flex-start;
}

#main.page_hotel_search .wrap_page .items .block .flag.flag_sale {
  background-color: #F64E83;
  width: 5.3125rem;
}

#main.page_hotel_search .wrap_page .items .block .flag.flag_sale:before, #main.page_hotel_search .wrap_page .items .block .flag.flag_sale:after {
  content: "";
  position: absolute;
  height: 1.875rem;
  top: 0.5625rem;
  left: 0;
  width: 0.5rem;
  background-color: #B71347;
  border-bottom-left-radius: 0.25rem;
}

#main.page_hotel_search .wrap_page .items .block .flag.flag_sale:after {
  top: 0rem;
  left: 0;
  background-color: #F64E83;
  border-top-left-radius: 0.25rem;
}

#main.page_hotel_search .wrap_page .items .block a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 0.5rem;
  overflow: visible;
  background-color: #ffffff;
  -webkit-box-shadow: 0em 0.1875em 0.75em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.1875em 0.75em 0em rgba(0, 0, 0, 0.16);
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), box-shadow 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  color: #000000;
}

#main.page_hotel_search .wrap_page .items .block a .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

html.pc #main.page_hotel_search .wrap_page .items .block a:hover {
  color: #80868B;
  -webkit-box-shadow: 0em 0.09375em 0.375em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.09375em 0.375em 0em rgba(0, 0, 0, 0.16);
}

#main.page_hotel_search .wrap_page .items .block a .js-ripple_effect {
  border-radius: 0.5rem;
}

#main.page_hotel_search .wrap_page .items .block a .img {
  border-top-left-radius: 0.5rem;
  border-top-right-radius: 0.5rem;
  background: no-repeat center transparent;
  background-size: cover;
  position: relative;
  display: block;
}

#main.page_hotel_search .wrap_page .items .block a .img:before {
  content: '';
  display: block;
  padding: 55% 0 0 0;
}

#main.page_hotel_search .wrap_page .items .block a .img > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner {
  position: relative;
  padding: 1rem 1rem 1.25rem;
  box-sizing: border-box;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner h3 {
  padding: 0 0 0.5rem;
  font-weight: bold;
  line-height: 2em;
  font-size: 1.25rem;
  letter-spacing: 0em;
}

html.pc #main.page_hotel_search .wrap_page .items .block a .block_inner h3 {
  overflow: hidden;
}

html.pc #main.page_hotel_search .wrap_page .items .block a .block_inner h3 span {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

html.pc #main.page_hotel_search .wrap_page .items .block a .block_inner h3 span {
  display: block;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .place {
  padding: 0 0 0.25rem;
  line-height: 2em;
  font-size: 0.8125rem;
  letter-spacing: 0em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  overflow: hidden;
  color: #80868B;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .place span {
  padding: 0 0 0 1.5rem;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .place:before {
  content: "";
  flex-grow: 0;
  flex-shrink: 0;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_place_light_gray.svg") no-repeat center transparent;
  background-size: contain;
  margin: 0 0.275rem 0 0;
}

html.pc #main.page_hotel_search .wrap_page .items .block a .block_inner .place {
  overflow: hidden;
}

html.pc #main.page_hotel_search .wrap_page .items .block a .block_inner .place div {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .star .css_star {
  display: block;
  width: 5.625rem;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .star .css_rating_average_text {
  position: absolute;
  right: 0;
  padding-right: 12%;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .star .css_score_wrap {
  width: 32px;
  height: 32px;
  position: absolute;
  order: 1;
  display: inline-flex;
  right: 0;
  padding-right: 2%;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .star .css_score_svg {
  transform: none;
  color: #5392f9;
  width: inherit;
  height: inherit;
  position: absolute;
  top: 0px;
  left: 0px;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .star .css_score_fill {
  fill: #3e6cea;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .star .css_score_font_wrap {
  width: inherit;
  height: inherit;
  position: relative;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  display: inherit;
  color: white;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .star .css_score_font {
  font-size: 14px;
  line-height: 14px;
  font-weight: 400;
  margin: 0px;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .tripadvisor {
  padding: 0.5rem 0 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .tripadvisor .r {
  width: 7.4375rem;
  position: relative;
  display: block;
  margin: 0 0.2125rem 0 0;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .tripadvisor .r:before {
  content: '';
  display: block;
  padding: 16.80672% 0 0 0;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .tripadvisor .r > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .tripadvisor .c {
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  color: #80868B;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .cost .note1 {
  display: flex;
  justify-content: space-between;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .cost .note1 .comment_count {
  padding-right: 9%;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .cost .note1, #main.page_hotel_search .wrap_page .items .block a .block_inner .cost .note2, #main.page_hotel_search .wrap_page .items .block a .block_inner .cost .price_before {
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  color: #80868B;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .cost .price_before {
  padding: 0.25rem 0 0;
  display: flex;
  justify-content: space-between;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .cost .price_before .price_text {
  text-decoration: line-through;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .cost .price_before .location_average_text {
  font-size: 12px;
  line-height: 12px;
  font-weight: 500;
  color: #3e6cea;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .cost .price_before_none {
  padding: 0.25rem 0 0;
  float: right;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .cost .price_before_none .location_average_text {
  font-size: 12px;
  line-height: 12px;
  font-weight: 500;
  color: #3e6cea;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .cost .price {
  position: relative;
  display: flex;
  align-items: center;
  padding: 0.5rem 0;
  font-size: 2rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  font-family: Arial,sans-serif;
  color: #F64E83;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .cost .price span {
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .cost .price .off {
  position: absolute;
  top: 50%;
  right: 0;
  padding: 0 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  height: 2.1875rem;
  margin: -1.09375rem 0 0;
  border: 2px solid #F64E83;
  box-sizing: border-box;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .cost .price .off span {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .cost .wrap_ponta_point {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .campaign {
  display: block;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .campaign .flag_campaign {
  position: relative;
  top: 0.25rem;
  left: -1rem;
  height: 2.5rem;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .campaign .flag_campaign div.icon img {
  height: 2.25rem;
  width: auto;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .campaign .flexBox {
  display: inline-flex;
  justify-content: space-between;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  width: 100%;
  text-align: center;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .campaign .flexBox label {
  margin: 0.625rem 0;
  font-size: 0.75rem;
  line-height: 1em;
  letter-spacing: 0em;
  white-space: nowrap;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .campaign .flexBox .price {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  color: #F64E83;
}

#main.page_hotel_search .wrap_page .items .block a .block_inner .campaign .flexBox div.symbol {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  align-self: flex-end;
}

#main.page_hotel_search .wrap_page .wrap_pagination ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_hotel_search .wrap_page .wrap_pagination ul li > span, #main.page_hotel_search .wrap_page .wrap_pagination ul li a {
  position: relative;
  display: block;
  width: 3rem;
  height: 3rem;
  box-sizing: border-box;
  background-color: #ffffff;
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  border-radius: 0.5rem;
  color: #000000;
}

#main.page_hotel_search .wrap_page .wrap_pagination ul li > span .js-ripple_effect > span, #main.page_hotel_search .wrap_page .wrap_pagination ul li a .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

#main.page_hotel_search .wrap_page .wrap_pagination ul li > span.prev, #main.page_hotel_search .wrap_page .wrap_pagination ul li > span.next, #main.page_hotel_search .wrap_page .wrap_pagination ul li a.prev, #main.page_hotel_search .wrap_page .wrap_pagination ul li a.next {
  border-radius: 50%;
}

#main.page_hotel_search .wrap_page .wrap_pagination ul li > span.prev:after, #main.page_hotel_search .wrap_page .wrap_pagination ul li > span.next:after, #main.page_hotel_search .wrap_page .wrap_pagination ul li a.prev:after, #main.page_hotel_search .wrap_page .wrap_pagination ul li a.next:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_triangle.svg") no-repeat center transparent;
  background-size: contain;
  margin: -0.75rem 0 0 -0.75rem;
}

#main.page_hotel_search .wrap_page .wrap_pagination ul li > span.prev.double:after, #main.page_hotel_search .wrap_page .wrap_pagination ul li > span.next.double:after, #main.page_hotel_search .wrap_page .wrap_pagination ul li a.prev.double:after, #main.page_hotel_search .wrap_page .wrap_pagination ul li a.next.double:after {
  width: 1.5rem;
  height: 1.5rem;
  margin: -0.75rem 0 0 -0.75rem;
  background-image: url("https://img2.tour.l-tike.com/image/common/pc/icon_triangle_double.svg");
}

#main.page_hotel_search .wrap_page .wrap_pagination ul li > span.prev, #main.page_hotel_search .wrap_page .wrap_pagination ul li a.prev {
  margin-right: 1.5rem;
}

#main.page_hotel_search .wrap_page .wrap_pagination ul li > span.prev:after, #main.page_hotel_search .wrap_page .wrap_pagination ul li a.prev:after {
  transform: rotate(90deg);
}

#main.page_hotel_search .wrap_page .wrap_pagination ul li > span.next, #main.page_hotel_search .wrap_page .wrap_pagination ul li a.next {
  margin-left: 1.5rem;
}

#main.page_hotel_search .wrap_page .wrap_pagination ul li > span.next:after, #main.page_hotel_search .wrap_page .wrap_pagination ul li a.next:after {
  transform: rotate(-90deg);
}

#main.page_hotel_search .wrap_page .wrap_pagination ul li > span.active, #main.page_hotel_search .wrap_page .wrap_pagination ul li a.active {
  background-color: #DBDBDB;
}

html.pc #main.page_hotel_search .wrap_page .wrap_pagination ul li a:hover {
  background-color: #F2F2F2;
}

#main.page_hotel_search .wrap_page .wrap_pagination ul li a.prev, #main.page_hotel_search .wrap_page .wrap_pagination ul li a.next {
  -webkit-box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
}

#main.page_hotel_search .wrap_page .wrap_pagination ul li span.skip:before {
  content: "…";
}

#main.page_hotel_search .wrap_page .wrap_pagination ul li span.prev, #main.page_hotel_search .wrap_page .wrap_pagination ul li span.next {
  background-color: #FAFAFA;
}

#main.page_hotel_search .wrap_page .wrap_pagination ul li span.prev:after, #main.page_hotel_search .wrap_page .wrap_pagination ul li span.next:after {
  opacity: 0.1;
}

#main.page_hotel_search .page_review_score {
  position: absolute;
  top: -624.9375rem;
  left: -624.9375rem;
  z-index: 99999;
}

#main.page_hotel_search .page_review_score .review_content_inner {
  background-color: #000;
  max-width: 18.75rem;
  text-decoration: none;
  border-radius: 0.25rem;
}

#main.page_hotel_search .page_review_score .review_container {
  background-color: #fff;
  position: relative;
  min-width: 18.75rem;
  -webkit-box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
  display: flex;
  flex-direction: column;
}

#main.page_hotel_search .page_review_score .header {
  background-color: #0074BD;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_hotel_search .page_review_score .header .header_text {
  color: #ffffff;
  padding: 0.5625rem;
}

#main.page_hotel_search .page_review_score .header .close {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 3.5rem;
  height: 20%;
  background: url(https://img2.tour.l-tike.com/image/common/sp/modal_btn_close.svg) no-repeat center;
}

#main.page_hotel_search .page_review_score .review_list {
  height: 6.25rem;
  padding: 0.625rem 0 0.625rem 0.625rem;
  margin-block-end: 12px;
}

#main.page_hotel_search .page_review_score .review_item {
  width: 46%;
  float: left;
  text-align: left;
  padding-right: 0.625rem;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_hotel_search .page_review_score .review_none_text {
  display: flex;
  height: 100%;
  align-items: center;
  padding-left: 1.25rem;
  padding-top: 0.625rem;
  font-size: 15px;
}

#main.page_hotel_search .page_review_score .review_hidden {
  display: none;
}

#main.page_hotel_search .page_review_score .review_bar {
  position: relative;
  height: 0.25rem;
  width: 100%;
  margin: 0.375rem 0 0.375rem;
  line-height: 0;
  background-color: #ccc;
}

#main.page_hotel_search .page_review_score .review_score_bar {
  height: 100%;
  background-color: #5392f9;
  display: inline-block;
}

#main.page_hotel_search .page_review_score .review_bar_scale {
  display: inline-block;
  height: 100%;
}

#main.page_hotel_search .page_review_score .review_average_bar {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

#main.page_hotel_search .page_review_score .review_average {
  position: absolute;
  height: 0.5rem;
  top: -0.125rem;
  box-sizing: border-box;
}

#main.page_hotel_search .page_review_score .review_average_arrow {
  display: none;
  position: absolute;
  bottom: -0.1875rem;
  width: 0;
  height: 0;
  border-left: 4px solid;
  border-right: 4px solid;
  right: -0.3125rem;
  border-bottom: 4px solid;
  border-left-color: transparent;
  border-right-color: transparent;
  border-bottom-color: #555;
}

#main.page_hotel_search .page_review_score .review_name {
  font-size: 0.625rem;
  line-height: 1em;
  letter-spacing: 0em;
  display: inline-block;
  width: 80%;
}

#main.page_hotel_search .page_review_score .review_point {
  font-size: 0.625rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_hotel_search .page_review_score .review_footer {
  background: #f8f7f9;
  color: #1d2129;
  border-top: 1px solid #e9ebee;
  padding: 0.4375rem 0.625rem;
  font-size: 0.625rem;
  line-height: 1em;
  letter-spacing: 0em;
  text-align: initial;
}

#main.page_hotel_detail .wrap_section_chosen_ticket_dp {
  padding-bottom: 1.5rem;
}

#main.page_hotel_detail .mainvisual_gallery {
  background-color: #000000;
}

#main.page_hotel_detail .mainvisual_gallery .slide_wrap {
  position: relative;
  z-index: 1;
}

#main.page_hotel_detail .mainvisual_gallery .slide_wrap .slide_mask {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  overflow: hidden;
}

#main.page_hotel_detail .mainvisual_gallery .slide_wrap .slide_inner {
  position: relative;
  left: 0;
  height: 100%;
}

#main.page_hotel_detail .mainvisual_gallery .slide_wrap {
  height: 15rem;
}

html.ie #main.page_hotel_detail .mainvisual_gallery ul {
  display: block;
  letter-spacing: -0.4em;
}

html.ie #main.page_hotel_detail .mainvisual_gallery ul li {
  display: inline-block;
}

#main.page_hotel_detail .mainvisual_gallery ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  height: 100%;
}

#main.page_hotel_detail .mainvisual_gallery ul li {
  flex-grow: 0;
  flex-shrink: 0;
  flex-basis: auto;
  height: 100%;
}

#main.page_hotel_detail .mainvisual_gallery ul li a {
  display: block;
  height: 100%;
  transition: opacity 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  background: url("https://img2.tour.l-tike.com/image/common/pc/preloader.svg") no-repeat center transparent;
  background-size: 6.25rem auto;
}

#main.page_hotel_detail .mainvisual_gallery ul li a img {
  width: auto;
  height: 100%;
}

html.pc #main.page_hotel_detail .mainvisual_gallery ul li a:hover {
  opacity: 0.7;
}

#main.page_hotel_detail .mainvisual_gallery .arrow {
  position: absolute;
  top: 50%;
  display: block;
  width: 3rem;
  height: 3rem;
  box-sizing: border-box;
  background-color: #ffffff;
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  color: #000000;
  -webkit-box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
  margin: -1.5rem 0 0;
  border-radius: 50%;
}

html.pc #main.page_hotel_detail .mainvisual_gallery .arrow .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

html.pc #main.page_hotel_detail .mainvisual_gallery .arrow:hover {
  background-color: #F2F2F2;
}

#main.page_hotel_detail .mainvisual_gallery .arrow:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_triangle.svg") no-repeat center transparent;
  background-size: contain;
  margin: -0.75rem 0 0 -0.75rem;
}

#main.page_hotel_detail .mainvisual_gallery .arrow.prev {
  left: 50%;
  margin-left: -38.5rem;
}

#main.page_hotel_detail .mainvisual_gallery .arrow.prev:after {
  transform: rotate(90deg);
}

#main.page_hotel_detail .mainvisual_gallery .arrow.next {
  right: 50%;
  margin-right: -38.5rem;
}

#main.page_hotel_detail .mainvisual_gallery .arrow.next:after {
  transform: rotate(-90deg);
}

#main.page_hotel_detail .mainvisual_gallery .num {
  position: absolute;
  bottom: 1rem;
  right: 50%;
  padding: 0.5rem 1.125rem 0.5rem 0.6875rem;
  margin-right: -38.5rem;
  background-color: #ffffff;
  border-radius: 0.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  -webkit-box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
}

html.pc #main.page_hotel_detail .mainvisual_gallery .num {
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

html.pc #main.page_hotel_detail .mainvisual_gallery .num .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

html.pc #main.page_hotel_detail .mainvisual_gallery .num:hover {
  background-color: #F2F2F2;
}

#main.page_hotel_detail .mainvisual_gallery .num:before {
  content: "";
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  margin: 0 0.28125rem 0 0;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_gallery.svg") no-repeat center transparent;
  background-size: contain;
}

#main.page_hotel_detail .wrap_page {
  padding: 1.5rem 0 0;
}

#main.page_hotel_detail .column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_hotel_detail .column .left_column {
  width: 23.5rem;
}

#main.page_hotel_detail .column .left_column .place {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  color: #80868B;
}

#main.page_hotel_detail .column .left_column .star {
  padding: 0.5rem 0;
}

#main.page_hotel_detail .column .left_column .star .css_star {
  display: block;
}

#main.page_hotel_detail .column .left_column .tripadvisor {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_hotel_detail .column .left_column .tripadvisor .r {
  flex-grow: 0;
  flex-shrink: 0;
  width: 8.9375rem;
  position: relative;
  display: block;
  margin: 0 1rem 0 0;
}

#main.page_hotel_detail .column .left_column .tripadvisor .r:before {
  content: '';
  display: block;
  padding: 16.78322% 0 0 0;
}

#main.page_hotel_detail .column .left_column .tripadvisor .r > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#main.page_hotel_detail .column .left_column .tripadvisor .c {
  flex-grow: 1;
  flex-shrink: 1;
}

#main.page_hotel_detail .column .left_column .tripadvisor .c a {
  text-decoration: underline;
}

html.pc #main.page_hotel_detail .column .left_column .tripadvisor .c a:hover {
  text-decoration: none;
}

#main.page_hotel_detail .column .left_column .detail dl, #main.page_hotel_detail .column .left_column .time dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_hotel_detail .column .left_column .detail dl dt:after, #main.page_hotel_detail .column .left_column .time dl dt:after {
  content: ":";
  display: inline-block;
  padding: 0 0.5em;
}

#main.page_hotel_detail .column .left_column .detail {
  padding: 1rem 0 1rem;
  color: #80868B;
}

#main.page_hotel_detail .column .left_column .detail dl dt {
  min-width: 110px;
}

#main.page_hotel_detail .column .left_column .map {
  margin: 2.5rem 0;
  position: relative;
  display: block;
  background-color: #DBDBDB;
}

#main.page_hotel_detail .column .left_column .map:before {
  content: '';
  display: block;
  padding: 51.3369% 0 0 0;
}

#main.page_hotel_detail .column .left_column .map > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#main.page_hotel_detail .column .left_column .map .wrap_map_embed, #main.page_hotel_detail .column .left_column .map a {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}

#main.page_hotel_detail .column .left_column .information {
  padding: 2.5rem 0 0;
  border-top: 1px solid #DBDBDB;
}

#main.page_hotel_detail .column .left_column .information h3 {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_hotel_detail .column .right_column {
  width: 51rem;
}

#main.page_hotel_detail .column .right_column .re_search {
  padding: 2.5rem 0 0;
}

#main.page_hotel_detail .column .right_column .re_search .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  height: 2.75rem;
}

#main.page_hotel_detail .column .right_column .re_search .inner .date, #main.page_hotel_detail .column .right_column .re_search .inner .passengers {
  position: relative;
  width: 20.4375rem;
  height: 100%;
  box-sizing: border-box;
  border: 1px solid #DBDBDB;
  overflow: hidden;
  transform: translate3d(0, 0, 0);
}

#main.page_hotel_detail .column .right_column .re_search .inner .date a, #main.page_hotel_detail .column .right_column .re_search .inner .passengers a {
  background-color: #ffffff;
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  color: #000000;
}

#main.page_hotel_detail .column .right_column .re_search .inner .date a .js-ripple_effect > span, #main.page_hotel_detail .column .right_column .re_search .inner .passengers a .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

html.pc #main.page_hotel_detail .column .right_column .re_search .inner .date a:hover, #main.page_hotel_detail .column .right_column .re_search .inner .passengers a:hover {
  background-color: #F2F2F2;
}

#main.page_hotel_detail .column .right_column .re_search .inner .date {
  border-radius: 0.5rem;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

#main.page_hotel_detail .column .right_column .re_search .inner .date a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 0 0 0 3rem;
  height: 100%;
}

#main.page_hotel_detail .column .right_column .re_search .inner .date a:before {
  content: "";
  position: absolute;
  top: 50%;
  display: block;
  background: no-repeat center transparent;
  background-size: contain;
  z-index: 2;
  left: 0.8125rem;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.75rem;
  background-image: url(https://img2.tour.l-tike.com/image/common/pc/icon_calendar.svg);
}

html.isCalenderModalOpen #main.page_hotel_detail .column .right_column .re_search .inner .date {
  z-index: 1005;
  border-radius: 0.5rem;
}

html.isCalenderModalOpen #main.page_hotel_detail .column .right_column .re_search .inner .date a {
  pointer-events: none;
}

#main.page_hotel_detail .column .right_column .re_search .inner .date .box {
  width: 6.875rem;
  height: 100%;
  box-sizing: border-box;
  padding: 0.3125rem 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  /*
    * row(初期値) : 子要素を左から右に配置
    * row-reverse : 子要素を右から左に配置
    * column : 子要素を上から下に配置
    * column-reverse : 子要素を下から上に配置
    */
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

#main.page_hotel_detail .column .right_column .re_search .inner .date .box .text {
  padding: 0;
}

#main.page_hotel_detail .column .right_column .re_search .inner .date .box .ttl {
  font-size: 0.6875rem;
  line-height: 1em;
  letter-spacing: 0em;
  color: #80868B;
  margin: 0 0 0.125rem;
}

#main.page_hotel_detail .column .right_column .re_search .inner .date .box .date_text {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-family: Arial,sans-serif;
}

#main.page_hotel_detail .column .right_column .re_search .inner .date .box.going {
  position: relative;
  margin: 0 1.25rem 0 -0.3125rem;
}

#main.page_hotel_detail .column .right_column .re_search .inner .date .box.going:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -0.875rem;
  display: block;
  width: 0.5rem;
  border-bottom: 1px solid #80868B;
}

#main.page_hotel_detail .column .right_column .re_search .inner .passengers {
  border-left: none;
}

#main.page_hotel_detail .column .right_column .re_search .inner .passengers .passengers_error {
  display: none;
  opacity: 0;
  position: absolute;
  top: -3.5rem;
  right: -1.5rem;
  height: 2.75rem;
  z-index: 100;
}

#main.page_hotel_detail .column .right_column .re_search .inner .passengers .passengers_error p {
  height: 100%;
  white-space: nowrap;
  box-sizing: border-box;
  border-radius: 0.5rem;
  border: 1px solid #F23939;
  color: #F23939;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0 1rem;
  background-color: #FFF8DE;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_hotel_detail .column .right_column .re_search .inner .passengers a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  height: 100%;
  box-sizing: border-box;
  padding: 0 0 0 3.3125rem;
  overflow: hidden;
  line-height: 2em;
  font-size: 1rem;
  letter-spacing: 0em;
}

#main.page_hotel_detail .column .right_column .re_search .inner .passengers a .text {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

#main.page_hotel_detail .column .right_column .re_search .inner .passengers a .text {
  padding: 0 0.9375rem 0 0;
}

#main.page_hotel_detail .column .right_column .re_search .inner .passengers a:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0.8125rem;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.75rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_people.svg") no-repeat center transparent;
  background-size: contain;
  z-index: 2;
}

#main.page_hotel_detail .column .right_column .re_search .inner .button {
  width: 10.1875rem;
  height: 100%;
}

html.pc #main.page_hotel_detail .column .right_column .re_search .inner .button .css_button {
  width: 100%;
  height: 100%;
  border-radius: 0.5rem;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  box-shadow: none;
}

#main.page_hotel_detail .column .right_column .re_search .submit_error {
  display: none;
  padding: 1rem 0 0;
  text-align: right;
}

#main.page_hotel_detail .column .right_column .re_search .submit_error p {
  display: inline-block;
}

#main.page_hotel_detail .column .right_column .wrap_plan {
  padding: 2.5rem 0 0;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block {
  -webkit-box-shadow: 0em 0.1875em 0.75em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.1875em 0.75em 0em rgba(0, 0, 0, 0.16);
  background-color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  border-radius: 0.5rem;
  margin: 0 0 1.5rem;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_left {
  width: 19.5625rem;
  flex-grow: 0;
  flex-shrink: 0;
  border-right: 1px solid #DBDBDB;
  box-sizing: border-box;
  padding: 1rem;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_left .img {
  position: relative;
  display: block;
  background: no-repeat center transparent;
  background-size: cover;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_left .img:before {
  content: '';
  display: block;
  padding: 64.28571% 0 0 0;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_left .img > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_left h3 {
  font-size: 1.25rem;
  line-height: 1.3em;
  letter-spacing: 0em;
  padding: 0.5rem 0;
  font-weight: bold;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_left .type {
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  color: #80868B;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_left .link a {
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  text-decoration: underline;
}

html.pc #main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_left .link a:hover {
  text-decoration: none;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right {
  flex-grow: 1;
  flex-shrink: 1;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box {
  position: relative;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box + .box {
  border-top: 1px solid #DBDBDB;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box input {
  display: none;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box input:checked + .box_inner {
  background-color: #FFF8DE;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box input:checked + .box_inner .left .icon {
  background-color: #0074BD;
  border-color: #0074BD;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box:first-child .box_inner, #main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box:first-child label {
  border-top-right-radius: 0.5rem;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box:last-child .box_inner, #main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box:last-child label {
  border-bottom-right-radius: 0.5rem;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box .box_inner {
  padding: 1rem;
  background-color: #ffffff;
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box .box_inner .left {
  width: 2.9375rem;
  flex-grow: 0;
  flex-shrink: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box .box_inner .left .icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 1.875rem;
  height: 1.875rem;
  border-radius: 0.5rem;
  background-color: #ffffff;
  border: 1px solid #DBDBDB;
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), border-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  flex-grow: 0;
  flex-shrink: 0;
  box-sizing: border-box;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box .box_inner .left .icon:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_checkbox.svg") no-repeat center transparent;
  background-size: contain;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box .box_inner .right {
  flex-shrink: 1;
  flex-grow: 1;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box .box_inner .right .option {
  font-size: 0.875rem;
  line-height: 1.57143em;
  letter-spacing: 0em;
  color: #80868B;
  font-weight: bold;
  padding: 0 0 0.1875rem;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box .box_inner .right .notes {
  font-size: 0.8125rem;
  line-height: 1.5em;
  letter-spacing: 0em;
  color: #80868B;
  padding: 0 0 0.1875rem;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box .box_inner .right .price {
  color: #F64E83;
  font-family: Arial,sans-serif;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box .box_inner .right .wrap_ponta_point {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 0.5rem 0;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box .box_inner .right .others {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  /*
    * row(初期値) : 子要素を左から右に配置
    * row-reverse : 子要素を右から左に配置
    * column : 子要素を上から下に配置
    * column-reverse : 子要素を下から上に配置
    */
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box .box_inner .right .no_refund span {
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0.3125rem 0.6875rem;
  border-radius: 0.125rem;
  display: inline-block;
  color: #fff;
  background-color: #F64E83;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box .box_inner .right .cancel_policy {
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box .box_inner .right .cancel_policy a {
  position: relative;
  z-index: 5;
  text-decoration: underline;
}

html.pc #main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box .box_inner .right .cancel_policy a:hover {
  text-decoration: none;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box label {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  cursor: pointer;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box label .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box .campaign {
  display: block;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box .campaign .flag {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-family: Arial,sans-serif;
  font-weight: bold;
  width: fit-content;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box .campaign .flag_campaign {
  position: relative;
  justify-content: flex-start;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box .campaign .flexBox {
  display: inline-flex;
  justify-content: space-around;
  width: 100%;
  padding-bottom: 0.25rem;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  text-align: center;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box .campaign .flexBox label {
  position: relative;
  width: auto;
  height: auto;
  margin: 0.25rem 0;
  font-size: 0.75rem;
  line-height: 1em;
  letter-spacing: 0em;
  white-space: nowrap;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box .campaign .flexBox .price {
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
  color: #F64E83;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box .campaign .flexBox div.symbol {
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
  align-self: flex-end;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box.onlyOne {
  height: 100%;
}

#main.page_hotel_detail .column .right_column .wrap_plan .block .wrap_right .box.onlyOne .campaign {
  position: absolute;
  bottom: 0;
  width: 100%;
}

#main.page_hotel_detail .column .right_column .wrap_plan .plan_submit_button {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 1.5rem 0;
  background-color: #0074BD;
  z-index: 1100;
  transform: translateY(100%);
  transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#main.page_hotel_detail .column .right_column .wrap_plan .plan_submit_button.isShow {
  transform: translateY(0%);
}

#main.page_hotel_detail .column .right_column .wrap_plan .plan_submit_button .section_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 77rem;
  margin: 0 auto;
}

#main.page_hotel_detail .column .right_column .wrap_plan .plan_submit_button .section_inner .selected {
  flex-shrink: 1;
  flex-grow: 1;
  color: #ffffff;
  font-weight: bold;
  padding: 0 2.5rem 0 0;
}

#main.page_hotel_detail .column .right_column .wrap_plan .plan_submit_button .css_button {
  flex-shrink: 0;
  flex-grow: 0;
  margin: 0;
  width: 6.375rem;
  height: 2.75rem;
}

#main.page_hotel_detail .column .right_column .wrap_detail {
  padding: 1.5rem 0 0;
}

#main.page_hotel_detail .column .right_column .wrap_detail .block {
  padding: 0 0 1rem;
  font-size: 1rem;
  line-height: 1.5em;
  letter-spacing: 0em;
}

#main.page_hotel_detail .column .right_column .wrap_detail .block > * {
  padding-top: 1rem;
}

#main.page_hotel_detail .column .right_column .wrap_detail .block h4 {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

#main.page_hotel_detail .column .right_column .wrap_detail .block ul li {
  position: relative;
  padding: 0 0 0 1em;
}

#main.page_hotel_detail .column .right_column .wrap_detail .block ul li:before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}

#main.page_hotel_detail .column .right_column .wrap_detail .block dl {
  padding-top: 0;
}

#main.page_hotel_detail .column .right_column .wrap_detail .block dl dt {
  padding: 1rem 0 0;
  font-weight: bold;
}

#main.page_hotel_detail .column .right_column .wrap_detail .block .room_text {
  padding: 0.625rem 0 0 2.5rem;
}

#main.page_hotel_detail .column .right_column .wrap_detail .block #categorylist .category_title {
  padding-left: 1rem;
}

#main.page_hotel_detail .column .right_column .wrap_detail .block #categorylist .category_text {
  padding: 0.9375rem 2.5rem;
}

#main.page_hotel_detail .column .right_column .wrap_detail .block #detaillist .detail_text {
  padding: 0rem 0.9375rem 0rem 2.5rem;
}

#main.page_hotel_detail .column .right_column .wrap_detail .tripadvisor iframe {
  width: 31.25rem;
  height: 18.75rem;
}

#main.page_hotel_detail .wrap_comment_title {
  margin-bottom: 30px;
}

#main.page_hotel_detail .wrap_comment {
  display: flex;
  flex-direction: row;
  margin-bottom: 20px;
  border-bottom: 1px solid #DBDBDB;
  padding-bottom: 20px;
}

#main.page_hotel_detail .wrap_comment .comment_left {
  width: 28%;
}

#main.page_hotel_detail .wrap_comment .comment_left .comment_score {
  color: #488bf8;
  display: table-cell;
  font-size: 36px;
  min-width: 10%;
  vertical-align: bottom;
}

#main.page_hotel_detail .wrap_comment .comment_left .comment_score_text {
  color: #488bf8;
  display: table-cell;
  font-size: 14px;
  padding: 10px 10px 0px 12px;
  margin-top: 10px;
  height: auto;
  vertical-align: bottom;
}

#main.page_hotel_detail .wrap_comment .comment_right {
  width: 100%;
  background-color: #f5f5f5;
  border-radius: 15px;
  padding: 30px 60px 20px;
}

#main.page_hotel_detail .wrap_comment .comment_right .comment_title {
  color: #333;
  font-size: 18px;
  font-weight: 700;
  position: relative;
  margin: 0 0 9px;
}

#main.page_hotel_detail .wrap_comment .comment_right .comment_content {
  color: #4e4e4e;
  padding-top: 20px;
  font-size: 14px;
  line-height: 21px;
  position: relative;
  font-weight: 200;
}

#main.page_hotel_detail .wrap_comment .comment_right .comment_status {
  padding-top: 15px;
  display: table;
  width: 100%;
}

#main.page_hotel_detail .wrap_comment .comment_right .comment_date .comment_date_text {
  color: #999;
  line-height: 40px;
  font-size: 13px;
  font-weight: 400;
}

#main.page_hotel_detail .wrap_pagination ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main.page_hotel_detail .wrap_pagination ul li > span, #main.page_hotel_detail .wrap_pagination ul li a {
  position: relative;
  display: block;
  width: 3rem;
  height: 3rem;
  box-sizing: border-box;
  background-color: #ffffff;
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  border-radius: 0.5rem;
  color: #000000;
}

#main.page_hotel_detail .wrap_pagination ul li > span .js-ripple_effect > span, #main.page_hotel_detail .wrap_pagination ul li a .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

#main.page_hotel_detail .wrap_pagination ul li > span.prev, #main.page_hotel_detail .wrap_pagination ul li > span.next, #main.page_hotel_detail .wrap_pagination ul li a.prev, #main.page_hotel_detail .wrap_pagination ul li a.next {
  border-radius: 50%;
}

#main.page_hotel_detail .wrap_pagination ul li > span.prev:after, #main.page_hotel_detail .wrap_pagination ul li > span.next:after, #main.page_hotel_detail .wrap_pagination ul li a.prev:after, #main.page_hotel_detail .wrap_pagination ul li a.next:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_triangle.svg") no-repeat center transparent;
  background-size: contain;
  margin: -0.75rem 0 0 -0.75rem;
}

#main.page_hotel_detail .wrap_pagination ul li > span.prev.double:after, #main.page_hotel_detail .wrap_pagination ul li > span.next.double:after, #main.page_hotel_detail .wrap_pagination ul li a.prev.double:after, #main.page_hotel_detail .wrap_pagination ul li a.next.double:after {
  width: 1.5rem;
  height: 1.5rem;
  margin: -0.75rem 0 0 -0.75rem;
  background-image: url("https://img2.tour.l-tike.com/image/common/pc/icon_triangle_double.svg");
}

#main.page_hotel_detail .wrap_pagination ul li > span.prev, #main.page_hotel_detail .wrap_pagination ul li a.prev {
  margin-right: 1.5rem;
}

#main.page_hotel_detail .wrap_pagination ul li > span.prev:after, #main.page_hotel_detail .wrap_pagination ul li a.prev:after {
  transform: rotate(90deg);
}

#main.page_hotel_detail .wrap_pagination ul li > span.next, #main.page_hotel_detail .wrap_pagination ul li a.next {
  margin-left: 1.5rem;
}

#main.page_hotel_detail .wrap_pagination ul li > span.next:after, #main.page_hotel_detail .wrap_pagination ul li a.next:after {
  transform: rotate(-90deg);
}

#main.page_hotel_detail .wrap_pagination ul li > span.active, #main.page_hotel_detail .wrap_pagination ul li a.active {
  background-color: #DBDBDB;
}

html.pc #main.page_hotel_detail .wrap_pagination ul li a:hover {
  background-color: #F2F2F2;
}

#main.page_hotel_detail .wrap_pagination ul li a.prev, #main.page_hotel_detail .wrap_pagination ul li a.next {
  -webkit-box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
}

#main.page_hotel_detail .wrap_pagination ul li span.skip:before {
  content: "…";
}

#main.page_hotel_detail .wrap_pagination ul li span.prev, #main.page_hotel_detail .wrap_pagination ul li span.next {
  background-color: #FAFAFA;
}

#main.page_hotel_detail .wrap_pagination ul li span.prev:after, #main.page_hotel_detail .wrap_pagination ul li span.next:after {
  opacity: 0.1;
}

#main.page_hotel_plan_confirm .section.plan_detail {
  background-color: transparent;
}

html.pc #main.page_hotel_plan_confirm .section.plan_detail > .section_inner {
  padding: 1.5rem 6.5rem 0;
  -webkit-box-shadow: 0em 0.1875em 0.75em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.1875em 0.75em 0em rgba(0, 0, 0, 0.16);
  border-radius: 0.5rem;
}

#main.page_hotel_plan_confirm .hotelfee_area {
  border: 3px solid #f23939;
  padding: 20px;
  background-color: #feebeb;
  margin: 1.875rem 0;
}

#main.page_hotel_plan_confirm .hotelfee_area span {
  color: gray;
  font-size: 12px;
}

#main.page_hotel_plan_confirm .section.attention {
  background-color: #FFF8DE;
}

#main.page_hotel_plan_confirm .section.attention .section_inner {
  text-align: center;
}

#main.page_hotel_plan_confirm .section.attention .section_inner p {
  font-weight: bold;
  color: #F64E83;
  padding: 0 0 1.875rem;
}

#main.page_hotel_plan_confirm .section.attention .section_inner .css_checkbox {
  display: inline-block;
}

.section_hotel_detail_information h2 {
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 1.5rem 0;
}

.section_hotel_detail_information .place {
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  color: #80868B;
}

.section_hotel_detail_information .star {
  padding: 0.5rem 0;
}

.section_hotel_detail_information .star .css_star {
  display: block;
}

.section_hotel_detail_information .tripadvisor {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  color: #80868B;
}

.section_hotel_detail_information .tripadvisor .r {
  flex-grow: 0;
  flex-shrink: 0;
  width: 8.9375rem;
  position: relative;
  display: block;
  margin: 0 1rem 0 0;
}

.section_hotel_detail_information .tripadvisor .r:before {
  content: '';
  display: block;
  padding: 16.78322% 0 0 0;
}

.section_hotel_detail_information .tripadvisor .r > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.section_hotel_detail_information .tripadvisor .c {
  flex-grow: 1;
  flex-shrink: 1;
}

.section_hotel_detail_information .tripadvisor .c a {
  text-decoration: underline;
}

html.pc .section_hotel_detail_information .tripadvisor .c a:hover {
  text-decoration: none;
}

.section_hotel_detail_information .detail dl, .section_hotel_detail_information .time dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.section_hotel_detail_information .detail dl dt:after, .section_hotel_detail_information .time dl dt:after {
  content: ":";
  display: inline-block;
  padding: 0 0.5em;
}

.section_hotel_detail_information .detail {
  padding: 1rem 0 1rem;
  color: #80868B;
}

.section_hotel_detail_information .information {
  padding: 2.5rem 0 0;
}

.section_hotel_detail_information .information h3 {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
}

.section_hotel_detail_information .hotel_nav {
  padding: 2.5rem 0 0;
}

.section_hotel_detail_information .wrap_detail {
  padding: 1.5rem 0 0;
}

.section_hotel_detail_information .wrap_detail .block {
  padding: 0 0 1rem;
  font-size: 1rem;
  line-height: 1.5em;
  letter-spacing: 0em;
}

.section_hotel_detail_information .wrap_detail .block > * {
  padding-top: 1rem;
}

.section_hotel_detail_information .wrap_detail .block h4 {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

.section_hotel_detail_information .wrap_detail .block ul li {
  position: relative;
  padding: 0 0 0 1em;
}

.section_hotel_detail_information .wrap_detail .block ul li:before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}

.section_hotel_detail_information .wrap_detail .block dl {
  padding-top: 0;
}

.section_hotel_detail_information .wrap_detail .block dl dt {
  padding: 1rem 0 0;
  font-weight: bold;
}

.section_hotel_detail_information .wrap_detail .tripadvisor iframe {
  width: 31.25rem;
  height: 18.75rem;
}

.section_hotel_detail_information .categorylist .category_title {
  padding-left: 1rem;
}

.section_hotel_detail_information .categorylist .category_text {
  padding: 0.9375rem 2.5rem;
}

.section_hotel_detail_information .detaillist .detail_text {
  padding: 0rem 0.9375rem 0rem 2.5rem;
}

.section_hotel_plan_information h2 {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 1rem 0;
}

.section_hotel_plan_information .wrap_detail {
  padding: 0 0 5rem;
  font-size: 1rem;
  line-height: 1.5em;
  letter-spacing: 0em;
}

.section_hotel_plan_information .wrap_detail > * {
  padding-top: 2.5rem;
}

.section_hotel_plan_information .wrap_detail h3 {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0 0 1rem;
  font-weight: bold;
}

.section_hotel_plan_information .wrap_detail ul li {
  position: relative;
  padding: 0 0 0 1em;
}

.section_hotel_plan_information .wrap_detail ul li:before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}

.section_hotel_plan_information .wrap_detail dl dt {
  padding-top: 1em;
  font-weight: bold;
}

.section_hotel_plan_information .wrap_detail dl dt:first-child {
  padding-top: 0;
}

.section_hotel_plan_information .categorylist .category_title {
  padding-left: 1rem;
}

.section_hotel_plan_information .categorylist .category_text {
  padding: 0.9375rem 2.5rem;
}

.section_hotel_plan_information .detaillist .detail_text {
  padding: 0rem 0.9375rem 0rem 2.5rem;
}

.wrap_image_slide_gallery .slide_wrap {
  position: relative;
  z-index: 1;
}

.wrap_image_slide_gallery .slide_wrap .slide_mask {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  overflow: hidden;
}

.wrap_image_slide_gallery .slide_wrap .slide_inner {
  position: relative;
  left: 0;
  height: 100%;
}

.wrap_image_slide_gallery .images ul, .wrap_image_slide_gallery .thums ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  height: 100%;
}

.wrap_image_slide_gallery .images ul li, .wrap_image_slide_gallery .thums ul li {
  flex-shrink: 0;
  flex-grow: 0;
  height: 100%;
}

.wrap_image_slide_gallery .images {
  background-color: #000;
  margin-bottom: 1px;
}

.wrap_image_slide_gallery .images .slide_wrap {
  height: 25.375rem;
}

.wrap_image_slide_gallery .images ul li {
  width: 38rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/preloader.svg") no-repeat center transparent;
  background-size: 6.25rem auto;
}

.wrap_image_slide_gallery .images ul li.isLoadEnd {
  background-size: contain;
}

.wrap_image_slide_gallery .images .num {
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 0.5rem;
  white-space: nowrap;
  font-size: 0.8125rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  color: #ffffff;
  padding: 0.625rem 0.75rem;
}

.wrap_image_slide_gallery .thums {
  height: 6.25rem;
  overflow: auto;
}

.wrap_image_slide_gallery .thums ul li {
  width: 6.25rem;
  padding: 0 1px 0 0;
}

.wrap_image_slide_gallery .thums ul li a {
  display: block;
  width: 100%;
  height: 100%;
  background: url("https://img2.tour.l-tike.com/image/common/pc/preloader.svg") no-repeat center #000;
  background-size: 1.875rem auto;
  transition: opacity 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.wrap_image_slide_gallery .thums ul li a.isLoadEnd {
  background-size: cover;
}

.wrap_image_slide_gallery .thums ul li a.isActive {
  opacity: 0.7;
}

.wrap_image_slide_gallery .arrow {
  position: absolute;
  top: 50%;
  display: block;
  width: 3rem;
  height: 3rem;
  box-sizing: border-box;
  background-color: #ffffff;
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  color: #000000;
  -webkit-box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.25em 1em 0em rgba(0, 0, 0, 0.16);
  margin: -1.5rem 0 0;
  border-radius: 50%;
}

html.pc .wrap_image_slide_gallery .arrow .js-ripple_effect > span {
  background-color: rgba(0, 0, 0, 0.1);
}

html.pc .wrap_image_slide_gallery .arrow:hover {
  background-color: #F2F2F2;
}

.wrap_image_slide_gallery .arrow:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_triangle.svg") no-repeat center transparent;
  background-size: contain;
  margin: -0.75rem 0 0 -0.75rem;
}

.wrap_image_slide_gallery .arrow.prev {
  left: -1.5rem;
  margin: 0 0 0 1.5rem;
}

.wrap_image_slide_gallery .arrow.prev:after {
  transform: rotate(90deg);
}

.wrap_image_slide_gallery .arrow.next {
  right: -1.5rem;
  margin: 0 1.5rem 0 0;
}

.wrap_image_slide_gallery .arrow.next:after {
  transform: rotate(-90deg);
}

.wrap_image_gallery {
  background-color: #000;
}

.wrap_image_gallery div {
  height: 25.375rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/preloader.svg") no-repeat center transparent;
  background-size: 6.25rem auto;
}

.wrap_image_gallery div.isLoadEnd {
  background-size: contain;
}

.section_hotel_plan_detail .wrap_time {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.section_hotel_plan_detail .wrap_time > div {
  flex-grow: 0;
  flex-shrink: 1;
}

.section_hotel_plan_detail .wrap_time > div .ttl {
  color: #80868B;
  font-weight: bold;
  padding: 0 0 0.5rem;
}

.section_hotel_plan_detail .wrap_time > div .date {
  font-size: 2rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

.section_hotel_plan_detail .wrap_time > div.in {
  margin-right: 3.4375rem;
}

.section_hotel_plan_detail .wrap_time > div.in .date {
  position: relative;
}

.section_hotel_plan_detail .wrap_time > div.in .date:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -2.5rem;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.75rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_arrow_l.svg") no-repeat center transparent;
  background-size: contain;
}

.section_hotel_plan_detail .passengers, .section_hotel_plan_detail .plans {
  padding: 1.5rem 0 0;
}

.section_hotel_plan_detail .passengers h4, .section_hotel_plan_detail .plans h4 {
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  padding: 1rem 0;
}

.section_hotel_plan_detail .passengers .link, .section_hotel_plan_detail .plans .link {
  padding: 1rem 0 0;
  text-align: right;
}

.section_hotel_plan_detail .passengers .link a, .section_hotel_plan_detail .plans .link a {
  text-decoration: underline;
}

.section_hotel_plan_detail .link {
  text-align: right;
  text-decoration: underline;
  color: #0074BD;
}

html.pc .pick_modal[data-id=place] {
  padding: 0;
  width: 31.5rem;
  margin: 3.5rem 0 0 -3.4375rem;
}

html.pc .pick_modal[data-id=place] ul li {
  border-top: 1px solid #DBDBDB;
}

html.pc .pick_modal[data-id=place] ul li:first-child {
  border-top: none;
}

html.pc .pick_modal[data-id=place] ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  height: 3.125rem;
  color: #000000;
  overflow: hidden;
}

html.pc .pick_modal[data-id=place] ul li a span {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

html.pc .pick_modal[data-id=place] ul li a span {
  display: block;
}

html.pc .pick_modal[data-id=place] ul li a:hover {
  color: #80868B;
}

html.pc .pick_modal[data-id=place] ul li a:before {
  content: "";
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  margin: 0 0.9375rem 0 1rem;
  flex-shrink: 0;
  flex-grow: 0;
  background: url("https://img2.tour.l-tike.com/image/common/pc/suggest_icon_place.svg") no-repeat center transparent;
  background-size: contain;
}

html.pc .pick_modal[data-id=place] ul li a[data-type=metro_station]:before, html.pc .pick_modal[data-id=place] ul li a[data-type=train_station]:before {
  background-image: url("https://img2.tour.l-tike.com/image/common/pc/suggest_icon_train.svg");
}

html.pc .pick_modal.hotel[data-id=passengers] .attention {
  border-bottom: 1px solid #DBDBDB;
  font-size: 0.75rem;
  line-height: 1.5em;
  letter-spacing: 0em;
  padding: 0 0 1.5rem;
}

html.pc .pick_modal.hotel[data-id=passengers] .attention h4 {
  font-size: 1em;
}

html.pc .pick_modal.hotel[data-id=passengers] .room_ttl {
  position: relative;
  padding: 1rem 0;
  font-size: 1.25rem;
  line-height: 1em;
  letter-spacing: 0em;
}

html.pc .pick_modal.hotel[data-id=passengers] .room_ttl a {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  font-weight: normal;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  margin-top: -0.5em;
  color: #0074BD;
}

html.pc .pick_modal.hotel[data-id=passengers] .room_ttl a:hover {
  color: #0067A8;
}

html.pc .pick_modal.hotel[data-id=passengers] .room {
  padding: 1.5rem 0 0;
}

html.pc .pick_modal.hotel[data-id=passengers] .room:first-child {
  padding-top: 0;
}

html.pc .pick_modal.hotel[data-id=passengers] .room:first-child .room_ttl a {
  display: none;
}

html.pc .pick_modal.hotel[data-id=passengers] .add_room_button {
  padding: 1.5rem 0 0;
}

html.pc .pick_modal.hotel[data-id=passengers] .add_room_button .css_button {
  width: 100%;
  border-color: #0074BD;
}

html.pc .pick_modal.hotel[data-id=passengers] .add_room_button .css_button .css_button_inner .icon {
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  position: relative;
  display: block;
  margin: 0 0.5125rem 0 0;
}

html.pc .pick_modal.hotel[data-id=passengers] .add_room_button .css_button .css_button_inner .icon:before {
  content: '';
  display: block;
  padding: 100% 0 0 0;
}

html.pc .pick_modal.hotel[data-id=passengers] .add_room_button .css_button .css_button_inner .icon > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

html.pc .pick_modal.hotel[data-id=passengers] .add_room_button .css_button .css_button_inner .icon svg path {
  fill: #0074BD;
}

html.pc .pick_modal.hotel[data-id=passengers] .add_room_button .css_button.disable {
  border-color: #80868B;
  color: #80868B;
}

html.pc .pick_modal.hotel[data-id=passengers] .add_room_button .css_button.disable .css_button_inner .icon svg path {
  fill: #80868B;
}

html.pc .pick_modal.hotel[data-id=passengers] .room_template {
  display: none;
}

html.pc .pick_modal.hotel[data-id=passengers] .passengers_error {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  height: 2.75rem;
  z-index: 100;
  margin: -2.75rem 0 0;
}

html.pc .pick_modal.hotel[data-id=passengers] .passengers_error p {
  height: 100%;
  white-space: nowrap;
  box-sizing: border-box;
  border-radius: 0.5rem;
  border: 1px solid #F23939;
  color: #F23939;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  padding: 0 1rem;
  background-color: #FFF8DE;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

section.block.healthsafety ul#categorylist {
  padding-left: 2.25rem;
}

section.block.healthsafety ul#categorylist li {
  margin: 0.5rem 0;
}

section.block.healthsafety ul#categorylist li:before {
  content: none !important;
}

section.block.healthsafety ul#categorylist li ul {
  padding: 0;
}

section.block.healthsafety ul#categorylist li ul li {
  margin: 1rem 0 0 -1rem;
}

.hidden {
  display: none;
}

#main .section_search_dp {
  background: no-repeat center #0074BD;
  background-size: cover;
  padding: 2.5rem 0;
  opacity: 1;
}

#main .section_search_dp .section_search_airplane, #main .section_search_dp .section_search_hotel {
  background: none;
  padding: 0;
}

#main .section_search_dp .section_search_airplane .detail .item {
  margin: 0 1rem 0 0;
}

#main .section_search_dp .section_search_airplane .detail .item:last-child {
  margin-right: 0;
}

#main .section_search_dp .section_search_airplane .detail .item.airport dl {
  width: 15.5rem;
}

#main .section_search_dp .section_search_airplane .detail .item.airport .departure {
  padding: 0 0.5rem 0 0;
}

#main .section_search_dp .section_search_airplane .detail .item.passengers dl {
  width: 25rem;
}

#main .section_search_dp .section_search_hotel .detail {
  padding-bottom: 0;
}

html.pc #main .section_search_dp .section_search_hotel .detail {
  display: block;
}

#main .section_search_dp .section_search_hotel .detail .item {
  display: block;
  padding: 0 0 1.5rem;
  margin: 0;
  flex-shrink: 0;
  flex-grow: 0;
}

#main .section_search_dp .section_search_hotel .detail .item.place {
  display: none;
}

#main .section_search_dp .section_search_hotel .detail .item.place dl {
  width: 31.5rem;
}

#main .section_search_dp .section_search_hotel .detail .item.date {
  display: none;
}

#main .section_search_dp .section_search_hotel .detail .item.date dl {
  width: 18.5rem;
}

#main .section_search_dp .section_search_hotel .detail .item.date [data-target="calender_hotel"] {
  z-index: 1;
}

#main .section_search_dp .wrap_others {
  padding: 0 0 1.5rem;
}

#main .section_search_dp .wrap_others ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main .section_search_dp .wrap_others ul li {
  flex-grow: 0;
  flex-shrink: 0;
  padding: 0 3.125rem 0 0;
  color: #ffffff;
}

#main .section_search_dp .submit_error {
  display: none;
  padding: 0 0 1.5rem;
}

html.pc #main .section_search_dp .submit_error p {
  display: inline-block;
}

html.pc #main .section_search_dp .btn .css_button {
  border-radius: 0.1875rem;
  width: 16.5rem;
  height: 3.5rem;
  margin: 0;
}

#main .wrap_section_chosen_ticket_dp {
  display: none;
}

#main .wrap_section_chosen_ticket_dp .button {
  padding: 5rem 0 0;
}

#main .wrap_section_chosen_ticket_dp.isComplete, #main .wrap_section_chosen_ticket_dp.selected {
  display: block;
}

#main .wrap_section_chosen_ticket_dp.isComplete .section_chosen_ticket, #main .wrap_section_chosen_ticket_dp.selected .section_chosen_ticket {
  display: block;
}

#main .wrap_section_chosen_ticket_dp.isComplete .wrap_total_price {
  display: block;
}

#main .wrap_section_chosen_ticket_dp.isComplete .wrap_total_price_detail {
  display: block;
}

#main .section_chosen_ticket_dp {
  padding: 1rem 0 0;
}

#main .section_chosen_ticket_dp .section_inner {
  background-color: #FAFAFA;
  padding: 1.5rem 6.5rem;
}

#main .section_chosen_ticket_dp h2 a {
  display: block;
  position: relative;
}

#main .section_chosen_ticket_dp h2 a.isOpen .icon_arrow {
  transform: rotate(180deg);
}

html.pc #main .section_chosen_ticket_dp h2 a:hover .icon_arrow svg path {
  fill: #80868B;
}

#main .section_chosen_ticket_dp h2 a .icon_arrow {
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  width: 2.25rem;
  height: 2.25rem;
  margin-top: -0.28125rem;
  transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#main .section_chosen_ticket_dp h2 a .icon_arrow:before {
  display: none;
}

#main .section_chosen_ticket_dp h2 a .icon_arrow svg path {
  fill: #000000;
  transition: fill 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#main .section_chosen_ticket_dp .block {
  padding: 0 0 1.5rem;
}

#main .section_chosen_ticket_dp .block + .block {
  margin-top: -0.5rem;
}

#main .section_chosen_ticket_dp .block > dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main .section_chosen_ticket_dp .block > dl > dt {
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

#main .section_chosen_ticket_dp .block > dl > dd {
  width: 51rem;
}

#main .section_chosen_ticket_dp .block > dl > dd .ticket {
  padding: 1rem;
  border-radius: 0.5rem;
  border: 1px solid #DBDBDB;
  background-color: #ffffff;
}

#main .section_chosen_ticket_dp .block > dl > dd .ticket .top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 0 0 1rem;
  font-size: 0.875rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main .section_chosen_ticket_dp .block > dl > dd .ticket .middle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  font-size: 0.875rem;
  line-height: 1.5em;
  letter-spacing: 0em;
}

#main .section_chosen_ticket_dp .block > dl > dd .ticket .middle .airline_logo {
  width: 5.8125rem;
  position: relative;
  display: block;
  border-radius: 0.125rem;
  overflow: hidden;
  margin-right: 2.5rem;
  flex-shrink: 0;
  flex-grow: 0;
}

#main .section_chosen_ticket_dp .block > dl > dd .ticket .middle .airline_logo:before {
  content: '';
  display: block;
  padding: 41.79104% 0 0 0;
}

#main .section_chosen_ticket_dp .block > dl > dd .ticket .middle .airline_logo > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#main .section_chosen_ticket_dp .block > dl > dd .ticket .middle .name {
  margin-right: 2.75rem;
  flex-shrink: 1;
  flex-grow: 0;
}

#main .section_chosen_ticket_dp .block > dl > dd .ticket .middle .seat {
  margin-right: 2.5rem;
  flex-shrink: 1;
  flex-grow: 0;
}

#main .section_chosen_ticket_dp .block > dl > dd .ticket .middle .from_to {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  flex-shrink: 0;
  flex-grow: 0;
}

#main .section_chosen_ticket_dp .block > dl > dd .ticket .middle .from_to dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin-right: 2.5rem;
}

#main .section_chosen_ticket_dp .block > dl > dd .ticket .middle .from_to dl:last-child {
  margin-right: 0;
}

#main .section_chosen_ticket_dp .block > dl > dd .ticket .middle .from_to dl dt {
  padding: 0 0.5rem 0 0;
}

#main .section_chosen_ticket_dp .block > dl > dd .ticket .middle .from_to dl dd {
  font-weight: bold;
}

#main .section_chosen_ticket_dp .block > dl > dd .ticket .middle .from_to dl:first-child dd {
  position: relative;
}

#main .section_chosen_ticket_dp .block > dl > dd .ticket .middle .from_to dl:first-child dd:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -2rem;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: -0.75rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_arrow_l.svg") no-repeat center transparent;
  background-size: contain;
}

#main .section_chosen_ticket_dp .block > dl > dd .ticket .detail {
  position: relative;
  font-size: 0.875rem;
  line-height: 1em;
  letter-spacing: 0em;
}

#main .section_chosen_ticket_dp .block > dl > dd .ticket .detail ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main .section_chosen_ticket_dp .block > dl > dd .ticket .detail ul + ul {
  padding-top: 1rem;
}

#main .section_chosen_ticket_dp .block > dl > dd .ticket .detail ul li {
  flex-grow: 0;
  flex-shrink: 1;
  margin: 0 2.5rem 0 0;
}

#main .section_chosen_ticket_dp .block > dl > dd .ticket .detail ul:last-child li:last-child {
  font-weight: bold;
}

#main .section_chosen_ticket_dp .wrap_total_price {
  border-top: 1px solid #DBDBDB;
}

#main .section_chosen_ticket_dp .wrap_total_price dl {
  padding: 1.5rem 0 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main .section_chosen_ticket_dp .wrap_total_price dl dt {
  font-size: 0.875rem;
  line-height: 1em;
  letter-spacing: 0em;
  margin-right: 2.5rem;
}

#main .section_chosen_ticket_dp .wrap_total_price dl dd {
  font-size: 1.125rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  color: #F64E83;
}

#main .section_chosen_ticket_dp .wrap_total_price_detail {
  display: none;
  border-top: 1px solid #DBDBDB;
}

#main .section_chosen_ticket_dp .wrap_total_price_detail .total_price dl {
  padding: 1.5rem 0 0.6875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*
    * nowrap(初期値) : 子要素を折り返しせず、一行に並べる
    * wrap : 子要素を折り返し、複数行に上から下へ並べる
    * wrap-reverse : 子要素を折り返し、複数行に下から上へ並べる
    */
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

#main .section_chosen_ticket_dp .wrap_total_price_detail .total_price dl dt {
  font-size: 2rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

#main .section_chosen_ticket_dp .wrap_total_price_detail .total_price dl dd {
  text-align: right;
  font-size: 2.25rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
  color: #F64E83;
}

#main .section_chosen_ticket_dp .wrap_total_price_detail .total_price .links {
  text-align: right;
}

#main .section_chosen_ticket_dp .wrap_total_price_detail .total_price .links a {
  position: relative;
  display: inline-block;
  padding: 0 1.25rem 0 0;
}

#main .section_chosen_ticket_dp .wrap_total_price_detail .total_price .links a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 0.75rem;
  height: 0.4375rem;
  margin-top: -0.21875rem;
  background: url("https://img2.tour.l-tike.com/image/common/pc/icon_link.svg") no-repeat center transparent;
  background-size: contain;
}

#main .section_chosen_ticket_dp .wrap_total_price_detail .total_price .links a .txt .close {
  display: none;
}

#main .section_chosen_ticket_dp .wrap_total_price_detail .total_price .links a.isOpen:after {
  transform: rotate(180deg);
}

#main .section_chosen_ticket_dp .wrap_total_price_detail .total_price .links a.isOpen .txt .open {
  display: none;
}

#main .section_chosen_ticket_dp .wrap_total_price_detail .total_price .links a.isOpen .txt .close {
  display: block;
}

#main .dp_more_other_date {
  padding: 0 0 0.5rem;
}

#main .dp_more_other_date .css_checkbox {
  margin: 0 0 1rem;
}

#main .dp_more_other_date .wrap {
  display: none;
  padding: 0 0 1rem;
}

#main.page_dp_top h1 {
  position: relative;
}

#main.page_dp_top .gotoLogo img {
  width: auto;
}

#main.page_dp_top .to_world {
  display: block;
  position: relative;
  bottom: 2.5rem;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 0em;
  font-weight: bold;
}

html.pc #main.page_dp_top .to_world {
  float: right;
}

#main.page_dp_top .to_world a {
  display: block;
  position: relative;
  color: #0074BD;
  padding: 0 2rem 0 0;
}

html.pc #main.page_dp_top .to_world a:hover {
  color: #0067A8;
}

html.pc #main.page_dp_top .to_world a:hover svg path {
  fill: #0067A8;
}

#main.page_dp_top .to_world a .icon {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  margin: -0.75rem 0 0;
  width: 1.5rem;
  height: 1.5rem;
  transform: rotate(-90deg);
}

#main.page_dp_top .to_world a .icon svg path {
  fill: #0074BD;
  transition: fill 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#main.page_dp_plan_confirm .wrap_total_price_detail {
  display: block;
}

#main.page_dp_plan_confirm .section.plan_detail {
  background-color: transparent;
}

#main.page_dp_plan_confirm .section.plan_detail > .section_inner {
  position: relative;
}

html.pc #main.page_dp_plan_confirm .section.plan_detail > .section_inner {
  padding: 1.5rem 6.5rem 0;
  -webkit-box-shadow: 0em 0.1875em 0.75em 0em rgba(0, 0, 0, 0.16);
  box-shadow: 0em 0.1875em 0.75em 0em rgba(0, 0, 0, 0.16);
  border-radius: 0.5rem;
}

#main.page_dp_plan_confirm .section.plan_detail > .section_inner .change {
  top: 1rem;
  right: 1.5rem;
}

html.pc #main.page_dp_plan_confirm .section.plan_detail > .section_inner .change {
  position: absolute;
}

#main.page_dp_plan_confirm .hotelfee_area {
  border: 3px solid #f23939;
  padding: 1.5rem;
  background-color: #feebeb;
}

#main.page_dp_plan_confirm .hotelfee_area span {
  color: gray;
  font-size: 12px;
}

#main.page_dp_plan_confirm h1.dp_plan_pageTitle {
  padding: 1.5rem 0 0;
  font-weight: bold;
  font-size: 2rem;
}

#main.page_dp_plan_confirm .section.attention {
  background-color: #FFF8DE;
}

#main.page_dp_plan_confirm .section.attention .section_inner {
  text-align: center;
}

#main.page_dp_plan_confirm .section.attention .section_inner p {
  font-weight: bold;
  color: #F64E83;
  padding: 0 0 1.875rem;
}

#main.page_dp_plan_confirm .section.attention .section_inner .css_checkbox {
  display: inline-block;
}

#main.page_dp_plan_confirm input[type=text], #main.page_dp_plan_confirm input[type=tel], #main.page_dp_plan_confirm input[type=email], #main.page_dp_plan_confirm input[type=password] {
  max-width: 400px;
}

#main.page_dp_plan_confirm .css_select {
  max-width: 400px;
}

#main.page_dp_plan_confirm .input_room_person h2 {
  background-color: #BFBFBF;
  padding: 0.5rem !important;
}

#main.page_airplane_search .gotoLogo_dp {
  margin-left: 1rem;
}

#main.page_airplane_search .gotoLogo_dp img {
  width: auto;
}

#main.page_airplane_search .gotoLogo_dp + .gotoContent_dp {
  color: #F64E83;
  font-size: 1.5rem;
  line-height: 1em;
  letter-spacing: 0em;
}
/*# sourceMappingURL=base.css.map */
