@charset "utf-8";
/*
Theme Name: Online Haiku
Theme URI: https://dsgn.jp/
Description: オンライン句集
Version: 0.001
Author: Hasegawa Design Office
*/

/*********************************************************************/
:root {
	--my-site-color: #D97C7C;/*　メインカラー */
}

/*********************************************************************/
/* clearfix */
.clearfix::after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}
.clearfix {
    clear: both;
}

/*********************************************************************/
/* Fonts */
@font-face {
    font-family: 'LigatureSymbols';
    src: url('fonts/LigatureSymbols-2.11.eot');
    src: url('fonts/LigatureSymbols-2.11.eot?#iefix') format('embedded-opentype'),
	url('fonts/LigatureSymbols-2.11.woff') format('woff'),
	url('fonts/LigatureSymbols-2.11.ttf') format('truetype'),
	url('fonts/LigatureSymbols-2.11.svg#LigatureSymbols') format('svg');
    src: url('fonts/LigatureSymbols-2.11.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

.lsf, .lsf-icon:before {
    font-family: 'LigatureSymbols';
    -webkit-text-rendering: optimizeLegibility;
    -moz-text-rendering: optimizeLegibility;
    -ms-text-rendering: optimizeLegibility;
    -o-text-rendering: optimizeLegibility;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    font-smoothing: antialiased;
    font-size: 1.5em;
}
.lsf-icon::before {
    content: attr(title);
    margin-right: 0.3em;
}

.smartphone, .smartphone-icon:before {
}
.smartphone-icon::before {
}

/*///////////////////////////////////////////////////////////////////////
 Base Tags
///////////////////////////////////////////////////////////////////////*/

html, body {
    height: 100%;
    font-size: 11pt;
}
body, pre {
    font-family: 'EB Garamond', “Times New Roman”, “游明朝”, YuMincho, “ヒラギノ明朝 ProN W3”, “Hiragino Mincho ProN”, “メイリオ”, Meiryo, serif;
	font-weight: 400;
	font-style: normal;
}
body {
	position: relative;
    margin: 0px;
    padding: 0px;
    background: url("assets/img/paper.png");
	background-size: 10%;
    color: #333;
    line-height: 1.69em;
    word-wrap: break-word;
	text-align: justify;
	text-justify: inter-ideograph;
}

* {
	box-sizing: border-box;
	transition: .5s;
}
*:hover {
	transition: .5s;
}

P { 
	font-size: 1em; 
	line-height: 1.69em;
}


u {
	text-decoration: underline; /* デフォルトと同じ */
	text-decoration-color: var(--my-site-color); /* 下線の色を赤に */
	text-decoration-style: wavy; /* 波線に */
	text-decoration-thickness: 1px; /* 線の太さ */
	text-underline-offset: .2em;
}

/* -- img -- */
img {
    margin: 0px;
    padding: 0px;
    border-style: none;
}
/* -- a -- */
a {
    color: #000;
    text-decoration: none;
}
a:hover {
    text-decoration: none;
    color: var(--my-site-color);
}

/* -- h -- */
H1, H2, H3 {
	font-feature-settings: "palt";
}

UL {
	padding-left: 0;
}

LI {
	list-style: none;
	margin-bottom: .5em;
}

table {
	max-width: 95vw!important;
}

tr, th, td {
	padding: .5em 1em;
	border: 1px solid #CCC;
}

caption span {
	font-size: .8em;
	font-weight: 300;
}

/*///////////////////////////////////////////////////////////////////////
 汎用パーツ 
///////////////////////////////////////////////////////////////////////*/

li .lsf-icon.logout:before  {
	content: '\E087';
    font-size: .9em;
}

a.lsf-icon.home:before  {
	content: '\E00c';
    font-size: .9em;
}

/*///////////////////////////////////////////////////////////////////////
 Layout 
///////////////////////////////////////////////////////////////////////*/

/*#wrapper,header,#wrapper,header #logo,header .wrapper, header nav  {
    border: 1px solid blue;
}*/

/*全体を包む*/
#wrapper {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}
/*mainを包む*/
section#contents {
	position: relative;
}

/* 紙面 */
.content {
	display: flex;
	justify-content: center;
	flex-direction: column;
	align-items: center;
	flex-wrap: wrap;
	width: 100%;
	height: 100vh;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
/* 版面 */
.live-area--wrapper {
	width:fit-content;
	max-width: 90vw;
	height: 70vh;
	overflow: scroll;

}

.live-area {
}

/*///////////////////////////////////////////////////////////////////////
俳句表示 
///////////////////////////////////////////////////////////////////////*/

#haiku-box {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	height: 100vh;
	margin: auto;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

.anim .haiku-box--group {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	flex-wrap: wrap;
	width: fit-content;
	height: 70vh;
	margin-top: -2em;
}

.anim .haiku-box--haiku {
	font-size: 1.5em;
	transition: all 0s ease;
	opacity: 0;
}

.anim.show .haiku-box--haiku {
	opacity: 1;
	display: inline-block;
	min-height: 15em;
	text-align-last:justify;
}

.anim .haiku-box--haiku span {
	opacity: 0;
}

.anim.show .haiku-box--haiku span,
.anim.show .haiku-box--text,
.anim.show .haiku-box--time
{
	-moz-animation-name: fadein;
	-moz-animation-duration: 2s;
	-moz-animation-timing-function: ease-in-out;
	-moz-animation-iteration-count: 1;
	-moz-animation-fill-mode: forwards;
	-webkit-animation-name: fadein;
	-webkit-animation-duration: 2s;
	-webkit-animation-timing-function: ease-in-out;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-fill-mode: forwards;
	animation-name: fadein;
	animation-duration: 2s;
	animation-timing-function: ease-in-out;
	animation-iteration-count: 1;
	animation-fill-mode: forwards;
	filter: blur(1px);
}

.anim.show .haiku-box--haiku span.top {
	-webkit-animation-delay: 1s;
	-moz-animation-delay: 1s;
	animation-delay: 1s;
}
.anim.show .haiku-box--haiku span.middle {
	-webkit-animation-delay: 3s;
	-moz-animation-delay: 3s;
	animation-delay: 3s;
}
.anim.show .haiku-box--haiku span.last {
	-webkit-animation-delay: 5s;
	-moz-animation-delay: 5s;
	animation-delay: 5s;
}

.anim .haiku-box--text,
.anim .haiku-box--time {
	transition: all 0s ease;
	opacity: 0;
}

.anim .haiku-box--text {
	margin-top: 50%;
}

.anim.show .haiku-box--text,
.anim.show .haiku-box--time {
	-webkit-animation-delay: 7s;
	-moz-animation-delay: 7s;
	animation-delay: 7s;
}

.anim .haiku-box--time {
	height: 100%;
	text-align: right;
	font-size: .8em;
	transition: all 0s ease;
	opacity: 0;
}

.ruby {
  position: relative;
  display: inline-block;
}

.ruby::after {
  content: attr(data-ruby);
  position: absolute;
  top: 0em;
  right: -1.75em;
  font-size: 0.5em;
}

@keyframes fadein {
	100% {
		opacity: 1;
		filter: blur(0);
	}
}


/**********************************************************************
 header footer
***********************************************************************/
header,
footer {
	mix-blend-mode: multiply;
}

header {
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 1000;
	padding: 1em;
	/*background-color: var(--my-primary-color);*/
}

/*
header #logo {
	background-image: url("parts/img/logo-simbol.svg");
}

header #logo {
	width: 35px;
	height: 35px;
	margin: 1em 0;
}
*/
footer {
	position: fixed;
	bottom: 0;
	padding-left: 1em;
}

/*///////////////////////////////////////////////////////////////////////
トップページ 
///////////////////////////////////////////////////////////////////////*/

/*　表紙　*/
#cover,
#cover div {
	display: flex;
	justify-content: center;
	flex-direction: column;
	mix-blend-mode: multiply;
}

#cover{
	align-items: center;
	width: 100%;
	height: 110vh;
	background-color: #EEE;
}

