@charset "utf-8";


/* all
-------------------------------------------------------------------*/

.wrapper_all {
	width: 100%;
	text-align: center;
	position: relative;
/*	overflow: hidden;*/
}
.site_wrapper {
	width: 1100px;
	margin: 0 auto;
	text-align: left;
    box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
@media screen and (max-width:1200px) {
	.site_wrapper {
		width: 100%;
		overflow:hidden;
	}
}
@media screen and (max-width:760px) {
	.site_wrapper {
		width: 100%;
	}
}


/* header
-------------------------------------------------------------------*/
header {

overflow-y: hidden;
}
.all_header {
	/*position: absolute;
	left:0;
	top:0;*/
	/* width:100%; */
	z-index:9989;
	position: absolute;
	background: #fff;
	top: 0;
	left: 0;
	right: 0;
}



.header_wrapper {
	width:1100px;
	margin:auto;
	margin-bottom: 10px;
	text-align:left;
	position:relative;
	height: 50px;
}
.header_wrapper .left_area {
	float:left;
	margin-top:10px;
}
.header_wrapper .right_area {
	float:right;
}
@media screen and (max-width:1250px) {
	.header_wrapper {
		width:100%;
		box-sizing:border-box;
		padding-left:70px;
		padding-right:60px;
	}
}
@media screen and (max-width:1200px) {
	.header_wrapper .right_area .left{
		display:none;
	}
}
@media screen and (max-width:1000px) {
	.header_wrapper .right_area .right .first{
		display:none;
	}
}
@media screen and (max-width:760px) {
.header_wrapper {
	width:auto;
	margin:  0;
	background-color: #fff;
	height: 60px;
	overflow: hidden;
	padding: 0;
}
.header_wrapper .left_area {
	float:none;
	margin:0;
}
.header_wrapper .left_area a{
	display:inline-block;
	padding: 9px 10px 8px;
}
.header_wrapper .left_area img.display_sp_img{
	display: inline-block;
}
.header_wrapper .map_icon{
	position:absolute;
	top:0;
	right:64px;
	display: none;
}
.header_wrapper .map_icon a{
	display:block;
}
.header_wrapper .right_area {
	/* float:none; */
}
}

@media screen and (max-width:360px) {
	.header_wrapper .left_area img.display_sp_img{
		display:none;
	}
	.header_wrapper .left_area img.display_sp_img + img{
		display:block;
	}
	.header_wrapper .map_icon a{
		padding:4px 0;
		background:#fff;
		display:block;
	}
	.header_wrapper .map_icon img{
		height:52px;
		width:auto;
	}
}
/**ヘッダー左**/
.header_wrapper .right_area .left {
	float:left;
	margin-right: 10px;
	margin-top: 12px;
}
.header_wrapper .right_area .left ul li {
	float: left;
	margin: 0 4px;
}
.header_wrapper .right_area .left ul li a{
	width:38px;
	height:38px;
	border-radius:50%;
	display:inline-block;
	box-shadow: 0 3px 11px -2px rgb(0 0 0 / 30%);
}


/**ヘッダー右**/
.header_wrapper .right_area .right {
	float:right;
	background-color:#FFF;
	font-size:12px;
	color: #444;
	font-weight:bold;
	padding: 3px 8px 2px;
}
.header_wrapper .right_area .right .gsib_a{
	padding-top: 0;
	padding-bottom: 0;
}

.header_wrapper .right_area .right .first,
.header_wrapper .right_area .right .second,
.header_wrapper .right_area .right .third {
	float: left;
}
.header_wrapper .right_area .right .first,
.header_wrapper .right_area .right .second {
	border-right: 1px dotted #B3B3B3;	
}
.header_wrapper .right_area .right p {
	text-align:center;
	margin-bottom: 2px;
}

.header_wrapper .right_area .right a{
	color:#FFF;
}
.header_wrapper .right_area .right a span{
	color:#333;
}

/**サイト内検索**/
.header_wrapper .right_area .right .first {
	padding-right: 6px;
	width: 190px;
}
.header_wrapper .right_area .right .first .gsc-control-cse,
.header_wrapper .right_area .right .first .gsc-input{
	padding:0;
}
.header_wrapper .right_area .right .first .gsc-input-box{
	border:1px solid #999999;
	border-radius:3px;
	-webkit-border-radius: 3px;
	width:140px;
	height:28px;
	padding: 0;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.header_wrapper .right_area .right .first .gsc-input-box input[type=text]{
	appearance:none;
	-webkit-appearance:none;
	-moz-appearance: none;
	outline: none;
	padding:3px;	
	vertical-align:middle;	
}
.header_wrapper .right_area .right .first .gsc-search-button{
	line-height:1;
/*	padding-left: 5px;*/
}
.header_wrapper .right_area .right .first input[type=image],
.header_wrapper .right_area .right .first button{
	appearance:none;
	-webkit-appearance:none;
	-moz-appearance: none;
	background-color: #767676;
	color:#FFF;
	margin:  0;
	line-height:  1;
	border:none;
	padding: 6px 15px;
	vertical-align:baseline;
	border: 1px solid #767676;
	cursor:pointer;
	border-radius:3px;
	-webkit-border-radius: 3px;
	font-size:12px;
	transition: all 0.3s ease;
	text-align:center;
	vertical-align:  middle;
}
.header_wrapper .right_area .right .first button svg{
	margin:auto;
	display:block;
}
.header_wrapper .right_area .right .first input[type=button] {
	appearance:none;
	-webkit-appearance:none;
	-moz-appearance: none;
	background-color:#999999;
	color:#FFF;
	border:none;
	padding:3px 10px;
	vertical-align:baseline;
	border:1px solid #999999;
	cursor:pointer;
	border-radius:3px;
	-webkit-border-radius: 3px;
	font-size:12px;
	transition: all 0.3s ease;
}
.header_wrapper .right_area .right .first input[type=button]:hover,
.header_wrapper .right_area .right .first input[type=button]:focus {
	opacity:0.6;
}
/**文字サイズ**/
.header_wrapper .right_area .right .second {
	padding: 0 6px;
}
.header_wrapper .right_area .right .second ul li {

	float:left;
}
.header_wrapper .right_area .right .second ul li.last {
	margin-left:5px;	
}
.header_wrapper .right_area .right .second ul li a {
	display: block;
	padding:3px 10px;
	font-weight: normal;
	text-decoration:none;
	background-color: #767676;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	border: 1px solid #767676;
	vertical-align:bottom;
	border-radius:3px;
	-webkit-border-radius: 3px;
	transition: all 0.3s ease;
}
.header_wrapper .right_area .right .second ul li a:hover,
.header_wrapper .right_area .right .second ul li a:focus {
	opacity:0.6;
}
/**ランゲージ**/
.header_wrapper .right_area .right .third {
	padding-left: 6px;
}
.header_wrapper .right_area .right .third select {
	color:#e74;
	height:25px;
	padding: 3px;
	width:100%;
	display:block;
	box-sizing:border-box;
	margin-top:3px;
	border: 1px solid #ddd;
	border-top-color:#999;
	font-size: 12px;
	background: #fff;
}

/* g_navi
-------------------------------------------------------------------*/
.fixedMenu {
	position:fixed;
	top:0;
	left:0;
	z-index:10;
	background:  #004000;
	padding: 0px 0 14px;
}



.g_nav_bg {
  	margin: 0 auto;
  	text-align: center;
  	width: 100%;
  	z-index: 9990;
  	transition:  background,0.5s;
  	background: #d5f5b5;
  	padding: 11px 0 15px;
}
.g_nav {
	display:table;
	width:100%;
}
.g_nav:after {
	display:none;
}
.g_nav li {
	display:table-cell;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	/*	float:left;
	margin-right:48px;*/
	padding-right: 3.5%;
	text-align:center;
}
.g_nav li.last {
	margin-right:0;
	padding-right:0;
}
.g_nav li a {
	font-size:100%;
	transition:all 0.3s ease;
	color: #333;
	display: block;
	text-align:center;
	position:relative;
	text-decoration:none;
	padding: 5px 17px;
	min-width:3em;
	box-sizing:border-box;
	white-space:nowrap;
	-moz-text-shadow: 1px 1px 20px rgb(0, 0, 0),
				 1px -1px 20px rgb(0, 0, 0),
				 -1px 1px 20px rgb(0, 0, 0),
				 -1px -1px 20px rgb(0, 0, 0);
	-webkit-text-shadow: 1px 1px 20px rgb(0, 0, 0),
				 1px -1px 20px rgb(0, 0, 0),
				 -1px 1px 20px rgb(0, 0, 0),
				 -1px -1px 20px rgb(0, 0, 0);
	-ms-text-shadow: 1px 1px 20px rgb(0, 0, 0),
				 1px -1px 20px rgb(0, 0, 0),
				 -1px 1px 20px rgb(0, 0, 0),
				 -1px -1px 20px rgb(0, 0, 0);
	-ms-user-select: none;
	-webkit-user-select: none;
	user-select: none;
}
.g_nav li a:after{
	content:"";
	display:block;
	background: #99d069;
	width:100%;
	height:1px;
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	transition:background .4s;
}
.g_nav li a:hover,
.g_nav li a:focus{
	color:#FF8000;
}
.g_nav li a:hover:after,
.g_nav li a:focus:after {
	background:#FF8000;
	height:2px;
}
@media screen and (max-width:760px) {
	.all_header {
		position: fixed;
	}

	.g_nav_bg {
		display:none;
	}
}
@media screen and (max-width:1250px) {
    .g_nav_bg .site_wrapper{
    	padding-right:5px;
    	padding-left:5px;
    	width:auto;
    	max-width:100%;
    }
    .g_nav_bg.fixedMenu .site_wrapper{
    	padding-right:70px;
    }
}

@media screen and (max-width:760px) {
    .g_nav_bg.fixedMenu .site_wrapper{
    	padding-right:0;
    	padding-left:0;
    }
}

/**/

#spMenu {
	display:none;
}
@media screen and (max-width:760px) {
	#spMenu {
		display:block;
	}
	#spMenu dl {

	}
	/*#spMenu dl dt {
		position:absolute;
		top:-45px;
		right:10px;
		width:40px;
		height:40px;
		background: url(../img/common/ico_menu.gif) no-repeat;
		background-size:40px;
		cursor:pointer;
		text-indent:-9999px;
	}*/

	#spMenu dl dd {
		z-index:10000;
		background: url(../img/common/navi_bg.png) left top repeat;
		position:absolute;
		width:100%;
		display:none;
	}
	#spMenu dl dd ul {
	}
	#spMenu dl dd ul li {
		border-bottom:#CCC 1px dotted;
	}
	#spMenu dl dd ul li a {
		padding:15px 20px;
		display:block;
		text-decoration:none;
	}
	#spMenu dl dd ul li span {
		display:block;
		padding-left:20px;
		background: url(../img/common/link_icon_news.png) left center no-repeat;
		background-size:3%;

	}
	#panel-btn{
		position:absolute;
		top:0px;
		right:0px;
		width: 40px;
		height: 52px;
		margin: 0px 0 0px;
		/*border-radius: 50%;*/
		background: #fff;
	}

	#panel-btn:hover{
		/*background: #fafafa;*/
	}
	#panel-btn-icon{
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
		width: 26px;
		height: 4px;
		margin: -1px 0 0 -12px;
		background: #F4A000;
		transition: .2s;
	}
	#panel-btn-icon:before, #panel-btn-icon:after{
		display: block;
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		width: 26px;
		height: 4px;
		background: #F4A000;
		transition: .3s;
	}
	#panel-btn-icon:before{
		margin-top: -10px;
	}
	#panel-btn-icon:after{
		margin-top: 6px;
	}
	#panel-btn .close{
		background: transparent;
	}
	#panel-btn .close:before, #panel-btn .close:after{
		margin-top: 0;
	}
	#panel-btn .close:before{
		transform: rotate(-45deg);

		-webkit-transform: rotate(-45deg);
	}
	#panel-btn .close:after{
		transform: rotate(-135deg);
		-webkit-transform: rotate(-135deg);
	}
}
@media screen and (max-width:360px) and (min-width:330px) {
	#panel-btn {
		width: 50px;
	}
	#panel-btn-icon {
		width: 32px;
		margin: -1px 0 0 -16px;
	}
	#panel-btn-icon:before, #panel-btn-icon:after {
		width: 32px;

	}
}
@media screen and (max-width:759px) and (min-width:361px) {
	#panel-btn {
		width: 50px;
	}
	#panel-btn-icon {
		width: 32px;
		margin: -1px 0 0 -16px;
	}
	#panel-btn-icon:before, #panel-btn-icon:after {
		width: 32px;

	}
}



