@charset "UTF-8";

/* ******************************
 responsive.css
****************************** */


/* *** tablet *** */

@media screen and (max-width:1040px) {
	/* ******************************
	common.css
	****************************** */
	
	#section_contents .inner {
	  width: auto;
	}
	
	body.product_naka #section_contents>.inner {
	  padding-left: 4%;
	  padding-right: 4%;
	}
	
	/* title */
	
	#section_contents h2 {
	  font-size: 25px;
	  margin-bottom: 25px;
	}
	
	/* banner
	------------------------------ */
	
	div#banner {
	  padding: 35px 25px 25px;
	}
	
	div#banner ul li {
	  width: 50%;
	}
	
	div#banner ul li a:hover img {
	  filter: alpha(opacity=100);
	  -moz-opacity: 1.0;
	  opacity: 1.0;
	}
	
	/* ******************************
	top.css
	****************************** */
	
	/* subNav
	------------------------------ */
	
	#subNav ul li {
	  padding: 10px;
	}
	
	#subNav ul li a p.ttl {
	  font-size: 12px;
	  letter-spacing: 0;
	}
	
	/* topNav（2018.6追加）
	------------------------------ */
	
	#topNav {
	  padding: 40px 15px;
	}
	
	#topNav ul>li {
	  width: 20%;
	  float: left;
	  padding: 0 5px;
	  box-sizing: border-box;
	}
	
	/* news
	------------------------------ */
	
	div#section_news h2 {
	  padding-top: 40px;
	  padding-bottom: 40px;
	  margin-bottom: 0;
	  background-size: 20px 20px;
	}
	
	ul.newsList li:before {
	  border: 30px solid transparent;
	  border-right: 30px solid #002842;
	  margin: -30px 0 0 -60px;
	}
	
	ul.newsList li:first-child+*:before, ul.newsList li:first-child+*+*+*:before {
	  border-right: 30px solid transparent;
	  border-left: 30px solid #002842;
	  margin: -30px 0 0 0;
	}
	
	ul.newsList li p.thum, #section_contents ul.newsList li a.detail {
	  height: 300px;
	}
	
	#section_contents ul.newsList li a.detail, #section_contents ul.newsList li:nth-child(even) a.detail {
	  padding: 0 25px;
	}
	
	ul.newsList li a.detail p {
	  line-height: 1.4;
	}
	
	#section_contents ul.newsList li a.detail:hover p.ttl {
	  color: #FFF;
	}
	
	div#section_news p.button_more a:hover {
	  background: transparent;
	}
	
	/* twitter
	------------------------------ */
	
	div#twitter {
	  background-size: 20px 20px;
	  padding: 30px 4% 15px;
	}
	
	/* app
	------------------------------ */
	
	div#app {
	  background: url(../img/top/bg_app_sp.jpg?var=20180510) 50% 22% no-repeat #000;
	  background-size: cover;
	  /* 	background-size: 100% auto; */
	  /* 	padding-left: 35%; */
	}
	
	div#app .inner {
	  padding: 5% 0 5% 5%;
	}
	
	div#app .inner>p.title {
	  width: 60%;
	  height: auto;
	  line-height: normal;
	}
	
	div#app .inner>.download {
	  width: 40%;
	  margin-left: -3%;
	  padding-top: 0;
	}
	
	div#app .inner>.download p.btn img {
	  width: 80%;
	}
	
	/* ******************************
	naka.css
	****************************** */
	
	/* common
	------------------------------ */
	
	/* subNav */
	
	body.product_naka #subNav ul {
	  width: auto;
	  table-layout: auto;
	}
	
	body.product_naka #subNav ul li {
	  width: 15%;
	  padding: 10px;
	}
	
	body.product_naka #subNav ul li:first-child {
	  width: 10%;
	}
	
	body.product_naka #subNav ul li a, body.product_naka #subNav ul li a p.thum, body.product_naka #subNav ul li a p.ttl {
	  display: block;
	}
	
	body.product_naka #subNav ul li.nav2 a p.ttl {
	  text-align: center;
	}
	
	body.product_naka #subNav ul li a p.thum {
	  width: 100%;
	}
	
	body.product_naka #subNav ul li a p.ttl {
	  width: 100%;
	  text-align: center;
	  padding-left: 0;
	  font-size: 10px;
	  line-height: 1.2;
	  white-space: normal;
	}
	
	body.product_naka #subNav ul li a p.ttl br {
	  display: none;
	}
	
	/* div */
	
	body.product_naka #section_contents>div {
	  padding-top: 30px;
	  padding-bottom: 30px;
	}
	
	div.lego_contents {
	  padding: 40px 4%;
	  background-size: 20px 20px;
	  margin-bottom: 30px\9;
	}
	
	div.lego_contents .box+.box {
	  padding-top: 30px;
	}
	
	div.content {
	  padding: 25px 30px;
	  margin-bottom: 30px\9;
	}
	
	div.content+div.content {
	  margin-top: 30px;
	}
	
	/* itemList */
	
	ul.itemList {
	  margin: 0 -7px -30px;
	}
	
	ul.itemList li {
	  width: 25%;
	  padding-bottom: 30px;
	}
	
	ul.itemList li a:hover img {
	  filter: alpha(opacity=100);
	  -moz-opacity: 1.0;
	  opacity: 1.0;
	}
	
	/* mainVisual */
	
	div#mainVisual {
	  background-size: auto 100%;
	  height: 260px;
	}
	
	div#mainVisual a.movie {
	  display: block;
	  height: 260px;
	  box-sizing: border-box;
	  padding-top: 105px;
	}
	
	div#mainVisual a.movie img {
	  width: 50px;
	}
	
	div#mainVisual a:hover img {
	  filter: alpha(opacity=100);
	  -moz-opacity: 1.0;
	  opacity: 1.0;
	}
	
	/* movies
	------------------------------ */
	
	div#movieList h2 {
	  font-size: 19px;
	  margin-bottom: 10px;
	}
	
	body#movies a.button {
	  max-width: 100%;
	  line-height: 35px;
	  padding: 5px 0;
	  font-size: 120%;
	  text-align: center;
	  margin: 10px auto 0;
	}
	
	/* sort */
	
	div#movieList>.inner div#sort {
	  position: relative;
	  right: auto;
	  top: auto;
	  text-align: right;
	  margin-bottom: 25px;
	}
	
	/* customselect */
	
	.customselect-wrap {
	  text-align: left;
	}
	
	div.content p.thum {
	  width: 38%;
	}
	
	div.content div.detail {
	  width: 59%;
	}
	
	div.content div.detail h3 {
	  font-weight: bold;
	  font-size: 30px;
	  margin-bottom: 20px;
	}
	
	div.content div.detail p.txt {
	  color: #FFF;
	  font-size: 14px;
	  margin-bottom: 20px;
	}
	
	/* bluray
	------------------------------ */
	
	/* product_work */
	
	#product_new .product_item, #product_work .product_item {
	  padding: 15px;
	}
	
	#product_new .product_item .image {
	  width: 100%;
	  float: none;
	  margin: 0 auto;
	  display: block;
	  margin-bottom: 3%;
	}
	
	#product_work .product_item .image {
	  float: left;
	  width: 40%;
	}
	
	#product_new .product_item a, #product_work .product_item a {
	  font-size: 80%;
	}
	
	#product_new .product_item dl, #product_work .product_item dl {
	  margin-bottom: 15px;
	}
	
	#product_new .product_item dl.buyList dd, #product_work .product_item dl.buyList dd {
	  width: 19%;
	}
	
	/* videos
	------------------------------ */
	
	ul.videoList {
	  margin: 0 -5px -25px;
	}
	
	ul.videoList li {
	  padding: 0 5px 25px;
	}
	
	#section_contents ul.videoList li a p.thum:before {
	  background-size: 30px 30px;
	}
	
	#section_contents ul.videoList li a p.thum span.genre {
	  font-size: 10px;
	}
	
	#section_contents ul.videoList li a:hover p.ttl {
	  color: #0d3863;
	}
	
	/* special（2018.6追加）
	------------------------------ */
	
	ul.special_list>li.matchHeight {
	  width: 50%;
	}
	
	#section_contents ul.special_list>li>a .title>p {
	  font-size: 3vw;
	}
	
	#section_contents ul.special_list>li>a .title>p span {
	  background-size: 28px auto;
	}
	
	/* title_special */
	
	.title_special {
	  margin-bottom: 30px;
	  margin-top: -30px;
	}
	
	#section_contents .title_special h2 {
	  font-size: 28px;
	  padding: 50px 0 30px;
	}
	
	/* features */
	
	ul.features_list {
	  margin: 0 -10px;
	}
	
	ul.features_list>li {
	  width: 50%;
	  padding: 0 10px 20px;
	}
	
	ul.features_list>li a div.title {
	  height: 18vw;
	  padding-top: 2vw;
	  padding-bottom: 2vw;
	}
	
	#section_contents ul.features_list>li a div.title .title_in {
	  font-size: 100%;
	}
	
	#section_contents ul.features_list>li a div.title .title_in p.date {
	  letter-spacing: 1px;
	}
	
	#section_contents ul.features_list>li a div.title .title_in p.ttl {
	  font-size: 20px;
	}
	
	/* characters */
	
	#special ul.tabNav {
	  margin-bottom: 30px;
	}
	
	#special ul.tabNav>li {
	  padding: 0 5px 10px;
	}
	
	#special ul.tabNav>li a {
	  font-size: 110%;
	}
	
	ul.character_list {
	  margin: 0 -10px;
	}
	
	ul.character_list>li {
	  width: 25%;
	  padding: 0 10px 30px;
	}
	
	#special ul.character_list>li a p.name {
	  font-size: 150%;
	}
	
	/* character-detail */
	
	body.special_detail .title_special {
	  /* padding-bottom: 70px; */
	}
	
	#section_contents .special_detail_top {
	  margin: -60px 4% 40px;
	  padding: 0 0 40px;
	}
	
	.special_detail_top:before {
	  background-size: 28px auto;
	}
	
	.special_detail_top .in .txt {
	  /* font-size: 3.5vw; */
	  font-size: 3vw;
	  padding: 40px;
	}
	
	.features__text {
	  padding: 7% 4%;
	}
	
	.features__text h3 {
	  font-size: 22px;
	}
	
	.special_detail_data {
	  padding: 7% 4%;
	  margin-bottom: 1%;
	}
	
	.special_detail_data h3 {
	  font-size: 3.5vw;
	}
	
	.special_detail_data h3:before {
	  background-size: 28px auto;
	}
	
	.special_detail_data dl dt {
	  font-size: 135%;
	}
	
	.special_detail_data dl dd {
	  max-width: 66.10169%;
	}
	
	#section_contents .special_detail_data dl dd p {
	  font-size: 2.5vw;
	}
	
	.special_detail_data dl dd+dt {
	  margin-top: 30px;
	}
	
	.special_detail_data p.note {
	  left: 5px;
	  bottom: 5px;
	  text-align: left;
	  word-break: break-all;
	}
	
	#section_contents .movieinfo p {
	  margin-bottom: 8%;
	}
	
	/* topNav2（2018.6追加）
	------------------------------ */
	
	#topNav2 {
	  padding: 40px 15px;
	}
	
	#topNav2 ul>li {
	  width: 33.3334%;
	  float: left;
	  padding: 5px;
	  box-sizing: border-box;
	}
	
	#topNav2 ul>li a div.title>p {
	  font-size: 1.4vw;
	}
	
	/* chara_list2（2018.9追加）
	------------------------------ */
	
	ul.chara_list2>li {
	  width: 33.3333%;
	}
	
	ul.chara_list2>li a:hover {
	  filter: alpha(opacity=100);
	  -moz-opacity: 1.0;
	  opacity: 1.0;
	}
	
	ul.chara_list2>li a p.name {
	  font-size: 120%;
	  margin-bottom: 10px;
	}
}


