@charset "utf-8";
/* CSS Document */

body{
	font-size:14px;
	line-height:1.7;
	color:#5d5a5a;
	text-align:left;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color:#333333;
	background:url(/img/bg.gif);
	border-top:7px #de55a1 solid;
}
#container{
	max-width:960px;
	margin:0 auto;
	width: auto;
}
#sidebar{
	float:left;
	width:250px;
	position:relative;
	margin-top:0;
}
#main{
	float:right;
	width:680px;
}

/* header
------------------------------------------------------------*/
#header_inner{
}

h1{
	font-size:12px;
	color:#898989;
}
#top_box{
	margin-top:10px;
	margin-bottom:20px;
}
#header_nav li{
	float:left;
	text-align:right;
	background:url(/img/sub_icon.png) no-repeat 5px 8px;
	padding-left:20px;
	margin-left:20px;
	margin-bottom:10px;
	margin-top:5px;
}
#header li a{
	color:#de55a1;
}
#header li a:hover{
	color:#e86ab0;
}
#sor li{
	float:left;
}
#sor{
	float:left;
	width:350px;
	padding-top:10px;
	height: 54px;
}
.sor_under {
	float:left;
	width:460px;
	padding-top:10px;
}

.sor_under li{
	float:left;
}

#header_nav{
	float:right;
	width:290px;
}

#header {
	float: right;
	width: 680px;
	text-align: left;
}
#contents {
	margin-top: 22px;
}

/* sidebar
------------------------------------------------------------*/
#g_nav{
	border:5px #de55a1 solid;
	width:240px;
}
#g_nav li{
	border-bottom:1px #de55a1 dotted;
}
#g_nav li:last-child{
	border-bottom:none;
}
.info_list dd{
	border-right:2px #888686 solid;
	border-left:2px #888686 solid;
	border-bottom:2px #888686 solid;
	margin-left:10px;
	margin-right:10px;
	overflow:auto;
	height:150px;
	background:#FFF;
}
.info_list ul{
	padding:10px;
}
.info_list ul li:first-child{
	margin-top:0;
}
.info_list ul li{
	margin-top:15px;
	border-bottom:1px #888686 dotted;
}
.info_list ul li a{
	color: #888686 ;
}
.info_list ul li a:hover{
	color: #999;
}

#s_admin dd{
	border:2px solid #8fd0f2;
	padding:5px;
	background:url(../img/admin_bg.png) repeat;
	margin-top:5px;
}
#s_admin dd a{
	text-decoration:underline;
	color:#188CC8;
}
#s_admin dd a:hover{
	text-decoration:none;
}

/* main
------------------------------------------------------------*/
.text_box{
	font-size: 15px;
	padding:10px;
}
.text_box h1 {
    color: #333;
    font-size: 20px;
    font-weight: bold;
    margin-top: 22px;
}
.h2{
    border-left: 6px solid #f94aad;
    color: #000000;
    font-size: 20px;
    font-weight: bold;
    padding: 0.3em 0.4em;
    background: url(/img/bg.png) repeat;
    color: #ffffff;
    text-shadow: 1px 1px 1px #482237;
}
h3,.h3{
	background:url(/img/title_bg.png) no-repeat 0 7px;
	height:38px;
	margin-top:30px;
	padding-left:15px;
	margin-bottom: 5px;
	font-size:20px;
	color:#333;
	clear: both;
	font-weight: bold;
}
h4{
	font-size: 16px;
	font-weight: bolder;
	margin-bottom: 10px;
	margin-top: 40px;
	clear: both;
	color: #333;
}
.h4 {
	font-size: 19px;
	font-weight: normal;
	margin-bottom: 6px;
	margin-top: 40px;
	margin-left: 0.7em;
	clear: both;
	color: #de56a2;
}
h5 {
	font-size: 16px;
	font-weight: bolder;
	margin-bottom: 0;
	margin-top: 40px;
	clear: both;
	color: #333;
}
#pagetop{
	padding-top:50px;
	text-align:right;
	max-width:960px;
	margin:0 auto;
}
#pagetop a{
	color:#de55a1;
	text-decoration:underline;
	background-color:#de55a1;
	color:#FFF;
	padding:10px;
	border-radius:8px 8px 0 0;
}
#pagetop a:hover{
	text-decoration:none;
}
.check::before {
	content: "Check!!";
    background-color: #de56a2;
    color: white;
    font-size: 0.7em;
    padding: 0.2em 0.5em;
    margin-right: 0.5em;
    border-radius: 4px 18px 18px 4px;
    vertical-align: middle;
}
/* footer
------------------------------------------------------------*/
#footer{
	background:#de55a1;
}
#footernav{
	max-width:960px;
	margin:0 auto;
	padding-top:5px;
	padding-bottom:5px;
	color:#FFF;
}
#footernav p{
	line-height:1;
	border-bottom:2px #25acf2 dotted;
	margin-top:5px;
	padding-bottom:10px;
}
address{
	font-size:12px;
	line-height:2;
	text-align:right;
	border-top:1px solid #f187c2;
}
#footernav a{
	font-size:13px;
	color:#FFF;
}
#footernav a:hover{
	text-decoration:underline;
}
#footernav ul li{
	display:inline-block;
	position: relative;
}
#fn_01{
	padding-top:5px;
	padding-bottom:5px;
	border-bottom:1px solid #be1f77;
}
#fn_02{
	padding-top:5px;
	padding-bottom:5px;
	border-top:1px solid #f187c2;
	border-bottom:1px solid #be1f77;
}

