/*
 * monkeybiz semi-flat-black v1.0
 * http://monkeybiz.co.jp
 * Copyright 2014 Monkeybiz.co.,ltd.
 * Contributing author: Satoshi Fushimi (@smonkeybiz)
 */

/* ========================== basic */

html {
	-webkit-text-size-adjust: 100%;
}

body {
	color:#555;
	margin:0 auto;
	padding:0;
font-family: "Hiragino Maru Gothic W4 JIS2004", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
font-weight: 500;
	font-size:12px;
	line-height:1.6;
	width:100%;
	background:#f3f3f3;
	text-shadow:1px 1px 0 rgba(255,255,255,1);
	behavior:url(http://monkeybiz.co.jp/ie-css3.htc);
}

img {
	border:0;
	outline:none;
	vertical-align:bottom;
}


img[src$=".png"] {
	background:#fdfdfd;
}

a {
	color:#000;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	word-break:break-all;
	}

a:link,a:visited {
	
	}

a:hover,a:focus {
	color:#15A9DF;
	text-decoration:none;
	}
	
ul {
	margin:1em 0;
	padding:0 0 0 1.5em;
}

dt {
	font-weight:bold;
}

dd {
	margin-bottom:1em;
}
	
/* ========================== layout */

.wrap {
	max-width:1000px;
	margin:0 auto;
}

#header {
	padding:30px 15px;
	overflow:hidden;
	border-top:1px solid #ddd;
	background:#fff;
}

#contents {  
	width: 100%; 
	float: right;  
	margin: 0 0 0 -240px;  
	padding:0;
}  
  
#main {  
	position: relative;  
	margin: 0 15px 15px 270px;  
	padding: 15px 20px; 
	background:#fff;
	box-shadow: 0 0 2px 0  rgba(0, 0, 0, 0.2);
}  
  
#side {  
	width:220px;  
	float: left;  
	margin:0 0 30px 15px ;
	font-size:12px;
} 

@media only screen and (max-width: 770px) {
	
#header {
	padding:15px;
}
	
#contents{  
	width: auto; 
	float: none; 
	padding:0 15px;
	margin: -2em 0 0 0; 
}  
  
#main { 
	margin: 0;
	 padding:15px;
}  
  
#side {  
	width:auto;  
	float: none;
	margin:0 0 30px 0;
} 	
	
}


#footer {
	clear:both;
	padding:30px 15px 15px 15px;
	position:relative;
	background:#ddd;
	border-top:1px solid #aaa;
}

#footer img[src$=".png"] {
	background: #ddd;/* IE-PNG */
}

#footer a {
	text-decoration:none;
}


@media only screen and (max-width: 480px) {
	
#main { 
	 margin:0 -7px;
}  

#footer {
	padding:0 15px 15px 15px;
}

}

/* ========================== common */

h1 {
	font-size:11px;
	padding:10px 15px;
	margin:0 auto;
	font-weight:normal;
	max-width:1000px;
}

#main h2 {
	font-size:28px;
	font-weight:normal;
	font-family: 'Open Sans', sans-serif;
	padding:10px 30px;
	margin:0 -20px 30px -20px;
	background:#444;
	color:#fff;
	text-shadow:-1px -1px 0 #000;
	border-top:1px solid #000;
}

#main h2 a {
	color:#fff;
}

#main h2 span {
	font-size:70%;
}

#main h3,
#top-page h3 {
	font-size:22px;
	font-weight:normal;
	margin:30px 0 15px 0;
	border-left:7px solid #ccc;
	padding-left:15px;
}

#main h4,
#top-page h4 {
	font-size:20px;
	font-weight:normal;
	margin:30px 0 15px 0;
}

#main h5,
#top-page h5 {
	font-size:16px;
	margin:30px 0 15px 0;
}

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

#main h2,
#top-page h2 { font-size:26px; }
#main h3,
#top-page h3 { font-size:20px; }
#main h4,
#top-page h4 { font-size:18px; }
#main h5,
#top-page h5 { font-size:14px; }
	
}

