@charset "utf-8";

/********** サイトの定義 **********

使用する文字サイズ：
10px
14px（基本）
16px
18px（中サイズ見出し）
20px（特例:TOPの検索するボタンなど）
24px（特例:TOPのエリア検索・駅検索など）
28px（大サイズ見出し）

空白の使用サイズ：
10px
20px
40px（基本）
60px
120px（大見出しの段落ごと）

*******************************/


#plan .Hit_Type {
	margin-bottom: 20px;
}

#plan .Hit_Type .HitVolume {
	float: left;
	vertical-align: middle;
	height: 38px;
	line-height: 38px;
	max-width: 360px;
}

#plan .Hit_Type .HitVolume p {
	display: inline-block;
	margin: 0 10px 0 0;
}

#plan .Hit_Type .HitVolume p:last-child {
	margin: 0;
	font-weight: bold;
}

#plan .Hit_Type .HitVolume span {
	margin: 0 5px;
	font-size: 24px;
	font-weight: bold;
	color: #ff0080;
}



#plan .Hit_Type .TypeLink {
	float: right;
	vertical-align: middle;
	height: 38px;
	line-height: 38px;
	max-width: 460px;
}

#plan .Hit_Type .TypeLink ul {

}

#plan .Hit_Type .TypeLink ul li {
	display: inline-block;
	vertical-align: middle;

	height: 30px;
	line-height: 30px;

	margin-right: 20px;
	padding: 0;

	font-weight: bold;
	text-align: center;

	border-bottom: 3px solid #fff;

	cursor: default;
}

#plan .Hit_Type .TypeLink ul li:last-child {
	margin-right: 0;
}

#plan .Hit_Type .TypeLink ul li:hover {
	opacity: 0.75;
	transition: 0.5s;
}

#plan .Hit_Type .TypeLink ul li a {
	color: #333;
	text-decoration: none;
}

/* 検索結果（上部枠）*/
#plan .Hit_Type .TypeLink ul.usuallyType li.active, /* 今いるページに下線を付ける */
#plan .Hit_Type .TypeLink ul.usuallyType li:hover /* マウスを乗せた時に下線を付ける */ {
	border-bottom: 3px solid #ff66c4;
}


#plan .targetDate {
	margin-bottom: 40px;
}

#plan .targetDate p {
	height: 20px;
	line-height: 20px;
	margin: 0;
	padding: 10px;
	text-align: center;
	background:#ffffc0;
	border-radius: 6px;
}

#plan .targetDate p i {
	margin-right: 5px;
	color: #e50000;
}

#plan .targetDate p span {
	margin: 0 5px;
	font-weight: bold;
	color: #e50000;
}


/********** 出発日＆返却日 絞り込み **********/

.search {
	margin-bottom: 20px;
}

.search div.reserve_calendar,
.search div.reserve_time {
	display: inline-block;
	vertical-align: bottom;

	/*
	height: 40px;
	line-height: 40px;
	*/
}

.search div select {
	margin: 0;
	border-radius: 6px;
}


/***** 出発日カレンダー・返却日カレンダー *****/

.search .reserve_calendar {
	width: 176px;
	height: 73px;
}
.search .reserve_calendar:after {
	position: relative;
	left: 147px;
	bottom: 32.5px;

	font-family: "Font Awesome 5 Free";
	content: '\f073';
	font-size: 16px;
	font-weight: 900;
	color: #999;

	width: 16px;
	cursor: pointer;
}

.search .reserve_calendar p {
	margin-bottom: 5px;
	font-weight: bold;
	color: #ff0080;
}

.search .reserve_calendar input.calendar_start,
.search .reserve_calendar input.calendar_end {
	width: calc(100% - 15px);
	height: 44px;
	padding: 0 0 0 15px;
	font-size: 16px;
	font-weight: bold;
	color: #333;
	cursor: pointer;

	border-top: 2px solid #333;
	border-right: 0;
	border-bottom: 2px solid #333;
	border-left: 2px solid #333;
}

.search .reserve_calendar input.calendar_start::placeholder,
.search .reserve_calendar input.calendar_end::placeholder {
	color: #333;
}


/***** 出発時間・返却時間 *****/

.search .reserve_time {
	width: 140px;
	height: 48px;
}

.search .reserve_time select.time_start,
.search .reserve_time select.time_end {
	width: 100%;
	height: 48px;
	margin: 0;
	padding: 0 0 0 15px;
	font-size: 16px;
	font-weight: bold;
	color: #333;
	cursor: pointer;
	border: 2px solid;
	border-color: #333;
	border-radius: 0px;
	appearance: none;
}


.search .reserve_time:after {	/* selectボックスの親要素にオリジナルの矢印を宣言 */
	content: "";
	position: relative;
	left: 113px;
	bottom: 27px;
	width: 7px;
	height: 7px;
	transform: translateY(-50%) rotate(-135deg);
	pointer-events: none;

    border-top: 2px solid #333;
    border-left: 2px solid #333;
}

