@charset "utf-8";

/**************************************
base
**************************************/
/*--- reset ---*/
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
   margin: 0;
   padding: 0;
   border: 0;
   outline: 0;
   background: transparent;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
   display: block;
}
html {
   font-size: 62.5%;
}
body {
   line-height: 1;
   font-family: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', 'verdana', sans-serif;
   font-size: 1.6em;
   color: #5b5b5b;
   overflow-x: hidden;
}
/* フッター下部固定用 */
body,
#wrapper {
   display: flex;
   flex-direction: column;
   min-height: 100vh;
}
footer {
   margin-top: auto;
}
a {
   margin: 0;
   padding: 0;
   vertical-align: baseline;
   background: transparent;
   text-decoration: none;
}
ul {
   list-style: none;
}
table {
   border-collapse: collapse;
   border-spacing: 0;
}
input,
select {
   vertical-align: middle;
}
.inner1400 {
   width: 100%;
   max-width: 1400px;
   margin: 0 auto;
}
.to_link {
   text-align: right;
}
.to_link a {
   font-size: 1.3rem;
   color: #5b5b5b;
}
#page-top {
   position: fixed;
   right: 15px;
   bottom: 55px;
   background-color: #0054a6;
   border-radius: 50%;
   width: 80px;
   height: 80px;
}
#page-top a {
   width: 80px;
   height: 65px;
   padding-top: 15px;
   border-radius: 50%;
   line-height: 1.6em;
   display: block;
   color: #fff;
   text-align: center;
}

/**************************************
header
**************************************/
header {
   border-top: solid 5px #0054a6;
   font-size: 0;
   position: relative;
   z-index: 50;
}
header h1 {
   display: inline-block;
   vertical-align: top;
   width: 264px;
   padding: 20px 0 20px 140px;
   position: relative;
}
header h1 a.main_logo {
   position: absolute;
   left: 0;
   top: -5px;
}

/**************************************
contents
**************************************/
/* スライダー */
.content .slider {
   width: 100%;
   height: auto;
}
.content video {
   display: block;
   width: 100%;
   max-width: 1400px;
   margin: 0 auto;
   object-fit: contain;
}
/* トップページ */
.top_topic {
   width: 100%;
   font-size: 0;
   display: flex;
   justify-content: space-between;
   margin: 15% 0;
}
.top_topic li {
   display: inline-block;
   vertical-align: top;
   width: 23.2%;
   max-width: 324px;
   font-size: 1.6rem;
   line-height: 0;
}
.top_topic li img {
   width: 100%;
   height: auto;
}
.top_topic li span {
   display: block;
   background-color: #ddd;
   text-align: center;
   padding: 20px 0;
   color: #000;
}
.top_info {
   color: #5b5b5b;
}
.top_info h2 {
   font-size: 2rem;
   padding-bottom: 10px;
   margin-bottom: 20px;
   border-bottom: solid 1px #ddd;
}
.top_info h2 span {
   float: right;
   font-size: 1.2rem;
   border: solid 1px #5b5b5b;
}
.top_info h2 span a {
   display: block;
   padding: 5px 15px;
   color: #5b5b5b;
}
.top_info h2 span a:hover {
   color: #fff;
   background-color: #5b5b5b;
}
.top_info p {
   text-align: right;
   padding-top: 15px;
   margin-top: 15px;
   border-top: solid 1px #ddd;
   font-size: 1.2rem;
}
.top_info p a {
   color: #5b5b5b;
}
.top_info p a:hover {
   text-decoration: underline;
}

/* ページ共通 */
.page h2 {
   width: calc(100% - 140px);
   padding: 10px 0 0 140px;
   margin-bottom: 100px;
   color: #5b5b5b;
}
.page h2 span {
   display: block;
   font-size: 1.8rem;
   max-width: 1260px;
   padding-bottom: 5px;
   margin: 0 auto;
   border-bottom: solid 1px #0054a6;
}
.comp,
.cont {
   margin-bottom: 150px;
}
.comp h3,
.cont h4,
.job h3,
.datail_box h3 {
   font-size: 2.5rem;
   border-left: solid 6px #0054a6;
   padding-left: 8px;
   margin-bottom: 50px;
   font-weight: normal;
}
.comp h3 span,
.cont h4 span {
   font-size: 1.8rem;
}
.band-01 {
   background-color: #ddd;
   padding: 80px 0 50px;
}
.btn_link {
   position: relative;
   display: inline-block;
   background-color: #0054a6;
   font-size: 1.5rem;
   padding: 8px 50px 7px 15px;
   color: #fff;
}
.btn_link span {
   color: #fff;
   font-size: 1.2rem;
   letter-spacing: -0.25em;
   position: absolute;
   top: 31%;
   right: 3px;
   transform: translate(right -3px, -50%);
   -webkit-transform: translate(right -3px, -50%);
   -ms-transform: translate(right -3px, -50%);
}

