@charset "utf-8";
/*-------------------------------------------------------*/
/*スキンデザイン　メモモモモ	https://roastea.deca.jp/memo/	*/
/*カスタマイズは、ご自由に*/
/*再配布は不可*/
/*配布開始日:2023年04月01日*/
/*-------------------------------------------------------*/
:root {
	--back: #438ba8;
	--yel: #ecc94b;
	--ai: #165e83;
	--shiro09: rgba(255, 255, 255, 0.9);
	--shiro08: rgba(255, 255, 255, 0.8);
	--shiro05: rgba(255, 255, 255, 0.5);
	--shiro02: rgba(255, 255, 255, 0.2);
}

/*-------------------------------------------------------*/
html {
	scroll-behavior: smooth;
}
body {
	margin: 0;
	padding: 0;
	font-family: "Helvetica", Arial, "Hiragino Kaku Gothic Pro", "Hiragino Sans", Meiryo, sans-serif;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' viewBox='0 0 20 20'><path d='M0 0h20v20H0z' style='fill:%23438ba8'/><clipPath id='a'><path d='M0 0h20v20H0z'/></clipPath><g clip-path='url(%23a)'><circle cx='17' cy='3' r='.5' style='fill:%23fff'/><circle cx='3' cy='17' r='.5' style='fill:%23fff'/><circle cx='8.5' cy='14.5' r='.5' style='fill:%23fff'/><circle cx='15' cy='8.25' r='.5' style='fill:%23fff'/><circle cx='20' cy='3.25' r='.5' style='fill:%23fff'/><circle cx='9.25' cy='10.75' r='.5' style='fill:%23fff'/><circle cx='12.5' cy='7.5' r='.5' style='fill:%23fff'/><circle cx='11.75' cy='11.25' r='.75' style='fill:%23ecc94b'/><circle cx='15.5' cy='4.5' r='.5' style='fill:%23fff'/><circle cx='1.5' cy='18.5' r='.5' style='fill:%23fff'/><circle cx='7' cy='16' r='.5' style='fill:%23fff'/><circle cx='13.5' cy='9.75' r='.5' style='fill:%23fff'/><circle cx='18.25' cy='5' r='.5' style='fill:%23fff'/><circle cx='7.75' cy='12.25' r='.5' style='fill:%23fff'/><circle cx='11' cy='9' r='.5' style='fill:%23fff'/><circle cx='18.5' cy='1.5' r='.5' style='fill:%23fff'/><circle cx='4.5' cy='15.5' r='.5' style='fill:%23fff'/><circle cx='10' cy='13' r='.5' style='fill:%23fff'/><circle cx='2.75' cy='.25' r='.5' style='fill:%23fff'/><circle cx='5.75' cy='17.25' r='.5' style='fill:%23fff'/><circle cx='16.5' cy='6.75' r='.5' style='fill:%23fff'/><circle cx='6.25' cy='13.75' r='.5' style='fill:%23fff'/><circle cx='14' cy='6' r='.5' style='fill:%23fff'/><circle cy='20' r='.75' style='fill:%23ecc94b'/><circle cx='20' r='.75' style='fill:%23ecc94b'/><circle cx='20' cy='20' r='.75' style='fill:%23ecc94b'/><circle r='.75' style='fill:%23ecc94b'/><circle cx='1.5' cy='1.75' r='.5' style='fill:%23fff'/><circle cx='4.25' cy='18.75' r='.5' style='fill:%23fff'/><circle cy='3.25' r='.5' style='fill:%23fff'/><circle cx='2.75' cy='20.25' r='.5' style='fill:%23fff'/></g></svg>");
	background-size: 80px 80px;
	background-repeat: repeat;
	background-color: #438ba8;
	color: #fff;
	display: flex;
	flex-flow: column;
	min-height: 100vh;
}

a { 
	color: rgba(236, 201, 75,1);
	text-decoration: none;
}
	a:hover {
		color: #fff;
		background-color: var(--back);
	}
.url {
	word-wrap: break-word;
	overflow-wrap: break-word;
}
/*---------------------------------*/

/*---------------------------------*/
.sitename {
	margin: 0;
	padding: 1rem 0;
	background-color: var(--shiro08);
	-webkit-backdrop-filter: blur(5px);
	backdrop-filter: blur(5px);
	color: var(--back);
}
h1 {
	margin: 0 auto;
	padding: 0 0.4em;
	max-width: 1200px;
}
	h1 .sitename-link {
		font-size: 1.2rem;
		color: var(--back);
		font-family: 'Mochiy Pop One', sans-serif;
	}
		h1 .sitename-link:hover {
			color: var(--yel);
			background-color: rgba(255, 255, 255, 0);
		}
	.subtitle {
		display: inline-block;
		font-size: 0.7rem;
	}
