
:root {
  --wine: #ac181e;
  --black: #333;
}



body{
	font-size: 15px;
	font-family: "Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
    line-height: 1.75;
    letter-spacing: 0.1em;
}

dl {
    margin-bottom: 0;
}

a:focus, a:hover {
    text-decoration: none;
}

.pc {
	display: none !important;
}

.sp {
	display: block !important;
}

.pc-inlineblock {
	display: none !important;
}

.sp-inlineblock {
	display: inline-block !important;
}

.pc-flex {
	display: none !important;
}

.sp-flex {
	display: flex !important;
}

.text-center{
	text-align:center !important;
}

.text-left{
	text-align:left !important;
}

.text-right{
	text-align:right !important;
}

.font125{
    font-size:125%;
}
.font150{
    font-size:150%;
}
.bold{
    font-weight:bold;
}

.wine{
    color:var(--wine);
}

.mb10{
    margin-bottom:10px !important;
}

.mb20{
    margin-bottom:20px !important;
}

.mb30{
    margin-bottom:30px !important;
}

.mb40{
    margin-bottom:40px !important;
}

.mb50{
    margin-bottom:50px !important;
}

.mt10{
    margin-top:10px;
}

.mt20{
    margin-top:20px;
}

.mt30{
    margin-top:30px;
}

.mt40{
    margin-top:40px;
}

.mt50{
    margin-top:50px;
}

.wd100{
	width:100px !important;
	margin:0 auto;
}

.wd200{
	width:200px !important;
	margin:0 auto;
}

.wd300{
	width:300px !important;
	margin:0 auto;
}

.wd50pc{
	width:50% !important;
	margin:0 auto;
}

.wd60pc{
	width:60% !important;
	margin:0 auto;
}

.wd70pc{
	width:70% !important;
	margin:0 auto;
}

.wd80pc{
	width:80% !important;
	margin:0 auto;
}

.wd90pc{
	width:90% !important;
	margin:0 auto;
}

.wd100pc{
	width:100% !important;
}

.disp-flex {
    display:flex;
    flex-wrap:wrap;
}


/* パーツ */

h2.ptn1 {
    margin: 0 0 10px 0;
    padding: 5px 0 3px;
    color: #ac181e;
    background: none;
    font-size: 120%;
    font-weight: bold;
    border-bottom: 2px solid #333;
}

#main_column .sub_area h3, #undercolumn_login .login_area h3, #undercolumn_shopping h3, #mypagecolumn h3, #undercolumn_cart h3 {
    margin: 0 0 10px 0;
    padding: 5px 0 3px;
    color: #ac181e;
    background: none;
    font-size: 120%;
    border-bottom: 2px solid #333;
}
.btn_ptn1 {
    display:inline-block;
    font-size: 1em;
    min-width: 120px;
    height: auto;
    margin-left: 15px;
    text-align:center;
    font-weight:normal;
    line-height: 1em;
    padding: 5px 0;       
}

.btn_ptn2 {
    display:inline-block;
    font-size: 1em;
    width: 100%;
    height: auto;
    text-align:center;
    line-height: 1em;
    font-weight:normal;
    padding: 7px 0;       
}

.btn_ptn3 {
    display:block;
    font-size: 1em;
    width: auto;
    height: auto;
    text-align:center;
    line-height: 1em;
    font-weight:normal;
    padding: 7px 0;       
}

.btn_ptn1:hover {
	text-decoration:none;
}

.btn_ptn2:hover {
	text-decoration:none;
}


button.black_btn,
a.black_btn {
    color: #fff !important;
    background: #000;
    border: 2px solid #000;
}

button:hover.black_btn,
a:hover.black_btn {
    color: #000 !important;
    background: #fff;
}

button.orange_btn,
a.orange_btn {
    color: #fff;
    background: #F39801;
    border: 2px solid #F39801;
}

button:hover.orange_btn,
a:hover.orange_btn {
    color: #F39801;
    background: #fff;
    border: 2px solid #F39801;
}

