/*
 * COSMICRAY FKS STYLE-SHEET for PC 
 * Copyright(c) 2012,2026 COSMICRAY,Inc. All Rights Reserved.
 * https://www.cosmicray.co.jp/fks
 */

/* ---- general ---- */
*{ margin:0; padding:0; border:0; }
html { scroll-behavior: smooth; }
body {
	background-color: #0d0600; color: #f4e9d4; font-size: 80%;
	margin: 0px auto; text-align: center; line-height: 150%;
}

/* ---- id control ---- */
/* ---- skeleton PC ---- */
#header {
	background: linear-gradient(to top, #0d0600 0%, #d9b39d 95%);
	margin: 0 auto; width: 100%; min-width: 1200px; height: 194px;
	text-align: left;
}
#header_headerimg, #header_topimg {
	background-color: transparent; background-repeat: no-repeat;
	display: flex; flex-direction: row; height: 194px;
}
#header_headerimg { background-image: url("../img/background/header.png"); }
#header_topimg    { background-image: url("../img/background/header_top.png"); }

#menu    { padding: 90px 10px 0px; text-align: left; margin: 0px; }

#contents {
	display: flex; width: 90%; margin: 0 auto; padding: 0px; text-align: center;
	min-width: 1200px; min-height: 1000px; gap: 15px;
}
#contents_left { /* two layer */
	width: 55%; min-width: 840px; margin: 0px 10px 15px 0px; text-align: left; }
#contents_main { /* one layer */
	clear: both; text-align: center; }
#contents_side {
	width: 30%; min-width: 300px; margin: 10px 0px 20px; text-align: left; }

#news, #notice { padding-bottom: 40px; }

#footer {
	clear: both; text-align: center;
	display: block; width: 100%; margin: 0 auto; padding: 10px 0px 20px;
	background-color: transparent; color: #eee;
}


/* ---- id 見出し ---- */
#header h1 { display: inline-block; padding-top: 25px; padding-left: 25px; width: 24%; }

#contents_left h2, #contents_main h2 {
	display: block; background: linear-gradient(to top, #2e1616 0%, #753d1e 95%);
	height: 35px; font-size: 140%; color: #f4e9d4; line-height: 160%;
	margin-top: 10px; padding: 0px 10px 0px;
	text-shadow:3px 3px 4px rgba(10, 0, 0, 0.8);
	-webkit-text-stroke: 2px #220000;
	paint-order: stroke fill;
}

#contents_left h3 { padding: 8px 0px; margin: 10px 0px 5px; line-height: 160%; }
#contents_side h3 {
	display: block; background: linear-gradient(to top, #403127 0%, #b39380 95%);
	height: 30px; font-size: 120%; color: #f4e9d4; line-height: 150%; text-align: center;
	margin: 0px 0px; padding: 2px 10px 0px;
	text-shadow:3px 3px 4px rgba(10, 0, 0, 0.8);
	-webkit-text-stroke: 2px #220000;
	paint-order: stroke fill;
}
#release h3 { font-size: 130%; padding: 10px 7px 0px; } 


/* ---- id control parts---- */
/* navigation */
#menu ul { margin: 0px; padding: 0px; list-style: none; }
#menu li {
	position: relative; display: inline-block; list-style: none;
	margin: 0px 0px 20px; padding: 0px 10px 0px 0px;
	color: #f9e6d8; font-size: 130%; font-weight: bold;
	text-shadow:3px 3px 4px rgba(10, 0, 0, 0.8);
	-webkit-text-stroke: 2px #220000;
	paint-order: stroke fill;
}

/* side bar */
#contents_side ul { padding: 0px 1px 0px; list-style-type: none; }
#contents_side li { padding: 10px 0px 10px; border-bottom: #280e04 1px dotted; }

#footer ul { margin: 3px 10px; }
#footer li { display: inline; padding: 0px 5px; }

/* top page */
#release   { padding-bottom: 30px; }
#news dl, #news dt, #news dd, #notice ul { line-height: 160%; }
#news dl   { margin: 10px 5px 0px; }
#notice ul { margin: 10px 20px 0px; }
#news dt, #news dd { float: left; margin: 5px 5px 10px; padding: 0px; }
#news dt   { width: 80px; color: #efdfd6; }
#news dd   { min-width: 700px; }

/* introduction */
#intro   { padding: 10px 0px 10px; }
#intro p { padding: 10px 30px 15px 10px; line-height: 170%; }

/*
#flag_banner { clear: both; padding: 30px 0px 10px; }
*/

