@charset "UTF-8";

/* !Margin */
.mt00 { margin-top: 0   !important;}
.mt05 { margin-top: 5px !important;}
.mt10 { margin-top:10px !important;}
.mt12 { margin-top:12px !important;}
.mt15 { margin-top:15px !important;}
.mt20 { margin-top:20px !important;}
.mt25 { margin-top:25px !important;}
.mt30 { margin-top:30px !important;}
.mt35 { margin-top:35px !important;}
.mt40 { margin-top:40px !important;}
.mt45 { margin-top:45px !important;}
.mt50 { margin-top:50px !important;}
.mr00 { margin-right: 0   !important;}
.mr05 { margin-right: 5px !important;}
.mr10 { margin-right:10px !important;}
.mr12 { margin-right:12px !important;}
.mr15 { margin-right:15px !important;}
.mr20 { margin-right:20px !important;}
.mr25 { margin-right:25px !important;}
.mr30 { margin-right:30px !important;}
.mr35 { margin-right:35px !important;}
.mr40 { margin-right:40px !important;}
.mr45 { margin-right:45px !important;}
.mr50 { margin-right:50px !important;}
.mb00 { margin-bottom: 0   !important;}
.mb05 { margin-bottom: 5px !important;}
.mb10 { margin-bottom:10px !important;}
.mb12 { margin-bottom:12px !important;}
.mb15 { margin-bottom:15px !important;}
.mb20 { margin-bottom:20px !important;}
.mb25 { margin-bottom:25px !important;}
.mb30 { margin-bottom:30px !important;}
.mb35 { margin-bottom:35px !important;}
.mb40 { margin-bottom:40px !important;}
.mb45 { margin-bottom:45px !important;}
.mb50 { margin-bottom:50px !important;}
.ml00 { margin-left: 0   !important;}
.ml05 { margin-left: 5px !important;}
.ml10 { margin-left:10px !important;}
.ml12 { margin-left:12px !important;}
.ml15 { margin-left:15px !important;}
.ml20 { margin-left:20px !important;}
.ml25 { margin-left:25px !important;}
.ml30 { margin-left:30px !important;}
.ml35 { margin-left:35px !important;}
.ml40 { margin-left:40px !important;}
.ml45 { margin-left:45px !important;}
.ml50 { margin-left:50px !important;}

/* !Padding  */
.pt00 { padding-top: 0   !important;}
.pt05 { padding-top: 5px !important;}
.pt10 { padding-top:10px !important;}
.pt12 { padding-top:12px !important;}
.pt15 { padding-top:15px !important;}
.pt20 { padding-top:20px !important;}
.pt25 { padding-top:25px !important;}
.pt30 { padding-top:30px !important;}
.pt35 { padding-top:35px !important;}
.pt40 { padding-top:40px !important;}
.pt45 { padding-top:45px !important;}
.pt50 { padding-top:50px !important;}
.pr00 { padding-right: 0   !important;}
.pr05 { padding-right: 5px !important;}
.pr10 { padding-right:10px !important;}
.pr12 { padding-right:12px !important;}
.pr15 { padding-right:15px !important;}
.pr20 { padding-right:20px !important;}
.pr25 { padding-right:25px !important;}
.pr30 { padding-right:30px !important;}
.pr35 { padding-right:35px !important;}
.pr40 { padding-right:40px !important;}
.pr45 { padding-right:45px !important;}
.pr50 { padding-right:50px !important;}
.pb00 { padding-bottom: 0   !important;}
.pb05 { padding-bottom: 5px !important;}
.pb10 { padding-bottom:10px !important;}
.pb12 { padding-bottom:12px !important;}
.pb15 { padding-bottom:15px !important;}
.pb20 { padding-bottom:20px !important;}
.pb25 { padding-bottom:25px !important;}
.pb30 { padding-bottom:30px !important;}
.pb35 { padding-bottom:35px !important;}
.pb40 { padding-bottom:40px !important;}
.pb45 { padding-bottom:45px !important;}
.pb50 { padding-bottom:50px !important;}
.pl00 { padding-left: 0   !important;}
.pl05 { padding-left: 5px !important;}
.pl10 { padding-left:10px !important;}
.pl12 { padding-left:12px !important;}
.pl15 { padding-left:15px !important;}
.pl20 { padding-left:20px !important;}
.pl25 { padding-left:25px !important;}
.pl30 { padding-left:30px !important;}
.pl35 { padding-left:35px !important;}
.pl40 { padding-left:40px !important;}
.pl45 { padding-left:45px !important;}
.pl50 { padding-left:50px !important;}
.fwN    { font-weight: normal;}
.fwB    { font-weight: bold;}
.fzSS   { font-size:  78%;}/* base 14px -> 10px */
.fzS    { font-size:  85%;}/* base 14px -> 12px */
.fzM    { font-size: 100%;}
.fzL    { font-size: 115%;}/* base 14px -> 16px */
.fzLL   { font-size: 130%;}/* base 14px -> 18px */
.fzLLL  { font-size: 143%;}/* base 14px -> 20px */
sup     { font-size: 78%; vertical-align: top;}
sub     { font-size: 78%; vertical-align: baseline;}

/* !Inline Align ------------------------------------------------------------ */
.taL    { text-align: left   !important;}
.taC    { text-align: center !important;}
.taR    { text-align: right  !important;}
.vaT    { vertical-align: top    !important;}
.vaM    { vertical-align: middle !important;}
.vaB    { vertical-align: bottom !important;}
.blockC  { margin-right: auto; margin-left: auto; text-align: left;}
* html .blockC { margin-right: 0; margin-left: 0;}
.blockR  { margin-left: auto; text-align: left;}
* html .blockR { margin-left: 0;}

/* !Floats ------------------------------------------------------------------ */
.flL    { display: inline; float: left;}
.flR    { display: inline; float: right;}

/* !Base Effect -------------------------------------------------------------- */
a {
	color: #2e3781;
	text-decoration: none;
	cursor: pointer;
}
/*a:visited {
	color: #9a9fa5;
}*/
a:hover,
a:active,
a:focus {
	color: #667596;
}
button {
	cursor: pointer;
}
.noBorder {
	border: 0!important;
}
/*--------------------------------------------------------------
# Alignments-blog
--------------------------------------------------------------*/
.alignleft {
	clear: both;
	display: inline;
	float: left;
	margin-right: 2rem;
	width: 40%;
	height: auto;
	max-width: 800px;
	max-height: 400px;
}
.alignright {
	clear: both;
	display: inline;
	float: right;
	margin-left: 2rem;
	width: 40%;
	height: auto;
	max-width: 800px;
	max-height: 400px;
}
.aligncenter {
	clear: both;
	display: block;
	margin: 20px auto;
	width: 100%;
	height: auto;
	max-width: 800px;
}
img.alignnone.size-full {
	max-width: 100%!important;
	height: auto!important;
}

/* !Common */
body {
	font-size: 14px; /* 12px; */
	-webkit-text-size-adjust: none;
	line-height: 1.5;
	min-width: 320px;
	color: #666;
	background-color: #fff;
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", sans-serif;
}
.archivoFont {
	font-family: 'Archivo Narrow', sans-serif;
}
/*#wrapper {
	width:100vw;
	overflow: hidden;
}*/
h1.titleCommon {
	font-size: 30px;
	color: #2e3780;
	text-align: center;
	font-weight: normal;
	line-height: 2rem;
	max-width: 900px;
	width: 90%;
	padding: 0 10px;
	margin: 0 auto;
}
h2.titleCommon {
	font-size: 18px;
	color: #2e3780;
	font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif;
	letter-spacing: 0.03em;
	text-align: center;
	font-weight: normal;
	max-width: 900px;
	width: 90%;
	padding: 0 10px;
	margin: 0 auto;
}
h2.titleCommonArchive {
	font-size: 20px;
	color: #9a9fa5;
	font-weight: normal;
}
h3.titleCommon {
	font-size: 20px;
	color: #9a9fa5;
	text-align: left;
	font-weight: normal;
	padding-bottom: 10px;
	border-bottom: 1px solid #cbdada;
	margin: 0 25px 20px;
}
p.subtitleCommon {
	font-size: 12px;
	color: #667596;
	text-align: center;
}
.textContainer {
	width: 90%;
	margin: 0 auto;
	padding: 25px 0;
	text-align: center;
}
.readMoreBtn {
	text-align: center;
	font-size: 18px;
}
.readMoreBtn a {
	display: block;
	color: #2e3780;
	border-bottom: 1px dotted #2e3780;
	margin: 40px auto 20px;
	width: 76px;
	line-height: 24px;
}
	.readMoreBtn a:hover{
		font-weight: bold;
		border-bottom: 1px solid #667596;
	}

