/* ===================================================================
CSS information
 file name  :t3style_plus.css
 style info :T3作成のCSSへの追加や上書き
=================================================================== */
:root {
    --main-string-color: #454c50;
    --main-a-color: #4c85dd;
    --main-a-hover-color: #0466ff;
    --menu-a-color: #554c43;
    --menu-a-hover-color: #0082c9;
    --main-btn-color: #0082c9;
    --main-btn-hover-color: #016ca6;
    --active-color: #8ea7b0;
}

/***************************************************************
color設定
***************************************************************/
.btn.mainbtn {
    border-color: var(--main-btn-color);
    background-color: var(--main-btn-color);
}
.btn.mainbtn:hover {
    border-color: var(--main-btn-hover-color);
    background-color: var(--main-btn-hover-color);
}
.btn.mainbtn:focus {
  color: #fff;
  box-shadow: 0 0 0 .25rem rgba(116, 143, 247, 0.5);
}
a:hover {
    color: var(--main-a-hover-color);
}
    
.topnavi-menu a {
    color: var(--menu-a-color);
}
.topnavi-menu a:hover {
    color: var(--menu-a-hover-color);
}

/***************************************************************
input type="password"の場合も、type="search"と同様のcssを適用
***************************************************************/
.cd-search input[type="password"] {
    width: 100%;
    height: 50px;
    padding: 0 20px;
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    -o-appearance: none;
    appearance: none;
    background-color: #242643;
    border: none;
    border-radius: 0;
}

.cd-search input[type="password"]::-webkit-input-placeholder {
    color: #ffffff;
}

.cd-search input[type="password"]::-moz-placeholder {
    color: #ffffff;
}

.cd-search input[type="password"]:-moz-placeholder {
    color: #ffffff;
}

.cd-search input[type="password"]:-ms-input-placeholder {
    color: #ffffff;
}

.cd-search input[type="password"]:focus {
    background: #ffffff;
    color: #111433;
    outline: none;
}

.cd-search input[type="password"]:focus::-webkit-input-placeholder {
    color: rgba(17, 20, 51, 0.4);
}

.cd-search input[type="password"]:focus::-moz-placeholder {
    color: rgba(17, 20, 51, 0.4);
}

.cd-search input[type="password"]:focus:-moz-placeholder {
    color: rgba(17, 20, 51, 0.4);
}

.cd-search input[type="password"]:focus:-ms-input-placeholder {
    color: rgba(17, 20, 51, 0.4);
}

@media only screen and (min-width: 1024px) {
    .cd-search input[type="password"] {
        background-color: #ebebeb;
    }
    .cd-search input[type="password"]:focus {
        background-color: #ebebeb;
    }
    .cd-search input[type="password"]::-webkit-input-placeholder {
        color: #b3b3b3;
    }
    .cd-search input[type="password"]::-moz-placeholder {
        color: #b3b3b3;
    }
    .cd-search input[type="password"]:-moz-placeholder {
        color: #b3b3b3;
    }
    .cd-search input[type="password"]:-ms-input-placeholder {
        color: #b3b3b3;
    }
}


/***************************************************************
mobile時、サブメニューを表示中に「ログイン中」の表示が消えないバグ対応
***************************************************************/
.cd-dropdown-content .login-message {
    /* Force Hardware Acceleration */
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
    -moz-transition: opacity 0.3s, -moz-transform 0.3s;
    transition: opacity 0.3s, transform 0.3s;
}

.cd-dropdown-content.move-out>li>.login-message {
    /* push the dropdown items to the left when secondary dropdown slides in */
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%);
    /* lower down the dropdown items opacity - when secondary dropdown slides in or for dropdown items hidden on the right */
    opacity: 0;
}

