@charset "utf-8";
/*!
information.css（ニュース詳細ページ用スタイル）
ニュース詳細ページのスタイル定義には、
[.news-detail__body-revert ]を継承（接頭辞に指定）してください。
誤ったスタイル定義は本体のスタイルを上書きする可能性があります。
※ニュース本文で使う見出しタグは、H4,H5を想定しています。
※H4,H5と同等の見栄えになる、見出しのスタイルhl1とhl2を定義しています。
------------------------------
*/

/*
<div class="news-detail__header">
	<p class="news-detail__header-date">2025/6/30</p>
	<h3 class="news-detail__header-title">就職説明会 in ハローワーク山口</h3>
</div>
*/
.news-detail__header {
	margin: 40px 0 0;
	padding: 0;
	color:var(--color-font);
	border:1px solid rgba(67, 148, 214, 1);
	border-radius: 8px;
}
.news-detail__header-date{
	font-size:1.125rem;
	padding:5px 20px;
}
.news-detail__header-title{
	letter-spacing: 0;
	margin-top:5px;
	padding:10px 20px;
	font-size: 1.5rem;
	font-weight: 500;
	line-height: 1.3;
	border-top:1px solid rgba(67, 148, 214, 0.5);
}

.news-detail__body-revert h1,
.news-detail__body-revert h2,
.news-detail__body-revert h3,
.news-detail__body-revert h4,
.news-detail__body-revert h5,
.news-detail__body-revert h6,
.news-detail__body-revert p,
.news-detail__body-revert a,
.news-detail__body-revert figure,
.news-detail__body-revert img,
.news-detail__body-revert ul,
.news-detail__body-revert ol,
.news-detail__body-revert li,
.news-detail__body-revert blockquote,
.news-detail__body-revert em,
.news-detail__body-revert strong {
	all: revert;
}
.news-detail__body-revert a[href$=".pdf"]::before,
.news-detail__body-revert a[href$=".xlsx"]::before,
.news-detail__body-revert a[href$=".docx"]::before,
.news-detail__body-revert a[href$=".jpg"]::before,
.news-detail__body-revert a[href$=".png"]::before {
	all: revert;
}
.news-detail__body-revert {
	/*padding:20px 40px 40px;
	border:1px solid rgba(67, 148, 214, 1);
	border-radius: 8px;*/
	margin-top: 30px;
	/*文字サイズ・行間*/
	font-size:1rem;
	line-height:1.8;
	color:var(--color-font);
}

.news-detail__body-revert a,
.news-detail__body-revert a:visited {
	color:var(--color-font);
}
.news-detail__body-revert a:hover{
	color:blue;
}

/*見出し表現*/
.news-detail__body-revert h4,
.news-detail__body-rever .hl1 {
	font-size: 1.125rem;
	color: #FFFFFF;	
	background: #4a90e2;
	/*margin: 10px -20px 20px;*/
	margin: 30px 0 20px;
	padding: 8px 20px; 
	border-radius: 8px;
}
.news-detail__body-revert h5,
.news-detail__body-revert .hl2 {
	margin:20px 0;
	font-size: 1.0625rem;
	font-weight:bold;
	border-bottom: 1px solid #4a90e2;
}

/*リスト表現（順序なしリスト）*/
.news-detail__body-revert ul {
	padding: 0;
	list-style: none;
	font-weight:400;
	color:var(--color-font);
}
.news-detail__body-revert ul > li {
	position: relative;
	padding-left: 1.4em;
	margin-bottom: 0;
}
.news-detail__body-revert ul > li::before {
	position: absolute;
	top: 0.6em;
	left: 0.3em;
	display: block;
	width: 0.5em;
	height: 0.5em;
	content: "";
	border-radius: 100%;
	background-color: #00BCD4;
}
.news-detail__body-revert ol {
	padding: 0;
	margin-left: 1.4em;
	list-style-type: decimal !important;
}
.news-detail__body-revert ol > li {
	margin-bottom: 0;
}

/* 連絡先外枠のボックス */
.news-detail__body-revert address {
	margin:40px 0 20px;
	width: 100%;
	border: 1px solid #4a90e2;
	border-radius: 8px;
	background-color: #fff;
	font-style: normal;
	overflow: hidden;
}
/* 連絡先見出し部分 */
.news-detail__body-revert address h4,
.news-detail__body-revert address .hl1 {
	font-size: 1.125rem;
	font-weight: bold;
	color: #fff;
	margin: 0;
	padding: 8px 20px;
	background-color: #4a90e2;
}
.news-detail__body-revert .c-address-information{
	padding:15px 20px 20px;
}
/* 本文エリア */
.news-detail__body-revert address p {
	margin: 0;
	line-height: 1.8;
	font-size: 16px;
}
.u-tel{
	margin-right:1rem;
}
/*項目途中の改行を防ぐ*/
.u-tel, .u-fax, .u-name{
	display:inline-block;
}

@media (max-width: 650px) {
	.news-detail__header {
		margin-left:15px;
		margin-right:15px;
	}
	.news-detail__body-revert {
		margin-left:15px;
		margin-right:15px;
	}
}

@media (max-width: 420px) {
	.news-detail__header {
		margin-left:10px;
		margin-right:10px;
	}
	.news-detail__body-revert {
		margin-top:20px;
		margin-left:10px;
		margin-right:10px;
	}
}

