/*
    デフォルト
-------------------- */
/*html { background: #f9f9f9; }*/
html { background: #fff; }
body form {
    max-width: 100% !important;
    font-size: 16px;
}
img {
    width: 100%;
    max-width: 100%;
    height: auto;
}
a, a:hover, a:visited, a:active { color: #3c82bc; }
a:hover, a:active { text-decoration: none; }
/* PC */
@media screen and (min-width: 1080px){ .sp_only { display: none !important; } }
/* SP */
@media screen and (max-width: 1079px){
    .pc_only { display: none !important; }
    .sp_overflow { overflow: scroll; }
}
.nowrap { white-space: nowrap; }
.left { text-align: left; }
.right { text-align: right; }
.center { text-align: center; }
.bold { font-weight: bold; }
.font_small { font-size: 90%; }
.red { color: #3c82bc; }
.gray { color: #777; }
/* google icon */
.material-icons {
/*    vertical-align: text-bottom !important;*//*Macでしか確認してなかった時に使用、Winでズレてた*/
    vertical-align: middle !important;
    font-size: 16px;
}
/* form */
input {
    border: 1px solid #ddd;
    padding: 0.4em 0.25em;
    font-size: inherit;
    border-radius: 3px;
}
select {
    border: 1px solid #ddd;
    font-size: inherit;
    padding: 0.4em 0.25em;
    border-radius: 3px;
}
textarea {
    border: 1px solid #ddd;
    padding: 0.4em 0.25em;
    font-size: inherit;
    border-radius: 3px;
}
.w100 { width: calc(100% - 4px); }
.w50 { width: calc(50% - 4px); }
.w25 { width: calc(25% - 4px); }
.wAuto { width: auto !important; }
input[type="check"], input[type="radio"] {
    vertical-align: -1px;
}


/*
    ヘッダー
-------------------- */
#header {
    width: 100%;
    margin: 0 auto;
    background: rgba(246,198,23,1.00);
}
#header .wrap {
    display: flex;
    align-items: center;
    padding: 1em 0;
}
#header #header_r { order: 2; }
#header #header_r h1 {
    color: #fff;
    text-shadow: 1px 1px 0 #999;
}
#header #header_r .tel { text-shadow: 1px 1px 0 #999; }
#header #logo { order: 1; }
#header #logo a {
    font-size: 40px;
    font-weight: 900;
    font-style: italic;
    text-decoration: none;
    color: #8b8b89;
}
/* PC */
@media screen and (min-width: 1080px){
    #header .wrap {
        flex-direction: row;
        max-width: 1080px;
        margin: 0 auto;
    }
    #header #header_r { width: 40%; }
    #header #logo { width: 60%; }
    #header #header_r h1 {
        font-size: 14px;
        white-space: nowrap;
        text-align: right;
    }
    #header #header_r ul {
        display: flex;
        justify-content: flex-end;
    }
    #header #header_r ul li {
        list-style: none;
        margin: 0.75em 0.75em 0.75em 0;
        border: 1px solid #fff;
        border-radius: 5px;
        padding: 0.5em 0.5em 0.5em 0.25em;
    }
    #header #header_r ul li a {
        text-decoration: none;
        text-shadow: 1px 1px 0 #999;
        color: #fff;
    }
    #header #header_r ul li a i { font-size: 18px; }
    #header #header_r .tel {
        color: #fff;
        font-size: 20px;
    }
    #header #header_r .tel i {
        font-size: 20px;
        margin-right: 0.25em;
    }
    #header #logo a { font-size: 36px; }
}
/* SP */
@media screen and (max-width: 1079px){
    #header .wrap { flex-direction: column; }
    #header #header_r h1 {
        font-size: 11px;
        text-align: center;
    }
    #header #logo { padding: 0 3vw; }
    #header #logo a { font-size: 22px; }
    /* tb  */
    @media screen and (min-width: 768px){
        #header #logo a { font-size: 40px; }
        #header #header_r h1 { font-size: 16px; }
    }
    /* se他 */
    @media screen and (max-width: 374px){
        #header #logo a { font-size: 20px; }
        #header #header_r h1 { font-size: 10px; }
    }
}



