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

/*---------------------------------------------------------------------------------
COMMON
---------------------------------------------------------------------------------*/

*{
margin:0;
padding:0;
border:0;}

body{
/*color:#453921;*/
margin:0;
padding:0;
color:#6a5b3e;
text-align:center;
font-weight:normal;
font-style:normal;
font-size:normal;
font-family:"メイリオ",Meiryo,Verdana,sans-serif;
background:url("img/bg_body.jpg") 0 0 repeat;
letter-spacing: 0.001em;
}

a{outline:none; color:#ff3300; text-decoration:none;}
a:hover{color:#ff9900; text-decoration:underline;}


/***OTHER***/
#content a.arrow,
#content .arrow a{
background: url("img/arrow.gif") 0 0 no-repeat;
padding-left:30px;
color:#ff9900;
font-weight:600;
border-left:none;}

a.button{
text-indent:-99999px;
display:block;
padding-left:0;}

a.more{
width:175px;
height:45px;
background: url("img/arrow_more.png") 0 0 no-repeat;
float:right;
clear:both;
}


a.class{
width:175px;
height:45px;
background: url("img/arrow_class.png") 0 0 no-repeat;
/*margin-left:190px;*/
margin-left:560px;
}

a.course{
width:190px;
height:45px;
background: url("img/arrow_course.png") 0 0 no-repeat;
margin:0 auto;
}

.pageup		{clear:both; text-align:center;}
.pageup a	{
	background: url("img/arrow_up.png") 0 0 no-repeat;
	display: block;
	height: 45px;
/*
	float:right;
*/
	text-indent: -99999px;
	width: 190px;
	margin:10px auto;}
.pageup a:hover{
	background-position:-200px 0;}






a.button:hover{background-position:-200px 0;}

strong {font-weight:bold;}
em {color:#FF0000; font-style:normal;}
p {margin:10px 0 15px; word-break: break-all;/* height:100%; */}
#content table p {margin:10px 0 0;}

#content img	{border:#decba2 solid 8px; margin-bottom:15px;}
#content p img	{float:right; margin-left:15px;}
#content img.attachment-eyecatch,
#content img.attachment-ec_content {border:none; margin-bottom:10px;}
#content img.thum_img,
#content img.attachment-thumbnail {float:right; margin-left:15px; clear:right;}

#content a img:hover {border:#D5BB86 solid 8px;}
/*
a img:hover	{
opacity: 0.7;
filter:progid:DXImageTransform.Microsoft.Alpha(Enabled=1,Style=0,Opacity=70);
}
*/

hr{
border:none;
border-top:dashed 1px #d9d9d9;
height:1px;
width:100%;
margin:20px 0;
clear:both;
}

table hr{
margin:10px 0;
}

/* FROAT */
.fright	{float:right; margin:0 0 10px 10px;}
.fleft	{float:left; margin:0 10px 10px 0;}
.fcenter{float:none; margin:0 auto; text-align:center; clear:both;}
.cboth{clear:both; /*height:auto;*/ padding:0;}
.tright{text-align:right;}

/*---------------------------------------------------------------------------------
TAG
---------------------------------------------------------------------------------*/
/***TABLE*******************************************************************************************/
#content table{width:735px;clear:both;margin:0 0 15px;clear:both; /*background-color:#decba2;*/}
#content th,#content td{padding:10px 14px; text-align:left;}
#content th{/*background-color:#c2af88;*/ background-color:#c3b089; color:#FFF; btext-align:center; font-weight:bold; white-space: nowrap;}
#content td{/*background-color:#C9C0AF;*/ background-color:#dccdac; vertical-align:top;}
#content th a,#content td a{color:#453921;}
#content th a:hover,#content td a:hover{color:#FF6600;}

#content table.t_class th{
color:#453921;
btext-align:center;
font-weight:bold;
background-color:#C9C0AF;
width:50%;
vertical-align:text-top;}

/***UL OL LIST***********************************************************************************/
#content ul{margin:0 0 10px 20px;}
#content ol{margin:0 0 10px 25px;}
#content dl{margin:0 0 10px 0;}
#content ul,#content dl,#content ol{padding-bottom:5px;}

#content table ul,
#content table ol,
#content table dl{margin-bottom:0;}

#content p ul,#content table ul,
#content p dl,#content table dl,
#content p ol,#content table ol{padding-bottom:0;}

/*#content dl dt {font-weight: 600;}*/

#content dl.link_dl dt{
    float: left;
    padding-bottom: 10px;
    padding-top: 10px;
    width: 250px;}
