/* CSS Document */


/* --------------------------------------------------
plans
-------------------------------------------------- */

.tab-btn {
	margin-top: 0;
}
/* --------------------------------------------------
 modal
-------------------------------------------------- */
#lean_overlay {
	position: fixed;
	z-index: 100;
	top: 0px;
	left: 0px;
	height: 100%;
	width: 100%;
	background: #000;
	display: none;
}
.modal_contents .modal_close {
	position: absolute;
	top: 12px;
	right: 12px;
	display: block;
	width: 30px;
	height: 30px;
	z-index: 2;
	cursor: pointer;
}
.modal_contents {
	background: none repeat scroll 0 0 #FFFFFF;
	box-shadow: 0 0 4px rgba(0, 0, 0, 0.4);
	display: none;
	padding: 50px;
	width: 50%;
	text-align: center;
	border-radius: 10px;
	font-size: 1.8rem;
}
.modal_contents h5 {
	font-size: 2.5rem;
	text-align: center;
	margin-bottom: 2rem;
	color: #1965A2;
}
.modal_contents p {
	margin-bottom: 1rem;
}
.modal_contents dt {
	font-weight: bold;
	margin-bottom: 1rem;
}
/* btn-mod */
.modal_contents .btn-mod {
	margin-top: 5rem;
	text-align: center;
	display: inline-block;
	cursor: pointer;
	text-decoration: none;
	vertical-align: middle;
	padding: 5px 20px;
	border: #272727 solid 2px;
	margin: 0 5px;
	color: #272727;
}
.modal_contents .btn-mod:hover {
	background: #272727;
	color: #FFF;
}

/* btn-howto */
.modal_contents .btn-howto{
	margin:0;
}
/* btn-mod-enter */
.modal_contents .btn-mod-enter {
	margin-top: 5rem;
	text-align: center;
	display: inline-block;
	cursor: pointer;
	text-decoration: none;
	vertical-align: middle;
	padding: 5px 20px;
	border: #272727 solid 2px;
	margin: 0 5px;
	background: #272727;
	color: #FFF;
}
/* btn-mod-cansel */
.modal_contents .btn-mod-cansel {
	margin-top: 5rem;
	text-align: center;
	display: inline-block;
	cursor: pointer;
	text-decoration: none;
	vertical-align: middle;
	padding: 5px 20px;
	border: #525252 solid 2px;
	margin: 0 5px;
	color: #525252;
}
.modal_contents .btn-mod-cansel:hover {
	background: #525252;
	color: #FFF;
}
/* --------------------------------------------------
howto-menu
-------------------------------------------------- */

.howto-menu {
	text-align: right;
	padding-bottom: 20px;
}
.howto-menu p {
	display: inline-block;
}
/* btn-about */
.btn-about a {
	margin-right: 2rem;
	color: #272727;
}
.btn-about a:hover {
	text-decoration: underline;
}
/* btn-atten */
.btn-atten a {
	color: #272727;
	cursor: pointer;
	display: inline-block;
	vertical-align: top;
	margin-right: 2rem;
	position: relative;
}
.btn-atten a:hover {
	text-decoration: underline;
}
.btn-atten a:before {
	display: inline-block;
	font-family: FontAwesome;
	font-size: 16px;
	content: "\f071";
	color: #E06F73;
	padding-right: 6px;
}
/* .btn-howto */
.btn-howto {
	display: inline-block;
	padding-right: 10px;
	margin-right: 2rem;
}
.btn-howto a {
	color: #272727;
	display: inline-block;
	position: relative;
}
.btn-howto a:hover {
	text-decoration: underline;
}
.btn-howto a:before {
	display: inline-block;
	font-family: FontAwesome;
	font-size: 16px;
	content: "\f059";
	padding-right: 6px;
	color: #E06F73;
}
/* --------------------------------------------------

mapArea

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

#mapArea {
	width: 100%;
	display: table;
	table-layout: fixed;
}
#mapArea .count {
	background: #666;
	display: inline-block;
	margin-left: 5px;
	color: #FFF;
	padding: 0 10px;
	font-weight: bold;
	font-size: 10px;
}
#mapArea .maximum strong {
	font-size: 15px;
}
#mapArea .count span {
	font-size: 8px;
	font-weight: normal;
}
/* --------------------------------------------------
 route
-------------------------------------------------- */

