@charset "utf-8";
/* CSS Document */
/*------------------
  サービスページ
-------------------*/ 
.service .main_contents .jigyou_box .wrap {
    display: flex;
    justify-content: space-between;    
}
.service .main_contents .jigyou_box .wrap .left_box {
    width: 47%;
}
.service .main_contents .jigyou_box .wrap .left_box h2 {
    font-size: 2rem;
}
.service .main_contents .jigyou_box .wrap .left_box h2 span {
    color: #004097;
    font-size: 1rem;
    display: inline-block;
    margin-top: 2rem;    
}
.service .main_contents .jigyou_box .wrap .left_box p {
    text-align: left;
}
.service .main_contents .jigyou_box .wrap .right_box {
    width: 47%;    
}
.service .main_contents .jigyou_box .wrap .right_box img {
    width: 100%;
    height: auto;
}
.service .main_contents .jigyou_box .area {
    margin-top: 3rem;   
}
/*20240419追記*/
.service .main_contents .contact_box {
    background: #fff;
}
/*------------------
  採用情報ページ
-------------------*/ 
.recruit .main_contents section:nth-child(2) {
    background: none;
}
/*------------------
  採用情報ページ・会社概要共通
-------------------*/ 
.company .gaiyou_box table,
.recruit .gaiyou_box table {
    margin: 0 auto;
    max-width: 787px;
    width: 100%;
} 
.company .gaiyou_box table tr,
.recruit .gaiyou_box table tr {
    border-bottom: 2px dotted #a6a6a7;
} 
.company .gaiyou_box table tr th,
.recruit .gaiyou_box table tr th {
    width: 20%;
    font-weight: bold;
    text-align: left;
    padding: 1.25rem 0 1.25rem 1rem;
    vertical-align: middle;
} 
.company .gaiyou_box table tr td,
.recruit .gaiyou_box table tr td {
    padding: 1.25rem 0 1.25rem 2rem;
    text-align: left;
}
.company .gaiyou_box table tr td span {
    font-weight: bold;
    display: inline-block;
    margin-left: -0.5rem;
}
.company .gaiyou_box table tr td .mg {
    margin-top: 0.75rem;    
}
/*------------------
  会社概要ページ
-------------------*/ 
.company .main_contents section:nth-child(2) {
    background: none;
}
.company .main_contents .message_box .inner {
    display: flex;
    justify-content: space-between;
}
.company .main_contents .message_box .txt_wrap {
    width: 58%;
    text-align: left;
}
.company .main_contents .message_box .txt_wrap span {
    display: block;
    text-align: right;
    margin-top: 3rem;
}
.company .main_contents .message_box .txt_wrap h2 {
    text-align: left;
}
.company .main_contents .message_box .photo {
    width: 38%;
}
.company .main_contents .message_box .photo img {
    width: 100%;
    height: auto;
}
.company .main_contents .gaiyou_box .map {
    max-width: 787px;
    width: 100%;
    margin: 2rem auto 0rem;

}
/*------------------
  問い合わせ・確認・Thanks共通
-------------------*/
.step {
    margin-bottom: 2.5rem;
}
.step ul {
    display: flex;
    justify-content: space-between;
    max-width: 460px;
    width: 100%;
    margin: 0 auto;
    position: relative;
} 
.step ul li {
    border: 1px solid #192350;
    padding: 0.75rem 1.2rem 0.5rem 0.75rem;
    background-color: #fff;
}
.step ul li:nth-child(1) {
    background-color: #192350;
    color: #fff;
}
.step ul:after {
    content: "";
    border-top: 2px dotted #192350;
    max-width: 460px;
    display: block;
    width: 100%;
    position: absolute;
    top: 50%;
    z-index: -10;
}
/*------------------
  問い合わせページ
-------------------*/
.contact .input_box .read span {
    font-size: 0.8rem;
    color: #808080;
} 
.contact .input_box table {
    margin-top: 2rem;
    max-width: 700px;
    width: 100%;
    margin: 0 auto;
} 
.contact .input_box table tr {
    padding-bottom: 1.2rem;
    display: flex;
} 
.contact .input_box table tr th {
    width: 30%;
    font-weight: bold;
    text-align: left;
    vertical-align: top;
}
.contact .input_box table tr th span {
    font-size: 12px;
    padding: 0.5rem;
    background-color: #ccc;
    margin-right: 10px;
}
.contact .input_box table tr th .must {
    background-color: #ffe000;
}
.contact .input_box table tr td {
    padding-left: 2rem;
    text-align: left;
    width: 70%;
}
.contact .input_box table tr td label {
    display: block;
    width: 100%;
}
.contact .input_box table tr td select {
    width: 10rem;
    font-size: 0.9rem;
    padding: 0.5rem;
} 
.contact .input_box table tr td input {
    width: 20rem;
    padding: 0.5rem;
    font-size: 1rem;
}
.contact .input_box table tr td input[type="radio"] {
    width: auto;
}
.contact .input_box table tr td input::placeholder,
.contact .input_box table tr td textarea::placeholder {
    color: #b3b3b3;
}
.contact .input_box table tr td textarea {
    width: 100%;
    padding: 0.5rem;
    font-size: 1rem;
    min-height: 15rem;
} 
.contact .input_box table tr .check input {
    width: 1.3rem;
}
.contact  .main_contents .doui a {
    color: blue;
}
.button input, .btn_confirm input {
    border: none;
}
.contact  .main_contents .tel {
    margin-top: 3rem;
}
.contact  .main_contents .tel p:nth-child(1) {
    color: #666;
    font-size: 0.75rem;
}
.contact .main_contents .tel p:nth-child(2) a {
    font-size: 2rem;
    color: #004097;
}
/*------------------
  確認ページ
-------------------*/
#confirm .step ul li:nth-child(1),
#confirm .step ul li:nth-child(2) {
    background-color: #192350;
    color: #fff;
}
#confirm .button {
    display: flex;
    max-width: 600px;
    margin: 0 auto;
}
#confirm .button input {
    max-width: 260px;
}
#confirm .button input:nth-child(1) {
    background-color: #a2a2a2;
}
#confirm .input_box table tr th {
    padding: 0.5rem 0 0.5rem 0.5rem;
}
#confirm .input_box table tr td {
    padding: 0.5rem 1rem;
    background-color: #eee;
}
/*------------------
  Thanksページ
-------------------*/ 
.thanks .main_contents h2 {
    line-height: 1.5;
    font-size: 2rem;
    color: #333;
}
.thanks .step ul li {
    background-color: #192350;
    color: #fff;
}
.thanks .thanks_box span {
    font-size: 0.8rem;
    color: #808080;
}


