@charset "utf-8";

/****************************************
		0. 全体の設定
*****************************************/
#wrap .hidden{
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
}
/****************************************
		1. メインビジュアル
*****************************************/
#mainVisual {
    background-image: url(../img/mainimage.jpg);
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center;
	text-align:center;
	padding:0;
}
#mainVisual .title_box {
	padding: 0;
    max-width: 1080px;
    min-width: 992px;
    margin: 0 auto;
    overflow: hidden;
    background-color: transparent;
    position:relative;
    z-index: 10;
}
#mainTitle {
    position: relative;
    left: auto;
    bottom: auto;
    padding: 20px 0;
    margin: 0 auto;
    transform: translateX(-18px);
}
#mainTitle img {
	min-width: 0;
	max-width: none;
}
/****************************************
			2.ナビ
*****************************************/
#gNavi{
	width: 100%;
	background-color:#f5c615;
}
#navInner{
	width: 992px;
	margin: 0 auto;
	padding: 10px 0;
	position: relative;
}
.tab_list .tab_btn{
	display: flex;
	align-items: center;
	justify-content:center;
}
.tab_list{
	width: 780px;
	display: flex;
	justify-content: space-between;
}
.tab_list {
	cursor: pointer;
}
#gNavi .tab_list li{
	position: relative;
	border-right: 1px dotted #004098;
}
#gNavi .tab_list li:first-child{
border-left: 1px dotted #004098;
}
.tour_btn{
   position: absolute;
    top: -20px;
    right: 40px;
    z-index: 200;
}
.tour_btn a {
  display: block;
  position: relative;
  top: 0;
  transition: top 0.2s ease-in-out 0s;
}
.tour_btn a:hover,
.tour_btn a:active,
.tour_btn a:focus {
  top: 3px;
}
#gNavi .tab_list li::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -20px;
	width: 0;
	height: 0;
	transform: translateX(-50%);
	border-style: solid;
	border-width: 10px 10px 0 10px;
	border-color: #f5c615 transparent transparent transparent;
	transition: all .25s ease;
	z-index: 100;
	opacity: 0;
}
#gNavi .tab_list li:hover::after,
#gNavi .tab_list li.active::after {
	opacity: 1;
}

/****************************************
		タブ＋国別タイトル設定 
*****************************************/
.inner_cont {
	display: none;
}
.inner_cont.active {
	display: block;
	opacity: 1;
	animation: fadeIn 1.4s;
}
@keyframes fadeIn {
	0%{
		opacity: 1;
		display: none;
	}
	1%{
		opacity: 1;
		display: block;
	}
	100% {
		opacity: 1;
		display: block;
	}
}
#tabConts {
	position: relative;
}
#tabConts:before {
	content: "";
	position: relative;
	display: block;
	width: 100%;
	height: 10px;
}

#tabConts.finland::before,
#finland .title_wrap {
	width: 100%;
	background-image: url(../img/fin/bg_fin.jpg);
	background-repeat: repeat;
}
#tabConts.sweden::before,
#sweden .title_wrap{
	width: 100%;
	background-image: url(../img/swe/bg_swe.jpg);
	background-repeat: repeat;
}
#tabConts.danmark::before,
#danmark .title_wrap{
	width: 100%;
	background-image: url(../img/dnk/bg_dnk.jpg);
	background-repeat: repeat;
}
#tabConts.norway::before,
#norway .title_wrap{
	width: 100%;
	background-image: url(../img/nor/bg_nor.jpg);
	background-repeat: repeat;
}
#tabConts.baltic::before,
#baltic .title_wrap{
	width: 100%;
	background-image: url(../img/baltic/bg_baltic.jpg);
	background-repeat: repeat;
}
#tabConts.russia::before,
#russia .title_wrap{
	width: 100%;
	background-image: url(../img/rus/bg_rus.jpg);
	background-repeat: repeat;
}
.title_inner{
	width: 992px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	padding: 40px 0 50px;
}
.country{
	padding-bottom: 10px;
}
.decoreation01{
	text-align: center;
	padding-bottom: 10px;
}
.info_country{
	color: #fff;
	text-align: center;
	font-size: 20px;
}
.giza{
	background:url(../img/giza-bottom.png) repeat-x 0 0;
	position:relative;
	top: -14px;
	height:14px;
	width:100%;
}

