@charset "UTF-8";
/* CSS Document */

h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: inherit;
    line-height: inherit;
    font-weight: inherit;
    margin: 0;
}

/* ヘッダー内、下部のタイトル */
.str-hdg-lv1 {
    display: none;
}
/* ヘッダー */
.header-tagline > span {
    font-size: 12px;
}
/* フッター */
#str-footer .copyright {
    margin: 0 auto;
    max-width: 1200px;
    padding: 0 25px 20px;
    box-sizing: border-box;
}

/* --------------------start_パンくず-------------------- */
#BreadCrumb {
    padding: 5px 0;
    border-bottom: 1px solid #e5e5e5;
}

.BreadCrumb__items {
    display: flex;
    justify-content: flex-start;
    font-size: 1.2rem;
    overflow-x: auto;
}

.BreadCrumb__items::-webkit-scrollbar {
    height: 5px;
}

.BreadCrumb__items::-webkit-scrollbar-thumb {
    background-color: #e5e5e5;
    border-radius: 10px;
}

.BreadCrumb__item {
    flex-shrink: 0;
}

.BreadCrumb__link:hover {
    text-decoration: underline;
}

.BreadCrumb__icn {
    margin: 0 5px;
    vertical-align: 1px;
}

.BreadCrumb__current {
    vertical-align: -1px;
}
/* --------------------end_パンくず-------------------- */
/* --------------------start_ページトップボタン-------------------- */
.link-PageTop {
    position: fixed;
    bottom: -85px;
    right: 15px;
    z-index: 10;
    display: block;
    width: 70px;
    height: 70px;
    opacity: 0.7;
    background: url(../images/btnToTop.svg) no-repeat center / contain;
    cursor: pointer;
    transition: 0.3s;
}

.link-PageTop:hover {
    opacity: 1;
}

.link-PageTop.fixed-footer {
    bottom: 15px;
}
/* --------------------end_ページトップボタン-------------------- */
/* --------------------start_お知らせ-------------------- */
#PrimaryNotice {
    padding: 20px 0;
    background: #f5f5f5;
}

#BreadCrumb + #PrimaryNotice {
    border-bottom: 1px solid #e5e5e5;
}

.PrimaryNotice__inner {
    display: flex;
    justify-content: flex-start;
    width: calc(1024px - 34px);
    margin: 0 auto;
}

.PrimaryNotice__ttl {
    margin-right: 25px;
    /* color: var(--caution-color); */
    color: #333;
    font-size: 1.4rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fedb17;
    padding: 0 15px;
}
.PrimaryNotice__item {
    list-style: none;
}
.PrimaryNotice__link {
    color: var(--textLink-color);
    font-size: 1.4rem;
    width: 875px;
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.PrimaryNotice__link::before {
    content: "";
    display: inline-block;
    width: 8px;
    height: 8px;
    margin-right: 10px;
    border-top: 2px solid var(--corporate-color);
    border-right: 2px solid var(--corporate-color);
    transform: rotate(45deg);
    vertical-align: 1px;
}

.PrimaryNotice__link:hover {
    text-decoration: underline;
}
/* --------------------end_お知らせ-------------------- */

/* --------------------start_searchモジュール-------------------- */
/* ブランド非表示 */
.Search__form-group.Search__form-group--brand {
    display: none;
}
.Search-form {
    position: relative;
}
/* 検索枠タイトル */
.Search__form-ttl {
    position: absolute;
    top: 20px;
    left: 20px;
    color: #fff;
    z-index: 20;
}
.Search__form-ttl::before {
    content: "";
    display: inline-block;
    width: 17px;
    height: 17px;
    margin-right: 5px;
    vertical-align: -2px;
    background: url(../images/icn_search--airtrip-bag.svg) no-repeat center / contain;
}

.Search_module--horizontal .Search__form-group-wrap {
    background: rgb(0 0 0 / 60%);
    border-radius: 6px;
    padding: 20px;
    width: 100%;
    height: 100%;
    z-index: 10;
    padding-top: 60px;
}

.Search__form {
    width: 100%;
    padding: 0;
    background: none;
    border-radius: 0;
}

.Search__detail-contents {
    /* background: rgb(0 0 0 / 60%); */
    background: none;
}

.Search__checkbox-btn {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 5px;
    vertical-align: -5px;
    border-radius: 4px;
    border: 2px solid #333;
    background-color: none;
}

select {
    appearance: none;
}

.Search__form .Search__detail-contents--half-width.active {
    /* background: rgb(0 0 0 / 60%); */
}

.Search__form-label {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 60px;
    height: 40px;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.3;
    color: #fff;
}

.Search__input-text:not(.selected) {
    border: none;
    border-radius: 0;
}

.Search__input-text {
    color: #333;
    border-radius: 5px;
}

.Search__form-group--date .Search__input-text:not(.selected) {
    border: none;
}

.Search__form-group--date .Search__input-text {
    background-color: #fff;
    border-radius: 4px;
}
#Search input[type="text"].departure-date-open {
    background: right;
}
#Search input[type="text"] {
    border: none;
    border-radius: 4px;
}

