html, body {
	height: 100%;
}
html {
	font-size: 10px;
	position: relative;
}
body {
	font-family: "Meiryo","メイリオ","ヒラギノ角ゴ Pro w3","Hiragino Kaku Gothic Pro","osaka","ＭＳ Ｐゴシック",sans-serif;
}
.container-fluid, .navbar, footer div {
	max-width: 1200px;
}
.container-fluid {
	margin: 0 auto;
}
.panel form {
	margin: 10px;
}
.modal .alert {
/*	display: none;	*/
	color: #fff;
}
.modal-header {
	font-weight: bold;
}
.modal-header:empty {
	display: none;
}
.modal-content, .modal-content select, .modal-content input {
	font-size: 1.6rem;
}
.nav-tabs {
	border-bottom: none;
}
.dropdown-header {
	font-size: 1.6rem;
	font-weight: bold;
	color: #000;
}
.nav-item.dropdown a {
	display: block;
	padding: .5rem 1rem;
}
.nav-link, .btn-group.btn-group-justified > .btn {
	white-space: nowrap;
}
.btn-group.btn-group-justified > .btn {
	padding-right: 0;
	padding-left: 0;
}
a {
	text-decoration: none;
}
#main .alert {
	font-size: 1.4rem;
}
.row > div {
	display: inline-block;
}
.row > label {
	font-weight: bold;
	text-align: right;
}
.row > * {
	padding-left: 0;
	padding-right: 0;
}
#entryList img, #ranking img {
	display: inline-block;
	width: 100%;
}
#recent ul li a {
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	display: block;
}
.resheader .resnumber, .resbody .reslink {
	-webkit-user-select:none;
	user-select: none;
	-webkit-touch-callout: none;
}

/*	カラム構成	*/
body {
	background: linear-gradient(to bottom, #edece8 1%, #fff 50%, #edece8 100%);
	background-attachment: fixed;
	background-size: cover;
}
div, header, footer, nav, main, aside, form, input, select, article, ul, li, textarea, img {
	box-sizing: border-box;
}
header, nav, #content, #catalog, #popup, .form-control, .btn, .form-select, input, .dropdown-menu {
	font-size: 1.4rem;
}
ul, ol, li {
	list-style-type: none;
}
ul, ol, p {
	margin: 0;
	padding: 0;
}
#main, #side, #popup {
	display: inline-block;
	padding: 0 10px;
	vertical-align: top;
}
#wrapper {
	min-height: calc(100% - 100px);
	padding: 1em 0;
	background: rgba(255,255,255,0.8);
	border-top: 1px solid #ddd;
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
}
#catalog {
	padding: 0 1em;
}
#catalog > *:not(.alert) {
	padding: 0 0.5em;
}
#catalog #mainThread, #catalog #reslist, #catalog #tabs {
	padding: 0;
}
#catalog .alert {
	font-size: 1.6rem;
}
#catalog .tab-content > .active {
	display: flex;
}
#google_translate_element {
	min-height: 25px;
	margin: 0 1em 1em;
	text-align: right;
}

/*	Bootstrapカスタマイズ	*/
.badge {
	border-radius: 5px;
	font-size: 1.3rem;
	background: #444;
}
.list-group-item > .badge {
	float: right;
}

