@charset "UTF-8";

/* #### ribon ####*/
#ribon {
	width: 100%;
	background-image: url("../img/tour/con_back.jpg");
	position: relative;
}

/* puArea設定 */
.tourArea.puArea .nTitle, .optionArea.puArea .nTitle, .tfArea.puArea .nTitle {
	background: #fff1fc;
	border-left: solid 2em #ff9ee9;
}
.tourArea.puArea .nTitle:before, .optionArea.puArea .nTitle:before, .tfArea.puArea .nTitle:before {
  content: "\f058";
}

/* tourArea設定 */
.tourArea {
	width: 100%;
	box-sizing: border-box;
}
.tourArea:after {
  content: "";
  clear: both;
  display: block;
}
.tourArea .nTitle {
	background: #ebfef2;
	border-left: solid 2em #99e9b5;
	margin-bottom: 0;
}
.tourArea .nTitle:before {
  content: "\f0f2";
}

.tourArea.tIndex {
	max-width: 980px;
	margin: 0 auto;
}
.tourArea.tDetail{
	max-width: 980px;
	margin: 0 auto;
}

/* optionArea設定 */
.optionArea {
	width: 100%;
	box-sizing: border-box;
}
.optionArea:after {
  content: "";
  clear: both;
  display: block;
}
.optionArea .nTitle {
	background: #ffe7da;
	border-left: solid 2em #f4ae88;
}
.optionArea .nTitle:before {
  content: "\f207";
}
.optionArea.tIndex {
	margin: 0 auto;
}
.optionArea.tDetail{
	max-width: 980px;
	margin: 0 auto;
}

/* tfArea設定 */
.tfArea {
	width: 100%;
	box-sizing: border-box;
}
.tfArea:after {
  content: "";
  clear: both;
  display: block;
}
.tfArea .nTitle {
	background: #eeeeee;
	border-left: solid 2em #cccccc;
}
.tfArea .nTitle:before {
  content: "\f5de";
}
.tfArea.tIndex {
	margin: 0 auto;
}
.tfArea.tDetail{
	max-width: 980px;
	margin: 0 auto;
}

/* ## tour list ## */
.tlBox {
	width: 25%;
	box-sizing: border-box;
	margin-bottom: 14px;
	padding: 10px 24px 10px 24px;
	float: left;
}
.tlBox a {
	width: 100%;
	box-sizing: border-box;
	display: block;
}
.tlBox .boxF {
	width: 100%;
	box-sizing: border-box;
	padding-bottom: 14px;
	position: relative;
}