#mapArea .route {
	width: 350px;
	display: table-cell;
	background: #272727;
	border-right: #BFBDAE solid 1px;
}
#mapArea h3 {
	align-items: center;
	display: flex;
	text-align: center;
	margin: 0 auto;
	position: relative;
	font-size: 2rem;
	margin: 1rem 2rem;
}
#mapArea h3::before, #mapArea h3::after {
	border-top: #ccc solid 1px;
	content: "";
	display: inline;
	flex-grow: 1;
}
#mapArea h3::before {
	margin-right: 20px;
}
#mapArea h3::after {
	margin-left: 20px;
}
#mapArea h3 i {
	margin-right: 1rem;
}
#mapArea .routeHeader {
	background: #F5F3F1;
	border-top: #BFBDAE solid 1px;
}
#mapArea .routeHeader .hint {
	line-height: 1.2;
	font-size: .7em;
	text-align: center;
	margin-bottom: 1rem;
}
#mapArea .ttl-route {
	text-align: center;
	color: #fff;
	background: #272727;
	margin: 0 10px;
}
/* routelist */
#mapArea .routelist {
	height: 500px;
	padding: 10px 0;
	overflow-y: scroll;
	background: #F5F5F5;
}
/* spotItem */
#mapArea .spotItem {
	position: relative;
	background: #FFF;
	cursor: move;
	border: #D6D6CD solid 2px;
	margin: 0 10px 10px;
}
#mapArea .spotItem:hover {
	box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 3px 0;
}
#mapArea .spotItem dt {
	position: relative;
	overflow: hidden;
	width: 100%;
	padding-left: 50px;
	display: table;
	table-layout: fixed;
	border-bottom: #DFE9EE solid 1px;
	padding: 5px;
}
#mapArea .spotItem dt:before {
	color: #BFBDAE;
	content: "\f0dc";
	font-family: FontAwesome;
	position: absolute;
	line-height: 1;
	left: 7px;
	top: 50%;
 margin-top:-.7rem;
}
#mapArea .routeIcon {
	border: 3px solid #E9ABAB;
	background: #fff;
	border-radius: 20px;
	padding: 3px;
	width: 35px;
	height: 35px;
	line-height: 1.5;
	vertical-align: middle;
	font-weight: bold;
	text-align: center;
	display: block;
	position: absolute;
	left: 22px;
	top: 50%;
	margin-top: -17px;
}
#mapArea .spotItem dt .itemTtl {
	width: 70%;
	box-sizing: border-box;
	line-height: 1.2;
	text-align: left;
	display: table-cell;
	vertical-align: middle;
}
#mapArea .spotItem dt .acBtn {
	text-align: right;
	cursor: pointer;
	display: table-cell;
	width: 30px;
	padding: 5px;
	vertical-align: middle;
}
#mapArea .spotItem dt .acBtn i {
	font-weight: bold;
	font-size: 1em;
	color: #272727;
	padding: 4px;
	border-radius: 4px;
}
#mapArea .spotItem dt.open .acBtn i {
	-moz-transform: rotate(-180deg);
	-webkit-transform: rotate(-180deg);
	-o-transform: rotate(-180deg);
	-ms-transform: rotate(-180deg);
}
#mapArea .spotItem dd {
	overflow: hidden;
	position: relative;
	padding: 5px;
}
#mapArea .spotItem .pht {
	width: 120px;
	float: left;
	overflow: hidden;
	text-align: center;
}
#mapArea .spotItem .pht img {
	max-width: 100%;
	max-height: 80px;
}
#mapArea .spotItem .data {
	width: 170px;
	float: right;
	font-size: .8em;
	line-height: 1.2;
}
#mapArea .spotItem .btnDel {
	display: inline-block;
	background: #EFEFEF;
	color: #272727;
	text-decoration: none;
	padding: 2px 10px;
	margin: 5px 0;
}
#mapArea .spotItem .btnDel:hover {
	background: #666666;
	color: #FFF;
}
#mapArea .spotItem .btnDel i {
	margin-right: 5px;
}
/* distance */
#mapArea .distance {
	overflow: hidden;
	position: relative;
	margin: 10px;
}
#mapArea .distance:before {
	position: absolute;
	font-family: FontAwesome;
	content: "\f063";
	top: 0;
	left: 50%;
	font-size: 1.8rem;
	color: #E9ABAB;
}
#mapArea .distance .transferBtn {
	float: right;
	width: 110px;
	text-align: right;
}
#mapArea .distance .transferBtn a {
	display: inline-block;
	font-size: .8em;
	color: #272727;
	text-decoration: none;
	text-align: center;
	border: #272727 solid 1px;
	background: #FAFBFC;
	padding: 0 8px;
}
#mapArea .distance .transferBtn a i {
	margin-right: 5px;
}
#mapArea .distance .transferBtn a:hover {
	background: #98957C;
}
#mapArea .distance .transferBtn a.active {
	color: #fff;
	border: none;
	background: #272727;
	border: #272727 solid 1px;
}
#mapArea .distance .result {
	font-size: 1.2rem;
	float: left;
	width: 140px;
	font-weight: bold;
	color: #DD6A6A;
}
/* memo */
#mapArea .memo {
	margin: 10px;
	cursor: move;
	padding: 0 10px 10px 10px;
	background: #CAE6CE;
}
#mapArea .memo:hover {
	box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 3px 0;
}
#mapArea .memo .textarea {
	display: block;
	width: 100%;
	padding: 3px;
	font-size: .8em;
	margin: 0;
}
#mapArea .memo:before {
	display: inline-block;
	font-family: FontAwesome;
	content: "\f040";
}
#mapArea .memo a {
	display: block;
	float: right;
	vertical-align: middle;
}
#mapArea .memo a i {
	color: #272727;
}
#mapArea .memo p {
	font-size: 1.2rem;
	line-height: 1.2;
	margin-top: 5px;
}
/* routeMenu */
#mapArea .routeMenu {
	background: #272727;
	color: #FFF;
	padding: 10px;
}
#mapArea .routeMenu a i {
	padding-right: 4px;
}
#mapArea .routeMenu .panelBtn, #mapArea .routeMenu .memoBtn {
	font-size: .9em;
	line-height: 1;
	padding: 10px 6px;
	display: block;
	float: left;
	color: #FFF;
	text-align: center;
	text-decoration: none;
	margin-bottom: 10px;
	border: solid 2px #fff;
	width: 48%;
	margin: 1%;
}
/* routeTime */
#mapArea .routeTime {
	font-size: .9em;
	position: relative;
	overflow: hidden;
	padding: 10px 0;
	margin: 10px 0;
	border-bottom: 1px solid #666;
}
#mapArea .routeTime dt {
	vertical-align: middle;
	float: left;
	width: 100px;
	clear: both;
}
/* routeSave */
#mapArea .routeSave {
	width: 100%;
	border: none;
	text-align: center;
}
#mapArea .routeSave .text {
	width: 100%;
	border: none;
	line-height: 1.2;
	font-size: 1em;
	padding: 8px;
	border-radius: 2px;
	vertical-align: middle;
	margin-bottom: 1rem;
}
#mapArea .routeSave .btn-enter a {
	margin: 0;
	display: block;
}
/* --------------------------------------------------
 googleMap
-------------------------------------------------- */