button.wine_btn2,
a.wine_btn2 {
    color: #fff;
    background: #ac181e;
    border: 2px solid #ac181e;
}

button:hover.wine_btn2,
a:hover.wine_btn2 {
    color: #ac181e;
    background: #fff;
}

.btn_radius{
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}

.btn_2column{
	width:100%;
	display:flex;
	flex-wrap:wrap;
}

.btn_2column button,
.btn_2column a{
    width:48%;
}

.btn_2column button:nth-child(2n),
.btn_2column a:nth-child(2n){
    margin-left:4%;
}


ul.pickup  {
	margin:0;
	padding:0;
	height:28px;
}

ul.pickup li {
    display: inline-block;
    background-color: #AD181E;
    color: #fff;
    text-align: center;
	font-size: 80%;
	padding: 5px 10px 3px 10px;
}

/***** 
全体 
******/

.ec-layoutRole__contents{
	margin-bottom:100px;
}

.ec-layoutRole .ec-layoutRole__mainWithColumn {
    width: 100% ;
}

.ec-pageHeader h1 {
/**
    border-top: none;
    border-bottom: 1px solid #ccc;
    margin: 10px 16px 48px;
    padding: 8px;
    font-size: 32px;
    font-weight: bold;
    color:var(--wine);
**/

border-top: none !important;
    background: none !important;
    color: #333;
    font-size: 26px;
    font-weight: bold;
    margin: 0 0 1.5em !important;
    padding: 0.15em 0.5em 0 0.5em !important;
    border-left: 4px solid #B92A2C;
    border-top: none;
    border-bottom: none;
}

.ec-layoutRole .ec-layoutRole__contents {
    width: 100%;
    flex-wrap: wrap;
}

.ec-layoutRole .ec-layoutRole__left {
    display: block;
    width: 90%;
    margin:50px auto 50px auto;

	display:flex;
	flex-direction: column;
	order: 2; 
}

.ec-layoutRole__mainWithColumn{
    order: 1; 
}

/***** 
ヘッダー 
******/

.ec-layoutRole__header{
	border-top: solid 3px #ac181e;
	border-bottom: solid 3px #ac181e;
    margin-bottom:30px;
}

.ec-headerNaviRole {
	position:fixed;
	top:0;
	left:0;

	background-color: rgba(255,255,255,0.9);
	z-index:10;
	
	box-shadow: 0px 10px 10px -5px rgba(0,0,0,0.25);
	
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
}

.ec-headerNavSP{
	top: 0; 
	left: 0;
}

.ec-headerNaviRole__right{
	padding-right:20px;
}

.ec-headerLogoLogin .ec-off2Grid {
    display: flex;
    flex-wrap: wrap;
}

.ec-logo{
    display:block;
    width:390px;
    margin:0 auto;

    order:2;
}

.ec-login__area{
    display:inline-block;
	width:100%;
    text-align:right;

	order:1;

	display:flex;
    flex-direction: column;
 	justify-content: center;
}

.ec-login__area .ec-login__upper{
	display:flex;
	justify-content: flex-end;
 	align-items: center;
	margin-bottom:10px;
}

.ec-headerLogoLogin{
    margin:50px 0 20px 0;
}

.ec-headerLogoLogin .btn_ptn1 {
    height:38px;
    line-height:38px;
    padding:0;
}


.ec-headerLogoLogin .ec-login__input{
    display:inline-block;
}

.ec-headerLogoLogin .ec-login__input .ec-input{
    display:inline-block;
    text-align:left;
    width:210px;
}

.ec-headerLogoLogin .ec-login__input .ec-input.ec-password{
    width:150px;
}


.ec-headerLogoLogin .ec-login__input .ec-input input{
    display:inline-block;
    width:100%;
    height: 37px;
    margin-bottom: 0;
}

.ec-headerLogoLogin .ec-login__input .ec-input input[type="password"]{
    width:150px;
}

