@charset "utf-8";
/* CSS Document */

/**
/* #topicPath
/* #contents
/* #contentsBody
/* company
/* policy
/* safety
/* feature
/* news
/* works
*/

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Shippori+Mincho+B1:wght@400;700&family=Shippori+Mincho:wght@500;800&display=swap');


/* @font-face {
    font-family: 'TamanegiKaisho'; 
    src: url('/img/tamanegi_kaisho_free.woff') format('woff');
    font-weight: normal;
    font-style: normal;
} */


:root {

  }

.news_tit img, 
#contents.top #news .btnlist img,
#contents.top #news .btnPrev img,
#contents.top #news .btnNext img,
.top_cnts .top_cnt img
{
    width: 100%;
}

/* 100% */



body{
    font-family: YakuHanJP, 'Noto Sans JP', sans-serif;
    font-weight: 400;
    letter-spacing: 0.2px;
}


.pcdis{
    display:block;
    }
    @media (max-width: 768px){
.pcdis{
    display:none;}}
    
.spdis {
    display:none;
    }
    @media (max-width: 768px){
.spdis {
    display:block;}}



/* #topicPath
--------------------- */

#topicPath {      font-size: 14px;
line-height: 1;
padding: 30px 0 15px;
}
#topicPath li {
display: inline;
}
#topicPath a {
color: #333;
text-decoration: none;
}
#topicPath a:hover {
text-decoration: underline;
}
@media only screen and (max-width: 600px) {
#topicPath {
   font-size: 11px; 
    padding: 4vw 4vw 6px;}}


/* #contents
--------------------- */

#contents.lower {
padding-bottom: 100px;
}
@media only screen and (max-width: 600px) {
#contents.lower {
    padding-bottom: 20px;}}

/* h2 */
#contents.lower h2 {
color: #1D2C68;
font-size: 25px;
font-weight: 500;
line-height: 1.2;
margin-bottom: 23px;
border-bottom: 1px solid rgba(29,44,104,0.20);
letter-spacing: 0.1em;
padding-bottom:	10px;
}
@media only screen and (max-width: 600px) {
#contents.lower h2 {
    font-size: 18px;
    margin: 12px auto;
    padding: 0 6.25vw 1.25vw;
    text-align: center;
}}

/* .heading-m */
#contents.lower .heading-m {
border-bottom: 1px solid #73A1D7;
color: #1D2C68;
font-family: YakuHanJP, source-han-sans-japanese, sans-serif;
font-size: 20px;
/* font-weight: bold; */
/*  letter-spacing: 5px;*/
letter-spacing: 2px;
margin-bottom: 50px;
padding-bottom: 14px;
}

#contents.lower .heading-m.doc-area {
    font-size: 20px;
    /* font-weight: bold; */
    /*  letter-spacing: 5px;*/
    letter-spacing: 2px;
    margin-bottom: 20px;
    padding-bottom: 20px;
    }

    #contents.lower .heading-m.doc-area span.mini {
        font-size: 75%;
        letter-spacing: 1px;
        }


@media only screen and (max-width: 600px) {
#contents.lower .heading-m {
    margin-bottom: 10px;
    padding-bottom: 6px;}}

/* #contentsInner */
#contents.lower #contentsInner {
max-width: 740px;
margin: 0 auto;
font-size: 16px;
line-height:1.8;
}
@media (max-width: 768px){
#contents.lower #contentsInner {
font-size: 20px;
}}

/* #visual */
#contents.lower #visual {
margin-bottom: 90px;
width: 100%;
max-width: 740px;
}
#contents.lower #visual img {
width: 100%;}

@media only screen and (max-width: 600px) {
#contents.lower #visual {
    margin-bottom: 36px;
}

}


/* #contentsBody
--------------------- */

#contentsBody {
    max-width: 740px;
    margin: 0 auto;
}
@media only screen and (max-width: 600px) {
#contentsBody {
    padding: 0 6.25vw;
}}

/* section */
#contentsBody section {
margin-bottom: 70px;
font-size: 14px;
}
@media only screen and (max-width: 600px) {
#contentsBody section {
    margin-bottom: 50px;
}}

/* p */
#contentsBody p {
font-size: 16px;
line-height: 2.2;
margin-bottom: 28px;
text-align: justify;
}
@media only screen and (max-width: 600px) {
#contentsBody p {
    font-size: 14px;
    line-height: 1.8;
}}


/* #lNav
--------------------- */

#lNav ul {
line-height: 1;
max-width: 600px;
margin: 0 auto;
}
#lNav ul:before,
#lNav ul:after {
    content: "";
    display: table;
}
#lNav ul:after {
    clear: both;
}
#lNav ul {
    zoom: 1;
}
#lNav li {
float: left;
border-right: 1px solid #fff;
}
#lNav li:last-child {
border-right: 0;
}
#lNav li a {
background: #D3E8C3;
color: #fff;
display: block;
font-size: 14px;
font-weight: bold;
padding: 13px 0;
text-align: center;
text-decoration: none;
width: 100%;
}
#lNav li a:hover,
#lNav li.current a {
/*background: #3EB134;*/
background: #1D2C68;
}
@media only screen and (max-width: 600px) {
#lNav ul {
    padding: 0 6.25vw;
}
#lNav li {
    margin-bottom: 3%;
    width: 48.5%!important;
}
#lNav li:nth-child(2n+1) {
    margin-right: 3%;
}
#lNav li:nth-child(2n) {
    border-right: 0;
}
#lNav li a {      font-size: 14px;
    padding: 13px 0;
}}


/* top
--------------------- */

/* #visual */
#contents.top #visual img {
width: 100%;
}
@media only screen and (max-width: 600px) {
#contents.top #visual {
            box-shadow: 0 0 30px 0 rgba(0,0,0,0.15);
    position: relative;
    z-index: 1;
}}

/* #contentsInner */
#contents.top #contentsInner {
        box-shadow: 0 0 30px 0 rgba(0,0,0,0.15);
position: relative;
}
@media only screen and (max-width: 600px) {
#contents.top #contentsInner {
            box-shadow: none;
}}

/* #news */
#contents.top #news {
height: 110px;
margin: 0px;
padding: 25px 0px 30px;
position: relative;
width: 100%;
background: #fff;
/* border: #00002F 1px solid; */
/* margin-bottom: 40px; */
}

#contents.top #news h2 {
left: 30px;
position: absolute;
top: 20px;
}
#contents.top #news h2 img {
width: 58px;
}
#contents.top #news > div {

height: 70px;
padding:0px 105px 0px 105px;
position: relative;
width: 100%;
max-width: 870px;

margin: 0 auto;
}

/* .__slider */
.__slider {
height: 100%;
overflow: hidden;
position: relative;
width: 100%;
}

#contents.top #news ul {
height: 100%;
position: relative;
}
#contents.top #news ul:before,
#contents.top #news ul:after {
    content: "";
    display: table;
}
#contents.top #news ul:after {
    clear: both;
}
#contents.top #news ul {
    zoom: 1;
}
#contents.top #news li {
float: left;
border-left: 0px solid #CFD0D0;
height: 100%;
font-size: 1.15rem;
line-height: 1.5;
/* padding: 0 12px; */
padding: 0 15px 0 10px;

}
#contents.top #news li p:last-child {
/* margin: -1.7em 0 0 6em; */
margin: 0;
}
#contents.top #news li a {
color: #333;
font-weight: bold;
text-decoration: none;
font-size: 13.5px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden; 
  line-height: 1.5;

}
#contents.top #news li a:hover {
text-decoration: underline;
}
/**/
/* .btn */
#contents.top #news .btnPrev, #contents.top #news .btnNext, #contents.top #news .news_tit,#contents.top #news .btnlist  {
display: table;
height: 100%;
position: absolute;
top: 0;
z-index: 1;
}



@media (max-width: 768px){
#contents.top #news .btnPrev, #contents.top #news .btnNext, #contents.top #news .news_tit,#contents.top #news .btnlist  {
position: static;
  padding: 17px 7.8125vw 17px;
  border-bottom:1px solid #CFD0D0;
width: 100vw;
}}


#contents.top #news .news_tit{
width: 55px;
left: 0px;
margin: 10px 0 0px 0;
height: auto;
}
@media (max-width: 768px){
#contents.top #news .news_tit{
left: 20px;	
  width: 90vw;
  margin: 0 4vw;
}}