.tlBox .boxF .imgBox {
	width: 100%;
	box-sizing: border-box;
	border: solid 5px #3cd8aa;
	border-radius: 50%;	
   padding: 48%;
	overflow: hidden;
	position: relative;
	z-index: 1;
}
.tlBox.osBox .boxF .imgBox {
	border: solid 5px #f4ae88;
}
.tlBox.tfBox .boxF .imgBox {
	border-radius: 18px;	
	border: solid 5px #545454;
}
.tlBox a .boxF .imgBox img {
	width: 100%;
	box-sizing: border-box;
	vertical-align: bottom;
	margin: 0 auto;
	position: absolute;
	top: 0;
	left: 0;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.tlBox .boxF .tDate {
	width: 100%;
	box-sizing: border-box;
	text-align: center;
	font-size: 11px;
	font-weight: bold;
	position: absolute;
	bottom: 10px;
	left: 0;
	z-index: 2;
}
.tlBox .boxF .tDate span {
	color: #ffffff;
	background-color: #3cd8aa;
	padding: 5px 14px;
}
.tlBox.osBox .boxF .tDate {
	font-size: 14px;
}
.tlBox.osBox .boxF .tDate span {
	background-color: #f4ae88;
}
.tlBox.tfBox .boxF .tDate span {
	background-color: #545454;
}

.tlBox h4 {
	width: 100%;
	box-sizing: border-box;
	color: #106ab5;
	line-height: 1.3;
	font-size: 16px;
}
.tlBox a h4 {
	color: #106ab5;
}
.tlBox a .tisPrice {
	color: #ff244d;
}
.tlBox .tmTag {
	margin-bottom: 8px;
}
.tlBox .tmTag li {
	font-size: 10px;
	border-radius: 10px;
/*	border: solid 1px #106ab5;*/
	color: #ffffff;
	background-color: #106ab5;
	margin-right: 2px;
	padding: 2px 14px;
	display: inline-block;
}

/* 国タグ */
.tlBox .tagCtr {
	color: #f8941f;
	font-size: 11px;
	border: solid 1px #f8941f;
	background-color: #ffffff;
	padding: 2px 14px;
	position: absolute;
	right: 0;
	top: 24px;
}
/* 国タグ(Optional) */
.tlBox.osBox .tagCtr {
	right: 0;
	top: 14px;
	z-index: 2;
}

/* ## tour list large ## */
.tlBox.large {
	width: 100%;
	box-sizing: border-box;
	border-bottom: solid 1px #eeeeee;
	margin-bottom: 0;
	padding: 0;
	float: none;
}
.tlBox.large:first-child {
	border-top: solid 1px #eeeeee;
}

.tlBox.pickUp {
}
.tlBox.pickUp .boxF .imgBox {
	animation: flash 3s linear infinite;
	border: solid 5px #ff0072;
}
@keyframes flash {
  0%,100% {
	border: solid 5px #ff0072;
  }

  50% {
	border: solid 5px #ffd8f1;
  }
}
.tlBox.pickUp .boxF .tDate span {
	background: rgb(212,143,57); /* Old browsers */
	background: -moz-linear-gradient(-45deg, rgb(212,143,57) 1%, rgb(207,106,95) 50%, rgb(203,28,127) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(-45deg, rgb(212,143,57) 1%,rgb(207,106,95) 50%,rgb(203,28,127) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(135deg, rgb(212,143,57) 1%,rgb(207,106,95) 50%,rgb(203,28,127) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d48f39', endColorstr='#cd1c65',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}

.tlBox.large a {
	width: 100%;
	box-sizing: border-box;
	padding: 24px 0;
	display: block;
}
.tlBox.large a:after {
  content: "";
  clear: both;
  display: block;
}
.tlBox.large .boxF {
	width: 20%;
	box-sizing: border-box;
	padding-bottom: 14px;
	float: left;
	position: relative;
}
.tlBox.large .boxS {
	width: 80%;
	box-sizing: border-box;
	padding: 0 14px 0 24px;
	float: left;
}

.tlBox.large h4 {
	font-size: 28px;
	line-height: 1.3;
	margin-bottom: 10px;
}
.tlBox.large .tiPrice {
	font-size: 18px;
	font-weight: bold;
	color: #ff244d;
	margin-bottom: 10px;
}
.tlBox.large .tiTex {
}

/* more button設定 */
#tlMore.nButton.more a {
	color: #3cd8aa;
	border: solid 1px #3cd8aa;
}
#tlMore.nButton.more a:hover {
	color: #ffffff;
	background-color: #3cd8aa;
}
#opMore.nButton.more a {
	color: #f4ae88;
	border: solid 1px #f4ae88;
}
#opMore.nButton.more a:hover {
	color: #ffffff;
	background-color: #f4ae88;
}
#tfMore.nButton.more a {
	color: #545454;
	border: solid 1px #545454;
}
#tfMore.nButton.more a:hover {
	color: #ffffff;
	background-color: #545454;
}

