/* ==========================================================
   初期設定
========================================================== */
*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}
html{
    scroll-behavior:smooth;
}
body{
    font-family:"ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
    font-size:13px;
	line-height:1.6;
    color:hsla(0, 0%, 20%, 1);
    background:hsla(185, 56%, 92%, 1) url(images/body_bg.jpg) repeat-y center top;
}
html,body,div,
ul,ol,li,dl,dt,dd,
form,fieldset,input,textarea,
h1,h2,h3,h4,h5,h6,pre,code,p,blockquote,hr,
th,td {
    margin: 0;
    padding: 0;
}
a{
    color:hsla(225, 30%, 40%, 1);
    /* text-decoration:none; */
}
a:hover{
	color:hsla(225, 50%, 60%, 1);
	text-shadow: 0px 0px 2px hsla(225, 50%, 70%, 0.1);
    text-decoration:underline;
}

h1{
	margin:0 0 10px;
	line-height:1.2;
	padding:13px 0 15px 45px;
	background: url('images/m_archive-content_h1_2cl.jpg') no-repeat left top;
	font-size:16px;
	font-weight:bold;
	color:hsla(0,0%,20%,1);
}

table {
    border-spacing: 0;
}

/* ==========================================================
    全体
========================================================== */
#wrapper{
    width:1030px;
    margin:auto;
    background:hsla(0, 0%, 100%, 1);
    border-left:1px solid hsla(0, 0%, 60%, 1);
    border-right:1px solid hsla(0, 0%, 60%, 1);
}
/* ==========================================================
    ヘッダー
========================================================== */
/* ==========================================================
    トップライン（超高精細サイバーデコレーション）- コンパクト版
========================================================== */
.topline {
    /* 1. 重厚な鋼板のディープブルーと熱対流グラデーションの融合 */
    background: 
        radial-gradient(ellipse at 30% -20%, rgba(0, 240, 255, 0.2) 0%, transparent 60%),
        linear-gradient(125deg, #02141f 0%, #09283a 30%, #123e57 50%, #031c2a 80%, #010e17 100%);
    background-size: 200% 100%;
    
    /* なだらかに揺らめく金属光沢アニメーション */
    animation: metallicShine 8s ease-in-out infinite alternate;
    
    /* ミントネオンの極細スリット境界線 */
    border-bottom: 2px solid rgba(0, 255, 210, 0.45);
    
    /* 下方向への眩いサイバー発光 */
    /*
	box-shadow: 
        0 4px 20px rgba(0, 240, 255, 0.25),
        inset 0 -1px 8px rgba(0, 255, 210, 0.15);
	*/
    
    padding: 0px 12px;
    position: relative;
    overflow: hidden;
}

/* メタリックな光沢を循環させるためのキーフレーム */
@keyframes metallicShine {
    0% { background-position: 0% 50%; }
    100% { background-position: 100% 50%; }
}

/* 2. 背景に重ねる「熱対流の気流（斜めウェーブ）」をCSSでシミュレート */
.topline::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: repeating-linear-gradient(
        45deg,
        rgba(0, 255, 210, 0.03) 0px,
        rgba(0, 255, 210, 0.03) 1.5px,
        transparent 1.5px,
        transparent 12px
    );
    animation: flowLines 25s linear infinite;
    pointer-events: none;
    opacity: 0.65;
}

@keyframes flowLines {
    0% { transform: translate(0, 0) rotate(0deg); }
    100% { transform: translate(5%, 5%) rotate(3deg); }
}

/* レイアウトの最適化 */
.topline-inner {
    display: flex;
    align-items: center;
    max-width: 1000px;
    margin: 0 auto;
    position: relative;
    z-index: 2;
}

/* 3. 歯車＆炎アイコンの覚醒発光エフェクト */
.topline-icon {
    width: 32px;
    height: 32px;
    margin-right: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    
    /* CSS3 フィルターによる強力なネオンバックグロウ効果 */
    filter: 
        drop-shadow(0 0 8px rgba(0, 255, 210, 0.8)) 
        drop-shadow(0 0 18px rgba(0, 240, 255, 0.45));
    
    animation: gearPulse 3s ease-in-out infinite alternate;
}

.neon-svg {
    width: 100%;
    height: 100%;
}