#contents.top #news .btnPrev,#contents.top #news .btnNext {
    margin: 15px 0 0px 0;
    width: 30px;
    height: auto;
}

#contents.top #news .btnPrev {
    left: 77px;
    border-right: 1px solid #45b03587;
    padding-right: 10px;
}

#contents.top #news .btnNext {
right: 85px;
border-left: 1px solid #45b03587;
padding-left: 10px;
}

#contents.top #news .btnlist {
right: 0px;
margin: 10px 0 0px 0;
height: auto;
width: 86px;
padding-left: 10px;
}


#contents.top #news .btnPrev > div,
#contents.top #news .btnNext > div {
display: table-cell;
height: 100%;
vertical-align: middle;
}
#contents.top #news .btnPrev span,
#contents.top #news .btnNext span {
cursor: pointer;
display: inline-block;
}
#contents.top #news .btnPrev img,
#contents.top #news .btnNext img {

   opacity: 0.85;
        transform: translate(0, 0);
        transition: .1s ease-in-out;
width: 100%;
}
#contents.top #news .btnPrev span:hover img,
#contents.top #news .btnNext span:hover img {
    filter: alpha(opacity=100);
   opacity: 1;
}
#contents.top #news .btnPrev span:hover img {
        transform: translate(-2px, 0);
}
#contents.top #news .btnNext span:hover img {
        transform: translate(2px, 0);
}
@media only screen and (max-width: 600px) {
#contents.top #news {
    height: auto;
    margin-top: 0;
/*      padding: 0 0 9.375vw;*/
          padding: 0 0 5vw;
}
#contents.top #news h2 {
    left: 0;
    padding: 7vw 7vw 0;
    /*		padding: 9.375vw 7.8125vw 0;*/
    position: relative;
    top: 0;
}
#contents.top #news > div {
    height: auto;
    padding: 0;
      border: 0px solid #dddddd;
}
#contents.top #news .btnPrev,
#contents.top #news .btnNext {
    display: none!important;
}
#contents.top #news ul {
    height: auto;
    left: 0!important;
}
#contents.top #news li {
    border-bottom: 1px dotted #CFD0D0;
    float: none;
    border-left: 0;
    height: auto;
    padding: 3vw 4vw;
    margin: 0 5vw;
    width: 90vw!important;
}
#contents.top #news li:nth-child(n+5) {
    display: none;
}
#contents.top #news li p:first-child {
    margin: 0 0 5px;
}
#contents.top #news li p:last-child {
    margin: 0;
}
#contents.top #news .btnlist {
display: none;
}


}


/**/


.top_cnts{
    background: url(../img/top/cnts-bg.webp);
    padding: 0px 0;
    background-position: center bottom;
    background-size: cover;
}

.top_cnts-b{
    background: url(../img/top/cnts-bg-b.webp) no-repeat;
    padding: 60px 0;
    background-position: center center;
    background-size: 1040px;
}



.top_cnt, .top_cnt_b{
overflow: hidden;
justify-content: center;
width: 870px;
margin: 0 auto 0px;	
}

.top_cnt.second{
margin: 60px auto 0px;	
}

.top_cnt_b{
width: 890px;
margin: 0 auto 10px;	
}

.top_cnt_b a, .top_cnt_b a:hover{
text-decoration:none;	
}


@media (max-width: 768px){
.top_cnts {
padding: 0px 0;
background: none;
}

.top_cnt.second{
margin: 30px auto 0px;	
}

.top_cnts::before {
  content: "";
  position: absolute;
  /* top: 0;
  left: 0; */
  width: 100%;
  height: 100%;
  background: url(../img/top/cnts-bg.webp) no-repeat center bottom / cover;
  opacity: 0.3; /* 背景画像の透明度 */
  z-index: -1;
  pointer-events: none; /* 背景でクリックを遮らないように */
}

.top_cnts-b {
padding: 5vw;
background: none;
}

.top_cnt, .top_cnt_b{
width: 100%;
margin: 0 auto 3em;	
}


.news_btn_sp{

}


}


.bnrs_recruit{
justify-content: center;
background: url(../img/top/top_bg_img.webp) no-repeat 50% 50% ;
width: calc( 100vw - 160px );
/*height: 30.7692308vw;*/
height: 350px;
background-size:cover;
margin: 0 0 100px;
}
@media (max-width: 768px){
.bnrs_recruit{
width: 100vw;
height: 90vw;
background-size:cover;
margin: 0 0 40px;
}}

.bnrs_recruit_in{
margin: 0 auto ;
width: 860px;
}
@media (max-width: 768px){
.bnrs_recruit_in{
width: 100%;
}}

.cnt_1, .cnt_2, .cnt_3, .cnt_4, .cnt_5, .cnt_7, .cnt_8{
width: 410px;
text-align: center;	
}
.cnt_1, .cnt_4, .cnt_7{
float: left;	
}

.cnt_2, .cnt_3, .cnt_8{
float: right;
/*width: 400px;*/
}
.cnt_5{
float: left;	
height: 380px;
width: 380px;
background-image: url(../img/top/top-map.webp) ;
background-size: 388px;
background-repeat: no-repeat;
}   
.cnt_8{
position: relative;	
text-align: center;
/*height: 30.7692308vw;	*/
height: 350px;	
}
@media (max-width: 768px){
.cnt_1, .cnt_2, .cnt_3, .cnt_4, .cnt_5, .cnt_7, .cnt_8{
width: 100%;
}
.cnt_1 img,.cnt_3 img{
    width: 84%;
}

.cnt_5{
background-image: none;
height: auto;
margin: 10px auto 50px;
}


.cnt_8{
height: initial;	
}}



.cnt_8 .bnr_img{
position: absolute;	
top: 50%;
left: 50%;
transform : translate(-50%,-50%);
width: 100%;
}
.bnr_img img{
padding: 20px;	
width: 28vw;
max-width: 390px;
min-width: 280px;
}
@media (max-width: 768px){
.cnt_8 .bnr_img{
margin-top: 110px;
}
.bnr_img img{
padding: 10px;
min-width: auto;
width: 80vw;    
}  
}




.cont_tit, .cont_tit_b, .cont_tit_re{
font-family: 'Oswald', sans-serif;
color: #21124e;	
font-size: 38px;
font-weight: 400;
position: relative;
z-index: 2;
margin-top: 40px;
letter-spacing: 0.08em;	
}
@media (max-width: 768px){
.cont_tit, .cont_tit_b, .cont_tit_re{  
margin-top: 30px; 
font-size: 30px      
}}

.cont_tit_b{
font-size: 30px;
margin-top: 20px;
}
.cont_tit_re{
color: #ffffff;	
margin-top: 110px;
}
@media (max-width: 768px){
.cont_tit_b{
font-size: 30px;
}
.cont_tit_re{
margin-top: 20px;
font-size: 30px;    
}
}

.cnt_5-leftｰwide{
width: 230px;
}

.con_left{
/* float: left; */
}
@media (max-width: 768px){

.cnt_5-leftｰwide{
width: 100%;
}
.con_left{
    /* float: none; */
}
}

.con_right{
}
@media (max-width: 768px){
.con_right{
margin-bottom: 0em;    
}}

.cont_tit:after, .cont_tit_b:after, .cont_tit_re:after{
  content: '';
  display: inline-block;
  width: 36px;
  height: 36px;
  /* background: url(../img/top/cnt_bg.png) no-repeat 50% 50% ; */
      background: url(../img/top/cnt_bg.png) no-repeat center bottom / cover;
  left:45%;
   top: -12px;
  position: absolute;
  z-index: -1;

  @media (max-width: 768px){
    top: 0px;
  }

}
.cont_tit_re:after{
  background: url(../img/top/cnt_bg2.png) no-repeat 50% 50% ;
  opacity: 0.6;
 
}

.cont_tit_b:after{
  /* background: url(../img/top/cnt_bg.png) no-repeat 50% 50% ; */
  background: url(../img/top/cnt_bg.png) no-repeat center bottom / cover;
  left:38%;
}
@media (max-width: 768px){
.cont_tit_b:after{
  left:46%;
}}




.cont_tit_sub, .cont_tit_sub_b, .cont_tit_sub2, .cont_tit_sub2_b, .cont_tit_sub_re, .cont_tit_sub2_re{
font-size: 14px;
}
.cont_tit_sub2{
    font-size: 16px;
}


