section.tegalog {
    max-width: 700px;
    margin: 40px auto 0;
}
iframe {
    max-width: 100%;
}
.onelogbox img {
    max-width: 100%;
    height: auto;
}
.postarea form {
    background: #ffffff; 
    padding: 10px;
    border: 1px solid #ffb5c3; 
    border-radius: 8px;
}

.postarea textarea.tegalogpost {
    width: 100%;
    border: 1px solid #ccc;
    padding: 8px;
    font-family: 'メイリオ', Meiryo,'ヒラギノ丸ゴ ProN','Hiragino Maru Gothic ProN','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
    line-height: 1.6em;
    resize: vertical;
    min-height: 100px;
	margin-bottom: 0.25em;

}

.postarea p.line-textarea {
    margin: 0;
}
.postarea p.line-control {
    margin: 10px 0 0;
}
.postarea input.postbutton {
    background: #FFF;
    color: #ffb5c3;
    border: 1px solid #ffb5c3;
    border-radius: 3px;
    cursor: pointer;
    transition: .3s;
}
.postarea input.postbutton:hover {
    background: #ffb5c3;
}
.decoBtns input[type=button] {
    border-radius: 3px;
    border: 1px solid #cccccc;
    background: white;
    margin: 0 2px 10px;
}
span.catChecks label {
    margin-right: 5px;
    font-size: 90%;
}
ul.cattree {
    background-color: #FFF;
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    border: 1px solid #ffb5c3;
    padding: 15px;
    border-radius: 2px;
    position: relative;
}
ul.cattree li {
	font-size: 90%;
	margin-right: 10px;
    color: #ffb5c3 ;
    padding: 0;
    position: relative;
    z-index: 2;
}
ul.hashtaglist {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    border: 1px solid #ffb5c3;
    background: #FFF;
    padding: 15px;
    border-radius: 2px;
}
ul.hashtaglist li {
	font-size: 85%;
	margin-right: 10px;
    padding: 0;
    position: relative;
    z-index: 2;
}
ul.cattree li:before, ul.cattree li:after,
ul.hashtaglist li:before, ul.hashtaglist li:after {
    display: none;
}
div.onelogbox {
    max-width: 700px;
    margin: 30px auto;
    border-bottom: 1px dashed #ccc;
}

p.oneloginfo {
    text-align: right;
    font-size: 90%;
	color: #979797;
}
p.oneloginfo a.categorylink {
    display: inline-block;
    text-decoration: none;
    color: #ffb5c3;
    border: 1px solid;
    padding: 1px 6px;
    text-align: center;
    border-radius: 8px;
    margin: 0 8px;
}
p.oneloginfo a.categorylink:hover {
    border-color: #ffb5c3;
	background: #ffb5c3;
	color: white;
}
p.situation {
    font-size: 90%;
    color: #ffb5c3;
    padding-bottom: 5px;
    border-bottom: 1px dashed #ccc;
}
span.situation-postno {
    border: 1px solid;
    display: inline-block;
    padding: 3px 8px;
    border-radius: 3px;
    line-height: 1.6em;
}
p.dateseparator {
    display: none;
    font-size: 90%;
    color: #ffb5c3;
    width: fit-content;
    padding: 3px 5px;
    line-height: 1.6em;
    margin: 0 auto -20px 0;
}


p.dateseparator.fixedseparator {
    display: block;
}


p.pagenums {
    text-align: center;
}
a.pagenumlink {
    display: inline-block;
    text-decoration: none;
    background: #929292;
    color: white;
    width: 25px;
    height: 25px;
    line-height: 25px;
}
a.pagenumlink:hover {
    background: #ffb5c3;
    color: #FFF;
}
a.pagenumlink.pagenumhere {
    background: #ffb5c3;
}
.comment {
    word-break: break-word;
}
a.readmorebutton {
    margin: 20px auto;
    border: 1px solid;
    text-decoration: none;
    color: #242424;
    width: 100%;
    text-align: center;
    padding: 10px;
    border-radius: 3px;
}
a.readmorebutton.readmoreclose {
    padding: 1px 8px;
    font-size: 85%;
    margin-left: 5px;
}
p.poweredby {
    text-align: right;
    color: #929292;
    font-size: 12px;
}