/* contents
-------------------------------------------------------------------*/
/*#page_top .wrapper_all {
	display:none;
}*/

#loader-bg {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background: #fff;
  z-index: 20050;
}
#loader {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 200px;
  height: 200px;
  margin-top: -100px;
  margin-left: -100px;
  text-align: center;
  color: #fff;
  z-index: 10012;
}

/*******/
#content {
	background:  url(../img/common/content_btm_bg02.png) center 99% no-repeat , url(../img/common/content_btm_bg.png) center bottom repeat-x;
	padding-bottom:120px;
}

#page_top #content {
	margin-top:50px;

}
.top_position {
	position:fixed;
	bottom:10px;
	right:10px;
	z-index:9999;
}
#footer .site_wrapper {
	position:relative;
}
#footer .site_wrapper:before {
	content:"";
	display:block;
	position:absolute;
	background:url(../img/common/content_bottom_zoobo.png) no-repeat;
	width:67px;
	height:92px;
	top: -122px;
	left: 30px
}


/* footer
-------------------------------------------------------------------*/
#footer {
	background-color:#c8ea8c;
	padding: 40px 0 30px;
/*	color:#FFF;*/
	color:#442222;
}
#footer a {
	color:#FFF;
}
#footer .f_con {
	/* width:1000px; */
	margin:auto;
}
#footer .left_area {
	width:680px;	
}
#footer .f_con > .left_area{
	width: 840px;
}

