/*+各種マスタ：仕入先登録（仕入先マスタ）CSS*/

/*+表示条件 filter_supplier*/
/**仕入先コード .filter_supplier .div_1*/
.filter_supplier .div_1 .div_flex{
    width: 95%;
    display: flex;
    align-items: center;
    margin: 0 auto;
}

.filter_supplier .div_1 .div_flex div{
    width: 50%;
}

.filter_supplier .div_1 .div_flex div p{
    text-align: center;
    margin-bottom: 0.5em;
}

/*左画像*/
.filter_supplier .div_1 .div_flex div img{
    width: 40%;
}

/*右画像*/
.filter_supplier .div_1 .div_flex:last-of-type img{
    width: 35%;
    height: fit-content;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

/**キーワード .filter_supplier .div_2*/
.filter_supplier .div_2 > p:first-of-type{
    width: 50%;
    margin-left: 1em;
    margin-bottom: 1em;
}

.filter_supplier .div_2 .div_flex{
    width: 95%;
    display: flex;
    margin: 0 auto;
}

/*画像と並べるためのdiv*/
.filter_supplier .div_2 .div_flex > div:first-of-type{
    width: 50%;
}

/*//全角・半角を区別する*/
.filter_supplier .div_2 .div_flex div .div_2_1{
    width: 100%;
}

.filter_supplier .div_2 .div_flex div .div_2_1 h4{
    font-size: medium;
    font-weight: normal;
    color: black;
    margin-bottom: 0;
}

.filter_supplier .div_2 .div_flex .div_2_1 p:first-of-type{
    margin-left: 1em;
}

.filter_supplier .div_2 .div_flex .div_2_1 p:last-of-type{
    text-align: center;
    font-size: 17px;
    font-weight: bold;
}

/*table*/
.filter_supplier .div_2 .div_flex .div_2_1 table{
    width: 95%;
    margin: 0 auto;
}

.filter_supplier .div_2 .div_flex .div_2_1 table th{
    width: 28%;
}

/*区別する*/
.filter_supplier .div_2 .div_flex .div_2_1 table tr:first-of-type th{
    padding-right: 3%;/*区別しない と縦列揃える*/
}

.filter_supplier .div_2 .div_flex .div_2_1 table tr:first-of-type th::before{
    content: "";
    display: inline-block;
    width: 25px;
    height: 25px;
    background-image: url(../common_img/check_on.png);
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 0.4em;
}

/*区別しない*/
.filter_supplier .div_2 .div_flex .div_2_1 table tr:last-of-type th::before{
    content: "";
    display: inline-block;
    width: 25px;
    height: 25px;
    background-image: url(../common_img/check_off.png);
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 0.4em;
}

.filter_supplier .div_2 .div_flex .div_2_1 table td ul{
    padding: 0;
    margin: 0;
}

.filter_supplier .div_2 .div_flex .div_2_1 table td ul li{
    width: 100%;
    display: flex;
}

.filter_supplier .div_2 .div_flex .div_2_1 table td ul li span{
    display: inline-block;
    width: 55%;
    color: #FF0000;
    font-weight: bold;
    margin: 0 0 0 auto;
}

/*不同*/
.filter_supplier .div_2 .div_flex .div_2_1 table tr:first-of-type td ul li:last-child span{
    color: #0084FF;
}

/*//キーワードの一致条件 .filter_supplier .div_2 .div_2_2*/
.filter_supplier .div_2 .div_2_2{
    width: 100%;
}

.filter_supplier .div_2 .div_2_2 > p:first-of-type{
    width: 100%;
    text-align: center;
    font-size: 17px;
    font-weight: bold;
    margin: 0.3em 0;
}

.filter_supplier .div_2 .div_2_2 h4{
    font-size: medium;
    font-weight: normal;
    color: black;
    margin-bottom: 0;
}

/*table*/
.filter_supplier .div_2 .div_flex .div_2_2 table{
    width: 95%;
    margin: 0 auto;
}

.filter_supplier .div_2 .div_flex .div_2_2 table th{
    width: 28%;
}

.filter_supplier .div_2 .div_flex .div_2_2 table td ul{
    padding: 0;
    margin: 0;
}

.filter_supplier .div_2 .div_flex .div_2_2 table td ul li{
    width: 100%;
    display: flex;
    padding-left: 0;
}

/*部分p*/
.filter_supplier .div_2 .div_flex .div_2_2 table .tr_3 p{
    width: 100%;
    display: flex;
    align-items: center;
}

/*完全一致の下li*/
.filter_supplier .div_2 .div_flex .div_2_2 table .tr_4 ul li:last-of-type{
    width: 100%;
}

/*ul span*/
.filter_supplier .div_2 .div_flex .div_2_2 table span{
    display: inline-block;
    margin: 0 0 0 auto;
}

/*前方 後方 完全一致spanサイズ*/
.filter_supplier .div_2 .div_flex .div_2_2 table .tr_1 td span,
.filter_supplier .div_2 .div_flex .div_2_2 table .tr_2 td span,
.filter_supplier .div_2 .div_flex .div_2_2 table .tr_4 td span:first-of-type{
    width: 81%;
}

/*部分の下 完全一致の下 spanサイズ*/
.filter_supplier .div_2 .div_flex .div_2_2 table .tr_3 .spa_1,
.filter_supplier .div_2 .div_flex .div_2_2 table .tr_4 ul li:last-of-type .spa_1{
    width: 55%;
}

/*◯*/
.filter_supplier .div_2 .div_flex .div_2_2 table .maru{
    position: relative;
}

.filter_supplier .div_2 .div_flex .div_2_2 table .maru::before{
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 3px solid #FF0000;
    border-radius: 50%;
    position: absolute;
    bottom: 15%;
}

/*部分◯*/
.filter_supplier .div_2 .div_flex .div_2_2 table .tr_3 p .spa_1{
    position: relative;
}

.filter_supplier .div_2 .div_flex .div_2_2 table .tr_3 p .spa_1::before{
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 3px solid #FF0000;
    border-radius: 50%;
    position: absolute;
    bottom: 15%;
    left: 2.25em;
}

/*前方 後方✕*/
.filter_supplier .div_2 .div_flex .div_2_2 table .bastu::before{
    content: "×";
    display: inline-block;
    width: 0;
    height: 0;
    color: #0084FF;
    font-size: 30px;
    font-weight: bold;
    margin-top: -3.5%;
    margin-left: -1%;
}

/*完全一致✕*/
.filter_supplier .div_2 .div_flex .div_2_2 table .tr_4 .spa_1{
    position: relative;
}

.filter_supplier .div_2 .div_flex .div_2_2 table .tr_4 .spa_1::before{
    content: "×";
    display: inline-block;
    width: 0;
    height: 0;
    color: #0084FF;
    font-size: 30px;
    font-weight: bold;
    position: absolute;
    top: -43%;
    left: 1em;
}

/*右画像*/
.filter_supplier .div_2 .div_flex img{
    width: 35%;
    height: fit-content;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

/**項目選択 .filter_supplier .div_3*/
.filter_supplier .div_3 > p:first-of-type{
    width: 50%;
    padding-left: 1em;
    margin-bottom: 1em;
}

.filter_supplier .div_3 .div_flex{
    width: 95%;
    display: flex;
    margin: 0 auto;
}

/*左table*/
.filter_supplier .div_3 table{
    width: 50%;
    height: fit-content;
    margin: 0;
}

.filter_supplier .div_3 table th{
    height: 40px;
    line-height: 40px;
    text-align: left;
    background-color: #ececff;
    padding-left: 1em;
}

.filter_supplier .div_3 table td{
    padding: 1em 0;
}

.filter_supplier .div_3 table .tr_2 td img{
    width: 50%;
    margin-left: 2.5%;
}

.filter_supplier .div_3 table .tr_4 td img{
    width: 95%;
}

/*右画像*/
.filter_supplier .div_3 img{
    width: 30%;
    height: fit-content;
}

/*+仕入先マスタ*/
/*//CSV supplier table*/
.supplier table{
    width: 95%;
    margin: 0 auto;
}

.supplier table th{
    width: 17.75%;
    padding: 0.2em 0;
}

/**一覧の表示・更新と新規登録 supplier div_1*/
.supplier .div_1{
    width: 100%;
}

.supplier .div_1 .div_flex{
    width: 95%;
    display: flex;
    justify-content: space-around;
    margin: 0 auto;
    position: relative;/*.maker .div_1 .div_flex > p:last-of-typeの親*/
}

.supplier .div_1 .div_flex div{
    width: 45%;
}

.supplier .div_1 .div_flex div p{
    width: fit-content;
    height: 35px;
    line-height: 35px;
    color: #585A67;
    letter-spacing: 0.05em;
    text-decoration: underline;
    border: 1px solid #E2E2E2;
    border-radius: 4px;
    padding: 0 0.5em;
    margin-bottom: 1em;
}

.supplier .div_1 .div_flex div img{
    width: 100%;
    height: fit-content;
}

/*//新規登録 supplier div_2*/
.supplier .div_2 > p:first-of-type,
.supplier .div_2 > p:nth-of-type(2){
    width: 100%;
    padding-left: 1em;
}

/*新規登録ボタン*/
.supplier .div_2 > p:first-of-type .spa_1{
    display: inline-block;
    width: 14%;
    display: inline-flex;
    align-items: center;
    vertical-align: middle;
    margin-left: 0.2em;
}

.supplier .div_2 > p:first-of-type .spa_1::before{
    content: "";
    display: inline-block;
    width: 115px;
    height: 33px;
    background-image: url(img/button_new.png);
    background-repeat: no-repeat;
    background-size: contain;
}

.supplier .div_2 > p:nth-of-type(2){
    padding-left: 2em;
    margin-top: 1.5em;
    margin-bottom: 0.5em;
}

/*この色の項目は～(現在未使用項目)*/
.supplier .div_2 .unused{
    background-color: #A3A2A2;
}

/*各項目tabel*/
.supplier .div_2 table,
.supplier .div_2 table p{
    font-size: 15px;
}

.supplier .div_2 table th{
    width: 10%;
}

.supplier .div_2 table td{
    width: calc(50% - 10%);
}

.supplier .div_2 table td h4{
    font-weight: normal;
    background-color: #EDECEC;
    margin: 0;
}

/*必須項目*/
.supplier .div_2 table .spa_2{
    display: block;
    color: red;
}

/*//左：FAX・TEL2・仕入先部署名・役職名　右：税転嫁 tr_9*/
.supplier .div_2 table .tr_9 td{
    padding: 0;
}

.supplier .div_2 table .tr_9 td .div_flex{
    width: 100%;
    display: flex;
    align-items: stretch; /*数が違う左右の要素の高さを揃える*/   
}

.supplier .div_2 table .tr_9 td .div_flex .div_left,
.supplier .div_2 table .tr_9 td .div_flex .div_right{
    width: 50%;
}

.supplier .div_2 table .tr_9 td .div_flex .div_left{
    display: flex;
    flex-direction: column;
    flex: 1; /*align-items: stretch;のために必要*/
    border-right: 1px solid #D8DCDE;
    box-sizing: border-box;
}

.supplier .div_2 table .tr_9 td .div_flex .div_right{
    flex: 1; /*align-items: stretch;のために必要*/
}

.supplier .div_2 table .tr_9 td .div_flex .div_left div{
    width: 100%;
    display: grid;
    grid-template-columns: 20.1% 1fr;/*横幅 h4:20% p:残り*/
    flex: 1; /*align-items: stretch;のために必要*/
}

/*border*/
.supplier .div_2 table .tr_9 td .div_flex .div_left div:not(div:last-of-type){
    border-bottom: 1px solid #D8DCDE;
}

.supplier .div_2 table .tr_9 td .div_flex .div_left div h4{
    display: flex;/*縦横中央寄せのためのflex*/
    align-items: center;
    justify-content: center;
    border-right: 1px solid #D8DCDE;
}

.supplier .div_2 table .tr_9 td .div_flex .div_left div p{
    padding: 0.35em 0.75em;
    margin: auto 0;
}


/*右：税転嫁レイアウト*/
.supplier .div_2 table .tr_9 td .div_flex .div_right h4{
    width: auto;
    height: 35px;
    line-height: 35px;
    border-bottom: 1px solid #D8DCDE;
    padding-left: 6%;
}

.supplier .div_2 table .tr_9 td .div_flex .div_right div{
    width: 100%;
    padding: 0.35em 0.75em;
}

.supplier .div_2 table .tr_9 td .div_flex .div_right ul{
    width: 90%;
    list-style-type: disc;
    margin: 0.5em auto;
}

.supplier .div_2 table .tr_9 td .div_flex .div_right li{
    line-height: 1.8em;
}

/*//適格請求書発行事業者登録番号（先頭Tは含まない）tr_15_td*/
.supplier .div_2 table .tr_15_td{
    padding: 0 ;
}

.supplier .div_2 table .tr_15_td h4{
    width: 100%;
    height: 35px;
    line-height: 35px;
    border-bottom: 1px solid #D8DCDE;
    padding-left: 2%;
}

.supplier .div_2 table .tr_15_td div{
    padding: 0.35em 0.75em;
}

/*//更新・削除  supplier div_3*/
.supplier .div_3 div{
    width: 95%;
    margin: 0 auto;
}

.supplier .div_3 div:first-of-type{
    margin-bottom: 2em;
}

.supplier .div_3 h4{
    font-weight: normal;
    color: black;
    margin-bottom: 0;
}

/*h4左丸*/
.supplier .div_3 h4::before{
    content: "●";
    display: inline-block;
    font-size: 20px;
}

.supplier .div_3 div p{
    padding-left: 1em;
}

/*更新ボタン*/
.supplier .div_3 .spa_1{
    display: inline-flex;
    align-items: center;
    margin: 0 0.2em;
}

.supplier .div_3 .spa_1::before{
    content: "";
    display: inline-block;
    width: 83px;
    height: 35px;
    line-height: 35px;
    background-image: url(img/button_registration.png);
    background-repeat: no-repeat;
    background-size: contain;
}

/*削除ボタン*/
.supplier .div_3 .spa_2{
    display: inline-flex;
    align-items: center;
    margin: 0 0.2em;
}

.supplier .div_3 .spa_2::before{
    content: "";
    display: inline-block;
    width: 83px;
    height: 35px;
    line-height: 35px;
    background-image: url(img/button_delete.png);
    background-repeat: no-repeat;
    background-size: contain;
}