/* ## tour/detail.php ## */
/* tag */
.ctrTag {
	width: 100%;
	box-sizing: border-box;
	height: 40px;
	background-color: #D8A314;
	line-height: 40px;
	margin: 0 auto 15px auto;
	padding: 4px 0;
	text-align: center;
	position: relative;
}
.ctrTag:before{
	content: '';
	width: 0px;
	height: 0px;
	border-width: 20px 0px 20px 10px; 
	border-color: transparent transparent transparent #fff;
	border-style: solid;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
.ctrTag:after{
	content: '';
	width: 0px;
	height: 0px;
	border-width: 20px 10px 20px 0px; 
	border-color: transparent #fff transparent transparent ;
	border-style: solid;
	position: absolute;
	top:0;
	right: 0;
	z-index: 1;
}
.ctrTag span {
	color:#fff;
	height: 32px;
	font-size: 14px;
	line-height: 32px;
	border-top:1px dashed rgb(220,220,220);
	border-bottom:1px dashed rgb(220,220,220);
	margin:0;
	padding:0 10px;
	box-sizing: border-box;
	display: block;
}

.tdBox.tdTitle h3 {
	color: #106ab5;
	font-weight: bold;
	font-size: 32px;
	line-height: 1.2;
	margin: 15px 0;
}
.tdBox.tdTitle .price {
	color: #ff244d;
	font-weight: bold;
	font-size: 24px;
	margin-bottom: 10px;
	text-align: right;
}

/* コンテンツタイトル部分 */
.tdcTitle {
	font-size: 20px;
	font-weight: bold;
	color: #ffffff;
	background-color: #009001;
	border-radius: 8px;
	margin-top: 8px;
	margin-bottom: 20px;
	cursor: pointer;
	padding: 10px 0 10px 14px;
	position: relative;
	clear: both;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.tdMain {
	padding: 14px 0;
}

/* 日程表 */
.scheBox {
	font-family: メイリオ, Meiryo, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', 游ゴシック体, 'Yu Gothic', YuGothic, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	background-color: #fcfcfc;
	border: solid 1px #cccccc;
	border-radius: 8px;
	margin-bottom: 24px;
	padding: 0 0 8px 0;
}
.cdbBox.scheBox .dayBox {
	padding: 4px 10px 8px 10px;
}
.cdbBox.scheBox .scheTitle {
	font-size: 14px;
	font-weight: bold;
	margin-bottom: 5px;
}
.cdbBox.scheBox .scheTitle span.time {
	width: 70px;
	font-size: 11px;
	color: #ffffff;
	text-align: center;
	background-color: #aaaaaa;
	border-radius: 4px;
	font-weight: normal;
	margin-right: 8px;
	margin-bottom: 4px;
	padding: 3px 4px;
	display: inline-block;
}
.cvName {
	color: red;
}
.cdbBox.scheBox .sDay {
	font-weight: bold;
	background-color: #e4e4e4;
	border-top: solid 1px #cccccc;
	border-bottom: solid 1px #cccccc;
	margin-bottom: 10px;
	padding: 4px 14px;
}
.cdbBox.scheBox .sDay.first {
	border-top: none;
	border-top-right-radius: 8px;
	border-top-left-radius: 8px;
}
.cdbBox.scheBox .sCity {
	text-align: right;
	padding-right: 8px;
}

/* optional tour */
.responsive .tlBox {
	width: 100%;
}

.single-item {
	max-width: 980px;
}
.single-item img {
}
.tpTitle {
	font-size: 18px;
	margin-bottom: 10px;
}
	
/* ## entry.php ## */
.baseBox .inner.tContact {
	max-width: 780px;
}
.tContact .intro {
	font-size: 16px;
	font-weight: bold;
	line-height: 2;
	margin: 44px 0;
}

/*日程表共通*/
table.tTable {
	border-collapse: collapse;
}
table.tTable th {
	padding: 10px;
	border: solid 1px #A1A1A1;
	background-color: #E7E7E7;
}
table.tTable td {
	padding: 10px;
	border: solid 1px #A1A1A1;
}
table.tTable td,table.tTable th {
	padding: 10px;
	
}
table.tTable {
	margin: 10px 0;
}



/* #### width 359px以下の場合の設定 (for SP Only) #### */
@media (max-width: 359px) {

.tlBox {
	height: 204px;
}
.tlBox h4 {
	font-size: 12px;
}
	
}

/* #### width 360px～500pxの場合の設定 (for SP Wide Only) #### */
@media (min-width: 360px) and (max-width: 500px) {

.tlBox {
	height: 244px;
}
.tlBox h4 {
	font-size: 12px;
}

}

/* ## width 501px～767pxの場合の設定 (for Tub Only) ## */
@media (min-width: 501px) and (max-width: 767px) {

/* ## index.php ## */
.tlBox {
	height: 388px;
}
.tlBox h4 {
	font-size: 13px;
}
	
}

/* #### width 767px 以下の場合の設定 (for All Mobile Dvices) #### */
@media (max-width: 767px) {

/* ## tour list ## */
.tlBox {
	width: 50%;
	margin-bottom: 8px;
	padding: 8px;
}
.tIndex .tlBox {
	height: auto;
}
.tlBox h4 {
	line-height: 1.2;
}
	
.tlBox .boxF .tDate span {
	padding: 3px 10px;
}
	
.tlBox.osBox .boxF .tDate {
	font-size: 12px;
}

/* 国タグ */
.tlBox .tagCtr {
	color: #f8941f;
	font-size: 10px;
	background-color: #ffffff;
	padding: 1px 10px;
	top: 14px;
}
	
/* ## tour list large ## */
.tlBox.large a {
	padding: 18px 0;
}
.tlBox.large .boxF {
	width: 100%;
	max-width: 294px;
	margin: 0 auto;
	padding: 0 18px 14px 18px;
	float: none;
}
.tlBox.large .boxS {
	width: 100%;
	padding: 0;
	float: none;
}

.tlBox.large h4 {
	font-size: 18px;
	line-height: 1.3;
	margin-bottom: 4px;
}
.tlBox.large .tiPrice {
	font-size: 14px;
	margin-bottom: 4px;
}
.tlBox.large .tiTex {
}
	
/* ## tour/detail.php ## */
/* コンテンツタイトル部分 */
.tdcTitle {
	font-size: 14px;
	border-radius: 0;
	margin-top: 0;
	margin-bottom: 14px;
	padding: 10px 0 10px 14px;
}
.tdcTitle:active {
	opacity: 0.84;
}
.tdcTitle.active:after {
	width: 0;
	border-top: 12px solid #009001;
	border-right: 10px solid transparent;
	border-left: 10px solid transparent;
	border-bottom-width: 0;
	bottom: -12px;
	content: "";
	display: block;
	left: 48%;
	position: absolute;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
.tdcTitle:before {
	font-family: "Font Awesome 5 Free";
	content: "\f078";
	position: absolute;
	right: 14px;
}
.tdcTitle.active:before {
	font-family: "Font Awesome 5 Free";
	content: "\f077";
	position: absolute;
	right: 14px;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
.tdBox.tdTitle h3 {
	font-size: 22px;
	margin: 12px 0;
}
.tdBox.tdTitle .price {
	font-size: 16px;
	margin-bottom: 4px;
}
	
.ctrTag span {
	font-size: 11px;
	border-top:1px dashed rgb(220,220,220);
	border-bottom:1px dashed rgb(220,220,220);
	margin:0;
	padding:0 8px;
}	
	
/* 日程表 */
.cdbBox.scheBox .dayBox {
	padding: 4px 8px 4px 8px;
}
.cdbBox.scheBox .scheTitle {
	font-size: 11px;
	margin-bottom: 4px;
}
.cdbBox.scheBox .scheTitle span.time {
	width: 64px;
	font-size: 10px;
	margin-right: 4px;
	margin-bottom: 4px;
	padding: 2px 4px;
}
.cdbBox.scheBox .sDay {
	margin-bottom: 4px;
	padding: 4px 10px;
}
.cdbBox.scheBox .sCity {
	padding-right: 0;
}
	
/* scroll部分 */
#scrollNav2	{
	display: none;
}
hr.ajHeight2 {
	display: none;
}
	
.tdMain {
	padding: 4px 14px 10px 14px;
	display: none;
}

/* ## entry.php ## */
.tContact .intro {
	font-size: 14px;
	line-height: 1.8;
	margin: 24px 0;
}
	
}


/* #### width 768px 以上の場合の設定 (for PC) #### */
@media (min-width: 768px) {


	
.tourArea, .optionArea, .tfArea {
	padding-right: 14px;
	padding-left: 14px;
	position: relative;
}
.tourArea.tIndex {
}

/* ## tour list ## */
.tlBox a:hover .boxF .imgBox {
	overflow: hidden;
}
.tlBox a:hover .boxF .imgBox img {
	opacity: 0.64;
	-webkit-transform:perspective(0);
	-webkit-transition: -webkit-scale 1.08;
	-moz-transform: scale(1.08);
	-o-transform: scale(1.08);
	-ms-transform: scale(1.08);
	transform: scale(1.08);
}
	
/* ## tour list large ## */
.tlBox.large a {
	padding: 20px 0;
}
.tlBox.large h4 {
	font-size: 24px;
	line-height: 1.3;
	margin-bottom: 8px;
}
.tlBox.large .tiPrice {
	font-size: 16px;
	margin-bottom: 8px;
}
.tlBox.large .boxF {
	width: 26%;
	padding-bottom: 0;
}
.tlBox.large .boxF .tDate {
	bottom: 4px;
}
.tlBox.large .boxS {
	width: 74%;
	padding: 0 14px 0 24px;
}
.tlBox.large a:hover h4 {
	text-decoration: underline;
}
.tlBox .boxF .tDate span {
	padding: 5px 8px;
}

/* option */
.tlBox.osBox {
	height: 274px;
}
	
/* ## tour/detail.php ## */
	
.tdWrapp {
}
.tdWrapp:after {
  content: "";
  clear: both;
  display: block;
}
/* コンテンツタイトル部分 */
.tdcTitle:after {
	width: 0;
	border-top: 12px solid #009001;
	border-right: 10px solid transparent;
	border-left: 10px solid transparent;
	border-bottom-width: 0;
	bottom: -12px;
	content: "";
	display: block;
	left: 48%;
	position: absolute;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
.tdcTitle.active:after {
	display: none;
}
.tdcTitle.active:before {
	font-family: "Font Awesome 5 Free";
	content: "\f078";
	position: absolute;
	top: 14px;
	right: 14px;
}
.tdcTitle:before {
	font-family: "Font Awesome 5 Free";
	content: "\f077";
	position: absolute;
	top: 14px;
	right: 14px;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
.tdcTitle:hover {
	opacity: 0.84;
}
/* scroll部分 */
#scrollNav2	{
	width: 100%;
	box-sizing: border-box;
	height: 50px;
	padding: 5px 0;
}
#scrollNav2 ul	{
	width: 100%;
	max-width: 950px;
	box-sizing: border-box;
	box-shadow: 1px 1px 2px rgba(68,68,68,0.84);
	height: 40px;
	border-radius: 14px;
	color: #ffffff;
	margin: 0 auto;
	overflow: hidden;
}
#scrollNav2.scfixed {
	width: 100%;
	margin: 0 auto;
	padding-right: 14px;
	padding-left: 14px;
	position: fixed;
	top: 42px;
	left: 0;
	z-index: 997;
}
#scrollNav2.scfixed ul {
	width: 100%;
	max-width: 950px;
	margin: 0 auto;
}	
#scrollNav2 ul li	{
	width: 25%;
	box-sizing: border-box;
	float: left;
}
#scrollNav2 ul li	a {
	width: 100%;
	box-sizing: border-box;
	height: 40px;
	color: #ffffff;
	border-right: solid 1px #888888;
	text-align: center;
	background-color: #999999;
	padding: 10px;
	display: block;
}
#scrollNav2 ul li:last-child	a {
	border-right: none;
}
#scrollNav2 ul li	a:hover {
	background-color: #888888;
	text-decoration: none;
}
hr.ajHeight2 {
   border-width: 0 0 0 0;	/* 太さ */
   border-style: none;		/* 線種 */
   border-color: transparent;		/* 線色 */
   height: 0;				/* 高さ */
   margin: 0;
}

.single-item img {
    height: auto;
    max-width: 100%;
	 margin: 0 auto;
}
	
}

/* #### width 980px 以上の場合の設定 #### */
@media (min-width: 980px) {
	
/* ## tour list large ## */
.tlBox.large a {
	padding: 24px 0;
}
.tlBox.large h4 {
	font-size: 28px;
	margin-bottom: 10px;
}
.tlBox.large .tiPrice {
	font-size: 18px;
	margin-bottom: 10px;
}
.tlBox.large .boxF {
	width: 22%;
}
.tlBox.large .boxS {
	width: 78%;
	padding: 0 14px 0 24px;
}
.tlBox .boxF .tDate span {
	padding: 5px 12px;
}
	
/* option */
.tlBox.osBox {
	height: 314px;
}
	
}


/* #### width 1200px 以上の場合の設定 #### */
@media (min-width: 1200px) {

.tourArea, .optionArea, .tfArea {
	padding-right: 0;
	padding-left: 0;
}
	
/* ## index.php ## */

/* option */
.tlBox.osBox {
	height: 334px;
}
	
/* ## tour list large ## */



}