@charset "utf-8";

/* CSS Document */

@import url("https://fonts.googleapis.com/css?family=M+PLUS+Rounded+1c");
.heading__h, .text__text {
  font-family: 'M PLUS Rounded 1c';
}



/*

	Josh's Custom CSS Reset

	https://www.joshwcomeau.com/css/custom-css-reset/

*/

*,*::before,*::after{box-sizing:border-box}*{margin:0}body{line-height:1.5;-webkit-font-smoothing:antialiased}picture,video,canvas,svg{display:block;max-width:100%}img{max-width:100%;height:auto}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}#root,#__next{isolation:isolate}



/*

	Tegalog skin by pipi | Ver.1.0

	https://pipi.noor.jp/t/

*/

:root {    



	/* コンテンツの最大横幅設定 */

	--main-width: 600px;

	/* 1カラム時は600～800pxくらい、2カラム時は900px以上がオススメです。 */



	/* 大きな縦長画像の表示サイズ */

	--largeimg-size: 600px;

	/* 投稿内の縦長画像の最大サイズを設定できます。不要な場合は数値と単位を削除してください。 */

	

	/* 小さな画像のサムネサイズ */

	--miniimg-size: 200px;

	/* 投稿内の「NSFW画像」と「smallタグで囲んだ画像」のサムネサイズを設定できます。100px以上推奨。 */

}

html{

	font-size: 14px;

}

@media screen and (max-width: 599px){

	html{

		font-size: 14px;

	}

}

body{

	background: var(--main-bg-design);

	color: var(--main-text-color);

	font-family: var(--main-font-family);

	font-feature-settings: "palt" 1;

	font-weight: 400;

	letter-spacing: 1px;

	line-height: 1.8;

	margin: 0 0;

	word-break: break-word;

}

a{

	color: var(--main-text-color);

	text-decoration: none;

	font-weight: bold;

}

ul{

	padding: 0 0 0 0;

	list-style-type: none;

}

img{

	object-position: top;

	vertical-align: bottom;

}

textarea{

	font-size: 14px;	/* iOS zoom対策 */

}





/* header -------------------------------------------- */

header{

	padding: max(5vw,3rem) 0 3rem;

	text-align: center;

}

h1{

	font-size: 1.5rem;

	line-height: 1.3;

	margin-bottom: 0.2em;

}

header p{

	font-size: 0.8rem;

	margin-bottom: 1rem;

}

div.mainwrapper{

	margin: 0 auto;

	max-width: var(--main-width);

}

@media (max-width: 599px){

	div.mainwrapper{

		margin: 0 3vw;

	}

}





/* ★1カラムver. -------------------------------------------- */



aside{

	max-width: var(--article-width);

	margin: 0 auto 3rem;

	display: grid;

	grid-template-columns: repeat(2, 1fr);

	grid-template-rows: 1fr auto;

	gap: 1rem 3rem;

}





/* ★2カラムver. --------------------------------------------

div.mainwrapper{

	display: flex;

	gap: 3rem;

}

@media screen and (max-width: 850px){

	div.mainwrapper{

		display: block;

	}

}

aside{

	flex-basis: 25%;

	min-width: 250px;

	margin: 0 auto 3rem;

}

@media screen and (min-width:600px) and ( max-width:850px){

	aside{

		display: grid;

		grid-template-columns: repeat(2, 1fr);

		grid-template-rows: 1fr auto;

		gap: 2rem 3rem;

	}

}

/* 	2カラムにしていても横幅850px以下のブラウザで見た時は自動的に1カラムになります。*/





/* main-layout -------------------------------------------- */

main{

	flex-basis: 75%;

	margin: 0 auto 5rem;

}

article{

	background-color: var(--sub-bg-color2);

	border-radius: 10px;

	margin-bottom: 3rem;

	padding: 3.5% 5%;

	position: relative;

}

.comment{

}

.nodata,

.nolist{

	background-color: var(--sub-bg-color2);

	border-radius: 10px;

	padding: 3rem 5%;

}

.oneloginfo{

	border-bottom: 1px solid rgba(var(--main-text-rgb), 0.2);

	font-size: 0.8rem;

	margin-bottom: 1.5em;

	padding-bottom: 5px;

	text-align: center;

}

a + .postdate{

	margin-left: 1em;

}

.oneloginfo small{

	color: rgba(var(--main-text-rgb), 0.6);

}