#mapArea .googleMap {
	display: table-cell;
	position: relative;
	background: #F5F3F1;
	border-top: #BFBDAE solid 1px;
	vertical-align: top;
}
/* searchMenu */
#mapArea .searchMenu {
	padding: 0 10px;
	position: relative;
	border-bottom: #BFBDAE solid 1px;
}
#mapArea .searchMenu .btn-delete {
	text-align: right;
}
/* selectSearchBtn */
#mapArea .selectSearchBtn ul {
	position: relative;
	overflow: hidden;
	height: 60px;
}
#mapArea .selectSearchBtn li {
	float: left;
	width: 50%;
}
#mapArea .selectSearchBtn li a {
	display: block;
	margin: 0 5px;
	color: #FFF;
	text-align: center;
	padding: 10px 0;
	background: #808080;
}
#mapArea .selectSearchBtn li a i {
	margin-right: 1rem;
}
#mapArea .selectSearchBtn li.selected a {
	background: #e06f73;
}
#mapArea .selectSearchBtn .selfav:before {
	content: "\f004";
	font-family: fontawesome;
	margin-right: 1rem;
}
#mapArea .selectSearchBtn .selpanel:before {
	content: "\f146";
	font-family: fontawesome;
	margin-right: 1rem;
}
#mapArea .selectSearchBtn .selpanel.open:before {
	content: "\f0fe";
	font-family: fontawesome;
	margin-right: 1rem;
}
/* search-select */
#mapArea .searchMenu .search-select {
	width: 100%;
	background: rgba(245,243,241,0.8);
	z-index: 1;
	position: absolute;
	left: 0;
	top: 61px;
	padding: 20px 20px 0;
}
#mapArea .searchMenu .search-select dl {
 padding-bottom:.5rem;
 margin-bottom:.5rem;
}
#mapArea .searchMenu .search-select dt:before {
	font-size: 2rem;
	font-weight: bold;
	margin-right: 1rem;
}
#mapArea .searchMenu .btn-close a {
	display: inline-block;
}
/* map */
#mapArea #map {
	position: relative;
	width: 100%;
	height: 750px;
	overflow: hidden;
}
/* info-window */
#mapArea .info-window {
	display: inline-block;
	vertical-align: middle;
	width: 160px;
}
#mapArea .info-window .info-routeIcon {
	border: 3px solid #E9ABAB;
	color: #DD6A6A;
	background: #fff;
	border-radius: 20px;
	padding: 3px;
	width: 30px;
	height: 30px;
	line-height: 1.5;
	vertical-align: middle;
	font-weight: bold;
	text-align: center;
	display: inline-block;
	margin: 5px;
	font-size: 13px;
}
#mapArea .info-window .info-spot-title {
	font-size: 1em;
	line-height: 1.2;
	float: left;
	margin-bottom: 5px;
	display: table;
}
#mapArea .info-window .info-spot-title a {
	display: table-cell;
	vertical-align: middle;
}
#mapArea .info-window .info-photo {
	clear: both;
	text-align: center;
	margin-bottom: 10px;
}
#mapArea .info-window .info-photo img {
	max-height: 100px;
}
#mapArea .info-window .col2 a {
	width: 50%;
	float: left;
}
#mapArea .info-window .info-btnDel, #mapArea .info-window .info-btn {
	display: inline-block;
	box-sizing: border-box;
	width: 100%;
	text-align: center;
	text-decoration: none;
	padding: 4px 0;
	font-size: 1.2rem;
	margin-bottom: 3px;
	color: #272727;
}
#mapArea .info-window .info-btnDel i, #mapArea .info-window .info-btn i {
	margin-right: 3px;
}
#mapArea .info-window .info-btnDel {
	border: #fff solid 1px;
	background: #666666;
	color: #fff;
}
#mapArea .info-window .info-btn {
	background: #fff;
	border: #000 solid 1px;
}
#mapArea .info-window .info-btn.active {
	border: #000 solid 1px;
	background: #000;
	color: #fff;
}
#mapArea .info-window a.active {
	border: #000 solid 1px;
	background: #000;
	color: #fff;
}
/* routepanel */
#mapArea .routepanel {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}
#mapArea .routepanel .panelArea {
	padding: 20px;
	width: 340px;
	height: 700px;
	overflow-y: hidden;
	background: #fff;
	float: left;
	display: none;
	box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 3px 0;
}
#mapArea .routepanel h4 {
	background: #F5F3F1;
	padding: 5px;
	text-align: center;
}
#mapArea .routepanel .panelWrap {
	width: 300px;
	height: 660px;
	position: relative;
	border: #bfbdae solid 1px;
}
#mapArea .routepanel .btn-close {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
}
/* --------------------------------------------------
 spotList
-------------------------------------------------- */

