@charset "UTF-8";

/*//////////////////////////////////////////////////////////////
	layout
//////////////////////////////////////////////////////////////*/

/*=======================================================
	body
=======================================================*/
body {
}

#body_bg {
	background: url(../img/bg_02.jpg) 50% 0 no-repeat;
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	z-index: -3;
	padding-bottom: 108px;
}

#body_bg_chara_01 {
	background: url(../img/bg_chara_03.png) 50% 0 no-repeat;
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	z-index: -2;
	padding-bottom: 108px;
	animation: horizontal 1.3s ease-in-out infinite alternate;
}

#body_bg_chara_02 {
	background: url(../img/bg_chara_04.png) 50% 0 no-repeat;
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	z-index: -2;
	padding-bottom: 108px;
	animation: horizontal 1.6s ease-in-out infinite alternate;
}

#body_bg_mask {
	background: #E7DDCD;
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	z-index: -1;
	padding-bottom: 108px;
	opacity: 0;
}

@keyframes horizontal {
	0% { transform:translateX( -10px); }
	100% { transform:translateX(  0px); }
}
@keyframes vertical {
	0% { transform:translateY(-10px); }
	100% { transform:translateY(  0px); }
}

/*=======================================================
	container
=======================================================*/
#container {
}

/* btn_sns_area */
#btn_sns_area {
	position: absolute;
	right: 150px;
	top: 10px;
	z-index: 10;
}

/* fb_btn_area */
#fb_btn_area {
	text-align: right;
	float: right;
	margin-right: 10px;
}

#fb_btn_area span {
	vertical-align: top !important;
}

/* tw_btn_area */
#tw_btn_area {
	text-align: right;
	float: right;
}

/* gnavi_area */
#gnavi_area {
	top: 0;
}

/*=======================================================
	common
=======================================================*/
section {
	width: 1200px;
	margin: 0 auto;
}

.ttl {
	height: 158px;
	text-indent: -9999px;
	overflow: hidden;
	margin-bottom: 30px;
}

.sttl {
	padding: 8px 0;
	margin-bottom: 30px;
	border-top: 2px solid #333;
	border-bottom: 2px solid #333;
}

.detail_box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.detail_box .img_box {
	width: 45%;
	text-align: center;
}

.detail_box .img_box img {
	width: 100%;
	max-width: 640px;
	border-radius: 10px;
	border: 3px solid #FFF;
	box-sizing: border-box;
	box-shadow: 1px 1px 10px #333;
}

.detail_box .text_box {
	width: 53%;
	text-align: left;
}

.detail_box .text_box h3 {
	margin-bottom: 20px;
}

.btn {
	margin-top: 20px;
}

.btn a {
	display: inline-block;
	background: #FA9BD2;
	color: #FFF;
	padding: 3px 1.5em;
	border-radius: 100px;
	text-decoration: none;
	border: 3px solid #FFF;
}

/*=======================================================
	logo_area
=======================================================*/
#logo_area {
	padding-top: 200px;
	margin-bottom: 200px;
}

#logo_area h1 {
	height: 449px;
	margin-bottom: 10px;
	text-indent: -9999px;
	overflow: hidden;
	background: url(../img/logo_ikug.png) 50% 50% no-repeat;
	background-size: contain;
}

#logo_area h2 {
	height: 86px;
	text-indent: -9999px;
	overflow: hidden;
	background: url(../img/logo_date.png?) 50% 50% no-repeat;
	background-size: contain;
}

#logo_area h3 {
	background: #FFF;
	border-radius: 100px;
	padding: 0.2em 1em;
	margin-bottom: 20px;
	color: #2FCCAE;
	display: inline-block;
}

/*=======================================================
	about_area
=======================================================*/
#about_area {
	margin-bottom: 80px;
}

#about_area h3 {
	letter-spacing: 0.1em;
	margin-bottom: 20px;
}

/*=======================================================
	message_area
=======================================================*/
#message_area {
	margin-bottom: 80px;
}

.message_box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#message_area .img_message {
	width: 45%;
	float: left;
	text-align: right;
}

#message_area .img_message img {
	width: 100%;
	max-width: 640px;
	border-radius: 10px;
	border: 3px solid #FFF;
	box-sizing: border-box;
	box-shadow: 1px 1px 10px #333;
}

#message_area .text_message {
	width: 53%;
	text-align: left;
}

#message_area .text_message p {
	width: 90%;
	line-height: 2em;
}

#message_area .text_message h5 {
	width: 90%;
	text-align: right;
}

/*=======================================================
	series_area
=======================================================*/
#series_area {
	margin-bottom: 80px;
}

#series_area .ttl {
	background: url(../img/ttl_series.png) 50% 50% no-repeat;
	background-size: contain;
}

#series_area ul li {
	border-bottom: 2px dotted #FFF;
	padding-bottom: 20px;
	margin-bottom: 30px;
}

#series_area ul li:last-child {
	border-bottom: none;
}

/*=======================================================
	next_area
=======================================================*/
#next_area {
	margin-bottom: 80px;
}

#next_area .ttl {
	background: url(../img/ttl_next.png?) 50% 50% no-repeat;
	background-size: contain;
}

/*=======================================================
	archive_area
=======================================================*/
#archive_area {
	margin-bottom: 80px;
}

#archive_area .ttl {
	background: url(../img/ttl_archive.png?) 50% 50% no-repeat;
	background-size: contain;
}

#archive_area ul li {
	border-bottom: 2px dotted #FFF;
	padding-bottom: 20px;
	margin-bottom: 30px;
}

#archive_area ul li:last-child {
	border-bottom: none;
}

/*=======================================================
	bnr_area
=======================================================*/
#bnr_area {
	margin-bottom: 80px;
}

#bnr_area ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

#bnr_area ul li {
	width: 24%;
	margin: 0 0.5% 10px;
}

#bnr_area li img {
	width: 94%;
	max-width: 300px;
}

/*=======================================================
	footer
=======================================================*/
#footer {
	width: 100%;
	height: 180px;
	background: url(../img/bg_mdl.png) 50% 50% repeat-y;
	background-size: contain;
	display: flex;
	justify-content: center;
	align-items: center;
}

#footer p {
	text-align: center;
	margin-bottom: 0;
}

#footer p a {
	text-decoration: none;
}

/*=======================================================
	pagetop_area
=======================================================*/
#pagetop_area {
	position: fixed;
	bottom: 0px;
	right: 0px;
}

#pagetop_area a {
	width: 120px;
	height:120px;
	display: block;
}
