/*
Theme Name:  VinylSports
Theme URI:
Description:
Version: 1.0
Author: 
Author URI:
*/


body {
	font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic";
	color:#333;
	font-size:14px;
	font-weight: 400;
	line-height:1.75;
	letter-spacing:0.03em;
	text-align:justify;
}
a {
	color: #333;
	text-decoration: none;
	transition: 0.3s ease-out;
}
a:hover {
	color:#296fa0;
}

::selection{background-color:#cfa972; color: #FFF;}
::-moz-selection{background-color:#cfa972; color: #FFF;}

body , header , footer{
	max-width: 1920px;
	margin: auto;
}



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

	#mainvisual　＊　下層のMV

============================================================================*/
#mainvisual {
	position: relative;
	display: flex;
	width: 100%;
	height:350px;
	margin:auto;
	background: url(images/top_img07.jpg) center no-repeat;
  	background-size: cover;
  	overflow: hidden;
}
#mainvisual h2 {
	position: relative;
	display: inline-block;
	margin: auto;
	padding: 12px 50px 3px;
	font-size: 40px;
	font-weight: bold;
	background: #FFF;
	text-align: center;
	line-height: 1;
}
#mainvisual::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: 85px;
	height: 50%;
	background: #001438;
}
#mainvisual::after {
	position: absolute;
	content: "";
	top: 50%;
	left: 0;
	width: 85px;
	height: 50%;
	background: #FFF;
}



/*------------------------------ ページごとにMV変更 ------------------------------*/
.page-id-12 #mainvisual { background: url(images/mv_img02.jpg) center no-repeat; background-size: cover; }
.page-id-44 #mainvisual { background: url(images/mv_img03.jpg) center no-repeat; background-size: cover; }
.page-id-154 #mainvisual { background: url(images/mv_img04.jpg) center no-repeat; background-size: cover; }
.page-id-156 #mainvisual { background: url(images/mv_img05.jpg) center no-repeat; background-size: cover; }





@media screen and (max-width:640px) {
	#mainvisual {
		height:200px;
		margin-top: 60px;
	}
	#mainvisual h2 {
		padding: 12px 40px 3px;
		font-size: 26px;
	}
	#mainvisual::before {
		width: 25px;
	}
	#mainvisual::after {
		width: 25px;
	}
}





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

	ぱんくず

==================================================================*/
.breadcrumbs {	
	width:100%;
	margin:0 auto 30px;
	border-bottom: 1px solid #fff;
	font-size:13px;
	color:#7e5b43;
	background: #eaeaea;
}	
.breadcrumbs p {
	padding-left: 85px;
	line-height: 60px;
}	
.breadcrumbs i {	
	color:#cfa972;
	margin-right:5px;
}	
.breadcrumbs a {	
	color:#1c335b;
	text-decoration-line: underline;
}	


@media screen and (max-width:640px) {
	.breadcrumbs {	
		margin:0 auto;
	}	
	.breadcrumbs p {
		padding-left: 25px;
		line-height: 40px;
	}
}





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

	main

==================================================================*/
main {
	width: 90%;
	max-width: 1200px;
	margin: auto;
	padding: 60px 0 80px;
	background: #FFF;
	font-weight: 500;
    font-size: 15px;
}
main section {
	position:relative;
	margin: 0 auto 80px;
}
main section:last-child {
	margin-bottom: 0;
}


@media screen and (max-width:640px) {
	main {
		padding: 50px 0 60px;
	}
}




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

	 タイトル

==================================================================*/
h2 {
	margin-bottom: 50px;
	font-family: 'Josefin Sans', sans-serif;
	font-size: 50px;
	font-weight: 600;
	letter-spacing: 2px;
	text-align: center;
}
@media screen and (max-width:640px) {
	h2 {
		margin-bottom: 30px;
		font-size: 30px;
	}
}