.ec-headerLogoLogin .ec-login__actions .ec-checkbox{
    text-align:right;

	display:flex;
	justify-content: space-between;
 	align-items: center;
}

.ec-headerLogoLogin .ec-login__actions .ec-checkbox .form-check{
	padding-left:1em;
}

.ec-headerLogoLogin .ec-login__actions .ec-checkbox label{
    margin-bottom: 0;
}


.ec-headerLogoLogin .ec-login__actions{
 	align-items: flex-start;
    display:inline-block;
}

.ec-login__lower {
    text-align:right;
}

.ec-drawerRole {
    overflow-y: scroll;
    background: black;
    width: 260px;
    height: 100vh;
    transform: translateX(300px);
    position: fixed;
    top: 0;
    left: auto;
    right: 0;
    z-index: 1;
    transition: z-index 0ms 1ms;
}


.ec-drawerRoleClose {
    display: none;
    cursor: pointer;
    border-radius: 50%;
    box-sizing: border-box;
    padding: 10px;
    width: 40px;
    height: 40px;
    font-size: 18px;
    text-align: center;
    color: black;
    background: white;
    position: fixed;
    top: 10px;
    left: auto;
    right: 270px;
    z-index: 1000;
}


/***** ヘッダー メニュー ******/

#header_menu{
	background: #f9f9f9;
	border-top: solid 1px #ddd;
    border-bottom: solid 1px #ddd;
}

#header_menu a{
	color: #666;
	text-decoration:none;
	font-weight: bold;
}

#header_menu ul{
	margin:0 auto;
    list-style: none;
    padding:0;
}

#header_menu .ec-role > ul{
	display:flex;
	height:60px;
}

#header_menu .ec-role > ul > li{
	width:20%;

	position:relative;
}

#header_menu .ec-role > ul > li ul.second {
	position:absolute;
	bottom:0;
	top:100%;
	z-index:20;
	width:100%;
	
	transform: scaleY(0);
	transform-origin: center top;
	transition: all .2s;

}

#header_menu .ec-role > ul > li:hover ul.second {
	display:block;
	
	transform: scaleY(1);
}


#header_menu .ec-role > ul > li a{
	display:block;
	width:100%;
	height:60px;
	background: #f9f9f9;

	display:flex;
 	align-items: center;
	justify-content: center; 

    border-bottom: solid 3px #f9f9f9;
}

#header_menu .ec-role > ul > li:hover > a{
    border-bottom: solid 3px #AC181E;
    color:#AC181E;
}

#header_menu .ec-role > ul > li:nth-of-type(4):hover > a{
    border-bottom: none;
}

#header_menu .ec-role > ul > li > ul.second > li:hover > a{
    border-bottom: solid 3px #AC181E;
    color:#AC181E;
}

/***** 
フッター 
******/
.container1100{
    width: 100%;
}

#footer_wrap {
    margin: 0 auto;
    width: 100%;
    /*height: 320px;*/
    background: #f5f5f5;
    position:relative;
}
#footer {
    border-top: none;
    padding: 30px 0;
    margin: auto;
    /*height: 290px;*/
    
    display:flex;
    flex-wrap:wrap;
}

#footer h2{
	margin-top:0;
}
#footer h2 a{
    font-size:30px;
    font-weight:bold;
    color:#000 !important;
}
#footer .block{
	width:100%;

	margin:0 0 20px 0;
	padding:0 20px;
	text-align: center;

}
#footer .block:first-child{
	border-left:none;
}
#footer .block dl{
	display:inline-block;
	text-align: left;
	
	width:200px;
}
#footer .block:first-child {
   margin-bottom:50px;
}
#footer .block dl dt{
	font-size:1.25em;
	font-weight:bold;
	text-align:left;
	margin-bottom:10px;
}

#footer .block dl dd{
    padding-left: 20px;
    margin: 7px 3px;
	text-align:left;
	position: relative;
}