#footer .left_area,
#footer .left,
#footer .right  {
	float:left;
}
#footer .right  {
	margin-left:20px;
}
#footer .right_area{
	float:right;
}
#footer .left_area .name {
	font-size:	113%;
	margin-bottom:7px;
}
#footer .names a{
	display:inline-block;
	vertical-align:middle;
	transition:opacity .4s;
	margin-bottom:5px;
}
#footer .names a.logo img{
	width:192px;
	vertical-align:middle;
}
#footer .names a.icon img{
	width:54px;
	vertical-align:middle;
}
#footer .names a.icon{
	margin-left:10px;
}
#footer .names a:hover{
	opacity:0.7;
}
#footer .left_area dl {
	margin-bottom:5px;
}
#footer .left_area dl:last-child {
	margin-bottom:0;
}
#footer .left_area dl dt {
	background-color:#579322;
	background-color: #a1d559;
	color:#442222;
	float:left;
	width: 150px;
	text-align:center;
	font-size:88%;
	padding:2px 0;
	border-radius:3px;
}
#footer .left_area .box01 dl dt {
	width:100px;
}	
#footer .left_area dl dd {
	float:left;
	font-size:88%;
	padding:2px 10px;
}
#footer .right_area {
	width:250px;
	
}
#footer .right_area .inner {
	background-color: #a1d559;
	padding:40px 30px;
	border-radius:5px;
}
#footer .right_area ul li a {
	color:#442222;
	display: block;
	margin-bottom:10px;
}
#footer .right_area ul li a span {
	display:block;
	background:url(../img/common/footer_link_icon.png) no-repeat;
	background-size:17px;
	background-position:0 4px;
	padding-left:25px;
}
#footer .right_area ul li:last-child a {
	margin-bottom:0;
}