@media only screen and (min-width: 1024px) {
    .cd-dropdown-content.move-out>li>.login-message {
        /* reset mobile style */
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
}

/***************************************************************
mobile時、ログインサブメニューの背景色がマウスオーバーでなくなるバグ対応
***************************************************************/
.loginbox {
    background: var(--active-color);
    padding-bottom: 10px
}
.loginbox .btn-lgsize {
    margin-top: 20px
}

/***************************************************************
IEでinput[type="number"]で文字が見えなくなるバグ対応
***************************************************************/
.cd-main-content input[type="number"] {
    line-height: normal;
}

/***************************************************************
その他バグFIX
***************************************************************/
/**fancyboxでのbootstrapの影響を除去**/
*[id^="fancybox"] {
    box-sizing: content-box;
}
*[class^="fancybox"] {
    box-sizing: content-box;
}

/**文字色を指定**/
@media only screen and (max-width: 1023px) {
    .cd-search input[type="search"] {
        color: #FFFFFF;
    }
    .cd-search input[type="password"] {
        color: #FFFFFF;
    }
}

/**IEの1024px以上でサブメニューが表示されない現象を修正**/
@media only screen and (min-width: 1024px) {
    .dropdown-is-active .cd-dropdown-content ul {
        position: absolute;
    }
}

/***************************************************************
追加
***************************************************************/
.popover-header, .popover-body {
    font-size: 1.2rem;
}

header#topnavi {
    padding-bottom: 12px;
}

.cd-main-content section.important_news {
    background-color:#383848;
    padding:1.5rem 2.4rem;
}
.cd-main-content section.important_news .news-attention {
    color:#FFFFFF;
}
.cd-main-content section.important_news .news-attention a {
    color:#FFFFFF;
}
.cd-main-content section.important_news .news-attention a:hover {
    color: var(--main-a-color);
}

.btn {
    font-size:1.3rem;
}

.loginbox .cd-search input[type="search"] {
    border-radius: 0px;
}

.search_maker {
    cursor: pointer;
    border: 2px solid transparent;
    border-radius: 4px;
    line-height:1;
    padding:8px 12px;
    /*
    background-color:#999;
    */
    margin-bottom:1.4rem;
}
.search_maker.is-selected {
    border: 2px solid var(--main-btn-color);
    background-color:transparent;
}
.search_maker img {
    width:100%;
    height:10rem;
    object-fit: contain;
    object-position: center;
}


/* ログインパスワード忘れ */
.cd-dropdown-content .cd-secondary-dropdown a.loginpass {
    border-top-width: 0px;
}
.cd-dropdown-content .cd-secondary-dropdown a.loginpass:hover {
    color: var(--menu-a-hover-color);
}


ul.alert
{
    padding:10px;
    margin:0px 0px 10px;
    background-color:#FFE8E8;
}
ul.alert li
{
    color:red;
    padding:0px;
}


ul li.page-item::before {
    content: none;
    margin-right: 0px;
}

.creditinfo
{
    display:none;
}

.favor_msg
{
    display:none;
}
.incart_endmsg
{
    display:none;
}
#incart_endmsg
{
    display:none;
}
#watch_incart_endmsg
{
    display:none;
}
#credit_errmsg
{
    display:none;
    opacity:0.0;
    filter:alpha(opacity=0);
    border-radius: 4px;
    padding:10px;
    color:red;
    background-color:#FFE8E8;
}

.endmsg
{
    color:#337ab7;
    /*
    background-color:#EC971F;
    */
}
.endmsg_box
{
    border: 1px solid #3075BA;
    padding:4px 6px; 
    -webkit-border-radius:3px;
    -moz-border-radius:3px;
    border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
}
.list_div_bdr
{
    margin-bottom:20px;
}


h4.cata-ttl {
    /*
    color:#FFFFFF;
    background-color:#525D68;
    */
    color:#525D68;
    border-bottom:2px solid #525D68;
    font-size:1.6rem;
    font-weight:bolder;
    margin-top:20px;
    padding:0px 10px;
}
h4.cata-ttl .float_l {
    margin-top:4px;
}
h4.cata-ttl .float_r {
    margin-bottom:4px;
}

div.confirmbox
{
    margin:0px 0px 20px;
    padding:0px;
    background-color:#e8e8e8;
    -webkit-border-radius:3px;
    -moz-border-radius:3px;
    border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
}
div.confirmbox a:not(.confirm_a)
{
    padding:10px 15px;
    display:block;
    color:inherit;
    height:100%;
    width:100%;
}
div.confirmbox div
{
    padding:10px 15px;
    display:block;
    color:inherit;
    height:100%;
    width:100%;
}
div.confirmbox a:not(.confirm_a):hover
{
    text-decoration:none;
}
div.confirmbox a:not(.confirm_a):focus
{
    text-decoration:none;
}
div.confirmbox table
{
    width:100%;
}
div.confirmbox table td
{
    line-height:140%;
}
div.confirmbox table td.r
{
    vertical-align:middle;
}