/*
    グローバルナビ
-------------------- */
/* PC */
@media screen and (min-width: 1080px){
    #gnavi ul {
        display: flex;
        max-width: 1080px;
        margin: 0 auto;
    }
    #gnavi ul li {
        list-style: none;
        width: calc(100% / 5);
        border-right: 1px solid #ddd;
        margin: 1em 0;
        font-size: 15px;
    }
    #gnavi ul li:first-child { border-left: 1px solid #ddd; }
    #gnavi ul li a {
        display: block;
        padding: 1em 0;
        color: #555;
        text-decoration: none;
    }
    #gnavi ul li a i {
        font-size: 40px;
        margin-bottom: 0.05em;
    }
}
/* SP */
@media screen and (max-width: 1079px){
    #gnavi_sp {
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        background: #f6f6f6;
        box-shadow: 0 3px 10px #333;
        z-index: 999;
    }
    #gnavi_sp ul {
        display: flex;
        margin: 0 auto;
    }
    #gnavi_sp ul li {
        list-style: none;
        width: calc(100% / 5);
        margin: 1em 0;
        font-size: 12px;
    }
    #gnavi_sp ul li:not(:last-child) { border-right: 1px solid #ddd; }
    #gnavi_sp ul li a {
        text-decoration: none;
        color: #555;
    }
    #gnavi_sp ul li a i {
        font-size: 22px;
        margin-bottom: 2px;
    }
    /* tb  */
    @media screen and (min-width: 768px){
        #gnavi_sp ul li { font-size: 16px; }
    }
    /* se他 */
    @media screen and (max-width: 374px){
        #gnavi_sp ul li { font-size: 10px; }
    }
}



/*
    フッター
-------------------- */
#footer {
    width: 100%;
    margin: 3em auto 0;
    background: #606060;
    color: #fff;
}
#footer .wrap { padding: 1em 0; }
#footer .wrap a, #footer .wrap a:active, #footer .wrap a:hover, #footer .wrap a:visited { color: #fff; }
#footer .wrap ul.footermenu1 li { list-style: none; }
/* PC */
@media screen and (min-width: 1080px){
    #footer .wrap {
        flex-direction: row;
        max-width: 1080px;
        margin: 0 auto;
    }
    #footer .wrap ul.footermenu1 {
        display: flex;
        justify-content: space-around;
        max-width: 1080px;
        margin: 0 auto;
        font-size: 14px;
    }
    #footer .wrap #Copyright {
        margin-top: 1em;
        padding-top: 1em;
        font-size: 14px;
        border-top: solid 1px #777;
    }
    #footer .wrap #Copyright i { font-size: 14px; }
}
/* SP */
@media screen and (max-width: 1079px){
    #footer .wrap {
        flex-direction: column;
        padding: 0 0 1.5em 0;
        margin-bottom: 5em;
        font-size: 12px;
    }
    #footer .wrap ul.footermenu1 {
        display: flex;
        flex-wrap: wrap;
    }
    #footer .wrap ul.footermenu1 li { width: 50% }
    #footer .wrap ul.footermenu1 li a {
        display: block;
        padding: 1.5em 0.25em;
        border-right: 1px solid #777;
        border-bottom: 1px solid #777;
        text-decoration: none;
    }
    #footer .wrap #Copyright {
        text-align: center !important;
        margin-top: 1em;
    }
    /* tb  */
    @media screen and (min-width: 768px){
        #footer .wrap {
            padding: 0 0 1.5em 0;
            margin-bottom: 4em;
            font-size: 16px;
        }
    }
    /* se他 */
    @media screen and (max-width: 374px){
        #footer .wrap {
            padding: 0 0 1.5em 0;
            margin-bottom: 4.5em;
        }
    }
}



/*
    メンバーエリア（PC）
-------------------- */
#mem_loginArea {
    padding: 0.25em 0;
    margin: 1em 0;
}
#mem_loginArea ul {
    display: flex;
}
#mem_loginArea ul li {
    list-style: none;
}
#mem_logoutArea {
    padding: 0.25em 0;
    margin: 1em 0;
}
#mem_logoutArea ul {
    display: flex;
}
#mem_logoutArea ul li {
    list-style: none;
}
/* PC */
@media screen and (min-width: 1080px){
}
/* SP */
@media screen and (max-width: 1079px){
    /* tb  */
    @media screen and (min-width: 768px){
    }
    /* se他 */
    @media screen and (max-width: 374px){
    }
}



/*
    オーバーフローテーブル
-------------------- */
/* PC */
@media screen and (min-width: 1080px){
}
/* SP */
@media screen and (max-width: 1079px){
    .overflowTable {
        overflow: scroll;
        width: 100%;
        max-width: 100%;
    }
    .overflowTable > table {
        min-width: 800px;
    }
    .overflowTable.zaseki > table th,
    .overflowTable.zaseki > table td {
        border: 1px solid #ddd;
        vertical-align: middle;
    }
    .product.zaseki th {
        border: 1px solid #ddd;
        border-bottom: 0;
    }
    /* tb  */
    @media screen and (min-width: 768px){
    }
    /* se他 */
    @media screen and (max-width: 374px){
    }
}