@charset "UTF-8";

/*! ========================================================
   tb_header.css
   たびらい共通ヘッダーで使用します。
========================================================= */


/* =========================================================
   共通設定
========================================================= */

@font-face {
    font-family: "fontawesome";
    src: url('/common/fonts/fontawesome-webfont.eot'), url("/common/fonts/fontawesome-webfont.ttf") format("truetype");
    font-weight: normal;
    font-style: normal
}

body {
    background-image: none;
}

.display__none {
    display: none !important;
}


/* 全体のラッパー
--------------------------- */

.tb_headerWrap {
    font-family: YuGothic, '游ゴシック', HiraKakuPro-W3, "Hiragino Kaku Gothic Pro", 'ヒラギノ角ゴ Pro W3', メイリオ, Meiryo, 'ＭＳ Ｐゴシック', osaka, Arial, Helvetica, Verdana, sans-serif;
    font-weight: 500;
    z-index: 1000;
    width: auto !important;
    background-color: #FFF;
}


/* 会員メニュー等
--------------------------- */

.tb_headerTools {
    width: 980px;
    height: 30px;
    margin: 0 auto 10px;
    position: relative;
}

.tb_headerTools__list {
    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;
    font-size: 14px;
}

.tb_headerTools__list__item {
    line-height: 1
}

.tb_headerTools__list__item:not(:last-child) {
    margin-right: 15px;
}

.tb_headerTools__list__item a {
    font-size: 11px
}

.tb_headerTools__list__item a:link,
.tb_headerTools__list__item a:visited {
    color: #003894;
    text-decoration: none;
}

.tb_headerTools__list__item a:hover {
    text-decoration: underline;
}

.tb_headerTools__list__item.\--isSearch a {
    background-color: #363636;
    width: 35px;
    height: 30px;
    line-height: 30px;
    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;
    color: #fff
}

.tb_headerTools__list__item.\--isSearch a:after {
    font-family: "fontawesome";
    content: '\f002';
}

.tb_headerTools__list__item.\--isSearch a:hover {
    text-decoration: none;
    background-color: rgb(79, 79, 79);
}


/* ヘッダー本体
--------------------------- */

.tb_header {
    width: 980px;
    height: 40px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-bottom: 1px solid #d9d9d9;
}


/* ロゴ */

.tb_header__logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 340px;
    height: 40px;
    margin-top: -20px;
}

.tb_header__logo__image {
    margin: 0 15px 0 0
}

.tb_header__logo__image img {
    width: 88px;
    height: 36.66px;
}

.tb_header__logo__image a {
    display: block;
    backface-visibility: hidden;
}

.tb_header__logo__image a:hover {
    opacity: .85;
}

.tb_header__logo__image.\--isFixed {
    position: fixed;
    left: 50%;
    margin-left: -516px;
    background-color: rgba(255, 255, 255, .75);
    width: 140px;
    height: 70px;
    z-index: 1000;
    border: 1px solid #d9d9d9;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    top: -70px;
    -webkit-transition: -webkit-transform 150ms ease-out;
    transition: -webkit-transform 150ms ease-out;
    transition: transform 150ms ease-out;
    transition: transform 150ms ease-out, -webkit-transform 150ms ease-out;
    will-change: transform/*fadein
		top: 5px; fadein用
		visibility: hidden;
		opacity: 0;
		transition: opacity 300ms ease-out, visibility 300ms ease-out; */
}

.tb_header__logo__image.\--isFixed.active {
    -webkit-transform: translateY(75px);
    transform: translateY(75px);
    -webkit-transition: -webkit-transform 300ms ease-out;
    transition: -webkit-transform 300ms ease-out;
    transition: transform 300ms ease-out;
    transition: transform 300ms ease-out, -webkit-transform 300ms ease-out;
    /*fadein
			visibility: visible;
			opacity: 1; */
}

.tb_header__logo__image.\--isFixed:hover {
    background-color: #fff;
}

.tb_header__logo__image.\--isFixed a {
    width: 100%;
    height: 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;
}

.tb_header__logo__image.\--isFixed a:hover {
    opacity: 1;
}

.tb_header__logo__text {
    margin: 0;
    font-size: 12px;
    line-height: 1.4;
    color: #747474;
    padding-top: 5px;
    text-align: left;
}


/* メニュー */

.tb_header__nav {
    width: 640px;
    background: transparent;
    border: none;
    margin: 0;
}

.tb_header__nav__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    height: 100%;
}

