@charset "utf-8";

.pc-only { display: block; }
.sp-only { display: none; }

html,body,h1,h2,h3,h4,h5,ul,ol,dl,p,dd{
	margin:0;
	padding:0;
	list-style:none;
}

html,body{
	font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',Osaka,sans-serif;
	color:#000;
	font-weight:normal;
	text-align:left;
}
.cf:after {
	content:"";
	display:block;
	clear:both;
}
html { font-size: 62.5%; }
body {
	font-size: 1.0rem;
	background: #fff;
	min-width: 1280px;
	word-wrap: break-word;
	overflow-wrap: break-word;
	-webkit-text-size-adjust: 100%;
}
img {
	border: 0;
	vertical-align: bottom;
}
a {
	color: #000;
	text-decoration: none;
}
a:hover img{filter:alpha(opacity=70);opacity:0.70}
a:hover {
	text-decoration: underline;
}
.tac {
	text-align: center;
}
.inner {
	margin: 0 auto;
	width: 1280px;
}
.w980 {
	margin: 0 auto;
	width: 980px;
}
#container {
	padding-top: 45px;
}
.colBlock {
	overflow: hidden;
	margin-top: 55px;
	margin-bottom: 80px;
}
.colBlock .colL {
	float: left;
	width: 650px;
}
.colBlock .colR {
	float: right;
	width: 280px;
}
.font12 { font-size: 1.2rem!important; }
.font13 { font-size: 1.3rem!important; }
.font14 { font-size: 1.4rem!important; }
.font15 { font-size: 1.5rem!important; }
.font16 { font-size: 1.6rem!important; }
.mt100 { margin-top: 100px!important; }
.mb10 { margin-bottom: 10px!important; }

#about_ol td,
#recruit_ol .detail dd,
#maker_ol h3,
.colL p { text-align: justify; }
#recruit_ol .detail dd { box-sizing: border-box; }
noscript {
    background: #aa0707;
    color: #fff;
    display: block;
    padding: 10px;
    text-align: center;
    font-size: 1.4rem;
}
/* ----------------------------------------------
　ヘッダー
---------------------------------------------- */
header {
	background: #323232;
	height: 45px;
	position: fixed;
	z-index: 10000;
	width: 100%;
	min-width: 1280px;
}
.headBox {
	position: relative;
	width: 1280px;
}
.headBox .spNav {
	display: none;
}
.headBox .logo {
	position: absolute;
	top: 10px;
	left: 150px;
}
.headBox .colL {
	position: absolute;
	top: 0;
	left: 235px;
}
.headBox .colL ul {
	overflow: hidden;
}
.headBox .colL ul li {
	float: left;
	font-size: 1.3rem;
	line-height: 45px;
	margin-left: 40px;
}
.headBox .colL ul li:first-child {
	margin-left: 0;
}
.headBox .colL ul li a {
	display: block;
	color: #fff;
}
.headBox .colL ul li img {
	vertical-align: middle;
}
.headBox .colR {
	position: absolute;
	top: 10px;
	right: 150px;
}
.headBox .floatMenu {
	background: url(../img/common/bg_nav.png) no-repeat left top;
	padding: 7px 0 0;
	z-index: 10001;
}
.headBox .float01 {
	display: none;
	position: absolute;
	top: 45px;
	left: 235px;
}
.headBox .float02 {
	display: none;
	position: absolute;
	top: 45px;
	left: 340px;
}
.headBox .float03 {
	display: none;
	position: absolute;
	top: 45px;
	left: 420px;
}
.headBox .float04 {
	display: none;
	position: absolute;
	top: 45px;
	left: 820px;
}
.headBox .float05 {
	display: none;
	position: absolute;
	top: 45px;
	left: 900px;
}
.headBox .float06 {
	display: none;
	position: absolute;
	top: 45px;
	left: 520px;
}
.headBox .floatMenu ul {
	background-color: rgba(35,24,21,0.75);
	padding: 15px;
}
.headBox .floatMenu ul li {
	background-color: #323333;
	font-size: 1.2rem;
	line-height: 30px;
	margin-top: 2px;
	min-width: 160px;
}
.headBox .floatMenu ul li:first-child {
	margin-top: 0;
}
.headBox .floatMenu ul li a {
	color: #919191;
	padding-left: 15px;
}
.headBox .floatMenu ul li a.current,
.headBox .floatMenu ul li a:hover {
	color: #fff;
	font-weight: bold;
}
.headBox .float02 ul,
.headBox .float03 ul {
	overflow: hidden;
}
.headBox .float02 ul li,
.headBox .float03 ul li {
	float: left;
}
.headBox .float02 ul li:nth-child(1),
.headBox .float02 ul li:nth-child(2),
.headBox .float03 ul li:nth-child(1),
.headBox .float03 ul li:nth-child(2) {
	margin-top: 0;
}
.headBox .float02 ul li:nth-child(odd),
.headBox .float03 ul li:nth-child(odd) {
	clear: both;
	margin-right: 2px;
}
#searchContact {
	position: absolute;
	top: 0;
	right: 76px;
}
#contactBtn {
	position: fixed;
	right: 8px;
	bottom: 80px;
	z-index: 1000;
}
#contactBtn:hover {
    opacity: 0.7;
}
#overlay_menu {
	visibility: hidden;
}
#localNav {
	display: none;
}
/* ----------------------------------------------
　フッター
---------------------------------------------- */
#footerLink {
	margin: 45px 0 20px;
}
#footerLink a {
    color: #000;
}
#ftLinkWrap {
	overflow: hidden;
	margin: 0 0 50px;
}
#ftLinkWrap .colL {
	float: left;
	width: 175px;
}
#ftLinkWrap .ttl {
	color: #666;
	font-size: 1.3rem;
	margin-bottom: 10px;
}
#ftLinkWrap ul {
	margin-bottom: 20px;
}
#ftLinkWrap li {
	color: #8C8989;
	font-size: 1.1rem;
}
#ftLinkWrap .colR {
	float: right;
}
#footerLink .links {
	overflow: hidden;
}
#footerLink .links li {
	float: left;
	margin-left: 12px;
	margin-bottom: 12px;
	width: 236px;
}
#footerLink .links li:nth-child(1),
#footerLink .links li:nth-child(5),
#footerLink .links li:nth-child(9) {
	margin-left: 0;
}
#footerLink .links li img {
	height: auto;
	width: 100%;
}
#footerLink .comment {
	margin-top: 35px;
	color: #666;
	font-size: 1.1rem;
}
#footerLink .comment a {
	color: #0066BC;
}
#footerLink .comment i {
	font-style: normal;
}