/* ---- class control ---- */
/* ---- skeleton PC ---- */
/* audio book */
.audio { padding: 10px 0px 0px 10px; border-bottom: #7d3d2d 1px dotted; }
.audio_contents { display: flex; margin: 0px 0px 15px 0px;}
.audio_left img   { margin: 10px 10px 0px 0px; }
.abook_sale { display: flex; gap: 0px; }
.abook_sale_ap, .abook_sale_ab, .abook_sale_gp, .abook_sale_om {
	display: inline-block; list-style-type:none; text-align: center;
	width: 120px; height: 60px; padding-top: 15px; }
.abook_sale_ap { background-color: #331111; }
.abook_sale_ab { background-color: #432121; }
.abook_sale_gp { background-color: #401a1a; }
.abook_sale_om { background-color: #301f1f; }


/* CD,e-book */
.release_contents, .product { display: flex; margin: 0px 0px 15px 10px; padding-bottom: 20px; border-bottom: #7d3d2d 1px dotted; }
.release_contents:last-child, .product:last-child, .audio:last-child { border-bottom: none; }

.release_contents_left,  .product_left,  .audio_left  { width: 185px; min-height: 200px; }
.release_contents_right, .product_right, .audio_right { min-width: 630px; }

.release_contents_chara,  .product_chara,  .audio_chara,  .ebook_chara  { float: left; margin-bottom: 15px; }
.release_contents_banner, .product_banner, .audio_banner, .ebook_banner { float: left; }
.release_contents_chara,  .product_chara  { min-width: 500px; }
.release_contents_banner, .product_banner { min-width: 130px; }
.ebook_chara                              { min-width: 450px; }
.ebook_banner                             { min-width: 180px; }

.release_contents ul, .product ul, .audio_right ul { padding: 0px 3px; list-style-type: none;}
.inline_block li { display: inline-block; }

.release_contents_left img, .audio_left img { margin: 5px 10px 0px 0px; width: 170px; height: auto; }
.product_left img { margin: 25px 10px 0px 0px;  width: 170px; height: auto; }
.release_contents_banner img, .product_banner img { margin-top: 5px; }


/* .new_release img { padding: 0px 10px 10px 0px; } */

/* side */
.side_contents, .side_books { display: block; min-width: 285px; margin: 0px 0px 20px; padding-bottom: 0px; }
.side_books img { margin: 5px 10px 5px 5px; }

.share {
	display: block; background-color: #efd7b6;
	text-align: center; margin: 30px auto; border-radius: 8px;
	width: 200px; height: 60px; padding-top: 30px;}

/*
.new_release { margin-bottom: 30px; }
.new_release { clear: both; padding: 30px 15px 15px 10px; border-bottom: #efdfd6 4px double; }
*/

/* ---- 見出し ---- */
.audio_right h3              { font-size: 120%; letter-spacing: 0.1ex; padding: 5px 0px !important; margin-top: 0px !important; }
.product h3, .new_release h3 { font-size: 120%; letter-spacing: 0.1ex; padding: 0px 0px 5px;}
.product h4, .new_release h4, .audio h4 { font-size: 110%; letter-spacing: 0.1em; padding: 5px 0px 3px; }
.release_contents h4 { font-size: 120%; letter-spacing: 0.1ex; padding-bottom: 7px; }
.release_contents h5 { font-size: 100%; letter-spacing: 0.1ex; }

/* トップに戻るボタンの指定 */
.pagetop {
	display: none; width: 64px; height: 64px;
	position: fixed; bottom: 8%; right: 5%;
}
.pagetop__link {
	display: flex; justify-content: center; align-items: center;
	width: 100%; height: 100%; border-radius: 50%;
	background-color: #753d1e; color: #fff;
	text-align: center; text-decoration: none;
	font-size: 18px; font-weight: bold; line-height: 1.3;
}
.pagetop__text { padding-top: 15px; position: relative; }
.pagetop__text::before {
	content: "〈";
	display: inline-block; position: absolute; top: -13px; left: 50%;
	transform: translateX(-50%) rotate(90deg);
}
.pagetop__text::after {
	content: "〈";
	display: inline-block; position: absolute; top: -7px; left: 50%;
	transform: translateX(-50%) rotate(90deg);
}
.show { display: block; transition: opacity .3s ease, visibility .3s ease; }


/* ---- link ---- */
a:link, a:visited {color: #d5c7be;}
a:hover, a:active {color: #e26d0d; text-decoration: none;}

#menu a {text-decoration: none;}
#menu a:hover, .release_contents_right a:hover, .side_books a:hover, .new_release a:hover, .product a:hover, .audio a:hover {position: relative; top: 1px; left:1px;}

#contents_side a:hover, #contents_side a:active {color: #eed2bd; text-decoration: none;}
#footer a:hover, #footer a:active {color: #e5a26b; text-decoration: none;}
