@charset "UTF-8";

/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */
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, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
:focus {outline: 0;}

ol, ul {list-style: none;}
table {border-collapse: collapse/*separate*/;border-spacing: 0;}
caption, th, td {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img{border: 0;}
figure{	margin:0; padding: 0;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
/* -------------------------------------------------------------- */

body	{
	margin: 0 auto;
	color: #231815;
	font: 14px '游ゴシック体', 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', "メイリオ","Meiryo","ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
	line-height: 1.8;
	background: #fff;
	-webkit-text-size-adjust: none;
	}
p,li,dt,dd,th,td,pre	{
	-ms-line-break: strict;
	line-break: strict;
	-ms-word-break: break-strict;
	word-break: break-strict; }   	
/* font-set google
font-family: 'Crimson Text', serif;
font-family: 'Montserrat', sans-serif;
 */	
.font-L 	{
	font-size: 16px;
	line-height: 1.9em;
	letter-spacing:.08em;
	}	
	
/********** contents **********/

#topImg, .container, #footerInner, #footerNav ul	{
	margin: 0 auto;
	width: 978px;
	}
	
header, #headerTtl, footer, #footerNav	{
	margin: 0 auto;
	width:100%;
	}
	
.grid1, .grid2, .grid3, .grid4, .grid5, .grid6, .grid7, .grid8, .grid9, .grid10, .grid11 {
  display: inline-block;
	text-align:left;
	}
.grid1 { width: 54px; }
.grid2 { width: 138px; }
.grid3 { width: 222px; }
.grid4 { width: 306px; }
.grid5 { width: 390px; }
.grid6 { width: 474px; }
.grid7 { width: 558px; }
.grid8 { width: 642px; }
.grid9 { width: 726px; }
.grid10 { width: 810px; }
.grid11 { width: 894px; }
.first { 
	margin-left: 0;
	clear: left;
	}	
.centered {
  float: none;
	display: block;
  margin: 0 auto;
	}
.f_left	{ float: left; }

	
/*header */	
header	{ 
	position: fixed;
	top: 0;
	background: #fff;
	border-top:5px solid #2dad37;
	}
.header_bk	{ 
	padding-top: 115px;/* header固定高さ分 */
	}
#headerTtl	{	/*height: 200px;*/	}	
.headerBox	{
	margin:0 auto;
	display: table;
	width: 978px;
	height: 200px;
	}	
.headerBox h1	{
	margin: 0 auto;
	display: table-cell;    
  vertical-align: middle;
	color: #fff;
	text-align: left;
	font-size: 28px;
	}
.headerBox h1 img	{
	margin-left:6em;
	}	
/*.headerBox .linkImg	{
	margin: 115px 0 auto 0;
	display: table-cell;
	width: 137px;    
  vertical-align: middle;
	text-align: right;
	}	
*/
/* footer */
footer	{
	margin-top: 100px; 
	background: #26282D; 
	}
#footerNav	{ background: #E3E7E7; }	
#footerInner 	{
	padding: 30px;
	color: #fff;
	font-size: 85%;
	letter-spacing: .2em;
	}
#footerInner a	{
	color: #fff;
	text-decoration: none;
	}	
#footerInner a:hover	{ text-decoration: underline; }	



/********** common **********/

/* link */
a	{ color: #2dad37;
	-webkit-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
	}
a:hover	{ text-decoration: none; }
a:active, a:focus	{ outline: 0; }
a img	{
	border: none;
	text-decoration: none;
	opacity: 1;
	-webkit-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
	}
a img:hover	{ 
	opacity: .6; }