@media screen and (max-width:760px) {
	#page_top #content {
		margin-top:10px;
		background-size: 700px;
	}
	#footer {
		/* background-color:#6EB92B; */
		padding: 20px 10px 20px;
	}
	#footer .f_con {
		width:100%;
	}
	#footer .names {
		text-align:center;
		margin-bottom:20px;
	}
	#footer .names a.logo{
		margin-left:calc(50% - 96px);
		margin-right:calc(50% - 96px);
		text-align:center;
		margin-bottom:10px;
	}
	#footer .names a.icon{
		width:42px;
		margin:0 5px;
	}
	#footer .names a img{
		width:100%;
	}
	#footer .f_con > .left_area,
	#footer .left_area,
	#footer .left  {
		width:100%;
		float:none;
		margin:0 0 10px;
	}
	#footer .right_area,
	#footer .right {
		width:100%;
		float:none;
		margin:0 0 10px;	
	}	
	#footer .left_area dl {
		position:relative;
	}
	#footer .left_area dl dt {
		float:none;
		width: 130px;
		position:absolute;
		top:0;
		left:0;
	}
	#footer .left_area dl dd {
		float:none;
		padding:  2px 0;
	}
	#footer .left_area .box01 dl dt {
		width:80px;
	}	
	#footer .left_area .box01 dl dd {
		padding-left:85px;
	}	
	#footer .left_area .box02 dl dd {
		padding-left:135px;
	}			
	#footer .site_wrapper:before {
		background-size: cover;;
		width:34px;
		height:46px;
		top: -100px;
		left: 30px
	}
	#footer .right_area .inner {
		background:none;
		padding:0;
	}
	#footer .right_area .inner a{
		background-color:#a1d559;
		padding:6px;
		border-radius:5px;
		margin-bottom:4px;
	}	
	#footer .right_area ul li a span {
		background-position:0 3px;
		background-size:14px;
		padding-left:20px;
	}
}
p#link_content {
    position:  absolute;
    top: 0;
    left:  0;
    z-index:9999;
}
p#link_content a{
    display:block;
    padding: 20px 6px;
    background: #f9ffc5;
    color:#630;
    text-decoration: underline;
    line-height:  1;
}
p#link_content a:hover,
p#link_content a:focus{
    background:#cf9;
    text-decoration:none;
}

