/* ==========================================================
  shared.css
  display: common
========================================================== */
@import url("/css/gdpr.css");

@font-face {
  font-family: 'NotoSansCJKjp';
  font-style: normal;
  font-weight: 400;
  src: url("/font/NotoSansCJKjp-Regular.woff") format("woff"), url("/font/NotoSansCJKjp-Regular.ttf") format("truetype");
  /* Safari, Android, iOS */
}

@font-face {
  font-family: 'NotoSerifCJKjp';
  font-style: bold;
  font-weight: 700;
  src: url("/font/NotoSerifCJKjp-Bold.woff") format("woff"), url("/font/NotoSerifCJKjp-Bold.ttf") format("truetype");
  /* Safari, Android, iOS */
}
@font-face {
  font-family: 'NotoSerifCJKjp';
  font-style: normal;
  font-weight: 400;
  src: url("/font/NotoSerifCJKjp-Regular.woff") format("woff"), url("/font/NotoSerifCJKjp-Regular.ttf") format("truetype");
  /* Safari, Android, iOS */
}

body {
  color: #fff;
  font-family: 'NotoSansCJKjp';
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.1rem;
  vertical-align: baseline;
}

/* .linkBtn */
#contents .linkBtn {
	width: 80%;
	max-width: 700px;
	background: #000;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}
#contents .linkBtn a {
	width: 100%;
	border: 1px solid #fff;
	display: block;
	color: #cfee1d;
	line-height: 1.6em;
	background: url("/images/icon/icon_corn_white_top_d.svg") 2px 2px / 11px 11px no-repeat, url("/images/icon/icon_corn_white_bottom_d.svg") right 2px bottom 2px/11px 11px no-repeat;
	padding: 1em;
	position: relative;
	text-indent: -0.5em;
	box-sizing: border-box;	
}
#contents .linkBtn a span {
	display: block;
	position: relative;
	padding-right: 8%;
}
#contents .linkBtn a span:after {
	content: "";
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 1em;
	height: auto;
	padding-bottom: 10%;
	background: url("/images/icon/icon_arrow_d.svg") center center no-repeat;
}

@media all and (-ms-high-contrast: none) {
  body {
    transform: rotate(0.001deg);
  }
}

/* ==========================================================
  display: PC
========================================================== */