/* *** smartPhone *** */

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

	/* ******************************
	common.css
	****************************** */
	
	/* title */
	
	#section_contents h2 {
	  font-size: 20px;
	  margin-bottom: 15px;
	  letter-spacing: 1px;
	}
	
	/* banner
	------------------------------ */
	
	div#banner {
	  padding: 15px 15px 5px;
	}
	
	/* ******************************
	top.css
	****************************** */
	
	#product_home #img_main {
	  padding-top: 70px;
	}
	
	/* main_movie
	------------------------------ */
	
	#main_movie, #main_movie #dc_player {
	  height: 200px;
	}
	
	ul#playlist {
	  padding: 10px 0 5px;
	  position: relative;
	  bottom: auto;
	  left: auto;
	}
	
	ul#playlist li a {
	  width: 46px;
	}
	
	ul#playlist li a p.thum {
	  width: 40px;
	  overflow: hidden;
	}
	
	ul#playlist li a p.thum img {
	  width: 150%;
	  max-width: none;
	  margin-left: -25%;
	}
	
	ul.movieLink li .movie {
	  width: 40%;
	  left: auto;
	  right: 3%;
	  bottom: 10px;
	}
	
	/* subNav
	------------------------------ */
	
	#subNav {
	  background: #002746;
	}
	
	#subNav ul {
	  display: block;
	  overflow: hidden;
	}
	
	#subNav ul li {
	  display: block;
	  width: 50%;
	  float: left;
	  box-sizing: border-box;
	  padding: 10px;
	}
	
	#subNav ul li a p.ttl {
	  font-size: 10px;
	  line-height: 1.2;
	}
	
	#subNav ul li.top {
	  width: 100%;
	  padding: 10px 0;
	}
	
	#subNav ul li.top img {
	  width: 30%;
	}
	
	#product_home #subNav ul li:nth-child(2n) {
	  background: #002746;
	}
	
	#product_home #subNav ul li:nth-child(4n+1), #product_home #subNav ul li:nth-child(4n+4) {
	  background: #133F5C;
	}
	
	#product_home #subNav ul li a:before {
	  display: none;
	}
	
	#subNav ul li a:hover p.ttl {
	  color: #FFF;
	}
	
	/* topNav（2018.6追加）
	------------------------------ */
	
	#topNav {
	  padding: 5% 2% 1%;
	}
	
	#topNav ul>li {
	  width: 50%;
	  padding: 0 2% 4%;
	}
	
	#topNav ul>li a {
	  height: 25vw;
	}
	
	#topNav ul>li a:hover {
	  filter: alpha(opacity=100);
	  -moz-opacity: 1.0;
	  opacity: 1.0;
	}
	
	#topNav ul>li a div.title>p {
	  font-size: 2.5vw;
	}
	
	#topNav ul>li a div.title>p:before {
	  border: 7px solid transparent;
	  border-right: 8px solid #888;
	  left: -14px;
	  margin-top: -7px;
	}
	
	#topNav ul>li a, #topNav ul>li a img {
	  height: 28vw;
	}
	
	/* topNav2（2018.6追加）
	------------------------------ */
	
	#topNav2 {
	  padding: 5% 2%;
	}
	
	#topNav2 ul>li {
	  width: 50%;
	}
	
	#topNav2 ul>li a {
	  height: 25vw;
	}
	
	#topNav2 ul>li a:hover {
	  filter: alpha(opacity=100);
	  -moz-opacity: 1.0;
	  opacity: 1.0;
	}
	
	#topNav2 ul>li a div.title {
	  font-size: 2.3vw;
	}
	
	#topNav2 ul>li a div.title>p {
	  font-size: 2.3vw;
	}
	
	#topNav2 ul>li a div.title>p:before {
	  border: 7px solid transparent;
	  border-right: 8px solid #888;
	  left: -14px;
	  margin-top: -7px;
	}
	
	#topNav2 ul>li a, #topNav2 ul>li a img {
	  height: 22vw;
	}
	
	/* news（2018.6改修）
	------------------------------ */
	
	div#section_news h2 {
	  padding-top: 20px;
	  padding-bottom: 20px;
	  margin-bottom: 0;
	}
	
	ul.newsList li p.thum, ul.newsList li a.detail {
	  width: 100%;
	  float: left;
	}
	
	ul.newsList li:before {
	  display: none;
	}
	
	#section_contents ul.newsList li p.thum {
	  height: 180px;
	}
	
	#section_contents ul.newsList li a.detail, #section_contents ul.newsList li:nth-child(even) a.detail {
	  padding: 15px;
	  height: auto;
	}
	
	#section_contents ul.newsList li a.detail p.date {
	  font-size: 11px;
	}
	
	#section_contents ul.newsList li a.detail p.ttl {
	  font-size: 15px;
	}
	
	#section_contents ul.newsList li a.detail p.txts {
	  font-size: 10px;
	}
	
	#section_contents ul.newsList li:hover a.detail p {
	  color: #FFF;
	}
	
	#product_home div#section_news {
	  box-shadow: 0 3px 5px rgba(0, 0, 0, .4);
	  position: fixed;
	  left: 0;
	  top: 64px;
	  width: 100%;
	  overflow: hidden;
	  z-index: 999;
	}
	
	#product_home div#section_news h2 {
	  display: none;
	}
	
	#product_home ul.newsList {
	  height: 70px;
	}
	
	#product_home ul.newsList li:before {
	  display: none;
	}
	
	#product_home ul.newsList li p.thum {
	  display: none;
	}
	
	#product_home ul.newsList li a.detail {
	  width: 100%;
	  display: block;
	}
	
	#product_home ul.newsList li a.detail .cell {
	  display: block;
	}
	
	#product_home #section_contents ul.newsList li a.detail, #product_home #section_contents ul.newsList li:nth-child(even) a.detail {
	  padding: 10px 30px 10px 10px;
	  height: auto;
	  float: none;
	  background: url(../img/common/arrow_btn.png) right 10px top 50% no-repeat;
	  background-size: 12px auto;
	  height: 70px;
	}
	
	#product_home #section_contents ul.newsList li a.detail p.date {
	  font-size: 10px;
	  text-align: left;
	  margin-bottom: 0px;
	  color: #FFFC70;
	}
	
	#product_home #section_contents ul.newsList li a.detail p.date:before {
	  content: "NEWS: ";
	}
	
	#product_home #section_contents ul.newsList li a.detail p.ttl {
	  font-size: 11px;
	  font-weight: normal;
	  margin: 0;
	  height: 3em;
	  line-height: 1.5em;
	  overflow: hidden;
	}
	
	/* chara_list（2018.6追加）
	------------------------------ */
	
	#chara_list {
	  padding: 6% 0 4%;
	}
	
	ul.chara_list>li {
	  width: 50%;
	  padding-bottom: 6%;
	}
	
	ul.chara_list>li a:hover {
	  filter: alpha(opacity=100);
	  -moz-opacity: 1.0;
	  opacity: 1.0;
	}
	
	ul.chara_list>li a p.name {
	  font-size: 110%;
	  margin-bottom: 0;
	}
	
	/* chara_list2（2018.9追加）
	------------------------------ */
	
	ul.chara_list2>li {
	  width: 50%;
	  padding-bottom: 6%;
	}
	
	ul.chara_list2>li a:hover {
	  filter: alpha(opacity=100);
	  -moz-opacity: 1.0;
	  opacity: 1.0;
	}
	
	ul.chara_list2>li a p.name {
	  font-size: 95%;
	}
	
	/* twitter
	------------------------------ */
	
	.twitter_timeline {
	  padding: 5px 0 0;
	  position: relative;
	}
	
	/*
	.twitter_timeline iframe {
	width: 94%!important;
	}
	*/
	
	/* 2018.6追加 */
	
	ul.bnr_sns {
	  margin-bottom: 7%;
	}
	
	ul.bnr_sns>li {
	  display: block;
	  max-width: 100%;
	  margin-bottom: 10px;
	}
	
	ul.bnr_sns>li a:hover img {
	  filter: alpha(opacity=100);
	  -moz-opacity: 1.0;
	  opacity: 1.0;
	}
	
	/* app
	------------------------------ */
	
	div#app {
	  background-position: center top;
	}
	
	div#app .inner {
	  padding: 5% 0 5% 0;
	}
	
	div#app .inner>p.title, div#app .inner>.download {
	  width: auto;
	  float: none;
	  margin-left: 0;
	}
	
	div#app .inner>p.title {
	  padding-left: 7%;
	  margin-bottom: 2%;
	  text-align: center;
	}
	
	div#app .inner>.download p.ttl_download img {
	  width: 90%;
	  margin-bottom: 10px;
	}
	
	div#app .inner>.download p.btn {
	  margin-top: 0;
	  display: inline-block;
	  *display: inline;
	  *zoom: 1;
	  width: 43%;
	}
	
	div#app .inner>.download p.btn img {
	  width: 100%;
	}
	
	div#app .inner>.download p.btn a:hover img {
	  filter: alpha(opacity=100);
	  -moz-opacity: 1.0;
	  opacity: 1.0;
	}
	
	/* ******************************
	naka.css
	****************************** */
	
	/* common
	------------------------------ */
	
	/* subNav */
	
	body.product_naka #subNav {
	  background: #15405c;
	}
	
	body.product_naka #subNav ul li, body.product_naka #subNav ul li:first-child {
	  width: 33.3333333%;
	}
	
	body.product_naka #subNav ul li.top {
	  width: 100%;
	}
	
	body.product_naka #subNav ul li.top a {
	  padding: 3%;
	  border-bottom: 2px solid #002746;
	}
	
	body.product_naka #subNav ul li a p.thum {
	  box-sizing: border-box;
	  padding: 0 5px;
	}
	
	body.product_naka #subNav ul li a:hover:before {
	  background: transparent;
	}
	
	/* div */
	
	body.product_naka #section_contents>div {
	  padding: 20px 15px;
	}
	
	/* itemList */
	
	ul.itemList {
	  margin-bottom: -20px;
	}
	
	ul.itemList li {
	  padding-bottom: 20px;
	  width: 50%;
	}
	
	/* mainVisual */
	
	div#mainVisual {
	  height: 180px;
	}
	
	div#mainVisual a.movie {
	  height: 180px;
	  padding-top: 75px;
	}
	
	div#mainVisual a.movie img {
	  width: 30px;
	}
	
	/* movies
	------------------------------ */
	
	div#movieList h2 {
	  font-size: 19px;
	  margin-bottom: 10px;
	}
	
	/* sort */
	
	div#movieList>.inner div#sort {
	  position: relative;
	  right: auto;
	  top: auto;
	  text-align: right;
	  margin-bottom: 25px;
	}
	
	/* customselect */
	
	.customselect-wrap {
	  text-align: left;
	  font-size: 16px;
	}
	
	div.content {
	  padding: 15px;
	}
	
	div.content p.thum {
	  width: auto;
	  float: none;
	  margin-bottom: 10px;
	  text-align: center;
	}
	
	div.content div.detail {
	  width: auto;
	  float: none;
	}
	
	body#movies div.content div.detail {
	  padding-bottom: 40px;
	}
	
	div.content div.detail h3 {
	  font-size: 20px;
	  margin-bottom: 10px;
	}
	
	div.content div.detail p.txt {
	  font-size: 12px;
	}
	
	p.btn_more a {
	  height: 40px;
	  background-size: 60px auto;
	}
	
	p.btn_more a:hover {
	  background-image: url("../img/common/btn_more.png");
	  background-color: #eb1400;
	  background-size: 60px auto;
	}
	
	p.txt_coming {
	  padding: 60px 0;
	  font-size: 20px;
	}
	
	/* bluray
	------------------------------ */
	
	/* product_work */
	
	#product_new .product_item, #product_work .product_item {
	  width: auto;
	  float: none;
	}
	
	#product_work .product_item .image {
	  width: 38%;
	}
	
	#product_new .product_item h3, #product_work .product_item h3 {
	  font-size: 1.2em;
	}
	
	#product_work .product_item .txt {
	  font-size: 100%;
	}
	
	#product_new .product_item dl.buyList dd, #product_work .product_item dl.buyList dd {
	  width: 32.3333%;
	}
	
	/* videos
	------------------------------ */
	
	#section_contents .btn-wrap>a, #section_contents .btn-wrap>a:hover {
	  color: #FFF;
	  background: #E40B14;
	}
	
	ul.videoList {
	  margin-bottom: -15px;
	}
	
	ul.videoList li {
	  width: 50%;
	  padding-bottom: 15px;
	}
	
	#section_contents ul.videoList li a p.thum:before {
	  background-size: 24px 24px;
	}
	
	#section_contents ul.videoList li a:hover p.ttl {
	  color: #0d3863;
	}
	
	/* special（2018.6追加）
	------------------------------ */
	
	#special #section_contents {
	  overflow: hidden;
	}
	
	ul.special_list {
	  margin-left: calc(-15px + -4vw);
	  margin-right: calc(-15px + -4vw);
	  -moz-margin-left: -moz-calc(-15px + -4vw);
	  -moz-margin-right: -moz-calc(-15px + -4vw);
	  -webkit-margin-left: -webkit-calc(-15px + -4vw);
	  -webkit-margin-right: -webkit-calc(-15px + -4vw);
	}
	
	ul.special_list>li.matchHeight {
	  width: 100%;
	}
	
	ul.special_list>li>a {
	  background: #FFF;
	}
	
	ul.special_list>li.s01>a, ul.special_list>li.s05>a {
	  padding-bottom: 0;
	}
	
	ul.special_list>li.s02>a, ul.special_list>li.s04>a {
	  padding-top: 0;
	}
	
	#section_contents ul.special_list>li>a:before {
	  border-bottom: 14px solid #FFF;
	  top: 68%;
	  margin-top: -38px;
	}
	
	ul.special_list>li.s02>a:before, ul.special_list>li.s04>a:before {
	  border-top: 14px solid transparent;
	}
	
	ul.special_list>li>a .title {
	  padding: 8% 0;
	  height: auto;
	  position: relative;
	  left: auto;
	}
	
	ul.special_list>li.s01>a .title, ul.special_list>li.s05>a .title {
	  bottom: auto;
	}
	
	ul.special_list>li.s02>a .title, ul.special_list>li.s03>a .title, ul.special_list>li.s04>a .title, ul.special_list>li.s06>a .title {
	  top: auto;
	}
	
	#section_contents ul.special_list>li>a .title>p {
	  font-size: 5vw;
	}
	
	#section_contents ul.special_list>li>a .title>p span {
	  background-size: 24px auto;
	}
	
	#section_contents ul.special_list>li.s03>a .title>p span, #section_contents ul.special_list>li.s06>a .title>p span {
	  color: #000;
	  background-image: url(../img/common/icon_black.png);
	}
	
	#section_contents ul.special_list>li.s03>a, #section_contents ul.special_list>li.s06>a {
	  height: auto;
	}
	
	ul.special_list>li.s03>a .title, ul.special_list>li.s06>a .title {
	  padding: 8% 0;
	}
	
	.inner_width {
	  padding: 0;
	}
	
	/* title_special */
	
	.title_special {
	  margin: -20px -15px 25px;
	}
	
	#section_contents .title_special h2 {
	  font-size: 22px;
	  padding: 30px 0 20px;
	}
	
	ul.pan>li {
	  font-size: 10px;
	}
	
	/* features */
	
	ul.features_list {
	  margin: 0;
	}
	
	ul.features_list>li {
	  width: 100%;
	  padding: 0 0 20px;
	}
	
	ul.features_list>li a div.title {
	  height: auto;
	  padding-top: 5%;
	  padding-bottom: 5%;
	}
	
	#section_contents ul.features_list>li a div.title .title_in p.date {
	  font-size: 100%;
	}
	
	#section_contents ul.features_list>li a div.title .title_in p.ttl {
	  font-size: 18px;
	}
	
	/* characters */
	
	#special ul.tabNav {
	  margin-bottom: 20px;
	}
	
	#special ul.tabNav>li {
	  padding: 0 3px 8px;
	}
	
	#special ul.tabNav>li a {
	  font-size: 100%;
	  padding: 5px 10px;
	}
	
	ul.character_list {
	  margin: 0 -5px;
	}
	
	ul.character_list>li {
	  width: 33.333333%;
	  padding: 0 5px 20px;
	}
	
	#special ul.character_list>li a p.name,
	#special ul.character_list>li a span.icon {
	  font-size: 90%;
	}
	
	/* character-detail */
	
	body.special_detail .title_special {
	  padding-bottom: 50px;
	}
	
	#section_contents .special_detail_top {
	  margin: -40px 0 30px;
	  padding: 0 0 30px;
	}
	
	#section_contents .features_detail {
	  margin: -40px 0 30px;
	  padding: 0 0 30px;
	}
	
	.special_detail_top:before {
	  background-size: 24px auto;
	}
	
	.special_detail_top .in {
	  margin: 0 -15px;
	}
	
	.features_detail .in {
	  margin: 0 -15px;
	}
	
	.special_detail_top .in, .special_detail_top .in .img, .special_detail_top .in .txt {
	  display: block;
	}
	
	.special_detail_top .in .txt {
	  font-size: 5vw;
	  padding: 20% 6%;
	}
	
	.special_detail_data {
	  padding: 10% 6% 70px;
	  margin: 0 -15px 1%;
	  box-sizing: content-box;
	  width: auto;
	}
	
	.special_detail_data h3 {
	  font-size: 5.4vw;
	}
	
	.special_detail_data h3:before {
	  background-size: 24px auto;
	}
	
	.special_detail_data dl dt {
	  /*     font-size: 125%; */
	  font-size: 105%;
	}
	
	.special_detail_data dl dd {
	  max-width: 100%;
	}
	
	#section_contents .special_detail_data dl dd p {
	  font-size: 4.5vw;
	}
	
	.special_detail_data dl dd+dt {
	  margin-top: 30px;
	}
	
	.features__text h3 {
	  font-size: 18px;
	}
	
	.features__text .photo {
	  font-size: 9px;
	  line-height: 1.4;
	}
}



@media screen and (max-width:456px) {
	#product_new .product_item dl, #product_work .product_item dl {
	  clear: both;
	}
	
	#product_new .product_item dl.buyList dd, #product_work .product_item dl.buyList dd {
	  width: 49%;
	}
	
	/* topNav2（2018.6追加）
	------------------------------ */
	
/*
	#topNav2 ul>li {
	  width: 100%;
	}
	
	#topNav2 ul>li a {
	  height: 40vw;
	}
	
	#topNav2 ul>li a div.title>p {
	  font-size: 4.5vw;
	}
	
	#topNav2 ul>li a, #topNav2 ul>li a img {
	  height: 40vw;
	}
*/
}