footer {
	background: #bbb;
}
footer .col2 {
	overflow: hidden;
	padding: 20px 0;
}
footer .col2 .colL {
	float: left;
}
footer .col2 .colL ul {
	overflow: hidden;
}
footer .col2 .colL ul li {
	float: left;
}
footer .col2 .colL ul li::after {
	content: "¦";
}
footer .col2 .colL ul li:last-child::after {
	content: "";
}
footer .col2 .colL ul li a {
	color: #666;
	font-size: 1.1rem;
	padding: 0 12px;
}
footer .col2 .colL ul li:first-child a {
	padding-left: 0;
}
footer .col2 .colR {
	float: right;
}
footer .col2 .colR p {
	color: #666;
	font-size: 1.2rem;
}
footer .col2 .colR p span {
	color: #fff;
}

/* ----------------------------------------------
　サイドバー
---------------------------------------------- */
#sideBanner {
	margin: 0 0 50px;
}
#sideBanner li {
	margin: 0 0 10px;
	overflow: hidden;
}
.sideBox {
	margin: 0 0 40px;
}
.sideBox .headBlock p {
	font-size: 2.2rem;
	font-weight: bold;
	display: inline;
	margin-bottom: 20px;
}
.sideBox .headBlock span {
	font-size: 1.2rem;
	margin-left: 0;
}
.sideBox .headBlock span::before {
	content: "＜";
	color: #0066B2;
}
.sideBox .headBlock span::after {
	content: "＞";
	color: #0066B2;
}
.sideBox .headBlock a {
	color: #0066B2;
	padding: 0 2px;
}
.sideBox li {
	margin-bottom: 15px;
}
.sideBox li a {
	display: block;
	overflow: hidden;
}
.sideBox li a div:nth-child(1) {
	float: left;
	width: 90px;
	overflow: hidden;
}
.sideBox li a div:nth-child(2) {
	float: right;
	width: 175px;
}
.sideBox .cat {
	color: #D60000;
	font-size: 1.1rem;
	margin: 0 0 10px;
}
.sideBox .cat span {
	color: #666;
	font-size: 1.1rem;
}
.sideBox .cat span::before {
	content: "｜";
}
.sideBox .ttl,
.sideBox .exp {
	color: #231815;
	font-size: 1.2rem;
}

