@charset "utf-8";

/*===============================================
●page_sp.css  画面の横幅が750px以下
===============================================*/
@media print , screen and (max-width : 750px ){

/*--------------------------------------------
        TOP
--------------------------------------------*/

#top .inner {
    padding:15% 0;
}
#top #sec01 {
    background:url(../Images/top/sec01_bg.jpg) repeat;
    background-size:cover;
}
#top #sec01 ul {
    padding:0 5%;
}
#top #sec01 ul li {
    background-color:#fff;
    box-shadow: 0px 0px 20px -5px rgba(0, 0, 0, 0.4);
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
    margin-bottom:5%;
}
#top #sec01 ul li:last-child {
    margin-bottom:0;
}
#top #sec01 ul li .imgArea {
    overflow:hidden;
    border-bottom:#0e8da8 8px solid;
}
#top #sec01 ul li a {
    width:100%;
    overflow:hidden;
    position:relative;
}
#top #sec01 ul li a .mask {
    display:none;
}
#top #sec01 ul li .tArea {
    padding: 20px;
}
#top #sec01 ul li .tArea h3 {
    color: #1c5d9f;
    position: relative;
    overflow: hidden;
    margin-bottom: 6px;
}
#top #sec01 ul li .tArea h3 span {
    display: inline-block;
    position: relative;
    padding: 0 1.2em 0 0;
}
#top #sec01 ul li .tArea h3:after {
    content: "";
    width: 1000px;
    height: 1px;
    border-top: 1px solid #1c5d9f;
    position: absolute;
    top: 10px;
}
#top #sec01 ul li .tArea p {
    color: #333;
    font-size: 13px;
}
#top #sec02 h2,
#top #sec02 h2 span {
    color:#fff;
}
#top #sec02 li {
    text-align:center;
    background:url(../Images/top/sec02_bg01.jpg) no-repeat;
    padding:14% 0;
}
#top #sec02 li:last-child {
    background:url(../Images/top/sec02_bg02.jpg) no-repeat;
}
#top #sec02 li .linkbtn {
    padding:0 10%;
}
#top #sec02 li .linkbtn a {
    display:block;
    color: #fff;
    font-size: 15px;
    font-weight: bold;
    letter-spacing: 0.08em;
    background: url(../Images/common/arrow_white.png) right 30px center no-repeat;
    box-sizing:border-box;
    position: relative;
    outline: none;
    overflow: hidden;
    padding: 10px 0;
    transition: all .5s;
}
#top #sec02 li .linkbtn a::before,
#top #sec02 li .linkbtn a::after {
    position: absolute;
    display: block;
    content: '';
    width: 100%;
    height: 100%;
    transition: all .5s;
}
#top #sec02 li .linkbtn a::before {
    top: 0;
    left: 0;
    border-top: 1px solid #fff;
    border-left: 1px solid #fff;
}
#top #sec02 li .linkbtn a::after {
    right: 0;
    bottom: 0;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
}
#top #sec03 ul {
    padding:0 5%;
}
#top #sec03 ul li {
    position:relative;
    padding-bottom:7%;
    margin-bottom:7%;
    border-bottom:dashed 1px #ddd;
}
#top #sec03 ul li:last-child {
    border-bottom:0;
    margin-bottom:0;
    padding-bottom:0;
}
#top #sec03 ul li dl dt {
    color: #555555;
    font-size: 13px;
    font-weight: bold;
    letter-spacing: 0.08em;
    margin-bottom:5px;
}
#top #sec03 ul li dl dt span {
    color: #fff;
    background-color: #4a84b0;
    display: inline-block;
    padding: 2px 15px;
    margin-left: 10px;
    font-size: 11px;
}
#top #sec03 .linkbtn {
    width: 250px;
    margin: 0 auto;
    padding-top: 40px;
}
#top #sec03 .linkbtn a {
    width: 250px;
    color: #fff;
    text-align: center;
    letter-spacing: 0.08em;
    background: url(../Images/common/arrow_white.png) left 20px center no-repeat #1c5d9f;
    box-sizing: border-box;
    padding: 15px 20px 15px 50px;
}
#top #sec03 .linkbtn a:hover {
    background: url(../Images/common/arrow_white.png) left 20px center no-repeat #4a84b0;
}

/*-------------------------------------
    製品紹介
--------------------------------------*/