/*	フォント設定	*/
[class^=vote] > *:before, .vote.good:before, .vote.bad:before, #threadCount:before, .threadCount:before, .threadRank:before, #search:before, .pagination > li.angle a:after, p > i[class]:before, a.readmore:before, #fixbtn i:before, .resheader .resnumber:before, #resList .ngid[name^="ng-remove"]:before, .reply:before, .shareBtns a:before, .youtube .title:before, .niconico .title:before, .imginfo:before, #waitThreads:before, #waitThread li .preview:before, aside .head[data-bs-toggle='collapse']:after, #mainThread .tempThread:before, #waitThread .tempThread:after, #catalog .card-footer:before, .nav-item i:before {
	font-family: bootstrap-icons;
}
#threadCount:before, .threadCount:before, .threadRank:before, p > i[class]:before, a.readmore:before, .reply:before, #waitThread li .preview:before, #catalog .card-footer:before, .resheader .vote:before, .nav-item i:before {
	display: inline-block;
	vertical-align: middle;
	margin: 0 0.3em 0 0;
}
.threadRank.rank1 {
	color: #e0b20c;
}
.threadRank.rank2 {
	color: #c2cada;
}
.threadRank.rank3 {
	color: #ce774e;
}
.pagination > li.angle a:after {
	line-height: 1em;
}
/*	スレッド・レス設定	*/
#threadHeader {
	position: relative;
	padding: 5px 5px 5px 110px;
	min-height: 125px;
	border-bottom: 1px solid #ddd;
	margin-bottom: 1em;
	color: #104cd0;
}
#threadTitle {
	margin: 0 0 0.5em;
	font-size: 2rem;
}
#catalog.board #threadTitle {
	font-weight: bold;
	line-height: 1.4;
	margin: 0 0 0.5em 0.5em;
}
#threadImage, .threadImage {
	background-size: cover;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	overflow: hidden;
}
#mainThread .threadImage {
	position: relative;
	display: inline-block;
	width: 60px;
	height: 60px;
	vertical-align: top;
}
/*	ひし形クリッピング	*/
.top #mainThread .threadImage {
	width: 50px;
	height: 50px;
	margin: 10px auto 10px 10px;
	padding: 0;
	transform: rotate(45deg);
	box-shadow: 0 0 3px #aaa;
	overflow: hidden;
}
.top #mainThread .threadImage > * {
	width: 70px;
	transform: rotate(-45deg);
}
.top #mainThread .threadImage img {
	height: 70px;
	margin: -10px 0 0 -10px;
}
.top #mainThread .row:hover div[class^="thread"], .top #mainThread .row:hover div[class^="thread"] > * {
	margin: 0 -5px 0 0;
	width: 70px;
	height: 70px;
	transform: rotate(0deg);
	transition: 0.1s all linear;
}
.top #mainThread .row:hover .threadImage {
	box-shadow: none;
}
/*
#mainThread .tempThread:before {
	content: "\f597";
	position: absolute;
	top: 1px;
	left: 1px;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1;
	color: #0541a2;
	z-index: 1;
	text-shadow: 0 0 1px #fff,0 0 1px #fff;
}
#mainThread .tempThread.beforeClose:before {
	color: #f00;
	-webkit-animation: blink 1s infinite;
	animation: blink 1s infinite;
}
@keyframes blink {
	0% {opacity: 0;}
	100% {opacity: 1;}
}
*/
#threadImage {
	position: absolute;
	top: 0;
	left: 0;
	width: 100px;
	height: 100px;
	background-color: #fff;
	box-shadow: 0 0 1px #ddd;
	border-radius: 10px;
}
#threadCount, .threadCount, .threadRank {
	position: absolute;
	bottom: 0;
	left: 0;
	min-width: 100%;
	margin: 0;
	font-size: 1.3rem;
	background: rgba(0,0,0,0.5);
	color: #fff;
	text-align: center;
}
.catalog .threadCount, .catalog .threadRank {
	left: auto;
	right: 0;
	min-width: auto;
	padding: 0.2em 0.3em;
}
.catalog .nav-item i[class] {
	font-size: 2rem;
}
#catalog #recommends {
	margin-bottom: 10px;
	padding: 0;
}
#catalog #recommends a {
	position: relative;
}
#catalog #recommends .threadImage {
	position: relative;
	height: 40px;
	vertical-align: top;
}
#catalog #recommends .threadCount {
	left: auto;
	right: 0;
	line-height: 15px;
	height: 15px;
	padding: 0;
	width: 100%;
}
#catalog #recommends .threadImage, #catalog .row .title {
	display: inline-block;
}
#catalog .card, #catalog #recommends .title {
	color: #444;
	border-top: none;
	border-left: none;
}
#catalog .card-body, #catalog #recommends .title {
	font-size: 1.2rem;
	line-height: 1.1;
	padding: 0.3em 0.3em 0;
	word-break: break-all;
	overflow: hidden;
}
#catalog .card:visited {
	background: #def;
}
#catalog .card:hover {
	background: #eee;
}
.top #mainThread .threadCount, .top #mainThread .threadRank, #catalog .card img {
	min-width: 70px;
	width: 70px;
}
#threadCount:before, .threadCount:before {
	content: "\f24e";
}
#catalog .threadCount:before {
	font-size: 1rem;
}
.threadRank:before {
	content: "\f5e6";
}
#resList .list-group-item {
	border: none;
	background: transparent;
	padding: 0 1% 3em;
}
#resList > *:not(.list-group-item) {
	margin-bottom: 3em;
}
.resbody > .reslink {
	margin-left: 0.5em;
}
#resList li > .voteBtns, #popup .voteBtns {
	margin: 2em 0 0;
}
.resheader:first-child {
	margin-top: 0;
}
#mainThread > .infotext {
	margin: 0 auto -1em;
}
#side .infotext {
	font-size: 1.2rem;
	max-height: 250px;
	overflow: auto;
}
#mainThread > p, #catalog > p, .resheader, #resform > p, #taghead {
	margin: 0 0 0.5em;
	padding: 0.5em;
	font-weight: bold;
	border-bottom: 1px solid #104cd0;
	color: #104cd0;
}
#catalog .row.rank {
	margin-left: 0;
	margin-right: 0;
}
#catalog #popular > a {
	position: relative;
	max-height: 60px;
	overflow: hidden;
}
#catalog #popular > a .title {
	font-size: 1.3rem;
	line-height: 1.1;
	position: absolute;
	left: 0;
	top: 0;
	display: inline-block;
	padding: 2px 0 0 65px;
	width: 100%;
}
#catalog #popular .badge {
	padding: 0.15em 0.3em;
}
#side #mainThraed > p, #side #waitThreads {
	border-bottom: 1px solid #0541a2;
	color: #0541a2;
}
#catalog > p, #mainThread > p, #resform > p {
	font-size: 1.8rem;
	line-height: 1;
}
#mainThread > p:first-child {
	margin-top: 0;
}
#mainThread span.title , #sideThread span.title {
	word-break: break-all;
}
#content #mainThread .row:hover span.title {
	color: #fff;
}
p > i[class], a > i[class] {
	font-style: normal;
	font-weight: normal;
	font-size: 2.5rem;
}
i.picture:before {
	content: "\e060";
}
i.recent:before {
	content: "\f116";
}
i.new:before {
	content: "\f293";
}
i.popular:before {
	content: "\f17a";
}
i.kaso:before {
	content: "\f60a";
}
i.shuffle:before {
	content: "\f544";
}
i.related:before {
	content: "\f5b1";
}
i.point:before {
	content: "\f476";
}
i.flag:before {
	content: "\f3cb";
}
i.pencil:before {
	content: "\f4c9";
}
i.category:before {
	content: "\f3d1";
}
i.jump:before {
	content: "\f4d7";
}
i.info:before {
	content: "\e086";
}
i.tag:before {
	content: "\f5b1";
}
i.votes:before {
	content: "\f271";
}
#taghead > i {
	font-size: 1.5rem;
}
#tagcloud {
	word-wrap: break-word;
}
#tagcloud a {
	font-size: 1.2rem;
	display: inline-block;
	margin: 0 5px 5px 0;
	padding: 2px 3px;
	background: #0541a2;
	color: #fff;
	opacity: 0.5;
}
#tagcloud a:hover {
	opacity: 1;
}
#main a.readmore {
	display: block;
	margin: 1em 0;
	line-height: 3em;
	background: #104cd0;
	color: #fff;
	text-align: center;
}
#main a.readmore:hover {
	background: #0541a2;
}
a.readmore {
	vertical-align: top;
}
a.readmore.update:before {
	content: "\f267";
}
a.readmore.archive:before {
	content: "\f442";
}
a.readmore.ranking:before {
	content: "\f3f2";
}
a.readmore.kakolog:before {
	content: "\f597";
}
.resheader > span {
	margin-right: 0.7em;
}
.resheader > .badge {
	margin-top: 0.3em;
	padding: 3px;
	vertical-align: bottom;
	border-radius: 0;
	background: #0541a2;
	opacity: 0.5;
}
.resheader > .badge:hover {
	color: #fff;
	background: #104cd0;
	opacity: 1;
}
#resList li:first-child .delete {
	opacity: 1;
}
.resheader .delete {
	margin-right: 1.5em;
	background: #f33;
}
.resheader > .delete:hover {
	background: #f33;
}
.resheader .resnumber {
	font-size: 1.2rem;
	background: #fff;
	min-width: 30px;
	display: inline-block;
	padding: 0 0.3em;
	text-align: center;
	border: 1px solid #ccc;
	cursor: pointer;
}
.resheader .resnumber:before {
	display: inline-block;
	content: "\f280";
	vertical-align: bottom;
}
.resheader .resnumber:hover:before {
	color: #f80;
}
.resheader img.resflag {
	margin-right: 0.3em;
	vertical-align: middle;
}
.resheader .admin {
	color: #f00;
}
.resbody {
	word-break: break-word;
}
.resbody.disabled p {
	font-weight: normal;
	font-size: 1.6rem;
	color: #aaa;
}
.resbody a.thumb {
	display: inline-block;
	margin-top: 10px;
}
.resbody a.thumb img {
	display: inline-block;
	max-width: 100%;
	height: auto;
	padding: 3px;
	border: 1px solid #ccc;
	max-height: 500px;
}
.resbody a.thumb.gif {
	position: relative;
	display: inline-block;
	margin: 0.5em 0;
	opacity: 0.5;
}
.resbody a.thumb.gif:hover {
	opacity: 1;
}
.resbody .dice {
	font-weight: bold;
	color: #f00;
}
/*.resbody a.thumb.gif:after {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	text-align: center;
	content: "Tap to start.";
	font-size: 2rem;
	color: #444;
}*/
#threadHeader .voteBtns > button, #resList li > .voteBtns > *, #popup .voteBtns > * {
	margin: 0 0 0 0.5em;
}
.resheader > .vote {
	line-height: 1;
	padding: 0.3em 0.5em;
	margin-right: 1em;
	vertical-align: bottom;
	color: #f80;
}
.resheader > .vote:focus {
	box-shadow: none;
}
.resheader .vote.good:before {
	content: "\f417";
}
.resheader .vote.good:disabled:before {
	content: "\f415";
}
[class^=vote] > .good:before {
	content: "\f406";	
}
[class^=vote] > .bad:before, .vote.bad:before {
	content: "\f404";
}
[class^=vote] > .btn {
	height: 30px;
	margin-right: 5px;
	color: #fff;
	border: none;
	border-radius: 0;
	outline: none;
	box-shadow: none;
	-webkit-appearance: none;
}
#waitThread [class^=vote] > .btn {
	width: 30px;
	padding: 0;
}
.voteBtns {
	text-align: right;
}
.voteBtns > .btn {
	padding: 0 5px;
}
.voteBtns > .btn:before {
	vertical-align: middle;
}
.voteBtns > .btn > span {
	margin-left: 0.5em;
}
.voteBtns .vtext {
	font-size: 1.2rem;
}
.voteBtns .vcount, .resheader .vcount {
	font-size: 1.2rem;
}
#popup .voteBtns, #popup .vote, #popup .resheader .badge {
	display: none;
}
[class^=vote] .good {
	background: #104cd0;
}
[class^=vote] .bad {
	background: #540000;
}
[class^=vote] .btn.disabled {
	background: #ccc;
}
#threadHeader .voteBtns, .shareBtns {
	display: inline-block;
}
#catalog .shareBtns {
	vertical-align: middle;
}
.shareBtns a {
	display: inline-block;
	color: #fff;
	margin: 0 0 0 0.5em;
	padding: 0 13px 0 40px;
	height: 40px;
	line-height: 40px;
	background-repeat: no-repeat;
	vertical-align: bottom;
}
#catalog .shareBtns a {
	margin-left: 0.3em;
	padding: 0;
	width: 40px;
}
.shareBtns .tweet {
	background-image: url(./commons/snsicon.png);
	background-color: #55ACEE;
	background-position: 5px 0;
}
.shareBtns .line {
	background-image: url(./commons/snsicon.png);
	background-position: 5px -150px;
	background-color: #00b900;
}
.shareBtns .htb {
	background-image: url(./commons/snsicon.png);
	background-position: 5px -100px;
	background-color: #0091c5;
}
.shareBtns .favorite, .shareBtns .tweet {
	font-size: 3rem;
	padding: 0 5px;
	cursor: pointer;
	text-align: center;
	text-decoration: none;
}
.shareBtns .favorite:before {
	display: block;
}
.shareBtns .favorite[name^="fav-add"]:before {
	font-weight: normal;
	content: "\f588";
}
#catalog .shareBtns .favorite {
	color: #d6b125;
}
#catalog .shareBtns .tweet {
	background: transparent;
	color: #55ACEE;
}
#catalog .shareBtns .tweet:before {
	content:"\f5ef";
}
.shareBtns .favorite[name^="fav-add"]:hover:before {
	color: #d6b125;
}
.shareBtns .favorite[name^="fav-remove"]:before {
	color: #d6b125;
	content: "\f586";
}
#mainThread .badge, #sideThread .badge {
	font-weight: normal;
	position: absolute;
	bottom: 0;
	right: 0;
	width: auto;
	border-radius: 0;
	background: #aaa;
}
#mainThread .list-group-item {
	width: 100%;
	margin: 0;
	padding: 0;
	border: none;
	border-radius: 0;
	background: transparent;
	vertical-align: top;
}
#mainThread #popular.row > a:hover, .search #mainThread  a.row:hover {
	background: #104cd0;
}
#mainThread a:hover .title {
	color: #fff;
}
#mainThread .list-group-item img {
	max-width: 100px;
	padding: 0;
}
#mainThread .title {
	font-size: 1.4rem;
	line-height: 1.3;
	padding: 0.2em 0.5em 0 0.5em;
	color: #222;
}
aside .head {
	color: #0541a2;
	font-weight: bold;
	margin: 1em 0 0.5em;
	padding: 0;
	font-size: 2rem;
	font-weight: normal;
	border: none;
}
aside .head[data-bs-toggle='collapse'] {
	cursor: pointer;
}
aside .head[data-bs-toggle='collapse']:after {
	content: "\f283";
	margin-left: 0.3em;
}
aside .head[aria-expanded='true']:after {
	content: "\f27d";
}
aside .head:first-child {
	margin-top: 0;
}
aside .head:before {
	content: "";
	position: absolute;
	width: 95%;
	margin-left: 5%;
	left: 0;
	top: 30px;
	border-bottom: 1px solid #0541a2;
	box-shadow: 0 1px 3px #ccc;
}
aside .list-group-item {
	background: transparent;
	border: none;
}
aside .list-group-item.disabled {
	background: transparent;
}
aside a {
	color: #0541a2;
}
aside .head a:hover {
	color: #0541a2;
	text-decoration: none;
	opacity: 0.7;
}
#sideThread a.list-group-item {
	padding: 0 1% 0 0;
}
#sideThread a.list-group-item:hover {
	background: #eee;
}
#sideThread .categorywrap > a.list-group-item {
	padding: 0.5em;
}
#sideThread a.list-group-item div.imgwrap {
	display: inline-block;
	width: 18%;
	max-width: 100px;
	margin-right: 2%;
	vertical-align: middle;
}
#sideThread a.list-group-item div.imgwrap img {
	display: block;
	width: 100%;
}
#sideThread .title {
	padding: 0.2em 0;
	font-size: 1.4rem;
	line-height: 1.2;
	display: inline-block;
	width: 80%;
	vertical-align: middle;
}
#sideThread .thumbwrap {
	text-align: center;
	padding: 0;
}
#sideThread .thumbwrap a {
	display: inline-block;
	width: 32%;
	margin: 0 1% 5px 0;
	padding: 2px;
	border: 1px solid #ccc;
}
#sideThread .thumbwrap img {
	display: block;
	width: 100%;
	height: auto;
}
#sideThread .thumbwrap .thumbwrap {
	text-align: center;
}
#sideThread .thumbwrap a {
    position: relative;
	vertical-align: top;
}
#sideThread .thumbwrap .title {
	display: none;
    text-align: left;
    position: absolute;
    bottom: 2px;
    left: 2px;
    padding: 2px 2px;
	font-size: 1.2rem;
    width: calc(100% - 4px);
	height: calc(100% - 4px);
    background: rgba(0,0,0,0.6);
    color: #fff;
	overflow: hidden;
}
#sideThread .thumbwrap a:hover .title {
	display: block;
}
#catalog + #resform {
	padding: 0 1em;
}
#resform label, #contact label {
	padding-right: 1em;
	vertical-align: top;
}
#resform p {
	cursor: pointer;
}
#resform p.res {
	cursor: auto;
}
#resform p ~ * {
	display: none;
}
#resform p.openform ~ * {
	display: block;
}
#resform h5 br {
	line-height: 2rem;
}
#resform .form-horizontal, #resform .form-group {
	margin-left: 0;
	margin-right: 0;
}
#popup {
	position: absolute;
	display: none;
	max-width: 930px;
	padding: 10px;
	background: rgba(255,255,255,0.95);
	box-shadow: rgba(16, 16, 16, 0.2) 1px 2px 3px;
	z-index: 10001;
}
#popup.votes .voteBtns, #popup.votes .resnumber, #popup.votes .report {
	display: none;
}
#extract {
	max-height: 750px;
	overflow-y: auto;
}
.extract {
	cursor: pointer;
}
#settings #myres, #settings #favorite, #settings #etc {
	display: none;
}
#settings #favorite {
	display: block;
}
#resList .ngid[name^="ng-remove"] {
	color: #f80;
	opacity: 1;
}
#resList .ngid[name^="ng-remove"]:before {
	content: "\e017";
	vertical-align: middle;
}
.reply {
	margin-top: 2em;
	border-bottom: 1px solid #ccc;
	padding: 0.1em 0.5em;
	border-radius: 1em;
}
.reply:before {
	content: "\f51d";
}
.reply > a {
	margin-left: 0.5em;
	display: inline-block;
	padding: 0.3em 0;
}

