@charset "utf-8";
/* ===================================================================
モーニングスター 共通スタイル
=================================================================== */
.articleInner {
	padding: 20px;
}
.bookList_shelf {
	display: flex;
	flex-wrap: wrap;
	margin-right: 0;
}
.bookList_shelf li {
	flex: 0 0 calc(100% / 3);
	width: auto;
	float: none;
  	box-sizing: border-box;
	margin-right: 0;
	padding: 10px 0;
	text-align: center;
}
.bookList_shelf .bookList_img {
	width: auto;
	height: auto;
	padding: 0;
	margin: 0;
}
.bookList_linkWrap {
	width: auto;
}
.bookList_info {
	padding: 10px 20px;
	text-align: left;
}
.bookList_soon .articleTitle {
   text-indent: -9999px;
}

/* ===================================================================
モーニングスター大賞（コンテスト）専用スタイル
=================================================================== */
#topImg {
	width: auto;
	height: auto;
}
#topImg .topImg_disp {
	width: auto;
	height: auto;
}
.topImg_disp a {
	display: block;;
}
.topImg_disp img {
	max-width: 100%;
	height: auto;
}
/* サイドバーメニュー画像（絶対パス指定） */
#sidebar .menu li.menu_youkou > a      { background: url(/morningstar/images/menu_youkou.png) no-repeat; }
#sidebar .menu li.menu_point > a       { background: url(/morningstar/images/menu_point.png) no-repeat; }
#sidebar .menu li.menu_faq > a         { background: url(/morningstar/images/menu_faq.png) no-repeat; }
#sidebar .menu li.menu_entrylist > a   { background: url(/morningstar/images/menu_entrylist.png) no-repeat; }
#sidebar .menu li.menu_project > a     { background: url(/morningstar/images/menu_project.png) no-repeat; }
#sidebar .menu li.menu_bookflow > a    { background: url(/morningstar/images/menu_bookflow.png) no-repeat; }
#sidebar .menu li.menu_book > a        { background: url(/morningstar/images/menu_book.png) no-repeat; }
#sidebar .menu li.menu_contestlog > a  { background: url(/morningstar/images/menu_contestlog.png) no-repeat; }
#sidebar .menu li.menu_label > a       { background: url(/morningstar/images/menu_label.png) no-repeat; }
#sidebar .menu li.menu_narou > a       { background: url(/morningstar/images/bn_narou.gif) no-repeat; }
#sidebar .menu li.menu_cg > a          { background: url(/morningstar/images/bn_cg.png) no-repeat; }

/* 新紀元社バナー（高さ調整あり） */
#sidebar .menu li.menu_sinkigensya > a {
	height: 100px;
	padding-top: 100px;
	background: url(/morningstar/images/bn_sinkigensya.png) no-repeat;
}

/* お問い合わせ（コンテスト用メニューにある場合） */
#sidebar .menu li.menu_contact > a     { background: url(/morningstar/images/menu_contact.png) no-repeat; }



/* ===================================================================
モーニングスター大賞：TOPレイアウト（2カラム・パーツ）
=================================================================== */

/* 2カラム外枠（挨拶・要項 / スケジュール・ピックアップ） */
#contest_top .articleSeparate_wrap {
    width: 770px;
    margin: 0 -20px 30px 0;
}

/* 左カラム：浮き出し */
#topGreeting.articleSeparate_blcL,
#topSchedule.articleSeparate_blcL {
    float: left;
}

/* 右カラム：浮き出し */
#topGairyaku.articleSeparate_blcR,
#topPickup.articleSeparate_blcR {
    float: right;
}

/* 各ブロックの共通装飾 */
#topGreeting.articleSeparate_blcL,
#topSchedule.articleSeparate_blcL,
#topGairyaku.articleSeparate_blcR,
#topPickup.articleSeparate_blcR {
    width: 375px;
    padding: 0;
    background: #fff;
    border-radius: 3px;
    box-shadow: 0px 0px 4px 2px rgba(0,0,0,0.1);
}