/* 企業情報 */
#comp-01 > div {
   font-size: 0;
   font-family: '游明朝', YuMincho, 'Hiragino Mincho ProN W3', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
}
#comp-01 > div > div {
   display: inline-block;
   vertical-align: top;
   font-size: 1.65rem;
}
#comp-01 > div > div:nth-of-type(1) {
   width: 18.5%;
   margin-right: 6%;
}
#comp-01 > div > div:nth-of-type(1) img {
   width: 100%;
   max-width: 258px;
   height: auto;
}
#comp-01 > div > div:nth-of-type(2) {
   width: 75.5%;
   line-height: 1.8em;
   text-align: justify;
}
#comp-01 > div > div h4 {
   font-size: 2.2rem;
   color: #0054a6;
   margin-bottom: 25px;
}
#comp-01 > div > div:nth-of-type(2) p span {
   display: block;
   text-align: right;
}
#comp-02.comp {
   margin-bottom: 0;
}
#comp-02 > div p:nth-of-type(1),
#comp-02 > div p:nth-of-type(4) {
   font-family: '游明朝', YuMincho, 'Hiragino Mincho ProN W3', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
   text-align: center;
   font-size: 2.2rem;
   line-height: 2.2em;
   color: #5b5b5b;
}
#comp-02 > div p:nth-of-type(2),
#comp-02 > div p:nth-of-type(5) {
   max-width: 1010px;
   text-align: center;
   padding: 15px 15px 13px;
   margin: 50px auto 100px;
   background-color: #ddd;
   line-height: 1.6em;
   color: #5b5b5b;
}
#comp-02 > div p:nth-of-type(3) {
   font-size: 1.8rem;
   color: #0054a6;
   text-align: center;
   margin-bottom: 40px;
}
#comp-03.comp {
   margin-bottom: 0;
}
#comp-03 > div {
   max-width: 1000px;
   margin: 0 auto;
}
#comp-03 > div > div {
   margin-bottom: 30px;
}
#comp-03 > div > div p:nth-of-type(1) {
   color: #0054a6;
   font-size: 2rem;
   margin-bottom: 15px;
}
#comp-03 > div > div p:nth-of-type(1) span {
   font-size: 1.5rem;
   vertical-align: 1px;
}
#comp-03 > div > div p:nth-of-type(2) {
   font-size: 1.6rem;
   line-height: 1.6em;
   padding-left: 1.3em;
}
#comp-04 {
   margin-top: 120px;
}

#comp-05 iframe {
   width: calc(100% - 2px);
   border: solid 1px #ddd;
   margin: 10px 0;
}