h3 {
	position: relative;
	padding: 15px 60px;
	font-size: 20px;
	color: #FFF;
	background: #1c335b;
	letter-spacing: 2px;
}
@media screen and (max-width:640px) {
	h3 {
		padding: 15px 0;
		font-size: 18px;
		text-align: center;
	}
}


h4 {
	position: relative;
    margin-bottom: 20px;
    font-size: 17px;
    font-weight: bold;
    color: #1c335b;
    border-left: 3px solid #296fa0;
    padding: 2px 15px 6px;
}

h5 {
	position: relative;
	margin-bottom: 5px;
	padding-top: 20px;
	font-size: 15px;
	font-weight: bold;
	color:#214083;
}




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

	table

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

/*------------------------------ XXXXXXXXXX ------------------------------*
.tb01 {
	background:#FFF;
	width:100%;
	margin-bottom:70px;
}
.tb01:last-of-type {
	margin-bottom:0;
}
.tb01 th{
	color: #7e5b43;
	background:#eee9e1;
	border-bottom: 1px solid #fff !important;
	font-weight:bold;
}
.tb01 tr:last-of-type th {
	border-bottom: 1px solid #e6e6e6 !important;
}
.tb01 th , .tb01 td {
	padding:25px 20px;
	border: 1px solid #e6e6e6;
}



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

	text

==================================================================*/
.text {
	position:relative;
	margin-bottom:50px;
}
.text p {
	margin-bottom:1em;
	font-size: 15px;
	line-height: 2.2;
}
.text:last-child{
	margin-bottom:0;
}



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

	list

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

/*------------------------------ 左に●のシンプルリスト＊特定商取引法ページで使用 ------------------------------*/
.page-id-108 main ul {
	position:relative;
}
.page-id-108 main ul li {
	position:relative;
	margin-bottom:5px;
	padding-left:17px;
}
.page-id-108 main ul li::before {
	position:absolute;
	content:"";
	top:12px;
	left:3px;
	width:5px;
	height:5px;
	background:#296fa0;
	border-radius:100%;
}




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

	btn

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

/*------------------------------ btn01 ------------------------------*/
.btn01 {
	text-align: center;
}
.btn01 a {
	position: relative;
	display: block;
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #FFF;
	padding: 11px 0 13px;
	padding-left: 35px;
	color: #FFF;
	background: #001438;
	transition: 0.3s ease-out;
}
.btn01 a::before {
	position: absolute;
	content: "";
	left: 30%;
	top: 50%;
	margin-top: -7px;
	width: 7px;
	height: 14px;
	background: url(images/icon07.svg) no-repeat center;
	background-size: 7px auto;
	transition: 0.3s ease-out;
}
.btn01 a:hover {
	color: #001438;
	background: #FFF;
	padding-left: 10px;
	letter-spacing: 5px;
	border: 1px solid #001438;
}
.btn01 a:hover::before {
	left: 54%;
	opacity: 0;
}
@media screen and (max-width:640px) {
	.btn01 a {
		padding: 11px 0 13px;
		padding-left: 10px;
	}
	.btn01 a::before { display: none;}
}





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

		$商品ページ

==================================================================*/
.item_box {
	display: flex;
	justify-content: space-between;
	background: #f7f7f7;
	padding: 40px 60px;
}
@media screen and (max-width:1300px) {
	.item_box {
		padding: 40px 30px;
	}
}
@media screen and (max-width:640px) {
	.item_box {
		display: block;
		padding: 30px 10px;
	}
}

/*------------------------------ 左側＊スライダー ------------------------------*/
.item_slider {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 35%;
	overflow: hidden;
}
.item_slider li {
	width: 120px;
}
.item_slider li:nth-of-type(1) {
	width: 100%;
	margin-bottom: 10px;
}
@media screen and (max-width:640px) {
	.item_slider {
		width: 100%;
	}
}

