@charset "UTF-8";

/********** CSS reset **********/

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,blockquote,th,td { 
	margin:0;
	padding:0;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}
fieldset,img { 
	border:0;
}
address,caption,cite,code,dfn,em,th,var {
	font-style:normal;
	font-weight:normal;
}
ol,ul {
	list-style:none;
}
caption,th {
	text-align:left;
}
h1,h2,h3,h4,h5,h6 {
	font-size:100%;
	font-weight:normal;
}
q:before,q:after {
	content:'';
}
abbr,acronym {
	border:0;
}


/********** BASIC **********/

html, body {
	font-size: 10.5pt;
	line-height: 14pt;
	background-color: #FFFFEE;
	color: #333;
	margin-top: 0px;
}

li {
	list-style-type: none;
}

img {
	border: 0;
	vertical-align: bottom;
}

a {
	color:#0066CC;
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

h1,h2,h3,h4,h5,h6 {
	margin: 0;
}


/********** wire frame **********/

div#top {
	width:1012px;
	margin:0 auto;
}

div#header {
   position:relative;
}

#menu {
	overflow:hidden;
	margin-top: 7px;
}

div#contents {
	clear: both;
	margin-top: 7px;
}

div#left {
	float: left;
	width: 746px;
	margin-bottom:100px;
}

div#wide {
	clear: both;
	width: 1012px;
	margin-top: 7px;
}

#image {
    height: 244px;
    background: url(../parts/image_back.gif) no-repeat;
}

#image2 {
	padding: 5px 5px 5px 5px;
	background-color: #F00;
	color: #FFF;
	font-size: 16pt;
	line-height: 40px;
	text-align: center;
	font-weight: bold;
	font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
}

#osirase {
	margin-top: 7px;
	background-color: #FFF;
	border-bottom: solid 1px #009;
	border-left: solid 1px #009;
	border-right: solid 1px #009;
}

div#right {
	float: right;
	width:252px;
}

div#download {
	background-color: #FFF;
	border-bottom: solid 1px #009;
	border-left: solid 1px #009;
	border-right: solid 1px #009;
}

#download2 {
	margin: 20px 18px 20px 18px;
}

#download3 {
	margin: 20px 18px 20px 18px;
}

#download3 p {
	margin-top: 5px;
}

div#right .block {
	margin-top: 7px;
	background-color: #FFF;
	border-bottom: solid 1px #009;
	border-left: solid 1px #009;
	border-right: solid 1px #009;
}

div#right .blockin {
	margin: 20px 18px 20px 18px;
}

.mailsize {
	font-size: 11pt!important;
}


div#sanka {
	margin-top: 7px;
	background-color: #FFF;
	border-bottom: solid 1px #009;
	border-left: solid 1px #009;
	border-right: solid 1px #009;
}

div#counter {
	margin-top: 14px;
	font-size: 8pt;
}

#yotei {
	background-color: #FFF;
	border: solid 1px #009;
}

#yotei_tab {
	overflow: hidden;
	height: 32px;
}

#yotei_contents {
	margin: 20px 10px 10px 10px;
	min-height:300px;
}

#toiawase {
	overflow:hidden;
	padding:10px;
	min-height:1067px;
	background-color: #FFF;
	border: solid 1px #009;
}

#kouhakusen {
	overflow:hidden;
	padding:20px 20px 50px;
	background-color: #FFF;
	border: solid 1px #009;
}

#enkaku {
	overflow:hidden;
	padding:10px;
	background-color: #FFF;
	border: solid 1px #009;
}


#enkaku_left {
    float: left;
    width: 380px;
}

#enkaku_left2 {
    float: left;
    width: 380px;
}

#enkaku_right {
    float: right;
}

#enkaku_right2 {
    float: right;
    width: 200px;
}

#kdownload {
	background-color: #FFF;
	border: solid 1px #009;
}

#kdownload_tab {
	overflow: hidden;
	height: 32px;
}

#kdownload_contents {
	margin: 20px 10px 10px 40px;
	min-height:300px
}

