/*
Theme Name: template
Theme URI: 
Description: template
Version: 1.0
Author: template
Author URI: 
Tags: template

	o2 Group v1.0
	

	This theme was designed and built by o2 Group,
	whose blog you will find at http://theme.o2gp.com/

	The CSS, XHTML and design is released under GPL:
	http://www.opensource.org/licenses/gpl-license.php

*/

/****************************************************
共通
****************************************************/

*{margin:0;padding:0;}
body{
	font-family: "ヒラギノ角ゴ Pro W3", Hiragino Kaku Gothic Pro," メイリオ", Meiryo, Osaka," ＭＳ Ｐゴシック", MS PGothic," sans-serif";
    font-weight: 500;
	color: #333;
  background: #FFFFFF; 
	
	
}



img{border:0;max-width: 100%;height: auto;}

.clear{clear:both;}

h1 a:hover, #navi ul li a:hover, #side .member a:hover{
	opacity: 0.5;
}

.full{
	background: #fff;
}

.box ul{
	list-style: none;
}

#page-top {
    position: fixed;
    bottom: 15px;
    right: 15px;
    font-size: 77%;
	z-index: 9999;
}
#page-top a {
    background: rgba(0,0,0,0.6);
    text-decoration: none;
    color: #fff;
    padding: 15px;
    text-align: center;
    display: block;
    border-radius: 5px;
}
#page-top a:hover {
    text-decoration: none;
    background: rgba(0,0,0,0.3);
}
#btn{
	display: block;
	width: 340px;
	margin: 0 auto;
	padding: 12px 0;
	background: #DD6833;
	color: #fff;
	text-align: center;
	font-weight: bold;
	border-radius: 3px;
	font-size: 16px;
	text-decoration: none;
}
.entry{
	display: block;
width: 100%;
	margin: 0 auto 20px;
	padding: 15px 0;
	background: #FFA500;
	color: #fff;
	text-align: center;
	font-weight: bold;
	border-radius: 3px;
	font-size: 16px;
	text-decoration: none;
}

.entry2{

	width: 400px;
	margin: 0 auto 20px;
	padding: 15px 0;
	background: #FFA500;
	color: #fff;
	text-align: center;
	font-weight: bold;
	border-radius: 3px;
	font-size: 15px;
	text-decoration: none;
}

.tyuui{
	padding: 0 0 15px 0;
	border-bottom: 1px dotted #ccc;
}
.date{
	border-top: 1px dotted #ccc;
	margin: 15px 0 0 0;
	padding: 10px 0 0 0;
	font-size: 13px;
}
.date span{
	color: #fff;
	background: #111;
	padding: 2px 4px;
	margin: 0 5px 0 0;
	font-size: 11px;
	border-radius: 3px;
}

/****************************************************
カテゴリーカラー
****************************************************/

.soroban{
	color: #fff;
	background: #F9CE00;
	font-size: 9px;
	padding: 2px 4px;
}



.event-esports{
	color: #fff;
	background: #538DE7;
	font-size: 9px;
	padding: 2px 4px;
}


.fusion360{
	color: #fff;
	background: #ef746f;
	font-size: 9px;
	padding: 2px 4px;
}



.abletonlive{
	color: #fff;
	background: #ffbe40;
	font-size: 9px;
	padding: 2px 4px;
}


.aftereffects{
	color: #fff;
	background: #b3cc57;
	font-size: 9px;
	padding: 2px 4px;
}



.event-html{
	color: #fff;
	background: #22BC39;
	font-size: 9px;
	padding: 2px 4px;
}
.event-illustrator{
	color: #fff;
	background: #C82B2D;
	font-size: 9px;
	padding: 2px 4px;
}
.event-photoshop{
	color: #fff;
	background: #dd9b9d;
	font-size: 9px;
	padding: 2px 4px;
}
.event-wordpress{
	color: #fff;
	background: #7fc2ef;
	font-size: 9px;
	padding: 2px 4px;
}
.event-game{
	color: #fff;
	background: #D1C520;
	font-size: 9px;
	padding: 2px 4px;
}
.event-premier{
	color: #fff;
	background: #773EA8;
	font-size: 9px;
	padding: 2px 4px;
}
.event-php{
	color: #fff;
	background: #D07937;
	font-size: 9px;
	padding: 2px 4px;
}
.event-mapping{
	color: #fff;
	background: #468499;
	font-size: 9px;
	padding: 2px 4px;
}

.event-move{
	color: #fff;
	background: #d685b0;
	font-size: 9px;
	padding: 2px 4px;
}

.event-book{
	color: #fff;
	background: #dbe159;
	font-size: 9px;
	padding: 2px 4px;
}

.event-paper{
	color: #fff;
	background: #7fc2ef;
	font-size: 9px;
	padding: 2px 4px;
}

.event-ai{
	color: #fff;
	background: #b3d3ac;
	font-size: 9px;
	padding: 2px 4px;
}

.event-php{
	color: #fff;
	background: #eac7cd;
	font-size: 9px;
	padding: 2px 4px;
}

.event-vr{
	color: #fff;
	background: #e2b2c0;
	font-size: 9px;
	padding: 2px 4px;
}

.event-esports{
	color: #fff;
	background: #eabf4c;
	font-size: 9px;
	padding: 2px 4px;
}



.fusion360{
	color: #fff;
	background: #B4D9CE;
	font-size: 9px;
	padding: 2px 4px;
}




.spside{
	padding: 30px 15px 0;
}
#entry{
	margin: 0 0 20px;
	padding: 10px 0;
	background: #FFA500;
	color: #fff;
	text-align: center;
}


/****************************************************
PC
****************************************************/
@media screen and (min-width:1024px){
	
	/**************************
	全体
	**************************/
	
	body{
		font-size: 14px;
	}
	
	.breadcrumbs a, #content a:not(.entry), .category a, .advertisement a, .list a, .list_2 a, #footer a, h2 a{
		color: #333;
		text-decoration: none;
	}

	
	
	
	
	
	#content a:hover, .category a:hover, .advertisement a:hover, .list a:hover, .list_2 a:hover, #footer a:hover, h2 a:hover{
		color: #1A5487;
		text-decoration: underline;
	}

	#container a img:hover{
		filter:brightness(60%);
	}

	#container a img {
		-webkit-transition: all 0.5s ease;
		-moz-transition: all 0.5s ease;
		-o-transition: all 0.5s ease;
		transition: all  0.5s ease;
	}
	
	h1{
		height: 0;
		display: none;
	}
	
	#content h2{
		font-size: 16px;
		padding: 8px;
		position: relative;
		padding-left: 45px;
		margin: 0 0 20px 0;
		background: #fff;
		border-bottom: 2px solid #111;
		box-shadow: 0 0 5px 0 #ddd; /* CSS3 */
		-webkit-box-shadow: 0 0 5px 0 #ddd; /* Safari, Chrome用 */
		-moz-box-shadow: 0 0 5px 0 #ddd; /* Firefox用 */
		box-sizing: border-box;
	}
	
	#content h2:before{
		position: absolute;
		font-family: "Font Awesome 5 Free";
		content: "\f108";
		background: #111;
		color: white;
		font-weight: normal;
		font-size: 15px;
		border-radius: 50%;
		left: 0;
		left: 10px;
		width: 25px;
		height: 25px;
		line-height: 25px;
		text-align: center;
		top: 50%;
		-moz-transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	
	#content h2:after {/*吹き出しのちょこんと出た部分*/
		content: '';
		display: block;
		position: absolute;
		left: 30px;
		height: 0;
		width: 0;
		border-top: 7px solid transparent;
		border-bottom: 7px solid transparent;
		border-left: 12px solid #111;
		top: 50%;
		-moz-transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		transform: translateY(-50%);
	}

	#side h2{
		position: relative;
		margin: 0 0 15px 0;
		padding: 8px;
		font-size: 16px;
		color: #fff;
		box-sizing: border-box;
		position: relative;
		background: #111;
	}
	
	#side h2:after {
		position: absolute;
		content: '';
		top: 100%;
		left: 30px;
		border: 15px solid transparent;
		border-top: 15px solid #111;
		width: 0;
		height: 0;
	}

	#content h2 a{
		position: absolute;
		right: 10px;
		top: 12px;
		font-size: 11px;
	}
	
	#side h2 a{
		position: absolute;
		right: 12px;
		top: 12px;
		color: #fff;
		font-size: 11px;
	}

	h3{
		font-size: 14px;
	}
	
	.map h3{
		padding: 0 0 15px 0;
		margin: 0 0 15px 0;
		border-bottom: 1px dotted #ccc;
	}

	.single h3, .page h3, .member h3, author h3, .thumbnail h3, .thumbnail2 h3, .list h3, .list_2 h3{
		margin: 0 0 10px 0;
	}

	.breadcrumbs{
		width: 1200px;
		margin: 0 auto;
		padding: 15px 0 0 0;
		font-size: 12px;
		color: #999;
	}
	
	.box{
		margin: 0 0 30px 0;
	}
	
	.tile{
		padding: 15px;
		background: #fff;
		box-shadow: 0 0 5px 0 #ddd; /* CSS3 */
		-webkit-box-shadow: 0 0 5px 0 #ddd; /* Safari, Chrome用 */
		-moz-box-shadow: 0 0 5px 0 #ddd; /* Firefox用 */
		box-sizing: border-box;
	}
	
	.thumbnail .data{
		position: absolute;
		top: 3px;
		left: 0;
	}
	
	.thumbnail2 .data{
		position: absolute;
		top: 3px;
		left: 0;
	}
	
	.list_2 .data{
		position: absolute;
		top: 3px;
		left: 0;
	}
	
	.data span{
		padding: 5px;
	}
	
	span.event{
		background: #538B6E;
		color: #fff;
	}
	
	span.marriage{
		background: #8DA64A;
		color: #fff;
	}
	
	span.school{
		background: #C97A37;
		color: #fff;
	}
	
	span.recruit{
		background: #BB6969;
		color: #fff;
	}
	
	.color1{
		background: #546696;
		color: #fff;
	}
	/**************************
	レイアウト
	**************************/

	#container{
		width: 1200px;
		margin: 0 auto;
		padding: 30px 0;
			background: #F4F4F4;
	}

	#content{
		width: 800px;
		float: left;
		
	}

	#side{
		width: 300px;
		float: right;
	}
	
	/**************************
	固定ページ専用　レイアウト
	**************************/
	
