@charset 'UTF-8';

/* ---------------------------------------------------------- basic */

*	{
	margin:0;
	padding:0;
}

html		{
	margin: 0;
	padding: 0;
	}

body	{
	background:url(../images/bg-body.jpg) repeat-y top center #fff;
	font-family: verdana,sans-serif;
	font-size: small;
}

h1, h2, h3, h4, h5, h6	{
	font-weight: normal;
	font-size: small;
	margin: 0;
	padding: 0;
}

table {
   font-size: small;
}

a:link	{
	color:#36f;
}
a:visited	{
	color:#69f;
}
a:hover	{
	color:#c33;
	text-decoration:none;
}


a img	{
	border:0;
}

dl dt	{
	font-weight:bold;
}
dl dd	{
	margin:0.5em 0 1em 2em;
}

p		{
	padding-top:0.5em;
	padding-bottom:1em;
}

blockquote	{
	padding:10px 20px;
	border:1px #eee solid;
	border-left:8px #ccc solid;
}

/* ----------------------------------------------------------header */

#header	{
	width:860px;
	height:100px;
	margin:0 auto;
	padding:0;
	border-bottom:2px #ccc solid;
}
#header:after	{
	content: "";
	clear: both;
    height: 0;
    display: block;
    visibility: hidden;
}

h1	{
	width:600px;
	height:100px;
	float:left;
	font-size: 200%;
}
#headerlink	{
	width:260px;
	height:70px;
	padding-top:30px;
	text-align:right;
	float:right;
}

.logo {
   width: 150px;
   height: 35px;
}

/* ----------------------------------------------------------contents */

#contents, #contentsindex	{
	width:860px;
	margin:0 auto;
	padding:10px 0 0;
	line-height:1.7;
	font-size: 0.9em;/* 約12px */	
}

/* 汎用テキスト枠(広) */
.maintxt	{
	width:770px;
	margin:0 auto;
	padding: 15px 0 0 0;
}
.maintxt:after	{
	content: "";
	clear: both;
    height: 0;
    display: block;
    visibility: hidden;
}
/* 汎用テキスト枠(狭) */
.maintxt2	{
	width:660px;
	margin:0 auto;
	padding:15px 0 0px 0;
}
.maintxt2:after	{
	content: "";
	clear: both;
    height: 0;
    display: block;
    visibility: hidden;
}

#contents h2	{
	text-align:center;
	margin-bottom:20px;
}
#contents h3	{
	text-align:center;
	margin:40px auto 15px;
}

/* フロー */
#flow	{
	width:800px;
	margin:0 auto 20px;
}

.gotop	{
	text-align:right;
	padding-right:20px;
}
/* ---------------------------------------------------------- kifu */

/* 寄付方法選択枠 */
.choice-outer	{
	width:780px;
	margin:0 auto 15px;
	background:url(../images/bg-choice-outer.jpg) no-repeat left bottom;
}
.choice-inner	{/* 内サイズ 730px */
	padding:25px 20px 15px 30px;
	background:url(../images/bg-choice-inner.jpg) no-repeat left top;
}
.choice-inner:after	{
	content: "";
	clear: both;
    height: 0;
    display: block;
    visibility: hidden;
}
.choicedetails	{
	float:left;
	width:520px;
}
h4.choice	{
	margin-bottom:35px;
}
.choicedetails p	{
	padding-top:0;
	padding-bottom:0;
	padding-left:30px;
}

.choicebutton	{
	float:right;
	width:170px;
	padding-top:20px;
}

/* 注意事項 */

ul.type1	{
	list-style-type:none;
	margin-bottom:30px;
}
ul.type1 li	{
	background:url(../images/bg-ultype1.jpg) no-repeat;
	padding:0 0 0 23px;
}

/* ボキンチャンとは */
#about-bkc	{
	width:660px;
	margin:0 auto;
	padding:0 40px 30px;
	border-top:1px #ccc dotted;
}