@media (max-width: 768px){
.cont_tit_sub, .cont_tit_sub_b, .cont_tit_sub2, .cont_tit_sub2_b, .cont_tit_sub_re, .cont_tit_sub2_re{
font-size: 12.5px;
}}

.cont_tit_sub, .cont_tit_sub_b, .cont_tit_sub_re{
color: #21124e;
margin: 0.3em 0 1em;	
}
@media (max-width: 768px){
.cont_tit_sub, .cont_tit_sub_b, .cont_tit_sub_re{
margin: 0.3em 0 0.5em;    
}
.cont_tit_sub, .cont_tit_sub_b{
/* font-weight: 600;     */
margin: 5px auto 10px;
}
}

.cont_tit_sub2, .cont_tit_sub2_b, .cont_tit_sub2_re{
width: 360px;
text-align: center;
margin:  0 auto;
line-height: 1.6;	
}
.cont_tit_sub2_b{
color: #21124e;	
/* margin: 4px 0px 0 180px; */
width: 230px;
margin: 5px auto;
line-height: 1.6;
display: table;	
font-size: 22px;
}
.cont_tit_sub_re, .cont_tit_sub2_re{
color: #ffffff;	
width: 420px;	
text-align: center;
}
@media (max-width: 768px){
  .cont_tit_sub2, .cont_tit_sub2_b, .cont_tit_sub2_re{
font-size: 14px;		
}	
.cont_tit_sub_re, .cont_tit_sub2_re{
width: 100%;	
}
.cont_tit_sub2_b{
text-align: center;
width: 100%;
margin: 0 auto;
border-bottom: 1px dotted #999;
padding: 0em 0 0.5em;    
}

.cont_tit_sub2_b.no-line{
    border-bottom: 0px dotted #999;
    width:fit-content;
    color: #333;
    padding: 0.5em 0 1em;   
}}

.cont_tit_sub2_re{
font-size: 25px;	
}
@media (max-width: 768px){
.cont_tit_sub2_re{
font-size: 18px;	
} 
}

.cont_tit_btm{
    display: none;
}
@media (max-width: 768px){
.cont_tit_btm{
width: 100%;
margin: -140px auto 0px;
}
.cont_tit_btm img{
width: 100%;
height: auto;	
}}

.cont_tit_nxt{
font-size: 15px;
color: #21124e;
margin-top: 2em;
}
.cont_tit_nxt:after{
  content: '';
  display: inline-block;
  width: 18px;
  height: 18px;
  background: url(../img/top/next_small.png) no-repeat 50% 50% ;
  margin-left: 0.3em;
  vertical-align: bottom;
  background-size: cover;
}
@media (max-width: 768px){
.cont_tit_nxt{
margin-top: 1em;
} }


/**/
/* #bnrs1 */
#contents.top #bnrs1 {
        box-shadow: 0 0 20px 0 rgba(0,0,0,0.1);
padding: 60px 50px 30px;
position: relative;
z-index: 2;
  /* background: url(../img/top/top_list_bg.png)  ,#fff; */
    background: #fff;
  background-size: 9%;

}
#contents.top #bnrs1 ul:before,
#contents.top #bnrs1 ul:after {
    content: "";
    display: table;
}
#contents.top #bnrs1 ul:after {
    clear: both;
}
#contents.top #bnrs1 ul {
    zoom: 1;
}
#contents.top #bnrs1 li {
float: left;
margin: 0 2.33% 2.33% 0;
/*	margin: 0 5.33% 5.33% 0;*/
width: 27%;
}
/*#contents.top #bnrs1 li:nth-child(5n+4) { 2018*/
/*#contents.top #bnrs1 li:nth-child(4n) {*/
#contents.top #bnrs1 li:nth-child(2n) {
margin-right: 0;
}
#contents.top #bnrs1 li img {
width: 100%;
}
#contents.top #bnrs1 li:nth-child(-n+4) img {
/*#contents.top #bnrs1 li:nth-child(-n+4) img {*/
/*border: 1px solid #ccc;*/
}
@media only screen and (max-width: 600px) {
#contents.top #bnrs1 {
padding: 6.25vw 6.25vw 6.25vw;
	background-size: 15%;    
}
#contents.top #bnrs1 li {
    float: none;
    margin: 0 auto 6.25vw;
    width: 80%;
}
#contents.top #bnrs1 li:nth-child(2n) {
    margin-right: auto;
}


#contents.top #bnrs1 li:nth-child(4) {
    border-bottom: 1px solid #ccc;
    padding-bottom: 6.25vw;
    background: fff;
}
#contents.top #bnrs1 li:last-child {
    margin-bottom: 0;
}}

/* #bnrs2 */
#contents.top #bnrs2 {
background: #EEEDF4;
padding: 50px;
position: relative;
z-index: 1;
}
#contents.top #bnrs2 li {
margin-bottom: 3.33%;
}
#contents.top #bnrs2 li:last-child {
margin-bottom: 0;
}
#contents.top #bnrs2 li img {
width: 100%;
}
@media only screen and (max-width: 600px) {
#contents.top #bnrs2 {
    padding: 6.25vw;
}
#contents.top #bnrs2 li {
    float: none;
    margin: 0 0 6.25vw 0;
    width: 100%;
}
#contents.top #bnrs2 li:last-child {
    margin-bottom: 0;
}}


/* #bnrs3 */
#contents.top #bnrs3 {
background: #eaf1f9;
padding: 60px 50px 60px;
/*	padding: 50px 50px 25px;*/
position: relative;
z-index: 1;
}
#contents.top #bnrs3 ul:before,
#contents.top #bnrs3 ul:after {
    content: "";
    display: table;
}
#contents.top #bnrs3 ul:after {
    clear: both;
}
#contents.top #bnrs3 ul {
    zoom: 1;max-width: 670px;margin: 0 auto;width: 100%;
}
#contents.top #bnrs3 li {
float: left;
/*	margin: 0 5.33% 5.33% 0;*/
/*  width: 37%;*/
margin: 0 7% 0% 0;
  width: 46.5%;
}
#contents.top #bnrs3 li:first-child {
/*      width: 60%;*/
}
@media (max-width: 768px){
#contents.top #bnrs3 li:first-child {
    width: 100%;
}}
#contents.top #bnrs3 li:nth-child(2n) {
margin-right: 0;
}
#contents.top #bnrs3 li img {
width: 100%;
}
@media (max-width: 768px){
#contents.top #bnrs3 li img {
width: 80%;
margin: 0 auto;
}}

#contents.top #bnrs3 li:nth-child(-n+4) img {
border: 1px solid #21124e;
}
@media only screen and (max-width: 600px) {
#contents.top #bnrs3 {
    padding: 12vw 6.25vw 6.25vw;
}
#contents.top #bnrs3 li {
    float: none;
    margin: 0 0 6.25vw 0;
    width: 100%;
	text-align: center;
}
#contents.top #bnrs3 li:nth-child(4) {
    border-bottom: 1px solid #ccc;
    padding-bottom: 6.25vw;
}
#contents.top #bnrs3 li:last-child {
    margin-bottom: 0;
}}

/* company
--------------------- */

/* #contentsBody */
@media only screen and (max-width: 600px) {
#contents.company #contentsBody {
    padding: 0 10.93vw;
}}

/* h3 */
#contents.company h3 {
color: #45B035;
font-family: YakuHanJP, source-han-sans-japanese, sans-serif;
font-size: 20px;
font-weight: bold;
line-height: 2;
letter-spacing: 4px;
margin-bottom: 60px;
text-align: center;
}
#contents.company p{
    font-size: 15px
}


@media only screen and (max-width: 600px) {
    #contents.company h3 {
        font-size: 15px;
        letter-spacing: 0.5px;
        margin-bottom: 20px;
    }
#contents.company h3 img {
    max-width: 100%;
    width: 233px;
}
#contents.company p{
    font-size: 14px;
    line-height: 2.1;
}

}

/* .sign */
#contents.company p.sign {

font-family: var(--fntf-j01);
margin-top: -40px;
text-align: right;
align-items: flex-end;
}

.sign-txt{
font-size: 90%;
}
.sign-txt2{
letter-spacing: 1px;
    }

 #contents.company p.sign img {