div.sendingbox
{
    word-break: break-all;
    margin:0px 0px 20px;
    padding:5px 10px;
    background-color:#e8e8e8;
    border:1px dotted #CCCCCC;
    -webkit-border-radius:3px;
    -moz-border-radius:3px;
    border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
}
div.sending_select
{
    background-color:#f2d7d7;
}
p.hide_order_nextbtn
{
    margin-top:20px;
}

div.orderbox
{
    margin:0px 0px 30px;
    padding:5px 10px;
    background-color:#e8e8e8;
    border:1px dotted #a0a0a0;
    -webkit-border-radius:3px;
    -moz-border-radius:3px;
    border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
}
div.orderbox table th,td
{
}
.order_detail_img
{
    width:100px;
    margin-right:15px;
    float:left;
}

.order_no_align
{
    text-align:right;
}

.incart_btn
{
    padding:2px 4px;
}

div.cata-ttl {
    /*
    color:#FFFFFF;
    background-color:#525D68;
    */
    border-bottom:2px solid #525D68;
    margin-top:20px;
    margin-bottom:10px;
    padding:0px 10px;
}
div.cata-ttl h4 {
    color:#525D68;
    font-size:1.6rem;
    font-weight:bolder;
    margin-top:4px;
    margin-bottom:0px;
}
div.cata-ttl div {
    margin-bottom:4px;
}

div#conforms_search {
    border:1px solid #DDDDDD;
    display:none;
    margin-bottom:10px;
    padding:10px 10px 0px;
}
div#conforms_search .table {
}

h5.subttl {
    margin:6px 0px;
    padding:0px 0px;
    color:#355b6d;
    /*
    border-left:2px dotted #385868;
    background-color:#E6E6E6;
    border-left:2px solid #CCCCCC;
    */
}

ul.catelist {
    list-style: outside circle none;
    margin-left: 16px;
}
ul.catelist li {
    line-height:1.4;
    margin-bottom: 4px;
}
ul.catelist li::before {
    content: none;
    margin-right: 0px;
}
ul.catelist li div {
    padding-left:1em;
}

.price_color {
    color: darkred;
}

.img-bdr {
    border: 1px solid #BBBBBB;
}

#loginmsg {
    color:#EC971F;
    font-weight:bold;
}

/*******メールナビ*******/
textarea {
    font-family: sans-serif;
    font-size: 1.6rem;
}
div#mailnavi_template_area
{
}
div#mailnavi_template
{
    margin:10px 0px 10px;
    padding:15px 15px;
    border: 1px dotted #AAAAAA;
    background-color:#E8E8E8;
    -webkit-border-radius: 10px;  
    -moz-border-radius: 10px; 
    border-radius: 10px 10px 10px 10px / 10px 10px 10px 10px;
}
div.navibox
{
    margin:0px 0px 30px;
    padding:15px 15px;
    border: 1px dotted #AAAAAA;
    -webkit-border-radius: 10px;  
    -moz-border-radius: 10px; 
    border-radius: 10px 10px 10px 10px / 10px 10px 10px 10px;
}
div.navibox_admin
{
    background-color: #ffe7c6;
}
div.navibox_user
{
    background-color: #d8ebff;
}
div#navibox_reg
{
    display: none;
}
div.navibox div p
{
    margin:2px 0px 2px;
    padding:4px 4px;
    line-height:140%;
}
div.navibox dl
{
    font-size:90%;
    line-height:120%;
}
div.navibox dl dt
{
    margin:0px 0px 10px;
    padding:0px 0px 5px;
    border-bottom:1px solid #AAAAAA;
}
div.navibox dl dd
{
    overflow: hidden;
}
div.navibox dl dd div.d-flex
{
    margin-top:10px;
    padding-top:10px;
    border-top:3px dotted #AAAAAA;
}
div.navibox dl dd ul
{
    margin:0px;
}
div.navibox dl dd ul li
{
    line-height:1.4;
    margin:0px 0px 6px;
}
div.navibox dl dd ul li::before 
{
    content: none;
    margin-right: 0px;
}
div.navibox > ul.alert
{
    color:red;
    padding:6px 4px;
    font-size:90%;
    margin:0px 0px 15px;
    background-color:#fffcfc;
    border:2px solid #ffbfbf;
    -webkit-border-radius:3px;
    -moz-border-radius:3px;
    border-radius: 3px 3px 3px 3px / 3px 3px 3px 3px;
}
div.navibox > ul.alert li
{
    padding:0px;
    margin:1px 0px 1px 10px;
    list-style:;
    text-decoration:underline;
}
div.navibox textarea
{
    line-height:2rem;
}
.unread
{
    color:#ff4635;
}