#mapArea .spotList {
	width: 220px;
	display: table-cell;
	vertical-align: top;
	text-align: left;
	background: #E2E1DC;
	padding: 15px;
	line-height: 1.2;
	box-shadow: inset 1px 1px 5px rgba(0, 0, 0, 0.2);
}
#mapArea .spotList h5 {
	text-align: center;
	color: #fff;
	padding: 0 10px;
	position: relative;
	background: #e06f73;
	margin-bottom: 26px;
	padding: 8px 0;
}
#mapArea .spotList h5:after {
	position: absolute;
	bottom: -20px;
	margin-left: -10px;
	left: 50%;
	content: "";
	width: 0;
	height: 0;
	border-top: 10px solid #e06f73;
	border-right: 10px solid transparent;
	border-bottom: 10px solid transparent;
	border-left: 10px solid transparent;
}
/* slick */
#mapArea .spotList .slider li {
	background: #FFF;
	margin: 10px 0;
	padding: 5px;
	position: relative;
	box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 3px 0;
}
#mapArea .spotList .slider li.active {
	border: #E06F73 solid 2px;
}
#mapArea .spotList .slider .pht {
	width: 100%;
	max-height: 120px;
	overflow: hidden;
	background: #F5F3F1;
 margin-bottom:.5rem;
}
#mapArea .spotList .slider .pht img {
	max-width: 100%;
	margin: 0 auto;
}
#mapArea .spotList .slider a {
	font-size: 1.2rem;
}
#mapArea .spotList .slick-prev, #mapArea .spotList .slick-next {
	font-size: 1.8em;
	text-align: center;
	color: #CC0000;
	cursor: pointer;
	margin: 10px 0;
}
#mapArea .spotList .slick-prev i, #mapArea .spotList .slick-next i {
	color: #bfbdae;
}
/* --------------------------------------------------

plan-list

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

＃plan-list {
	position: relative;
}
/* ttl-planlist */
.ttl-planlist {
	font-size: 3rem;
	line-height: 1.4;
	background: #E9E9E9;
	padding: 10px 20px 10px 40px;
	margin-bottom: 2rem;
	position: relative;
	border-bottom: #ddd solid 1px;
}
.ttl-planlist:before {
	content: "";
	left: 0;
	top: 50%;
	margin-top: -10px;
	width: 8px;
	height: 20px;
	background: #404040;
	position: absolute;
}
/* --------------------------------------------------
plan-box
-------------------------------------------------- */

.plan-box {
	background: #F7F7F7;
	padding: 0 30px 30px;
	position: relative;
	margin-bottom: 50px;
}
.plan-box .ttl-planlist {
	margin: 0 -30px;
	padding-right: 80px;
}
/* plan-setting */
.btn-setting {
	position: absolute;
	right: 20px;
	top: 0;
}
.btn-setting a {
	display: block;
	box-sizing: border-box;
	text-align: center;
	background: #FFF;
	font-size: 4rem;
	border: #ccc solid 1px;
	z-index: 1;
	position: relative;
	width: 60px;
	color: #666;
}
.btn-setting.open a {
	color: #427CAC;
}
.btn-setting a:after {
	border-right: #fff solid 29px;
	border-left: #fff solid 29px;
	border-bottom: transparent solid 10px;
	border-top: #fff solid 5px;
	content: " ";
	width: 0;
	height: 0;
	position: absolute;
	left: 0;
	bottom: -10px;
}
.btn-setting a:before {
	border-right: #ccc solid 30px;
	border-left: #ccc solid 30px;
	border-bottom: transparent solid 10px;
	border-top: #ccc solid 5px;
	content: " ";
	width: 0;
	height: 0;
	position: absolute;
	left: -1px;
	bottom: -11px;
}
/* plan-setting */
.plan-setting {
	position: relative;
	margin: 0 -30px;
	display: none;
}
.plan-setting ul {
	text-align: right;
	overflow: hidden;
	position: relative;
	padding: 1rem;
	background: #CCC;
	box-shadow: inset 0 0 4px rgba(0,0,0,0.1)
}
.plan-setting li {
	display: inline-block;
	float: right;
}
.btn-plan-edit a, .btn-plan-copy a, .btn-plan-trash a {
	text-align: center;
	display: inline-block;
	display: block;
	color: #FFF;
	text-decoration: none;
	vertical-align: middle;
	padding: 8px 30px;
	border-radius: 5px;
 margin-left:.5rem;
	margin-bottom: 5px;
}
.btn-plan-edit a {
	background: #518CBC;
	box-shadow: 0 5px #427CAC;
}
.btn-plan-edit a:before {
	font-family: FontAwesome;
	content: "\f040";
	margin-right: 1rem;
}
.btn-plan-copy a {
	background: #808080;
	box-shadow: 0 5px #666;
}
.btn-plan-copy a:before {
	font-family: FontAwesome;
	content: "\f0c5";
	margin-right: 1rem;
}
.btn-plan-trash a {
	background: #CD4141;
	box-shadow: 0 5px #BB1E15;
}
.btn-plan-trash a:before {
	font-family: FontAwesome;
	content: "\f1f8";
	margin-right: 1rem;
}
/* --------------------------------------------------
overview
-------------------------------------------------- */

