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

/*----- ▼▼左コンテンツ▼▼ -----*/

#main #side_left{
	width: 240px;
	text-align: left;
	margin-right: 20px;
    float: left;
}

#main #side_navi{
	float: left;
	width: 240px;
	text-align: left;
}

/* 製品＆サービス */

#main #side_navi ul{
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
}

#main #side_navi li{
	list-style-type: none;
	float: left;
	width: 240px;
	height: 34px;
	margin: 0px 0px 6px 0px;
}

/*----- ▼infoコンテンツ▼ -----*/

#info{
	width: 240px;
	margin-top: 20px;
	float: left;
}

/*----- SNSバナー -----*/

#sns {
	width: 240px;
	height: 70px;
	text-align: center;
	margin-top: 20px;
	float: left;
}

#sns #sns_y {
	width: 60px;
	height: 70px;
	float: left;
}

#sns #sns_y a:hover img {
    opacity: 0.6;
	transition: 0.3s ease-in-out;
}

#sns #sns_t {
	width: 60px;
	height: 70px;
	float: left;
}

#sns #sns_t a:hover img {
    opacity: 0.6;
	transition: 0.3s ease-in-out;
}

#sns #sns_i {
	width: 60px;
	height: 70px;
	float: left;
}

#sns #sns_i a:hover img {
    opacity: 0.6;
	transition: 0.3s ease-in-out;
}

#sns #sns_f {
	width: 60px;
	height: 70px;
	float: left;
}

#sns #sns_f a:hover img {
    opacity: 0.6;
	transition: 0.3s ease-in-out;
}

/*----- 展示会バナー -----*/

#biopharma_expo_2020 {
	width: 240px;
	height: 100px;
	text-align: center;
	background-color: #4e2581;
	margin-bottom: 10px;
	float: left;
}

#biopharma_expo_2020 a:hover img {
    filter: brightness(130%);
	transition: 0.3s ease-in-out;
}

/*----- カタログ 枠-----*/

#catalog_pc {
	width: 223px;
	padding: 10px 0px 10px 15px;
	border: 1px solid #ddd;
	margin-bottom: 15px;
	float: left;
}

#catalog {
	width: 223px;
	padding: 10px 0px 10px 15px;
	border: 1px solid #ddd;
	margin-bottom: 15px;
	float: left;
}

#catalog_contents {
	width: 235px;
	padding-left: 10px;
	float: left;
}

/*----- カタログ 内容-----*/

#catalog_pc .catalog_ask {
	width: 210px;
	font-size: 90%;
	font-weight: bold;
	text-align: center;
	float: left;
}

#catalog .catalog_ask {
	width: 210px;
	font-size: 90%;
	font-weight: bold;
	text-align: center;
	float: left;
}

#catalog_pc .catalog_pdf {
	width: 210px;
	font-size: 80%;
	font-weight: nomal;
	text-align: center;
	border-top: solid 1px #94000b;
	padding-top: 5px;
	float: left;
}

#catalog .catalog_pdf {
	width: 210px;
	font-size: 80%;
	font-weight: nomal;
	text-align: center;
	border-top: solid 1px #94000b;
	padding-top: 5px;
	float: left;
}

#catalog_pc:hover {
	border-color: #002887;
	transition: 0.3s ease-in-out;
}

#catalog:hover {
	border-color: #002887;
	transition: 0.3s ease-in-out;
}

#catalog_pc .catalog_ask a{
	color: #333333;
}

#catalog .catalog_ask a{
	color: #333333;
}

#catalog_pc .catalog_img {
	width: 210px;
	padding-top: 5px;
	float: left;
}

#catalog .catalog_img {
	width: 210px;
	padding-top: 5px;
	float: left;
}

#catalog_pc a:hover img {
    filter: brightness(85%);
	transition: 0.3s ease-in-out;
}

#catalog a:hover img {
    filter: brightness(85%);
    transition: 0.3s ease-in-out;
}

/*----- 問合せ 電話/FAX -----*/

#ask_tel {
	width: 240px;
	margin-bottom: 10px;
	float: left;
}

/*----- 問合せ フォーム -----*/

#ask_foam {
	width: 240px;
	margin-bottom: 10px;
	float: left;
}

/*----- 問合せ メール -----*/

#ask_mail {
	width: 240px;
	margin-bottom: 15px;
	float: left;
}

/*----- イプロス特設サイト -----*/

#ipros {
	width: 240px;
	margin-bottom: 10px;
	float: left;
	transition: 0.3s ease-in-out;
}

#ipros a:hover img {
    filter: brightness(90%);
	transition: 0.3s ease-in-out;
}

/*----- ファームテクジャパン WEB展示場 -----*/