/* 各セクション見出し画像（絶対パスに修正） */
#topGreeting h2.articleTitle { background: url(/morningstar/images/head_greeting.png) no-repeat; }
#topGairyaku h2.articleTitle { background: url(/morningstar/images/head_gairyaku.png) no-repeat; }
#topSchedule h2.articleTitle { background: url(/morningstar/images/head_schedule.png) no-repeat; }
#topPickup   h2.articleTitle { background: url(/morningstar/images/head_pickup.png) no-repeat; }

/* ---------- スケジュールセクション ---------- */
#topSchedule dl {
    width: 355px;
    display: block;
    overflow: hidden;
    margin-bottom: 20px;
}
#topSchedule dl:last-child { margin-bottom: 0; }

#topSchedule dl dt,
#topSchedule dl dd {
    float: left;
    display: block;
    margin-bottom: 5px;
    border-bottom: 1px dashed #ccc;
}

#topSchedule dl dt {
    width: 80px;
    font-weight: bold;
    color: #AA7E00;
}

#topSchedule dl dd {
    width: 275px;
}

/* ---------- ピックアップセクション ---------- */
#topPickup a.topPickup_novel { font-weight: bold; }

#topPickup p { margin-bottom: 20px; }
#topPickup p:last-child { margin-bottom: 0; }


/*---------- 開催概要 セクション ----------*/
/* パス修正：概要見出し画像 */
.articleWrap#topGaiyou h2.articleTitle {
    background: url(/morningstar/images/head_gaiyou.png) no-repeat;
}

.topGaiyou_innner {
    width: 770px;
    height: 400px;
    overflow: hidden;
}

.topGaiyou_innner img {
    vertical-align: bottom;
    border-radius: 0 0 3px 3px;
}


/*----------会社リンク----------*/
#footLink_innner{
	margin:0 auto;
	padding:20px 0;
	background:#f0f0f0;
	overflow:hidden;
}

#footLink_innner ul{
    position:relative;
    left:50%;
    float:left;
}

#footLink_innner ul li{
    position:relative;
    left:-50%;
	float:left;
	margin-right:5px;
}

#footLink_innner ul li.narou{
	background:#18B7CD;
	padding:5px 0;
}

.topImg_mini {
    display: block;
    height: 0;
    margin-bottom: 20px;
    padding-top: 200px;
    background-repeat: no-repeat;
    box-shadow: 0px 0px 4px 2px rgba(0, 0, 0, 0.1);
    overflow: hidden;
}

/* ===================================================================

project.css：「連動企画・広報」用のCSSです
 
=================================================================== */

/*----------TOP画像----------*/
.topImg_mini#topImg_project{background:url(/morningstar/images/topimg_rendou_pickup.jpg);}
.topImg_mini#topImg_kansou{background:url(/morningstar/images/topimg_kansou.jpg);}

/*----------メニュー----------*/
.rendouMenu{
    position:relative;
	height:60px;
	overflow:hidden;
	margin:20px 0;
}
.rendouMenu ul{
    position:relative;
    left:50%;
    float:left;
	margin-bottom:20px;
}
.rendouMenu li{
    position:relative;
	left:-50%;
	float:left;
	width:250px;
	height:60px;
	background-repeat:no-repeat;
}

.rendouMenu li a{
	display:block;
	width:160px;
	height:0;
	padding-top:90px;
	overflow:hidden;
}

.rendouMenu li.rendouMenu1{background:url(/morningstar/images/rendou_menu1.png);}
.rendouMenu li.rendouMenu1.Now,
.rendouMenu li.rendouMenu1:hover{background:url(/morningstar/images/rendou_menu1_on.png);}

.rendouMenu li.rendouMenu2{background:url(/morningstar/images/rendou_menu2.png);}
.rendouMenu li.rendouMenu2.Now,
.rendouMenu li.rendouMenu2:hover{background:url(/morningstar/images/rendou_menu2_on.png);}


/*----------ピックアップ・レビュー----------*/
#pickReview h3{margin-top:20px;}

.pickReview{
	display:table;
	width:750px;
	padding:5px 10px;
	border:1px solid #AA7E00;
	border-radius:3px;
	box-sizing:border-box;
}

	#review .pickReview{border-color:#aaa;}

