@charset "utf-8";
@media screen and (min-width: 1201px) { html{font-size:17px; } }@media screen and (max-width: 1200px) { html{font-size:16px; } }@media screen and (max-width: 1024px) { html{font-size:15px; } }@media screen and (max-width: 768px) {  html{font-size:14px; } }@media screen and (max-width: 480px) {  html{font-size:13px; } }a,a:visited,a:active { color:rgba(15,30,45,1.00)}a:hover { color:rgba(91,90,90,1.00)}
/* css setting */
.tk_flex{padding:1rem 0rem;}

.slick-prev:before, .slick-next:before {
    color: #233b6c;
}


/*　———　TOP - コピー　———　*/
.home_top_copy {
margin: 20.5vh 50vw 3rem 7vw;
}

@media screen and (max-width: 1024px){
.home_top_copy {
margin: 20vh 42vw 2rem 4rem;
}
}

@media screen and (max-width: 768px){
.home_top_copy {
margin: 4rem 20vw 2rem 4rem;
}
}

@media screen and (max-width: 480px){
.home_top_copy {
margin: 2rem 2rem 1.5rem 2rem;
}
}

/*　———　トップコピー下の文章　———　*/
.home_top_sentence {
padding: 0rem 55vw 20.5vh 7vw;
}

@media screen and (max-width: 1024px){
.home_top_sentence {
padding: 0rem 40vw 19vh 4rem;
font-size:1rem!important;
line-height: 2rem!important;
}
}

@media screen and (max-width: 768px){
.home_top_sentence {
padding: 0rem 55vw 41vh 4rem;
}
}

/*　———　ヘッダーロゴ　———　*/
.headerlogo {
padding: 1rem 3rem 1rem 2rem;
}

@media screen and (max-width: 1024px){
.headerlogo {
padding: 1.5rem 1rem 1rem 2rem;
}
}

@media screen and (max-width: 768px){
.headerlogo {
padding: 1.8rem 0rem 0.8rem 1.5rem;
}
}

@media screen and (max-width: 498px){
.headerlogo {
padding: 1.8rem 43vw 0.5rem 2rem;
}
}

/*　———　TOP - About左側　———　*/
.topabout_left {
margin: 0rem 4rem 0rem 0rem;
}

@media screen and (max-width: 1024px){
.topabout_left {
margin: 0rem 2rem 0rem 0rem;
}
}

@media screen and (max-width: 798px){
.topabout_left {
margin: 0rem 1rem 0rem 0rem;
}
}

@media screen and (max-width: 498px){
.topabout_left {
margin: 0rem 2rem 1.5rem 2rem;
}
}


/*　———　TOP - About右側　———　*/
.topabout_right {
margin: 0rem 10vw 0rem 0rem;
}

@media screen and (max-width: 1480px){
.topabout_right {
margin: 0rem 4vw 0rem 0rem;
}
}

@media screen and (max-width: 1024px){
.topabout_right {
margin: 0rem 2rem 0rem 0rem;
}
}

@media screen and (max-width: 798px){
.topabout_right {
margin: 0rem 2rem 0rem 1rem;
}
}

@media screen and (max-width: 498px){
.topabout_right {
margin: 0rem 2rem 0rem 2rem;
}
}

/*　———　TOPファクトリー左右　———　*/
.topfactory_lr {
margin: 0rem 8vw 0rem 8vw;
}

@media screen and (max-width: 1480px){
.topfactory_lr {
margin: 0rem 4vw 0rem 4vw;
}
}

@media screen and (max-width: 1024px){
.topfactory_lr {
margin: 0rem 1.75rem 0rem 1.75rem;
}
}


/*　———　TOPリクルート左右　———　*/
.toprecruit_lr {
margin: 0rem 8vw 0rem 8vw;
}

@media screen and (max-width: 1480px){
.toprecruit_lr {
margin: 0rem 4vw 0rem 4vw;
}
}

@media screen and (max-width: 1024px){
.toprecruit_lr {
margin: 0rem 2rem 0rem 2rem;
}
}

/*　———　リクルートページ左右　———　*/
.recruitpage_lr {
padding: 0rem 8vw 0rem 8vw;
}

@media screen and (max-width: 1480px){
.recruitpage_lr {
padding: 0rem 4vw 0rem 4vw;
}
}

@media screen and (max-width: 1024px){
.recruitpage_lr {
padding: 0rem 0.5rem 0rem 0.5rem;
}
}

/* ----------　画像保存禁止　---------- */
.history_ct img {
  pointer-events: none; 
}

/* ===== デフォルト（1601px以上） ===== */
.tb-hide {
  display: block;
}
.tb-only {
  display: none;
}

/* ===== 1600px以下 ===== */
@media (max-width: 1600px) {
  .tb-hide {
    display: none !important;
  }
  .tb-only {
    display: block;
  }
}

/*　--------------------　企業情報のタイトル　--------------------　*/
.company-ttl span{
display: ineline-block;
font-size:2rem;
letter-spacing: 0.1rem;
color: #ffffff;
background-color: #233b6c;
padding: 1.2rem 2rem 1.2rem 2rem;
}
.company-ttl{
margin-top: -1.8rem;
}

@media screen and (max-width: 768px){
.company-ttl span{
font-size:1.5rem!important;
}
}

/*　———　企業情報タイトルの左右余白　———　*/
.ttl_lr_mg {
margin: 0rem 2rem 0rem 2rem;
}
@media screen and (max-width: 768px){
.ttl_lr_mg {
margin: 0rem 0rem 0rem 0rem;
}
}