#product #mainimage {
    background:url(../Images/product/h2_bg.jpg) no-repeat;
    background-size:cover;
}
#product section {
    width: 100%;
    margin: 0 auto;
}
#product .inner {
    padding:0 0 40px;
}
#product .blue_ttl {
    color: #1c5d9f;
    font-size: 24px;
    line-height: 1.3;
    letter-spacing: 0.08em;
    border-bottom: 4px solid #1c5d9f;
    position: relative;
    display: inline-block;
    padding: 0 4px 3px 3px;
    margin-bottom: 30px;
}
#product .gray_ttl {
    color: #666;
    font-size: 17px;
    font-weight: bold;
    line-height: 1.4;
    border-left: #666 3px solid;
    padding: 0px 0 2px 10px;
    margin-bottom: 15px;
}
#product #sec01 {
    padding-top:40px;
}
#product #sec01 li {
    border-bottom: #ddd 1px solid;
    padding-bottom: 35px;
    margin-bottom: 35px;
}
#product #sec01 li:last-child {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom:0;
}
#product #sec01 li .imgArea {
    width: 200px;
    margin: 0 auto 20px;
}
#product #sec01 li .imgArea:last-child {
    margin-bottom: 0;
}
#product #sec01 li table {
    width:100%;
}
#product #sec01 li table th {
    text-align:center;
    border-right: #fff 3px solid;
    border-bottom: #fff 3px solid;
    background-color: #ddd;
    padding: 5px 0;
}
#product #sec01 li table td {
    border-right: #fff 3px solid;
    border-bottom: #fff 3px solid;
    background-color: rgba(221,221,221,0.5);
    padding: 7px 20px;
}
#product #sec01 li table td span {
    background: url(../Images/product/icon_jis.png) left center no-repeat;
    padding-left: 20px;
}
#product #sec01 li table td.td_01,
#product #sec01 li table td.td_03 {
    text-align:center;
}
#product #sec01 li table td.th_03,
#product #sec01 li table td.td_03 {
    border-right:none;
}
#product #sec01 li table td.btmnone {
    border-bottom:none;
}
#product #sec02 dl,
#product #sec03 dl {
    margin:0 5px;
}
#product #sec02 dl dd,
#product #sec03 dl dd {
    border-bottom: #ddd 1px solid;
    padding-bottom:30px;
    margin-bottom:30px;
}
#product #sec02 dl dd.last,
#product #sec03 dl dd.last {
    border-bottom: none;
    padding-bottom:0;
    margin-bottom:0;
}
#product #sec03 dl dd ul {
    letter-spacing: -0.5em;
    text-align: center;
    margin-bottom:15px;
}
#product #sec03 dl dd ul li {
    display:inline-block;
    letter-spacing: normal;
}
#product #sec03 dl dd ul.first li:nth-child(1) {
    margin-right: 5px;
}
#product #sec03 dl dd ul.first li:nth-child(1),
#product #sec03 dl dd ul.first li:nth-child(2) {
    margin-bottom: 5px;
}
#product #sec03 dl dd ul.first li img {
    width: auto;
    height: 94px;
}
#product #sec03 dl dd ul.second li:nth-child(1),
#product #sec03 dl dd ul.second li:nth-child(3) {
    margin-right: 5px;
}
#product #sec03 dl dd ul.second li:nth-child(1),
#product #sec03 dl dd ul.second li:nth-child(2) {
    margin-bottom: 5px;
}
#product #sec03 dl dd ul.second li img {
    width: 140px;
    height: auto;
}
#product .linkbtn {
    width: 250px;
    margin: 0 auto;
}
#product .linkbtn a {
    width: 250px;
    color: #fff;
    text-align: center;
    letter-spacing: 0.08em;
    background: url(../Images/common/arrow_white.png) left 20px center no-repeat #1c5d9f;
    box-sizing: border-box;
    padding: 15px 20px 15px 50px;
}
#product .linkbtn a:hover {
    background: url(../Images/common/arrow_white.png) left 20px center no-repeat #4a84b0;
}

/*-------------------------------------
    取り扱いブランド
--------------------------------------*/

#brand .inner {
    padding:40px 0;
}
#brand #mainimage {
    background:url(../Images/product/h2_bg.jpg) no-repeat;
    background-size:cover;
}
#brand #sec01 .brand_list {
    width:100%;
    margin:0 auto 40px;
}
#brand #sec01 .brand_list li {
    width:100%;
    text-align:center;
    box-sizing:border-box;
    border:#1c5d9f 1px solid;
    padding:25px;
    margin:0;
}
#brand #sec01 .brand_list li:nth-child(n+2) {
    margin-top:25px;
}
#brand #sec01 .brand_list li h3 {
    color: #1c5d9f;
    font-size: 18px;
    line-height: 1;
}
#brand #sec01 .brand_list li h3.noto {
    font-size:17px;
    font-family: 'Noto Sans', sans-serif;
}
#brand #sec01 .brand_list li .logo {
    margin: 20px 0 17px;
}
#brand #sec01 .brand_list li .logo img {
    height: 45px;
}
#brand #sec01 .brand_list li .note01 {
    text-align: left;
    border-bottom: #ddd 1px solid;
    padding: 0 0 15px;
    margin-bottom: 15px;
}
#brand #sec01 .brand_list li .note02 {
    color: #4a84b0;
    font-size: 13px;
    text-align: left;
    line-height: 1.4;
}
#brand #sec01 .linkbtn {
    width: 250px;
    margin: 0 auto;
}
#brand #sec01 .linkbtn a {
    width:250px;
    color: #fff;
    text-align: center;
    letter-spacing: 0.08em;
    background: url(../Images/common/arrow_white.png) left 20px center no-repeat #1c5d9f;
    box-sizing: border-box;
    padding: 15px 20px 15px 50px;
}

/*-------------------------------------
        会社案内（一部採用情報と共有）
--------------------------------------*/

/*-- 共通 --*/

