/************************************************************
 *   オプショナルCSS
 ************************************************************/
 body{
	/*スマホで勝手に文字が大きくなる対策*/
	-webkit-text-size-adjust: 100%;
}
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {
	overflow: hidden; /*デザイン時のみ使用 */
	display: inline-table;
}
/* Hides from IE-mac \*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }
li {
	list-style-type: none;
}
h1,h2,h3,h4,h5 {
	font-size:100%;
}
img {
	vertical-align: bottom;
	border:0px;
}
*{
	margin: 0px;
	padding: 0px;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
p,span{ font-size:12px;}
#container {
	width:100% !important;
	margin: 0px auto;
	padding: 0  !important;
	
}
#main {
	width: 100%;
	background-color: #FFF;
}
#main_head_grp h2 img {
    height: 100%;
    width: 100%;
}
.smp_cont{
display:none;
}
#header2{
	display:none;
	}
/*--------------------------------------------------*
 *   トピックパス
 *--------------------------------------------------*/
#topicpath {
	font-size: 15px;
	line-height: 1.0em;
	background-color: #CC0001;
	color: #FFF;
	padding: 8px 10px;
}
#topicpath a {
	color: #FEF268;
}
#topicpath a:hover {
	color: #FFF;
}
#topicpath span {
	padding: 0px 4px;
}

/*--------------------------------------------------*
 *   ヘッド部分
 *--------------------------------------------------*/

#main_head_grp {
	width: 100%;
/*	border-top: 4px solid #E1354D;*/
	background-color: #FFF;
}
#main_head_grp .above {
/*	width: 95%;*/
	/*padding: 15px 10px 5px 15px;*/
}
#main_head_grp .above p.logo {
	text-align:center;
/*	width: 200px;
	float: left;*/
}
#main_head_grp .above .search {
	width: 100%;
/*	padding-top: 12px;*/
}
#main_head_grp .above .search .keyword {
	display: none;
}
/*#main_head_grp .above .search .keyword p.waku {
	width: 194px;
	height: 25px;
	float: left;
	border: 3px solid #E1354D;
}
#main_head_grp .above .search .keyword p.waku input {
	width: 184px;
	height: 25px;
	border: none;
	line-height: 25px;
	padding-left: 10px;
	font-size: 15px;
}
#main_head_grp .above .search .keyword p.button {
	width: 50px;
	float: right;
}
#main_head_grp .above .search .keyword p.button a:hover img {
	opacity:0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";  /* ie 8 */
	/*-moz-opacity:0.7;      */           /* FF lt 1.5, Netscape */
	/*-khtml-opacity: 0.7;   */           /* Safari 1.x */
/*}*/
#main_head_grp .above .search ul {
	text-align: right;
	letter-spacing: -.40em;
	/*padding-top: 8px;*/
}
#main_head_grp .above .search ul li {
	display: inline-block;
	/display: inline;
	/zoom: 1;
	padding-left: 20px;
	padding-right: 12px;
	vertical-align: top;
	letter-spacing: normal;
	font-size: 15px;
	background-image: url(../img-top/icon_arrow.gif);
	background-repeat: no-repeat;
	background-position: right center;
}
#main_head_grp .above .search ul li a {
	color: #0066CB;
	text-decoration: none;
}
#main_head_grp .above .search ul li span {
	color: #333;
	padding-left: 10px;
}
#main_head_grp .above .search ul li a:hover {
	opacity:0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";  /* ie 8 */
	-moz-opacity:0.7;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.7;              /* Safari 1.x */
}

/*--------------------------------------------------*
 *   大枠
 *--------------------------------------------------*/
#main_content {
	width: 100%;
	margin: 0px auto;
	font-size: 14px;
	/* line-height: 1.4em;*/ 
	color: #333;
	padding-bottom: 30px;
}
#main_content p.img_bottom {
font-size: 0px;
}
.box .img_bottom {
    line-height: 0;
}
.op_category p.img_bottom,.op_wedding p.img_bottom{
    display: none;
}
/*#main_content h3 {
	margin-top: 0px;
	background: none;
	height: auto;
}*/
#main_content h3.lead {
	font-size: 18px;
	line-height: 1.5em;
	font-weight: bold;
	margin-top: 15px;
	text-align: center;
	padding: 0 10px;
}
#main_content h3.lead span {
	font-size: 1.5rem;
	color: #FF3334;
	padding-left: 5px;
	padding-right: 5px;
	display:block;
}
/*20190708追加*/
div.lead{
	padding: 10px;
    font-size: 3vw;
	line-height: 160%;
}

/*--------------------------------------------------*
 *   オプショナルメニュー
 *--------------------------------------------------*/
#main_content .optional_menu ul{
    display: flex;
    align-items: center;
}
#main_content .optional_menu ul li{
    border: solid 2px #F21F4D;
    align-items: center;
    width: 87%;
   /* margin-left: 2%;*/
    margin: 0 auto;
}
#main_content .optional_menu ul li a{
    display: block;
    color: #F21F4D;
    padding: 5px;
    font-weight: bold;
    text-decoration: none;
    position: relative;
}
#main_content .optional_menu ul li a::before{
content: "";
    width: 8px;
  height: 8px;
  border: 2px solid;
  border-color: #F21F4D #F21F4D transparent transparent;
  transform: rotate(45deg);
  position: absolute;
  top: 40%;
  right: 5%;
}
#main_content .optional_menu ul li img{
    vertical-align: middle;
    width: 40px;
}
#main_content .optional_menu ul li span{
    display: flex;
    align-items: center;
    font-size: 4vw;
}
#main_content .optional_menu ul li:nth-child(4) span{
    font-size: 3.8vw;
}
.bt_ranking_more {
    margin: 0 15px;
}
/*--------------------------------------------------*
 *   オプショナルメイン
 *--------------------------------------------------*/
#wrapper {
	width: 100%;
	margin: 10px auto 0px auto;
}
#wrapper a:hover {
	opacity:0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";  /* ie 8 */
	-moz-opacity:0.7;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.7;              /* Safari 1.x */
}
#wrapper a:hover img {
	opacity:0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha(opacity=80)";  /* ie 8 */
	-moz-opacity:0.8;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.8;              /* Safari 1.x */
}
#optional_main {
	width: 100%;
	margin-bottom: 20px;
}
#optional_main .photo_block {
	width: 100%;
/*	background-color: #F0F0F0;*/
	padding: 10px 0px 0px;
}
#optional_main .photo_block .box {
	width: 95%;
	border: 1px solid #CCC;
	margin: 10px auto;
	background-color: #FFF;
}
#optional_main .photo_block .box a {
	text-align:center;
	display: block;
	color: #333;
	text-decoration: none;
}
.ranking_block .box img {
	height: auto;
    width: 100%;

}
.photo_block .box img {
	    height: 100%;
    width: 100%;
	}
#optional_main .photo_block .box .memo {
	display: block;
	font-size: 15px;
	padding: 10px 10px 0px 10px;
	min-height: 70px;
	text-align:left;
}
#optional_main .photo_list1 {
	width: 100%;
/*	background-color:  #F0F0F0;*/
/*	margin-top: 5px;*/
	overflow: visible;
}
#optional_main .photo_list1 .bxBase{
	padding:1% 1.5%;
}
#optional_main .photo_list1 li {
	border-bottom: 1px solid #ccc;
	background: #fff;
	padding: 2%;
}
.photo-img{
	display:block;
    height: 100%;
    overflow: hidden;
    position: relative;
    max-width: 100%;
	}
