
/* ============================================================
   MTSA 2026 Official Style Sheet (Refined Version)
   ============================================================ */

body {
    font-family: 'Inter', -apple-system, sans-serif;
    margin: 0;
    padding: 0;
    background-color: #f0f2f5; /* 少し落ち着いた背景色 */
    background-image: url("img/bg_page_line.gif");
    background-repeat: repeat;
}

/* ===== 固定メニュー：画面最上部に完全固定 ===== */
.top-nav {
    position: fixed !important;
    top: 0;
    left: 0;
    width: 100% !important;
    z-index: 9999 !important;
    pointer-events: none;
    transform: translateZ(0);
}

.top-nav-inner {
    width: 800px;
    margin: 0 auto;
    /* 背景を砂浜のような明るいサンドグレーに変更（あか抜けポイント） */
    background: #f8f9fa; 
    border: 1px solid #d1d5db;
    /* 上線に深海のようなネイビーを配置 */
    border-top: 3px solid #003366; 
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    pointer-events: auto;
}

.top-nav ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    justify-content: space-between;
    width: 100%;
}

.top-nav li {
    flex: 1;
    text-align: center;
    /* 境界線をより繊細な色に変更 */
    border-right: 1px solid #e5e7eb !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

.top-nav li:last-child {
    border-right: none !important;
}

.top-nav a {
    display: block;
    width: 100%;
    padding: 10px 0; /* 上下に余裕を持たせて高級感を出す */
    text-decoration: none;
    /* 文字色を深みのあるネイビーへ */
    color: #003366; 
    font-size: 14.5px; /* サイズをわずかに抑えて「余白」を作る */
    font-weight: 700;
    font-family: "Times New Roman", Times, serif;
    /* 横の潰しを解除（文字本来の美しさを出す） */
    letter-spacing: 0.01em; 
    transform: scaleX(1); 
    transition: all 0.3s ease;
}

/* ホバー時の挙動を滑らかに */
.top-nav a:hover {
    background-color: #003366; /* 背景がネイビーに */
    color: #ffffff;           /* 文字が白に */
}

/* ===== メインテーブル（コンテンツ） ===== */
table.main-table {
    border-collapse: collapse;
    margin: 60px auto 40px auto; /* メニューの厚みに合わせて調整 */
    box-shadow: 0 10px 25px rgba(0,0,0,0.1);
    background-color: #fff;
    position: relative;
    z-index: 1;
}

/* ===== 本文エリアの装飾 ===== */
.bg-section {
    background: url('img/bg_image.jpg') center center / cover no-repeat;
    vertical-align: top;
}

.content-area {
    padding: 40px 40px; /* 余白を広げて読みやすく */
}

/* 見出し：あえて線を少し太く */
.welcome-title {
    font-size: 26px;
    font-weight: 700;
    color: #003366;
	margin: 0 auto 30px auto; /* 左右をautoにすることで中央へ、下に30pxの余白 */
    border-bottom: 3px solid #003366;
	display: table; /* 文字の長さに合わせて下線を引くため inline-block から変更 */
	text-align: center;
    font-family: "Times New Roman", Times, serif;
}

/* 本文 */
.main-content {
    padding: 0px 50px; /* 余白を広げて読みやすく */
    font-family: "Times New Roman", Times, serif;
    font-size: 19px;
    line-height: 1.5; /* 行間を広げて国際会議らしい風格に */
    color: #1a202c;
    text-align: justify;
}

/* フッター */
.footer-text {
    font-size: 12px;
    color: #718096;
    padding: 40px 0 20px 0;
    text-align: center;
    margin: 0;
}

/* 強調色 */
.deadline-box {
	background-color: #fff4f4;
	border-left: 4px solid #d32f2f;
	padding: 15px;
	margin: 20px 0;
	color: #b71c1c;
	font-weight: 700;
}

	/* 情報Box */
.info-box {
	background-color: #ffffff;
	border: 1px solid #ddd;
	padding: 20px;
	margin-bottom: 20px;
	border-radius: 4px;
}

.committee-section {
	margin-bottom: 40px;
}

.committee-header {
	font-size: 19px;
	font-weight: 700;
	color: #cc0000;
	border-left: 5px solid #cc0000;
	padding-left: 15px;
	margin-bottom: 20px;
}

.member-list {
	list-style: none;
	padding: 0;
	margin: 0 0 20px 0;
}

.member-list li {
	padding: 5px 0 5px 10px;
	border-bottom: 1px dotted #f0f0f0;
	font-size: 14px;
}

.member-list li:last-child {
	border-bottom: none;
}

.role-label {
	font-weight: 700;
	color: #004d40;
	font-style: italic;
	margin: 15px 0 5px 0;
	display: block;
	border-bottom: 1px solid #eee;
}

        /* 郢ｧ�ｹ郢ｧ�ｱ郢ｧ�ｸ郢晢ｽ･郢晢ｽｼ郢晢ｽｫ髯ｦ�ｨ邵ｺ�ｮ郢ｧ�ｹ郢ｧ�ｿ郢ｧ�､郢晢ｽｫ */
        .date-table {
			padding: 0px 60px; /* 余白を広げて読みやすく */
            width: 100%;
            margin-top: 10px;
            border: none;
        }
        .date-table td {
            padding: 15px 10px;
            border-bottom: 1px solid #eee;
            vertical-align: top;
        }
        .date-label {
            font-weight: 600;
            color: #004d40;
            width: 60%;
        }
        .date-value {
            font-weight: 700;
            color: #d32f2f; /* 鬩･蟠趣ｽｦ竏壺�隴鯉ｽ･闔牙�･�ｽ隘搾ｽ､驍会ｽｻ邵ｺ�ｧ陟托ｽｷ髫ｱ�ｿ */
            text-align: right;
            white-space: nowrap;
}

        .category-title {
            font-size: 18px;
            font-weight: 700;
            color: #ffffff;
            background-color: #004d40;
            padding: 8px 15px;
            margin-top: 35px;
            margin-bottom: 15px;
            border-radius: 2px;
            text-align: center;
        }
        .speaker-list { padding: 0 10px; margin-bottom: 40px; text-align: left; }
        .speaker-item { 
            padding: 6px 15px; 
            font-size: 14px; 
            border-bottom: 1px solid #f0f0f0;
            display: flex;
            justify-content: space-between;
        }
        .speaker-name { font-weight: 600; color: #111; }
        .speaker-affil { color: #666; font-style: italic; text-align: right; }

        /* 郢晏｣ｹ�ｽ郢ｧ�ｸ髫募唱�ｽ邵ｺ�ｽ */
        .page-title {
            font-size: 24px;
            font-weight: 700;
            color: #004d40;
            margin-bottom: 25px;
            border-bottom: 2px solid #004d40;
            display: inline-block;
        }

        /* 郢ｧ�ｳ郢晢ｽｳ郢晢ｿｽﾎｦ郢晢ｿｽ縺顔ｹ晢ｽｪ郢ｧ�｢ */
        .content-area {
			padding: 0px 60px; /* 余白を広げて読みやすく */
            font-size: 15px;
        }

        .invitation-section {
            background-color: #f1f8e9;
            border: 1px solid #c5e1a5;
            padding: 20px;
            border-radius: 4px;
            margin-top: 30px;
        }

        .section-title {
            font-weight: 700;
            color: #2e7d32;
            margin-bottom: 10px;
            display: block;
}