article.logstatus-lock .comment:before{

	content: "\f023";

	font-family: 'Line Awesome Free';

	font-weight: 900;

	font-size: 1.3em;

	position: absolute;

	right: calc(50% - 0.6em);

	top: -20px;

}

article.logstatus-fixed .comment:before{

	content: "\f08d";

	font-family: 'Line Awesome Free';

	font-weight: 900;

	font-size: 1.3em;

	position: absolute;

	right: 15px;

	top: -20px;

}

nav.pagenums{

	text-align: center;

	font-weight: bold;

}

nav.pagenums a{

	background-color: rgb(var(--main-text-rgb), 0.2);

	color: var(--main-text-color);

	display: inline-block;

	letter-spacing: 0;

	padding: 0 0.3em 0.2em;

	margin-bottom: 5px;

	transition: all 0.3s ease-in-out;

	min-width: 2em;

}

nav.pagenums a:hover{

	background-color: rgb(var(--main-text-rgb), 0.4);

}

nav.pagenums .pagenumhere{

	background-color: var(--accent);

	color: var(--sub-bg-color);

}

.onelogonly{

	display: none;

}

body.onelog .onelogonly{

	display: block;

}

body.onelog nav.pagenums .onelogonly a{

	padding: 0 1em 0.2em;

	margin-right: 1em;

}

body.onelog nav.pagenums .onelogonly a:last-child{

	margin-right: 0;

}





/* a -------------------------------------------- */

.comment a{

	text-decoration: underline;

}

.comment a:hover,

aside .link a:hover{

	text-decoration: none;

}

.comment a.uc-btn{

	background-color: var(--accent);

	color: var(--sub-bg-color);

	display: inline-block;

	font-weight: bold;

	font-size: 0.9rem;

	margin: 0 0 5px 0;

	padding: 0.1em 0.6em 0.2em;

	text-decoration: none;

	transition: opacity 0.3s ease-in-out;

}

.comment a[target~="_blank"]:before{

	content: " \f35d";

	font-family: 'Line Awesome Free';

	font-weight: 900;

}

.comment a.uc-btn:hover{

	opacity: 0.5;

}

.category a,

a.readmorebutton{

	background-color: var(--main-text-color);

	color: var(--sub-bg-color);

	display: inline-block;

	font-weight: bold;

	font-size: 0.9rem;

	margin: 0 0 5px 0;

	padding: 0.1em 0.6em 0.2em;

	text-decoration: none;

	transition: background-color 0.3s ease-in-out;

}

.category a:hover,

a.readmorebutton:hover{

	background-color: var(--accent);

}

nav ul li,

.category ul li{

	display: inline-block;

	margin-right: 5px;

}

nav ul li:last-child,

.category ul li:last-child{

	margin-right: 0;

}

.taglink + .num,

.catlink + .num,

.datelistlink + .num{

	display: none;

}





/* parts -------------------------------------------- */

em{

	font-style: normal;

    font-weight: bold;

    margin: 0 0.2em;

    padding: 0 0.2em;

    background-image: linear-gradient(rgba(0, 0, 0, 0) 50%, var(--accent2) 50%);

}

.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(--main-text-rgb),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(--main-text-rgb), 0.6);

	position: absolute;

	left: 6px;

	top: 0;

}