.photo-img img{
	 height: auto !important;
/*    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);*/
    width: 100% !important;
	}
.photo-img-s{
	display:block;
/*    height: 130px;*/
    overflow: hidden;
    position: relative;
    width: 190px;
	}
.photo-img-s img{
	 height: auto !important;
/*    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);*/
    width: 100% !important;
	}
#optional_main .photo_list1 .newslid {
    background-color: #fff;
    border-bottom: medium none;
    display: table;
	/*margin-bottom:10px;*/
/*    height: 133px;*/
    text-align: center;
    vertical-align: middle;
/*    width: 220px;*/
}
#optional_main .photo_list1 li a {
	display: block;
	color: #333;
	text-decoration: none;
}
#optional_main .photo_list1 li .photo-img-s{
	display: table-cell;
    overflow: hidden;
    position: relative;
	    vertical-align: top;
    width: 23%;
	}
#optional_main .photo_list1 li .memo {
	display: table-cell;
	background-color: #FFF;
	    vertical-align: top;
	padding: 0.5% 1%;
	width:57%;
	text-align:left;
	font-size: 13px !important;
}
.new-op-tour {
    background: #ffe9e9;
	 border: 1px solid #c00;
    border-top: 5px solid #c00;
    margin: 5px 10px 10px;
}
.op-tour-grp {
    background: #faeedc;
    border: 1px solid #F90;
    border-top: 5px solid #F90;
    margin: 5px 10px 10px;
}
/*--------------------------------------------------*
 *   オプショナルツアー売れ筋ランキング/満足度ランキング
 *--------------------------------------------------*/
#optional_main .ranking_block {
	/*width: 100%;*/
	/*margin-top: 12px;*/
	margin: 12px 10px;
}
#optional_main .ranking_block .box_a {
	display: block;
	width: 100%;
}
#optional_main .ranking_block .box_b {
	margin-top: 10px;
	width: 100%;
}
#optional_main .ranking_block .box_a .inner {
	width: 100%;
	background-image: url(../img-top/frame_ranking_middle_a.gif);
	background-repeat: repeat-y;
	padding: 0px;
	background-size: contain;
}
#optional_main .ranking_block .box_b .inner {
	width: 100%;
	background-image: url(../img-top/frame_ranking_middle_b.gif);
	background-repeat: repeat-y;
	padding: 0px;
	background-size: contain;
}

#optional_main .ranking_block .inner > ul {
    padding: 0 11px;
}
#optional_main .ranking_block .box .inner ul li {
	border-top: 1px dotted #999;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-right: 10px;
}
#optional_main .ranking_block .box .inner ul li:first-child {
	border-top: none;
	padding-top: 5px;
}
#optional_main .ranking_block .box .inner ul li a {
	color: #333;
	text-decoration: none;
	padding-right: 10px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 1; /* ここを2や3に変更することで、行数を指定 */
  max-height: calc(1.5em * 1);
}
#optional_main .ranking_block .box .inner ul li.no1 {
	background-image: url(../img-top/icon_no1.gif);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 40px;
}
#optional_main .ranking_block .box .inner ul li.no2 {
	background-image: url(../img-top/icon_no2.gif);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 40px;
}
#optional_main .ranking_block .box .inner ul li.no3 {
	background-image: url(../img-top/icon_no3.gif);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 40px;
}
#optional_main .ranking_block .box .inner p.bt_ranking_more {
	padding-top: 5px;
}

/*--------------------------------------------------*
 *   オプショナル最新情報
 *--------------------------------------------------*/
#optional_main .new_info {
	width: 100%;
	margin-top: 15px;
	padding-bottom: 5px;
}
#optional_main .new_info .frm_top {
	display:none;
}
#optional_main .new_info .frm_bottom {
	display:none;
}
#optional_main .new_info .frm_middle {
    border: 5px solid #b4e3f7;;
    border-radius: 5px;
    padding-bottom: 5px;
/*    width: 97%;*/
	margin:0 10px;
	padding-top: 10px;
}
#optional_main .new_info .frm_middle h3 {
	background-image: url(../img-top/icon_new_info.gif);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 32px;
	margin-left: 15px;
	font-size: 22px;
	line-height: 1.2em;
	font-weight: bold;
}
#optional_main .new_info .frm_middle ul {
    padding: 7px 10px 0;
    width: 95%;
}
#optional_main .new_info .frm_middle ul li {
	padding: 5px 0px;
	border-bottom: 1px dotted #999;
}
#optional_main .new_info .frm_middle ul li img {
	padding-right: 10px;
}
#optional_main .new_info .frm_middle ul li a {
	display: block;
	color: #333;
	text-decoration: none;
}
#optional_main .new_info .frm_middle p.bt_info_more {
	padding-top: 14px;
	text-align: center;
}


#optional_main .new_info .frm_middle p.bt_info_more > a,
#info_more > a{
    background: #fedfdd none repeat scroll 0 0;
    border-radius: 6px;
    box-shadow: 3px 3px 0.1px #ffbdb9;
    display: block;
    margin: 0 20px 5px;
    padding: 10px;
	font-weight: bold;
	color:#ff6666;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;

}
/*--------------------------------------------------*
 *   タイトル
 *--------------------------------------------------*/
#optional_main h3.ttl_optional {
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 32px;
	font-size: 18px;
	line-height: 1.2em;
	font-weight: bold;
	padding-right:10px;
	margin-top: 20px;
}
#optional_main h3.ttl_guide {
	background-repeat: no-repeat;
	background-position: left center;
	line-height: 1.3em;
	padding-left:10px;
	margin-top: 30px;
}
#optional_main h3.ttl_guide img,
#optional_main h3.ttl_kuchikomi img{
	max-width:100%;
	}
#optional_main h3.ttl_kuchikomi {
	background-repeat: no-repeat;
	background-position: left center;
	line-height: 1.3em;
	font-weight: bold;
	padding-left:10px;
	margin-top: 30px;
	}
/*--------------------------------------------------*
 *   オプショナルツアー
 *--------------------------------------------------*/
#optional_main .photo_list2 {
	width: 100%;
	overflow: visible;
	padding-left: 5px;
	margin: 10px auto;
	width: 95%;
}
#optional_main .photo_list2 li {
	width: 216px;
	padding-right: 4px;
}
#optional_main .photo_list2 li img {
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	-o-border-radius: 10px;
	-ms-border-radius: 10px;
	border-radius: 10px;
	margin:0 auto;
	position: relative;
}

.bxslider2 a {
    background: #f0f0f0;
    border-radius: 10px;
    display: table-cell;
    height: 160px;
    text-align: center;
    vertical-align: middle;
    width: 216px;
}

/*--------------------------------------------------*
 *   オプショナル完全ガイド（体験レポート）
 *--------------------------------------------------*/