@media screen and (max-width:760px) {
p#link_content {
	display:none;

}
}

/*20200210*/
@media screen and (max-width:760px) {
	.header_wrapper .right_area .right .first{
		display:none;
	}
	.header_wrapper .right_area .right .second{
		display:none;
	}
	.header_wrapper .right_area .left {
        display: none;
	}
	.header_wrapper .right_area .right {
        /* width: 100%; */
        float: none;
        position: absolute;
        top: 0;
        right: 64px;
        padding:0;
        margin:0;
    }
    .header_wrapper .right_area .right .third select {
    	width:64px;
    	height:60px;
    	padding:0;
    	margin:0;
    	border:none;
    	box-shadow:none;
    	color:transparent;
    	text-indent: -9999px;
    	cursor:pointer;
    	border-radius:0;
    	position:relative;
    	z-index:20;
    	-webkit-appearance: none;
    	-moz-appearance: none;
    	opacity: 0;
    }
    .header_wrapper .right_area .right .third select::-ms-expand {
		display: none;
	}
    .header_wrapper .right_area .right .third select:focus{
    	outline:none;
    }
    .header_wrapper .right_area .right .third select option{
    	color:#000;
    	opacity:1;
    }
	.header_wrapper .right_area .right .third {
        width: auto;
        height: auto !important;
        position: relative;
        margin:0;
        padding:0;
        color: #338015;
        background:url(../img/common/ico_language.png) no-repeat top center #f9ff99;
        background-size: 30px;
        background-position: 50% 6px;
     }
	.header_wrapper .right_area .right .third:before{
		content:"language";
		display:block;
		position:absolute;
		top: 38px;
		left:0;
		right:0;
		text-align:center;
		z-index:1;
		font-size: 8px;
	}
	#google_translate_element{
		display:none;
	}
	.header_wrapper .right_area .right a {
		color: #FFF;
		width: auto;
		display: inline-block;
	}
	.header_wrapper .right_area {
		float: none;
		width: auto;
		margin-left: auto;
 	}
	#sp_lgcot{
		display:none;
	}
}