/*------------------
  プライバシーポリシー・推奨環境ページ
-------------------*/ 
.privacy .main_contents .inner,
.requirements .main_contents .inner {
    text-align: left;
}
.privacy .main_contents .inner dl,
.requirements .main_contents .inner dl {
    margin-bottom: 3rem;
}
.privacy .main_contents .inner dl dt,
.requirements .main_contents .inner dl dt {
    font-size: 1.5rem;
    margin-bottom: 1.2rem;
    padding-bottom: 0.25rem;
    border-bottom-width: 1px;
    border-bottom-style: dashed;
    border-bottom-color: #004097;
    text-indent: -1em;
    padding-left: 1em; 
}
.privacy .main_contents .inner dl dt:before,
.requirements .main_contents .inner dl dt:before {
    content: "";
    padding-right: 13px;
    border-left: 3px solid #004097;
    margin: 10px 0px;
}
.privacy .main_contents .inner dl dd ul li,
.requirements .main_contents .inner dl dd ul li {
    list-style-type: disc;
    margin-left: 1rem;
}
.privacy .main_contents .inner dl dd a {
    color: blue;
}

/*------------------
  スマホ対応
-------------------*/   
@media screen and (max-width:501px) {
/*------------------
  サービスページ
-------------------*/ 
.service .main_contents .jigyou_box .wrap {
    display: block;
}
.service .main_contents .jigyou_box .wrap .left_box {
    width: 100%;
}
.service .main_contents .jigyou_box .wrap .right_box {
    width: 100%;
    margin-top: 1rem;
}
.service .main_contents .jigyou_box .wrap .left_box h2 {
    font-size: 1.5rem;
}
/*------------------
  採用ページ
-------------------*/
.recruit .recruit_box .line {
    line-height: 1.7;
}
/*------------------
  採用情報ページ・会社概要共通
-------------------*/ 
.company .gaiyou_box table tr,
.recruit .gaiyou_box table tr {
    border-bottom: none;
}
.company .gaiyou_box table tr th,
.recruit .gaiyou_box table tr th {
    width: 100%;
    display: block;
    font-weight: bold;
    padding: 1rem 0 1rem 0rem;
    vertical-align: middle;
    text-align: center;
    border: 1px solid #ccc;
    background: #f5f5f5;
}
.company .gaiyou_box table tr td,
.recruit .gaiyou_box table tr td {
    padding: 1.25rem 1rem 1.25rem 1rem;
    width: 100%;
    display: block;
    border: 1px solid #ccc;
}
/*------------------
  会社概要ページ
-------------------*/ 
.company .main_contents .message_box .inner {
    display: block;
}
.company .main_contents .message_box .txt_wrap {
    width: 100%;
}
.company .main_contents .message_box .txt_wrap span {
    margin-top: 1rem;
    margin-bottom: 1rem;
}
.company .main_contents .message_box .txt_wrap h2 {
    text-align: center;
}
.company .main_contents .message_box .photo {
    width: 100%;
}
/*------------------
  問い合わせページ
-------------------*/
.contact .input_box table tr {
    display: block;
}
.contact .input_box table tr th {
    display: block;
    width: 100%;
    padding-bottom: 0.5rem;
}
.contact .input_box table tr td {
    display: block;
    width: 100%;
    padding-left: 0rem;
}
.contact .input_box table tr td input {
    width: 100%;
}
.contact .main_contents .tel p:nth-child(2) a {
    font-size: 1.5rem;
}
/*------------------
  問い合わせ・確認・Thanks共通
-------------------*/
.step ul li {
    font-size: 12px;
}
/*------------------
  確認ページ
-------------------*/
#confirm .input_box table tr td {
    background-color: #eee;
    padding: 1rem;
}
#confirm .button {
    display: block;
}
/*------------------
  Thanksページ
-------------------*/
.thanks .main_contents .inner p {
    text-align: left;
}
.thanks .main_contents h2 {
    font-size: 1.5rem;
}

}