#company #mainimage {
    background:url(../Images/company/h2_bg.jpg) no-repeat;
    background-size:cover;
}
#company #contents,
#recruit #contents,
#topics #contents {
    width: 100%;
    position:relative;
    padding: 40px 0 0;
    margin: 0 auto;
}
#company #main_cts,
#recruit #main_cts,
#topics #main_cts {
    width: 92%;
}
#company #main_cts .inner,
#recruit #main_cts .inner,
#topics #main_cts .inner {
    padding:0 0 40px;
}
#company h3,
#recruit h3,
#topics h3 {
    color: #1c5d9f;
    font-size: 20px;
    line-height: 1.3;
    letter-spacing: 0.08em;
    border-bottom: 4px solid #1c5d9f;
    position: relative;
    display: inline-block;
    padding: 0 4px 3px 3px;
    margin-bottom: 20px;
}
#company .gray_ttl,
#recruit .gray_ttl,
#topics .gray_ttl {
    color: #666;
    font-size: 16px;
    font-weight: bold;
    border-left: #666 3px solid;
    padding-left: 8px;
    margin-bottom: 10px;
}

/*-- 会社概要 --*/
#company_top #sec01 table {
    font-size: 12px;
}
#company_top #sec01 table th {
    width: 20%;
    border-right: #fff 3px solid;
    border-bottom: #fff 3px solid;
    background-color: #ddd;
}
#company_top #sec01 table td {
    border-bottom: #fff 3px solid;
    background-color: rgba(221,221,221,0.5);
    padding: 15px 15px;
}
#company_top #sec01 table td a {
    color: #4a84b0;
    position: relative;
}
#company_top #sec01 table td a:before {
    content: "";
    width: 5px;
    height: 5px;
    display: inline-block;
    border-top: 2px solid #4a84b0;
    border-right: 2px solid #4a84b0;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    margin: -4px 8px 0 -2px;
}
#company_top #sec01 table td a:after {
    content: "";
    width: 0;
    background: #003366;
    transition: .24s all ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    position: absolute;
    left: 0;
    bottom: -0.03em;
}
#company_top #sec01 table td .disc_list li:before {
    content: '';
    width: 6px;
    height: 6px;
    display: inline-block;
    border-radius: 100%;
    background: #4a84b0;
    position: relative;
    left: 0px;
    top: -3px;
    margin-right: 10px;
}
#company_top #sec01 table td .img_list {
    margin-top:15px;
}
#company_top #sec01 table td .img_list li {
    float:left;
    margin-right:15px;
}

/*-- 沿革 --*/

#company_history #sec01 .imgArea {
    margin-bottom:40px;
}
#company_history #sec01 dl {
    background: url(../Images/company/history_bg.png) left 75px center repeat-y;
    padding-bottom: 30px;
}
#company_history #sec01 dl dt {
    float: left;
    color: #4a84b0;
    font-weight: bold;
}
#company_history #sec01 dl dd {
    margin-left: 5em;
    padding-left: 2.6em;
    text-indent: -2.5em;
}
#company_history #sec01 dl dd:before {
    content: '';
    width: 8px;
    height: 8px;
    display: inline-block;
    border-radius: 100%;
    background: #4a84b0;
    position: relative;
    left: 0px;
    top: -1px;
    margin-right: 25px;
}

/*-- 代表挨拶 --*/

#company_message #sec01 .imgArea {
    margin-bottom:25px;
}
#company_message #sec01 .tArea dd {
    line-height:1.8;
    margin-bottom:30px;
}

/*-- 経営理念 --*/

#company_policy #sec01 dd {
    line-height:1.8;
}
#company_policy #sec01 .imgArea {
    margin-bottom:25px;
}

/*-- 環境への取り組み --*/

#company_ecology #sec01 .top_txt {
    color: #555;
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 25px;
}
#company_ecology #sec01 .sec01_top {
    margin-bottom:30px;
}
#company_ecology #sec01 .sec01_top > p,
#company_ecology #sec01 .sec01_btm > p {
    line-height:1.8;
}
#company_ecology #sec01 .num_list {
    margin:25px 0;
}
#company_ecology #sec01 .num_list > li {
    list-style: outside decimal;
    padding: 0 0 0.9em 0.5em;
    margin: 0 0 0 2em;
}
#company_ecology #sec01 .num_list > li:last-child {
    padding-bottom:0;
}
#company_ecology #sec01 .inner_list {
    margin:10px 0 0 1.2em;
}
#company_ecology #sec01 .inner_list li {
    color:#4a84b0;
    text-indent: -1.3em;
    padding-left: 1.5em;
    padding-bottom: 0.3em;
}
#company_ecology #sec01 .inner_list li span {
    display: inline-block;
    margin-right: 1em;
}
#company_ecology #sec01 .sign {
    line-height:1.6;
    text-align:right;
    margin-top:35px;
}

/*-------------------------------------
        各部署案内
--------------------------------------*/