/* アイコン自体の呼吸するような光の明滅 */
@keyframes gearPulse {
    0% { transform: scale(0.98); filter: drop-shadow(0 0 6px rgba(0, 255, 210, 0.7)); }
    100% { transform: scale(1.04); filter: drop-shadow(0 0 14px rgba(0, 255, 210, 0.95)) drop-shadow(0 0 25px rgba(0, 240, 255, 0.6)); }
}

/* 4. メインテキスト：極太サイバーネオンフォント */
.topline-text {
    font-size: 13px;
    font-weight: 900;
    font-family: "Impact", "Arial Black", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
    letter-spacing: 0.12em;
    margin: 0;
    line-height: 1.2;
    
    /* 多重シャドウによるまばゆい発光（Glow） */
	/*
    text-shadow: 
        0 0 4px rgba(255, 255, 255, 0.95),
        0 0 10px rgba(0, 255, 210, 0.9),
        0 0 22px rgba(0, 255, 210, 0.65),
        0 0 35px rgba(0, 190, 255, 0.4);
	*/
        
    /* 文字自体にメタルホワイト〜ネオンミントの美しい縦方向グラデーション */
    background: linear-gradient(to bottom, #ffffff 35%, #d1fff8 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    display: inline-block;
}
#header{
    background:url(images/header_bg.jpg) no-repeat top center;
}
.header-main{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:15px;
}
.logo img{
    display:block;
	width:320px;
}
.header-right{
    text-align:right;
}
.sub-menu{
    margin-bottom:10px;
}
.sub-menu a{
    margin-left:15px;
    font-size:12px;
}
.search{
    font-size:12px;
}
.search input{
    width:170px;
    height:22px;
    border:1px solid hsla(0,0%,60%,1);
}

.search button{
    height:22px;
    border:1px solid hsla(0,0%,60%,1);
    background:hsla(0,0%,87%,1);
    cursor:pointer;
}
/* ==========================================================
    トップ画像テキスト
========================================================== */
/* 埋め込み先での崩れを防ぐためのカプセル化スタイル */
.glowing-widget-wrapper {
  box-sizing: border-box;
}

.glowing-widget-wrapper *,
.glowing-widget-wrapper *::before,
.glowing-widget-wrapper *::after {
  box-sizing: border-box;
}

/* メインコンテナ (幅620px × 高さ65px) */
.glowing-widget-container {
  position: relative;
  width: 620px;
  height: 65px;
  /* 画像「スクリーンショット 2026-07-14 150207 のコピー - コピー.png」のグラデーションを再現 */
  background: linear-gradient(135deg, #02385d 0%, #013150 40%, #004246 100%);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 10px;
  user-select: none;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.1);
}

/* 奥行きを与える背景オーバーレイ */
.glow-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(6, 182, 212, 0.1), transparent);
  pointer-events: none;
  mix-blend-mode: overlay;
}

/* カード要素 (幅130px × 高さ52px) */
.card-element {
  position: relative;
  width: 130px;
  height: 52px;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 6px;
  cursor: pointer;
  transition: all 0.4s ease-in-out;
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.05);
  z-index: 1;
}

/* カード：アクティブ（フォーカス）時 */
.card-element.active {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.2);
  box-shadow: 0 0 15px rgba(255, 255, 255, 0.1);
}

/* テキストの基本スタイルと通常時の微小な光彩 */
.card-text {
  font-size: 12px;
  line-height: 1.35;
  text-align: center;
  font-weight: normal;
  letter-spacing: -0.02em;
  margin: 0;
  color: #ffffff;
  text-shadow: 0 0 4px rgba(255, 255, 255, 0.4);
  opacity: 0.4;
  transition: all 0.4s ease-in-out;
}

/* テキスト：アクティブ（フォーカス）時の超強力な光彩 */
.card-text.active {
  opacity: 1;
  text-shadow: 
	0 0 8px rgba(255, 255, 255, 0.95), 
	0 0 15px rgba(255, 255, 255, 0.6), 
	0 0 25px rgba(255, 255, 255, 0.3);
  transform: scale(1.03);
}
/* ==========================================================
    メニュー（ドロップダウン対応版）
========================================================== */
#global{
  background: linear-gradient(
    to bottom,
    hsla(28, 90%, 52%, 1) 0px,
    hsla(28, 90%, 52%, 1) 1px,

    hsla(28, 100%, 85%, 1) 1px,
    hsla(28, 100%, 80%, 1) 40%,

    hsla(28, 100%, 75%, 1) 50%,
    hsla(28, 100%, 80%, 1) calc(100% - 1px),

    hsla(28, 90%, 52%, 1) calc(100% - 1px),
    hsla(28, 90%, 52%, 1) 100%
    );
    height:40px;
    /* ドロップダウンを表示させるため overflow:hidden; は削除 */
    padding:0px 0 0 9px;
    position: relative;
    z-index: 999; /* メイン画像やサイドバーより前面に表示させる */
}
#global > ul{
    display:flex;
    list-style:none;
}