#optional_main .report_block {
	width: 100%;
	margin-top: 10px;
	background-color: #ade9a8;
	padding: 10px 0px;
}
#optional_main .report_block ul {
	width: 100%;
	margin: 0px auto;
}
#optional_main .report_block ul li {
/*	width:100%;*/
/*	padding: 0px 3px;*/
	 margin: 0 10px;
}
#optional_main .report_block ul li .frm_top {
	display:none;
}
#optional_main .report_block ul li .frm_bottom {
display:none;
}
#optional_main .report_block ul li .frm_middle {
    border: 1px solid #ccc;
    border-radius: 10px;
    padding: 8px;
    width: 90%;
    margin: 5px auto;
    background-color: #fff;
}

#optional_main .report_block ul li .frm_middle .photo > img {
    height: 100%;
    width: 100%;
}
#optional_main .report_block ul li .frm_middle p.photo {
	    text-align: center;
    float: left;
    width: 120px;
    margin: 5px 10px 0 0;
    position: relative;
}
#optional_main .report_block ul li .frm_middle p.photo .date{
    padding: 3px 7px;
    background: #FF8D00 !important;
    color: #FFF;
    display: block;
}
#optional_main .report_block ul li .frm_middle .high {
	margin-top: 8px;
/*	min-height: 150px;*/
}
#optional_main .report_block ul li .frm_middle .high p.title {
	font-size: 16px;
	line-height: 1.2em;
	font-weight: bold;
}
#optional_main .report_block ul li .frm_middle .high p.memo {
	padding-top: 5px;
}
#optional_main .report_block ul li .frm_middle .high p.continue {
	text-align: right;
}
#optional_main .report_block ul li .frm_middle .high p.continue a {
	color: #0066CB;
}
#optional_main .report_block ul li .frm_middle .low {
	margin-top: 10px;
	min-height: 90px;
}
#optional_main .report_block ul li .frm_middle .low p.notice {
	font-size: 13px;
	line-height: 1.3em;
}
#optional_main .report_block ul li .frm_middle .low p.star a {
	color: #0066CB;
	text-decoration: none;
}
#optional_main .report_block ul li .frm_middle .low p.star img {
	vertical-align: baseline;
}
#optional_main p.bt_report_more {
	text-align: right;
	padding-top: 10px;
	padding-right: 10px;
}

/*--------------------------------------------------*
 *   オプショナルツアー口コミ情報
 *--------------------------------------------------*/
#optional_main .review_block {
	width: 100%;
	background:#fad1a5;
}
#optional_main .review_block ul {
	width: 100%;
	margin: 0px auto;
}
#optional_main .review_block ul li {
    width: 95%;
    /* float: left; */
    /* padding: 0px 0 0 5px; */
    border: 1px solid #ccc;
    margin: 10px auto;
}
/*20160704追加*/
.review_block .photo {
/*border: 1px solid #ccc; */*/
    border-bottom: none;
    text-align: center;
    height: 100% !important;
    width: 100% !important;
    /* display: table-cell; */
    vertical-align: middle;
    background-color: #eee;
    position: relative;
}
.review_block .photo img{
	width:100%!important;
	}
.review_block .photo .date{
    padding: 3px 7px;
    background: #FF8D00 !important;
    color: #FFF;
    display: block;
}
/*/20160704追加*/
#optional_main .review_block ul li .frm_bottom {
	display:none;
}
#optional_main .review_block ul li .frm_middle {
    /* width: 90%; */
    padding: 10px 7px 0px 6px;
	background:#fff;
    /* border: 1px solid #ccc; */
}
.review_block .photo .photo-img-m{
	display:block;
    height: 160px;
    overflow: hidden;
    position: relative;
max-width: 100%;
	}
.review_block .photo .photo-img-m img{
	 height: auto;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
    width: 100%;
	}
#optional_main .review_block ul li .frm_middle .high {
	border-bottom: 1px dotted #999;
/*	min-height: 140px;*/
}
#optional_main .review_block ul li .frm_middle .high p.title {
	font-weight: bold;
	font-size: 1.05em;
}
#optional_main .review_block ul li .frm_middle .high p.memo {
	padding-top: 5px;
}
#optional_main .review_block ul li .frm_middle .high p.continue {
	text-align: right;
}
#optional_main .review_block ul li .frm_middle .high p.continue a {
	color: #0066CB;
}
#optional_main .review_block ul li .frm_middle .low {
	margin-top: 10px;
	padding-bottom:5px;
}
#optional_main .review_block ul li .frm_middle .low p.notice {
	font-size: 13px;
	line-height: 1.3em;
}
#optional_main .review_block ul li .frm_middle .low p.star a {
	color: #0066CB;
	text-decoration: none;
}
#optional_main .review_block ul li .frm_middle .low p.star img {
	vertical-align: baseline;
}
#optional_main p.bt_review_more {
	text-align: right;
	padding-top: 10px;
	padding-right: 10px;
	margin-bottom: 20px;
}
#optional_main .side_banner {
	width:90%;
	margin:10px auto;
}

#optional_main .side_banner > a {
    display: block;
}
#optional_main .side_banner img{
	max-width:100%;
	}
/*--------------------------------------------------*
 *   オプショナルサイド
 *--------------------------------------------------*/

.sp-category .img_bottom img{
display: none;
	}
.img_bottom{
	border-radius:0 0 5px 5px!important;
	}
.side_banner{
	margin:0 auto 0;
	width:280px;
	}
.side_banner img{
	width:100% !important;
	}
/*--------------------------------------------------*
 *   ツアー検索
 *--------------------------------------------------*/
.tour_search {
	width: 100%;
}
.tour_search h3{
	background-color:#FF3333;
	border-radius:5px 5px 0 0;
	border: 1px solid #FF3333;
	padding:10px;
}
.tour_search .inner {
	border-left: 1px solid #FF3333;
	border-right: 1px solid #FF3333;
}

.tour_search .inner a {
	display: block;
	padding: 10px;
	color: #F33;
	font-weight: bold;
	text-decoration: none;
	background-image: url(../img-top/icon_tour_search.gif);
	background-repeat: no-repeat;
	background-position: 220px center;
}
.tour_search .img_bottom{
	background-color:#FF3333;
	}
/*--------------------------------------------------*
 *   バリ王 オプショナル（カテゴリー）
 *--------------------------------------------------*/
.op_category {
	width: 100%;
	margin-top: 3px;
}
.op_category h3{
		background-color:#0CA3B8;
	padding:10px;
    position: relative;
    z-index: 99;
    display: block;
    -webkit-backface-visibility: hidden;
	backface-visibility: hidden;
    transform: translateZ(0);
    transition: all 0.3s;
    color: #FFF;
    font-size: 3.8vw;
    text-align: center;
    font-weight: bold;
	}
.op_category h3:before, .op_category h3:after {
  content: '';
  display: block;
  width: 15px;
  height: 3px;
  background: #FFF;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
}
.op_category h3::after {
  transform: translateY(-50%) rotate(90deg);
  transition: 0.5s;
}
.op_category h3.active::after {
  transform: rotate(0);
  transition: 0.5s;
}
.op_category .inner {
	display: none;
}
.op_category .inner.open {
    display: block;
      opacity: 1;
      animation: fadeIn 0.3s ease-in 0s forwards;
      margin-top: 10px;
}
.op_category .inner > ul {
    display: flex;
    flex-wrap: wrap;
}
.op_category .inner ul li{
    width: 49.5%;
    text-align: center;
    display: flex;
}
.op_category .inner ul li a{
	padding: 10px 3px;
    border: 1px solid #0CA3B8;
    border-radius: 10px;
    margin-bottom: 10px;
    color: #0ca3b8;
    display: block;
    text-decoration: none;
    background: #F0FCFC;
    font-size: 2.8vw;
    letter-spacing: -0.08em;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    width: 100%;
}
.op_category .inner ul li a span{
    letter-spacing: 0em;
}
.op_category .inner ul li:first-child {
	border-top: none;
    width: 100%;
}
.op_category .inner ul li:nth-child(even){
    margin-right: 1%;
}
.op_category .img_bottom{
	/*background-color:#0CA3B8;*/
	}