@media only screen and (max-width: 480px) {
	
#main h2,
#top-page h2 { font-size:24px; }
#main h3,
#top-page h3 { font-size:18px; }
#main h4,
#top-page h4 { font-size:16px; }
	
}

table {
	border-collapse: collapse;
	border-top:1px solid #ccc;
	border-bottom:1px solid #ccc;
	width:100%;
}


th,td {
	padding:15px;
	border-bottom:1px dotted #ccc;
}

th {
	text-align:left;	
	background:#f9f9f9;
}

td {
	
}

@media only screen and (max-width: 480px) {
	
th,td {
	display:block;
	border:none;
	padding:5px 10px;
}
	
}

.full {
	width:100%;
	margin-bottom:1em;
}

.harf {
	width:50%;
}

.fl {
	float:left;
	margin:0 1em 1em 0;
}

.fr {
	float:right;
	margin:0 0 1em 1em;
}

.cb {
	clear:both;
}

.tac {
	text-align:center;
}


@media screen and (max-width: 480px) {
	
.harf {
	width:100%;
}

.fl {
	float:none;
	margin:0 0 1em 0;
}

.fr {
	float:right;
	margin:0 0 1em 0;
}	
	
}

#page-top {
	font-size:50px;
	position:fixed;
	right:20px;
	bottom:-70px;
	filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
	line-height:50px;
	z-index:90000;
}

/* ========================== header-parts */

#logo {
	width:280px;
	float:left;
}

#logo img{
	width:100%;
	background:#fdfdfd;
}

#contact {
	font-size:11px;
	margin:0;
	width:300px;
	line-height:1;
	text-align:right;
	float:right;
}

.tel {
	display:block;
	font-size:30px;
	margin:5px 0;
	font-family: 'Open Sans', sans-serif;
	font-weight: 700;
}

.tel a {
	text-decoration:none;
}


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

#logo {
	float:none;
	margin:0 auto 15px auto;
}
				
}

/* ========================== navigation */

#nav {
	background:#333;
	text-shadow:-1px -1px 0 #000;
	border-top:1px solid #000;
	border-bottom:1px solid #fff;
}

#nav ul {
	max-width:1000px;
	margin:0 auto;
	padding:0;
}

#nav ul:after {
	content:" ";
	display:block;
	clear:both;
}

#nav li {
	float:left;
	display:block;
	width:16.66%;
	font-size:18px;
	font-family: 'Open Sans', sans-serif;
	font-weight:800;
	letter-spacing:0.2em;
}


#nav li a {
	display:block;
	text-align:center;
	width:100%;
	padding:15px 0;
	color:#fff;
}

#nav li a:link,
#nav li a:visited {
	text-decoration:none;
}

#nav li a:hover,
#nav li a:focus {
	background:#000;
	text-decoration:none;
	}
	
#nav li a span {
	display:block;
	font-size:10px;
	color:#aaa;
	letter-spacing:0.15em;
	font-weight:normal;
}

@media screen and (max-width: 640px) {
	
#nav {
	margin-top:-60px;
	border:none;
	background:none;
}
	
#nav li {
	float:none;
    margin: 0;
	width:100%;
	border-top:1px solid #666;
	border-bottom:1px solid #000;
	background:#333;
  }
  
 #nav li a {
	text-align:left;
	padding:10px 15px;
  }
  
 #nav li a span {
	display:inline;
	margin:0 1em;
  }
}

/* ========================== naver */

.naver .naver-handle { 
	display: none!important;
}
	
.naver .naver-wrapper {
	height: auto;
	clear:left;
	}

.naver.enabled .naver-handle {
	display: block!important; 
	width:60px;
	height:60px;
	text-align:center;
	float:left!important; 
	color: #fff!important; 
	background:#333;
	cursor: pointer;
	font-size: 30px!important;
	line-height:55px;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	-o-user-select: none;
	user-select: none;
	}
	