#global > ul > li{
    width:200px;
    position: relative; /* 子要素（ドロップダウン）の配置基準 */
}

/* --- 既存の #global > ul > li > a に position: relative を追加 --- */
#global > ul > li > a {
    display: block;
    height: 40px;
    line-height: 40px;
    text-align: center;
    font-size: 17px;
    color: hsla(0,0%,0%,1);
    border: 1px solid hsla(22, 90%, 52%, 1);
    background: linear-gradient(
        to right,
        hsla(28, 100%, 95%, 1) 0px,
        hsla(28, 100%, 95%, 0) 5%,
        hsla(28, 100%, 95%, 0) 95%,
        hsla(28, 100%, 95%, 1) 100%
    );
    transition: .2s;
    text-decoration: none !important;

    /* ↓↓ ここを追加（バーの配置基準にするため） ↓↓ */
    position: relative; 
}

/* 親メニューのホバー時 */
#global > ul > li > a:hover{
    color:hsla(0,0%,100%,1);
    text-decoration:none;
	border: 1px solid hsla(166, 90%, 70%, 1);
}

/* ↓↓ テキスト下のバーを再現する疑似要素を追加 ↓↓ */
#global > ul > li > a::after {
    content: "";
    position: absolute;
    bottom: 3px;             /* 下からの位置 */
    left: 10px;               /* 左からの位置 */
    right: 10px;              /* 右からの位置 */
    height: 3px;             /* バーの太さ */
    background-color: hsla(22, 90%, 52%, 1); /* バーの色（枠線と同系色） */
    border-radius: 10px;      /* 角をわずかに丸める（お好みで調整） */
}

/* テキスト下のバーのホバー時 */
#global > ul > li > a:hover::after{
    background:linear-gradient(
        to bottom,
        hsla(166, 100%, 100%, 1) 0%,
        hsla(166, 90%, 70%, 1) 100%
    );
	box-shadow: 0 0 2px hsla(166,  90%, 90%, 1);
}

#global > ul > li > a::before {

}

/* --- ::before : 上からの青緑グラデーション（mix-blend-mode適用） --- */
#global > ul > li > a:hover::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    
    /* 上から下へ「青 → 緑」のグラデーション */
    background: linear-gradient(
		to bottom,
		hsla(166,  90%, 70%, 1) 50%,
		hsla(166,  90%, 70%, 0) 100%
	);
    
    /* ブレンドモード（multiply: 乗算、overlay: オーバーレイ など背景に合わせて調整） */
    mix-blend-mode: color;
    
    /* ボタンのテキスト（a要素の直下テキスト）より背後に回す場合 */
    z-index: -1; 
    pointer-events: none; /* クリックイベントを透過 */
}
/* -------------------------------------------
   追加：ドロップダウンメニュー（サブナビ）の設計
------------------------------------------- */
#global ul.sub-nav {
    display: none; /* 通常時は非表示 */
    position: absolute;
    top: 40px;     /* 親メニューの直下に配置 */
    left: 0;
    width: 100%;
    background-color: hsl(166, 79%, 85%, 1);
    list-style: none;
    padding: 0;
    margin: 0;
    border-left: 1px solid hsl(166, 75%, 77%, 1);
    border-right: 1px solid hsl(166, 75%, 77%, 1);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

/* 親liにホバーしたとき、子ウインドウを表示 */
#global > ul > li:hover ul.sub-nav {
    display: block;
}

/* ドロップダウン内の各行 */
#global ul.sub-nav li {
    width: 100%;
	border-top: 1px solid hsl(166, 83%, 93%, 1);
    border-bottom: 1px solid hsl(166, 71%, 69%, 1);
}
#global ul.sub-nav li:last-child {
    /* border-bottom: none; */
}