#footernav ul li:not(:last-child)::after {
	content: "|";
	padding-right: 0.5em;
	padding-left: 0.5em;
}
/* topicpath
------------------------------------------------------------*/
#topicpath{
	max-width:680px;
	background:url(/img/pankuzu_bg.png) no-repeat;
	font-weight: bold;
	background-size: cover;
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	height: 35px;
}
#topicpath img {
	margin: 0;
	display: inline-block;
	vertical-align: middle;
}

.pan li:after {
	content: "＞";
	padding-left: 10px;
}


#topicpath li{
	margin-left:10px;
	color:#de55a1;
	font-size:12px;
	vertical-align: top;
}

#topicpath li a{
	text-decoration:underline;
	color:inherit;
}
#topicpath li a:hover{
	text-decoration:none
}
/* common
------------------------------------------------------------*/
.ot a{
	color:#188cc8;
	text-decoration:none;
}
.ot a:hover{
	text-decoration:none;
}
.ot h2{
	margin-top:40px;
}
.mt15{
	margin-top:15px;
}
.mt30{
	margin-top:30px;
}
.margin{
	display: block;
	margin: 25px 0;
}
.blue{
	color:#5190f7;
}
.pink02{
	color:#f7a9d7;
}
.yellow{
	color:#cfa04d;
}
.archive{
	text-align: center;
	margin: 30px 0 0 0;
}
.archive a{
	text-decoration: underline;
}
.sp_lp {
	display: none;
}

.blog .text_box .pc_lp {
    background-color: #1ec307;
    border-radius: 3px;
    color: #fff;
    display: block;
    font-weight: bold;
    padding: 2%;
    text-align: center;
    text-decoration: none;
}
#lclr a.pc_lp {
    background-color: #1ec307;
    border-radius: 3px;
    color: #fff;
    display: block;
    font-weight: bold;
    padding: 2%;
    text-align: center;
    text-decoration: none;
}
#lclr a.sp_lp {
    background-color: #1ec307;
    border-radius: 3px;
    color: #fff;
    display: block;
    font-weight: bold;
    padding: 2%;
    text-align: center;
    text-decoration: none;
}
#lclr a:visited {
    text-decoration: underline;
    color: #00F;
}
#contents .yosanlp {
    background-color: #1ec307;
    border-radius: 3px;
    color: #fff;
    display: block;
    font-weight: bold;
    padding: 2%;
    text-align: center;
    text-decoration: none;
}
.yosanlp:visited {
	color: #fff;
}
.page_change table {
	display: inline-block;
}
.page_change #prev {
	width: 40%;
    float: left;
}
.page_change #next {
	width: 40%;
    float: right;
}


