@charset "UTF-8";


/* common
====================================================================================================================================== */
/*非表示*/
.none { display:none !important; }

/*スマホ・PC振り分け*/
.sp_off { }
.sp { display:none!important; }

img { vertical-align:bottom; max-width:100%; height:auto; }
/*左寄せ・右寄せ対策*/
img.left_align_img { margin-right:15px; }
img.right_align_img { margin-left:15px; }

iframe { max-width:100%; }

/*sns list*/
.sns_box { overflow:hidden; line-height:1; font-size:0; }
.sns_box li { float:right; margin:0 0 0 10px; }
.sns_box li.fb { /*width:110px;*/ }
:root *> .sns_box li.fb { width:106px; }
.sns_box li.twi { margin:0; }
.sns_box li.plus { }
.sns_box li.line { }

/*画像背景のボタン*/
.bg_img_btn a, a.bg_img_btn { display:block; background:no-repeat; text-indent:100%; white-space:nowrap; overflow:hidden; }

/*center button list*/
.btn_center_box { clear:both; overflow:hidden; width:100%; margin:0 0 10px; }
.btn_center_box:after { content: "."; display: block;  clear: both; height: 0; visibility: hidden; }
.btn_center_box ul { position:relative; left:50%; float:left; margin:0; padding:0; overflow:visible; list-style:none; list-style-position:inside; }
.btn_center_box ul:after { content: "."; display: block;  clear: both; height: 0; visibility: hidden; }
.btn_center_box li { position:relative; left:-50%; float:left; list-style:none; display:inline; }
.btn_center_box li:first-child { margin:0; }
.btn_center_box li a { display:block; margin:5px 10px; }

/*list*/
ul { background:none; list-style-type: disc; list-style-position:outside; padding:0 0 0 1.2em; margin-bottom:1em; }
ol { background:none; list-style-type:decimal; list-style-position:outside; overflow:hidden; padding:0 0 0 1.6em; margin-bottom:1em; }
li { }
ul.plane, ol.plane { list-style-type:none!important; padding:0; }

/*tab*/
#contents .tab{overflow:hidden; padding:0; margin:0; list-style:none;}
#contents .tab li{background:#ccc; padding:5px 25px; margin:0; float:left; margin-right:1px;}
#contents .tab li.select{background:#eee;}
#contents .tab_content {overflow:hidden; padding:0; margin:0; list-style:none;}
#contents .tab_content li{background:#eee; padding:20px; margin:0;}
#contents .hide {display:none;}

/*news list*/
#contents .article_list { padding:0; }
#contents .article_list li { overflow:hidden; padding:10px 10px 8px; margin:0; border-bottom:dotted 1px #999; }
.article_list li:after { content: "."; display: block;  clear: both; height: 0; visibility: hidden; }
.article_list .date { float:left; width:100px; font-size:0.9em; }
.article_list .title { float:left; width:100%; margin-left:-100px; }
.article_list .title a { display:block; margin-left:100px; }

/*画像で見出しを作る用（スタイルを強制リセット）*/
h1.plane, h2.plane, h3.plane, h4.plane, h5.plane { background:none!important; border:none!important; padding-left:0!important; padding-right:0!important; padding-top:!important; }
h1.plane:after, h2.plane:after, h3.plane:after, h4.plane:after, h5.plane:after { display:none!important; }
h1.plane img,h2.plane img, h3.plane img, h4.plane img, h5.plane img { margin:0; }

/*adjust*/
.clear { clear:both; }
.ma0 { margin:0!important; }
.mab0 { margin-bottom:0!important; }
.mab5 { margin-bottom:5px!important; }
.mab10 { margin-bottom:10px!important; }
.mab15 { margin-bottom:15px!important; }
.mab20 { margin-bottom:20px!important; }
.mab30 { margin-bottom:30px!important; }
.mab40 { margin-bottom:40px!important; }
.mab50 { margin-bottom:50px!important; }
.mat0 { margin-top:0!important; }
.mat5 { margin-top:5px!important; }
.mat10 { margin-top:10px!important; }
.mat20 { margin-top:20px!important; }
.mat30 { margin-top:30px!important; }
.mat-10 { margin-top:-10px!important; }
.mat-20 { margin-top:-20px!important; }
.mat-30 { margin-top:-30px!important; }
.mar10 { margin-right:10px!important; }
.mar20 { margin-right:20px!important; }
.mal10 { margin-left:10px!important; }
.mar20 { margin-left:20px!important; }

/*font size*/
.font_xs02 { font-size:9px!important; }/*21px*/
.font_xs { font-size:0.75em; }
.font_sm { font-size:0.88em; }/*14px*/
.font_la { font-size:1.13em; }/*18px*/
.font_xl { font-size:1.5em; }/*21px*/
.font_normal { font-weight:normal!important; }
.font_bold { font-weight:bold!important; }
.text_center { text-align:center!important; }
.text_right { text-align:right!important; }
.text_left { text-align:left!important; }
.font_0 { font-size:0; }

/*kerning*/
.kerning0 { letter-spacing:0; }
.kerning { letter-spacing:-0.05em; }
.kerning01 { letter-spacing:-0.1em; }
.kerning02 { letter-spacing:-0.25em; }
.kerning03 { letter-spacing:-0.5em; }
.kerning_plus { letter-spacing:0.25em; }
.font_plus { font-size:1.07em; }