p.poweredby a {
    color: inherit;
    text-decoration: none;
}

p.poweredby a:hover {
    text-decoration: underline; /* ホバーした時だけ下線を出す */
}


a.nsfw {
    position: relative;
    overflow: hidden;
    display: block;
  }
  a.nsfw img {
    filter: blur(15px);
  }
  a.nsfw:before {
    font-family: 'Line Awesome Free';
    font-weight: 900;
    content: "\f071";
    vertical-align: middle;
    margin-right: 5px;
    color: #ffffff;
    display: block;
    width: 100%;
    height: 100%;
    background: #0000003a;
    position: absolute;
    z-index: 1;
    text-align: center;
    font-size: 50px;
    margin: auto;
    top: 0;
    padding: 20% 0 0;
  }
  @media (min-width: 768px) {
    a.nsfw:before {
      font-size: 70px;
    }
  }

  /* 絵文字（twemoji）のサイズ調整 */
img.emoji {
    height: 1em;
    width: 1em;
    margin: 0 .05em 0 .1em;
    vertical-align: -0.1em;
}


div.mainarea {
    background: #ffffff;
    padding: 20px; 
	border: solid 1px #ffb5c3;
}

@media (max-width: 767px) {
    section.tegalog h2 {
        padding-left: 10px;
    }

    
    .postarea-links .right_block,
    .postarea-links p:nth-of-type(2) {
        padding-left: 10px;
    }
    }

.editlink
{
    color: #979797;
}

details.postarea{
    border-radius: 8px;
}
/* postarea -------------------------------------------- */

.postarea{
	background-color: #fff4f6;
	margin-bottom: 1rem;
    border-radius: 8px;
    border: #FFF 2px solid;
}
	.postform{
		padding: 0 5%;
		outline: none;
	}

	summary{
		cursor: pointer;
		padding: 3.5% 5%;
        color: #ffb5c3;
	}
    
	input[type="text"]{
		font-weight: normal;
		outline: none;
	}
	textarea.tegalogpost{
		background-color: #fff4f6;
		border: #ffb5c3 1px solid;
        border-radius: 8px;
		color: var(--main-text-color);
		font-family: 'Noto Sans JP','Hiragino Kaku Gothic ProN', Meiryo,  sans-serif;
		min-height: 10rem;
		padding: 0.6em 0.6em;
		resize: vertical;
		vertical-align: bottom;
		width: 100%;
		outline: none;
        margin-bottom: 0.25em;
	}
	.submitcover{
		display: block;
		text-align: right;
	}
	input.postbutton{
		background-color: #fff;
		font-size: 1rem;
		color: #ffb5c3;
		font-weight: bold;
		letter-spacing: 2px;
		border: #ffb5c3 1px solid;
		margin-right: 0;
        padding: 0.2em;
		width: 25%;
        height: 3rem;             
        padding: 0;               
        display: inline-flex;     
        align-items: center;      
        justify-content: center;  
        line-height: 1;
	}
	input.postbutton:hover{
		background-color: #ffb5c3;
		color: #fff4f6;
		font-size: 1rem;
		font-weight: bold;
		border: #ffb5c3 1px solid;
		letter-spacing: 2px;
		margin-right: 0;
        padding: 0.2em;
		width: 25%;
	}
	.line-control{
		font-size: 0.9rem;
		padding-bottom: 0.5rem;
        
	}
	.decoBtns{
		display: block;
	}
	input[type="button"]{
		font-weight: normal;
		background-color: #ffffff80;
		color: #5E5957;
		letter-spacing: 1px;
		margin: 0 5px 5px 0;
		vertical-align: middle;
		cursor: pointer;
        vertical-align: middle;
	}
	input[type="button"]:hover{
		font-weight: normal;
		background-color: #ffb5c3;
		color: #FFF;
		
	}
	input[type="file"]{
		border: 1px solid #242424;
		vertical-align: middle;
		margin: 0 5px 5px 0;
		height: 2rem;
	}
	::file-selector-button{
		background-color: #5E5957;
		border: none;
		color: #fff4f6;
		cursor: pointer;
		height: 2rem;
		margin-right: 0.7em;
		padding: 0.4em 0.6em;
		text-box-edge: cap alphabetic;
		text-box-trim: trim-both;
		transition: background-color 0.3s ease-in-out;
	}



	select{
		margin-bottom: 5px;
		width: unset;
        vertical-align: middle; 
        position: relative;
        top: -2px;
        
	}
	label{
		display: inline-block;
		padding: 0 1em 5px 0;
		vertical-align: middle;
		line-height: 1.8;
	}
	label input[type="checkbox"]{
		margin-right: 5px;
	}

	input[type="checkbox" i] {
		accent-color:  #ffb5c3;
	}

	.funcUIs label{
		padding: 0 5px 5px 0;
	}
	.funcUIs .catChecks,
	.funcUIs > input:first-child{
		margin-right: 1em;
	}
	p.right_block{
		padding: 0 5% 3.5%;
	}

    .categoryarea{
        margin-top: 10px;
    }

    .catbranch ul li {
  margin-bottom: 0rem !important;
}

