@charset "utf-8";

/*
/*    CSS MENU
/*
*/

.mtll{margin-top:	15vw !important;}
.mbll{margin-bottom:	15vw !important;}
.ptll{padding-top:	15vw !important;}
.pbll{padding-bottom:	15vw !important;}
.mtl{margin-top:	10vw !important;}
.mbl{margin-bottom:	10vw !important;}
.ptl{padding-top:	10vw !important;}
.pbl{padding-bottom:	10vw !important;}
.mtml{margin-top:	7vw !important;}
.mbml{margin-bottom:	7vw !important;}
.ptml{padding-top:	7vw !important;}
.pbml{padding-bottom:	7vw !important;}
.mtm{margin-top:	5vw !important;}
.mbm{margin-bottom:	5vw !important;}
.ptm{padding-top:	5vw !important;}
.pbm{padding-bottom:	5vw !important;}
.mtms{margin-top:	3vw !important;}
.mbms{margin-bottom:	3vw !important;}
.ptms{padding-top:	3vw !important;}
.pbms{padding-bottom:	3vw !important;}
.mts{margin-top:	2vw !important;}
.mbs{margin-bottom:	2vw !important;}
.pts{padding-top:	2vw !important;}
.pbs{padding-bottom:	2vw !important;}
.mtss{margin-top:	1vw !important;}
.mbss{margin-bottom:	1vw !important;}
.ptss{padding-top:	1vw !important;}
.pbss{padding-bottom:	1vw !important;}

html {
    font-size: 2.4vw;
}

#wrapper {
	padding-top: 6.8vw;
}
/*******************************************************************************
/*******************************************************************************
form */
.quantity input {
	text-align: center;
}

.acf-label .ninni, .form_layout .ninni,
.acf-label .acf-required, .form_layout .required {
    height: 5.8vw;
	width: 9vw;
	margin-right: 1.8vw;
}

.acf-field .acf-label,
.form_layout > dt .tl {
    font-size: 1.6rem;
}

.acf-field .acf-label,
.form_layout > dt {
    margin-bottom: 2vw;
}

.acf-field + .acf-field,
.form_layout + .form_layout {
	margin-top: 6vw;
	border-top: 1px solid #ccc;
	padding-top: 6vw;
}

/* acfの更新完了メッセージ */
.ap_main_wrap #message.updated {
	border: 1px solid #000;
    padding: 10px 15px;
    margin-bottom: 25px;
}
/* acf全体のエラーメッセージ */
.acf-notice.-error.acf-error-message.-dismiss {
	display: none;
}

.acf-field .acf-input {
	display: flex;
    width: 100%;
    flex-direction: column;
}

.acf-input .acf-notice.-error.acf-error-message {
    order: 2;
    color: #d00505;
    font-size: 1.3rem;
    margin-top: 5px;
}


.form_narabi {
    display: flex;
}

.form_narabi_item + .form_narabi_item {
   margin-left: 4vw;
}

.form_child {
    display: flex;
    align-items: center;
}

.form_child + .form_child {
	margin-top: 20px;
}

.form_child input {
	flex: 1 1 0%;
}

.form_child_ttl {
    margin-right: 2vw;
}

.form_narabi_item_ttl span {
	font-size: 1.2rem;
	display: block;
}

.form_readonly {
    padding: 0 4vw 0vw 0;
}

.form_password .form_narabi_item_ttl{
	font-size: 1.3rem;
	width: 50%;
}

/*______________________________________________________________________________
インプット補足 */
.input_hosoku {
    color: #7d7d7d;
    font-size: 1.2rem;
    margin-top: 1.2vw;
}

/*******************************************************************************
/*******************************************************************************
guest_info_block */
.guest_info_block {
	position: fixed;
	width: 100%;
	z-index: 10001;
	top: 0;
	left: 0;
}

.guest_info_block {
    padding: 1vw 0;
	margin-bottom: 5px;
	max-height: 7.3vw;
    overflow: hidden;
}

.guest_info_block p {
    font-size: 3.3vw;
    text-align: center;
}

/*******************************************************************************
/*******************************************************************************
header */

header .header_inner {
	display: block;
	padding-top: 0;
}

header .site_catch {
    display: none;
}

header .logo_wrap {
    width: 20vw;
    margin-right: auto;
    margin-left: auto;
    margin-top: 2vw;
}

/* メニューボタン */
header .sp_menu_wrap {
	width: 14vw;
	position: fixed;
	top: 0;
	height: 14vw;
	right: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	z-index: 10000;
	background: rgba(243, 243, 243, 0.85);
}

header .sp_menu_wrap {
	top: 8vw;
}

header .sp_menu_wrap a {
	display: block;
	width: 7vw;
	height: 5vw;
	position: relative;
	text-decoration: none;
	color: #4a3730;
}

