div#index {
    width: 100%;
    text-align: center;
    margin: 0px auto;
    min-width: unset;
    max-width: unset;
    zoom: 100%;
    font-size: 80%;
    font-family:'Yu Mincho', 'Hiragino Mincho ProN', 'MS PMincho', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif !important
}
div#index div, 
div#index h1, 
div#index h2, 
div#index h3, 
div#index h4, 
div#index h5, 
div#index h6, 
div#index input, 
div#index ol, 
div#index p, 
div#index pre, 
div#index td, 
div#index textarea, 
div#index th, 
div#index ul{
	font-family:'Yu Mincho', 'Hiragino Mincho ProN', 'MS PMincho','ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif !important
}

#pan {
    margin: 0px auto;
    min-width: 850px;
    max-width: 1200px;
    border: none;
}

#mh section {
    width: unset;
    margin: 0 auto;
}
#topimg .mv{
	width: 100%;
	height: calc(100vh - 148px);
    background: url(/bc/c/pc/gamingpc/images/mh/mv_mhwilds.jpg) bottom;
    background-size: cover;
}
#topimg,
#concept,
#spec,
#recommend,
#soft
{
	position:relative
}

#topimg:after,
#concept:after,
#spec:after,
#recommend:after,
#soft:after
{
    content: "";
    background: url(/bc/c/pc/gamingpc/images/mh/mh_line.png);
    height: 9px;
    position: absolute;
    width: 100%;
    left: 0;
    right: 0;
    display: block;
    z-index: 1;
    bottom: 0;
    /*background-color: #ffffff70;*/
}
.section_wrapper{
    margin: 0px auto;
    min-width: 850px;
    max-width: 1200px;
}
#topimg{
	position: relative;
}
#concept .concept_in .sub{
    margin: auto;
    font-size: 4em;
    color: #fff;
    text-shadow: 0px 3px 9px #666;
    line-height: 1em;
	margin-bottom: 20px;
/*
    position: absolute;
    top: 18%;
    right: 0;
    left: 0;
    margin: auto;
    font-size: 4em;
    color: #fff;
    text-shadow: 0px 3px 9px #666;
    max-width:1200px;
*/
}
#concept .concept_in .sub2 {
    margin-bottom: 20px;
    margin-top: 60px;
    font-size: 21px;
}
#topimg .topmenu{
    position: absolute;
    bottom: 10%;
    right: 0;
	width: 40%;
}

#topimg div.topmenu ul{}

#topimg div.topmenu ul li {
    overflow: hidden;
}

#topimg div.topmenu ul li div{
    background-image: linear-gradient(90deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.87) 26% 77%, rgba(0, 0, 0, 0.93), rgba(0, 0, 0, 1));
    margin-bottom: 15px;
}
#topimg div.topmenu ul li.red div {
    background-image: linear-gradient(90deg, rgba(230, 0, 18, 0), rgba(230, 0, 18, 0.87) 26%, rgba(230, 0, 18, 0.93), rgba(230, 0, 18, 1));
}

#topimg div.topmenu ul li div a {
    color: #fff;
    text-align: left;
    height: 85px;
    display: flex;
    align-items: center;
    font-size: 26px;
    /*width: 50%;*/
    justify-content: flex-start;
    margin-left: 19%;
}

#topimg div.topmenu ul li div a:hover {
	text-decoration: none;
}
#topimg div.topmenu ul li div:hover {
    opacity: 0.8;
    transform: translateX(2px);
    transition: all 0.3s ease 0s;
}

#topimg div.topmenu ul li div a {
  position: relative; /* 疑似要素の基準位置を設定 */
  padding-left: 30px; /* 疑似要素用のスペースを確保 */
  text-decoration: none; /* リンク下線を削除 */
}