/* サイト概要 */
.description {
	display: block;
	margin: 0 auto;
	padding: 0 1em;
	max-width: 800px;
	font-size: 0.8em;
}

/*-------------------------------------------------------*/
/* メニュー部分 */
#g-nav{
    position:fixed;
    z-index: 999;
	top:0;
    right: -120%;
	width:100%;
    height: 100lvh;
	background-color: rgba(22, 94, 131, 0.6);
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
	transition: all 0.6s;
}

/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive{
    right: 0;
}

/* 縦スクロール */
#g-nav.panelactive #g-nav-list{
	position: fixed;
	z-index: 999; 
	width: 100%;
	height: 100lvh;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}

/*---------------------------------*/
/* メニューボタン */
.openbtn{
	position:fixed;
	z-index: 9999;
	bottom:10px;
	right: 10px;
	cursor: pointer;
	width: 50px;
	height:50px;
	background-color: var(--shiro08);
	-webkit-backdrop-filter: blur(5px);
	backdrop-filter: blur(5px);
	border-radius: 10px;
}
@media  screen  and ( min-width: 1000px ) {
	.openbtn {
		 bottom: 15px;
		 right: 20px;
	}
}

/* ×に変化 */	
.openbtn span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
	background-color: var(--back);
  	width: 45%;
  }

.openbtn span:nth-of-type(1) {
	top:15px;	
}

.openbtn span:nth-of-type(2) {
	top:23px;
}

.openbtn span:nth-of-type(3) {
	top:31px;
}
.openbtn span:nth-of-type(3)::after {
	content:"MENU";
	position: absolute;
	top: 5px;
	left: -2px;
	color: var(--back);
	font-size: 0.6rem;
}
@media  screen  and ( min-width: 1000px ) {
	.openbtn span:nth-of-type(3)::after {
		top: 4px;
		font-size: 0.5rem;
	}
}

.openbtn.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
}

.openbtn.active span:nth-of-type(2) {
	opacity: 0;
}

.openbtn.active span:nth-of-type(3){
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
}
.openbtn.active span:nth-of-type(3)::after {
	content: "close";
    transform: translateY(0) rotate(-45deg);
	top:5px;
	left:4px;
}
/* 固定 */
body.active {
  height: 100%;
  overflow: hidden;
}
.menu-bottom {
	display: block;
	margin-bottom: 10rem;
}
/*-------------------------------------------------------*/
/*---------------------------------*/
/* クイックポスト */
/* 入力フォームの表示領域 */
.postarea {
	margin: 0.7em 0.3em;
	width: 90%;
	max-width: 1000px;
}
.postform {
	margin: auto;
	padding: 1em;
	width: 95%;
}
.postform p {
	margin: 0;
}
@media  screen  and ( min-width: 500px ) {
	.postarea {
			margin: 0.7em auto;
			width: 95%;
	}
	.postform {
		width: 95%;
	}
}
/* 本文入力区画 */

.line-textarea {
}
	/* 本文入力欄 */
	textarea.tegalogpost {
		border: 2px solid var(--shiro08);
		background-color: var(--shiro02);
		font-size: 0.9rem;
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		height: 4.3em;
		border-radius: 5px;
		overflow-wrap: break-word;
		overflow: auto;
	}
		textarea.tegalogpost:focus {
			border: 2px solid var(--ai);
			background-color: var(--shiro09);
			color: #222;
		}

		/* 入力文字数ゼロの際だけ見える薄文字の装飾  */
		textarea.tegalogpost::placeholder { color: var(--shiro05); }
		textarea.tegalogpost:focus::placeholder { color: var(--back); }
	/* 横幅800px以下の環境の場合 */
	@media all and (max-width: 800px) {
		textarea.tegalogpost {
			font-size: 16px;
		}
	}

/* 投稿コントロール部分 */
.line-control {
	margin: 0.25em 0;
	display: block;
}

	/* 投稿ボタン */
	.postbutton {
		background: var(--back);
		padding: 4px 3px;
		color: #fff;
		font-size: 1rem;
		font-weight: bold;
		border: 1px solid #fff;
	}

