@charset "UTF-8";
/* other.css */

.wrapper {
    width: calc(100% - 40px);
    max-width: 1000px;
    min-width: 100%;
}

img {
    max-width: 100%;
    display: block;
}

.bread {
    display: flex;
    justify-content: flex-start;
flex-wrap: wrap;
    padding: 30px 0 30px;
}

.bread a,
.bread span,
.bread p {
    margin-right: 8px;
    font-size: 87.5%;
}

.bread a {
    color: #325F85;
}

a {
    color: #076DA0;
}

.red {
    color: #FF0B0B!important;
}

.underline {
    text-decoration: underline!important;
}

textarea {
    font-family: 'Noto Sans JP', sans-serif;
}

table.com_tb {
    width: 100%;
    table-layout: fixed;
    border-top: 1px solid #666666;
    margin-top: 30px;
}

table.com_tb th,
table.com_tb td {
    padding: 10px 15px 10px 15px;
    font-size: 87.5%;
    border-bottom: 1px solid #666666;
    border-right: 1px solid #666666;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

table.com_tb tr:nth-child(odd) {
    background: #F2F2F2
}

table.com_tb tr:nth-child(even) {
    background: #fff;
}

table.com_tb th {
    background: #D4E4F3;
    vertical-align: middle;
}

table.com_tb tr th:last-child,
table.com_tb tr td:last-child {
    border-right: none;
}


.w5 {
    width: 5%;
}

.w10 {
    width: 10%;
}

.w15 {
    width: 15%;
}

.w20 {
    width: 20%;
}

.w25 {
    width: 25%;
}

.w30 {
    width: 30%;
}

.w35 {
    width: 35%;
}

.w40 {
    width: 40%;
}

.w45 {
    width: 45%;
}

.w50 {
    width: 50%;
}

.w55 {
    width: 55%;
}

.w60 {
    width: 60%;
}

.w65 {
    width: 65%;
}

.w70 {
    width: 70%;
}

.w75 {
    width: 75%;
}

.w80 {
    width: 80%;
}

.w85 {
    width: 85%;
}

.w90 {
    width: 90%;
}

.w95 {
    width: 95%;
}

h4 {
    font-size: 112.5%;
    font-weight: 500;
    margin-bottom: 10px;
    margin-top: 20px;
}

/*----------------------------------
cont
------------------------------------*/

.contWrap {
    background: #fafafa;
}

.cont {
    width: calc(100% - 40px);
    max-width: 1224px;
    margin: 0 auto;
    padding-bottom: 60px;
}

.inner {
    width: 980px;
    margin: 0 auto;
}

.nblock {
    margin-bottom: 50px;
}

h1 {
    font-size: 187.5%;
    font-weight: 500;
    margin-bottom: 30px;
}

/*----------------------------------
icons
------------------------------------*/

a img.icons {
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-left: 6px;
    margin-right: 6px;
    vertical-align: middle;
    margin-top: -5px;
}

/*----------------------------------
御意見・御要望
------------------------------------*/

h2 {
    font-weight: 500;
    margin-bottom: 20px;
}

h2 > span{
    font-weight: 500;
}

h3 {
    font-weight: 500;
}

h3 > span {
    font-weight: 500;
}

h4 {
    font-weight: 500;
}

h4 > span {
    font-weight: 500;
}

h2.opt01 {
    font-size: 20px;
    font-weight: 500;
    margin-bottom: 20px;
}

.op_radio label {
    position: relative;
    cursor: pointer;
    padding-left: 45px;
    margin-right: 10px;
}

.op_radio label::before,
.op_radio label::after {
  content: "";
  display: block; 
  border-radius: 50%;
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
}

.op_radio label::before {
  background-color: #fff;
  border: 2px solid #909090;
  border-radius: 50%;
  width: 30px;
  height: 30px;
  left: 0;
}

.op_radio label::after {
    background-color: #325F85;
    border-radius: 50%;
    opacity: 0;
    width: 18px;
    height: 18px;
    left: 8px;
}

.op_radio input:checked + label::before  {
    border: 2px solid #325F85;
}

.op_radio input:checked + label::after {
    opacity: 1;
}

.op_radio .visually-hidden {
    position: absolute;
    white-space: nowrap;
    border: 0;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    overflow: hidden;
    height: 1px;
    width: 1px;
    margin: -1px;
    padding: 0;
}

.op_radio input[type="checkbox"]:checked + .label::before {
    border: 1px solid #325F85;
}

.opinion dl {
    display: flex;
    flex-wrap: wrap;
}

.opinion dl dt {
    width: 30%;
    margin-bottom: 45px;
}

.opinion dl dd {
    width: 70%;
    margin-bottom: 45px;
}

.opinion dl dd textarea {
    width: 100%;
    border: 1px solid #DEDEDE;
    padding: 10px;
}

.optBt {
    display: flex;
    justify-content: center;
}

.opt_send {
    display: block;
    width: 375px;
    height: 76px;
    font-size: 18px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    text-align: center;
    cursor: pointer;
    padding: 12px 12px;
    background: #1C2445;
    color: #fff;
    line-height: 1em;
    transition: .3s;
    border: 1px solid #1C2445;
    letter-spacing: 2px;
}

.opt_clear {
    display: block;
    width: 240px;
    height: 76px;
    font-size: 18px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    text-align: center;
    cursor: pointer;
    padding: 12px 12px;
    background: #fff;
    color: #1C2445;
    line-height: 1em;
    transition: .3s;
    border: 1px solid #1C2445;
    margin-right: 20px;
}

.opt_send:hover,
.opt_clear:hover {
    cursor: pointer;
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)";
    -moz-opacity:0.7;
    -khtml-opacity: 0.7;
}

/*----------------------------------
独占禁止法第45条第1項の規定に基づく報告の内容入力
------------------------------------*/

ul.process {
    display: flex;
    margin: 30px 0 50px;
}

ul.process li {
    padding-right: 17px;
    position: relative;
}

ul.process li > span {
    width: 180px;
    height: 74px;
    background: #DEDEDE;
}

ul.process li.active > span {
    background: #325F85;
}

