@charset "UTF-8";
.pc {
  display: block; }

.tablet {
  display: none; }

.smp {
  display: none; }

body {
  position: relative; }

/* ===================================
	header
=====================================*/
header {
  margin: 0 auto;
  width: 94%;
  max-width: 1300px;
  padding: 20px 0;
  display: flex;
  flex-flow: row nowrap;
  justify-content: flex-start;
  align-items: center;
  /*--- IE10 用 ---*/
  display: -ms-flexbox;
  -ms-flex-flow: row nowrap;
  -ms-flex-pack: flex-start;
  -ms-flex-align: center;
  /*--- Androidブラウザ用 ---*/
  display: -webkit-box;
  -webkit-box-direction: row;
  -webkit-box-pack: flex-start;
  -webkit-box-align: center;
  /*--- safari（PC）用 ---*/
  display: -webkit-flex;
  -webkit-flow: row nowrap;
  -webkit-justify-content: flex-start;
  -webkit-align-items: center; }
  header h1 {
    width: 158px; }
  header ul {
    flex: 1;
    margin: 0 20px;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-items: center;
    /*--- IE10 用 ---*/
    display: -ms-flexbox;
    -ms-flex-flow: row nowrap;
    -ms-flex-pack: flex-start;
    -ms-flex-align: center;
    /*--- Androidブラウザ用 ---*/
    display: -webkit-box;
    -webkit-box-direction: row;
    -webkit-box-pack: flex-start;
    -webkit-box-align: center;
    /*--- safari（PC）用 ---*/
    display: -webkit-flex;
    -webkit-flow: row nowrap;
    -webkit-justify-content: flex-start;
    -webkit-align-items: center; }
    header ul li {
      margin-right: 10px;
      font-size: 13px;
      line-height: 150%; }
      header ul li:last-child {
        margin-right: 0; }
      header ul li a {
        text-decoration: none !important;
        color: #000 !important; }
        header ul li a:hover {
          text-decoration: underline !important; }
  header .language {
    width: 150px; }
    header .language .cp_ipselect {
      overflow: hidden;
      width: 90%;
      margin: 0;
      text-align: center; }
    header .language .cp_ipselect select {
      width: 100%;
      padding-right: 1em;
      text-align: right;
      cursor: pointer;
      text-indent: 0.01px;
      text-overflow: ellipsis;
      border: none;
      outline: none;
      background: transparent;
      background-image: none;
      box-shadow: none;
      -webkit-appearance: none;
      appearance: none; }
    header .language .cp_ipselect select::-ms-expand {
      display: none; }
    header .language .cp_ipselect.cp_sl01 {
      position: relative;
      border-radius: 2px;
      background: #ffffff; }
    header .language .cp_ipselect.cp_sl01::before {
      position: absolute;
      top: 1.0em;
      right: 0.9em;
      width: 0;
      height: 0;
      padding: 0;
      content: '';
      border-left: 6px solid transparent;
      border-right: 6px solid transparent;
      border-top: 6px solid #666666;
      pointer-events: none; }
    header .language .cp_ipselect.cp_sl01 select {
      padding: 8px 38px 8px 8px;
      color: #666666; }

.sp-nav {
  display: none; }

/* ===================================
	nav
=====================================*/
nav {
  margin-bottom: 40px;
  background: #963087;
  color: #fff; }
  nav .inner {
    margin: 0 auto;
    padding: 20px 0;
    width: 94%;
    max-width: 1300px; }
    nav .inner dl {
      width: 100%;
      display: flex;
      flex-flow: row nowrap;
      justify-content: flex-start;
      align-items: stretch;
      /*--- IE10 用 ---*/
      display: -ms-flexbox;
      -ms-flex-flow: row nowrap;
      -ms-flex-pack: flex-start;
      -ms-flex-align: stretch;
      /*--- Androidブラウザ用 ---*/
      display: -webkit-box;
      -webkit-box-direction: row;
      -webkit-box-pack: flex-start;
      -webkit-box-align: stretch;
      /*--- safari（PC）用 ---*/
      display: -webkit-flex;
      -webkit-flow: row nowrap;
      -webkit-justify-content: flex-start;
      -webkit-align-items: stretch; }
      nav .inner dl dt {
        margin-right: 20px;
        width: 8em;
        padding: 7px 0 0 0;
        pointer-events: none; }
      nav .inner dl dd {
        flex: 1; }
        nav .inner dl dd table {
          width: 100%;
          border-collapse: collapse; }
          nav .inner dl dd table select {
            padding: 10px;
            box-sizing: border-box;
            border: none; }
          nav .inner dl dd table input {
            padding: 10px;
            box-sizing: border-box; }
          nav .inner dl dd table td {
            vertical-align: top;
            padding: 0; }
          nav .inner dl dd table .courseArea {
            width: 100%;
            display: flex;
            flex-flow: row nowrap;
            justify-content: flex-start;
            align-items: center;
            /*--- IE10 用 ---*/
            display: -ms-flexbox;
            -ms-flex-flow: row nowrap;
            -ms-flex-pack: flex-start;
            -ms-flex-align: center;
            /*--- Androidブラウザ用 ---*/
            display: -webkit-box;
            -webkit-box-direction: row;
            -webkit-box-pack: flex-start;
            -webkit-box-align: center;
            /*--- safari（PC）用 ---*/
            display: -webkit-flex;
            -webkit-flow: row nowrap;
            -webkit-justify-content: flex-start;
            -webkit-align-items: center; }
            nav .inner dl dd table .courseArea .headline .radiBlock {
              display: inline-block; }
              nav .inner dl dd table .courseArea .headline .radiBlock label {
                margin-right: 10px; }
            nav .inner dl dd table .courseArea .headline p {
              display: inline-block;
              margin-right: 20px; }
            nav .inner dl dd table .courseArea .selectCover {
              flex: 1;
              margin-right: 1%;
              box-sizing: border-box;
              background: url("../img/icon_course01.png") no-repeat left 10px top 46% #fff;
              background-size: 26px 27px;
              padding-left: 36px; }
              nav .inner dl dd table .courseArea .selectCover:last-child {
                margin-right: 0;
                background: url("../img/icon_course02.png") no-repeat left 10px top 46% #fff;
                background-size: 26px 27px; }
              nav .inner dl dd table .courseArea .selectCover select {
                width: 100%;
                -webkit-appearance: none;
                -moz-appearance: none;
                appearance: none;
                background: url("../img/arrow02.png") right 8px top 53% no-repeat #fff;
                background-size: 15px 10px; }
          nav .inner dl dd table .form01 {
            display: none; }
          nav .inner dl dd table .form02 {
            display: none; }
          nav .inner dl dd table .formArea {
            margin-top: 8px;
            width: 100%;
            display: flex;
            flex-flow: row wrap;
            justify-content: flex-start;
            align-items: stretch;
            /*--- IE10 用 ---*/
            display: -ms-flexbox;
            -ms-flex-flow: row wrap;
            -ms-flex-pack: flex-start;
            -ms-flex-align: stretch;
            /*--- Androidブラウザ用 ---*/
            display: -webkit-box;
            -webkit-box-direction: row;
            -webkit-box-pack: flex-start;
            -webkit-box-align: stretch;
            /*--- safari（PC）用 ---*/
            display: -webkit-flex;
            -webkit-flow: row wrap;
            -webkit-justify-content: flex-start;
            -webkit-align-items: stretch; }
            nav .inner dl dd table .formArea .inForm {
              width: 80%;
              display: flex;
              flex-flow: row nowrap;
              justify-content: flex-start;
              align-items: stretch;
              /*--- IE10 用 ---*/
              display: -ms-flexbox;
              -ms-flex-flow: row nowrap;
              -ms-flex-pack: flex-start;
              -ms-flex-align: stretch;
              /*--- Androidブラウザ用 ---*/
              display: -webkit-box;
              -webkit-box-direction: row;
              -webkit-box-pack: flex-start;
              -webkit-box-align: stretch;
              /*--- safari（PC）用 ---*/
              display: -webkit-flex;
              -webkit-flow: row nowrap;
              -webkit-justify-content: flex-start;
              -webkit-align-items: stretch; }
              nav .inner dl dd table .formArea .inForm input.outwardTrip {
                width: 27%;
                margin-right: 1%;
				border: none;
                background: url("../img/icon_calendar.png") no-repeat right 10px top 46% #fff; }
              nav .inner dl dd table .formArea .inForm input.returnTrip {
                width: 27%;
                margin-right: 1%;
				border: none;
                background: url("../img/icon_calendar.png") no-repeat right 10px top 46% #fff; }
              nav .inner dl dd table .formArea .inForm select {
                -webkit-appearance: none;
                -moz-appearance: none;
                appearance: none;
                background: url("../img/arrow01.png") right 8px top 53% no-repeat #fff;
                background-size: 15px 8px; }
              nav .inner dl dd table .formArea .inForm select.people01 {
                width: 14%;
                margin-right: 1%; }
              nav .inner dl dd table .formArea .inForm select.people02 {
                width: 14%;
                margin-right: 1%; }
              nav .inner dl dd table .formArea .inForm select.people03 {
                width: 14%; }
            nav .inner dl dd table .formArea .searchBtnArea {
              margin-left: 1%;
              flex: 1; }
            nav .inner dl dd table .formArea .support {
              flex: 1;
              margin-top: 5px;
              padding-right: 20%;
              font-size: 13px;
              line-height: 150%;
              text-align: right; }
      nav .inner dl .searchBtn {
        box-sizing: border-box;
        width: 100%;
        cursor: pointer;
        background: #FFE400;
        border: 1px #FFE400 solid;
        color: #963087;
        position: static;
        padding: 10px 5px;
        font-size: 20px;
        line-height: 150%; }

.type {
  display: none; }

/* ===================================
	searchResults
=====================================*/
.searchResults {
  margin: 0 auto 40px;
  width: 94%;
  max-width: 1300px; }
  .searchResults h2 {
    margin: 0 0 5px;
    font-size: 20px;
    line-height: 150%; }
  .searchResults p {
    font-size: 14px;
    line-height: 180%;
    margin-bottom: 1em; }
    .searchResults p:last-child {
      margin-bottom: 0; }
  .searchResults #err {
    padding: 5px;
    border-radius: 3px;
    border: 2px solid #9B308C;
    color: #9B308C;
    background-color: #ffd4eb; }
/* ===================================
	searchResults
=====================================*/
.resultsSpBlock {
  display: none; }

.resultsBlock {
  margin: 0 auto 30px;
  width: 94%;
  max-width: 1300px; }
  .resultsBlock table {
    margin-bottom: 30px;
    width: 100%;
    border-collapse: collapse; }
    .resultsBlock table:last-child {
      margin-bottom: 0; }
    .resultsBlock table th {
      background: #EFEFEF;
      padding: 15px 5px;
      text-align: center; }
      .resultsBlock table th:first-child {
        background: #4B4848;
        color: #fff; }
      .resultsBlock table th span {
        display: inline-block;
        padding-left: 30px; }
        .resultsBlock table th span.outward {
          background: url("../img/icon_outward.png") no-repeat left 3px; }
        .resultsBlock table th span.return {
          background: url("../img/icon_return.png") no-repeat left 3px; }
    .resultsBlock table td {
      border-bottom: #EFEFEF solid;
      padding: 15px 5px;
      text-align: center; }
      .resultsBlock table td.peach {
        color: #963087; }
      .resultsBlock table td.vanillaAir {
        color: #0291D2; }
      .resultsBlock table td.peach.sale,
      .resultsBlock table td.vanillaAir.sale {
        background: url("../img/img-sale.png") no-repeat right 2px; }
      .resultsBlock table td strong {
        font-size: 160%;
        line-height: 150%;
        font-weight: normal; }
      .resultsBlock table td .remaining {
        color: #963087;
        display: inline-block;
		font-size: 85%;
		width: 140px;
        text-align: left; }
      .resultsBlock table td .few {
        color: #CC4E92;
        display: inline-block;
		font-size: 85%;
		width: 140px;
        text-align: left; }
      .resultsBlock table td .full {
        color: #BABABB;
        display: inline-block;
		font-size: 85%;
		width: 140px;
        text-align: left;
        /*margin-right: 2em; */}
      .resultsBlock table td .time {
        display: inline-block;
        line-height: 1.2em; }
      .resultsBlock table td .time.hyphen {
        position: relative;
        top: -1.2em; }
        .resultsBlock table td .time span {
	      font-size: 0.8em; }

.resultsBtn {
  margin-bottom: 80px; }
  .resultsBtn .inner {
    margin: 0 auto;
    width: 94%;
    max-width: 480px;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-items: stretch;
    /*--- IE10 用 ---*/
    display: -ms-flexbox;
    -ms-flex-flow: row nowrap;
    -ms-flex-pack: flex-start;
    -ms-flex-align: stretch;
    /*--- Androidブラウザ用 ---*/
    display: -webkit-box;
    -webkit-box-direction: row;
    -webkit-box-pack: flex-start;
    -webkit-box-align: stretch;
    /*--- safari（PC）用 ---*/
    display: -webkit-flex;
    -webkit-flow: row nowrap;
    -webkit-justify-content: flex-start;
    -webkit-align-items: stretch; }
    .resultsBtn .inner a {
      width: 48%;
      margin-right: 4%;
      text-align: center;
      text-decoration: none;
      background: #963087;
      color: #fff;
      font-size: 16px;
      line-height: 150%;
      padding: 15px 10px;
      box-sizing: border-box;
      transition: 0.6s; }
      .resultsBtn .inner a:last-child {
        margin-right: 0;
        background: #0291D2; }
      .resultsBtn .inner a:hover {
        opacity: 0.7; }
      .resultsBtn .inner a.disabled {
        background-color:#ccc;
        color: #f0f0f0;
        cursor:default;
        opacity: 1.0; }
/* ================================================ 
	footer
==============================================================================================================================================================*/
#page-top {
  position: fixed;
  bottom: 30px;
  right: 30px;
  z-index: 500; }
  #page-top img {
    display: block;
    width: 66px;
    height: 96px; }
  #page-top a {
    padding: 0;
    display: block;
    position: relative;
    width: 66px;
    height: 96px;
    text-decoration: none; }
    #page-top a:hover {
      text-decoration: none;
      opacity: 0.7; }

footer {
  margin: 0;
  background: #CC4E92;
  padding: 0; }

.snsArea {
  margin: 0;
  padding: 40px 0;
  text-align: center; }
  .snsArea a {
    margin: 0 5px;
    transition: 0.6s; }
    .snsArea a:hover {
      opacity: 0.7; }

.footNav {
  margin: 0 auto 30px;
  width: 94%;
  max-width: 1200px;
  display: flex;
  flex-flow: row nowrap;
  justify-content: flex-start;
  align-items: stretch;
  color: #fff;
  font-size: 14px;
  line-height: 150%;
  /*--- IE10 用 ---*/
  display: -ms-flexbox;
  -ms-flex-flow: row nowrap;
  -ms-flex-pack: flex-start;
  -ms-flex-align: stretch;
  /*--- Androidブラウザ用 ---*/
  display: -webkit-box;
  -webkit-box-direction: row;
  -webkit-box-pack: flex-start;
  -webkit-box-align: stretch;
  /*--- safari（PC）用 ---*/
  display: -webkit-flex;
  -webkit-flow: row nowrap;
  -webkit-justify-content: flex-start;
  -webkit-align-items: stretch; }
  .footNav dl {
    width: 18%;
    margin-right: 2.5%; }
    .footNav dl dt {
      margin-bottom: 10px;
      font-size: 120%;
      line-height: 180%; }
  .footNav ul {
    width: 18%;
    margin-right: 0; }
    .footNav ul li {
      margin-bottom: 10px;
      font-size: 120%;
      line-height: 180%; }
      .footNav ul li:last-child {
        margin-bottom: 0; }
  .footNav a {
    color: #fff;
    text-decoration: none;
    line-height: 180%; }
    .footNav a:hover {
      text-decoration: underline; }

.footLogo {
  padding: 30px 3%;
  text-align: center;
  color: #fff;
  background: #9B308C; }
  .footLogo .logo {
    margin-bottom: 5px; }
  .footLogo p {
    font-size: 12px;
    line-height: 150%; }