.num{
    color: #ffb5c3;
}

.hashtaglistarea .num{
	color: #5E5957;
}

.categoryarea .num{
	color: #5E5957;
}	

ul.hashtaglist li a::before {
  content: '#';
}

.postarea-links{
    text-align: right;
}

@media (max-width: 767px) {
    /* 段落ごと左に15px寄せる */
    .top-nav {
        margin-left: 15px;
    }
}

@media (max-width: 767px) {
    .admin{
        margin-right: 15px;
    }
    .poweredby{
        margin-right: 15px;
    }
    .memo
    {
        margin-left: 15px;
    }
}

.noline{
  text-decoration: none !important;
}

h2 {
    display: flex !important;
    align-items: center; /* 縦方向を中央に揃える */
}

.home-icon {
    margin-left: 8px;
}

ul.cattree li a::before {
    /* Line Awesomeを使うための指定 */
    font-family: "Line Awesome Free";
    font-weight: 900;
    
    /* la-tagsのUnicode番号（バックスラッシュが必要） */
    content: "\f02c"; 
    
    /* 見た目の微調整 */
    margin-right: 5px;
    display: inline-block;
}

.decorationE{
    color: #ffb5c3;
    font-weight: bold;
    font-style: normal; /* これを追加して斜体を解除します */
}

.decorationM{
	padding: 0 0.2em;
}

small.decorationS{
	font-size: 0.85rem;
}
small.decorationT{
	font-size: 0.7rem;
}

ul.decorationL{
	list-style-type: disc;
	padding-left: 1.5rem;
	list-style-position: outside;
	margin: 0.5em 0;
}
q.decorationQ{
	background-color: rgb(var(36, 36, 36),0.15);
	padding: 1em 2em;
	font-size: 0.9rem;
	margin: 0.5em 0;
	position: relative;
}
q.decorationQ:before{
	content: "\f10d";
	font-family: 'Line Awesome Free';
	font-weight: 900;
	color: rgb(var(36, 36, 36), 0.6);
	position: absolute;
	left: 6px;
	top: 0;
}
q.decorationQ:after{
	content: "\f10e";
	font-family: 'Line Awesome Free';
	font-weight: 900;
	color: rgb(var(36, 36, 36), 0.6);
	position: absolute;
	right: 6px;
	bottom: 0;
}
figure{
	background-color: var(--sub-bg-color);
	display: inline-block;
	margin: 5px 0;
	padding: 5px 10px;
	vertical-align: top;
}
figcaption{
	font-size: 0.85rem;
	line-height: 1.5;
}
small figure,
figure.nsfw{
	width: var(--miniimg-size);
}
.right_block{
	text-align: right;
}
iframe.embeddedmovie{
	max-width: 100%;
}