/*line height*/
.lineheight_min { line-height:1.3!important; }

/*letter space*/
.letter { letter-spacing:0.1em; }

/*space*/
.word_space { letter-spacing:0.1em; }

/*float box*/
.fl_box { float:left; }
.fr_box { float:right; }
.clear { clear:both; }

/*img float*/
.img_left { float:left; margin-right:20px; }
.img_right { float:right; margin-left:20px; }



/* 文章枠用CSS
====================================================================================================================================== */
p { margin-bottom:1em; }
#contents .list_box p { margin-bottom:0; }
#contents .list_box img { max-width:none; }

/*文字回り込み画像・索引のアイコン画像のマージンをリセット*/
/*#contents .img_box img { margin:0; }*/

/*スタンダード（画像右／左寄せ）*/
.common_box { overflow:visible; }
.common_box:after { content: "."; display: block;  clear: both; height: 0; visibility: hidden; }
.common_box .img_box { float:left; margin-right:20px; max-width:40%; width:auto; font-size:12px; line-height:1.7; }
.common_box .img_box img { }
.common_box .img_box.auto_width img { width:auto; }
.common_box .text_box { /*float:left;*/ display:inline; overflow:hidden; }
/*右*/
.common_box.right .img_box { float:right; margin-right:0; margin-left:20px; }
.page_in .common_box.right .img_box { margin-right:10px; }

/*画像2つ*/
.common_box02 .img_box, .common_box02 figure { overflow:hidden; }
#contents .common_box02 .img_box img, #contents .common_box02 figure img { float:left; width:50%; margin-bottom:15px; }

/*3列+コメント枠*/
.common_box03 { line-height:1.5; overflow:hidden; }
.common_box03:after { content: "."; display: block;  clear: both; height: 0; visibility: hidden; }
.common_box03 .box, .common_box03 a, .box_3column { display:block; border:solid 1px #ddd; border-top:none; border-left:none; width:33.3333%; float:left; margin:0; }
.common_box03 .box.top, .common_box03 a.top, .box_3column.top { border-top:solid 1px #ddd; }
.common_box03 .box.first, .common_box03 a.first, .box_3column.first { border-left:solid 1px #ddd; }
.common_box03 figure, #contents .common_box03 .img_box, .box_3column figure { margin:20px; overflow:hidden; text-align:center; }
/*縦基準*/
/*.common_box03 img { width:auto; max-width:none; max-height:142px; margin:0 auto; }*/
/*横基準*/
.common_box03 figure, .common_box03 .img_box, .box_3column figure { background:#eee; max-height:133px; }
.common_box03 img, .box_3column img { max-width:100%; height:auto; max-height:110%; }

#contents .common_box03 h3, #contents .common_box03 .tit, .box_3column .tit { display:block; text-align:center; font-size:1.13em; margin:0 20px 10px; letter-spacing:0.08em; }
#contents .common_box03 p, #contents .common_box03 span, .box_3column p { display:block; margin:0 20px 20px; font-size:0.75em; }
.common_box03 a:hover { background:#eee; text-decoration:none; }
.common_box03 a:hover img { opacity:0.8; }

/*3列+コメント枠（アンカー中に入れた場合）*/
.common_box03 .link:hover, .box_3column:hover { background:#eee; cursor:pointer; }
.common_box03 .link a, .box_3column a { display:block; border:none; width:100%; float:none; color:#60bce8; }
.box_3column a:hover { text-decoration:none; }

/*table*/
table { width:100%; margin:0 0 15px; padding:0; font-size:1em; border-collapse:collapse; zoom:1; }
table tr { }
table th { background:#eee; border:solid 1px #ccc; font-weight:bold; white-space:nowrap; vertical-align:top; padding:10px; }
table td { padding:10px; border:solid 1px #ccc; vertical-align:top; }
table caption { margin:0 0 5px; font-weight:bold; font-size:1.1em; }
table thead th, table thead td { background:#222; padding-top:5px; padding-bottom:5px; color:#fff; font-size:0.9em; text-align:center; font-weight:normal; }

/* form table */
table.table_form {
  width: 700px;
  margin: 0 auto;
}
table.table_form th, table.table_form td {
  border: 0;
  background: no-repeat;
	padding: 0 0 0.2em;
  display: block;
	white-space: normal;
}
table.table_form td {
	padding: 0 0 1.5em;
}

input[type="text"], input[type="tel"], input[type="email"], textarea {
	width: 20em;
  font-size: 1em;
	padding: 0.1em 0.3em;
}
textarea {
	width: 100%;
}
input[type="radio"] {
  margin-left: 1em;
	width: 1.3em;
  height: 1.3em;
}
input[type="radio"]:first-child {
  margin-left: 0;
}
.required {
  display: inline-block;
  font-size: 0.7em;
  font-weight: normal;
  background: #d44;
  color: #fff;
  padding: 0.1em 0.4em;
  line-height: 1.4;
  margin-left: 0.7em;
}



/* button */
.button_area {
  margin-bottom: 3em;
}
.btn {
  background: #37600e;
  color: #fff;
  border: 0;
  padding: 0.5em 1.2em;
  font-weight: bold;
  font-size: 1.2em;
  border-radius: 8px;
  line-height: 1.5;
	cursor: pointer;
}
.btn_back {
  background: #aaa;
  font-weight: normal;
  font-size: 0.95em;
  margin-right: 0.5em;
}