/* 文字装飾ボタン群 */
	/* 掲載領域全体 */
		.decoBtns {
		 	display: inline-block;
		 	margin-top: 0.5em;
		 }
	/* 全ボタン装飾 */
		.decoBtns input {
			min-width: 30px;
			min-height: 26px;
			margin:1px;
			background-color: var(--back);
			border: 1px solid #fff;
			cursor: pointer;
			border-radius: 3px;
			font-size: 13px;
			color: #fff;
			vertical-align: middle;
		}
	/* 太字:B */
		.decoBtnB {
			font-weight: bold;
		}
	/* 取消線:D */
		.decoBtnD {
			text-decoration: line-through;
			text-decoration-color: var(--ai);
			text-decoration-style: double;
		}
	/* 強調:E */
		.decoBtnE {
			font-weight: bold;
		}
	/* 斜体:I */
		.decoBtnI {
			font-style: italic;
		}
	/* 引用:Q */
		.decoBtnQ {  }
	/* 小さめ:S */
		.decoBtnS {  }
	/* 極小:T */
		.decoBtnT {
			font-size: 11px !important;
		}
	/* 下線:U */
		.decoBtnU {
			text-decoration: underline;
			text-decoration-color: var(--yel);
		}
	/* 文字色:C */
		.decoBtnC {  }
	/* 背景色:M */
		.decoBtnM {  }
	
	/* ※狭い画面用の上書き */
	@media all and (max-width: 480px) {
		.line-textarea {
			display: block;
		}
	}

/* カテゴリ選択チェックボックス群 */
	.catChecks {
		font-size: 0.9em;
		padding-top: 0.5em;
	}
	.catChecks label {
		display: inline-block;
		cursor: pointer;
		margin: 0 0.75em 0 0;
		color: #fff;
	}
	.catChecks label:hover {
		text-decoration: underline;
	}
	.catChecks input {
		min-width:0;
		min-height:0;
		margin-right:0.2em;
	}
/*-------------------------------------------------------*/
/*---------------------------------*/
/* 検索 */
	/* 全文検索 */
	.dotli-search {
		margin: 0 auto;
		padding: 0;
		width: 100%;
		max-width: 750px;
	}
	.searchword {
		font-weight: bold;
		color: var(--yel);
		background: linear-gradient(transparent 60%, var(--ai) 50%);
	}
	/* 検索フォーム */
	.searchbox {
		margin: 1em auto 2em;
		padding: 0 2em;
	}
	/* 検索テキスト入力欄 */
	.queryinput {
		background-color: var(--shiro02);
		border: 2px solid #fff;
		font-size: 1em;
		padding: 0.25em 0.5em;
		width: 40%;
		min-width: 150px;
	}
		.queryinput:focus {
			background-color: var(--shiro09);
			border: 2px solid var(--ai);
		}
	/* 検索ボタン */
	.searchbox .submitbutton {
		display: inline-block;
		background-color: var(--shiro08);
		border: 1px solid var(--shiro08);
		font-size: 1em;
		padding: 0.25em 0.8em;
		margin: 0 2px;
		font-weight: bold;
		color: var(--back);
		border-radius: 10px;
	}
		.searchbox .submitbutton:hover {
			background-color: var(--back);
			color: #fff;
		}
/*---------------------------------*/
/* メニュー　下部　管理画面など */
.management {
	text-align: center;
}
	.management ul {
		list-style: none;
		margin: 0;
		padding: 0;
	}

	/* 管理画面　RSSへのリンク */
	.management ul li.mana-link {
		display: inline-block;
		margin: 0;
		width: 6em;
		height: 2em;
		line-height: 2em;
		text-align: center;
		vertical-align:  top;
		background-color: var(--shiro05);
		border-radius: 15px;
	}
		.management ul li.mana-link a {
			display: block;
			width: 100%;
			height: 100%;
			color: var(--ai);
			border-radius: 15px;
		}
		.management ul li a:hover {
			color: #fff;
		}
/*---------------------------------*/
.nav-area {
	margin: 0 auto;
	padding: 0;
	width: 100%;
	max-width: 750px;
}

/* タイトル共通 */
.nav-title {
	margin: 0 0.7em;
	font-family: 'Original Surfer', cursive;
	font-size: 1.4em;
}

/* カテゴリ */
.nav-cat ul {
	padding-left: 2em;
}
.nav-cat li {
}
.nav-cat li a {
}
	.nav-cat li a:hover {
		color: #438ba8;
		background-color: #fff;
		border-radius: 3px;
	}
