@charset "utf-8";
/* CSS Document */
#menu{
	padding: 30px 3% 30vh;
}

#menu .cate{
	margin-top: 20px;
}
#menu .cate .open_bt{
	display: table;
	width: 100%;
	cursor: pointer;
}
#menu .cate .open_bt span{
	display: table-cell;
	vertical-align: middle;
	padding: 2%;
	background-color: #f08300;
	cursor: pointer;
}
#menu .cate .open_bt .arrow{
	width: 20%;
	text-align: center;
	cursor: pointer;
}
#menu .cate .open_bt .arrow img{
	width: 50%;
	max-width: 100px;
}
.arrow img{
	-webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}
.arrow_be img{
    -moz-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);	
}
#menu .cate .open_bt .cate_title{
	width: 70%;
	font-size: 16px;
	text-shadow: 0 1px 2px rgba(0,0,0,0.2);
	color: #fff;
	cursor: pointer;
}
#menu .box_wrap{
	display: none;
	background-color:rgba(255,255,255,0.80);
	padding: 30px 0 20px;
}
#menu .box_wrap .cate_photo{
	width: 100%;
	text-align: center;
	padding: 20px 0;
}
#menu .box_wrap .cate_photo img{
	width: 80%;
	height: auto;
}
#menu .box_wrap .cate_photo:empty{
	height: 0;
}
.cate .box{
	text-align: left;
	margin: 0 5% 10px;
}
.cate .box_title1{
	letter-spacing: 2px;
	padding: 5px;
	color:#4d4d4d;
	position: relative;
	padding-left:18px;
	font-weight: bold;
}
.cate .box_title1::before {
    position: absolute;
    top: .1em;
    left: 0em;
    content: '';
    width: 7px;
    height: -webkit-calc(100% - 0.2em);
    height: calc(100% - 0.2em);
    background-color: #f08300;
    border-radius: 3px;
}
.cate .box .box_txt1{
	color: #4fb55a;
	padding: 5px;
	text-align: right;
	font-weight: bold;
	border-bottom: 1px solid #ccc;
}
.cate .box .box_item{
	margin:20px 0 30px;
}
.cate .box .box_item .box_title2{
	width:100%;
	box-sizing: border-box;
	letter-spacing: 2px;
	padding: 5px;
	color:#fff;
	background-color:#00b050;
	position: relative;
	padding-left:18px;
}
@media screen\0 {
.selector {
	property: value;
}
.cate .box .box_item .box_title2{
	padding: 5px 10px 0;
}	
}
.cate .box .box_item .box_txt2{
	padding: 10px 3.5%;
	background-color:#fff;
	border:1px solid #00b050;
	margin-bottom:20px;
}
.cate .box .box_item .box_txt3{
	margin-top:20px;
}
.cate .box_title1:empty,.cate .box_title1:empty::before,.cate .box .box_txt1:empty,.cate .box .box_item .box_title2:empty,.cate .box_item .box_txt2:empty,.cate .box .box_item .box_txt3:empty{
	display: none;
}
#menu .cate a{
	color: #42ba42;
}
/*タブレット以上*/
@media screen and (min-width: 700px){
#menu{
	padding: 5% 8%;
	padding-bottom: 50%;
}
}
/*横向き*/
@media screen and (orientation: landscape){
@media screen and (max-height: 700px){
}
@media screen and (min-height: 700px){
}
}