#hiyou {
	padding: 20px 10px 10px 40px;
	min-height:300px;
	border: solid 1px #009;
	background-color: #FFF;
}

#taiken {
	padding: 0 10px 30px;
	background-color: #FFF;
	border: solid 1px #009;
}

#taikai {
	background-color: #FFF;
	border: solid 1px #009;
}

#taikai_tab {
	overflow: hidden;
	height: 32px;
}

#taikai_ctr_tab {
	overflow: hidden;
	height: 32px;
}

#taikai_ktr_tab {
	overflow: hidden;
	height: 32px;
}

#taikai_kdr_tab {
	overflow: hidden;
	height: 32px;
}

#taikai_contents {
	margin: 20px 10px 10px 10px;
	min-height:300px;
}

.tbl_taikai {
	width:100%;
	margin-bottom:20px!important;
}

.tbl_taiken {
	width:100%;
	margin-bottom:20px!important;
}

.tbl_taiken th {
    border: 1px solid #bbb;
    padding: 5px 5px 5px 5px;
	background-color: #EEE;
	text-align:center;
}

.tbl_taiken th.school {
	background-color: #FFCEF5;
}
.tbl_taiken td {
    border: 1px solid #bbb;
    padding: 5px 5px 5px 5px;
}


#sinsakai {
	padding:15px;
	border: solid 1px #009;
}

#sanka_main {
	margin: 10px 10px 10px 10px;
}


/********** tag **********/

/********** div#menu **********/

#menu li {
	float: left;
	position: relative;
	z-index: 3;
}

/*
#menu li a {
	background: url(../parts/menu_new/menu.jpg) left top no-repeat;
	display: -moz-inline-box;
	display: inline-block;
}

#menu li#menu_yotei a {
	background-position: -80px 0;
}

#menu li#menu_taikai a {
	background-position: -202px 0;
}

#menu li#menu_sinsakai a {
	background-position: -324px 0;
}

#menu li#menu_taiken a {
	background-position: -456px 0;
}

#menu li#menu_kouhakusen a {
	background-position: -580px 0;
}

#menu li#menu_enkaku a {
	background-position: -800px 0;
}

#menu li#menu_toiawase a {
	background-position: -882px 0;
}
*/

#menu li a {
	background: url(../parts/menu/menu.jpg) left top no-repeat;
	display: -moz-inline-box;
	display: inline-block;
}

#menu li#menu_yotei a {
	background-position: -100px 0;
}

#menu li#menu_taikai a {
	background-position: -232px 0;
}

#menu li#menu_sinsakai a {
	background-position: -364px 0;
}

#menu li#menu_taiken a {
	background-position: -496px 0;
}

#menu li#menu_taiikusai a {
	background-position: -628px 0;
}

#menu li#menu_enkaku a {
	background-position: -758px 0;
}

#menu li#menu_toiawase a {
	background-position: -860px 0;
}


#menu li#menu li a:hover {
	position: static;
}

#menu li a:hover img ,
#menu li.current a img {
	position: relative;
	z-index: -1;
}

/********** div#image **********/

#image img {
    padding: 7px 0 0 7px;
}

/********** div#osirase **********/

#osirase table {
    border-collapse: collapse;
    margin: 0 0 20px 10px;
}

.top_td {
    vertical-align: top;
    padding: 10px 10px 10px 5px;
    width: 50px;
    border-bottom: 1px dotted #bbb;
}
.top_td2 {
    vertical-align: top;
    padding: 10px 5px 10px 5px;
    width: 615px;
    border-bottom: 1px dotted #bbb;
}

/********** div#sanka **********/

#sanka ul {
    margin: 0;
    padding: 10px 0 10px 20px;
}

/********** div#counter **********/

#counter img {
    vertical-align: text-bottom;
}

/********** #yotei_tab **********/

#yotei_tab li {
	float: left;
	width: 20%;
	height: 32px;
	margin: 1 0 0 0px;
	line-height: 32px;
	text-align: center;
}

#yotei_tab li a {
	display: block;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-image: url(../parts/tab_yotei_ac1.jpg);
}

#yotei_tab li.current a {
	background-position: 100% 100%;
}