/* ---------------------------------------------------------- index */

#contentsindex h2	{
	text-align:center;
	margin-bottom:40px;
}
#contentsindex h3	{
	width:770px;
	margin:0 auto ;
	padding:0;
	font-size:   2em;
	font-weight:bold;
}
#contentsindex h4	{/* 背景共通グレー */
	background:url(../images/bg-indexh4-3.jpg) no-repeat top left;
	width:820px;
	height:45px;
	margin:30px auto 20px;
	padding: 0;
	font-size: 1.3em;
	font-weight:bold;
	vertical-align:middle;
}

/* img枠メイン画像 */
.indeximg1	{
	padding:20px 0;
	text-align:center;
}

/* img枠ボタン 左寄せ */
.indeximg2l	{
	padding:20px 0;
}
/* img枠ボタン センタリング */
.indeximg2c	{
	padding:20px 0;
	text-align:center;
}
/* img枠ボタン 右寄せ */
.indeximg2r	{
	padding:20px 0;
	text-align:right;
}

/* 写真枠　左寄せ */
.photo1l	{
	float:left;
	padding:0 20px 20px 0;
}
/* 写真枠　右寄せ */
.photo1r	{
	float:right;
	padding:0 0 20px 20px;
}


/* ----------------------------------------------------------footer */

#footer	{
	clear: both;
	width:840px;
	margin:20px auto 0;
	padding:15px 10px 20px;
	border-top:2px #ccc solid;
	text-align:center;
	line-height:1.6;
	font-size: 0.9em;
}

ul#footerlink	{
	list-style-type:none;
}
ul#footerlink li	{
	display:inline;
	background:url(../images/bg-footerlink.jpg) no-repeat;
	padding:0 10px 0 15px;
}

#footer h3	{
	margin:25px 0 10px;
}

/* ---------------------------------------------------------- 入力テーブル フォーム設定 */
.tb1	{
	width:720px;
	margin:0px auto 20px auto;
	border-collapse: collapse;
}
.tb1 th	{
	padding:10px;
	background:#f5f5f5;
	border-bottom:1px #e0e0e0 solid;
	border-collapse: collapse;
	width:180px;
	line-height:1.3;
}
.tb1 td	{
	padding:10px;
	border-bottom:1px #e0e0e0 solid;
	border-collapse: collapse;
	line-height:2;
}
.tb1 p	{
	padding-top:1em;
	padding-bottom:0.3em;
	font-size:0.9em;
	color:#007;
}
.tbh {
   width:720px;
   margin:0px auto;
   border-collapse: collapse;
}
.tbh th	{
	padding:10px;
	background:#f5f5f5;
	border-bottom:1px #e0e0e0 solid;
	border-collapse: collapse;
	width:180px;
	line-height:1.3;
}
.tbh td	{
	padding:10px;
	border-bottom:1px #e0e0e0 solid;
	border-collapse: collapse;
	line-height:2;
}

.tb2	{
	width: 720px;
	margin:20px auto;
	border-collapse: collapse;
}
.tb2 td	{
	border:1px #e0e0e0 solid;
	padding:10px;
	border-collapse: collapse;
	background:#f5f5f5;
}

.waku {
   border: solid 2px #aa0000;
   padding: 10px;
}

/* ---------------------------------------------------------- 利用上の注意 */

h4.cmt	{
	font-weight:bold;
	border-left: 5px #c33 solid;
	width:700px;
	margin:20px auto 0;
	padding:5px 10px;
}
.tb3	{
	width:660px;
	margin:20px auto;
	border:1px #e0e0e0 solid;
	border-collapse: collapse;
}
.tb3 th	{
	padding:8px 15px 8px 5px;
	background:#f5f5f5;
	border-bottom:1px #e0e0e0 solid;
	border-collapse: collapse;
	width:150px;
	line-height:1.3;
	text-align:right;
}
.tb3 td	{
	padding:8px 5px 8px 15px;
	border-bottom:1px #e0e0e0 solid;
	border-collapse: collapse;
	line-height:1.5;
}