.tb_header__nav__list__item {
    font-size: 14px
}

.tb_header__nav__list__item:not(:last-child) {
    margin-right: 1px;
}

.tb_header__nav__list__item a {
    padding: 0 13px;
    text-decoration: none;
    height: 30px;
    line-height: 30px;
    display: block;
    font-weight: 700;
    font-size: inherit
}

.tb_header__nav__list__item a:link,
.tb_header__nav__list__item a:visited {
    color: #003894;
    text-decoration: none;
}

.tb_header__nav__list__item a:hover {
    background-color: #003894;
    text-decoration: none;
    color: #fff;
}

.tb_header__nav__list__item.active a {
    background-color: #003894;
    color: #fff;
}

.tb_header__nav__list__item.link__none a {
    color: #ddd;
    pointer-events: none;
}

.tb_header__nav__list__item.display__none {
    display: none !important;
}

.tb_headerLocalNav {
    height: 40px;
    background-color: #f5f5f5;
}

.tb_headerLocalNavList.\--isFirst,
.tb_headerLocalNavList.\--isSecond {
    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;
    width: 980px;
    margin: 0 auto;
    opacity: 1 !important;
}

.tb_headerLocalNavList__item {
    height: 100%;
    position: relative;
    font-size: 12px
}

.tb_headerLocalNavList__item.simpleNavItem {
    display: none;
}

.tb_headerLocalNavList__item.\--isTop {
    margin-right: auto;
    -webkit-box-flex: 1;
    -ms-flex: 1 1;
    flex: 1 1;
    font-weight: 700;
    font-size: 16px;
    margin-left: -13px;
    text-align: left;
}

.tb_headerLocalNavList__item a {
    display: inline-block;
    height: 40px;
    line-height: 40px;
    padding: 0 13px;
    font-size: inherit;
    text-align: left;
}

.tb_headerLocalNavList__item a:link,
.tb_headerLocalNavList__item a:visited {
    text-decoration: none;
    color: #003894;
}

.tb_headerLocalNavList__item a:hover,
.tb_headerLocalNavList__item a.active {
    background-color: #003894;
    color: #fff;
}

.tb_headerLocalNavList__item:last-of-type .tb_headerLocalNavList.\--isSecond {
    right: 0;
    left: auto;
}

.tb_headerLocalNavList.\--isSecond {
    position: absolute;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    top: 40px;
    left: 0;
    background-color: #fff;
    border: 1px solid #d9d9d9;
    z-index: 100;
    width: 180px;
    display: none;
    opacity: 1 !important;
}

.tb_headerLocalNavList.\--isSecond .tb_headerLocalNavList__item {
    width: 100%;
    min-height: 30px;
}

.tb_headerLocalNavList.\--isSecond .tb_headerLocalNavList__item a {
    display: block;
    height: 30px;
    line-height: 30px;
}


/*
.tb_headerLocalNavList.\--isSecond > .tb_headerLocalNavList__item:not(:last-child) > a:not(:only-child) {
    border-top: 1px solid #d9d9d9;
    margin-top: -1px;
}

.tb_headerLocalNavList.\--isSecond > .tb_headerLocalNavList__item:last-child > a:not(:only-child) {
    border-bottom: 1px solid #d9d9d9;
    border-top: 1px solid #d9d9d9;
    margin-bottom: -1px;
}
*/

.tb_headerLocalNavList.\--isSecond>.tb_headerLocalNavList__item>a:not(:only-child) {
    background-image: url('/common/images/icon/ico_plus_01.png');
    background-repeat: no-repeat;
    background-position: center right 10px;
    border-bottom: 1px solid #d9d9d9;
    border-top: 1px solid #d9d9d9;
    margin-top: -1px;
}

.tb_headerLocalNavList.\--isSecond>.tb_headerLocalNavList__item>a:not(:only-child).active {
    background-image: url('/common/images/icon/ico_minus_01.png');
}

.tb_headerLocalNavList.\--isThird {
    display: block;
    margin: 0 auto;
    width: 100%;
    border-bottom: 1px solid #d9d9d9;
}

.tb_headerLocalNavList[aria-hidden="true"] {}


/* 検索ウィンドウ
--------------------------- */

.bgOverlay,
.pagesearch__wrap {
    display: none;
    position: absolute
}

.bgOverlay {
    width: 100%;
    height: 100%;
    background-color: #FFF;
    opacity: 0;
    top: 0;
    left: 0
}