/*--------------------------------------------------*
 *   バリ王 オプショナル（カテゴリー）
 *--------------------------------------------------*/
.op_wedding {
	width: 100%;
	margin-top: 10px;
	margin-bottom:10px;
}
.op_wedding h3{
		background-color:#FD2B84;
	padding:10px;
    position: relative;
    z-index: 99;
    display: block;
    -webkit-backface-visibility: hidden;
	backface-visibility: hidden;
    transform: translateZ(0);
    transition: all 0.3s;
    color: #FFF;
    font-size: 3.8vw;
    text-align: center;
    font-weight: bold;
	}
.op_wedding h3:before, .op_wedding h3:after {
  content: '';
  display: block;
  width: 15px;
  height: 3px;
  background: #FFF;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
}
.op_wedding h3::after {
  transform: translateY(-50%) rotate(90deg);
  transition: 0.5s;
}
.op_wedding h3.active::after {
  transform: rotate(0);
  transition: 0.5s;
}
.op_wedding .inner {
display: none;
}
.op_wedding .inner.open {
    display: block;
      opacity: 1;
      animation: fadeIn 0.3s ease-in 0s forwards;
      margin-top: 10px;
}
.op_wedding .inner > ul {
    display: flex;
    flex-wrap: wrap;
}
.op_wedding .inner ul li{
    width: 49.5%;
    text-align: center;
}
.op_wedding .inner ul li a{
	padding: 10px 3px;
    border: 1px solid #FD2B84;
    border-radius: 10px;
    margin-bottom: 10px;
    color: #FD2B84;
    display: block;
    text-decoration: none;
    background: #FBEFF9;
    font-size: 2.6vw;
}
.op_wedding .inner ul li:nth-child(odd){
    margin-right: 1%;
}
.op_wedding .img_bottom{
	/*background-color:#FD2B84;*/
	}
/*--------------------------------------------------*
 *   ページトップへ
 *--------------------------------------------------*/
p.bt_pagetop {
	width: 180px;
	height: 40px;
	padding:10px 0px;
	float: right;
}
p.bt_pagetop a {
	width: 180px;
	height: 40px;
	display: block;
	background:url(../img-top/bt_pagetop.gif);
	background-repeat: no-repeat;
	background-position: left top;
}
p.bt_pagetop a:hover {
	background-position: left bottom;
}
p.bt_pagetop a span {
	position:absolute;
	left:-7650px;
}

/************************************************************
 *   モーダルウィンドウ（ツアーを検索する）
 ************************************************************/
#popup_modal #popup1 {
	width: 95%;
	margin: 0px auto;
	background-color: #FFF;
	/*padding-top: 15px;*/
	padding-bottom: 20px;
	position:fixed;
	display:none;
}
#popup_modal p.bt_close {
	text-align: right;
	padding-right: 15px;
	position:absolute;
	right:0;
	top:15px;
}
#popup_modal p.bt_close a:hover img {
	opacity:0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";  /* ie 8 */
	-moz-opacity:0.7;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.7;              /* Safari 1.x */
}
#popup_modal .box {
/*	width: 720px;*/
	margin: 0px auto;
	padding-top: 10px;
	padding:10px;
}
#popup_modal .box p.ttl_tour_search {
	border-bottom: 2px solid #EBEBEB;
}
#popup_modal .box p.ttl_tour_search img{
    height: 80%;
    width: 80%;
}
#popup_modal .box table {
	margin:0 5px;
}
#popup_modal .box table td {
	border-bottom: 1px dotted #999;
	padding:5px 0px 3px;
	text-align: left;
	display:block;
	float:right;
	width:180px;
	vertical-align: top;
}
#popup_modal .box table td.item_01 {
	/*width: 105px;*/
	font-size: 14px;
	color: #FC3434;
	width:90px;float:left;
	border-bottom:none;
	font-weight: bold;
}
#popup_modal .box table td.item_02 {
/*	width: 270px;*/

}
#popup_modal .box table td.item_03 {
/*	width: 240px;*/

}
#popup_modal .box table td.item_04 {
/*	width: 720px;*/
width:100%;
}
#popup_modal .box table td.item_05 {
/*	width: 240px;*/
	padding-left: 35px;
}
#popup_modal .box table td.item_06 {
/*	width: 340px;*/
}
#popup_modal .box table td p.icon_area {
	background-image: url(../img-top/icon_area.gif);
	background-repeat: no-repeat;
	background-position: left center;
	line-height: 28px;
	padding-left: 34px;
}
#popup_modal .box table td p.icon_category {
	background-image: url(../img-top/icon_category.gif);
	background-repeat: no-repeat;
	background-position: left center;
	line-height: 28px;
	padding-left: 34px;
}
#popup_modal .box table td p.icon_time {
	background-image: url(../img-top/icon_time.gif);
	background-repeat: no-repeat;
	background-position: left center;
	line-height: 28px;
	padding-left: 34px;
}
#popup_modal .box table td p.icon_target {
	background-image: url(../img-top/icon_target.gif);
	background-repeat: no-repeat;

	background-position: left center;
	line-height: 28px;
	padding-left: 34px;
}
#popup_modal .box table td p.icon_keyword {
	width: 110px;
	float: left;
	background-image: url(../img-top/icon_keyword.gif);
	background-repeat: no-repeat;
	background-position: left center;
	line-height: 28px;
	padding-left: 34px;
	font-size: 14px;
	color: #FC3434;
	font-weight: bold;
}
#popup_modal .box table td p.icon_others {
	background-image: url(../img-top/icon_others.gif);
	background-repeat: no-repeat;
	background-position: left center;
	line-height: 28px;
	padding-left: 34px;
}
#popup_modal .box table td .keyword_box {
/*	width: 576px;
	float: left;*/
	/*width:120px*/ !important;
}
#popup_modal .box table td select {
	width: 190px;
	border: 1px solid #CCC;
	padding-left: 4px;
	height: 28px;
	line-height: 28px;
}
#popup_modal .box table td .keyword_box input {
	width: 90%;
	border: 1px solid #CCC;
	padding-left: 4px;
	height: 28px;
	line-height: 28px;
	font-size: 15px;
}
#popup_modal .box table td .memo_01 {
	font-size: 13px;
	padding-top: 5px;
    overflow: hidden;
	display:none;
    width: 200px;
}
#popup_modal .box table td .memo_02 {
	font-size: 13px;
	padding-left: 5px;
	display:none;
	line-height:120%;
}
#popup_modal .box p.bt_search {
	text-align: center;
	margin-top: 15px;
}
#popup_modal .box p.bt_search a:hover img {
	opacity:0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";  /* ie 8 */
	-moz-opacity:0.7;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.7;              /* Safari 1.x */
}
#lean_overlay {
	position: fixed; z-index:100;
	top: 0px;
	left: 0px;
	height: 100%;
	width: 100%;
	background: #000;
	display: none;
}
td#modal_other {
    display: block;
    float: none !important;
    clear: both;
}
td#modal_other_bt01 {
    float: left!important;
    display: block;
    padding: 0!important;
    width: 48% !important;
}
td#modal_other_bt02 {
    width: 48% !important;
    float: right!important;
    display: block;
    padding: 0!important;
}
/*--------------------------------------------------*
 *   bx-sliderリセット
 *--------------------------------------------------*/