margin-bottom: -10px;
width: 160px;
} 
@media only screen and (max-width: 600px) {
#contents.company p.sign {
    margin-top: -28px;
}
#contents.company p.sign img {
    width: 160px;
    } 

}


/* policy
--------------------- */

/* #mission */
#contents.policy #mission dl {
font-weight: bold;
line-height: 1;
margin: 50px auto 50px 45px;
width: 530px;
}
#contents.policy #mission dl:before,
#contents.policy #mission dl:after {
    content: "";
    display: table;
}
#contents.policy #mission dl:after {
    clear: both;
}
#contents.policy #mission dl {
    zoom: 1;
}
#contents.policy #mission dt {
float: left;
font-family: var(--fntf-j02);
font-size: 29px;
font-weight: 900;
letter-spacing: 5px;
width: 290px;
}
#contents.policy #mission dd {
float: left;
font-family: var(--fntf-j02);
font-size: 16px;
padding-top: 9px;
width: 240px;
}
#contents.policy #mission .policya-txt001 {
width: 630px;
margin-bottom: 50px;
}
#contents.policy #mission .policya-txt001 img{  width: 100%;}

#contents.policy #mission .policy-txt1{
    max-width: 740px;
    margin-bottom: 40px;
}
#contents.policy #mission .policy-txt1 img{ width: 100%;}


@media only screen and (max-width: 600px) {
#contents.policy #mission dl {
    width: 100%;
    margin: 40px auto 40px auto;
}
#contents.policy #mission dt {
    float: none;
    font-size: 24px;
    margin-bottom: 10px;
    text-align: center;
    width: 100%;
}
#contents.policy #mission dd {
    float: none;
    text-align: center;
    width: 100%;
    padding-top: 2px;
}
#contents.policy #mission .policya-txt001 {
    width: 90%;
    margin: 40px auto 40px;
    }
#contents.policy #mission .policy-txt1{
    margin: 30px auto ;
}

}

/* #philosophy */
#contents.policy #philosophy dl {
font-weight: bold;
line-height: 1;
margin-bottom: 50px;
padding-left: 60px;
position: relative;
}
#contents.policy #philosophy dl:before,
#contents.policy #philosophy dl:after {
    content: "";
    display: table;
}
#contents.policy #philosophy dl:after {
    clear: both;
}
#contents.policy #philosophy dl {
    zoom: 1;
}
#contents.policy #philosophy dt {
font-family: var(--fntf-j02);
font-size: 25px;
font-weight: bold;
letter-spacing: 2px;
margin-bottom: 15px;
}
#contents.policy #philosophy dt span {
position: absolute;
left: 0;
}
#contents.policy #philosophy dd {
font-family: var(--fntf-j01);
font-size: 16px;
font-weight: 400;
line-height: 1.5;
}


#contents.policy #philosophy .policya-txt002 {
    width: 630px;
    margin-bottom: 50px;
}
    
#contents.policy #philosophy .policya-txt002 img{  width: 100%;}

#contents.policy #philosophy .policy-txt1{
    max-width: 740px;
    margin-bottom: 20px;
}
#contents.policy #philosophy .policy-txt1 img{  width: 100%;}



@media only screen and (max-width: 600px) {
#contents.policy h3 {
    margin-bottom: 30px;
}
#contents.policy #philosophy dl {
    padding-left: 0;
    width: 100%;
    margin-bottom: 30px;
}
#contents.policy #philosophy dt {
    font-size: 17.3px;
    letter-spacing: 0.25px;
    margin-top: 15px;
}
#contents.policy #philosophy dt span {
    position: relative;
    margin-right: -9px;
}
#contents.policy #philosophy dd {
    font-size: 14px;}
#contents.policy #philosophy .policya-txt002 {
    width: 100%;
    margin: 40px auto 40px;
}

#contents.policy #philosophy .policy-txt1{
    margin: 30px auto;
}

}


/* safety
--------------------- */

#contents.safety #contentsBody section {
margin-bottom: 90px;
}
#contents.safety #contentsBody p {
margin-bottom: 10px;
}
#contents.safety #contentsBody li {

font-family: YakuHanJP, source-han-sans-japanese, sans-serif;	
font-size: 20px;
font-weight: bold;
line-height: 2;
margin-bottom: 10px;
padding-left: 70px;
position: relative;
}
#contents.safety #contentsBody li span {
color: #1D2C68;
left: 30px;
position: absolute;
}
#contents.safety #contentsBody dl {
margin-bottom: 20px;
}
#contents.safety #contentsBody dt {
font-family: YakuHanJP, source-han-sans-japanese, sans-serif;	
font-size: 20px;
font-weight: bold;
line-height: 2;
margin-bottom: 10px;
padding-left: 70px;
position: relative;
}
#contents.safety #contentsBody dt span {
color: #1D2C68;
left: 30px;
position: absolute;
}
#contents.safety #contentsBody dd {
font-size: 14px;
line-height: 2.14;
padding-left: 70px;
}
@media only screen and (max-width: 600px) {
#contents.safety #contentsBody section {
    margin-bottom: 50px;
}
#contents.safety #contentsBody p {
    font-size: 11px;
    margin-bottom: 0;
}
#contents.safety #contentsBody li {      font-size: 14px;
    margin-bottom: 15px;
    padding-left: 30px;
}
#contents.safety #contentsBody li span {
    left: 10px;
}
#contents.safety #contentsBody dl {
    margin-bottom: 20px;
}
#contents.safety #contentsBody dt {      font-size: 14px;
    margin-bottom: 5px;
    padding-left: 24px;
}
#contents.safety #contentsBody dt span {
    left: 10px;
}
#contents.safety #contentsBody dd {      font-size: 14px;
    line-height: 2;
    padding-left: 30px;}}



/* profile
--------------------- */

/* table */
#contents.profile table {
font-size: 14px;
margin-bottom: 30px;
width: 100%;
}
#contents.profile th {
padding-bottom: 15px;
vertical-align: top;
width: 134px;
}
#contents.profile th.ls6 {
letter-spacing: 0em;
}
#contents.profile th.ls5 {
letter-spacing: 0.5em;
}
#contents.profile th.ls4 {
letter-spacing: 1em;
}
#contents.profile th.ls3 {
letter-spacing: 2.0em;
}
#contents.profile th.ls2 span {
letter-spacing: 7rem;
}
#contents.profile td {
padding-bottom: 15px;
}
.off_2nd, .off_2nd_n{
width: 150px;
}
.off_2nd span{
display: none;
    }
.off_3rd{
}
@media (max-width: 768px){
#contents.profile table {
    font-size: 14px;
}
#contents.profile th {
    font-size: 13px;
}
#contents.profile #outline th {
    display: block;
    padding-bottom: 5px;
    width: 100%;
}
#contents.profile #outline td {
    border-bottom: 1px dashed #ccc;
    display: flex;
    margin-bottom: 10px;
    padding-bottom: 10px;
    width: 100%;
}
#contents.profile #registration th {
    padding-right: 5px;
    white-space: nowrap;
    width: auto;
}
#contents.profile #registration td {
    font-size: 13px;
}
#contents.profile th.ls6 {
    letter-spacing: 0em;
}
#contents.profile th.ls5 {
letter-spacing: 0.1125em;
}
#contents.profile th.ls4 {
    letter-spacing: 0.4em;
}
#contents.profile th.ls3 {
    letter-spacing: 1em;
}
#contents.profile th.ls2 span {
    letter-spacing: 1em;
}
.off_2nd{
    width: 100%!important;
}
.off_2nd span{display: block!important;
margin-left: 0.2em;
display: -webkit-inline-box;    
 }
.off_2nd_n{
display: none!important;
}
.off_3rd{

    display: none!important;
}
.off_3rd_n{
    width: 100%!important;
    display: block!important;
}
}

.ochart
{
width: 100%
}
@media (max-width: 768px){
.chart{
    width: 90%}}

/* .organization */
#contents.profile .organization {
margin: 0 -28px;
}
@media only screen and (max-width: 600px) {
#contents.profile .organization {
    margin: 0;
}
#contents.profile .organization img {
    width: 100%;}}


/* history
--------------------- */

#contents.history .txt-01 {
margin-bottom: 80px;
}
@media only screen and (max-width: 600px) {
#contents.history .txt-01 {
    margin-bottom: 20px;}}

