@charset "UTF-8";
html {
    scroll-behavior: smooth
}
body {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-smoothing: antialiased;
    text-rendering: auto;
    font-size: 14px;
    color: #333;
    background-color: #fff;
    min-width: 1052px;
}
.mv {
    position: relative
}
.mv .swiper-button-next:after,
.mv .swiper-button-prev:after {
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    opacity: 1
}
.mv .swiper-pagination-fraction {
    bottom: 10px;
    left: 0;
    width: 100%;
    top: 20px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: -0.1em
}
.mv,
.mv .swiper-slide,
.mv__slider {
    height: 600px;
}
.mv___slide-image-bg {
    width: 100%;
    height: 600px;
    background-size: cover;
    background-position: 100% 70%;
    background-repeat: no-repeat;
    position: relative;
    transition: opacity 0.25s cubic-bezier(0.45,0,0.55,1)
}
.mv___slide-image-bg:hover {
    opacity: .85
}
.mv___slide-image-bg img {
    width: 530px;
    position: absolute;
    left: 69%;
    top: 50%;
    transform: translate(-50%, -50%)
}
.mv__slide-nav-container {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    width: 1052px;
    padding: 0 30px;
    margin: 0 auto;
    position: absolute;
    bottom: 10px;
    z-index: 1;
    left: 50%;
    transform: translateX(-50%)
}
.mv__image {
    width: 100%;
    height: 100%
}
.mv__slide-nav-wrapper {
    position: relative;
    height: 61px;
    z-index: 1;
    color: #fff;
    width: 120px;
    border-radius: 5px;
    background-color: #000;
    opacity: .6
}
.mv__form-wrapper {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 50%;
    transform: translate(-125%, -50%)
}
.mv__form {
    width: 400px;
    height: 573px;
    background-color: #fff;
    border-radius: 5px;
}
.mvSlide__price {
    width: 460px;
    display: flex;
    align-items: center;
    position: absolute;
    top: 420px;
    left: calc(50% + 35px);
    color: #fff;
    background: rgba(0, 0, 0, .5);
    padding: 12px 20px 12px 30px;
    border-radius: 4px;
}
.mvSlide__price--square {
    min-width: 52px;
    min-height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    border: 1px solid #fff;
    border-radius: 4px;
    padding: 5px;
}
.mvSlide__price--text {
    padding-left: 10px;
}
.mvSlide__price--text p {
    font-size: 16px;
    font-weight: bold;
}
.mvSlide__price--text .mvSlide__price--minmax {
    font-size: 20px;
}
#mvTextSlide {
    display: none;
}
.mvTextSlide__container {
    width: 120px;
    padding: 12px 25px 12px 25px;
}
.grid-tab {
    margin: 100px 0
}
.grid-tab .grid-col3,
.grid-tab .grid-col4 {
    width: calc(33.33% - 16px);
    box-shadow: 0 2px 3px 1px #cac6c6;
    padding: 0;
    border-radius: 4px;
    overflow: hidden;
    margin-top: 25px;
    transition: all 0.25s ease-out
}
.grid-tab .grid-col3 a,
.grid-tab .grid-col4 a {
    color: inherit;
    text-decoration: none
}
.grid-tab .grid-col3:hover,
.grid-tab .grid-col4:hover {
    box-shadow: 0 2px 12px rgba(0, 0, 0, .25)
}
.grid-tab .grid-col4 {
    width: 23.8%
}
.grid-tab .grid-col4 .text--price {
    font-size: 18px;
    text-shadow: 0 0;
    padding: 18px 20px;
}
.grid-tab .grid-col4 .tagList__text {
    font-size: 12px;
    padding: 0 8px;
}
.grid-tab .grid-col4 img {
    width: 232px;
    height: 154px;
    object-fit: cover
}
.grid-tab .grid-row {
    margin: 0;
    padding-bottom: 20px;
    justify-content: space-between
}
.grid-tab .heading--md {
    font-weight: 400
}
.grid-tab .imgContainer--full {
    border-radius: unset
}
.grid-tab .grid-col__body {
    padding: 0 20px;
}
.grid-tab .text--price {
    padding: 30px 20px;
}
.grid-tab .imgContainer__caption {
    position: absolute;
    background-color: #333;
    padding: 4px 16px;
}
.grid-tab__title {
    margin: 0 0 35px;
    font-size: 32px;
    text-align: center
}
.grid-tab__title .text--highlight {
    color: #0057B8;
}
.grid-tab__button {
    margin-top: 14px;
}
.grid-tab__button button {
    cursor: pointer
}
.tour-rec {
    padding-top: 100px;
    /* padding-bottom: 90px; */
}
.tour-rec .grid-tab {
    margin: 0
}
.tour-rec .gridTab__item {
    background: #888;
    color: #fff;
    border-radius: 50%;
    height: 100px;
    width: 100px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center
}
.tour-rec .gridTab__item:after {
    display: none
}
.tour-rec .grid-row:last-child {
    padding-bottom: 0;
}
.tour-rec .grid-tab__button {
    margin-top: 0;
}
.tour-rec .grid-tab__button::before {
    content: "※添乗員同行ツアー以外も含む";
    font-size: 12px;
    display: flex;
    justify-content: flex-end;
    padding-bottom: 5px;
}
.tour-rec .grid-row {
    flex-wrap: nowrap;
    padding-bottom: 20px;
    -ms-overflow-style: none;
    scrollbar-width: none
}
.tour-rec .grid-row::-webkit-scrollbar {
    display: none
}
.tour-rec__image-nav {
    margin-right: -30px;
}
.tour-search {
    padding-top: 60px;
}
.tour-search .grid-tab {
    margin: 0
}
.tour-search .gridTab {
    text-align: center;
    cursor: pointer;
}
.tour-search .gridTab__item {
    background: #888;
    color: #fff;
    border-radius: 50%;
    height: 110px;
    width: 110px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    margin: 0 auto;
}
.tour-search .gridTab__item:after {
    display: none
}
.tour-search .grid-col8 {
    padding: 0 0 8px;
}
.tour-search .grid-col8:first-child {
    padding-left: 0
}
.tour-search .grid-col8:last-child {
    padding-right: 0
}
.tour-search .grid-row {
    flex-wrap: nowrap;
    padding-bottom: 20px;
    -ms-overflow-style: none;
    scrollbar-width: none
}
.tour-search .grid-row.grid-row-circle-nav {
    justify-content: center !important;
    overflow: inherit;
}
.tour-search .grid-row.grid-row-circle-nav .prev {
    position: absolute;
    left: -40px;
    top: 28%;
    transform: translateY(-50%);
    cursor: pointer;
}
.tour-search .grid-row.grid-row-circle-nav .prev:hover {
    opacity: 0.7;
}
.tour-search .grid-row.grid-row-circle-nav .next {
    position: absolute;
    right: -40px;
    top: 28%;
    transform: translateY(-50%);
    cursor: pointer;
}
.tour-search .grid-row.grid-row-circle-nav .next:hover {
    opacity: 0.7;
}
.tour-search .grid-row.grid-row--item {
    margin-right: 0
}
.tour-search .grid-row::-webkit-scrollbar {
    display: none
}
.tour-search .grid-tab__title.grid-tab__title--inner {
    margin: -11px 0 16px;
    font-size: 24px;
    font-weight: 700
}
.tour-search .toggleControl--active .gridTab__item {
    border: 6px solid #0057b8
}
.tour-search .gridTab__item:hover {
    border: 6px solid #fff
}
.tour-search .toggleControl--active .gridTab__item:hover {
    border: 6px solid #0057b8
}
.tour-search .gridTab__item:hover {
    border: 6px solid #fff
}
.tour-search .toggleControl--active .gridTab__text {
    color: #0057b8;
    font-weight: 700
}
.tour-search .toggleControl--active .gridTab__text:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 4px;
    border-radius: 5px;
    background-color: #0057b8
}
.tour-search .gridTab__text {
    display: inline-block;
    margin: 15px 0 10px;
    font-size: 14px;
    position: relative;
    padding-bottom: 9px;
}
.tour-search__image-nav {
    margin-right: -52px;
}
.tour-charm {
    padding-top: 100px;
}
.tour-charm .l-container {
    width: 992px;
    padding: 0
}
.tour-charm .imgContainer--full {
    height: 183px;
    border-radius: 0;
    margin-bottom: 0
}
.tour-charm .bnrList__img-container {
    margin-bottom: 20px;
}
.tour-charm .bnrList__img-container img {
    border-radius: 4px;
}
.tour-charm .heading--md {
    font-weight: normal;
}
.tour-charm .grid-col__body {
    background: #0057b8;
    color: #fff;
    padding: 28px 59px;
}
.tour-charm .grid-col__body p {
    font-size: 16px;
}
.tour-charm .grid-col3 {
    padding: 0 1px 8px;
}
.tour-charm .button-container {
    margin-top: 20px;
    text-align: center
}
.tour-charm .button {
    padding-top: 4.5px;
    padding-bottom: 4.5px;
    background: none;
    transition: all .25s ease-out;
}
.tour-charm .button:hover {
    background: #E2E2E2;
}
.content-use {
    padding-top: 68px;
}
.content-use .bnrList__item--col3 {
    margin-bottom: 52px;
}
.content-use .bnrList__img-container {
    width: 100%;
    height: 132px;
    overflow: hidden;
    display: flex;
    align-items: center;
    border-radius: 4px;
}
.content-use .bnrList__img-container img {
    border-radius: 4px;
}
.content-use .bnrList__descriptiion {
    margin-top: 10px;
}
.content-use .heading--md {
    color: #333
}
.content-use p {
    color: #888
}
.feature-rec {
    padding-top: 50px;
}
.feature-rec .buttonList {
    margin: 0 -8px;
    justify-content: flex-start;
}
.feature-rec .buttonList:first-child {
    justify-content: center;
}
.feature-rec .grid-tab__button {
    display: block
}
.tour-ranking {
    padding-top: 86px;
}
.tour-ranking__wrapper {
    margin-top: 20px;
    padding: 10px 0 30px;
    background: #f2f2f2;
}
.tour-ranking .grid-tab__title {
    margin-bottom: 30px;
}
.tour-ranking .gridTab__item {
    font-size: 24px;
    color: #333
}
.tour-ranking .toggleControl--active .gridTab__item {
    background: #0057b8;
    color: #fff
}
.tour-ranking .toggleControl--active .gridTab__item::after {
    border: solid 18px transparent;
    border-top-color: #0057b8
}
.tour-ranking .sub-text {
    text-align: center;
    font-size: 16px;
    margin-top: 21px;
    padding-bottom: 15px;
}
.tour-ranking .media__wrapper:first-child {
    margin-top: 24px;
}
.tour-ranking .media {
    margin-top: 16px;
    border: 0;
    position: relative
}
.tour-ranking .media:after {
    display: block;
    position: absolute;
    width: 40px;
    height: 40px;
    border-radius: 20px;
    top: -10px;
    left: -10px;
    background-color: #fff;
    background-repeat: no-repeat;
    background-size: 30px;
    background-position: 5px 5px;
    font-size: 16px;
    font-weight: bold;
    padding: 9px 0;
    text-align: center;
    box-sizing: border-box;
}
.tour-ranking .media:nth-child(1):after {
    content: "";
    background-image: url('/cmn/icon/icon_crown_gold.svg');
}
.tour-ranking .media:nth-child(2):after {
    content: "";
    background-image: url('/cmn/icon/icon_crown_silver.svg');
}
.tour-ranking .media:nth-child(3):after {
    content: "";
    background-image: url('/cmn/icon/icon_crown_bronze.svg');
}
.tour-ranking .moretour .media:nth-child(1):after {
    content: "4";
    background-image: none
}
.tour-ranking .moretour .media:nth-child(2):after {
    content: "5";
    background-image: none
}
.tour-ranking .moretour .media:nth-child(3):after {
    content: "6";
    background-image: none
}
.tour-ranking .moretour .media:nth-child(4):after {
    content: "7";
    background-image: none
}
.tour-ranking .moretour .media:nth-child(5):after {
    content: "8";
    background-image: none
}
.tour-ranking .moretour .media:nth-child(6):after {
    content: "9";
    background-image: none
}
.tour-ranking .moretour .media:nth-child(7):after {
    content: "10";
    background-image: none
}
.tour-ranking .media__inner {
    box-shadow: 0 4px 6px -2px #cac6c6;
    padding: 0;
    background: #fff;
    border-radius: 4px;
}
.tour-ranking .media__body {
    padding-right: 43px;
}
.tour-ranking .media__img {
    width: 342px;
    height: 100%;
    display: flex;
    align-items: center;
    margin-right: 27px;
}
.tour-ranking .media__body-title {
    display: flex;
    margin-top: 23px;
}
.tour-ranking .media__body-title-icon {
    position: relative;
    bottom: 8px;
}
.tour-ranking .media__body-title-text {
    font-size: 20px;
    color: #333;
    margin-left: 6px;
}
.tour-ranking .media__body-title-text h4 span {
    font-size: 9px;
    position: relative;
    right: 2px;
    bottom: 2px;
}
.tour-ranking .media__body-title-text p {
    font-size: 14px;
    margin-top: 5px;
}
.tour-ranking .lrPosition {
    margin-top: 15px;
    padding-right: 25px;
}
.tour-ranking .travelMedia__price {
    font-size: 24px;
    font-weight: 700
}
.tour-ranking .travelMedia__price > span {
    font-size: 1em;
}
.collapseBtn {
    min-height: inherit;
}
.collapseBtn::after {
    top: 3px;
}
.tour-ranking .collapseBtn {
    cursor: pointer
}
.tour-ranking .grid-tab__button {
    margin-top: 28px;
}
.notice {
    padding-top: 120px;
}
.notice__gideline {
    width: 960px;
    margin: 0 auto 70px;
}
.notice .tableList__left,
.notice .tableList__right {
    display: flex;
    justify-content: space-between;
    width: 23%;
    align-items: center;
    padding: 16px 8px;
}
.notice .tableList__right {
    width: 77%
}
.notice__header {
    margin: 0 0 35px;
    font-size: 32px;
    text-align: center
}
.notice__date,
.notice__tag {
    width: 100px;
    font-weight: 400
}
.notice__tag {
    padding: 4px 10px;
    background-color: #f2f2f2;
    border-radius: 20px;
    width: 120px;
    text-align: center
}
.notice__description {
    color: #333;
    text-decoration: none
}
.notice__description:hover {
    text-decoration: underline
}
.nav {
    width: 100%;
    background-color: #f2f2f2;
    z-index: 110;
    position: absolute;
    box-shadow: 0 0 6px 2px rgba(0, 0, 0, 0.2);
}
.nav__container {
    display: flex;
    justify-content: space-between
}
.nav__list {
    display: flex;
    padding: 10px 0;
    justify-content: space-between;
    width: 100%;
    align-items: center
}
.nav__list-item {
    margin-right: 30px;
}
.nav__link {
    font-size: 14px;
    color: #333;
    text-decoration: none;
    display: block;
    position: relative
}
.nav__link::after {
    content: '';
    width: 0;
    height: 2px;
    background-color: #333;
    position: absolute;
    bottom: -12px;
    left: 1px;
}
.nav__contact {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 122px;
    height: 50px;
    background-color: #fff
}
.nav__contact-link {
    color: #0057b8;
    font-size: 14px;
    text-decoration: none
}
.is-sticky {
    position: fixed;
    top: 0
}
.is-active::after,
.nav__link:hover::after {
    width: 100%
}
.banner {
    margin: 70px 0
}
.banner__background {
    background-image: url('../images/banner-bg.jpg');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    padding-top: calc((232 / 992)*100%)
}
.nav__list-area {
    position: relative;
    cursor: pointer
}
.nav__list-button {
    width: 6rem;
    background: #0057B8 url('/cmn/icon/icon_arrow_down_white.svg') no-repeat center right;
    background-size: 26px 26px;
    color: #fff;
    padding: 5px 30px 5px 15px;
    box-sizing: content-box;
    border-radius: 4px;
    transition: all 0.5s
}
.nav__list-button:hover {
    background-color: #003175
}
.nav__list-select {
    position: absolute;
    background: #fff;
    top: 0;
    right: 0;
}
.nav__list-pulldown {
    ;
    border: 2px solid #0057B8;
    border-radius: 4px;
    background: #fff;
    width: 165px;
    margin: 0;
    z-index: 1000000;
}
.nav__list-pulldown ul {
    padding: 5px 0;
}
.nav__list-pulldown ul li a {
    text-decoration: none;
    cursor: pointer;
    font-size: 14px;
    padding: 6px 10px 6px 37px;
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    font-weight: normal;
    text-decoration: none;
    color: #333;
}
.nav__list-pulldown ul li a:hover {
    background-color: #f2f2f2;
}
.contact-us {
    padding: 70px 0 100px;
}
.contact-us .heading--title {
    border-bottom: 1px solid #d7d7d7;
    margin-bottom: 20px;
    line-height: 1.8;
    padding-bottom: 18px;
}
.contact-us .heading--subTitle {
    font-weight: 400
}
.contact-us .grid-col2 {
    text-align: left;
    padding-bottom: 30px;
}
.contact-us .grid-col2--phoneSection {
    border-right: 1px solid #d7d7d7
}
.contact-us .grid-col2--storeSection {
    padding: 30px 0 0 77px;
}
.contact-us .heading--md {
    font-weight: 400;
    font-size: 24px;
}
.contact-us .heading--mdStore {
    margin-bottom: 51px;
}
.contact-us .button {
    max-width: 326px;
}
.contact-us .button--twoLine {
    font-size: 20px;
}
.contact-us .button--type-outline {
    color: #2488ff;
    border-color: #2488ff;
    font-weight: 700
}
.contact-us .button--textStore {
    font-size: 18px;
    background: none;
    border: 1px solid #555;
    color: #555;
    background-image: url('https://www.his-j.com/cmn/icon/icon_arrow_right.svg');
    background-repeat: no-repeat;
    background-size: 24px 24px;
    background-position: right 4px center
}
.contact-us .button--icon-arrowRight {
    pointer-events: none;
    background: none;
}
.contact-us__box {
    border: 4px solid #f2f2f2;
    padding: 34px 62px 15px;
}
.contact-us__boxDetail {
    display: flex;
    margin-bottom: 15px;
}
.contact-us__boxText {
    font-size: 14px;
    letter-spacing: 0.05em;
    margin-right: 10px;
}
.contact-us__boxTextTitle {
    font-weight: 700
}
.contact-us__icon {
    position: relative
}
.contact-us__icon--phone {
    padding-left: 35px;
}
.contact-us__icon--phone::before,
.contact-us__icon--store:before {
    position: absolute;
    top: 50%;
    left: -10px;
    transform: translateY(-50%);
    width: 18px;
    height: 26px;
    content: '';
    background-image: url('/cmn/content/images/contact_icon_phone_kaigai.png');
    background-repeat: no-repeat;
    background-size: cover
}
.contact-us__icon--store {
    padding-left: 30px;
}
.contact-us__icon--store:before {
    top: 45%;
    left: 0;
    height: 21px;
    background-image: url('/cmn/icon/icon_stores.svg');
    border-top-left-radius: 13px;
    border-top-right-radius: 13px;
}
.popular-area {
    padding: 0
}
.popular-area .primaryLink {
    border-bottom: 2px solid #0057b8
}
.popular-area .primaryLink__inner {
    width: 100%;
    padding: 0;
    display: flex;
    justify-content: center;
}
.popular-area .primaryLink__item {
    transition: padding 0.3s ease-in
}
.popular-area .primaryLink__item.is-selected {
    background-color: #0057b8;
    padding-top: 0;
    border-radius: 4px 4px 0 0;
    transition: padding 0.25s ease-out
}
.popular-area .primaryLink__item.is-selected .primaryLink__itemInner {
    background-color: transparent;
    color: #fff
}
.popular-area .primaryLink__item:focus>*,
.popular-area .primaryLink__item:hover > * {
    background-color: #0057b8;
    color: #fff
}
.popular-area .primaryLink__item--col2,
.popular-area .primaryLink__item--col4 {
    width: 185px;
}
.popular-area .primaryLink__itemInner {
    background-color: #f2f2f2;
    border: none;
    padding: 12px 10px 9px;
}
.popular-area .primaryLink__itemInner.is-selected {
    background-color: #0057b8;
    color: #fff
}
.popular-area .grid-row {
    margin-top: 35px;
}
.popular-area .grid-col6 {
    margin-bottom: 17px;
}
.popular-area .iconTextList {
    display: block;
}
.popular-area .heading--sm {
    color: #333;
    font-size: 16px;
    margin-bottom: 10px;
    margin-right: 10px;
}
.popular-area .iconTextList__item {
    margin-bottom: 12px;
}
.popular-area__tabContent {
    display: none;
}
.popular-area__tabContent.is-selected {
    display: block;
}
.pickup {
    padding-top: 0;
}
.pickup .grid-tab__title {
    margin: 0 0 10px;
}
.pickup .grid-tab {
    margin: 0;
    padding-top: 50px;
}
.pickup .button {
    margin-top: 20px;
    padding-top: 4.5px;
    padding-bottom: 4.5px;
    background: none;
    transition: all .25s ease-out;
}
.pickup .button:hover {
    background: #E2E2E2;
}
.clearfix {
    zoom: 1;
}
.clearfix:after,
.clearfix:before {
    content: " ";
    display: table;
}
.clearfix:after {
    clear: both;
}
.l-container {
    width: 1052px;
    padding: 0 30px;
    margin: 0 auto;
}
.icon {
    display: inline-block;
    background-repeat: no-repeat;
}
.icon.icon-web-navigation-line-craft-1-109681,
.icon.icon-web-navigation-line-craft-2-109682 {
    background-image: url('../images/icon.png');
    background-position: 0 0;
    background-size: 1540px 1026px;
    width: 512px;
    height: 512px;
}
.icon.icon-web-navigation-line-craft-2-109682 {
    background-position: -514px 0;
}
.icon.icon-web-navigation-line-craft-3-109688,
.icon.icon-web-navigation-line-craft-4-109689,
.icon.icon-web-navigation-line-craft-5-109690 {
    background-image: url('../images/icon.png');
    background-position: 0 -514px;
    background-size: 1540px 1026px;
    width: 512px;
    height: 512px;
}
.icon.icon-web-navigation-line-craft-4-109689,
.icon.icon-web-navigation-line-craft-5-109690 {
    background-position: -514px -514px;
}
.icon.icon-web-navigation-line-craft-5-109690 {
    background-position: -1028px 0;
}
.tel {
    border: 1px solid #2488ff;
    max-width: 326px;
    color: #2488ff;
    font-weight: 700;
    font-size: 20px;
    padding-left: 28px;
    padding-right: 28px;
    background-repeat: no-repeat;
    background-size: 24px 24px;
    background-image: none;
    background-position: right 4px center;
    display: block;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 48px;
    border-radius: 4px;
    text-align: center;
}
.img-sp {
    display: none !important;
}
.js-change-target {
    display: none;
}
.pickup .grid-tab .grid-row,
.tour-search .grid-tab .grid-row {
    justify-content: end;
}
.pickup .grid-tab .grid-col3,
.tour-search .grid-tab .grid-col4 {
    margin-left: 8px;
    margin-right: 8px;
}
#pickUp .grid-row,#tourSearch .grid-row {
  justify-content: start;
}
#tourRec .grid-tab .grid-col3 {
    margin: 0 8px;
}
.bannerItem {
  justify-content: center;
  border-top: none !important;
  margin-bottom: 20px;
  padding-top: 40px;
}
