/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Aug 30 2025 | 06:17:15 */
@media (min-width: 1025px) {
    .content__main,
	.entry-content{
        max-width:initial;/*コンテンツ幅の調整*/
    }
}
.ystdb-heading__subtext:before{
		font-family: "Lato", sans-serif;
    font-weight: 400;
    font-style: italic;
}
/*ヘッダー背景色削除*/
body.has-fixed-header{
	padding-top:0;
}

.lato em{
	font-family: "Lato", sans-serif;
	font-weight: 400;
	font-style: italic;
}

.text-shadow{
	text-shadow: 0px 0px 20px #7F0F20;
}
.about_shadow img{
	 box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.4);
}

.product-table .ystdb-column {
  border: 1px solid #E0E0E0;
  position: relative;
}

.product-table .ystdb-column::after{
content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 0;
  height: 0;
  border-top: 15px solid transparent;
  border-left: 15px solid transparent;
  border-bottom: 15px solid #469FE3;
  border-right: 15px solid #469FE3;
}

/*青い三角の装飾指定*/
.arrow_blue {
  position: relative;
}
.arrow_blue {
    width: fit-content;
    margin: auto;
}
.arrow_blue::before {
	content: "";
	position: absolute;
	transform: translate(-50%, -50%);
	top: 50%;
	left:-6%;
	width: 0;
	height: 0;
	border-left: 11.5px solid transparent; 
	border-right: 11.5px solid transparent;
	border-top: 11px solid #006EC3;
}
.arrow_blue::after{
	content: "";
	position:absolute;
	transform: translate(-50%, -50%);
	top: 50%;
	right: -11%;
	width: 0;
	height: 0;
	border-left: 11.5px solid transparent; 
	border-right: 11.5px solid transparent;
	border-top: 11px solid #006EC3;
}

/*黒ボタンの指定*/
.bk_btn {
	display:inline-block;
	width:300px;
}
.bk_btn span.ystdb-button__link-content {
	justify-content: space-between;
	padding:0 32px;
	width:100%;
}

/*PRODUCTのレイアウト調整*/
.product-table p{
	line-height:1.5;
	margin-top:8px;
}

