.page_ttl .ttl_inner b{display:inline-block}

section#vision2030{}
section#vision2030 .section_in{width:100%; padding:10px 10px; box-sizing:border-box;}
section#vision2030 .section_in .vision_nav{margin:40px auto;}
section#vision2030 .section_in .vision_nav ul{display:flex; justify-content: center; gap:10px;}
section#vision2030 .section_in .vision_nav ul li{display:inline-block; vertical-align: top; margin:0 0 5px 5px;}
section#vision2030 .section_in .vision_nav ul li a{display:block; padding:10px 16px; background:#3caa0a; color:#fff; font-size:18.5px; border:solid 3px #3caa0a; text-align:center; text-decoration:none;box-sizing:border-box; border-radius:10px; font-weight:bold;}
section#vision2030 .section_in .vision_nav ul li a.current{background:#fff; color:#3caa0a; border:solid 3px #3caa0a; box-sizing:border-box;}

section#vision2030 .section_in .vision_list li{font-size:16px; line-height:1.8; padding:3px 0 3px 1.5em; text-indent:-1.5em; font-weight:500;}

.ttl_lead,
.corporate_column p{font-weight:500;}

.vision_list02{display:flex; gap:20px;}
.vision_list02 div{width:calc(25% - 10px);}
p.vision_l_lead{font-size:28px; font-weight:700; color:#333; line-height:1.8; font-weight:700;}
.em{color:#3caa0a;}
#vision2030 .corporate_column{padding:0 0 50px;}

@media screen and (max-width: 1200px) {
    section#vision2030 .section_in .vision_nav ul{display:flex; justify-content: left; flex-wrap:wrap; gap:10px;}
}

@media screen and (max-width: 1080px) {
    section#vision2030 .section_in .vision_nav ul{display:flex; flex-wrap:wrap; justify-content:flex-start; gap:10px;}
    section#vision2030 .section_in .vision_nav ul li a{display:block; padding:10px 18px; font-size:15px;}
    section#vision2030 .section_in .vision_nav ul li span.inline-block{display:inline-block;}
    section#vision2030 .section_in .vision_list li{font-size:15px;}
    section#vision2030 .section_in .vision_list li{font-size:15px; line-height:1.6;}
    .vision_list02{display:flex; gap:20px;}
    .vision_list02 div{width:calc(33% - 10px);}

    p.vision_l_lead{font-size:24px; line-height:1.6;}
    #vision2030 .corporate_column{padding:0 0 40px;}
}
@media screen and (max-width: 768px) {
    section#vision2030 .section_in .vision_list li{font-size:14px; line-height:1.6;}
    .vision_list02{display:flex; gap:20px;}
    .vision_list02 div{width:calc(50% - 10px);}
    p.vision_l_lead{font-size:21px; line-height:1.6;}
    #vision2030 .corporate_column{padding:0 0 40px;}
    section#vision2030 .section_in .vision_nav ul li span.inline-block{display:inline;}
}
@media screen and (max-width: 576px) {
  section#vision2030 .section_in .vision_nav ul li{display:inline-block; vertical-align: top; margin:0 0 0 5px; width:100%;}
  section#vision2030 .section_in .vision_nav ul li a{display:block; padding:12px 12px; background:#3caa0a; color:#fff; font-size:13px;}
  section#vision2030 .section_in .vision_list li{font-size:13px; line-height:1.6;}
  p.vision_l_lead{font-size:18px; line-height:1.6;}
}

@media screen and (max-width: 480px) {
    p.vision_l_lead{font-size:16px; line-height:1.6;}
  }


section#vision2030 .section_in .corporate_column{}
section#vision2030 .movie_wrap{width:100%; margin:0 auto 30px; max-width:720px;}
section#vision2030 .movie_wrap .youtube{display:block; padding-top:56.25%; position:relative;}
section#vision2030 .movie_wrap .youtube iframe{position:absolute; width:100%; height:100%; top:0; left:0; right:0; bottom:0;}



/*vision02*/
.vision_strength_list{display:flex; width:100%; margin:30px 0; flex-wrap:wrap; justify-content: space-between; gap:15px;}
.vision_strength_list div{display:flex; align-items:center;width:calc(33% - 10px); padding:30px 26px; box-sizing:border-box; background:#fff; border-radius:20px;}
.vision_strength_list div div{width:100%; display:block; flex-wrap:wrap;}
.vision_strength_list div div.strength_in{padding:0;}
.vision_strength_list div div a{display:block; text-decoration:none;}
.vision_strength_list div div a p{color:#444; font-weight:500; font-size:14px;}
.vision_strength_list div div a p span{display:inline-block}
.vision_strength_list div h3{width:100%; display:flex; align-items:center; justify-content: center; font-size:21px; text-align:center; line-height:1.6; color:#333;}
.vision_strength_list div h3 span{text-decoration:underline; text-underline-offset: 8px; line-height:1.8;}
.vision_strength_list div h3 span b{display:inline-block; text-decoration:underline; text-underline-offset: 8px; }
.vision_strength_list div#strength01{border:solid 5px #ffce45;}
.vision_strength_list div#strength01 h3 span b{text-decoration-color:#ffce45;}
.vision_strength_list div#strength02{border:solid 5px #fe8f8f;}
.vision_strength_list div#strength02 h3 span b{text-decoration-color:#fe8f8f;}
.vision_strength_list div#strength03{border:solid 5px #42b404;}
.vision_strength_list div#strength03 h3 span b{text-decoration-color:#42b404;}
.vision_strength_list div#strength04{border:solid 5px #3ab4f2;}
.vision_strength_list div#strength04 h3 span b{text-decoration-color:#3ab4f2;}
.vision_strength_list div#strength05{border:solid 5px #f55050;}
.vision_strength_list div#strength05 h3 span b{text-decoration-color:#f55050;}
.vision_strength_list div#strength06{border:solid 5px #86a3b8;}
.vision_strength_list div#strength06 h3 span b{text-decoration-color:#86a3b8;}

@media screen and (max-width: 1080px) {
    .vision_strength_list div div a p span{display:inline;}
}
/*
@media screen and (max-width: 1080px) {
    .vision_strength_list{display:flex; width:100%; margin:30px 0; flex-wrap:wrap; justify-content: space-between; gap:20px;}
    .vision_strength_list div{width:100%; text-align:center; display:flex; align-items:center;width:calc(50% - 10px); padding:25px 15px;}
    .vision_strength_list div h3{font-size:21px; text-align:center; line-height:1.6;}
    .vision_strength_list div div a p{font-size:14px;}
}

@media screen and (max-width: 1080px) {
    .vision_strength_list{display:flex; width:100%; margin:30px 0; flex-wrap:wrap; justify-content: space-between; gap:20px;}
    .vision_strength_list div{display:flex; align-items:center;width:calc(50% - 10px); padding:25px;}
    .vision_strength_list div h3{font-size:28px; text-align:center; line-height:1.6;}
    .vision_strength_list div div a p{font-size:15px;}
}*/
@media screen and (max-width: 960px) {
    .vision_strength_list{gap:16px;}
    .vision_strength_list div{width:calc(50% - 8px); padding:20px;}
    .vision_strength_list div h3{font-size:21px; text-align:center; line-height:1.6;}
    .vision_strength_list div div a p{font-size:14px;}
}
@media screen and (max-width: 768px) {
    .vision_strength_list{gap:16px;}
    .vision_strength_list div{width:calc(50% - 8px); padding:20px; border-width: 4px;}
    .vision_strength_list div h3{font-size:18px; text-align:center; line-height:1.6; font-weight:700;}
    .vision_strength_list div h3 br{display:none;}
    .vision_strength_list div div a p{font-size:13px;}
    .vision_strength_list div div a p span.inline-block{display:inline;}
}
@media screen and (max-width: 576px) {
    .vision_strength_list{gap:16px;}
    .vision_strength_list div{width:100%; padding:25px; display:block;  border-width: 3px;}
    .vision_strength_list div h3{width:100%; font-size:21px; text-align:center; line-height:1.6; font-weight:700;}
    .vision_strength_list div h3 br{display:inline-block;}
    .vision_strength_list div div a p{font-size:14px;}
    .vision_strength_list div div a p span{display:inline-block;}
}
@media screen and (max-width: 480px) {
    .vision_strength_list{gap:16px;}
    .vision_strength_list div{width:100%; padding:20px; display:block;}
    .vision_strength_list div h3{width:100%; font-size:18px; text-align:center; line-height:1.6; font-weight:700;}
    .vision_strength_list div h3 br{display:inline-block;}
    .vision_strength_list div div a p{font-size:13px;}
    .vision_strength_list div div a p span{display:inline-block;}
}

.ctr{text-align:center; padding:20px 0; display:flex; gap:0px; flex-direction: column; font-family:游ゴシック体, YuGothic,游ゴシック, "Yu Gothic", メイリオ, "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif}
.ctr .link_btn{display:inline-block;}
.link_btn a{display:inline-block; position:relative;color:#fff; background:#3caa0a; font-size:18.5px; font-weight:700; padding:14px 40px; text-decoration:none; border-radius:60px; line-height:1.5;}
.link_btn a:after{content:""; width:8px; height:12px; display:block; position:absolute; background:url(/assets/images/_resource/pages/company/common/detail_btn_arrow.png) no-repeat; background-size:8px 12px; top:calc(50% - 6px); right:20px;}


.round_area_white{background:#fff; border-radius:20px; padding:30px 40px; margin:30px 0; border:solid 1px #e0e0e0; overflow:hidden;}
.no_border{border:none !important;}
.pd_0{padding:0 !important;}

@media print, screen and (max-width: 768px) {
  .corporate_column{padding:0 0 20px;}
  .round_area_white{border-radius:20px; padding:20px 30px; margin:30px 0;}
  .link_btn a{font-size:16px; padding:12px 40px; text-decoration:none; border-radius:60px; line-height:1.5;}
}

@media print, screen and (max-width: 640px) {
  .corporate_column{padding:0 0 20px;}
  .round_area_white{border-radius:10px; padding:15px; margin:20px 0;}
  .link_btn a{font-size:14px; padding:12px 40px; text-decoration:none; border-radius:60px; line-height:1.5;}
}


/*ValueUP*/
section .section_in .corporate_column .big_ttl{font-size:20px; padding:20px 0; font-weight:bold;}
section .section_in .corporate_column .big_ttl strong{color:#ee7f31}
section .section_in .corporate_column .org_wrap{padding:20px; box-sizing:border-box; border:solid 4px #ee7f31; border-radius:10px; margin-bottom:30px;}
@media print, screen and (max-width: 768px) {
  section .section_in .corporate_column .big_ttl{font-size:18px; padding:20px 0; font-weight:bold;}
  section .section_in .corporate_column .org_wrap{padding:15px; box-sizing:border-box; margin-bottom:30px;}
}
@media print, screen and (max-width: 576px) {
  section .section_in .corporate_column .big_ttl{font-size:15px; padding:20px 0; font-weight:bold;}
  section .section_in .corporate_column .org_wrap{padding:8px; box-sizing:border-box; margin-bottom:30px;}
}

section .section_in table.company_table {
    width: 100%;
    margin: 0;
    border-top: dotted 1px #ddd;
    border-collapse: collapse;
    border-spacing: 0;
    color: #333;
  }

  section .section_in table.company_table td,
  section .section_in table.company_table th {
    padding: 15px;
    font-size: 15px;
    color: #333;
    border-bottom: dotted 1px #ddd;
    box-sizing: border-box;
  }
section .section_in table.company_table td {text-align:center; font-size:18px; font-weight:500;}
section .section_in table.company_table td span{text-align:center; font-size:13px; font-weight:500;}
section .section_in table.company_table td {text-align:center; font-size:18px; font-weight:500;}
section .section_in table.company_table td span{text-align:center; font-size:13px; font-weight:500;}
section .section_in table.company_table td,
section .section_in table.company_table th{width:17%;  border:solid 1px #ddd; border-collapse: collapse; font-size:16px;}

section .section_in table.company_table th{background:#f2f2f2; font-weight:bold; text-align:left;}
section .section_in table.company_table td.label {text-align:center;}

@media print, screen and (max-width: 767px) {
    section .section_in .corporate_column .table_wrap {
        padding-top: 0;
        overflow: auto;
        white-space: nowrap;
      }

    section .section_in table.company_table td {text-align:center; font-size:15px; font-weight:500;}
    section .section_in table.company_table td span{text-align:center; font-size:12px; font-weight:500;}
    section .section_in table.company_table td,
    section .section_in table.company_table th{width:17%;  border:solid 1px #ddd; border-collapse: collapse; font-size:14px;}
  }
  


.pdf_btn {
  display: block;
  margin: 10px 0;
  width:100%;
}

.pdf_btn a {
  display: block;
  background: #f7f7f7;
  color: #000;
  font-size: 17px;
  padding: 14px 30px 14px 50px;
  border: solid 1px #e2e2e2;
  text-decoration: none;
  border-radius: 6px;
  margin: 0 auto;
  position: relative;
  text-align: left;
  font-weight: 700;
  width:100%;
}
.pdf_btn a span{font-size:10px; top:calc(50% - 10px);right:20px; position:absolute; font-weight:500;}

.pdf_btn a:before {
  content: '';
  display: inline-block;
  width: 32px;
  height: 32px;
  background: url(/assets/images/company/common/pdf_icon.png) 0 0 no-repeat;
  background-size: 32px 32px;
  position: absolute;
  top: calc(50% - 16px);
  left: 10px;
}

.pdf_btn a:hover {
  background: #e2e2e2;
}

@media print, screen and (max-width: 960px) {
  .ctr{width:100%; flex-direction: column; gap:0;}
  .pdf_btn {
    display: block;
    margin: 10px 0;
    width:100%;
  }
}

@media print, screen and (max-width: 767.999px) {
  .pdf_btn {
    display: inline-block;
    margin: 10px 0;
  }
  .pdf_btn a {
    font-size: 15px;
    padding: 14px 25px 14px 50px;
  }
  .pdf_btn a:before {
    content: '';
    width: 30px;
    height: 30px;
    background-size: 30px 30px;
    position: absolute;
    top: calc(50% - 16px);
    left: 10px;
  }
  .pdf_btn a:hover {
    background: #e2e2e2;
  }
}

@media screen and (max-width: 480px) {
  .pdf_btn {
    display: inline-block;
    margin: 10px 0;
  }
  .pdf_btn a {
    font-size: 14px;
    padding: 14px 20px 14px 45px;
  }
  .pdf_btn a:before {
    content: '';
    width: 27px;
    height: 27px;
    background-size: 27px 27px;
    position: absolute;
    top: calc(50% - 16px);
    left: 10px;
  }
  .pdf_btn a:hover {
    background: #e2e2e2;
  }
}

/* 2604 */
.corporate_column .towards_txt {
  font-size: 22px;
  margin: 0 0 30px;
  font-weight: 600;
}
@media (max-width: 768px) {
  .corporate_column .towards_txt {
    font-size: 18px;
  }
}