@charset "Shift_JIS";

.chat_board__wrap{
	border: 1px solid #ccc;
	border-radius: 20px;
	background-color: #fff;
	padding: 10px;
	background-color: lightsteelblue;
	color: #333;
	box-shadow: 1px 1px 2px 0px rgb(0 0 0 / 50%) inset;
}
.chat_board__wrap > *{
	clear:both;
}
.chat_board__title {
	text-align: center;
	background-color: #fff;
	height: 36px;
	font-weight: bold;
	font-size: 14px;
	border-radius: 10px;
	display: grid;
	place-items: center;
}
.chat_board__block{
	display: grid;
	grid-template-columns: 1fr;
	grid-template-areas: "name"
						 "msg"
						 "date";
	max-width: 80%;
	margin:10px 10px 0 10px;
}

.chat_board__block > div:nth-child(3){ padding:10px; border-radius:10px; }

.chat_board__block > div:nth-child(1) { grid-area: name; }
.chat_board__block > div:nth-child(2) { grid-area: date; }
.chat_board__block > div:nth-child(3) { grid-area: msg; z-index: 2; }
.chat_board__block > div:nth-child(3) > a { text-decoration: underline; }

.chat_board__block.chat_block__user > div:nth-child(1){ text-align: right; }
.chat_board__block.chat_block__user > div:nth-child(2){ text-align: left; }
.chat_board__block.chat_block__user > div:nth-child(3){ background-color: yellow; }

.chat_board__block.chat_block__shop > div:nth-child(1){ text-align: left; }
.chat_board__block.chat_block__shop > div:nth-child(2){ text-align: right; }
.chat_board__block.chat_block__shop > div:nth-child(3){ background-color: white; }

.chat_board__block.chat_block__user{ float:right; }
.chat_board__block.chat_block__shop{ float:left; }

.chat_board__block:before {
	content: "";
	display: block;
	width: 25px;
	height: 25px;
	grid-area: msg;
	border-bottom-width: 10px;
	border-bottom-style: solid;
	border-radius: 50%;
	z-index: 1;
}
.chat_board__block.chat_block__user:before { margin:0 0 auto auto; transform: translate(10px, -10px); border-bottom-color: yellow; }
.chat_board__block.chat_block__shop:before { margin:0 auto auto 0; transform: translate(-10px, -10px); border-bottom-color: white; }

.chat_board__block .chat_board__block_title{
	margin-bottom: 8px;
	font-weight: bold;
	font-size: 1.2em;
}
.chat_board__block.chat_block__user .chat_board__block_title{
	display: none;
}

.contact_board__new_mark{
	font-size: 0.9em;
	color: #f00;
	font-weight: bold;
	margin-left: 0.5em;
}

.chat_board__reload_block {
	display: none;
	gap: 10px;
	margin: 40px 0;
	float: left;
	width: 100%;
	place-items: center;
	font-size: 15px;
}
.chat_board__reload_block.reload_block__active{
	display: grid;
}
.chat_board__reload_block .reload_btn{ display: grid; place-items: center; grid-template-columns:1fr; grid-template-areas:"icon""span"; }
.chat_board__reload_block .reload_btn i { font-size:20px; grid-area: icon; }
.chat_board__reload_block .reload_btn span { font-size:12px; grid-area: span }
.chat_board__reload_block .reload_text {
	animation:0.5s ease-out 1s infinite alternate forwards running reload_flash;
	font-weight: bold;
	text-align: center;
	color: #f00;
}
@keyframes reload_flash{
	0%{
		opacity:1;
	}
	100%{
		opacity:0.3;
	}
}


.chat_board__notice > p{ word-break: keep-all; max-width:600px; margin: auto; }
.chat_board__notice {
	text-align: center;
	border: 2px solid var(--mainthema-background-color);
	padding: 20px 5px;
	margin-top: 0px;
	display: grid;
	place-items: start center;
}
.chat_board__notice .chat_board__notice_title {
	grid-area: 1/1/2/2;
	transform: translateY(-31px);
	background-color: #fff;
	font-size: 1.3em;
	font-weight: bold;
	color: var(--mainthema-background-color);
	padding: 0 5px;
	display: flex;
	place-items: center;
}
.chat_board__notice .chat_board__notice_title > i {
	font-size: 23px;
	margin-right: 5px;
}
.chat_board__notice .chat_board__notice_text {
	grid-area: 1/1/2/2;
	font-size: 1.2em;
}