.pagesearch__wrap {
    width: 350px;
    top: 30px;
    right: 0;
    z-index: 10000;
    padding: 0;
    background: #fff;
    -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, .3);
    box-shadow: 0 1px 3px rgba(0, 0, 0, .3);
}

.tb_footer {
    font-family: HiraKakuPro-W3, "Hiragino Kaku Gothic Pro", 'ヒラギノ角ゴ Pro W3', メイリオ, Meiryo, 'ＭＳ Ｐゴシック', osaka, Arial, Helvetica, Verdana, sans-serif, Helvetica, Verdana, sans-serif;
    background-color: #f5f5f5;
    border-top: 1px solid #e9e9e9;
    position: relative;
}
.tb_footer.actFootMargin {
    margin-top:50px;
}

.tb_footer__inner {}

.tb_footerSnsLinks {
    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;
    margin: 0 0 35px;
    padding: 30px 0 0;
}

.tb_footerSnsLinks__title {
    font-size: 12px;
    color: #747474;
    margin-right: 20px;
}

.tb_footerSnsLinks__content {
    padding: 0;
    margin: 0
}

.tb_footerSnsLinks__content:not(:last-child) {
    margin-right: 60px;
}

.tb_footerSnsLinks__content a {
    display: inline-block
}

.tb_footerSnsLinks__content a:not(:last-child) {
    margin-right: 35px;
}

.tb_footerSnsLinks__content a:hover {
    opacity: .85;
}

.tb_footerSiteLinks {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 980px;
    margin: 0 auto;
}

.tb_footerSiteLinks__title {
    width: 200px;
    font-weight: 700;
    font-size: 14px;
    color: #747474;
    padding-left: 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    margin-bottom: 15px
}

.tb_footerSiteLinks__title::before {
    content: "";
    background-color: #747474;
    position: absolute;
    top: 2.5px;
    left: 0;
    width: 2px;
    height: calc(100% - 5px);
}

.tb_footerSiteLinks__title .small {
    font-size: 12px;
}

.tb_footerSiteLinks__content {
    width: 780px;
    margin: 0 0 15px;
    font-size: 14px;
}

.tb_footerList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; 
    height: 20px;
}

.tb_footerList__item {
    font-size: 14px;
    color: #747474;
    position: relative
}

.tb_footerList__item>a:hover::before {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #003894;
    position: absolute;
    bottom: 1px;
    left: 0;
}

.tb_footerList__item.isActive>a::after {
    content: "";
    width: 0;
    height: 0;
    display: inline-block;
    border-top: 0px solid transparent;
    border-right: 4px solid transparent;
    border-bottom: 6px solid currentColor;
    border-left: 4px solid transparent;
    vertical-align: middle;
    margin-left: 8px;
}

.tb_footerList__item.isActive>a::before {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #003894;
    position: absolute;
    bottom: 1px;
    left: 0;
}

.tb_footerList__item a:link,
.tb_footerList__item a:visited {
    color: #003894;
    text-decoration: none;
}

#footer .tb_footerList__item a:link,
#footer .tb_footerList__item a:visited {
    color: #003894;
    text-decoration: none;
}

.tb_footerList__item a:hover {
    text-decoration: none;
}

.tb_footerList__item:not(:last-child) {
    margin-right: 20px;
}

.tb_footerRelatedNav {
    background-color: #e9e9e9;
    padding: 5px 0;
    margin: 0;
}

.tb_footerRelatedNav .tb_footerList {
    justify-content: center;
}

.tb_footerRelatedNav__inner {
    width: 980px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto;
}

.tb_footer__logo {
    text-align: center;
    padding: 30px 0 0;
    background-color: #fff;
}

.tb_footer__logo__image {
    margin: 0 0 10px
}

.tb_footer__logo__image img {
    width: 88px;
    height: 36.66px;
}

.tb_footer__logo__text {
    font-size: 12px;
    color: #747474;
    margin: 0;
}

.tb_footer__copyright {
    text-align: center;
    font-size: 10px;
    color: #000;
    background-color: #fff;
    margin: 0;
    padding: 10px 0;
}

.tb_footerListContent {
    background-color: #fff;
    right: -6px;
    bottom: 20px;
    border: 1px solid #d9d9d9;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px !important;
    z-index: 100;
    visibility: hidden;
    overflow: hidden
}

