@charset "utf-8";

/* ===========================================
  全幅共通CSS
============================================ */
body {
  font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
  font-size: 1rem;
  overflow-y: scroll;
  color: #272727;
  background: #eaeaec;
}

a {
  color: #272727;
}

main {
  margin: min(5vw, 50px) auto;
  width: min(100%, 800px);
  line-height : 1.7;
  padding: 10px min(5vw, 50px);
}


h1 {
    position: relative;
    display: inline-block;
    width: 100%;
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: 0.1rem;
    margin-bottom: 2rem;
    padding: 0.4rem 1.3rem 0.2rem 2rem;
    border-top: 1px solid #272727;
    overflow-wrap: break-word;
    word-break: keep-all;
}

h1::before {
    content: "";
    display: block;
    width: 2rem;
    height: 100%;
    background-color: #272727;
    position: absolute;
    top: 0px;
    left: 0px;
    clip-path: polygon(0px 0px, 0px 100%, 50% 100%, 100% 0px);4
}

span.passkeybox{
  display: block;
  margin-bottom: 0.3rem;
}

span.passkeyguide{
  display: block;
}

input.passkeyinput{
  border: 1px solid #272727;
  vertical-align: bottom;
  width: calc(100% - 3rem);
  height: 2rem;
  background: #fff;
}

input.passkeysubmit {
  border: none;
  background-color: #272727;
  color: #ffffff;
  cursor: pointer;
  font-size: 0.9rem;
  font-weight: bold;
  height: 2rem;
  letter-spacing: 2px;
  padding: 0 0.5rem 0 0.6rem;
  vertical-align: bottom;
}

input.passkeyinput{
  width: calc(100% - 7rem);
}

#poweredby {
  font-size: 0.8rem;
}

.deco-separator {
  display: block;
  border-bottom: 1px dotted gray;
}

.deco-atogaki {
  color: #aaa;
}

/* 仕切り線 */
.deco-sen {
	display: inline-block;
	width: 100%;
	border-bottom: 1px solid  #aaa;
	margin: 1.3rem auto;
	font-size: 0;
}

/* ボタン風リンク */
a.uc-lbutton {
	display: inline-block;
	min-width: 5rem;
	border-radius: 0.3rem;
	background-color: #272727;
	color: #fff;
	margin: 0.2rem;
	padding: 0.2rem 0.8rem;
	text-align: center;
	font-weight: 500;
	vertical-align: middle;
	box-shadow: 2px 2px 2px rgb(0, 0, 0, 0.2);
}
a.uc-lbutton:hover {
	background-color: #aaa;
	box-shadow: 0 0;
}

.taglink { display: none; }

/* ===========================================
  タブレット以上の場合に適用するCSS
============================================ */
@media (min-width: 768px) {

  .novel-container {
    position: relative;
  }

form.passkeyform {
  margin: 100px 0;
}

}

/* ===========================================
  PCの場合に適用するCSS
============================================ */
@media (min-width: 1024px) {

}