/* ドロップダウン内のリンク */
#global ul.sub-nav li a {
    display: flex;
    align-items: center;
    padding: 0 12px;
    height: 38px;
    line-height: 38px;
    text-align: left;
    font-size: 13px;
    color: #222;
	text-decoration: none;
    background: none; /* 親のオレンジ背景画像をリセット */
    transition: background-color 0.2s, color 0.2s;
}

/* ドロップダウン内リンクのホバー時 */
#global ul.sub-nav li a:hover {
    background-color: hsl(166, 80%, 78%, 1); /* 少し濃いミントグリーン */
    color: #000;
    text-decoration: none;
}

/* -------------------------------------------
   追加・変更：ドロップダウン内のアイコン（通常時）
   サイドメニューのサークルプレイボタンの仕組みを移植
------------------------------------------- */
#global ul.sub-nav li a::before {
    content: '';
    display: inline-block;
    box-sizing: border-box;
    width: 16px;  /* ドロップダウンのサイズに合わせて少しだけコンパクトに */
    height: 16px;
    margin-right: 8px;
    /* 背景が明るいミントグリーンのため、通常時は濃いめの色で視認性を確保 */
    border: 1.5px solid #222;
    border-radius: 50%;
    
    /* サイドメニューと同じ直角三角形のSVG（カラーを#222に最適化） */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23222222' d='M9,6.5l8,5.5l-8,5.5V6.5z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: calc(50%) center;
    background-size: 100%;
    
    flex-shrink: 0; /* 文字が長くなっても絶対にアイコンが潰れないように固定 */
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}

/* -------------------------------------------
   追加・変更：ドロップダウン内のアイコン（ホバー時）
   サイドメニューの覚醒・ホログラム発光効果を移植
------------------------------------------- */
#global ul.sub-nav li a:hover::before {
    /* 明るいミントグリーン背景でも綺麗に発光して見えるディープネオンカラー */
    border-color: hsla(184, 100%, 35%, 1);
    background-color: hsla(184, 100%, 50%, 0.2);
    box-shadow: 
        0 0 8px hsla(184, 100%, 40%, 0.6),
        inset 0 0 4px hsla(184, 100%, 40%, 0.4);
        
    /* 三角の色をサイバー感のあるディープティールブルーに変更 */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23008a98' d='M9,6.5l8,5.5l-8,5.5V6.5z'/%3E%3C/svg%3E");
    transform: scale(1.05);
}

/* ==========================================================
   サイドバーメニュー
========================================================== */
.sidebar-menu {
  position: relative;
  /* メタリックシルバーからディープサイバーブルーへの美麗グラデーション */
  background: linear-gradient(135deg,
    hsla(205, 20%, 58%, 1) 0%,
    hsla(210, 30%, 48%, 1) 30%,
    hsla(215, 65%, 38%, 1) 70%,
    hsla(220, 75%, 28%, 1) 100%
  );
  background-size: 300% 300%;
  animation: furnaceFlow 14s ease-in-out infinite alternate;
  padding: 18px 10px; /* 1行に収めるため左右のパディングを14px→10pxに縮小 */
  font-size: 14px;
  width: 100%;
  overflow: hidden;
  border-radius: 0px;
  box-shadow: 
    0 4px 8px hsla(220, 100%, 15%, 0.3),
    inset 0 0 4px hsla(184, 100%, 50%, 0.1);
  border: 1px solid hsla(0, 0%, 100%, 0.25);
  backdrop-filter: blur(8px);
}

/* オーラ・熱ハズレの光層 */
.sidebar-menu::before {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: radial-gradient(circle, hsla(184, 100%, 50%, 0.15) 0%, hsla(0, 0%, 0%, 0) 60%);
  animation: heatHaze 8s ease-in-out infinite alternate;
  pointer-events: none;
  mix-blend-mode: screen;
}

.sidebar-menu ul {
  list-style: none;
  padding-left: 0;
  margin: 0;
  position: relative;
  z-index: 2;
}

/* 子階層（サブナビ）のインジケータライン */
.sidebar-menu ul.sub-nav {
  padding-left: 16px; /* 1行に収めるため左インデントを28px→16pxに縮小 */
  margin-top: 6px;
  margin-bottom: 10px;
  border-left: 1px solid hsla(184, 100%, 60%, 0.3);
}

