/* CSS Document */

/*Šî–{Žw’è*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
    background: none repeat scroll 0 0 rgba(0, 0, 0, 0);
    border: 0 none;
    font-size: 100%;
	font-family:"‚l‚r ‚oƒSƒVƒbƒN","•½¬ŠpƒSƒVƒbƒN",sans-serif;
    margin: 0;
    outline: 0 none;
    padding: 0;
    vertical-align: baseline;
}

/*‰æ‘œŽw’è*/
img{ border: none; max-width: 100%; height: auto; }
a img { border: none; }

/* ƒŠƒ“ƒNFiƒy[ƒW‘S‘Ìj */
a { color: #0000ff; text-decoration: underline; }
a:hover { color: #ff0000; text-decoration: none; }
hr{ color:#CCCCCC; margin: 10px 20px; }

/*•¶Žš‘•ü*/
.red { color: #ff0000; }
.blue { color: #0000cc; }
.orange { color: #FF9900; }
.green { color: #00CC33; }
.light_b { color: #33CCFF; }
.b { font-weight: bold; }
.xx-small { font-size:58%; }
.x-small { font-size:69%; }
.small { font-size:83%; }
.large { font-size:120%; }
.x-large { font-size:144%; }
.xx-large { font-size:172%; }
.yline { background: #ffff00; }
.link_r { text-align: right; margin-right:10px; }
#content .to-center {text-align:center;}
#content .to-right {text-align:right;}
.float-right { margin-bottom:10px; margin-left:10px; float:right; display:inline; }
.float-left { margin-bottom:10px; margin-right:10px; float:left; display:inline; }

/*ƒRƒ“ƒeƒ“ƒcŽw’è*/
body {
	text-align: center;
	font-size:16px;
	font-family:'ƒqƒ‰ƒMƒmŠpƒS Pro W3','Hiragino Kaku Gothic Pro','ƒƒCƒŠƒI',	Meiryo,'‚l‚r ‚oƒSƒVƒbƒN', sans-serif;
	background-image: url(img/body_bg.gif);
	background-repeat: repeat;
	margin-right: auto;
	margin-left: auto;
    color: #333;
}

.sp_only { display: none; }

@media screen and (min-width: 641px){
/* PC—pƒXƒ^ƒCƒ‹ */
.img_l{ float:left; background:#fff; margin: 0 10px 0 15px; padding: 0 10px 5px 15px; }
.img_r{ float:right; padding-left:10px; margin: 0 0 0 10px; }

#wrapper{ width:820px; background-image: url(img/bg.gif); margin: 0 auto; padding: 0px; box-shadow: 0 0 10px rgba(0,0,0,0.1); }

#header{ width:800px; margin:0 auto; position: relative; }
#header a { text-decoration: none; }
#head_img{ 
    position: relative; 
    border-bottom:4px solid #336699; 
    margin-bottom:30px;
    height: 300px;
    overflow: hidden;
}
#head_img img { 
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
h1{
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0;
	padding: 15px 20px;
	background-color: rgba(0, 0, 0, 0.6);
	color: #FFFFFF;
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	line-height: 1.4;
	text-shadow: 1px 1px 3px #000;
	width: auto;
}

h2{ height: 45px; background: url(img/h2.gif); line-height: 45px; font-size: 22px; font-weight:bold; clear:both; color: #FFFFFF; text-indent: 1.5em; margin: 1px 1px 20px 1px; text-align: left; }
h3{ line-height: 1.5; font-size: 20px; font-weight:bold; border-bottom: 2px solid #316AC5; margin: 25px 15px 15px; padding: 5px 15px; background: #f0f5fa; }
#content{ width:760px; margin: 0 auto; padding: 0 20px; text-align: left; }
.inner{ margin: 10px 15px 30px 15px; border: 1px solid #336699; padding: 15px; background: #fff; border-radius: 5px; }
.inner p{ margin:0 0 15px; font-size: 16px; line-height: 1.8; text-align:justify; }
.inner p:last-child { margin-bottom: 0; }
#footer{ text-align: center; clear: both; overflow:hidden; }
#footer p { margin: 15px 30px; text-align: center; font-size: 14px; }
address { font-style: normal; color: #FFFFFF; text-align: center; display: block; background: #336699; font-size: 12px; margin: 30px auto 0px auto; padding: 10px 0px; width: 800px; }
#space{ margin: 0 15px 15px; padding:15px; font-size:14px; border-top:1px #ccc solid; clear:both; text-align: left; background: #f9f9f9; border-radius: 5px; line-height: 1.7; }
.bt_c{ text-align:center; clear:both; margin: 20px auto; }
.bt_c a img:hover { opacity: 0.8; }
.c_both{ clear:both;}

/* ¥¥¥ ‰æ‘œ‘}“ü‚É”º‚¤’Ç‰ÁƒXƒ^ƒCƒ‹ ¥¥¥ */
.recommend_box { 
    border: 1px solid #ddd; 
    padding: 15px; 
    margin-top: 20px;
    border-radius: 5px; 
    background: #fafafa;
    display: flex; /* ‰¡•À‚ÑƒŒƒCƒAƒEƒg */
    align-items: center; /* ’†‰›‘µ‚¦i‚’¼•ûŒüj */
    gap: 20px; /* ‰æ‘œ‚ÆƒeƒLƒXƒg‚ÌŠÔŠu */
}
.recommend_box:first-of-type { margin-top: 0; }
.recommend_img {
    flex: 0 0 200px; /* ‰æ‘œ‚Ì•‚ð200px‚ÉŒÅ’è */
}
.recommend_img img {
    border-radius: 5px;
    border: 1px solid #eee;
}
.recommend_text {
    flex: 1; /* Žc‚è‚Ì•‚ð‚·‚×‚ÄŽg—p */
}
.recommend_text h4 { font-size: 18px; margin-bottom: 10px; color: #316AC5; }
.recommend_text p { font-size: 15