.nenkan_table {
	width:100%;
	margin-top: 10px;
	border-collapse: collapse;
}

.nenkan_table td {
	border: 1px solid #bbb;
	padding: 5px 5px 5px 5px;
}

.nenkan_table th {
	border: 1px solid #bbb;
	background-color: #eee;
	padding: 5px 5px 5px 5px;
	text-align: center;
	font-weight: normal;
}

.nenkan_table .mitei {
	color: #999;
}



/********** div#enkaku **********/

.enkaku_td_g {
    width: 60px;
    border: 1px solid #bbb;
    background-color: #eee;
    padding: 5px 5px 5px 5px;
    vertical-align: top;
}

.enkaku_td {
    width: 90px;
    border: 1px solid #bbb;
    padding: 5px 5px 5px 5px;
    vertical-align: top;
}

.enkaku_td2 {
    padding: 5px 5px 5px 5px;
    vertical-align: top;
}

/********** #kdownload_tab **********/

#kdownload_tab li {
	float: left;
	width: 20%;
	height: 32px;
	margin: 1 0 0 0px;
	line-height: 32px;
	text-align: center;
}

#kdownload_tab li a {
	display: block;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-image: url(../parts/tab_yotei_ac1.jpg);
}

#kdownload_tab li.current a {
	background-position: 100% 100%;
}

/********** #taikai_tab **********/

#taikai_tab li {
	float: left;
	width: 25%;
	height: 32px;
	margin: 1 0 0 0px;
	line-height: 32px;
	text-align: center;
}

#taikai_tab li a {
	display: block;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-image: url(../parts/tab_yotei_ac1.jpg);
}

#taikai_tab li.current a {
	background-position: 100% 100%;
}

/********** #taikai_ctr_tab **********/

#taikai_ctr_tab li {
	float: left;
	width: 25%;
	height: 32px;
	margin: 1 0 0 0px;
	line-height: 32px;
	text-align: center;
}

#taikai_ctr_tab li a {
	display: block;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-image: url(../parts/tab_taikai.jpg);
}

#taikai_ctr_tab li.current a {
	background-position: 100% 100%;
}

/********** taikai_ktr_tab **********/

#taikai_ktr_tab li {
	float: left;
	width: 25%;
	height: 32px;
	margin: 1 0 0 0px;
	line-height: 32px;
	text-align: center;
}

#taikai_ktr_tab li a {
	display: block;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-image: url(../parts/tab_taikai.jpg);
}

#taikai_ktr_tab li.current a {
	background-position: 100% 100%;
}

/********** #taikai_kdr_tab **********/

#taikai_kdr_tab li {
	float: left;
	width: 248px;
	height: 32px;
	margin: 1 0 0 0px;
	line-height: 32px;
	text-align: center;
}

#taikai_kdr_tab li a {
	display: block;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-image: url(../parts/tab_taikai.jpg);
}

#taikai_kdr_tab li.current a {
	background-position: 100% 100%;
}

/********** div#taikai **********/

#taikai table {
    border-collapse: collapse;
    margin: 0;
}

#taikai td {
    border: 1px solid #bbb;
    padding: 5px 5px 5px 5px;
}

#taikai2 table {
    border-collapse: collapse;
    margin: 0;
}

#taikai2 td {
    border: 1px solid #bbb;
    padding: 5px 5px 5px 5px;
}

#taikai3 table {
    border-collapse: collapse;
    margin: 0;
}

#taikai3 td {
    border: 1px solid #bbb;
    padding: 5px 5px 5px 5px;
}

.taikai_td_g{
    background-color: #eee;
}

#taikai4 table {
    border-collapse: collapse;
    margin: 0;
}

#taikai4 td {
    border: 1px solid #bbb;
    padding: 5px 5px 5px 5px;
}

/********** div#sanka_main **********/

#sanka ul {
    margin: 0;
    padding: 10px 0 10px 20px;
}

.sanka_table {
    border-collapse: collapse;
}

.sanka_table th {
    width: 120px;
    padding: 5px 5px 5px 5px;
    border-top: 1px dotted #ccc;
    border-bottom: 1px dotted #bbb;
}