.bx-wrapper .bx-viewport {
-webkit-box-shadow: 0 0 0px #ccc !important;
box-shadow: 0 0 0px #ccc !important;
border: none !important;
background: none !important;
}
/*--------------------------------------------------*
 *   人気のキーワード16/09/27追加
 *--------------------------------------------------*/
 #main_head_grp .above .search .keyword_base{
	 margin: 0 auto;
    /*width: 330px;*/
 }
#main_head_grp .above .search .keyword_base .popular_keyword{
	margin:0 auto;
    background: #fdf9dc;
    display: flex;
    align-items: stretch;
}
#main_head_grp .above .search .keyword_base .popular_keyword p{
    margin-right: 3px;
    font-size:3.5vw;
    display: flex;
    align-items: center;
    padding-top: 5px;
    justify-content: center;
    text-align: center;
    padding: 0;
    line-height: 2rem;
    
}
#main_head_grp .above .search .popular_keyword .kw_title {
background: #f68b17;
    color: #FFF;
    font-size: 14px;
    font-weight: bold;
    line-height: 28px;
    padding: 0 5px;
    position: relative;
    margin-right: 3% !important;
    /*width: 40%;*/
    width: 39%;
    display: flex;
    align-items: center;
}
/*#main_head_grp .above .search .popular_keyword .kw_title:after{
    border: solid transparent;
    content:'';
    height:0;
    width:0;
    pointer-events:none;
    position:absolute;
    border-color: rgba(15, 104, 177, 0);
    border-top-width:10px;
    border-bottom-width:10px;
    border-left-width:10px;
    border-right-width:10px;
    margin-top: -10px;
    border-left-color:#f68b17;
    left:100%;
    top:51%;
}*/
#main_head_grp .above .search .keyword_base .popular_keyword .kw{
	/*border: 2px solid #bbbbbb;*/
    /*border-radius: 3px;*/
    font-size: 3vw;
    padding: 2px;
    /*text-align: center;*/
    position: relative;
}
#main_head_grp .above .search .keyword_base .popular_keyword .kw-1{
    width: 19%;
    margin-right: 2%;
}
#main_head_grp .above .search .keyword_base .popular_keyword .kw-2{
    width: 22%;
    margin-right: 2%;
}
#main_head_grp .above .search .keyword_base .popular_keyword .kw-3{
    width: 19%;
}
#main_head_grp .above .search .keyword_base .popular_keyword .kw a{
	color: #333;
	/*text-decoration: none;*/
    font-weight: bold;
    font-size: 3vw;
    padding: 0 5px;
    display: block;
    text-decoration: underline;
}
#main_head_grp .above .search .keyword_base .popular_keyword .kw a:hover{
	opacity:0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";  /* ie 8 */
	-moz-opacity:0.7;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.7;              /* Safari 1.x */
}
/*#main_head_grp .above .search .keyword_base .popular_keyword .kw a::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 0;
	transform: rotate(45deg) translateY(-50%);
	width: 4px;
	height: 4px;
	border-width: 2px 2px 0 0;
	border-style: solid;
	border-color: #5e5e5e;
}*/
#main_head_grp .above .search .popular_keyword .keyword_box{
    display:flex;
    flex-wrap: wrap;
    padding-top: 5px;
    padding-bottom: 5px;
}
#optional_main h3.ttl_optional_new{
	font-size: 18px;
	line-height: 1.2em;
	margin-top: 20px;
	margin-bottom:10px;
	position:relative;
}
#optional_main h3.ttl_optional_new span{
	padding-left: 8px;
    position: absolute;
	font-size: 17px;
    font-weight: bold;
    top: 6px;
    vertical-align: middle;
}
#optional_main h3.ttl_optional_new img{
	vertical-align:middle;
}		
/*--------------------------------------------------*
 *   TOPへ戻る
 *--------------------------------------------------*/
#floating{
/*	bottom: 0;
    height: 18px;
    left: 51%;
    margin-left: 50%;
    position: fixed;
    width: 100%;
    z-index: 10100;*/
}
#floating #page-top {
    height: 48px;
    position: fixed;
    right: 10px;
	bottom:10px;
    width: 48px;
    z-index: 100;
}
/*.floating #page-top a {
    text-decoration: none;
    color: #fff;
    width: 100px;
    padding: 30px 0;
    text-align: center;
    display: block;
    border-radius: 5px;
	background:#FFFFFF;
}
*/
#floating #page-top a:hover {
    opacity:0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";  /* ie 8 */
	-moz-opacity:0.7;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.7;
}
/*--------------------------------------------------*
 *   20161013
 *--------------------------------------------------*/
.bali_blog_info{
 	width: 98%;
	margin:0 auto;
	}
.bali_blog_info h3.bali_blog_info_title{
	background:url(../img-top/info/blog_title_back.png) repeat-x bottom #fc8800;
	border-radius:7px 7px 0 0 ;
	padding:10px 5px;
	font-size:15px;
	text-align:center;	
	}
.bali_blog_info h3.bali_blog_info_title a{
	display:block;
	color:#fff;
	text-decoration:none;
	text-align:center;
	}
.bali_blog_info h3.bali_blog_info_title a img{
	height:20px;
	padding:0 2px;
	}
.bali_blog_info ul{
    margin: 0 auto;
	padding: 5px 3px;
	border: 2px solid #fc8800;
    overflow: hidden;
/*    width: 98.5%;*/
	background:#fffdeb;
	}
.bali_blog_info ul li{
    background: #fff;
    border-bottom: 1px solid #ccc;
    display: inline-block;
    margin: 0px;
	line-height:120%;
    padding: 5px 2px;
/*	    width: 95%;*/
	}
.bali_blog_info ul li a{
	position: relative;
	overflow: hidden;
	height: 100%;
	display:block;
	width: 100%;
	}
.bali_blog_info ul li img{
	width:28%;
	float:left;
	}

.bali_blog_info span.blog_day {
	display: inline-block;
    background-color: #f60;
    color: #fff;
    padding: 3px;
    z-index: 5;
}
.bali_blog_info span.blog_caption {
    color: #333;
    display: block;
    float: left;
    font-size: 14px;
    font-weight: bold;
    padding: 3px 3px 3px;
    text-decoration: none;
    vertical-align: middle;
    width: 68%;
}
#popup1 td a {
	width:45%;
	}
#popup1 td a img{
	max-width:100%;
	height:auto;
	}
#popup1 .bt_search a{
	width:90%;
	margin:0 auto;
	}
#popup1 .bt_search a img{
	max-width:100%;
		height:auto;
	}
.shopinfo-more {
    color: #fb6600 !important;
    display: block;
    font-weight: bold;
    text-align: right;
}
#contact_panph,
#contact_panph_pc{
	display:none;
	}