/*	ナビ	*/
header {
	background: #fff;
	padding: 0;
	box-shadow: 1px 0 2px #ccc;
}
header .navbar-collapse {
	padding: 0;
}
header #darkmode-menu {
	width: 3em;
	height: 20px;
	margin-left: -1.5em;
}
header form#search {
	position: relative;
	min-width: 320px;
	height: 35px;
	margin: 0 auto;
	padding: 0;
	border-radius: 3px;
	overflow: hidden;
	box-shadow: -1px 0 3px #aaa;
}
header .dropdown > a {
	background: transparent;
	border: none;
	color: #fff;
}
header form:before {
	position: absolute;
	top: 2px;
	left: 5px;
	font-size: 2rem;
	line-height: 30px;
	content: "\f52a";
	z-index: 1;
}
header form input, header form select {
	float: left;
	font-size: 1.4rem;
	height: 100%;
	line-height: 35px;
	outline: none;
	background: none;
	border: none;
	appearance: none;
	-webkit-appearance: none;
}
header input[type="text"], header form select {
	background: #fff;
}
header form select {
	width: calc(30% - 35px);
	margin-left: 35px;	
	color: #104cd0;
	cursor: pointer;
}
header input[type="text"] {
	width: 50%;
	padding: 0 0.3em;
}
header input[type="submit"] {
	width: 20%;
	background: #999;
	color: #fff;
}
header .navbar-brand {
	padding: 0;
}
header #sitelogo {
	position: relative;
	width: auto;
	height: 50px;
	z-index: 1;
}
.navbar {
	display: block;
	margin: 0 auto;
	padding: 0;
	border: none;
	border-radius: 0;
	background: transparent;
}
nav .navbar-nav > li > a {
	display: block;
	padding: 0 15px;
	line-height: 50px;
	color: #444;
}
nav .navbar-nav > li > a:hover {
	color: #fff;
	background: rgba(0,0,0,0.5);
}
.navbar-brand {
	padding: 5px;
}
.navbar-toggler {
	font-size: 1.6rem;
	position: absolute;
	background-color: #fff;
	top: 10px;
	right: 15px;
}
/*	ページャー	*/
.pagination {
	margin: 20px 0;
	vertical-align: middle;
}
.resall {
	margin-left: 0.5em;
}
.pagination > li:first-child.angle a:after {
	content: "\f27f";
}
.pagination > li:last-child.angle a:after {
	content: "\f280";
}
/*	パンくず	*/
#breadcrumb {
	margin: 0 0 1em 0;
}
#breadcrumb div {
	display: inline-block;
}
#breadcrumb div a {
	font-size: 1.4rem;
	line-height: 1.15;
	display: inline-block;
	margin-bottom: 0.5em;
	padding: 0.2em 0.3em;
	opacity: 0.7;
	border-radius: 5px;
	background: #104cd0;
	color: #fff;
}
#breadcrumb div a:hover {
	color: #fff;
	opacity: 1;
}
#breadcrumb div:after {
	content: "\00bb";
	margin: 0 0.5em;
}
#breadcrumb div:last-of-type:after {
	content: "";
	margin: 0;
}
/*	注意書きなど	*/
.infotext:empty {
	display: none!important;
}