a.link_bk	{ color: #000; }	
a.noLine	{
	display: inline-block;
	text-decoration: none;
	}
.anchor	{/* ページ内リンクジャンプ先のずれを解消する */
    display: block;
    padding-top: 120px; /* nav_height */
    margin-top: -120px;
	}
	
.mt30	{ margin-top: 30px; }
.mb30	{ margin-bottom: 30px; }
.mt50	{ margin-top: 50px; }
.pt50	{ padding-top: 50px; }
.mb50	{ margin-bottom: 50px; }
.mt100	{ margin-top: 100px; }/* contact top */
.mt1em	{ margin-top: 1em; }
.mt2em	{ margin-top: 2em; }
.ml30	{ margin-left: 30px; }
.mr30	{ margin-right: 30px; }
.txtCenter	{ text-align: center; }	
.txtRight	{ text-align: right; }
.txtLeft	{ text-align: left; }
.lh_nrw	{ /* cap用高さ調整 */
	display: block;
	line-height: 1.2em;
	}
hr {
	margin: 50px 0;
	padding: 0;
	height: 0;
	border: 0;
	border-top: 1px solid #e3e6e6;
	}
em	{ 
	font-weight: bold;
	font-style: normal;
	}
.green	{ color: #2da237; }
.black	{ color: #231815!important; }
.en, .en2	{ letter-spacing: .1em; }
.en	{
	font-family: 'Crimson Text', serif;
	font-style: italic;
	}
.en2	{ font-family: 'Montserrat', Sans-Serif; }	
h1, h2, h3, h4	{ 
	font-family: 'Montserrat','游ゴシック体',Sans-Serif;
	letter-spacing: .3em;
	}
.fnt31, h1, h2	{ font-size:31px; }
h3	{ 
	font-size:24px;
	margin: 80px 0 30px;
	}
.fnt21	{ font-size: 21px; }
.fnt18	{ font-size: 18px; }
.fnt17	{ font-size: 17px; }
.fnt14, h1 span, h2 span, h3 span	{ font-size:14px; }
.fnt12	{ font-size: 12px; }
body#topPage h1, h2 	{
	margin: 100px auto 50px;
	color: #222; 
	line-height:1.2; 
	text-align: center;
	}

body#topPage h2	{
	margin: 0;
	text-align:left; 
	}	
h2.small, .news_topics dl.info dd > h1	{ /*producer(txtLeft), recruit, privacy*/
	font-size: 18px;
	font-weight: bold;
	margin-bottom :30px;
	letter-spacing: .3em;
	}
/*  */	
.waku_info	{
	padding: 10px;
	border: solid 3px #2da237;
}
/* add_201609269 */
.lh16	{ line-height: 1.6em; }	
.lh19	{ line-height: 1.9em; }
.lh20, .concept p	{ line-height: 2em; }
.ls02, .concept p	{ letter-spacing: .2em; }
.ls01	{ letter-spacing: .1em; }


/********** parts **********/

.linkBtn	{ margin-top: 1em; }
.linkBtn a	{
	display:inline-block;
	margin-left: auto;
	margin-right: auto;
	padding: .7em 10em/*.4em .8em*/;
	color: #0ead2e;
	background: #fff;
	font-weight: normal;
	text-align: center;
	text-decoration: none;
	border: solid 1px #0ead2e;
	transition: background-color 0.5s;
	}
.linkBtn a:hover	{
	color: #fff;
	background: #0ead2e;
	border: solid 1px #0ead2e;
	transition: background-color 1.0s;
	}
ul.listing li > .linkBtn a	{
	display:block;
	padding: .4em .8em;
	}	
ul.pageLink	{
	margin: 30px auto;
	text-align:center;
	}	
ul.pageLink	li	{
	display:inline-block;
	}
ul.pageLink	li a	{
	display: block;
	text-decoration: none;
	margin: 0 10px;
	padding: 5px;
	width: 18px;
	height: 18px;
	line-height: 18px;
	text-align: center;
	color: #2dad37;
	background: #fff;
	border: solid 1px #2dad37;
	}
ul.pageLink	li a:hover, ul.pageLink li a.current	{
	color: #fff;
	background: #2dad37;
	}		

#page-top {
	position:fixed;
	/*left: auto;*/
  bottom: 20px;
 	right: 20px;
	/*margin-left: 928px;*/
	}
#page-top a {
  background: #ccdcd9;
	transition: background-color 1.0s;
  text-decoration: none;
  color: #fff;
  width: 50px;
	height: 50px;
	border-radius: 25px;
  padding: 0;
  text-align: center;
	line-height: 50px;
  display: block;
	}
#page-top a:hover {
  text-decoration: none;
  background: #2dad37;
}

/* image処理 */
img.circle	{ 
	border-radius: 100%;
	margin-bottom: 1em;
	}

/* ul */
ul.list-disc	{
	list-style-type : disc;
	margin-left: 1em; 
	}	
.indent	{
	margin-left: 1em;
	text-indent: -1em;
	}