/* 事業内容 */
.cont h3 {
   width: 100%;
   background-color: #ddd;
   color: #0054a6;
   text-align: center;
   padding: 12px 0 11px;
   margin-bottom: 50px;
}
.cont-01-0 {
   position: relative;
}
.btn_contact {
   text-align: center;
   margin-bottom: 50px;
   margin-top: -25px;
}
.btn_contact span {
   background-color: #0054a6;
   display: inline-block;
   border-radius: 4px;
}
.btn_contact span a {
   display: block;
   color: #fff;
   padding: 18px 25px;
   font-size: 2rem;
}
.cont-01-1 {
   font-size: 0;
   margin-top: 100px;
}
.cont-01-1 > div {
   width: calc(95% / 2);
   display: inline-block;
   vertical-align: top;
   font-size: 1.5rem;
   line-height: 1.3em;
}
.cont-01-1 > div:nth-of-type(1) {
   margin-right: 5%;
}
.cont-01-1 h5 {
   text-align: center;
   font-weight: normal;
   color: #fff;
   font-size: 1.7rem;
   padding: 13px 0 12px;
   border-radius: 21px;
   margin-bottom: 20px;
   background-color: #0054a6;
}
.cont-01-1 > div > p:nth-of-type(1) {
   width: 100%;
}
.cont-01-1 > div > p:nth-of-type(1) img {
   width: 100%;
   max-width: 664px;
   height: auto;
}
.cont-01-1 .cont-01-1-1 p:nth-of-type(1) {
   margin: 8px 0 30px;
   color: #0054a6;
   font-size: 1.8rem;
   line-height: 1.7em;
}
.cont-01-1 > div p:nth-of-type(2) {
   color: #0054a6;
}
.cont-01-1 > div > p:nth-of-type(3) {
   width: calc(100% - 2px);
   border: solid 1px #ddd;
   margin: 10px 0;
}
.cont-01-1 > div > p:nth-of-type(4) {
   text-align: right;
}
.cont-01-1 > div > p:nth-of-type(4) a {
   font-size: 1.3rem;
   color: #5b5b5b;
}
.cont-01-1-1 {
   position: relative;
}
.cont-01-1-1 .lity-btn a {
   position: absolute;
   right: 0;
   top: 25px;
   color: #fff;
   background-color: #0054a6;
   display: inline-block;
   padding: 20px 20px;
}
.cont-02-1 {
   text-align: center;
}
.cont-02-1 > div {
   display: inline-block;
   vertical-align: top;
   width: 40%;
   margin: 20px 3%;
}
.cont-02-1 > div p {
   text-align: left;
   margin-top: 10px;
}
.cont-03-1 {
   width: 100%;
   font-size: 0;
   max-width: 1200px;
   margin: 0 auto;
}
.cont-03-1 > div ul {
   margin-bottom: 50px;
}
.cont-03-1 > div li {
   font-family: '游明朝', YuMincho, 'Hiragino Mincho ProN W3', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
   color: #0054a6;
   font-size: 1.7rem;
   line-height: 1.7em;
   text-indent: -1em;
   padding-left: 1em;
}
.cont-03-1 > p:nth-of-type(1) {
   width: 40.3%;
   margin-right: 2.7%;
   display: inline-block;
   vertical-align: top;
}
.cont-03-1 > p:nth-of-type(1) img {
   width: 100%;
   max-width: 483px;
   height: auto;
}
.cont-03-1 > div {
   width: 57%;
   display: inline-block;
   vertical-align: top;
}
.cont-04-1 {
   margin-bottom: 100px;
}
.cont-04-2 {
   width: 100%;
   font-size: 0;
   max-width: 1200px;
   margin: 0 auto;
}
.cont-04-2 > div ul {
   margin-bottom: 25px;
}
.cont-04-2 > div li {
   font-family: '游明朝', YuMincho, 'Hiragino Mincho ProN W3', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
   color: #0054a6;
   font-size: 1.7rem;
   line-height: 1.7em;
   text-indent: -1em;
   padding-left: 1em;
}
.cont-04-2 > p:nth-of-type(1) {
   width: 34.8%;
   margin-right: 2.7%;
   display: inline-block;
   vertical-align: top;
   text-align: center;
}
.cont-04-1 .cont-04-2 > p img {
   width: 100%;
   height: auto;
}
#cont-04 .cont-04-1:nth-of-type(1) .cont-04-2 > p img {
   max-width: 380px;
}
#cont-04 .cont-04-1:nth-of-type(2) .cont-04-2 > p img {
   max-width: 229px;
}
#cont-04 .cont-04-1:nth-of-type(3) .cont-04-2 > p img {
   max-width: 250px;
}
#cont-04 .cont-04-1:nth-of-type(4) .cont-04-2 > p img {
   max-width: 320px;
}
#cont-04 .cont-04-1:nth-of-type(5) .cont-04-2 > p img {
   max-width: 192px;
}
#cont-04 .cont-04-1:nth-of-type(6) .cont-04-2 > p img {
   max-width: 417px;
}
.cont-04-2 > div {
   width: 62.5%;
   display: inline-block;
   vertical-align: top;
}
.cont-04-2 > div p {
   text-align: right;
}
/* テーブルフォーマット */
.table_temp {
   width: 100%;
   max-width: 1000px;
   margin: 0 auto;
   table-layout: fixed;
}
.table_temp th,
.table_temp td {
   border: solid 1px #ddd;
   padding: 20px 20px 19px;
   line-height: 1.8em;
}
.table_temp th {
   width: 25%;
   text-align: left;
}
.table_temp td a {
   color: #5b5b5b;
   text-decoration: underline;
}