/* 月別 */
.datelimitlist {
}
.datelimitsublist {
	padding: 0 0 0 1em;
}
	.datelimitlist .datelimitsublist .datelimit-month {
		display: inline-block;
		margin: 0 0 0.5em 0;
	}
	.datelimit-month {
		margin: 0 0.1em;
	}
	.datelimitlist .datelimitsublist .year {
		display: none;
	}
	/* 日付リスト内の該当件数 */
	.datelimitlist .num {
		color: var(--shiro08);
	}
	.datelistlink:hover {
	}

/* ハッシュタグ  */
.hash-area {
	margin: 0;
	padding: 0;
}
.hashtaglist {
	list-style: none;
	padding: 0 1.5em;
}
.hashtaglist li {
	display: inline-block;
	margin: 3px;
}
	.hashtaglist li::before {
		content: '';
		background-image: url("data:image/svg+xml;utf8,<svg width='100%' height='100%' viewBox='0 0 10 10' xmlns='http://www.w3.org/2000/svg'><path d='M0.826,4.365l0.001,-3.535l3.535,0.001l5.302,5.305l-3.537,3.534l-5.301,-5.305Zm1.061,-2.474c-0.195,0.195 -0.195,0.511 -0,0.707c0.195,0.195 0.512,0.195 0.707,-0c0.195,-0.195 0.195,-0.512 0,-0.707c-0.195,-0.195 -0.512,-0.195 -0.707,-0Z' style='fill:%23ffffff;fill-opacity:.7'/></svg>");
		background-repeat: no-repeat;
		display: inline-block;
		width: 1em;
		height: 1em;
		vertical-align: -10%;
	}
/*---------------------------------*/
/*-------------------------------------------------------*/

/*---------------------------------*/
/* 投稿の限定表示などの表示 */
.dotli-situation {
}
.situation {
	margin: 0.1em 0.7em;
	padding: 0.3em;
}
	.dotli-situation span[class^="situation-"] {
		width: auto;
		background-color: var(--back);
		font-size: 0.9em;
	}
/*---------------------------------*/
/*-------------------------------------------------------*/
/* 日付境界バー */
.dateseparator {
	width: calc( 100% - 3em );
	max-width: 1200px;
	color: #fff;
	margin: 0.5em auto 0;
	padding: 0.2em 0 0.2em 1em;
	background-color: var(--shiro05);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	font-weight: bold;
	border-radius: 10px;
}
.dateseparator a {
	display: block;
	width: 14em;
	margin: auto;
	padding: 3px 10px;
	color: var(--back);
	text-align: center;
}
.dateseparator a:hover {
	background-color: #fff;
	color: var(--back);
	border-radius: 10px;
}

@media screen  and ( min-width: 500px ){
	.dateseparator a {
		display: inline-block;
		margin: 0 0 2px 4px;
		font-size: 0.9em;
	}
}

/*---------------------------------*/
/* 投稿本文 */
main {
	flex: 1;
	width: 100%;
	max-width: 1250px;
	margin: auto;
}