.sidebar-menu li {
  margin-bottom: 8px;
  position: relative;
  z-index: 2;
}

/* メインリンクの共通設計 */
.sidebar-menu a {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  color: hsla(0, 0%, 100%, 0.9);
  font-weight: bold;
  text-shadow: 0 2px 4px hsla(216, 56%, 14%, 0.4);
  letter-spacing: 0.02em; /* 1行に収めるため文字間隔をわずかにタイトに */
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  width: 100%; /* 横幅いっぱいに広げてクリックしやすく */
}

/* 💎 チューニング：近未来サークルプレイボタン（通常時） */
.sidebar-menu a::before {
  content: '';
  display: inline-block;
  box-sizing: border-box;
  width: 18px; /* 円自体は少しコンパクトに */
  height: 18px;
  margin-right: 6px; /* 1行に収めるため文字との隙間を10px→6pxに凝縮 */
  border: 1.5px solid hsla(0, 0%, 100%, 0.8);
  border-radius: 50%;
  
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M9,6.5l8,5.5l-8,5.5V6.5z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: calc(50%) center;
  background-size: 100%;
  
  flex-shrink: 0; /* 文字が長くなってもアイコンが絶対に潰れないように固定 */
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}

/* ホバー時：テキストのネオン発光効果 */
.sidebar-menu a:hover {
  color: hsla(184, 100%, 50%, 1);
  text-shadow: 
    0 0 8px hsla(184, 100%, 50%, 0.6),
    0 2px 4px hsla(216, 56%, 14%, 0.4);
}

/* ホバー時：アイコンの覚醒・ホログラム発光効果 */
.sidebar-menu a:hover::before {
  border-color: hsla(184, 100%, 50%, 1);
  background-color: hsla(184, 100%, 50%, 0.15);
  box-shadow: 
    0 0 10px hsla(184, 100%, 50%, 0.8),
    inset 0 0 4px hsla(184, 100%, 50%, 0.6);
  /* 三角の色をネオンブルーに書き換え（こちらもサイズ75%を維持） */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%2300f0ff' d='M9,6.5l8,5.5l-8,5.5V6.5z'/%3E%3C/svg%3E");
  transform: scale(1.05);
}

/* 子階層（サブナビ）：テキストカラー＆サイズ調整 */
.sidebar-menu ul.sub-nav a {
  font-size: 12px;
  font-weight: normal;
  color: hsla(211, 42%, 88%, 1);
}

/* 子階層のアイコン非表示設定 */
.sidebar-menu ul.sub-nav a::before {
  display: none;
}

.sidebar-menu ul.sub-nav a:hover::before {
  display: none;
}

.sidebar-menu ul.sub-nav a:hover {
  color: hsla(184, 100%, 50%, 1);
}
/* ==========================================================
    コンテンツ
========================================================== */
#contents{
    display:flex;
    justify-content:space-between;
    padding:20px 15px;
}

.bunki{
	display:block;
	padding:2px 0 2px 33px;
	margin:0 0 2px 12px;
	background: url('images/slate.jpg') no-repeat 8px center;
	font-weight:bold;
}

.bggrad{
	background:url('images/bggrad.gif') repeat-y left;
	padding:10px 5px 10px 30px;
	line-height:2em;
}
/* ==========================================================
    製品
========================================================== */
.seihin {}

.seisha {
	width:400px;
	float:left;
	margin:0px 0px 50px 0px;
}

.seisetsu{
	width:360px;
	float:left;
}

.seisha_b {
	width:300px;
	float:left;
	margin:0px 0px 50px 0px;
}

.seisetsu_b {
	width:450px;
	float:left;
}



.seiname {
	width: 385px;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	margin: 0px 0px 20px 0px;
	padding: 6px 0px;
	border-radius: 5px;
	color: hsla(218, 42%, 18%, 1); /* 文字色もHSLA表記の深めネイビーに変更 */

	/* 元のフォグブルー〜ミントをベースにした青い炎のグラデーション */
	background: linear-gradient(
		135deg,
		hsla(218, 42%, 90%, 1) 0%,
		hsla(200, 60%, 85%, 1) 35%,
		hsla(180, 50%, 88%, 1) 70%,
		hsla(218, 42%, 90%, 1) 100%
	);
	background-size: 200% 200%;

	/* 青い炎の「ゆらぎ」と「発光」アニメーション */
	animation: blueFlameGlow 5s ease-in-out infinite alternate;

	/* 炉の青い熱気を演出するほのかな光（ドロップシャドウ） */
	box-shadow: 0 0 8px hsla(200, 100%, 50%, 0.25);
}