/*-- 共通 --*/
#division .inner {
    padding:40px 0;
}
#division #mainimage {
    background:url(../Images/division/h2_bg.jpg) no-repeat;
    background-size:cover;
}
#division .div_nav {
    background: url(../Images/division/nav_bg.png);
    padding: 20px 0;
}
#division .div_nav ul {
    width:100%;
    margin:0 auto;
}
#division .div_nav li {
    width: 90%;
    height: auto;
    padding: 10px;
    margin: 0 auto 20px;
}
#division .div_nav li:nth-child(1) {
    background:url(../Images/division/div_nav01.jpg) no-repeat;
}
#division .div_nav li:nth-child(2) {
    background:url(../Images/division/div_nav02.jpg) no-repeat;
}
#division .div_nav li:nth-child(3) {
    background:url(../Images/division/div_nav03.jpg) no-repeat;
    margin-bottom: 0;
}
#division .div_nav li a {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    display: inline-block;
    position: relative;
    outline: none;
    overflow: hidden;
    padding: 35px 0;
}
#division .div_nav li a::before,
#division .div_nav li a::after {
    position: absolute;
    display: block;
    content: '';
    width: 100%;
    height: 100%;
    transition: all .5s;
}
#division .div_nav li a::before {
    top: 0;
    left: 0;
    border-top: 1px solid #fff;
    border-left: 1px solid #fff;
}
#division .div_nav li a::after {
    right: 0;
    bottom: 0;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
}
#division .div_nav li.on a {
    background-color: rgba(74,132,176,0.8);
    transition: all .7s;
}
#division .div_nav li.on a::before,
#division .div_nav li.on a::after {
    width: 0;
    height: 0;
    opacity: 0;
    transition: all .7s;
}
#division .div_nav li .tArea p {
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.08em;
}
#division .div_nav li .tArea p span {
    color: #ccc;
    font-weight: normal;
    font-size: 13px;
    font-family: 'Noto Sans', sans-serif;
    letter-spacing: 0.12em;
    display: block;
}
#division h3.blue_ttl {
    color: #1c5d9f;
    font-size: 24px;
    line-height: 1.3;
    letter-spacing: 0.08em;
    border-bottom: 4px solid #1c5d9f;
    position: relative;
    display: inline-block;
    padding: 0 4px 3px 3px;
    margin-bottom: 30px;
}
#division h3.blue_ttl span {
    color: #555;
    font-size: 14px;
    font-family: 'Noto Sans', sans-serif;
    letter-spacing: 0.12em;
    display: inline-block;
    margin-left: 15px;
}
#division .gray_ttl {
    color: #666;
    font-size: 18px;
    font-weight: bold;
    border-left: #666 3px solid;
    padding: 0px 0 2px 10px;
    margin: 0 0 20px 0;
}
#division .imgArea {
    text-align:center;
}
#division .imgArea p.img_name {
    color: #fff;
    background-color: #036;
    padding: 5px 0;
}

/*-- 一覧 --*/

#division_top ul {
    width: 100%;
    margin: 0 auto;
}
#division_top ul li {
    height: 210px;
    padding: 20px;
    margin-bottom: 30px;
}
#division_top ul li:nth-child(1) {
    background:url(../Images/division/div_img01.jpg) no-repeat;
    background-size:cover;
}
#division_top ul li:nth-child(2) {
    background:url(../Images/division/div_img02.jpg) no-repeat;
    background-size:cover;
}
#division_top ul li:nth-child(3) {
    background:url(../Images/division/div_img03.jpg) no-repeat;
    background-size:cover;
    margin-bottom: 0;
}
#division_top ul li a {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    display: inline-block;
    position: relative;
    outline: none;
    overflow: hidden;
    padding: 55px 50px;
}
#division_top ul li a::before,
#division_top ul li a::after {
    position: absolute;
    display: block;
    content: '';
    width: 100%;
    height: 100%;
    transition: all .5s;
}
#division_top ul li a::before {
    top: 0;
    left: 0;
    border-top: 1px solid #fff;
    border-left: 1px solid #fff;
}
#division_top ul li a::after {
    right: 0;
    bottom: 0;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
}
#division_top ul li .tArea h3 {
    color:#fff;
}
#division_top ul li .tArea h3 span {
    color: #ccc;
    font-weight: normal;
    margin-top: 5px;
}
#division_top ul li .tArea p {
    display: none;
}
#division_top ul li .tArea .more {
    text-align: center;
    margin: 0 0 0 -15px;
}

/*-- 営業部 --*/

#division_sales {
    width:100%;
    margin:0 auto;
}
#division_sales .imgArea {
    width: 200px;
    margin: 0 auto 20px;
}
#division_sales #sec01 dd {
    font-size: 15px;
    line-height: 1.8;
    margin-bottom:15px;
}
#division_sales #sec01 dd.last {
    margin: 0;
}
#division_sales #sec01 dd p {
    margin-bottom:15px;
}
#division_sales #sec01 dd.last {
    margin: 0;
}
#division_sales #sec01 dd .bg_list {
    background-color: #f5f5f5;
    padding: 20px 30px;
}
#division_sales #sec01 dd .bg_list .ttl {
    color: #666;
    font-weight: bold;
    background: url(../Images/common/arrow_gray.png) left center no-repeat #f3f3f3;
    padding-left: 25px;
    margin-bottom: 5px;
}
#division_sales #sec01 dd .bg_list li {
    font-size:14px;
}
#division_sales #sec01 dd .bg_list li:before {
    content: '';
    width: 4px;
    height: 4px;
    display: inline-block;
    border-radius: 100%;
    background: #1a5b9c;
    position: relative;
    left: 5px;
    top: -3px;
    margin-right: 15px;
}