/*------------------------------ 右側＊説明文 ------------------------------*/
.item_right {
	width: 60%;
	background: #FFF;
	box-sizing: border-box;
	padding: 30px 40px;
	border: 1px solid #eee;
}
.item_text {
	margin-bottom: 30px;
	padding-bottom: 30px;
	border-bottom: 1px solid #ddd;
}
@media screen and (max-width:640px) {
	.item_right {
		width: 100%;
		padding: 20px;
	}
}
/*仕様*/
.item_spec {
	display: flex;
}
.item_spec dt {
	display: flex;
	align-items: center;
	margin-right: 20px;
	padding: 5px 30px;
	background: #eee;
}
/*SKU名*/
.item_sku {
	margin-top: 20px;
}
/*値段*/
.item_price {
	margin-top: 0px;
	font-family: 'Josefin Sans', sans-serif;
	font-size: 32px;
	font-weight: 400;
	text-align: right;
}
.item_price::before {
	content: "¥";
	padding-right: 15px;
}
.item_price::after {
	content: "(税込)";
	padding-left: 10px;
	font-size: 17px;
	letter-spacing: 1.5px;
}
/*数量とカートへ入れるボタン横並び*/
.item_box .inner {
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
}
@media screen and (max-width:1070px) {
	.item_box .inner {
		display: block;
	}
}
/*数量*/
.item_count {
	display: flex;
	align-items: stretch;
	align-content: flex-end;
	margin-bottom: 10px;
	margin-right: 20px;
	box-sizing: border-box;
	font-size: 16px;
}
.item_count::before {
	content: "数量";
	padding-right: 15px;
	line-height: 3;
}
.item_count input {
	padding: 10px;
	width: 50px;
}
@media screen and (max-width:1070px) {
.item_count {
	margin-right: 0;
	float: right;
}
}

/*カートへ入れるボタン*
.item_btn {
	margin-top: 15px;
}
.item_btn a {
	position: relative;
	display: block;
	width: 260px;
	box-sizing: border-box;
	border: 1px solid #FFF;
	padding: 11px 0 13px;
	padding-left: 25px;
	color: #FFF;
	background: #001438;
	text-align: center;
	transition: 0.3s ease-out;
}
.item_btn a::before {
	position: absolute;
	content: "";
	left: 20%;
	top: 50%;
	margin-top: -7px;
	width: 7px;
	height: 14px;
	background: url(images/icon07.svg) no-repeat center;
	background-size: 7px auto;
	transition: 0.3s ease-out;
}
.item_btn a:hover {
	color: #001438;
	background: #FFF;
	padding-left: 10px;
	letter-spacing: 5px;
	border: 1px solid #001438;
}
.item_btn a:hover::before {
	left: 54%;
	opacity: 0;
}
@media screen and (max-width:640px) {
	.item_btn a {
		width: 100%;
	}
}
*/

/*カートへ入れるボタン*/
.skubutton {
	width: 260px;
	box-sizing: border-box;
	border: 1px solid #FFF;
	padding: 11px 0 13px;
	color: #FFF;
	background: #001438;
	text-align: center;
	transition: 0.3s ease-out;
}
.skubutton:hover {
	color: #001438;
	background: #FFF;
	letter-spacing: 5px;
	border: 1px solid #001438;
}
@media screen and (max-width:1070px) {
	.skubutton {
		width: 100%;
	}
}

/*在庫がない場合*/
.no-stock {
	font-size: 16px;
    font-weight: bold;
    text-align: right;
    color: darkgray;
    margin-top: 20px;
}



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

	ご利用ガイドページ

==================================================================*/
.page-id-106 main {
	 max-width: 980px;
}
.page-id-106 main p {
	 padding: 0 20px 20px;
}



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

	特定商取引法ページ

==================================================================*/
.page-id-108 main {
	 max-width: 980px;
}
.page-id-108 main p {
	 padding: 0 20px;
}