/*	フッター	*/
footer {
	bottom: 0;
	width: 100%;
	height: 50px;
	margin: 0;
	background: #104cd0;
}
footer div {
	width: 100%;
	margin: 0 auto;
	padding: 0 1%;
	line-height: 50px;
	color: #fff;
	text-align: center;
}
footer a {
	margin: 0 10px 0 0;
	line-height: 2em;
	color: #fff;
}
footer small {
}
footer a:hover, footer a:active, footer a:visited {
	color: #fff;
}

/*	追尾ボタン	*/
#fixbtn {
	width: 50px;
	height: auto;
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 3;
}
#fixbtn > a {
	display: block;
	width: 40px;
	height: 40px;
	line-height: 40px;
	margin-bottom: 0.5em;
	text-align: center;
	opacity: 0.7;
	color: #ccc;
	border: 1px solid #ddd;
	background-color: #fff;
	cursor: pointer;
}
#fixbtn > a:hover, #fixbtn > a:active, #fixbtn > a.wait {
	opacity: 1;
}
#fixbtn > a:active, #fixbtn > a.wait {
	color: #104cd0;
}
#fixbtn > a.active {
	color: #f80;
}
#fixbtn a > i[class]{
	font-size: 3rem;
	line-height: 40px;
}
#fixbtn .top:before {
	content: "\f235";
}
#fixbtn .form:before {
	content: "\f4ca";
}
#fixbtn .config:before {
	content: "\f3e2";
}
#fixbtn .prev:before {
	content: "\f22d";
}
#fixbtn .next:before {
	content: "\f231";
}
#fixbtn .reload:before {
	content: "\f116";
}