.naver.enabled .naver-wrapper {
	height: 0px;
	overflow: hidden;
	}

/* ========================== side-parts */

#side h3 {
	letter-spacing:0.2em;
	padding:0 15px 0 0;
	border-bottom:none;
}

#side a:link,
#side a:visited {  
	text-decoration:none;
} 

#side a:hover,
#side a:focus {  
	color:#999;
} 

.list ,.feed {
	margin:0 0 3em 0;
	padding:0;
	list-style:none;
}

.list li,.feed li{
	margin-bottom:0.5em;
}

.list li a {
	padding:0 0 0.5em 1.3em;
	position:relative;
}

.feed li a {
	padding:0 0 0.5em 0;
	position:relative;
}

.list li a:before {
	content: ' ';
	border: transparent solid 0.3em;
	border-left-color: #333;
	position: absolute;
	left: 0.5em;
	top: 0.6em;
}

@media only screen and (max-width: 770px) {
	
#side h3 {
	padding:0 15px;
}

#side ul {
	border-bottom:1px dotted #ddd;
}

.list li,.feed li{
	margin-bottom:0;
}
	
.list li a {
	padding:1em 1em 1em 2.3em;
	position:relative;
	border-top:1px dotted #ddd;
	display:block;
	text-decoration:none;
}

.feed li a {
	padding:1em 40px 1em 1em;
	position:relative;
	border-top:1px dotted #ddd;
	display:block;
	text-decoration:none;
}

.list li a:before {
	content: ' ';
	border: transparent solid 0.3em;
	border-left-color: #333;
	position: absolute;
	left: 1.5em;
	top: 1.7em;
}


.feed li a:before {
  display: block;
  content: "";
  position: absolute;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  right: 15px;
  width: 10px;
  height: 10px;
  margin-top: -5px;
  background: #ddd;
}

.feed li a:after{
  display: block;
  content: "";
  position: absolute;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  right: 20px;
  width: 10px;
  height: 10px;
  margin-top: -5px;
  background:#f6f6f6;
}
	
}


/* ========================== footer-parts */

#footer ul {
	list-style:none;
	margin:0;
	padding:0;
	width:50%;
	float:left;
}

#footer ul a {
	padding-left:2em;
	position:relative;
}

#footer ul a:after {
	content: ' ';
	border: transparent solid 0.3em;
	border-left-color: #333;
	position: absolute;
	left: 1em;
	top: 0.3em;
}

address {
	float:right;
	width:50%;
	font-style:normal;
	text-align:right;
}

address * {
	margin:0;
}

#sns {
	font-size:30px;
	float:right;
	width:50%;
	text-align:right;
}

.logo {
	width:180px;
}

address h2{
	font-size:11px;;
}

address h3{
	font-size:130%;
	padding-bottom:0;
	border:none;
}

address .tel{
	font-size:130%;
}

#copy-right {
	clear:both;
	font-size:10px;
	font-family: 'Open Sans', sans-serif;
	text-align:center;
	padding-top:30px;
}

@media only screen and (max-width: 480px) {
	
	
#footer ul {
	width:auto;
	float:none;
	margin:0 -10px 0 -10px;
}

#footer ul a {
	display:block;
	padding:1em;
	border-bottom:1px solid #ccc;
	text-decoration:none;
}

#footer ul a:after {
	left:auto;
	right: 1em;
	top: 1.5em;
}

address {
	width:auto;
	float:none;
	text-align:left;
}

#sns {
	margin-top:1em;
	float:none;
	text-align:left;
}
		
}

/* ========================== body-parts */

#main a {
		text-decoration:underline;
}

#main h2 a,
#main h3 a,
#main h4 a,
#main h5 a {
		text-decoration:none;
}

#main img[src$=".png"] {
	background:#fff;
}

#pankuzu {
	margin:15px;
	font-size:11px;
}

#page-title {
	font-size:12px;
	margin: 0 15px 30px 15px;
	color:#999;
	letter-spacing:0.2em;
}