#topimg div.topmenu ul li div a::before {
  content: ''; /* 疑似要素を表示 */
  position: absolute; /* 親要素内で絶対位置指定 */
  top: 50%; /* 垂直中央に配置 */
  left: 0; /* 要素の左端に配置 */
  transform: translateY(-50%); /* 垂直方向の中央揃え */
  width: 13px; /* 幅 */
  height: 13px; /* 高さ */
  background: linear-gradient(135deg, rgb(255 255 255), #ffffff); /* 指定のグラデーション */
  border-radius: 50%; /* 円形にする */
  box-shadow: 
    0 0 5px rgba(255, 255, 255, 0.6), /* 外側のぼかし（白） */
    0 0 10px rgba(255, 255, 255, 0.4); /* 外側の淡い白光 */
  animation: glow 0.8s infinite alternate; /* 光るアニメーション */
}
@keyframes glow {
  0% {
    box-shadow: 
      0 0 5px rgba(255, 255, 255, 0.6),
      0 0 10px rgba(255, 255, 255, 0.4);
  }
  100% {
    box-shadow: 
      0 0 10px rgba(255, 255, 255, 0.8),
      0 0 15px rgba(255, 255, 255, 0.6);
  }
}
#topimg div.topmenu ul li.red div a::before {
  background: linear-gradient(135deg, #ab9000, #ffeea9); /* 金色のグラデーション */
  border-radius: 50%; /* 円形にする */
  box-shadow: 
    0 0 5px rgba(255, 215, 0, 0.6), /* 外側のぼかし（薄い金色） */
    0 0 10px rgba(255, 215, 0, 0.4); /* 外側の淡い光 */
  animation: glow_red 0.5s infinite alternate; /* 光るアニメーション */
}

@keyframes glow_red {
  0% {
    box-shadow: 
      0 0 5px rgba(255, 215, 0, 0.6),
      0 0 10px rgba(255, 215, 0, 0.4);
  }
  100% {
    box-shadow: 
      0 0 10px rgba(255, 223, 0, 0.8),
      0 0 15px rgba(255, 223, 0, 0.6);
  }
}

#topimg div.topmenu ul li div a p small{
	font-size:70%;
}

#concept .section_wrapper{
	max-width: unset;
}
#spec .section_wrapper{
	padding: 100px 0;
}
#recommend .section_wrapper{
	padding: 10px 0 50px;
}
#link .section_wrapper{
	padding: 0 0;
}
#soft .section_wrapper{
    max-width: 1200px;
	padding: 10px 0;
}

#spec{
    background-image: url(/bc/c/pc/gamingpc/images/mh/bk_02.jpg);
    background-attachment: fixed;
    background-size: cover;
    background-position: center;
}
#recommend {
    background-image: url(/bc/c/pc/gamingpc/images/mh/bk_03.jpg);
    background-attachment: fixed;
    background-size: cover;
    background-position: center;
}
#soft{
    background-image: url(/bc/c/pc/gamingpc/images/mh/bk_01.jpg);
    background-attachment: fixed;
    background-size: cover;
    background-position: center;
}

#mh h2{font-size: 40px;margin-bottom: 50px;margin-top: 100px;}
#mh h3{font-size: 22px;
    text-align: left;
    padding-bottom: 6px;
    margin-top: 40px;}
#mh h4{
	font-size: 22px;
	text-align:left;
	font-size: 18px;
    padding: 10px;
    background-color: #6f664d;
    text-align: left;
	font-weight:100;
}


.flex{
	display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    margin-bottom: 50px;
}
.flex img{
	height:auto
}

#soft .flex .flex2{
	flex-basis:28%;
    color: #fff;
}

#soft .flex{position:relative}
#soft .flex .kanbai:before {
    content: "";
    width: 100%;
    height: 60px;
    background: #e60012;
    position: absolute;
    z-index: 1;
    transform: rotate(-17deg);
    top: 40%;
    right: 0;
    left: 0;
    margin: auto;
}
#soft .flex .kanbai:after {
    content: "完売御礼";
    z-index: 2;
    position: absolute;
    transform: rotate(-17deg);
    top: 42%;
    font-size: 30px;
    font-weight: bold;
    text-align: center;
    width: 100%;
    height: 60px;
    color: #fff;
    letter-spacing: 3px;
    right: 0;
    left: 0;
    margin: auto;
}

#link .flex .block2{
	flex-basis:47%;
	float: none;
}
#link .flex .block4{
	flex-basis:calc(88%/4);
	float: none;
}
#link .flex .block4 p{
	font-size: 15px;
    text-align: left;
    margin-bottom: 5px;
    color: #333;
}
#link .flex .block4 a:hover{ text-decoration: none;}

.flex2{position: relative;}
.flex2 figure{position: relative;}
.flex2 figure span img {
    width: 180px;
    height: auto;
    position: absolute;
    bottom: 0;
    right: -76px;
	box-shadow: unset;
}
.flex2 img{
    box-shadow: 00px 0px 4px 3px rgb(0 0 0 / 60%);
}
.flex2 a{
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	z-index: 10;
}
.flex2:hover {
    opacity: 0.8;
    transform: translateY(1px);
    transition: all 0.3s ease 0s;
    cursor: pointer;
}
.flex2.kanbai:hover {
    opacity: 1;
    transform: unset;
    transition: unset;
    cursor: unset;
}