/* ----------------------------------------------
　トップページ
---------------------------------------------- */
#bnr_top_a {
	margin: 0;
}
#bnr_top_a ul {
	overflow: hidden;
}
#bnr_top_a ul li {
	float: left;
	width: 25%;
	overflow: hidden;
}
#bnr_top_b {
	margin: 0 0 10px;
}
#bnr_top_b ul {
	overflow: hidden;
}
#bnr_top_b ul li {
	float: left;
	width: 50%;
	overflow: hidden;
}
#noteWrap {
	margin: 70px auto 60px;
	width: 980px;
}
#noteWrap .headBlock {
	overflow: hidden;
	margin: 0 0 8px;
}
#noteWrap .headBlock h2 {
	display: inline;
	color: #4B4B4B;
	font-size: 2.4rem;
}
#noteWrap .headBlock span {
	font-size: 1.2rem;
	margin-left: 25px;
}
#noteWrap .headBlock span::before {
	content: "＜";
	color: #0066B2;
}
#noteWrap .headBlock span::after {
	content: "＞";
	color: #0066B2;
}
#noteWrap .headBlock a {
	color: #0066B2;
	padding: 0 5px;
}
#noteWrap ul {
	overflow: hidden;
}
#noteWrap ul li {
	float: left;
	margin-left: 17px;
	margin-bottom: 16px;
	width: 232px;
}
#noteWrap ul li:nth-child(4n+1) {
    clear: both;
	margin-left: 0;
}
#noteWrap .pic {
	overflow: hidden;
}
#noteWrap .cat {
	color: #D60000;
	font-size: 1.1rem;
	margin: 10px 0;
}
#noteWrap .cat span {
	color: #666;
	font-size: 1.1rem;
}
#noteWrap .cat span::before {
	content: "｜";
}
#noteWrap .ttl,
#noteWrap .exp {
	color: #231815;
	font-size: 1.2rem;
}
#gamoNewsArea {
	margin-bottom: 38px;
}
.bg_db {
	background: #DBDBDB;
}
#newsArea {
	font-size: 1.3rem;
	padding: 30px 0;
}
#newsArea {
	margin: 0 auto;
	padding: 30px 0;
	width: 980px;
}
#newsArea h3 {
	margin-bottom: 15px;
}
#newsArea ul {
	margin-bottom: 15px;
}
#newsArea p span {
	font-size: 1.2rem;
}
#newsArea p span::before {
	content: "＜ ";
	color: #0066B2;
}
#newsArea p span::after {
	content: " ＞";
	color: #0066B2;
}
#newsArea p span a {
	color: #0066B2;
	padding: 0 5px;
}
#topvs3 {
  position: relative;
  height: 0;
  padding: 0 0 56.25%;
  overflow: hidden;
}
#topvs3 iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/* ----------------------------------------------
　ニュース
---------------------------------------------- */
#newsDetailBlock {
	color: #333;
}
#newsDetailBlock .colBlock {
	margin-bottom: 115px;
}
#standard_ol h1,
#newsDetailInner h1 {
	font-size: 2.2rem;
}
#standard_ol h2,
#newsDetailInner h2 {
	color: #231815;
	font-size: 1.8rem;
	margin-bottom: 12px;
}
#newsDetailInner .cat {
	color: #E70000;
	font-size: 1.1rem;
	margin: 15px 0 40px;
}
#newsDetailInner .cat span {
	color: #666;
}
#newsDetailInner .cat span::before {
	content: "｜";
	color: #666;
}
#standard_ol p,
#newsDetailInner p {
	font-size: 1.4rem;
	text-align: justify;
	line-height: 1.85;
	margin-bottom: 30px;
}
#standard_ol img,
#newsDetailInner img {
	height: auto;
	max-width: 100%;
	width: auto;
}
#standard_ol hr,
#newsDetailInner hr {
	border: none;
	background: url(../img/news/ex_hr.png) repeat-x left center;
	height: 2px;
	margin: 30px 0;
}
#standard_ol a,
#newsDetailInner a {
	color: #f00;
	text-decoration: underline;
}