/* 投稿記事 */
.dot-box {
	border: 5px solid #fff;
	border-image-source: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' width='245' height='245'><path d='M230.086 923.971a47.404 47.404 0 0 0-7.74 26.029H72.654c0-26.301-21.353-47.654-47.654-47.654V752.654a47.404 47.404 0 0 0 26.029-7.74C44.822 744.185 40 738.901 40 732.5c0-6.899 5.601-12.5 12.5-12.5 6.401 0 11.685 4.822 12.414 11.029A47.404 47.404 0 0 0 72.654 705h149.692c0 26.301 21.353 47.654 47.654 47.654v149.692a47.404 47.404 0 0 0-26.029 7.74c6.207.729 11.029 6.013 11.029 12.414 0 6.899-5.601 12.5-12.5 12.5-6.401 0-11.685-4.822-12.414-11.029ZM30 898c25.94 0 47 21.06 47 47h141c0-25.94 21.06-47 47-47V757c-25.94 0-47-21.06-47-47H77c0 25.94-21.06 47-47 47v141Zm5-158c2.76 0 5 2.24 5 5s-2.24 5-5 5-5-2.24-5-5 2.24-5 5-5Zm225 175c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5ZM65 710c2.76 0 5 2.24 5 5s-2.24 5-5 5-5-2.24-5-5 2.24-5 5-5Zm165 235c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5Z' style='fill:%23ecc94b' transform='translate(-25 -705)'/><path d='M230 997c-12.142 0-22-7.617-22-17h-66c0 9.383-9.858 17-22 17v51c12.142 0 22 7.62 22 17h66c0-9.38 9.858-17 22-17v-51Z' style='fill:%23438ba8;fill-opacity:.9' transform='matrix(2.13636 0 0 2.76471 -251.364 -2704.41)'/></svg>");
	border-image-slice: 60 fill;
	border-image-width: 30px;
	border-image-repeat: repeat;
	margin: 0.5em auto 2em;
	padding: 30px 15px;
	color: #fff;
	width: 82%;
	max-width: 650px;
}
@media  screen  and ( min-width: 900px ) {
	.dot-box {
		border: 5px solid #fff;
		border-image-source: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' width='245' height='245'><path d='M230.086 923.971a47.404 47.404 0 0 0-7.74 26.029H72.654c0-26.301-21.353-47.654-47.654-47.654V752.654a47.404 47.404 0 0 0 26.029-7.74C44.822 744.185 40 738.901 40 732.5c0-6.899 5.601-12.5 12.5-12.5 6.401 0 11.685 4.822 12.414 11.029A47.404 47.404 0 0 0 72.654 705h149.692c0 26.301 21.353 47.654 47.654 47.654v149.692a47.404 47.404 0 0 0-26.029 7.74c6.207.729 11.029 6.013 11.029 12.414 0 6.899-5.601 12.5-12.5 12.5-6.401 0-11.685-4.822-12.414-11.029ZM30 898c25.94 0 47 21.06 47 47h141c0-25.94 21.06-47 47-47V757c-25.94 0-47-21.06-47-47H77c0 25.94-21.06 47-47 47v141Zm5-158c2.76 0 5 2.24 5 5s-2.24 5-5 5-5-2.24-5-5 2.24-5 5-5Zm225 175c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5ZM65 710c2.76 0 5 2.24 5 5s-2.24 5-5 5-5-2.24-5-5 2.24-5 5-5Zm165 235c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5Z' style='fill:%23ecc94b' transform='translate(-25 -705)'/><path d='M230 997c-12.142 0-22-7.617-22-17h-66c0 9.383-9.858 17-22 17v51c12.142 0 22 7.62 22 17h66c0-9.38 9.858-17 22-17v-51Z' style='fill:%23438ba8;fill-opacity:.9' transform='matrix(2.13636 0 0 2.76471 -251.364 -2704.41)'/></svg>");
		border-image-slice: 60 fill;
		border-image-width: 60px;
		border-image-repeat: repeat;
		padding: 50px 40px;
		color: #fff;
		width: 85%;
		max-width: 900px;
	}
}/* @media 最後 */

/* 投稿記事　カテゴリ */
.text-line {
	display: flex;
	font-family: 'Mochiy Pop One', sans-serif;
	align-items: center;
}
.text-line::before, .text-line::after {
	content: "";
	flex-grow: 1;
	height: 1px;
	background: var(--yel);
	margin:0 1.5em;
}
/*---------------------------------*/
/* 投稿記事　下部 */
.comment-bottom {
	margin: 15px 0 0 0;
	border-top: 1px solid var(--yel);
	font-size: 0.8em;
	text-align: right;
}
	.comment-bottom ul {
		margin: 0.3em 1em 0 0;
	}
	.comment-bottom li {
		display: inline-block;
		margin: 0 0.1em;
	}

/*---------------------------------*/
/* 埋め込み画像 */
.embeddedpictbox {
	margin: 2px;
	padding: 0;
	display: inline-table;
	border-collapse: collapse;
	vertical-align: top;
}
	.embeddedpictbox img {
		vertical-align: middle;
	}
	.imagelink {
		display: inline-block;
		line-height: 1;
		vertical-align: inherit;
	}
.embeddedimage {
	width: 150px;
	height: 150px;
	object-fit: cover;
}
.embeddedpictbox figcaption {
	display: table-caption;
	caption-side: bottom;
	padding: 4px;
	color: #fff;
	font-size: 0.7em;
	font-weight: bold;
	text-align: center;
	background-color: var(--ai);
}
	.embeddedpictbox figcaption:empty {
		display: none;
	}