/*	広告	*/
.banner, .inner {
	margin: 0 auto 1em;
}
.banner:empty, .inner:empty, .spinner:empty {
	display: none!important;
}
.banner {
	width: 728px;
	min-height: 90px;
}
.inner, .spinner {
	text-align: center;
}
.inner {
	min-height: 250px;
}
.inner:first-of-type {
	margin-top: 1em;
}
.spinner {
	margin-bottom: 1em;
	clear: both;
}
.inner > *, .spinner > * {
	margin-left: auto;
	margin-right: auto;
}
.row > .inner {
	width: 100%;
	display: block;
}
#content .inner > *, #catalog .inner > * {
	margin: 0 10px;
	display: inline-block;
}

/*	Youtube	*/
.youtube, .niconico {
	display: inline-block;
	margin: 0.8em 0;
	padding: 3px;
	border: 1px solid #ccc;
	max-width: 100%;
	cursor: pointer;
}
.youtube .title, .niconico .title, .imginfo {
	display: block;
	font-size: 1.4rem;
	line-height: 1.2;
	color: #666;
	font-weight: bold;
	padding: 0.3em;
	max-width: 100%;
	word-break: break-all;
}
.youtube .title, .niconico .title, .mvthumb img {
	width: 640px;
}
.youtube .title:before, .niconico .title:before {
	display: inline-block;
	word-break: break-all;
	margin-right: 0.3em;
	vertical-align: middle;
}
.youtube .title:before {
	content: "\f62b";
}
.niconico .title:before {
	content: "\f4f1";
}
.imginfo:before {
	content: "\f42a";
	margin-right: 0.5em;
}
.mvthumb img {
	display: block;
	max-width: 100%;
	margin: 0 auto;
	padding: 0;
	border: none;
}
iframe.movie {
	display: block;
	width: 640px;
	margin: 1em 0;
}
.resbody iframe {
	max-width: 100%;
}
/*	OGP	*/
.ogp {
	width: 100%;
	margin: 10px 0;
}
.ogp > a {
	padding: 0.5em 0;
	border-radius: 0.5em;
	background: #eef8ff;
	box-shadow: 0 0 2px #aaa;
}
.ogp > a:hover {
	background: #ccf8ff;
}
.ogp div > * {
	display: block;
}
.ogp img {
	max-width: 100%;
	max-height: 100px;
	margin: 0 auto;
	padding: 0 5px;
}
.ogp strong {
	margin-bottom: 0.5em;
	line-height: 1.25;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	word-break: break-all;
}
.ogp span {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
	font-size: 1.2rem;
	line-height: 1.2;
	max-height: 100px;
	margin-bottom: 2em;
	overflow: hidden;
}
.ogp small {
	position: absolute;
	bottom: 0;
	width: 100%;
	padding-right: 2em;
	text-align: right;
}