ul.process li > span {
    font-size: 87.5%;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

ul.process li.active > span {
    color: #fff;
}

ul.process li:after {
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 37px 0 37px 17px;
    border-color: transparent transparent transparent #DEDEDE;
    position: absolute;
    top: 0;
    right: 0;
}

ul.process li.active:after {
    border-color: transparent transparent transparent #325F85;
}

.anti_trust h3 {
    font-size: 112.5%;
    font-weight: 500;
    background: #EAEFF4;
    border: 1px solid #B6C5D1;
    padding: 12px 15px;
    margin-bottom: 30px;
}

.anti_trust dl {
    display: flex;
    flex-wrap: wrap;
}

.anti_trust dl dt {
    width: 27%;
    margin-bottom: 45px;
    margin-right: 5%;
}

.anti_trust dl dd {
    width: 68%;
    margin-bottom: 45px;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.anti_trust input {
    -moz-appearance: none;
    -webkit-appearance: none;
    outline: none;
    appearance: none;
    background-color: #fff;
    background-image: none;
    border: 1px solid #DEDEDE;
    border-radius: 0;
    color: inherit;
    font-family: inherit;
    padding: 12px 15px;
    width: 100%;
}

.anti_trust dl dd div {
    margin-bottom: 20px;
}

.anti_trust dl dd input {
    margin-bottom: 10px;
    font-size: 100%;
    font-size: 87.5%;
}

.anti_trust dl dd label {
    display: block;
    margin-bottom: 20px;
    color: #1C1C1C;
}

.anti_trust dl dd p {
    font-size: 87.5%;
}

.anti_trust dl dd textarea {
    width: 100%;
    border: 1px solid #DEDEDE;
    padding: 10px;
    margin-bottom: 10px;
    font-size: 87.5%;
}

.anti_trust dl dt .required {
    display: inline-block;
    color: #FF0B0B;
    font-size: 75%;
    padding: 2px 8px;
    border: 1px solid #FF0B0B;
    margin-left: 10px;
    margin-top: -5px;
}

.anti_trust p.p16 {
    font-size: 16px;
    margin-bottom: 30px;
}

.anti_trust dl dd label span {
    display: block;
    margin-bottom: 5px;
    color: #666666;
    font-size: 87.5%;
}

.anti_trust dl dt p {
    font-size: 87.5%;
}

.anti_trust .formBt {
    display: flex;
    justify-content: center;
}

.formBt .backBt,
.formBt .clearBt,
.formBt .cancelBt {
    display: block;
    width: 240px;
    height: 76px;
    font-size: 112.5%;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    text-align: center;
    cursor: pointer;
    padding: 0 12px;
    background: #fff;
    color: #1C2445;
    line-height: 76px;
    transition: .3s;
    border: 1px solid #1C2445;
    margin-right: 20px;
}

.formBt .sendBt {
    display: block;
    width: 375px;
    height: 76px;
    font-size: 18px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    text-align: center;
    cursor: pointer;
    padding: 0 12px;
    background: #1C2445;
    color: #fff;
    line-height: 76px;
    transition: .3s;
    border: 1px solid #1C2445;
    letter-spacing: 2px;
}

.formBt .backBt:hover,
.formBt .clearBt:hover,
.formBt .sendBt:hover {
    cursor: pointer;
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)";
    -moz-opacity:0.7;
    -khtml-opacity: 0.7;
}

.anti_trust dl dd.op_radio label {
    display: inline-block;
}

.anti_trust dl dd span.note {
    display: block;
    font-size: 14px;
    margin-top: 10px;
}


/*----------------------------------
ファイル添付用ボタン
------------------------------------*/

.tempfiles {
    display: flex;
    justify-content: space-between;
    margin-bottom: 80px;
}

#attachment label {
    display: inline-block;
    position: relative;
    background: linear-gradient(#ffffff, #E2E2E2);
    color:#1C1C1C;
    border: 1px solid #D1D1D1;
    font-size: 14px;
    width: 162px;
    height: 44px;
    line-height: 44px;
    border-radius: 4px;
    transition: all 0.3s;
    text-align: center;
}
#attachment label:hover {
    transition: all 0.4s;
    cursor: pointer;
}
#attachment label input {
    position: absolute;
    left:0;
    top:0;
    opacity: 0;
    width: 100%;
    height: 100%;
}
#attachment label input:hover {
    cursor: pointer;
}

#attachment .filename {
    font-size: 14px;
    display: block;
    margin: 10px 0 0 0;
}

#attachment p {
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 5px;
}


/*----------------------------------
公正取引委員会について
------------------------------------*/

.content {
    width: 980px;
    margin: 20px auto 0;
    padding-bottom: 60px;
}