figure.nsfw {
	overflow: hidden;
}
.imagelink.nsfw {
	overflow: hidden;
}
img.nsfw {
	filter: blur( 6px );
}
/*---------------------------------*/
/* 埋め込み動画 */
@media all and ( max-width: 900px ) {
/* 小型モバイル環境のみ */
	.embeddedmovie {
		display: inline-block;
		max-width: 100%;
		width: auto;
		height: auto;
	}
}
/*---------------------------------*/
/* 埋め込みTweet */
blockquote.twitter-tweet {
	background-color: var(--shiro05);
	border: 1px dashed var(--back);
	border-radius: 9px;
	margin: 0.3em 0;
	padding: 1em;
	font-size: 0.95em;
	color: #999;
	text-shadow: 1px 1px 1px #fff;
}

/*---------------------------------*/
/*---------------------------------*/
/* 続きを読む */
/* 共通 */
.readmorebutton {
	display: inline-block;
	margin: 0 2px;
	border: 1px solid var(--yel);
	border-radius: 10px;
}
	.readmorebutton:link, .readmorebutton:visited {
		color: var(--yel);
	}
	.readmorebutton:hover {
		background-color: #fff;
		color: var(--back);
		border: 1px solid #fff;
	}
/* ｢続きを読む｣のみ */
.readmorebutton.readmoreopen {
	margin: auto;
	padding: 0.2em 1em;
	font-size: 0.9em;
}
/* ｢畳む｣のみ */
.readmorebutton.readmoreclose {
	padding: 0.2em 0.8em;
	font-size: 0.8em;
}
/*---------------------------------*/
/* 鍵付き記事　入力フォーム */
.passkeyform {
	display: block;
	margin: 0 auto;
	padding: 0.6em;
	border: 1px solid var(--ai);
	background-color: var(--shiro02);;
}

/* 鍵違いエラーの表示 */
	.passkeyerror {
		display: block;
		color: var(--ai);
		line-height: 1;
		margin: 0 0 0.5em 0;
		padding: 0.33em 0.25em;
	}

/* 入力フォーム枠 */
	.passkeybox {
		display: block;
	}
/* 入力欄前のガイド文 */
		.passkeyguide {
			margin-right: 0.1em;
			color: #fff;
		}
/* 鍵入力欄 */
		.passkeyinput {
			width: 90%;
			margin: 0.3em 0 0.2em;
			padding: 0.25em 0.5em;
			font-size: 1em;
			background-color: var(--shiro02);
			border: 2px solid #fff;
		}
			.passkeyinput:focus {
				background-color: #fff;
				border: 2px solid var(--ai);
			}
		
		.passkeyinput::placeholder { color: var(--back); }

/* 送信ボタン */

.passkeysubmit {
	background-color: #fff;
	border: 1px solid #fff;
	border-radius: 10px;
	font-size: 1em;
	padding: 0.25em 0.67em;
	margin: 0;
	font-weight: bold;
	color: var(--back);
	display: inline-block;
}
	.passkeysubmit:hover {
		background-color: var(--back);
		border: 1px solid var(--back);
		color: #fff;
	}

/*---------------------------------*/
/*-------------------------------------------------------*/
/* ユーティリティリンク群 */
.utilitylinks {
	margin: 0.5em auto;
	padding: 1em;
	width: 80%;
	max-width: 600px;
	background-color: rgba(22, 94, 131, 0.3);
	-webkit-backdrop-filter: blur(15px);
	backdrop-filter: blur(15px);
	border: 1px solid var(--yel);
	border-radius: 10px;
}
	.utilitylinks ul {
		margin: 0.4em;
		padding: 0 0.6em;
		font-size: 0.9rem;
		list-style: none;
	}
	.utilitylinks ul ul {
		list-style-type: square;
		padding: 0 0.2em;
	}
	.utilitylinks ul ul li::marker {
		color: var(--yel);
	}
		.revlink {
			display: inline-block;
		}

/*---------------------------------*/
/*-------------------------------------------------------*/
/* ページナビ */
.pagenavi {
	text-align: center;
	margin: 5px 0;
	font-family: 'Mochiy Pop One', sans-serif;
}

.pagelinks {
	margin: 0.15em;
	padding 0.2em;
}

/* ページ移動リンクの文字 */
.pagelinks a {
	color: var(--yel);
	background-color: var(--back);
}
	.pagelinks a:hover {
	color: #fff;
}

.pagenums a.pagenumlink {
	margin: 0px 2px 0px 2px;
	padding: 0.2em 0.5em;
	font-size: 1em;
	background-color: var(--back);
	border-radius: 50%;
}
/* 現在のページ番号の装飾 */
a.pagenumhere {
	text-decoration: none;
	border: 1pt solid var(--yel);
	border-radius: 50%;
}
/* ページ番号リンクにマウスが載った際の装飾 */
a.pagenumlink:hover {
	text-decoration: none;
	background-color: var(--shiro02);
	color: #fff;
	border-radius: 50%;
}