#page-title span  {
	font-size:30px;
	font-weight:700;
	color:#666;
	margin-right:15px;
}

.section {
	margin-bottom:2em;
	clear:both;
}

.section:after {
	content:" ";
	display:block;
	clear:both;
}

.date { color:#aaa; margin-right:5px;font-family: 'Open Sans', sans-serif;}

.section h3{
	margin-top:2em;
}

.article {
	margin-bottom:2em;
}

.article h2 {
	font-size:20px;
	margin:0;
	color:#333;
	letter-spacing:0;
}

.article h3 {
	margin:15px 0;
}

@media only screen and (max-width: 480px) {
	
.article {
	width:auto;
	margin:0 0 2em 0;
	float:none;
}

}

.entry-date {
	  color:#ccc; 
	  font-family: 'Open Sans', sans-serif;
	  font-size:11px;
	  text-align:right;
	  padding:5px;
}
	  
.link {
	text-align:right;
	position:relative;
	margin:2em 0;
	font-weight:bold;
	font-size:15px;
}

.link a{
	padding-right:2em;
	position:relative;
	text-decoration:none!important;
	display:block;
}

.link a:after {
	content: ' ';
	border: transparent solid 0.3em;
	border-left-color: #000;
	position: absolute;
	right:0.6em;
	top:50%;
	margin-top:-0.25em;
}

@media only screen and (max-width: 770px) {
	
.link a {
	display:block;
	padding:10px 2em 10px 10px;
	border:1px solid #aaa;
	color:#aaa;
	text-align:left;
	box-shadow: 1px 1px 3px 0  rgba(0, 0, 0, 0.3);
	border-radius:5px;
}
}

.button {
	display:block;
	margin:2em 0;
	padding:1px;
	background:#fff;
	border-bottom:1px solid #ddd;
	border-right:1px solid #ddd;
	font-size:18px;
	text-shadow:-1px -1px 0 #000;
	border-radius:5px;
	text-align:center;
	box-shadow: 1px 1px 3px 0  rgba(0, 0, 0, 0.3);
}

.button a {
	display:block;
	color:#fff;
	padding:1em 1em 1em 2em;
	font-weight:bold;
	position:relative;
	text-decoration:none!important;
	border-radius:5px;

}

.button a:link,
.button a:visited {
	background:#15A9DF;

}

.button a:hover,
.button a:focus {
	background:#000;
	text-decoration:none;
}

.button a:before {
	content: ' ';
	border: transparent solid 0.3em;
	border-left-color: #fff;
	position: absolute;
	left: 1em;
	top: 50%;
	margin-top:-3px;
}

.kakomi {
	border:3px dashed #666;
	padding:15px;
	margin:2em 0;
	background:#fff;
}

.kakomi h3, .kakomi h4  {
	margin:0 0 1em 0!important;
	padding:0;
	border-left:none;
}

.entry-footer {
	border-top:1px solid #666;
	border-bottom:1px solid #666;
	overflow:hidden;
	text-align:center;
	margin:30px 0;
	padding:0 4em;
	position:lerative;
	font-size:11px;
}

.entry-footer a {
	display:block;
	text-decoration:none!important;
}

.prev,.next {
	width:4em;
	font-family: 'Open Sans', sans-serif;
	font-weight: 700;
	color:#ccc;
	position:absolute;
}

.prev {
	right:20px;
	text-align:right;
}

.next {
	left:20px;
	text-align:left;
}



.twitter-widget {
	padding:0;
}

iframe.twitter-timeline {
	width:100%;
}

@media only screen and (max-width: 770px) {
	
.twitter-widget {
	padding:0 10px;
}

}





/* ========================== top-page */

#top-page {
	padding:20px;
	background:#fff;
	box-shadow: 0 0 2px 0  rgba(0, 0, 0, 0.2);
	max-width:960px;
	margin:0 auto 30px auto;
}

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