.latestNews .newsContainer .readMoreBtn a {
	margin: 0 auto;
}
.latestNews .newsContainer .readMoreBtn a:hover {
		font-weight: bold;
		border-bottom: 1px solid #667596;
}
/* Anchor */
#luxuryTravel,
#travelDesigner,
#companyInfo,
#access,
#recruit {
	margin-top: -65px;
	padding-top: 65px;
}

/* !You might also like List*/
.relatedThumb {
	width: 100%;
	margin: 0 auto 30px;
}

/* !Drawer */
.drawer--right .drawer-hamburger {
	width: 26px;
	height: 30px;
	padding: 12px 14px;
	z-index: 1000;
}
.drawer--right .drawer-hamburger .btnName {
	color: #c90044;
	display: block;
	font-size: 78%;
	position: absolute;
	left: 10px;
	top: 35px;
}
.drawer--right.drawer-open .drawer-hamburger .btnName {
	display: none;
}
.drawerNav {
	z-index: 1000;
	background-color: transparent;
}
.drawerMenu li {
	color: #fff;
	text-indent: 1rem;
	border-bottom: 1px solid #eff5f6;
}
.drawerMenu li a {
	color: #2f3782;
	display: block;
	padding: 10px 0;
}
.drawerMenu .back {
	color: #b3b3b3;
	height: 53px;
	margin-bottom: 10px;
	background-color: transparent;
	display: none;
}

.drawer-hamburger-icon, .drawer-hamburger-icon:after, .drawer-hamburger-icon:before {
	margin-top: 0;
	background-color: #2e3781;
}
.drawerOverlay {
	background-color: rgba(0,0,0,0.7);
}

/* !Header */
.header,
.headerContact {
	width: 100%;
	height: 55px;
	border-bottom: solid 1px #e5e5e5;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	background-color: #ffffff;
}
.header .logo,
.headerContact .logo{
	width: 155px;
	height: 55px;
}
.header .logo img,
.headerContact .logo img{
	width: auto;
	height: 55px;
	padding: 8px;
	float: left;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}

.header-message-pc {
	height: 85px;
	text-align: center;
	position: fixed;
	top: 0px;
	left: 250px;
	z-index: 999;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.header-message-pc a {
	font-weight: bold;
	line-height:30px;
	text-decoration:underline;
	overflow:hidden;
	text-overflow:ellipsis;
	white-space:nowrap;
}
.header-message-sp {display: none;}

/* !Contact */
.header .headerBtnArea-sp {
	display: block;
	position: fixed;
	top: 5px;
	right: 53px;
}
.header .headerBtnArea-sp ul li {
	display: inline-block;
	width: 45px;
	height: 45px;
	list-style: none;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	cursor: pointer;
}
.header .headerBtnArea-sp ul li a{
	display: block;
}
.headerBtnArea-sp .headerBtn div.contact {
	width: auto;
	height: 28px;
}
.headerBtnArea-sp .headerBtn div.phone {
	width: auto;
	height: 28px;
}
.header .headerBtnArea-sp li div.contactTxt {
	color: #2e3780;
	font-size: 72%;
	text-align: center;
}
.contact {
	background: url(../img/icon/icn_email.png) no-repeat;
	background-position: center 4px;
	background-size: 24px 24px;
}
.phone {
	background: url(../img/icon/icn_phone.png) no-repeat;
	background-position: center 4px;
	background-size: 24px 24px;
	pointer-events: none;
}
.header .headerBtnArea-pc {
	display: none;
}
.header nav.gnavi {
	display: none;
}
/* !Body */
.contents,
.contentsContact {
	width: 100%;
	height: auto;
	margin-top: 95px;
	min-width: 320px;
	min-height: calc(100vh - 515px);
	box-sizing: border-box;
}

/* !Footer */
#footer {
	color: #fff;
	font-size: 78%;
	display: table;
	width: 100vw;
	height: auto;
	padding-bottom: 10px;
	background-color: #24204a;
	z-index: 1;
	min-width: 320px;
}
#footer .legalDocuments {
	width: 100%;
	background-color: #e4e4e4;
	text-align : center;
}
	#footer .legalDocuments ul li {
		display: block;
		padding: 3px 0;
		margin: 0;
		border-bottom: 1px dotted #9a9fa5;
		line-height: 35px;
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	}
	#footer .legalDocuments ul li:last-child {
		border-bottom: 0;
	}
#footer .sitemapContainer {
	padding: 20px 10px ;
}
#footer ul.sitemap{
	line-height: 1.5rem;
	display: table-cell;
	width: calc(50% - 6px);
	margin: 0 3px 6px;
	padding: 0 10px;
	float: left;
	list-style: none;
	overflow: hidden;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
#footer ul.sitemap a{
	color: #fff;
}
#footer ul.sitemap ul.locationList{
	list-style: none;
	text-indent: 3%;
}
#footer ul.sitemap li {
	color: #fff;
}
#footer ul.sitemap li i {
	font-size: 230%;
	padding: 9px 8px 5px 0;
}
#footerContact {
	width: 100vw;
	height: 100px;
	color: #fff;
	display: table;
	background-color: #24204a;
	z-index: 1;
	min-width: 320px;
}
#footerContact ul.sitemap {
		display: table-cell;
		vertical-align: middle;
		list-style: none;
		padding-left: 15px;
}

/* !breadCrumb */
#breadCrumb {
	width: 96%;
	color: #959aa0;
	display: block;
	padding: 8px 10px 0;
	z-index: 998;
}
#breadCrumb ol {
	display: block;
	width: 100%;
	list-style: none;
}
#breadCrumb ol:after {
	visibility:hidden;
	display:block;
	font-size:0;
	content:" ";
	clear:both;
	height:0;
}
#breadCrumb ol li{
	color: #959aa0;
	font-size: 12px;
	line-height: 15px;
	display: block;
	padding: 0 0 5px;
	float: left;
	list-style: none;
}
#breadCrumb ol li:last-child {
	color: #2e3780;
}
#breadCrumb ol li a{
	color: #959aa0;
	display:inline-block;
}
#breadCrumb ol li a:after{
	color: #959aa0;
	font-size: 12px;
	content: ">";
	margin: 0 6px;
}

/* !nav */
.navButton {
	display: block;
	padding: 30px 0 20px;
	margin: 0 6px;
}
.navButton:after {
	visibility:hidden;
	display:block;
	font-size:0;
	content:" ";
	clear:both;
	height:0;
}
.navButton li {
	display: block;
	margin: 0 auto;
}
.navButton li button{
	color: #2e3780;
	font-size: 90%;
	display: block;
	width: 70%;
	padding: 10px;
	margin: 0 auto;
	background-color: #fff;
	border: 2px solid #2e3780;
	line-height: 20px;
}
.navButton li button i {
	font-size: 130%;
	line-height: 20px;
}
.navButton li button:hover {
	border: 3px solid #2e3780;
	padding: 9px;
}

/* !トラベルサイトトップ  */
section {
	display: block;
	padding: 20px 0 10px;
	background: #fff;
}
.sectioninner {
	max-width: 840px;
	margin: 0 auto;
}
.sectionInner {
	max-width: 900px;
	margin: 0 auto;
}

.subTitle {
	font-size: 14px;
	color: #667591;
}

/* タイトルアイコン */
#contact {
	background-image: url("../img/icon/icn_email.png");
	background-repeat: no-repeat;
	background-size: 26px auto;
	background-position: 5px top;
}
#facebook {
	background-image: url("../img/page_top/logo_facebook.png");
	background-repeat: no-repeat;
	background-size: 24px 24px;
	background-position: center 4px;
	height: 45px;
}
#instagram {
	background-image: url("../img/page_top/logo_instagram.png");
	background-repeat: no-repeat;
	background-size: 24px 24px;
	background-position: center 4px;
	height: 45px;
}

.header .headerBtnArea-sp ul .sns {
	width: 32px;
	height: 32px;
}

/* slider */
#sliderContents {
	position: relative;
}
.layerSlider {
	background-color: rgba(6, 6, 6, 0.15);
	display: block;
	z-index: 1;
	height: calc(100vh - 55px);
	width: 100vw;
	position: absolute;
	top: 0;
	left: 0;
}
.topImageSlider {
	height: calc(100vh - 55px);
}
.topImageSlider div {
	overflow: hidden;
	height: calc(100vh - 55px);
	width: 100%;
}
	.topImageSlider .topImg01 {
		background: url(../img/top_slider/top1.jpg) center/cover no-repeat;
	}
	.topImageSlider .topImg02 {
		background: url(../img/top_slider/top2.jpg) center/cover no-repeat;
	}
	.topImageSlider .topImg03 {
		background: url(../img/top_slider/top3.jpg) center/cover no-repeat;
	}