q.decorationQ:after{

	content: "\f10e";

	font-family: 'Line Awesome Free';

	font-weight: 900;

	color: rgb(var(--main-text-rgb), 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;

}

details summary{

	cursor: pointer;

	padding: 2% 5%;

}

iframe.embeddedmovie{

	max-width: 100%;

}



span.passkeybox{

	display: block;

	margin-bottom: 0.3rem;

}

span.passkeyguide{

	display: block;

}





/* input -------------------------------------------- */

input.queryinput,

select.datelimitpull,

select.hashtagEasyInput,

input.passkeyinput{

	border: 1px solid var(--main-text-color);

	background-color: var(--sub-bg-color);

	color: var(--main-text-color);

	vertical-align: bottom;

	width: calc(100% - 3rem);

	height: 2rem;

}

input.submitbutton,

input.passkeysubmit,

.postarea input[type="button"],

.postarea input[type="submit"],

.postarea input[type="text"]{

	border: none;

	background-color: var(--main-text-color);

	color: var(--sub-bg-color);

	cursor: pointer;

	font-size: 0.9rem;

	font-weight: bold;

	height: 2rem;

	letter-spacing: 2px;

	padding: 0 0.5rem 0 0.6rem;

	vertical-align: bottom;

}

main input.passkeyinput{

	width: calc(100% - 7rem);

}

main .comment input.passkeysubmit{

	letter-spacing: 1px;

	padding: 0 0 2px;

	text-align: center;

	width: 7rem;

}

aside .searchinputs > input,

aside .datelimitbox select{

	height: 2rem;

}







/* 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,

.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;

}





/* aside -------------------------------------------- */



aside section > div,

aside section > nav,

aside section > form{

	margin-bottom: 1rem;

}

aside h2{

	font-size: 0.8rem;

	font-weight: normal;

	padding: 0 0 0.4em;

	text-align: left;

}

aside .icon_name{

	margin-bottom: 0.5rem;

}

aside .links{

	margin-bottom: 1rem;

}

aside .links a:before{

	content: "\f0da";

	font-family: 'Line Awesome Free';

	font-weight: 900;

}

aside ul.depth2{

	display: inline-block;

}

aside ul.depth2 li{

	margin-right: 0;

}

aside ul.depth2 a{

	background-color: rgb(var(--main-text-rgb), 0.6);

	margin-left: 1px;

}

aside .searchinputs,

aside .datelimitbox{

	display: flex;

}

aside .hashtaglist li{

	display: inline-block;

	padding-right: 0.5em;

	font-weight: bold;

}

aside .hashtaglist li:before{

	content: '#';

	color: rgb(var(--main-text-rgb), 0.6);

}

aside .hashtaglist .num{

	display: none;

}

aside .datelimitboxoptions{

	display: none;

}

aside table.calendar{

	width: 100%;

	border-collapse: collapse;

	text-align: center;

	line-height: 2;

	font-size: 0.8rem;

	margin-top: 1.5rem;

}

aside caption{

	line-height: 1;

	padding-bottom: 0.8em;

	text-align: left;

}

.calendar thead{

	background-color: rgb(var(--main-text-rgb), 0.15);

}

.calendar tr {

    border-bottom: 1px solid rgba(var(--main-text-rgb), 0.3);

}

.calendar tr:last-child {

    border-bottom: none;

}

.calendar .sun,

.calendar .sat {

    background-color: var(--sub-bg-color2);

}

.calendar .today {

    background-color: var(--accent2);

}

.calendar a{

	font-weight: bold;

	display: block;

}

.calendar span.nolink{

	color: rgb(var(--main-text-rgb),0.5);

}

.calbtm {

    display: grid;

    grid-template-columns: 1fr 1fr;

    margin-top: 0.3rem;

    font-size: 0.8rem;

    font-weight: bold;

}

.calbtm div:nth-child(2) {

    text-align: right;

}

aside section div.imagelist{

	display: grid;

	grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));

	gap: 5px;

	margin-bottom:0;

}

.imagelistitem a{

	background-color: rgb(var(--main-text-rgb),0.3);

	display: block;

	overflow: hidden;

}

.imagelistitem img{

	object-fit: cover;

	aspect-ratio: 1 / 1;

}

.sec3 p{

	font-size: 0.8rem;

	padding-top: 0.3em;

}

@media (max-width: 599px){

	aside{

		display: block;

		padding: 0 1.6rem;

	}

	aside section div.imagelist{

		grid-template-columns: repeat(3, 1fr);

	}

}





/* postarea -------------------------------------------- */

.postarea{

	background-color: var(--accent2);

	border-radius: 10px;

	margin-bottom: 3rem;

}

.postarea form.postform{

	padding: 0 5%;

}

.postarea input[type="text"]{

	font-weight: normal;

}

textarea.tegalogpost{

	background-color: var(--sub-bg-color);

	border: none;

	border-radius: 0;

	color: var(--main-text-color);

	font-family: 'Noto Sans JP','Hiragino Kaku Gothic ProN', Meiryo,  sans-serif;

	min-height: 10rem;

	padding: 0.2em 0.6em;

	resize: vertical;

	vertical-align: bottom;

	width: 100%;

}

.postarea .submitcover{

	display: block;

	text-align: right;

}

.postarea input.postbutton{

	background-color: var(--accent);

	font-size: 1rem;

	font-weight: bold;

	letter-spacing: 2px;

	margin-right: 0;

	width: 50%;

}

.postarea .line-control{

	font-size: 0.9rem;

	padding-bottom: 0.5rem;

}

.postarea .decoBtns{

	display: block;

}

.postarea input[type="button"]{

	font-weight: normal;

	letter-spacing: 1px;

	margin: 0 5px 5px 0;

	vertical-align: middle;

}