/* --- 青い炎の揺らめきアニメーション --- */
@keyframes blueFlameGlow {
	0% {
		background-position: 0% 0%;
		box-shadow: 0 0 6px hsla(200, 100%, 50%, 0.2);
	}
	50% {
		background-position: 100% 100%;
		box-shadow: 0 0 12px hsla(190, 100%, 50%, 0.45); /* 途中で青い光がフッと強まる */
	}
	100% {
		background-position: 0% 100%;
		box-shadow: 0 0 8px hsla(200, 100%, 50%, 0.3);
	}
}

.seiname.eco{
	font-size:15px;
}

.seibun {
	margin:5px 0px 10px 0px;
}

.seit {
	width:385px;
	border-top:solid 1px;
	font-size:12px;
}

.seil {
	padding: 0 5px;
	width: 100px;
	/* border-left: solid 1px; */
	border-bottom: solid 1px;
	border-right: solid 1px;
	height: auto;
	vertical-align: middle; /* 垂直方向の中央揃えを指定 */
}

/* 5文字以下のとき：5字取り（両端揃え） */
.seil.less5 {
	padding: 0px 15px;
	text-align: justify;
	text-align-last: justify; /* 最終行（＝1行だけの場合）も両端揃えにする */
}

/* 6文字以上のとき：普通の中央揃え */
.seil.more6 {
	text-align: center;
}

.seir {
	padding:0 5px;
	/* border-right:solid 1px; */
	border-bottom:solid 1px;
}

.seic {
	border-bottom:solid 1px;
}

#emerald { color:#409090; }

#kikaku {
	width:750px;
	margin:0px 0px 20px 0px;
	font-size:18px;
	font-weight:bold;
	text-align:center;
}


#kikakuhyou {
	border:#333333 solid 1px;
}

#kikakuhyou td {
	border:#333333 solid 1px;
	padding:0px 5px 0px;
	text-align:center;
}

#kikakuhyou td.ao {
	vertical-align:top;
	background:#cfffff !important;
	padding:0px 10px 0px;
	text-align:center;
}
/* ==========================================================
    製品区切り線
========================================================== */
/* テクノロジー感（HUD/基板風）のある区切り線のスタイル */
.tech-divider {
	/* フレックスボックスで横並び・中央揃え */
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 50px 0; /* 画像に合わせて上下の余白を調整してください */
	width: 100%;
	opacity: 0.9;
}

/* 左右の線（グラデーション） */
.tech-divider::before,
.tech-divider::after {
	content: '';
	flex-grow: 1;
	height: 1px; /* 精密さを出すための細い線 */
	/* サイトの見出し色(青緑系)に合わせたハイテクなグラデーション */
	background: linear-gradient(90deg, transparent 0%, #63b8b6 100%);
}
.tech-divider::after {
	/* 右側の線はグラデーションの向きを反転 */
	background: linear-gradient(270deg, transparent 0%, #63b8b6 100%);
}

/* 中央のTonetsuロゴのスタイル */
.tech-logo {
	height: 30px; /* ロゴの画像の高さに合わせて数値を調整してください */
	margin: 0 24px; /* 左右の線とロゴとの間隔 */
	object-fit: contain;
	/* （任意）ロゴの周りを少しぼんやり光らせてテクノロジー感を出す場合 */
	/* filter: drop-shadow(0 0 6px rgba(99, 184, 182, 0.5)); */
}
/* ==========================================================
    分数
========================================================== */

.fraction /* 分数 */
{}
 .fraction td { padding:2px; }
.numerator /* 分子 */
{
	border-bottom: 1px solid hsla(0,0%,20%,1);
	text-align:center;
	line-height:1;
}
.denominator /* 分母 */
{
	text-align:center;
	line-height:1;
}

/* ==========================================================
    左右カラム
========================================================== */
#left,
#right{
    width:180px;
}
/* ==========================================================
    詳細はこちら
========================================================== */
.detail{
    text-align:right;
    margin-top:5px;
}

.detail a{
    font-size:11px;
    color:hsla(0,0%,27%,1);
}
/* ==========================================================
    中央
========================================================== */
#main{
	width:620px;
}
#main_right{
	width:800px;
}
#main_in{
	padding:0px 10px;
}
/* ==========================================================
    メイン画像
========================================================== */
.mainvisual {
  /* 背景画像の設定 */
  background-image: url(images/souzou2026.png);
  background-repeat: no-repeat;
  background-position: center center; /* 中央寄せ */
  
  /* 横（幅）を100%基準にする */
  background-size: 100% auto;
}