.pagehome {
	margin: 0.15em;
	font-weight: bold;
}
	.pagehome a {
		background-color: var(--back);
	}

/*-------------------------------------------------------*/
/* フッター */
footer {
	width: 100%;
	padding: 5px 0;
	background-color: rgba(22, 94, 131, 0.6);
	-webkit-backdrop-filter: blur(5px);
	backdrop-filter: blur(5px);
}

/* フリースペース */
.freespace {
	margin: 0.5em auto 1em;
	max-width: 800px;
	padding: 0 1em;
}
.free-title{
	position: relative;
	font-family: 'Mochiy Pop One', sans-serif;
	font-size: 1.1em;
	margin: 0 0 0.2em 0;
	padding: 0 0 0 15px;
	overflow: hidden;
}
	.free-title::before {
		position: absolute;
		content: "";
		background-color: var(--shiro05);
		border-radius: 50%;
		margin: 0;
		top: 50%;
		left: 0;
		transform: translateY(-50%);
		width: 7px;
		height: 7px;
	}
	.free-title::after {
		position: absolute;
		content: "";
		background-color: var(--shiro08);
		border-radius: 50%;
		margin: 0 0 0 10px;
		top: 50%;
		transform: translateY(-50%);
		width: 7px;
		height: 7px;
		 box-shadow: 20px 0px 0px var(--shiro05),
		 	40px 0px 0px var(--shiro02),
		 	60px 0px 0px var(--shiro08),
		 	80px 0px 0px var(--shiro09),
		 	100px 0px 0px var(--shiro08),
		 	120px 0px 0px var(--shiro05),
		 	140px 0px 0px var(--shiro02);
	}
/* フリースペース　本文 */
.dotli-freecom {
	margin: 0 0.3em;
}
/*---------------------------------*/
/* 表記 */
.dotli-power {
	padding: 0 0 8em 0;
	font-family: 'Mochiy Pop One', sans-serif;
	font-size: 0.8em;
	text-align: center;
}

.poweredby {
	list-style: none;
	margin: 0;
	padding: 0;
}
	.poweredby li {
		display: inline-block;
	}

/*-------------------------------------------------------*/
/* 文字装飾 */
/* B:太字(Bold) */
.decorationB {
	font-weight: bold;
}
/* D:削除(Delete) */
.decorationD {
	text-decoration-line: line-through;
	text-decoration-color: var(--shiro05);
	color: var(--shiro05);
}
/* E:強調(Emphasis) */
.decorationE {
	font-style: normal;
	font-family: 'Mochiy Pop One', sans-serif;
	text-emphasis: filled sesame var(--yel);
}
/* I:斜体(Italic) */
.decorationI {
	font-style: italic;
}
/* 引用 */
.decorationQ {
	position: relative;
	display: block;
    	margin: 1em 0.5em 1em 1em;
    	padding: 1.5em 1.2em 1.5em 2em;
    	background-color: var(--shiro05);
    	color: var(--ai);
    	font-size: 0.9em;
    	border-radius: 5px;
}
	.decorationQ::before {
		position: absolute;
		content: "";
		background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 20 20'><path d='M127.085 1004.67c.768-.62 1.697-.99 2.698-.99 2.639 0 4.782 2.54 4.782 5.66s-2.143 5.66-4.782 5.66c-2.64 0-4.783-2.54-4.783-5.66 0-.46.047-.91.136-1.35.008-.34.028-.71.063-1.08.08-.88.215-1.73.396-2.19.32-.81.891-1.56 1.61-2.2.988-.89 2.203-1.58 3.172-2.03a.292.292 0 0 1 .401.13c.077.14.022.33-.123.41-.842.53-1.885 1.33-2.692 2.27-.369.43-.676.89-.878 1.37Zm10.435 0c.768-.62 1.697-.99 2.697-.99 2.64 0 4.783 2.54 4.783 5.66s-2.143 5.66-4.783 5.66c-2.639 0-4.782-2.54-4.782-5.66 0-.46.047-.91.136-1.35.008-.34.028-.71.063-1.08.08-.88.215-1.73.396-2.19.319-.81.891-1.56 1.61-2.2.988-.89 2.203-1.58 3.172-2.03a.292.292 0 0 1 .401.13c.077.14.022.33-.123.41-.842.53-1.885 1.33-2.693 2.27-.368.43-.676.89-.877 1.37Z' style='fill:%23165e83' transform='matrix(1 0 0 1.3751 -125 -1375.729)'/></svg>");
		background-repeat: no-repeat;
		top: 5px;
		left: 5px;
		width: 18px;
		height: 18px;
	}
	.decorationQ::after{
		position: absolute;
		content: "";
		background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2' viewBox='0 0 20 20'><path d='M127.085 1004.67c.768-.62 1.697-.99 2.698-.99 2.639 0 4.782 2.54 4.782 5.66s-2.143 5.66-4.782 5.66c-2.64 0-4.783-2.54-4.783-5.66 0-.46.047-.91.136-1.35.008-.34.028-.71.063-1.08.08-.88.215-1.73.396-2.19.32-.81.891-1.56 1.61-2.2.988-.89 2.203-1.58 3.172-2.03a.292.292 0 0 1 .401.13c.077.14.022.33-.123.41-.842.53-1.885 1.33-2.692 2.27-.369.43-.676.89-.878 1.37Zm10.435 0c.768-.62 1.697-.99 2.697-.99 2.64 0 4.783 2.54 4.783 5.66s-2.143 5.66-4.783 5.66c-2.639 0-4.782-2.54-4.782-5.66 0-.46.047-.91.136-1.35.008-.34.028-.71.063-1.08.08-.88.215-1.73.396-2.19.319-.81.891-1.56 1.61-2.2.988-.89 2.203-1.58 3.172-2.03a.292.292 0 0 1 .401.13c.077.14.022.33-.123.41-.842.53-1.885 1.33-2.693 2.27-.368.43-.676.89-.877 1.37Z' style='fill:%23165e83' transform='matrix(1 0 0 1.3751 -125 -1375.729)'/></svg>");
		background-repeat: no-repeat;
		right: 5px;
		bottom: 5px;
		transform: scale(-1, -1);
		width: 18px;
		height: 18px;
	}