#container2 {
    max-width: 1200px;   /* LP全体の幅 */
    margin: 0 auto;      /* 中央寄せ */
    padding: 30px 0;
	
}

/* 本文エリアだけで1カラムにする（中央寄せ） */
#content2 {
    width: 100%;        /* container2 の100%幅 */
    margin: 0 auto;     /* ← 中央寄せされる（親が中央なのでOK） */
    float: none;
}

	/**************************
	LPページ専用　レイアウト
	**************************/
	
/* LP の外枠だけ白 */
#container3 {
        width: 100%;    /* LP全体の幅 */
    margin: 0 auto;
    padding: 30px 0;

	
  
}

#content3 {
    	width: 1280px;
	  margin: 10 auto;     /* ← 中央寄せされる（親が中央なのでOK） */
    float: none;

	
}

	
.page.box.tile {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
	
	
	
	#content3 .page.box.tile {
    background: transparent !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    -moz-box-shadow: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
	
	
	
	
	/**************************
	ヘッダー
	**************************/
	#header{
		z-index: 9999;
		width: 100%;
		padding: 20px 0;
		box-sizing: border-box;
		background: #111;
	}
	
	.wrap{
		width: 1200px;
		margin: 0 auto;
	}

	#header img{
		width: 180px;
		height: auto;
		float: left;
	}

	#header a:hover{
		opacity: 0.6;
	}
	
	/**************************
	ナビゲーション
	**************************/
	
	.pcnone{
		display: none;
	}

	#navi{
		width: 990px;
		float: right;
		background: #111;
		box-sizing: border-box;
	}

	#navi ul{
		
		margin: 0 auto;
		list-style: none;
	}

	#navi ul li{
		width: 110px;
		float: left;
		border-left: 1px dotted #555;
		box-sizing: border-box;
	}
	
	#navi ul li:last-child{
		border-right: 1px dotted #555;
	}

	#navi ul li a{
		display: block;
		padding: 15px 0 13px;
		text-align: center;
		color: #fff;
		text-decoration: none;
		box-sizing: border-box;
		font-size: 14px;
	}

	/**************************
	サイド
	**************************/
	
	/*掲載数*/
	.numposts{
		font-size: 22px;
		font-weight: bold;
		text-align: center;
		line-height: 160%;
	}
	
	.numposts .text_2{
		color: #BB6969;
	}
	
	.numposts .text_1{
		font-size: 45px;
		color: #BB6969;
	}
	
	/*バナー*/
	
	.banner{
		margin: 0 0 20px 0;
	}

	.banner img{
		width: 100%;
		height: auto;
		border: 1px solid #ccc;
		box-sizing: border-box;
	}

	/*メンバーメニュー*/

	.member a{
		display: block;
		width: 100%;
		margin: 0 0 15px 0;
		padding: 10px 0;
		color: #fff;
		text-align: center;
		border-radius: 5px;
		text-decoration: none;
	}

	.member .post{
		width: 125px;
		float: left;
		margin: 0 15px 0 0;
		background: #BB6969;
		box-sizing: border-box;
	}

	.member .login{
		width: 125px;
		float: left;
		background: #C97A37;
		box-sizing: border-box;
		margin: 0;
	}

	.member .entry{
		width: 125px;
		float: left;
		margin: 0 15px 0 0;
		background: #BB6969;
		box-sizing: border-box;
	}

	.member .profile{
		width: 125px;
		float: left;
		background: #111;
		box-sizing: border-box;
	}

	.member .logout{
		width: 125px;
		float: left;
		margin: 0 15px 0 0;
		background: #C97A37;
		box-sizing: border-box;
	}
	
	.member .agreement{
		width: 125px;
		float: left;
		background: #546696;
		box-sizing: border-box;
		margin: 0;
	}

	/*カテゴリー一覧*/
	#side .category ul{
		list-style: none;
	}

	#side .category > ul > li > a{
		display: block;
		font-weight: 800;
		padding: 10px 0;
		border-top: 1px dotted #ccc;
	}

	#side .category > ul > li:first-child > a{
		padding: 0 0 10px 0;
		border: none;
	}

	#side .category > ul > li:last-child > a{
		padding: 10px 0 0 0;
	}
	
	#side .category ul li ul li a{
		display: block;
		font-size: 12px;
		color: #666;
		font-weight: bold;
		background: #f6f6f6;
		padding: 5px 10px;
		margin: 10px 0 0 0;
	}

	/*広告*/
	#side .advertisement{
		margin: 0 0 20px 0;
	}

	/*サイド一覧（どちらも）*/
	#side .list ul{
		list-style: none;
	}

	#side .list ul li{
		position: relative;
		padding: 10px 0;
		border-bottom: 1px dotted #ccc;
		box-sizing: border-box;
	}

	#side .list ul li:first-child{
		padding: 0 0 10px 0;
	}

	#side .list ul li:last-child{
		padding: 10px 0 0 0;
		border: none;
	}

	#side .list ul li img{
		float: left;
		width: 100px;
		height: 75px;
		margin: 0 12px 0 0;
	}

	#side .list ul li .noimage{
		float: left;
		width: 100px;
		height: 75px;
		background: #eee;
		margin: 0 12px 0 0;
	}

	#side .list ul li span{
		font-size: 11px;
	}

	/**************************
	フッター
	**************************/

	#footer{
		padding: 30px;
		background: #eee;
		color: #333;
	}
	
	#footer a{
		color: #333;
	}

	#footer .map{
		width: 1200px;
		margin: 0 auto;
	}

	#footer .map div{
		float: left;
		width: 285px;
		margin: 0 20px 0 0;
	}

	#footer .map div ul li{
		margin: 0 0 10px 0;
		font-size: 12px;
		list-style: none;
	}

	#footer .map div ul li:last-child{
		margin: 0;
	}

	#footer .map div:nth-of-type(4){
		margin: 0;
	}
	
	#link{
		clear: both;
		padding: 15px 0;
		text-align: center;
		font-size: 12px;
		background: #111;
	}
	
	#link ul{
		list-style: none;
		width: 1200px;
		margin: 0 auto;
	}

	#link ul li{
		float: left;
	}

	#link ul li a{
		display: block;
		padding: 5px 7px;
		box-sizing: border-box;
		font-size: 12px;
		color: #333;
		text-decoration: none;
	}

	#copy{
		clear: both;
		padding: 15px 0;
		text-align: center;
		font-size: 12px;
		color: #fff;
		background: #333;
	}

	/**************************
	トップページ
	**************************/

	/*メイン画像*/
	#visual{
		width: 100%;
		height: 700px;
		margin: 0 0 30px 0;
		background: url(images/img_main_1.jpg) center no-repeat;
	}
	
	#content .swiper-container a:hover{
		opacity: 0.7;
	}
	
	#content .swiper-container span{
		color: #E7303F;
	}
	
	.catch{
		display: inline;
		background: #E7303F;
		color: #fff;
		font-size: 20px;
		padding: 3px 5px 1px;
		border-radius: 5px;
	}
	
	#content .swiper-container .main_1{
		font-size: 23px;
		margin: 30px 0 5px 0;
		font-weight: bold;
		text-align: center;
	}
	
	#content .swiper-container .main_2{
		margin: 0 0 5px 0;
	}
	
	#content .swiper-container .main_3{
		font-size: 23px;
		font-weight: bold;
		text-align: center;
	}
	
	/*カテゴリー一覧*/
	
	.caption img{
		float: left;
		margin: 0 15px 0 0;
	}
	
	#content .category ul{
		list-style: none;
		margin: 15px 0 0 0;
	}
	
	#content .category ul li{
		float: left;
		width: 33%;
	}
	
	#content .category ul li a{
		padding: 0 0 10px 0;
		display: block;
	}

	/*一覧（サムネイルあり×）*/
	#content .thumbnail ul{
		list-style: none;
	}

	#content .thumbnail ul li{
		float: left;
		position: relative;
		width: 277px;
		margin: 0 22px 0 0;
		box-shadow: 0 0 5px 0 #ddd; /* CSS3 */
		-webkit-box-shadow: 0 0 5px 0 #ddd; /* Safari, Chrome用 */
		-moz-box-shadow: 0 0 5px 0 #ddd; /* Firefox用 */
		box-sizing: border-box;
		background: #fff;
	}

	#content .thumbnail ul li:nth-child(4) {
		width: 277px;
		margin: 0;
	}
	

	
	#content .thumbnail ul li img{
		width: 277px;
		height: 210px;
	}

	#content .thumbnail ul li .noimage{
		width: 277px;
		height: 210px;
		background: #eee;
	}
	
	#content .thumbnail ul li .description{
		padding: 15px;
	}
	
	#content .thumbnail ul li .text{
		font-size: 12px;
		color: #666;
	}

	#content .thumbnail ul li .data{
		font-size: 11px;
	}
	
	
	

	

	
	
	
	
	
	
	/* 一覧2（サムネイルありトップ）4カラム対応版 */