.tb_footerListContent::after {
    content: "";
    width: 8px;
    height: 8px;
    display: inline-block;
    position: absolute;
    bottom: -6px;
    right: 5px;
    background-color: #fff;
    border-right: 1px solid #d9d9d9;
    border-bottom: 1px solid #d9d9d9;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.tb_footerListContent__item {
    font-size: 12px;
    margin-top: 9px
}

.tb_footerListContent__item.\--isTitle {
    font-size: 14px;
}

.tb_footerListContent__item a:hover {
    text-decoration: underline;
}

.tb_footerListContent__item>ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.tb_footerListContent__item>ul>li {
    margin-right: 10px
}

.tb_footerListContent__item>ul>li:first-child {
    border-right: 2px solid #CFCFCF;
    width: 50px;
}

.tb_footerGotoTopButton {
    position: fixed;
    right: 50%;
    bottom: 100px !important;
    width: 100%;
    max-width: 1260px;
    -webkit-transform: translateX(50%);
    transform: translateX(50%);
    opacity:0;
    transition:0.5s;
    z-index: 2;
}

.ss_footerGotoTopButton.ss_footerGotoTopButton {
    opacity:1;
}

.tb_footerList__item>a:hover {
    text-decoration: none !important
}

.tb_footer .tb_footerGotoTopButton a {
    background-color: #ccc;
    font-size: 12px;
    width: 80px;
    height: 80px;
    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;
    border-radius: 50%;
    padding-top: 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: absolute;
    top: -10px;
    right: 20px;
    color: #fff;
    cursor: pointer;
}

.tb_footer .tb_footerGotoTopButton a::after {
    content: "";
    width: 20px;
    height: 20px;
    display: inline-block;
    border-top: 5px solid #fff;
    border-left: 5px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -15px;
    margin-left: -10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    will-change: margin-top;
}

.tb_footer .tb_footerGotoTopButton a:link,
.tb_footerGotoTopButton a:visited {
    color: #fff !important;
    text-decoration: none;
}

.tb_footer .tb_footerGotoTopButton a:hover,
#footer .tb_footer .tb_footerGotoTopButton a:hover {
    color: #fff;
    text-decoration: none;
    background-color: rgb(209, 209, 209)
}

.tb_footer .tb_footerGotoTopButton a:hover::after {
    margin-top: -20px;
    -webkit-transition: margin-top 200ms ease-in-out;
    transition: margin-top 200ms ease-in-out;
}


/* アクティビティfooter 対応 */

.okinawaImage,
.hokkaidoImage {
    border: none;
    padding: 250px 0 0;
}

.actFoot .tb_footerGotoTopButton {
        top: 155px;
}

/* バス footer 対応 */

#footer {
    position: relative;
}

.clearfix::after {
    content: "";
    display: table;
    clear: both;
}

/* バス footer 対応 */

.hotelFooterLink {
    display: none;
}

/* footerイラスト 対応 */

.okinawaImage {
    background: url(//www.tabirai.net/inc/images/footer/foot_bg_okinawa.jpg) center top repeat-x #FFF !important;
}

.hokkaidoImage {
    background: url(//www.tabirai.net/inc/images/footer/foot_bg_hokkaido.png) center top repeat-x #FFF !important;
}

.fukuokaImage {
    background: url(//www.tabirai.net/inc/images/footer/foot_bg_fukuoka.jpg) center top repeat-x #FFF !important;
}

.sagaImage {
    background: url(//www.tabirai.net/inc/images/footer/foot_bg_saga.jpg) center top repeat-x #FFF !important;
}

.nagasakiImage {
    background: url(//www.tabirai.net/inc/images/footer/foot_bg_nagasaki.jpg) center top repeat-x #FFF !important;
}

.kumamotoImage {
    background: url(//www.tabirai.net/inc/images/footer/foot_bg_kumamoto.jpg) center top repeat-x #FFF !important;
}

.oitaImage {
    background: url(//www.tabirai.net/inc/images/footer/foot_bg_oita.jpg) center top repeat-x #FFF !important;
}

.miyazakiImage {
    background: url(//www.tabirai.net/inc/images/footer/foot_bg_miyazaki.jpg) center top repeat-x #FFF !important;
}

.kagoshimaImage {
    background: url(//www.tabirai.net/inc/images/footer/foot_bg_kagoshima.jpg) center top repeat-x #FFF !important;
}


/* バス footer 対応 */

#footer {
    position: relative;
}

.clearfix::after {
    content: "";
    display: table;
    clear: both;
}