.pickReview>dt{
	float:none;
	display:block;
	padding: 5px 0 0 5px;
	font-weight: bold;
	color:#AA7E00;
	border-left:10px solid #AA7E00;
	border-bottom:1px dashed #ccc;
}
	#review .pickReview>dt{
		color:#363636;
		border-left:10px solid #aaa;
		}

.pickReview>dd{
	display:block;
	padding:0 0 0 10px;
	margin-bottom:20px;
}
.pickReview>dd:last-child{
	border-bottom:none;
	margin-bottom:0;
}
.pickReview_title{
	font-weight:bold;
	font-size:12pt;
}

/*----------感想リスト----------*/
.kansou_list{
	margin: 20px 0 0 0 ;
	counter-reset:kansou_counter;
}

.kansou_list li{
	margin-bottom: 5px;
	counter-increment:kansou_counter;
	border-bottom: 1px solid #ccc;
	overflow: hidden;
}

.kansou_list li dl{overflow: hidden;}

.kansou_list li dl:before{
	display: inline-block;
	float: left;
	content:counter(kansou_counter,decimal-leading-zero);
	margin-right: 10px;
	font-weight: normal;
}

.kansou_list li dl a{display: block;}

.kansou_list li dl dt,
.kansou_list li dl dd{
	display: block;
	float: left;
	word-wrap:break-word;
	word-break:break-all;
}

.kansou_list li dl dt{
	width: 500px;
	margin-right: 1em;
}

.kansou_list li dl dd{width: 190px;}


/* ===================================================================

book.css：「技術本紹介」用のCSSです
 
=================================================================== */

/*段落調整*/
#book{
	line-height: 1.75;
}

#book p{margin-top: 1em;}
#book h4+p,
#book h5+p,
#book h4+h5{margin-top: 5px;}

#book h5{
	display: inline-block;
	margin: 1em 0 5px 0;
	color: #AA7E00;
	border-bottom: 1px solid #AA7E00;
}

/*----------TOP画像----------*/
.topImg_mini#topImg_book{background:url(/morningstar/images/topimg_book.jpg);}

/*----------本文----------*/
/*小見出し*/
.book_subtitle{
	font-size: 16px;
	line-height: 20px;
	margin-top: 1.5em;
	margin-bottom: 5px;
	padding: 1em;
	position: relative;
	border-bottom: 2px solid #F7AB00;
	color: #AA7E00;
}

.book_subtitle span{
	content: " ";
	left: 0;
	bottom: -2px;
	padding-bottom: .25em;
	position: absolute;
	border-bottom: 2px solid #AA7E00;
}

/*カバー一覧*/
.book_coversample{
	display: flex;
	justify-content:space-between;
}
.book_coversample li{width: 240px;}
.book_coversample li img{max-width: 240px;}

/*用語*/
dl.book_dl dt{font-weight: bold;}
.book_dl dd{margin-left: 1em;}

/*挿絵*/
.book_figure{
	display: flex;
	width: 750px;
	justify-content:center;
	align-items:flex-start;
}
.book_figure:after{content:normal;}
.book_figure figure {
	padding: 0.5em;
	border: 1px solid #ddd;
	border-radius: 3px;
	background-color: #f3f3f3;
	text-align: center;
}
.book_figure figure + figure{margin-left: 1em;}
 
.book_figure figcaption {
	font-size: 80%;
	margin: 0.5em 0;
}

/*書籍情報*/
.book_intro{margin-bottom: 20px;}

.book_intro .book_introImg{
	display: block;
	float: left;
	margin-right: 10px;
}

.book_intro .book_introData{
	display: inline-block;
	float: left;
	width: 320px;
}

.book_intro .book_introData dt{
	float: left;
	margin-right: 0.5em;
	font-weight: bold;
}

.book_intro .book_introData dd{
	margin-bottom: 0.5em;
}

/*購入ボタン*/
.book_buy{
	display: inline-block;
	width: 300px;
	height: 0;
	padding-top: 60px;
	background: url(../img/book/btn_buy.png) top no-repeat;
	overflow: hidden;
}

.book_buy:hover{
	opacity: 0.6;
}


/* ===================================================================

contestlog.css：「受賞作品特集ページ」用のCSSです
 
=================================================================== */

