html, body {
  height: 100%;
}

body {
  margin: 0;
}

/**************
## Container ##
**************/
.pure-container {
  position: relative;
  height: 100%;
  -webkit-overflow-scrolling: touch;
}

/************
## Toggler ##
************/
.pure-toggle {
  left: -9999px;
  position: absolute;
  top: -9999px;
}

.pure-toggle:focus ~ .pure-toggle-label {
  color: #fff;
}

.pure-toggle-label {
	cursor: pointer;
	display: block;
	position: absolute;
	z-index: 3;
	color: #fff;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background: #5A9F4D;
  margin: 27px 25px 0 0;
}

.pure-toggle-label:hover {
  border-color: #fff;
  color: #fff;
}

.pure-toggle-label:hover .pure-toggle-icon,
.pure-toggle-label:hover .pure-toggle-icon:before,
.pure-toggle-label:hover .pure-toggle-icon:after {
  	background-color: #fff;
}

.pure-toggle-label:active {
  -webkit-tap-highlight-color: transparent;
}

.pure-toggle-label .pure-toggle-icon,
.pure-toggle-label .pure-toggle-icon:before,
.pure-toggle-label .pure-toggle-icon:after {
  position: absolute;
  top: 33px;
  left: 50%;
  height: 1.5px;
  width: 20px;
  cursor: pointer;
  background: #fff;
  display: block;
  content: '';
  -webkit-transition: all 200ms ease-in-out;
          transition: all 200ms ease-in-out;
	border-radius: 1px;
}

.pure-toggle-label .pure-toggle-icon {
  transform: translate3d(-50%, -4px, 0);
  -webkit-transform: translate3d(-50%, -4px, 0);
}

.pure-toggle-label .pure-toggle-icon:before {
  transform: translate3d(-50%, -14px, 0);
  -webkit-transform: translate3d(-50%, -14px, 0);
	top:8px;
}

.pure-toggle-label .pure-toggle-icon:after {
  transform: translate3d(-50%, 10px, 0);
  -webkit-transform: translate3d(-50%, 10px, 0);
	top:-4px;
}

.pure-toggle-label[data-toggle-label='right'] {
	right: 10px;
	text-align: center;
	top: 8px;
	position: fixed;
}


/* スマホとタブレット */
@media screen and (max-width: 1023px){

  .pure-toggle-label {
    width: 45px;
    height: 45px;
    margin: 5px 5px 0 0;
  }

  .pure-toggle-label .pure-toggle-icon{
    margin-top: -7px;
  }
}

.pure-toggle-label[data-toggle-label='top'] {
  left: 50%;
  -webkit-transform: translate3d(-50%, 0, 0);
  transform: translate3d(-50%, 0, 0);
}

.pure-toggle[data-toggle='right']:checked ~ .pure-toggle-label:not([data-toggle-label='right']){
  opacity: 0;
  z-index: -1;
}

.pure-toggle[data-toggle='right']:checked ~ .pure-toggle-label[data-toggle-label='right']{
  border-color: #fff;
  color: #fff;
}

.pure-toggle[data-toggle='right']:checked ~ .pure-toggle-label[data-toggle-label='right'] .pure-toggle-icon {
  background-color: transparent;
}

.pure-toggle[data-toggle='right']:checked ~ .pure-toggle-label[data-toggle-label='right'] .pure-toggle-icon:before,
.pure-toggle[data-toggle='right']:checked ~ .pure-toggle-label[data-toggle-label='right'] .pure-toggle-icon:after{
  top: 0;
}

.pure-toggle[data-toggle='right']:checked ~ .pure-toggle-label[data-toggle-label='right'] .pure-toggle-icon:before {
  transform: translateX(-50%) rotate(45deg);
  -webkit-transform: translateX(-50%) rotate(45deg);
	background-color: #fff;
}

.pure-toggle[data-toggle='right']:checked ~ .pure-toggle-label[data-toggle-label='right'] .pure-toggle-icon:after {
  transform: translateX(-50%) translateY(-10px) rotate(-45deg);
  -webkit-transform: translateX(-50%) translateY(-10px) rotate(-45deg);
  top: 10px;
	background-color: #fff;
}

.pure-toggle[data-toggle='right']:checked ~ .pure-toggle-label[data-toggle-label='right'] {
  background: #fff; /* 背景色を白に */
}

.pure-toggle[data-toggle='right']:checked ~ .pure-toggle-label[data-toggle-label='right'] .pure-toggle-icon:before,
.pure-toggle[data-toggle='right']:checked ~ .pure-toggle-label[data-toggle-label='right'] .pure-toggle-icon:after {
  background-color: #5A9F4D;
}

/***********
## Drawer ##
***********/
.pure-drawer {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 3;
  height: 100%;
  visibility: hidden;
  background: url("../img/pattern_gray.jpg");

  -webkit-transition-property: all;
          transition-property: all;
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  width: 100%;
}

.pure-drawer[data-position='right'] {
  left: auto;
  right: 0;
}

/*********************
## Pusher Container ##
*********************/
.pure-pusher-container {
  position: relative;
  height: 100%;
  overflow: hidden;
}

/***********
## Pusher ##
***********/
.pure-pusher {
  position: relative;
  height: 100%;
  overflow-y: auto;
  left: 0;
  z-index: 10;
  background-color: #fff;
  -webkit-transition-property: -webkit-transform;
          transition-property: transform;
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
}

/*******************
## Pusher Overlay ##
*******************/
.pure-overlay {
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  opacity: 0;
  background-color:rgba(0,0,0,0.30);
  -webkit-transition-property: opacity;
          transition-property: opacity;
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-delay: 500ms;
          transition-delay: 500ms;
  -webkit-transition-timing-function: ease-in-out;
          transition-timing-function: ease-in-out;
}

.pure-toggle[data-toggle='right']:checked ~ .pure-overlay[data-overlay='right'] {
  right: 100%;
}

.pure-toggle[data-toggle='right']:checked ~ .pure-overlay[data-overlay='right'] {
  width: 100%;
  height: 100%;
  opacity: 1;
  z-index: 10;
}

/********************************
## Fallback for older browsers ##
********************************/

.no-csstransforms3d .pure-toggle[data-toggle='right']:checked ~ .pure-pusher-container .pure-pusher {
  left: -100%;
}

/*****************************
## Effect - Fade in ##
*****************************/
/* DRAWER */
[data-effect='pure-effect-fade'] .pure-drawer {
  z-index: 2;
  opacity: 0;
  transition: opacity 500ms ease-in-out;
}

[data-effect='pure-effect-fade'] .pure-drawer[data-position='right']{
  transform: none;
}

[data-effect='pure-effect-fade'] .pure-toggle[data-toggle='right']:checked ~ .pure-drawer {
  visibility: visible;
  opacity: 1;
}

/* OVERLAY */
[data-effect='pure-effect-fade'] .pure-overlay {
  transition-duration: 500ms;
  transition-delay: 250ms;
}