#footer .block dl dd:before {
	content:'';
	position: absolute;
	top: 5px;
  	left:0px;
    width: 0px;
    height: 0px;
    border: 5px solid transparent;
    border-left: 8px solid #555;
}

#footer .block dl dd a{
    color:#000 !important;
}
#copyright {
	width: 100%;
	color: #fff; 
	text-align: center;
	font-size: 0.75em;
	background: #000; 
	height: 30px;
	line-height: 30px;
}


/* ページトップへ戻る */
.pageTop {
	display:none;
	position:relative;
	width: 100%;
	/*min-width:980px;*/
	height:0;
	margin:0 auto;
	background:transparent !important;
}
.pageTop a {
	position: fixed;
	bottom: 40px;
	right:20px;
	display: block;
	width: 60px;
	hegiht:60px;
	outline:none;
	z-index:9999;
	background:transparent !important;
}


/***** 
サイドバー 
******/

.side_parts{
	margin-bottom: 40px;
}

.ec-layoutRole__left h2{
	border: none;
	font-weight: bold;
	width: 100%;
	color: #000;
	font-size: 18px;
	position: relative;
	padding: 5px 10px;
	background: none;
	border-bottom: solid 2px #000;
	margin-top: 0;
	margin-bottom: 20px;
}

.ec-layoutRole__left a{
	color: #666;
}

.ec-layoutRole__left a:hover{
	text-decoration:none;
}

.ec-layoutRole__left ul {
	display:block;
	padding: 0;
}

.ec-layoutRole__left img{
	/*max-width:80%;*/
}

.ec-layoutRole__left #side_banner_area1 {
	order:10;
	width:100%;
	margin:0 auto;
	
	display:flex;
    flex-wrap:wrap;
}


.ec-layoutRole__left #side_banner_area1 a{
	display:inline-block;
	margin-bottom:20px;
	
	width:50%;
	padding:0 10px;
}

.ec-layoutRole__left #side_banner_area1 a img{
	width:100%;
}

.ec-layoutRole__left #information_area ul {
    list-style: none;
}

.ec-layoutRole__left #information_area ul li {
	display:block;
	position:relative;
	padding: 0 0 0 30px;
	margin-bottom:15px;
}

.ec-layoutRole__left #information_area ul li:before {
    content: "";
    position: absolute;
    top: 7px;  
    left: 10px;
    border: 5px solid transparent;
    border-left: 8px solid #555;   /* 好みで色を変えてください */  
}

.ec-layoutRole__left #information_area ul li a{
	display:block;
}

#cart_area .side_block_innser{
	margin-bottom:20px;
}

#category_area ul{
    list-style: none;
}

#category_area > ul > li{
	position:relative;
	padding: 0 0 0 30px;
	margin-bottom:15px;
	float: none;
	display:block;
}

#category_area > ul > li:before {
    content: "";
    position: absolute;
    top: 7px;   /* 縦軸をセンタリングする */ 
    left: 10px;
    border: 5px solid transparent;
    border-left: 8px solid #555;   /* 好みで色を変えてください */  
}


#category_area > ul > li > a{  
	text-align: left;
}

#category_area > ul > li{
	position:relative;
}

#category_area > ul > li  ul{

/*	position:absolute;
	bottom:0;
	top:100%;*/
	
/*	transform: scaleY(0);
	transform-origin: center top;
	transition: all .2s;*/

	width:100%;
	padding:0 0 0 20px;

}

#category_area > ul > li:hover > ul {
	/*transform: scaleY(1);*/
}

#search_area dl{
	margin-bottom:20px;
}

#search_area dt{
	font-weight:normal;
}

#search_area dt:before {
	content:"\0bb";
}

#search_area select {
    border: 1px solid #ccc;
    width:100%;
}

#search_area [type="search"] {
    outline-offset:0;
    border: 1px solid #ccc;
    width:100%;
}

#search_area [type="search"]:focus {
    outline: 0;
}

/***** 
トップ 下層ページ　共通
******/

.ec-role {
    line-height: 1.75;
	font-size: 15px; 
}