#sliderContents .sliderCatchcopy {
	display: block;
	z-index: 2;
	width: 100%;
	margin: 0;
}
	#sliderContents .sliderCatchcopy img {
		width: 70%;
		height: auto;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
		max-width: 100%;
		max-height: 100%;
	}

/* News */
.latestNews {
		display: block;
		text-align: center;
		background-color: #f7f7f7;
		position: relative;
		z-index: 98;
}
.latestNews .newsContainer {
    width: 92%;
    padding: 20px 10px;
    margin: 0 auto;
    background-color: rgba(255, 255, 255, 1);
    background-position: left center;
    outline: 3px solid #b0c0d4;
    border: 1px solid #2f377f;
}
.latestNews .newsContainer a {
	display: block;
	cursor: pointer;
	margin-bottom: 10px;
}
.latestNews .newsContainer a:hover {
	color: #2e3780;
	font-weight: bold;
}
.latestNews .newsContainer span {
    color: #9a9fa5;
    display: block;
    margin-bottom: 5px;
    margin-left: -30px;
}

/*hotel*/
section.hotel {
	background-color: #f7f7f7;
}
.hotel .hotelThumb {
	max-width: 840px;
	width: 94%;
	margin: 10px auto 30px;
}
.hotel .hotelThumb .singleCountry {
	margin: 0 6px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.hotel .hotelThumb .singleCountry img {
	width: 100%;
	height: 200px;
	object-fit: cover;
}
.hotel .hotelThumb .singleCountry p {
	padding: 10px;
	color: #fff;
	font-size: 16px;
	text-align: center;
	line-height: 27px;
	height: 27px;
}
.africa {background-color: #91810d;}
.asia {background-color: #c81a1b;}
.japan {background-color: #ca640d;}
.latinAmerica {background-color: #c60c58;}
.europe {background-color: #0b6035;}
.pacific {background-color: #098eb2}
.usa {background-color: #14127c;}

/*Hotel Single*/
.mainHotelThumb {
	height: 300px;
	width: 90%;
	max-width: 900px;
	margin: 0 auto;
	background-color: #eaeaea;
}
	.mainHotelThumb img {
		width: 100%;
		height: 300px;
		object-fit: cover;
	}
.subHotelThumb {
	height: 80px;
	width: 90%;
	max-width: 900px;
	margin: 10px auto;
}
	.subHotelThumb div{
		padding: 0 4px;
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	}
	.subHotelThumb img {
		height: 80px;
		width: 100%;
		object-fit: cover;
	}
section.hotelDetail {
	padding: 0;
}
.detailTitle {
	text-align: center;
	width: 90%;
	margin: 15px auto;
}
section.hotelDetail p.subTitle {
	padding: 0;
}
.hotelDetailsContainer h2 {
	color: #2e3780;
}
.hotelDetailsContainer .recommendMessage {
	border: 1px solid #667591;
	padding: 10px;
	width: 90%;
	margin: 0 auto 30px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.amenityContainer {
	width: 94%;
	margin: 0 auto;
}
.amenityContainer tr{
	border-top: 1px dotted #c7c7c7;
	line-height: 40px;
}
.amenityContainer tr:last-child {
	border-bottom: 1px dotted #c7c7c7;
}
.amenityContainer tr th {
	font-weight: normal;
	font-size: 12px;
	color: #959aa0;
	text-align: left;
	padding: 5px 10px;
	width: 100px;
}
.amenityContainer tr td {
	border: 0;
	text-align: left;
	padding: 10px 5px;
	font-size: 14px;
	line-height: 1.3rem;
	vertical-align: middle;
}
	.amenityContainer tr td:first-child {
		width: 120px;
		color: #667591;
		font-size: 11px;
	}
/* iframe {
	width: 100%;
	height: 250px;
	margin: 20px 0;
} */
.regencyExclusive {
	width: 94%;
	background-color: #2e3780;
	color: #fff;
	padding: 15px;
	margin: 20px auto;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.regencyExclusive h2 {
	color: #fff;
	text-align: center;
	font-weight: normal;
	font-size: 20px;
}
.regencyExclusive span {
	display: block;
	color: #fff;
	font-size: 12px;
	text-align: center;
	opacity: 0.5;
	padding-bottom: 10px;
}
.regencyExclusive div {
	width: 100%;
	height: auto;
	margin: 15px auto;
}
.regencyExclusive img {
	width: 100%;
}
.regencyExclusive p {
	text-indent: -1rem;
	padding-left: 1rem;
}
.regencyExclusive table td {
	border: 0;
	text-align: left;
	padding: 0 5px;
	text-indent: -0.7rem !important;
}
/*Hotel Archive*/
.filterBtn{
	max-width: 900px;
	width: 100%;
	margin: 10px auto 0;
	float: left;
}
.filterBtn ul {
	width: 100%;
	margin: 0 auto;
}
.filterBtn ul li.filterContent{
	display: inline-block;
	list-style: none;
	width: 90px;
	font-size: 12px;
	margin: 0 5px;
}
.filterBtn ul li.filterContent:first-child {
	margin-left: 0;
}
.filterBtn ul li.filterContent:last-child {
	float: right;
	width: 70px;
}
@media screen and (max-width: 550px) {
	.filterBtn ul li.filterContent,
	.filterBtn ul li.filterContent:first-child,
	.filterBtn ul li.filterContent:last-child {
	float: unset;
	display: block;
	width: 100%;
	margin: 10px 0;
	}

	.filterContent select{
		width: 100%;
	}
}
.filterContent select{
	color: #9a9fa5;
	line-height: 30px;
	height: 35px;
	padding: 0;
	border: 0;
	border-top: 1px solid rgba(178, 184, 191, 0.45);
	border-bottom: 1px solid rgba(178, 184, 191, 0.45);
	background-color: #fff;
	cursor: pointer;
}
	.filterContent select:hover {
		border-top: 2px solid rgba(178, 184, 191, 0.75);
		border-bottom: 2px solid rgba(178, 184, 191, 0.75);
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	}
.filterBtn .styleFilterAdded {
	width: 98%;
	padding-top: 10px;
	margin: 0 auto;
	cursor: pointer;
}
.filterBtn .styleFilterAdded span{
	padding: 5px;
}

/*Model Plan*/
.modelPlanThumb ul.planLists li {
	list-style: none;
	position: relative;
	width: 94%;
	min-height: 260px;
	margin: 0 auto 10px;
}
.modelPlanThumb ul.planLists li .pickUpPlan,
.modelPlanThumb ul.planLists li .planModule {
	height: 180px;
}
	.planLists li .pickUpPlan img,
	.planLists li .planModule img {
		width: 100%;
		height: 180px;
		object-fit: cover;
	}
	.planLists .titleBtn {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		margin: auto;
		z-index: 2;
		width: 100%;
		height: 180px;
		background-color: rgba(0,0,0, 0.3);
		-moz-transition: background-color 0.3s ease-in-out;
		-webkit-transition: background-color 0.3s ease-in-out;
		-o-transition: background-color 0.3s ease-in-out;
		-ms-transition: background-color 0.3s ease-in-out;
	}
		.planLists .titleBtn:hover {
			background-color: rgba(46, 55, 129, 0.9);
		}
	.planLists .titleBtn h2.planName {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		margin: auto;
		color: #fff;
		font-weight: normal;
		font-size: 13px;
		text-align: center;
		width: 80%;
		height: 30px;
	}

/*Model Plan Single*/
.mainThumb {
	height: 200px;
	width: 90%;
	max-width: 900px;
	margin: 0 auto;
	background-color: #eaeaea;
}
	.mainThumb img {
		width: 100%;
		height: 200px;
		object-fit: cover;
	}
	.thumbTitle {
		position: relative;
		z-index: 100;
		width: 100%;
		max-width: 900px;
		margin: 0 auto;
	}
		.thumbTitle p{
			position: absolute;
			top: -25px;
			left: 0;
			color: #fafafa;
			font-size: 11px;
			width: 100%;
			height: 25px;
			line-height: 25px;
			padding: 0 8px;
			background-color: rgba(0,0,0,0.3);
			box-sizing: border-box;
			-webkit-box-sizing: border-box;
			-moz-box-sizing: border-box;
		}
.subThumb {
	height: 80px;
	width: 90%;
	max-width: 900px;
	margin: 10px auto;
}
	.subThumb div{
		padding: 0 4px;
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	}
	.subThumb img {
		height: 80px;
		width: 100%;
		object-fit: cover;
	}
section.modelPlanDetail {
	padding: 10px 0;
}
h1.modelPlanTitle {
	font-size: 18px;
	color: #2e3780;
	text-align: left;
}
.modelPlanSubTitle {
	font-size: 14px;
	color: #667591;
	text-align: left;
}
.modelPlanContainer {
	max-width: 900px;
	width: 90%;
	margin: 0 auto;
	border: 1px solid #cbdada;
	padding: 55px 10px 0;
	position: relative;
}
	.modelPlanLabel {
		color: #fff;
		background-color: #2e3780;
		display: block;
		padding: 6px 25px;
		position: absolute;
		top: 10px;
		left: 0;
	}
.fixedMessage p{
	font-size: 11px;
	padding: 10px 0;
}
.timeTableContainer table {
	font-size: 100%;
	line-height: 1.5rem;
}
.timeTableContainer table tr {
	border: dotted #667591;
	border-width: 1px 0 1px 0;
}
	.timeTableContainer table tr:last-child {
		border: 0;
	}
.timeTableContainer table th {
	width: 30px;
	padding-right: 10px;
	color: #2e3780;
	font-family: 'Archivo Narrow', sans-serif;
}
.timeTableContainer table td:first-child {
	width: 30px;
	padding-right: 10px;
	color: #2e3780;
	font-size: 16px;
	font-family: 'Archivo Narrow', sans-serif;
	text-align: center;
}
.timeTableContainer table td {
	text-align: left;
	border: 0;
	padding: 10px 0;
	line-height: 1.5rem;
}
.timeTableContainer table td ul {
	padding-top: 5px;
	list-style: none;
}
.timeTableContainer table td ul li span {
	color: #667591;
	padding-right: 15px;
}
/*Review, Report*/
section.review, section.report {
	background-color: #FFF;
}
ul.reviewLatest, ul.reportLatest {
	text-align: center;
}
.review ul .reviewLatest li,.report ul .reportLatest li {
	display: inline-block;
	padding: 0 30px 10px;
	vertical-align: top;
}
	li.reviewModule,li.modelplanModule,
	li.storyModule,li.reportModule {
		display: inline-block;
		text-align: center;
		width: 90%;
		position: relative;
		margin: 10px auto;
		border: 1px solid #e5e5e5;
		background-color: #fff;
	}
	li.reviewModule a,li.modelplanModule a,
	li.storyModule a,li.reportModule a {
		display: block;
	}
.reviewModule .reviewThumb,.modelplanModule .modelplanThumb,
.storyModule .storyThumb,.reportModule .reportThumb {
	height: 170px;
	overflow: hidden;
}
.reviewModule .reviewThumb img,.modelplanModule .modelplanThumb img,
.storyModule .storyThumb img,.reportModule .reportThumb img {
	width: 100%;
	height: 170px;
	object-fit: cover;
	transition-duration: 300ms;
	margin: auto;
}
.reviewModule .reviewThumb img:hover, .reportModule .reportThumb img:hover {
	width: 104%;
	height: 104%;
	object-fit: cover;
}
.reviewModule span.country,.modelplanModule span.country,
.storyModule span.country,.reportModule span.country {
	position: absolute;
	color: #fff;
	height: 20px;
	top: 140px;
	min-width: 50px;
	left: 0;
	z-index: 2;
	padding: 5px 10px;
	background-color: rgba( 0, 0, 0,0.3);
}
.reviewModule .reviewTextBox, .modelplanModule .modelplanTextBox,
.storyModule .storyTextBox, .reportModule .reportTextBox {
	display: table;
	padding: 10px;
	text-align: left;
	height: 50px;
}
.reviewModule .reviewTextBox h3.location,.modelplanModule .modelplanTextBox h3.location,
.storyModule .storyTextBox h3.location,.reportModule .reportTextBox h3.location {
	display: table-cell;
	vertical-align: middle;
	font-size: 14px;
	font-weight: normal;
}
.reviewModule .reviewTextBox span.reviewText,
.reportModule .reportTextBox span.reportText {
	font-size: 12px;
	color: #b2b2b2;
}
.reviewText,.reportText {
	overflow: hidden;
	text-overflow: ellipsis;
}
/* single-review */
section.singleReview {
	width: 90%;
	max-width: 900px;
	margin: 0 auto;
}
.singleReview .storyContainer {
	margin: 0 auto;
	padding: 25px 0;
}
/* single-story */
section.singleStory {
	width: 90%;
	max-width: 900px;
	margin: 0 auto;
}
.singleStory .storyContainer {
	border-top: 1px solid #ccc;
	margin: 0 auto;
	padding: 15px 0;
}

/* single-report */
section.singleReport {
	width: 90%;
	max-width: 900px;
	margin: 0 auto;
}
.singleReport .storyContainer {
	margin: 0 auto;
	padding: 25px 0;
}
/* archives */
section.hotelArchive,
section.reviewArchive,
section.modelPlanArchive,
section.storyArchive,
section.reportArchive {
	padding: 20px 0 40px;
}

/* !詳細 */
.hotelDetail {
	margin-top: 0;
	min-height: inherit;
}

/* !ニュース一覧*/
.newsList {
	width: 90%;
	margin: 0 auto;
}
.newsList ul {
	padding-bottom: 10px;
	margin-bottom: 30px;
	border-bottom: 1px solid #cbdada;
}
.newsList ul li {
	padding-top: 10px;
	margin-top: 10px;
	border-top: 1px solid #cbdada;
	list-style: none;
}
.newsList ul li:first-child {
	margin-top: 30px;
}
.newsList ul li a {
	color: #333;
	display: block;
}
.newsList ul li a span {
	color: #979797;
	font-size: 85%;
	display: inline-block
}
.newsList ul li a span.new {
	color: #fff;
	font-size: 78%;
	line-height: 78%;
	text-align: center;
	vertical-align: 1px;
	min-width: 64px;
	padding: 5px 0 4px;
	margin-right: 8px;
	background-color: #e40708;
}

/* !ニュース詳細*/
.newsDetail {
	width: 90%;
	max-width: 900px;
	margin: 0 auto;
}
.newsTitle h1{
	font-size: 16px;
	font-weight: normal;
	padding: 0;
	color: #2e3780;
}
.newsTitle span.categoryNews {
	color: #fff;
	font-size: 78%;
	line-height: 78%;
	text-align: center;
	display: inline-block;
	min-width: 64px;
	padding: 5px 0 4px;
	margin-right: 8px;
	background-color: #b19148;
}

.detailTitle p {
	padding: 10px 0;
}
.detailTitle span.country {
	font-size: 78%;
	display: inline-block;
}
.detailTitle span.location {
	font-size: 78%;
	display: inline-block;
}
.detailTitle span.categoryColumn {
	color: #fff;
	font-size: 78%;
	line-height: 78%;
	text-align: center;
	display: inline-block;
	min-width: 64px;
	padding: 5px 0 3px;
	margin-right: 3px;
	background-color: #8ac43f;
}
.detailTitle span.postDate {
	font-size: 78%;
	display: inline-block;
	color: #888;
}
.detailTitle .writer{
	font-size: 90%;
	font-weight: normal;
	padding: 2px 0 0;
	margin: 0;
}
.detailMessage {
	padding: 10px;
}
.detailImage ul {
	font-size: 0;
	display: block;
	width: 100%;
	text-align: center;
	margin: 0 auto 6px;
}
.detailImage ul li{
	font-size: 100%;
	display: inline-block;
	width: 45%;
	padding: 5px;
	margin: 0 auto 6px;
}
.detailImage ul li img {
	vertical-align: bottom;
	display: block;
	width: 100%;
	max-width: 600px;
	max-height: 300px;
	padding: 0;
	margin: 0 auto;
	object-fit: contain;
}

/* !Top Model Plan slider*/
.detailPhoto {
	width: 90%;
	height: 175px;
	margin: 10px auto 30px;
}
.detailPhoto div{
	padding: 0 4px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.detailPhoto img {
	width: 100%;
	height: 175px;
	object-fit: cover;
}

/*fb, instagram*/
section.feed {
	width: 100%;
	margin: 0;
}
@media (min-width: 768px) {
    .feed {
        height: 350px;
    }
    .feedbackContainer {
        margin: 0 3px 6px;
        display: inline-block;
        float: left;
        width: calc(50% - 6px);
    }
    #facebook {
        background-size: 28px;
  		background-position: center;
    }
    section h2.contentTitle {
        padding-left: 40px;
        color: #343c78;
        font-size: 16px;
        font-weight: normal;
        line-height: 30px;
    }
    .feedContent {
        margin: 0 auto;
        height: 298px;
        overflow: hidden;
    }
    .feedbackContainer {
        margin: 0 3px 6px;
        display: inline-block;
        float: left;
        width: calc(50% - 6px);
    }
    #instagram {
        background-size: 28px;
  		background-position: center;
    }
    .feedbackContainer {
        margin: 0 3px 6px;
        display: inline-block;
        float: left;
        width: calc(50% - 6px);
    }
	#facebook, #instagram {
		display: inline-block;
		width: 44px;
		height: 59px;
	}
}
section h2.contentTitle {
    color: #343c78;
    padding: 4px 0 4px 36px;
    margin: 0 0 8px;
}
.fb_iframe_widget {
    display: inline-block;
    position: relative;
}
.feedContent {
    width: calc(100% - 12px);
    height: 298px;
    margin: 0 6px;
    overflow: hidden;
    border: 1px solid #ececec;
}
.sectioninner {
    max-width: 840px;
    margin: 0 auto;
}
.feedContent {
	margin: 20px auto;
	overflow: hidden;
}
.feed_dynamic_classZ_userinstagram {
	height: 300px;
}
.fts-instagram-scrollable {
	overflow: hidden!important;
}
.date,
.slicker-date,
.fts-insta-likes-comments-grab-popup,
.fts-powered-by-text,
.fts-backg,
.instagram-placeholder .fts-backg {
	display: none!important;
	font-size: 0!important;
	margin: 0!important;
	padding: 0!important;
}
.instagram-placeholder {
	margin: 0!important;
}
.fts-backg {
	transition: initial;
	padding: 0;
	margin: 0;
}
.instagram-placeholder:hover .fts-backg {
	margin: 0;
	padding: 0;
	display: none;
	-webkit-box-shadow: 0!important;
	box-shadow: 0!important;
}
.instagram-placeholder {
	-webkit-box-shadow: 0!important;
	box-shadow: 0!important;
}

/*その他*/
.extra {
	padding-top: 50px;
	background-color: #FFF;
}
ul.outerLink {
	text-align: center;
}
ul.outerLink li{
	display: inline-block;
	padding: 0 30px 10px;
	vertical-align: top;
}
ul.outerLink li p {
	font-size: 12px;
}
.trim {
	width: 150px;
	height: 150px;
	overflow: hidden;
	border-radius: 150px;
	margin: 0 auto;
}
	.trim img {
		width: auto;
		height: 100%;
	}
.siteTitle {
	height: 80px;
	padding-top: 20px;
}

/*パートナー*/
.partners {
	margin-bottom: 0;
	background: #f7f7f7;
}
.partners ul {
	text-align: center;
}
.partners ul li {
	list-style: none;
	display: inline-block;
	vertical-align: middle;
	width: 145px;
	height: auto;
	padding:5px;
}
.partners ul li img {
	width: 100%;
}

/* !Hotel Archive */
.archiveList {
	text-align: center;
}
.hotel ul.archiveList li {
	display: inline-block;
	padding: 0 30px 10px;
	vertical-align: top;
}
	li.archiveModule {
		display: inline-block;
		text-align: center;
		width: 48%;
		min-height: 190px;
		overflow: hidden;
		position: relative;
		margin: 5px auto;
		border: 2px solid #e5e5e5;
		background-color: #fff;
		vertical-align: top;
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	}
	li.archiveModule a {
		display: block;
	}
.archiveModule .hotelListThumb {
	height: 120px;
	overflow: hidden;
}
.archiveModule .hotelListThumb img {
	height: 100%;
	width: 100%;
	transition-duration: 300ms;
	object-fit: cover;
}
	.archiveModule .hotelListThumb img:hover {
		height: 104%;
		width: 104%;
	}
.archiveModule span.country {
	position: absolute;
	color: #fff;
	height: 20px;
	min-width: 50px;
	top: 90px;
	left: 0;
	z-index: 2;
	padding: 5px 10px;
	background-color: rgba( 0, 0, 0,0.3);
}
.archiveModule .hotelListTextBox {
	padding: 5px;
	text-align: left;
	line-height: 14px;
}
.archiveModule .hotelListTextBox h3.locationNameEng {
	font-size: 16px;
	font-weight: normal;
	padding-bottom: 3px;
	height: 34px;
}
.archiveModule .hotelListTextBox span.locationNameJpn {
	display: block;
	font-size: 12px;
	color: #959aa0;
	height: 30px;
}
.hotelText {
	overflow: hidden;
	text-overflow: ellipsis;
}
.hotelDetailsContainer .recommendMessage p {
	padding-bottom: 10px;
}
.hotelDetailsContainer .recommendMessage p:last-child {
	padding-bottom: 0;
}
/* !お問い合わせ */
.contactArea {
	margin-top: 0;
}
.subTitleBox {
	color: #343c78;
	display: block;
	width: 90%;
	padding: 0 10px;
	margin: 10px auto;
	text-align: center;
}
.subTitleBox .subTitle {
	font-size: 85%;
	line-height: 40px;
}
.subTitleBox .subTitle a {
	color: #343c78;
	display: inline-block;
}
.subTitleBox .subTitle a.ourContact {
	border-bottom: 1px dotted #2e3780;
}
.subTitleBox .subTitle a.ourContact:hover {
	border-bottom: 2px dotted #667596;
}
.subTitlePhone {
	background: url(../img/icon/icn_phone.png) no-repeat;
	background-position: center left;
	background-size: 20px 20px;
	height: 40px;
	padding-left: 22px;
	margin-left: 5px;
	font-weight: bold;
	display: inline-block;
}
.formArea {
	width: 94%;
	padding-top: 10px;
	margin: 0 auto;
}
.formContent {
	padding: 15px 15px 0px;
	margin: 0 auto 20px;
	border-top: 1px dotted #cbdada;
}
.formContent.planConts {
	padding: 5px 30px 0px !important;
	margin: 0 auto 10px !important;
	border-top: 1px dotted #cbdada;
}
.formContent .message {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
}
.formContent p {
	font-size: 13px;
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
}
.formContent label{
	line-height: 30px;
	font-size: 100%;
	display: block;
	margin: 0;
}
.formContent label .required{
	color: #c60505;
	font-size: 10px;
	line-height: 16px;
	vertical-align: 1px;
	display: inline-block;
	height: 16px;
	padding: 0 3px;
	margin: 0 0 0 8px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.formContent .comment {
	display: block;
	font-size: 13px;
	color: #657392;
	margin: 5px 0;
}
.error {
	font-size: 12px;
	padding: 0 6px;
	background: #fceeee;
}
.formContent input[type="text"],
.formContent input[type="number"],
.formContent input[type="tel"],
.formContent input[type="month"],
.formContent input[type="date"],
.formContent input[type="email"]{
	font-size: 14px;
	line-height: 35px;
	display: inline-block;
	width: 100%;
	max-width: 500px;
	height: 35px;
	padding: 0 15px;
	margin: 0 auto;
	background: rgba(136, 149, 157, 0.15);
	border: 0;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.formContent textarea{
	font-size: 14px;
	display: block;
	width: 100%;
	height: 200px;
	padding: 4px 5px 0;
	margin: 0;
	background: rgba(136, 149, 157, 0.15);
	border: 0;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.formContent select{
	font-size: 14px;
	line-height: 35px;
	display: inline-block;
	width: 100%;
	height: 35px;
	padding: 0 15px;
	margin: 0 auto;
	background: #fff;
	border: 1px solid #d9d9d9;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.formContent input[type="radio"],
.formContent input[type="checkbox"] {
	width: 16px;
	height: 16px;
	margin-top: 0;
	display: inline-block;
}
.formContent .addText{
	font-size: 14px;
	vertical-align: -1px;
	display: inline-block;
	padding: 0;
	margin: 0 8px;
}
.formContent input[type="radio"] + .addText,
.formContent input[type="checkbox"] + .addText {
	vertical-align: -4px;
	margin-left: 0;
}
#contactNameName{width: 240px;}
#contactKana {}
#birthYear, #birthMonth, #birthDay {width: 90px;}
#contactPost01 {width: 90px;}
#contactPost02 {width: 90px;}
#contactPrefecture {width: 240px;}
#contactTel    {width: 90px;}
#contactSchedule {width: 120px;}
#contactTel01  {width: 60px;}
#contactTel01.contsNumber  {width: 100%;}
#contactTel02  {width: 80px;}
#contactTel03  {width: 80px;}
#contactEmail  {}
/*#departure_airport,#arrival_airport {width: 120px;}*/
#departure_airport {width: 100%;}
#contactMethod {
	font-size: 0;
	display: block;
	padding: 0;
	margin: 0;
}
#contactMethod li {
	font-size: 100%;
	display: inline-block;
	margin: 7px 0 0;
}
#contactMethod li label{
	padding-bottom: 0;
}
#chooseContactType {
	font-size: 0;
	text-align: center;
	display: block;
	padding: 0;
	margin: 0;
	border-top: 1px solid #657392;
	border-right: 1px solid #657392;
	border-bottom: 1px solid #657392;
}
#chooseContactType li {
	font-size: 100%;
	display: inline-block;
	width: 33.33%;
	height: 28px;
}
#chooseContactType li input[type="radio"] {
	display: none;
}
#chooseContactType li input[type="radio"]:checked + label {
	color: #fff;
	background-color: #657392;
}
#chooseContactType li label {
	color: #657392;
	font-size: 13px;
	line-height: 28px;
	text-align: center;
	display: block;
	height: 28px;
	padding: 0;
	margin: 0;
	background-color: #fff;
	border-left: 1px solid #657392;
	cursor: pointer;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
/* !legal */
.legalDocument .textContainer {
	text-align: left;
	max-width: 800px;
	width: 94%;
	margin: 0 auto;
}
.legalDocument h3.titleCommon {
	margin: 30px 0 20px;
}
	.legalDocument h3.titleCommon:first-child {
		margin-top: 0;
	}
.flow ol {
	list-style: none;
	padding-bottom: 15px;
}
.flow ol li{
	text-indent: -2rem;
	padding-left: 2rem;
}
.attentionTxt {
	font-size: 14px;
	font-weight: bold;
	color: #2e3780;
	padding: 10px 0;
}
.price ul {
	list-style: none;
	padding-bottom: 15px;
}
.price ul li{
	text-indent: -1rem;
	padding-left: 1rem;
}
.price ul li a{
	text-decoration: underline
}
.legalMessage {
	margin: 0 auto;
	line-height: 24px;
}
.legalMessage h4 {
	padding-top: 1rem;
}
.legalMessage ul li {
	list-style: none;
	padding: 5px 0;
	text-indent: -1rem;
	padding-left: 1rem;
}
.legalMessage ul.subList li{
	padding: 0 0 0 1rem;
	text-indent: -1rem;
}
.legalMessage table th {
	width: 20px;
	border: 1px solid #999;
	text-align: center;
	text-indent: 0 !important;
}
.legalMessage table td {
	border: 1px solid #999;
	text-align: left;
	text-indent: 0 !important;
	padding: 0 5px;
}
.additional_info {
	display: block;
	width: 84%;
	padding: 12px 10px;
	margin: 10px auto;
	background-color: #dde5ee;
}
.additional_info p {
	color: #657392;
}
.additional_info a {
	color: #d42b2b;
	text-decoration: underline;
}
#guideMain {
	line-height: 1.5rem;
}

/* !About us */
section.luxuryTravel {
	background-color: #f7f7f7;
}
section.excerptAbout {
    background: #f7f7f7;
}
.aboutTextContainer {
	width: 90%;
	margin: 0 auto;
	padding: 25px 0 10px;
	text-align: left;
}
	.aboutTextContainer p {
		padding-bottom: 1rem;
	}
	.aboutTextContainer p:last-child {
		padding-bottom: 0;
	}
.aboutImageBox ul {
	text-align: center;
}
.aboutImageBox ul li{
	display: inline-block;
	width: 160px;
	height: 100px;
	margin: 8px 5px;
}
	.aboutImageBox img{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
.signatureCeo span {
	display: block;
	text-align: right;
}
section.travelDesigner {
	background-color: #f7f7f7;
}
section.team {
	padding: 20px 0 40px;
}
section.team ul.teamMember {
	list-style: none;
	font-size: 0;
	width: 94%;
	text-align: center;
	padding: 25px 0 0;
	margin: 0 auto;
}
	.teamMember li {
		display: inline-block;
		width: 33%;
	}
		.teamMember li:last-child {
			padding: 0;
		}
		.teamMember li img {
			width: 100%;
			height: 100%;
			object-fit: cover;
		}
.teamTab {
	width: 94%;
	text-align: center;
	margin: 0 auto;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.teamTab li {
	display: inline-block;
	color: #66758f;
	width: 32%;
	margin: 0 0 -1px;
	padding-top: 5px;
	border: 1px solid #66758f;
	cursor: pointer;
	list-style: none;
	transition: .3s;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.teamTab li span {
	display: block;
	font-size: 12px;
}
.teamTab li span.nameMember {
	font-size: 16px;
}
.teamTab li i {
	font-size: 150%;
	line-height: 10px;
}
.teamTab li.active {
	color: #fff;
	background: #66758f;
	cursor: auto;
}

.teamMessage div {
	display: none;
}
.teamMessage div.showMessage {
	display: block;
	color: #fff;
	line-height: 1.8rem;
	background-color: #66758f;
	width: 94%;
	padding: 15px 20px;
	margin: 0 auto;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.teamMessage div.showMessage p {
	padding-bottom: 1rem;
}
	.teamMessage div.showMessage p:last-child {
		padding-bottom: 0;
	}
	.teamMessage p img {
		width: 200px;
		height: auto;
	}
section.companyInfo {
	background-color: #f7f7f7;
}
	section.companyInfo .detailInfo {
		text-align: left;
	}
.detailInfo dl {
	padding-bottom: 10px;
}
.detailInfo dt {
	width: 120px;
	float: left;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.detailInfo dd {
	margin-left: 120px;
	padding-left: 5px;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.detailInfo dd:after {
	content: '';
	display: block;
	clear: both;
}
section.companyInfo .detailInfo dd span {
	display: block;
}

/*アクセス*/
.access .accessDetail {
	text-align: center;
	margin-bottom: 15px;
	line-height: 24px;
}
.access iframe {
	width: 100%;
	height: 300px;
	margin: 0;
}

/*採用情報*/
section.recruit {
	background-color: #f7f7f7;
}
.recruit__container table th,
.recruit__container table td{
	text-align:left;
	padding: 15px;
	font-size: 14px;
}
.recruit__container table th{
	border:1px #999 solid;
	width: 20%;
	background: #ebedf9;
}
@media screen and (max-width: 500px) {
	.recruit__container table th{
		width: 30%;
	}
}
.recruit__container--ttl{
	color: #2e3780;
	font-size: 16px;
}
.recruit__container--remark-under{
	text-decoration:underline;
	margin-bottom: 30px;
}
.recruit__container--address {
	font-style: initial;
}


table {
	width: 100%;
	margin: 10px 0;
	font-size: 84%;
	border-collapse: collapse;
}
table td {
	border: 1px solid #999;
	text-align: center;
	text-indent: 0 !important;
}

/* 旅行業務取扱料金表 */
.legalMessage p{
	text-align: center;
}
.pricelistTitleWrap{
	display: flex;
	justify-content: space-between;
	margin-top: 30px;
}
.legalDocument .textContainerPricelist {
	max-width: 1000px;
	width: 90%;
	margin: 0 auto;
}
table#pricelist th,
table#pricelist td {
	line-height: 1.2;
	padding: 5px;
	vertical-align: middle;
	font-weight: normal;
	text-align: left;
}
#pricelist th.left1 {
	writing-mode: vertical-rl !important;
	text-align: center !important;
}
.left2,.left3,.left4,.left5,.left6{
	background-color: #eee;
}
.left3{
	width: 425px !important;
}
.left4,.left5{
	width: 75px !important;
}
.left6{
	width: 200px !important;
}
#pricelist td.left8 {
	width: 40px;
}

@media screen and (max-width: 800px) {
	table{
		display: block;
		overflow-x: scroll;
    max-width: 1000px;
    white-space: nowrap;
	}
	#pricelist th.left1 {
		writing-mode: horizontal-tb !important;
	}
}

/* !Page-topへ戻る--------------------------------------------- */
#scrollButton {
	position: fixed;
	bottom: 0;
	right: 0;
	font-size: 200%;
	z-index: 98;
}
#scrollButton span {
	background: rgba(176, 192, 212, 0.65);
	text-decoration: none;
	color: #fff;
	width: 44px;
	height: 44px;
	text-align: center;
	line-height: 40px;
	display: block;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

/* 768px以上 */
@media (min-width: 768px){

.contents {
	margin-top: 166px;
}
.contentsContact { margin-top: 80px; }
.drawer--right .drawer-hamburger { display: none; }
section {
	padding: 20px 0;
}
h2.titleCommon {
	font-size: 26px;
	padding-bottom: 15px;
}
.sectioninner {
	max-width: 840px;
}
.textContainer {
	width: 80%;
}
/* !You might also like List*/
.relatedThumb {
	width: 100%;
	margin: 0 auto;
}

/* !Anchor  */
#luxuryTravel,
#travelDesigner,
#companyInfo,
#access,
#recruit {
	margin-top: -95px;
	padding-top: 95px;
}
/* !Header  */
.header {
	height: 85px;
	width: 100%;
	background-color:#fff;
}
.headerContact {
	height: 85px;
	background-color: #fff;
}
	.header .logo {
		width: 230px;
		height: 84px;
		background-color: #fff;
	}
	.headerContact .logo {
		width: auto;
		height: 84px;
	}
		.header .logo img,
		.headerContact .logo img {
			width: auto;
			height: 84px;
			padding: 12px;
			box-sizing: border-box;
			-moz-box-sizing: border-box;
			-webkit-box-sizing: border-box;
		}
	.header .headerBtnArea-sp {
		display: none;
	}
	.header .headerBtnArea-pc {
		display: flex;
		position: fixed;
		top: 13px;
		right: 10px;
		max-width: 535px;
	}
		.header .headerBtnArea-pc ul li {
			display: inline-block;
			list-style: none;
			cursor: pointer;
			padding: 0 4px;
			line-height: 22px;
		}
		.header .headerBtnArea-pc ul li i {
			font-size: 22px;
		}
		.header .headerBtnArea-pc ul li a{
			display: block;
			color: rgba(154, 159, 165, 0.8);
		}
		.header .headerBtnArea-pc ul li a:hover {
			color: #667596;
		}
		.header .headerBtnArea-pc ul li .membershipBtn {
    color: #fff;
    background-color: #2e3780;
    padding: 2px 10px;
    font-size: 15px;
    letter-spacing: 0.05em;
    width: 110px;
    display: inline-block;
    text-align: center;
		}
		.header .headerBtnArea-pc ul li .membershipBtn:hover {
			background-color: #667596;
		}

/* !navi */
.header nav.gnavi {
    display: block;
    width: 100%;
    /* height: 42px; */
    background-color: rgba(9, 25, 91, 0.9);
}
.header nav.gnavi ul {
    font-size: 0;
    max-width: 1000px;
    margin: 0 auto;
    text-align: center;
    /* text-align: left; */
}
.header nav.gnavi ul li {
    color: #fff;
    /* font-size: 17px; */
    font-size: 13px;
    line-height: 36px;
    display: inline-block;
	margin-right: 4px;
	/* margin-right: 20px; */
    text-align: left;
}
.header nav.gnavi ul li span {
/*    font-size: 8px;*/
    /* font-size: 11px !important; */
    font-size: 10px !important;
    color: #9b9eaa;
    display: block;
    letter-spacing: -0.1em;
    margin-top: -22px;
}
.gnavi li.nav-aboutus span {
    font-size: 7px;
    letter-spacing: -0.2em!important;
}
.gnavi li.nav-modelPlan {
    background: url(../img/nav/nav_modelplan.png) no-repeat;
    background-position: left center;
    background-size: 24px auto;
}
.gnavi li.nav-hotel {
    background: url(../img/nav/nav_hotel.png) no-repeat;
    background-position: left center;
    background-size: 24px auto;
}
.gnavi li.nav-review {
    background: url(../img/nav/nav_review.png) no-repeat;
    background-position: left center;
    background-size: 24px auto;
}
.gnavi li.nav-story {
    background: url(../img/nav/nav_story.png) no-repeat;
    background-position: left center;
    background-size: 24px auto;
}.gnavi li.nav-report {
    background: url(../img/nav/nav_report.png) no-repeat;
    background-position: left center;
    background-size: 24px auto;
}
.gnavi li.nav-aboutus {
    background: url(../img/nav/nav_aboutus.png) no-repeat;
    /* background-position: 3px 7px; */
    background-position: left center;
    background-size: 24px auto;
}
.gnavi li.nav-contact {
    background: url(../img/nav/nav_contact.png) no-repeat;
    background-position: left center;
    background-size: 24px auto;
}
.header nav.gnavi ul li:last-child {
    padding-right: 0;
}
.header nav.gnavi ul li a {
    display: block;
    height: 42px;
    letter-spacing: 0.1em;
    font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif;
    /* padding: 0 11px 0 32px; */
    padding: 0 10px 0 30px;
    cursor: pointer;
}
.header nav.gnavi li.nav-aboutus a {
    /* padding: 0 11px 0 5px; */
}
.header nav.gnavi a, .photoWeddingModule a {
    color: #fff;
}
	.header nav.headnavi {
		display: inline-block;
		position: fixed;
		top: 45px;
		right: 18px;
	}
	.header nav.headnavi ul {
		font-size: 0;
		height: 30px;
	}
	.header nav.headnavi ul li {
		font-size: 20px;
		line-height: 30px;
		font-family: 'Archivo Narrow', sans-serif;
	}
	.header nav.headnavi ul li a {
		display: block;
		height: 30px;
		padding: 0 7px;
		color: #2e3780;
		cursor: pointer;
	}
	.header nav.headnavi ul li a:hover {
		color: #667596;
	}
	.header nav.headnavi ul li.phone {
		padding-left: 31px;
	}
	.phone {
		background-position: 10px 5px;
		background-size: 18px 18px;
	}
/* !breadCrumb */
#breadCrumb {
	padding: 10px 5px;
	margin: 0 auto;
}
#breadCrumb ol li{ padding: 0; }

.navButton li button {
	font-size: 14px;
	width: 300px;
}

/* !slider */
#sliderContents { height: 86vh; }
.layerSlider { height: 86vh;}

#sliderContents .sliderCatchcopy img {
	max-width: 540px;
}
.topImageSlider {
	width: 100%;
	height: 86vh;
}
.topImageSlider div {
	height: 86vh;
}
/* !news */
.latestNews {
	background-color: #f7f7f7;
}
.latestNews .newsContainer {
    width: 94%;
    padding: 15px 15px 15px 15px;
    margin: 0 auto;
    background-color: rgba(255, 255, 255, 1);
    background-position: left center;
    outline: 3px solid #b0c0d4;
    border: 1px solid #2f377f;
}
@media (min-width: 768px) {
    .latestNews .newsContainer .imgNews {
        left: -48px;
        width: 100px;
        height: auto;
    }
    .latestNews .newsContainer dl {
        padding-left: 10px;
    }
    .latestNews .newsContainer .imgNews {
        left: -48px;
        width: 100px;
        height: auto;
    }
}

.latestNews .newsContainer .imgNews {
    position: absolute;
    top: -17px;
    left: -32px;
    width: 80px;
    height: auto;
}

.latestNews .newsContainer dl {
    vertical-align: middle;
    display: table-cell;
    width: 100%;
/*    padding: 0 10px 0 48px;*/
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}


.latestNews .newsContainer dl dt {
    font-size: 85%;
    color: #979797;
}

.latestNews .newsContainer dl dd {
    color: #333;
}

/*!Top model plan*/
.modelPlanThumb {
	max-width: 900px;
	margin: 0 auto;
	text-align: center;
}
.modelPlanThumb ul.planLists {
	width: 94%;
	margin: 0 auto;
	text-align: left;
}
.modelPlanThumb ul.planLists li {
	width: 31.5%;
	margin: 0 5px;
	display: inline-block;
}

/*!Model Plan Single*/
.mainThumb {
	height: 500px;
}
	.mainThumb img {
		height: 500px;
	}
.subThumb {
	height: 150px;
}
	.subThumb img {
		height: 150px;
	}
	.thumbTitle p{
		position: absolute;
		top: -30px;
		left: 0;
		font-size: 12px;
		height: 30px;
		line-height: 30px;
	}
h1.modelPlanTitle {
	font-size: 28px;
	max-width: 1000px;
	margin: 0 auto;
}
.modelPlanSubTitle {
	max-width: 1000px;
	margin: 0 auto;
}

/*!Model Plan Archive*/
section.modelPlanList {
	padding: 20px 0 50px;
}
.modelPlanThumb ul.planLists li.singlePage {
	width: 31.5%;
	margin: 8px 4px;
	display: inline-block;
}

/* !Review Archive*/
ul.reviewLatest,ul.modelplanLatest,ul.storyLatest,ul.reportLatest {
	text-align: left;
	width: 94%;
	margin: 0 3%;
}
li.reviewModule,li.modelplanModule,li.storyModule,li.reportModule {
	width: 31.5%;
	vertical-align: top;
	margin: 10px 3px;
}
/*!hotel*/
.hotelModule {
	width: 80%;
	padding: 15px;
	margin : 0 auto 15px;
}
.hotelModule .photoContainer span.flagName {
	font-size: 22px;
}
.detailTitle span.flag img {
	width: 20px;
}
.detailTitle span.country {
	font-size: 13px;
	padding-left: 5px;
}
.detailTitle span.location {
	font-size: 13px;
}
.mainHotelThumb {
	height: 500px;
}
	.mainHotelThumb img {
		height: 500px;
	}
.subHotelThumb {
	height: 150px;
}
	.subHotelThumb img {
		height: 150px;
	}
section.hotelDetail {
	padding: 20px 0;
}
section.hotelDetailsContainer {
	padding: 20px 0;
}
.hotelDetailsContainer .recommendMessage {
	float: right;
	width: 35%;
	margin-bottom: 0;
	min-height: 200px;
}
.amenityContainer {
	float: left;
	width: 60%;
	margin-left: 10px;
	min-height: 200px;
}
iframe {
	/* margin: 20px 0; */
	/* height: 300px; */
}
.regencyExclusive {
	float: right;
	width: 35%;
	clear: right;
}

/* !Hotel Archive*/
.archiveList {
	text-align: left;
}
.filterBtn .styleFilterAdded {
	margin: 0 auto 10px;
}
.filterBtn ul li.filterContent {
	width: 110px;
	font-size: 14px;
	margin: 0 5px;
}
li.archiveModule {
	width: 24.5%;
}
/* story */
.storyThumb ul.storyLists li {
	list-style: none;
	position: relative;
	width: 94%;
	min-height: 260px;
	margin: 0 auto 10px;
}
.storyThumb ul.storyLists li .pickUpPlan,
.storyThumb ul.storyLists li .storyModule {
	height: 180px;
}
.storyLists li .pickUpPlan img,
.storyLists li a .storyModule img {
	width: 100%;
	height: 180px;
	object-fit: cover;
}
.storyLists .titleBtn {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	z-index: 2;
	width: 100%;
	height: 180px;
	background-color: rgba(0,0,0, 0.3);
	-moz-transition: background-color 0.3s ease-in-out;
	-webkit-transition: background-color 0.3s ease-in-out;
	-o-transition: background-color 0.3s ease-in-out;
	-ms-transition: background-color 0.3s ease-in-out;
}
	.storyLists .titleBtn:hover {
		background-color: rgba(46, 55, 129, 0.9);
	}
.storyLists .titleBtn h2.storyName {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	color: #fff;
	font-weight: normal;
	font-size: 13px;
	text-align: center;
	width: 80%;
	height: 30px;
}
/* single story */
.storyTitle {
	font-size: 28px;
	max-width: 1000px;
	margin: 0 auto;
	text-align: left;
}
.storyCategory {
	display: block;
	max-width: 1000px;
	margin: 10px auto;
	text-align: left;
	border-bottom: 1px solid #ccc;
}
/* Archive story */
.storyThumb ul.storyLists li.singlePage {
	width: 31.5%;
	margin: 8px 4px;
	display: inline-block;
}
/* single report */
/* Archive report */

/*news*/
.detailImage ul li {
	width: 48%;
}

/*fb, instagram*/
.feedContent {
	margin: 20px auto;
}
.feed_dynamic_classZ_userinstagram {
	height: 300px;
}

/* !About Us*/
.teamMember li img {
	width: 80%;
	height: 80%;
	object-fit: cover;
}
.teamTab li span {
	display: block;
	font-size: 14px;
}
.teamTab li span.nameMember {
	font-size: 20px;
}
.companyInfo .sectionInner {
	max-width: 640px;
}
section.access .accessDetail {
	width: 50%;
	text-align: left;
	padding: 30px 10px 10px;
	float: left;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
	section.access iframe {
		width: 50%;
		height: 300;
		padding: 30px 0 0 10px;
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	}

#footer {
	height: 281px;
}
#footer .legalDocuments {
	padding: 10px;
}
#footer .legalDocuments ul li {
	display: inline-block;
	line-height: 20px;
	margin: 5px 10px;
}
	#footer .legalDocuments ul li:last-child {
		border-bottom: 1px dotted #9a9fa5;
	}