span.passkeybox{
	display: block;
	margin-bottom: 0.3rem;
}
span.passkeyguide{
	display: block;
}
article details{
	summary{
		background-color: color-mix(in srgb, var(--main-text-color) 15%, transparent);
		border-radius: 5px;
		cursor: pointer;
		font-size: 0.9rem;
		font-weight: bold;
		padding: 0.1em 0.6em 0.2em;
	}
	.foldedarea{
		border-bottom: 5px solid color-mix(in srgb, var(--main-text-color) 15%, transparent);
		border-radius: 5px;
		padding: 1em 0;
	}
	details{
		margin: 1em;
	}
}



/* img -------------------------------------------- */
img.nsfw{
	filter: blur(5px);
	opacity: 0.1;
}
a.imagelink{
	display: inline-block;
	line-height: 1;
	vertical-align: bottom;
	margin: 5px 0;
}
.comment img{
	max-height: var(--largeimg-size);
	width: auto;
}
.comment small img.embeddedimage,
.comment a.nsfw img.nsfw{
	aspect-ratio: 1 / 1;
	object-fit: cover;
	width: var(--miniimg-size);
}
a.imagelink.nsfw{
	background-color: rgb(var(--main-text-rgb),0.3);
	overflow: hidden;
	position: relative;
	text-decoration: none;
}
a.imagelink.nsfw:before{
	content: '画像を見る';
	position: absolute;
	top: calc(50% - 0.5em);
	left: calc(50% - 2.5em);
	font-size: 0.85rem;
}
img.prof{
	width: 4rem;
	height:4rem;
	object-fit: cover;
	object-position: 50% 50%;
	border-radius: 50%;
	vertical-align: middle;
	margin-right: 1rem;
}
img.emoji{
	width: 1rem;
	height: 1rem;
	vertical-align: middle;
	margin: 0 3px 3px;
}

.embeddedimage {
    display: inline-block;
    margin: 1rem 0;
    border-radius: 8px;
    width: 60% !important; 
    height: auto !important; 
    text-align: center;
}

a img {
    transition: 0.3s;
    /* マウスホバー時のアニメーション */
}

a img:hover {
    opacity: 0.5;
    /* マウスホバー時に半透明に */
}