@media screen and (min-width: 768px) {
  /* ====================
    @BASE
  ===================== */
  body {
    background: #000;
  }
  #wrap {
    background: url("/topics/images/bg_page.jpg") center top no-repeat;
    background-attachment: fixed;
    background-size: cover;
    width: 100%;
    min-width: 768px;
    height: inherit;
    color: #fff;
    font-size: 16px;
    overflow: hidden;
    position: relative;
  }
  #wrap img {
    width: 100%;
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
  }
  a {
    color: #fff;
    outline: none;
  }
  a:hover {
    color: #cfee1d;
  }
  *[class^="sp"],
  *[id^="sp"] {
    display: none !important;
  }

	#contents .linkBtn:hover a {
		border: 1px solid #cfee1d;
		background: url("/images/icon/icon_corn_top_on.svg") 2px 2px / 11px 11px no-repeat, url("/images/icon/icon_corn_bottom_on.svg") right 2px bottom 2px/11px 11px no-repeat;
	}
	#contents .linkBtn:hover span:after {
			content: "";
			background: url("/images/icon/icon_arrow_on.svg") center center no-repeat;
			background-size: contain;
	}
	#contents .linkBtn.linkoff:hover a {
		border: 1px solid #565353;
		background-image: url("/images/icon/icon_corn_gray_top_d.svg"), url("/images/icon/icon_corn_gray_bottom_d.svg");
		background-position: left 2px top 2px, right 2px bottom 2px;
		background-size: 11px 11px, 11px 11px;
		background-repeat: no-repeat, no-repeat;
	}
	#contents .linkBtn.linkoff:hover span:after{
		background: url("/images/icon/icon_arrow_d.svg") center center no-repeat;
		background-size: contain;
	}	
	
  /* ====================
    @HEADER
  ===================== */
  header {
    height: 260px;
  }
  header h1 {
    width: 350px;
    padding: 50px 0;
    margin: 0 auto;
  }

  /* ====================
    @COMMON
  ===================== */
  section {
    width: 100%;
    max-width: 1000px;
/*    min-width: 768px;*/
    padding: 0 0 50px;
    margin: 0 auto;
  }

  /* BACKGROUND
  ------------------ */
  .bg-dark {
    background: url("/topics/images/bg_dark.jpg") repeat center 0; }

  .bg-brown {
    background: url("/topics/images/bg_brown.jpg") repeat center 0; }

  /* HEADING
  ------------------ */
  .bg-h2 {
    background: url("/topics/images/bg_h2_repeat.jpg") repeat-y center 0;
    background-size: 100% auto;
    background-color: #130d0c;
    max-width: 1000px;
  }
  .bg-h2 h2 {
    background: url("/topics/images/bg_h2_top.jpg") no-repeat center 0, url("/topics/images/bg_h2_bottom.jpg") no-repeat center bottom;
    background-size: contain;
    font-size: 34px;
    line-height: 1.35;
    font-weight: 700;
    letter-spacing: -0.10rem;
    text-align: center;
    padding: 40px 50px 40px;
  }
  .bg-h2 h2 span {
    color: #cfee1d;
  }
  h3 {
    background: url("/topics/images/bg_dark.jpg") repeat;
    text-align: center;
    padding: 10px 40px;
  }
  h3 span {
    font-size: 24px;
  }

  /* CONTENTS
  ------------------ */
  #contents {
    background: url("/topics/images/bg_lightbrown.jpg") repeat;
    padding: 40px 40px 50px;
  }
  #contents .inner {
    padding: 0 40px;
  }
  #contents .read {
    font-size: 18px;
    line-height: 1.8;
    font-weight: bold;
    text-align: center;
  }
  #contents .text {
    font-size: 14px;
    line-height: 1.7;
  }
  #contents .attention {
    font-size: 12px;
    color: #cccccc;
    line-height: 1.8;
  }
  #contents .copyright {
    font-size: 12px;
    color: #cccccc;
    text-align: center;
  }
  #contents .comment {
    font-size: 20px;
    color: #cfee1d;
    text-align: center;
  }
  /* LIST
  ------------------ */
  /* column2 */
  .list-column2 {
    width: 100%;
  }
  .list-column2 li {
    float: left;
    margin: 0 0 2%;
  }
  .list-column2 li.ss {
    width: 48.5%;
  }
  .list-column2 li:nth-child(even) {
    margin-left: 3%;
  }

  /* column3 */
  .list-column3 {
    width: 100%;
  }
  .list-column3 li {
    float: left;
  }
  .list-column3 li.ss {
    width: 32%;
  }
  .list-column3 li:not(:nth-child(3n)){
    margin-right: 2%;
  }
	#topics #contents * .linkBtn a{
		margin-top: 2.5em;
		font-size: 2rem;
	}
	#topics #contents * .linkBtn a span::after {
		width: 100%;
		background-size: auto 100%;
	}
	
  /* ====================
    @FOOTER
  ===================== */
  .offisial-footer {
    background-color: #000;
    border-bottom: 1px solid #474747;
    padding: 24px 0 22px;
  }
  .offisial-footer ul{
    text-align: center;
    font-size: 0;
  }
  .offisial-footer ul li {
    font-size: 16px;
    display: inline-block;
    vertical-align: middle;
  }
  .offisial-footer ul li:nth-child(even) {
    margin-left: 30px;
  }
  *[class="sp"],
  *[id="sp"] {
    display: none !important;
  }
  *[class="tab"],
  *[id="tab"] {
    display: none !important;
  }
  *[class="sp_tab"],
  *[id="sp_tab"] {
    display: none !important;
  }
  *[class="pc_tab"],
  *[id="pc_tab"] {
    display: block !important;
  }
}

