@charset "utf-8";

/*---------------------------------

イベントカレンダー

---------------------------------*/
.page_headline {
	margin-bottom: 20px;
	padding-top: 18px;
}

.calender .inner {
	background: #f5efe7;
	padding: 0 13px;
}

.calender_inner {
	padding: 15px 10px;
	background: #fff;
}

.display_month {
	background: #44403f;
	text-align: center;
	position: relative;
	color: #fff;
	padding: 7px 10px 5px 10px;
	margin-bottom: 15px;
}

.display_month h2 {
	font-size: 28px;
	line-height: 1;
	margin-bottom: 5px;
}

.display_month li {
	font-size: 12px;
}

.display_month li a {
	color: #fff;
}


.display_month li:first-child,
.display_month li:last-child {
	position: absolute;
	margin:auto;
	top: 0;
	bottom: 0;
	font-size: 11px;
	height: 18px;
}

.display_month li:first-child {
	left: 10px;
}

.display_month li:first-child a,
.display_month li:last-child a {
	position: relative;
}

.display_month li:first-child a:before {
	content: "";
	display: inline-block;
	background:url(../img/calender/img_calender_arrow.png) no-repeat;
	width: 14px;
	height: 10px;
	float: left;
	background-size: contain;
	margin: 4px 7px 0 0;
}

.display_month li:last-child a:before {
	content: "";
    display: inline-block;
    background: url(../img/calender/img_calender_arrow.png) no-repeat;
    width: 14px;
    height: 10px;
    margin: 4px 0 0 7px;
    float: right;
    background-size: contain;
    transform: rotate(-180deg);
}

.display_month li:last-child {
	right: 10px;
}


.month_calender table {
	width: 100%;
	table-layout: fixed;
	margin-bottom: 15px;
}

.month_calender thead {
	text-align: center;
}

.month_calender thead td {
	padding-bottom: 10px;
}

.month_calender tbody td {
	border:1px solid #9fa0a0;
	text-align: center;
    padding: 5px 0;
}

.month_calender tbody td.day-off {
	background: #eef4f7;
}

@media print, screen and (min-width:768px) {
	.display_month {
		background: #44403f;
	    text-align: center;
	    position: relative;
	    color: #fff;
	    padding: 20px 35px 12px 35px;
	    margin-bottom: 15px;
	}

	.display_month li:first-child {
		left: 30px;
	}

	.display_month li:last-child {
		right: 30px;
	}

	.display_month li:last-child a:before,
	.display_month li:first-child a:before {
		width: 35px;
		height: 25px;
		top: -2px;
		margin:auto;
	}

	.display_month li:first-child a {
		padding-left: 20px;
	}

	.display_month li:last-child a {
		padding-right: 20px;
	}

	.calender_inner {
		padding: 30px 50px 40px 50px;
		background: #fff;
	}
	.display_month {
		margin-bottom: 0;
	}
	.display_month h2 {
	    font-size: 56px;
	    line-height: 1;
	}
	.display_month li a {
	    font-size: 18px;
	}
	.display_month li:first-child a, .display_month li:last-child a {
	    font-size: 14px;
	}
	.month_calender table {
		margin-bottom: 25px;
	}
	.month_calender thead {
		font-size: 16px;
	}
	.month_calender tbody {
		font-size: 18px;
	}
}




/* カレンダー内アイコン */
.month_calender .event_ico {
	width: 18px;
	height: 18px;
	margin: 0 auto 5px auto;
}

.month_calender .event_ico a {
	width: 18px;
	height: 18px;
	display: inline-block;
}

.month_calender .event_ico a:hover {
	opacity: 0.7;
}

.month_calender .event_ico span {
	width: 18px;
	height: 18px;
	display: inline-block;
}

/*.month_calender .event_ico a::after {
	position: absolute;
	top:0;
	left:0;
	width:  100%;
	height: 100%;
	content:"";
	display:block;
	background-color: #fff;
	opacity:0;
}
*/


.month_calender .event_ico .bicycle {
	background: url(../img/calender/img_calender-cycle.png) no-repeat;
	background-size: contain;
}

.month_calender .event_ico span.bicycle {
	background: url(../img/calender/img_calender-cycle-end.png) no-repeat;
	background-size: contain;
}

.month_calender .event_ico .fishing {
	background: url(../img/calender/img_calender-fishing.png) no-repeat;
	background-size: contain;
}

.month_calender .event_ico span.fishing {
	background: url(../img/calender/img_calender-fishing-end.png) no-repeat;
	background-size: contain;
}

.month_calender .staff_ico {
	width: 30px;
	height: 13px;
	margin: auto;
}