/* table */
#contents.history table {
border-bottom: 2px solid #EDEEEE;
font-size: 16px;
margin-bottom: 30px;
width: 100%;
}
#contents.history tr {
border-bottom: 2px solid #EDEEEE;
}
#contents.history tr:last-child {
border-bottom: 0;
}
#contents.history tr.no-border {
border-bottom: 0;
}
#contents.history th {
color: #1D2C68;
font-weight: bold;
padding: 15px 0;
vertical-align: top;
}
#contents.history tr.no-border th,
#contents.history tr.no-border td {
padding-bottom: 0;
}
#contents.history tr:first-child th,
#contents.history tr:first-child td {
padding-top: 0;
}
#contents.history th.year {
width: 130px;
/*	width: 65px;*/
}
#contents.history th.month {
text-align: right;
width: 45px;
}
#contents.history td {
padding: 15px 0 15px 40px;
}
@media only screen and (max-width: 600px) {
#contents.history table {
    border-bottom: 1px solid #EDEEEE;
    font-size: 14px;
}
#contents.history tr {
    border-bottom: 1px solid #EDEEEE;
}
#contents.history th {
    padding: 10px 0;
}
#contents.history th.year {
    padding-right: 5px;
    white-space: nowrap;
    width: auto;
}
#contents.history th.month {
    padding-right: 5px;
    text-align: left;
    white-space: nowrap;
    width: auto;
}
#contents.history td {
    padding: 10px 0;}}

/* #step */
#contents.history #step h4 {
font-size: 16px;
font-weight: bold;
margin-bottom: 20px;
}
#contents.history #step h4 span {
color: #1D2C68;
}
#contents.history #step section {
margin-bottom: 50px;
}
#contents.history #step .contents {
background: url(../../../../../img/history/bg_step.png) 26px 100% no-repeat;
padding-left: 60px;
position: relative;
font-size: 16px;
line-height: 2;
}
#contents.history #step .step3 .contents {
background-position: 26px 0%;
}
#contents.history #step .contents:before,
#contents.history #step .contents:after {
    content: "";
    display: table;
}
#contents.history #step .contents:after {
    clear: both;
}
#contents.history #step .contents {
    zoom: 1;
}
#contents.history #step .contents p {
font-size: 14px;
}
#contents.history #step figure {
float: right;
padding: 0 0 20px 20px;
}
@media only screen and (max-width: 600px) {
#contents.history #step h4 {
    font-size: 13px;
    margin-bottom: 5px;
}
#contents.history #step section {
    margin-bottom: 10px;
}
#contents.history #step .contents {
    background: url(../../../../../img/history/bg_step_sp.png) 10px 100% no-repeat;
            background-size: 11px auto;
    padding-left: 0px;
    font-size: 13px;
}
#contents.history #step .step3 .contents {
    background-position: 10px 0%;
}
#contents.history #step .contents p {      font-size: 13px;
    margin-bottom: 10px;
}
#contents.history #step figure {
    float: none;
    left: 0;
    padding: 0 0 0 30px;
    position: absolute;
    text-align: center;
    width: 100%;
}

#contents.history #step .step1 .contents {
    padding-bottom: 40vw;
}
#contents.history #step .step1 figure {
    bottom: 10vw;
}
#contents.history #step .step1 figure img {
    height: 30vw;
    width: auto;
padding-top: 0.5rem;    
}

#contents.history #step .step2 .contents {
    padding-bottom: 49vw;
}
#contents.history #step .step2 figure {
    bottom: 10vw;
}
#contents.history #step .step2 figure img {
    height: 39vw;
    width: auto;
    padding-top: 0.5rem;
}

#contents.history #step .step3 .contents {
    padding-bottom: 49vw;
}
#contents.history #step .step3 figure {
    bottom: 10vw;
}
#contents.history #step .step3 figure img {
    height: 39vw;
    width: auto;
    padding-top: 0.5rem;}}


/* office
--------------------- */

/* section */
#contents.office section:before,
#contents.office section:after {
    content: "";
    display: table;
}
#contents.office section:after {
    clear: both;
}
#contents.office section {
    zoom: 1;
}
#contents.office section {
margin-bottom: 30px;
}
@media only screen and (max-width: 600px) {
#contents.office section section {
    margin-bottom: 20px;}}

/* .content */
#contents.office .content {
float: left;
width: 450px;
}
#contents.office .content.no-photo {
float: none;
width: 100%;
}
@media only screen and (max-width: 600px) {
#contents.office .content {
    float: none;
    width: 100%;}}

/* .access */
#contents.office .content p.access {
font-size: 12px;
line-height: 1.5;
margin-bottom: 0;
}
@media only screen and (max-width: 600px) {
#contents.office .content p.access {
    font-size: 13px;}}

/* figure */
#contents.office figure {
float: right;
text-align: right;
width: 200px;
}
#contents.office figure p {
margin-bottom: 10px;
}
#contents.office figure p:last-child {
margin-bottom: 0;
}
#contents.office figure a {
 color: #1D2C68;      font-size: 14px;
 font-weight: bold;
 text-decoration: underline;
}
@media only screen and (max-width: 600px) {
#contents.office figure {
    float: none;
    margin: 10px auto 0 auto;
    width: 200px;
}
#contents.office figure p {
    margin-bottom: 0;}}

/* .gmap */
#contents.office .gmap {
margin-bottom: 0;
margin-top: -1.5em;
text-align: right;
}
#contents.office .gmap a {
 color: #1D2C68;      font-size: 14px;
 font-weight: bold;
 text-decoration: underline;
}
@media only screen and (max-width: 600px) {
#contents.office .gmap {
    margin-top: 0;}}

/* header */
#contents.office header {
margin-bottom: 5px;
}
#contents.office header:before,
#contents.office header:after {
    content: "";
    display: table;
}
#contents.office header:after {
    clear: both;
}
#contents.office header {
    zoom: 1;
    line-height: 1;
}
#contents.office header h4 {
color: #1D2C68;
float: left;
font-size: 17px;
font-weight: bold;
/* line-height: 2.0; */
/* width: 80px; */
width: 100%;
margin-bottom: 1rem;
}
#contents.office header p {
float: left;
font-size: 14px;
font-weight: bold;
line-height: 1.2;
margin: 0;
width: 300px;
}
@media only screen and (max-width: 600px) {
#contents.office header {
    border-bottom: 1px dashed #9FA0A0;
    border-top: 1px solid #1D2C68;
    margin-bottom: 10px;
    padding-top: 30px;
    padding-bottom: 10px;
}
#contents.office section.first header {
    border-top: 0;
    padding-top: 0;
}
#contents.office header h4 {
    font-size: 17px;
    width: 100%;
    margin-bottom: 7px;
}
#contents.office header p {
    font-size: 14px;
    margin-bottom: 0;
    width:100%;}}

/* .contact */
#contents.office .contact {
margin-bottom: 8px;
}
#contents.office .contact:before,
#contents.office .contact:after {
    content: "";
    display: table;
}
#contents.office .contact:after {
    clear: both;
}
#contents.office .contact {
    zoom: 1;
}
#contents.office .contact dl {
font-size: 15px;
font-weight: bold;
margin-bottom: 4px;
}
#contents.office .contact dl:before,
#contents.office .contact dl:after {
    content: "";
    display: table;
}
#contents.office .contact dl:after {
    clear: both;
}
#contents.office .contact dl {
    zoom: 1;
}
#contents.office .contact dl:last-child {
margin-bottom: 0;
}
#contents.office .no-photo dl {
float: left;
width:200px;
}
#contents.office .contact dl dt {
float: left;
width: 40px;
letter-spacing: 3px;

}
#contents.office .contact dl dd {
float: left;
width: 130px;
}
@media only screen and (max-width: 600px) {
#contents.office .contact {
    margin-bottom: 10px;
}
#contents.office .contact dl {
    font-size: 16px;
      margin-bottom: 0px;
}
#contents.office .contact dl:last-child {
    margin-bottom: 0;
}
#contents.office .no-photo dl {
    float: none;
    width: auto;
}
#contents.office .contact dl dt {
    width: 14%;
}
#contents.office .contact dl dd {
    width: 74%;}}


/* privacy
--------------------- */