.chat_board__new_notice{
	margin-top: 40px;
}
.chat_board__new_notice a{
	display: grid;
	width:230px;
	margin: auto;
	font-weight: bold;
	font-size: 1.4em;
	color: red;
	text-align: center;
	text-decoration: none;
	place-items:center;
	transition-property: transform, color;
}
.chat_board__new_notice span{
	text-decoration: underline;
	grid-area:1/1/2/2;
}
.chat_board__new_notice i{
	display: grid;
	place-items: start center;
	height: 50px;
	margin: auto;
	grid-area:2/1/3/2;
}
.chat_board__new_notice i:before,
.chat_board__new_notice i:after {
	content: "\f078";
	font-family: "Font Awesome 5 Free";
	font-size: 2em;
	text-decoration: none;
	grid-area: 1/1/2/2;
	transform: scaleY(0.7) translateY(0px);
	opacity: 0;
}
.chat_board__new_notice i:before{
	-webkit-animation: arrow-move08 2s ease-in-out infinite;
}
.chat_board__new_notice i:after{
	-webkit-animation: arrow-move08 2s 1s ease-in-out infinite;
	animation: arrow-move08 2s 1s ease-in-out infinite;
}
.chat_board__new_notice a:hover {
	color:var(--main-link-hovercolor);
	transform: scale(1.1);
}
.chat_board__new_notice a:hover i:before,
.chat_board__new_notice a:hover i:after {
	border-top-color: var(--main-link-hovercolor);
}
@-webkit-keyframes arrow-move08 {
	0% {
		transform:scaleY(0.7)  translateY(0px);
		opacity: 0;
	}
	60% {
		opacity: 1;
		transform:scaleY(0.7)  translateY(40px);
	}
	100% {
		opacity: 0;
		transform:scaleY(0.7)  translateY(40px);
	}
}
@keyframes arrow-move08 {
	0% {
		transform:scaleY(0.7)  translateY(0px);
		opacity: 0;
	}
	60% {
		opacity: 1;
		transform:scaleY(0.7)  translateY(40px);
	}
	100% {
		opacity: 0;
		transform:scaleY(0.7)  translateY(40px);
	}
}
#ChatBoardNewLine {
	width: 100%;
	height: 100px;
	display: grid;
	place-items: center;
	grid-template-columns: 1fr auto 1fr;
	font-weight: bold;
	font-size: 1.2em;
	margin: auto;
	gap: 20px;
	color: red;
}
#ChatBoardNewLine:before,
#ChatBoardNewLine:after {
	content: "";
	height: 0;
	width: 100%;
	border-top: 2px solid red;
	border-top-style: dotted;
}
.ChatBoardUI_t{
	font-size: 2em;
	font-weight:bold;
	color:red;
}
.ChatBoardUI_p{

}
#ChatBoardUI{
	display:flex;
	place-items: end center;
	gap:5px;
}
#ChatBoardUI > .chatboard_filebtn{
	box-sizing: border-box;
	cursor: pointer;
	width: 60px;
	height: 46px;
	display: grid;
	place-items: center;
	border: 1px solid #ccc;
	flex-grow: 0;
	font-size: 24px;
	line-height: initial;
}
#ChatBoardUI > .chatboard_filebtn > i{
	grid-area: 1/1/2/2;
	transform: translateY(-7px);
}
#ChatBoardUI > .chatboard_filebtn > span{
	font-size: 12px;
	grid-area: 1/1/2/2;
	transform: translateY(12px);
	font-weight: bold;
}
#ChatBoardUI > textarea{
	resize: none;
	line-height: 20px;
	min-height: 26px;
	width: auto;
	flex-grow: 1;
	overflow: hidden;
	overflow-wrap: break-word;
	height: 46px;
	background-color: blanchedalmond;
	max-height: 400px;
}
#ChatBoardUI > a.submit_button{
	width: 50px;
	height: 46px;
	font-size: 1.2em;
	text-decoration: none;
	display: grid;
	place-items: center;
	flex-grow: 0;
	font-weight: bold;
	background-color: var(--main-link-color);
	color: #fff;
	border-radius: 6px;
	box-shadow: 1px 1px 2px rgb(0 0 0 / 50%);
}
#ChatBoardUI_image {
	display: flex;
}
#ChatBoardUI_image a{
	display: block;
	margin-bottom:10px;
}
#ChatBoardUI_image img{
	display: block;
	width: 150px;
}
#chapchPassBlock{
	display: grid;
	grid-template-columns: 130px 1fr;
	margin-bottom: 10px;
	place-items: center start;
	gap: 0px 10px;
}
#chapchPassBlock .chapchpass_image{
	grid-column: 1/2;
	grid-row: 1/3;
	width: 100%;
	height: 100%;
	display: grid;
	place-items: center;
	border: 1px solid #ccc;
	padding: 5px;
}
#chapchPassBlock .chapchpass_aside{
	grid-column: 2/3;
	/* word-break: keep-all; */
}
#chapchPassBlock input {
	grid-column: 2/3;
	max-width: 6em;
	font-size: 20px;
	line-height: initial;
	letter-spacing: 0.2em;
}
#ChatBoard_FormsetSubmit {
	font-size:1.4em;
	margin-top:10px;
}