#content dl.link_dl dd{
	border-bottom: 1px solid #C7C7C7;
	padding: 10px 0 10px 210px;}


/*** STRRAIGHT ************************************************************************************/
#content dl.str {margin:0;}

dl.str dt{
	padding:0 0.7em 0 0;
	margin:8px 0 7px;
	float:left;
	clear:left;
	border-bottom:none;
	font-weight:normal;
	color:#908267;
min-width:4em;
}


dl.str dd {padding:8px 10px 7px 0; border-bottom:#908267 1px solid;}
dl.str dd a{border-left:#86785e 2px solid; padding-left:0.7em;}
dl.str dd a:hover{color:#453921;}

dl.str dd.l3{padding-top:3.6em;}

#content dl.ar {border-top:#ece5d9 1px solid; margin-bottom:30px;}
dl.ar dt {/*color:#6a5b3e; */width:21.5em; border-right:none; background: url("img/icon_dot.gif") 0.4em 0.5em no-repeat; padding-left:1.5em;}
dl.ar dd {border-bottom:#ece5d9 1px solid;}


#content dl.cl {border-top:#908267 1px solid; width:450px; margin-top:10px;}
dl.cl dt {/*color:#6a5b3e; */width:120px; font-weight:600;}
#content dl.cl dd {padding:8px 10px 7px 130px;}
/*
dl.cl dt{width:130px; border-right:none;}
dl.cl dd {width:290px; parrind:0; float:left; border:none;}
*/


dl.sk dt{width:140px; border-right:none;}



/*---------------------------------------------------------------------------------
WRAPPER
---------------------------------------------------------------------------------*/
#wrapper{
width:1020px;
margin:0 auto;
padding:0;
text-align:left;
background:url("img/bg_side.png") 0 0 repeat-y;
}

h1{
text-align:right;
font-weight:normal;
font-size:70%;
padding:10px 0;
}

h1 a{color:#6a5b3e;}

/*---------------------------------------------------------------------------------
SIDE
---------------------------------------------------------------------------------*/
#side{
width:275px;
margin:0;
padding:0;
float:left;
text-align:center;
/*
background:url("img/bg_side.png") 0 0 repeat-y;
*/
}

	#side h2,
	#side ul#nav,
	#side div{margin:10px 30px 20px; clear:both; width:215px;}

	#side h2{
	margin-top:0;
	margin-bottom:40px;
	clear:both;
	text-indent:-99999px;
	}

		#side h2 a{
		display:block;
		width:215px;
		height:190px;
		line-height:190px;
		background:url("img/bg_logo.png") -30px -10px no-repeat;}

		#side h2 a:hover{background-position:-305px -10px;}

		#side ul{text-indent:-99999px; list-style:none;}

			#side ul#nav li{}
			#side ul#nav li#n06{margin-bottom:0;}

				#side ul#nav li a{
				margin-bottom:10px;
				display:block;
				width:215px;
				height:40px;
				line-height:40px;
				background:url("img/bg_nav.png") -30px 0 no-repeat;}


				#side ul#nav li#n01 a{background-position:-30px 0;}
				#side ul#nav li#n02 a{background-position:-30px -50px;}
				#side ul#nav li#n03 a{background-position:-30px -100px; margin-bottom:0;}
				#side ul#nav li#n31 a{background-position:-30px -140px; height:30px; margin-bottom:0;}
				#side ul#nav li#n32 a{background-position:-30px -170px; height:30px; margin-bottom:0;}
				#side ul#nav li#n33 a{background-position:-30px -200px; height:30px;}
				#side ul#nav li#n04 a{background-position:-30px -240px;}
				#side ul#nav li#n05 a{background-position:-30px -290px;}
				#side ul#nav li#n06 a{background-position:-30px -340px; height:60px;}
				#side ul#nav li#n07 a{background-position:-30px -410px; height:60px;}


				#side ul#nav li#n01 a:hover{background-position:-305px 0;}
				#side ul#nav li#n02 a:hover{background-position:-305px -50px;}
				#side ul#nav li#n03 a:hover{background-position:-305px -100px;}
				#side ul#nav li#n31 a:hover{background-position:-305px -140px;}
				#side ul#nav li#n32 a:hover{background-position:-305px -170px;}
				#side ul#nav li#n33 a:hover{background-position:-305px -200px;}
				#side ul#nav li#n04 a:hover{background-position:-305px -240px;}
				#side ul#nav li#n05 a:hover{background-position:-305px -290px;}
				#side ul#nav li#n06 a:hover{background-position:-305px -340px;}
				#side ul#nav li#n07 a:hover{background-position:-305px -410px;}


		#side #sc {background:url("img/bg_sc.png") -30px bottom repeat-y; margin-bottom:20px;}
		#side #sc h3{background:url("img/bg_sc_h2.png") -30px 0 no-repeat; height:55px; text-indent:-99999px; display:block;}
		#side #sc p{font-size:small; text-align:left; margin:0 20px 10px 23px;}
		#side #sc a.sc_detail{
		display:block;
		width:215px;
		height:35px;
		line-height:35px;
		text-indent:-99999px;
		background:url("img/bg_sc_link.png") -30px 0 no-repeat;}

		#side #sc a:hover{background-position:-305px 0;}

		#side img {border:0; margin:0 auto 10px;}
	
			#side ul#bn li{margin-bottom:10px;}

				#side ul#bn li a{
				display:block;
				width:275px;
				height:82px;
				line-height:82px;
				background:url("img/bg_bn.png") -30px 0 no-repeat;}


				#side ul#bn li#b01 a{background-position:-0 0;}
				#side ul#bn li#b02 a{background-position:-0 -90px;}

				#side ul#bn li#b01 a:hover{background-position:-275px 0;}
				#side ul#bn li#b02 a:hover{background-position:-275px -90px;}
		
		
		