/****************************************
		info_wrap内設定 
*****************************************/
.info_wrap{
	background-image: url(../img/bg01.png);
	background-repeat: repeat;
	background-position: center;
	padding-bottom: 40px;
}
.info_conts{
	width: 992px;
	margin: 0 auto;
}

.city_info{
	width: 992px;
		display: flex;
	justify-content: space-between;
	padding: 20px 0;
}
.city_ttl_right{
	display: flex;
	justify-content: space-between;
	background-image: url(../img/decoration02.png);
	background-repeat: no-repeat;
	background-position: 0px 130px;
}
.info_text{
	width: 470px;
    padding: 20px 10px 0 0px;
	line-height: 1.3;
}

.cont_box_wrap{
	display: flex;
	justify-content: space-between;
	  -webkit-flex-wrap: wrap;
   flex-wrap: wrap;
	margin-bottom: 20px;
}
.cont_box02{
	width: 50%;
	padding-bottom: 20px;
}
.cont_box01{
	width: 50%;
	padding-bottom: 20px;
}
.spot_wrap{
	display: flex;
	justify-content: space-between;
}
.spot_wrap li{
	width: 50%;
}
.spot_ttl{
	height: 34px;
	margin-bottom: 10px;
}
.spot_ttl img{
	vertical-align: bottom;
	padding-right: 10px;
}
.spot_ttl span{
	font-size: 19px;
	font-weight: bold;
	border-bottom: dotted 1px #000000;
}
.spot_info{
    font-size: 15px;
    line-height: 1.3;
    padding: 5px 10px 10px 0;
}
.spot_wrap h5{
	font-size: 18px;
	padding: 5px 5px 5px 0;
	line-height: 1.0;
}
.spot_text{
	font-size:14px;
	line-height: 1.3;
	padding: 0 5px 0 0;
}
.cont_box04{
	padding-bottom: 40px;
	width: 992px;
}
.city_info02_wrap{
	width: 992px;
	display: flex;
	justify-content: space-between;
	padding-bottom: 20px;
}
.city_info02{
	width: 50%;
}
.city_ttl02{
	display: flex;
	justify-content: space-between;
	padding:0 10px 20px 0;
}
.info_text02{
	padding-right: 10px;
}

.spot_wrap01{
	padding-right: 10px;
}
.spot_wrap01 li{
	padding-left: 10px;
}
.spot_wrap01 h5{
    font-size: 18px;
    padding: 5px 5px 5px 0;
    line-height: 1.0;
}
.text_right{
	text-align: right;
}

.pickup_wrap{
	border: 2px solid #000;
    padding: 1px;
	background-color: #EEEEEE;
	margin-bottom: 40px;
}
.pickup_inner{
	border: 1px dotted #000;
	height: 100%;
}
.pickup_info{
	display: flex;
	/*justify-content: space-between;*/
}
.pickup_ttl_right{
	display: flex;
	justify-content: space-between;
}
.pickup_wrap .pickup_text{
	/*width: 630px;*/
    padding: 50px 0 0 0;
}
.pickup_info h4{
	padding:  20px 10px 0;
}
.pickup_image02{
	padding-left: 220px;
}
.pickup_box_wrap01{
	display: flex;
	justify-content: space-between;
	padding: 10px;
}
.pickup_box_wrap01 li{
	width: 50%;
	margin: 0 10px 0 0;
}
.pickup_box_wrap01 h5{
    font-size: 18px;
    padding: 5px 5px 5px 0;
    line-height: 1.0;
}
.pickup02{
		display: flex;
	justify-content: space-between;
	margin-bottom: 20px;
}
.pickup_text02{
font-size: 14px;
    line-height: 1.3;
    padding: 10px 5px 20px 0;
}

.pickup_wrap02{
	border: 2px solid #000;
    padding: 1px;
	background-color: #EEEEEE;
	width: 50%;
	margin: 0 1px 0px;
}
.pickup_box_wrap02 h5{
    font-size: 18px;
    padding: 5px 5px 5px 0;
    line-height: 1.0;
}
.pickup_wrap02 .pickup_text{
    padding: 40px 60px 0 0px;
}
.pickup_box_wrap02 li{
padding: 10px 0 0 5px;
}