.overview {
	box-sizing: border-box;
	position: relative;
	overflow: hidden;
	margin-top: 30px;
}
/* spotItem */
.overview .spotItem {
	display: inline-block;
	max-width: 50%;
	float: left;
	margin-right: 50px;
	margin-bottom: 2%;
	border: #D6D6CD solid 1px;
	background: #FFF;
	line-height: 1.2;
	position: relative;
}
.overview .spotItem:after, .overview .spotItem:before {
	top: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	left: 100%;
}
.overview .spotItem:after {
	border-color: rgba(255, 255, 255, 0);
	border-width: 31px;
	margin-top: -31px;
	border-left-color: #fff;
}
.overview .spotItem:before {
	border-color: rgba(200, 200, 200, 0);
	border-width: 32px;
	margin-top: -32px;
	border-left-color: #c8c8c8;
}
.overview .spot-num {
	padding: 15px;
	display: table-cell;
	vertical-align: middle;
	background: #FAEBEB;
	color: #DD6A6A;
	font-size: 3rem;
	font-style: italic;
}
.overview .spot-num span {
	font-size: 1rem;
	vertical-align: middle;
}
.overview .spotItem p {
	padding: 15px;
	display: table-cell;
	vertical-align: middle;
}
/* overview-pht */
.pht-list {
	overflow: hidden;
	position: relative;
	z-index: 1;
	margin-left: -1%;
	margin-right: -1%;
}
.pht-list li {
	width: 18%;
	float: left;
	margin: 1%;
	box-sizing: border-box;
	border: #EAEAEA solid 1px;
	background: #FFF;
}
.pht-list .routeIcon {
	font-size: 16px;
	border: 3px solid #E9ABAB;
	background: #fff;
	border-radius: 20px;
	padding: 3px;
	width: 35px;
	height: 35px;
	line-height: 1.5;
	vertical-align: middle;
	font-weight: bold;
	text-align: center;
	display: block;
	position: absolute;
	left: 10px;
	bottom: 10px;
	z-index: 1;
	margin-top: -17px;
}
.pht-list .pht {
	position: relative;
	width: 100%;
	overflow: hidden;
	text-align: center;
	background: #F5F5F5;
}
.pht-list .pht:before {
	content: "";
	display: block;
	padding-top: 75%;
}
.pht-list .pht .frame {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}
.pht-list .pht img {
	max-width: 100%;
	min-height: 100%;
}
.pht-list .spot-ttl {
	padding: 1rem;
	line-height: 1.2;
	text-align: center;
}
.pht-list .spot-ttl a {
	color: #272727;
}
/* --------------------------------------------------
list-sns
-------------------------------------------------- */

.list-sns {
	text-align: center;
	margin: 0 auto;
	display: table;
	table-layout: fixed;
}
.list-sns li {
	display: table-cell;
	overflow: hidden;
	position: relative;
}
.list-sns li a {
	display: block;
	height: 40px;
	width: 150px;
	overflow: hidden;
	text-indent: -999rem;
}
.list-sns .mail a {
	background: #FFA64D;
}
.list-sns .fb a {
	background: #3B5A9A;
}
.list-sns .tw a {
	background: #2CA7E0;
}
.list-sns .line a {
	background: #00B900;
}
.list-sns .mail:before, .list-sns .fb:before, .list-sns .tw:before, .list-sns .line:before {
	font-size: 2.7rem;
	color: #FFF;
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: -1rem;
	z-index: 1;
}
.list-sns .mail:before {
	font-family: FontAwesome;
	content: "\f0e0";
}
.list-sns .fb:before {
	font-family: FontAwesome;
	content: "\f09a";
}
.list-sns .tw:before {
	font-family: FontAwesome;
	content: "\f099";
}
.list-sns .line:before {
	font-family: kumamoto;
	content: "\e809";
}
/* --------------------------------------------------

plan-detail

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

#plan-detail {
	width: 100%;
	position: relative;
	overflow: hidden;
	background: #F7F7F7;
	box-sizing: border-box;
}
/* ttl-plan */
.ttl-plan {
	background: #fff;
	clear: both;
	padding: 50px 0;
	clear: both;
}
.ttl-plan h3 {
	font-size: 3rem;
	font-weight: bold;
	margin-bottom: 2rem;
}
.ttl-plan li {
	display: inline-block;
	padding: 5px 15px;
	font-weight: bold;
	margin-right: 1rem;
	color: #FFF;
}
.ttl-plan .time {
	background: #9367A7;
}
.ttl-plan .distance {
	background: #DBAA00;
}
/* --------------------------------------------------
side-overview
-------------------------------------------------- */

.side-overview {
	width: 30%;
	float: right;
	box-sizing: border-box;
}
.side-overview .follow {
	box-sizing: border-box;
	margin: 40px;
}
.side-overview h5 {
	text-align: center;
	color: #fff;
	padding: 0 10px;
	position: relative;
	background: #e06f73;
	margin-bottom: 26px;
	padding: 8px 0;
	display:table;
	table-layout:fixed;
	width:100%;
}
.side-overview h5:after {
	position: absolute;
	bottom: -20px;
	margin-left: -10px;
	left: 50%;
	content: "";
	width: 0;
	height: 0;
	border-top: 10px solid #e06f73;
	border-right: 10px solid transparent;
	border-bottom: 10px solid transparent;
	border-left: 10px solid transparent;
}
.side-overview .btn-openmap {
	margin-top: 2rem;
}
/* spotItem */
.side-overview .spotItem {
	margin-bottom: 10px;
	border: #D6D6CD solid 1px;
	background: #FFF;
	line-height: 1.2;
	display: table;
	table-layout:fixed;
	width:100%;
}
.side-overview .spot-num {
	padding: 15px;
	display: table-cell;
	vertical-align: middle;
	background: #FAEBEB;
	color: #DD6A6A;
	font-size: 2.5rem;
	font-style: italic;
	text-align:right;
	width:20%;
}
.side-overview .spot-num span {
	font-size: 1rem;
	vertical-align: middle;
}
.side-overview .spotItem p {
	padding: 15px;
	display: table-cell;
	vertical-align: middle;
	width:80%;
}