/* フォームフォーマット */
.form_temp {
   width: 100%;
   font-size: 1.5rem;
   max-width: 1000px;
   margin: 0 auto;
   table-layout: fixed;
}
.form_temp th,
.form_temp td {
   padding: 10px 15px;
   line-height: 1.6em;
   border: solid 1px #ccc;
   vertical-align: middle;
}
.form_temp th {
   width: 25%;
   background-color: #eee;
   text-align: left;
}
.form_temp th span {
   float: right;
   display: inline;
   color: #fff;
   font-size: 1.2rem;
   font-weight: normal;
   padding: 0 6px;
   border-radius: 3px;
   background-color: #5bbfc0;
}
.form_temp td {
   width: calc(75% - 3px);
}
.form_temp td input[type='text'],
.form_temp td textarea {
   padding: 10px 15px 9px;
   background-color: #fffcd5;
   border: solid 1px #ddd;
}
.form_temp td .inp_all,
.form_temp td textarea {
   width: calc(100% - 32px);
}
.form_temp td .inp_half {
   width: calc((100% - 79px) / 2);
}
.form_temp td label {
   font-size: 1.5rem;
}
.form_temp td .capt {
   vertical-align: middle;
}

.txt_small {
   font-size: 1.3rem;
   line-height: 1.3em;
}
.txt_ind {
   display: block;
   text-indent: -1em;
   padding-left: 1em;
}
.txt_ind2 {
   padding-left: 150px !important;
   position: relative;
}
.txt_ind2 span {
   position: absolute;
   left: 20px;
}

.btn_submit {
   text-align: center;
   margin-top: 50px;
}
.btn_submit input {
   margin: 0 15px;
   padding: 15px 30px;
   font-size: 1.8rem;
   cursor: pointer;
}
.btn_submit input[type='reset'],
.btn_submit input[type='button'] {
   color: #fff;
   border: unset;
   background-color: #999;
}
.btn_submit input[type='submit'] {
   color: #fff;
   border: unset;
   background-color: #0054a6;
}
input[type='radio'] {
   vertical-align: -1px;
}
.fs0 {
   font-size: 0;
}
.msg {
   text-align: center;
   line-height: 1.6em;
}

/* 採用情報 */
.job {
   width: 100%;
   max-width: 1000px;
   margin: 0 auto;
}
#job-01 {
   margin-top: 100px;
   margin-bottom: 80px;
}
#job-01 .job-01-1 > div,
#job-02 .job-02-1 > div {
   padding-bottom: 25px;
   margin-bottom: 25px;
   border-bottom: solid 1px #ddd;
   font-size: 0;
}
#job-02 .job-02-1 > div {
   border-bottom: solid 1px #0054a6;
   display: flex;
}
#job-01 .job-01-1 > div p,
#job-02 .job-02-1 > div p {
   display: inline-block;
   vertical-align: top;
   font-size: 1.6rem;
   line-height: 1.8em;
}
#job-01 .job-01-1 > div p:nth-of-type(1),
#job-02 .job-02-1 > div p:nth-of-type(1) {
   width: 20%;
   margin-right: 3%;
}
#job-02 .job-02-1 > div p:nth-of-type(1) {
   color: #0054a6;
   position: relative;
}
#job-02 .job-02-1 > div p:nth-of-type(1) span {
   position: absolute;
   top: 50%;
   transform: translate(0, -50%);
   -webkit-transform: translate(0, -50%);
   -ms-transform: translate(0, -50%);
}
#job-01 .job-01-1 > div p:nth-of-type(2),
#job-02 .job-02-1 > div p:nth-of-type(2) {
   width: 77%;
}
#job-02 {
   margin-bottom: 80px;
}
.job-02-1 strong {
   font-size: 1.8rem;
}
.job-03-1 > p {
   width: 100%;
   max-width: 1000px;
   margin: 0 auto 20px;
   color: #ff0000;
}
.job-03-2 {
   margin-top: 80px;
}
.job-03-2 > p {
   line-height: 1.5em;
   margin-bottom: 20px;
}
.job-03-2 > div p:nth-of-type(1) {
   color: #fff;
   background-color: #999;
   padding: 8px 16px;
}
.job-03-2 > div p:nth-of-type(2) {
   overflow-y: scroll;
   height: 200px;
   border: solid 1px #ddd;
   padding: 15px;
   line-height: 1.8em;
}