#std_ol {
	margin-bottom: 60px;
}
.vimeo {
  position: relative;
  height: 0;
  padding: 0 0 56.25%;
  overflow: hidden;
}
.vimeo iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


#searchform {
	position: absolute;
	top: -4px;
	right: 30px;
}
.icon-search-container {
	display: inline-block;
	height: 20px;
	width: 30px;
	position: relative;
	transition: width 0.2s ease-out;
	backface-visibility: hidden;
}
.icon-search-container.active {
	width: 150px;
}
.icon-search-container.active .search-input {
	width: 120px;
}
.icon-search-container img {
	color: #2980b9;
	font-size: 30px;
	position: absolute;
	top: 7px;
	left: 8px;
	cursor: pointer;
}
.icon-search-container .fa-times-circle {
	opacity: 0;
	color: #d9d9d9;
	font-size: 20px;
	position: absolute;
	top: 12px;
	right: 8px;
	transition: opacity 0.2s ease-out;
	cursor: pointer;
}
.icon-search-container .search-input {
	background: #323232;
	box-sizing: border-box;
	color: #000;
	position: absolute;
	cursor: default;
	left: 30px;
	top: 0;
	width: 0;
	padding: 5px;
	border: none;
	outline: none;
	font-size: 1.4rem;
	line-height: 20px;
	transition: width 0.2s ease-out;
}
.active .search-input {
	background: #ccc;
}
#searchformSP {
	padding: 10px 0;
}
#searchformSP .icon-search-container.active {
	width: 80%;
}
#searchformSP .icon-search-container.active .search-input {
	width: 100%;
}
#searchformSP .icon-search-container img {
	left: 0;
}
#searchformSP .icon-search-container .search-input {
	background: #000;
}
#searchformSP .active .search-input {
	background: #ccc;
}
#bnr_top_a a img,
#bnr_top_b a img,
#noteWrap a img,
#sideBanner a img,
.sideNews a img {
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
#bnr_top_a a:hover img,
#bnr_top_b a:hover img,
#noteWrap a:hover img,
#sideBanner a:hover img,
.sideNews a:hover img {
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
}

.pager {
	font-size: 1.4rem;
	margin: 35px 0 30px;
}
.pager span {
	padding: 0 8px;
	cursor: pointer;
}
.pager .current {
	font-size: 1.6rem;
	font-weight: bold;
}
.pager .prev {
	margin-right: 15px;
	padding: 0 3px;
}
.pager .next {
	margin-left: 15px;
	padding: 0 3px;
}
.pager .first,
.pager .last {
	padding: 0 3px;
}


#newsSection {
	margin-bottom: 50px;
}
#newsCategory {
    background: #313232;
    height: 85px;
}
#newsCatTab {
    position: relative;
}
#newsCatTab p {
    position: absolute;
    left: 100px;
    top: 0;
    line-height: 85px;
    color: #fff;
    font-size: 1.8rem;
    font-weight: bold;
}
#newsCatTab ul {
    text-align: center;
}
#newsCatTab ul li {
    color: #999899;
    cursor: pointer;
    display: inline-block;
    font-size: 1.4rem;
    line-height: 85px;
    height: 85px;
    margin: 0 35px;
}
#newsCatTab ul li.active {
    background: url(/img/top/newstab_current.png) no-repeat center bottom;
    color: #fff;
}
.newsCatCls ul {
    margin: 40px auto;
    width:  980px;
}
ul#listNewsId {
    margin: 40px auto;
    width:  650px;
}
.newsCatCls ul li,
ul#listNewsId li {
    border-top: 1px solid #ccc;
    position: relative;
    padding: 10px 0 10px 125px;
    font-size: 1.4rem;
    line-height: 2;
}
.newsCatCls ul li:first-child,
ul#listNewsId li:first-child {
    border: none;
}
.newsCatCls ul li i,
ul#listNewsId li i {
    position: absolute;
    left: 0;
    font-style: normal;
    background: url(/img/top/newstab_dot.png) no-repeat right center;
    width: 115px;
}
.newsCatCls ul li a,
ul#listNewsId li a {
    display: block;
    color: #086296;
    margin: 5px 0 0;
}
.newsCatCls .newsBtn {
    text-align: center;
}
.newsCatCls .newsBtn a {
    display: inline-block;
    border: 1px solid #999899;
    font-size: 1.8rem;
    line-height: 55px;
    height: 55px;
    width: 238px;
}
.newsCatCls .newsBtn a:hover {
    background: #323333;
    color: #fff;
    text-decoration: none;
    transition : all 0.2s ease 0s;
}
#mediaInner {
	display: none;
}
#bnrSetBlock p {
	text-align: center;
	font-size: 1.8rem;
	margin-bottom: 16px;
}
#bnrSetBlock ul {
	overflow: hidden;
	margin: 0 1px 30px;
}
#bnrSetBlock ul li {
	float: left;
	width: 213px;
}
#bnrSetBlock ul li img {
	height: auto;
	width: 100%;
	max-width: 100%;
}
#snsSetBlock {
	margin: 85px 0;
}
#snsSetBlock p {
	text-align: center;
	font-size: 1.8rem;
	margin-bottom: 22px;
}
#snsSetBlock ul {
	text-align: center;
	margin: 0 0 30px;
}
#snsSetBlock ul li {
	display: inline-block;
	margin: 0 20px;
	width: 130px;
}
#snsSetBlock ul li img {
	height: auto;
	width: 100%;
	max-width: 100%;
}
#promoWrap {
	margin: 110px auto 50px;
	width: 980px;
}
#promoMov {
    position:relative;
    width:100%;
    height:0;
    padding-top:56.25%;
    text-align: center;
}
#promoMov iframe {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}
#promoMovTxt {
    font-size: 1.2rem;
    margin: 8px 0 0;
}
#promoLogo {
	margin: 28px auto 18px;
}
#promoLogo i {
	margin-right: 18px;
}
#promoLogo p {
	display: inline-block;
}
#promoTxt p {
	color: #666;
	font-size: 1.4rem;
}
#promoTxt p a {
	color: #DC6EA3;
}

