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

common

@media screen and (max-width: 640px) {
	}

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

@import url('https://fonts.googleapis.com/css?family=Lato:300,400,700');

html, body {
	position: relative;
	height: 100%;
	}

body {
	font-family: 'Lato',"Helvetica Neue","游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif;
	font-size: 15px;
	font-weight: normal;
	font-weight: 300;
	color:#000;
	margin: 0;
	padding: 0;
	}

a{
	text-decoration: none;
	color:#000;
	-webkit-transition: all .2s;
	-moz-transition: all .2s;
	-o-transition: all .2s;
	-ms-transition: all .2s;
	transition: all .2s;
	}

ul,li{
	margin: 0;
	padding: 0;
	list-style-type: none;
	}

h1,h2,h3,h4,h5,p{
	margin: 0;
	padding: 0;
	}

img{
	vertical-align: bottom;
	}

*{
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	-webkit-box-shadow: none;
	box-shadow: none;   
	outline: none;
	box-sizing: border-box;
	}

.fixed{
	position: fixed;
	width: 100%;
	}

.pconly{
	display: block;
	}
@media screen and (max-width: 640px) {
.pconly{
	display: none;
	}
	}

.sponly{
	display: none;
	}
@media screen and (max-width: 640px) {
.sponly{
	display: block;
	}
	}

.pci{
	display: inline;
	}
@media screen and (max-width: 640px) {
.pci{
	display: none;
	}
	}

.spi{
	display: none;
	}
@media screen and (max-width: 640px) {
.spi{
	display: inline;
	}
	}

.TOPICS{
	color: #AAA;
	}
.CAR{
	color: #EA5D5D;
	}
.WATCH{
	color: #3492FF;
	}
.FASHION{
	color: #FFB053;
	}
.CULTURE{
	color: #6AD072;
	}
.PLAYING{
	color: #D28BF7;
	}


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

wrapper

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

#wrapper{
	position: relative;
	width: 1120px;
	min-width: 1120px;
	margin: 0 auto;
	padding: 0 0 0;/*60px;*/
	}
@media screen and (max-width: 640px) {
#wrapper{
	width: 100%;
	min-width: 100%;
	}
	}


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

ヘッダー

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

header{
	width: 100%;
	position: relative;
	}

header h1{
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	width: 195px;
	height: 84px;
	margin: 30px auto 10px;
	background-position: center center;
	background-repeat: no-repeat;
	background-image: url(../images/logo.png);
	background-size: contain;
	}
@media screen and (max-width: 640px) {
header h1{
	width: 130px;
	height: 56px;
	margin: 20px auto;
	}
	}

header h1 a{
	display: block;
	width: 100%;
	height: 100%;
	}


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

search_container

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

.search_container{
	position: absolute;
	top: 0;
	right: 0;
	box-sizing: border-box;
	display: block;
	overflow: hidden;
	height: auto;
	width: 200px;
	padding: 5px 10px;
	border: 1px solid rgba(0,0,0,0.05);
	background-color:  rgba(0,0,0,0.05);
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	-ms-border-radius: 3px;
	}
@media screen and (max-width: 640px) {
.search_container{
	display: none;
	}
	}

.search_container input[type="text"]{
	border: none;
	height: 20px;
	background: none;
	}
.search_container input[type="text"]:focus {
	outline: 0;
	}
.search_container input[type="submit"]{
	position: absolute;
	height: 20px;
	right: 3px;
	top: 5px;
	border: none;
	outline : none;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 1em;
	background: none;
	color: #000;
	cursor: pointer;
	}
.search_container ::-webkit-input-placeholder {
	color: #000;
	}


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

ナビゲーション

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

.navigation {
	position: absolute;
	width: 1120px;
	left: 50%;
	margin-left: -560px;
	z-index: 9999;
	padding: 20px 0;
	background-color: #fff;
	}
@media screen and (max-width: 640px) {
.navigation {
	top: 0;
	left: 4%;
	width: auto;
	padding: 0 0;
	margin-left: 0;
	background-color: transparent;
	}
	}

.navigation.sticky {
	position: fixed;
	top: 20px;
	}