/**************************************
info
**************************************/
.datail_box {
   width: 100%;
   max-width: 1000px;
   margin: 0 auto;
}
.datail_box #up_ymd {
   text-align: right;
   font-size: 1.4rem;
   margin-bottom: 25px;
}
.datail_box .detailText {
   line-height: 1.8em;
}
.datail_box .detailUpfile {
   margin-top: 40px;
   text-align: center;
}
.datail_box .detailUpfile img {
   max-width: 100%;
   height: auto;
}
.backORcloseBtn {
   text-align: center;
   line-height: 100%;
   margin-top: 15px;
}
.backORcloseBtn a {
   display: inline-block;
   padding: 4px 15px;
   border: 1px solid #aaa;
   color: #999;
   border-radius: 6px;
   text-decoration: none;
   font-size: 12px;
}
#newsWrap {
   width: 71.5%;
   max-width: 1000px;
   margin: 0 auto;
}
#newsList {
   margin: 25px 0;
}
#newsList li {
   font-size: 0;
   padding-bottom: 10px;
   margin-bottom: 10px;
   border-bottom: solid 1px #ddd;
}
#newsList li span {
   font-size: 1.6rem;
   line-height: 1.5em;
}
#newsList .news_List_Ymd {
   display: inline-block;
   vertical-align: top;
   width: 100px;
}
#newsList .news_List_Title {
   display: inline-block;
   vertical-align: top;
   width: calc(100% - 100px);
}
#newsList .news_List_Title a {
   color: #0054a6;
}

#news_list li {
   font-size: 0;
   margin-bottom: 10px;
}
#news_list li span {
   font-size: 1.6rem;
   line-height: 1.5em;
}
#news_list .news_List_Ymd {
   display: inline-block;
   vertical-align: top;
   width: 100px;
}
#news_list .news_List_Title {
   display: inline-block;
   vertical-align: top;
   width: calc(100% - 100px);
}
#news_list li span a {
   color: #0054a6;
}

/**************************************
確認画面（conf.html)
**************************************/

/**************************************
footer
**************************************/
footer {
   margin-top: 8%;
   position: relative;
}
footer .foot_line {
   border-top: solid 1px #ddd;
}
footer .foot-1,
footer .foot-2,
footer .foot-3 {
   font-size: 0;
}
footer .foot-1 {
   margin-bottom: 10px;
}
footer .foot-2 {
   margin: 15px auto 50px;
}
footer .foot-3 {
   text-align: center;
}
footer .foot-1 li,
footer .foot-2 li {
   display: inline-block;
   vertical-align: top;
   width: calc(20% - 1em);
   font-size: 1.6rem;
   padding-right: 1em;
}
footer .foot-3 li {
   width: 13%;
   display: inline-block;
   vertical-align: top;
   margin-right: calc(9% / 6);
   margin-bottom: 12px;
}
footer .foot-3 li:nth-of-type(7n) {
   margin-right: 0;
}
footer .foot-3 li img {
   width: 100%;
   height: auto;
   border: solid 1px #ddd;
}
footer .foot-1 li a,
footer .foot-2 li a,
footer .foot-3 li a {
   color: #5b5b5b;
}
footer .foot-2 li a {
   display: inline-block;
   margin-bottom: 5px;
   line-height: 1.3em;
   text-indent: -1em;
   padding-left: 1em;
}
footer .foot-1 li a:hover,
footer .foot-2 li a:hover {
   color: #0054a6;
}
footer small {
   display: block;
   font-size: 1.2rem;
   text-align: center;
   padding: 15px 0;
   background-color: #0054a6;
   color: #fff;
}

/**************************************
スマホ用
**************************************/
.sp_tel {
   text-align: center;
   background-color: #ddd;
   padding: 10px;
}