.pickup_wrap02 .pickup_text03{
    padding: 40px 10px 0 0px;
}
.pickup_image{
	padding: 10px;
}
.pickup_box03{
	display: flex;
	justify-content: space-between;
	padding: 10px;
}
.pickup_text03{
	padding: 40px 150px 0 0;
}
.pickup_text03 span{
	font-size:14px;
}

/*****フィヨルド*****/
.pickup_ttl_right04{
	display: flex;
	justify-content: space-between;
	padding: 17px;
}
.pickup_text04 {
	padding: 10px 10px 0 0;
}
.pickup_text04 dt{
	font-size: 18px;
	padding-bottom: 5px;
}
.pickup_text04 dd{
	font-size: 14px;
	line-height: 1.3;
}
.fjord_box{
	padding: 10px;
}
.fjord_ttl{
	display: inline-block;
	background-color: #000;
	color: #fff;
	font-size: 18px;
	padding: 2px 10px;
	margin-bottom: 10px;
}
.fjord_info{
	background-color: #fff;
	border: dotted 1px #000;
	padding: 10px;
	font-size: 14px;
	margin-bottom: 20px;
}
.fjord_info dt{
	font-size: 18px;
}
.fjord_spot{
	display: flex;
	justify-content: center;
	margin-bottom: 40px;
}
.fjord_spot li{
	width: 33%;
	padding: 0 20px;
}
.fjord_spot_ttl{
	font-size: 16px;
	line-height: 1.3;
	padding-bottom: 10px;
}
.fjord_spot_text{
	font-size: 14px;
	line-height: 1.2;
}
.fjord_spot_wrap{
	display: flex;
	justify-content: center;
	padding: 10px;
}
.fjord_spot02 {
	padding-right: 20px;
}
.fjord_spot02 li{
	padding-bottom: 20px;
}


/*****注釈*****/
.attention{
	text-align: right;
    font-size: 12px;
}

/*****バナーエリア*****/
.other_area{
	padding-top: 40px;
}
.other_ttl{
	text-align: center;
	padding-bottom: 10px;
}

.bnr_link :hover{
	opacity:0.9;
}


/*****ロシアビザ*****/
.rus_visa_wrap{
	 border: 2px solid #000;
    padding: 1px;
    background-color: #EEEEEE;
    margin: 40px 0;
}
.rus_visa_wrap dl{
	border: 1px dotted #000;
    height: 100%;
	padding: 15px;
}
.rus_visa_wrap dt{
	font-weight: bold;
	font-size: 19px;
	border-bottom: #000 dotted 2px;
	margin-bottom: 5px;
}
.rus_visa_wrap dt span{
	color:#f00;
}
.rus_visa_wrap dd{
	line-height: 1.3;
}


/****************************************
			おすすめツアー
*****************************************/
#recommendTour::before{
	position:absolute;
	background:url(../img/decoration03.png)center top no-repeat;
	content:' ';
	width:100%;
	height:8px;
}
/*#recommendTour::after{
	position:absolute;
	background:url(../img/decoration03.png)center bottom no-repeat;
	content:' ';
	width:100%;
	height:8px;
}*/
#recommendTour{
	background-image: url(../img/bg_tour.jpg);
	background-repeat: repeat;
}
.tourarea_wrap{
	width: 992px;
	margin: 0 auto;
	padding-top: 40px;
}
.tourarea_ttl{
	text-align: center;
}
.tourarea_ttl h3{
	color:#00B2B2;
	font-weight: bold;
}
.tourarea_ttl h3 span{
	font-size: 30px;
	letter-spacing: 0.2em;
}