/*下層共通CSS*******************************************************/
.num_blue code{
	font-size:28px;
	color:#469FE3;
	position:relative;
	margin-right:8px;
}
.num_blue code::after{
	position: absolute;
	top: 50%;
  left: 100%;
  transform: translateY(-50%); 
	border-left:1px solid #469FE3;
	content: " ";
	width: 1px;
	height: 60%;
	color:#469FE3;
}
.product_deco{
	background:url(https://bizhomely1.xbiz.jp/bizcom/wp-content/uploads/2025/08/a89ecbe00d387197260087ffed8812a2.png);
	width:100%;
	height:60px;
	padding:16px 0 16px 16px;
	background-size: cover;
}
/*下層青タイトル*/
.lato_title_subpage{
	font-family: "Lato", sans-serif;
    font-weight: 400;
    font-style: italic;
}




/*******************************************************
PRODUCT　ウイルス／ウイルスベクター
*******************************************************/
.table_title .vk_inline-font-size{
	color:#469FE3;
	font-weight:bold;
}
.table_title .table_num{
	position:relative;
}
.table_title .table_num::after{
	position: absolute;
	top: 50%;
  left: 100%;
  transform: translateY(-50%); 
	border-left:1px solid #469FE3;
	content: " ";
	width: 1px;
	height: 60%;
}

/*******************************************************
採用情報
*******************************************************/
/* メニューコンテンツ */
.recruit_message{
	
}
.recruit_menu {
  position: relative;
  display: inline-block;
}
.recruit_menu a {
	width: 100%;               /* 横幅は必要に応じて調整 */
	font-size: 16px;           /* フォントサイズ */
	border: 3px solid #469FE3; /* 枠線の色 */
	background-color:#FFF;
	width: 380px;
	color:#434548;
	background-repeat: no-repeat;
	background-position: right 16px center; /* 矢印の位置 */
	background-size: 20px;
	text-align:left;
	box-sizing: border-box;
	
	
}
.recruit_menu::after {
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-bottom: solid 1px #434548;
  border-right: solid 1px #434548;
  position: absolute;
transform: rotate(45deg) translateY(-50%);
	top:50%;
  right: 24px;
  pointer-events: none;
}

/*******************************************************
当社について
*******************************************************/
.wp-embed-responsive .wp-has-aspect-ratio .wp-block-embed__wrapper:before {
    content: "";
    display: block;
    padding-top: 35%;
}
.history_line .ystdb-columns{
    align-items:center;
}

@media (min-width: 769px) {
.history_table .history_num {
  position: relative;
}

/* 縦線 */
.history_table .history_num::before {
  content: "";
  position: absolute;
  left: 100%;       /* 縦線の位置 */
  top: 0;
  bottom: 0;
  width: 2px;
  background: #E0E0E0;
}

/* 各年（.dot）ごとの丸 */
.history_table .history_num .dot {
  position: relative;
}

.history_table .history_num .dot::after {
  content: "";
  position: absolute;
  top: 45%;
  left: 94%;           /* 親 .dot の右端を基準に */
  transform: translateY(-50%);
  display: block;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  border: solid 1px #469FE3;
  background: #469FE3;
}
}
@media screen and (max-width: 768px) {
	.history_line{
		margin-left:24px;
		margin-right:1%;
	}
	.history_num{
		padding-bottom:0;
	}
	.history_line .ystdb-columns {
		--ystdb-column-row-gap:0;
		--ystdb-column-column-gap:0;
		gap:var(--ystdb-column-row-gap) var(--ystdb-column-column-gap);
	}
	.history_line .ystdb-column{
		padding-top:0;
		padding-bottom:0;
	}
	
/* スマホver歴史の装飾 */
.history_table {
padding-top:0 !important;
padding-bottom:0 !important
	}
.history_table .ystdb-section__inner{
  position: relative;
}

/* 縦線 */
.history_table::before {
  content: "";
  position: absolute;
  left: 8.5%;       /* 縦線の位置 */
  top: 0;
  bottom: 0;
  width: 2px;
	height:100%;
  background: #E0E0E0;
}

/* 各年（.dot）ごとの丸 */
.history_table .history_num .dot {
  position: relative;
}

.history_table .history_num .dot::after {
  content: "";
  position: absolute;
  top: 45%;
  left: -10%;           /* 親 .dot の右端を基準に */
  transform: translateY(-50%);
  display: block;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  border: solid 1px #469FE3;
  background: #469FE3;
}
}
/*******************************************************
採用情報
*******************************************************/
	
.recruit_menu select {
	max-width:288px;
}



@media screen and (max-width: 768px) {
 .ystdb-section__inner{
	/*スマホのインナー調整
	 padding-left:16px !important;
	padding-right:16px !important;*/
		width:100%;
	}	
	
	
	/*主なサービスのご紹介調整*/
.arrow_blue::before {
	display:none;
}
.arrow_blue::after{
	display:none;
}
	.sp_service strong,
	.sp_service strong span{
		font-size:18px !important;
	}
	
	/*Aboutの調整*/
	.ystd .sp_about .about_title {
        font-size: 24px !important;
}
	.about_shadow img{
	 box-shadow: none;
		width:100%;
}
	.flex_reversible{
		flex-direction: column-reverse;
	}
	
	/*PRODUCTのレイアウト調整*/
	.product-table img{
		width:80px;
	}
	
	
	.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__media {
    /* ビューポート幅へ拡張（左右の余白を打ち消す）*/
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }

  /* 画像（または動画）自体も100%に */
  .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__media img,
  .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__media video {
    display: block;
    width: 100%;
    height: auto;
  }

  /* 文章側は読みやすいように左右に少し余白を付与（任意） */
  .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content {
    padding-left: 1rem;
    padding-right: 1rem;
  }
	
/*******************************************************
採用情報
*******************************************************/
.wp-block-buttons>.wp-block-button.wp-block-button__width-25 {
    width:98%;
	margin:0 auto;
}

}