.img_border img{
    padding: 4px;
    border: solid 1px #ddd;
}

dl.number dd,
ul.number li {
    display: list-item;
    list-style-type: decimal;
    margin-left: 1.5em;
}
/***** 
トップ
******/

#page_homepage .ec-layoutRole__mainWithColumn h2{
	width:100%;
	position:relative;
	padding-left:2.5em;
	font-size:120%;
	font-weight:bold;
	margin-bottom:50px;
}

#page_homepage .ec-layoutRole__mainBottom .ec-role{
/**
	padding-left: 20px;
	padding-right: 20px;
**/
	margin-bottom:80px;
}

#pickup_area h2:before{
	position:absolute;
	top:-10px;
	left:0;
	content:url("../icon/ico_star.png");
}

#pickup_area_pc{
    display: -webkit-flex;
    display: flex;
    flex-wrap:wrap;
}

#pickup_area_pc .listItem{
	width:30%;
}

#pickup_area_pc .listItem:nth-of-type(3n),
#pickup_area_pc .listItem:nth-of-type(3n-1){
	margin-left:5%;
}

#pickup_area .listItem img{
	margin-bottom:10px;
}

#pickup_area .listItem .listItemTitle{
	color:#333;
}

#pickup_area .listItem .listItemPrice{
	color:var(--wine);
}

#pickup_area .ec-sliderItemRole .listItemTitle{
	color:var(--black);
}

#pickup_area .ec-sliderItemRole .listItemPrice{
	color:var(--wine);
}


#news_area h2:before{
	position:absolute;
	top:-10px;
	left:0;
	content:url("../icon/ico_check.png");
}

#news_area .news_wrapper{
	max-height: 260px;
	height: auto !important;
	height: 260px;
	overflow: auto;
	overflow-y: scroll;
}

#news_area .news_block{
    border-bottom:solid 1px #ddd;
    padding:20px;
}

#news_area .news_block .news_date{
	margin-bottom:10px;
}

#news_area .news_block .news_title{
}

#twitter_area h2:before{
	position:absolute;
	top:-10px;
	left:0;
	content:url("../icon/ico_twitter_02.png");
}

#banner_area .block_body{
	display:flex;
}

#banner_area .block_body a{
	width:48%:
	margin-bottom:20px;
}

#banner_area .block_body a:nth-child(2n){
	margin-left:4%;
}

/***** 
ログイン
******/

.ec-login {
    /*margin: 0 16px 50px 16px;
    padding: 0 10% ;*/
    margin: 0 0 50px 0;
    padding: 20px 10% ;
}
.login_block{
	background-color:#F3F4F4;
	margin: 0 16px 20px 16px;
	padding:40px;
}

#page_shopping_login h2.ptn1{
	margin: 0 16px 20px 16px;
}

.login_block h3{
	margin-top: 0;
	font-size:20px;
	font-weight:bold;
	padding-left:1.25em;
	position:relative;
}

.login_block h3:before{
	margin-top: 0;
	font-size:20px;
	font-weight:bold;
	position:absolute;
	top:0;
	left:0;
	content:url("../icon/ico_arrow_05.gif");
}

.ec-login__input{
	margin-bottom:10px !important;
}

.massage_box{
	padding:20px;
	text-align:center;
	border:solid 1px #000;
	margin-bottom:50px;
	font-size:20px;
	color:var(--wine);
    text-align: left;
}

/***** 
パスワード再発行
******/



/***** 
カート
******/
.ec-orderRole {
    display: flex;
    flex-direction: column;
}
.ec-orderRole .ec-orderRole__detail {
    padding: 0 16px;
    width: 100%;
}

.ec-orderRole .ec-orderRole__summary {
    width: 100%;
    padding: 0 16px;
}

/***** 
下層ページ共通
******/
.other_page:not(#page_shopping, #page_shopping_confirm) .ec-layoutRole__mainWithColumn .ec-role{
	/*padding-left: 40px;
	padding-right: 40px;*/
	margin-bottom:80px;
}