#pharmtech {
	width: 240px;
	margin-bottom: 10px;
	float: left;
	transition: 0.3s ease-in-out;
}

#pharmtech a:hover img {
    filter: brightness(90%);
	transition: 0.3s ease-in-out;
}

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

#job_info {
	width: 240px;
	margin-bottom: 15px;
	float: left;
}

/*----- ▼▼右コンテンツ▼▼ -----*/

#main #side_right{	
	width: 740px;
	text-align: left;
	float: right;
}

#main_tp {
	width: 740px;
	margin-bottom: 40px;
	float: left;
}

/*----- PLUE+を見るボタン -----*/

#custom_com3 {
	width: 738px;
	font-size: 100%;
	color: #222222;
	border: 1px solid rgba(115, 80, 170, 0.7);
	border-radius: 0px 0px 10px 10px;
	text-align: center;
	margin-bottom: 30px;
	float: left;
}

#custom_com3 a {
    background:rgba(115,80,170,0.1);
    border-radius: 0px 0px 10px 10px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    max-width: 738px;
    padding: 10px 30px 10px 30px;
    color: #222;
    transition: 0.3s ease-in-out;
    font-weight: 500;
}

#custom_com3 a:hover {
    background: rgba(115, 80, 170, 0.7);
    color: #FFF;
}

#custom_com3 a:after {
    content: '';
    width: 5px;
    height: 5px;
    border-top: 3px solid #333;
    border-right: 3px solid #333;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 20px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}

#custom_com3 a:hover:after {
    border-color: #FFF;
}

/*----- ピックアップ 内容 -----*/

.archive_plus {
  width: 100%;
  max-width: 740px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 30px 10px;
}

.pickup_contents {
  height: 100%;
  box-sizing: border-box;
  background: #fff;
  border: 1px solid #fff;
  padding: 14px 10px 18px 10px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  transition: box-shadow 0.2s, border-color 0.2s;
}

.pickup_contents:hover {
  border-radius: 0px 0px 8px 8px;
  box-shadow: 0 4px 15px rgba(44, 104, 202, 0.20);
}

@media screen and (max-width: 718px) {
  .pickup_contents {
    border-radius: 0px 0px 8px 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.10);
    transition: box-shadow 0.2s;
  }
  .pickup_link:active .pickup_contents,
  .pickup_link:hover .pickup_contents {
    border-radius: 0px 0px 8px 8px;
    box-shadow: 0 4px 16px rgba(0,0,0,0.25);
  }
}

.pickup_img {
  width: 100%;
  margin-bottom: 10px;
  text-align: center;
}

.pickup_img img {
  width: 100%;
  height: auto;
  display: block;
  border: 1px solid #cccccc;
}

.pickup_comment{
	width: 100%;
	font-size: 80%;
	line-height: 1.8em;
	color: #333;	
	float: left;
}

.pickup_comment p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  text-overflow: ellipsis;
}

.category_tab {
  margin-bottom: 8px;
}

/*----- 7 カスタム容器・8 コンビネーション容器 -----*/

.feature1_07 {
	width: 100%;
    background-color: rgba(114, 68, 168, 0.7);
	border-radius: 0px 0px 5px 5px;
	margin-bottom:10px; 
	float:left;
}

.feature2_12 {
	width: 100%;
	font-size: 90%;
	color: #333;
	font-weight: bold;
	float:left;
}

/*----- カテゴリー名 -----*/

.custom_no {    
    font-size: 80%;
    font-weight: 400;
    color: #fff;
    line-height: 2em;
	margin-left: 0;
    text-align: center;
}

/*----- 新製品名 -----*/

.pickup_name {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.4;
  max-height: calc(1.8em * 3);
}

/* スマホ時（max-width: 718px） 横2列表示に切替 */
@media screen and (max-width: 718px) {
  .archive_plus {
    width: 100% !important;
    max-width: 740px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* 2列 */
    gap: 20px 10px;
    padding: 0 10px !important;
    box-sizing: border-box;
  }
 .category_tab {
    padding-left: 10px !important;
  }
}

/*----- ピックアップ 内容 ここまで -----*/

/*----- バックナンバーボタン -----*/

 .center_back {
	width: 740px;
	margin-bottom: 40px;
	float: left;
}

.backnumber {
  text-align: center;
  margin: 30px 0 0 0;
}