#top-page {
	margin:0 10px 30px 10px;
}

}

.rslides {margin-top:15px!important;}


#top-page h2 {
	font-size:11px;
	color:#999;
	letter-spacing:0.4em;
}

#top-page h2 span  {
	font-size:24px;
	font-weight:700;
	color:#666;
	margin-right:15px;
}

#top-page h2 a,
#top-page h3 a,
#top-page h4 a,
#top-page h5 a {
		text-decoration:none;
}


#top-page .article {
	width:46%;
	margin:0 2% 2em 2%;
	float:left;
}

#top-page .feed {
	padding-left:5%;
	max-height:300px;
	overflow-y:scroll;
	width:45%;
	float:left;
}

#top-page .twitter-widget {
	width:45%;
	float:right;
}

@media only screen and (max-width: 770px) {
	
#top-page {
	padding:15px;
}
	
#top-page .feed {
	border-bottom:1px dotted #ccc;
	margin-left:0;
	float:none;
	width:auto;
}

#top-page .twitter-widget {
	width: auto;
	float:none;
	text-align:center;
}

}

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

#top-page .article {
	width:100%;
	margin:0 0 2em 0;
	float:none;
}

}

.sample  {
	overflow:hidden;
}


.sample div {
	width:48%;
	margin:0 1%;
	float:left;
}


.sample img {
	width:100%;
}

.facebook-likebox {
	width:100%;
	overflow:hidden;
	max-width:598px;
	margin-bottom:30px;
}


.fb-like-box,
.fb-like-box iframe,
.fb-like-box span {
    width: 100%!important;
}


/* ==========================form */

form table {
	border-collapse:collapse;
	width:100%;
	margin:15px auto;
	max-width:770px;
}

form th {
	text-align:right;
	width:9em;
	vertical-align:top;
}

form td {

}


table input,textarea {
	font-size:120%;
	padding:5px;
	border:1px solid #ccc;
}

textarea {
	height:10em;
}

#submit {
		text-align:center;
		padding:20px 0;
}

#submit input {
	padding:10px 15px;
	background:#333;
	color:#fff;
	font-weight:bold;
	text-shadow:-1px -1px 0 #666;
	box-shadow: 1px 1px 3px 0  rgba(0, 0, 0, 0.3);
	border:2px solid #fff;
	cursor:pointer;
	font-size:120%;
}

#submit input:hover {
	background:#999;
}

.url,.email,textarea {
	width:95%;
}

@media only screen and (max-width: 480px) {
	
form th,
form td {
	display:block;
	width:auto;	
	float:none;
	padding:10px;
	text-align:left;
}

}


/* ==========================monkeybiz */