.postarea input[type="file"]{

	vertical-align: bottom;

	margin-bottom: 5px;

	height: 2rem;

}

select.hashtagEasyInput{

	margin-bottom: 5px;

}

.postarea label{

	display: inline-block;

	padding: 0 1em 5px 0;

	vertical-align: middle;

	line-height: 1.8;

}

.postarea label input[type="checkbox"]{

	margin-right: 5px;

}

.funcUIs label{

	padding: 0 5px 5px 0;

}

.funcUIs .catChecks,

.funcUIs > input:first-child{

	margin-right: 1em;

}

.postarea p.right_block{

	padding: 0 5% 3.5%;

}





/* footer -------------------------------------------- */

footer{

	background-color: rgba(var(--main-text-rgb),0.15);

	font-size: 0.8rem;

	padding: 50px 0 80px;

	text-align: center;

}



/* ================================================================ */

/* てがろぐVer 4.5.5β以降で使える、カード型リンク用CSSの抜粋です。 */

/* お使いのスキンのCSSに追記するなどしてご活用下さい。              */

/* ================================================================ */



	/* ---------------------- */

	/* ▼カード型リンクの装飾 */

	/* ---------------------- */

	.cardlink {

		display: inline-block;

		width: 100%;

		max-width: 500px;               /* 最大幅 (※横幅を制限したくない場合はこれを削除して下さい) */

		padding: 0 0.25em 0.5em 0;      /* 内側の余白量 */

		font-size: 0.9rem;              /* 文字サイズ */

		text-decoration: none;          /* リンク文字の下線を消す */

		vertical-align: middle;         /* 行内の上下方向では中央配置 */

	}



		/* ------------------------------------- */

		/* リンクカードの装飾(サイズS/L共通部分) */		/* ※後述の「サイズS用の追記」や「サイズL用の追記」と合わせて、1つのカードデザインになります。 */

		/* ------------------------------------- */

		/* カード外枠 */

		.cardlinkbox {

			border: 1px solid #ccc;    /* 枠線 */

			border-radius: 7px;        /* 角丸 */

			background-color: white;   /* 背景色 */

			display: flex;             /* 内部レイアウトのFlexbox化 */

		}

		/* (マウスが載ったとき) */

		.cardlinkbox:hover {

			background-color: #f5fff5; /* 背景色 */

			border-color: #8c8;        /* 枠線色 */

		}

			/* ▽リンクカード内の画像枠 (※読み込まれたog:imageは、この枠に《背景画像として》描画されます) */

			.cardlinkimage {

				background-image: linear-gradient(-30deg, #8a8, #e0f0e0);  /* プレースホルダ的な背景グラデーション(※og:imageの画像指定が読み込まれたら、この値は上書きされます) */

				background-size: cover;             /* 背景画像で枠を埋める */

				background-position: center center; /* 背景画像を中央に寄せる */

				background-repeat: no-repeat;       /* 背景画像を繰り返さない */

			}

			/* ▽リンクカード内のテキスト枠 */

			.cardlinktextbox {

				display: flex;          /* Flexbox化 */

				flex-direction: column; /* 子要素を縦方向に並べる */

				padding: 0.5em 1em;     /* 内側の余白量 */

			}

				/* ▽リンクカードのテキスト枠内の3要素共通 */

				.cardlinktitle,

				.cardlinkdescription,

				.cardlinkurl {

					/* ↓表示行数を制限するための準備 (※システム側では文字数は制限せずに「記述されている全文字」をHTMLに出力しますので、表示分量を制限したい場合はCSSで制御する必要があります。) */

					display: -webkit-box;          /* -webkit-line-clampを使うために必要な記述1 ※A */

					-webkit-box-orient: vertical;  /* -webkit-line-clampを使うために必要な記述2 ※A */

					overflow: hidden;              /* 表示量を制限する場合に必須の記述 */

					/* ↓制限の仕様 */

					line-clamp: 1;                 /* 1行だけ見せる (将来的にはこれだけで実現可能かも) */

					-webkit-line-clamp: 1;         /* 1行だけ見せる (今のブラウザにはこちらが必要で、そのためには上記「※A」も必要) */

					text-overflow: ellipsis;       /* 省略記号(三点リーダー) */

				}

				/* リンクタイトル */

				.cardlinktitle {

					padding-bottom: 0.25em;        /* 内側下端の余白量 */

				}

				/* リンク概要文 */

				.cardlinkdescription {

					line-height:1.3;               /* 行の高さ */

					color:#555;                    /* 文字色 */

					line-clamp: 2;                 /* (既存指定の上書き) 最大2行まで見せる */

					-webkit-line-clamp: 2;         /* (既存指定の上書き) 最大2行まで見せる */

				}

				/* リンクドメイン */

				.cardlinkurl {

					color: #999;                   /* 文字色 */

				}



		/* ----------------------------------- */

		/* リンクカードの装飾(サイズS用の追記) */		/* 前述の「サイズS/L共通部分」と合わせて、1つのカードデザインになります。 */

		/* ----------------------------------- */

		.cardsize-S {

			flex-direction: row;                /* 画像とテキストは横に並べる(Flexbox) */

		}

			/* ▽リンクカード内の画像枠 */

			.cardsize-S .cardlinkimage {

				min-width: 100px;           /* 最小の横幅 */

				min-height: 100px;          /* 最小の高さ */

				border-radius: 6px 0 0 6px; /* 左側だけ角丸 */

				flex-shrink: 0;             /* 枠サイズを自動縮小させない */

			}

			/* ▽リンクカード内のテキスト枠 */

			.cardsize-S .cardlinktextbox {

				border-left: 1px solid #ccc; /* 左側の枠線 */

				justify-content:center;      /* Flexboxの上下方向での中央寄せ */

			}

				/* ▽リンクカードのテキスト枠内の3要素 */

				.cardsize-S .cardlinktitle { order: 2; }        /* タイトルは、2番目に表示 */

				.cardsize-S .cardlinkdescription { order: 3; }  /* 概要文　は、3番目に表示 */

				.cardsize-S .cardlinkurl { order: 1; }          /* ドメインは、1番上に表示 */



		/* ----------------------------------- */

		/* リンクカードの装飾(サイズL用の追記) */		/* 前述の「サイズS/L共通部分」と合わせて、1つのカードデザインになります。 */

		/* ----------------------------------- */

		.cardsize-L {

			flex-direction: column;             /* 画像とテキストは縦に並べる(Flexbox) */

		}

			/* ▽リンクカード内の画像枠 */

			.cardsize-L .cardlinkimage {

				aspect-ratio: 1.91 / 1;     /* 画像枠の縦横比を指定= (横)1.91：(縦)1 */

				width: 100%;                /* 横幅は枠最大に拡げる */

				height: auto;               /* 高さは自動計算 */

				border-radius: 6px 6px 0 0; /* 上側だけ角丸 */

			}

			/* ▽リンクカード内のテキスト枠 */

			.cardsize-L .cardlinktextbox {

				border-top: 1px solid #ccc; /* 上側の枠線 */

			}

				/* ▽リンクカードのテキスト枠内の3要素 */

				.cardsize-L .cardlinktitle { font-weight: bold; }        /* 太字 */

				.cardsize-L .cardlinkdescription { min-height: 2.5em; }  /* 内容量が少ない場合でも一定の高さを確保 */

				.cardsize-L .cardlinkurl {

					border-top: 1px solid #ddd;  /* 上側の枠線 */

					margin-top:0.5em;            /* 上側の枠線より上の余白量 */

					padding-top:0.5em;           /* 上側の枠線より下の余白量 */

					font-size:0.75rem;           /* 文字サイズ(小さめ) */

				}

.scroll_btn {
	position: fixed;
	top: calc(50% - 36px);
	right: .5em;
	z-index: 2;
	a {
		display: grid;
		place-content: center;
		opacity: .5;
	}

	a:hover {
		opacity: .8;
	}
	a::after {
		content: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="%23ffffff"><path d="M504-480 320-664l56-56 240 240-240 240-56-56 184-184Z"/></svg>');
		/* https://fonts.google.com/icons?selected=Material+Symbols+Outlined:chevron_right:FILL@0;wght@400;GRAD@0;opsz@24&icon.size=24&icon.color=%23FFFFFF&icon.query=arrow */
		display: grid;
		place-content: center;
		width: 24px;
		height: 24px;
		line-height: .5em;
		background-color: #333;
		opacity: .5;
	}
	a:first-child {
		transform: rotate(-90deg);
	}
	a:first-child::after {
		border-radius: 0 5px 5px 0;
	}
	a:last-child::after {
		border-radius: 0 5px 5px 0;
		transform: rotate(90deg);
	}
	a span {
		display: none;
	}
}