/* 世界観部分作りこみ */
.concept_in{
	position:relative;
	height: 720px;
	overflow:hidden;
}
.concept_in .slider_warp{
	width:100%;
}
.concept_in .text {
    position: absolute;
    top: 0;
    color: #fff;
    line-height: 1.6em;
    text-align: left;
    background-color: rgba(0, 0, 0, 0.32);
    font-size: 17px;
    width: 100%;
    height: 100%;
	z-index:10;
	text-shadow: 0px 1px 3px #000;
}
.concept_in .text div {
    margin: auto;
    padding-top: 40px;
	position:relative;
	padding:0 100px;
}
.concept_in .text span {
    font-size:18px;
}
.flexslider img{
	min-height: 720px;
}
.flex-next {
    background: url(/bc/c/pc/gamingpc/images/mh/btn_next.png) no-repeat 0 0;
    background-size: 28px 28px;
}
.flex-prev {
    background: url(/bc/c/pc/gamingpc/images/mh/btn_prev.png) no-repeat 0 0;
    background-size: 28px 28px;
}
.flex-prev, .flex-next {
    width: 28px;
    height: 28px;
}
.flex-direction-nav {
    top: unset;
    bottom: 99px;
}
.flex-control-nav {
    bottom: 51px;
    background-color: #000000ad;
    padding: 14px;
    border-radius: 30px;
}
.flex-direction-nav,
.flex-control-nav{
	width: 600px;
    margin: auto;
    right: 0;
    left: 0;
	z-index: 10;
}
.flex-control-nav li{
    margin: 0 10px;
	vertical-align: middle;
}
.flex-control-paging li a{
	width: 12px;
    height: 12px;
    border-radius: 10px;
    background: #444;
}
.flex-control-paging li a.flex-active {
    background: #efefef;
	width: 15px;
    height: 15px;
}

.limited_con {
    position: absolute;
    top: -34px;
    border: 1px solid #fff;
    width: 100%;
    padding: 5px 5px 3px 5px;
    box-sizing: border-box;
}
.soft_title{
	font-size: 18px;
    text-align: left;
    margin-top: 15px;
}
.soft_price{
	display:none;
	font-size: 18px;
    text-align: left;
    margin-top: 5px;
}
.soft_price small{
	font-size: 14px;
	padding-left:10px;
}
.btn {
    background-color: #e60012;
    padding: 10px;
    border-radius: 22px;
    width: 70%;
    margin: 13px auto;
    font-size: 17px;
    box-shadow: 00px 0px 4px 1px rgb(0 0 0 / 44%);
	font-weight: 600;
}
/*スペックCSS*/
.spec_wrapper{
	background-color: rgba(0, 0, 0, 0.54);
    padding: 76px 150px;
    color: #fff;
    outline: 2px solid rgba(193, 185, 164, 0.63);
    outline-offset: -10px;
    border-radius: 1.5%;
	position:relative;
}
.spec_wrapper::before {
    content: url(/bc/c/pc/gamingpc/images/mh/img_deco.png);
    display: block;
    position: absolute;
    top: 2%;
    left: 2%;
    opacity: 0.4;
}
.spec_wrapper::after {
    content: url(/bc/c/pc/gamingpc/images/mh/img_deco.png);
    display: block;
    position: absolute;
    top: 2%;
    right: 2%;
    opacity: 0.4;
    transform: scale(-1, 1);
    filter: FlipH;
    -ms-filter: "FlipH";
}
.spec_wrapper table {
    color: initial; /* 親要素の文字色を引き継ぐ（指定が上書きされない） */
}
#mh #spec h2{margin-bottom: 13px;margin-top: 0px;}
#spec .comment{
    text-align: center;
    font-size: 15px;
    margin-bottom: 38px;
}
#spec .coution{
    text-align: left;
    margin-top: 10px;
}

/*** タブ切り替え制御CSS ***/
#tab-content-list_01,
#tab-content-list_02,
#tab-content-list_03,
#tab-content-list_04 {display:none}

/* ラジオボタン非表示 */
.tab-switch {display: none;}

/* タブがチェックされたら、コンテンツを表示 */
#tab-list_01:checked ~ #tab-content-list_01,
#tab-list_02:checked ~ #tab-content-list_02,
#tab-list_03:checked ~ #tab-content-list_03,
#tab-list_04:checked ~ #tab-content-list_04{display: block;}


.tab-label_wrapper{
	display:flex;
	width:100%;
	gap:1%;
}
.tab-label {
	font-weight: bold;
    text-align: center;
    padding: 20px 0;
    z-index: 1;
    cursor: pointer;
    width: calc(100% / 4);
    font-size: 16px;
    background-color: #8c836c;
    color: #fff;
    margin-bottom: 8px;
}