#contact_panph_sp{
	margin:5px;
	}
#contact_panph_sp img{
	max-width:100%;
	}
.side_banner{
	margin-bottom:10px;
	}
.pc-design{
	display: none;
}
.sp-category{
	padding: 5px;
}
#optional_side .img_bottom img {
    display: none;
}
.sp-contents{
	width: 96%;
margin: 10px auto;
border: solid 2px #da395b;
}
.sp-contents .sp-contents-title.sp-design {
    background: #da395b;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    padding: 5px;
	text-align: center;
}
.sp-contents li {
    text-align: left;
    border-bottom: #da395b solid 1px;
    padding: 5px;
    font-size: 13px;
}
.sp-contents li a{
	font-weight: bold;
	border-left: 3px solid #da395b;
	color: #3f1b0b;
	line-height: 160%;
	display: block;
}
.sp-contents li a span{
	padding-left: 5px;
}
.sp-contents-2{
	width: 96%;
margin: 10px auto;
border: solid 2px #2356c9;
}
.sp-contents-2 .sp-contents-title.sp-design {
    background: #2356c9;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    padding: 5px;
	text-align: center;
}
.sp-contents-2 li {
    text-align: left;
    border-bottom: #2356c9 solid 1px;
    padding: 5px;
    font-size: 13px;
}
.sp-contents-2 li a{
	font-weight: bold;
	border-left: 3px solid #2356c9;
	color: #3f1b0b;
	line-height: 160%;
	display: block;
}
.sp-contents-2 li a span{
	padding-left: 5px;
	
}
/*左サイドスパ*/
.spa_box{
	border:#25d9c2 solid 2px;
	width: 96%;
	margin: 10px auto;
    text-align: center;
}
.spa_box .title{
	padding:10px 0 0;
}
.spa_box ul li{
	margin:10px 0;
}
.spa_box .link{
	padding: 10px 0 20px;
}
.spa_box ul li img{
	width:90%;
	height:auto;
}
.spa_box .link img{
	width:70%;
	height:auto;
}
.bali_matome{
 	width: 98%;
	margin:15px auto 0;
	}
.bali_matome h3.bali_blog_info_title{
	background:#c80201;
	border-radius:7px 7px 0 0 ;
	padding:10px 5px;
	font-size:15px;
	text-align:center;	
	}
.bali_matome h3.bali_blog_info_title a{
	display:block;
	color:#fff;
	text-decoration:none;
	text-align:center;
	}
.bali_matome h3.bali_blog_info_title a img{
	height:20px;
	padding:0 2px;
	}
.bali_matome ul{
    margin: 0 auto;
	padding: 5px 3px;
	border: 2px solid #c80201;
    overflow: hidden;
/*    width: 98.5%;*/
	background:#fffdeb;
	}
.bali_matome ul li{
    background: #fff;
    border-bottom: 1px solid #ccc;
    display: inline-block;
    margin: 0px;
	line-height:120%;
    padding: 5px 2px;
/*	    width: 95%;*/
	}
.bali_matome ul li a{
	position: relative;
	overflow: hidden;
	height: 100%;
	display:block;
	width: 100%;
	}
.bali_matome ul li img{
	width:28%;
	float:left;
    height: auto;
	}

.bali_matome span.blog_day {
	display: inline-block;
    background-color: #f60;
    color: #fff;
    padding: 3px;
    z-index: 5;
}
.bali_matome span.blog_caption {
    color: #333;
    display: block;
    float: left;
    font-size: 14px;
    font-weight: bold;
    padding: 3px 3px 3px;
    text-decoration: none;
    vertical-align: middle;
    width: 68%;
}
/*星*/
.review{
    padding: 8px;
    text-align:center;
    background-color: #faf0e6;
	background-image: url(../img-top/hyouka_left.png),url(../img-top/hyouka_right.png);
    background-repeat: no-repeat;
	 width: 90%;
    margin: 20px auto 0;
    background-position: -5% top,105% bottom;
}
.review .review_t{
    width: 580px;
    display: inline-block;
    text-align: center;
    color: #553a26;
    font-size: 18px;
}
.review .review_t span{
    display: table-cell;
    vertical-align: middle;
	font-size:16px;
}
.review .star{
    display: inline-block;
}
.review .star .item1 {
    display: table-cell;
    vertical-align: middle;
    padding-bottom: 0px;
}
.review .star .item2{
    color: #e30030;
    font-size: 16px;
    display: table-cell;
    vertical-align: middle;
    padding-top: 5px;
    padding-left: 14px;
}
.review .review_t{
    font-size: 17px;
    width: auto;
}
.review .star{
    width: auto;
}
.review .star .item2{
    font-size: 17px;
}
.review .star .item1 img {
    width: 25px;
}

/**********************************************
コスパ重視ランキング
***********************************************/
#optional_main .ranking_block .box_c .inner {
	background-image: url(../img-top/frame_ranking_middle_c.png);
}
#optional_main .ranking_block .box_d .inner {
	background-image: url(../img-top/frame_ranking_middle_d.png);
}

/**********************************************
2022スマホデザイン改修
***********************************************/
/*.mainbox{
    background: url("../img-top/img_main_new.jpg") no-repeat;
    background-size: 100%;
    min-height: 142px;
}
.mainbox h2{
    text-indent: 100%;
    white-space:nowrap;
	overflow:hidden;
}*/
.mainbox-in{
    display: flex;
    align-items: center;
    text-align: center;
    /*margin: 23.5% 2% 0;*/
    margin: 2%;
}
.mainbox-in .tour{
    width: 40%;
    margin-right: 3%;
}
.mainbox-in .reviewsp{
    width: 56%;
}
.mainbox-in li a{
    display: block;
    background: #FFF;
    border: solid 2px #f61e4d;
    color: #f61e4d;
    font-size: 3.5vw;
    text-decoration: none;
}
.mainbox-in li span{
    font-weight: bold;
}
.mainbox-in li img{
    vertical-align: text-bottom;
    width: 18px;
    margin-left: 2px;
}
/*スマホ検索*/
.sp-sch{

}
.sp-sch h3{
    background: #F61E4D;
    color: #FFF;
    text-align: center;
    font-weight: bold;
    padding: 5px;
}
.sp-sch h3 img,.sp-sch h3 span{
    vertical-align: middle;
}
.sp-sch h3 img{
    width: 6vw;
    margin-right: 3%;
}
.sp-sch h3 span{
    font-size: 4.5vw;
}
.sp-sch .base{
    background: #FCECEF;
    padding: 4% 3%;
}
.sp-sch .base .in{
    border: solid 1px #bcbebf;
    border-radius: 5px;
    background: #FFF;
    margin-bottom: 10px;
}
@keyframes fadeIn {
  0% {
    display: none;
    opacity: 0;
  }

  1% {
    display: block;
    opacity: 0;
  }

  100% {
    display: block;
    opacity: 1;
  }
}
.sp-sch .sch_list,.sp-sch .time  {
    background-color: #FFF;
    display: none;
    opacity: 0;
    border-radius: 0 0 10px 10px;
}
.sp-sch ul.sch_list.open,.sp-sch .time.open {
    display: block;
      opacity: 1;
      animation: fadeIn 0.3s ease-in 0s forwards;
}
.sp-sch ul.sch_list.check.open{
    display: flex !important;
    padding: 0;
    flex-wrap: wrap;
    margin: 0;
    padding-bottom: 10px;
    border-radius: 10px;
}
.sp-sch ul.sch_list.check.open li{
    width: 50%;
    vertical-align: top;
    align-items: center;
    background: #fff;
    border-bottom: 1px solid #ccc;
    display: flex;
    line-height: 1.5;
    border-right: 1px solid #ccc;
    padding: 8px 0 8px 10px;
    box-sizing: border-box;
    min-height: 40px;
    font-size: 3.5vw;
	}