/**************************************
1400px以下
**************************************/
@media only screen and (max-width: 1400px) {
   .inner1400 {
      padding: 0 3%;
      width: 94%;
   }
   .cont-01-1-1 {
      position: unset;
      display: block;
      margin-bottom: 30px;
   }
   .cont-01-1-1 .lity-btn a {
      position: unset;
      display: block;
      width: 300px;
      margin: 0 auto;
      text-align: center;
   }
}

/**************************************
861px以上
**************************************/
@media only screen and (min-width: 861px) {
   .sp_tel,
   .sp_h1 {
      display: none;
   }
   .zdo_drawer_bg,
   .zdo_drawer_button {
      display: none;
   }
   /* ナビゲーション */
   .main_nav {
      width: calc(100% - 424px);
      display: inline-block;
      vertical-align: top;
      padding-left: 20px;
      font-size: 0;
      text-align: right;
   }
   .main_nav > ul,
   .main_nav p {
      display: inline-block;
      vertical-align: top;
   }
   .main_nav p:nth-of-type(1) {
      padding: 22px 0;
   }
   .main_nav p:nth-of-type(2) {
      padding: 15px 0 14px;
   }
   .gnav {
      display: flex;
      font-size: 0;
      height: 60px;
      margin: 0 auto;
      width: calc(100% - 160px);
      max-width: 600px;
   }
   .gnav > li {
      width: calc(100% / 3);
      display: inline-block;
      vertical-align: top;
      text-align: center;
      height: 60px;
      line-height: 60px;
   }
   .gnav li {
      position: relative;
   }
   .gnav li a {
      display: block;
      height: 60px;
      text-decoration: none;
      width: 100%;
      font-size: 1.5rem;
      color: #5b5b5b;
   }
   .gnav li li {
      width: calc(100% - 2px);
      min-width: 243px;
      height: 0;
      overflow: hidden;
      transition: 0.5s;
      line-height: 40px;
   }
   .gnav li li a {
      width: calc(100% - 32px);
      border: 1px solid #ddd;
      text-align: left;
      padding: 0 15px;
      background-color: #fff;
   }
   .gnav li:hover > ul > li {
      height: 40px;
      line-height: 40px;
      overflow: unset;
   }
   .gnav li:hover > ul > li a {
      height: 40px;
      line-height: 40px;
   }
   .gnav li:hover > ul > li a:hover {
      background-color: #ddd;
   }
}

/**************************************
860px以下
**************************************/
@media only screen and (max-width: 860px) {
   /* 非表示 */
   .main_nav p:nth-of-type(1),
   .main_nav p:nth-of-type(2),
   .foot-1,
   .foot-2 {
      display: none;
   }
   /* ヘッダー */
   header > .inner1400:nth-of-type(1) {
      background-color: #0054a6;
   }
   header h1 {
      width: calc(94% - 150px);
      text-align: left;
      padding-right: 50px;
      padding-left: 80px;
   }
   header h1 a.main_logo {
      width: 13.5%;
      left: -8px;
   }
   header h1 .main_logo img {
      width: 100%;
      max-width: 116px;
      min-width: 80px;
      height: auto;
   }
   header h1 picture img {
      width: 100%;
      max-width: 600px;
      min-width: 200px;
      height: auto;
   }
   /* 共通 */
   .page h2 {
      width: 100%;
      padding-top: 30px;
      padding-left: unset;
      margin-bottom: 60px;
   }
   .sptel img {
      width: 100%;
      max-width: 438px;
      height: auto;
   }
   /* テーブル */
   .table_temp th,
   .table_temp td {
      display: block;
      width: calc(100% - 42px);
      margin-bottom: -1px;
   }
   .form_temp th,
   .form_temp td {
      display: block;
      width: calc(100% - 22px);
      margin-bottom: -1px;
   }
   /* ナビ */
   .main_nav {
      overflow-y: scroll !important;
   }
   .gnav a {
      display: block;
      border-bottom: solid 1px #ddd;
      padding-top: 15px;
      padding-bottom: 14px;
   }
   /* トップページ */
   .top_topic {
      flex-wrap: wrap;
   }
   .top_topic li {
      width: 48.2%;
      max-width: unset;
      margin-bottom: 20px;
   }
   /* 企業情報 */
   #comp-01 > div > div:nth-of-type(1) {
      width: 100%;
      text-align: center;
      margin-right: unset;
      margin-bottom: 25px;
   }
   #comp-01 > div > div:nth-of-type(2) {
      width: 100%;
   }
   .table_temp td.txt_ind2 {
      width: calc(100% - 172px);
   }
   .table_temp th {
      background-color: #eee;
   }
   /* 事業内容 */
   .cont-01-0 p {
      position: unset;
      display: block;
      border-radius: 4px;
      text-align: center;
      top: unset;
      left: unset;
      transform: unset;
      -webkit-transform: unset;
      -ms-transform: unset;
   }
   .cont-01-0 p a {
      font-size: 1.8rem;
      line-height: 1.3em;
   }
   .cont-01-1 {
      margin-top: 40px;
   }
   .cont-01-1 p:nth-of-type(2) {
      margin: 8px 0 30px;
      font-size: 1.6rem;
      line-height: 1.5em;
   }
   .cont-01-1-1 .lity-btn a {
      width: auto;
   }
   /* フッター */
   footer .foot-3 li {
      width: 18.2%;
      max-width: 180px;
      margin-right: calc(9% / 4);
   }
   footer .foot-3 li:nth-of-type(7n) {
      margin-right: calc(9% / 4);
   }
   footer .foot-3 li:nth-of-type(5n),
   footer .foot-3 li:nth-last-of-type(1) {
      margin-right: 0;
   }
}