/* cardlink -------------------------------------------- */
.cardlink {
	display: inline-block;
	font-size: 0.9rem;
	font-weight: normal;
	margin: 0.5em 0;
	text-decoration: none;
	vertical-align: middle;
	width: 100%;
}
.cardlink::before{
	display: none;
}
.cardlinkbox {
	background-color: transparent;
	border: 1px solid color-mix(in srgb, var(--main-text-color) 30%, transparent);
	border-radius: 5px;
	display: flex;
}
.cardlinkimage {
	aspect-ratio: 1.91 / 1;
	background-image: url(imgforskin/noimage.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	border-radius: 5px 0 0 5px;
	height: auto;
	width: 100%;
}
.cardlinktextbox {
	display: flex;
	flex-direction: column;
	padding: 0.7em 1em 1em;
}
.cardlinktitle,
.cardlinkdescription,
.cardlinkurl {
	display: -webkit-box;			/* -webkit-line-clampを使うために必要な記述 */
	line-clamp: 1;					/* 1行だけ見せる (将来的にはこれだけで実現可能かも) */
	overflow: hidden;				/* 表示量を制限する場合に必須の記述 */
	text-overflow: ellipsis;		/* 省略記号(三点リーダー) */
	-webkit-line-clamp: 1;			/* 1行だけ見せる (今のブラウザにはこちらが必要) */
	-webkit-box-orient: vertical;	/* -webkit-line-clampを使うために必要な記述 */
}
.cardlinktitle {
	font-weight: bold;
}
.cardlinkdescription {
	line-height: 1.4;
	color: color-mix(in srgb, var(--main-text-color) 70%, transparent);
	line-clamp: 2;
	-webkit-line-clamp: 2;
}
.cardlinkurl {
	border-top: 1px dotted color-mix(in srgb, var(--main-text-color) 30%, transparent);
	color: var(--text-color-70);
	font-size: 0.8em;
	margin-top: 0.5em;
	padding-top: 0.2em;
}

.cardsize-S {
	flex-direction: row;
	.cardlinkimage {
		border-radius: 5px 0 0 5px;
		height: 120px;
		width: unset;
	}
	.cardlinktextbox {
		border-left: 1px solid color-mix(in srgb, var(--main-text-color) 30%, transparent);
		flex: 1;
		justify-content: center;
		padding: 0em 1em;
	}
}
@media (max-width: 599px) {
	.cardsize-S{
		font-size: 0.85rem;
	}
	.cardsize-S .cardlinkimage {
		aspect-ratio: 1 / 1;
	}
}

.cardlink:has(.cardsize-L){
	max-width: 450px;
}
.cardsize-L {
	flex-direction: column;

	.cardlinkimage{
		border-radius: 5px 5px 0 0;
	}
	.cardlinktextbox {
		border-top: 1px solid color-mix(in srgb, var(--main-text-color) 30%, transparent);
	}
}

.foldswitch{
    padding: 5px;
}

.foldswitch::marker{
color: #ffb5c3;    
}

.foldlabel{
    color: #ffb5c3;
}

/* スクロールバー-------------------- */
/* スクロールバーの幅 */
::-webkit-scrollbar {
    width: 10px;
}

/* スクロールバー全体の背景 */
::-webkit-scrollbar-track {
    background: #FFF;
}

/* スクロールバーの動く部分 */
::-webkit-scrollbar-thumb {
    background: #ffb5c3;
    border: none;
}

.freespace {
color: #5E5957;
background: linear-gradient(transparent 50%, #ffeaeed3 50%);
text-decoration: none !important;
}



.new{
    max-height: 17px;
    max-width: 24px;
}

.searchbox {
    display: flex;
	flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    margin-bottom: 1px;
}

.searchbox .searchinputs {
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
	border: solid 1px #ffb5c3;
}

.queryinput {
    border: 1px solid var(--color-mgrey); 
    border-right: none; 
    padding: 1px 1px 1px 5px;
    outline: none;
}

select {
    color: #5E5957;
    background-color: #ffffff;
    transition: 0.3s;
    padding: 4.5px;
    border: 1px solid var(--color-mgrey);
    cursor: pointer;
    outline: none;
}
select .submitbutton:hover {
    color:#ffb5c3;
}

/* 検索(送信)ボタン */
.searchbox .submitcover {
}

.searchbox .submitbutton
 {
    color: #fff;
    background-color: #ffb5c3;
    transition: 0.3s;
    padding: 4px;
    border: 1px solid #ffb5c3;
    cursor: pointer;
    outline: none;
}

.submitbutton {
    color: #fff;
    background-color: #ffb5c3;
    padding: 1px 3px 3px 3px;
    border: 1px solid #ffb5c3;
    cursor: pointer;
    outline: none;
}

.searcharea{
margin-bottom: 12px;	
}

@media (max-width: 682px) {
	.searcharea{
margin-left: 4px;	
}
}

.searchoption{
	padding: 0;
}

.memodesc{
  font-size: 12px !important;
  color: #5E5957;
  margin-left: 5px;
}

.searchword {
  font-weight: bold;
  background: linear-gradient(transparent 60%, #fffd95 60%);
}