#content .thumbnail2 ul{
    list-style: none;
    margin: 0;
    padding: 0;
}

/* ★ 4カラム固定：25%幅（余白込み）に変更 */
#content .thumbnail2 ul li{
    float: left;
    position: relative;
    width: calc(25% - 20px);  /* ← 親幅に合わせて可変 */
    margin: 0 20px 20px 0;    /* カードの余白 */
    box-shadow: 0 0 5px 0 #ddd;
    -webkit-box-shadow: 0 0 5px 0 #ddd;
    -moz-box-shadow: 0 0 5px 0 #ddd;
    box-sizing: border-box;
    background: #fff;
}

/* ★ 4番目ごとに余白を0に */
#content .thumbnail2 ul li:nth-child(4n){
    margin-right: 0;
}

/* 画像は全幅に */
#content .thumbnail2 ul li img{
    width: 100%;
    height: auto;
}

/* その他の既存スタイルはそのまま */
#content .thumbnail2 ul li .noimage{
    width: 100%;
    height: 150px;
    background: #eee;
}

#content .thumbnail2 ul li .description{
    padding: 15px;
}

#content .thumbnail2 ul li .text{
    font-size: 12px;
    color: #666;
}

#content .thumbnail2 ul li .data{
    font-size: 11px;
}
	
	
	
	
	
	
	
	
	
	
	
	
	/*一覧（どちらも）*/
	#content .list{
	}
	
	#content .list ul{
		list-style: none;
	}

	#content .list ul li{
		position: relative;
		margin: 0 0 15px 0;
		padding: 15px;
		box-sizing: border-box;
		box-shadow: 0 0 5px 0 #ddd; /* CSS3 */
		-webkit-box-shadow: 0 0 5px 0 #ddd; /* Safari, Chrome用 */
		-moz-box-shadow: 0 0 5px 0 #ddd; /* Firefox用 */
		background: #fff;
	}
	
	#content .list ul li:last-child{
		margin: 0;
		border: none;
	}

	#content .list ul li img{
		float: left;
		width: 150px;
		height: 112px;
		margin: 0 15px 0 0;
	}
	
	#content .list ul li .text{
		margin: 0 0 15px 0;
		font-size: 12px;
		color: #666;
	}

	#content .list ul li .data{
		font-size: 11px;
	}
	
	/*一覧4列（サムネイルあり）*/
	#content .list_2 ul{
		list-style: none;
		margin: 15px 0 0 0;
	}

	#content .list_2 ul li{
		float: left;
		position: relative;
		width: 202px;
		margin: 0 22px 0 0;
		box-shadow: 0 0 5px 0 #ddd; /* CSS3 */
		-webkit-box-shadow: 0 0 5px 0 #ddd; /* Safari, Chrome用 */
		-moz-box-shadow: 0 0 5px 0 #ddd; /* Firefox用 */
		box-sizing: border-box;
		background: #fff;
	}

	#content .list_2 ul li:nth-child(4) {
		width: 202px;
		margin: 0;
	}
	
	#content .list_2 ul li img{
		width: 202px;
		height: 152px;
	}

	#content .list_2 ul li .noimage{
		width: 202px;
		height: 152px;
		background: #eee;
	}
	
	#content .list_2 ul li .description{
		padding: 15px;
	}
	
	#content .list_2 ul li .text{
		font-size: 12px;
		color: #666;
	}

	#content .list_2 ul li .data{
		font-size: 11px;
	}

	/**************************
	/* ページャー
	**************************/

	.text-center{
	  text-align: center;
	}

	ul.page-numbers {
		margin: 15px 0 0 0;
		border-radius: 4px;
		display: inline-block;
		padding-left: 0;
	}
	ul.page-numbers > li {
		display: inline;
	}
	ul.page-numbers > li > a ,
	ul.page-numbers > li > span {
		background-color: #ffffff;
		border: 1px solid #dddddd;
		color: #333;
		float: left;
		line-height: 1.42857;
		margin-left: -1px;
		padding: 6px 12px;
		position: relative;
		text-decoration: none;
	}
	ul.page-numbers > li:first-child > a {
		border-bottom-left-radius: 4px;
		border-top-left-radius: 4px;
		margin-left: 0;
	}
	ul.page-numbers > li:last-child > a {
		border-bottom-right-radius: 4px;
		border-top-right-radius: 4px;
	}
	ul.page-numbers > li > a:hover {
		background-color: #eeeeee;
		border-color: #dddddd;
		color: #333;
	}
	ul.page-numbers .current{
		background-color: #333;
		border-color: #333;
		color: #ffffff;
		cursor: default;
		z-index: 2;
	}
	
	/**************************
	/* 固定ページ
	**************************/
	
	.page .free{
		padding: 15px;
		margin: 0 0 20px 0;
		background: #f8f8f8;
		line-height: 160%;
		font-size: 110%;
	}
	
	.page .free:last-child{
		margin: 0;
	}

	.page .free h3{
		border-bottom: 1px dotted #aaa;
		font-size: 16px;
		padding: 0 0 2px 0;
	}

	/**************************
	/* シングルページ
	**************************/

	.single .image{
		margin: 0 0 15px 0;
		text-align: center;
	}
	
	.single .image img{
		max-width: 100%;
		height: auto;
	}

	.single .detail{
		margin: 0 0 20px 0;
	}

	.single .data{
		display: block;
		margin: 0 0 15px 0;
		font-size: 11px;
	}
	
	.single .post{
		padding: 15px 0;
	}

	.single .free{
		padding: 15px;
		margin: 0 0 20px 0;
		background: #f8f8f8;
		line-height: 160%;
		font-size: 110%;
	}
	
	.single .free h3{
		border-bottom: 1px dotted #aaa;
		font-size: 16px;
		padding: 0 0 2px 0;
	}
	
	#content .single .free a{
		text-decoration: underline;
	}
	
	.single .free:last-child{
		margin: 0;
	}

	.author img{
		float: left;
		margin: 0 15px 0 0;
	}

	/**************************
	/* フォーム
	**************************/

	.form{
		width: 100%;
		border-collapse: collapse;
		margin: 0 0 20px 0;
	}

	.form th{
		width: 25%;
		padding: 15px 0;
		border-bottom: 1px dotted #ccc;
		border-right: 1px dotted #ccc;
	}

	.form td{
		width: 75%;
		padding: 15px 0 15px 15px;
		border-bottom: 1px dotted #ccc;
	}

	.form .wpcf7-form-control{
		width: 100%;
		padding: 10px;
		box-sizing: border-box;
		border: 1px solid #ddd;
	}

	#submit{
		width: 200px;
		padding: 10px;
		margin: 0 auto;
		display: block;
		cursor: pointer;
	}

	/**************************
	/* メンバー募集
	**************************/

	.member{
		line-height: 180%;
	}

	.member img{
		float: left;
		margin: 0 15px 0 0;
	}

	.member .detail{
		margin: 0 0 20px 0;
	}

	.member .item{
		padding: 15px;
		margin: 0 0 20px 0;
		background: #eee;
	}

	.member .item:last-child{
		margin: 0;
	}

	/**************************
	/* メンバーメニュー
	**************************/

	#wpmem_reg{
		padding: 15px;
		background: #eee;
		box-sizing: border-box;
	}
	
	#wpmem_login{
		padding: 15px;
		background: #eee;
		box-sizing: border-box;
	}
	
	#wpmem_login .link-text:last-child{
	}
	
	fieldset{
		border: none;
	}
	
	fieldset legend{
		width: 100%;
		margin: 0 0 15px 0;
		padding: 10px;
		text-align: center;
		background: #999;
		color: #fff;
		box-sizing: border-box;
		display: none;
	}

	.div_text, .div_textarea{
		padding: 15px 0;
		box-sizing: border-box;
	}

	.div_text .textbox, .div_textarea .textarea, .div_text .username, .div_text .password{
		width: 100%;
		padding: 10px;
		box-sizing: border-box;
		border: 1px solid #ddd;
	}

	.buttons{
		width: 200px;
		padding: 10px;
		margin: 0 auto 15px;
		display: block;
		cursor: pointer;
		-webkit-appearance: none;
	}
	
}