.side-overview .over .spotItem{
	width:49%;
	overflow: hidden;
	float:left;
}
.side-overview .over .spotItem:nth-child(even){
	float:right;
}
.side-overview .over .spotItem p {
	padding: 10px;
	font-size:1.4rem;
}
.side-overview .over .spotItem p a{
	display:block;
	width: 100%;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
.side-overview .over .spot-num{
	padding: 10px;
	width:30px;
	font-size: 1.7rem;
}
.side-overview .spot-num span {
	display:none;
}
.side-overview .over .btn-openmap{
	clear:both;
}


/* --------------------------------------------------
plan-content
-------------------------------------------------- */

.plan-content {
	width: 70%;
	float: left;
	position: relative;
	overflow: hidden;
	background: #EAEAEA;
	box-sizing: border-box;
}
/* spot-box */
.plan-content .spot-box {
	box-sizing: border-box;
	max-width: 1000px;
	background: #FFF;
	padding: 30px;
	margin-left: 40px;
	margin-right: 40px;
	margin-bottom: 40px;
	float: right;
	position: relative;
	display:table;
	table-layout:fixed;
	width:calc(100% - 80px);
}

.plan-content .spot-box:first-of-type {
	margin-top: 40px;
}
.spot-box .spot-num {
	display: block;
	float: left;
	margin-top: -32px;
	margin-right: 2rem;
	background: #FAEBEB;
	font-size: 12px;
	color: #fff;
	width: 70px;
	line-height: 1;
	text-align: center;
	position: relative;
	color: #DD6A6A;
	font-size: 3rem;
	font-style: italic;
	margin-bottom: 50px;
}
.spot-box .spot-num:after {
	border-right: #FAEBEB solid 35px;
	border-left: #FAEBEB solid 35px;
	border-bottom: transparent solid 10px;
	border-top: #FAEBEB solid 15px;
	content: " ";
	width: 0;
	height: 0;
	position: absolute;
	left: 0;
	bottom: -25px;
}
.spot-box .spot-num span {
	display: block;
	font-size: 1.2rem;
	padding-top: 20px;
}
.plan-content .spot-box h4 {
	display: block;
	font-size: 2.5rem;
	line-height: 1;
	font-weight: bold;
}
.plan-content .spot-box p {
	clear: both;
}
.plan-content .spot-box .pht {
	position: relative;
	width: 100%;
	overflow: hidden;
	text-align: center;
	margin: 30px 0;
}
.plan-content .spot-box .pht img{
	max-height:50vh;
}


/* distance */
.plan-content .distance {
	text-align: center;
	line-height: 1.4;
	box-sizing: border-box;
	max-width: 1000px;
	padding: 30px;
	margin-left: 40px;
	margin-right: 40px;
	margin-top: -40px;
	float: right;
	position: relative;
	display:table;
	table-layout:fixed;
	width:calc(100% - 80px);
}
.plan-content .distance:after {
	display: inline-block;
	font-family: FontAwesome;
	font-size: 16px;
	content: "\f063";
	color: #DD6A6A;
}
.plan-content .transfer {
	display: block;
	font-size: 20px;
	color: #979797;
}
.plan-content .result {
	font-weight: bold;
	color: #DD6A6A;
}

/* memo */
.plan-content .memo {
	line-height: 1.4;
	box-sizing: border-box;
	max-width: 1000px;
	padding: 30px;
	margin-left: 40px;
	margin-right: 40px;
	margin-bottom:40px;
	float: right;
	position: relative;
	display:table;
	table-layout:fixed;
	width:calc(100% - 80px);
	background: #CAE6CE;
	display:table;
}
.plan-content .memo:before {
	font-family: FontAwesome;
	content: "\f040";
	display:table-cell;
	width:3rem;
}
.plan-content .memo p {
	margin-top: 5px;
	display:table-cell;
}

/* map-root */
.map-root {
	margin: 50px 0;
}

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

about

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

#about {
	width: 100%;
}
/* --------------------------------------------------
ttl-about
-------------------------------------------------- */
.ttl-about {
	background: url(../img/ttl_bg.jpg) center center / cover no-repeat;
}
.ttl-about-inner {
	background-color: rgba( 255, 255, 255, 0.8 );
	width: 55%;
	margin: 0 auto;
	text-align: center;
	padding: 40px;
	box-sizing: border-box;
	position: relative;
}
.ttl-about-inner:before {
	position: absolute;
	content: " ";
	background: url(../img/ttl_bg01.png) no-repeat;
	background-size: contain;
	top: 50%;
	left: 10%;
	display: inline-block;
	width: 65px;
	height: 60px;
}
.ttl-about-inner:after {
	position: absolute;
	content: " ";
	background: url(../img/ttl_bg02.png) no-repeat;
	background-size: contain;
	top: 50%;
	right: 10%;
	display: inline-block;
	width: 75px;
	height: 72px;
}
.ttl-about-inner h2 {
	width: 70%;
	margin: 0 auto;
}
.ttl-about-inner h2 img {
	width: 100%;
}
.ttl-about-inner p {
	width: 80%;
	margin: 20px auto 0;
	line-height: 2.5;
	font-weight: bold;
}
.btn-plan {
	display: inline-block;
	margin: 10px;
}
.btn-plan a {
	background: #FFF;
	border-radius: 5px;
	box-shadow: 0 5px #E06F73;
	color: #E06F73;
	display: block;
	font-size: 1.5rem;
	padding: 8px 30px;
	text-align: center;
	text-decoration: none;
	vertical-align: middle;
	border: 1px solid #E06F73;
	font-weight: bold;
}
.btn-plan a::before {
	content: "\f067";
	font-family: fontawesome;
	margin-right: 0.5rem;
}
.btn-howto02 {
	display: inline-block;
	margin: 10px;
}
.btn-howto02 a {
	background: #FFF;
	border-radius: 5px;
	box-shadow: 0 5px #E06F73;
	color: #E06F73;
	display: block;
	font-size: 1.5rem;
	padding: 8px 30px;
	min-width: 500px;
	text-align: center;
	text-decoration: none;
	vertical-align: middle;
	border: 1px solid #E06F73;
	font-weight: bold;
}
.btn-howto02 a::before {
	content: "\f059";
	font-family: fontawesome;
	margin-right: 0.5rem;
}
/* --------------------------------------------------
usage
-------------------------------------------------- */
.usage {
	width: 100%;
	background: #F5F3F1;
	padding-bottom: 30px;
}
.ttl-about-sub {
	align-items: center;
	display: flex;
	font-size: 2.5rem;
	font-weight: bold;
	padding: 40px 0;
	text-align: center;
	width: 50%;
	margin: 0 auto;
}
.ttl-about-sub::before, .ttl-about-sub::after {
	border-top: 4px solid #BFBDAE;
	content: "";
	display: inline;
	flex-grow: 1;
}
.ttl-about-sub::before {
	margin-right: 1em;
}
.ttl-about-sub::after {
	margin-left: 1em;
}
.usage-list {
	overflow: hidden;
	text-align: center;
	margin: 0 auto;
}