#footer ul.sitemap {
	font-size: 12px;
	width: calc(25% - 6px);
}
#footer ul.sitemap a:hover {
	color: #afc9dd;
}
.columnList li .columnThumb {
	width: 140px;
}
.subTitleBox {
	padding: 0 10px;
	margin: 15px auto;
}
.subTitleBox .subTitle {
	font-size: 16px;
}

.formContent {
	padding: 15px 30px 0px;
	max-width: 500px;
}
.formContent.planConts {
	padding: 5px 30px 0px !important;
	max-width: 500px;
}
.addHeight {
	margin-top: -130px;
	padding-top: 130px;
}
}
@media (min-width:900px) {
	.header nav.gnavi ul li {
		font-size: 17px;
	}
}
/* 1000px以上 */
@media (min-width: 1000px){
	.contents {
		margin-top: 126px;
	}
}
.latestNews .newsContainer p {
    vertical-align: middle;
    display: table-cell;
    width: 100%;
    padding: 0 10px 0 48px;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
}
.latestNews .newsContainer i {
    color: #2f377f;
    font-size: 196%;
    text-align: center;
    vertical-align: middle;
    display: table-cell;
    width: 15px;
}
.jpaneaselang {
	font-size: 14px;
	padding-left: 1px;
	letter-spacing: 0em !important;
}
@media (max-width: 768px) {
    .modelPlan ul.planLists {
        margin: 0 auto;
        display: block;
        text-align: center;
	}
	.header-message-sp {
		display: block;
		width: 100%;
		height: 30px;
		padding: 5px;
		text-align: center;
		/* position: fixed;
		top: 55px;
		left: 0;
		z-index: 999; */
		background-color: #29487d;
	}
	.header-message-sp a {
		line-height:30px;
		color:white;
		text-decoration:underline;
		display:block;
		overflow:hidden;
		text-overflow:ellipsis;
		white-space:nowrap;
	}
	.header-message-pc{display: none;}
}
@media (max-width: 1000px) {
	.header-message-sp {
		display: block;
		width: 100%;
		height: 30px;
		padding: 5px;
		text-align: center;
		background-color: #29487d;
	}
	.header-message-sp a {
		line-height:30px;
		color:white;
		text-decoration:underline;
		display:block;
		overflow:hidden;
		text-overflow:ellipsis;
		white-space:nowrap;
	}
	.header-message-pc{display: none;}
}