/* .heading-m */
#contents.privacy .heading-m {
margin-bottom: 30px;
}
@media only screen and (max-width: 600px) {
#contents.privacy .heading-m {
    font-size: 18px;
    letter-spacing: 0;
    margin-bottom: 10px;}}

/* h4 */
#contents.privacy h4 {
background: #F1F7EC;
font-size: 18px;
font-weight: bold;
margin-bottom: 20px;
padding: 10px 20px;
}
@media only screen and (max-width: 600px) {
#contents.privacy h4 {      font-size: 13px;
    margin-bottom: 10px;
    padding: 5px 10px;}}

/* txt */
#contents.privacy .txt-01 {
text-align: right;
margin: -15px 0 15px;
}
#contents.privacy .txt-02 {      font-size: 14px;
line-height: 1.4;
}
@media only screen and (max-width: 600px) {
#contents.privacy .txt-01 {
    margin: -20px 0 10px;
}
#contents.privacy .txt-02 {
    font-size: 13px;
    line-height: 1.8;}}

/* ul */
#contents.privacy ul {
line-height: 2.2;
list-style-type: decimal;
font-size: 14px;
padding-left: 1em;
}
@media only screen and (max-width: 600px) {
#contents.privacy ul {      font-size: 12px;}}

/* p */
@media only screen and (max-width: 600px) {
#contents.privacy p {      font-size: 13px;
    line-height: 2;}}


/* sitemap
--------------------- */

#contents.sitemap {
}

/* #visual */
#contents.sitemap #visual {
margin-bottom: 120px;
}
@media only screen and (max-width: 600px) {
#contents.sitemap #visual {
    margin-bottom: 35px;
}}

/* #contentsBody */
#contents.sitemap #contentsBody {
max-width: 740px;
font-size: 14px;
}

/* .cols */
#contents.sitemap .cols {
margin-bottom: 60px;
}
#contents.sitemap .cols:before,
#contents.sitemap .cols:after {
    content: "";
    display: table;
}
#contents.sitemap .cols:after {
    clear: both;
}
#contents.sitemap .cols {
    zoom: 1;
}
#contents.sitemap .cols .col {
width: 350px;
}
@media only screen and (max-width: 600px) {
#contents.sitemap .cols {
    margin-bottom: 0;
}
#contents.sitemap .cols .col {
    margin-bottom: 30px;
    width: auto;}}

#contents.sitemap .cols .col p {
border-bottom: 1px solid #B7B8B8;
font-size: 18px;
font-weight: bold;
margin-bottom: 20px;
padding-bottom: 10px;
}
#contents.sitemap .cols .col li {
font-size: 16px;
margin-bottom: 12px;
}
#contents.sitemap .cols .col li a {
color: #333;
text-decoration: none;
}
#contents.sitemap .cols .col li a:hover {
text-decoration: underline;
}
#contents.sitemap .cols .col li:before {
content: '●  ';
color: #1D2C68;
}
@media only screen and (max-width: 600px) {
#contents.sitemap .cols .col p {
    font-size: 13px;
    line-height: 1.2;
    margin-bottom: 10px;
    padding-bottom: 5px;
}
#contents.sitemap .cols .col li {      font-size: 13px;
    margin-bottom: 8px;
}
#contents.sitemap .cols .col li a {
    color: #333;
    text-decoration: none;
}
#contents.sitemap .cols .col li a:hover {
    text-decoration: underline;
}
#contents.sitemap .cols .col li:before {
    content: '● ';
/*    color: #3EB134;*/
 color: #1D2C68;
	}}

/* .col1 */
#contents.sitemap .cols .col1 {
float: left;
}
@media only screen and (max-width: 600px) {
#contents.sitemap .cols .col1 {
    float: none;}}

/* .col2 */
#contents.sitemap .cols .col2 {
float: right;
}
@media only screen and (max-width: 600px) {
#contents.sitemap .cols .col2 {
    float: none;}}


/* feature
--------------------- */

/* f-tit-txt */
#contents.feature .f-tit-txt{
    margin-bottom: 48px;
    font-size: 20px;
    font-weight: 400;
    color: #00002F;	
    letter-spacing: 0.05em;	
    }
#contents.feature .f-tit-txt::first-letter {
        padding: 0 0.75rem;
        background-color: #709ACC;
        color: white;
        margin-right: 10px;
        line-height: 0.5;
        font-size: 17px;
}
@media only screen and (max-width: 600px) {
    #contents.feature .f-tit-txt{
        margin-bottom: 18px;
        font-size: 17px;
        line-height: 1.5;
    } 
    #contents.feature .f-tit-txt::first-letter {   
        font-size: 15px;         
}
}




/* h3 */
#contents.feature h3 {
margin-bottom: 48px;
font-size: 20px;
font-weight: 400;
color: #00002F;	
letter-spacing: 0.05em;	
}
@media only screen and (max-width: 600px) {
#contents.feature h3 {
margin-bottom: 20px;
font-size: 17px;  
}
#contents.feature h3 img {
    /*height: 43px;*/}}


/* h4 */
#contents.feature h4 {
font-size: 17px;
font-weight: bold;
line-height: 1.2;
margin-bottom: 14px;
}
@media only screen and (max-width: 600px) {
#contents.feature h4 {
    font-size: 16px;}}

/* figure */
#contents.feature figure {
margin-bottom: 30px;
text-align: center;
}
#contents.feature figure img {
max-width: 100%;
}
#contents.feature figure.cols:before,
#contents.feature figure.cols:after {
    content: "";
    display: table;
}
#contents.feature figure.cols:after {
    clear: both;
}
#contents.feature figure.cols {
    zoom: 1;
}
#contents.feature figure.cols figure {
float: left;
width: 50%;
}
#contents.feature figure.cols figure:nth-child(2n+1) {
text-align: left;
}
#contents.feature figure.cols figure:nth-child(2n) {
text-align: right;
}
@media only screen and (max-width: 600px) {
#contents.feature figure {
margin-bottom: 1em;
text-align: center;
}	
#contents.feature figure.cols figure {
    float: none;
    margin-bottom: 1.5em;
    text-align: center!important;
    width: 100%;}}

/* #lNav */
#contents.feature #lNav li {
width: 25%;
}

/**/
.archives_menu_ttl {
margin-bottom:0px;
max-width:280px;
width:100%;
margin:0 auto 0;
}

.archives_menu_ttl img {
/*width:100%;*/
}

.archives_menu_ttl img.pc_ttl {
display:block;
}
@media (max-width: 768px){
.archives_menu_ttl img.pc_ttl {
display:none;}}

.archives_menu_ttl img.sp_ttl {
display:none;
}
@media (max-width: 768px){
.archives_menu_ttl img.sp_ttl {
display:block;}}


/* news
--------------------- */

#contents.news dl {
border-bottom: 2px dotted #D8EBCB;
font-size: 14px;
line-height: 2;
padding: 12px 0;
}
#contents.news dd {
margin: -2em 0 0 7em;
}
#contents.news dd a {
color: #3E3A39;
text-decoration: none;
}
#contents.news dd a:hover {
text-decoration: underline;
}
@media only screen and (max-width: 600px) {
#contents.news dl {
    border-bottom: 1px solid #B7B8B8;      font-size: 14px;
    line-height: 1.2;
    padding: 10px 0;
}
#contents.news dl:last-child {
    border-bottom: 0;
}
#contents.news dt {
    margin-bottom: 5px;
}
#contents.news dd {
    margin: 0;}}

/* .heading-m */
#contents.news .heading-m {
margin-bottom: 30px;
}
#contents.news .heading-m.mb0 {
margin-bottom: 0;
}
@media only screen and (max-width: 600px) {
#contents.news .heading-m {
    font-size: 18px;
    letter-spacing: 0;
    margin-bottom: 10px;}}

/* h4 */
#contents.news h4 {
background: #F1F7EC;
font-size: 18px;
font-weight: bold;
margin-bottom: 20px;
padding: 10px 20px;
}
@media only screen and (max-width: 600px) {
#contents.news h4 {      font-size: 13px;
    margin-bottom: 10px;
    padding: 5px 10px;}}

/* txt */
#contents.news .txt-01 {
text-align: right;
margin: -15px 0 15px;
}
#contents.news .txt-02 {      font-size: 14px;
line-height: 1.4;
}
@media only screen and (max-width: 600px) {
#contents.news .txt-01 {
    margin: -20px 0 10px;
}
#contents.news .txt-02 {
    font-size: 11px;
    line-height: 1.8;}}