.backnumber a {
  background: linear-gradient(to bottom, #fff 0%, #ececec 100%);
  color: #23497c;
  font-weight: 500;
  text-decoration: none;
  padding: 12px 38px 12px 28px;
  box-sizing: border-box;
  display: inline-block;
  border-radius: 100px;
  box-shadow: 0 2px 10px rgba(60,100,180,0.10);
  font-size: 15px;
  letter-spacing: 0.04em;
  transition: background 0.14s, box-shadow 0.14s;
  position: relative;
  vertical-align: middle;
}

.backnumber a:before {
  content: "";
  display: inline-block;
  border: 6px solid transparent;
  border-left-color: #23497c;
  margin-right: 10px;
  vertical-align: middle;
  position: relative;
  top: -1px;
}

.backnumber a:hover {
  background: linear-gradient(to bottom, #e8f1fa 0%, #d3e1f5 100%);
  color: #154080;
  box-shadow: 0 4px 16px rgba(44, 104, 202, 0.13);
}

/*----- バックナンバーボタン ここまで -----*/

.mgl-100 img {
    box-shadow: 3px 3px 8px #ccc;
	margin-top: 0px;
	margin-bottom: 10px;
}

.mgl-100 a:hover img {
    box-shadow: 5px 5px 8px #aaa;
}

.mgl-img img {
    box-shadow: 3px 3px 8px #ccc;
	margin-top: 0px;
	margin-bottom: 10px;
}

.mgl-img a:hover img {
    box-shadow: 5px 5px 8px #aaa;
	transition: 0.3s ease-in-out;
}

/*----- スライダー画像の上のテキスト -----*/

.main_visual_01 {/*親div*/
  position: relative;/*相対配置*/
  }

.main_visual_01 h2 {
	position: absolute;
	color: #222;
	font-size: 1.4em;/*サイズ2倍*/
	font-weight: bold;
	top: 310px;
    left: 345px;	
}

/* スマホ対応 */
@media screen and (max-width: 718px) {
  .main_visual_01 h2 {
    top: 85%;       /* 相対的な位置に調整 */
    left: 35%;
    font-size: 0.9em;
    color: #222;
    width: 80%;
    line-height: 1.4;
  }
}

.main_visual_02 {/*親div*/
  position: relative;/*相対配置*/
  }

.main_visual_02 h2 {
	position: absolute;
	color: #222;
	font-size: 1.4em;/*サイズ2倍*/
	font-weight: bold;
	top: 310px;
    left: 345px;	
}

/* スマホ対応 */
@media screen and (max-width: 718px) {
  .main_visual_02 h2 {
    top: 85%;       /* 相対的な位置に調整 */
    left: 40%;
    font-size: 0.9em;
    color: #222;
    width: 80%;
    line-height: 1.4;
  }
}

.main_visual_03 {/*親div*/
  position: relative;/*相対配置*/
  }

.main_visual_03 h2 {
	position: absolute;
	color: black;/*文字は白に*/
	font-size: 1.7em;/*サイズ2倍*/
	line-height: 120%;
	font-weight: bold;
	top: 15px;
    left: 50px;
	text-shadow: 0px 0px 15px #fff,0px 0px 15px #fff,0px 0px 15px #fff,0px 0px 15px #fff;
}

/* スマホ対応 */
@media screen and (max-width: 718px) {
  .main_visual_03 h2 {
    top: 5%;       /* 相対的な位置に調整 */
    left: 5%;
    font-size: 0.9em;
    color: #222;
    width: 90%;
    line-height: 1.4;
	text-shadow: 0px 0px 15px #fff,0px 0px 15px #fff,0px 0px 15px #fff,0px 0px 15px #fff;
  }
}

.main_visual_04 {/*親div*/
  position: relative;/*相対配置*/
  }

.main_visual_04 h2 {
	position: absolute;
	color: white;/*文字は白に*/
	font-size: 1.4em;/*サイズ2倍*/
	font-weight: bold;
	top: 15px;
    left: 25px;	
}

/* スマホ対応 */
@media screen and (max-width: 718px) {
  .main_visual_04 h2 {
    top: 4%;       /* 相対的な位置に調整 */
    left: 5%;
    font-size: 0.7em;
    color: white;
    width: 95%;
    line-height: 1.4;
  }
}

.main_visual_05 {/*親div*/
  position: relative;/*相対配置*/
  }

.main_visual_05 h2 {
	position: absolute;
	color: white;/*文字は白に*/
	font-size: 1.3em;/*サイズ2倍*/
	font-weight: bold;
	top: 15px;
    left: 30px;	
}

/* スマホ対応 */
@media screen and (max-width: 718px) {
  .main_visual_05 h2 {
    top: 4%;       /* 相対的な位置に調整 */
    left: 3%;
    font-size: 0.7em;
    color: white;
    width: 95%;
    line-height: 1.4;
  }
}

.main_visual_06 {/*親div*/
  position: relative;/*相対配置*/
  }

.main_visual_06 h2 {
	position: absolute;
	color: #222;/*文字は白に*/
	font-size: 1.6em;/*サイズ2倍*/
	font-weight: bold;
	top: 220px;
    left: 70px;
	text-align: center;
	text-shadow: 0px 0px 15px #fff,0px 0px 15px #fff,0px 0px 15px #fff,0px 0px 15px #fff;
}

/* スマホ対応 */
@media screen and (max-width: 718px) {
  .main_visual_06 h2 {
    top: 65%;       /* 相対的な位置に調整 */
    left: 5%;
    font-size: 0.9em;
    color: #222;
    width: 90%;
    line-height: 1.4;
	text-shadow: 0px 0px 15px #fff,0px 0px 15px #fff,0px 0px 15px #fff,0px 0px 15px #fff;
  }
}

.main_visual_07 {/*親div*/
  position: relative;/*相対配置*/
  }

.main_visual_07 h2 {
    position: absolute;
    color: black;/*文字は白に*/
    font-size: 2em;/*サイズ2倍*/
    line-height: 120%;
    font-weight: bold;
    top: 20px;
    left: 30px;
	text-shadow: 0px 0px 15px #fff,0px 0px 15px #fff,0px 0px 15px #fff,0px 0px 15px #fff;
}

/* スマホ対応 */
@media screen and (max-width: 718px) {
  .main_visual_07 h2 {
    top: 5%;       /* 相対的な位置に調整 */
    left: 5%;
    font-size: 1em;
    color: #222;
    width: 90%;
    line-height: 1.4;
	text-shadow: 0px 0px 15px #fff,0px 0px 15px #fff,0px 0px 15px #fff,0px 0px 15px #fff;
  }
}

.main_visual_08 {/*親div*/
  position: relative;/*相対配置*/
  }

.main_visual_08 h2 {
    position: absolute;
    color: black;/*文字は白に*/
    font-size: 1.7em;/*サイズ2倍*/
    line-height: 130%;
    font-weight: bold;
    top: 60px;
    left: 300px;
	text-shadow: 0px 0px 15px #fff,0px 0px 15px #fff,0px 0px 15px #fff,0px 0px 15px #fff;
}

/* スマホ対応 */
@media screen and (max-width: 718px) {
  .main_visual_08 h2 {
    top: 20%;       /* 相対的な位置に調整 */
    left: 40%;
    font-size: 0.9em;
    color: #222;
    width: 90%;
    line-height: 1.4;
	text-shadow: 0px 0px 15px #fff,0px 0px 15px #fff,0px 0px 15px #fff,0px 0px 15px #fff;
  }
}

.main_visual_09 {/*親div*/
  position: relative;/*相対配置*/
  }

.main_visual_09 h2 {
	position: absolute;
	color: black;/*文字は白に*/
	font-size: 1.5em;/*サイズ2倍*/
	line-height: 160%;
	font-weight: bold;
	top: 25px;
    left: 30px;
	text-shadow: 0px 0px 15px #fff,0px 0px 15px #fff,0px 0px 15px #fff,0px 0px 15px #fff;
}

/* スマホ対応 */
@media screen and (max-width: 718px) {
  .main_visual_09 h2 {
    top: 7%;       /* 相対的な位置に調整 */
    left: 3%;
    font-size: 0.8em;
    color: #222;
    width: 100%;
    line-height: 1.6;
	text-shadow: 0px 0px 15px #fff,0px 0px 15px #fff,0px 0px 15px #fff,0px 0px 15px #fff;
  }
}

/*----- ページネーション -----*/

#next_back {
	width: 740px;
	margin-bottom: 30px;
    text-align: center;
	float: left;
}

ul.pagination {
    display: inline-block;
    padding: 0;
    margin: 0;
}

ul.pagination li {display: inline;}

ul.pagination li a {
    color: black;
    float: left;
    padding: 8px 16px;
    text-decoration: none;
    transition: background-color .3s;
    border: 1px solid #aaa;
}
    
.pagination li:first-child a {
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
}

.pagination li:last-child a {
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
}

ul.pagination li a.active {
    background-color: rgba(114, 68, 168, 0.7);
    color: white;
    border: 1px solid rgba(114, 68, 168, 0.7);
}

ul.pagination li a:hover:not(.active) {background-color: #ddd;}

div.center {text-align: center;}

ul.pagination li a {
    margin: 0 2px;
}

/*----- JUページネーションのボタン -----*/

#pagination {
  text-align: center;
  margin: 24px 0;
}
#pagination button {
  margin: 0 4px;
  padding: 4px 12px;
  border: 1px solid #ccc;
  background: #fff;
  cursor: pointer;
  border-radius: 3px;
  font-size: 1em;
}
#pagination button.active {
  background: #02665d;
  color: #fff;
  font-weight: bold;
  border: 1px solid #02665d;
}

/*----- JSページネーションのボタン ここまで -----*/