/* instagram */
.instagram-container{
	height: 298px;
}
.instagram-profile{
	border: 1px solid #ebedf0;
	/* margin-top: 20px; */
	height: 51px;
	padding: 8px;
}
.instagram-profile img{
	width: 50px;
    display: inline-block;
    border: 1px solid;
}
.instagram-profile__data{
	display: inline-block;
	vertical-align: top;
}
.instagram-profile__data a{
    color: #365899;
    display: block;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.358;
    margin-bottom: 10px;
}
.instagram-profile__data span{
	color: #1d2129;
    font-size: 12px;
    line-height: 1.358;
	display: block;
}

.instagram-timeline{
	background-color: #f5f6f7;
	display: flex;
	flex-wrap: wrap;
	padding: 8px;
	margin: 0 -1px;
	height: 215px;
	overflow-y: auto;
}

.instagram-item{
	background-color: white;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .12);
	width: 95%;
	padding: 12px 12px 0;
	margin: auto;
	margin-bottom: 16px;
}

.instagram-card__link{
	display: block;
}

.instagram-card__profile{
	margin-bottom: 11px;
}
.instagram-card__profile img{
    border-radius: 50%;
    width: 40px;
    display: inline-block;
}
.instagram-card__profile span{
    font-weight: bold;
    display: inline-block;
    vertical-align: top;

}

.instagram-card__img{
	max-width: 100%;
	height: auto;
	display: block;
}
.instagram-card__thumbnail{
	display: inline-flex;
	justify-content: stretch;
	width: 100%;
	margin-top: 5px;
}
.instagram-card__thumbnail img{
	max-width: 30%;
	height: 100px;
	margin: auto;
	display: block;
}

.instagram-card__badge{
	margin: 5px 0;
	padding-top: 5px;
	border-top: 1px solid #7f7f7f;
	display: flex;
	align-items: center;
	line-height: 1;
	font-size: 14px;
	color: #7f7f7f;
	font-weight: bold;
}
.instagram-icon{
	display: block;
	width: 20px;
	height: 20px;
}

.instagram-card__comment{
	font-size: 14px;
	border-top: 1px solid #ebedf0;
    margin-top: 5px;
    padding-top: 5px;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 15;
	overflow: hidden;
}
/* story */
.storyThumb ul.storyLists li {
	list-style: none;
	position: relative;
	width: 94%;
	min-height: 260px;
	margin: 0 auto 10px;
}
.storyLists li .pickUpPlan img,
.storyLists li a .storyModule img {
	width: 100%;
	object-fit: cover;
}