.drop_menu {
	display:block;
}
.drop_menu.guide{
	display:none;
}
.drop_menu > input{
	display:none;
}
.drop_menu > label{
	display:block;
	width: 64px;
	height: 60px;
	position:fixed;
	z-index:20000;
	font-size: 8px;
	letter-spacing:-0.03em;
}
.drop_menu.sitemap > label{
	background:#46a063;
	color:#fff;
	top:0;
	right:0;
}
body a.hamburger{
	display:none;
}
body.friend_index a.hamburger,
body.friend_detail a.hamburger{
	display:block;
}
.drop_menu input ~ label p{
   z-index:2;
   width:100%;
   margin-bottom: 0;
}
.drop_menu input ~ label span{
   cursor: -webkit-grabbing;
   display:block;
   width:26px;
   height:3px;
   background: #fff;
   -webkit-transition: 0.2s transform, 0.5s background;
   transition: 0.2s transform, 0.5s background;
   position:absolute;
   top: 50%;
   left:0;
   right:0;
   border-radius:3px;
   margin:auto;
   margin-top:-10px;
}
.drop_menu input ~ label span:before,
.drop_menu input ~ label span:after{
   border-radius:3px;
   content:"";
   display:block;
   width:26px;
   height:3px;
   background:#fff;
   position:absolute;
   margin-top:0;
}
.drop_menu input ~ label span:before{
   top:-8px;
}
.drop_menu input ~ label span:after{
   top:8px;
}
.drop_menu input:checked ~ label span{
   -webkit-transform:rotate(-45deg) ;
		   transform:rotate(-45deg) ;
}
.drop_menu input:checked ~ label span:before{
   top:0;
}
.drop_menu input:checked ~ label span:after{
   -webkit-transform:rotate(270deg);
		   transform:rotate(270deg);
   top:0;
   margin-top:0;
}
.drop_menu input ~ label div{
	padding-top: 38px;
}
.drop_menu > .NavWrap{
	position:fixed;
	right:-100%;
	top:0;
	margin-top:60px;
	width:100%;
	padding:5px;
	overflow:hidden;
	box-sizing:border-box;
	transition: right .2s;
	background:#fff;
	z-index:19000;
	max-width:360px;
	box-shadow:0 1px 5px 0 rgba(0,0,0,0.3) inset;
}
.drop_menu > .NavWrap .nav_scroll{
	height:calc(100vh - 70px);
	overflow-x:hidden;
	overflow-y:auto;
	padding:10px;
	box-sizing:border-box;
}
.drop_menu > .NavWrap .nav_scroll::-webkit-scrollbar {
	height: 3px;
	width:3px;
}

.drop_menu > .NavWrap .nav_scroll::-webkit-scrollbar-track {
	border-radius: 3px;
	background: #e8e8e8;
}