.sanka_table td {
	width:500px;
    padding: 5px 5px 5px 5px;
    border-top: 1px dotted #ccc;
    border-bottom: 1px dotted #bbb;
}

.sanka_table2 th {
    padding: 5px 5px 5px 5px;
    border: 1px solid #bbb;
    background-color: #eee;
}

.sanka_table2 td {
    padding: 5px 5px 5px 5px;
    border: 1px solid #bbb;
}


/********** common **********/

.red {
    color: #ff3900;
}

.red2{
    color: #ff3900;
    font-weight: bold;
}

.heading {
    font-weight: bold;
    font-size: 120%;
    margin-bottom: 27px;
}

.underline {
	border-bottom: 1px solid #000000;
}


.photolist a {
	float: left;
	display: inline-block;
	margin-right: 5px;
	margin-bottom: 5px;
}

.chuusi {
	text-decoration: line-through;
}

.tac {
	text-align:center;
}

.tar {
	text-align:right;
}

.setumei {
	overflow:hidden;
}

.setumei span {
	display:inline-block;
	float:left;
	line-height:1.7rem;
}

.setumei .label {
	clear:both;
	width:120px;
}

.midasi {
	margin:30px 0 10px;
	padding:8px 15px;
}

.gallery img {
	margin-bottom:10px;
}

/*******************************
 フォーム
 *******************************/

/* テキスト系 */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="tel"],
input[type="number"],
input[type="date"],
textarea,
select
{
	padding: 4px 6px;
	vertical-align:middle;
	border: solid 1px #999;
	border-radius: 3px;
	-moz-box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.2);
	-webkit-box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.2);
	box-shadow: inner 0 0 4px rgba(0, 0, 0, 0.2);
}

/* テキスト系 高さ */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="tel"],
input[type="number"],
input[type="date"]
{
	height: 1.5rem;
}

select {
	height: 2.2rem;
}