.sp-sch ul.sch_list.check.open li:nth-child(even){
    border-right: none;
}
.sp-sch ul.sch_list.check.open li:last-child,.sp-sch ul.sch_list.check.open li:nth-last-child(2) {
    border-bottom: none !important;
}
.sp-sch ul.sch_list.check.open li:first-child,.sp-sch ul.sch_list.check.open li:nth-child(2){
    border-top: 1px solid #ccc;
}
.sp-sch ul.sch_list.check.open li label{
    width: 100%;
        display: inline-flex;
        align-items: center;
    height: 100%;
    line-height: 1.5;
    padding: 0 10px 0 0px;
    }
.sp-sch ul.sch_list.check.open li span{
	margin-left: 2%;
	}
input[type="checkbox"] {
    height: 14px;
    width: 14px;
    vertical-align: middle;
}
.sp-sch label.primal {
    font-size: 3.73vw;
    font-weight: bold;
    padding: 2vw 2.67vw;
    position: relative;
    z-index: 99;
    display: block;
    color: #2e2e2e;
}
.sp-sch label.primal.active:after {
	content: "";
	position: absolute;
	right: 4vw;
	top: 6vw;
	width: 2vw;
	height: 2vw;
	border-top: 1px solid #7B7F82;
	border-left: 1px solid #7B7F82;
	transform: translateY(-50%) rotate(45deg);
}
.sp-sch label.primal::after {
	content: "";
	position: absolute;
	right: 4vw;
	top: 4vw;
	width: 2vw;
	height: 2vw;
	border-top: 1px solid #7B7F82;
	border-left: 1px solid #7B7F82;
	transform: translateY(-50%) rotate(-135deg);
}
.sp-sch ul.sch_list ul {
    background-color: #FFF;
    display: none;
}
.sp-sch ul.sch_list ul.open {
    display: flex !important;
    flex-wrap: wrap;
      opacity: 1;
      animation: fadeIn 0.3s ease-in 0s forwards;
}
.sp-sch ul.sch_list li.item{
    border: solid 1px #ccc;
    width: 94%;
    margin: 5px auto 0;
}
.sp-sch ul.sch_list li.item:last-child{
    margin-bottom: 15px;
}
.sp-sch ul.sch_list ul li{
    width: 50%;
    vertical-align: top;
    align-items: center;
    background: #fff;
    display: flex;
    line-height: 1.5;
    padding: 0 2px;
    box-sizing: border-box;
    min-height: 50px;
    font-size: 3vw;
    margin-bottom: 7px;
	}

.sp-sch ul.sch_list ul li label{
    width: 100%;
        display: inline-flex;
        align-items: center;
    height: 100%;
    line-height: 1.5;
    padding: 0 10px 0 0px;
    }
.sp-sch ul.sch_list ul li span{
	margin-left: 2%;
	}
.sp-sch ul.sch_list label.btn-op-toggle.opt {
    font-size: 3.2vw;
    padding: 2vw 2.67vw;
    position: relative;
    z-index: 99;
    display: block;
    -webkit-backface-visibility: hidden;
	backface-visibility: hidden;
    transform: translateZ(0);
    transition: all 0.3s;
}
.sp-sch ul.sch_list label.btn-op-toggle.opt:before, .sp-sch ul.sch_list label.btn-op-toggle.opt:after {
  content: '';
  display: block;
  width: 15px;
  height: 3px;
  background: #7B7F82;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
}
.sp-sch ul.sch_list label.btn-op-toggle.opt::after {
  transform: translateY(-50%) rotate(90deg);
  transition: 0.5s;
}
.sp-sch ul.sch_list label.btn-op-toggle.opt.active::after {
  transform: rotate(0);
  transition: 0.5s;
}
.sp-sch ul.sch_list .long{
    margin: 0 3%;
    font-size: 3.5vw;
    border-top: solid 1px #ccc;
    padding: 2%;
}
.sp-sch ul.sch_list .long span{
    margin-left: 2%;
}