/****************************************************
タブレット
****************************************************/
@media screen and (max-width:1023px){
	
	/**************************
	全体
	**************************/
	
	body{
		font-size: 14px;
	}
	
	.breadcrumbs a, #content a:not(.entry), .advertisement a, .list a, h2 a{
		color: #333;
		text-decoration: none;
	}
	
	.category a, #footer a{
		color: #333;
		text-decoration: none;
	}

	#content a:hover, .category a:hover, .advertisement a:hover, .list a:hover,  #footer a:hover, h2 a:hover{
		color: #1A5487;
		text-decoration: underline;
	}

	#container a img:hover{
		filter:brightness(60%);
	}

	#container a img {
		-webkit-transition: all 0.5s ease;
		-moz-transition: all 0.5s ease;
		-o-transition: all 0.5s ease;
		transition: all  0.5s ease;
	}
	
	h1{
		height: 0;
		display: none;
	}

	#content h2{
		font-size: 16px;
		padding: 8px;
		position: relative;
		padding-left: 45px;
		background: #fff;
		border-bottom: 2px solid #111;
		box-shadow: 0 0 5px 0 #ddd; /* CSS3 */
		-webkit-box-shadow: 0 0 5px 0 #ddd; /* Safari, Chrome用 */
		-moz-box-shadow: 0 0 5px 0 #ddd; /* Firefox用 */
		box-sizing: border-box;
	}
	
	#content h2:before{
		position: absolute;
		font-family: "Font Awesome 5 Free";
		content: "\f108";
		background: #111;
		color: white;
		font-weight: normal;
		font-size: 15px;
		border-radius: 50%;
		left: 0;
		left: 10px;
		width: 25px;
		height: 25px;
		line-height: 25px;
		text-align: center;
		top: 50%;
		-moz-transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	
	#content h2:after {/*吹き出しのちょこんと出た部分*/
		content: '';
		display: block;
		position: absolute;
		left: 30px;
		height: 0;
		width: 0;
		border-top: 7px solid transparent;
		border-bottom: 7px solid transparent;
		border-left: 12px solid #111;
		top: 50%;
		-moz-transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		transform: translateY(-50%);
	}

	#side h2{
		position: relative;
		margin: 0 0 15px 0;
		padding: 8px;
		font-size: 16px;
		color: #fff;
		box-sizing: border-box;
		position: relative;
		background: #111;
	}
	
	#side h2:after {
		position: absolute;
		content: '';
		top: 100%;
		left: 30px;
		border: 15px solid transparent;
		border-top: 15px solid #111;
		width: 0;
			height: 0;
	}

	#content h2 a{
		position: absolute;
		right: 10px;
		top: 12px;
		font-size: 11px;
	}
	
	#side h2 a{
		position: absolute;
		right: 12px;
		top: 12px;
		color: #fff;
		font-size: 11px;
	}

	h3{
		font-size: 14px;
	}

	.map h3{
		padding: 0 0 15px 0;
		margin: 0 0 15px 0;
		border-bottom: 1px dotted #ccc;
	}

	.single h3, .page h3, .member h3, author h3, .thumbnail h3, .thumbnail2 h3, .list_2 h3, .list h3{
		margin: 0 0 10px 0;
	}

	.breadcrumbs{
		width: 100%;
		margin: 0 auto;
		padding: 15px 15px 0;
		font-size: 12px;
		color: #999;
		box-sizing: border-box;
	}
	
	.box{
		margin: 0 0 30px 0;
	}
	
	.tile{
		padding: 15px;
		background: #fff;
		box-shadow: 0 0 5px 0 #ddd; /* CSS3 */
		-webkit-box-shadow: 0 0 5px 0 #ddd; /* Safari, Chrome用 */
		-moz-box-shadow: 0 0 5px 0 #ddd; /* Firefox用 */
		box-sizing: border-box;
	}
	
	/**************************
	レイアウト
	**************************/

	#container{
		width: 100%;
		margin: 0 auto;
		padding: 20px 15px;
		box-sizing: border-box;
	}

	#content{
		width: 100%;
		float: left;
	}

	#side{
		width: 100%;
		float: right;
	}

	/**************************
	ヘッダー
	**************************/

	#header{
		z-index: 9999;
		width: 100%;
		padding: 10px 30px;
		box-sizing: border-box;
		background: #111;
		text-align: center;
	}

	#header img{
		width: 70%;
		height: auto;
	}

	#header a:hover{
		opacity: 0.6;
	}
	/**************************
	サイド
	**************************/
	
	/*掲載数*/
	.numposts{
		font-size: 20px;
		font-weight: bold;
		text-align: center;
	}
	
	.numposts span{
		font-size: 40px;
		color: #BB6969;
	}
	
	/*バナー*/
	
	.banner{
		margin: 0 0 20px 0;
	}

	.banner img{
		width: 100%;
		height: auto;
	}

	/*メンバーメニュー*/

	.member a{
		display: block;
		width: 100%;
		padding: 10px 0;
		color: #fff;
		text-align: center;
		border-radius: 5px;
		text-decoration: none;
	}

	.member .post{
		background: #BB6969;
		box-sizing: border-box;
		margin: 0 0 15px 0;
	}

	.member .login{
		background: #C97A37;
		box-sizing: border-box;
		margin: 0 0 15px 0;
	}

	.member .entry{
		background: #BB6969;
		box-sizing: border-box;
		margin: 0 0 15px 0;
	}

	.member .profile{
		background: #111;
		box-sizing: border-box;
		margin: 0 0 15px 0;
	}

	.member .logout{
		background: #C97A37;
		box-sizing: border-box;
		margin: 0 0 15px 0;
	}
	
	.member .agreement{
		background: #546696;
		box-sizing: border-box;
		margin: 0;
	}

	/*カテゴリー一覧*/
	#side .category ul{
		list-style: none;
	}

	#side .category > ul > li > a{
		display: block;
		font-weight: 800;
		padding: 10px 0;
		border-top: 1px dotted #ccc;
	}

	#side .category > ul > li:first-child > a{
		padding: 0 0 10px 0;
		border: none;
	}

	#side .category > ul > li:last-child > a{
		padding: 10px 0 0 0;
	}
	
	#side .category ul li ul li a{
		display: block;
		font-size: 12px;
		color: #999;
		font-weight: bold;
		background: #f6f6f6;
		padding: 5px 10px;
		margin: 0 0 10px 0;
	}

	/*広告*/
	#side .advertisement{
		margin: 0 0 20px 0;
		text-align: center;
	}

	/*サイド一覧（どちらも）*/
	#side .list ul{
		list-style: none;
	}

	#side .list ul li{
		padding: 10px 0;
		border-bottom: 1px dotted #ccc;
		box-sizing: border-box;
	}

	#side .list ul li:first-child{
		padding: 0 0 10px 0;
	}

	#side .list ul li:last-child{
	}

	#side .list ul li img{
		float: left;
		width: 100px;
		height: 75px;
		margin: 0 12px 0 0;
	}

	#side .list ul li .noimage{
		float: left;
		width: 100px;
		height: 75px;
		background: #eee;
		margin: 0 12px 0 0;
	}

	#side .list ul li span{
		display: block;
		font-size: 11px;
	}

	/**************************
	フッター
	**************************/

	#footer{
		padding: 30px;
		background: #eee;
		color: #333;
	}
	
	#footer a{
		color: #333;
	}

	#footer .map{
		width: 1200px;
		margin: 0 auto;
	}

	#footer .map div{
		float: left;
		width: 285px;
		margin: 0 20px 0 0;
	}

	#footer .map div ul li{
		margin: 0 0 10px 0;
		font-size: 12px;
		list-style: none;
	}

	#footer .map div ul li:last-child{
		margin: 0;
	}

	#footer .map div:nth-of-type(4){
		margin: 0;
	}
	
	#link{
		clear: both;
		padding: 15px 0;
		text-align: center;
		font-size: 12px;
		color: #fff;
		background: #111;
	}

	#copy{
		clear: both;
		padding: 15px 0;
		text-align: center;
		font-size: 12px;
		color: #fff;
		background: #333;
	}

	/**************************
	ナビゲーション
	**************************/
	
	.spnone{
		display: none;
	}

	.drawer-menu>li{
		border-bottom: 1px dotted #fff;
	}
	
	.drawer-menu li a{
		display: block;
		padding: 15px;
		text-decoration: none;
		color: #fff;
	}

	/**************************
	トップページ
	**************************/

	/*メイン画像*/
	#visual{
		width: 100%;
		height: 300px;
		background-size: auto 300px;
		background: url(images/img_main_1sp.jpg) center no-repeat;
	}
	
	#content .swiper-container a p{
		position: absolute;
		width: 100%;
		bottom:0px;
		padding: 10px;
		color: #fff;
		text-decoration: none;
		z-index: 9999;
		background: rgba( 0, 0, 0, 0.7 );
		box-sizing: border-box;
	}
	
	#content .swiper-container img{
		width: 100%;
		height: auto;
	}

	/*一覧（サムネイルあり）*/
	#content .thumbnail{
	}
	
	#content .thumbnail ul{
		list-style: none;
	}

	#content .thumbnail ul li{
		position: relative;
		margin: 0 0 15px 0;
		padding: 15px;
		box-sizing: border-box;
		box-shadow: 0 0 5px 0 #ddd; /* CSS3 */
		-webkit-box-shadow: 0 0 5px 0 #ddd; /* Safari, Chrome用 */
		-moz-box-shadow: 0 0 5px 0 #ddd; /* Firefox用 */
		background: #fff;
	}
	
	#content .thumbnail ul li:last-child{
		margin: 0;
		border: none;
	}

	#content .thumbnail ul li img{
		float: left;
		width: 100px;
		height: 75px;
		margin: 0 15px 0 0;
	}
	
	#content .thumbnail ul li .text{
		margin: 0 0 15px 0;
		font-size: 12px;
		color: #666;
	}

	#content .thumbnail ul li .data{
		font-size: 11px;
	}
	
	/*一覧2（サムネイルあり）*/
	#content .thumbnail2{
	}
	
	#content .thumbnail2 ul{
		list-style: none;
	}

	#content .thumbnail2 ul li{
		position: relative;
		margin: 0 0 15px 0;
		padding: 15px;
		box-sizing: border-box;
		box-shadow: 0 0 5px 0 #ddd; /* CSS3 */
		-webkit-box-shadow: 0 0 5px 0 #ddd; /* Safari, Chrome用 */
		-moz-box-shadow: 0 0 5px 0 #ddd; /* Firefox用 */
		background: #fff;
	}
	
	#content .thumbnail2 ul li:last-child{
		margin: 0;
		border: none;
	}

	#content .thumbnail2 ul li img{
		float: left;
		width: 100px;
		height: 75px;
		margin: 0 15px 0 0;
	}
	
	#content .thumbnail2 ul li .text{
		margin: 0 0 15px 0;
		font-size: 12px;
		color: #666;
	}

	#content .thumbnail2 ul li .data{
		font-size: 11px;
	}
	
	/*一覧4列（サムネイルあり）*/
	
	#content .list_2 ul{
		list-style: none;
	}

	#content .list_2 ul li{
		position: relative;
		margin: 0 0 15px 0;
		padding: 15px;
		box-sizing: border-box;
		box-shadow: 0 0 5px 0 #ddd; /* CSS3 */
		-webkit-box-shadow: 0 0 5px 0 #ddd; /* Safari, Chrome用 */
		-moz-box-shadow: 0 0 5px 0 #ddd; /* Firefox用 */
		background: #fff;
	}
	
	#content .list_2 ul li:last-child{
		margin: 0;
		border: none;
	}

	#content .list_2 ul li img{
		float: left;
		width: 100px;
		height: 75px;
		margin: 0 15px 0 0;
	}
	
	#content .list_2 ul li .text{
		margin: 0 0 15px 0;
		font-size: 12px;
		color: #666;
	}

	#content .list_2 ul li .data{
		font-size: 11px;
	}

	/*一覧（どちらも）*/
	#content .list{
	}
	
	#content .list ul{
		list-style: none;
	}

	#content .list ul li{
		position: relative;
		margin: 0 0 15px 0;
		padding: 15px;
		box-sizing: border-box;
		box-shadow: 0 0 5px 0 #ddd; /* CSS3 */
		-webkit-box-shadow: 0 0 5px 0 #ddd; /* Safari, Chrome用 */
		-moz-box-shadow: 0 0 5px 0 #ddd; /* Firefox用 */
		background: #fff;
	}
	
	#content .list ul li:last-child{
		margin: 0;
		border: none;
	}

	#content .list ul li img{
		float: left;
		width: 100px;
		height: 75px;
		margin: 0 15px 0 0;
	}
	
	#content .list ul li .text{
		margin: 0 0 15px 0;
		font-size: 12px;
		color: #666;
	}

	#content .list ul li .data{
		font-size: 11px;
	}

	/**************************
	/* ページャー
	**************************/

	.text-center{
	  text-align: center;
	}

	ul.page-numbers {
		margin: 15px 0 0 0;
		border-radius: 4px;
		display: inline-block;
		padding-left: 0;
	}
	ul.page-numbers > li {
		display: inline;
	}
	ul.page-numbers > li > a ,
	ul.page-numbers > li > span {
		background-color: #ffffff;
		border: 1px solid #dddddd;
		color: #333;
		float: left;
		line-height: 1.42857;
		margin-left: -1px;
		padding: 6px 12px;
		position: relative;
		text-decoration: none;
	}
	ul.page-numbers > li:first-child > a {
		border-bottom-left-radius: 4px;
		border-top-left-radius: 4px;
		margin-left: 0;
	}
	ul.page-numbers > li:last-child > a {
		border-bottom-right-radius: 4px;
		border-top-right-radius: 4px;
	}
	ul.page-numbers > li > a:hover {
		background-color: #eeeeee;
		border-color: #dddddd;
		color: #333;
	}
	ul.page-numbers .current{
		background-color: #333;
		border-color: #333;
		color: #ffffff;
		cursor: default;
		z-index: 2;
	}
	
	/**************************
	/* 固定ページ
	**************************/
	
	.page .free{
		padding: 15px;
		margin: 0 0 20px 0;
		background: #f8f8f8;
		line-height: 160%;
		font-size: 110%;
	}
	
	.page .free:last-child{
		margin: 0;
	}

	.page .free h3{
		border-bottom: 1px dotted #aaa;
		font-size: 16px;
		padding: 0 0 2px 0;
	}

	/**************************
	/* シングルページ
	**************************/

	.single{
		line-height: 180%;
	}
	
	.ninja_onebutton{
		margin: 0 0 30px 0;
	}

	.single img{
		width: 100%;
		height: auto;
		margin: 0 0 15px;
	}

	.single .detail{
		margin: 0 0 20px 0;
	}

	.single .data{
		display: block;
		margin: 0 0 15px 0;
		font-size: 11px;
	}

	.single .right{
		margin: 0 0 20px 0;
		padding: 15px;
		background: #eee;
	}

	.single .left{
		margin: 0 0 20px 0;
		padding: 15px;
		background: #eee;
	}

	.single .left ul{
		list-style: none;
	}

	.single .left ul li{
		padding: 15px 0;
		 border-bottom: 1px dotted #ccc;
	}

	.single .left ul li img{
		width: 100px;
		height: 75px;
		margin: 0 12px 0 0;
		float: left;
	}

	.single .left ul li:first-child{
		padding: 0 0 15px 0;
	}

	.single .left ul li:last-child{
		border-bottom: none;
	}
	
	.single .post{
		padding: 15px 0;
	}

	.single .free{
		margin: 0 0 20px 0;
		padding: 15px;
		background: #f8f8f8;
	}
	
	.single .free:last-child{
		margin: 0;
	}

	.author img{
		float: left;
		margin: 0 15px 0 0;
	}

	/**************************
	/* フォーム
	**************************/

	.form{
		width: 100%;
		border-collapse: collapse;
		margin: 0 0 20px 0;
	}

	.form th{
		width: 35%;
		padding: 15px 0;
		border-bottom: 1px dotted #ccc;
		border-right: 1px dotted #ccc;
	}

	.form td{
		width: 65%;
		padding: 15px 0 15px 15px;
		border-bottom: 1px dotted #ccc;
	}

	.form .wpcf7-form-control{
		width: 100%;
		padding: 10px;
		box-sizing: border-box;
		border: 1px solid #ddd;
	}

	#submit{
		width: 200px;
		padding: 10px;
		margin: 0 auto;
		display: block;
		cursor: pointer;
		-webkit-appearance: none;
	}

	/**************************
	/* メンバー募集
	**************************/

	.member{
		line-height: 180%;
	}

	.member img{
		width: 100%;
		height: auto;
		margin: 0 0 15px 0;
	}

	.member .detail{
		margin: 0 0 20px 0;
	}

	.member .item{
		padding: 15px;
		margin: 0 0 20px 0;
		background: #eee;
	}

	.member .item:last-child{
		margin: 0;
	}

	/**************************
	/* メンバーメニュー
	**************************/

	#wpmem_reg{
		padding: 15px;
		background: #eee;
		box-sizing: border-box;
	}
	
	#wpmem_login{
		padding: 15px;
		background: #eee;
		box-sizing: border-box;
	}
	
	#wpmem_login .link-text:last-child{
	}
	
	fieldset{
		border: none;
	}
	
	fieldset legend{
		width: 100%;
		margin: 0 0 15px 0;
		padding: 10px;
		text-align: center;
		background: #999;
		color: #fff;
		box-sizing: border-box;
		display: none;
	}

	.div_text, .div_textarea{
		padding: 15px 0;
		box-sizing: border-box;
	}

	.div_text .textbox, .div_textarea .textarea, .div_text .username, .div_text .password{
		width: 100%;
		padding: 10px;
		box-sizing: border-box;
		border: 1px solid #ddd;
	}

	.buttons{
		width: 200px;
		padding: 10px;
		margin: 0 auto 15px;
		display: block;
		cursor: pointer;
		-webkit-appearance: none;
	}
}