/* ==========================================================
  display: SP/tab
========================================================== */

@media screen and (max-width: 768px) {
  /* ====================
    @BASE
  ===================== */
  body {
    background: #000;
  }
  #wrap {
    width: 100%;
    height: inherit;
    color: #fff;
    font-size: 14px;
    padding: 0 2%;
    overflow: hidden;
    position: relative;
    box-sizing: border-box;
  }
  #wrap img {
    width: 100%;
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
  }
  #sp-bg {
    background: url("/topics/images/bg_page_sp.jpg") center top no-repeat;
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
  }
  a {
    color: #fff;
    outline: none;
  }
  *[class^="pc"],
  *[id^="pc"] {
    display: none !important;
  }

  /* ====================
    @HEADER
  ===================== */
  header {
    padding: 5% 0;
  }
  header h1 {
    width: 35%;
    margin: 0 auto;
  }

  /* ====================
    @COMMON
  ===================== */
  section {
    width: 100%;
    padding: 0 0 10%;
    margin: 0 auto;
  }

  /* BACKGROUND
  ------------------ */
  .bg-dark {
    background: url("/topics/images/bg_dark.jpg") repeat center 0; }

  .bg-brown {
    background: url("/topics/images/bg_brown.jpg") repeat center 0; }

  /* HEADING
  ------------------ */
  .bg-h2 {
    background: url("/topics/images/bg_h2_repeat_sp.jpg") repeat-y center 0;
    background-size: 100% auto;
    background-color: #130d0c;
  }
  .bg-h2 h2 {
    background: url("/topics/images/bg_h2_top_sp.jpg") no-repeat center 0,url("/topics/images/bg_h2_bottom_sp.jpg") no-repeat center bottom;
    background-size: contain;
    font-size: 24px;
    line-height: 1.3;
    font-weight: 700;
    letter-spacing: -0.10rem;
    text-align: center;
    padding: 4% 4.5%;
  }
  .bg-h2 h2 span {
    color: #cfee1d;
  }
  h3 {
    background: url("/topics/images/bg_dark.jpg") repeat;
    text-align: center;
    padding: 2% 30px;
  }
  h3 span {
    font-size: 20px;
  }

  /* CONTENTS
  ------------------ */
  #contents {
    background: url("/topics/images/bg_lightbrown.jpg") repeat;
    padding: 6.5% 2.5%;
  }
  #contents .inner {
    padding: 0 2.5%;
  }
  #contents .read {
    font-size: 16px;
    line-height: 1.6;
  }
  #contents .text {
    font-size: 16px;
    line-height: 1.6;
  }
  #contents .attention {
    font-size: 12px;
    color: #cccccc;
  }
  #contents .attention p {
    margin: 0 0 5px;
  }
  #contents .copyright {
    font-size: 12px;
    color: #cccccc;
    text-align: center;
  }
  #contents .comment {
    font-size: 16px;
    color: #cfee1d;
    text-align: center;
  }

  /* LIST
  ------------------ */
  /* column */
  ul[class^="list-column"] li:not(:first-child) {
    margin-top: 3%;
  }
  /* topics_update-link
  ------------------ */
	#topics #contents .topLink {
		padding: 0 30px;
		margin-bottom: 2em;
	}
	#topics #contents .topLink li a {
		display: block;
		padding: 8% 0;
		font-size: 13px;
		color: #cfee1d;
		border: 1px solid #fff;
		box-sizing: border-box;
	}
	#topics #contents .topLink li.update2 a {
		background: url(../images/bg_link_update2.png) no-repeat left center #000;
		background-size: 36% auto;
	}
	#topics #contents .topLink li.update3 a {
		background: url(../images/bg_link_update3.png) no-repeat left center #000;
		background-size: 36% auto;
	}
	#topics #contents .topLink li.update4 a {
		background: url(../images/bg_link_update4.png) no-repeat left center #000;
		background-size: 36% auto;
	}
	#topics #contents .topLink li.update5 a {
		background: url(../images/bg_link_update5.png) no-repeat left center #000;
		background-size: 36% auto;
	}
	#topics #contents .topLink li.update6 a {
		background: url(../images/bg_link_update6.png) no-repeat left center #000;
		background-size: 36% auto;
	}
	#topics #contents .topLink li a span{
		display: block;
		padding-left: 39%;
		padding-right: 10%;
		background: url("/images/icon/icon_arrow_d.svg") right 5% center/1em auto no-repeat;
	}
	#topics #contents * .linkBtn a span::after {
		width: 100%;
		background-size: auto 100%;
	}


  /* ====================
    @FOOTER
  ===================== */
  .offisial-footer {
    background-color: #000;
    border-bottom: 1px solid #474747;
    padding: 6% 0 7%;
  }
  .offisial-footer ul{
    width: 100%;
    padding: 0 8%;
    text-align: center;
    font-size: 0;
    box-sizing: border-box;
  }
  .offisial-footer ul li {
    font-size: 16px;
    display: table-cell;
    vertical-align: middle;
  }
  .offisial-footer ul li img {
    width: 100%;
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
  }
  .offisial-footer ul li:first-child {
    text-align: left;
    width: 55%;
  }
  .offisial-footer ul li:last-child {
    width: 40%;
    padding-left: 5%;
  }
	#footBtn .btn{
		background: #000;
		width: 90%;
		box-sizing: border-box;
		margin:auto auto 10%;
		text-align: center;
		}
	#footBtn .btn a{
		border: 1px solid #565353;
		display: block;
		width: 100%;
		color: #fff;
		line-height: 4em;
		background: url("/images/icon/icon_corn_gray_top_d.svg") 2px 2px / 11px 11px no-repeat, url("/images/icon/icon_corn_gray_bottom_d.svg") right 2px bottom 2px/11px 11px no-repeat;
		font-size: 14px;
		position: relative;
		text-indent: -0.5em;
		box-sizing: border-box;
	}
	#footBtn .btn a span{
			position: relative;
		}
	#footBtn .btn a span:after{
		content:"" ;
		position: absolute;
		margin: auto auto;
		top: 0;
		bottom: 0;
		width: 0.8em;
		height: 0;
		padding-bottom: 1em;
		background: url("/images/icon/icon_arrow_d.svg") center center no-repeat;
		background-size: contain;
		right: -1.5em;
	}	
}
@media screen and (max-width: 375px) {
  .offisial-footer ul li {
    font-size: 15px;
  }
}
@media screen and (max-width: 320px) {
  .offisial-footer ul li {
    font-size: 13px;
  }
}

/* sp*/
@media screen and (max-width: 480px) {
	body{
		font-size: 3vw;
	}
  .bg-h2 h2 {
    font-size: 5vw;
  }
  .bg-h2 {
	  margin-bottom: 10%;
  }
	#topics #contents .linkBtn a{
		margin-top: 2.5em;
		font-size: 3vw;
	}

	*[class="pc"],
  *[id="pc"] {
    display: none !important;
  }
  *[class="tab"],
  *[id="tab"] {
    display: none !important;
  }
  *[class="pc_tab"],
  *[id="pc_tab"] {
    display: none !important;
  }
}
/* tab*/
@media screen and (min-width:481px) and (max-width: 768px) {
	body{
		font-size: 2.2vw;
	}
  .bg-h2 h2 {
    font-size: 3vw;
  }
  .bg-h2 {
	  margin-bottom: 6%;
  }
	#topics #contents * .linkBtn a{
		margin-top: 2.5em;
		font-size: 2.5vw;
	}
  *[class="pc"],
  *[id="pc"] {
    display: none !important;
  }
  *[class="sp"],
  *[id="sp"] {
    display: none !important;
  }
  *[class="pc_tab"],
  *[id="pc_tab"] {
    display: block !important;
  }
}
