/* ---- overall ---- */

html {
	min-height: 100%;
	background: url(../img/bg_footer.jpg) bottom center repeat;
	font-family: "メイリオ", sans-serif;
}

body {
	min-height: 100%;
	margin: 0 0;
}

a {
	color: black;
	text-decoration: none;
}

a.disabled, area.disabled {
	cursor: default;
}

.clearfix:after {
  content: "";
  clear: both;
  display: block;
}

.adjust {
  height: auto;
	position: relative;
}

.adjust:before {
	content: "";
	display: block;
	padding-top: 37.2%;
}

.adjust > .inner {
	position: absolute;
	box-sizing: border-box;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.wrapper {
	min-height: 100%;
}


.wrapper:before {
	content: "";
	background: url(../img/line_header.png) top center repeat-x;
	display: block;
	height: 27px;
}

.wrapper:after {
	content: "";
	background: url(../img/line_footer.png) top center repeat-x;
	display: block;
	height: 23px;
	position: relative;
	z-index: 10;
}

.container {
	background: url(../img/bg_main_sp.jpg) top center no-repeat #F9DF82;
	background-size: cover;
	position: relative;
}

#top.container {
	background: url(../img/bg_main_top_sp.jpg) top center no-repeat #F9DF82;
	background-size: cover;
}


.content {
	margin: 0 auto;
	max-width: 1472px;
	width: 100%;
	text-align: center;
	position: relative;
	z-index: 2;
	/*background: url(../img/bg_piller.png) top center no-repeat;
	background-size: contain;*/
	/*height: calc(100vw * 1280 / 1472);*/
}

#top .content {
	/*background: url(../img/bg_piller_top.png) top center no-repeat;
	background-size: contain;*/
	height: 37.5%;
}

.content > * {
	width: 100%;
}

footer {
	text-align: center;
	padding: 20px 0 20px;
	position: relative;
	z-index: 100;
}

.menu_center {
	margin: 0 auto;
	text-align: center;
	max-width: 1472px;
	width: 100%;
	padding-top: 5%;
	position: relative;
	z-index: 10;
}

#top .menu_center {
	padding-top: 18%;
}

.menu_center img {
	width: 95%;
}

#top .menu_center img {
	width: 90%;
}

@media screen and (min-width: 1472px) {
	.container {
		background-size: auto !important;
	}

	.content {
		/*height: 1280px;*/
	}


}

@media screen and (min-width: 960px) {
	.sp {
		display: none !important;
		pointer-events: none;
	}


	.container {
		background: url(../img/bg_main.jpg) top center no-repeat #FFF;
		background-size: 234% auto;
		max-height: 1280px;
		min-height: 100%;
	}

	#top .container {
		background: url(../img/bg_main_top.jpg) top center no-repeat #FFF;
		background-size: 234% auto;
	}

	.menu_center {
		padding-top: 0;
		z-index: 100;
		position: relative;
	}

	.menu_center img {
		width: 68.8%;
	}

	#top .menu_center {
		padding-top: 0;
	}

	#top .menu_center img {
		width: 64.4%;
	}

	#top .content {
		z-index: 102;
	}



}

@media screen and (max-width: 959px) {
	.pc {
		display: none;
		pointer-events: none;
	}
}


/* ---- slide menu ---- */

.drawer-toggle.drawer-hamburger {
  position: absolute;
  right: 2% !important;
  top: 0%;
  padding: 0;
  z-index: 100;
	width: 72px;
}

.drawer-nav {
	background: url(../img/bg_slide_menu.jpg);
	text-align: center;
}

.drawer-menu {
	padding-left: 30px;
}

.drawer-menu li img{
	display: block;
	margin: 0 auto;
	padding: 0;
}

.drawer-menu li:after {
	content: "";
	display: block;
	height: 1px;
	background-image: url(../img/line_slide_menu.png);
}

.drawer-overlay {
    background-color: white;
    opacity: 0.8;
}