/*----------TOP画像----------*/
.topImg_mini#topImg_conlog{background:url(/morningstar/images/topimg_contestlog01.jpg);}

/*----------受賞見出し----------*/
/*賞ベース*/
.conlog_headWin{
	width: 750px;
	height: 0;
	padding-top: 60px;
	overflow: hidden;
}

/*大賞*/
.conlog_headWin.grandprix{background:url(/morningstar/images/head_grandprix.png) no-repeat;}

/*受賞*/
.conlog_headWin.win{background:url(/morningstar/images/head_win.png) no-repeat;}

/*ファンタジー賞*/
.conlog_headWin.fantasy{background:url(/morningstar/images/head_win.png) no-repeat;}

/*作品名*/
.conlog_headNovel{
	margin: 5px 0;
	text-align: center;
	font-size: 115%;
}
.conlog_headNovel:before{content:"【";}
.conlog_headNovel:after{content:"】";}

/*作品紹介*/
.conlog_headIntro{
	padding:0 0 0 36px;
	background:url(../img/head_mini.png);
	background-repeat:no-repeat;
	line-height: 36px;
	color:#AA7E00;
}

/*----------内部----------*/
/*著者*/
.conlog_author{
	margin-top: 10px;
	text-align: center;
}

.conlog_author dt,
.conlog_author dd{display: inline;}

.conlog_author dt{
	margin-right: 0.5em;
	font-weight: bold;
}

.conlog_author dd{margin-right: 1em;}

.conlog_author dd:last-child{margin: 0;}

/*キャッチコピー*/
.conlog_catch{
	text-align: center;
	font-size: 115%;
	color: #666;
}

/*書籍データ*/
.conlog_data{
}

.conlog_data dt,
.conlog_data dd{
	line-height:1.5;
}

.conlog_data dt{
	float: left;
	margin-right: 0.5em;
	font-weight: bold;
	color:#AA7E00;
}

.conlog_data dt.conlog_dataArasuzi{float: none;}

/*リンク*/
.conlog_link{text-align: center;}

.conlog_link li{display: inline-block;}

.conlog_link li a:hover{opacity: 0.6;}

/* メインビジュアル全体のコンテナ */
.msMainVisualContainer {
  margin: 0 auto 30px; /* 下の余白を少し多めに確保 */
  position: relative;
  /* ドットを外側に出すために padding-bottom を追加 */
  padding-bottom: 0;
}

/* 左右ボタン共通スタイル */
.ms-swiper-button-prev,
.ms-swiper-button-next {
  position: absolute;
  top: 50%;
  width: 44px;
  height: 44px;
  background-color: rgba(255, 255, 255, 0.7);
  border-radius: 50%;
  z-index: 10;
  cursor: pointer;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s;
}

/* ホバー時はモーニングスターのテーマカラー（赤系）に */
.ms-swiper-button-prev:hover,
.ms-swiper-button-next:hover {
  background-color: #F7AB00; 
  border-color: #F7AB00;
}

/* CSSで「＜」「＞」を描画 */
.ms-swiper-button-prev::after,
.ms-swiper-button-next::after {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  border-top: 5px solid #F7AB00;
  border-left: 5px solid #F7AB00;
  transition: all 0.3s;
}

.ms-swiper-button-prev:hover::after,
.ms-swiper-button-next:hover::after {
  border-color: #FFF;
}

.ms-swiper-button-prev::after {
  transform: rotate(-45deg);
  margin-left: 4px;
}

.ms-swiper-button-next::after {
  transform: rotate(135deg);
  margin-right: 4px;
}

/* ボタンの位置（画像の外側に配置） */
.ms-swiper-button-prev { left: -20px; }
.ms-swiper-button-next { right: -20px; }

.ms-custom-pagination {
    margin-top: 10px;
    height: 10px;
    text-align: center;
}

/* ページネーション（ドット） */
.ms-custom-pagination .swiper-pagination-bullet-active {
  background: #F7AB00;
  opacity: 1;
}

/* モバイル対応：ボタンを隠す */
@media screen and (max-width: 767px) {
  .ms-swiper-button-prev,
  .ms-swiper-button-next {
    display: none;
  }
}