.search .arrow_to {
	display: inline-block;
	vertical-align: middle;
	height: 48px;
	line-height: 48px;
	margin: 0 15px;
	font-size: 32px;
	color: #ff0080;
}




/*** ［検索する］ボタン ***/
.search button {
	font-family: "YakuHanJP","Roboto","Noto Sans JP",Meiryo,sans-serif;
	position: relative;
	vertical-align: bottom;
	width: 178px;
	height: 48px;
	line-height: 48px;
	margin-left: 20px;
	padding: 10px;
	border: 0;
	border-radius: 6px;

	background: #ff0080;

	/* ▼ ▼ ▼ 新ボタンデザインCSS （一部）　▼ ▼ ▼ */
	-webkit-border-radius: 6px;

	text-shadow: 1px 2px 2px rgba(0,0,0,0.2);
	-webkit-box-shadow: 0px 1px 1px #ffffff inset, 1px 1px 1px 0px rgba(0,0,0,0.1);
			box-shadow: 0px 1px 1px #ffffff inset, 1px 1px 1px 0px rgba(0,0,0,0.1);

	outline: none;
	cursor: pointer;

	border: 1px solid #ff0080;
	background-image: -webkit-linear-gradient(#FF7FC1 0%, #ff0080 100%);
	background-image: linear-gradient(#FF7FC1 0%, #ff0080 100%);
	/* ▲ ▲ ▲ 新ボタンデザインCSS （一部）　▲ ▲ ▲ */
}

.search button:hover {
	opacity: 0.8;
}

.search button a {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	height:100%;
	width: 100%;

	font-size: 16px;
	font-weight: bold;
	color: #fff;
	text-decoration: none;
}




/************************************************************
　写真ページ（写真一覧）
************************************************************/

section#photo #sortArea {
	width: 880px;
	margin: 0 auto ;
}
section#photo #sortArea #sort {
	width: 880px;
	margin-bottom: 0;
	overflow: hidden;
}
section#photo #sortArea #sort:after {
  display : table;
  clear : both;
  content : '';
}
section#photo #sortArea #sort ul {
	width: 880px;
	margin-right: -20px;
}
section#photo #sortArea #sort li {
	border-radius: 6px;
	background:#fff;
	border: 1px solid #a54cff;
	display: inline-block;
	float: left;
	margin-right: 20px;
	margin-bottom: 20px;
	width: 128px;
	text-align: center;
	padding: 10px 0;
	cursor: pointer;
	/* font-weight:bold; */
	-webkit-transition: .1s linear;
	-moz-transition: .1s linear;
	-o-transition: .1s linear;
	margin-left:0;
}
section#photo #sortArea #sort li:nth-child(6n) {
	margin-right: 0;
}
section#photo #sortArea #sort li a {
	display: block;
	width: 128px;
	text-align: center;
	color: #a54cff;
	text-decoration: none;
}
section#photo #sortArea #sort li:hover,
section#photo #sortArea #sort li.active {
	background-color: #a54cff;
	color:#fff;
}
section#photo #sortArea #sort li:hover a,
section#photo #sortArea #sort li.active a {
	color:#fff;
}

section#photo #sortArea #sort li a i {
	margin-right: 5px;
}

section#photo #sortArea #itemList {

}
section#photo #sortArea #itemList.image-container flex {
	clear: both;
}

section#photo #sortArea #itemList .item {
	width: 203px;
	height: 203px;
	line-height: 203px;
	margin: 20px 20px 0 0; /* ここは必ず「margin:」で設定しないと崩れる。他の対処法なし */
	color: #ffffff;
	text-align: center;

	border: 1px solid #a54cff;
}

section#photo #sortArea #itemList .item img {
	width: 203px;
	height: 203px;
	object-fit: cover;
	/* margin: 20px 20px 0 0; */
	color: #ffffff;
	text-align: center;
	line-height: 203px;
}



/************************************************************
　口コミページ（口コミ一覧）※以下のみ追加で適用させています。
************************************************************/

section#review ul li {
	display: flex !important;
}

section#review ul li:last-child {
	margin-bottom: 0;
}

section#review ul li .reviewDetails:hover {
	background: #fff !important;
}
section#review ul li .reviewDetails:hover:before {
  border-right: 19px solid #fff !important;
}

section#review ul li .reviewDetails .post p.title {
	height: unset !important;
}

section#review ul li .reviewDetails .post p.text {
	display: block !important;
	    -webkit-box-orient: unset !important;
	    -webkit-line-clamp: unset !important;
	    overflow: unset !important;

	height: unset !important;
}





/************************************************************
　アクセス・地図ページ
************************************************************/

section#access {

}

section#access #map {
	margin-bottom: 20px;
}

section#access p.moreLink a {
	color: #00b900;
}