/* common */
.no-drag{
    user-drag: none;
    -webkit-user-drag: none;
    -moz-user-select: none;
}

.section_in{font-feature-settings: "palt";}
.rd_column{margin:0 0 40px 0;}
.rd_column + .rd_column{margin:40px 0;}

.rd_column h2{}
.rd_column p{font-weight:500;}
.rd_column.extra{padding:3.5vw; border:solid 4px #444; border-bottom:solid 4px #444 !important;}

.flex-block{
  display:flex;
  justify-content: space-between;
  gap:30px;
  width:100%;
  margin:45px auto 45px;
}
.flex-block div{width:50%; flex-direction: column;}
.flex-block div p{margin:5px 0 0; padding-top:10px; font-size:0.9em;}


.page_ttl .ttl_inner b{display:inline-block; vertical-align:middle; padding-right:0.5em;}
.page_ttl .ttl_inner b.small{font-size:50%;}

h2{font-feature-settings: "palt";}
.section_in{font-feature-settings: "palt";}

.round_white{background:#fff; border-radius: 20px; padding:10px 30px 20px; box-sizing:border-box; margin:20px 0;}
.orange_border{border:solid 2px #ea5504;}
h3.colored{background:#fdeecc; color:#ea5504; font-weight:700; padding:5px; text-align:center; font-size:18.5px; border-radius:12px; margin:10px 0;}
h3.colored + .caption{font-size:13px; margin:-5px 0 10px;}
h3.colored span{display:inline-block;}

h3.orange{color:#ea5504; font-weight:700;}

@media screen and (max-width: 768px) {
  .round_white{border-radius: 12px; padding:0 20px 20px;}
  .orange_border{border:solid 2px #ea5504;}
  h3.colored{font-size:16px; border-radius:6px; margin-bottom:10px;}

.flex-block{
  display:flex;
  flex-direction: column;
  justify-content: center;
  gap:30px;
  width:100%;
  margin:25px auto 10px;
}
.flex-block div{width:100%; flex-direction: column;}
.flex-block div p{margin:5px 0 0; padding-top:10px;}
}

@media screen and (max-width: 576px) {
  .round_white{border-radius: 12px; padding:0 20px 20px;}
  .orange_border{border:solid 2px #ea5504;}
  h3.colored{font-size:15px; border-radius:6px; margin-bottom:10px;}
  h3.colored br{display:none;}
}

/* message */

.message_main{
  width:100%;
  max-width:1000px;
  display:flex;
  justify-content: center;
  align-items: center;
  background:#fff;
  border-radius:20px;
  overflow:hidden;
  margin:20px auto 50px;
}

.message_main .message_ph{width:50%; border-radius:20px 0 0 20px; overflow:hidden;}
.message_main .message_txt{width:50%; border-radius:0 20px 20px 0; overflow:hidden; padding:30px; box-sizing:border-box;}

.message_main .message_txt {font-size:16px;}
.message_main .message_txt .officer_name{font-size:32px;}


@media screen and (max-width: 960px) {
  .message_main .message_ph{width:50%; border-radius:20px 0 0 20px;}
  .message_main .message_txt{width:50%; border-radius:0 20px 20px 0;padding:30px;}
  .message_main .message_txt {font-size:15px;}
  .message_main .message_txt .officer_name{font-size:32px;}
}

@media screen and (max-width: 768px) {
  .message_main{display:block;}
  .message_main .message_ph{width:100%; border-radius:20px 20px 0 0;}
  .message_main .message_txt{width:100%; border-radius:0 0 20px 20px; padding:20px 25px;}
  .message_main .message_txt {font-size:15px;}
  .message_main .message_txt .officer_name{font-size:28px;}
}

@media screen and (max-width: 576px) {
  .message_main{display:block; border-radius:10px;}
  .message_main .message_ph{width:100%; border-radius:10px 10px 0 0;}
  .message_main .message_txt{width:100%; border-radius:0 0 10px 10px; padding:15px 20px;}
  .message_main .message_txt {font-size:13px; line-height:1.8;}
  .message_main .message_txt .officer_name{font-size:24px;}
}

/* development */

.rd_facility_list{display:flex; justify-content:center; gap:30px; margin:30px auto; width:75%;}
.rd_facility_list div{padding:12px; border:solid 1px #ddd; background:#fff;}
.rd_facility_list div p{display:block; padding:12px 0 10px 0; text-align:center;}

.achievements_block{display:flex; flex-wrap:wrap; gap:40px; align-items:flex-start; margin:40px auto;}
.achievements_block div{width:calc(50% - 20px);}
.achievements_block .achievements_graph{background:#fff; border-radius:20px; padding:30px 45px; box-sizing:border-box;}
.achievements_block .achievements_items .item{display:flex; align-items:center; background:#fff; border-radius:20px; width:100%} 
.achievements_block .achievements_items .item:first-child{margin:0 0 30px 0;}
.achievements_block .achievements_items .item .pic{width:56%; border-radius:20px 0 0 20px; overflow:hidden;}
.achievements_block .achievements_items .item .txt{width:44%; padding:15px; box-sizing:border-box; border-radius:0 20px 20px 0; overflow:hidden;}

@media screen and (max-width: 960px) {
  .achievements_block{margin:30px auto;}
  .achievements_block .achievements_graph{padding:30px;}
  .rd_facility_list{display:flex; justify-content:center; gap:20px; margin:30px auto; width:90%;}
  .rd_facility_list div{padding:10px;}
}

@media screen and (max-width: 768px) {
  .achievements_block{gap:20px;}
  .achievements_block div{width:calc(50% - 10px);}
  .achievements_block .achievements_graph{padding:20px 25px;}
  .achievements_block .achievements_items .item:first-child{margin:0 0 20px 0;}
}

@media screen and (max-width: 640px) {
  .achievements_block{display:block; margin:40px auto;}
  .achievements_block div{width:100%;}
  .achievements_block .achievements_graph{margin-bottom:30px; border-radius:12px;}
  .achievements_block .achievements_items .item{border-radius:12px;} 
  .achievements_block .achievements_items .item .pic{border-radius:12px 0 0 12px;}
  .achievements_block .achievements_items .item .txt{border-radius:0 12px 12px 0;}
  .rd_facility_list{display:flex; justify-content:center; gap:20px; margin:30px auto; width:100%;}
  .rd_facility_list div{padding:8px;}
  .rd_facility_list div p{display:block; padding:12px 0 6px 0; text-align:center;}
}
@media screen and (max-width: 576px) {
  .rd_facility_list{display:flex; flex-wrap:wrap; justify-content:center; gap:20px; margin:30px auto; width:80%;}
  .rd_facility_list div p{font-size:14px;}
}

/*case_studies*/
.case_list{width:100%; display:flex; flex-wrap:wrap; gap:30px; margin:30px 0 30px; border-bottom:dotted 2px #ddd; padding-bottom:30px}
#innovation .case_list{border-bottom:none;}

.case_list .case_items{width:calc(33% - 20px);}
.case_list .case_items .photo{border-radius:20px; overflow:hidden;}
.case_list .case_items .txt_links{display:block; text-align:center; margin:20px 0;}
.case_list .case_items .txt_links a{color:#333; text-decoration: none; position:relative; font-size:16px; line-height:1.2; padding:0 0 0 1.5em;}
.case_list .case_items .txt_links a:before{
  content:""; 
  position:absolute;
  width:1em;
  height:1em;
  background-color:#3caa0a;
  border-radius:1em;
  display:inline-block;
  margin-right:0;
  margin-left:0;
  background-image:url(/assets/images/_resource/pages/company/common/detail_btn_arrow.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size:6px 9px;
  top:0;
  left:0;
}
.case_list .case_items .txt_links span{display:inline-block;}

@media screen and (max-width: 1080px) {
  .case_list{width:100%; display:flex; flex-wrap:wrap; gap:20px; margin:30px 0;}
  .case_list .case_items{width:calc(50% - 10px);}
  .case_list .case_items .photo{border-radius:20px; overflow:hidden;}
  .case_list .case_items .txt_links{display:block; text-align:center; margin:20px 0;}
  .case_list .case_items .txt_links a{color:#333; text-decoration: none; position:relative; font-size:16px; line-height:1.2; padding:0 0 0 1.5em;}
}

@media screen and (max-width: 576px) {
  .case_list{width:100%; display:flex; flex-wrap:wrap; gap:0; margin:20px 0;}
  .case_list .case_items{width:100%;}
  .case_list .case_items .txt_links a{font-size:16px; line-height:1.2; padding:0 0 0 1.5em;}
}



.case_ttl{padding:6px 20px; border-left:solid 10px #3caa0a; font-weight:700;}
.case_ttl .sub_lead{font-size:18px; display:block; line-height:1.6;}
.case_ttl .ttl{font-size:32px; color:#3caa0a; line-height:1.6;}

.case_kv{display:block; width:100%; max-width:1000px; margin:50px auto; border-radius:20px; overflow:hidden;}
.case_kv.small_kv{width:60%;}

.case_detail_block{padding:30px 40px 40px; background:#fff; border-radius:20px; margin:40px 0;}
.case_kv + .case_detail_block{margin-bottom:40px;}

.case_detail_block > .rd_column{margin:40px 0 0; padding-bottom:40px; border-bottom:dotted 2px #ccc;}
.case_detail_block > .rd_column:first-child{margin:0}
.case_detail_block > .rd_column:last-child{padding-bottom:20px; border-bottom:none;}

.case_detail_block > .rd_column h2.border{font-weight:700; padding:0 5px 6px; border-bottom:solid 2px #3caa0a; margin-bottom:20px; box-sizing:border-box; text-indent:0;}
.case_detail_block > .rd_column h2.border:before{display:none;}

.case_detail_block > .rd_column h2.type02{padding:10px 24px; border-bottom:none; background:#3caa0a; border-radius:10px; color:#fff; margin-bottom:20px;}
.case_detail_block > .rd_column h2.type02:before{display:none;}

.case_detail_block.colored{background:#e9f9ef; margin:20px 0; padding:20px 30px;}
.case_detail_block.colored:last-child{margin:20px 0 0;}
.case_detail_block.colored2{background:#fdeecc; margin:20px 0; padding:20px 30px;}
.case_detail_block.border{border:solid 1px #eee; padding:20px 20px;}
.case_detail_block h3.section-ttl:before{display:none;}
.case_detail_block.products_block{background:#fbf7ef;}
.case_detail_block.products_block .products_block_inner{width:100%; display:flex; justify-content:center; align-items:center; gap:30px; margin:20px auto; }
.case_detail_block.products_block .products_block_inner div.bottle{justify-content: center; text-align:center;}
.case_detail_block.products_block .products_block_inner div.bottle img{width:50%; margin:0 auto;}
.case_detail_block.products_block .products_block_inner div dl dt{font-weight:700; margin-bottom:10px; color:#0058a8;}
.case_detail_block.products_block .products_block_inner div dl dd{font-weight:700; color:#333; padding:4px 0 4px 0.5em; text-indent:-0.5em;}

.case_photo_list{display:flex; justify-content:center; gap:30px; margin:20px auto; }
.case_photo_list + .case_photo_list{margin:60px auto 0;}
.case_photo_list.full{width:100%; max-width:1200px;}
.case_photo_list.rectangle{width:80%;}
.case_photo_list.square{width:50%;}

.case_photo_list.full.products_list{justify-content:flex-start;}
.case_photo_list.full.products_list div{width:25%;}
.case_photo_list.full.products_list div p{font-size:15px;}
.case_photo_list.full div .caption{font-size:14px; padding:10px 0; line-height:1.6;}

.case_photo_list .bottle{width:30%; text-align:center;}
.case_photo_list .bottle img{width:80%; margin:20px auto;}
.case_photo_list .bottle_txt strong.decimal{display:block; font-size:18px; font-weight:700; padding:4px 0 4px 1em; text-indent:-1em; position:relative; color:#333; line-height:1.6; margin:6px 0;}
.case_photo_list .bottle_txt strong.decimal:before{content:""; width:0.7em; height:0.7em; background:#ea5504; border-radius:0.4em; margin-right:0.3em;display:inline-block;}
.case_photo_list .bottle_txt ul li{padding:0 0 10px 0;}
.case_photo_list .bottle_txt ul li p{font-size:15px; font-weight:500; line-height:1.8; padding-bottom:10px;}

.case_photo_list .bottle_txt ul li dl.point_dl_list{
  display:flex; width:100%; margin-bottom:20px; gap:4px 10px; flex-wrap:wrap;
}
.case_photo_list .bottle_txt ul li dl.point_dl_list dt{width:10em; font-weight:700; font-size:15px;}
.case_photo_list .bottle_txt ul li dl.point_dl_list dd{width:calc(100% - 10em - 20px); font-weight:500; font-size:15px; }


.oxidized_method_list{display:flex; justify-content:center; gap:30px; margin:20px auto 40px; }
.oxidized_method_list div{width:calc(33% - 20px); display:flex; gap:20px;}
.oxidized_method_list div > div{width:calc(100% - 100px);}
.oxidized_method_list div > div.point{width:80px;}
.oxidized_method_list div > div.point img{width:80px; height:80px;}

.oxidized_method_list div strong{font-size:18px; font-weight:700; display:block; margin-bottom:6px;}
.oxidized_method_list div p{line-height:1.6; font-size:14px;}
.oxidized_method_list div#method01 p strong{color:#1ca2c6;}
.oxidized_method_list div#method02 p strong{color:#15a770;}
.oxidized_method_list div#method03 p strong{color:#2e718d;}



.ctr{text-align:center; padding:20px 0;}
.ctr.side_by{display:flex; justify-content: center; flex-wrap:wrap; gap:20px; row-gap: 10px;}

.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:10px 60px; text-decoration:none; border-radius:30px;}
.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;}



@media screen and (max-width: 1080px) {
  .oxidized_method_list{display:flex; justify-content:space-between; flex-wrap:wrap; gap:30px; margin:20px auto 40px; }
  .oxidized_method_list div{width:calc(50% - 20px); display:flex; gap:20px;}
  .oxidized_method_list div > div{width:calc(100% - 100px);}
  .oxidized_method_list div > div.point{width:80px;}
  .oxidized_method_list div > div.point img{width:80px; height:80px;}
  
  .oxidized_method_list div strong{font-size:18px; font-weight:700; display:block; margin-bottom:6px;}
  .oxidized_method_list div p{line-height:1.6; font-size:14px;}

  .case_photo_list .bottle{width:230px;}
  .case_photo_list .bottle img{width:90%; margin:20px auto;}
  .case_photo_list .bottle_txt {width:calc(100% - 240px);}

}
@media screen and (max-width: 960px) {
  .case_ttl{padding:6px 20px; border-left:solid 10px #3caa0a; font-weight:700;}
  .case_ttl .sub_lead{font-size:16px; display:block; line-height:1.8;}
  .case_ttl .ttl{font-size:28px; color:#3caa0a; line-height:1.4;}
  
  .case_kv{display:block; width:100%; max-width:1000px; margin:40px auto; border-radius:20px; overflow:hidden;}

  .case_detail_block{padding:25px 30px 35px; margin:40px 0;}
  .case_kv + .case_detail_block{margin:0 0 40px;}

  .case_detail_block.colored{background:#e9f9ef; margin:20px 0 0; padding:15px 20px;}

  .case_detail_block > .rd_column{margin:40px 0 0; padding-bottom:40px; border-bottom:dotted 2px #ccc;}
  .case_detail_block > .rd_column:first-child{margin:0}
  .case_detail_block > .rd_column:last-child{padding-bottom:20px; border-bottom:none;}

  .case_detail_block > .rd_column h2.border{margin-bottom:20px;}
  .case_detail_block > .rd_column h2.type02{padding:10px 24px; margin-bottom:20px;}

  .case_photo_list{display:flex; justify-content:center; gap:30px; margin:30px auto; }
  .case_photo_list.rectangle{width:90%;}
  .case_photo_list.square{width:60%;}

  .case_photo_list .bottle{width:200px;}
  .case_photo_list .bottle img{width:90%; margin:20px auto;}
  .case_photo_list .bottle_txt strong.decimal{font-size:16px;}
  .case_photo_list .bottle_txt {width:calc(100% - 210px);}

  .link_btn a{display:inline-block; position:relative;color:#fff; background:#3caa0a; font-size:16px; font-weight:700; padding:10px 60px; text-decoration:none; border-radius:30px;}
  .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;}
  
}

@media screen and (max-width: 768px) {
  .case_ttl{padding:4px 20px; border-left:solid 10px #3caa0a; font-weight:700;}
  .case_ttl .sub_lead{font-size:14px; display:block; line-height:1.8; padding-bottom:4px;}
  .case_ttl .ttl{font-size:24px; color:#3caa0a; line-height:1.4;}

  .case_detail_block{padding:20px 20px 30px; margin:30px 0;}
  .case_kv + .case_detail_block{margin:0 0 30px 0;}
  .case_kv.small_kv{width:70%;}
  .case_detail_block.colored{background:#e9f9ef; margin:20px 0 0; padding:15px 20px;}

  .case_detail_block > .rd_column{margin:30px 0 0; padding-bottom:30px; border-bottom:dotted 2px #ccc;}
  .case_detail_block > .rd_column:first-child{margin:0}
  .case_detail_block > .rd_column:last-child{padding-bottom:10px; border-bottom:none;}

  .link_btn a{font-size:15px;padding:6px 60px; text-decoration:none; border-radius:30px;}
  .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;}

  .case_photo_list.full{width:100%; max-width:1200px; flex-wrap:wrap;}
  .case_photo_list.full.products_list{justify-content:flex-start;}
  .case_photo_list.full.products_list div{width:calc(50% - 20px);}
  .case_photo_list .bottle_txt strong.decimal{font-size:15px;}
  .case_photo_list .bottle_txt ul li{padding:0 0 10px 0;}
  .case_photo_list .bottle_txt ul li p{font-size:14px; padding-bottom:0px;}
  
  .case_photo_list .bottle_txt ul li dl.point_dl_list{
    display:flex; width:100%; margin-bottom:20px; gap:4px 10px; flex-wrap:wrap;
  }
  .case_photo_list .bottle_txt ul li dl.point_dl_list dt{font-size:14px;}
  .case_photo_list .bottle_txt ul li dl.point_dl_list dd{font-size:14px; }
  
  


  .case_detail_block.products_block .products_block_inner{flex-wrap:wrap;}
  .case_detail_block.products_block .products_block_inner div.bottle{width:50%;}
  .case_detail_block.products_block .products_block_inner div{width:100%;}

  .oxidized_method_list{display:flex; justify-content:space-between; flex-wrap:wrap; gap:30px; margin:20px auto 40px; }
  .oxidized_method_list div{width:100%; display:flex; gap:20px;}
  .oxidized_method_list div > div{width:calc(100% - 80px);}
  .oxidized_method_list div > div.point{width:60px;}
  .oxidized_method_list div > div.point img{width:60px; height:60px;}
  
  .oxidized_method_list div strong{font-size:16px; font-weight:700; display:block; margin-bottom:6px;}
  .oxidized_method_list div p{line-height:1.6; font-size:13px;}

  .case_photo_list .bottle{width:210px;}
  .case_photo_list .bottle img{width:90%; margin:20px auto;}
  .case_photo_list .bottle_txt strong.decimal{font-size:16px;}
  .case_photo_list .bottle_txt {width:100%;}
}

@media screen and (max-width: 576px) {
  .case_kv.small_kv{width:80%;}
  .case_ttl{padding:4px 16px; border-left:solid 8px #3caa0a; font-weight:700;}
  .case_ttl .sub_lead{font-size:13px; display:block; line-height:1.8; padding-bottom:4px;}
  .case_ttl .ttl{font-size:21px; color:#3caa0a; line-height:1.4;}
  .case_photo_list.rectangle{width:100%;}
  .case_photo_list.square{width:80%;}

  .case_detail_block{padding:15px 15px 20px; margin:30px 0;border-radius: 10px;}
  .case_detail_block.colored{background:#e9f9ef; margin:20px 0 0; padding:12px 12px; border-radius: 10px;}
}


/* vision */
.vision_anchor{width:100%; display:flex; margin:20px auto 40px; flex-wrap: wrap; gap:30px;}
.vision_anchor div{display:flex; gap:0; background:#fff; width:calc(50% - 15px); border-radius:12px; align-items:center; }
.vision_anchor .item{border:solid 2px;}
.vision_anchor .item a{display:flex; color:#333; text-decoration:none;}
.vision_anchor .item#v01{border-color:#ffce45;}
.vision_anchor .item#v02{border-color:#fe8f8f}
.vision_anchor .item#v03{border-color:#54b435;}
.vision_anchor .item#v04{border-color:#3ab4f2;}

.vision_anchor .item .ph{width:36%; border-radius:10px 0 0 10px; overflow:hidden;}
.vision_anchor .item .txt{display:flex; width:64%; border-radius:0 12px 12px 0; overflow:hidden; padding:15px 30px; box-sizing:border-box; gap:20px;}
.vision_anchor .item .txt .num{width:60px; text-align:left; border-bottom:solid 4px; border-radius:0; padding:15px 0 10px;}
.vision_anchor .item .txt .num img{width:auto; height:40px;}
.vision_anchor .item .txt .num_txt{width:calc(100% - 60px); font-size:16px; line-height:1.4;}
.vision_anchor .item#v01 .txt .num{border-color:#ffce45;}
.vision_anchor .item#v02 .txt .num{border-color:#fe8f8f}
.vision_anchor .item#v03 .txt .num{border-color:#54b435;}
.vision_anchor .item#v04 .txt .num{border-color:#3ab4f2;}


h2.vision_ttl{display:block; padding:10px 30px; color:#333; font-weight:700; border-radius:12px; margin-bottom:20px; text-indent:0;}
h2.vision_ttl:before{display:none;}
#vision01 .vision_ttl{background:#ffce45}
#vision02 .vision_ttl{background:#fe8f8f}
#vision03 .vision_ttl{background:#54b435;}
#vision04 .vision_ttl{background:#3ab4f2;}

#vision01 h2:before{background:#ffce45}
#vision02 h2:before{background:#fe8f8f}
#vision03 h2:before{background:#54b435;}
#vision04 h2:before{background:#3ab4f2;}
#innovation h2:before{background:#999;}


.vision_initiative{display:flex; gap:100px; align-items:flex-start; background:#fff; border-radius:12px; padding:30px 35px;}
.vision_initiative div{width:calc(50% - 50px);}
.vision_initiative div:first-child{position:relative;}
.vision_initiative div:first-child:before{display:none;}
.vision_initiative div:first-child:after{content:""; display:block; position:absolute; top:calc(50% - 45px); right:-80px; width:60px; height:90px; background-size:33px 90px; background-repeat:no-repeat}
#vision01 .vision_initiative div:first-child:before, #vision01 .vision_initiative div:first-child:after{ background-image:url(/assets/images/_resource/pages/company/rd/vision/initiative_arrow01.png)}
#vision02 .vision_initiative div:first-child:before, #vision02 .vision_initiative div:first-child:after{ background-image:url(/assets/images/_resource/pages/company/rd/vision/initiative_arrow02.png)}
#vision03 .vision_initiative div:first-child:before, #vision03 .vision_initiative div:first-child:after{ background-image:url(/assets/images/_resource/pages/company/rd/vision/initiative_arrow03.png)}
#vision04 .vision_initiative div:first-child:before, #vision04 .vision_initiative div:first-child:after{ background-image:url(/assets/images/_resource/pages/company/rd/vision/initiative_arrow04.png)}

.vision_initiative div h3{font-size:24px; font-weight:700;}
.vision_initiative div h3 span{display:inline-block;}
.vision_initiative div span.label{display:inline-block; border-radius:6px; color:#333; padding:2px 12px; margin-bottom:5px;}
#vision01 .vision_initiative div span.label{background:rgba(255,206,69,.5);}
#vision02 .vision_initiative div span.label{background:rgba(254,143,143,.5);}
#vision03 .vision_initiative div span.label{background:rgba(84,180,53,.5);}
#vision04 .vision_initiative div span.label{background:rgba(58,180,242,.5);}

.vision_initiative div ul{margin:8px 0 0;}
.vision_initiative div ul li{display:block; padding:0 0 3px 0.5em; text-indent:-0.5em; font-weight:500; font-size:15px;}

.case_list.vision{border:none; gap:30px; margin:10px 0 30px;}
.case_list.vision .case_items{width:calc(33.3% - 20px); background:#fff; padding:16px; border-radius:16px; box-sizing:border-box; box-shadow: 0px 0px 5.4px 0.6px rgba(0, 0, 0, 0.1);}
.case_list.vision .case_items .photo{border-radius:5px; overflow:hidden; border:solid 1px #eee; box-sizing:border-box;}
.case_list.vision .case_items .txt_links{text-align:center; margin:20px 0 10px; padding:0 1.6em; box-sizing:border-box;}
.case_list.vision .case_items .txt_links a{display:block; color:#333; text-decoration: none; position:relative; font-size:16px; line-height:1.2; padding:0;}
.case_list.vision .case_items .txt_links a:before{
  content:""; 
  position:absolute;
  width:1.6em;
  height:1.6em;
  border-radius:1em;
  display:inline-block;
  margin-right:0;
  margin-left:0;
  background-image:url(/assets/images/_resource/pages/company/common/detail_btn_arrow.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size:8px 12px;
  top:calc(50% - 0.8em);
  left:-1.6em;
}
#vision01 .case_list.vision .case_items .txt_links a:before{background-color:#ffce45;}
#vision02 .case_list.vision .case_items .txt_links a:before{background-color:#fe8f8f}
#vision03 .case_list.vision .case_items .txt_links a:before{background-color:#54b435;}
#vision04 .case_list.vision .case_items .txt_links a:before{background-color:#3ab4f2;}
#innovation .case_list.vision .case_items .txt_links a:before{background-color:#999;}

.case_list.vision .case_items .txt_links .s_txt{font-size:13px; font-weight:500; }
.case_list.vision .case_items .txt_links .s_txt.b{font-size:16px; font-weight:700; padding:2px 0 0;}
.case_list.vision .case_items .txt_links .m_txt{font-size:18.5px; font-weight:700; display:block; padding-top:5px;}

.case_list.vision .case_items .txt_links .m_txt{font-size:18.5px; font-weight:700; display:block; padding-top:5px;}
.case_list.vision .case_items .txt_links .m_txt br.pc-views{display:inline;}
@media screen and (max-width: 1280px) {
  .case_list.vision .case_items .txt_links .m_txt br.pc-views{display:none;}
}

@media screen and (max-width: 1080px) {
/*anchor*/
.vision_anchor{width:100%; display:flex; margin:20px auto 40px; flex-wrap: wrap; gap:30px;}
.vision_anchor div{display:flex; gap:0; width:calc(50% - 15px); border-radius:12px; }

.vision_anchor .item .ph{width:36%;}
.vision_anchor .item .txt{display:flex; width:64%;padding:15px 30px; box-sizing:border-box; gap:20px;}
.vision_anchor .item .txt .num{width:50px; padding:12px 0 7px;}
.vision_anchor .item .txt .num img{width:auto; height:32px;}
.vision_anchor .item .txt .num_txt{width:calc(100% - 50px); font-size:16px; line-height:1.4;}

/* initiative */
.vision_initiative{display:flex; gap:100px; align-items:flex-start; padding:25px;}
.vision_initiative div:first-child:after{content:""; display:block; position:absolute; top:calc(50% - 45px); right:-100px; width:60px; height:90px; background-size:33px 90px;}
.vision_initiative div h3{font-size:21px; font-weight:700;}
.vision_initiative div span.label{padding:2px 12px; font-size:15px;}
.vision_initiative div ul{margin:8px 0 0;}
.vision_initiative div ul li{font-size:15px;}

/*case_list*/
.case_list.vision{border:none; gap:30px; margin:10px 0 30px;}
.case_list.vision .case_items{width:calc(33.3% - 20px);}
.case_list.vision .case_items .txt_links{margin:20px 0 10px;}
.case_list.vision .case_items .txt_links a{font-size:16px; line-height:1.2; padding:0;}

.case_list.vision .case_items .txt_links .s_txt{font-size:13px;}
.case_list.vision .case_items .txt_links .s_txt.b{font-size:16px;}
.case_list.vision .case_items .txt_links .m_txt{font-size:18px;}

}



@media screen and (max-width: 960px) {
/*anchor*/
.vision_anchor{width:100%; display:flex; margin:20px auto 40px; flex-wrap: wrap; gap:20px;}
.vision_anchor div{display:flex; gap:0; width:calc(50% - 10px); border-radius:12px; }
.vision_anchor .item .ph{width:40%;}
.vision_anchor .item .txt{display:flex; width:60% ;padding:10px 20px; box-sizing:border-box; gap:20px;}
.vision_anchor .item .txt .num{width:42px; padding:7px 0 7px;}
.vision_anchor .item .txt .num img{width:auto; height:28px;}
.vision_anchor .item .txt .num_txt{width:calc(100% - 42px); font-size:14px; line-height:1.4;}


/* initiative */
.vision_initiative{display:flex; flex-wrap:wrap; gap:60px; align-items:flex-start; padding:25px;}
.vision_initiative div{width:100%;}
.vision_initiative div:first-child:after{content:""; display:block; transform: rotate(90deg); position:absolute; top:100%; right:calc(50% - 30px); width:60px; height:90px; background-size:33px 90px; background-repeat:no-repeat;}
.vision_initiative div span.label{padding:2px 12px; font-size:14px;}
.vision_initiative div ul{margin:8px 0 0;}
.vision_initiative div ul li{font-size:14px;}

/*case_list*/
.case_list.vision{border:none; gap:20px; margin:10px 0 30px;}
.case_list.vision .case_items{width:calc(50% - 10px); padding:12px; border-radius:12px;}
.case_list.vision .case_items .txt_links{margin:15px 0 5px;}
.case_list.vision .case_items .txt_links a{font-size:16px; line-height:1.2; padding:0;}
}

@media screen and (max-width: 768px) {
/*anchor*/
.vision_anchor{width:100%; display:flex; margin:10px auto 20px; flex-wrap: wrap; gap:10px;}
.vision_anchor div{display:flex; gap:0; width:100%; border-radius:12px; }
.vision_anchor .item .ph{width:26%;}
.vision_anchor .item .txt{display:flex; width:74% ;padding:10px 20px; box-sizing:border-box; gap:20px; font-weight:700;}
.vision_anchor .item .txt .num{width:42px; padding:7px 0 7px;}
.vision_anchor .item .txt .num img{width:auto; height:28px;}
.vision_anchor .item .txt .num_txt{width:calc(100% - 42px); font-size:14px; line-height:1.4;}

}


@media screen and (max-width: 576px) {
    /*anchor*/
    .vision_anchor{width:100%; display:flex; margin:10px auto 20px; flex-wrap: wrap; gap:10px;}
    .vision_anchor div{display:flex; gap:0; width:100%; border-radius:12px; }
    .vision_anchor .item .ph{width:35%;}
    .vision_anchor .item .txt{display:flex; width:65% ;padding:5px 20px; box-sizing:border-box; gap:20px; font-weight:700;}
    .vision_anchor .item .txt .num{width:36px; padding:7px 0 7px;}
    .vision_anchor .item .txt .num img{width:auto; height:24px;}
    .vision_anchor .item .txt .num_txt{width:calc(100% - 36px); font-size:13px; line-height:1.4;}
    
    /* initiative */
    .vision_initiative{display:flex; gap:60px; align-items:flex-start; padding:25px 20px;}
    .vision_initiative div:first-child:after{content:""; display:block; transform: rotate(90deg); position:absolute; top:100%; right:calc(50% - 10px); width:22px; height:60px; background-size:22px 60px; background-repeat:no-repeat;}
    .vision_initiative div h3{font-size:18px; font-weight:700;}
    .vision_initiative div span.label{padding:2px 12px; font-size:13px; font-weight:700;}
    .vision_initiative div ul{margin:8px 0 0;}
    .vision_initiative div ul li{font-size:14px;}

    /*case_list*/
    .case_list.vision{border:none; gap:20px; margin:10px 0 30px;}
    .case_list.vision .case_items{width:100%; padding:12px; border-radius:12px;}
    .case_list.vision .case_items .txt_links{margin:15px 0 5px;}
    .case_list.vision .case_items .txt_links a{font-size:16px; line-height:1.2; padding:0;}
    .case_list.vision .case_items .txt_links a:before{
      content:""; 
      position:absolute;
      width:1.2em;
      height:1.2em;
      background-size:6px 9px;
      top:calc(50% - 0.6em);
      left:-1.2em;
    }
  }

  
  .ip_ttl{padding:6px 20px; border-left:solid 10px #3caa0a; font-weight:700;}
  .ip_ttl .ttl{font-size:32px; color:#333; line-height:1.6;}

  .ip_ttl + .rd_column{margin:40px 0 60px;}

  .ip_basic_column{padding:20px 30px; box-sizing:border-box; background:#fff; border-radius:20px; margin:40px 0 20px;}
  .ip_basic_column h3{font-weight:700; font-size:24px; padding:0 5px 6px; border-bottom:solid 2px #3caa0a; margin-bottom:15px; box-sizing:border-box;}

  .ip_basic_column ol{margin:20px 0;}
  .ip_basic_column ol li{display:flex; align-items:center; gap:20px; margin:15px 0; padding:5px 0;}
  .ip_basic_column ol li span.num{align-items:center; background:#3caa0a; border-radius:6px; width:54px; height:54px; line-height:54px; text-align:center; font-size:21px; font-weight:700; color:#fff;}
  .ip_basic_column ol li span.txt{width:calc(100% - 74px); line-height:1.8; font-weight:500; font-size:16px;}

  .ip_achievement_list{display:flex; flex-wrap:wrap; gap:20px; margin:20px 0;}

  .ip_achievement_list div{width:calc(50% - 10px); background:#fff; border-radius:20px; padding:25px;}
  .ip_achievement_list div h3{position:relative; padding:0 0 0 1.2em; text-indent:-1.2em; line-height:1.6; font-size:18px; font-weight:600; margin-bottom:10px;}
  .ip_achievement_list div h3:before{content:""; background:#3caa0a; width:0.8em; height:0.8em; border-radius:1em; display:inline-block; vertical-align:middle; margin-right:0.4em; position:relative; top:-0.1em;}
  .ip_achievement_list div p{font-size:15px; line-height:1.6;}
  .ip_achievement_list div .patent_txt{width:100%; border:solid 1px #ddd; border-radius:20px; padding:0; text-align:center;}
  .ip_achievement_list div .patent_txt img{height:150px;}

  .ip_ex001{}
  .ip_ex001 h2{background:#3caa0a; font-size:24px; font-weight:700; padding:12px 24px; border-radius:10px; margin:30px 0 15px !important; color:#fff; text-indent:0 !important;}
  .ip_ex002 h2 span{width:100px; display:inline-block; position:relative; top:-20px; margin:0 10px -25px 0 ;}
  .ip_ex001 h3{font-size:18.5px; font-weight:700; color:#3caa0a; margin-top:10px;}
  .ip_ex002 h2{background:#3caa0a; font-size:24px; font-weight:700; padding:8px 24px; border-radius:10px; margin:20px 0 !important; color:#fff; text-indent:0 !important;}
  
  .ip_ex002 h2.mct_ttl{padding:12px 24px 12px 140px; text-indent:-120px; margin-top:50px !important;}
  .ip_ex002 h2.mct_ttl span{position:absolute; left:20px;}
  .ip_ex002 h2.oil_ttl{padding:12px 24px 12px 12px; text-indent:0; position:relative;}
  .ip_ex002 h2.oil_ttl:before{content:""; width:27px; height:48px; position:relative; display:inline-block; top:calc(50% - 24px); left:10px; background-image:url(/assets/images/_resource/pages/company/rd/ip/icon02.png); background-repeat:no-repeat; background-position:center; background-size:27px 48px; margin-right:24px;}

  .ip_ex002 h3{font-size:18.5px; font-weight:700; color:#3caa0a; margin-top:10px;}
  .ip_ex001 h2:before,.ip_ex002 h2:before{display:none;}

  .ip_ex001 p,.ip_ex002 p{font-size:16px; padding:0 0 10px;}

  .ip_spec{display:flex; width:100%; margin:20px 0 40px;}
  .ip_ex001 .ip_spec div{width:25%; display:flex; flex-wrap:wrap; align-items:flex-start; background:#fff; border-right:solid 1px #fbf7ef;}
  .ip_ex002 .ip_spec div{width:50%; display:flex; flex-wrap:wrap; align-items:flex-start; background:#fff; border-right:solid 1px #fbf7ef;}
 
  .ip_spec div:last-child{border:none;}
  .ip_ex001 .ip_spec div span.label{color:#333; background:#f7c39d; padding:6px 10px; text-align:center; font-size:16px; width:100%; font-weight:700;}
  .ip_ex002 .ip_spec div span.label{color:#333; background:#badf9c; padding:6px 10px; text-align:center; font-size:16px; width:100%; font-weight:700;}
  .ip_spec div p{padding:20px; box-sizing:border-box; width:100%; text-align:center; font-size:16px;}
  .ip_spec div p span{display:block; font-size:14px;}

  .case_block{background:#fff; border:solid 1px #ddd; border-radius:12px; padding:10px 20px 20px;}
  .case_block h3{color:#fff; padding:7px 20px 7px 28px; border-radius:0 10px 10px 0; display:inline-block; margin-left:-30px; position:relative; font-size:21px;}
  .case_block h3:before{content:""; display:block; position:absolute; left:0; bottom:-10px; width:10px; height:10px; background:#333; clip-path: polygon(100% 0, 0 0, 100% 100%);}

  .ip_ex001 .case_block h3{background:#dd5410}
  .ip_ex002 .case_block h3{background:#3caa0a}

  .case_block .products{display:flex; align-items:center; gap:40px; margin:20px auto; width:90%;}
  .case_block .products .ph{width:340px;}
  .case_block .products .txt{width:calc(100% - 360px);}

  .case_block .products .txt h4{font-size:32px; font-weight:700; margin-bottom:5px;}
  .case_block .products .txt dl{display:flex; flex-wrap:wrap; width:100%; margin:0 0 20px;}
  .case_block .products .txt dl dt{width:100%; padding:5px 0 0; position:relative; font-size:20px; font-weight:700;}
  .case_block .products .txt dl dt:before{content:""; display:inline-block; vertical-align:middle; width:0.8em; height:0.8em; border-radius:1em; margin-right:0.4em;}
  .ip_ex001 .case_block .products .txt dl dt{color:#dd5410;}
  .ip_ex002 .case_block .products .txt dl dt{color:#3caa0a;}
  .ip_ex001 .case_block .products .txt dl dt:before{background:#dd5410;}
  .ip_ex002 .case_block .products .txt dl dt:before{background:#3caa0a;}

  .case_block .products .txt dl dd{padding:2px 0; margin-bottom:6px; font-size:18px; font-weight:500;}
  .case_block .products .txt dl dd.patent{width:12em;}
  .case_block .products .txt dl dd.name{width:calc(100% - 14em);}
  .case_block p{font-size:16px;}
  .case_block p a{color:#3caa0a; text-decoration:underline;}
  .case_block p a:hover{text-decoration:none;}
  
  @media screen and (max-width: 1080px) {
    .ip_ttl{padding:6px 20px;}
    .ip_ttl .ttl{font-size:28px;}

    .ip_basic_column{padding:16px 25px; margin:30px 0 20px;}
    .ip_basic_column h3{font-size:21px; padding:0 5px 6px; margin-bottom:12px;}
    .ip_basic_column p{font-size:15px;}
    .ip_basic_column ol{margin:20px 0;}
    .ip_basic_column ol li{display:flex; align-items:flex-start; gap:20px; margin:15px 0; padding:5px 0;}
    .ip_basic_column ol li span.num{align-items:flex-start; border-radius:6px; width:48px; height:48px; line-height:48px; font-size:21px;}
    .ip_basic_column ol li span.txt{width:calc(100% - 68px); line-height:1.8; font-size:15px;}
  

    .ip_ex001{}
    .ip_ex001 h2{font-size:21px; padding:6px 20px; margin:30px 0 15px !important;}
    .ip_ex001 h2 span{width:90px; top:-20px; margin:0 10px -25px 0 ;}
    .ip_ex001 h3{font-size:18px;}
    .ip_ex002 h2{font-size:21px; padding:6px 20px; border-radius:10px; margin:20px 0 !important;}
    .ip_ex002 h3{font-size:18px;}
  
    /*case*/
    .case_block{padding:10px 20px 20px;}
    .case_block h3{padding:7px 20px 7px 28px; margin-left:-30px; font-size:21px;}
  
    .case_block .products{display:flex; align-items:center; gap:30px; margin:20px auto; width:100%;}
    .case_block .products .ph{width:300px;}
    .case_block .products .txt{width:calc(100% - 320px);}
  
    .case_block .products .txt h4{font-size:28px; margin-bottom:5px;}
    .case_block .products .txt dl{width:100%; margin:0 0 20px;}
    .case_block .products .txt dl dt{font-size:18px;}
    .case_block .products .txt dl dt:before{content:""; display:inline-block; vertical-align:middle; width:0.8em; height:0.8em; border-radius:1em; margin-right:0.4em;}

    .case_block .products .txt dl dd{padding:2px 0; margin-bottom:6px; font-size:16px;}
    .case_block .products .txt dl dd.patent{width:12em;}
    .case_block .products .txt dl dd.name{width:calc(100% - 14em);}
    .case_block p{font-size:15px;}
  
  }

  @media screen and (max-width: 960px) {

    .ip_ex001 p,.ip_ex002 p{font-size:15px; padding:0 0 10px;}
  
    .ip_spec{display:flex; width:100%; margin:20px 0 40px;}
    .ip_ex001 .ip_spec div{width:25%; display:flex; flex-wrap:wrap; align-items:flex-start;}
    .ip_ex002 .ip_spec div{width:50%; display:flex; flex-wrap:wrap; align-items:flex-start;}
   
    .ip_ex001 .ip_spec div span.label{padding:6px 10px; text-align:center; font-size:15px; width:100%;}
    .ip_ex002 .ip_spec div span.label{padding:6px 10px; text-align:center; font-size:15px; width:100%;}
    .ip_spec div p{padding:20px; box-sizing:border-box; width:100%; text-align:center; font-size:16px;}
    .ip_spec div p span{display:block; font-size:14px;}

    /*case*/
    .case_block{padding:10px 20px 20px;}
    .case_block h3{padding:7px 20px 7px 28px; margin-left:-30px; font-size:18px;}
  
    .case_block .products{display:flex; align-items:flex-start; gap:30px; margin:20px auto; width:100%;}
    .case_block .products .ph{width:270px;}
    .case_block .products .txt{width:calc(100% - 290px);}
  
    .case_block .products .txt h4{font-size:27px; margin-bottom:5px;}
    .case_block .products .txt dl{width:100%; margin:0 0 20px;}
    .case_block .products .txt dl dt{font-size:18px;}
    .case_block .products .txt dl dt:before{content:""; display:inline-block; vertical-align:middle; width:0.8em; height:0.8em; border-radius:1em; margin-right:0.4em;}

    .case_block .products .txt dl dd{padding:2px 0; margin-bottom:6px; font-size:15px;}
    .case_block .products .txt dl dd.patent{width:10em;}
    .case_block .products .txt dl dd.name{width:calc(100% - 12em);}
    .case_block p{font-size:14px;}
  
  }

  @media screen and (max-width: 768px) {
    .ip_ttl{padding:6px 20px;}
    .ip_ttl .ttl{font-size:24px;}

    .ip_basic_column{padding:16px 25px; margin:30px 0 20px;}
    .ip_basic_column h3{font-size:18px; padding:0 5px 6px; margin-bottom:12px;}
    .ip_basic_column p{font-size:15px;}
    .ip_basic_column ol{margin:20px 0;}
    .ip_basic_column ol li{display:flex; align-items:flex-start; gap:20px; margin:15px 0; padding:5px 0;}
    .ip_basic_column ol li span.num{align-items:flex-start; border-radius:6px; width:40px; height:40px; line-height:40px; font-size:18px;}
    .ip_basic_column ol li span.txt{width:calc(100% - 48px); line-height:1.8; font-size:15px;}
  
    .ip_achievement_list{display:flex; flex-wrap:wrap; gap:20px; margin:20px 0;}

    .ip_achievement_list div{width:100%; border-radius:20px; padding:20px;}
    .ip_achievement_list div h3{position:relative; padding:0 0 0 1.2em; text-indent:-1.2em; line-height:1.6; font-size:16px;}
    .ip_achievement_list div p{font-size:14px; line-height:1.6;}
    .ip_achievement_list div .patent_txt{width:100%; border:solid 1px #ddd; border-radius:20px; padding:0; text-align:center;}
    .ip_achievement_list div .patent_txt img{height:120px;}
  

    .ip_ex001{}
    .ip_ex001 h2{font-size:18px; padding:6px 20px; margin:30px 0 15px !important;}
    .ip_ex002 h2 span{width:80px; top:-15px; margin:0 10px -15px 0 ;}
    .ip_ex001 h3{font-size:16px;}
    .ip_ex002 h2{font-size:18px; padding:6px 20px; border-radius:10px; margin:20px 0 !important;}
    .ip_ex002 h3{font-size:16px;}


    .ip_ex002 h2.mct_ttl{padding:12px 24px 12px 120px; text-indent:-100px; margin-top:50px !important;}
    .ip_ex002 h2.mct_ttl span{position:absolute; left:20px;}
    .ip_ex002 h2.oil_ttl{padding:12px 24px 12px 12px; text-indent:0; position:relative;}
    .ip_ex002 h2.oil_ttl:before{content:""; width:20px; height:36px; position:relative; display:inline-block; top:calc(50% - 18px); left:10px; background-size:20px 36px; margin-right:18px;}
  


    .ip_ex001 p,.ip_ex002 p{font-size:15px; padding:0 0 10px;}  
    .ip_spec{display:flex; flex-wrap:wrap; width:100%; margin:20px 0 40px;}
    .ip_ex001 .ip_spec div{width:50%; display:flex; flex-wrap:wrap; align-items:flex-start;}
    .ip_ex002 .ip_spec div{width:50%; display:flex; flex-wrap:wrap; align-items:flex-start;}
   
    .ip_ex001 .ip_spec div span.label{padding:6px 10px; text-align:center; font-size:13px; width:100%;}
    .ip_ex002 .ip_spec div span.label{padding:6px 10px; text-align:center; font-size:13px; width:100%;}
    .ip_spec div p{padding:20px; box-sizing:border-box; width:100%; text-align:center; font-size:14px;}
    .ip_spec div p span{display:block; font-size:13px;}


    /*case*/
    .case_block{padding:10px 20px 20px;}
    .case_block h3{padding:7px 20px 7px 28px; margin-left:-30px; font-size:18px;}
  
    .case_block .products{display:flex; flex-wrap:wrap; justify-content:center; align-items:flex-start; gap:30px; margin:20px auto; width:100%;}
    .case_block .products .ph{width:50%;}
    .case_block .products .txt{width:100%;}
  
    .case_block .products .txt h4{font-size:24px; margin-bottom:5px;}
    .case_block .products .txt dl{width:100%; margin:0 0 20px;}
    .case_block .products .txt dl dt{font-size:18px;}
    .case_block .products .txt dl dt:before{content:""; display:inline-block; vertical-align:middle; width:0.8em; height:0.8em; border-radius:1em; margin-right:0.4em;}

    .case_block .products .txt dl dd{padding:2px 0; margin-bottom:6px; font-size:15px;}
    .case_block .products .txt dl dd.patent{width:10em;}
    .case_block .products .txt dl dd.name{width:calc(100% - 12em);}
    .case_block p{font-size:15px;}
  
  }

  @media screen and (max-width: 576px) {
    .ip_ttl{padding:6px 20px;}
    .ip_ttl .ttl{font-size:21px;}

    .ip_ex001 p,.ip_ex002 p{font-size:14px; padding:0 0 10px;}
  
    .ip_spec{display:flex; flex-wrap:wrap; width:100%; margin:20px 0 40px;}
    .ip_ex001 .ip_spec div{width:50%; display:flex; flex-wrap:wrap; align-items:flex-start;}
    .ip_ex002 .ip_spec div{width:50%; display:flex; flex-wrap:wrap; align-items:flex-start;}
   
    .ip_ex001 .ip_spec div span.label{padding:6px 10px; text-align:center; font-size:14px; width:100%;}
    .ip_ex002 .ip_spec div span.label{padding:6px 10px; text-align:center; font-size:14px; width:100%;}
    .ip_spec div p{padding:12px; box-sizing:border-box; width:100%; text-align:center; font-size:15px;}
    .ip_spec div p span{display:block; font-size:13px;}

    .ip_ex002 h2 span{width:80px; top:calc(50% - 30px); margin:0 10px -15px 0 ;}
    .ip_ex002 h2.oil_ttl{padding:12px 24px 12px 50px; text-indent:0; position:relative;}
    .ip_ex002 h2.oil_ttl:before{content:""; width:20px; height:36px; position:absolute; display:inline-block; top:calc(50% - 15px); left:20px; background-size:20px 36px; margin-right:18px;}
  
    /*case*/
    .case_block{padding:10px 20px 20px;}
    .case_block h3{padding:7px 20px 7px 28px; margin-left:-30px; font-size:18px;}
  
    .case_block .products{display:flex; flex-wrap:wrap; justify-content:center; align-items:flex-start; gap:30px; margin:20px auto; width:100%;}
    .case_block .products .ph{width:50%;}
    .case_block .products .txt{width:100%;}
  
    .case_block .products .txt h4{font-size:21px; margin-bottom:5px;}
    .case_block .products .txt dl{width:100%; margin:0 0 20px;}
    .case_block .products .txt dl dt{font-size:16px;}
    .case_block .products .txt dl dt:before{content:""; display:inline-block; vertical-align:middle; width:0.8em; height:0.8em; border-radius:1em; margin-right:0.4em;}

    .case_block .products .txt dl dd{padding:2px 0; margin-bottom:6px; font-size:14px;}
    .case_block .products .txt dl dd.patent{width:10em;}
    .case_block .products .txt dl dd.name{width:calc(100% - 12em);}
    .case_block p{font-size:13px;}
  }
  @media screen and (max-width: 480px) {

}

  /*sakumi*/
  .original_detail_column{margin:20px 0;}
section.original_detail .section_in .original_detail_column .quantify_block02 {
  border-radius: 12px;
  width: 100%;
  background: url(/assets/images/company/rd/original/quantify/quantify_bg.jpg) center no-repeat;
  background-size: 100%;
  padding: 20px 35px;
  box-sizing: border-box;
  letter-spacing: -0.4em;
  overflow: none;
}

section.original_detail .section_in .original_detail_column .quantify_block02 .item01 {
  display: inline-block;
  vertical-align: middle;
  width: 82%;
}

section.original_detail .section_in .original_detail_column .quantify_block02 .item01 .sound_column {
  width: 70%;
  padding: 10px 0;
  text-align: center;
  margin: 0 auto;
}

section.original_detail .section_in .original_detail_column .quantify_block02 .item01 .sound_column .item001 {
  width: 50%;
  display: inline-block;
  vertical-align: top;
  letter-spacing: 0;
  padding: 0 10px;
  box-sizing: border-box;
}

section.original_detail .section_in .original_detail_column .quantify_block02 .item01 .sound_column .item001:hover {
  cursor: pointer;
}

section.original_detail .section_in .original_detail_column .quantify_block02 .item02 {
  display: inline-block;
  vertical-align: middle;
  letter-spacing: 0;
  width: 18%;
}


.rd_text_pic{
  display: flex;
  width: 100%;
  justify-content: space-between;
}
.rd_text_pic .rd_text{
  width: 65%;
}
.rd_text_pic .rd_img{
 width: 42%; 
}
.rd_text_pic.sakumi_sensor .rd_text{
  width: calc(100% - 300px);
}
.rd_text_pic.sakumi_sensor .rd_img{
  width: 278px;
}
@media print, screen and (max-width: 767px) {
  section.original_detail .section_in .original_detail_column .quantify_block02 {
    padding: 15px 25px;
  }
  section.original_detail .section_in .original_detail_column .quantify_block02 .item01 .sound_column {
    width: 80%;
  }
  section.original_detail .section_in .original_detail_column .quantify_block02 .item01 .sound_column .item001 {
    width: 50%;
  }
  section.original_detail .section_in .original_detail_column .quantify_block02 .item02 {
    width: 15%;
  }

  .rd_text_pic{
   display: block;
  }
  .rd_text_pic .rd_text{
    width: 100%;
    margin-bottom: 25px
  }
  .rd_text_pic .rd_img{
   width: 100%; 
   text-align: center;
  }
  .rd_text_pic.sakumi_sensor .rd_text{
    width: 100%;
    margin-bottom: 10px;
  }
  .rd_text_pic.sakumi_sensor .rd_img{
    width: 100%;
  }
}

@media print, screen and (max-width: 640px) {
  section.original_detail .section_in .original_detail_column .quantify_block02 {
    padding: 12px 12px;
  }
  section.original_detail .section_in .original_detail_column .quantify_block02 .item01 {
    width: 82%;
  }
  section.original_detail .section_in .original_detail_column .quantify_block02 .item01 .sound_column {
    width: 80%;
    text-align: center;
  }
  section.original_detail .section_in .original_detail_column .quantify_block02 .item01 .sound_column .item001 {
    width: 50%;
    padding: 0 5px;
  }
  section.original_detail .section_in .original_detail_column .quantify_block02 .item02 {
    width: 18%;
  }
}

.detail_btn_wrap{display:flex; gap:20px; margin:20px 0 0;}
.detail_btn{
  display: block;
  letter-spacing: normal;
  margin-bottom: 10px;
}
.detail_btn a{
  display: inline-block;
  line-height: 1.3;
  padding: 12px 20px 12px;
  border: 1px solid #c9c9c9;
  background-color: #fff;
  border-radius: 40px;
  color: #333;
  text-decoration: none;
  transition: opacity 0.3s ease-in-out;
  font-size:14px;
  font-weight:700;
}
.detail_btn a:before{
  content: '';
  background-image: url(/assets/images/_resource/pages/company/common/btn_arrow.png);
  background-color:#ea5504;
  width: 1em;
  height: 1em;
  display: inline-block;
  margin-right: 10px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  vertical-align: text-top;
  border-radius:1em;
  background-size:5px 8px;
}

@media print, screen and (max-width: 768px) {
  .detail_btn_wrap{display:flex; gap:20px; margin:20px 0 0;}
  .detail_btn a{display:block;}
}

@media screen and (max-width: 576px) {
  .detail_btn_wrap{display:flex; flex-wrap:wrap; gap:0; margin:20px 0 0;}
  .detail_btn{margin-bottom:10px;}
  .detail_btn a{display:block;}
}

/* 2604 */
a.outer-link{position: relative;}
a.outer-link:after{content:""; display:inline-block; width:11px; height:11px; background-image: url(/english/sustainability/common/images/outer-link.png); background-size:11px 11px; margin: 0 3px 0 3px;}

.achievements_graph h3 {
  position: relative;
  padding: 0 0 0 1.2em;
  text-indent: -1.2em;
  line-height: 1.6;
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 10px;
}
.achievements_graph h3:before {
  content: "";
  background: #3caa0a;
  width: 0.8em;
  height: 0.8em;
  border-radius: 1em;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.4em;
  position: relative;
  top: -0.1em;
}