header .sp_menu_wrap a:before,
header .sp_menu_wrap a:after,
header .sp_menu_wrap a span:before {
	background: #7a7a7a;
	width: 100%;
	height: 2px;
	position: absolute;
	content: "";
	border-radius: 1vw;
	top: 0;
	left: 0;
	transition: 0.5s;
}

header .sp_menu_wrap a:after {
	top: 2.5vw;
	top: -webkit-calc(2.5vw - 1px);
	top: calc(2.5vw - 1px);
}

header .sp_menu_wrap a span:before {
	top: 5vw;
	top: -webkit-calc(5vw - 2px);
	top: calc(5vw - 2px);
}

header.on .sp_menu_wrap a:before {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	top: 2.8vw;
}

header.on .sp_menu_wrap a:after {
	opacity: 0;
}

header.on .sp_menu_wrap a span:before {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 2.8vw;
}

/* header menu */
header .sp_fiexd_wrap {
	display: none;
	position: fixed;
	background: rgba(255,255,255,0.95);
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1000;
}

header .functions_wrap {
	padding: 15vw 5vw;
	display: flex;
	justify-content: unset;
	align-items: unset;
	flex-direction: column;
	height: 100%;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

/* ログインしていないとき */
header .functions_wrap {
	padding: 23vw 5vw;
}

header .header_menu {
    font-size: 1.1rem;
    display: flex;
    justify-content: center;
	width: 100%;
	
	order: 1;
}



header .header_menu  li + li {
    margin-left: 4.3vw;
}

header .header_menu  li {
	background: #949494;
	padding: 2vw;
	border-radius: 5px;
	width: 18.4vw;
}

header .header_menu  .header_menu_games {
	background: #d00505;
}

header .header_menu_games a {
	background: url(../img/common/h_icon_games_sp.svg) center top no-repeat;
}

header .header_menu_login a {
	background: url(../img/common/h_icon_login_sp.svg) center top no-repeat;
}

header .header_menu_register a {
	background: url(../img/common/h_icon_register_sp.svg) center top no-repeat;
}

header .header_menu_cart a {
	background: url(../img/common/h_icon_cart_sp.svg) center top no-repeat;
}

header .header_menu_mypage a {
	background: url(../img/common/h_icon_mypage_sp.svg) center top no-repeat;
}

header .header_menu_wishlist a {
	background: url(../img/common/h_icon_wishlist_sp.svg) center top no-repeat;
}

header .header_menu a {
	padding-top: 8vw;
	color: #fff;
	background-size: auto 6.4vw;
}

header .middle_wrap {
	margin-right: 0;
	order: 2;
}

header .search_wrap {
	position: relative;
	margin-top: 6vw;
}

header .search_wrap form {
	position: relative;
}

header .search_wrap form input {
	background: #f0f0f0;
	padding: 1.8vw 3vw 1.8vw 8.8vw;
	border: 1px solid #777;
}

header .search_wrap button {
	width: 8.4vw;
	height: 6.6vw;
	top: 1.2vw;
	background-size: 4.6vw auto;
}

header .h_content_wrap {
	order: 3;
}

header .sp_site_catch {
	text-align: center;
    font-size: 3.3vw;
    margin-top: 3vw;
}

/*******************************************************************************
/*******************************************************************************
footer */
.footer_sns_block {
	margin-top: 10vw;
	padding: 1.8vw 0;
}


.footer_sns_list li {
	margin-left: 6vw;
	width: 7vw;
}

.footer_sns_list li img {
	width: 100%;
}

.footer_bnr_block {
	margin-top: 10.6vw;
}

.footer_bnr_box {
	margin-bottom: -5.3vw;
}

.footer_bnr_box + .footer_bnr_box {
	margin-top: -5.3vw;
}

.footer_bnr_box ul {
	justify-content: space-between;
	padding: 0 5vw;
}

.footer_bnr_box li {
	margin: 0 0 5.3vw;
	width: 48%;
}

footer {
    margin-top: 10.6vw;
    padding-bottom: 22.6vw;
}

.footer_list {
	margin-top: 8vw;
}

.footer_list li {
	padding-right: 4vw;
}

.footer_list li + li {
	padding-left: 4vw;
}

.footer_list:last-of-type {
	margin-right: 0;
}

footer small {
	margin-top: 6.6vw;
}

.footer_list li a {
    font-size: 1.2rem;
}

/*******************************************************************************
/*******************************************************************************
page_top */
#page_top {
	right: 5.3vw;
    bottom: 5.3vw;
}

#page_top a {
	width: 13.3vw;
	height: 13.3vw;
}

#page_top a:before {
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -1vw) rotate(-45deg);
	transform: translate(-50%, -1vw) rotate(-45deg);
	width: 4vw;
	height: 4vw;
}

/*******************************************************************************
/*******************************************************************************
ボタン */
.btn01 .btn_in {
    font-size: 1.4rem;
    width: 100%;
    padding: 4vw 6.5vw 4vw 6.5vw;
	max-width: none;
}

.btn01 .btn_in span {
    padding-right: 6.6vw;
}

.btn01 .btn_in span:before {
	right: 2.7vw;
}