.p_top {
    width: 100%;
    min-height: 160px;
    padding-bottom: 45px;
    background-image: url(/img/common/p_top.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
}

.p_top .bread {
    width: calc(100% - 40px);
    max-width: 1224px;
    min-width: 980px;
    margin: 0 auto;
    padding: 20px 0 20px;
}

.p_top .p_title {
    width: 980px;
    margin: 0 auto;
}

.p_top .p_title h1 {
    margin-bottom: 0;
    line-height: 1.4;
}

.doorWrap {
    padding-top: 40px;
    margin-bottom: 20px;
}

ul.doorList {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

ul.doorList li {
    width: 48%;
    margin-bottom: 20px;
}

ul.doorList li a {
    display: block;
    width: 100%;
    height: auto;
    background: #fff;
    padding: 25px 70px 25px 20px;
    border: 1px solid #cccccc;
    color: #1c1c1c;
    font-size: 112.5%;
    font-weight: 500;
    line-height: 1.4;
    position: relative;
    word-wrap: break-word;
}

ul.doorList li a:after {
    content: '';
    display: block;
    background-image: url(/img/common/link_ar.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 50%;
    right: 25px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}


/*----------------------------------
講習会等の御案内
------------------------------------*/

.sessWrap {
    padding-top: 40px;
    margin-bottom: 20px;
}

ul.sessList {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

ul.sessList li {
    width: 48%;
    margin-bottom: 40px;
}

ul.sessList > li > h2 {
    margin-top: 0;
    margin-bottom: 20px;
    border-bottom: none;
}

ul.sessList > li > h2 a {
    display: block;
    width: 100%;
    height: auto;
    background: #fff;
    padding: 25px 70px 25px 20px;
    border: 1px solid #cccccc;
    font-size: 75%;
    color: #1C1C1C;
    font-weight: 500;
    line-height: 1.4;
    position: relative;
}

ul.sessList > li > h2 a:after {
    content: '';
    display: block;
    background-image: url(/img/common/link_ar.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 50%;
    right: 25px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

ul.sessList > li > h2.nolink {
    display: block;
    width: 100%;
    height: auto;
    background: #fff;
    padding: 25px 70px 25px 20px;
    border: 1px solid #cccccc;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.4;
    position: relative;
}

ul.sessList > li > div p {
    line-height: 1.6;
    margin-bottom: 15px;
}

ul.sessList > li > div a {
    display: block;
    line-height: normal;
    color: #076DA0;
    position: relative;
    padding-left: 25px;
    margin-bottom: 5px;
}

ul.sessList > li > div a:before{
    content: '';
    display: block;
    background-image: url(/img/common/r_ar.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 5px;
    left: 0;
}

ul.sessList > li > div a.externalLink:before {
    background-image: url(/img/common/ex_link.svg);
    width: 17px;
    height: 12px;
    top: 7px;
}

ul.sessList > li span.r_note {
    display: block;
    font-size: 87.5%;
}

/*----------------------------------
委員長講演等
------------------------------------*/

.chairWrap {
    padding-top: 40px;
    margin-bottom: 20px;
}

ul.chairList li {
    border-bottom: 1px dotted #cccccc;
    padding-top: 15px;
    padding-bottom: 15px;
}

ul.chairList li a {
    display: block;
    color: #076DA0;
    padding-left: 25px;
    position: relative;
}

ul.chairList li a:before {
    content: '';
    display: block;
    background-image: url(/img/common/r_ar.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 7px;
    left: 0;
}

ul.chairList li ul {
    margin-left: 25px;
}

ul.chairList li ul li {
    border-bottom: none;
    padding-top: 0;
    padding-bottom: 0;
    margin-top: 8px;
}

ul.chairList li ul li a:before {
    top: 7px;
}

ul.chairList li .c_note {
    margin-top: 10px;
}

ul.chairList li .c_note a {
    display: inline-block;
    padding: 0;
}

ul.chairList li .c_note a:before {
    content: none;
}

/*----------------------------------
各種パンフレット
------------------------------------*/

.panfuWrap {
    padding-top: 40px;
    margin-bottom: 20px;
}

a.innerLink {
    display: block;
    color: #076DA0;
    padding-left: 25px;
    position: relative;
word-wrap: break-word;
}

a.innerLink:before {
    content: '';
    display: block;
    background-image: url(/img/common/r_ar.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 7px;
    left: 0;
}

ul.pageLinks {
    display: flex;
    justify-content: space-between;
    flex-wrap : wrap;
    margin-top: 30px;
    margin-bottom: 70px;
}

ul.pageLinks::before{
  content:"";
  display: block;
  width:240px;
  order:1;
}

ul.pageLinks::after {
    content:"";
    display: block;
    width:240px;
}

ul.pageLinks li {
    margin-bottom:10px;
    box-sizing:border-box;
    width: 240px;
    height: 60px;
}

ul.pageLinks li a {
    display: block;
    width: 100%;
    height: 100%;
    padding-left: 15px;
    padding-right: 30px;
    line-height: 60px;
    border: 1px solid #CCCCCC;
    position: relative;
    color: #1c1c1c;
}

ul.pageLinks li a span {
    display: inline-block;
    font-size: 93.75%;
    line-height: 1.4;
    vertical-align: middle;
    margin-top: -7px;
    color: #1c1c1c;
}

ul.pageLinks li a:before {
    content: '';
    display: block;
    width: 20px;
    height: 100%;
    background: #325F85;
    position: absolute;
    top: 0;
    right: 0;
}

ul.pageLinks li a:after {
    content: '';
    display: block;
    background-image: url(/img/common/b_ar.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 8px;
    height: 10px;
    position: absolute;
    top: 50%;
    right: 6px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

.panfuBlock {
    margin-bottom: 50px;
}

.panfuBlock h2 {
    font-size: 150%;
    padding-bottom: 8px;
    border-bottom: 1px solid #325F85;
    margin-top: 0;
}

ul.panfuList {
    display: flex;
    justify-content: space-between;
    flex-wrap : wrap;
}

ul.panfuList::before{
  content:"";
  display: block;
  width:240px;
  order:1;
}

ul.panfuList::after {
    content:"";
    display: block;
    width:240px;
}

ul.panfuList li {
    margin-bottom:20px;
    box-sizing:border-box;
    width: 240px;
    min-height: 323px;
}

ul.panfuList li a {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    width: 100%;
    height: 100%;
    padding: 20px 15px 15px 15px;
    border: 1px solid #CCCCCC;
}

ul.panfuList li a .img img {
    object-fit: contain;
}

ul.panfuList li a .vertical {
    width: 126px;
    margin: 0 auto;
}

ul.panfuList li a .horizontal {
    width: 206px;
    margin: 0 auto;
}

ul.panfuList li a h3 {
    font-size: 87.5%;
    font-weight: 500;
    margin-top: 15px;
    margin-bottom: 0;
    line-height: normal;
    padding-left: 0;
}

ul.panfuList li a span {
    font-size: 87.5%;
    font-weight: 400;
    display: block;
    margin-top: auto;
    line-height: normal;
}

ul.panfuList li a h3:before,
ul.panfuList li a h3:after {
    content: none;
}

/*----------------------------------
更新情報
------------------------------------*/

.updateWrap {
    padding-top: 40px;
    margin-bottom: 20px;
}

.updateWrap h2 {
    font-size: 150%;
    padding-bottom: 8px;
    border-bottom: 1px solid #325F85;
    margin-bottom: 10px;
    margin-top: 0;
}

dl.updateList {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    margin-bottom: 40px;
}

dl.updateList dt {
    width: 140px;
    padding: 12px 20px 12px 0;
    border-bottom: 1px solid #CCCCCC;
}

dl.updateList dd {
    width: calc(100% - 140px);
    padding: 12px 0 12px;
    border-bottom: 1px solid #CCCCCC;
}

dl.updateList dt:nth-last-child(2) {
    border-bottom: none;
}

dl.updateList dd:last-child {
    border-bottom: none;
}

dl.updateList dd a {
    display: block;
    color: #076DA0;
    line-height: normal;
}

/*----------------------------------
各事務所
------------------------------------*/

.p_top.hokkaido {
    background-image: url(/img/region/hokkaido_pc.jpg);
}

.p_top.tohoku {
    background-image: url(/img/region/tohoku_pc.jpg);
}

.p_top.chubu {
    background-image: url(/img/region/chubu_pc.jpg);
}

.p_top.kinki {
    background-image: url(/img/region/kinki_pc.jpg);
}

.p_top.shikoku {
    background-image: url(/img/region/shikoku_pc.jpg);
}

.p_top.chugoku {
    background-image: url(/img/region/chugoku_pc.jpg);
}

.p_top.kyusyu {
    background-image: url(/img/region/kyusyu_pc.jpg);
}

.p_top.okinawa {
    background-image: url(/img/region/okinawa_pc.jpg);
}

/*----------------------------------
北海道事務所
------------------------------------*/

.normalLinks {
    margin: 40px 0 40px;
}

.normalLinks ul {
    display: flex;
    justify-content: space-between;
    flex-wrap : wrap;
}

.normalLinks ul::before{
  content:"";
  display: block;
  width:240px;
  order:1;
}

.normalLinks ul::after {
    content:"";
    display: block;
    width:240px;
}

.normalLinks ul li {
    margin-bottom:10px;
    box-sizing:border-box;
    width: 240px;
    min-height: 60px;
}

.normalLinks ul li a {
    width: 100%;
    height: 100%;
    padding: 12px 35px 12px 15px;
    border: 1px solid #CCCCCC;
    position: relative;
    font-size: 93.75%;
    color: #1c1c1c;
    line-height: 1.4;
    display: flex;
    align-items: center;
    position: relative;
}

.normalLinks ul li a > span {
    font-size: 100%;
    line-height: 1.2;
    color: #1c1c1c;
}

.normalLinks ul li a > span span {
    font-size: 86.67%;
    line-height: 1.2;
    color: #666666;
}

.normalLinks ul li a:after {
    content: '';
    display: block;
    background-image: url(/img/common/link_ar.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

.topics h2 {
    font-size: 150%;
    padding-bottom: 8px;
    border-bottom: 1px solid #325F85;
    margin-bottom: 10px;
}

.otherlinks ul {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}

.otherlinks ul li {
    margin-right: 20px;
    margin-bottom: 15px;
}

.otherlinks ul li a {
    display: block;
    color: #076DA0;
    padding-left: 25px;
    position: relative;
}

.otherlinks ul li a:before {
    content: '';
    display: block;
    background-image: url(/img/common/r_ar.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 4px;
    left: 0;
}

/*トピックス*/
.topicsWrap {
    margin-bottom: 60px;
}

.topicsWrap h2 {
    font-size: 150%;
    padding-bottom: 8px;
    border-bottom: 1px solid #325F85;
    margin-bottom: 10px;
}

ul.topics_l li {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    border-bottom: 1px solid #ccc;
    padding: 10px 0 10px;
}

ul.topics_l li:last-child {
    border-bottom: none;
}

ul.topics_l li span.cate {
    font-size: 62.5%;
    line-height: normal;
    text-align: center;
    padding: 2px 10px 2px;
    display: inline-block;
    min-width: 88px;
    height: 21px;
    border: 1px solid #ccc;
    vertical-align: text-top;
    margin-right: 15px;
    margin-top: 2px;
}

ul.topics_l span.date {
    padding-right: 15px;
    white-space: nowrap;
}

ul.topics_l li > a {
    display: block;
    color: #076DA0;
    position: relative;
    line-height: normal;
}

ul.topics_l li span.attent {
    background: #C61A03;
    color: #fff;
    border-color: #C61A03;
}

ul.topics_l li span.session {
    background: #fff;
    color: #2C4EDE;
    border-color: #2C4EDE;
}

ul.topics_l li span.press {
    background: #fff;
    color: #066E32;
    border-color: #066E32;
}

ul.topics_l li span.info {
    background: #fff;
    color: #1C2445;
    border-color: #1C2445;
}

ul.topics_l li span.cate.anti {
    border: 1px solid #C33E16;
    color: #C33E16;
}

ul.topics_l li span.cate.pr {
    border: 1px solid #A329B9;
    color: #A329B9;
}

ul.topics_l li span.cate.gift {
    border: 1px solid #439854;
    color: #439854;
}

ul.topics_l li span.cate.subcont {
    border: 1px solid #118181;
    color: #118181;
}

ul.topics_l li span.cate.session {
    border: 1px solid #1C2445;
    color: #1C2445;
}

ul.topics_l li span.cate.cprc {
    border: 1px solid #325F85;
    color: #325F85;
}

ul.topics_l li span.cate.conf {
    border: 1px solid #7C791E;
    color: #7C791E;
}

ul.topics_l li span.cate.inter {
    border: 1px solid #00A1AF;
    color: #00A1AF;
}

ul.topics_l li span.cate.recruit {
    border: 1px solid #EB590B;
    color: #EB590B;
}

a.to_all_list {
    text-align: right;
    display: block;
    color: #076DA0;
    position: relative;
    line-height: normal;
    padding-left: 20px;
    text-indent: -16px;
    margin-top: 30px;
}

a.to_all_list:before {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4px 0 4px 6px;
    border-color: transparent transparent transparent #076DA0;
    display: inline-block;
    vertical-align: top;
    margin-top: 10px;
    margin-right: 10px;
}

/*----------------------------------
動画で分かる公正取引委員会
------------------------------------*/

.dougaBrock {
    margin-bottom: 40px;
}

.dougaBrock h2 {
    font-size: 150%;
    padding-bottom: 8px;
    border-bottom: 1px solid #325F85;
    margin-top: 0;
}

.dougaBrock h3 {
    font-size: 125%;
    font-weight: 500;
    padding-left: 15px;
    margin-bottom: 20px;
    line-height: normal;
    position: relative;
}

.dougaBrock h3:before {
    content: '';
    display: block;
    width: 6px;
    height: 30px;
    background: #C2CF2A;
    position: absolute;
    left: 0;
    top: 1px;
}

.dougaBrock h3:after {
    content: '';
    display: block;
    width: 6px;
    height: 15px;
    background: #325F85;
    position: absolute;
    left: 0;
    top: 16px;
}

ul.dougaList {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 25px;
}

ul.dougaList::before{
  content:"";
  display: block;
  width: 236px;
  order:1;
}

ul.dougaList::after {
    content:"";
    display: block;
    width: 236px;
}

ul.dougaList li {
    width: 236px;
    padding: 15px 15px 15px 15px;
    border: 1px solid #CCCCCC;
    background: #fff;
    margin-bottom: 20px;
}

ul.dougaList li > a {
    display: block;
    width: 100%;
}

ul.dougaList li > a > img {
    display: block;
    width: 100%;
}

ul.dougaList li > p {
    font-size: 87.5%;
    font-weight: 500;
    margin-top: 10px;
}

.dougaBrock a {
    color: #325F85;
}

/*----------------------------------
よくある質問コーナー(独占禁止法)
------------------------------------*/

.dkWrap {
    padding-top: 40px;
}

.q_cont {
    background: #fff;
    border: 1px solid #E8E8E8;
    padding: 35px 30px 35px 30px;
    margin-top: 30px;
}

ul.qa_cateLinks {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}

ul.qa_cateLinks li {
    margin-right: 10px;
    margin-bottom: 10px;
}

ul.qa_cateLinks li a {
    display: block;
    background: #fff;
    padding: 10px 40px 10px 10px;
    color: #076DA0;
    font-size: 87.5%;
    border: 1px solid #D0D0D0;
    border-radius: 5px;
    position: relative;
}

ul.qa_cateLinks li a:before {
    content: '';
    display: block;
    background-image: url(/img/common/link_ar_bel.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

.q_cont h2 {
    line-height: normal;
    margin-top: 30px;
    font-weight: 500;
    padding: 8px 20px 8px 20px;
    background: #E5EFF7;
    border: 1px solid #B2C4D3;
    font-size: 112.5%;
}

ul.q_list li {
    margin-top: 10px;
}

ul.q_list li a {
    display: block;
    padding: 8px 15px 8px 15px;
    border: 1px solid #D0D0D0;
    
    display: flex;
    justify-content: flex-start;
}

ul.q_list li a span {
    color: #325F85;
    display: inline-block;
    font-weight: 500;
    margin-right: 15px;
}

.a_cont {
    padding-top: 40px;
}

dl.a_list {
    margin-bottom: 20px;
}

dl.a_list dt {
    font-weight: 500;
    margin-bottom: 10px;
}

dl.a_list dt > div {
    display: flex;
}

dl.a_list h3 {
    font-size: 106.25%;
    font-weight: 500;
    margin-bottom: 10px;
    margin-top: 20px;
    padding-left: 0;
}

dl.a_list h3:before,
dl.a_list h3:after {
    content: none;
}

dl.a_list dt > div span {
    display: block;
    min-width: 30px;
    font-weight: 500;
    text-align: center;
    color: #325F85;
    margin-right: 15px;
}

dl.a_list dt > div p {
    font-weight: 500;
}

dl.a_list dd {
    display: flex;
    justify-content: flex-start;
}

dl.a_list dd > span {
    display: block;
    min-width: 30px;
    text-align: center;
    font-weight: 500;
    color: #D66767;
    margin-right: 15px;
}

dl.a_list dd p {
    margin-bottom: 10px;
}

dl.a_list dd ul {
    margin-left: 25px;
    margin-bottom: 10px;
}

dl.a_list dd ul li {
    list-style-type: disc;
}

dl.a_list dd .txt-area {
    padding: 20px 20px 10px;
    background: #DDE583;
    border: 1px solid #D0D0D0;
    border-radius: 5px;
    margin-bottom: 10px;
}

/*----------------------------------
よくある質問コーナー(下請法)
------------------------------------*/

.shitaukeWrap {
    padding-top: 40px;
}

ul.img_area_l {
    display: flex;
    justify-content: flex-start;
    margin-top: 25px;
}

ul.img_area_l li:first-child {
    margin-right: 20px;
}

.shitaukeWrap ul.q_list li > h3 {
    font-size: 106.25%;
    font-weight: 500;
    margin-bottom: 10px;
    margin-top: 25px;
    padding-left: 0;
}

.shitaukeWrap ul.q_list li > h3:before,
.shitaukeWrap ul.q_list li > h3:after {
    content: none;
}

.shitaukeWrap ul.q_list li > p {
    margin-bottom: 8px;
}

ul.q_list li a {
    margin-bottom: 10px;
}

dl.a_list dt > h3 {
    font-size: 106.25%;
    font-weight: 500;
    margin-bottom: 10px;
    margin-top: 20px;
}

dl.a_list dt > p {
    margin-bottom: 10px;
}

.img-center {
    text-align: center;
    margin-top: 20px;
    margin-bottom: 20px;
}

.img-center span {
    font-size: 87.5%;
}

.img-center img {
    margin: 0 auto 10px;
}

.a_cont h2 {
    line-height: normal;
    margin-top: 30px;
    font-weight: 500;
    padding: 8px 20px 8px 20px;
    background: #E5EFF7;
    border: 1px solid #B2C4D3;
}

div.a_cont .txt-area {
    padding: 20px 20px 20px;
    background: #DDE583;
    border: 1px solid #D0D0D0;
    border-radius: 5px;
    margin-bottom: 10px;
}

/*----------------------------------
ログイン
------------------------------------*/

dl.login_input {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    align-items: center;
    width: 580px;
    margin: 0 auto;
}

dl.login_input dt {
    width: 40px;
    margin-right: 40px;
    text-align: right;
     margin-bottom: 25px;
}

dl.login_input dd {
    width: 500px;
     margin-bottom: 25px;
}

dl.login_input dd input {
    width: 100%;
    height: 50px;
    background: #fff;
    padding: 5px 10px;
    border: 1px solid #727272;
    border-radius: 3px;
    color: #1C1C1C;
}

.login_form .login_bt,
.login_form .biz_bt {
    display: block;
    width: 375px;
    height: 76px;
    text-align: center;
    line-height: 76px;
    color: #fff;
    font-weight: 500;
    font-size: 112.5%;
    margin: 0 auto;
    border: none;
}

.login_form .login_bt:hover,
.login_form .biz_bt:hover {
    cursor: pointer;
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)";
    -moz-opacity:0.7;
    -khtml-opacity: 0.7;
}

.login_form .login_bt {
    background: #1C2445;
    margin-top: 25px;
}

.login_form .biz_bt {
    margin-top: 30px;
    background: #0097CF;
    background-image: url(/img/common/gbiz.svg);
    background-repeat: no-repeat;
    background-size: 47px 47px;
    background-position: left 75px top 50%;
    padding-left: 50px;
}

.login_form a.kanri_code {
    display: block;
    text-align: center;
    color: #076DA0;
    margin-top: 40px;
}

/*----------------------------------
報告データ確認・送信
------------------------------------*/

.anti_trust dl dd dl {
    display: flex;
}

.anti_trust dl dd dl dt,
.anti_trust dl dd dl dd {
    width: 100%;
    margin: 0;
}

.anti_trust dl dd dl dt {
    margin-bottom: 12px;
    font-size: 87.5%;
    color: #666666;
}

.anti_trust dl dd dl dd {
    margin-bottom: 35px;
}

.anti_trust dl dd span {
    font-size: 87.5%;
    display: block;
    color: #666666;
    margin-bottom: 10px;
}

/*----------------------------------
フォーム共通
------------------------------------*/

.form_common h3 {
    font-size: 112.5%;
    font-weight: 500;
    background: #EAEFF4;
    border: 1px solid #B6C5D1;
    padding: 12px 15px;
    margin-bottom: 30px;
}

.form_common dl {
    display: flex;
    flex-wrap: wrap;
}

.form_common dl dt {
    width: 27%;
    margin-bottom: 45px;
    margin-right: 5%;
}

.form_common dl dd {
    width: 68%;
    margin-bottom: 45px;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.form_common input {
    -moz-appearance: none;
    -webkit-appearance: none;
    outline: none;
    appearance: none;
    background-color: #fff;
    background-image: none;
    border: 1px solid #DEDEDE;
    border-radius: 0;
    color: inherit;
    font-family: inherit;
    padding: 12px 15px;
    width: 100%;
}

.form_common dl dd div {
    margin-bottom: 20px;
}

.form_common dl dd input {
    margin-bottom: 10px;
    font-size: 100%;
    font-size: 87.5%;
}

.form_common dl dd label {
    display: block;
    margin-bottom: 20px;
    color: #1C1C1C;
}

.form_common dl dd p {
    font-size: 87.5%;
}

.form_common dl dd textarea {
    width: 100%;
    border: 1px solid #DEDEDE;
    padding: 10px;
    margin-bottom: 10px;
    font-size: 87.5%;
}

.form_common dl dt .required {
    display: inline-block;
    color: #FF0B0B;
    font-size: 75%;
    padding: 2px 8px;
    border: 1px solid #FF0B0B;
    margin-left: 10px;
    margin-top: -5px;
}

.form_common p.p16 {
    font-size: 16px;
    margin-bottom: 30px;
}

.form_common dl dd label span {
    display: block;
    margin-bottom: 5px;
    color: #666666;
    font-size: 87.5%;
}

.form_common dl dt p {
    font-size: 87.5%;
}

.form_common .formBt {
    display: flex;
    justify-content: center;
}

.form_common dl dd dl {
    display: flex;
}

.form_common dl dd dl dt,
.form_common dl dd dl dd {
    width: 100%;
    margin: 0;
}

.form_common dl dd dl dt {
    margin-bottom: 12px;
    font-size: 87.5%;
    color: #666666;
}

.form_common dl dd dl dd {
    margin-bottom: 35px;
}

.form_common dl dd span {
    font-size: 87.5%;
    display: block;
    color: #666666;
    margin-bottom: 10px;
}

.form_common ul.op_radio {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}

.form_common ul.op_radio li {
    margin-right: 40px;
    margin-bottom: 10px;
}

.form_common .opt_send {
    display: block;
    width: 375px;
    height: 76px;
    font-size: 18px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    text-align: center;
    cursor: pointer;
    padding: 12px 12px;
    background: #1C2445;
    color: #fff;
    line-height: 1em;
    transition: .3s;
    border: 1px solid #1C2445;
    letter-spacing: 2px;
}

.form_common .opt_clear {
    display: block;
    width: 240px;
    height: 76px;
    font-size: 18px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    text-align: center;
    cursor: pointer;
    padding: 12px 12px;
    background: #fff;
    color: #1C2445;
    line-height: 1em;
    transition: .3s;
    border: 1px solid #1C2445;
    margin-right: 20px;
}

.form_common .opt_send:hover,
.form_common .opt_clear:hover {
    cursor: pointer;
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)";
    -moz-opacity:0.7;
    -khtml-opacity: 0.7;
}

/* チェックボックス01 */
ul.com_checkbox {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}

ul.com_checkbox li {
    margin-right: 30px;
    margin-bottom: 20px;
    line-height: 30px;
}

.form_common dl dd ul.com_checkbox label {
    margin-bottom: 0;
}

ul.com_checkbox input[type=checkbox] {
    display: none;
}

.checkbox01 {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding-left: 45px;
    position: relative;
    width: auto;
}

.checkbox01::before {
    background: #fff;
    border: 1px solid #909090;
    border-radius: 5px;
    content: '';
    display: block;
    width: 30px;
    height: 30px;
    top: 0;
    left: 0;
    position: absolute;
}

.checkbox01::after {
    border-right: 3px solid #fff;
    border-bottom: 3px solid #fff;
    content: '';
    display: block;
    width: 6px;
    height: 11px;
    left: 11px;
    margin-top: -7px;
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: rotate(45deg);
}

input[type=checkbox]:checked + .checkbox01::after {
    opacity: 1;
}

input[type=checkbox]:checked + .checkbox01::before {
    background: #325F85;
}

/*セレクトボックス*/
select.com_select {
    width: 396px;
    max-width: 100%;
    height: 44px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: .8em 1em;
    font-size: 87.5%;
    border-radius: 2px;
    border: solid 1px #DEDEDE;
    background-image: url(/img/common/b_ar_bk.svg);
    background-repeat: no-repeat;
    background-size: 16px 16px;
    background-position: right 20px center;
    background-color: #fff;
    color: #909090;
    margin-bottom: 10px;
}

ul.ymd {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

ul.ymd li {
    margin-right: 10px;
}

ul.ymd li  {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

ul.ymd li input {
    height: 44px;
    border-radius: 2px;
}

ul.ymd li span {
    font-size: 100%;
    margin-left: 5px;
}

ul.ymd li:first-child input{
    width: 116px;
}

ul.ymd li:nth-child(2) input,
ul.ymd li:nth-child(3) input {
    width: 76px;
}

/*----------------------------------
Free Area
------------------------------------*/

.free_area {
    width: 100%;
    margin: 40px 0 50px;
}

.free_area p,
.free_area a {
    margin-bottom: 10px;
}

.free_area .note {
    color: #C61A03;
}

.free_area h2 {
    font-size: 150%;
    padding-bottom: 8px;
    border-bottom: 1px solid #325F85;
    margin-bottom: 20px;
}

.free_area h3 {
    font-size: 125%;
    font-weight: 500;
    padding-left: 15px;
    margin-bottom: 20px;
    line-height: normal;
    position: relative;
}

.free_area h3:before {
    content: '';
    display: block;
    width: 6px;
    height: 30px;
    background: #C2CF2A;
    position: absolute;
    left: 0;
    top: 1px;
}

.free_area h3:after {
    content: '';
    display: block;
    width: 6px;
    height: 15px;
    background: #325F85;
    position: absolute;
    left: 0;
    top: 16px;
}

.free_area ul.list {
    margin-bottom: 30px;
}

.free_area ul.list li {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 10px 0 10px;
}

.free_area ul.list li span.cate {
    font-size: 62.5%;
    line-height: normal;
    text-align: center;
    padding: 2px 10px 2px;
    display: inline-block;
    min-width: 88px;
    height: 21px;
    border: 1px solid #ccc;
    vertical-align: text-top;
    margin-right: 15px;
    margin-top: 2px;
}

.free_area ul.list li span.date {
    padding-right: 15px;
    white-space: nowrap;
}

.free_area ul.list li > a {
    display: block;
    color: #076DA0;
    position: relative;
    line-height: normal;
    margin-bottom: 0;
}

.free_area ul.list li span.attent {
    background: #C61A03;
    color: #fff;
    border-color: #C61A03;
}

.free_area ul.list li span.session {
    background: #fff;
    color: #2C4EDE;
    border-color: #2C4EDE;
}

.free_area ul.list li span.press {
    background: #fff;
    color: #066E32;
    border-color: #066E32;
}

.free_area ul.list li span.info {
    background: #fff;
    color: #1C2445;
    border-color: #1C2445;
}

.free_area .list ul li span.cate.anti {
    border: 1px solid #C33E16;
    color: #C33E16;
}

.free_area ul.list li span.cate.pr {
    border: 1px solid #A329B9;
    color: #A329B9;
}

.free_area ul.list li span.cate.gift {
    border: 1px solid #439854;
    color: #439854;
}

.free_area .list ul li span.cate.subcont {
    border: 1px solid #118181;
    color: #118181;
}

.free_area ul.list li span.cate.cprc {
    border: 1px solid #325F85;
    color: #325F85;
}

.free_area ul.list li span.cate.conf {
    border: 1px solid #7C791E;
    color: #7C791E;
}

.free_area ul.list li span.cate.inter {
    border: 1px solid #00A1AF;
    color: #00A1AF;
}

.free_area a.ar {
    display: block;
    color: #076DA0;
    position: relative;
    line-height: normal;
    padding-left: 20px;
    text-indent: -16px;
}

.free_area a.ar:before {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4px 0 4px 6px;
    border-color: transparent transparent transparent #076DA0;
    display: inline-block;
    vertical-align: top;
    margin-top: 10px;
    margin-right: 10px;
    display: inline-block;
    position: static;
}

.free_area a.right {
    text-align: right;
    display: block;
    color: #076DA0;
    line-height: normal;
    margin-bottom: 10px;
}

.free_area .fl_sb {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.free_area .fl_st {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}

.free_area .ori_button img {
    width: 240px;
    height: auto;
}

.free_area .banner-items {
    display: flex;
    justify-content: space-between;
    box-sizing: border-box;
    flex-wrap: wrap;
    margin-bottom: 40px;
}

.free_area .banner-items > div {
    box-sizing: border-box;
    /* padding: 0 20px 0 0; */
    position: relative;
    width: 240px;
    max-width: 240px;
    height: 99px;
}

.free_area .banner-items > div a {
    width: 240px;
    max-width: 240px;
    display: inline-block;
    height: 99px;
}

.free_area .banner-items > div div {
    position: absolute;
    top: 50%;
    left: 20px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    width: calc(100% - 50px);
}

.free_area .banner-items img {
    width: 240px;
    max-width: 240px;
}

.free_area .banner-items .seek-banner img {
    position: relative;
    width: 40px;
    max-width: 40px;
    top: 50%;
    left: 14px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    display: inline;
}

.free_area .banner-items > div.seek-banner{
    border: 1px solid #325F85;
}

.free_area .banner-items > div.seek-banner div {
    position: absolute;
    top: 50%;
    left: 56px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    width: calc(100% - 70px);
}

.free_area .banner-items p {
    font-size: 93.75%;
    font-weight: 500;
    line-height: normal;
    margin-bottom: 0;
}

.free_area .banner-items .seek-banner p {
    width: 100%;
    font-size: 100%;
    font-weight: 500;
    display: block;
    position: absolute;
    bottom: 25px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    position: static;
    transform: none;
    text-align: left;
    margin-left: 5px;
}

/*----------------------------------
採用情報
------------------------------------*/

.p_top.recruit {
    background-image: url(/img/soshiki/recruit/recruit_pc.jpg);
}

.recruitWrap h2 {
    font-size: 150%;
    padding-bottom: 8px;
    border-bottom: 1px solid #325F85;
    margin-bottom: 20px;
    margin-top: 40px;
}

.recruitWrap p {
    margin-bottom: 10px;
}

.recruitWrap .topics {
    margin-top: 40px;
}

.to_myPage {
    background: #E5EFF7;
    border: 1px solid #B2C4D3;
    padding: 45px 110px 50px 110px;
}

.to_myPage h3 {
    font-size: 150%;
    font-weight: 500;
    text-align: center;
    margin-top: 0;
    margin-bottom: 20px;
    padding-left: 0;
}

.to_myPage h3:before,
.to_myPage h3:after {
    content: none;
}

.to_myPage p {
    margin-bottom: 10px;
}

.to_myPage a.linkbt {
    display: block;
    background: #1C2445;
    width: 375px;
    height: 76px;
    text-align: center;
    line-height: 76px;
    color: #fff;
    font-weight: 500;
    font-size: 106.25%;
    margin: 30px auto 0;
}

.to_myPage a.linkbt span {
    color: #fff;
    font-weight: 500;
    font-size: 100%;
}

.to_myPage a.linkbt span:after {
    content: '';
    display: inline-block;
    background-image: url(/img/common/ex_link_wh.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 17px;
    height: 14px;
    vertical-align: middle;
    margin-left: 8px;
}

.cblock {
    margin-bottom: 40px;
}

.crock h2 {
    font-size: 150%;
    padding-bottom: 8px;
    border-bottom: 1px solid #325F85;
}

.cblock h3 {
    font-size: 125%;
    font-weight: 500;
    padding-left: 15px;
    margin-bottom: 20px;
    line-height: normal;
    position: relative;
}

.cblock h3:before {
    content: '';
    display: block;
    width: 6px;
    height: 30px;
    background: #C2CF2A;
    position: absolute;
    left: 0;
    top: 1px;
}

.cblock h3:after {
    content: '';
    display: block;
    width: 6px;
    height: 15px;
    background: #325F85;
    position: absolute;
    left: 0;
    top: 16px;
}

.cblock > p {
    margin-bottom: 10px;
}

ul.dl_list {
    display: flex;
    justify-content: flex-start;
    margin-top: 30px;
    margin-bottom: 40px;
}

ul.dl_list li {
    width: 219px;
    margin-right: 35px;
}

ul.dl_list li a {
    display: block;
    width: 100%;
    text-align: center;
}

ul.dl_list li img {
    display: block;
    width: 219px;
    margin-bottom: 10px;
    text-align: center;
    color: #076DA0;
    font-size: 93.75%;
}

ul.dl_list li a span {
    color: #076DA0;
    display: block;
    text-align: center;
    font-size: 93.75%;
}

a.ar {
    display: block;
    color: #076DA0;
    padding-left: 25px;
    margin-bottom: 8px;
    position: relative;
}

a.ar:before {
    content: '';
    display: block;
    background-image: url(/img/common/r_ar.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 4px;
    left: 0;
}

ul.disc {
    list-style: disc;
    margin-left: 20px;
}

ul.disc li {
    margin-left: 20px;
}

.aster {
    margin-left: 20px;
}

.aster:before {
    content: '※';
    display: inline-block;
    vertical-align: top;
    width: 20px;
    height: 20px;
    margin-left: -20px;
}

.bk_gray {
    padding: 15px 20px 5px 20px;
    background: #efefef;
    margin-top: 30px;
}

.fs14 {
    font-size: 87.5%;
}

span.inblock {
    display: inline-block;
    margin-right: 10px;
}

table.achi {
    table-layout: fixed;
    width: 100%;
    margin-top: 30px;
}

table.achi th,
table.achi td {
    padding: 15px 15px 15px;
    text-align: center;
    vertical-align: middle;
    border-bottom: 1px solid #909090;
    border-right: 1px solid #909090;
}

table.achi th {
    background: #E5EFF7;
    border-top: 1px solid #909090;
}

table.achi th:last-child,
table.achi td:last-child {
    border-right: none;
}

.table_cap {
    font-size: 87.5%;
    margin-top: 10px;
}

.recruit_contact {
    border: 1px solid #727272;
    background: #fff;
    text-align: center;
    padding: 20px 0 20px;
    margin-top: 60px;
}

.recruit_contact p {
    font-size: 87.5%;
}

.recruit_contact .rc_title {
    font-weight: 500;
    margin-bottom: 10px;
    font-size: 100%;
}

.topicsWrap {
    margin-bottom: 30px;
}

.recruitWrap .otherlinks {
    margin-top: 20px;
}

/*----------------------------------
イベント情報
------------------------------------*/

.recruitWrap h2 span.kaisai {
    font-size: 66.67%;
    font-weight: 400;
}

.recruitWrap h2 span a {
    color: #076DA0;
}

.recruitWrap h3 span.red {
    color: #FF0B0B;
    font-weight: 500;
    margin-left: 15px;
}

.event_dt {
    display: block;
    background: #325F85;
    width: 375px;
    height: 76px;
    text-align: center;
    line-height: 76px;
    color: #fff;
    font-weight: 500;
    font-size: 106.25%;
    margin-top: 30px;
    margin-bottom: 20px;
}

.event_dt span {
    color: #fff;
    font-weight: 500;
    font-size: 100%;
}

.event_dt span:after {
    content: '';
    display: inline-block;
    background-image: url(/img/common/ex_link_wh.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 17px;
    height: 14px;
    vertical-align: middle;
    margin-left: 8px;
}

.kobetu {
    padding: 15px 20px 5px 20px;
    background: #efefef;
    margin-top: 30px;
    margin-bottom: 20px;
}

.kobetu p {
    color: #076DA0;
}

.kobetu p span {
    color: #076DA0;
}

.wh_box {
    border: 1px solid #727272;
    background: #fff;
    padding: 15px 15px 15px 15px;
    margin-top: 30px;
    margin-bottom: 20px;
}

.wh_box p {
    font-size: 87.5%;
    margin-bottom: 20px;
    margin-left: 20px;
}

.wh_box p.bold {
    margin-left: 0;
    margin-bottom: 10px;
}

ul.dl_list.su_intership li {
    width: 250px;
    margin-right: 0;
}

ul.dl_list.su_intership li img {
    width: 250px;
    margin-bottom: 0;
}

/*----------------------------------
申告・情報提供・相談・手続等窓口
------------------------------------*/

.com_page {
    padding-top: 40px;
}

.impInfo {
    background: #FFEFEF;
    border: 1px solid #FB0A0A;
    padding: 20px 20px 20px;
}

.impInfo p,
.impInfo span {
    color: #FF0B0B;
}

.com_page h2 {
    font-size: 150%;
    padding-bottom: 8px;
    border-bottom: 1px solid #325F85;
    margin-bottom: 20px;
    margin-top: 40px;
}

ul.com_list li {
    border-bottom: 1px solid #cccccc;
    padding-top: 15px;
    padding-bottom: 15px;
}

ul.com_list li:last-child {
    border-bottom: none;
}

ul.com_list li a {
    display: block;
    color: #076DA0;
    padding-left: 25px;
    position: relative;
}

ul.com_list li a:before {
    content: '';
    display: inline-block;
    background-image: url(/img/common/r_ar.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 6px;
    left: 0;
}

/*----------------------------------
企業結合関係の相談・届出等窓口
------------------------------------*/

.com_bt {
    display: block;
    background: #1C2445;
    width: 375px;
    height: 76px;
    text-align: center;
    line-height: 76px;
    color: #fff;
    font-weight: 500;
    font-size: 106.25%;
    margin-top: 20px;
    margin-bottom: 20px;
}

ul.madoguchi {
    display: flex;
    justify-content: space-between;
    margin-bottom: 40px;
}

ul.madoguchi li {
    width: 480px;
    border: 1px solid #666666;
    padding-top: 14px;
    padding-bottom: 20px;
    border-radius: 20px;
}

ul.madoguchi li p {
    text-align: center;
}

ul.madoguchi li p.mado_name {
    font-size: 112.5%;
    font-weight: 500;
    padding-bottom: 7px;
    border-bottom: 1px solid #666666;
    margin-bottom: 10px;
}

ul.madoguchi li a.tel {
    display: block;
    position: relative;
    text-align: center;
    font-family: 'Roboto', sans-serif;
    font-size: 187.5%;
    font-weight: 500;
    text-align: center;
    margin-top: 15px;
}

ul.madoguchi li a.tel span {
    font-size: 53.33%;
}

ul.madoguchi li a.tel:before {
    content: '';
    display: inline-block;
    background-image: url(/img/common/tel_ic.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 20px;
    height: 26px;
    vertical-align: middle;
    margin-right: 10px;
    margin-top: -2px;
}

h2.no_line {
    border-bottom: none;
}

h2 span.fs18 {
    display: inline-block;
    vertical-align: middle;
    font-size: 75%;
    font-weight: 400;
    margin-left: 20px;
}

.asterNo {
    display: flex;
    justify-content: flex-start;
}

.asterNo span {
    display: inline-block;
    width: 48px;
}

.img-area {
    margin-top: 20px;
    margin-bottom: 20px;
}

.com_page > p {
    margin-bottom: 10px;
}

.com_page h3 {
    font-size: 125%;
    font-weight: 500;
    padding-left: 25px;
    margin-bottom: 20px;
    margin-top: 30px;
    line-height: normal;
    position: relative;
}

.com_page h3:before {
    content: '';
    display: block;
    width: 6px;
    height: 30px;
    background: #C2CF2A;
    position: absolute;
    left: 0;
    top: 1px;
}

.com_page h3:after {
    content: '';
    display: block;
    width: 6px;
    height: 15px;
    background: #325F85;
    position: absolute;
    left: 0;
    top: 16px;
}

.com_page h3.no_line {
    padding-left: 0;
}

.com_page h3.no_line:before,
.com_page h3.no_line:after {
    content: none;
}

ul.flex {
    display: flex;
    justify-content: flex-start;
}

ul.flex li:first-child {
    margin-right: 30px;
}

.mail_ad {
    font-size: 125%;
    text-align: center;
    font-family: 'Roboto', sans-serif;
    border: 1px solid #666666;
    width: 480px;
    max-width: 100%;
    padding: 10px 0 10px 0;
    margin-top: 20px;
}

/*----------------------------------
認定確約計画（企業結合に係るものを除く）に反する行為についての情報提供窓口
------------------------------------*/

.gray_box {
    padding: 30px 30px 30px 30px;
    background: #efefef;
    margin-top: 30px;
    margin-bottom: 20px;
}

.tantoka {
    font-size: 112.5%;
    font-weight: 500;
    margin-bottom: 20px;
}

/*----------------------------------
物流特殊指定の考え方についての相談
------------------------------------*/

.emph {
    color: #325F85;
    font-weight: 500;
    font-size: 112.5%;
    text-decoration: underline;
}

/*----------------------------------
202211
------------------------------------*/

hr {
    display: none;
}

a {
    word-wrap: break-word;
    overflow-wrap: break-word
}

/* ページ内ジャンプ */
ul.linkjump {
    margin: 0.5em 10px 0 11px;
    padding: 0;
}
ul.linkjump li {
    float: left;
    margin: 0.2em 0 0.2em 0;
    padding: 3px 16px 1px 20px;
    line-height: 1.2em;
    position: relative;
}
ul.linkjump li:before {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 8px;
    border-color: transparent transparent transparent #076DA0;
    position: absolute;
    top: 12px;
    left: 0;
    transform: rotate(90deg);
}

p.filelink a.no_ic {
    padding-left: 0;
}

p.filelink a.no_ic:before {
    content: none;
}

.conventional_list ul {
    margin: 0.7em 5px 0.7em 0;
    padding: 0 0 0 8px;
}

ul li a.innerLink {
    display: inline;
}

ul li a.innerLink:before {
    top: 3px;
}

a.externalLink {
    padding-left: 25px;
    margin-bottom: 5px;
    position: relative;
}

a.externalLink:before {
    content: '';
    display: block;
    background-image: url(/img/common/ex_link.svg);
    width: 17px;
    height: 12px;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 7px;
    left: 0;
}

ul.img_horizon {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}

ul.img_horizon li {
    margin-right: 15px;
    margin-bottom: 15px;
}

p.pagelinkout {
    clear: both;
    padding-left: 25px;
    margin-bottom: 5px;
    position: relative;
}

p.pagelinkout:before {
    content: '';
    display: block;
    background-image: url(/img/common/ex_link.svg);
    width: 17px;
    height: 12px;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 7px;
    left: 0;
}

.img-left > a.externalLink {
    padding-left: 0;
    margin-bottom: 0;
}

.img-left > a.externalLink:before {
    content: none;
}

table.noborder {
    border: none;
    margin-top: 10px;
}

table.noborder th,
table.noborder td {
    border: none;
    padding: 1px 5px;
}

p.pagelinkout a.externalLink {
    padding: 0;
    margin: 0;
}

p.pagelinkout a.externalLink:before {
    content: none;
}

.seidoList > ul {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}

.seidoList > ul > li {
    width: 32%;
    margin-right: 2%;
    margin-bottom: 20px;
    padding: 0 20px 20px;
    border-radius: 20px;
    height: 170px;
    position: relative;
}

.seidoList > ul > li:nth-child(3n) {
    margin-right: 0;
}

.seidoList > ul > li h4 {
    font-size: 100%;
    line-height: 1.2;
    text-align: center;
    margin-top: 15px;
}

.seidoList > ul > li h4 span {
    font-size: 112.5%;
}

.seidoList > ul > li p {
    font-size: 87.5%;
    text-align: center;
    color: #C33434;
    margin-top: 10px;
    font-weight: 500;
}

.seidoList > ul > li a {
    text-align: center;
    line-height: 1.3;
    font-size: 87.5%;
}

.seidoList > ul > li a:hover {
    text-decoration: underline;
}

.seidoList > ul > li ul li {
    text-align: center;
    line-height: 1.4;
}

.seidoList > ul > li ul.se_flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.seidoList > ul > li ul.se_flex li {
    width: 50%;
}

h5 {
    margin: 0.7em 0 0.56em 0;
    line-height: 1.5em;
}

.bukai {
    width: 640px;
    max-width: 100%;
    margin: 30px auto 30px;
}

