@charset "utf-8";

/**** レスポンシブ *****************************************************/

@media (max-width: 568px) {

	/*** HTML再定義 ***/
	body {
		font-size: 13px;
		font-family: "Kosugi Maru", sans-serif;
		word-break: break-all;
		-webkit-text-size-adjust: 100%;
	}
	h2 {
		font-size: 130% !important;
	}
	form input, textarea, form input[type="checkbox"] {
		vertical-align: middle;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-appearance: none;
	}
	form select {
		vertical-align: middle;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
	}
	form input[type="checkbox"] {
		position: relative;
		width: 24px;
		height: 24px;
		padding: 0;
		border-radius: 3px;
		border: 1px solid #DDD;
	}
	form input[type="checkbox"]:checked {
		border: 1px solid #CCC;
		background-color: #EEE;
		box-shadow: inset 0 2px 3px #DDD;
	}
	input[type="checkbox"]:checked:before {
		display: block;
		position: absolute;
		top: 15px;
		left: 1px;
		content: "";
		width: 8px;
		height: 3px;
		background-color: #004D25;
		-webkit-transform: rotate(45deg);
		-webkit-transform-origin: right center;
	}
	input[type="checkbox"]:checked:after {
		display: block;
		position: absolute;
		top: 15px;
		left: 7px;
		content: "";
		width: 16px;
		height: 3px;
		background-color: #004D25;
		-webkit-transform: rotate(-45deg);
		-webkit-transform-origin: left center;
	}
	input[type="submit"] {
		padding: 6px 18px;
	}
	form textarea {
		width: 95%;
	}
	img {
		max-width : 100%;
		height: auto;
	}
	div {
		box-sizing: border-box;
		-moz-box-sizing: border-box;
	}

	/*** 共通設定 ***/
	ul.complete li {
		background: url(../images/theme/icons/2x/complete.png) no-repeat left;
		background-size: 16px;
	}
	ul.attention li {
		background: url(../images/theme/icons/2x/attention.png) no-repeat left center;
		background-size: 16px;
	}

	/*** 主要部分 ***/
	div#container {
		width: 100%;
		padding: 0;
	}
	div#content, div#single, div#information {
		overflow: hidden;
		float: none;
		width: 94%;
		margin: 20px auto 0;
	}

	/*** ヘッダー ***/
	div#header {
		line-height: 1.0;
		width: 100%;
		margin-bottom: 10px;
		padding: 0 7px 0 15px;
		border-bottom: 1px solid #CCC;
		background-color: #DDD;
	}
	div#header h1 {
		float: left;
		width: 75%;
		margin: 14px 0 12px;
		font-size: 17px;
		text-shadow: 0 -1px 0 #000;
		font-family: "Pacifico","AvenirNext-DemiBold", Arial;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
	}
	div#header h1 a:link, div#header h1 a:visited {
		color: #555;
		text-shadow: 0 1px 0 #EEE;
	}
	div#header h1 a:active, div#header h1 a:hover {
		color: #000;
	}

	/*** フッター ***/
	div#footer {
		line-height: 1.4;
		width: 94%;
		margin: 20px auto 0;
		font-size: 11px;
	}

	/*** メニュー ***/
	div#menu {
		float: right;
		width: 25%;
		margin: 11px 0 0;
		font-size: 10px;
	}
	div#menu ul {
		margin: 0;
	}
	div#menu ul li {
		opacity: .3;
		width: 28px;
		height: 24px;
	}
	div#menu ul li:first-child {
		display: none;
	}
	div#menu ul li:nth-child(2) {
		overflow: hidden;
		white-space: nowrap;
		text-indent: 100%;
		background: url(../images/theme/icons/2x/gallery.png) no-repeat 3px 0;
		background-size: 22px;
	}
	div#menu ul li:nth-child(3) {
		overflow: hidden;
		white-space: nowrap;
		text-indent: 100%;
		background: url(../images/theme/icons/2x/login.png) no-repeat 3px 0;
		background-size: 22px;
	}
	div#menu a:link, div#menu a:visited {
		padding: 5px 0;
		color: #808080;
		text-shadow: 0 -1px 0 #000;
		border-radius: 0;
		border-top: none;
	}
	div#menu ul li.current a:link, div#menu ul li.current a:visited {
		border-radius: 0;
		border-top: none;
		background: none;
	}
	div#menu ul li.current, div#menu ul li.current {
		opacity: .5;
	}

	/*** エントリー ***/
	div#entry div.entry {
		margin: 0 0 20px;
		padding: 0;
		box-shadow: 0 1px 2px #CCC;
	}
	div#entry div.entry h3 {
		font-size: 120%;
	}
	div#entry div.entry h4 {
		font-size: 110%;
	}
	div#entry div.entry h4, div#entry div.entry h5, div#entry div.entry h6 {
		font-size: 100%;
	}
	div#entry div.entry {
		width: 100%;
	}
	div#entry div.entry div.entry_image, div#entry div.entry div.entry_image_full {
		width: 100%;
		height: auto;
	}
	div#entry div.entry div.entry_image p img, div#entry div.entry div.entry_image_full p img {
		min-width: 1px;
		max-width: 100%;
		height: auto;
	}
	div#entry div.entry ul.information {
		padding: 5px 15px 10px;
		border-top: 1px solid #EEE;
		border-bottom: 1px solid #EEE;
	}
	div#entry div.entry ul.information li {
		display: block;
		padding: 0;
		border-left: none;
		text-align: left;
	}
	div#entry div.entry ul.information li.category,
	div#entry div.entry ul.information li.tag {
		padding-left: 20px;
		background-position: left center !important;
	}

	/*** 共有ボタン ***/
	div#entry div.entry ul.information li.share {
		text-indent: -9999px;
	}
	div#entry div.entry ul.information li.share div.buttons {
		visibility: visible;
		overflow: hidden;
		opacity: 1.0;
		position: relative;
		width: 100%;
		margin: -15px 0 0;
		padding: 1px 0 0;
		text-indent: 0;
		text-align: center;
		border: 1px solid #EEE;
		background-image: none;
		background-color: #FFF;
		box-shadow: none;
	}
	div#entry div.entry ul.information li.share:hover div.buttons {
		margin: -15px 0 0;
		transition: none;
	}
	div#entry div.entry ul.information li.share div.buttons ul {
		overflow: hidden;
		width: 100%;
		margin: 0;
		padding: 0;
		border-radius: 0;
		border: none;
		background: none;
		box-shadow: none;
	}
	div#entry div.entry ul.information li.share div.buttons ul li {
		overflow: hidden;
		position: relative;
		float: left;
		width: auto;
		border-bottom: none;
	}
	div#entry div.entry ul.information li.share div.buttons ul li:first-child {
		padding: 6px 5px 0 !important;
	}
	div#entry div.entry ul.information li.share div.buttons ul li:last-child {
		margin-top: 7px !important;
		padding: 0 5px 0 !important;
	}

	div#entry div.entry ul.information li.category {
		background: url(../images/theme/icons/2x/category.png) no-repeat;
		background-size: 16px;
	}
	div#entry div.entry ul.information li.tag {
		background: url(../images/theme/icons/2x/tag.png) no-repeat;
		background-size: 16px;
	}

	/*** エントリータイトル ***/
	div#entry div.entry h3 {
		padding: 20px 15px 0;
	}

	/*** エントリー本文 ***/
	div#entry div.entry div.content {
		margin: 0 15px;
	}

	div#entry div.entry ul.link  {
		margin-top: 10px;
		font-size: 12px;
	}
	div#entry div.entry ul.link a:link, div#entry div.entry ul.link a:visited {
		padding-left: 18px;
	}
	div#entry div.entry ul.link li.comment {
		background: url(../images/theme/icons/2x/comment.png) no-repeat left;
		background-size: 14px;
	}
	div#entry div.entry ul.link li.trackback {
		background: url(../images/theme/icons/2x/trackback.png) no-repeat left;
		background-size: 14px;
	}

	div#entry div.entry input[type="password"], div#entry div.entry input[type="text"] {
		width: 100%;
	}
	div#entry_relates h2 {
		font-size: 100% !important;
	}

	/*** 関連エントリー表示プラグイン ***/
	div#entry_relates {
		margin-top: -20px;
		padding: 15px;
	}

	/*** エントリーページ移動 ***/
	div#page {
		margin: 0 0 20px;
		text-align: left;
	}
	div#page ul li {
		margin: 0 0 5px;
		display: inline-block;
	}
	div#page ul li.current {
		padding: 4px 8px;
		color: #333;
		text-decoration: none;
		border-radius: 3px;
		background-color: #FFF;
		box-shadow: 0 1px 2px #DDD;
	}
	div#page a:link, div#page a:visited {
		display: block;
		padding: 4px 8px;
		color: #AAA;
		text-decoration: none;
		border-radius: 3px;
		background-color: #FFF;
	}
	div#page a:hover {
		color: #333;
		text-decoration: none;
		background-color: #FFF;
		box-shadow: 0 1px 2px #DDD;
	}

	/*** コメント・トラックバック ***/
	div#comment,
	div#comment_form,
	div#trackback,
	div#trackback_url {
		padding: 15px 15px 10px 15px;
	}
	div#comment h2,
	div#comment_form h2,
	div#trackback h2,
	div#trackback_url h2 {
		margin: 0 0 15px;
		font-size: 14px !important;
	}
	div#trackback_url h2 {
		margin-bottom: 5px;
		border-bottom: 1px dotted #DDD;
	}

	/*** コメント ***/
	div#comment {
		margin-bottom: 10px;
	}
	div#comment div.comment {
		overflow: hidden;
		padding-bottom: 10px;
		margin-bottom: 20px;
		border-bottom: 1px dotted #DDD;
	}
	div#comment div.comment div.user {
		display: none;
	}
	div#comment div.comment div.message {
		clear: both;
		float: none;
		width: 100%;
	}
	div#comment ul.empty {
		margin-top: -5px;
		margin-left: 0;
		color: #AAA;
	}

	div#comment_form {
		margin: 0 0 40px;
	}
	div#comment_form form input[type="text"] {
		width: 50%;
		height: 24px;
	}
	div#comment_form form textarea {
		width: 100%;
	}
	div#comment_form form select {
		width: 70%;
		height: 26px;
		margin-bottom: 5px;
		padding: 0 5px;
		color: #777;
		font-size: 12px;
		vertical-align: middle;
	}
	div#comment_form form label {
		vertical-align: middle;
	}
	div#comment_form form input#label_session {
		width: 24px;
		height: 24px;
		margin: 0 5px 0 0;
		border: 1px solid #DDD;
	}

	/*** トラックバック ***/
	div#trackback,
	div#trackback_url {
		margin-bottom: 10px;
	}
	div#trackback ul.empty {
		margin-top: -3px;
	}

	/*** ユーティリティー ***/
	div#utility {
		overflow: hidden;
		float: none;
		width: 95%;
		margin: 0 auto 20px;
		padding: 0 0 10px;
		font-size: 14px;
		border-radius: 3px;
		background-color: #FFF;
		box-shadow: 0 1px 2px #DDD;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
	}
	div#utility div.utility {
		display: block;
		margin: 0;
		padding-bottom: 0;
		border-radius: 0;
		background-color: #FFF;
	}
	div#utility div.utility h3 {
		margin: 0 15px;
		padding: 0;
		font-size: 100%;
	}
	div#utility div.utility a:link, div#utility div.utility a:visited {
		padding: 10px;
	}
	div#utility div.utility dl dd {
		padding: 0 10px;
		font-size: 12px;
	}
	div#utility div.utility ul.tagcloud {
		padding: 5px 10px;
		border-bottom: 1px solid #EEE;
	}

	/*** アコーディオンメニュー ***/
	div#utility div.utility h3 a:link, div#utility div.utility h3 a:visited {
		position: relative;
		display: block;
		margin: 0;
		padding: 8px 10px;
		color: #808080;
	}
	div#utility div.utility h3 a:active, div#utility div.utility h3 a:hover {
		color: #555;
		background-color: #EEE;
	}
	div#utility div h3 + div.content {
		height: 0;
		overflow: hidden;
	}
	div#utility h3 a:after {
		position: absolute;
		content: '';
		top: 50%;
		right: 10px;
		margin-top: -2px;
		border-top: 5px solid #808080;
		border-left: 5px solid transparent;
		border-right: 5px solid transparent;
	}
	div#utility :target h3 a:after {
		position: absolute;
		content: '';
		top: 50%;
		right: 10px;
		margin-top: -8px;
		border-top: 5px solid transparent;
		border-bottom: 5px solid #555555;
		border-left: 5px solid transparent;
		border-right: 5px solid transparent;
	}
	div#utility :target h3 {
		color: #555;
		background-color: #EEE;
	}
	div#utility :target h3 + div.content {
		height: auto;
		max-height: 1000px;
		transition: 0.3s ease-in;
		-webkit-transition: 0.3s ease-in;
	}

	/** 第2階層 **/
	div#utility div.utility ul li:hover ul {
		display: block;
	}
	div#utility div.utility ul li ul {
		display: block;
		position: relative;
		width: 100%;
		margin: 0;
		padding: 0;
		border-radius: 0;
		border: none;
	}
	div#utility div.utility ul li ul li:first-child {
		border-top: none;
	}
	div#utility div.utility ul li ul li a:link, div#utility div.utility ul li ul li a:visited {
		font-size: 12px;
		border-bottom: 1px solid #EEE;
	}
	div#utility div.utility ul li ul li ul li a:link, div#utility div.utility ul li ul li ul li a:visited {
		border-bottom: 1px solid #EEE;
	}

	/*** 検索 ***/
	div#search {
		margin-bottom: 0;
		text-align: center;
	}
	div#search form input#search_box {
		width: 85%;
		height: 25px;
		padding-left: 5px;
		border: 1px solid #EEE;
		background: none;
		transition: none;
		box-shadow: none;
	}
	div#search form input#search_box:focus {
		border: 1px solid #EEE;
		background: none;
	}
	div#search form input#search_button {
		display: inline;
		width: 20px;
		height: 25px;
		padding: 3px;
		text-indent: -9999px;
		border: none;
		background: url(../images/theme/icons/2x/search.png) no-repeat;
		background-position: 99% 2px;
		background-size: 20px;
		box-shadow: none;
	}

	/*** カレンダー ***/
	div#utility div#calendar {
		margin-bottom: 0;
	}
	div#utility div#calendar ul li.prev {
		width: 8%;
	}
	div#utility div#calendar ul li.month {
		width: 80%;
	}
	div#utility div#calendar ul li.next {
		width: 8%;
	}
	div#utility div#calendar table {
		margin-top: 5px;
	}
	div#utility div#calendar table th {
		padding: 0;
	}
	div#utility div#calendar table tr td {
		font-family: Avenir;
	}

	/*** ギャラリー ***/
	div#utility div.utility ul.gallery {
		margin: 5px 0 0 1px;
		padding: 5px 0;
		border-bottom: 1px solid #EEE;
	}
	div#utility div.utility ul.gallery li {
		display: inline;
		margin-right: 1px;
		list-style: none;
	}
	div#utility div.utility ul.gallery li:nth-child(2n) {
		margin-left: 0;
		margin-right: 1px;
	}
	div#utility div.utility ul.gallery li img {
		max-width: 31%;
		max-height: 140px;
		margin-bottom: 2px;
		border: 1px solid #DDD;
	}
	div#utility div.utility ul.gallery li a:link, div#utility div.utility ul.gallery li a:visited {
		display: inline;
		padding: 0;
	}

	/*** ギャラリー ***/
	div#gallery h2 {
		display: none;
	}

	div#gallery ul.gallery {
		overflow: hidden;
	}
	div#gallery ul.gallery li {
		width: 32%;
		margin-right: 3px;
		margin-bottom: 3px;
		padding: 1px;
		border-radius: 0;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
	}
	div#gallery ul.gallery li:nth-child(3n) {
		margin-right: 0;
	}
	div#gallery ul.gallery li:nth-child(4n) {
		margin-right: 3px;
	}
	div#gallery ul.gallery li div.picture {
		min-width: 100%;
		height: 66px;
	}
	div#gallery ul.gallery li div.picture img {
		max-width: 100%;
		max-height: 66px;
	}

	div#gallery ul.gallery div.picture a span.empty {
		overflow: hidden;
		line-height: 60px;
		width: 100%;
		height: 66px;
		padding: 3px;
		font-size: 30px;
		font-family: Verdana;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
	}
	div#gallery ul.gallery p.comment {
		display: none;
	}

	div#gallery ul {
		margin: 10px 0 20px 0;
	}
	div#gallery ul li {
		display: inline;
	}
	div#gallery ul li img {
		margin: 0 2px 10px 0;
	}

	/*** ページ検索 ***/
	div#page_search {
		position: relative;
		margin: 0;
	}
	div#page_search input[type="text"] {
		width: 74%;
		height: 32px;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-shadow: none;
	}
	div#page_search input[type="submit"] {
		width: 24%;
		border-radius: 2px;
	}

	/*** ページ ***/
	div#main {
		width: 100%;
		margin: 0 0 20px;
	}
	div#page_image {
		width: 96%;
		margin: 0 auto;
		padding: 0;
	}
	div#page_image p img {
		max-width: 100%;
		height: auto;
	}
	div#page_file {
		width: 96%;
		margin: 0 auto;
	}

	/*** 検索結果 ***/
	p.search_results {
		background: url(../images/theme/icons/2x/search.png) no-repeat left center;
		background-size: 16px;
	}
	p.search_results_user {
		background: url(../images/theme/icons/2x/search.png) no-repeat left center;
		background-size: 16px;
	}
	p.search_results_tag {
		background: url(../images/theme/icons/2x/tag.png) no-repeat left center;
		background-size: 16px;
	}
	p.search_results_category {
		background: url(../images/theme/icons/2x/category.png) no-repeat left center;
		background-size: 16px;
	}
	p.search_results_date {
		background: url(../images/theme/icons/2x/date.png) no-repeat left center;
		background-size: 16px;
	}
	div#entry p.search_results {
		background: #FFF url(../images/theme/icons/2x/search.png) no-repeat 15px center;
		background-size: 16px;
	}
	div#entry p.search_results_user {
		background: #FFF url(../images/theme/icons/2x/user.png) no-repeat 15px center;
		background-size: 16px;
	}
	div#entry p.search_results_tag {
		background: #FFF url(../images/theme/icons/2x/tag.png) no-repeat 15px center;
		background-size: 16px;
	}
	div#entry p.search_results_category {
		background: #FFF url(../images/theme/icons/2x/category.png) no-repeat 15px center;
		background-size: 16px;
	}
	div#entry p.search_results_date {
		background: #FFF url(../images/theme/icons/2x/search.png) no-repeat 15px center;
		background-size: 16px;
	}

	/*** ページ移動 ***/
	div#pages {
		margin-top: 10px;
		padding-top: 20px;
	}

	/*** ログイン ***/
	div#login {
		width: 100%;
	}
	p#login_form input#userid {
		width: 100%;
		background: #FFF url(../images/theme/icons/2x/user.png) no-repeat 5px center;
		background-size: 16px;
	}
	p#login_form input#password {
		width: 100%;
		background: #FFF url(../images/theme/icons/2x/key.png) no-repeat 5px center;
		background-size: 16px;
	}
	p#login_form label {
		font-size: 12px;
	}

	/*** パスワード再発行 ***/
	p#reissue {
		width: 100%;
		height: 30px;
		margin: 0;
		padding: 0;
		text-align: left;
	}
	p#reissue input[type="text"] {
		width: 80%;
		height: 30px;
		background: url(../images/theme/icons/2x/mail.png) no-repeat 5px;
		background-size: 16px;
	}
	p#reissue input[type="submit"] {
		overflow: hidden;
		float: right;
		width: 20%;
		height: 30px;
		padding: 4px 5px;
		color: #333;
		font-size: 12px;
		text-indent: 0;
		text-align: center;
		text-shadow: none;
		border-radius: 0;
		background-image: none;
		background-color: #EEE;
	}
	p#reissue input[type="submit"]:hover, p#reissue input[type="submit"]:focus {
		background-image: none;
		background-color: #DDD;
	}
	p#reissue input[type="text"]:focus + input[type="submit"] {
		background: none;
		background-color: #EEE;
	}

	/*** ユーザー登録 ***/
	dl#regist {
		overflow: hidden;
		width: 100%;
		margin: 0;
	}
	dl#regist dt {
		float: none;
		width: 100%;
		padding: 0;
		color: #808080;
		font-weight: bold;
	}
	dl#regist dd {
		float: none;
		width: 100%;
		margin: 0 0 10px;
		padding: 0;
		border-left: none;
	}
	dl#regist dd input, dl#regist dd textarea {
		width: 100%;
	}
	p#regist_buttons {
		margin-left: 0;
	}

	/*** プロフィール ***/
	div#content div#main h2#profile_title {
		font-size: 90% !important;
	}
	div#content div#main h3#profile_id {
		margin-top: -20px;
		margin-bottom: 20px;
		color: #A70D1F;
		font-size: 120% !important;
	}
	div#content div#main h3 span.id {
		font-size: 90% !important;
	}

	dl#profile {
		width: 100%;
	}
	dl#profile dt {
		float: none;
		width: 100%;
		padding: 15px 0 0;
	}
	dl#profile dd {
		width: 100%;
		padding: 0 0 15px;
	}

	/*** プレビュー ***/
	dl#preview {
		overflow: hidden;
		width: 100%;
		margin: 0;
		padding-top: 10px;
		border-top: 1px solid #DDD;
		border-bottom: none;
	}
	dl#preview dt {
		float: none;
		width: 100%;
		margin: 0;
		padding: 0;
		text-align: left;
		border: none;
	}
	dl#preview dd {
		float: none;
		width: 100%;
		margin: 0 0 10px;
		padding: 0 0 8px;
		font-size: 15px;
		border-top: none;
		border-bottom: 1px solid #DDD;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
	}
	div#action {
		float: none;
	}

}