.navibox_expansion
{
    margin-top:6px;
    width:100%;
    -webkit-border-radius: 10px;  
    -moz-border-radius: 10px; 
    border-radius: 10px 10px 10px 10px / 10px 10px 10px 10px;
}
.navi_orange
{
    color:orange;
}
.word_brk
{
    word-break: break-all;
}
.show_max767
{
    display:none;
}
.hide_max767
{
    display:block;
}


/*******注文メモ*******/
.fusen_area {
    position: relative;
    z-index: 0;
}
.fusen {
    position: relative;
    padding: 1rem;
    background-color: #f2d7d7;
    /*
    background: linear-gradient(to right, #ffffcc 0%, #f1f1c1 0.5%, #f1f1c1 13%, #ffffcc 16%);
    */
}
.fusen .memo_title {
    border-bottom: 1px solid #848484;
}
.fusen .memo_content {
    line-height:2.5rem;
}
.fusen ul.memo_files li {
    line-height:1.7rem;
    margin:1rem 0;
}
.fusen ul.memo_files li::before {
    content: "";
    margin: 0px;
}
.fusen::before {
    position: absolute;
    bottom: -5px;
    right: 7px;
    z-index: -1;
    transform: rotate(5deg);
    width: 70%;
    height: 50%;
    /*
    background-color: #d0d0d0;
    */
    background: linear-gradient(to bottom, #fff0 80%, #d0d0d0 20%);
    content: "";
    filter: blur(4px);
}



/* パンくず */
ol.topic-path {
    margin: 0px 0px 12px;
    padding: 0px;
    list-style-type: none;
}
ol.topic-path li {
    padding-left: 0px;
    display: inline-block;
}
ol.topic-path li:not(.current):after {
    content: ">";
    padding-right: 12px;
}
ol.topic-path li a {
    padding-right: 12px;
}
ol.topic-path li span {
    padding-right: 12px;
}

ol.subtopic-path {
    list-style-type: none;
}
ol.subtopic-path li {
    padding-left: 0px;
    display: block;
}
ol.subtopic-path li:after {
    content: "";
    padding-right: 0px;
}
ol.subtopic-path li a {
    padding-right: 0px;
}
ol.subtopic-path li span {
    padding-right: 0px;
}

ul.guide {
    list-style: outside none none;
    margin-left: 0px;
    margin-bottom: 20px;
}
ul.guide li {
    line-height:1.4;
    margin-bottom: 6px;
}
ul.guide li::before {
    content: none;
    margin-right: 0px;
}

ol {
    margin-left: 16px;
    margin-bottom: 20px;
}
ol li {
    line-height:1.4;
    margin-bottom: 6px;
}

ol.guide_roman {
    list-style: outside upper-roman none;
}
ol.guide_roman li {
}

ol.guide_brackets {
    list-style: outside none none;
    margin-left: 0px;
}
ol.guide_brackets li {
    text-indent: -1.7em;
    padding-left:1.7em;
}

#page-top {
    display: none;
    position: fixed;
    bottom: 20px;
    right: 20px;
    /*
    bottom: 5%;
    right: 5%;
    */
    filter: alpha(opacity=70);
    -moz-opacity: 0.70;
    -khtml-opacity: 0.70;
    opacity: 0.70;
    z-index: 1;
}
#page-top a {
    background: #83939B;
    text-decoration: none;
    color: #fff;
    padding: 20px 20px;
    text-align: center;
    display: block;
    -webkit-border-radius:5px;
    -moz-border-radius:5px;
    border-radius: 5px;
}
#page-top a:hover {
    text-decoration: none;
    background: #9eaaaf;
}