/**************************************
480px以上
**************************************/
@media only screen and (min-width: 480px) {
   .pc_none {
      display: none;
   }
}

/**************************************
480px以下
**************************************/
@media only screen and (max-width: 480px) {
   /* トップページ */
   .top_topic li {
      width: 100%;
   }
   /* 　共通 */
   .sp_none {
      display: none;
   }
   .btn_link {
      display: block;
      padding: 8px 50px 7px 15px;
      text-align: left;
   }
   .btn_submit input {
      width: calc(100% - 30px);
      text-align: center;
   }
   .btn_submit input[type='reset'] {
      margin-bottom: 20px;
   }
   .form_temp th,
   .form_temp td {
      width: calc(100% - 32px);
   }
   .btn_submit input {
      width: 100%;
      padding: 15px 0;
      font-size: 1.7rem;
   }
   .btn_submit input {
      margin: 0;
   }
   /* 企業情報 */
   .txt_ind2 span {
      position: unset;
      left: unset;
      display: block;
   }
   .table_temp td.txt_ind2 {
      width: unset;
      padding-left: 20px !important;
   }
   /* 事業内容 */
   .cont-01-1 > div {
      width: 100%;
      display: block;
   }
   .cont-01-1 > div:nth-of-type(1) {
      margin-right: unset;
      margin-bottom: 50px;
   }
   .cont-02-1 > div {
      display: block;
      width: 100%;
      margin: 15px 0;
   }
   .cont-03-1 > p:nth-of-type(1),
   .cont-04-2 > p:nth-of-type(1) {
      width: 100%;
      margin-right: 0;
      margin-bottom: 30px;
      display: block;
   }
   .cont-03-1 > div,
   .cont-04-2 > div {
      width: 100%;
      display: block;
   }
   .cont-03-1 > div ul {
      margin-bottom: 30px;
   }
   /* 採用情報 */
   #job-02 .job-02-1 > div {
      display: block;
   }
   #job-01 .job-01-1 > div p:nth-of-type(1),
   #job-02 .job-02-1 > div p:nth-of-type(1) {
      display: block;
      width: 100%;
      margin-right: unset;
      margin-bottom: 10px;
   }
   #job-01 .job-01-1 > div p:nth-of-type(2),
   #job-02 .job-02-1 > div p:nth-of-type(2) {
      display: block;
      width: 100%;
   }
   #job-02 .job-02-1 > div p:nth-of-type(1) span {
      position: unset;
   }

   /* フッター */
   footer .foot-3 li {
      width: 30%;
      max-width: 180px;
      margin-right: calc(9% / 2);
   }
   footer .foot-3 li:nth-of-type(5n),
   footer .foot-3 li:nth-of-type(7n) {
      margin-right: calc(9% / 2);
   }
   footer .foot-3 li:nth-of-type(3n),
   footer .foot-3 li:nth-last-of-type(1) {
      margin-right: 0;
   }
}