.drop_menu > .NavWrap .nav_scroll::-webkit-scrollbar-thumb {
	border-radius: 3px;
	background: #b3b2b2;
}
.drop_menu #switch_sitemap:checked ~ .NavWrap{
	right:0;
}
.drop_menu .btns {
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin-bottom:10px;
}
.drop_menu .btns a{
	background:#65a927;
	display:block;
	width:49%;
	border-radius:5px;
	color:#fff;
	height:71px;
	display:flex;
	align-items:center;
	justify-content:center;
}
.drop_menu .btns a > *{
	display:inline-block;
	vertical-align:middle;
	line-height:1.2;
}
.drop_menu .btns a img{
	width:28px;
	height:28px;
	margin-right:10px;
}
.drop_menu .zoobo {
	margin-bottom:10px;		
}
.drop_menu .zoobo a{
	display:flex;
	align-items:center;
	justify-content:flex-start;
	padding-left: 30%;
	font-weight:bold;
	text-align:center;
	min-height:70px;
	background:url(../img/common/bg_bnrzoobo.png) no-repeat top center;
	background-size:contain;
	border-radius:5px;
	overflow:hidden;
}
.drop_menu dl {
	text-align:left;
	margin-bottom:10px;
}
.drop_menu dl dt {
	cursor:pointer;
	position:relative;
	padding: 12px 10px;
	background:#49a765;
	margin-bottom: 5px;
	border-radius:5px;
}
.drop_menu dl.annai dt{
	background:#fa7398;
}
.drop_menu dl.zoo dt{
	background:#f7b635;
}
.drop_menu dl.plant dt{
	background:#00a2d7;
}
.drop_menu dl.evolution dt{
	background:#b25900;
}
.drop_menu dl dt a{
	display:inline-block;
	vertical-align:middle;
	color:#fff;
	font-weight:bold;
}
.drop_menu dl dt img{
	width:25px;
	height:25px;
	vertical-align:middle;
	display:inline-block;
	margin-right:10px;
}
.drop_menu dl p.subttl{
	position:relative;
	padding: 6px 0;
	font-weight:bold;
	color:#45392e;
	border-bottom:dashed 2px #49a765;
	margin:10px 5px 10px;
	font-size:13px;
}
.drop_menu dl p.subttl img{
	width:22px;
	height:22px;
	backface-visibility:hidden;
	margin-right:8px;
}
.drop_menu dl dt:after{
	content:"";
	display:inline-block;
	width:12px;
	height:12px;
	z-index:5;
	border-top:solid 3px #fff;
	border-right:solid 3px #fff;
	vertical-align:middle;
	position:absolute;
	right:15px;
	top: 22px;
	transform:rotate(135deg) scale(-1);
	border-radius:2px;
	transition:transform .4s;
}
.drop_menu dl dt.opened:after{
	top: 14px;
	transform:rotate(135deg);
}
.drop_menu dl dd{
	margin: 0 0 10px;
}
.drop_menu dl dd ul,
.icons_menu{
	display:flex;
	flex-wrap:wrap;
	margin-left: 5px;
	margin-right: 5px;
}
.drop_menu dl dd ul li,
.drop_menu .icons_menu li{
	width:50%;
	padding-right:10px;
	box-sizing:border-box;
}
.drop_menu dl dd ul li:nth-child(2n),
.drop_menu .icons_menu li:nth-child(2n){
	padding-right:0;
	padding-left:10px;
}
.drop_menu dl dd a,
.drop_menu .icons_menu a,
.drop_menu .single_menu a{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:flex-start;
	line-height:1.2;
	height:100%;
	min-height: 46px;
	font-size:13px;
	border-bottom:solid 2px #e6e6e6;
}
.drop_menu dl dd a:after,
.drop_menu .icons_menu a:after,
.drop_menu .single_menu a:after{
	content:"";
	display:inline-block;
	width:10px;
	height:10px;
	z-index:5;
	border-top:solid 2px #333;
	border-right:solid 2px #333;
	transform:rotate(45deg);
	vertical-align:middle;
	margin:auto;
	position:absolute;
	right:5px;
	top:0;
	bottom:0;
	border-radius:2px;
	transition:border .4s;
}
.drop_menu .sns{
	text-align:center;
	margin:30px 0 40px;
}
.drop_menu .sns a{
	display:inline-block;
}
.drop_menu .sns a img{
	width:41px;
}
.drop_menu .end_logo {
	padding:30px 0;
	background:#65a927;
}
.drop_menu .end_logo img{
	width:192px;
}
.drop_menu #switch_guide ~ label{
	right:128px;
	top: 0;
	background:#f9ff99;
}
.drop_menu input#switch_guide ~ label:before{
	content:"";
	display:inline-block;
	width:22px;
	height:22px;
    background:url(../img/common/ico_serviceguide.png) no-repeat;
    background-size:contain;
    position:absolute;
    left:0;
    right:0;
    margin:auto;
    top:10px;
    opacity:1;
    transition:opacity .4s;
}
.drop_menu input#switch_guide ~ label span,
.drop_menu input#switch_guide ~ label span:before,
.drop_menu input#switch_guide ~ label span:after{
	background:#2e722a;
	opacity:0;
	transition:opacity .4s;
}
.drop_menu input#switch_guide ~ label span{
   -webkit-transform:rotate(-45deg) ;
		   transform:rotate(-45deg) ;
}
.drop_menu input#switch_guide ~ label span:before{
   top:0;
}
.drop_menu input#switch_guide ~ label span:after{
   -webkit-transform:rotate(270deg);
		   transform:rotate(270deg);
   top:0;
   margin-top:0;
}
.drop_menu input#switch_guide:checked ~ label span,
.drop_menu input#switch_guide:checked ~ label span:before,
.drop_menu input#switch_guide:checked ~ label span:after{
	opacity:1;
}
.drop_menu input#switch_guide:checked  ~ label:before{
	opacity:0;
}