/****************************************************
スマホ
****************************************************/
@media screen and (max-width: 479px) {
	
	/**************************
	全体
	**************************/
	
	body{
		font-size: 14px;
	}
	
	.breadcrumbs a, #content a:not(.entry), .advertisement a, .list a, h2 a{
		color: #333;
		text-decoration: none;
	}
	
	.category a, #footer a{
		color: #333;
		text-decoration: none;
	}

	#content a:hover, .category a:hover, .advertisement a:hover, .list a:hover, #footer a:hover, h2 a:hover{
		color: #1A5487;
		text-decoration: underline;
	}

	#container a img:hover{
		filter:brightness(60%);
	}

	#container a img {
		-webkit-transition: all 0.5s ease;
		-moz-transition: all 0.5s ease;
		-o-transition: all 0.5s ease;
		transition: all  0.5s ease;
	}
	
	h1{
		height: 0;
		display: none;
	}

	#content h2{
		font-size: 16px;
		padding: 8px;
		position: relative;
		padding-left: 45px;
		background: #fff;
		border-bottom: 2px solid #111;
		box-shadow: 0 0 5px 0 #ddd; /* CSS3 */
		-webkit-box-shadow: 0 0 5px 0 #ddd; /* Safari, Chrome用 */
		-moz-box-shadow: 0 0 5px 0 #ddd; /* Firefox用 */
		box-sizing: border-box;
	}
	
	#content h2:before{
		position: absolute;
		font-family: "Font Awesome 5 Free";
		content: "\f108";
		background: #111;
		color: white;
		font-weight: normal;
		font-size: 15px;
		border-radius: 50%;
		left: 0;
		left: 10px;
		width: 25px;
		height: 25px;
		line-height: 25px;
		text-align: center;
		top: 50%;
		-moz-transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	
	#content h2:after {/*吹き出しのちょこんと出た部分*/
		content: '';
		display: block;
		position: absolute;
		left: 30px;
		height: 0;
		width: 0;
		border-top: 7px solid transparent;
		border-bottom: 7px solid transparent;
		border-left: 12px solid #111;
		top: 50%;
		-moz-transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		transform: translateY(-50%);
	}

	#side h2{
		position: relative;
		margin: 0 0 15px 0;
		padding: 8px;
		font-size: 16px;
		color: #fff;
		box-sizing: border-box;
		position: relative;
		background: #111;
	}
	
	#side h2:after {
		position: absolute;
		content: '';
		top: 100%;
		left: 30px;
		border: 15px solid transparent;
		border-top: 15px solid #111;
		width: 0;
			height: 0;
	}

	#content h2 a{
		position: absolute;
		right: 10px;
		top: 12px;
		font-size: 11px;
	}
	
	#side h2 a{
		position: absolute;
		right: 12px;
		top: 12px;
		color: #fff;
		font-size: 11px;
	}

	h3{
		font-size: 14px;
	}

	.map h3{
		padding: 0 0 15px 0;
		margin: 0 0 15px 0;
		border-bottom: 1px dotted #ccc;
	}

	.single h3, .page h3, .member h3, author h3, .thumbnail h3, .thumbnail2 h3, .list_2 h3, .list h3{
		margin: 0 0 10px 0;
	}

	.breadcrumbs{
		width: 100%;
		margin: 0 auto;
		padding: 15px 15px 0;
		font-size: 12px;
		color: #999;
		box-sizing: border-box;
	}
	
	.box{
		margin: 0 0 30px 0;
	}
	
	.tile{
		padding: 15px;
		background: #fff;
		box-shadow: 0 0 5px 0 #ddd; /* CSS3 */
		-webkit-box-shadow: 0 0 5px 0 #ddd; /* Safari, Chrome用 */
		-moz-box-shadow: 0 0 5px 0 #ddd; /* Firefox用 */
		box-sizing: border-box;
	}
	
	/**************************
	レイアウト
	**************************/

	#container{
		width: 100%;
		margin: 0 auto;
		padding: 20px 15px;
		box-sizing: border-box;
	}

	#content{
		width: 100%;
		float: left;
	}

	#side{
		width: 100%;
		float: right;
	}

	/**************************
	ヘッダー
	**************************/
	#header{
		z-index: 9999;
		width: 100%;
		padding: 10px 30px;
		box-sizing: border-box;
		background: #111;
		text-align: center;
	}

	#header img{
		width: 70%;
		height: auto;
	}

	#header a:hover{
		opacity: 0.6;
	}
	
	/**************************
	サイド
	**************************/
	
	/*掲載数*/
	.numposts{
		font-size: 20px;
		font-weight: bold;
		text-align: center;
	}
	
	.numposts span{
		font-size: 40px;
		color: #BB6969;
	}
	
	/*バナー*/
	
	.banner{
		margin: 0 0 20px 0;
	}

	.banner img{
		width: 100%;
		height: auto;
	}

	/*メンバーメニュー*/

	.member a{
		display: block;
		width: 100%;
		padding: 10px 0;
		color: #fff;
		text-align: center;
		border-radius: 5px;
		text-decoration: none;
	}

	.member .post{
		background: #BB6969;
		box-sizing: border-box;
		margin: 0 0 15px 0;
	}

	.member .login{
		background: #C97A37;
		box-sizing: border-box;
		margin: 0 0 15px 0;
	}

	.member .entry{
		background: #BB6969;
		box-sizing: border-box;
		margin: 0 0 15px 0;
	}

	.member .profile{
		background: #111;
		box-sizing: border-box;
		margin: 0 0 15px 0;
	}

	.member .logout{
		background: #C97A37;
		box-sizing: border-box;
		margin: 0 0 15px 0;
	}
	
	.member .agreement{
		background: #546696;
		box-sizing: border-box;
		margin: 0;
	}

	/*カテゴリー一覧*/
	#side .category ul{
		list-style: none;
	}

	#side .category > ul > li > a{
		display: block;
		font-weight: 800;
		padding: 10px 0;
		border-top: 1px dotted #ccc;
	}

	#side .category > ul > li:first-child > a{
		padding: 0 0 10px 0;
		border: none;
	}

	#side .category > ul > li:last-child > a{
		padding: 10px 0 0 0;
	}
	
	#side .category ul li ul li a{
		display: block;
		font-size: 12px;
		color: #999;
		font-weight: bold;
		background: #f6f6f6;
		padding: 5px 10px;
		margin: 0 0 10px 0;
	}

	/*広告*/
	#side .advertisement{
		margin: 0 0 20px 0;
		text-align: center;
	}

	/*サイド一覧（どちらも）*/
	#side .list ul{
		list-style: none;
	}

	#side .list ul li{
		padding: 10px 0;
		border-bottom: 1px dotted #ccc;
		box-sizing: border-box;
	}

	#side .list ul li:first-child{
		padding: 0 0 10px 0;
	}

	#side .list ul li:last-child{
	}

	#side .list ul li img{
		float: left;
		width: 100px;
		height: 75px;
		margin: 0 12px 0 0;
	}

	#side .list ul li .noimage{
		float: left;
		width: 100px;
		height: 75px;
		background: #eee;
		margin: 0 12px 0 0;
	}

	#side .list ul li span{
		display: block;
		font-size: 11px;
	}

	/**************************
	フッター
	**************************/

	#footer{
		padding: 30px;
		background: #eee;
		color: #333;
	}
	
	#footer a{
		color: #333;
	}

	#footer .map{
		width: 100%;
		margin: 0 auto;
	}

	#footer .map div{
		width: 100%;
		margin: 0 0 20px 0;
		padding: 0 0 5px 0;
		border-bottom: 1px dotted #ccc;
	}

	#footer .map div ul li{
		margin: 0 0 10px 0;
		font-size: 12px;
		list-style: none;
	}

	#footer .map div:nth-of-type(4){
		margin: 0;
		border-bottom: none;
		text-align: center;
	}
	
	#link{
		clear: both;
		padding: 15px 0;
		text-align: center;
		font-size: 12px;
		color: #fff;
		background: #111;
	}

	#copy{
		clear: both;
		padding: 15px 0;
		text-align: center;
		font-size: 12px;
		color: #fff;
		background: #333;
	}

	/**************************
	ナビゲーション
	**************************/
	
	.spnone{
		display: none;
	}

	.drawer-menu>li{
		border-bottom: 1px dotted #fff;
	}
	
	.drawer-menu li a{
		display: block;
		padding: 15px;
		text-decoration: none;
		color: #fff;
	}

	/**************************
	トップページ
	**************************/

	/*メイン画像*/
	#visual{
		width: 100%;
		height: 300px;
		background-size: auto 300px;
		background: url(images/img_main_1sp.jpg) center no-repeat;
	}
	
	#content .swiper-container a p{
		position: absolute;
		width: 100%;
		bottom:0px;
		padding: 10px;
		color: #fff;
		text-decoration: none;
		z-index: 9999;
		background: rgba( 0, 0, 0, 0.7 );
		box-sizing: border-box;
	}
	
	#content .swiper-container img{
		width: 100%;
		height: auto;
	}

	/*一覧（サムネイルあり）*/
	#content .thumbnail{
	}
	
	#content .thumbnail ul{
		list-style: none;
	}

	#content .thumbnail ul li{
		position: relative;
		margin: 0 0 15px 0;
		padding: 15px;
		box-sizing: border-box;
		box-shadow: 0 0 5px 0 #ddd; /* CSS3 */
		-webkit-box-shadow: 0 0 5px 0 #ddd; /* Safari, Chrome用 */
		-moz-box-shadow: 0 0 5px 0 #ddd; /* Firefox用 */
		background: #fff;
	}
	
	#content .thumbnail ul li:last-child{
		margin: 0;
		border: none;
	}

	#content .thumbnail ul li img{
		float: left;
		width: 100px;
		height: 75px;
		margin: 0 15px 0 0;
	}
	
	#content .thumbnail ul li .text{
		margin: 0 0 15px 0;
		font-size: 12px;
		color: #666;
	}

	#content .thumbnail ul li .data{
		font-size: 11px;
	}
	
	/*一覧2（サムネイルあり）*/
	#content .thumbnail2{
	}
	
	#content .thumbnail2 ul{
		list-style: none;
	}

	#content .thumbnail2 ul li{
		position: relative;
		margin: 0 0 15px 0;
		padding: 15px;
		box-sizing: border-box;
		box-shadow: 0 0 5px 0 #ddd; /* CSS3 */
		-webkit-box-shadow: 0 0 5px 0 #ddd; /* Safari, Chrome用 */
		-moz-box-shadow: 0 0 5px 0 #ddd; /* Firefox用 */
		background: #fff;
	}
	
	#content .thumbnail2 ul li:last-child{
		margin: 0;
		border: none;
	}

	#content .thumbnail2 ul li img{
		float: left;
		width: 100px;
		height: 75px;
		margin: 0 15px 0 0;
	}
	
	#content .thumbnail2 ul li .text{
		margin: 0 0 15px 0;
		font-size: 12px;
		color: #666;
	}

	#content .thumbnail2 ul li .data{
		font-size: 11px;
	}
	
	/*一覧4列（サムネイルあり）*/
	
	#content .list_2 ul{
		list-style: none;
	}

	#content .list_2 ul li{
		position: relative;
		margin: 0 0 15px 0;
		padding: 15px;
		box-sizing: border-box;
		box-shadow: 0 0 5px 0 #ddd; /* CSS3 */
		-webkit-box-shadow: 0 0 5px 0 #ddd; /* Safari, Chrome用 */
		-moz-box-shadow: 0 0 5px 0 #ddd; /* Firefox用 */
		background: #fff;
	}
	
	#content .list_2 ul li:last-child{
		margin: 0;
		border: none;
	}

	#content .list_2 ul li img{
		float: left;
		width: 100px;
		height: 75px;
		margin: 0 15px 0 0;
	}
	
	#content .list_2 ul li .text{
		margin: 0 0 15px 0;
		font-size: 12px;
		color: #666;
	}

	#content .list_2 ul li .data{
		font-size: 11px;
	}

	/*一覧（どちらも）*/
	#content .list{
	}
	
	#content .list ul{
		list-style: none;
	}

	#content .list ul li{
		position: relative;
		margin: 0 0 15px 0;
		padding: 15px;
		box-sizing: border-box;
		box-shadow: 0 0 5px 0 #ddd; /* CSS3 */
		-webkit-box-shadow: 0 0 5px 0 #ddd; /* Safari, Chrome用 */
		-moz-box-shadow: 0 0 5px 0 #ddd; /* Firefox用 */
		background: #fff;
	}
	
	#content .list ul li:last-child{
		margin: 0;
		border: none;
	}

	#content .list ul li img{
		float: left;
		width: 100px;
		height: 75px;
		margin: 0 15px 0 0;
	}
	
	#content .list ul li .text{
		margin: 0 0 15px 0;
		font-size: 12px;
		color: #666;
	}

	#content .list ul li .data{
		font-size: 11px;
	}

	/**************************
	/* ページャー
	**************************/

	.text-center{
	  text-align: center;
	}

	ul.page-numbers {
		margin: 15px 0 0 0;
		border-radius: 4px;
		display: inline-block;
		padding-left: 0;
	}
	ul.page-numbers > li {
		display: inline;
	}
	ul.page-numbers > li > a ,
	ul.page-numbers > li > span {
		background-color: #ffffff;
		border: 1px solid #dddddd;
		color: #333;
		float: left;
		line-height: 1.42857;
		margin-left: -1px;
		padding: 6px 12px;
		position: relative;
		text-decoration: none;
	}
	ul.page-numbers > li:first-child > a {
		border-bottom-left-radius: 4px;
		border-top-left-radius: 4px;
		margin-left: 0;
	}
	ul.page-numbers > li:last-child > a {
		border-bottom-right-radius: 4px;
		border-top-right-radius: 4px;
	}
	ul.page-numbers > li > a:hover {
		background-color: #eeeeee;
		border-color: #dddddd;
		color: #333;
	}
	ul.page-numbers .current{
		background-color: #333;
		border-color: #333;
		color: #ffffff;
		cursor: default;
		z-index: 2;
	}
	
	/**************************
	/* 固定ページ
	**************************/
	
	.page .free{
		padding: 15px;
		margin: 0 0 20px 0;
		background: #f8f8f8;
		line-height: 160%;
		font-size: 110%;
	}
	
	.page .free:last-child{
		margin: 0;
	}

	.page .free h3{
		border-bottom: 1px dotted #aaa;
		font-size: 16px;
		padding: 0 0 2px 0;
	}

	/**************************
	/* シングルページ
	**************************/

	.single{
		line-height: 180%;
	}
	
	.single .ninja_onebutton{
		margin: 0 0 15px 0;
	}

	.single img{
		width: 100%;
		height: auto;
		margin: 0 0 15px;
	}

	.single .detail{
		margin: 0 0 20px 0;
	}

	.single .data{
		display: block;
		margin: 0 0 15px 0;
		font-size: 11px;
	}

	.single .right{
		margin: 0 0 20px 0;
		padding: 15px;
		background: #eee;
	}

	.single .left{
		margin: 0 0 20px 0;
		padding: 15px;
		background: #eee;
	}

	.single .left ul{
		list-style: none;
	}

	.single .left ul li{
		padding: 15px 0;
		 border-bottom: 1px dotted #ccc;
	}

	.single .left ul li img{
		width: 100px;
		height: 75px;
		margin: 0 12px 0 0;
		float: left;
	}

	.single .left ul li:first-child{
		padding: 0 0 15px 0;
	}

	.single .left ul li:last-child{
		border-bottom: none;
	}
	
	.single .post{
		padding: 15px 0;
	}

	.single .free{
		margin: 0 0 20px 0;
		padding: 15px;
		background: #f8f8f8;
	}
	
	.single .free:last-child{
		margin: 0;
	}

	.author img{
		float: left;
		margin: 0 15px 0 0;
	}

	/**************************
	/* フォーム
	**************************/

	.form{
		width: 100%;
		border-collapse: collapse;
		margin: 0 0 20px 0;
	}

	.form th{
		width: 35%;
		padding: 15px 0;
		border-bottom: 1px dotted #ccc;
		border-right: 1px dotted #ccc;
	}

	.form td{
		width: 65%;
		padding: 15px 0 15px 15px;
		border-bottom: 1px dotted #ccc;
	}

	.form .wpcf7-form-control{
		width: 100%;
		padding: 10px;
		box-sizing: border-box;
		border: 1px solid #ddd;
	}

	#submit{
		width: 200px;
		padding: 10px;
		margin: 0 auto;
		display: block;
		cursor: pointer;
		-webkit-appearance: none;
	}

	/**************************
	/* メンバー募集
	**************************/

	.member{
		line-height: 180%;
	}

	.member img{
		width: 100%;
		height: auto;
		margin: 0 0 15px 0;
	}

	.member .detail{
		margin: 0 0 20px 0;
	}

	.member .item{
		padding: 15px;
		margin: 0 0 20px 0;
		background: #eee;
	}

	.member .item:last-child{
		margin: 0;
	}

	/**************************
	/* メンバーメニュー
	**************************/

	#wpmem_reg{
		padding: 15px;
		background: #eee;
		box-sizing: border-box;
	}
	
	#wpmem_login{
		padding: 15px;
		background: #eee;
		box-sizing: border-box;
	}
	
	#wpmem_login .link-text:last-child{
	}
	
	fieldset{
		border: none;
	}
	
	fieldset legend{
		width: 100%;
		margin: 0 0 15px 0;
		padding: 10px;
		text-align: center;
		background: #999;
		color: #fff;
		box-sizing: border-box;
		display: none;
	}

	.div_text, .div_textarea{
		padding: 15px 0;
		box-sizing: border-box;
	}

	.div_text .textbox, .div_textarea .textarea, .div_text .username, .div_text .password{
		width: 100%;
		padding: 10px;
		box-sizing: border-box;
		border: 1px solid #ddd;
	}

	.buttons{
		width: 200px;
		padding: 10px;
		margin: 0 auto 15px;
		display: block;
		cursor: pointer;
		-webkit-appearance: none;
	}

	
	

	
	
	
	
	
	
	#cat {