/*	未承認スレ投票	*/
#waitThread {
	margin-bottom: 1em;
}
#waitThread li .preview:before {
	content: "\e113";
}
#waitThread li .preview.tempThread:after {
	content: "\f597";
	color: #222;
	margin-left: 0.3em;
	vertical-align: middle;
}
#waitThread li .preview:hover:before {
	content: "\e114";
}
#waitThread li.list-group-item {
	padding: 5px;
}
#waitThread .respreview {
    padding: 1px 0;
}
#waitThread .respreview .extract {
	color: #333;
	vertical-align: bottom;
}
#waitThread .respreview .resnumber, #waitThread .respreview .voteBtns, .voteBtns:empty {
	display: none;
}
#waitThread .voteBtns {
	position: absolute;
	display: inline-block;
	margin-right: 5px;
	z-index: 1;
}
#waitThread li .progress {
	margin: 0 0 0 70px;
	height: 15px;
	border: none;
	border-radius: 0;
	box-shadow: none;
	background: #e8e8e8;
}
#waitThread li .progress .progress-bar {
	line-height: 16px;
}
#waitThread li a.preview {
	display: block;
	max-width: 100%;
	margin: 0;
	padding: 0 0 0 75px;
	font-size: 1.4rem;
	line-height: 15px;
	overflow: hidden;
	white-space: nowrap;
	word-break: break-all;
	text-overflow: ellipsis;
	cursor: pointer;
}
#waitThread li a.preview:hover {
	white-space: normal;
}
#waitThread li .badge {
	position: absolute;
	right: 3px;
	top: 3px;
	display: none;
}
#side #waitThread li .badge {
	display: none;
}
/*	スレッド内レス数カウント	*/
#resList .rescount, #popup .rescount {
}