.usage-list-inner01,
.usage-list-inner02{
	border-radius:50%;
	background: #FFF;
}

.usage-list-inner01{
	padding: 25% 0;
}

.usage-list-inner02{
	padding: 20% 0;
}

.usage-list li {
	display: block;
	width: 32%;
	font-weight: bold;
	
	float: left;
	text-align: center;
	margin-right: 2%;
}
.usage-list li:last-child {
	margin-right: 0;
}

.usage-list li p span {
	background: linear-gradient(transparent 60%, #ff0 0%);
}
.usage-list li figure {
	margin: 0 auto 10px;
}
.usage-list li:first-child figure {
	width: 75%;
}
.usage-list li:nth-child(2) figure {
	width: 75%;
}
.usage-list li:nth-child(3) figure {
	width: 40%;
}
.usage-list li figure img {
	width: 100%;
}
/* --------------------------------------------------
complete-image
-------------------------------------------------- */
.complete-image figure {
	width: 75%;
	max-width: 1049px;
	padding: 40px 0;
	background: #F5F3F1;
	margin: 0 auto;
	text-align: center;
}

.complete-image figure img{
	width: 80%;
}

.complete-image .btn-plan a{
	min-width: 500px;
}

 @media screen and (max-width: 1080px) {

	/* --------------------------------------------------
		
	plan-detail
		
	-------------------------------------------------- */
		
	/* ttl-plan */
	.ttl-plan {
		padding: 20px;
	}
	.ttl-plan h3 {
		font-size: 2rem;
		line-height: 1.4;
		margin-bottom: 1rem;
	}
	/* --------------------------------------------------
	side-overview
	-------------------------------------------------- */
		
	.side-overview {
		width: 40%;
		float: right;
		box-sizing: border-box;
	}
	.side-overview .follow {
		margin: 30px;
	}
	/* --------------------------------------------------
		plan-content
	-------------------------------------------------- */
		
	.plan-content {
		width: 60%;
	}
	/* spot-box */
	.plan-content .spot-box {
		max-width: none;
		width:calc(100% - 60px);
		padding: 20px;
		margin-left: 30px;
		margin-right: 30px;
		margin-bottom: 30px;
	}
	.plan-content .spot-box:first-of-type {
		margin-top: 30px;
	}
	
	/* --------------------------------------------------
		
	about
		
	-------------------------------------------------- */

	.ttl-about-inner {
		width: 80%;
		padding: 40px 40px;
	}

	}
 @media screen and (max-width: 767px) {

		/* --------------------------------------------------
				
		plan-list
				
		-------------------------------------------------- */
				
		＃plan-list {
			position: relative;
		}
		/* ttl-planlist */
		.ttl-planlist {
			font-size: 1.7rem;
			padding: 10px 20px 10px 30px;
		}
		/* --------------------------------------------------
		plan-box
		-------------------------------------------------- */
				
		.plan-box {
			padding: 0 20px 20px;
		}
		.plan-box .ttl-planlist {
			margin: 0 -20px;
			padding-right: 60px;
		}
		/* plan-setting */
		.btn-setting {
			right: 0;
		}
		.btn-setting a {
			font-size: 2.7rem;
		}
		/* plan-setting */
		.plan-setting {
			margin: 0 -20px;
		}
		.plan-setting li {
			display: block;
			float: none;
		}
		.btn-plan-edit a,  .btn-plan-copy a,  .btn-plan-trash a {
			display: block;
			padding: 8px 0;
			margin-left: 0;
			margin-bottom: 10px;
		}
		/* --------------------------------------------------
		overview
		-------------------------------------------------- */
				
		.overview {
			margin-top: 20px;
		}
		/* spotItem */
		.overview .spotItem {
			display: block;
			width: 100%;
			max-width: 100%;
			float: none;
			margin-right: 0;
			margin-bottom: 10px;
		}
		.overview .spotItem:after,  .overview .spotItem:before {
			content: none;
		}
		.overview .spotItem p {
			padding: 10px;
		}
		.overview .spot-num {
			padding: 15px;
			display: table-cell;
			vertical-align: middle;
			background: #FAEBEB;
			color: #DD6A6A;
			font-size: 1.8rem;
			font-style: italic;
		}
		/* overview-pht */
		.pht-list {
			margin-left: 0;
			margin-right: 0;
		}
		.pht-list .routeIcon {
			left: 3px;
			bottom: 3px;
		}
		.pht-list li {
			width: 33.33%;
			float: left;
			margin: 0;
		}
		.pht-list .spot-ttl {
			display: none;
		}
		/* --------------------------------------------------
		list-sns
		-------------------------------------------------- */
				
		.list-sns li {
			display: table-cell;
			overflow: hidden;
			position: relative;
		}
		.list-sns li a {
			display: inline-block;
			height: 40px;
			line-height:40px;
			width: 60px;
		}

		.list-sns .mail:before, .list-sns .fb:before, .list-sns .tw:before, .list-sns .line:before {
			font-size: 1.8rem;
			margin-top: 6px;
			margin-left: -7px;
		}

		/* --------------------------------------------------
				
		plan-detail
				
		-------------------------------------------------- */
				
		/* ttl-plan */
		.ttl-plan {
			padding: 20px;
		}
		.ttl-plan h3 {
			font-size: 1.6rem;
		}
		.ttl-plan li {
			padding: 3px 5px;
		 margin-right:.3rem;
		}
		/* --------------------------------------------------
		side-overview
		-------------------------------------------------- */
				
		.side-overview {
			width: auto;
			float: none;
		}
		.side-overview .follow {
			margin: 20px;
			position: relative !important;
			top: 0 !important;
			left: 0 !important;
		}
		/* spotItem */
		.side-overview .spot-num {
			padding: 10px;
			font-size: 2rem;
		}
		.side-overview .spotItem p {
			padding: 10px;
		}
		/* --------------------------------------------------
		plan-content
		-------------------------------------------------- */
				
		.plan-content {
			width: auto;
			float: none;
		}
		/* spot-box */
		.plan-content .spot-box {
			max-width: none;
			width:calc(100% - 30px);
			padding: 20px;
			margin: 15px;
			float: none;
		}
		.plan-content .spot-box:first-of-type {
			margin-top: 15px;
		}
		.spot-box .spot-num {
			margin-top: -20px;
		}
		.plan-content .spot-box h4 {
			font-size: 2rem;
		}
		/* map-root */
		.map-root {
			margin: 20px 0;
		}
		
		/* --------------------------------------------------
		
		about
			
		-------------------------------------------------- */
		
	
		.ttl-about-inner {
			width: 100%;
			padding: 20px 5px;
		}
		
		.ttl-about-inner:before {
			background: none;
		}
		.ttl-about-inner:after {
			background: none;
		}
		
		.ttl-about-inner p{
			margin-bottom: -20px;
		}
		
		.ttl-about-inner p br{
			display: none;
		}
		
		
		.ttl-about-sub {
			align-items: center;
			display: flex;
			font-size: 1.5rem;
			font-weight: bold;
			padding: 20px 0;
			text-align: center;
			width: 90%;
			margin: 0 auto;
		}
		
		/* --------------------------------------------------
		usage-list
		-------------------------------------------------- */
		
		.usage-list-inner01,
		.usage-list-inner02{
			border-radius:10px;
			background: #FFF;
		}
		
		.usage-list-inner01,
		.usage-list-inner02{
			padding: 1%;
		}
		
		.usage-list li {
			display: block;
			width: 90%;
			height: auto;
			font-weight: bold;
			float: none;
			text-align: center;
			padding: 0 0 0;
			margin: 0 auto 15px auto;
			overflow: hidden;
		}
		.usage-list li:last-child {
			margin: 0 auto;
		}
		.usage-list li p {
			padding: 10px;
			text-align: center;
		}
		
		.usage-list li p br{
			display: none;
		}
		.usage-list li p span {
			background: linear-gradient(transparent 60%, #ff0 0%);
		}
		.usage-list li figure {
			padding-top: 10px;
		}
		.usage-list li:first-child figure {
			width: 50%;
		}
		.usage-list li:nth-child(2) figure {
			width: 50%;
		}
		.usage-list li:nth-child(3) figure {
			width: 30%;
		}
		.usage-list li figure img {
			width: 100%;
		}
		
		.btn-plan a,
		.btn-howto02 a {
			font-size: 1.3rem;
		}

		.btn-plan, .btn-howto02 {
			display: block;
			float: none;
			margin-bottom: 2rem;
			min-width: 0;
			text-align: center;
		}

		.complete-image .btn-plan a{
			min-width: 0;
		}
		
		.btn-howto02 a {
			min-width: 0;
		}
		
	}
	
	
	
/* --------------------------------------------------

howto

-------------------------------------------------- */
#plan-howto img {
	width: 100%;
}
#plan-howto h3 {
	text-align: center;
	align-items: center;
}
.yellow_line_pc {
	background: linear-gradient(transparent 60%, #ffff33 60%);
	text-align: center;
	align-items: center;
	font-size: 2.5rem;
	font-weight: bold;
	display: inline-block;
}
.yellow_line_sp {
	display: none;
}
.step_num {
	text-align: center;
	padding-top: 20px;
	font-weight: bold;
	color: #999780;
	font-size: 21px;
}
.step_num span {
	font-size: 3.5rem;
}
.howto_box {
	background-color: #FFF;
	border: 5px solid #bfbdae;
	margin: 15px;
	padding: 30px;
	text-align: left;
	font-size: 1.6rem;
}
.step2_text_sp {
	display: none;
}
.text_pink {
	color: #d84343;
	font-size: 2.1rem;
	font-weight: bold;
	margin-top: 10px;
}
.howto {
	position: relative;
	padding-left: 25px;
	margin-bottom: 15px;
	text-align: center;
	display: inline-block
}
.howto img {
	vertical-align: middle;
}

.howto:before {
	position: absolute;
	content: '';
	bottom: -3px;
	left: 0;
	width: 0;
	height: 0;
	border: none;
	border-left: solid 15px transparent;
	border-bottom: solid 15px rgb(119, 195, 223);
}
.howto:after {
	position: absolute;
	content: '';
	bottom: -3px;
	left: 10px;
	width: 100%;
	border-bottom: solid 3px rgb(119, 195, 223);
}
.plan-box {
	text-align: center;
}
.howto_btn {
	text-align: center;
		font-size: 2vmin;

}

	@media screen and (max-width: 767px) {

	.step2_text_sp {
		display: block;
	}
	.step2_text_pc {
		display: none;
	}
	.yellow_line_sp {
		background: linear-gradient(transparent 60%, #ffff33 60%);
		text-align: center;
		align-items: center;
		font-size: 2.5rem;
		font-weight: bold;
		display: inline-block;
	}
	.yellow_line_pc {
		display: none;
	}
	}
	
	