@media screen and (min-width: 641px) {
.navigation.sticky {
	position: fixed;
	top: 0;
	}
	}

a.nav-button {
	display: none;
	}
@media screen and (max-width: 640px) {
a.nav-button {
	display: block;
	cursor: pointer;
	}
a.nav-button.active {
	position: fixed;
	top: 20px;
	left: 4%;
	}
	}

.nav-wrap {
	}
@media screen and (min-width: 641px) {
.nav-wrap {
	display: block !important;
	}
	}
@media screen and (max-width: 640px) {
.nav-wrap {
	position: fixed;
	left: 0;
	top: 0;
	display: none;
	z-index: 10;
	background-color: rgba(255,255,255,1);
	width: 100%;
	height: 100%;
	}
	}

@media screen and (max-width: 640px) {
.nav-wrap .nav-inner {
	height: 100%;
	position: relative;
	overflow-x: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	}
	}

.nav-logo {
	display: none;
	}
@media screen and (max-width: 640px) {
.nav-logo {
	display: block;
	width: 130px;
	height: 56px;
	margin: 20px auto;
	}
.nav-logo img{
	width: 100%;
	height: 100%;
	}
	}

.nav-search_container{
	display: none;
	}
@media screen and (max-width: 640px) {
.nav-search_container{
	display: block;
	position: relative;
	box-sizing: border-box;
	overflow: hidden;
	height: auto;
	width: 80%;
	margin: 0 auto;
	padding: 5px 10px;
	border: 1px solid rgba(0,0,0,0.05);
	background-color:  rgba(0,0,0,0.05);
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	-ms-border-radius: 3px;
	}
.nav-search_container input[type="text"]{
	border: none;
	height: 30px;
	background: none;
	}
.nav-search_container input[type="text"]:focus {
	outline: 0;
	}
.nav-search_container input[type="submit"]{
	position: absolute;
	height: 30px;
	right: 3px;
	top: 5px;
	border: none;
	outline : none;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 1em;
	background: none;
	color: #000;
	cursor: pointer;
	}
.nav-search_container ::-webkit-input-placeholder {
	color: #000;
	}
	}

.nav-wrap ul.nav {
	font-size: 0;
	text-align: center;
	}
@media screen and (max-width: 640px) {
.nav-wrap ul.nav {
	position: relative;
	margin-top: 1.8rem;
	margin-bottom: 1.8rem;
	}
	}

ul.nav li {
	display: inline-block;
	font-size: .8rem;
	font-weight: 400;
	letter-spacing: .1rem;
	padding: 0 .5rem;
	}
@media screen and (max-width: 640px) {
ul.nav li {
	display: block;
	font-size: 1.3rem;
	font-weight: 400;
	letter-spacing: .05rem;
	margin-top: 1.6rem;
	text-align: center;
	}
	}

ul.nav li:nth-child(7), 
ul.nav li:nth-child(8) {
	border-right: 1px solid #000;
	}
@media screen and (max-width: 640px) {
ul.nav li:nth-child(7), 
ul.nav li:nth-child(8) {
	border-right: none;
	}
	}

ul.nav li a {
	padding: 2px 8px;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	-ms-border-radius: 3px;
	}

ul.nav li a:hover{
	color: #fff;
	}

ul.nav li.top a:hover,
ul.nav li.magazine a:hover,
ul.nav li.onlineshop a:hover{
	background-color:  #000;
	}
ul.nav li.topics a:hover{
	background-color:  #AAA;
	}
ul.nav li.car a:hover{
	background-color:  #EA5D5D;
	}
ul.nav li.watch a:hover{
	background-color:  #3492FF;
	}
ul.nav li.fashion a:hover{
	background-color:  #FFB053;
	}
ul.nav li.culture a:hover{
	background-color:  #6AD072;
	}
ul.nav li.playing a:hover{
	background-color:  #D28BF7;
	}

ul.nav li.topics.stay a{
	color: #fff;
	background-color:  #AAA;
	}
ul.nav li.car.stay a{
	color: #fff;
	background-color:  #EA5D5D;
	}