/*	レスポンシブ(TOPの2カラム化/最近の画像の列数etc...)	*/
@media screen and (max-width: 767px) {
	#gnavi {
		border-top: 1px solid #ccc;
	}
	#main, #side {
		padding: 0 1%;
	}
	#threadHeader {
		padding-top: 0;
	}
	#threadTitle {
		font-size: 1.8rem;
		margin: 0 0.5em;
	}
	#resList .list-group-item {
		padding: 0 0 3em;
	}
	.resheader {
		padding: 0.3em 0;
		font-size: 1.2rem;
	}
	.reply {
		margin-top: 1em;
	}
	.resbody iframe.movie, .resbody .nico iframe {
		font-size: 100vw;
		display: block;
		max-width: 100%;
		width: 100%;
		max-height: 0.5625em;
		margin: 10px 0;
	}
	#resList li .voteBtns, #popup .voteBtns {
		margin-top: 1em;
	}
	#resList li .voteBtns .btn, #popup .voteBtns .btn {
		margin: 0 0.5em 0 0;
		width: 60px;
		position: relative;
		font-size: 1.2rem;
	}
	#resList li .voteBtns > .btn:before, #popup .voteBtns > .btn:before {
		position: absolute;
		left: 5px;
	}
	.voteBtns .vtext {
		display: none;
	}
	#resList li .voteBtns .vcount, #popup .voteBtns .vcount {
		margin-left: 1em;
	}
	.resheader .vote {
		margin: 0;
	}
	.resheader > span {
		margin-right: 0.3em;
		vertical-align: middle;
	}
	.resheader > button:last-child {
		margin-right: 0;
		margin-left: 0.5em;
	}
	#sideThread .thumbwrap a {
		display: inline-block;
		width: 19%;
	}
	#sideThread .thumbwrap a:nth-of-type(5n) {
		margin-right: 0;
	}
	.pagination > li, footer {
		font-size: 1.2rem;
	}
	header nav .navbar-nav .open .dropdown-menu>li>a {
		color: #fff;
	}
	.voteBtns time, #threadHeader .shareBtns {
		display: block;
	}
	.shareBtns a {
		height: 40px;
		width: 40px;
		padding: 3px 0;
		font-size: 0;
	}
	#threadHeader .shareBtns {
		margin-top: 0.5em;
	}
	#popup {
		width: 100%;
		padding: 0.5em 1%;
	}
	#extract {
		max-height: 500px;
	}
	#waitThread li {
		font-size: 12px;
		font-size: 1.2rem;
	}
	#waitThread li .badge {
		position: absolute;
		right: 5px;
		top: 5px;
	}
	#waitThread li .badge {
		display: none;
	}
	#fixbtn {
		right: 10px;
		bottom: 125px;
	}
	#fixbtn > a:active {
		color: #104cd0;
	}
	footer {
		padding-bottom: 170px;
	}
}
@media screen and (min-width: 768px) {
	#sideThread .thumbwrap a:nth-of-type(3n) {
		margin-left: 0;
		margin-right: 0;
	}
	header .dropdown {
		display: inline-block;
	}
	#mainThread .clm2 .list-group-item {
		display: inline-block;
		width: 49%;
	}
	#mainThread .clm2:not(.rank) .list-group-item:nth-child(2n), #mainThread .clm2.rank .list-group-item:nth-child(even) {
		margin-left: 2%;
	}
	#fixbtn.fit {
		right: calc(50% - (1200px / 2) - 50px);
	}
	#fixbtn.fit > a {
		border-left: none;
	}
}
@media (max-width: 575.8px) {
	.resheader {
		padding-right: 0;
		padding-left: 0.2em;
	}
	.resheader .resnumber, .resheader .report, .resheader .delete {
		padding: 0.3em 0.1em;
	}
	.resbody > p,.twitter-tweet-rendered, .resbody > .thumb {
		padding-right: 0.3em;
		padding-left: 0.3em;
	}
	#catalog, #resform {
		padding: 0;
	}
	#resform > * {
		margin: 0 0.5em 0.5em;
	}
	#catalog .alert {
		font-size: 1.2rem;
	}
	#catalog .card img {
		min-width: 50px;
		width: 50px;
	}
	#catalog .card-body {
		font-size: 1.1rem;
		padding: 0.2em 0.1em;
		height: 50px;
	}
	.catalog .threadCount, .catalog .threadRank {
		font-size: 1rem;
		right: auto;
		left: 0;
		width: 50px;
		white-space: nowrap;
	}
	.ogp > a {
		border: none;
		border-radius: 0;
	}
	#fixbtn.fit {
		width: auto;
	}
	#fixbtn.fit > a {
		display: inline-block;
		margin-bottom: 0;
		margin-left: 0.5em;
		vertical-align: top;
	}
}
@media (min-width: 576px) {
	.ogp strong {
		display: block;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
}