/*-- 貿易部 --*/

#division_trade {
    width:100%;
    margin:0 auto;
}
#division_trade .imgArea {
    width: 200px;
    margin: 0 auto 20px;
}
#division_trade .tArea p {
    font-size: 15px;
    line-height: 1.8;
    margin-bottom: 20px;
}
#division_trade .tArea p:last-child {
    margin-bottom:0;
}

/*-- 経理部 --*/

#division_clerk {
    width:100%;
    padding:40px 0 0;
    margin:0 auto;
}
#division_clerk .inner {
    padding:0 0 40px;
}
#division_clerk .clerk_inner .top_txt {
    font-size: 16px;
    margin-bottom: 30px;
}
#division_clerk .clerk_inner dl {
    margin-bottom:45px;
}
#division_clerk .clerk_inner dl.last {
    margin: 0;
}
#division_clerk .clerk_inner dl dd {
    font-size: 15px;
    line-height: 1.8;
}
#division_clerk .clerk_inner dl dd > p {
    margin-bottom: 20px;
}
#division_clerk .clerk_inner dl dd .bg_list {
    background-color: #f5f5f5;
    padding: 20px 30px;
}
#division_clerk .clerk_inner dl dd .bg_list .ttl {
    color: #666;
    font-weight: bold;
    background: url(../Images/common/arrow_gray.png) left center no-repeat #f3f3f3;
    padding-left: 25px;
    margin-bottom: 5px;
}
#division_clerk .clerk_inner dl dd .bg_list li {
    font-size:14px;
}
#division_clerk .clerk_inner dl dd .bg_list li:before {
    content: '';
    width: 4px;
    height: 4px;
    display: inline-block;
    border-radius: 100%;
    background: #1a5b9c;
    position: relative;
    left: 5px;
    top: -3px;
    margin-right: 15px;
}
#division_clerk #sec02 .imgArea {
    margin-bottom:45px;
}

/*-------------------------------------
        採用情報
--------------------------------------*/

/*-- 共通 --*/

#recruit #mainimage {
    background:url(../Images/recruit/h2_bg.jpg) no-repeat;
    background-size:cover;
}

/*-- 募集要項 --*/

#recruit_top section table th {
    width: 20%;
    border-right: #fff 3px solid;
    border-bottom: #fff 3px solid;
    background-color: #ddd;
}
#recruit_top section table td {
    border-bottom: #fff 3px solid;
    background-color: rgba(221,221,221,0.5);
    padding: 15px 20px;
}
#recruit_top section table td a {
    color: #4a84b0;
    position: relative;
}
#recruit_top section table td a:before {
    content: "";
    width: 5px;
    height: 5px;
    display: inline-block;
    border-top: 2px solid #4a84b0;
    border-right: 2px solid #4a84b0;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    margin: -4px 8px 0 -2px;
}
#recruit_top section table td a:after {
    content: "";
    width: 0;
    background: #003366;
    transition: .24s all ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    position: absolute;
    left: 0;
    bottom: -0.03em;
}
#recruit_top #sec02 table td dl {
    margin-bottom:15px;
}
#recruit_top #sec02 table td dl dt {
    float: left;
    color: #1a5b9c;
    font-weight: bold;
}
#recruit_top #sec02 table td dl dd {
    padding-left:4.5em;
}

/*-- 求める人物像、先輩社員の声 --*/

#recruit_human section p,
#recruit_senior section p {
    line-height:1.8;
}
#recruit_human section p,
#recruit_senior section p {
    margin-bottom:20px;
}

#recruit_human section p.last,
#recruit_senior section p.last {
    margin: 0;
}

/*-- 採用エントリーフォーム --*/

#recruit_entry {
    margin-bottom: 40px;
}
#recruit_entry #sec01 {
    background-color: #ddd;
    padding: 40px 30px !important;
}
#recruit_entry #sec01 .top_txt {
    font-size: 16px;
    text-align: center;
    margin-bottom: 40px;
}
#recruit_entry #mailformpro {
    padding: 0;
}
#recruit_entry .mfp_phase {
    margin-bottom:15px;
}
#recruit_entry #sec01 table .mfp {
    width: 100%;
    text-align: left;
    box-sizing: border-box !important;
    display: block;
}
#recruit_entry #sec01 table th {
    line-height: 1.35;
    border-left: solid 3px #003366;
    padding: 2px 0 2px 10px;
    margin-bottom: 10px;
}
#recruit_entry #sec01 table th span.must-fill {
    color: #fff;
    font-size: 12px;
    letter-spacing: 0.2em;
    background-color: rgba(193,14,17,1.00);
    display: inline-block;
    padding: 1px 7px 2px;
    margin-left: 10px;
}
#recruit_entry #sec01 table th span.not-must-fill {
    background-color: #555;
}
#recruit_entry #sec01 table td {
    margin-bottom: 30px;
}
#recruit_entry #sec01 table td input,
#recruit_entry #sec01 table td textarea {
    border: none;
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 15px 15px;
}
#recruit_entry #sec01 table td ul li {
    margin-bottom:3px;
}
#recruit_entry #sec01 table td ul li:last-child {
    margin-bottom:0;
}
#recruit_entry #sec01 table td ul li span {
    float: left;
    padding-top: 4px;
}
#recruit_entry #sec01 table td ul li input,
#recruit_entry #sec01 table td ul li select {
    background: #fff;
    width: 100% !important;
    border: none;
    padding: 5px 10px !important;
}
#recruit_entry .mfp_buttons {
    text-align: center;
    padding: 0;
}
#recruit_entry button {
    color: #fff;
    font-size: 17px;
    font-family: "游ゴシック","YuGothic", "游ゴシック体","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: bold;
    letter-spacing: 0.1em;
    background: #003366;
    border: none;
    border-radius: 0 !important;
    -webkit-border-radius: 0 !important;
    -moz-border-radius: 0 !important;
    transition: .3s;
    padding: 10px 45px;
}
#recruit_entry button:hover {
    background: #333;
    cursor:pointer;
}