.mainvisual img{
    width:100%;
    display:block;
}
/* ==========================================================
    NEWS
========================================================== */
.news{
    display:flex;
    margin-top:15px;
	border-top:3px solid hsl(180, 13%, 91%);
	border-bottom:3px solid hsl(180, 13%, 91%);
}

.news-logo{
    width:130px;
	padding:10px 0 0 0;
}

.news-logo img{
    display:block;
}

.news-list{
    flex:1;
	height:calc(34px * 3);
	overflow-y:scroll;
}

.news-list li{
    display:flex;
    padding:6px 0;
    border-bottom:1px dotted hsla(0,0%,80%,1);
	list-style:none;
}

.news-date{
    width:110px;
    color:hsla(0,0%,33%,1);
}
/* ==========================================================
    バナー
========================================================== */
.banner{
    margin-top:18px;
}
.banner img{
    display:block;
}
/* ==========================================================
   ページトップ
========================================================== */
.pagetop{
	/* background:hsla(0,100%,50%,1); */
    text-align:right;
    padding:15px 15px 0 0;
	font-size:12px;
	font-weight:bold;
}

.pagetop img{
    vertical-align:middle;
}

.pagetop a{
	display:inline-block;
	transition:0.2s;
	color:hsla(25,0%,20%,1);
	text-decoration:none;
}

.pagetop a:hover{
	color:hsla(25,100%,60%,1);
	text-decoration:none;
}

/* 三角形調整 */
  .triangle-fix {
    display: inline-block;
    line-height: 1;
    font-size: 15px;
    transform: scaleY(0.8);
    transform-origin: center bottom;
  }
/* ==========================================================
    ナビゲーション
========================================================== */
#breadcrumb{
	padding:8px 0px 14px 6px;
	font-size: 11px;
}
/* ==========================================================
    フッター
========================================================== */
#footer{
    margin-top:30px;
    background:url(images/footer_bg.jpg) no-repeat left bottom;
    min-height:140px;
    padding:20px 20px 10px 20px;
}

.footer-inner{
    text-align:right;
    line-height:1.4;
}
/* ==========================================================
    炉アニメーション
========================================================== */
.furnace-bg {
	position: relative;
	background: linear-gradient(135deg,
	hsl(32, 95%, 82%) 0%,
	hsl(42, 65%, 92%) 30%,
	hsl(166, 49%, 72%) 60%,
	hsl(193, 57%, 70%) 80%,
	hsl(220, 65%, 68%) 100%
	/*
	hsl(42, 65%, 92%) 0%,
	hsl(166, 49%, 72%) 35%,
	hsl(193, 57%, 70%) 70%,
	hsl(220, 65%, 68%) 100%
	*/
	);
	background-size: 300% 300%;

	/* なだらかな循環を表現するアニメーション */
	animation: furnaceFlow 16s ease-in-out infinite alternate;
	padding: 0;
	overflow: hidden;
	box-shadow: 0 4px 15px rgba(166, 49, 72, 0.08);
	display: inline-block;
	transition: box-shadow 0.3s ease;
}
.furnace-bg:hover {
	box-shadow: 0 8px 25px rgba(193, 57, 70, 0.15);}/* 透過PNGの背後で、炉の熱対流（気流）のようなやわらかな光のゆらぎ効果を重ねる */
.furnace-bg::before {
	content: '';
	position: absolute;
	top: -50%;
	left: -50%;
	width: 200%;
	height: 200%;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.45) 0%, transparent 70%);
	animation: heatHaze 10s ease-in-out infinite alternate;
	pointer-events: none;mix-blend-mode: overlay;
}
		