/* p */
@media only screen and (max-width: 600px) {
#contents.news p {      font-size: 13px;
    line-height: 2;}}


/* works
--------------------- */

/* .visual */
@media only screen and (max-width: 600px) {
#contents.works #visual {
    margin-bottom: 20px;}}

/* .search */
#contents.works .search p.header {
border-bottom: 2px solid #1D2C68;
line-height: 30px;
margin-bottom: 30px;
padding-bottom: 10px;
}
#contents.works .search p.header:before,
#contents.works .search p.header:after {
    content: "";
    display: table;
}
#contents.works .search p.header:after {
    clear: both;
}
#contents.works .search p.header {
    zoom: 1;
}
@media only screen and (max-width: 600px) {
#contents.works .search p.header {
    display: none;}}
#contents.works .search p.header span {
display: block;
float: left;
width: 510px;
}
#contents.works .search p.header button {
background: #1D2C68;
        border-radius: 10px;
color: #fff;
float: left;
font-size: 16px;
font-weight: bold;
height: 30px;
line-height: 30px;
letter-spacing: 1em;
text-indent: 1em;
width: 140px;
}
@media only screen and (-ms-high-contrast: none) {
#contents.works .search p.header button {
    line-height: 16px;
    padding-top: 5px;
}}
#contents.works .search ul {
margin-bottom: 30px;
}
#contents.works .search ul:before,
#contents.works .search ul:after {
    content: "";
    display: table;
}
#contents.works .search ul:after {
    clear: both;
}
#contents.works .search ul {
    zoom: 1;
}
#contents.works .search li {
float: left;
font-size: 14px;
font-weight: bold;
margin-bottom: 10px;
width: 156px;
}
#contents.works .search li input {
margin-right: 10px;
}
#contents.works .search li:nth-child(4n) {
width: 130px;
}
@media only screen and (max-width: 600px) {
#contents.works .search form {
    background: rgba(29,44,104,0.90);
    display: none;
    height: 100%;
    left: 0;
    overflow: auto;
    padding: 12.5% 14.5%;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 3;
}
#contents.works .search ul {
    border-top: 1px dashed #D6DFE0;
    margin-bottom: 10px;
}
#contents.works .search li {
    border-bottom: 1px dashed #D6DFE0;
    color: #fff;
    float: none;
    font-size: 14px;
    margin-bottom: 0;
    padding: 8px 0;
    width: 100%!important;
}}
#contents.works .search .btn {
display: none;
}
@media only screen and (max-width: 600px) {
#contents.works .search .btn {
    display: block;
    margin-bottom: 20px;
}
#contents.works .search .btn a {
/*    background: #3EB134;*/
	    background: #1D2C68;
    color: #fff;
    display: block;
    font-size: 14px;
    font-weight: bold;
    height: 30px;
    line-height: 30px;
    text-align: center;
    text-decoration: none;
	border-radius: 10px; 
}}
@media only screen and (max-width: 600px) and (-ms-high-contrast: none) {
#contents.works .search .btn a {
    line-height: 16px;
    padding-top: 10px;
}}
#contents.works .search .btns {
display: none;
}
@media only screen and (max-width: 600px) {
#contents.works .search .btns {
    display: block;
    width: 100%;
}
    #contents.works .search .btns:before,
    #contents.works .search .btns:after {
        content: "";
        display: table;
    }
    #contents.works .search .btns:after {
        clear: both;
    }
    #contents.works .search .btns {
        zoom: 1;
    }
#contents.works .search .btns button[type="submit"] {
    background: #fff;
            border-radius: 5px;
    color: #1D2C68;
    float: left;
    font-size: 14px;
    font-weight: bold;
    height: 35px;
    line-height: 35px;
    text-align: center;
    width: 185px;
}
#contents.works .search .btns button[type="button"] {
    border: 1px solid #fff;
            border-radius: 5px;
    float: right;
    height: 35px;
    width: 35px;
}
#contents.works .search .btns button[type="button"] img {
    height: 100%;
    width: 100%;
}}
@media only screen and (max-width: 600px) and (-ms-high-contrast: none) {
#contents.works .search .btns button[type="submit"] {
    line-height: 14px;
    padding-top: 6px;
}}

/* .articles */
#contents.works .articles {
/*  margin: 0 -70px;*/
  margin: 0 auto;
}
@media only screen and (max-width: 600px) {
#contents.works .articles {
    margin: 0;}}
#contents.works .articles article {
cursor: pointer;
display: inline-block;
margin: 0 40px 32px 0;
vertical-align: top;
width: 220px;
}
#contents.works .articles article:nth-child(3n) {
margin-right: 0;
}
@media only screen and (max-width: 600px) {
#contents.works .articles article {
    display: inline-block;
    margin: 0 7.16% 7.16% 0;
    width: 46.42%;
}
#contents.works .articles article:nth-child(3n) {
    margin-right: 7.16%;
}
#contents.works .articles article:nth-child(2n) {
    margin-right: 0;}}
#contents.works .articles article > figure {
background: #E3F0D8;
height: 160px;
margin-bottom: 20px;
overflow: hidden;
text-align: center;
width: 100%;
}
#contents.works .articles article > figure img {
height: 100%;
width: auto;
}
@media only screen and (max-width: 600px) {
#contents.works .articles article > figure {
    height: 29.68vw;
    margin-bottom: 10px;}}
#contents.works .articles .category {
line-height: 20px;
margin-bottom: 8px;
}
#contents.works .articles .category span {
color: #fff;
display: inline-block;
font-size: 14px;
height: 20px;
line-height: 20px;
padding: 0 0.8em;
}
@media only screen and (-ms-high-contrast: none) {
#contents.works .articles .category span {
    padding-top: 5px;
    line-height: 14px;}}
@media only screen and (max-width: 600px) {
#contents.works .articles .category {
    line-height: 15px;
}
#contents.works .articles .category span {      font-size: 13px;
    height: 15px;
    line-height: 15px;}}
@media only screen and (max-width: 600px) and (-ms-high-contrast: none) {
#contents.works .articles .category span {
    padding-top: 5px;
    line-height: 10px;}}
#contents.works .articles .cat1 .category span {	background: #EA5321; }
#contents.works .articles .cat2 .category span {	background: #2BA5DE; }
#contents.works .articles .cat3 .category span {	background: #920080; }
#contents.works .articles .cat4 .category span {	background: #006A78; }
#contents.works .articles .cat5 .category span {	background: #8BC438; }
#contents.works .articles .cat6 .category span {	background: #F8B53E; }
#contents.works .articles .cat7 .category span {	background: #E95D9B; }
#contents.works .articles .cat8 .category span {	background: #AF804C; }
#contents.works .articles .cat9 .category span {	background: #0F6DB4; }
#contents.works .articles .cat10 .category span {	background: #E95F70; }
#contents.works .articles .cat7 .category span {
letter-spacing: 0.5em;
white-space: nowrap;
width: 4.1em;
}
#contents.works .articles h2 {
font-size: 14px;
font-weight: normal;
line-height: 1.5;
margin: 0;
padding: 0;
}
@media only screen and (max-width: 600px) {
#contents.works .articles h2 {      font-size: 13px;
text-align: left;
	}}

/* .overlay */
#contents.works .overlay {
color: #fff;
cursor: default;
display: none;
height: 90%;
left: 0;
overflow: auto;
/*  padding-left: 200px; 20210118*/
padding-left: 160px;
position: fixed;
top: 5%;
width: 100%;
z-index: 4;
}
#contents.works .overlay > div {
background: rgba(35,24,21,0.85);
border-bottom-width: 10px;
border-bottom-style: solid;
border-top-width: 10px;
border-top-style: solid;
height: 100%;
margin: 0 auto;
overflow: auto;
width: 740px;
}
#contents.works .cat1 .overlay > div {	border-color: #EA5321; }
#contents.works .cat2 .overlay > div {	border-color: #2BA5DE; }
#contents.works .cat3 .overlay > div {	border-color: #920080; }
#contents.works .cat4 .overlay > div {	border-color: #006A78; }
#contents.works .cat5 .overlay > div {	border-color: #8BC438; }
#contents.works .cat6 .overlay > div {	border-color: #F8B53E; }
#contents.works .cat7 .overlay > div {	border-color: #E95D9B; }
#contents.works .cat8 .overlay > div {	border-color: #AF804C; }
#contents.works .cat9 .overlay > div {	border-color: #0F6DB4; }
#contents.works .cat10 .overlay > div {	border-color: #E95F70; }
#contents.works .overlay > div > div {
padding: 20px 70px 25px;
}
@media only screen and (max-width: 600px) {
#contents.works .overlay {
    height: 100%;
    padding-left: 0;
    top: 0;
}
#contents.works .overlay > div {
    border-bottom-width: 5px;
    border-top-width: 5px;
    width: 100%;
}
#contents.works .overlay > div > div {
    padding: 35px 3.125% 20px;}}