/*---------------------------------------------------------------------------------
CONTENTS
---------------------------------------------------------------------------------*/
#main{
/*width:735px;*/
/*height: 100%;*/
margin:0;
padding:20px 0 0 0;
}

.breadcrumbs {
	font-size:70%;
	margin:10px 0;
	padding:5px 10px;
	width:725;
/*	background-color:#efe5d7;*/
	background:url("img/bg_dot.jpg") 0 0 repeat;
}

	#content{width:735px; float:right; margin:0; padding:0; line-height: 1.6em;}

		#content h2{
		font-size:120%;
		font-weight:100;
		height:50px;
		line-height:50px;
		padding-left:35px;
		margin:25px 0 10px;
		color:#453921;
		background:url("img/bg_h2.gif") 0 0 no-repeat;}
		
		#content h2.entry-title,
		#content h2.page-title{margin-top:10px; letter-spacing: -1px;}

		#content h3{
		font-size:100%;
		font-weight:600;
		min-height:30px;
		line-height:30px;
		padding-left:35px;
		background:url("img/bg_h3.gif") 0 0 no-repeat;
		margin:25px 0 5px;
		clear:both;
		}

		#content h3 a{color: #6A5B3E; font-size:100%;}


/*		#content h3 span{
		min-height:30px;
		line-height:30px;
		padding-right:25px;
		background:url("img/bg_h3_span.gif") right bottom no-repeat;
		margin:15px 0 10px;
		_display:inline-block;}
*/
		#content h4{
		/*font-size:120%;
		margin:15px 0 10px;
		padding-right:25px;
		background:url("img/icon_dot.gif") 0.4em 0.5em no-repeat; padding-left:1.5em;
*/}

#content h4 {
font-size:90%;
font-weight:100;
line-height: 130%;
padding: 6px 10px;
margin:15px 0 5px;
background-color: #453921;
color: white;
display: inline-block;
/display:inline;
/zoom: 1;
}

		iframe{margin-bottom:5px;}

		#content strong{
		
		font-size:120%;
		font-weight:600;
		min-height:30px;
		line-height:30px;
		padding-left:25px;
		background:url("img/bg_strong.gif") 0 0 no-repeat;
		margin:5px 4px 5px 4px;}

		#content strong em{
		padding-right:25px;
		background:url("img/bg_em.gif") right bottom no-repeat;
		color:#6a5b3e;}





/*---------------------------------------------------------------------------------
MAIL & ENTRY
---------------------------------------------------------------------------------*/
table.mail th{width:36%;}
table.mail .wpcf7-form-control input{padding:0 5px; font-size:11pt;}
.wpcf7-text{padding:0 5px;}
table.mail .wpcf7-form-control option{margin-right:13px;}
table.mail textarea.wpcf7-form-control{width:98%;}