/********** main contents **********/

/* topPage */

.topInfo	{
	display: flex;
	margin: 0 -30px; 
	}
.topInfo section	{ 
	display: table-cell;
	position:relative;
	margin: 30px;
	padding: 30px;
	box-sizing: border-box; 
	background: #eaecea;
	flex: 1; }
.topInfo section dl.info_ymd	{ margin-bottom:30px; }	
.topInfo section div	{
	padding: 30px;
	position:absolute;
	right: 0;
	bottom: 0;
	}
.bottomBnr	{
	margin: 50px -20px;
	display: flex;
	}
.bottomBnr div	{ flex: 1; }

.topTopics ul	{
	margin-top: 1em;
	}
.topTopics li	{
	margin-bottom: 2em;
	}	
.topTopics li:after	{
	content: "";
	clear: both;
	display: block;
	}	
.topTopics li img	{ 
	float:left;
	padding-top:5px;
	padding-right: 10px;
	 }
.topTopics li p	{ overflow:hidden; } 

.content_inner	{ 
	max-width:100%;
	text-align: center;
	margin: 0 auto;
	}
.content_inner a	{ padding: auto 10px; }	

/* add_20230524 */
.shell  { display: flex; }
.shell .equalize {
	justify-content: space-between;
 }


/* concept */

.concept	{
	position: relative;
	width: 978px;
	height:1100px;
	background: url(../concept/img/bg_concept.gif) no-repeat top center; 
	}
.concept p	{
	position: absolute;
	font-size: 17px/*18px*/;
	}	
.concept h1	{
	position: absolute;
	margin: 0;
	text-align: left!important;
	font-family: '游ゴシック体', 'Yu Gothic', YuGothic; 
	font-weight: bold;
	top: 10px;
	left: 225px;
	} 			
.cap01	{ top: 380px; left: 225px; }
.cap02	{ top: 562px; left: 225px; }
.cap03	{ top: 754px; left: 225px; }
.cap04	{ top: 951px; left: 225px; }
.cap05	{ top: 500px; left: 720px; }
.cap06	{ top: 695px; left: 720px; }
.cap07	{ top: 871px; left: 720px; }

/* producer */
h2#ttl02	{
	margin: 100px 0 50px;
	padding: 0 90px 30px;
	border-top: solid 1px #000;
	border-bottom: solid 1px #000;
	text-align: left;
	font-weight: bold;
	line-height: 1.6;
	background: #fff;
	}	
h2#ttl02 > span.en	{
	display:block;
	margin: -20px auto -30px;
	padding:.5em 1em;
	width: 15em;
	text-align: center;
	background: #fff;
	}	
.listener	{ 
	margin: 1em 0;
	font-style: italic;
	}
.box_gy	{
	padding: 30px;
	background: #eaecea;
	}
	
dl.info_ymd	{ overflow: hidden; }
dl.info_ymd 	{ 
	margin: 0;
	}
dl.info_ymd dt	{
	padding-top: 1em;	
	width: 100px;/* 16px=120px */
	float: left;
	font-weight: bold;
	}
dl.info_ymd dd	{
	padding:1em 0 1em 110px;
}	
.topInfo dl.info_ymd { line-height: 1.6em; }
.topInfo dl.info_ymd > dt	{ font-weight: normal; }


/* list, works, creators */

ul.listing, ul.works {
	margin:50px 0 50px -30px;
	font-size: 0; 
	}
ul.listing li, ul.works li {
	position:relative;
	margin:30px 0 30px 30px;
  width: 222px;
  display: inline-block;
  vertical-align: top;
	font-size: 14px;
	text-align: center;
	}
ul.listing li span.ttl, ul.listing li span.name, dl.info dt.name	{
	font-size: 20px/*21px*/;
	font-weight: bold;
	line-height: 1em;
	letter-spacing: .1em;
	}
ul.listing li span.en, ul.listing li span.positionTtl	{
	font-size: 12px;
	line-height: 1.4em;
	}			
ul.listing li p	{
	padding-top: 1em;
	line-height: 1.5em;
	text-align: left;
	}	


/* works */

h2.small02	{
	padding-bottom:  .5em;
	font-size: 24px;
	font-weight: normal;
	text-align: left;
	border-bottom: solid 2px #bcbcbc;
	}