.btn_close {
    margin-top: 20px;
    padding-right: 20px;
    text-align: right;
    cursor: pointer;
}


/* ---- top ----*/

.news {
	position: static;
	margin: 0 auto;
	width: 85%;
	background: url(../img/frame_news.png) top center no-repeat;
	background-size: contain;
}

.news .adjust:before {
	padding-top: 37.2%;
}


.news .inner {
	padding: 8% 7% 8% 32%;
}

.news ul li span{
	display: block;
	text-align: left;
	margin-bottom: 5px;
}

.news ul li .date {
	color: #593400;
}

.news ul li .sent {
	/*color: #dc1061;*/
}

.news ul {
	list-style: none;
	padding: 0 0;
	margin: 0 0;
	overflow: auto;
	height: 100%;
	font-size: 13px;
}

.news ul li {
	border-bottom: 1px dotted black;
}

.scroll::-webkit-scrollbar {
	width: 12px;
}

.scroll::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(190,183,163,1);
    border-radius: 10px;
}

.scroll::-webkit-scrollbar-thumb {
    border-radius: 10px;
    -webkit-box-shadow: inset 0 0 6px rgba(119,111,87,1);
}


.banner {
	width: 100%;
	margin: 0 auto;
	padding-top: 6%;
}

.banner a {
	display: inline-block;
	width: 75%;
	margin-bottom: 2%;
}

.banner a img {
	width: 100%;
}



@media screen and (min-width: 960px) {

	.news {
		position: absolute;
		top: -18%;
		left: 15%;
		width: 25.95%;
	}

	.banner {
		width: 66%;
	}

	.banner a {
		width: 47%;
	}

	.banner a:nth-child(odd) {
		margin-right: 2%;
	}


}



/* ----- intro ----- */

#intro .content {
	padding: 2% 0;
}

/* ----chara ---- */

#chara .content {
	padding: 3% 0;
	width: 100%;
	max-width: 1004px;
}

.chara_detail .content {
	margin-top: -20%;
}

.chara_detail .btn_backlist{
	text-align: center;
	padding: 25px 0;
	position: relative;
	z-index: 2;
}

.btn_gotop {
	text-align: right;
	padding: 0 10px 10px 0;
	position: relative;
	z-index: 2;
}

@media screen and (min-width: 960px) {
	#chara .content {
		width: 70%;
	}

	.chara_detail .content {
		width: 67%;
	}

	.chara_detail .content {
		padding: 0 0;
		width: 95%;
		z-index: 2;
		margin-top: -13%;
		position: relative;
	}

	.chara_detail .btn_backlist{
		position: absolute;
		display: block;
		width: 100%;
		bottom: 3%;
		padding: 0;
	}


}



/* ---- confes ---- */

#confes .question {
	margin-top: 20px;
}

#confes .question img {
	max-width: 80%;
	margin-bottom: 20px;
}


.latest_confes, .archive, .answer_confes{
	width: 95%;
	margin: 20px auto 0;
}

.latest_confes .adjust:before {
	padding-top: 0;
}

.answer_confes .adjust > .inner {
	position: static;
}

.answer_confes .adjust:before {
	padding-top: 0;
}

.latest_confes .adjust > .inner {
	position: static;
}

.latest_confes .title, .archive .title{
	position: absolute;
	top: -2%;
	left: 0;
	width: 100%;
	z-index: 1;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}

.latest_confes .title img, .archive .title img{
	display: block;
	margin: 0 auto;
	width: 75%;
	max-width: 300px;
}


.frame_confes:before {
	content: "";
	width: 100%;
	display: block;
	background: url(../img/frametop_latestconfes_sp.png) top center no-repeat;
	background-size: cover;
	padding-top: 10%;
}

.frame_confes:after {
	content: "";
	width: 100%;
	display: block;
	background: url(../img/framebottom_confes.png) bottom center no-repeat;
	background-size: cover;
	padding-bottom: 6%;
}