/*mailformproを使用する場合、エラーメッセージなどのエフェクトがうざい場合は以下を使ってください。must-fillはサイト毎に変更必要です。*/

/* フォーム部品のボックスシャドウ打消し */
#recruit_entry .mfp_element_text, #recruit_entry .mfp_element_number, #recruit_entry .mfp_element_select-one, #recruit_entry .mfp_element_email, #recruit_entry .mfp_element_tel, #recruit_entry .mfp_element_textarea {
    box-shadow:none;
}
/* 入力エラーのチカチカなし、文字色 */
#recruit_entry div.mfp_err {
    background:none;
    padding-left:0;
    color:#f26;
    font-weight:bold;
}
/* エラー箇所のフォーム部品を色つきで強調 */
#recruit_entry .problem {
    background-color:#fdd;
}
/* 入力OKのエフェクト */
#recruit_entry div.mfp_ok {
    background-color:#ff7500;
    border-color:#ff7500;
    font-size:12px;
}
/* チェックボックスのエフェクト打消し */
#recruit_entry form#mailformpro label.mfp_not_checked {
    padding:0;
    border:none;
}
#recruit_entry form#mailformpro label.mfp_checked {
    padding:0;
    border:none;
    background:none;
}
/* ボタンのエフェクト打消し */
#recruit_entry .mfp_element_submit, .mfp_element_reset, .mfp_element_button{
    text-shadow:none;
}
/* 内容確認画面のテーブルを全幅 */
#recruit_entry #mfp_confirm_table{
    font-family: "ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
}
#recruit_entry #mfp_confirm_table tr{
    background: #FFF !important;
}
/* 内容確認画面のテーブルのデザイン */
#recruit_entry #mfp_confirm_table th,
#recruit_entry #mfp_confirm_table td {
    border-left: none !important;
    padding: 15px 20px !important;
}
#recruit_entry #mfp_confirm_table th {
    color: #555;
    font-size: 14px !important;
}
#recruit_entry table#mfp_confirm_table tr td {
    padding:15px 20px;
    font-size: 14px !important;
}
#recruit_entry div#mfp_phase_confirm h4 {
    color: #036;
    font-size: 20px !important;
    margin-bottom: 20px;
}
/*-内容確認キャンセルボタン-*/
#recruit_entry div.mfp_buttons button#mfp_button_cancel{
    margin-left: 16px;
}

/*-------------------------------------
        お問い合わせ
--------------------------------------*/

#contact #contents {
    width: 100%;
    position:relative;
    padding: 40px 0;
    margin: 0 auto;
}
#contact #mainimage {
    background:url(../Images/under/h2_bg.jpg) no-repeat;
    background-size:cover;
}
#contact #sec01 {
    background-color:#ddd;
    padding: 40px 30px !important;
}
#contact #sec01 .sec01_inner {
    width:100%;
    margin:0 auto;
}
#contact #sec01 .top_txt {
    font-size:16px;
    text-align:center;
    line-height:1.8;
    margin-bottom:50px;
}
#contact #mailformpro {
    padding: 0;
}
#contact .mfp_phase {
    margin-bottom:40px;
}
#contact #sec01 table {
    width:100%;
}
#contact #sec01 table .mfp {
    width: 100%;
    text-align: left;
    box-sizing: border-box !important;
    display: block;
}
#contact #sec01 table th {
    line-height: 1.35;
    border-left: solid 3px #003366;
    padding: 2px 0 2px 10px;
    margin-bottom: 10px;
}
#contact #sec01 .table02 th {
    margin-bottom: 9px;
}
#contact #sec01 table th span.must-fill {
    color: #fff;
    font-size: 12px;
    letter-spacing: 0.2em;
    background-color: rgba(193,14,17,1.00);
    display: inline-block;
    padding: 1px 7px 2px;
    margin-left: 10px;
}
#contact #sec01 table th span.not-must-fill {
    background-color: #555;
}
#contact #sec01 table td {
    margin-bottom: 30px;
}
#contact #sec01 .table02 td {
    margin-bottom: 20px;
}
#contact #sec01 table td input,
#contact #sec01 table td textarea {
    border: none;
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 15px 15px;
}
#contact #sec01 .table02 td input,
#contact #sec01 .table02 td textarea {
    padding: 10px 15px;
}
#contact #sec01 table td ul li {
    margin-bottom:3px;
}
#contact #sec01 table td ul li:last-child {
    margin-bottom:0;
}
#contact #sec01 table td ul li span {
    float: left;
    padding-top: 4px;
}
#contact #sec01 table td ul li input,
#contact #sec01 table td ul li select {
    background: #fff;
    width: 100% !important;
    border: none;
    padding: 5px 10px !important;
}
#contact .mfp_buttons {
    text-align: center;
    padding: 0;
}
#contact button {
    color: #fff;
    font-size: 17px;
    font-family: "游ゴシック","YuGothic", "游ゴシック体","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: bold;
    letter-spacing: 0.1em;
    background: #003366;
    border: none;
    border-radius: 0 !important;
    -webkit-border-radius: 0 !important;
    -moz-border-radius: 0 !important;
    transition: .3s;
    padding: 10px 45px;
}
#contact button:hover {
    background: #333;
    cursor:pointer;
}