/*--------------------　会社概要 - table　--------------------*/
.group_list , .plat_list { width:100%; }
.group_list tr:nth-child(odd) { background: #ffffff; }
.plat_list tr:nth-child(even) { background: #ffffff; }
.group_list th , .plat_list th { 
     width:120px;
     padding:1rem;
     vertical-align: top;
     font-size:0.9rem;
color: #233b6c;
}
.group_list td , .plat_list td { 
     padding:1rem 1rem 1rem 0;
     vertical-align: top;
     width:calc(100% - 120px);
}
@media screen and (max-width: 480px) {
.group_list th , .plat_list th { width:60px; }
.group_list td , .plat_list td { width:calc(100% - 60px); }
}

/*--------------------　会社概要 - table2　--------------------*/
.group_list , .plat_list2 { width:100%; }
.group_list tr:nth-child(odd) { background: #edf3f7; }
.plat_list2 tr:nth-child(even) { background: #edf3f7; }
.group_list th , .plat_list2 th { 
     width:120px;
     padding:1rem;
     vertical-align: top;
     font-size:0.9rem;
color: #233b6c;
}
.group_list td , .plat_list2 td { 
     padding:1rem 1rem 1rem 0;
     vertical-align: top;
     width:calc(100% - 120px);
}
@media screen and (max-width: 480px) {
.group_list th , .plat_list2 th { width:60px; }
.group_list td , .plat_list2 td { width:calc(100% - 60px); }
}

/*--------------------　会社概要 - table3　--------------------*/

.group_list , .plat_list3 { width:100%; }
.group_list tr:nth-child(odd) { background: #edf3f7; }
.plat_list3 tr:nth-child(even) { background: #edf3f7; }
.group_list th , .plat_list3 th { 
     width:160px;
     padding:1rem;
     vertical-align: top;
     font-size:0.9rem;
}
.group_list td , .plat_list3 td { 
     padding:1rem 1rem 1rem 0;
     vertical-align: top;
     width:calc(100% - 160px);
}
@media screen and (max-width: 480px) {
.group_list th , .plat_list3 th { width:70px; }
.group_list td , .plat_list3 td { width:calc(100% - 70px); }
}

/*　———　工場テーブル　———　*/

.tbl_factory {
width: 100%;
margin: 0;
padding: 0;
vertical-align: middle;
font-size: 1rem;
border-collapse: collapse;
border: 1px solid #B4B4B4;
table-layout:fixed;
}
.tbl_factory.none thead {
display: none;
}
.tbl_factory th {
padding: 0.3rem 0rem;
text-align: center;
vertical-align: middle;
font-weight: bold;
background-color: #edf3f7;
border: 1px solid #B4B4B4;
}
.tbl_factory td {
padding: 0.3rem 1rem;
/*text-align: left;*/
vertical-align: middle;
border: 1px solid #B4B4B4;
background-color: #FFFFFF;
}
.tbl_factory td:first-child {
background-color: #edf3f7;
width: 30%; text-align: left;
}
.tbl_factory td:last-child {
width: 70%; text-align:  left;
}
@media screen and (max-width: 480px) {
.tbl_factory {
font-size: 0.9rem;
}
}

/*　———　工場テーブル2　———　*/

.tbl_factory2 {
width: 100%;
margin: 0;
padding: 0;
vertical-align: middle;
font-size: 1rem;
border-collapse: collapse;
border: 1px solid #B4B4B4;
table-layout:fixed;
}
.tbl_factory2.none thead {
display: none;
}
.tbl_factory2 th {
padding: 0.3rem 0rem;
text-align: center;
vertical-align: middle;
font-weight: bold;
background-color: #f0f0f0;
border: 1px solid #B4B4B4;
}
.tbl_factory2 td {
padding: 0.3rem 1rem;
/*text-align: left;*/
vertical-align: middle;
border: 1px solid #B4B4B4;
background-color: #FFFFFF;
}
.tbl_factory2 td:first-child {
background-color: #f0f0f0;
width: 30%; text-align: left;
}
.tbl_factory2 td:last-child {
width: 70%; text-align:  left;
}
@media screen and (max-width: 480px) {
.tbl_factory2 {
font-size: 0.9rem;
}
}

/*　———　設備テーブル　———　*/
.tbl_machinery {
  width: 100%;
  margin: 0;
  padding: 0;
  font-size: 0.9rem;
  border-collapse: collapse;
  border: 1px solid #B4B4B4;
  table-layout: fixed;
}

.tbl_machinery.none thead {
  display: none;
}

.tbl_machinery th {
  padding: 0.5rem 0.6rem;
  text-align: center;
  vertical-align: middle;
  font-weight: bold;
  background-color: #d9e6ee;
  border: 1px solid #B4B4B4;
}

.tbl_machinery td {
  padding: 0.5rem 0.8rem;
  vertical-align:middle;
  border: 1px solid #B4B4B4;
  background-color: #FFFFFF;
  text-align: left;
}

/* 1列目（設備名）専用 */
.tbl_machinery .col-name {
  font-weight: bold;
  background-color: #edf3f7;
}

/* 1列目グレーバージョン */
.tbl_machinery.gray .col-name {
  font-weight: bold;
  background-color: #f2f2f2;
}

/* 台数だけ中央寄せ */
.tbl_machinery th:last-child,
.tbl_machinery td:last-child {
  text-align: center;
}

/* スマホ */
@media screen and (max-width: 480px) {
  .tbl_machinery {
    font-size: 0.7rem;
  }
.tbl_machinery th {
  padding: 0.3rem 0.3rem;
  }
.tbl_machinery td {
  padding: 0.3rem 0.3rem;
  }
}

/*　==============================　ABOUT　==============================　*/

/*　--------------------　署名の横幅指定　--------------------　*/
.name_area {
  width: 300px;
  margin-left: auto;
}

@media screen and (max-width: 768px) {
.name_area {
  width: 220px;
}
}

/*　【A】　*/
.about-img-space{padding-top: 35rem;}
@media screen and (max-width: 498px) {
.about-img-space{
padding-top: 24rem;
margin: 0rem 2rem 0rem 2rem;
}
}
/*　--------------------　特長ボックス　--------------------　*/
.about_pickup_box{
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
justify-content: center;
align-items: center;
flex-flow: column wrap;
margin: -30rem auto 3rem auto;
}
.about_pickup_item{
display: -webkit-inline-flex;
display: -moz-inline-flex;
display: -ms-inline-flex;
display: -o-inline-flex;
display: inline-flex;
flex-flow: column wrap;
justify-content: center;
align-items: center;
margin: 0 auto;
background-color: #666666;
color: #000000;
max-width: 400px;
width: 100%;
height: 400px;
font-size:2.5rem;
}
.about_pickup_item span{
font-size: 1.75rem;
line-height: 1.5rem;
}
@media screen and (max-width: 968px) {
.about_pickup_box{
margin: -30rem auto 3rem auto;
}
.about_pickup_item{
height: 300px;
}
}
@media screen and (max-width: 768px) {
.about_pickup_box{
margin: -30rem 0rem 3rem 2rem;
}
}
@media screen and (max-width: 498px) {
.about_pickup_box{
margin: -6.5rem 0rem 0rem 0rem;
}
.about_pickup_item{
margin: 0rem 0rem 0rem 0rem;
padding: 1.5rem 0rem 1rem 0rem;
height: 120px;
width: 70%;
}
}

/*　———　社長の写真の上下幅　———　*/
.ceophotospace {
padding: 40rem 0rem 0rem 0rem;
z-index: -1;
}

@media screen and (max-width: 498px){
.ceophotospace {
padding: 32rem 0rem 0rem 0rem;
z-index: -1;
}
}

.ceophotospace2 {
z-index: -1;
}

.ceomessagetitle {
padding: 0rem 0rem 2rem 5rem;
margin: -12rem 0rem 0rem 0rem;
z-index: 1;
}
@media screen and (max-width: 498px){
.ceomessagetitle {
margin: -14rem 0rem 0rem 0rem;
}
}

.ceomessage {
padding: 3rem 3rem 3rem 3rem;
margin: -8rem 2rem 0rem 2rem;
z-index: 1;
}
@media screen and (max-width: 498px){
.ceomessage {
margin: -1rem 2rem 0rem 2rem;
}
}

/*　ABOUTページの製品写真まわりのスペース　*/
.aboutproductspace {
padding: 2rem 1.5rem 4rem 1.5rem;
}
@media screen and (max-width: 498px){
.aboutproductspace {
padding: 2rem 1.5rem 3rem 1.5rem;
}
}

/*　--------------------　ボックス　--------------------　*/
.about-item {
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
-ms-flex-flow: row wrap;
flex-flow: row wrap;
-webkit-box-align: stretch;
-ms-flex-align: stretch;
align-items: stretch;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-sizing: border-box;
box-sizing: border-box;
width: 100%;
}
.about-item li {
display: -webkit-inline-flex;
display: -moz-inline-flex;
display: -ms-inline-flex;
display: -o-inline-flex;
-ms-flex-flow: row wrap;
flex-flow: row wrap;
-webkit-box-align: stretch;
-ms-flex-align: stretch;
align-self: stretch;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
align-items: center;
-webkit-box-sizing: border-box;
box-sizing: border-box;
padding: 1rem 3px;
margin: 0rem 2px 4px 2px;
width: calc(25% - 10px);
background-color: rgba(255,255,255,1.00);
box-shadow: 0px 0px 2px 0px rgba(150,150,150,0.1);
}
@media screen and (max-width: 768px) {
.about-item li{
width: calc(50% - 4px);
margin: 0rem 2px 4px 2px;
padding: 0.8rem 0;
}
}
.about-sub-ttlA{
position: relative;
margin-top: -2rem;
}
.about-sub-ttlA span{
display: inline-block;
background-color: #666666;
padding: 1rem 2rem;
}
.about-sub-ttlB span{
display: inline-block;
box-sizing: border-box;
border: 1px solid #666666;
padding: 1rem 2rem;
}
/*　--------------------　リスト　--------------------　*/
.about-tb-contents {
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
flex-flow: row nowrap;
justify-content: flex-start;
align-items: flex-start;
width: 100%;
border-bottom:1px solid #E2E8F0;
}
.tb-border-n{
border:none!important;
}
.about-tb-contents dt{
padding: 1rem 0rem 1rem 0rem;
position: relative;
font-weight: bold;
font-size:0.9rem;
letter-spacing:0.2rem;
width: calc(100% - 40px - 1rem);
}
.about-tb-contents dd{
text-align: right;
padding: 1rem 0rem 1rem 1rem;
width: 40px;
}
@media screen and (max-width: 768px){
.about-tb-contents {
flex-flow: row wrap;
justify-content: flex-start;
align-items: flex-start;
width: 100%;
}
.about-tb-contents dt {
font-weight: bold;
letter-spacing:0.1rem;
}
.about-tb-contents dd {
font-size: 1rem;
border: none;
}
}

/*　==============================　BUSINESS A　==============================　*/
.businessA-mainImg{padding-top: 32rem;}
.businessA-detail{margin: -6rem 2rem 4rem 2rem;}
@media screen and (max-width: 498px) {
.businessA-mainImg{padding-top: 24rem;}
}

/*　==============================　FACILITY A　==============================　*/
.facilityA-tb{
background-color: #ffffff;
padding: 1.75rem 0rem 1.5rem 0rem;
}
.facilityA-tb li{
width: calc(100% - 4rem);
margin: 1rem auto 0rem auto;
padding-bottom: 1rem;
border-bottom: 1px solid #cfcfcf;
}
.facilityA-tb li:last-child{
border-bottom: 0px solid #cfcfcf;
}
.facilityA-tb li dl{
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
flex-flow: row nowrap;
justify-content: flex-start;
align-items: flex-start;
width: 100%;
}
.facilityA-tb li dl dt{
margin: 0rem 0rem 0rem 0rem ;
position: relative;
font-weight: bold;
font-size:0.9rem;
color:#000000;
letter-spacing:0.2rem;
width: 300px;
}
.facilityA-tb li dl dd{
text-align: left;
padding: 0rem 2rem;
width: calc(100% - 300px - 4rem);
}
@media screen and (max-width: 768px){
.facilityA-tb{
padding: 1rem 1.5rem 1rem 1.5rem;
}
.facilityA-tb li{
width: 100%;
}
.facilityA-tb li dl {
flex-flow: column wrap;
justify-content: flex-start;
align-items: flex-start;
width: 100%;
}
.facilityA-tb li dl dt {
font-weight: bold;
margin: 0rem 0rem 0.5rem 0rem;
padding-top: 0.5rem;
width: 100%;
letter-spacing:0.1rem;
}
.facilityA-tb li dl dd {
font-size: 1rem;
margin: 0rem 0rem 0rem 0rem;
padding: 0rem 0rem 0rem 0rem;
width: 100%;
}
}

/*　==============================　WORKS A　==============================　*/
.worksA-tb-img li dl{
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
flex-flow: row nowrap;
justify-content: flex-start;
align-items: flex-start;
width: 100%;
border-bottom:1px solid #cfcfcf;
}
.worksA-tb-img li:last-child dl{
border:none!important;
}
.worksA-tb-img li dl dt{
padding: 1rem 0rem 1rem 0rem;
position: relative;
font-weight: bold;
letter-spacing:0.2rem;
width: 80px;
}
.worksA-tb-img li dl dd{
color: #000000;
text-align: left;
padding: 1rem 0rem 1rem 1rem;
width: calc(100% - 80px - 1rem);
}
@media screen and (max-width: 768px){
.worksA-tb-img li dl {
flex-flow: column wrap;
justify-content: flex-start;
align-items: flex-start;
width: 100%;
}
.worksA-tb-img li dl dt {
font-weight: bold;
padding: 1rem 0 0.3rem 0;
width: 100%;
letter-spacing:0.1rem;
}
.worksA-tb-img li dl dd {
font-size: 1rem;
padding: 0rem 0 1rem 0;
border: none;
width: 100%;
}
}

.worksA-tb-tx{
background-color: #ffffff;
padding: 1.75rem 0rem 1.5rem 0rem;
}
.worksA-tb-tx li{
width: calc(100% - 4rem);
margin: 1rem auto 0rem auto;
padding-bottom: 1rem;
border-bottom: 1px solid #cfcfcf;
}
.worksA-tb-tx li:last-child{
border-bottom: 0px solid #cfcfcf;
}
.worksA-tb-tx li dl{
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
flex-flow: row nowrap;
justify-content: flex-start;
align-items: flex-start;
width: 100%;
}
.worksA-tb-tx li dl dt{
margin: 0rem 0rem 0rem 0rem ;
position: relative;
font-size:0.9rem;
font-weight: normal;
color:#000000;
letter-spacing:0.2rem;
width: 180px;
}
.worksA-tb-tx li dl dd:nth-child(2){
font-weight: bold;
text-align: left;
padding: 0rem 2rem;
width: calc(100% - 330px - 4rem);
}
.worksA-tb-tx li dl dd:nth-child(3){
text-align: right;
width: 150px;
}
@media screen and (max-width: 768px){
.worksA-tb-tx{
padding: 1rem 1.5rem 1rem 1.5rem;
}
.worksA-tb-tx li{
width: 100%;
}
.worksA-tb-tx li dl {
flex-flow: column wrap;
justify-content: flex-start;
align-items: flex-start;
width: 100%;
}
.worksA-tb-tx li dl dt {
margin: 0rem 0rem 0.5rem 0rem;
padding-top: 0.5rem;
width: 100%;
letter-spacing:0.1rem;
}
.worksA-tb-tx li dl dd {
font-size: 1rem;
margin: 0rem 0rem 0rem 0rem!important;
padding: 0rem 0rem 0rem 0rem!important;
width: 100%!important;
}
.worksA-tb-tx li dl dd:nth-child(3){
text-align: left;}
}

/*　==============================　FLOW A　==============================　*/
.flowA-mainImg{padding-top: 20rem;}
@media screen and (max-width: 498px) {
.flowA-mainImg{padding-top: 17.5rem; margin:1rem 1rem 0rem 1rem;}
}
.flowA-bgImg {padding-top: 50vh;}
@media screen and (max-width: 480px){
.flowA-bgImg {padding-top: 40vh;}
}

/*　▼　*/
.flowA-sankaku  {
width: 0;
height: 0;
border: 2rem solid transparent;
border-top: 2rem solid #fff;
margin: 0 auto;
padding:0 0 1rem 0;
}
.flowA-sankaku-color {
width: 0;
height: 0;
border: 2rem solid transparent;
border-top: 2rem solid #424242;
margin: 0 auto;
padding:0 0 1rem 0;
}

/*　==============================　COMPANY　==============================　*/
/*　----------　アンカーボタン　----------　*/
.color_btn .fs_btn_text_main {
font-size:1.4rem;
}
.color_btn .fs_btn_text_sub {
font-size:0.9rem;
}
.color_btn .fs_btn{
line-height: 1.4rem;
background-color: rgba(85,99,105,0.45);
}
.color_btn .fs_btn:hover {
background-color: rgba(85,99,105,0.05);
}
/*　----------　会社概要　----------　*/
.cp_left {
font-size: 0.9rem;
padding: 1rem 0;
vertical-align: top;
width: 20%;
font-weight: bold;
text-align: justify;
color: #7a8e96;
}
.cp_right {
font-size: 0.9rem;
text-align: justify;
padding: 1rem  0 1rem 1rem;
vertical-align: top;
width: 80%;
}
.cp_line {
border-top:1px solid #ccc;
}


/*　タブレット横時スクロール　*/
@media screen and (max-width: 1024px) {
.tb_bg_scroll{background-attachment: scroll!important; }}



/*　==============================　RECRUIT　==============================　*/
/*　----------　fix　----------　*/
.rec_bg_m{
position: relative;
z-index: -100;
}
@media screen and (max-width: 768px) {
.rec_bg01{
background-attachment: scroll!important;
}
}
/*　--------------------　採用情報テーブル　--------------------　*/
.outline_table_list{
border-bottom: 1px solid #f4f4f4;
padding-bottom: 0.4rem;
margin: 0rem;
}
.outline_table_list:last-child{
border: none;
padding-bottom:0rem;
}
.outline_contents {
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
flex-flow: row nowrap;
justify-content: flex-start;
align-items: flex-start;
width: 100%;
padding: 1.2rem 0rem 0.8rem 0rem;
}
.outline_contents dt{
color: #043c78;
padding: 0rem 1rem 0rem 0rem;
width: 140px;
}
.outline_contents dd{
text-align: left;
padding: 0rem 0rem 0rem 0rem;
width: calc(100% - 140px);
}
@media screen and (max-width: 768px){
.outline_contents {
flex-flow: column wrap;
justify-content: flex-start;
align-items: flex-start;
width: 100%;
padding: 0.8rem 0rem 0.4rem 0rem;
}
.outline_contents dt{
font-size: 95%;
padding: 0rem 0rem 0.4rem 0rem;
width: 100%;
}
.outline_contents dd{
font-size: 105%;
padding: 0rem 0rem 0rem 0rem;
width: 100%;
}
}

/*　--------------------　採用ポイントの上下幅指定　--------------------　*/

.point_area { height:210px; }

@media screen and (max-width: 498px){
.point_area { height:200px; }
}

.point_area2 { height:170px; }

@media screen and (max-width: 1024px){
.point_area2 { height:200px; }
}

@media screen and (max-width: 768px){
.point_area2 { height:220px; }
}

@media screen and (max-width: 498px){
.point_area2 { height:140px; }
}

/*　==============================　STAFF　==============================　*/
.staff_margin_n{
margin-top: -8rem;
}
.qa_q {
color:#919191;
vertical-align: top;
font-weight: bold; 
}
.qa_a {
padding: 0.5rem 0 3rem 0;
vertical-align: top;
}
@media screen and (max-width: 480px) {
.staff_margin_n{
margin-top: -3rem;
}
}
/*　==============================　INTERVIEW A　==============================　*/
.interviewA-mainImg{padding-top: 27rem;}
.interviewA-subImg{padding-top: 18rem;}
@media screen and (max-width: 498px) {
.interviewA-mainImg{padding-top: 24rem;}
.interviewA-subImg{padding-top: 24rem;}
}
.interviewA-qa-q {color:#666666; vertical-align: top; font-weight: bold;}
.interviewA-qa-a {padding: 0.5rem 0rem 2.5rem 0rem; vertical-align: top;}

/*　==============================　INTERVIEW B　==============================　*/
/*　80%中央寄せ　*/
@media screen and (min-width:1281px) {
.interviewB-w80Center {width: calc(100% - 20%); margin: auto!important;}
}
/*　———　インタビュータイトル回り　———　*/
.interviewB-tittleEn{font-size: 1.2rem; margin-bottom: 1rem!important;}
.interviewB-tittleEn:before{content: ""; display: inline-block; top: -0.4rem; position: relative; width: 2rem; height: 1px; background-color: #ffffff; margin: 0rem 1rem 0rem 0.2rem; box-shadow: 1px 1px 2px rgba(0,0,0,0.75);}
.interviewB-tittleSpace{text-shadow: 1px 1px 2px rgba(0,0,0,0.75);}
@media screen and (min-width:769px) {
.interviewB-tittleSpace{ font-size:2.4rem; padding: 28rem 0rem 7rem 2rem ;}
}
@media screen and (max-width:768px) {
.interviewB-tittleSpace{  font-size:2rem; padding: 22rem 0rem 7rem 2rem !important;}
}
@media screen and (max-width:480px) {
.interviewB-tittleSpace{ font-size:2rem; padding: 23rem 0rem 6rem 2rem !important;}
}
.interviewB-subImg{padding: 10rem 0rem; margin-bottom: 1rem;}

.interviewB-detail{margin:-5rem 1rem 0rem 1rem; padding:0rem 1rem 0rem 1rem; background-color:#ffffff;}
@media screen and (max-width:480px) {
.interviewB-detail{padding:0rem;}
}

/*　==============================　GUIDELINE A　==============================　*/
.guidelineA-tb{
background-color: #f2f2f2;
padding: 1.75rem 0rem 1.5rem 0rem;
}
.guidelineA-tb li{
width: calc(100% - 4rem);
margin: 1rem auto 0rem auto;
padding-bottom: 1rem;
border-bottom: 1px solid #cfcfcf;
}
.guidelineA-tb li:last-child{
border-bottom: 0px solid #cfcfcf;
}
.guidelineA-tb li dl{
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
flex-flow: row nowrap;
justify-content: flex-start;
align-items: flex-start;
width: 100%;
}
.guidelineA-tb li dl dt{
margin: 0rem 0rem 0rem 0rem ;
position: relative;
font-weight: bold;
font-size:0.9rem;
color:#000000;
letter-spacing:0.2rem;
width: 200px;
}
.guidelineA-tb li dl dd{
text-align: left;
padding: 0rem 2rem;
width: calc(100% - 200px - 4rem);
}
@media screen and (max-width: 768px){
.guidelineA-tb{
padding: 1rem 1.5rem 1rem 1.5rem;
}
.guidelineA-tb li{
width: 100%;
}
.guidelineA-tb li dl {
flex-flow: column wrap;
justify-content: flex-start;
align-items: flex-start;
width: 100%;
}
.guidelineA-tb li dl dt {
font-weight: bold;
margin: 0rem 0rem 0.5rem 0rem;
padding-top: 0.5rem;
width: 100%;
letter-spacing:0.1rem;
}
.guidelineA-tb li dl dd {
font-size: 1rem;
margin: 0rem 0rem 0rem 0rem;
padding: 0rem 0rem 0rem 0rem;
width: 100%;
}
}


/*　==============================　お問い合わせページ　==============================　*/
.formBlockSurveyTable dl dt {
color: #999;
text-align: left;
width: 100%;
margin-right: 0%!important;
font-weight: bold;
font-size: 1rem;
margin-top: 1rem;
padding: 2px 0 0.5% 0;
}
.formBlockSurveyTable dl dd {
width: 100%;
}
.formBlockSurveyTable dl {
padding: 0.5% 0;
}
.formBlockSurveyTable dl dd input,
.formBlockSurveyTable dl dd textarea {
width: 96%;
resize: none;
border-radius: 0;
padding: 1.5%;
border: 1px solid #c8d2dc;
}
.formBlockSubmitButton {
width:240px!important;
text-align:center!important;
background-color: #999!important;
color:#fff;
border:1px solid #fff;
}
@media screen and (max-width: 480px) {
.formBlockSubmitButton {
width:100%!important;
}
.miniSurveyView input[type="text"],
.miniSurveyView input[name^="Question"],
.miniSurveyView textarea[name^="Question"] {
font-size: 16px !important;
transform: scale(0.9) !important;
}
}
.formBlockSubmitButton:hover {
transition:0.6s;
background-color: #fff!important;
border:1px solid #999;
color:#999;
}
.on-pointer input {
cursor: pointer;
}
@media screen and (max-width: 498px) {
.formBlockSurveyTable dl dd input,
.formBlockSurveyTable dl dd textarea {
width: 100%;
}
}



/*　==============================　ページタイトル共通設定　==============================　*/
.page-ttl span{
display: ineline-block;
background-color: #ffffff;
padding: 0.55rem 1.2rem 0.55rem 1.5rem;
}
.page-ttl-ja{padding: 13rem 0rem 0rem 0rem}
.page-ttl-en{padding: 1rem 0rem 13rem 0rem}
@media screen and (max-width: 480px) {
.page-ttl-ja{padding: 10.5rem 0rem 0rem 0rem}
.page-ttl-en{padding: 1rem 0rem 10.5rem 0rem}
}

.page-ttl-space{
padding: 33rem 0rem 0rem 0rem;
}
@media screen and (max-width: 498px) {
.page-ttl-space{
padding: 26rem 0rem 0rem 0rem;
}
}

.page-ttl-space2{
padding: 2rem 2rem 2rem 2rem;
background-color:rgba(35,59,108,0.6);
}


/*　=============================================================================　*/
/*　=============================================================================　*/
/*　===============================　全体の共通項目　===============================　*/
/*　=============================================================================　*/
/*　=============================================================================　*/


/*　==============================　ヘッダー部分　==============================　*/
/*　--------------------　Fatナビに関する設定　--------------------　*/
.fat-nav li {
list-style-type: none;
text-align: left;
padding: 1.5rem 0 1.5rem 2rem;
font-size: 1.2rem;
border-bottom: 1px solid #969696;
}
.fat-nav{
background: rgba(45, 55, 60, 0.96);
}
.hamburger .hamburger__icon, .hamburger .hamburger__icon:before, .hamburger .hamburger__icon:after {
background-color: #00469b;
}

/*　Fatnaviフィックス　*/
#topfix-A {
position: absolute;
z-index: 50;
top: 0;
right: 0;
}
#topfix-B {
position: absolute;
z-index: 10;
top: 0;
right: 0;
}

/*　==============================　フッター部分　==============================　*/
/*　———　フッターロゴ　———　*/
.f-logo {
padding: 0rem 2rem 1.5rem 2rem;
}

@media screen and (max-width: 1024px){
.f-logo {
padding: 0rem 2rem 1.5rem 2rem;
}
}

@media screen and (max-width: 768px){
.f-logo {
padding: 0rem 0rem 1.5rem 2rem;
}
}

@media screen and (max-width: 498px){
.f-logo {
padding: 0rem 50vw 1.5rem 2rem;
}
}

/*　フッターロゴに関する設定　*/
@media screen and (min-width: 1201px) {
.f-logo2 {padding: 1rem 2rem 1rem 2rem;}
}
@media screen and (max-width: 1200px) {
.f-logo2 {padding: 1rem 15vw 1rem 2rem;}
}
@media screen and (max-width: 480px) {
.f-logo2 {padding: 1rem 47vw 1rem 2rem;}
}

/*　サイトマップ　*/
.sitemap-table{
width:100%;
padding: 0rem 0rem 3rem 2rem;
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
justify-content: center;
flex-direction: row;
}
.sitemap-table li:nth-child(1){width: 110px;}
.sitemap-table li:nth-child(2){width: 130px;}
.sitemap-table li:nth-child(3){width: 105px;}
.sitemap-table li p{
margin-bottom: 1rem;
}
.sitemap-table-eiji{
font-size:0.9rem;
font-family: "Lato", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", sans-serif;
}
@media screen and (max-width: 768px) {
.sitemap-table{
font-size:120%!important;
line-height:2.5rem!important;
flex-direction: column;
width: calc(100% - 2rem);
padding: 1rem 0rem 3rem 2rem;
}
.sitemap-table li:nth-child(1){width: 100%;}
.sitemap-table li:nth-child(2){width: 100%;}
.sitemap-table li:nth-child(3){width: 100%;}
.sitemap-table li a{
flex-flow: row;
display: inline-flex;
}
.sitemap-table .br-sp{
line-height: unset;
}
.sitemap-table li p{
margin-bottom: 0rem;
padding: 0.35rem 0rem 0.35rem 1rem;
}
.sitemap-table li p:nth-child(odd){
background-color: #3c3c3c;
}
}
.sitemap-table a, .sitemap-table a:visited, .sitemap-table a:active ,
.f-link a , .f-link a:visited, .f-link a:active  {
color: #ffffff;
}
.sitemap-table a:hover ,
.f-link a:hover{
opacity: 0.5;
transition:0.3s;
}

/*　———　フッターのリンク一番右　———　*/
.footerlink_rightmost {
padding: 0rem 0rem 1.5rem 0rem;
}
@media screen and (max-width: 498px){
.footerlink_rightmost {
padding: 0rem 0rem 1.5rem 2rem;
}
}

/*　==============================　文字に関する設定　==============================　*/
.bold {
font-weight: bold;
}
.italic {
font-style: italic;
}
.eiji {
font-family: "Lato", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", sans-serif;
}

.space-1{
letter-spacing: 0.1rem;
}
.space-2{
letter-spacing: 0.2rem;
}
.space-3{
letter-spacing: 0.3rem;
}
.space-4{
letter-spacing: 0.4rem;
}
.br-sp{
display:none;
}
.br-sp-r{
display:inline;
}
@media screen and (max-width: 900px) { 
}
@media screen and (max-width: 480px) { 
.tx-center{
text-align: center!important;
}
.tx-left{
text-align: left!important;
}
.tx-right{
text-align: right!important;
}
.br-sp{
display:block;
line-height:0rem;
}
.br-sp-r{
display:none;
}
}

/* latin-ext */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/poppins/v21/pxiByp8kv8JHgFVrLCz7Z1JlFc-K.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/poppins/v21/pxiByp8kv8JHgFVrLCz7Z1xlFQ.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/*　--------------------　タイトルの太い欧文　--------------------　*/
.home-ttl{font-size:2.7rem; font-family: 'Poppins' ; color: #233b6c; line-height: 2rem; padding:4rem  0 2rem  0;}
.home-ttl span{font-weight:bold; color: #333333; font-size:1rem; padding:0  0 2.5rem  0;}

/*　--------------------　タイトルの太い欧文（白）　--------------------　*/
.home-ttl-w{font-size:2.7rem; font-family: 'Poppins' ; color: #ffffff; line-height: 2rem; padding:4rem  0 2rem  0;}
.home-ttl-w span{font-weight:bold; color: #ffffff; font-size:1rem; padding:0  0 2.5rem  0;}

/*　--------------------　タイトルの太い和文　--------------------　*/
.noto-sans {
  font-family: "Noto Sans JP", serif, 游ゴシック bold;
  font-weight: 700;
  font-style: normal;
}


/*　==============================　色に関する設定　==============================　*/
.rgba-white{
background-color:rgba(255,255,255,0.8);
}
.rgba-black{
background-color:rgba(0,0,0,0.8);
}
.rgba-black4{
background-color:rgba(0,0,0,0.4);
}
.rgba-staff{
background-color:rgba(0,0,0,0.7);
}
/*　==============================　デフォルト　==============================　*/
.ccm-edit-mode, .ccm-scrapbook-list-item-detail div{margin-top:0rem!important;}
.ccm-edit-mode .ccm-area-styles{margin-top:0rem!important;}
/*　--------------------　ページリストタグ　--------------------　*/
.tk_tags_Tags{
background-color: #233b6c;
color: #ffffff;
}
/*　--------------------　ページャー　--------------------　*/
div .ccm-pagination{
margin-top: 1rem;
}
div.ccm-pagination span.ccm-page-left, div.ccm-pagination span.ccm-page-right{
top: 0.5rem!important;
}
#pagination .currentPage  strong{
background-color: #000000!important;
color: #ffffff!important;
}
#pagination .numbers {
margin-right: 0.6rem;
}
#pagination .numbers a, #pagination .numbers strong{
font-family: 'Roboto', 游ゴシック Medium,Yu Gothic Medium,游ゴシック体,YuGothic,sans-serif;
background-color: #666666;
padding: 0.5rem 1rem;
display: inline-block;
}
/*　--------------------　マルチイメージのポインター無　--------------------　*/
.cuosor {
pointer-events: none ;
cursor: default ;
}
/*　--------------------　telリンク - スマホ版のみ　--------------------　*/
@media screen and (min-width: 768px) {
a[href^="tel:"] {pointer-events: none;}
}
@media screen and (min-width: 480px) {
.tel_splink {pointer-events: none;}
}
/*　———　スマホ時改行なし　———　*/
@media screen and (max-width: 480px){
.sp-br-none br {display:none;}
}
/*　———　スマホ時改行あり　———　*/
@media only screen and (min-width: 769px){
.sp-br br {display:none;}
}
/*　--------------------　タブレット横時スクロール　--------------------　*/
@media screen and (max-width: 1024px) {
.tb-bg-scroll{background-attachment: scroll!important; }
}
/*　--------------------　その他　--------------------　*/
a {
text-decoration:none;
}
h1 , h2 , h3 {
margin: 0px 0px 0px 0px;
padding: 0px 0px;
margin-top: 0px;
font-weight: normal;
}
.hover-opacity:hover{
opacity: 0.8;
transition:0.6s;
}
.hover-opacity-img:hover {
opacity:0.7;
transition:0.6s;
}
.cuosor {
pointer-events: none ;
cursor: default ;
}
/*　box-shadow　*/
.boxshadow_20 {box-shadow: 4px 4px 6px 0 rgba(0,0,0,.20);}
.boxshadow_50 {box-shadow: 4px 4px 6px 0 rgba(0,0,0,.5);}
.boxshadow_90 {box-shadow: 4px 4px 6px 0 rgba(0,0,0,.9);}
/*　--------------------　トップボタン　--------------------　*/
/*　ボタンline-height　*/
.btn-detail .fs_btn_text {
line-height: 1.4rem;
}
/*　ピックアップボタン　*/
.btn_pickup .fs_btn_text_main {
letter-spacing: 0.2rem;
font-size:1.2rem;
}
.btn_pickup .fs_btn_text_sub {
font-size:0.8rem;
font-weight: bold;
}
.btn_pickup  .fs_btn {
background-color: rgba(33,33,33,0.5);
}
.btn_pickup .fs_btn:hover{
background-color: rgba(33,33,33,0.05);
}

/*　ピックアップボタン2　*/
.btn_pickup2 .fs_btn_text_main {
letter-spacing: 0.2rem;
font-size:1.6rem;
}
.btn_pickup2 .fs_btn_text_sub {
font-size:1.2rem;
font-weight: bold;
}
.btn_pickup2  .fs_btn {
background-color: rgba(33,33,33,0.5);
}
.btn_pickup2 .fs_btn:hover{
background-color: rgba(33,33,33,0.05);
}
/*　ページトップボタン　*/
.pagetop_btm{
position: fixed;
z-index: 20;
bottom: 0;
right: 0;
}
.pagetop_btm .fs_btn{
line-height: 1.6;
}
.pagetop_btm_sp {
background-color: rgba(0, 70, 150, 0.7);
}

.shrinkingspace{
padding: 5rem 0rem 0rem 0rem;
}
@media screen and (max-width: 498px) {
.shrinkingspace{
padding: 4rem 0rem 0rem 0rem;
}
}

/*　箇条書き　*/
.vision-list{
  list-style: none;
  margin: 1.3rem 0rem 0.3rem 1.75rem;
  padding: 0;
}

.vision-list li{
  position: relative;
  padding-left: 1.5rem;
  line-height: 2rem;
  margin-bottom: 0.5rem;
}

.vision-list li::before{
  content: "・";
  position: absolute;
  left: 0;
  color: #233b6c;
}

/*　--------------------　Google font　--------------------　*/
.googlefont {font-family: 'Roboto', 游ゴシック Medium,Yu Gothic Medium,游ゴシック体,YuGothic,sans-serif;}

/* cyrillic-ext */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 300;
src: local('Roboto Light'), local('Roboto-Light'), url(https://fonts.gstatic.com/s/roboto/v16/0eC6fl06luXEYWpBSJvXCBJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
}
/* cyrillic */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 300;
src: local('Roboto Light'), local('Roboto-Light'), url(https://fonts.gstatic.com/s/roboto/v16/Fl4y0QdOxyyTHEGMXX8kcRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 300;
src: local('Roboto Light'), local('Roboto-Light'), url(https://fonts.gstatic.com/s/roboto/v16/-L14Jk06m6pUHB-5mXQQnRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 300;
src: local('Roboto Light'), local('Roboto-Light'), url(https://fonts.gstatic.com/s/roboto/v16/I3S1wsgSg9YCurV6PUkTORJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 300;
src: local('Roboto Light'), local('Roboto-Light'), url(https://fonts.gstatic.com/s/roboto/v16/NYDWBdD4gIq26G5XYbHsFBJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 300;
src: local('Roboto Light'), local('Roboto-Light'), url(https://fonts.gstatic.com/s/roboto/v16/Pru33qjShpZSmG3z6VYwnRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 300;
src: local('Roboto Light'), local('Roboto-Light'), url(https://fonts.gstatic.com/s/roboto/v16/Hgo13k-tfSpn0qi1SFdUfVtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}