.frame_confes > div {
	background: url(../img/frameinner_confes.png) top center repeat-y;
	background-size: 100% auto;
}

.btn_archive {
	margin: 0 auto;
	width: 91%;
	text-align: right;
}

.list_confes {
	list-style: none;
	text-align: left;
	padding: 1.3% 0;
	margin: 0 7% 0 9%;
	color: black;
	overflow: auto;
	height: 100%;
	box-sizing: border-box;
}

.list_confes li {
	margin-bottom: 5px;
	border-bottom: 1px dotted #9E5C21;
	padding: 5px 0 5px 1em;
	margin-right: 10px;
	display: block;
}

.list_confes li:before {
	content: "・";
	display: block;
	float: left;
	margin-left: -1em;
	width: 1em;
	text-align: center;
}

.archive .adjust:before {
	padding-top: 0;
}

.archive .adjust .inner {
	position: static
}

.answer_confes .frame_confes:before {
	height: 10%;
	background: url(../img/frametop_confes.png) top center no-repeat;
	background-size: cover;
	padding-top: 6%;
}

.archive .frame_confes:before {
	height: 10%;
	background: url(../img/frametop_archive_sp.png) top center no-repeat;
	background-size: cover;

}

.archive .frame_confes:after {
	height: 7%;
}

.archive .frame_confes > div {
	height: 86%;
}

.btn_confes {
	margin-top: 30px;
}

.btn_confes > img {
	max-width: 90%;
	display: block;
	margin: 0 auto 0.5%;;
}

.pagination {
	font-family: "游明朝";
	font-size: 20px;
	margin: 2% auto 30px;

}

.pagination li {
	display: inline-block;
	margin-right: 15px;
}

.pagination li:last-child {
	margin-right: 0;
}

.pagination li a {
	color: #FFC020;
	font-weight: bold;
}

.pagination li.active a {
	color: black;
	font-weight: bold;
}

.c1 {
	color:#c09b08;
	}

.c2	{
	color:#0000ff;
	}
.c3 {
	color:#f02b2b;
	}
.c4 {
	color:#63bc45;
	}
.c5 {
	color:#000000;
	}
.c6 {
	color:#761761;
	}
.c7 {
	color:#ef6da7;
	}
.c8 {
	color:#9482c7;
}
.c9 {
	color:#b60078;
}
.all{
	color:#6b4600;
}
.a1 {
	color:#a11717;
	}
.a2	{
	color:#c66177;
	}
.a3 {
	color:#e07937;
	}
.a4 {
	color:#54b9c7;
	}
.a5 {
	color:#e077ba;
	}
.a6 {
	color:#009669;
	}
.a7 {
	color:#a94705;
	}
	
#kaitou td:last-child {
	padding: 15px;
	vertical-align: middle;
}

#kaitou {
	margin: 0 1% 0 3%;
}

#kaitou table {
	margin: 0 20px 0 25px;
	text-align: left;
}

#kokuhaku {
	width: auto;
	margin: 15px 5% 20px;
}

#kokuhaku p {
	text-align: left;
	background-color: rgba(255, 255, 255, 0.8);
  box-shadow: 0 0 10px 5px rgba(255, 255, 255, 0.8);
}

#kokuhaku .adjust, #kokuhaku .adjust > .inner {
	position: relative;
}

#kokuhaku .adjust:before {
	padding-top: 0;
}

.answertype_confes {
	margin-bottom: 30px;
}

.answertype_confes .adjust:before {
	position: relative;
	padding-top: 0;
}

.answertype_confes .adjust > .inner {
	position: relative;
}

.answertype_confes img{
	width: 100%;
}

.balloon{
	margin-top: 0px;
  position: relative;
	width: 100%;
	text-align: left;
}

.balloon > p {
	background: url(../img/frameinner_balloon.png) repeat-y;
	background-size: 100% auto;
	padding: 0 6vw;
}

.balloon:after {
	content: '';
	display: block;
	height: 6vw;
	background: url(../img/framebottom_balloon.png) no-repeat;
	background-size: contain;

}