/* S:小文字(Small) */
.decorationS {
	font-size: 0.8em;
}
/* T:極小文字(Tiny) */
.decorationT {
	font-size: 0.6em;
}
/* U:下線(Underline) */
.decorationU {
	text-decoration-line: underline;
	text-decoration-style: wavy;
	text-decoration-color: var(--ai);
}
/*---------------------------------*/
/* 自由装飾 */
/* 引用元リンク */
.deco-quosou {
	display: block;
	font-size: 0.8em;
	text-align: right;
	padding-right: 1em;
}
	.deco-quosou::before {
		content: '──';
		color: var(--back);
		padding-right: 2px;
	}
	.deco-quosou a {
		color: var(--ai);
	}
		.deco-quosou a:hover {
			color: var(--back);
			background-color: var(--shiro05);
		}
/* 見出し01 */
.deco-headline01 {
	display: block;
	position: relative;
	font-family: 'Mochiy Pop One', sans-serif;
	font-size: 1.4em;
	margin: 1em 0 0.2em  0;
	padding: 0 0 0 1.3em;
	border-bottom: 1px solid var(--shiro05);
}
	.deco-headline01::before, .deco-headline01::after {
		content: "";
		position: absolute;
		margin: auto;
		border-radius: 50%;
	}
	.deco-headline01::before {
		width: 16px;
		height: 16px;
		top: 0px;
		left: 12px;
		background-color: var(--shiro05);
	}
	.deco-headline01::after {
		width: 10px;
		height: 10px;
		top: 19px;
		left: 4px;
		background-color: var(--shiro08);
	}
	.deco-headline01 + br {
		display: none;
	}
/*-------------------------------------------------------*/
/* TOPへ戻る */
#page-top {
	display: flex;
	position: fixed;
	right: 10px;
	bottom: 65px;
	z-index: 10;
	justify-content:center;
	align-items:center;
	background: var(--shiro08);
	-webkit-backdrop-filter: blur(5px);
	backdrop-filter: blur(5px);
	border-bottom: 0;
	border-radius: 10px;
	width: 50px;
	height: 50px;
	color: var(--back);
	text-align: center;
	text-transform: uppercase; 
	text-decoration: none;
	font-size:0.6rem;
	transition:all 0.4s;
}
@media  screen  and ( min-width: 1000px ) {
	#page-top {
		right: 20px;
		 bottom: 70px;
	}
}
	#page-top:hover{
		background: var(--back);
		color: #fff;
	}