#cover div{
	align-items: flex-start;
	flex-direction: column-reverse;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	margin-top: -35vh;
}

#cover div H1,
#cover div H2 {
	margin: 0;
	padding: 0;
}

#cover div H1 {
	font-size: 1.8em;
}

#cover div H2 {
	font-size: 1em;
	margin-left: 1em;
}

/*　目次　*/
#contents div H3 {
	font-size: 1em;
	font-weight: normal;
	margin-top: 1em;
}

#contents div ul {
	padding: 0;
	height: 90%;
	margin-right: 2em;
}

#contents div ul li {
	display: inline-flex;
	justify-content: space-between;
	height: 100%;
}

#contents div ul li.parent {
	margin-right: 1em;
}

#contents div ul li.child {
	padding-top: 1em;
}

#contents div ul li > span {
	
}

#contents div ul li span.dotline {
	font-size: .5em;
	margin: 1em auto;
}
#contents div ul li span.count {
	display: inline-block;
	transform: rotate(-90deg);
	font-family: 'EB Garamond', "Times New Roman", Times, "serif";
}

/*///////////////////////////////////////////////////////////////////////
アーカイブ
///////////////////////////////////////////////////////////////////////*/

#archive H2 {
	margin-top: 3em;
	margin-left: 3em;
}

#archive li {
	display: flex;
	justify-content: space-between;
	height: 100%;
	margin-left: 4em;
}

#archive li > div,
#archive li a {
	display: inline-block;
	min-height: 15em;
	font-size: 1.2em;
	text-align-last:justify;
}

#archive li time {
	font-size: .8em;
}