.btn01 .btn_in span:after {
	right: 0;
}

.btn01 .no_span:before {
	margin-left: 2.4vw;
}


.btn01.btn_reverse .btn_in span {
    padding-right: 0;
    padding-left: 6.6vw;
}

.btn01.btn_reverse .btn_in span:before {
	right: auto;
	left: 2.7vw;
}

.btn01.btn_reverse .btn_in span:after {
	left: 0;
	right: auto;
}

.btn_col {
    display: block;
}

.btn_col02 .btn {
	width: 100%;
}

.btn_col02 .btn + .btn {
	margin-left: 0;
	margin-top: 3vw;
}

/*******************************************************************************
/*******************************************************************************
qa */
.a_box,
.q_box {
	padding: 0.2em 0 0 3em;
	position: relative;
}

.a_box:before,
.q_box:before {
	position: absolute;
	top: 0;
	left: 0;
	font-size: 3rem;
	display: block;
	line-height: 1;
}

.a_box:before {
	content: 'A.';
	color: #000;
}

.q_box:before {
	content: 'Q.';
	color: #777;
}

.a_box {
	margin-top: 4.5vw;
}

.qa_box + .qa_box {
	border-top: 1px solid #000;
	margin-top: 4.5vw;
	padding-top: 4.5vw;
}

/*******************************************************************************
/*******************************************************************************
page_title */
.page_title_block {
    background: #000;
    margin: 0 0 10vw;
    font-family: 'Graduate', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Hiragino Sans, 'メイリオ', 'Meiryo', 'Osaka', 'MS PGothic', -apple-system, BlinkMacSystemFont, arial, helvetica, sans-serif;
    font-weight: bold;
}

.page_title_block .inner {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    min-height: 24vw;
    padding: 3vw 0;
}

.page_title_block .page_title {
    color: #fff;
    margin-bottom: 0;
    font-size: 3rem;
}