.ph::-webkit-input-placeholder {
    color: #909090;
}
.ph::-moz-placeholder {
    color: #909090;
}
.ph:-moz-placeholder {
    color: #909090;
}
.ph:-ms-input-placeholder {
    color: #909090;
}

.bggray {
    background-color: #e8e8e8;
}
.plot
{
    text-indent:-1em;
    margin-left:1em;
}

.flex {
    display: flex;
    flex-wrap: wrap;
}

/* table */
.table .bdrt_0 {
    border-top:none;
}
.table .padb_0 {
    padding-bottom:0px;
}

/* padding */
.pad_0 {
    padding:0px;
}
.padt_0 {
    padding-top:0px;
}
.padb_0 {
    padding-bottom:0px;
}
.padl_0 {
    padding-left:0px;
}
.padr_0 {
    padding-right:0px;
}
.padl_10 {
    padding-left:10px;
}
.padr_10 {
    padding-right:10px;
}

/* margin */
.mgt_0 {
    margin-top:0px;
}
.mgb_0 {
    margin-bottom:0px;
}
.mgt_10 {
    margin-top:10px;
}
.mgb_10 {
    margin-bottom:10px;
}
.mgt_20 {
    margin-top:20px;
}
.mgb_20 {
    margin-bottom:20px;
}
.mgt_30 {
    margin-top:30px;
}
.mgb_30 {
    margin-bottom:30px;
}

/***************************************************************
mobile用
***************************************************************/
@media only screen and (max-width: 1023px) {
    .order_detail_img
    {
        width:80px;
        margin-right:10px;
    }
    .list_div_bdr
    {
        border-bottom:1px dotted #AAAAAA;
        margin-bottom:20px;
    }
    h4.cata-ttl {
        font-size:1.4rem;
    }
}
@media only screen and (max-width: 991px) {
    .tbl_shipping_cost1
    {
        margin-bottom:0px;
    }
    .tbl_shipping_cost2
    {
        margin-top:0px;
    }
    .tr_shipping_cost
    {
        display:none;
    }
    .table-bordered td.td_shipping_cost
    {
        border-top:1px solid #FFF;
    }
}
@media only screen and (max-width: 767px) {
    .order_detail_img
    {
        width:80px;
        margin-right:0px;
        margin-bottom:5px;
    }
    .order_detail_parts
    {
        width:100%;
        float:left;
    }
    /**カタログ詳細**/
    .cata_clearfix:after
    {
        content: " ";
        display: block;
        clear: both;
        height: 0;
        visibility: hidden; 
    }
    .cata_clearfix
    {
        display: block;
        border-bottom:1px dotted #CCCCCC;
        margin-bottom:4px;
        padding-bottom:4px;
    }
    .order_no_align
    {
        text-align:left;
    }
    .show_max767
    {
        display:block;
    }
    .hide_max767
    {
        display:none;
    }
}
@media only screen and (max-width: 480px) {
    .order_detail_img
    {
        width:70px;
    }
    .cd-main-content section {
        padding:20px;
    }
    /**商品詳細**/
    /*
    .price_color {
        font-size:13px;
    }
    #parts_cartaction {
        padding-left:0px;
    }
    #parts_cartaction a.btn {
        font-size:13px;
        padding:6px;
    }
    */
    /**カタログ**/
    .catalog_switch a.btn {
        font-size:13px;
        padding:6px;
    }
    /**カタログ詳細**/
    #incartbtn {
        font-size:13px;
    }
    div.navibox
    {
        padding:10px 10px;
        -webkit-border-radius: 8px;
        -moz-border-radius: 8px;
        border-radius: 8px 8px 8px 8px / 8px 8px 8px 8px;
    }
    .cd-dropdown-wrapper {
        margin: 90px auto 0;
    }
}
@media only screen and (max-width: 320px) {
    /**商品詳細**/
    /*
    .price_color {
        font-size:11px;
    }
    #parts_cartaction a.btn {
        font-size:11px;
    }
    */
    /**カタログ**/
    .catalog_switch a.btn {
        font-size:11px;
    }
}