/* 段組みスタイル（グリッドレイアウト） */
.grid-wrap {
	display: grid;
	gap: 20px;       /* カラム間の隙間 */
	width: 100%;
	margin-bottom: 30px;
	align-items: start; /* 上揃え（文章量で高さが変わっても上が揃う） */
}
/* 2カラム */
.col-2 {
	grid-template-columns: repeat(2, 1fr);
}
/* 3カラム */
.col-3 {
	grid-template-columns: repeat(3, 1fr);
}
/* レスポンシブ (840px以下で1列) */
@media (max-width: 840px) {
	.col-2, .col-3 {
		grid-template-columns: 1fr;
	}
}
/* 画像をキレイに並べるための設定 */
.img-box {
	width: 100%;
}
.img-box img {
	width: 100%;           /* 親要素の幅いっぱいに広げる */
	height: auto;          /* 高さは自動 */
	aspect-ratio: 16 / 9;  /* 【重要】画像の比率を16:9に固定 */
	object-fit: cover;     /* 【重要】比率からはみ出る部分はトリミング */
	border-radius: 8px;    /* 角丸にして少しおしゃれに */
	display: block;        /* 画像の下の微妙な隙間を消す */
}
.img-box a {
	display: block; /* リンク領域をブロック要素にする */
	transition: opacity 0.3s ease; /* ふわっと変化させる */
}
.img-box a:hover img {
	opacity: 0.7;
}
/* 縦画像用のクラス */
.img-box.portrait img {
	aspect-ratio: 3 / 4;   /* 縦長(3:4)に整える*/
	/* object-fit: contain; 全体を見せたい場合はこちらに変える手もあり */
}


/* オリジナルサイズ表示用の設定 */
.img-original {
	width: 100%;
	display: flex;         /* 配置制御のためにFlexboxを使用 */
	flex-direction: column;/* 画像とキャプションを縦に積む */
	margin-bottom: 30px;
}

/* 画像自体の設定 */
.img-original img {
	max-width: 100%;       /* 画面からはみ出さない */
	height: auto;          /* 高さは自動維持 */
	width: auto;           /* オリジナルサイズを維持 */
	border-radius: 6px;
	display: block;
}

/* リンクの挙動も合わせる */
.img-original a {
	display: inline-block; /* 中身のサイズに合わせる */
	transition: opacity 0.3s ease;
}
.img-original a:hover img { opacity: 0.7; }

/* 配置用クラス (align-xxx) */
.align-left {
	align-items: flex-start; /* 左寄せ */
	text-align: left;
}
.align-center {
	align-items: center;     /* 中央揃え */
	text-align: center;
}
.align-right {
	align-items: flex-end;   /* 右寄せ */
	text-align: right;
}

/* タブレット以下(840px)の設定 */
@media (max-width: 840px) {
	.img-original img {
		width: 100% !important; /* 強制的に横幅いっぱいに */
	}
}

/* 自動生成キャプション */
.img-caption {
	font-size: 0.9375rem;
	color: #666;
	margin-top: 4px;
	line-height: 1.4;
	text-align: center;
}
/* 文章エリアの装飾 */
.text-box {
	padding: 0 4px;
	line-height: 1.5;
}
.text-box h6 { margin: 0 0 16px; font-size: 1.125rem;}
.text-box p { margin: 0; font-size: 1rem;}

/* 表組（本体と同等） */
table {
	width: 100%;
	margin: 0;
	border-spacing: 0;
	border-top: 1px solid var(--color-primary);
	border-right: 1px solid var(--color-primary);
}
tr,th,td {
	text-align: left;
	vertical-align: top;
	word-break: break-all;
	position: relative;
}
th {
	padding: 11px 16px;
	vertical-align: middle;
	border-bottom: 1px solid var(--color-primary);
	border-left: 1px solid var(--color-primary);
	background-color: var(--color-theme-bg);
}
td {
	padding: 11px 16px;
	border-bottom: 1px solid var(--color-primary);
	border-left: 1px solid var(--color-primary);
	background-color: var(--color-white);
}


.news-detail__body-revert .a-button {
	width: fit-content;
	max-width: 100%;
	margin-bottom:10px;
	padding: 13px 24px 13px 24px;
	border-radius: 100vh;
	background-color: var(--color-primary);
	display: flex; /* テキストとアイコンを横並びにする */
	justify-content: space-between;
	align-items: center;
	position: relative;
	color: var(--color-white);
	transition: background-color 0.3s ease;
	text-decoration: none;
}
.news-detail__body-revert .a-button::after {
	content: "\f0a9";
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	position: absolute;
	right: 14px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 1.5rem;
	color: var(--color-white);
}
.news-detail__body-revert .a-button__inner {
	display: flex; 
	flex-direction: column;
	gap: 4px;
	flex-grow: 1;
	min-width: 0; 
	margin-right: 34px;
}
.news-detail__body-revert .a-button__text {
	font-weight: 500;
	text-align:left;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	 /* 2行目までを表示し、それ以降を省略(Multi-line Ellipsis) */
	-webkit-line-clamp: 2;
}
.news-detail__body-revert .a-button__text {
	font-size: 1.125rem;
	line-height: 1.2;
}
.news-detail__body-revert .a-button:hover {
	text-decoration: none;
	background-color:var(--color-theme-bg2);
	color:var(--color-font2);
}
.news-detail__body-revert .a-button:hover::after {
	color: var(--color-font2);
}
.news-detail__body-revert a.button-center{
	margin-left: auto;
	margin-right: auto;
}
.news-detail__body-revert a.button-right{
	margin-left: auto;
	margin-right:0;
}