.transmit {
display: block;
font-size: 100%;
height: 40px;
letter-spacing: 0.2em;
margin: 10px auto;
text-align: center;
width: 150px;}

.transmit .wpcf7-submit{
width:150px;
height:40px;
background:#fff;
margin:0 aute;
cursor: pointer;
font-family: Meiryo,Verdana,sans-serif;
font-style: normal;
font-weight: normal;}

.transmit .wpcf7-submit:hover{background:#C9C0AF;
color: #453921;
}


.wpcf7-form-control-wrap input,
.wpcf7-form-control-wrap textarea {
/*display:block;*/
/*color:#e60012;*/
margin-top:5px;
padding:5px;}

.wpcf7-not-valid-tip-no-ajax{display:block;color:#e60012;}

.wpcf7-list-item{display:block; margin:0; padding:0;}

.wpcf7-mail-sent-ok{
padding:10px;
background-color:#fff;}

/*---------------------------------------------------------------------------------
FOOTER
---------------------------------------------------------------------------------*/					
#footer{
width:1020px;
margin:0 auto;
padding:25px 0 0 285px;
/padding:25px 0 0 140px;
font-size:small;
text-align:center;
clear:both;
}

	#footer #f_nav{padding:10px 10px 15px; line-height:2em; width:715px; background:url("img/bg_foot_dot.jpg") 0 0 repeat-x;}
	#footer #f_nav a{color:#666;}
	#footer #f_nav a:hover{color:#F60;}

	#footer a#up {
	display:block;
	width:190px;
	height:45px;
	margin:0 auto;
	text-indent:-99999px;
	background:url("img/arrow_up.png") 0 0 repeat;
	}

	#footer a#up:hover{
	background-position:-200px 0;
	}


#site-generator{
font-size:small;
text-align:center;
width:735px;
padding:15px 0;}

	#site-generator a{
	color:#333;
	text-decoration:none;}

	#site-generator a:hover{color:#F60;}


/*---------------------------------------------------------------------------------
PAGE
---------------------------------------------------------------------------------*/
.box_main{margin:15px 0;}

.gray		{
		display:block;
		background-color:#ece5d9;
		width:705px;
		padding:15px;
		margin-bottom:10px;
		/*height:100%;*/ overflow: hidden;}
.gray img	{float:right; margin:10px 0 5px 5px;}
/*
.gray span	{font-size:120%; font-weight:700;}
*/

#content .gray h3{
font-size:120%;
font-weight:600;
margin-top:0;
border-left:#86785e 3px solid;
background-image:none;
padding-left:10px;}

#content .gray h4{
margin-top:0;
padding-left:10px;
/display:inline;
/zoom: 1;
/margin-top:10px;}




.gray p		{margin-bottom:0;}
dl.gray		{line-height: 1.7em;}
dl.gray dt	{font-weight:700; float:left;}
dl.gray dd	{margin-left:64px; font-size:12pt;}



#content tr.head th{background-color:#453921;}
.price{white-space: nowrap; width:23%;color:#FF0000;}
#content td.price{text-align:right; vertical-align:center;}
.curri{white-space: nowrap; width:33%;}

#content .img_3 {width:735px; clear:both;}
#content .img_3 img.alignleft,#content .img_3 img.aligncenter{
margin-right:15px;}
#content .img_3 img.alignright{}

#content .noline,
#content .noline:hover{
margin-left:0;
border:none;
float:none;
clear:both;
margin-bottom:0;}

#content .w100 {/*height:100%;*/ min-height:250px;}
#content .w100  img{float:right;}
#content .w460 {width:460px; float:left;}
#content .w320 {width:320px;}
#content .w460 h3{margin-top:0;}

#content .half{width:360px; float:left;}
#content .half h3,
#content .half dl{width:360px; margin-top:15px;}
#content .half dl dt{min-width: 3em;}

#content .mt30{margin-top:30px;}
#content .mb30{margin-bottom:30px;}


#content .mailimg, #content .mailimg:hover{margin-bottom:-2px;}


/******************
NAV
******************/
.wp-pagenavi,
.navigation{
    border-bottom: 1px dotted #999999;
    border-top: 1px dotted #999999;
    clear: both;
    font-size: 80%;
    margin: 0 0 10px;
    padding: 5px 0;
    text-align: center;
}

.nav-previous,.nav-next{width:300px;}
.nav-previous{text-align:left; float:left;}
.nav-next{text-align:right; float:right;}