@media screen and (max-width:768px) {
	#contactBtn {
		height: 51px;
		width: 51px;
		bottom: 20px;
	}
	#contactBtn img {
		height: auto;
		width: 100%;
	}
	#newsCategory {
		height: 60px;
	}
	#newsCatTab p {
		left: 10px;
		line-height: 60px;
	}
	#newsCatTab ul li {
		font-size: 1.4rem;
		line-height: 60px;
		height: 60px;
		margin: 0 5vw;
	}
	.newsCatCls ul,
	ul#listNewsId {
		width:  90%;
	}
	.newsCatCls ul li,
	ul#listNewsId li {
		padding: 10px 0;
		line-height: 1.7;
	}
	.newsCatCls ul li:first-child,
	ul#listNewsId li:first-child {
		border: none;
	}
	.newsCatCls ul li i,
	ul#listNewsId li i {
		display: inline-block;
		position: static;
	}
	.newsCatCls ul li p,
	ul#listNewsId li p {
		display: inline;
	}
	ul#listNewsId li span {
		display: inline;
		padding-left: 1em;
	}
	.newsCatCls .newsBtn a {
		font-size: 1.6rem;
		line-height: 46px;
		height: 46px;
		width: 220px;
	}
	#bnrSetBlock ul {
		margin: 0 0 30px;
	}
	#bnrSetBlock ul li {
		float: left;
		width: 50%;
	}
	#snsSetBlock p {
		margin-bottom: 8px;
	}
	#snsSetBlock ul {
		margin: 0 30px 30px;
		overflow: hidden;
	}
	#snsSetBlock ul li {
		float: left;
		margin: 16px 4% 0;
		width: 25.33%;
	}
	#promoWrap {
		margin: 50px auto;
		width: 100%;
	}
	#promoMov {
		margin: 28px auto 18px;
		width: 92%;
	}
	#promoMovTxt {
		margin: 0 auto;
		width: 92%;
	}
	#promoLogo {
		margin: 28px auto 18px;
		width: 92%;
	}
	#promoLogo p {
		margin-top: 10px;
	}
	#promoTxt {
		margin: 0 auto;
		width: 92%;
	}
}