.balloon:before {
	content: '';
	display: block;
	height: 11.5vw;
	background: url(../img/frametop_balloon.png) bottom no-repeat;
	background-size: contain;

}



@media screen and (min-width: 960px) {
	#confes .question {
		margin-top: -2%;
	}

	#confes .question img:first-child {
		margin-right: 2%;
	}

	#confes .question img {
		width: 26%;
		margin-bottom: 0;
	}

	.archive {
		margin-top: 0;
	}

	.latest_confes, .archive, .answer_confes {
		width: 60%;
	}

	.latest_confes {
		margin-top: 1%;
	}

	.latest_confes .adjust:before {
		padding-top: 35.6%;
	}

	.answer_confes {
		margin-top: 2%;
	}

	.answer_confes .adjust > .inner {
		position: absolute;
	}

	.answer_confes .adjust:before {
		padding-top: 42.6%;
	}

	.answer_confes .frame_confes:before {
		height: 15%;
		padding-top: 0;
	}

	.answer_confes .frame_confes > div {
		height: 70%;
	}

	.answer_confes .frame_confes:after {
		height: 15%;
	}

	.latest_confes .adjust > .inner {
		position: absolute;
	}

	.frame_confes:before {
		height: 23%;
		width: auto;
		padding-top: 0;
		background: url(../img/frametop_latestconfes_pc.png) top center no-repeat;
		background-size: cover;
	}

	.frame_confes:after {
		height: 18%;
		width: auto;
		padding-bottom: 0;
	}

	.frame_confes > div {
		background: url(../img/frameinner_confes.png) top center repeat-y;
		background-size: contain;
		height: 58%;
	}

	.archive .frame_confes:before {
		background: url(../img/frametop_archive_pc.png) top center no-repeat;
		background-size: cover;
	}

	.archive .adjust:before {
		padding-top: 83.6%;
	}

	.archive .adjust .inner {
		position: absolute;
	}

	.btn_confes {
		margin-top: 2%;
	}

	.btn_confes > img {
		width: 30%;
	}

	.btn_confes a img {
		width: 16.5%;
	}

	.btn_archive {
		width: 57%;
	}

	.btn_archive img {
		width: 25%;
	}

	#kokuhaku {
		width: 56%;
		margin: 0 auto;
		margin-top: -1%;
	}

	#kokuhaku .adjust > .inner {
		position: absolute;
		overflow: auto;
		top: 0;
		left: 0;
	}

	#kokuhaku .adjust:before {
		padding-top: 12%;
	}

	#kokuhaku p {
		text-align: left;
	}

	#kaitou{
		overflow: auto;
		text-align: left;
		margin: 0 6% 0 5%;
		padding-right: 1%;
		height: 100%;
	}

	.answertype_confes {
		position: relative;
	}

	.answertype_confes img {
		position: absolute;
		top: 0%;;
		left: 19%;
		width: 54%;
	}

	.balloon {
		position: absolute;
		top: 45%;
		left: 45%;
		text-align: left;
		background: none;
	}

	.balloon:before {
		background: none;
		display: inline;
	}

	.balloon:after {
		background: none;
		display: inline;
	}

	.balloon > p {
		background: none;
		padding: 0 0;
		width: 35vw;
	}


	.answertype_confes .adjust:before {
		padding-top: 23%;
	}

	.answertype_confes .adjust > .inner {
		position: absolute;
	}

}



/* ---- gallery ---- */

.nav_gallery {
	margin-top: 10px;
}

.nav_gallery img{
	width: 100%;
}

.subnav_gallery_pc {
	background-color: rgba(0, 0, 0, 0.7);
	width: 62%;
	margin: 0.5% auto 0;
}

.subnav_gallery_pc a {
	display: inline-block;
	color: white;
	padding: 1% 2%;
}