.wp-pagenavi {text-align:center; margin:20px 0;}
.wp-pagenavi .current{margin:5px 15px;}
.wp-pagenavi a{margin:5px 15px;}
.pages{display:none;}



/* =Images
-------------------------------------------------------------- */
#content .alignleft,
#content p img.alignleft {
	display: inline;
	float: left;
margin-left:0;
margin-right:10px;
}
#content .alignright,
#content p img.alignright {
	display: inline;
	float: right;
margin-right:0;
margin-left:10px;
}
#content p .aligncenter,
#content p img.aligncenter {
	clear: both;
	display: block;
}

#content p img.alignnone{
	float: none;
	margin-left:0;
}

.entry-content{padding-top:5px;}

#dnone{display: none;}

/* =Mobile Responsive (スマホ対応 最終構成案)
-------------------------------------------------------------- */
@media screen and (max-width: 768px) {
    /* --- 全体ラッパー --- */
    #wrapper {
        width: 100%;
        padding: 0 10px;
        box-sizing: border-box;
        background-image: none;
    }
    
    /* --- ヘッダー（ロゴ左・テキスト右の横並び・余白調整版） --- */
    h1 {
        text-align: left;
        margin: 0;
        padding: 0;
        border-bottom: 1px dotted #decba2;
    }
    h1 a {
        display: flex;
        align-items: center;
        text-decoration: none;
        font-size: 19px;
        font-weight: bold;
        color: #6a5b3e;
        line-height: 1.3;
        padding: 10px 0;
    }
    h1 a:before {
        content: "";
        display: block;
        width: 215px;
        height: 190px;
        background: url("img/bg_logo.png") -30px -10px no-repeat;
        transform: scale(0.55);
        transform-origin: left center;
        margin-top: -42px;
        margin-bottom: -42px;
        margin-right: -85px;
        margin-left: -5px;
        flex-shrink: 0;
    }
    h1 a:active:before {
        background-position: -305px -10px;
    }
    
    /* --- メインコンテンツ --- */
    #content {
        width: 100%;
        float: none;
        margin: 0 0 30px 0;
        padding: 0;
    }

    /* --- 見出し（h2）の装飾崩れ・下線消滅・文字自動縮小化の統合修正 --- */
    #content h2 {
        clear: both !important;
        height: 50px !important;      /* PC版と同じ高さを確保して背景画像（下線）を完全に表示 */
        line-height: 50px !important; /* テキストの縦位置を中央に配置 */
        margin-top: 30px;
        margin-bottom: 20px;
        white-space: nowrap;          /* 文字を絶対に折り返さずに1行に固定 */
        
        /* 画面幅に合わせて文字サイズを限界まで自動縮小させる指定（...で切らない） */
        font-size: clamp(9px, 3.4vw, 19px) !important; 
        
        /* 私が誤って消してしまった、本来の背景画像（アイコン＋二重下線）を完全復活 */
        background: url("img/bg_h2.gif") 0 0 no-repeat !important;
        padding-left: 35px !important; /* アイコンが文字と被らないよう左余白を復活 */
        border: none !important;       /* 前回指定した代替案の破線を消去 */
    }

    /* --- 下部メニューエリア（#side） --- */
    #side {
        width: 100%;
        float: none;
        margin: 40px auto 20px;
        padding: 40px 0;
        background-color: #f2ede9;
        border-top: 2px solid #decba2;
        position: relative;
    }
    #side:before {
        content: "－ MENU －";
        display: block;
        font-size: 14px;
        color: #453921;
        margin-bottom: 25px;
        letter-spacing: 0.2em;
        font-weight: bold;
    }
    #side h2, #side ul#nav, #side div {
        width: 215px !important;
        margin-left: auto;
        margin-right: auto;
        display: block !important;
    }

   /* --- フッター --- */
    #footer {
        width: 100%;
        padding: 20px 0 40px;
        box-sizing: border-box;
    }
    #footer #f_nav {
        width: 100%;
        background: none;
        padding: 0 10px;
        box-sizing: border-box;
        font-size: 0; 
        text-align: center;
    }
    #footer #f_nav br {
        display: none;
    }
    #footer #f_nav a {
        font-size: 12px;
        display: inline-block;
        margin: 5px 4px;
        padding: 8px 12px;
        border: 1px solid #decba2;
        border-radius: 4px;
        color: #6a5b3e;
        background-color: #f2ede9;
    }
    #footer #f_nav a#up {
        display: block;
        width: 190px;
        margin: 0 auto 30px;
        padding: 0;
        border: none;
        background-color: transparent;
    }

    /* --- コピーライト（最下部）の文字切れ修正 --- */
    #site-generator {
        width: 100%;
        padding: 10px;
        box-sizing: border-box;
        font-size: 11px;
        line-height: 1.5;
        white-space: normal !important;
        word-wrap: break-word;
    }

    /* --- 画像・テーブル・はみ出し対応 --- */
    #content img, iframe, .breadcrumbs, .gray, .box_main, #content .w460, #content .w320, #content .half {
        max-width: 100% !important;
        width: auto !important;
        height: auto !important;
        float: none !important; /* 強力にfloatを解除 */
    }
    
    /* 本文内の画像（左寄せ・右寄せ・アイキャッチ等）を大きめスマホでも回り込ませず、中央寄せにする */
    #content img, 
    #content p img, 
    #content .attachment-eyecatch {
        display: block !important;
        float: none !important;
        margin: 15px auto !important;
    }
    
    /* 3列以上の比較テーブルの横スクロール設定 */
    #content table:has(tr > *:nth-child(3)) {
        display: block;
        width: 100% !important;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    #content table:has(tr > *:nth-child(3)) tbody { display: table-row-group; }
    #content table:has(tr > *:nth-child(3)) tr { display: table-row; }
    #content table:has(tr > *:nth-child(3)) th,
    #content table:has(tr > *:nth-child(3)) td {
        display: table-cell;
        width: auto !important;
        padding: 10px 14px;
        border: none !important;
    }
    #content table:has(tr > *:nth-child(3)) td { min-width: 240px; }
    #content table:has(tr > *:nth-child(3)) th { min-width: 100px; }

    /* 2列以下のテーブルは縦積みにする設定 */
    #content table:not(:has(tr > *:nth-child(3))), 
    #content table:not(:has(tr > *:nth-child(3))) tbody, 
    #content table:not(:has(tr > *:nth-child(3))) tr, 
    #content table:not(:has(tr > *:nth-child(3))) th, 
    #content table:not(:has(tr > *:nth-child(3))) td {
        display: block;
        width: 100% !important;
    }
    #content table:not(:has(tr > *:nth-child(3))) td { padding-bottom: 15px; }

    /* 押し出されるボタンのリセット */
    a.class { margin-left: 0; float: right; }

    /* --- インフォメーション一覧のレイアウト崩れ修正（画像とテキストの横並び） --- */
    #content .box_main.entry-content {
        display: flex;
        flex-direction: row-reverse;
        justify-content: space-between;
        align-items: flex-start;
    }
    #content .box_main.entry-content > a {
        flex-shrink: 0;
        width: 110px;
        margin-left: 15px;
    }
    #content .box_main.entry-content img.thum_img {
        width: 100% !important;
        height: auto !important;
        margin: 0 !important;
        border-width: 4px !important;
        float: none !important;
    }
    #content .box_main.entry-content .w460 {
        flex-grow: 1;
        width: auto !important;
    }
    #content .box_main.entry-content .w460 h3 {
        margin-top: 0;
        line-height: 1.4;
    }
    #content .box_main.entry-content .w460 a.more {
        margin-top: 10px;
    }

    /* Googleマップのスマホ表示を現代風（16:9の比率）に固定して潰れを防ぐ */
    #content iframe {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 16 / 9;
        margin: 15px 0;
    }
	/* --- リンクページ（dl.link_dl）のスマホ最適化（縦積み化） --- */
    #content dl.link_dl dt {
        float: none !important; /* 左寄せを解除 */
        width: auto !important; /* 横幅の固定を解除 */
        padding-top: 15px !important; /* 上の余白を少し広げて独立感を出す */
        padding-bottom: 5px !important;
        font-weight: bold;
        font-size: 110%; /* リンク名を少しだけ大きくして目立たせる */
    }
    #content dl.link_dl dd {
        padding-left: 0 !important; /* 文字を押し潰していた巨大な左余白をゼロにリセット */
        padding-bottom: 15px !important;
        margin-left: 0 !important;
        line-height: 1.5; /* 説明文の行間を読みやすく調整 */
        /* ※下部の区切り線（border-bottom）はPC版の設定がそのまま生きます */
    }
}