.month_calender .staff_ico.rod {
	background: url(../img/calender/img_staff-rod.png) no-repeat;
	background-size: contain;
}

.month_calender .staff_ico.reel {
	background: url(../img/calender/img_staff-reel.png) no-repeat;
	background-size: contain;
}
.month_calender .staff_ico.all {
	background: url(../img/calender/img_staff-all.png) no-repeat;
	background-size: contain;
}

@media print, screen and (min-width:768px) {
	.month_calender .event_ico {
		width: 30px;
    	height: 30px;
    	margin:0;
    	display: inline-block;
	}
	.month_calender .event_ico a {
		width: 30px;
    	height: 30px;
		display: inline-block;
	}

	/*過去のイベントリンクなし用*/
	.month_calender .event_ico span {
		width: 30px;
    	height: 30px;
		display: inline-block;
	}

	.month_calender .event_ico a:hover::after {
		opacity:.3;
		-webkit-transition: 0.3s ease-in-out;
		transition: 0.3s ease-in-out;
	}

	.month_calender .staff_ico {
		margin: unset;
    	display: inline-block;
    	width: 44px;
    	height: 20px;
	}
}


/* アイコン説明（釣り） */

.ico_meaning {
	margin-bottom: 20px;
}

.ico_meaning li {
	position: relative;
	margin-bottom: 10px;
	overflow: hidden;
	font-weight: bold;
}


.ico_meaning li:before {
	content: "";
	width: 30px;
	height: 30px;
	background-color: #eef4f7;
	border: #9fa0a0;
	display: inline-block;
	float: left;
	margin-right: 13px;
}

.ico_meaning li.meaning_bicycle:before {
	background:url(../img/calender/img_calender-cycle.png) no-repeat;
	background-size: contain;
	border:none;
}

.ico_meaning li.meaning_fishing:before {
	background:url(../img/calender/img_calender-fishing.png) no-repeat;
	background-size: contain;
	border:none;
}

.ico_meaning li:last-child {
	margin-bottom: 0;
}


.concierge_bold {
	font-weight: bold;
	display: flex;
	margin-bottom: 5px;
	font-size: 14px;
}

.concierge_bold:before {
    content: "■";
    display: inline-block;
}

@media print, screen and (min-width:768px) {
	.ico_meaning {
	    display: inline-block;
    	width: 30%;
    	vertical-align: top;
	}
}


/* アイコン説明（釣りコンシェルジュ） */
.concierge_meaning {
	margin-bottom: 20px;
}
.concierge_meaning li {
	position: relative;
	padding-left: 50px;
}
.concierge_meaning li:before {
	content: "";
	display: inline-block;
	width: 46px;
	height: 20px;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin-right: 10px;
	margin:auto;
}

.concierge_meaning li.concierge_reel:before {
	background: url(../img/calender/img_staff-reel.png) no-repeat;
	background-size: contain;
}
.concierge_meaning li.concierge_rod:before {
	background: url(../img/calender/img_staff-rod.png) no-repeat;
	background-size: contain;
}
.concierge_meaning li.concierge_all:before {
	background: url(../img/calender/img_staff-all.png) no-repeat;
	background-size: contain;
}

.concierge_bicycle {
	margin-bottom: 50px;
}


@media print, screen and (min-width:768px) {
	.concierge_meaning {
		display: inline-block;
    	width: 38%;
    	vertical-align: top;
	}
	.concierge_bicycle {
		display: inline-block;
    	width: 30%;
	}
}

/*  月のイベントカレンダー
---------------------------------*/
.calender__event h3 {
	font-size: 20px;
	margin-bottom: 10px;
}

.calender__event_box {
	border-top:1px #c9caca solid;
}
.calender__event_box:last-child {
	border-bottom:1px #c9caca solid;
}

.calender__event_box a {
	padding: 15px 10px;
	background:#fff;
	display: block;
}

.calender__event_box.end a,
.calender__event_box.report a {
	background:#efefef;
}

.calender__event_box a:hover {
	background:#f5efe7;
}


.date_block {
	position: relative;
	display: block;
	margin-bottom: 15px;
}

.calender__event_box .event_box_date {
	display: inline-block;
	position: relative;
}

.calender__event_box .event_box_date p {
	font-size: 30px;
	color: #44403f;
	font-family: 'Oswald', sans-serif;
	float: left;
	line-height: 1;
}

.calender__event_box .event_box_date .weekday {
	font-size:13px;
	margin-left: 10px;
	padding-top: 9px;
}


.calender__event_box .event_box_date .weekday.Sat {
	color: #036eb8;
}

.calender__event_box .event_box_date .weekday.Sun {
	color: #e60012;
}