.other_page .ec-layoutRole__mainWithColumn .ec-role img{
	width:auto;
}

.other_page h1 {
    border-top: none !important;
    background: none !important;
    color: #333;
    font-size: 1.75em;
    font-weight: bold;
    margin: 0 0 1.5em !important;
    padding: 0.15em 0.5em 0 0.5em !important;
    border-left: 4px solid #B92A2C;
}

.other_page h3 {
    margin: 0 0 10px 0;
    padding: 5px 0 3px;
    color: #ac181e;
    background: none;
    font-size: 120%;
    font-weight: bold;
    border-bottom: 2px solid #333;
}

.other_page blockquote {
    padding: 20px;
    background-color: #f5f5f5;
    border: solid 1px #ddd;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    -o-border-radius: 10px;
    border-radius: 10px;
}

.other_page dl.normal01 dt {
    font-size: 1.5em;
    font-weight: bold;
}

/***** 
概要
******/

.other_page #overview .sewing_factory {
    width:60%;
    margin:0 auto 30px auto;
}

.other_page #overview .sewing_factory img{
    width:100%;
}

.other_page #overview dl{
    margin-bottom:30px;

    display: -webkit-flex;
    display: flex;
    flex-wrap:wrap;
}

.other_page #overview dl dt{
    margin-bottom:10px;
    font-size:1.5em; 
    font-weight: bold; 

    width:100%;
}

.other_page #overview dl dd {
    width:30.33%;
    float:left;
    margin:0 1.5% 10px 1.5%;
}

.other_page #overview dl dd img{
    width:100%;
}

/***** 
お支払い方法について
******/

#howtopay table {
    margin: 15px auto 20px auto;
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
    width: 100%;
    border-collapse: collapse;
    text-align: left;
    border-spacing: 0px;
}

#howtopay th {
    padding: 8px;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    color: #333;
    background-color: #f0f0f0;
    font-weight: normal;
}

#howtopay td {
    padding: 8px;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}

#howtopay .border hr{
    height: 1px;
    background-color: #CCC;
    border: none;
}



/***** 
サイズの測り方
******/


.other_page #measuring dl.box_set01 {
    margin:0 50px 30px 50px;
    text-align:center;
}

.other_page #measuring dl.box_set01 dd{
    margin-bottom:10px;
}

.other_page #measuring dl.box_set01 dd img{
    width:100%;
}




/***** 
洗濯・保存方法
******/

.other_page #maintenance dl dt{
    margin-bottom:10px;
    font-size:1.5em; 
    font-weight: bold; 
}

.other_page #maintenance dl dd {
    margin-bottom:10px;
}
.other_page #maintenance dl dd a{
    display:block;
   text-align:center;
}
.other_page #maintenance dl dd img{
    width:80%;
}





/***** 
QA
******/


.other_page dl.box_qa a{
    text-decoration:underline;
}

.other_page dl.box_qa {
    margin:0 20px 30px 20px;
    border:solid 1px #ddd;
}

.other_page dl.box_qa dt {
	position: relative;
	padding:1em 0 1em 3em;
	background:#f5f5f5;
	font-weight:bold;
}

.other_page dl.box_qa dt:before {
    content: " ";
    background: url(../icon/ico_q.png);
    position: absolute;
    top: 1.2em;
    left: 1em;
    display:inline-block;
    width:17px !important;
    height:17px !important;
    background-size:contain;
}

.other_page dl.box_qa dd {
	position: relative;
	padding:1em 0 1em 3em;
}

.other_page dl.box_qa dd:before {
    content: " ";
    background: url(../icon/ico_a.png);
    position: absolute;
    top: 1.2em;
    left: 1em;
    display:inline-block;
    width:17px !important;
    height:17px !important;
    background-size:contain;
}

/***** 
会員登録
******/

#page_entry .ec-off4Grid .ec-off4Grid__cell {
    width: 100%;
    margin-left: 0%;
    display:flex;
    flex-wrap:wrap;
}