/* =人気記事一覧
----------------------------------------------- */
.popularity h2 {
	display: block;
	border-left: 6px solid #f94aad;
    color: #000000;
    font-size: 1.6em;
    font-weight: bold;
    padding: 0.3em 0.4em;
    background: url(/img/bg.png) repeat;
    color: #ffffff;
    text-shadow: 1px 1px 1px #482237;
}
.popularity div {
	display: block;
}
.kanren_list {
	float: left;
	list-style-type: none;
	margin: 10px 12px;
	width: 130px;
	height: 220px;
}
.kanren_list a {
	color: #0099ff;
}
.kanren_list img {
	width: 130px;
}
.kanren_font {
	font-size: 14px;
	color: #0099ff;
}
.right_mokuji {
	display: block;
	text-align: right;
	margin: 10px 0;
	clear: both;
}
#nav li {
	list-style: none;
	margin: 0;
	padding: 0;
}
#sp_icon {
    display: none;
}
#sp_icon img {
	margin: 0;
}
#nav li:hover > ul {
	display: block;
}
#footernav > ul {
	display: flex;
}

#topicpath li:not(:last-child):after {
	content: ">";
	display: inline-block;
	padding-left: 1em;
}
@media only screen and (max-width: 640px){
	#sidebar {
		float: none;
		width: 100%;
	}
	#header,#main {
		float: none;
		width: 100%;
	}
	img {
		max-width: 100%;
		height: auto;
	}
	#footernav > ul {
		border: none;
		text-align: center;
		justify-content: center;
		padding-top: 0;
	}
	.popularity h2 {
		display: block;
		border-left: 6px solid #f94aad;
	    color: #000000;
	    font-size: 1.6em;
	    font-weight: bold;
	    padding: 0.3em 0.4em;
	    background: url(/img/bg.png) repeat;
	    color: #ffffff;
	    text-shadow: 1px 1px 1px #482237;
	}
	.popularity div {
		display: block;
	}
	.kanren_list {
		float: left;
	    list-style-type: none;
	    margin: 0 10px 0 24px;
	    width: 120px;
	    height: 240px;
	}
	.kanren_list a {
		color: #0099ff;
	}
	.kanren_list img {
		width: 130px;
	}
	.kanren_font {
		font-size: 14px;
		color: #0099ff;
	}
	.right_mokuji {
		display: block;
		text-align: right;
		margin: 10px 0;
		clear: both;
	}

	.nav_t {
		width: 100%;
	}
	#sidebar #logo {
		display: none;
	}
	#nav {
		border: none;
	}
	#nav > ul > li {
		height: 0;
		overflow: hidden;
		transition: height 0.5s ease;
	}
	.on #nav > ul > li.nav_t {
		height: 44px;
		position: relative;
	}
	
	.on #nav > ul > li.nav_t:after {
		content: "";
		border-right: 2px solid #fff;
		border-bottom: 2px solid #fff;
		display: inline-block;
		width: 0.5em;
		height: 0.5em;
		position: absolute;
		top: 50%;
		right: 1em;
		transform: translate(0,-70%) rotate(45deg);
		transition:transform 0.5s ease;
	}
	.on #nav > ul.on > li.nav_t:after {
		transform: translate(0,-30%) rotate(-135deg);
	}
	.on #nav > ul.on > li {
		height: 44px;
	}
	#sidebar {
		position: absolute;
		top: 50px;
		left: 0;
		width: 100%;
		max-height: 100%;
	}
	#sidebar_in {
		width: 100%;
		max-height: 100%;
		overflow: auto;
		background: #fee0f2;
	}
	
	#contents {
		margin-top: 0;
	}
	#header {
		background: -moz-linear-gradient(top, #f650ad, #bf2b7d);
		background: -webkit-linear-gradient(top, #f650ad, #bf2b7d);
		background: -webkit-gradient( linear, left top, left bottom, from(#f650ad), to(#bf2b7d) );
		background: linear-gradient(top, #f650ad, #bf2b7d);
	}
	h1 {
		color: #fff;
		font-size: 15px;
		padding: 10px 0 10px 10px;
	}
	#sp_icon {
		display: block;
		position: absolute;
		top: 18px;
		right: 10px;
	}
	#footernav > ul li {display:none;}
	#footernav > ul li.sp_fnav {display:inline-block;}
	#nav li:hover ul {
	    display: none;
	}
}