.calender__event_box .event_box_status {
	background: #333;
	border-radius: 20px;
	color: #fff;
	padding: 5px 20px;
	text-align: center;
	display: inline-block;
	font-size: 13px;
	margin-left: 10px;
}
@media print, screen and (min-width:768px) {
	.calender__event_box .event_box_status {
		position: absolute;
		top: 0;
		left: 65px;
		margin-left: 0;
	}
}

.calender__event_box .event_box_status.report {
	background:#44403f;
}

.calender__event_box .event_box_status.cancel {
	background:#dcdddd;
	color: #44403f;
	border:1px solid #44403f ;
}

.calender__event_box .event_box_status.accepting {
	background:#fff;
	color: #44403f;
	border:1px solid #44403f ;
}

.event_box_tit {
	position: relative;
	line-height: 1.3;
	margin-bottom: 15px;
	font-size: 13px;
	overflow: hidden;
}

.event_box_tit:before {
	content: "";
	display: inline-block;
	width: 55px;
	height: 55px;
	background: #555;
	margin:0 15px 15px 0;
	float: left;
}

.event_box_tit.bicycle:before {
	background: url(../img/calender/img_calender-cycle.png) no-repeat;
	background-size: contain;
}

.event_box_tit.fishing:before {
	background: url(../img/calender/img_calender-fishing.png) no-repeat;
	background-size: contain;
}

.event_box_tit span {
	display: block;
	margin-bottom: 7px;
}

.event_box_tit span.bicycle {
	color: #d55e12;
}

.event_box_tit span.fishing {
	color: #0086a4;
}

.calender__event_box time {
	display: inline-block;
	float: right;
	font-size: 12px;
	position: relative;
	margin-bottom: 10px;
}

.calender__event_box time:before {
	position: absolute;
    left: -20px;
    top: 50%;
    margin-top: -8px;
    display: block;
    content: "";
    width: 15px;
    height: 15px;
    background-size: 15px auto;
    background-image: url(../img/calender/icon_time.png);
    background-position: 0 0;
    background-repeat: no-repeat;
}

.event_thumb img {
	width: 100%;
	display: block;
}


@media print, screen and (min-width:768px) {
	.calender__event_box .event_box_date {
		position: unset;
	}
	.calender__event_box .event_box_date p {
		font-size: 60px;
	}
	.calender__event_box .event_box_date .weekday {
	    font-size: 18px;
	    position: absolute;
	    right: 10px;
	    top: 52px;
	}
	.calender__event h3 {
		font-size: 20px;
		letter-spacing: 3px;
	}
	.calender__event_box a {
		display: block;
		padding:20px 15px;
		overflow: hidden;
	}
	.calender__event_box a.link_no {
		background: #efefef;
	}

	.date_block {
		display: inline-block;
		margin-bottom: 0;
		width: 16%;
		padding-top: 40px;
	}
	.event_info_box {
		border-left: 1px solid #231815;
		padding-left: 15px;
		width: 80%;
		float: right;
	}
	.cat-status {
		display: inline-block;
		vertical-align: top;
		width: 18%;
	}
	.cat-status span:before {
		content: "";
		display: block;
		background: #333;
		width: 60px;
		height: 60px;
		margin: auto;
	}
	.cat-status span.bicycle:before {
		background: url(../img/calender/img_calender-cycle.png) no-repeat;
		background-size: contain;
	}

	.cat-status span.fishing:before {
		background: url(../img/calender/img_calender-fishing.png) no-repeat;
		background-size: contain;
	}

	.cat-status p {
		font-size: 14px;
		margin-bottom: 25px;
		text-align: center;
	}
	.cat-status p.bicycle {
		color: #717782;
	}

	.cat-status p.fishing {
		color: #717782;
	}
	.calender__event_box .event_box_status {
		position: static;
		font-size: 12px;
		display: block;
	}

	.event_detail {
		width: 40%;
		display: inline-block;
		vertical-align: middle;
		padding-left: 10px;
	}
	.event_box_tit {
		padding-left: 0;
		font-size: 16px;
	}
	.event_box_tit:before {
		content: none;
	}
	.event_thumb {
	    width: 28%;
	    display: inline-block;
	    float: right;
	    vertical-align: middle;
	}
}

@media print, screen and (min-width:992px) {
	.date_block {
		width: 12%;
	}
	.event_detail {
		width: 45%;
		display: inline-block;
		vertical-align: middle;
		padding-left: 10px;
		margin-right: 20px;
	}
	.event_info_box {
		border-left: 1px solid #231815;
	    padding-left: 15px;
	    width: 86%;
	    float: right;
	}
}