ul.works li	{
	text-align: left; 
	line-height: 1.4;
	font-size: 12px;
	font-family: '游ゴシック体', 'Yu Gothic', YuGothic; 
	}
ul.works li img, .wInfo, .cpy, .handle	{ margin-bottom: 1em; }	
.cpy	{ 
	display: block;
	margin-top: -1em;
	font-size: 10px;
	}
ul.works li hr	{
	margin:1.5em 0;
	border-top: 1px dashed #e3e6e6;
	}
.wInfo, span.tieUp	{ color: #2dad37; }
.wInfo span	{ color: #231815; }	
.wName, .wTtl	{
	margin-bottom: 1em;
	font-size: 14px;
	font-weight: bold; 
	}

p.handle > span	{ font-weight: bold; }
.wCap	{ 
	font-weight: normal;
		font-size: 12px;
	color: #666;
	}	
	.wName .wCap	{
		font-weight: normal;
		font-size: 12px;
		color: #231815;
	}

/* creators */
	
ul.listing li span.positionTtl	{
	display:inline-block;
	font-weight: bold;
	color: #2dad37;
	padding-bottom: 1em;
	}	
ul.listing li img.ph_s	{/* creators plofile */
	width: 190px;
	height: 190px;
	}
.agent	{ /* agent icon */
	position:absolute;
	top:150px;
	left:150px;
	}
div.ph_agent	{
	width: 306px;
	height:600px;
	position: relative;
	}
.agent2	{ /* agent icon */
	position:absolute;
	top:220px;
	left:220px;
	}			
.body02	{ /* grid8 class */ }
.body02 h2	{
	margin: 0;
	padding: 0;
	text-align: left;
	line-height: .8em;
	letter-spacing:  .1em;
	font-weight: bold;
	}
.body02 h2 > span	{
	display:block;
	margin:0; line-height: 1em;
	}
.body02 h2 > .en	{ margin-top: 1.5em; }
.body02	 .listener	{ margin-top: 3em; }
.body02	 p	{ margin-bottom: 1em; }

.body02 ul.works	{ margin: 0 0 0 -34px;}
.body02 ul.works li	{
	width:306px;
	/*background:#cff;*/
	}
.body02 ul.works li img	{
	position: relative;
	margin-right: 10px; 
	width: 80px;
	height: 80px;
	float: left;
	}
.body02 ul.works li p	{ 
	margin:0 0 .5em 90px;
	font-size: 12px;	
	}
.body02 .cpy	{
	position: absolute;
	top : 90px;
	left: 0;
	font-size: 8px;
	}
ul.snsIcon	{
	margin: 10px 0;
	text-align:center;
	width:270px;
	/*background:#FCF;*/
	font-size: 0;
	}	
ul.snsIcon li	{
	display: inline-block;
	padding: 0 11px;
	text-align: center;
	}
ul.pageLink	li:first-child	{
	padding-left: 0;}	
	
/* other creators */
dl.info	{
	margin-bottom: 2em;
	}
dl.info dt	{ padding-top: 0; } 
	
dl.info dt.name	{
	width:170px/*21px_8em*/;
	float: left;
	line-height: 1.4em;
	}	
dl.info dd	{ 
	padding-top: 0;
	padding-bottom:3em;
	}
dl.info dd	> dl.info_ymd	 dd	{ padding-bottom: 0;}	

/* corporate */
.waku	{
	padding: 10px;
	border: solid 1px #ccc;
}
.waku dd	{ margin-bottom: 1em;}
	
/* recruit */
address	{
	margin:1em 0;
	padding: 20px;
	border: solid 1px #222;
	}
	
/* privacy */
dl.style01	{ letter-spacing: .1em; }
dl.style01 dt	{ font-weight: bold; }	
dl.style01 dd	{ margin-bottom: 2em; }	

/* news topics */
.news_topics dl.info		{
	margin-bottom:3em;
	padding-bottom: 1em;
	border-bottom: solid 1px #ccc; }
.news_topics dl.info dt	{
	float: none;
	color: #2dad37;
	}
.news_topics a[target="_blank"]:after,.topNews a[target="_blank"]:after	{
  content:url(../img/pageLink.gif) ;
}	
	

/* clearfix */
.clearfix:after {
    content:" ";
    display:block;
    clear:both;
}