.drop_menu input#switch_guide ~ label div{
	color:#2e722a;
	font-weight:bold;
	white-space:nowrap;
	letter-spacing:-0.04em;
}
.drop_menu #switch_guide ~ .NavWrap{
	right:100%;
	left:auto;
	transition:right .2s;
}
.drop_menu #switch_guide:checked ~ .NavWrap{
	right:0;
}
.drop_menu.guide .box ul{
	display:flex;
	margin:auto;
	margin-bottom:10px;
}
.drop_menu.guide .box ul li{
	display:block;
	width:25%;
	box-sizing:border-box;
}
.drop_menu.guide .box ul li + li{
    border-left:solid 2px #dfdfdf;
}
.drop_menu.guide .box ul li a{
	display:block;
	text-align:center;
	padding:10px 5px;
	color:#664422;
	box-sizing:border-box;
	-webkit-box-sizing: border-box;
	transition:all ease 0.3s;
	position:relative;
	font-size: 12px;
	line-height: 1.2;
}
.drop_menu.guide .box ul li.one a:before,
.drop_menu.guide .box ul li.two a:before,
.drop_menu.guide .box ul li.three a:before,
.drop_menu.guide .box ul li.four a:before{
	content:"";
	display:block;
	margin:0 auto 5px;
	vertical-align:middle;
	backface-visibility:hidden;
	width:40px;
	height:40px;
	background:url(../img/common/ico_kaien.png) no-repeat top center;
	background-size:40px;
}
.drop_menu.guide .box ul li.one a:before {
	background-image:url(../img/common/ico_kaien.png);
}
.drop_menu.guide .box ul li.two a:before {
	background-image:url(../img/common/ico_calendar.png);
}
.drop_menu.guide .box ul li.three a:before {
	background-image:url(../img/common/ico_map.png);
}
.drop_menu.guide .box ul li.four a:before {
	background-image:url(../img/common/ico_access.png);
}
.drop_menu.guide .box ul li a span{
	display:block;
}
.drop_menu .parking{
	margin-bottom:20px;
}
.drop_menu .parking a{
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	justify-content:center;
	font-weight:bold;
	text-align:left;
	padding:0 20px;
	padding-left:33%;
	box-sizing:border-box;
	height:calc(23.33vw - 10px);
	background:url(../img/common/bnr_parking.png) no-repeat top center;
	background-size:contain;
	border-radius:5px;
	overflow:hidden;
	color:#333;
	font-size:3vw;
}
.drop_menu .parking a p{
	font-size:3.6vw;
}
.drop_menu .babyspace {
	margin-bottom:20px;
}
.drop_menu .babyspace a{
	display:block;
	background:#ffa47d;
	border-radius:5px;
	padding:15px;
	position:relative;
	font-size:2.6vw;
}
.drop_menu .babyspace a > *{
	display:inline-block;
	vertical-align:middle;
}
.drop_menu .babyspace a > img{
	width:38px;
	height:auto;
	margin-right:10px;
}
.drop_menu .babyspace a > div{
	text-align:left;
	line-height:1.2;
}
.drop_menu .babyspace a p{
	font-size:3.6vw;
}
.drop_menu .babyspace a:after{
	content:"";
	display:inline-block;
	width:10px;
	height:10px;
	z-index:5;
	border-top:solid 2px #333;
	border-right:solid 2px #333;
	transform:rotate(45deg);
	vertical-align:middle;
	margin:auto;
	position:absolute;
	right:15px;
	top:0;
	bottom:0;
	border-radius:2px;
	transition:border .4s;
}
.drop_menu .icons_menu{
	margin: 0 5px 20px;
}
.drop_menu .icons_menu:last-child{
	margin-bottom:60px;

}
.drop_menu .icons_menu li a img{
	width:27px;
	height:27px;
	margin-right: 8px;
}
@media screen and (max-width: 760px) {
	.drop_menu.guide{
		display:block;
	}
	.drop_menu > .NavWrap{
		max-width:100%;
		font-size:14px;
	}
	.drop_menu .zoobo a{
		height:calc(100vw * 0.21);
        padding-left: 33%;
	}
	.drop_menu dl dd a, .drop_menu .icons_menu a, .drop_menu .single_menu a {
		min-height: 42px;
		font-size: 12px;
	}
	.drop_menu dl dt:after{
		top:20px;
	}
	.drop_menu dl dt.opened:after{
		top:15px;
	}
	.drop_menu.guide .box ul li.one a:before,
	.drop_menu.guide .box ul li.two a:before,
	.drop_menu.guide .box ul li.three a:before,
	.drop_menu.guide .box ul li.four a:before{
		width:28px;
		height:28px;
		background-size:contain;
	}

}