#contents.works .overlay header {
margin-bottom: 25px;
}
#contents.works .overlay header p.category {
display: inline;
margin-right: 20px;
}
#contents.works .overlay header h3 {
color: #fff;
display: inline;
font-size: 16px;
font-weight: bold;
line-height: 20px;
}
@media only screen and (max-width: 600px) {
#contents.works .overlay header {
    margin-bottom: 10px;
}
#contents.works .overlay header p.category {
    display: block;
    margin-right: 0;
}
#contents.works .overlay header h3 {
    display: block;      font-size: 14px;
    font-weight: normal;
    line-height: 1.2;}}
#contents.works .overlay figure {
margin-bottom: 20px;
text-align: center;
}
#contents.works .overlay figure.horizontal img {
width: 100%;
}
#contents.works .overlay figure.vertical img {
width: 375px;
}
@media only screen and (max-width: 600px) {
#contents.works .overlay figure {
    margin-bottom: 10px;
}
#contents.works .overlay figure.vertical img {
    width: 187px;}}
#contents.works .overlay .row1 {
border-bottom: 1px solid #fff;
margin-bottom: 20px;
}
#contents.works .overlay .row1 p {
line-height: 1.8;
margin-bottom: 20px;
}
@media only screen and (max-width: 600px) {
#contents.works .overlay .row1 {
    margin-bottom: 10px;
}
#contents.works .overlay .row1 p {      font-size: 13px;
    margin-bottom: 10px;}}
#contents.works .overlay .row2:before,
#contents.works .overlay .row2:after {
    content: "";
    display: table;
}
#contents.works .overlay .row2:after {
    clear: both;
}
#contents.works .overlay .row2 {
    zoom: 1;
}
#contents.works .overlay .row2 .content {
float: left;
width: 290px;
}
#contents.works .overlay .row2 p {
line-height: 1.7;
margin-bottom: 20px;
}
#contents.works .overlay .row2 figure {
float: right;
margin-bottom: 20px;
width: 290px;
}
@media only screen and (min-width: 601px) {
#contents.works .overlay .row2 figure img {
    width: 100%;}}
@media only screen and (max-width: 600px) {
#contents.works .overlay .row2.border {
    border-bottom: 1px solid #fff;
    margin-bottom: 20px;
}
#contents.works .overlay .row2 .content {
    border-bottom: 1px solid #fff;
    float: none;
    margin-bottom: 10px;
    width: 100%;
}
#contents.works .overlay .row2 p {      font-size: 13px;
    margin-bottom: 10px;
}
#contents.works .overlay .row2 figure {
    float: none;
    width: 100%;
}}
#contents.works .overlay .btn {
border-top: 1px solid #fff;
margin: 0;
padding-top: 25px;
text-align: center;
}
#contents.works .overlay .btn a {
border: 1px solid #fff;
color: #fff;
display: inline-block;
font-size: 14px;
height: 30px;
line-height: 28px;
text-align: center;
text-decoration: none;
width: 140px;
}
@media only screen and (max-width: 600px) {
#contents.works .overlay .btn {
    border-top: 0;
    padding-top: 0;
}
#contents.works .overlay .btn a {      font-size: 13px;
    height: 23px;
    line-height: 21px;
    width: 105px;
}}
@media only screen and (max-width: 600px) and (-ms-high-contrast: none) {
#contents.works .overlay .btn a {
    line-height: 10px;
    padding-top: 8px;
}}

.wp-pagenavi {
text-align: center;
margin-top: 50px;
}
.works_btn{
  margin:0 auto 1em;
  text-align: center;
  background-color: #73a1d7;
background: -moz-linear-gradient(-45deg,  #73a1d7 0%, #7db9e8 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(-45deg,  #73a1d7 0%,#7db9e8 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(135deg,  #73a1d7 0%,#7db9e8 100%); 
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#73a1d7', endColorstr='#7db9e8',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
border-radius:5px;
  width: 30%;
  max-width: 370px;
  padding: 1em;
  color: #ffffff;
  font-size: 14px;
}
@media (max-width: 768px){
 .works_btn{
    width: 75%; 
}}



/* .top_2top{
  background: url(../img/top/top_list_bg_c.png)  ;
  background-size: 18%;
}
@media (max-width: 768px){
.top_2top{

  background-size: 30%;
}} */



/* news */
#contents.lower .heading-m_news {
    border-bottom: 1px dotted #c5cfdb;
    color: #1D2C68;
    font-family: YakuHanJP, source-han-sans-japanese, sans-serif;
    font-size: 16px;
    /* font-weight: bold; */
    /* letter-spacing: 5px; */
    letter-spacing: 2px;
    margin-bottom: 16px;
    padding-bottom: 6px;
}


/* invoice page */

.doc-tit-sub{
font-size: 18px;
font-weight: 400;
color: #1D2C68;
font-family: YakuHanJP, source-han-sans-japanese, sans-serif;
margin: 20px 0 20px;
}

.doc-tit-sub.mail{
    font-size: 15px;
    margin: 40px 0 10px;
    }


.doc-btn{
background-color: #f5f5f5;
border-radius: 6px;
padding: 10px;
margin: 20px 0;
color: #333;
font-weight: 500;
font-size: 15px; 
position: relative; 
}

.docｰsplt{
    border-bottom: 1px dotted #c5cfdb;
    margin-bottom: 20px;
    padding-bottom:20px;
}

.mail-btn{
    color: #333;
    font-family: YakuHanJP, source-han-sans-japanese, sans-serif;
    font-weight: 500;
    margin: 10px 0 10px;
line-height: 1.4;
}

.mail-btn span{
    font-weight: 200;
    font-size: 100%;
}



.mail-btn span.mail-area{
    color: #1d2c68;
    font-weight: 500;
    border: #1d2c68 1px solid;
    border-radius: 6px;
    padding: 0.5rem 1.5rem;
    margin: 0 0.25rem;
    letter-spacing: 0.1rem;
    /* font-size: 85%; */
    vertical-align: text-bottom;
}

.doc-btn::after{
    content: "";
    display: inline-block;
    width: 92px;
    height: 29px;
    background: url(./btn-icon-pdf.png) no-repeat;
    background-size: contain;
    right: 10px;
    position: absolute;
}
.doc-btn.excel::after{
    content: "";
    background: url(./btn-icon-xlsx.png) no-repeat;
    background-size: contain;
}
.doc-btn.xlsm::after{
    content: "";
    background: url(./btn-icon-xlsm.png) no-repeat;
    background-size: contain;
}


@media (max-width: 768px){
    .doc-btn{
       font-size: 12.5px;
       line-height: 1.5;
    }   
    .doc-btn::after{
        top: 15px;  
    }

    .mail-btn{
    line-height: 1.8;
    }

    
    .doc-btn.nigyo::after{
        top: 6px;  
    }
    

    .doc-btn.sangyo::after{
        top: 2.5rem;  
    }


}

#contents.feature figure.cols.set2023{
    margin-left: -10px;  
}


@media (max-width: 768px){
    #contents.feature figure.cols.set2023{
        margin-left: auto;  
}
#contents.feature figure.cols.set2023{
    width: 100%;

}
}

/* img.mfp-img */
img.mfp-img{
    max-width: 900px !important;
       /* max-width: 900px; */
    width: 90%;
    height: auto;
}
@media (max-width: 768px){
    img.mfp-img{
        max-width: 90% !important;
    }  
}
/*  */
#contents.profile .tabes{
font-size: 12px;
}
#contents.profile .tabes th{
    padding: 10px 0px 0 20px;
}

.post-content .tabes table td{
    padding: 10px 0px 0 20px;
}