display: block;
	width: 100%;
	margin: 0 auto 0;
	padding: 15px 0;
	background: #FFA500;
	color: #fff;
	text-align: center;
	font-weight: bold;
	border-radius: 3px;
	font-size: 16px;
	text-decoration: none;
}
	
	/* 行間を調整する */
.kaigyo1 {
    line-height:200%;
}
	
	/* キャプションの余白を削除 */
.wp-block-image {
	margin-bottom: 0;
}

}


/*メニュードロップダウン*/
.nav-pc .menu-item-has-children{
	position: relative;
}
.nav-pc .menu-item-has-children > a{
	display: flex!important;
	align-items: center;
	justify-content: center;
	gap: 7px;
}
.nav-pc .menu-item-has-children > a:after{
	content: "";
	display: block;
	width: 6px;
	height: 10px;
	background: url(./images/arrow.png) no-repeat center center / 100% 100%;	
	margin-top: -2px;
	rotate: 90deg;
}
.nav-pc .menu-item-has-children .sub-menu{
	position: absolute;
	z-index: 999;
	left: calc(100% - 1px);
	top: 0;
	background-color: #111;
	max-height: 0;
	overflow: hidden;
	border-left: unset;
	border-right: unset;
	width: fit-content;
}
.nav-pc .menu-item-has-children .sub-menu li{
	width: fit-content!important;
}
.nav-pc .menu-item-has-children .sub-menu li a{
	text-align: left!important;
	padding-left: 15px!important;
	padding-right: 15px!important;
    white-space:nowrap;
}
.nav-pc .menu-item-has-children:hover >.sub-menu{
	overflow: unset;
	max-height: 9000px;
}