.Search__select:not(.selected) {
    border: none;
    border-radius: 0;
}

.Search__select {
    color: #333;
    border-radius: 5px;
}

#Search select {
    border: none;
    outline: none;
    border-radius: 4px;
}
/* 添乗員 */
.Search__form-group--conductor .Search__form-content {
    width: calc(100% - 187px);
}
.Search_module--horizontal .Search__checkbox-label--conductor {
    width: calc((100% - 20px) / 2);
}

.Search_module--horizontal .Search__checkbox-label--conductor:nth-of-type(1) {
    display: none;
}
.Search__form-heading {
    background-color: #808080;
    color: #fff;
}
#i-search .Search__form-heading {
    order: 1;
}
#i-search .Search__form-group--price {
    order: 3;
}
#i-search .Search__form-group--hayawari-check {
    order: 4;
    display: none;
}
#i-search .Search__form-group--keyword {
    order: 2;
}

.Search__input-text:focus-visible,
.Search__input-text input:focus-visible,
.Search__select:focus-visible,
.Search__select select:focus-visible {
    outline-color: #e5e5e5;
}

.Search__checkbox-label {
    background: #fff;
}
.Search__form-content {
    color: #fff;
}
.Search__checkbox-txt {
    color: #333;
}
/* 条件を追加する */
.Search_module--horizontal .Search__detail-btn {
    top: 218px !important;
    right: 20px;
    height: 40px;
}
.Search__detail-btn {
    color: #333;
    border: none;
    background: #fedb17;
}
.Search__detail-btn:hover {
    background-color: #fedb17;
    opacity: 0.7;
    /* background-color: var(--active-color); */
}
.Search__icn-plus {
    background: #333;
}
.Search__hit-wrap,
.Search__hit {
    color: #fff;
}

.Search__submit {
    border: none;
}
#Search input[type="checkbox"]:checked + .Search__checkbox-label .Search__checkbox-btn {
    border: none;
    /* background-color: var(--corporate-color); */
    background-color: #333;
}
/* --------------------end_searchモジュール-------------------- */

/* --------------------start_メイン背景 -------------------- */
main > div:not(#hyperBn):nth-of-type(1) {
    height: 370px !important;
}
#Keyvisual {
    padding: 30px 0;
    overflow: inherit;
}
.Keyvisual__spot-name {
    bottom: -24px;
}
/* --------------------end_メイン背景 -------------------- */

/* --------------------start_担当者おすすめ海外旅行 -------------------- */
.Common21__section {
    margin: 90px auto 60px;
}
/* --------------------end_担当者おすすめ海外旅行 -------------------- */

/* -------------------- start_ハイパーバナー --------------------  */
#hyperBn {
    position: fixed;
    bottom: 100px;
    right: 0;
    z-index: 20;
    padding: 10px 40px 10px 10px;
    background-color: white;
    box-shadow: 0px 0px 10px -5px rgb(0 0 0 / 50%);
}