/*mailformproを使用する場合、エラーメッセージなどのエフェクトがうざい場合は以下を使ってください。must-fillはサイト毎に変更必要です。*/

/* フォーム部品のボックスシャドウ打消し */
#contact .mfp_element_text, #contact .mfp_element_number, #contact .mfp_element_select-one, #contact .mfp_element_email, #contact .mfp_element_tel, #contact .mfp_element_textarea {
    box-shadow:none;
}
/* 入力エラーのチカチカなし、文字色 */
#contact div.mfp_err {
    background:none;
    padding-left:0;
    color:#f26;
    font-weight:bold;
}
/* エラー箇所のフォーム部品を色つきで強調 */
#contact .problem {
    background-color:#fdd;
}
/* 入力OKのエフェクト */
#contact div.mfp_ok {
    background-color:#ff7500;
    border-color:#ff7500;
    font-size:12px;
}
/* チェックボックスのエフェクト打消し */
#contact form#mailformpro label.mfp_not_checked {
    padding:0;
    border:none;
}
#contact form#mailformpro label.mfp_checked {
    padding:0;
    border:none;
    background:none;
}
/* ボタンのエフェクト打消し */
#contact .mfp_element_submit, .mfp_element_reset, .mfp_element_button{
    text-shadow:none;
}
/* 内容確認画面のテーブルを全幅 */
#contact #mfp_confirm_table{
    font-family: "ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
}
#contact #mfp_confirm_table tr{
    background: #FFF !important;
}
/* 内容確認画面のテーブルのデザイン */
#contact #mfp_confirm_table th,
#contact #mfp_confirm_table td {
    border-left: none !important;
    padding: 15px 20px !important;
}
#contact #mfp_confirm_table th {
    color: #555;
    font-size: 14px !important;
}
#contact table#mfp_confirm_table tr td {
    padding:15px 20px;
    font-size: 14px !important;
}
#contact div#mfp_phase_confirm h4 {
    color: #036;
    font-size: 20px !important;
    margin-bottom: 20px;
}
/*-内容確認キャンセルボタン-*/
#contact div.mfp_buttons button#mfp_button_cancel{
    margin-left: 16px;
}

/*-------------------------------------
    お問い合わせ・採用フォーム送信完了
--------------------------------------*/

#thanks #mainimage {
    background:url(../Images/under/h2_bg.jpg) no-repeat;
    background-size:cover;
}
#thanks .thanks_inner {
    width: 100%;
    text-align: center;
    padding: 80px 0;
    margin: 0 auto;
}
#thanks .thanks_inner p {
    font-size:16px;
    line-height: 1.8;
    margin-bottom:40px;
}
#thanks .thanks_inner a {
    color: #fff;
    font-weight: bold;
    letter-spacing: 0.1em;
    background: #003366;
    border: none;
    border-radius: 0 !important;
    -webkit-border-radius: 0 !important;
    -moz-border-radius: 0 !important;
    transition: .3s;
    padding: 10px 45px;
}

/*-------------------------------------
        プライバシーポリシー
--------------------------------------*/

#privacypolicy .inner {
    padding:40px 0;
}
#privacypolicy #mainimage {
    background:url(../Images/under/h2_bg.jpg) no-repeat;
    background-size:cover;
}
#privacypolicy #sec01 {
    width:100%;
    margin:0 auto;
}
#privacypolicy #sec01 .top_txt {
    margin-bottom:30px;
}
#privacypolicy #sec01 .top_txt a {
    color:#4a84b0;
    letter-spacing:0.05em;
    display:inline-block;
    position: relative;
    padding:0 2px;
}
#privacypolicy #sec01 .top_txt a:after {
    content: "";
    width: 0;
    background: #003366;
    transition: .24s all ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    position: absolute;
    left: 0;
    bottom: -0.03em;
}
#privacypolicy #sec01 ul.sec01_list > li {
    margin-bottom:30px;
}
#privacypolicy #sec01 li h3 {
    color: #1c5d9f;
    font-size: 18px;
    line-height: 1.3;
    letter-spacing: 0.08em;
    border-bottom: 4px solid #1c5d9f;
    position: relative;
    display: inline-block;
    padding: 0 4px 3px 3px;
    margin-bottom: 20px;
}
#privacypolicy #sec01 li .num_list {
    margin-top:15px;
}
#privacypolicy #sec01 li .num_list > li {
    list-style: outside decimal;
    padding: 0 0 0 0.5em;
    margin: 0 0 3px 2em;
}
#privacypolicy #sec01 li table {
    width: 100%;
    font-size: 12px;
}
#privacypolicy #sec01 li table th {
    width: 20%;
    border-right: #fff 3px solid;
    border-bottom: #fff 3px solid;
    background-color: #ddd;
    padding: 15px 20px;
}
#privacypolicy #sec01 li table td {
    border-bottom: #fff 3px solid;
    background-color: rgba(221,221,221,0.5);
    padding: 15px 15px;
}
#privacypolicy #sec01 li:last-child {
    margin-bottom:0!important;
}