/*******************************************************************************
/*******************************************************************************
text_underline */
.text_underline {
	font-weight: bold;
	background: linear-gradient(transparent 50%, #ffd0d0 50%);
	padding: 0 1vw;
	margin: 0 0.5vw;
}

/*******************************************************************************
/*******************************************************************************
woocommerce-message */
.woocommerce-message:not(:empty) {
	border: 1px solid #000;
	margin-bottom: 30px;
	padding: 10px 15px;
}

/*******************************************************************************
/*******************************************************************************
table */

.th30_sp th {
	width: 30%;
}

/*++++++++++++++++++++++++++++
table_type01
++++++++++++++++++++++++++++*/
.main_content .table_type01 {
	table-layout: fixed;
}

.main_content .table_type01 a,
.main_content .table_type01 {
	font-size: 1.4rem;
	text-align: center;
}

.main_content .table_type01 a {
	display: inline;
}

.main_content .table_type01 thead {
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
}

.main_content .table_type01 th,
.main_content .table_type01 td {
	padding: 8px 5px;
}

.main_content .table_type01 td {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	border-bottom: 1px solid #ccc;
}

.main_content .table_type01 table,
.main_content .table_type01 thead,
.main_content .table_type01 tbody,
.main_content .table_type01 tr,
.main_content .table_type01 td,
.main_content .table_type01 th {
    display:block;
}

.main_content .table_type01 tr {
    border: 1px solid #000;
}

.main_content .table_type01 tr + tr {
    margin-top: 3vw;
}

.main_content .table_type01 thead {
    display: none;
}

.main_content .table_type01 td {
    padding: 0;
	display: flex;
	text-align: center;
}

.main_content .table_type01 td:before {
    display: block;
    width: 40%;
    background: #e0e0e0;
    padding: 2vw 4vw;
	text-align: center;
	display: flex;
	align-items: center;
}

.main_content .table_type01 td span:not(.woocommerce-Price-amount):not(.woocommerce-Price-currencySymbol):not(.on_sale) {
	padding: 2vw 4vw;
	width: 60%;
	text-align: left;
	white-space: normal;
}

.main_content .table_type01 td:last-of-type {
	border-bottom: 0;
}

.main_content .table_ordered td {
	display: block;
	width: 100%;
}

.main_content .table_ordered dl + dl {
	margin-top: 0;
	border-top: 1px solid #ccc
}

.main_content .table_ordered dt {
	display: block;
    width: 40%;
    background: #e0e0e0;
    padding: 2vw 4vw;
	text-align: center;
	display: flex;
	align-items: center;
}

.main_content .table_ordered dd {
	flex: 1 1 0%;
	padding: 1vw 3vw;
	text-align: left;
	white-space: normal;
	display: flex;
	justify-content: flex-start;
	align-items: center;
}

.main_content .table_ordered dd a {
	text-align: left;
}

.main_content .table_ordered tr:last-of-type {
    border-bottom: 1px solid #000;
}

.main_content .table_ordered td:before {
	display: none;
}

/* wishlist */
.main_content .table_type01 .product-remove-original:before {
	content: '削除する';
}

.main_content .table_type01 .product-name:before {
	content: '大会名';
}

.main_content .table_type01 .product-date:before {
	content: '大会日';
}

.main_content .table_type01 .product-price:before {
	content: ' 参加費（税別）';
}

/*++++++++++++++++++++++++++++
table_type02
++++++++++++++++++++++++++++*/
.table_type02 th,
.table_type02 td {
	border: 1px solid #000;
	font-size: 1.3rem;
	padding: 3vw;
	vertical-align: middle;
}

.table_type02 thead th {
    text-align: center;
    color: #fff;
	background: #777;
	padding: 7px 0px;
}

.table_type02 thead th:nth-of-type(1) {
	width: 60%;
}

.table_type02 thead th:nth-of-type(2) {
	width: 20%;
}

.table_type02 thead th:nth-of-type(3) {
	width: 21%;
}

.table_type02 tbody td:nth-of-type(2),
.table_type02 tbody td:nth-of-type(3) {
	text-align: center;
}

.table_type02 tfoot {
    text-align: center;
    background: #eeeeee;
}

.table_type02 .quantity .quantity_inner {
    justify-content: center;
}

/* カート上部 */
.table_type02.table_cart td {
	text-align: center;
}

.table_type02.table_cart td:nth-of-type(1) {
	width: 11.5%;
}

/*++++++++++++++++++++++++++++
table_type03
++++++++++++++++++++++++++++*/
.table_type03 th,
.table_type03 td {
	border: 1px solid #000;
	font-size: 1.4rem;
	padding: 8px 15px;
	vertical-align: middle;
	text-align: center;
}

.table_type03 th {
	background: #eeeeee;
	width: 79%;
}

/*******************************************************************************
/*******************************************************************************
n_article / top_article */

/*++++++++++++++++++++++++++++
title
++++++++++++++++++++++++++++*/
.n_article.top_article h2,
.n_article h3 {
	font-family: 'Graduate', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Hiragino Sans, 'メイリオ', 'Meiryo', 'Osaka', 'MS PGothic', -apple-system, BlinkMacSystemFont, arial, helvetica, sans-serif;
	font-size: 2.2rem;
}

.n_article .ttl_text_mini {
	font-size: 1.1rem;
	display: inline-block;
	vertical-align: middle;
	margin-left: 4vw;
}

.n_article section + section {
	margin-top: 13vw;
}

/*++++++++++++++++++++++++++++
block
++++++++++++++++++++++++++++*/
.border_block {
	border: 1px solid #000;
	padding: 4.4vw;
}

/*++++++++++++++++++++++++++++
sent
++++++++++++++++++++++++++++*/
.sent a,
.sent p {
	font-size: 1.4rem;
}

.sent p + p {
	margin-top: 3vw;
}

/*******************************************************************************
/*******************************************************************************
content_wrap */
.content_wrap {

}

/* main_content + asideの順番で書く
asideはデフォルトで左側に来る */
.content_has_side {
	display: flex;
	justify-content: unset;
	flex-direction: column;
}

.content_has_side .main_content {
	width: 100%;
}

.content_has_side aside {
	width: 100%;
	margin-top: 20vw;
}

/*******************************************************************************
/*******************************************************************************
aside */

.btn_bask a {
	width: 100%;
}

.side_ttl {
    margin-top: 6vw;
    margin-bottom: 3vw;
}

.side_category_list li + li {
	margin-top: 0;
}

.side_category_list li:nth-of-type(n+3) {
	margin-top: 4%;
}

.side_category_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.side_category_list li {
	width: 48%;
}

.side_category_list .side_category_txt span {
	font-size: 1.1rem;
	display: block;
}

.side_category_list .side_category_txt .wide_txt {
	letter-spacing: 2px;
}

.side_category_list .side_category_txt .narrow_txt {
	letter-spacing: -2px;
}

.side_content_list a {
	padding-left: 10.4vw;
}

:root .side_content_list a {
	background-size: 8.4vw auto;
}

/*******************************************************************************
/*******************************************************************************
game 一覧 */
.recent_games_list a {
	text-decoration: none;
	display: flex;
	align-items: unset;
	justify-content: unset;
	flex-direction: column;
}

.archive_tournament_middle {
	margin-right: 0;
    font-size: 1.25rem;
	overflow: hidden;
    padding: 0.3vw 0;
}

.archive_tournament_addition {
	margin-top: 0.1vw;
	justify-content: flex-start;
    flex-wrap: wrap;
}

.archive_tournament_title {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.archive_tournament_info:after {
	font-family: 'Graduate', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Hiragino Sans, 'メイリオ', 'Meiryo', 'Osaka', 'MS PGothic', -apple-system, BlinkMacSystemFont, arial, helvetica, sans-serif;
	content: '>';
	margin-left: 1.3vw;
    font-size: 1.6rem;
	display: flex;
	align-items: center;
}

.archive_tournament_addition .txt_grad {
	order: 1;
}

.recent_games_list .category_tag {
    border-left-width: 2.4vw;
    font-size: 1.4rem;
    width: 24vw;
    height: 14vw;
    line-height: 1;
    padding-left: 1.5vw;
    margin-right: 2.3vw;
}

.recent_games_list li {
	border-top: 1px solid #ccc;
	padding: 4vw 0;
}

.recent_games_list li:last-of-type {
	border-bottom: 1px solid #ccc;
}

.category_tag {
	border-left-width: 2.4vw;
	font-size: 1.7rem;
	width: 23vw;
	height: 14vw;
	line-height: 1;
	padding-left: 1.5vw;
	margin-right: 0;
}

.category_tag span {
	font-size: 1rem;
}

.recent_games_list .btn {
    margin-top: 3vw;
    display: none;
}

.archive_tournament_date span {
	vertical-align: baseline;
}

.recent_games_list .clock {
    margin-left: 2vw;
	order: 1;
}

.archive_tournament_ttl {
	order: 2;
	margin-left: auto;
	width: auto;
}

.archive_tournament_price {
	order: 4;
}

/*******************************************************************************
/*******************************************************************************
game 詳細 */

.product_content {
	margin-top: 7vw;
}

.product_content,
.product_content a {
	font-size: 1.4rem;
}

.product_tables {
	margin-top: 5vw;
}

.product_tables,
.product_tables a {
	font-size: 1.4rem;
}

.product_table {
	display: block;
	padding: 3vw;
}

.product_table + .product_table {
	border-top: 0;
}

.product_table dt {
	padding: 0;
	width: 100%;
	font-size: 1.7rem;
}

.product_table dd {
	margin-top: 3vw;
	padding: 0;
}

.product_top_block {
	display: flex;
	justify-content: space-between;
	margin-bottom: 20px;
}

.single_product_info_block {
	padding: 4vw 3vw;
	border: 1px solid #000;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

.single_product_info_block form {
	display: flex;
	margin-left: auto;
	align-items: center;
	margin-right: auto;
	margin-top: 3vw;
}

.single_product_info_block .price .tax {
    font-size: 1.2rem;
    vertical-align: baseline;
}

.single_product_info_block .price {
    font-size: 2.4rem;
}

.single_product_info_block .price {
    margin-right: auto;
    margin-left: auto;
}

.single_product_info_block .want_num,
.single_product_info_block .stock_num {
    font-size: 1.8rem;
    margin-left: 3px;
}

.single_product_info_block .stock_box {
	margin-left: auto;
	margin-right: auto;
}

.single_product_info_block .quantity_input_wrap {
    margin-right: 5px;
}

.single_product_info_block .quantity_unit {
    margin-right: 10px;
    font-size: 1.2rem;
    padding-top: 8px;
    display: inline-block;
}

.single_product_info_block .on_sale_wrap {
	width: 100%;
	text-align: center;
}

.single_product_info_block .on_sale_wrap ins,
.single_product_info_block .on_sale_wrap del {
	text-decoration: none;
}

.single_product_info_block .on_sale_wrap del {
	font-size: 1.7rem;
	position: relative;
}

.single_product_info_block .on_sale_wrap del:before {
	content: '';
	width: 100%;
	background: #d00505;
	height: 2px;
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.single_product_info_block .on_sale_wrap ins {
	padding-left: 52px;
	position: relative;
	color: #d00505;
	font-size: 1.8rem;
}

.single_product_info_block .on_sale_wrap ins:before {
	content: '-->';
	display: block;
	position: absolute;
	top: 50%;
	left: 12px;
	font-size: 1.4rem;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	font-family: 'Graduate', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Hiragino Sans, 'メイリオ', 'Meiryo', 'Osaka', 'MS PGothic', -apple-system, BlinkMacSystemFont, arial, helvetica, sans-serif;
    font-weight: bold;
}

.single_product_info_block .on_sale_wrap .on_sale {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 10px;
}

.single_product_info_block .is_over_text {
	text-align: center;
}

.on_sale_wrap + .stock_box {
	margin-left: auto;
	margin-right: auto;
}

.on_sale_wrap + .stock_box + .cart {
	margin-left: auto;
	margin-right: auto;
	margin-top: 3vw;
}

.cart_popup_content {
	padding: 4rem 2rem 3rem;
}

.cart_popup_inner .btn_col {
    margin-top: 3rem;
}

/*******************************************************************************
/*******************************************************************************
top page */

/*++++++++++++++++++++++++++++
slider
++++++++++++++++++++++++++++*/
.top_slider {
	margin-bottom: 19.95vw;
}

.top_slider a {
	display: block;
}

.top_slider img {
	width: 100%;
}

/*-----------------------------
slickの設定（デフォルト）
-----------------------------*/
.slick-dots {
    position: absolute;
    bottom: -45px;
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
}

.slick-dots li {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0;
    padding: 0;
    cursor: pointer;
}

.slick-dots li button {
    font-size: 0;
    line-height: 0;

    display: block;

    width: 20px;
    height: 20px;
    padding: 5px;

    cursor: pointer;

    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}

.slick-dots li button:before {
    font-family: 'slick';
    font-size: 6px;
    line-height: 20px;
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    content: '•';
    text-align: center;
    color: #7f7f7f;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
    color: #000;
}

.slick-prev, .slick-next {
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: 50%;
    display: block;
    width: 20px;
    height: 20px;
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: transparent;
}

/*-----------------------------
slickの設定（オリジナル）
-----------------------------*/
.slick-list.draggable {
	padding: 0 10% !important;
}

.top_slider .slick-prev, .top_slider .slick-next {
    width: 10vw;
    left: 0;
	padding-right: 0;
}
.top_slider .slick-prev:before,
.top_slider .slick-next:before {
	width: 5vw;
	height: 5vw;
}

.top_slider .slick-next:before {
	left: 2vw;
}

.top_slider .slick-prev:before {
	right: 2vw;
}

.top_slider .slick-next {
    left: inherit;
    right: 0;
    text-align: left;
    padding-left: 0;
    padding-right: 0;
}

.top_slider .slick-dots li button:before {
    width: 2.1vw;
    height: 2.1vw;
}

/*++++++++++++++++++++++++++++
information
++++++++++++++++++++++++++++*/
.information_list li {
	display: flex;
}

.information_list li + li {
	margin-top: 5vw;
}

.information_list time {
	margin-right: 20px;
	font-size: 1.4rem;
}

.information_list p {
	flex: 1 1 0%;
	font-size: 1.4rem;
}

.information_list p a {
	color: #000;
	font-weight: bold;
}

/*++++++++++++++++++++++++++++
topics
++++++++++++++++++++++++++++*/
.topics_list {
	display: flex;
	flex-wrap: wrap;
}

.topics_list li {
	width: 32%;
	margin-right: 2%;
}

.topics_list li:nth-of-type(3n) {
	margin-right: 0;
}

.topics_list a {
	position: relative;
	padding-top: 100%;
	display: block;
}

.topics_list a img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    font-family: 'object-fit: cover;';
    -webkit-backface-visibility: visible;
    backface-visibility: visible;
}

/*++++++++++++++++++++++++++++
top_ttl_linkin
++++++++++++++++++++++++++++*/
.top_ttl_linkin a {
	font-size: 1.4rem;
	display: inline-block;
	padding-left: 15px;
    position: relative;
	vertical-align: middle;
	margin-left: 25px;
	text-decoration: none;
}

.top_ttl_linkin a:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 8px;
	height: 8px;
	-webkit-transform: translate(-50%,-50%) rotate(45deg);
	transform: translate(-50%,-50%) rotate(45deg);
}

/*******************************************************************************
/*******************************************************************************
投稿一覧ページ */

.archive_pagination .wp-pagenavi {
	margin-top: 10.5vw;
}

.archive_main_wrap .information_list li {
	padding: 5.3vw 0;
}

.archive_main_wrap .information_list li + li {
	margin-top: 0px;
}

/*******************************************************************************
/*******************************************************************************
検索一覧ページ */

.search_result_list li {
	padding: 5.3vw 0;
}

/*******************************************************************************
/*******************************************************************************
出張MASHUP一覧ページ */
.coming_list li + li {
	margin-top: 5.3vw;
}

/*******************************************************************************
/*******************************************************************************
大会一覧ページ */
.game_filter_block {
	border: 1px solid #000;
	padding: 7vw 5vw;
}

.filter_dl {
	display: block;
}

.filter_dl dt {
	margin-right: 0;
	min-width: none;
	padding-top: 0;
}

.filter_dl + .filter_dl {
    margin-top: 5vw
}

.filter_dl dd {
	margin-top: 3vw;
}

.filter_dl ul {
	display: flex;
	flex-wrap: wrap;
}

.filter_btn {
	margin-top: 6vw;
}

.recent_game_block {
	margin-top: 10vw;
}

.no_products_found_block {
	margin-top: 5vw;
}

/*++++++++++++++++++++++++++++
ページャー
++++++++++++++++++++++++++++*/
.pagination_wrap {
	text-align: center;
	margin-top: 10vw;
}

.pagination_wrap .pagination {
	display: inline-block;
}

.wp-pagenavi {
	display: flex;
}

.wp-pagenavi .previouspostslink {
    order: 1;
}

.wp-pagenavi span,
.wp-pagenavi a {
	order: 2;
	font-size: 1.2rem;
	min-width: 7vw;
	height: 7vw;
	padding: 1vw;
	border: 1px solid #000;
	color: #000;
	margin-right: 1.2vw;
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
}

.wp-pagenavi .nextpostslink {
    order: 3;
}

.wp-pagenavi .current {
	color: #fff;
	background: #000;
}

.wp-pagenavi .extend {
	border: 0;
	padding: 1vw 0 2vw 0;
	min-width: 3.1vw;
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
	min-width: 13vw;
}

.wp-pagenavi .previouspostslink {
	margin-right: 3.4vw;
}

.wp-pagenavi .nextpostslink {
	margin-right: 0;
	margin-left: 10px;
}

/*******************************************************************************
/*******************************************************************************
マイアカウントページ */
.ap_main_nav {
	display: block;
	margin-bottom: 40px;
}

.ap_main_nav li {
	width: 100%;
	height: 0;
	overflow: hidden;
	border: 0;
	transition: 0.5s ease;
	background-color: #fff;
}

.ap_main_nav_block.open li {
	overflow: visible;
	height: 14vw;
	border: 1px solid #000;
}

.ap_main_nav li a {
	padding: 4vw 1.8vw;
	width: 100%;
}

.ap_main_nav_block {
    position: relative;
}

.ap_nav_block_btn {
	display: flex;
	position: absolute;
	width: 15vw;
	height: 8vw;
	top: 3vw;
	right: 3vw;
	border: 2px solid #000;
    justify-content: center;
    align-items: center;
}

.ap_nav_block_btn:before {
    content: 'MENU';
    font-size: 3vw;
}

.ap_main_nav_block.open .ap_nav_block_btn:before {
	content: 'CLOSE';
}

.ap_main_nav .current {
    border: 2px solid #000;
    font-weight: bold;
    position: relative;
    height: 14vw;
    overflow: visible;
}

.ap_main_nav_block.open li.current {
	border: 2px solid #000;
}

.ap_main_nav .current:before,
.ap_main_nav .current:after {
	content: '';
	position: absolute;
	display: block;
	bottom: -14px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.ap_main_nav .current:before {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 14px 12px 0 12px;
	border-color: #000000 transparent transparent transparent;
	z-index: 11;
}

.ap_main_nav .current:after {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 12px 10px 0 10px;
	border-color: #ffffff transparent transparent transparent;
	z-index: 12;

	-webkit-transform: translate(-50%, -3px);
	transform: translate(-50%, -3px);
}

.ap_bottom_nav_block {
	margin-top: 25vw;
}

.ap_bottom_nav {
	display: flex;
}

.ap_bottom_nav li + li {
	margin-left: 25px;
}

.ap_bottom_nav li a {
	position: relative;
	padding-left: 26px;
	font-size: 1.4rem;
	text-decoration: none;
}

.ap_bottom_nav li a:before,
.ap_bottom_nav li a:after {
	display: block;
	position: absolute;
	font-family: 'Graduate', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Hiragino Sans, 'メイリオ', 'Meiryo', 'Osaka', 'MS PGothic', -apple-system, BlinkMacSystemFont, arial, helvetica, sans-serif;
	top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.ap_bottom_nav li a:before {
	content: '-';
	left: 0;
}

.ap_bottom_nav li a:after {
	content: '>';
	left: 10px;
}

.dashboard_wrap .tinv-lists-nav {
	display: none;
}

/*++++++++++++++++++++++++++++
注文詳細ページ
++++++++++++++++++++++++++++*/
.order_detail_info_table {
	display: flex;
	position: relative;
	padding-left: 18px;
	font-size: 1.4rem;
}

.order_detail_info_table + .order_detail_info_table {
	margin-top: 5px;
}

.order_detail_info_table:before {
	content: '';
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #000;
	position: absolute;
	top: 8px;
	left: 0px;
}

.order_detail_info_table dt {
	min-width: 85px;
}

.order_details {
	margin-top: 6vw;
}

.woocommerce-pagination--without-numbers {
	margin-top: 15px;
	overflow: hidden;
}

.woocommerce-pagination--without-numbers .woocommerce-Button--previous {
	float: left;
}

.woocommerce-pagination--without-numbers .woocommerce-Button--next {
	float: right;
}
/*++++++++++++++++++++++++++++
お気に入り
++++++++++++++++++++++++++++*/
.tinv-lists-nav {
	margin-top: 15px;
}

.tinv-lists-nav > span {
	display: none !important;
}

.ftinvwl-chevron-right,
.ftinvwl-chevron-left {
	display: none !important;
}

.tinv-wishlist .tinv-prev {
	float: left;
}

.tinv-wishlist .tinv-next {
	float: right;
}

/*******************************************************************************
/*******************************************************************************
カートページ */

/* クーポンの削除ボタンを消す */
.woocommerce-remove-coupon {
	display: none;
}

/* お支払方法の説明ブロック */
.payment_explain_block {
	margin-top: 11vw;
}

.payment_explain_block {
	font-size: 1.6rem;
}

.payment_explain_body {
	margin-top: 7vw;
	padding: 6vw 5vw;
	display: flex;
	justify-content: center;
	border: 1px solid #000;
	font-weight: bold;
}

.payment_explain_body dl {
	display: block;
}

.payment_explain_body dl dt {
	margin-right: 0;
}

.payment_explain_body dd p + p {
	margin-top: 1vw;
}

.cart_main_wrap .quantity_unit {
	display: none;
}

.cart_dl {
	flex-direction: column;
}

.cart_dl dt span {
	display: none;
}

.cart_dl + .cart_dl {
	padding-top: 1rem;
	margin-top: 1rem;
	border-top: 1px solid #ccc;
}


/* 国フィールドは必要ないため非表示 */
#billing_country_field {
	display: none;
}

/* カートの合計テーブル */
.cart_totals {
	margin-top: 35px;
}

.billing_team_name {
	padding: 0;
}

/*******************************************************************************
/*******************************************************************************
お支払いページ */
.woocommerce-checkout .woocommerce-additional-fields {
	margin-top: 20px;
}
.woocommerce-checkout .woocommerce-additional-fields h3 {
	display: none;
}
.woocommerce-checkout-review-order-table {
	margin-top: 40px;
}

.woocommerce-checkout-payment .checkout_payment_title {
	margin-top: 5vw;
	margin-bottom: 0.8vw;
}

.woocommerce-checkout-payment .wc_payment_method label {
	font-weight: bold;
}

.woocommerce-checkout-payment .payment_explain_block {
	margin-top: 3vw;
}

/*++++++++++++++++++++++++++++
注文完了サンクスページ
++++++++++++++++++++++++++++*/
.thanks_checkout_block .thanks_checkout_ttl {
	font-size: 1.8rem;
	margin-bottom: 10vw;
	text-align: center;
}

.thanks_checkout_block .thanks_checkout_bottom {
	margin-top: 4vw;
}

.thanks_order_detail {
	margin-top: 11vw;
}

.thanks_order_detail .btn {
	display: none;
}

/*******************************************************************************
/*******************************************************************************
ログイン/新規会員登録 */

/*++++++++++++++++++++++++++++
ログイン
++++++++++++++++++++++++++++*/
.login_hosoku {
	margin-top: 20px;
}

.login_hosoku p {
	font-size: 1.4rem;
}

.member_block .form_layout_block {
	margin-top: 5vw;
}

.member_block .checkbox_square {
	display: flex;
	justify-content: center;
	margin-top: 5vw;
}

.checkbox_square .checkbox_style span {
	font-size: 1.6rem;
	line-height: 1;
}

.checkbox_square .checkbox_style span:before {
	border-radius: 0;
	width: 20px;
	height: 20px;
}

.checkbox_square .checkbox_style input:checked + .checkbox_txt:after {
    width: 9px;
    height: 13px;
    left: 5px;
    top: 4px;
}

/*++++++++++++++++++++++++++++
会員登録
++++++++++++++++++++++++++++*/
.form_layout_block {
	margin-top: 30px;
}

.register_btn {
	margin-top: 50px;
}

/*******************************************************************************
/*******************************************************************************
投稿ページ */
.post_thumb {
	margin-bottom: 5vw;
}
.post_content {
	overflow: hidden;
}

.post_content h1 {
	margin-bottom: 25px;
}

.post_content h1:not(:first-child),
.post_content h2:not(:first-child),
.post_content h3:not(:first-child),
.post_content h4:not(:first-child),
.post_content h5:not(:first-child),
.post_content h6:not(:first-child) {
	margin-top: 12vw;
}

.post_content blockquote {
    -webkit-margin-before: 1em;
    -webkit-margin-after: 1em;
    -webkit-margin-start: 4rem;
    -webkit-margin-end: 4rem;
}
 
.post_content .alignright { 
	float: none;
	margin-left: 0;
	margin-bottom: 2vw;
}
.post_content .alignleft { 
	float: none;
	margin-right: 0;
	margin-bottom: 2vw;
}
 
.post_content img[class*="wp-image-"],
.post_content img[class*="attachment-"] {
    max-width: none;
    width: 100%;
}

.post_content table,
.post_content ol,
.post_content ul {
	margin-top: 3vw;
}

.post_content table + p,
.post_content ol + p,
.post_content ul + p {
	margin-top: 3vw;
}

.post_content li + li {
	margin-top: 1.5vw;
}


.post_content table td,
.post_content table th {
	padding: 2.1vw 4vw;
}

/*******************************************************************************
/*******************************************************************************
固定ページ 基本的に投稿ページと同じCSS
*/

/*++++++++++++++++++++++++++++
お問い合わせページ
++++++++++++++++++++++++++++*/
.contact_form_block {
	margin-top: 30px;
	margin-bottom: 30px;
}

/* 確認画面 */
.contact_form_block .wpcf7_confirm_step .form_layout dd {
	padding: 2vw 0;
}

/*++++++++++++++++++++++++++++
INBOX
++++++++++++++++++++++++++++*/
.mtm_solid {
	margin-top: 5vw;
}

/* normal_popup */
.normal_popup_content {
	padding: 4rem 2rem 3rem;
	width: 100%;
}

.normal_popup_inner .btn {
    margin-top: 3rem;
}