.page-id-108 main h3 {
	padding: 12px 30px;
	font-size: 18px;
	margin-bottom: 30px;
}
@media screen and (max-width:640px) {
	.page-id-108 main h3 {
		padding: 13px 0;
		font-size: 17px;
	}
}

/*dlリスト*/
.page-id-108 main dl {
	display: flex;
	flex-wrap: wrap;
}
.page-id-108 main dl dt {
	width: 30%;
	text-align: center;
	background: #1c335b;
	padding: 12px 0;
	margin-bottom: 1px;
	color: #FFF;
}
.page-id-108 main dl dd {
	width: 70%;
	background: #f7f7f7;
	padding: 12px 30px;
	margin-bottom: 1px;
	box-sizing: border-box;
}
@media screen and (max-width:640px) {
	.page-id-108 main dl {
		display: block;
	}
	.page-id-108 main dl dt {
		width: 100%;
		padding: 10px 0;
		margin-bottom: 0;
	}
	.page-id-108 main dl dd {
		width: 100%;
		padding: 12px 20px;
		margin-bottom: 10px;
	}
}

/*左に●のシンプルリスト*/
.page-id-108 main ul {
	margin: 20px 20px 50px;
}

/*リンクをわかりやすく*/
.page-id-108 main a {
	text-decoration-line: underline;
	color:#296fa0;
}



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

		$お問い合わせページ　＊　Contact Form 7カスタマイズ

==================================================================*/
.inquiry {
	width:100%;
	max-width: 1000px;
	margin:0 auto 40px;
	border-bottom:solid 1px #eee;
}
.inquiry th{
	width:30%;
	padding:20px 20px;
	border-top:solid 1px #eee;
}
.inquiry td{
	padding:20px 0;
	border-top:solid 1px #eee;
}
.inquiry td input{
	width:50%;
	padding:10px 20px;
    box-sizing: border-box;
}
.inquiry td select{
	padding:10px 20px;
}
.inquiry td textarea{
	width:100%;
	padding:10px 20px;
    box-sizing: border-box;
}
/*ラジオボタンを縦並び指定*/
.verticallist .wpcf7-list-item {
 	display:block;
}
.verticallist .wpcf7-list-item input {
 	width: auto;
	margin-right: 5px;
}
.spam {
	width:100%;
	max-width: 1000px;
	margin: auto;
	padding:10px 0;
	background:#f7f7f7;
	text-align:center;
}
.spam span {
	margin-right:5px;
}
.contact_privacytext {
	text-align:center;
	text-decoration-line:underline;
}

/*------------------------------ 必須 ------------------------------*/
.haveto{
	 font-size:10px;
	 padding:5px;
	 background:#ff9393;
	 color:#fff;
	 border-radius:2px;
	 margin-right:15px;
	 position:relative;
	 bottom:1px;
}
/*------------------------------ 任意 ------------------------------*/
.any{
	 font-size:10px;
	 padding:5px;
	 background:#93c9ff;
	 color:#fff;
	 border-radius:2px;
	 margin-right:15px;
	 position:relative;
	 bottom:1px;
}
/*------------------------------ 送信ボタン ------------------------------*/
#formbtn{
	 display: block;
	 padding:15px;
	 width:350px;
	 background:#001438;
	 color:#fff;
	 font-size:15px; 
	 border-radius:2px;
	 margin:25px auto 0;
	 border:1px solid #001438;
		-webkit-appearance: none;
}
#formbtn:hover{
	 background:#fff;
	 color:#001438;
	 border:1px solid #001438;
}





@media screen and (max-width:640px) {
	
	.inquiry th,.inquiry td {
		display:block;
		width:100%;
		border-top:none;
		-webkit-box-sizing:border-box;
		-moz-box-sizing:border-box;
		box-sizing:border-box;
	}
	.inquiry tr:first-child th{ 
		border-top:1px solid #d7d7d7; 
	}
	
	.inquiry th{
		padding: 10px 20px;
		background: #eee;
		border: 1px solid #e6e6e6;
		font-weight:bold;
	}
	.inquiry td{
		padding: 15px 20px;
		background:#FFF;
		border: 1px solid #e6e6e6;
	}
	.inquiry td input{
		width:100%;
		padding:10px;
	}
	.inquiry td textarea{
		padding:10px;
	}
	table.inquiry {
		border-bottom:none;
	}
}