.example {
	width:48%;
	float:left;
	margin:0 1% 15px 1%;
	background: repeating-linear-gradient(-45deg, #f6f6f6, #f6f6f6 3px, #fff 3px, #fff 6px);
}

@media only screen and (max-width: 600px) {
	
.example {
	width:auto;
	float:none;
	margin:0 0 30px 0;
	padding:10px 0;
}
	
}

.example *{
	margin-right:15px;
	margin-left:15px;
	padding:0;
} 

.example h4{
	margin:15px!important;
}

.example ul{
	font-size:11px;
}

.waribiki {
	color:#D47273;
}

.total-price {
	text-align:right;
	font-size:16px;
	border-top:1px solid #ccc;
}

.full-list {
	margin:15px;
}

.full-list dt {
	display:block;
	border-bottom:1px dotted #ccc;
}

.full-list dd {
	text-align:right;
	display:block;
	margin-bottom:1em;
}

.campaign {
	border:3px dashed #F9A957;
	padding:15px;
	margin:2em 0;
	background:#fff;
}

.campaign h3, .campaign h4  {
	color:#F9A957;
	margin:0 0 1em 0!important;
	padding:0!important;
	border-left:none!important;
}

.explanation {
	width:45%;
	float:right;
}

.explanation h4{
	margin:0 0 1em 0!important;
	font-size:15px!important;
	text-align:right;
}

.explanation p {
	margin:0 0 1em 0;
}

.ex {
	clear:both;
	padding-bottom:30px;
}

.ex img {
	float:left;
	width:50%;
	display:block;
	margin-bottom:15px;
}

.tags {
	padding:10px;
	border:1px solid  #666;
	margin-bottom:1em;
}

.url {
	font-family: 'Open Sans', sans-serif;
	background:#f3f3f3;
	width:auto;
	clear:both;
	padding:10px;
	font-weight:bold;
	font-size:16px;
	word-break:break-all;
}

.photo-gallery {
	overflow:hidden;
}


@media only screen and (max-width: 480px) {
	
	
.ex img {
	float:none;
	width:100%;
}

.explanation {
	width:100%;
	float:none;
}

}

.gallery {
	overflow:hidden;
	padding-bottom:20px;
}

.gallery div {
	width:31%;
	float:left;
	margin:1%;
	padding-bottom:30px;
}

.gallery div a {
	text-decoration:none!important;
}

.gallery div h3 {
	margin:5px 0 1em 0!important;
	border:none!important;
	padding:0!important;
	font-size:14px!important;
	font-weight:bold!important;
}

.gallery div img{
	width:100%;
}

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

.gallery div {
	width:48%;
	margin:1%;
}

.gallery div h3{
	font-size:12px!important;
}	
	
}



.photo-gallery div {
	float:left;
	margin:1%;
	width:18%;
	box-shadow: 0 0 3px 0  rgba(0, 0, 0, 0.3);
	position:relative;
}

.photo-gallery div h3 {
	position:absolute;
	top:0;
	margin:0!important;
	padding:10px;
	font-size:12px!important;
	border:none!important;
	background-color:rgba(0,0,0,0.4);
		    -ms-filter: "progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#cc000000,EndColorStr=#cc000000)";
	width:100%;
	height:100%;
	box-sizing:border-box;
	opacity:0;
	color:#fff!important;
	text-shadow:none;
	-webkit-transition: all 300ms ease-out;
    -moz-transition: all 300ms ease-out;
    -o-transition: all 300ms ease-out;
    -ms-transition: all 300ms ease-out;
    transition: all 300ms ease-out;
}

.photo-gallery div:hover h3 {
	opacity:1;
}

.photo-gallery div img {
	width:100%;
}

@media only screen and (max-width: 770px) {
	
.photo-gallery {
	padding-left:1%;
}
	
.photo-gallery div {
	float:left;
	margin:1%;
	width:23%;
}

.photo-gallery div:hover h3 {
	opacity:0;
}
	
}

@media only screen and (max-width: 480px) {
	
.photo-gallery {
	padding-left:2%;
}
	
.photo-gallery div {
	float:left;
	margin:1%;
	width:31%;
}
	
}

.others {
	clear:both;
	margin:1em 0;
	padding:15px 0 0 2%;
	background:#f9f9f9;
	overflow:hidden;
}
	
.others img {
	width:31.3%;
	margin:0 2% 15px 0;
	float:left;
}

@media only screen and (max-width: 480px) {
	
.others {
	clear:both;
	margin:1em 0;
	padding:10px 0 0 3%;
	background:#f9f9f9;
	overflow:hidden;
}
	
.others img {
	width:47%;
	margin:0 3% 10px 0;
}
	
}

.share {
	padding:10px;
	height:20px;
	clear:both;
	border-top:1px dotted #ccc;
	position:relative;
	background:#000;
}

.share  .fb-like{
	position:absolute;
	left:10px;
	top:10px;
}


.share  .twitter-share-button {
	position:absolute;
	margin-left:100px;
	top:10px;
}

.share  .hatebu {
	position:absolute;
	left:168px;
	top:10px;
}

.share  .hatebu img{
	width:auto!important;
}


.share .plus-one {
	position:absolute;
	left:198px;
	top:10px;
}


	