#page_entry .ec-off4Grid .ec-off4Grid__cell .ec-checkbox{
	text-align:center;
    width: 100%;
}

#page_entry .ec-off4Grid .ec-off4Grid__cell .ec-blockBtn--action{
    width: 46%;
    margin:0 2%;
}

#page_entry .ec-off4Grid .ec-off4Grid__cell .ec-blockBtn--cancel{
    width: 46%;
    margin:0 2%;
}


/***** 
商品一覧
******/

#page_product_list .price02-default{
	color: var(--wine);
}


/***** 
商品詳細
******/

#page_product_detail .ec-message{
	border: solid 2px #F39801;
    background: #fff;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px;
    width: 95%;
    margin: 0 auto 30px auto;
    padding: 15px;
}

#page_product_detail .ec-message h3{
    text-align: center;
    font-weight: bold;
    font-size: 1em;
    margin-top: 0;
    margin-bottom: 20px;
    color: #ac181e;
	position:relative;
}

#page_product_detail .ec-message h3:after{
	content:"";
	height:1px;
	background-color:#ac181e;

	position:absolute;
	bottom:-5px;
	left:0;
	right:0;
	width:60px;
	margin:auto;
}

#page_product_detail .ec-message p{
	font-size:0.9em;
}


#page_product_detail .ec-grid2 .ec-grid2__cell {
    width: 280px;
}

#page_product_detail .ec-grid2 .ec-grid2__cell:nth-of-type(2) {
    width: calc(100% - 280px);
}

#page_product_detail .ec-sliderItemRole .item_image{
	margin-bottom:30px;
}

.ec-productRole .ec-productRole__tags {
    margin-top: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.ec-productRole .ec-productRole__tag {
    padding: 5px 10px 3px 10px;
    line-height:1;
    font-size: 80%;
    color: #FFF;
    border: none;
    border-radius: 0;
    background-color: var(--wine);
}

.ec-productRole .ec-productRole__code {
    padding: 5px 0;
    border-bottom:none;
}

.ec-productRole .ec-productRole__priceRegularTax {
    margin-left: 0px;
    font-size: 1em;
}

.ec-productRole .ec-productRole__priceRegularPrice .price01-default{
	text-decoration: line-through;
}

.ec-productRole .ec-productRole__price {
    color: #DE5D50;
    font-size: 20px;
    padding: 5px 0;
    border-bottom: none;
}
.ec-price .ec-price__price {
    padding: 0 ;
}
.ec-price .ec-price__tax {
    font-size: 20px;
}
.ec-productRole .ec-productRole__category {
    padding: 5px 0;
    border-bottom:none;
    margin-bottom:20px;
}

.ec-productRole .cart-area1 {
    margin-bottom:20px;
}

.ec-productRole .cart-area1 .ec-productRole__category__actions {
	display:inline-block;
    width:100%;
    padding: 0;
}

.ec-productRole .cart-area1 .ec-productRole__actions {
    width:150px;
    padding: 0;

    width:100%;
}

.ec-productRole .cart-area1 .ec-productRole__actions  .ec-numberInput{
	width:150px;
}
.ec-productRole .cart-area1 .ec-productRole__actions  .ec-numberInput input{
    margin-bottom:0;
    height: auto;
}

.ec-productRole .cart-area1  .ec-productRole__btn {
	display:inline-block;
    width: calc(100% - 150px);
    margin-bottom: 0;
    min-width: auto;
}

.ec-productRole .cart-area1  .ec-productRole__btn .btn_ptn2{
	font-size:14px;
	display: block;
	max-width:250px;
	margin:auto;
}

.ec-productRole .cart-area2 {
    margin-bottom:50px;
}


.ec-productRole .cart-area2 .contact-btn{
    width:47%;
}

.ec-productRole .cart-area2 .contact-btn .btn_ptn2 {
	display:block;
	width:100%;
	margin:auto;
	font-size:15px;
}

.ec-productRole .cart-area2 .favorite-btn{
    width:47%;
    margin-left:6%;
}

.ec-productRole .cart-area2 .favorite-btn .ec-productRole__btn {
	display:block;
    width:100%;
    margin-bottom: 0;
    min-width: auto;
	font-size:15px;
}

#page_product_detail .sub_ttl{
	border: none;
	font-weight: bold;
	width: 100%;
	color:#000;
	font-size: 18px;
	position: relative;
	padding: 5px 10px;
	background:none;
	
	border-bottom:solid 2px #000;
	margin-bottom:10px;
}

