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


body {
	font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic";
	color:#3e3a3a;
	font-size:14px;
	line-height:1.75;
	letter-spacing:0.05em;
	text-align:justify;
}
a {
	color: #3a3a3a;
	text-decoration: none;
	transition: 0.3s  ease-out;
}
a:hover {
	color:#142768;
}

body , header , footer {
	min-width:1200px;
}



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

	header

============================================================================*/
header {
	width:100%;
	height:190px;
}
/*----------------------------------------header_info----------------------------------------*/
.header_info{
	width:100%;
	height: 40px;
	background: #222222;
}
.header_info .inner{
	position: relative;
	width: 1200px;
	margin: auto;
	font-size: 13px;
}
.header_info .inner p{
	padding-top: 10px;
	color: #fff;
}

/*----------------------------------------btn 共通部分----------------------------------------*/
.header_contact a , .header_tel a{
	position: absolute;
	display:inline-block;
	top: 0;
	width: 170px;
	height: 40px;
	box-sizing: border-box;
	color:#fff;
	transition:ease-in-out 0.2s ;
}

/*----------------------------------------btn お問い合わせ----------------------------------------*/
.header_contact a{
	right: 170px;
	padding-top: 10px;
	padding-left: 30px;
	background-color:#947653;
}
.header_contact a img{
	display:inline-block;
	margin-top: -2px;
	margin-right:10px;
	vertical-align: middle;
}
.header_contact a:hover{
	background-color:#7b5d3a;
}

/*----------------------------------------btn 電話番号----------------------------------------*/
.header_tel a{
	right: 0;
	padding-top: 5px;
	background-color:#384677;
	text-align: center;
}
.header_tel a:hover{
	background-color:#2a3767;
}

/*----------------------------------------ロゴ----------------------------------------*/
header h1{
	position: relative;
	margin: 20px auto;
	text-align: center;
}



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

	nav

============================================================================*/
nav {
	position: relative;
	width:990px;
	height:50px;
	margin: 0 auto;
	z-index:9999;
}
nav li {
	float: left;
}
nav li a span{
	position:relative;
}
nav li a span::before{
    position: absolute;
	left: 0;
	right:0;
	bottom: -15px;
	width:90%;
	height:2px;
	margin:auto;
	background-color: #142681;
	transition: 0.15s  ease-out;
	transform: scaleX(0);
	content: "";
	z-index: 1;
}
nav li a:hover span::before{
	transform: scaleX(1);
}



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

	#mainvisual

============================================================================*/
#mainvisual{
	width: 100%;
	text-align: center;
	overflow: hidden;
}



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

	#mainvisual_下層　＊　追加11/5

============================================================================*/
#mainvisual_under{
	position: relative;
	width: 100%;
	height: 300px;
	overflow: hidden;
	background: url(/wp-content/uploads/MV_under.png) no-repeat center top;
}
#mainvisual_under h2{
	position: absolute;
	display: inline-block;
	top: 110px;
	left: 50%;
	margin-left: -600px;
	padding: 10px 40px;
	background: #142768;
	color: #FFF;
	font-size: 27px;
	letter-spacing: 2px;
}



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

	.contents　＊　追加11/5

==================================================================*/ 
#contents{
	position:relative;
	width:980px;
	margin:0 auto;
	padding-top:70px;
	padding-bottom: 100px;
	line-height: 2.3;
}
#contents::after {
	display: block;
	clear: both;
	content: "";
}
#contents p{
	margin-bottom: 70px;
}
#contents img{
	max-width:100%;
	height:auto;
}


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

	タイトル　＊　追加11/5

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

/*----------------------------------------下層　本文中のh3----------------------------------------*/
#contents h3{
	position: relative;
	margin-bottom: 40px;
	font-size: 25px;
	text-align: center;
	font-weight: bold;
	letter-spacing: 2px;
}
#contents h3:before {
	content: '';
	position: absolute;
	bottom: -15px;
	display: inline-block;
	width: 100px;
	height: 3px;
	left: 50%;
	margin-left: -50px;
	background-color: #142768;
}