/*-------------------------------------
        サイトマップ
--------------------------------------*/

#sitemap .inner {
    padding:40px 0 15px;
}
#sitemap #mainimage {
    background:url(../Images/under/h2_bg.jpg) no-repeat;
    background-size:cover;
}
#sitemap #sec01 {
    width:100%;
    margin:0 auto;
}
#sitemap #sec01 .sec01_list > li {
    margin-bottom:20px;
}
#sitemap #sec01 ul li a {
    width: 100%;
    color: #333;
    box-sizing: border-box;
    padding: 15px 20px 15px 50px;
}
#sitemap #sec01 .sec01_list > li a {
    color: #fff;
    background: url(../Images/common/arrow_white.png) left 20px center no-repeat #003366;
}
#sitemap #sec01 .inner_list {
    margin-top:4px;
}
#sitemap #sec01 .inner_list li {
    margin-bottom: 4px;
}
#sitemap #sec01 .inner_list li a {
    color: #333;
    background: url(../Images/common/arrow_gray.png) left 20px center no-repeat #f3f3f3;
}
#sitemap #sec01 li:last-child {
    margin-bottom:25px;
}

/*-------------------------------------
        アクセスマップ
--------------------------------------*/

#access #mainimage {
    background:url(../Images/under/h2_bg.jpg) no-repeat;
    background-size:cover;
}
#access #gMap {
    width: 100%;
    height: 500px;
    margin: 40px auto;
}

/*-------------------------------------
        お知らせ
--------------------------------------*/

#topics #mainimage {
    background:url(../Images/topics/h2_bg.jpg) no-repeat;
    background-size:cover;
}
#topics #sec01 ul {
    padding:0 5%;
}
#topics #sec01 ul li a {
    display: block;
    padding: 15px 0;
    border-bottom: 1px solid #ddd;
}
#topics #sec01 ul li dl dt {
    color: #555555;
    font-size: 13px;
    font-weight: bold;
    letter-spacing: 0.08em;
}
#topics #sec01 p {
    margin-bottom: 20px
}
#topics #sec01 h4 {
    color: #666;
    font-size: 16px;
    font-weight: bold;
    border-left: #666 3px solid;
    padding-left: 8px;
    margin-bottom: 10px;
}

/*-------------------------------------
        404
--------------------------------------*/
#not_found #mainimage {
    background:url(../Images/company/h2_bg.jpg) no-repeat;
    background-size:cover;
}
#not_found #sec01 {
    width: 100%;
    margin: 0 auto;
}
#not_found .inner {
    padding:40px 0;
}
#not_found #sec01 .txt {
    font-size: 14px;
    text-align: center;
}

/*add*/
#access #contents {
    width: 100%;
    position:relative;
    padding: 40px 0 0;
    margin: 0 auto;
}
#access #sec01 {
    width:100%;
    margin:0 auto;
}
#access .map_con {
    letter-spacing: -0.4em;
    margin: 0;
    padding: 0;
}
#access .map_con .map_box {
    width: 100%;
    margin-bottom: 30px;
    margin-right: 0;
}
#access .map_con .map_box:last-child {
    margin-right: 0;
}
#access h3 {
    color: #1c5d9f;
    font-size: 20px;
    line-height: 1.3;
    letter-spacing: 0.08em;
    border-bottom: 4px solid #1c5d9f;
    position: relative;
    display: inline-block;
    padding: 0 4px 3px 3px;
    margin-bottom: 20px;
}
#access .googleMap {
    display: block;
    position: relative;
    padding: 0;
    margin: 0;
}
#access .googleMap iframe {
    filter: saturate(1) brightness(1.00);
    margin-bottom: -6px;
}
#access .googleMap:after {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    background-color: #4a84b0;
    position: absolute;
    top: 0;
    left: 0;
    mix-blend-mode: hue;
    pointer-events: none;
}
/*20231222*/
#company_policy #sec01 .num_list {
    margin:0 0 25px;
}
#company_policy #sec01 .num_list > li {
    list-style: outside decimal;
    padding: 0 0 0.5em 0.5em;
    margin: 0 0 0 2em;
}
#company_policy #sec01 .num_list > li:last-child {
    padding-bottom:0;
}

}