.nav-pc >ul >.menu-item-has-children >.sub-menu{
	left: 0;
	top: calc(100% - 1px);
}
.nav-pc>ul>.menu-item-has-children .sub-menu .menu-item-has-children a:after{
	rotate: 0deg;
}
@media (max-width: 768px){
	body.drawer-open{
		overflow: hidden;
	}
	.drawer-nav {
		width: 20rem!important;
	}
	.drawer--left .drawer-nav {
		left: -20rem!important;
	}
	.drawer--left .drawer-hamburger, .drawer--left.drawer-open .drawer-nav, .drawer--left.drawer-open .drawer-navbar .drawer-hamburger {
		left: 0!important;
		background-color: #111!important;
	}
	.drawer--left.drawer-open .drawer-nav{
		overflow: auto;
		padding-top: 50px;
		box-sizing: border-box;
	}
	.drawer-hamburger {
		padding: 15px .75rem 20px !important;
	}
	.drawer-hamburger:after{
		content: "menu";
		position: fixed;
		left: 28px;
		top: 34px;
		transform: translateX(-50%);
		color: #fff;
	}
	.menu-item-has-children .sub-menu{
		padding-left: 15px;
		list-style: none;
	}
	.menu-item-has-children .sub-menu a{
		padding: 5px 15px;
	}

	.drawer-nav__close{
		background-color: #Fff;
		color: #111;
		text-align: center;
		margin: 20px auto;
		width: 150px;
		padding: 10px;
	}
	.drawer-nav__close span{
		font-size: 1.2em;
	}
	.btn-show-sub-menu{
		display: block;
		width: 50px;
		height: 50px;
		background: url(./images/arrow.png) no-repeat center center / 10px 15px;
		rotate: 90deg;
	}
	.menu-item-has-children{
		display: flex!important;
		align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
	}
	.menu-item-has-children > span{
		order: 2;
	}
	.menu-item-has-children > a{
		width: calc(100% - 100px);
		order: 1;
	}
	.menu-item-has-children > ul{
		order: 3;
		width: 100%;
	}
	.menu-item-has-children > .sub-menu{
		max-height: 0;
		overflow: hidden;
	}
	.menu-item-has-children.active{
		padding-bottom: 15px;
	}
	.menu-item-has-children.active .btn-show-sub-menu{
		rotate: -90deg;
	}
	.menu-item-has-children.active > .sub-menu{
		max-height: 9999px;
	}
	
}
/*end メニュードロップダウン*/