/* ---------------------------------------------------------- 完了画面 */
.cmplt	{
	width:500px;
	border:1px #cccccc solid;
	padding:20px 30px;
	margin:20px auto;
}
.tb4	{
	width:630px;
	margin:20px auto 30px;
}
.tb4 td	{
	padding:5px;
	width:600px;
	text-align: center;
}
/* ---------------------------------------------------------- ポップアップ寄付の方法 */

#ppp	{
	width:530px;
	margin:10px auto 50px;
	line-height:1.5;
	font-size: 0.9em;/* 約12px */	
}

#ppp h3	{
	margin:5px 0 20px 0;
	padding:5px 0 5px 10px;
	border-top:1px #cccccc solid;
	border-bottom:1px #cccccc solid;
}
#ppp h4	{
	padding:0 20px;
	border-bottom:1px #cccccc dashed;
}
.ppptxt	{
	width:460px;
	margin:10px auto 20px;
}

/* ---------------------------------------------------------- common */


.clr	{
	content: "";
	clear: both;
    height: 0;
    display: block;
    visibility: hidden;
}

/* attention 赤字ボールド */
.att01	{
	color:#c33;
	font-weight:bold;
}
/* attention 紺字 */
.att02	{
	color:#009;
}

/* 入力テーブルエラー用 */
.error	{
	backgroundcolor:#fee;
	color:#f00;
}

/* 文字サイズアップ */
.fontup01	{/* 約14px */
	font-size: 1.2em;
}
.fontup02	{/* 約16px */
	font-size: 1.3em;
}

.mb15	{
	margin-bottom:15px;
}
.mb30	{
	margin-bottom:30px;
}
.ml30	{
	margin-left:30px;
}
.ct	{
	text-align:center;
}
.rt	{
		text-align:right;
}

.pc {
   display: initial;
}
.sp {
   display: none;
}
.pc_tr {
   display: table-row;
}
.sp_tr {
   display: none;
}


/* -- input type=number の幅指定 --*/
.inp_normal {
   width: 10em;
}

.zipcode {
   width: 4em;
}
.tel {
   width: 6em;
}

.ymd {
   width: 4em;
}

.inp_kingaku {
   width: 8em;
}
.inp_unit {
   width: 5em;
}
.inp_kin_expnp_20 {
   width: 4em;
}
.inp_cnum {
   width: 16em;
}
.inp_sec {
   width: 4em;
}


/* 事前登録画面 */
.regHr {
   width: 100%;
   border-top: 1px solid #8c8b8b;
}

.regTitle {
   font-size: 2em;
   font-weight: bold;
   text-align: center;
   margin: 10px auto;
}

.regDesc {
   width: 70%;
   font-size: small;
   font-weight: normal;
   margin: 10px auto;
}

.regTable {
   width 80%;
   margin: 20px auto;
   border: 1px solid #aaa;
   border-spacing: 0;
}

.regTable td,th {
   border: 1px solid #aaa;
   padding: 0 10px;
}

input.registEmail {
   width: 90%;
}

.registBtn {
    margin: 0 auto;
    width:  50%;
    height: 40px;
    display: table;
    background-color: #E3E3E3;
    border: 1px solid #000;
    border-radius: 5px;
    text-align: center;
    vertical-align: middle;
}
/* マウスオーバー時のカラー */
.registBtn:hover {
    background-color: #FCB2F3;
} 
/* リンク領域のスタイル */
.registBtn-a {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
}
.registBtn-a:a {
    color: #000;
    text-decoration: none;
}
.registBtn-a:hover {
    color: #000;
    text-decoration: none;
}
.registBtn-a:visited {
    color: #000;
    text-decoration: none;
}

.registError {
   color: #f44;
}