/*----------------------------------------下層　本文中のh4----------------------------------------*/
#contents h4 {
	position: relative;
	margin-bottom: 20px;
	padding-bottom: 10px;
	border-bottom: solid 3px #dcdcdc;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 2px;
}

#contents h4:after {
content: "";
position: absolute;
display: block;
border-bottom: solid 3px #142768;
bottom: -3px;
width: 100px;
}

/*----------------------------------------下層　本文中のh5----------------------------------------*/
#contents h5 {
	position: relative;
	margin-bottom: 10px;
	padding-left: 15px;
	border-left: 4px solid #947653;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 2px;
}
#contents h5:before {
	content: '';
	position: absolute;
	left: -4px;
	bottom: 0;
	width: 4px;
	height: 50%;
	background-color: #e5ddd3;
}



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

	footer

============================================================================*/
footer {
	position:relative;
	width:100%;
	background: #222222;
	text-align: center;
	color: #FFF;
	font-size: 13px;
	line-height: 2.4;
}
footer a {
	color: #FFF;
}
footer a:hover { color: #ccc; }

.footer_logo {
	padding: 60px 0 30px;
	font-size: 16px;
}
.footer_navi {
	width: 1200px;
	margin: 40px auto 10px auto;
	padding-top: 40px;
	border-top: 1px solid #444444;
}
.footer_navi ul {
	width:1080px;
	margin:0 auto;
}
.footer_navi ul li {
	display:inline-block;
	margin: 0 20px;
}
.copy{
	padding-bottom: 50px;
	text-align: center;
	color:#bbbbbb;
	font-size: 10px;
}



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

	btn

==================================================================*/
.btn01 a , .btn02 a , .btn03 a {
	position: relative;
	display:inline-block;
	padding:10px 25px 10px 50px;
	color:#fff;
	font-size: 15px;
	transition:ease-in-out 0.2s ;
}
.btn01 a:before , .btn02 a:before , .btn03 a:before {
	content:"";
	position:absolute;
	top:16px;
	left:25px;
	width: 0;
	height: 0;
	border:5px solid transparent;
	border-left: 12px solid #fff;
}
.btn01 a:hover , .btn02 a:hover , .btn03 a:hover{
	background-color:#fff;
}
 
/*----------------------------------------btn01　青----------------------------------------*/
.btn01 a{
	background-color:#142768;
	border:1px solid #142768;
}
.btn01 a:hover{
	color:#142768;
}
.btn01 a:hover:before{
	border-left: 12px solid #142768;
}

/*----------------------------------------btn02　茶----------------------------------------*/
.btn02 a{
	background-color:#947653;
	border:1px solid #947653;
}
.btn02 a:hover{
	color:#947653;
}
.btn02 a:hover:before{
	border-left: 12px solid #947653;
}

/*----------------------------------------btn03　黒----------------------------------------*/
.btn03 a{
	background-color:#333333;
	border:1px solid #333333;
}
.btn03 a:hover{
	color:#333333;
}
.btn03 a:hover:before{
	border-left: 12px solid #333333;
}



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

	table

==================================================================*/
.table01{
	width:100%;
	border-spacing: 0;
}
.table01 td,.table01 th{
	border-bottom:#fff solid 3px;
	vertical-align:top;
}
.table01 th{
	width:20%;
	padding:10px 30px;
	color:#fff;
	background: #142768;
	box-sizing:border-box;
	text-align:center;
}
.table01 td{
	width:80%;
	padding:10px 30px;
	background: #f7f7f7;
	box-sizing:border-box;
}


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

	text

==================================================================*/
.text {
	position:relative;
	margin-bottom:50px;
}
.text p {
	margin-bottom:1em;
}
.text:last-child{
	margin-bottom:0;
}



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

	$index

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

/*----------------------------------------菊地商事の特徴----------------------------------------*/
.top_feature {
	width: 1150px;
	margin: auto;
	padding-top: 125px;
}
.top_feature_left {
	float: left;
	width: 500px;
	padding-top: 40px;
	text-align: center;
}
.top_feature_left h2 {
	margin-bottom: 40px;
}
.top_feature_left .text {
	line-height: 2.6;
}
.top_feature_left .btn01 {
	display: inline;
	margin-right: 20px;
}
.top_feature_left .btn02 {
	display: inline;
	margin-left: 20px;
}
.top_feature_right {
	float: right;
}

/*----------------------------------------商品ラインナップ----------------------------------------*/
.top_lineup {
	margin-top: 110px;
	padding:90px 0 110px;
	background: url(../images/top_lineup_bg.png) no-repeat center bottom , #eeeeee;
	text-align: center;
}
.top_lineup p {
	margin-top:20px;
	line-height:2.4;
}
.top_lineup .inner ul {
	width: 1200px;
	margin: 45px auto 60px;
}
.top_lineup .inner ul li {
	float: left;
	margin-right: 2px;
}
.top_lineup .inner ul li:last-child {
	margin-right: 0;
}

/*----------------------------------------写真並び----------------------------------------*/
.top_photolist {
	width: 100%;
	margin: 70px 0 100px;
	overflow: hidden;
	text-align: center;
}
.top_photolist ul {
	width: 2120px;
	margin: auto;
}
.top_photolist li {
	float: left;
}
.top_photolist p {
	margin: 40px auto 25px;
	line-height: 2.4;
	font-size: 15px;
}

/*----------------------------------------菊地商事とは？----------------------------------------*/
.top_info {
	position: relative;
}
.top_info::after {
	content: "";
	position: absolute;
	top: 70px;
	width: 100%;
	height: 500px;
	background: #e5ddd3;
	z-index: -1;
}
.top_info .inner {
	width: 1200px;
	margin: auto;
}
.top_info_left {
	float: left;
}
.top_info_right {
	float: right;
	width: 600px;
	padding-top: 160px;
	text-align: center;
}
.top_info_right .text {
	margin: 40px auto;
	line-height: 2.5;
}

/*----------------------------------------お問い合わせ----------------------------------------*/
.top_contact {
	margin: 90px auto 120px;
	text-align: center;
}
.top_contact .text {
	margin: 50px auto;
	line-height: 2.5;
}
.top_contact .btn01 {
	display: inline;
	margin-right: 20px;
}
.top_contact .btn01 a {
	padding:10px 25px;
}
.top_contact .btn01 a:hover {
	background-color: #06123c;
	color: #fff;
}
.top_contact .btn01 a:before {
	display: none;
}
.top_contact .btn02 {
	display: inline;
	margin-left: 20px;
}
.top_contact .btn02 a {
	padding:10px 75px;
}
.top_contact .btn02 a:hover {
	background-color: #6f5536;
	color: #fff;
}
.top_contact .btn02 a:before {
	display: none;
}
.top_contact a img{
	display:inline-block;
	margin-top: -2px;
	margin-right:10px;
	vertical-align: middle;
}



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

	$productlist

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

/*----------------------------------------左のnav----------------------------------------*/
.productlist_nav {
	float:left;
	width:230px;
}
.productlist_nav li {
	position:relative;
	padding:8px 20px;
	font-size:15px;
	font-weight:bold;
	letter-spacing:2px;
	border-bottom:1px dashed #384677;	
	transition: 0.3s  ease-out;
}
.productlist_nav li a {
	color:#333;
}
.productlist_nav li:hover {
	background:rgba(0,0,0,0.02);
}
.productlist_nav li:first-child {
	border-top:2px solid #384677;	
}
.productlist_nav li:last-child {
	border-bottom:2px solid #384677;	
}
.productlist_nav li a i {
	position:relative;
	margin-top:1px;
	margin-right:20px;
	color:#fff;
	font-size:14px;
}
.productlist_nav li a i::after {
	position:absolute;
	content:"";
	top:-8px;
	left:-6px;
	width:30px;
	height:30px;
	background:#384677;
	border-radius:100%;
	z-index:-1;
}
.productlist_nav li:nth-child(3) a i {
	margin-left:2px;
}
.productlist_nav li:nth-child(3) a i::after {
	left:-8px;
}



/*----------------------------------------右のメインコンテンツ----------------------------------------*/
.productlist_contents {
	float:right;
	width:670px;
	margin-bottom:80px;
}
.productlist_contents h4 {
	line-height:1.8;
}
.n2-section-smartslider {
	margin-bottom:40px;
}

/*----------------------------------------右のメインコンテンツ 商品リスト----------------------------------------*/
.productlist_contents .list {
	float:left;
	width:29%;
	margin:2%;
	padding:10px;
	box-sizing:border-box;
	border:1px solid #ccc;
	text-align:center;
	transition: 0.3s  ease-out;
}
.productlist_contents .list img {
	width:100%;
	height:auto;
}
.productlist_contents .list:hover {
	background:#f7f7f7;
}
.productlist_contents .list dd {
	padding-top:10px;
	text-decoration:underline;
}
.productlist_contents section {
	margin-bottom:80px;
}



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

	$contact　＊　デザインカスタマイズ

==================================================================*/
#contents .contact_form { padding:0px 0;}
#contents .contact_form p { margin-bottom:20px !important;}
div.wpcf7 { padding:50px; margin:0 0 30px 0; }
div.wpcf7 p { padding:20px 20px 0; margin:0; font-size:11px; }
div.wpcf7 input, .wpcf7 textarea { border:1px solid #ccc; padding:8px; font-size:14px; }
div.wpcf7 textarea { width:97.5%; height:300px; }
div.wpcf7 input.wpcf7-submit {
   cursor:pointer; color:#fff; font-weight:bold; font-size:14px; width:200px; height:45px; margin:0 auto; display:block;
   -moz-border-radius:5px; -khtml-border-radius:5px; -webkit-border-radius:5px; border-radius:5px;
   background:#333; box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.5), inset 0px 32px 0px -12px #808080; border:1px solid #666;
}
div.wpcf7 input.wpcf7-submit:hover { background:#006080; box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.5), inset 0px 32px 0px -12px #007ea8; border:1px solid #006080; }
.wpcf7 input.wpcf7-submit:active { box-shadow:none; bottom:-2px; position:relative; }
.wpcf7 input:focus, .wpcf7 textarea:focus { border:1px solid #009de1; }
.wpcf7-captchac { border:1px solid #ccc; }
 
 
/* エラー個所をわかりやすく表示 */
.wpcf7 .wpcf7-not-valid { background: #ffb6c1; }
.wpcf7 span.wpcf7-not-valid-tip {font-size: 80%;}
.wpcf7 .wpcf7-response-output {margin: 10px 0 0; padding: 8px 35px 8px 14px; text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
    -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; }
.wpcf7 .wpcf7-validation-errors {color: #B94A48; background-color: #F2DEDE; border: 1px solid #EED3D7;}
.wpcf7 .wpcf7-mail-sent-ok {color: #3A87AD; background-color: #D9EDF7; border: 1px solid #BCE8F1;}
 
/* 必須赤色表示 */
.wpcf7 .required { color: #f00;}
/* 任意緑色表示 */
.wpcf7 .any{ color: #080;}




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

	WooCommerce

==================================================================*/
.woocommerce p {
	margin-bottom : unset!important;
}

.woosg-products .woosg-product .woosg-thumb {
    flex: 0 0 150px!important;
}

.woosg-products .woosg-product .woosg-thumb img {
    width: 150px!important;
}

.woovr-variations .woovr-variation {
    display: inline-flex!important;
}

.wcpt-product-form select {
    width: 220px!important;
    font-size: larger!important;
}

.woocommerce-billing-fields span.optional {
    display:none;
}

table.wcpt-table a.wcpt-title {
    pointer-events: none!important;
}

/* ソニーペイメント*/
#sonypayment-consent-message .sonypayment_agreement_message {
	width: 100%;
}

@media screen and (max-width: 640px) {
	.wcpt-cart-widget span::after,
	.wcpt-item-row .wcpt-button span::after {
	    border-top: none!important;
	}
}

/***** 東内追記ぶん （2022.12.2）*****/
ul.center-list {
	border: #a0a0a0a0 1px solid;
	margin-bottom: 70px;
	border-radius: 24px;
	width: 75%;
	margin-left: auto;
	margin-right: auto;
}
ul.center-list li {
	text-align: center;
	padding: 6px;
	border-top: dashed #aaaaaa 1px;
}
ul.center-list li:first-child {
	border-top: none;
}
p.center-list {
	margin-bottom: 20px !important;
}
table a {
	color: #2873d9;
	cursor: pointer !important;
}
table a:hover {
	color: #00d0ff;
	cursor: pointer !important;
}

/***** 東内追記ぶん（2023.1.7） *****/
.woocommerce-billing-fields__field-wrapper input {
	padding: 0.8em;
	font-size: 15px;
}
#wpmem_login .button_div {
	text-align: center !important;
}
#wpmem_login .button_div input {
	background-color: #000e97;
	color: #ffffff;
	border-radius: 3px;
	border: 1px solid #142768;
	padding: 8px 15px 8px 15px;
	font-weight: 600;
}
#wpmem_login .button_div input:hover {
	background-color: #5562e1;
	border: 1px solid #5562e1;
	cursor: pointer;
	transition: all 0.3s;
}

.logout_link {
	margin-top: 10px;
	margin-bottom: 10px;
}

.logout_link a {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	width: 200px;
	height: 30px;
	color: #333;
	font-size: 12px;
	font-weight: 700;
	text-decoration: none;
	background-color: #ceb849;
	border: 1px solid #ceb849;
	border-radius: 35px;
}

.logout_link a:hover {
	color: #f2f2f2;
	background-color: #B99b00;
	border: 1px solid #333;
}

.woocommerce p.return-to-shop {
	margin-top: 5px !important;
	margin-bottom: 10px !important;
}
@media screen and (max-width: 640px) {
	body, header, footer {
		min-width: 300px !important;
		max-width: 100% !important;
	}
	input[type="submit"] { /* iOS対策：ボタンのCSSをリセットする */
  		appearance: none;
  			-webkit-appearance: none;
	}
	#contents {
		width: 90%;
		margin-left: auto !important;
		margin-right: auto !important;
		box-sizing: border-box !important;
	}
	#wpmem_login {
		width: 80% !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}
	#wpmem_login .button_div input {
		background-color: #000e97;
		color: #ffffff;
		border-radius: 3px;
		border: 1px solid #142768;
		padding: 8px 15px 8px 15px;
		font-weight: 600;
	}
	#contents .cart-collaterals p.return-to-shop, #contents .cart_totals .wc-proceed-to-checkout {
		margin-bottom: 1.8em !important;
	}
	#contents .cart_totals .wc-proceed-to-checkout a {
		width: 100%;
		box-sizing: border-box;
		text-align: center;
		font-size: 16px;
		font-weight: 700;
		padding-top: 0.85em;
		padding-bottom: 0.85em;
	}
}
@media screen and (max-width: 413px) {
	header .header_info {
		height: auto;
		display: block;
	}
	header .header_info .inner {
		display: flex;
		flex-wrap: wrap;
		flex-direction: row;
		font-size: 13px;
	}
	header .header_info .inner p {
		display: block;
		width: 100%;
		text-align: center;
		box-sizing: border-box;
		padding-left: 0px;
		padding-bottom: 5px;
		height: auto;
		font-size: 13px;
	}
	header .header_info .inner div {
		width: 50%;
		text-align: center;
		display: block;
		box-sizing: border-box;
	}
	header .header_info .inner div.header_contact a {
		width: 100%;
		display: block;
		box-sizing: border-box;
		right: 0;		
	}
	header .header_info .inner div a {
		width: 100%;
		text-align: center;
		display: block;
		box-sizing: border-box;
		position: static;
	}
}

/* WooCommerce 「お支払い情報を登録します。次回のご利用からカード番号の入力の必要がなくなります。」を非表示に */
p.form-row.woocommerce-SavedPaymentMethods-saveNew.woocommerce-validated { display: none; }