.subnav_gallery_sp select{
	width: 95%;
	max-width: 200px;
	padding: 10px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 1px solid #999;
	color: white;
	background:  url(../img/arrow.png) right 50% no-repeat, rgba(0, 0, 0, 0.7);
	background-size: 30px, 15px;
	margin-bottom: 15px;
	cursor: pointer;
}

.subnav_gallery_pc .active {
	background-color: black;
}

.main_gallery {
	margin: 0 auto 30px;
	width: 95%;
}

.main_gallery .adjust .inner {
	position: static;
}

.main_gallery .adjust:before {
	padding-top: 0;
}

.frame_gallery:before {
	content: "";
	width: 100%;
	display: block;
	background: url(../img/frametop_gallery.png) top center no-repeat;
	background-size: cover;
	padding-top: 6%;
}

.frame_gallery:after {
	content: "";
	width: 100%;
	display: block;
	background: url(../img/framebottom_gallery.png) bottom center no-repeat;
	background-size: cover;
	padding-bottom: 6%;
}

.frame_gallery > div {
	background: url(../img/frameinner_gallery.png) top center repeat-y;
	background-size: 100% auto;
}

.inside_gallery > div{
	float: none;
}

.image_gallery img {
	max-width: 90%;
}

.sentence_gallery {
	text-align: left;
	padding: 0 20px 10px;
}

.sentence_gallery p:last-child{
	margin-bottom: 0;
}


@media screen and (min-width: 960px) {

	.nav_gallery {
		margin-top: -1%;
	}

	.nav_gallery img {
		width: 64%;
		max-width: 942px;
	}

	.main_gallery {
		width: 62%;
		margin-top: 1.5%;
	}

	.frame_gallery:before {
		height: 12%;
		width: auto;
		padding-top: 0;
	}

	.frame_gallery:after {
		height: 12%;
		width: auto;
		padding-bottom: 0;
	}

	.frame_gallery > div {
		background: url(../img/frameinner_gallery.png) top center repeat-y;
		background-size: contain;
		height: 76%;
	}

	.main_gallery .adjust .inner {
		position: absolute;
	}

	.main_gallery .adjust:before {
		padding-top: 72%;
	}

	.inside_gallery {
		position: relative;
		top: -7%;
		padding: 0 5%;
		height: 113%;
	}

	.inside_gallery > div{
		float: left;
	}

	.image_gallery {
		margin-right: 3%;
		width: 50%;
	}

	.image_gallery img {
		width: 100%;
		max-width: none;
	}

	.sentence_gallery {
		width: 47%;
		overflow: auto;
		height: 100%;
		padding: 0 20px 0 0;
		box-sizing: border-box;
	}


	.sentence_gallery p:first-child {
		margin-top: 0;
	}

}

/* ---- figure ---- */

.text_figure {
	margin-top: 20px;
}

.text_figure img {
	width: 100%;
}

.banner_figure {
	display: block;
	margin-top: -1.7%;
}

.banner_figure img {
	width: 95%;
}

.banner_figure img:hover {
	opacity: 0.7;
}

.notice_figure {
	margin: -20px 0 20px;
}

.notice_figure img {
	width: 100%;
}

.detail_figure {
	position: relative;
}

.btn_juchu {
	position: absolute;
	top: 75%;
	left: 5%;
	width: 38%;
}

.detail_figure {
	padding-top: 20px;
}

.detail_figure > img {
	width: 100%;
}

.btn_juchu img {
	width: 100%;
}

#figure .btn_backlist {
	margin-bottom: 20px;
}



@media screen and (min-width: 960px) {

	.text_figure {
		margin-top: 0;
		margin-bottom: 3%;
	}

	.text_figure img {
		width: 40%;
	}

	.banner_figure img {
		width: 56%;
	}

	.notice_figure img {
		width: 46%;
	}

	.detail_figure {
		padding-top: 0;
		margin-top: -2%;
	}

	.detail_figure > img {
		width: 75%;
	}

	.btn_juchu {
		position: absolute;
		top: 75%;
		left: 24%;
		width: 17%;
	}




}