/* 必須（テキスト系） */
input[type="text"]:required,
input[type="email"]:required,
input[type="password"]:required,
input[type="tel"]:required,
input[type="number"]:required,
input[type="date"]:required,
textarea:required,
select:required
{background-color: #FFF0F0;}

/* 必須（テキスト系）chromeのオートフィル対策 */
input[type="text"]:required:-webkit-autofill,
input[type="email"]:required:-webkit-autofill,
input[type="password"]:required:-webkit-autofill,
input[type="tel"]:required:-webkit-autofill,
input[type="number"]:required:-webkit-autofill
{box-shadow: 0 0 0 1000px #FFF0F0 inset;}

/* 任意（テキスト系）chromeのオートフィル対策 */
input[type="text"]:-webkit-autofill,
input[type="email"]:-webkit-autofill,
input[type="password"]:-webkit-autofill,
input[type="tel"]:-webkit-autofill,
input[type="number"]:-webkit-autofill
{box-shadow: 0 0 0 1000px #FFF inset;}

/* テキスト系のカーソルフォーカス時 */
input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus,
input[type="date"]:focus,
input[type="text"]:required:focus,
input[type="email"]:required:focus,
input[type="password"]:required:focus,
input[type="tel"]:required:focus,
input[type="number"]:required:focus,
input[type="date"]:required:focus,
textarea:focus,
select:focus
{
	border: solid 1px #00DDDD;
	background-color: #F0FFFF;
}

/* ラジオボタン */
input[type="radio"] {
	position: absolute;
	opacity: 0;
}
input[type="radio"] + .radio_label:before {
	content: "";
	background-color: #EEE;
	border-radius: 100%;
	border: 1px solid #999;
	display: inline-block;
	width: 1.2em;
	height: 1.2em;
	position: relative;
	margin-right: .6em;
	margin-bottom: .4em;
	vertical-align: top;
	cursor: pointer;
	text-align: center;
	transition: all .25s ease;
}
input[type="radio"]:checked + .radio_label:before {
	background-color: #39E;
	box-shadow: inset 0 0 0 4px #EEE;
}
input[type="radio"]:focus + .radio_label:before {
	outline: none;
	border-color: #39E;
}
input[type="radio"]:disabled + .radio_label:before {
	box-shadow: inset 0 0 0 4px #EEE;
	border-color: #BBB;
	background-color: #BBB;
}
input[type="radio"] + .radio_label:empty:before {
	margin-right: 0;
}

/* チェックボックス */
input[type=checkbox] {
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	-o-appearance: none;
	appearance: none;
	position: relative;
	right: 0;
	bottom: 0;
	left: 0;
	height: 20px;
	width: 20px;
	vertical-align: -0.8rem;
	transition: all .1s ease-out 0s;
	color: #FFF;
	cursor: pointer;
	display: inline-block;
	margin: .4rem;
	outline: none;
	border: 1px solid #999;
	border-radius: 10%;
	background-color: #EEE;
}
input[type=checkbox]:focus {
	border: 1px solid #39E;
}
input[type=checkbox]:before, input[type=checkbox]:after {
	position: absolute;
	content: "";
	background-color: #39E;
	transition: all .1s ease-in-out;
}
input[type=checkbox]:before {
	left: 2px;
	top: 6px;
	width: 0;
	height: 2px;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
}
input[type=checkbox]:after {
	right: 9px;
	bottom: 3px;
	width: 2px;
	height: 0;
	transform: rotate(40deg);
	-webkit-transform: rotate(40deg);
	-ms-transform: rotate(40deg);
	transition-delay: .1s;
}
input[type=checkbox]:checked:before {
	left: 2px;
	top: 10px;
	width: 7px;
	height: 2px;
}
input[type=checkbox]:checked:after {
	right: 5px;
	bottom: 2px;
	width: 3px;
	height: 13px;
}
input[type=checkbox]:indeterminate:before, input[type=checkbox]:indeterminate:after {
	width: 7px;
	height: 2px;
	transform: rotate(0);
	-webkit-transform: rotate(0);
	-ms-transform: rotate(0);
}
input[type=checkbox]:indeterminate:before {
	left: 1px;
	top: 7px;
}
input[type=checkbox]:indeterminate:after {
	right: 1px;
	bottom: 7px;
}

/*******************************
 ボタン
 *******************************/

button {
min-width:160px;
padding:18px 12px;
text-align:center;
color:#FFF;
background-color:#06E;
cursor:pointer;
border-style:none;
border-radius:5px;
box-shadow:0 1px 3px 0 #AAA;
-webkit-tap-highlight-color:transparent;
transition:.3s;
outline:none;
}

button:hover
,btn_inputfile:hover {
background-color:#17F;
text-decoration:none;
box-shadow:0 2px 6px 0 #AAA;
}

/* フォーム用テーブル */

.tbl_form th {
	padding: 1rem;
	border:1px solid #666;
	background-color:#EEE;
	text-align: left;
	font-weight: bold;
}

.tbl_form td {
	padding: 1.2rem;
	border:1px solid #666;
}

.tbl_form td.required {
	background-color: #FFF0F0;
}

.tbl_form .conditions {
	margin-right: 1.2rem;
	padding: .1rem .5rem;
	display: inline-block;
	vertical-align: middle;
	font-size: .9rem;
	font-weight: normal;
}

.tbl_form .conditions.con_req {
	color: #FFF;
	background-color: #D14E4E;
}

.tbl_form .conditions.con_any {
	background-color: #FFF;
}

.tbl_form .icon_my {
	margin-right: 0;
	color: #FFF;
	background-color: #007DB8;
}

.tbl_form .example {
	margin-top: .4rem;
}


/*******************************
 メッセージ
 *******************************/

.err_msg {
	margin: 2rem 4px 2rem 0;
	padding: 2rem;
	text-align: center;
	text-indent: 2rem;
	color: #000;
	font-weight:bold;
	background-color: #FFEE00;
	-moz-box-shadow: 2px 2px 2px 0px #999;
	-webkit-box-shadow: 2px 2px 2px 0px #999;
	box-shadow: 2px 2px 2px 0px #999;
}


.mgt30 {margin-top:30px;}
.mgl10 {margin-left:10px;}