.tourlist_inner{
	/*background-color: #fff;*/
	padding-bottom: 40px;
}
.tourlist_inner h4{
	position: relative;
	background-color: #F5C615;
	color: #1768ab;
	font-size: 22px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 30px;
	margin-top: 40px;
	line-height: 1.3;
	padding: 10px 0;
}
.tourlist_inner h4:after {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(245, 198, 21, 0);
	border-top-color: #F5C615;
	border-width: 20px;
	margin-left: -20px;
}
.tourlist_inner h4 span{
	font-size: 18px;
}
.tourlist_inner h5{
	width:30%;
	 padding: 5px 0 4px;
    background-color: #a8d877;
    text-align: center;
    font-weight: bold;
    font-size: 15px;
	margin: 10px;
}
.item-box {
	/*border-bottom:dotted 1px;*/
	border:solid 1px #c1c0bc;
	background-color: #fff;
	display:block;
	clear:both;
	overflow:hidden;
	position: relative;
	margin: 5px 10px;
	    background-image: url(../img/icon_next03.png);
    background-size: 16px;
    background-position: top 48px right 6px;
    background-repeat: no-repeat;
}
.item-box-inner{
	display: flex;
	justify-content: space-between;
}
.item-box-left{
	width: 166px;
}
.item-box-pic img{
	width: 100%;
}
.item-box-right{
	width:790px;
}
.item-box-info{
	display: flex;
	justify-content: space-between;
	padding-bottom: 10px;
}
.item-box-info02{
	padding-right: 30px;
}
.item-box-ttl{
	padding: 10px 20px 0 0;
	font-size: 1.1em;
	line-height:1.4em;
	color: #333;
	font-weight:bold;
	color:#036DB7;
}
.item-box-txt{
	font-size: 0.9em;
	line-height:1.2em;
	width: 68%;
    padding-right: 20px;
}
.tour-ttl {
	font-size: 1.1em;
	line-height:1.4em;
	color: #333;
	font-weight:bold;
	position: absolute;
	top: 10px;
	left: 130px;
	color:#036DB7;
}
.tour-txt {
	font-size: 0.9em;
	line-height:1.2em;
	position: absolute;
	top: 40px;
	left: 130px;
	width:588px;
	
}
.item-box-price{
	font-size: 1.1em;
	color: #D83500;
	font-weight:bold;
}
.item-box-dep{
	font-size: 0.8em;
	line-height:1.4em;
	text-align: right;
}
.item-box-fuel{
	font-size: 0.8em;
	line-height:1.6em;
	text-align: right;
}
.item-box a {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	height:100%;
	width: 100%;
}

.item-box a:hover {
text-decoration: none;
opacity: 0.4;
background:#E5F0F8;
}

.other-tour-btn{
padding: 60px;
}
.other-tour-btn a{
    display: block;
    padding: 2% 0;
    margin: 0 auto;
    width: 70%;
    text-align: center;
    color: #00B2B2;
    font-weight: bold;
    vertical-align: middle;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -moz-osx-font-smoothing: grayscale;
    position: relative;
    background: #00B2B2;
    -webkit-transition-property: color;
    transition-property: color;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
}

.other-tour-btn a:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: #FFFFFF;
    border: 2px solid #00B2B2;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: 50%;
    transform-origin: 50%;
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
}
.other-tour-btn a:hover, .other-tour-btn a:focus, .other-tour-btn a:active {
    color: white;
}

.other-tour-btn a:hover:before, .other-tour-btn a:focus:before, .other-tour-btn a:active:before {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
}

/****************************************
			slider
*****************************************/
/*.slideFrame {
	position: relative;
	overflow: hidden;
	overflow-x: auto;
	width: 100%;
	height: 200px;
	background-position: center;
	clear: both;
	margin: 8px auto;
}
.slideGuide {
	width: 100%;
	height: 100%;
}
.slideCell {
	display: block;
	float: left;
	margin-right: 5px;
	width: 250px;
	height: 100%;
}
.slideCell img {
}*/
/* sample */
/*.slideCell a {
	display: block;
	width: 100%;
	height: 100%;
}
.slideCell a:hover {
}*/
/* controller */
/*.slideCtrl {
	display: none;
	position: absolute;
	top: 0;
	width: 25px;
	height: 100%;
	background: #676767 url(/images/bg.jpg);
	color: #fff;
	font-size: 12px;
	text-align: center;
	cursor: default;
	opacity: 0.8;
	-moz-opacity: 0.8;
	-webkit-opacity: 0.8;
	filter: alpha(opacity=10);
	text-align: center;
	background: #676767 url(bg.jpg);
	padding-top: 50px;
	font-weight: bold;
}*/

/****************************************
			ヘッダー・フッター
*****************************************/
#iconBtnNational {
	top: 0;
}
#footer .footer01{
	background: #ffffff repeat!important;
}
.hide {
	display: none;
}



/****************************************
			商品ない場合
*****************************************/
.noProduct {
    text-align: center;
    padding: 20px 0 60px;
}