/* 【上部タブ用】タブがチェックされたら、タブの色を変える */
#tab-list_01:checked ~ .tab-label_wrapper #tab-btn-list_01,
#tab-list_02:checked ~ .tab-label_wrapper #tab-btn-list_02,
#tab-list_03:checked ~ .tab-label_wrapper #tab-btn-list_03,
#tab-list_04:checked ~ .tab-label_wrapper #tab-btn-list_04{
	background-color: #ff8b2c;
    color: #fff;
    margin-bottom: 0;
    padding-bottom: 8px;
}

#spec ul {
    color: #000;
    width: 100%;
    margin: auto;
    text-align: left;
    border-collapse: collapse;
    border-spacing: 0;
    background: #ffffff;
    font-size: 14px;
    border: 5px solid #ff8b2c;
    box-sizing: border-box;
}
#spec ul li:nth-child(2n+1) {
    background: #e9e7dd;
}

#spec ul, dl, dt {
    vertical-align: middle;
    line-height: 1.8em;
}
#spec dt,
#spec dd {
	padding: 10px;
}
#spec ul dl {
	display:flex;
}
#spec ul dl dt {
    width: 20%;
    border-right: 1px solid #6c634a;
}
#spec ul dl dd {
    width: 70%;
}


#recommend,
#soft
 {
    color: #fff;
}

#recommend .productblockcover,
#soft .productblockcover {
    color: initial;
    padding: 15px;
}

#recommend h3,
#soft h3 {
    position: relative;
    padding: .14em 0.7em .1em;
    color: #ffffff;
    display: inline-block;
    font-size: 26px;
    font-weight: 100;
    margin: 0 auto 10px;
}
#recommend h3::before,
#recommend h3::after ,
#soft h3::before,
#soft h3::after {
    display: inline-block;
    position: absolute;
    width: 10px;
    height: 100%;
    border: 3px solid #fff;
    box-sizing: border-box;
    content: '';
}

#recommend h3::before,
#soft h3::before{
    top: 0;
    left: 0;
    border-right: none;
}

#recommend h3::after,
#soft h3::after{
    bottom: 0;
    right: 0;
    border-left: none;
}

.productblockcover{
	background-color: #fff;
}
.item_wrapper{
	margin-bottom: 35px;
	text-align: left;
}
#mh #soft h2{
    margin-bottom: 80px;
    margin-top: 80px;
}
.steam_wrapper{
	display: flex;
    justify-content: center;
    gap: 4%;
}
.steam_wrapper .edition {
    position: relative;
    padding: 20px 0 0;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.steam_wrapper .edition:nth-child(1){
	background-color: #9ea8b1;
    background-image: url(/bc/c/pc/gamingpc/images/mh/bk_04.jpg);
    background-position: left;
}
.steam_wrapper .edition:nth-child(2){
	background-color: #a5824c;
    background-image: url(/bc/c/pc/gamingpc/images/mh/bk_04.jpg);
    background-position: center;
}
.steam_wrapper .edition:nth-child(3){
	background-color: #677680;
    background-image: url(/bc/c/pc/gamingpc/images/mh/bk_04.jpg);
    background-position: right;
}
.steam_wrapper .edition div.edition_top {
    padding: 0 30px;
}
.steam_wrapper .edition div.edition_bottom .steam {
    background-color: #00ADEF;
}
.steam_wrapper .edition div.edition_bottom .xbox{
    background-color: #197C10;
}

.steam_wrapper .edition p:not(.btn) {
    font-size: 17px;
    margin-bottom: 0;
    background-color: #e60012b5;
    padding: 8px;
}
.steam_wrapper .edition p.btn {
    box-sizing: border-box;
    position: relative;
    padding: 15px;
    border-radius: 28px;
    width: 90%;
    margin: 0 auto 5%;
    box-shadow: 00px 0px 4px 3px rgb(0 0 0 / 30%);
}

.steam_wrapper .edition p.btn:hover {
    opacity: 0.8;
    transform: translateY(1px);
    transition: all 0.3s ease 0s;
    cursor: pointer;
}

.steam_wrapper .edition p.btn a {
    color:#fff; 
}

.steam_wrapper .edition img{
}
.steam_wrapper .edition ul {
    padding: 20px 0 15px;
    text-align: left;
    text-shadow: 0px 1px 2px #000;
}
.steam_wrapper .edition ul li {
    margin-bottom: 8px;
    font-size: 14px;
}
.steam_wrapper .edition a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	z-index: 10;
}