#ec-modal-header{
	font-weight:bold;
	font-size: 24px;
	margin-bottom:30px;
}

#ec-modal-message{
	padding:0 20px;
}



#page_product_detail #detail_common img {
    width: 100%;
}

#page_product_detail #detail_common table tr:nth-child(odd) {
    background-color:#f5f5f5 !important;
}

#page_product_detail #detail_common td {
    text-align:center !important;
    border:solid 1px #efefef;
    padding: 8px;
}

#page_product_detail #detail_common th {
    text-align:center !important;
    border:solid 1px #efefef;
    background-color:transparent;
    padding: 8px;
    font-weight:bold;
}

#page_product_detail #detail_common caption {
    font-weight:bold;
    margin-bottom:15px;
}

#page_product_detail #detail_common .caution1 li{
	font-size:15px !important;
	line-height:2em !important;
}


#page_product_detail #detail_common .caution2 li {
    /*padding-left: 1em; 
    text-indent: -1em;*/
	font-size:15px !important;
	line-height:2em !important;
	margin-bottom:1em;
}

#page_product_detail #detail_common .caution2 li:before {
    /*content:"・";*/
}

#page_product_detail #detail_common .size_table {
	margin-bottom:30px;
}

/***** 
問い合わせ
******/

#page_contact textarea {
    min-height: 400px;
}

@media only screen and (max-width : 767px ) {
	#page_product_detail .ec-grid2 .ec-grid2__cell {
    	width: 100%;
	}

	#page_product_detail .ec-grid2 .ec-grid2__cell:nth-of-type(2) {
    	width: 100%;
	}
}

@media only screen and (min-width : 768px ) {
	.pc {
		display: block !important;
	}

	.sp {
		display: none !important;
	}

	.pc-inlineblock {
		display: inline-block !important;
	}

	.sp-inlineblock {
		display: none !important;
	}

	.pc-flex {
		display: flex !important;
	}

	.sp-flex {
		display: none !important;
	}

	.container1100{
	    width: 1100px;
	}

	.ec-role {
	    min-width: 1080px;
	}

	.ec-layoutRole__mainWithColumn .ec-role {
	    min-width: auto;
	    width: 100%;
	}

	.ec-layoutRole .ec-layoutRole__contents {
	    max-width: 1150px;
	    min-width: 1080px;
	}

	.ec-layoutRole .ec-layoutRole__left {
	    margin:0 auto 50px auto;
		width: 25%;
		order: 1; 
	}

	.ec-layoutRole .ec-layoutRole__mainWithColumn{
	    order: 2; 
	    width: 73% ;
	    margin-left:2%;
	}

	.ec-layoutRole__header{
		border-bottom: none;
	}

	.ec-headerLogoLogin{
	    margin:20px 0;
	}


	.ec-logo{
	    display:block;
	    width:390px;
	    margin:0 auto;

	    order:1;
	}

	.ec-login__area{
	    width:calc(100% - 390px);
	    text-align:right;

		order:2;
	}



	#footer .block{
	   width:23%;
		margin:0;
	}
	#footer .block:first-child{
		width:31%;
		border-left:none;
	}

	.ec-layoutRole__left #side_banner_area1 {
		width:100%;
		order:0;
	}

	.ec-layoutRole__left #side_banner_area1 a{
		width:100%;
		padding:0;
	}

}
