@charset "UTF-8";
/* <style> */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, sub, sup, tt, var,
u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	font-size: 100%;
	vertical-align: baseline;
}

html {
	line-height: 1;
	overflow: hidden;
	height: 100%;
}

body {
	font: 100% "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
	margin: 0;
	padding: 0;
	height: 100%;
	color: #fff;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	-webkit-touch-callout: none;
	-webkit-text-size-adjust: none;
	overflow: hidden;
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: rgb(252, 252, 252);
}

*:not(input){
	-webkit-user-select: none;
}

a:link { color: #f7a50b; }
a:visited { color: #ab7000; }
a:hover { color: #ab7000; }
a:active { color: #ab7000; }

ol, ul {
	list-style: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

caption, th, td {
	text-align: left;
	font-weight: normal;
	vertical-align: middle;
}

a img {
	border: none;
}

.info {
	position: relative;
	overflow: hidden;
	height: 100%;
}

.banners {
	position: absolute;
	height: 23%;
	width: 100%;
	top: 0;
	text-align: center;
	background: transparent;
	background-image: url("../../Image/view/KekkonL.gif"),
					  url("../../Image/view/KekkonR.gif");
	background-size: contain, contain;
	background-repeat: no-repeat, no-repeat;
	background-position: top left, top right;
}

.banners .slider {
	height: 100%;
	width: 27%;
	top: 0;
	margin-right: auto;
	margin-left: auto;
}

.banners .slider img{
	height: 18vh;
	width: auto;
	margin-top: 3px;
	margin-right: auto;
	margin-left: auto;
}

.slick-prev, .slick-next, .slick-prev:hover, .slick-next:hover {
	background: transparent;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top center;
	height: 3vw;
	width: 3vw;
	position: absolute;
	top: 50%;
	display: block;
	padding: 0;
	-webkit-transform: translate(0, -50%);
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	cursor: pointer;
	color: transparent;
	border: none;
	outline: none;
}
.slick-prev, .slick-prev:hover {
	background-image: url("../../Image/view/BannerArrowL.gif");
	left: -3vw;
}
.slick-next, .slick-next:hover {
	background-image: url("../../Image/view/BannerArrowR.gif");
	right: -3vw;
}

/* position dots in carousel */
.slick-dots {
	position: absolute;
	top: 18.5vh;
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	list-style: none;
	text-align: center;
}
/* white circles */
.slick-dots li {
	position: relative;
	opacity: 1;
	background: transparent;
	background-image: url("../../Image/view/BannerPageOff.gif");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top center;
	border: none;
	width: 1.5vw;
	height: 1.5vw;
	margin: 0 0.8vw;
	display: inline-block;
	padding: 0;
	cursor: pointer;
}
/* fill-in selected dot */
.slick-dots li.slick-active {
	background: transparent;
	background-image: url("../../Image/view/BannerPageOn.gif");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top center;
	border: none;
}
.slick-dots li button {
	opacity: 1;
	background: transparent;
	border: none;
	width: 100%;
	height: 100%;
	display: block;
	cursor: pointer;
	color: transparent;
	outline: none;
}

.slick-dots li button::before {
	content: '';
}

.categories {
	position: absolute;
	top: 20.5%;
	height: 12%;
	width: 100%;
}

.category_names {
	margin-top: 8px;
	height: calc(100% - 8px);
	width: auto;
	overflow-x: auto;
}

.category_names ul{
	margin: auto auto;
	height: 100%;
	width: auto;
	overflow-x: auto;
	overflow-y: hidden;
	white-space: nowrap;
}

.category_names li {
	position: relative;
	margin-right: 1px;
	margin-left: 1px;
	display: inline-block;
	height: 100%;
	width: calc(25% - 8px);
}

.category_button {
	position: absolute;
	bottom: 0;
	display: inline-block;
	text-decoration: none;
	background: transparent;
	font-weight: bold;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;

	border: none;
	height: 87%;
	width: 100%;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top center;
}
.category_button:active, .category_button:focus {
	border: none;
	outline:0;
}

.category_badge {
	position: absolute;
	top: 0;
	right: 7%;
	background: transparent;
	background-image: url("../../Image/view/Badge.gif");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top center;
	width: 10%;
	height: 39%;
}

.texts {
	position: absolute;
	top: 33%;
	height: 65%;
	width: 100%;
	background-color: rgb(78, 78, 78);
	border-radius: 1.5vw;
}

.texts .top.left
{
	position: absolute;
	top: 0;
	left: 0;
	height: 1.5vw;
	width: 1.5vw;
	z-index: 0;
	background-image: url("../../Image/view/ScrollSpaseLT.gif");
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 1.5vw 1.5vw;
	font-size: 0;
	line-height: 0;
}

.texts .top.right
{
	position: absolute;
	top: 0;
	right: 0;
	height: 1.5vw;
	width: 1.5vw;
	z-index: 0;
	background-image: url("../../Image/view/ScrollSpaseRT.gif");
	background-repeat: no-repeat;
	background-position: right top;
	background-size: 1.5vw 1.5vw;
	font-size: 0;
	line-height: 0;
}

.texts .top.center
{
	position: absolute;
	top: 0;
	right: 1.4vw;
	height: 1.5vw;
	width: calc(100% - 2.8vw);
	z-index: 0;
	background-image: url("../../Image/view/ScrollSpaseT.gif");
	background-repeat: repeat-x;
	background-position: top;
	background-size: 1.5vw 1.5vw;
	font-size: 0;
	line-height: 0;
}

.texts .middle.left
{
	position: absolute;
	top: 1.4vw;
	left: 0;
	height: calc(100% - 2.8vw);
	width: 1.5vw;
	z-index: 0;
	background-image: url("../../Image/view/ScrollSpaseL.gif");
	background-repeat: repeat-y;
	background-position: left;
	background-size: 1.5vw 1.5vw;
	font-size: 0;
	line-height: 0;
}

.texts .middle.right
{
	position: absolute;
	top: 1.4vw;
	right: 0;
	height: calc(100% - 2.8vw);
	width: 1.5vw;
	z-index: 0;
	background-image: url("../../Image/view/ScrollSpaseR.gif");
	background-repeat: repeat;
	background-position: right;
	background-size: 1.5vw 1.5vw;
	font-size: 0;
	line-height: 0;
}

.texts .middle.center
{
	position: absolute;
	top: 1.4vw;
	right: 1.4vw;
	height: calc(100% - 2.8vw);
	width: calc(100% - 2.8vw);
	z-index: 0;
	background-image: url("../../Image/view/ScrollSpaseNaka.gif");
	background-repeat: repeat;
	background-position: center;
	background-size: 1.5vw 1.5vw;
	font-size: 0;
	line-height: 0;
}

.texts .bottom.left
{
	position: absolute;
	bottom: 0;
	left: 0;
	height: 1.5vw;
	width: 1.5vw;
	z-index: 0;
	background-image: url("../../Image/view/ScrollSpaseLB.gif");
	background-repeat: no-repeat;
	background-position: left bottom;
	background-size: 1.5vw 1.5vw;
	font-size: 0;
	line-height: 0;
}

.texts .bottom.right
{
	position: absolute;
	bottom: 0;
	right: 0;
	height: 1.5vw;
	width: 1.5vw;
	z-index: 0;
	background-image: url("../../Image/view/ScrollSpaseRB.gif");
	background-repeat: no-repeat;
	background-position: right bottom;
	background-size: 1.5vw 1.5vw;
	font-size: 0;
	line-height: 0;
}

.texts .bottom.center
{
	position: absolute;
	bottom: 0;
	right: 1.4vw;
	height: 1.5vw;
	width: calc(100% - 2.8vw);
	z-index: 0;
	background-image: url("../../Image/view/ScrollSpaseB.gif");
	background-repeat: repeat-x;
	background-position: bottom;
	background-size: 1.5vw 1.5vw;
	font-size: 0;
	line-height: 0;
}

.info_texts {
	position: absolute;
	margin-top: 1vw;
	margin-left: 1vw;
	margin-right: 1vw;
	height: calc(100% - 2vw);
	width: calc(100% - 2vw);
	overflow-y: auto;
	color: #000;
	z-index: 7;
}

.info_texts ul {
	position: relative;
	height: 100%;
	width: 100%;
}

.info_texts li {
	margin-bottom: 1vw;
	height: 35%;
}

.info_button {
	display: inline-block;
	text-decoration: none;
	color: #FFF;
	font-weight: bold;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	background: transparent;

	border: none;
	vertical-align: middle;
	text-overflow: ellipsis;
	white-space: nowrap;
	height: 100%;
	width: 100%;
	padding: 0;
}

.info_button .button_base {
	position: relative;
	background: transparent;
	height: 100%;
	width: 100%;
	background-color: rgb(252, 252, 252);
	border-radius: 1.5vw;
}

.base_left {
	position: absolute;
	background-image: url("../../Image/view/FrmL.gif");
	background-size: 1.5vw 100%;
	background-repeat: no-repeat;
	background-position: top left;
	width: 1.5vw;
	height: 100%;
	left: 0;
	top: 0;
	font-size: 0;
	line-height: 0;
}

.base_center {
	position: absolute;
	background-image: url("../../Image/view/FrmC.gif");
	background-size: 1.5vw 100%;
	background-repeat: repeat-x;
	background-position: top center;
	top: 0;
	left: 1.4vw;
	height: 100%;
	width: calc(100% - 2.8vw);
	font-size: 0;
	line-height: 0;
}

.base_right {
	position: absolute;
	background-image: url("../../Image/view/FrmR.gif");
	background-size: 1.5vw 100%;
	background-repeat: no-repeat;
	background-position: top right;
	width: 1.5vw;
	height: 100%;
	right: 0;
	top: 0;
	font-size: 0;
	line-height: 0;
}

.info_button .info_tag {
	position: absolute;
	width: 15%;
	height: 100%;
	left: 0;
	top: 0;
}

.info_button .info_tag img {
	margin-left: 5%;
	margin-top: 7%;
	width: 90%;
}

.button_texts {
	position: absolute;
	width: 85%;
	height: 100%;
	top: 0;
	left: 15%;
}

.info_title_base {
	margin-top: 1%;
	position: relative;
	height: 55%;
	width: 100%;
}

.info_title_base .info_title_left {
	position: absolute;
	background-image: url("../../Image/view/ObiR.gif");
	background-size: 100% 100%;
	background-repeat: no-repeat;
	background-position: top left;
	width: 2%;
	height: 100%;
	left: 0;
	top: 0;
}

.info_title_base .info_title_center {
	position: absolute;
	background-image: url("../../Image/view/ObiC.gif");
	background-size: 2px 100%;
	background-repeat: repeat-x;
	background-position: top center;
	top: 0;
	left: 1.9%;
	height: 100%;
	width: 61%;
}

.info_title_base .info_title_right {
	position: absolute;
	background-image: url("../../Image/view/ObiL.gif");
	background-size: 100% 100%;
	background-repeat: no-repeat;
	background-position: top right;
	width: 37%;
	height: 100%;
	right: 1%;
	top: 0;
}

.info_title_base .info_title {
	position: absolute;
	height: 100%;
	left: 2%;
	font-size: 3vw;
	width: calc(3vw * 21);
	text-align: left;
	margin-top: auto;
	margin-bottom: auto;
	color: #FFF;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
	align-items: center; /* 縦方向中央揃え */
	line-height: 3vw;
}

.title_text {
	overflow: visible;
	white-space: nowrap;
	width: 100%;
	white-space: normal;
}

.info_title_base .info_date {
	position: absolute;
	font-size: 2.5vw;
	right: 5%;
	height: 100%;
	text-align: right;
	margin-top: auto;
	margin-bottom: auto;
	color: #FFF;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
	align-items: center; /* 縦方向中央揃え */
}

.info_outline {
	position: absolute;
	bottom: 0;
	width: 95%;
	height: 44%;
	text-overflow: ellipsis;
	color: rgb(21, 21, 21);
	text-align: left;
	font-size: 2.5vw;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
	align-items: center; /* 縦方向中央揃え */
}

.info_title_base .info_badge {
	position: absolute;
	top: 0;
	right: 2%;
	background: transparent;
	background-image: url("../../Image/view/Badge.gif");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top center;
	width: 3%;
	height: 39%;
}

.info_detail {
	width: 100%;
	height: 100%;
}

.info_detail .title_base {
	margin-left: 1%;
	margin-top: 1%;
	position: relative;
	height: 11%;
	width: 98%;
	font-weight: bold;
}

.info_detail .title_base .info_tag {
	position: absolute;
	width: 11%;
	height: 100%;
	left: 0;
	top: 0;
}

.info_detail .title_base .info_tag img {
	margin-left: 5%;
	margin-top: 7%;
	width: 90%;
}

.info_detail .title_base .info_title_left {
	position: absolute;
	background-image: url("../../Image/view/ObiR.gif");
	background-size: 100% 100%;
	background-repeat: no-repeat;
	background-position: top left;
	width: 2%;
	height: 100%;
	left: 0;
	top: 0;
}

.info_detail .title_base .info_title_center {
	position: absolute;
	background-image: url("../../Image/view/ObiC.gif");
	background-size: 2px 100%;
	background-repeat: repeat-x;
	background-position: top center;
	top: 0;
	left: 1.9%;
	height: 100%;
	width: 61%;
}

.info_detail .title_base .info_title_right {
	position: absolute;
	background-image: url("../../Image/view/ObiL.gif");
	background-size: 100% 100%;
	background-repeat: no-repeat;
	background-position: top right;
	width: 37%;
	height: 100%;
	right: 1%;
	top: 0;
}

.info_detail .title_base .info_title {
	position: absolute;
	height: 100%;
	left: 12%;
	font-size: 2.5vw;
	width: calc(2.5vw * 21);
	text-align: left;
	text-overflow: ellipsis;
	margin-top: auto;
	margin-bottom: auto;
	color: #FFF;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
	align-items: center; /* 縦方向中央揃え */
	line-height: 2.5vw;
}

.info_detail .title_base .info_date {
	position: absolute;
	font-size: 2.5vw;
	right: 20.5%;
	height: 100%;
	text-align: right;
	margin-top: auto;
	margin-bottom: auto;
	color: #FFF;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
	align-items: center; /* 縦方向中央揃え */
}

.info_detail .title_base .back_button {
	position: absolute;
	height: 90%;
	width: 16.5%;
	right: 2%;
	top: 10%;
	background: transparent;
	background-image: url("https://web.higurashi-mei.com/Image/view/BtnListBack.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top center;
}

.info_detail .title_base .backto_button {
	position: absolute;
	height: 90%;
	width: 16.5%;
	right: 2%;
	top: 10%;
	background: transparent;
	background-image: url("../../Image/view/BtnBack.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top center;
}

.notification_button {
	position: absolute;
	height: 9%;
	width: 16.5%;
	right: 2%;
	top: 6%;
	background: transparent;
	background-image: url("../../Image/view/BtnNotification.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top center;
}

.notification_button_budge {
	position: absolute;
	height: 9%;
	width: 16.5%;
	right: 2%;
	top: 6%;
	background: transparent;
	background-image: url("https://web.higurashi-mei.com/Image/view/BtnNotificationOn.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top center;
}

.info_detail .info_content {
	position: absolute;
	top: 13%;
	left: 1%;
	width: 94%;
	height: 83%;
	font-size: 2.5vw;
	padding: 2%;
	padding-bottom: 0;
	color: rgb(21, 21, 21);
	text-align: left;
	overflow-y: auto;
}

.info_detail .info_content img {
	max-width: 100%;
}

.help_table {
	border-collapse: collapse;
	border: solid 1px;
	font-size: 2vw;
	margin: 1vw;
}

.help_table td {
	background: #f8f1ea;
	border: solid 1px;
	padding: 0.5vw;
}
.help_table tr:nth-child(odd) td {
	background: #ffffff;
}
.help_table tr.header td {
	background: #ecb58b;
	text-align: center;
	font-weight: bold;
}