.sp-sch .keyword input[type="text"]{
    border: solid 1px #bcbebf;
    border-radius: 5px;
    padding: 2%;
    width: 96%;
    font-size: 3.5vw;
}
.sp-sch .keyword input[type="text"]::placeholder{
    color: #CFD0CA;
}
.sp-sch .bt_grp{
    display: flex;
    margin: 15px 0 0 9%;
    justify-items: center;
}
.sp-sch .bt_grp .bt_search{
    width: 45%;
    text-align: center;
}
.sp-sch .bt_grp .bt_search a{
    background: #F61E4D;
    display: block;
    color: #FFF;
    text-decoration: none;
    padding: 5%;
    font-size: 4vw;
    border-radius: 10px;
    font-weight: bold;
}
.sp-sch .bt_grp .bt_detail{
    width: 44%;
    /*text-align: center;*/
    margin-left: 10px;
}
.sp-sch .bt_grp .bt_detail a{
    background: #FFF;
    border: solid #F61E4D 1px;
    display: block;
    color: #F61E4D;
    text-decoration: none;
    padding: 5%;
    font-size: 4vw;
    border-radius: 10px;
    position: relative;
    z-index: 99;
    -webkit-backface-visibility: hidden;
	backface-visibility: hidden;
    transform: translateZ(0);
    transition: all 0.3s;
}
.sp-sch .bt_grp .bt_detail a:before, .sp-sch .bt_grp .bt_detail a:after {
  content: '';
  display: block;
  width: 13px;
  height: 2px;
  background: #F61E4D;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
}
.sp-sch .bt_grp .bt_detail a:after {
  content: '';
  display: block;
  width: 13px;
  height: 2px;
  background: #F61E4D;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
}
.sp-sch .bt_grp .bt_detail a::after {
  transform: translateY(-50%) rotate(90deg);
  transition: 0.5s;
}
.sp-sch .bt_grp .bt_detail a.active::after {
  transform: rotate(0);
  transition: 0.5s;
}
#detbox{
    margin: 10px 0;
}
#detbox .timebase {
    padding: 10px 10px 10px;
    display: flex;
    align-items: center;
    background: #FFF;
    border-top: 1px solid #ccc;
    border-radius: 0 0 10px 10px;
}
#detbox .timebase .timebox{
    position: relative;
    width: 30%;
}
#detbox .timebase .timebox:after {
    content: "";
    position: absolute;
    right: 3vw;
    top: 3vw;
    width: 8px;
    height: 8px;
    border-top: 3px solid #ccc;
    border-left: 3px solid #ccc;
    transform: translateY(-50%) rotate(-135deg);
    pointer-events: none;
}
#detbox .timebase .timebox select{
    padding: 7px;
    width: 100%;
    border: 1px solid #ccc;
    font-size: 3vw;
    border-radius: 5px;
    appearance: none;
    background: #FFF;
    color: #000;
}
#detbox .timebase span{
    margin: 0 10px;
}
body {
    padding-top: 16.5% !important;
}
/*アクセスランキング*/
.accessranking{
    background: #FCFBE7;
    padding: 10px;
    margin: 15px 0 0;
}
.accessranking .access-area{
    background: url(../img-top/brand.png) no-repeat left;
    padding-left: 14%;
    font-size: 20px;
    padding-bottom: 5px;
}
.accessranking .access-area h3{
    font-size: 4vw;
    font-weight: bold;
}
.accessranking .access-area .period{
    font-size: 3vw;
}
.accessranking img{
  width: 100%;
}
.accessranking ul{
  list-style: none;
    display: flex;
    overflow-x: scroll;
    flex-wrap: nowrap;
    align-items: center;
    margin: 0 5px;
}
.accessranking li{
  flex: 0 0 24.5%;
    margin-right: 10px;
}
.accessranking a{
    text-decoration: none;
    color: #333;
}
.accessranking .rank{
    text-align: center;
    border-radius: 2px;
    padding: 0;
    font-size: 3vw;
    margin-bottom: 5px;
}
.accessranking .rank span{
    font-size: 2.5vw;
}
.accessranking .rank.top1{
    background: #DAB92E;
    font-weight: bold;
    color: #FFF;
}
.accessranking .rank.top2 {
    background: #A7A7B3;
    font-weight: bold;
    color: #FFF;
}
.accessranking .rank.top3 {
    background: #BD6A42;
    font-weight: bold;
    color: #FFF;
}
.accessranking .hotel-name{
    font-size: 3.2vw;;
    text-align: left;
    overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  height: 38px;
}
.accessranking .hotel-name.bold{
    font-weight: bold;
}
.accessranking .access-img img{
    object-fit: cover;
    height: 50px;
}
.accessranking  p.bt_ranking_more{
    margin: 10px auto 0;
    text-align: center;
    padding-bottom: 10px;
    width: 90%;
}
.accessranking  p.bt_ranking_more a{
    display: block;
    padding: 3px 0px;
    background: #E0324D;
    color: #FFF;
    font-weight: bold;
    font-size: 3.5vw;
    text-align: center;
    position: relative;
    border-radius: 5px;
    text-decoration: none;
}
.accessranking  p.bt_ranking_more a::after {
    display: block;
    position: absolute;
    top: 34%;
    right: 4%;
    content: "";
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 7px solid #FFF;
}
/*20230816追加*/
.sp_none{
display: none;
}
.pc_none{
display: block;
}
#optional_main .new-op-tour .photo_list1 .optional_cam_slider {
display: none;
}
#optional_main .new-op-tour .photo_list1 .optional_cam_slider.slick-initialized.slick-slider{
display: block;
}
#optional_main .new-op-tour .photo_list1 li{
padding:0;
margin: 0 10px 0 0;
width: 35vw;
}
#optional_main .new-op-tour .photo_list1 li .memo {
    display: block;
    padding: 3px 2px;
    line-height: 1.5;
    font-size: 3.2vw!important;
    width: 100%;
    box-sizing: border-box;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
    min-height: 25vw;
height:25vw;
}
/*
#optional_main .new-op-tour .photo_list1 li:nth-of-type(-n+3) .memo{
min-height: 20vw;
}
*/
#optional_main .new-op-tour .photo_list1 li .photo-img-s{
display: block;
position: relative;
width: 100%;
}
#optional_main .new-op-tour .photo_list1 .optional_cam_slider .photo-img-s .price {
  text-shadow: 2px 2px 1px #ffffff, -2px 2px 1px #ffffff, 2px -2px 1px #ffffff, -2px -2px 1px #ffffff, 2px 0px 1px #ffffff, 0px 2px 1px #ffffff, -2px 0px 1px #ffffff, 0px -2px 1px #ffffff;
  position: absolute;
bottom: 3px;
  right: 1vw;
  font-weight: bold;
  color: #ed1000;
  font-size: 3.5vw;
}

#optional_main .new-op-tour .photo_list1 .optional_cam_slider .photo-img-s .s-price{
font-size: 3vw;
}
.new-icon{
    color: #FF3333;
    font-size: 2.5vw;
    font-weight: bold;
    padding-left: 2px;
}
/*オプショナルカテゴリーデザイン変更*/
.categoryarea .main{
    display: flex;
    margin: 0 auto;
    flex-wrap: wrap;
}
.categoryarea .box{
	width:calc(100%/3);
    margin: 10px 0 0;
    text-align: center;
}
.categoryarea .box a{
    display: block;
    text-decoration: none;
    color: #333;
}
.categoryarea .box img{
	width: 90%;
    border-radius: 50%;
    object-fit: cover;
    height: 11rem;
}
.categoryarea .box p{
	font-weight: bold;
    font-size: 2.8vw;
    margin: 5px 5px 0;
    line-height: 1.5;
}
/*検索その他*/
.sp-sch .base .others{
    display: flex;
    justify-content: space-around;
}
.sp-sch .base .others li{
    padding:5px;
    display: flex;
    align-items: center;
    font-size: 3.73vw;
}
.sp-sch .base .others li img{
    width: 25px;
    height: auto;
    margin: 0 10px;
}

@media screen and (max-width:379px){
    .categoryarea .box img{
    height: 10rem;
}
}
@media screen and (min-width: 414px) {
   .categoryarea .box img{
    height: 12rem;
}
}


.mvBody-main{
    border-radius: 40px;
    overflow: hidden;
}
.mvBody-main iframe {
    border-radius: 40px;
    overflow: hidden;
}
.mvBody-main video {
    width: 230px;
    width: 235px;
    /* height: 522px; */
    border-radius: 40px;
    margin: 0 auto;
    display: block;
}

.mvBody {
    margin: 0 auto;
}
.mvBody-top {
  position: relative;
  display: inline-block;
        text-align: center;
        font-size: 20px;
        color: #F95937;
        font-weight: bold;
        line-height: 125%;
        margin: 35px auto 25px;
        /* width: 293px; */
        width: 293px;
        padding: 0;
    }
.mvBody-top p {
    font-size: 18px;
}
.mvBody-top:before, .mvBody-top:after {
  content: '';
  position: absolute;
bottom: 30%;
  display: inline-block;
  width: 44px;
  height: 2px;
  background-color: #F95937;
  -webkit-transform: rotate(-60deg);
  transform: rotate(-60deg);
}
.mvBody-top p::before {
/*content: "";*/
    background: url(/img/icon-mv-o.png) no-repeat center center;
    width: 60px;
    display: none;
    /* position: absolute; */
    height: 52px;
    background-size: 46px;
    margin: 20px auto 10px;
}
.mvBody-top:before {
  left:0;
-webkit-transform: rotate(-240deg);
    transform: rotate(240deg);
}
.mvBody-top:after {
  right: 0;
}
.mvBody-main video {
    width: 185px;
    }
.mvBody {
    margin: 0 auto 30px;
    text-align: center;
    margin-top: 40px;
}
.mvBody-top{
        margin: 0 auto 20px;    
    }
.mvBody-top p{
        margin: 0 auto 0px;
    }
.mvBody-top p:before{
    display: none;
    }
.mvBody-top:before, .mvBody-top:after {
    bottom: 35%;
    }