@charset "utf-8"; 

/* Mainエリア内のデザインを記述する。ただし、各ページ固有のデザインは、各ページのヘッダー内に記述する。 */

/* 見出し＆本文 */
#pagetitle { margin-left:15px; font-size:24px; }

main h1, main h2, main h3, main h4, main h5, main h6, main p { margin:1em 0; padding:0.5em 10px; }



.t01 { font-size:26px; border-bottom:1px dashed #aaa; color:#333; margin:1.6em; font-weight:normal; } 
.t02 { font-size:16px; }
.t03 { font-size:16px; border-bottom:1px dotted #aac; }
.t04 { font-size:14px; font-weight:bold; border-left:4px solid #ccc; padding:0.1em 6px 0.3em; }

.ud { text-decoration: underline; }
/* ブロック */
section { margin:2em 1.5em; padding:1em; background-color:#fff; border:1px solid #aaa; border-radius:6px; box-shadow: 0px 1px 3px #aaa; }

article { margin:2em 1em; padding:1em; background-color:#fff; border:1px solid #aaa; border-radius:4px; box-shadow: 0px 1px 3px #aaa; }

aside { text-align:left; }


/* インライン */
small { font-size:80%; color:#234; }

a { color:#03c; text-decoration:none; transition: all .5s; }
a:hover { color:#36c; }
a img:hover { opacity: 0.8; filter: alpha(opacity=80); }

.R { text-align:right; }
.L { text-align:left; }
.C { text-align:center; }

.red { color:#c00; }

/* リスト */
main ul, main ol { padding:0 2em 0.5em; }

/* 表 */
table { border-collapse: collapse; }
th, td { font-size:14px; }

.tbl01 { border-collapse:collapse; width:95%; margin:1em; border-top: 1px solid #ccc; text-align:center; }
.tbl01 th, .tbl01 td { padding:0.3em 1em; border-bottom:1px solid #ccc; }
.tbl01 th { font-weight:bold; background:#eee; }

.tbl02 { border-collapse:collapse; width:95%; margin:1em; border-top: 1px solid #ccc; }
.tbl02 th, .tbl02 td { padding:0.3em 1em; border-bottom:1px solid #ccc; }
.tbl02 th { font-weight:bold; background:#eee; text-align:left; }

.t_bt { width:10em; text-align:center; }

.bt01 { font-size:14px; background-color:#36a; margin:0.3em; padding:0.3em 1em 0.2em; color:#fff; border-radius:3px; display:inline-block; }
.bt01:hover { background-color:#47a; color:#fff; }

.bt02 { font-size:14px; background-color:#55a32a; margin:0.3em; padding:0.3em 1em 0.2em; color:#fff; border-radius:4px; display:inline-block; }
.bt02:hover { background-color:#6b3; color:#fff; }

.bt03 { font-size:14px; background-color:#a33; margin:0.3em; padding:0.3em 1em 0.2em; color:#fff; border-radius:4px; display:inline-block; }
.bt03:hover { background-color:#b44; color:#fff; }

.message { margin:10em 0; }

.box_t { text-align: left; border-bottom: 1px dotted #aaa; margin:1em auto; padding:0.5em; }
.box_t p { color:#050; font-weight: bold;margin-bottom: 0.5em; }

.box01 { text-align: left; border-bottom: 1px dotted #aaa; margin:1em auto; padding:0.5em; }
.box01 textarea { vertical-align:middle; }
.box01 strong { color:#373; font-weight: bold;margin-bottom: 0.5em; }
.box01 p span { color:#c00;}


/* モニター幅960px以下 */
@media only screen and (max-width:960px) { 

}


/* スマートフォン 横(ランドスケープ) タブレット*/
@media only screen and (max-width:768px) { 
.box01 { width:98%; padding:0; margin:0; }
.box_t { width:95%; }
#m { text-align: left; }
section, article { margin:0.3em; padding:8px; }
}


/* スマートフォン 縦(ポートレート) */
@media only screen and (max-width:480px) { 
}