.hyperBn__img {
    display: block;
    width: 320px;
    border: 1px solid #e5e5e5;
    transition: opacity 0.3s;
}

.hyperBn__img:hover {
    opacity: 0.7;
}

.hyperBn__close {
    position: absolute;
    top: 10px;
    right: 8px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    cursor: pointer;
    border: 1px solid white;
    transition: border-color 0.3s;
}

.hyperBn__close:hover {
    border-color: #888;
}

.hyperBn__close-inner {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
}

.hyperBn__close-inner::before,
.hyperBn__close-inner::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 12px;
    height: 2px;
    background-color: #888;
}

.hyperBn__close-inner::before {
    transform: translate(-50%, -50%) rotate(45deg);
}

.hyperBn__close-inner::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}
/* -------------------- end_ハイパーバナー --------------------  */
/* -------------------- start_協業説明 --------------------  */
.collaboration {
    display: flex;
    margin: auto;
    padding: 20px 0;
    align-items: center;
    justify-content: center;
}
.collaboration_logo_wrap {
    display: flex;
    align-items: center;
    height: auto;
}
.collaboration_logo_01 {
    width: 98px;
    margin-right: 15px;
}
.collaboration_logo_02 {
    width: 114px;
    margin-left: 10px;
}
.collaboration_plus {
    display: inline-block;
    vertical-align: middle;
    color: #333;
    line-height: 1;
    width: 1em;
    height: 0.08em;
    background: currentColor;
    border-radius: 0.1em;
    position: relative;
    transform: rotate(45deg);
}
.collaboration_plus::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: inherit;
    border-radius: inherit;
    transform: rotate(90deg);
}
.collaboration_txt {
    margin: 0 0 0 20px;
    line-height: 1.6;
    font-size: 1.4rem;
}
/* -------------------- end_協業説明 --------------------  */
/*keyvisual横幅固定*/
#Keyvisual {
    background-color: #f5f5f5;
    background-size: 1396px auto;
    position: relative;
    background-position: 50% 50%;
}

.bunner_sec {
    margin-bottom: 40px;
}

.bunner_sec a {
    transition: opacity 0.3s;
}

.bunner_sec a:hover {
    opacity: 0.8;
}

.bunner_sec img {
    width: auto;
    height: auto;
}

.bunner_sec .Common21__inner {
    text-align: center;
}

.Common21__section--ranking__kaigai .Tour__swiper .swiper-slide {
    margin-top: 40px;
}

/* start_rank */
.Tour {
    position: relative;
    border: 1px solid #e5e5e5;
    border-radius: 6px;
    box-shadow: 0 2.5rem 2rem -2rem rgba(0, 0, 0, 0.1);
    transition: box-shadow 0.3s;
}

.Tour__rank {
    position: absolute;
    left: 0px;
    top: -40px;
    z-index: 5;
    color: var(--sub-corporate-color);
    font-weight: 600;
    padding: 2px 18px;
    background: #f5f5f5;
    border-radius: 3px 3px 3px 0px;
}

.Tour__rank::before {
    content: "";
    display: inline-block;
    width: 13px;
    height: 10px;
    margin-right: 3px;
    background: url(/attending/common/images/icn_rank--blue.svg) no-repeat center / contain;
}

.Tour__rank::after {
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
    background-color: #f5f5f5;
    border-radius: 2px;
    transform: skewY(-45deg);
}

.Tour__rank--1::before,
.Tour__rank--2::before,
.Tour__rank--3::before {
    background-image: url(/attending/common/images/icn_rank--white.svg);
}

.Tour__rank--1,
.Tour__rank--1::after {
    color: white;
    background: #e3ab00;
}

.Tour__rank--2,
.Tour__rank--2::after {
    color: white;
    background: #969a98;
}

.Tour__rank--3,
.Tour__rank--3::after {
    color: white;
    background: #976b2f;
}

/* .Tour img {
    transition: opacity 0.3s;
}

a.Tour__link:hover + figure > img {
    opacity: var(--hoverOpacity);
} */

.Tour:hover figure img {
    opacity: 0.8;
}