/*** 追加css（東内） ***/
.item_slider {
	width: 100%;
	height: auto;
	max-width: 234px;
	flex-direction: row;
}
.item_slider li {
	width: 100px;
}









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

		$ECサイト部分のcss上書き　＊　Welcartカスタマイズ

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

/*------------------------------ タイトル ------------------------------*/
h1.cart_page_title , h1.member_page_title {
	margin-bottom: 0 !important;
	padding-top: 60px;
	font-family: 'Josefin Sans', sans-serif;
	font-size: 40px !important;
	font-weight: 600;
	letter-spacing: 2px;
	text-align: center;	
}
@media screen and (max-width:640px) {
	h1.cart_page_title , h1.member_page_title {
		margin-bottom: 30px !important;
		font-size: 30px !important;
		padding-top: 110px !important;
	}
}

/*------------------------------ カート＞お客様情報＞配送・支払い方法＞内容確認------------------------------*/
.cart_navi {
	width: 90%;
    max-width: 1200px;
    margin: auto;
    padding: 60px 0 0;
    background: #FFF;
}
div.cart_navi ul {
	display: flex;
}

/*------------------------------ Form（Table）------------------------------*/
form {
	width: 90%;
    max-width: 1200px;
    margin: auto;
    padding: 40px 0 60px;
    background: #FFF;
}
.customer_form input {
	padding: 10px 15px;
}
.confiem_notice {
	width: 90%;
    max-width: 1200px;
    margin: auto;
	color: orange;
    background: #FFF;
	text-align: center;
}
#cart {
	width: 90%;
    max-width: 1200px;
    margin: auto;
    padding: 40px 0 0;
    background: #FFF;
}
#confirm_table {
	width: 90% !important;
    max-width: 1200px;
    margin: auto;
    padding: 40px 0 60px;
    background: #FFF;
}
#confirm_table h3 {
	background: none;
}

/*------------------------------ Btn------------------------------*/
input.continue_shopping_button , input.back_cart_button , input.back_to_customer_button , input.back_to_delivery_button {
	padding: 12px 40px;
	border: 1px solid #444;
    border-radius: 3px;
}
input.to_customerinfo_button , input.to_memberlogin_button , input.to_deliveryinfo_button , input.to_reganddeliveryinfo_button , input.to_confirm_button , input.checkout_button {
	background-color: #296fa0 !important;
	padding: 12px 40px;
	border: 1px solid #444;
    border-radius: 3px;
}

/*------------------------------ ▼会員登録はこちら------------------------------*/
#customer-info h5 {
	width: 90%;
    max-width: 1200px;
    margin: auto !important;
    padding: 60px 0 0;
    background: #FFF;	
}

/*------------------------------ エラー------------------------------*/
.error_message {
	color: orange;
    text-align: center;
    font-weight: bold;
}

/*------------------------------ 支払い方法＞備考 ------------------------------*/
#delivery-info #notes_table textarea {
	width: 100%;
	height: 130px;
}

/*------------------------------ ポイント使用 ------------------------------*/
#point_table td input.use_point_button {
	padding: 5px 20px;
}

/*------------------------------ ログイン ------------------------------*/
.member-box {
	background: #f7f7f7;
	border: 1px solid #eee;
	border-radius: 20px;
}
.member-box form {
	background: none;
	padding-bottom: 40px;
}
.member-box form label {
	font-weight: bold;
}
.member-box form input {
	padding: 10px 15px;
	box-sizing: border-box;
}
input.member_login_button {
	display: block;
	background-color: #296fa0 !important;
	padding: 15px 0;
	margin: auto;
	width: 70%;
}
.member-box form p.nav {
	text-align: center;
	text-decoration-line: underline;
}