.furnace-bg img {
	display: block;
	position: relative;
	z-index: 2; /* 透過部分から背景が綺麗に抜けて見えるよう前面に配置 */
	width: 100%;
	height: auto;
}
/* 炉内の気流の循環運動をエミュレートするキーフレーム */
@keyframes furnaceFlow {
	0% {background-position: 0% 0%;}
	100% {background-position: 100% 100%;}
}
/* 熱によるゆらぎ効果を再現するキーフレーム */
@keyframes heatHaze {
	0% {transform: translate(0, 0) scale(1) rotate(0deg);opacity: 0.3;}
	50% {transform: translate(3%, 6%) scale(1.08) rotate(5deg);opacity: 0.7;}
	100% {transform: translate(-3%, -3%) scale(0.95) rotate(-3deg);opacity: 0.3;}
}

/* ==========================================================
    炉アニメーション（左右反転バージョン）
========================================================== */
.furnace-rev {
	position: relative;
	/* グラデーションの角度を135degから225degに反転 */
	background: linear-gradient(225deg,
	hsl(32, 95%, 82%) 0%,
	hsl(42, 65%, 92%) 30%,
	hsl(166, 49%, 72%) 60%,
	hsl(193, 57%, 70%) 80%,
	hsl(220, 65%, 68%) 100%
	/*
	hsl(42, 65%, 92%) 0%,
	hsl(166, 49%, 72%) 35%,
	hsl(193, 57%, 70%) 70%,
	hsl(220, 65%, 68%) 100%
	*/
	);
	background-size: 300% 300%;

	/* 反転させたアニメーションを適用 */
	animation: furnaceFlowRev 16s ease-in-out infinite alternate;
	padding: 0;
	overflow: hidden;
	box-shadow: 0 4px 15px rgba(166, 49, 72, 0.08);
	display: inline-block;
	transition: box-shadow 0.3s ease;
}
.furnace-rev:hover {
	box-shadow: 0 8px 25px rgba(193, 57, 70, 0.15);
}

/* 透過PNGの背後で、炉の熱対流（気流）のようなやわらかな光のゆらぎ効果を重ねる（反転版） */
.furnace-rev::before {
	content: '';
	position: absolute;
	top: -50%;
	left: -50%;
	width: 200%;
	height: 200%;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.45) 0%, transparent 70%);
	animation: heatHazeRev 10s ease-in-out infinite alternate;
	pointer-events: none;
	mix-blend-mode: overlay;
}
		
.furnace-rev img {
	display: block;
	position: relative;
	z-index: 2; /* 透過部分から背景が綺麗に抜けて見えるよう前面に配置 */
	width: 100%;
	height: auto;
}

/* 炉内の気流の循環運動をエミュレートするキーフレーム（反転版：X軸の開始位置を変更） */
@keyframes furnaceFlowRev {
	0% {background-position: 100% 0%;}
	100% {background-position: 100% 100%;}
}

/* 熱によるゆらぎ効果を再現するキーフレーム（反転版：X軸の移動と回転の向きを反転） */
@keyframes heatHazeRev {
	0% {transform: translate(0, 0) scale(1) rotate(0deg); opacity: 0.3;}
	50% {transform: translate(-3%, 6%) scale(1.08) rotate(-5deg); opacity: 0.7;}
	100% {transform: translate(3%, -3%) scale(0.95) rotate(3deg); opacity: 0.3;}
}
/* ==========================================================
    調整用
========================================================== */
.spacer5 { height:5px; }
.spacer10 { height:10px; }
.spacer20 { height:20px; }
.spacer30 { height:30px; }
.spacer40 { height:40px; }
.spacer50 { height:50px; }
.spacer60 { height:60px; }
.spacer70 { height:70px; }
.spacer80 { height:80px; }
.spacer90 { height:90px; }
.spacer100{ height:100px; }
.spacer200{ height:200px; }

.font_6px{ font-size:6px; }
.font_7px{ font-size:7px; }
.font_8px{ font-size:8px; }
.font_9px{ font-size:9px; }
.font_10px{ font-size:10px; }
.font_11px{ font-size:11px; }
.font_12px{ font-size:12px; }
.font_13px{ font-size:13px; }
.font_14px{ font-size:14px; }
.font_15px{ font-size:15px; }
.font_16px{ font-size:16px; }
.font_17px{ font-size:17px; }
.font_18px{ font-size:18px; }
.font_19px{ font-size:19px; }
.font_20px{ font-size:20px; }
.font_21px{ font-size:21px; }
.font_22px{ font-size:22px; }
.font_23px{ font-size:23px; }
.font_24px{ font-size:24px; }