ul.nav li.watch.stay a{
	color: #fff;
	background-color:  #3492FF;
	}
ul.nav li.fashion.stay a{
	color: #fff;
	background-color:  #FFB053;
	}
ul.nav li.culture.stay a{
	color: #fff;
	background-color:  #6AD072;
	}
ul.nav li.playing.stay a{
	color: #fff;
	background-color:  #D28BF7;
	}

.nav-follow {
	display: none;
	}
@media screen and (max-width: 640px) {
.nav-follow {
	display: block;
	width: 80%;
	height: auto;
	margin: 0 auto 40px;
	padding: 15px 0;
	background-color:  rgba(0,0,0,0.05);
	text-align: center;
	}
.nav-follow p{
	font-size: .8em;
	text-align: center;
	}
.nav-follow ul{
	font-size: 0;
	text-align: center;
	margin-top: 10px;
	}
.nav-follow ul li{
	display: inline-block;
	margin: 0 5px;
	width: 35px;
	}
.nav-follow ul li img{
	width: 100%;
	height: auto;
	}
	}

.nav-wrap.open {
	display: block;
	}

.nav-wrap.close {
	display: none;
	}

/*ハンバーガー内*/
@media screen and (max-width: 640px) {

.nav-button,
.nav-button span {
	display: inline-block;
	transition: all 0.4s;
	box-sizing: border-box;
	}
.nav-button {
	z-index: 20;
	position: relative;
	width: 20px;
	height: 12px;
	}
.nav-button span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #000;
	}
.nav-button span:nth-of-type(1) {
	top: 0;
	}
.nav-button span:nth-of-type(2) {
	top: 5px;
	}
.nav-button span:nth-of-type(3) {
	bottom: 0;
	}
.nav-button.active span:nth-of-type(1) {
	-webkit-transform: translateY(16px) rotate(-45deg);
	transform: translateY(5px) rotate(-45deg);
	}
.nav-button.active span:nth-of-type(2) {
	opacity: 0;
	}
.nav-button.active span:nth-of-type(3) {
	-webkit-transform: translateY(-16px) rotate(45deg);
	transform: translateY(-5px) rotate(45deg);
	}

	}


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

共通フッター

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

footer{
	width: 100%;
	min-width: 1120px;
	height: auto;
	position: relative;
	margin-top: 40px;
	padding-bottom: 40px;
	}
@media screen and (max-width: 640px) {
footer{
	min-width: 100%;
	margin-top: 30px;
	padding-bottom: 50px;
	}
	}

footer .nav-follow {
	display: block;
	width: 100%;
	height: auto;
	padding: 25px 0;
	margin: 0 auto;
	background-color:  rgba(0,0,0,0.05);
	text-align: center;
	}
@media screen and (max-width: 640px) {
footer .nav-follow {
	width: 80%;
	padding: 15px 0;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	-ms-border-radius: 3px;
	}
	}

footer .nav-follow p{
	text-align: center;
	font-weight: bold;
	font-weight: 700;
	font-size: .9em;
	letter-spacing: .1em;
	}
@media screen and (max-width: 640px) {
footer .nav-follow p{
	font-size: .8em;
	}
	}

footer .nav-follow ul{
	font-size: 0;
	text-align: center;
	margin-top: 10px;
	}

footer .nav-follow ul li{
	display: inline-block;
	margin: 0 10px;
	width: 40px;
	}
@media screen and (max-width: 640px) {
footer .nav-follow ul li{
	margin: 0 5px;
	width: 35px;
	}
	}

footer .nav-follow ul li img{
	width: 100%;
	height: auto;
	}

footer .footerlogo{
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	width: 130px;
	height: 56px;
	margin: 60px auto 0;
	background-position: center center;
	background-repeat: no-repeat;
	background-image: url(../images/logo.png);
	background-size: contain;
	}
@media screen and (max-width: 640px) {
header h1{
	width: 130px;
	height: 56px;
	margin: 20px auto;
	}
	}

footer .footerlogo a{
	display: block;
	width: 100%;
	height: 100%;
	}

footer .sitemap{
	width: 960px;
	height: auto;
	margin: 50px auto 0;
	font-size: 0;
	}