/*------------------------------ 新規ご入会 ------------------------------*/
.new-entry {
	background: #f7f7f7 !important;
	border: 1px solid #eee;
	border-radius: 20px;
	padding: 40px 30px !important;
	margin-top: 30px !important;
	margin-bottom: 60px !important;
}
.new-entry h2 {
	font-size: 20px;
	margin-bottom: 20px;
	letter-spacing: 1px;
}
.new-entry #nav a {
	padding: 10px 0 !important;
	background-color: #1c335b !important;
	box-sizing: border-box;
	width: 70%;
}

/*------------------------------ 会員ページ ------------------------------*/
#memberpages {
	width: 90%;
    max-width: 1200px;
    margin: auto;
    padding: 40px 0 60px;
    background: #FFF;
}
#memberpages h3 {
    padding: 15px 30px !important;
    font-size: 20px !important;
    color: #FFF !important;
    background: #1c335b !important;
    letter-spacing: 2px !important;
}
#memberpages form {
	width: 100%;
	padding-top: 0px;
}
input.top , input.deletemember {
	padding: 12px 40px;
	border: 1px solid #444;
    border-radius: 3px;
}
input.editmember {
	background-color: #296fa0 !important;
	padding: 12px 40px;
	border: 1px solid #444;
    border-radius: 3px;
}
@media screen and (max-width:860px) {
	#memberinfo #history_head th {
		white-space: normal !important;
	}
}
@media screen and (max-width:619px) {
	.member_submenu li {
		display: flex;
	}
}





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

		$スポーツページ　＊　サッカー12、バレー44、野球154、バスケ156

==================================================================*/
.page-id-12 main p , .page-id-44 main p , .page-id-154 main p , .page-id-156 main p { 
	text-align: center;
}
@media screen and (max-width:640px) {
	.page-id-12 main p , .page-id-44 main p , .page-id-154 main p , .page-id-156 main p { 
		text-align: left;
	}
}
.page-id-12 #mainvisual h2 , .page-id-44 #mainvisual h2 , .page-id-154 #mainvisual h2 , .page-id-156 #mainvisual h2 { 
	background: rgba(255,255,255,.7);
}


.item_flow {
	display: flex;
    justify-content: space-around;
	flex-wrap: wrap;
	margin-top: 30px;
}
.item_flow dl {
	position: relative;
	width: 15%;
	background: #001438;
	color: #FFF;
	box-sizing: border-box;
	padding: 30px 0;
	text-align: center;
}
.item_flow dl::after {
	position: absolute;
	content: "";
	border-top: solid 3px #296fa0;
	border-right: solid 3px #296fa0;
	width: 6px;
	height: 6px;
	top: 50%;
	margin-top: -3px;
	left: -10%;
	transform: rotate(45deg);
}
.item_flow dl:first-of-type::after {
	display: none;
}
@media screen and (max-width:860px) {
	.item_flow dl {
		width: 30%;
		padding: 30px 0;
		margin-bottom: 20px;
	}
	.item_flow dl::after {
		left: -8%;
	}
}
@media screen and (max-width:640px) {
	.item_flow dl {
		width: 46%;
		padding: 20px 0 30px;
		margin-bottom: 10px;
	}
}



.item_flow dl dt {
	height: 90px;
	display: flex;
	align-items: center;
}
.item_flow dl dt img {
	width: auto;
	max-height: 40px;
	margin: auto;
}
.item_flow dl dd em {
	display: block;
	font-size: 13px;
}

@media screen and (max-width:640px) {
	.item_flow dl dt {
		height: 70px;
	}
	.item_flow dl dt img {
		max-height: 30px;
	}
	.item_flow dl dd em {
		font-size: 12px;
	}
}