@media screen and (max-width: 640px) {
footer .sitemap{
	width: 80%;
	}
	}

footer .sitemap ul{
	display: inline-block;
	vertical-align: top;
	padding: 20px 0 0;
	margin: 0 20px;
	border-top: 1px solid rgba(0,0,0,.5);
	}
@media screen and (max-width: 640px) {
footer .sitemap ul{
	display: block;
	padding: 10px 0 10px;
	margin: 0;
	}
	}

footer .sitemap ul.main{
	width: 200px;
	}
@media screen and (max-width: 640px) {
footer .sitemap ul.main{
	width: 100%;
	}
	}

footer .sitemap ul.special{
	width: 200px;
	}
@media screen and (max-width: 640px) {
footer .sitemap ul.special{
	width: 100%;
	}
	}

footer .sitemap ul.mag{
	width: 200px;
	}
@media screen and (max-width: 640px) {
footer .sitemap ul.mag{
	width: 100%;
	}
	}

footer .sitemap ul.etc{
	width: 200px;
	}
@media screen and (max-width: 640px) {
footer .sitemap ul.etc{
	width: 100%;
	}
	}

footer .sitemap ul li{
	font-weight: bold;
	font-weight: 700;
	font-size: .7rem;
	letter-spacing: .05em;
	line-height: 2.2em;
	}

footer .sitemap ul li a:hover{
	text-decoration: underline;
	}

footer .sitemap ul.sub{
	border-top: none;
	display: block;
	padding: 0;
	list-style-position: inside;
	}

footer .sitemap ul.sub li{
	font-weight: normal;
	font-weight: 400;
	padding: 0;
	text-indent: -1.5em;
	}
@media screen and (max-width: 640px) {
footer .sitemap ul.sub li{
	text-indent: 0;
	}
	}

footer .sitemap ul.sub li:before{
	content: 'ー';
	}

p.copyright{
	width: 100%;
	height: auto;
	margin-top: 80px;
	text-align: center;
	font-size: .8em;
	}
@media screen and (max-width: 640px) {
p.copyright{
	margin-top: 40px;
	font-size: .6em;
	}
	}


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

パンくず

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

#breadcrumbs{
	margin: 80px auto 0;
	width: 960px;
	height: auto;
	border-top: 1px solid rgba(0,0,0,.15);
	font-family: FontAwesome;
	font-size: .7em;
	line-height: 3em;
	color: rgba(0,0,0,.3);
	}
@media screen and (max-width: 640px) {
#breadcrumbs{
	display: none;
	}
	}

#breadcrumbs a{
	color: rgba(0,0,0,.3);
	}

#breadcrumbs a:hover{
	color: rgba(0,0,0,1);
	}


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

pagetop

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

#pagetop{
	position: fixed;
	width: 80px;
	right: 0;
	bottom: -80px;
	*display: none;
	z-index: 9999;
	cursor: pointer;
	}

@media screen and (max-width: 640px) {
#pagetop{
	width: 50px;
	}
	}

#pagetop img{
	width: 80px;
	height: 80px;
	}

@media screen and (max-width: 640px) {
#pagetop img{
	width: 50px;
	height: 50px;
	}
	}


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

オリジナルコンテンツ

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

.cc{
	padding-top: 56px;
	}
@media screen and (max-width: 640px) {
.cc{
	padding-top: 0;
	}
	}



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

フルスクリーン調整

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

header {
	min-width: 1120px;
	}
@media screen and (max-width: 640px) {
header {
	min-width: 100%;
	}
	}

.search_container {
	right: 2em;
	}
@media screen and (max-width: 640px) {
.search_container {
	right: auto;
	}
	}

.navigation {
	min-width: 1120px;
	width: 100%;
	margin-left: -50%;
	}
@media screen and (max-width: 640px) {
.navigation {
	min-width: auto;
	width: auto;
	margin-left: 0;
	}
	}

#wrapper {
	width: 100%;
	min-width: 1120px;
	}
@media screen and (max-width: 640px) {
#wrapper {
	min-width: 100%;
	}
	}