@charset "UTF-8";

.main .rapper{width: 1000px;margin: 0px auto;}
.examroot { display: flex; justify-content: space-between;}
.examleft { width: 760px; float:left;font-weight:normal;}
.examright { width: 210px; float:right; font-weight:normal;}

@media print {
    header { display: none;}
    .footer { display: none;}
    .examleft { margin: 0 auto; }
    .examright { display: none;}
    div.form_btn a { display: none;}
}

.exammsg { border:solid 1px #717171; padding:10px; color:#717171;}

.caution { color: #ff0000; font-weight: bold;}
.cautionBox { border: solid 2px #ff0000; padding: 10px; }

#mypage .step{
    box-sizing: border-box;
    width: 100%;
    margin: 20px 0px;
}
#mypage .stepimg {
    width: 145px;
    float: left;
}
#mypage .stepflow{
    width: 600px;
    float: right;
}
#mypage .stepimg span{
    display: inline-block;
    box-sizing: border-box;
    width: 100%;
    height: 20px;
    padding-top: 3px;
    text-align: center;
    font-size:15px;
    font-weight: bold;
    color: #FFF;
    background-image: url('../img/step_bg.png');
    line-height: 100%;
}
#mypage .stepimg img{
    margin-top: 20px;
}
#mypage .stepflow h3{
    color:#00b96f;
    font-size: 20px;
    font-weight: bold;
    margin: 0px;
}
#mypage .stepflow ul{
    margin: 20px 0 0 40px;
}
#mypage .stepflow ul li{
    list-style-image: url('../img/step_mark.png');
    margin-bottom: 20px;
    line-height: 25px;
}
#mypage .stepflow .strong {
    color: #00b96f;
    font-weight: bold;
}
#mypage .stepflow .caution {
    color: #ff0000;
    font-weight: bold;
}
#mypage .stepsep{
    box-sizing: border-box;
    width: 100%;
    height: 20px;
    background-image: url('../img/step_sp.png');
    background-repeat: no-repeat;
    background-position: 50% 0;
    border-top: solid 1px #717171;
}

#mypage .btn_area { text-align: center; }
#mypage a.btn {
    text-align: center;
    color: #fff;
    background-color: #00b96f;
    background-image:none;
    font-weight: bold;
    padding: 10px 0px;
    border-radius:5px;
    display: inline-block;
    width: 300px;
    cursor: pointer;
}
#mypage .waku_gr {
    padding: 0px 20px;
    border: solid 3px #00b96f;
    border-radius: 5px;
    background-color: #efefef;
}
#mypage .waku_gr .strong {
    color: #00b96f;
    font-weight: bold;
    font-size: 16px;
}
.examitem {
    border: solid 1px #717171;
    margin: 0px 0px 20px;
    background-color: #f2f2f2;
    font-size: 17px;
}
.examitem:first-child{
    padding: 10px 5px;
}
.examitem span{
    color:#00b96f;
}
.examitem table {
    border:none;
    font-size: 12px;
    color:#000;
    background-color: #f2f2f2;
}
.examitem table td , .examitem table th {
    border:none;
    padding:0px;
    background-color: #f2f2f2;
}
.examitem table td:nth-child(2) { text-align:right;}
.examitem table td:nth-child(3) { text-align:center;}
.examitem table td:nth-child(4) { text-align:right;}

.examitem a{
    width: 100%;
    padding: 10px 5px;
    box-sizing: border-box;
}
.examitem img{
    width: 100%;
    box-sizing: border-box;
}
.examright .examitem font{
    display: block;
    width: 100%;
    text-align: center;
    font-size: 15px;
}

/*************
申込フォーム
*************/
.hide {
    display: none !important;
}


.inputform .namecap {
    margin: 0px 10px;
    display : inline-block;
    width: 35px;
    text-align: right;
}
.inputform  .namecap:first-child {
    width: 20px;
    margin-left: 0px;
}
.inputform .no_inputform{
    display: none;
}
.confirm .namecap {
    display : none;
}
.confirm .no_confirm {
    display : none;
}
.jukenhyo {
    padding-top: 10px;
}

div.privacy {
	font-size: 10px;
	letter-spacing: 0em;
	line-height: 1em;
}


div.scroll {
    overflow: scroll;   /* スクロール表示 */
	height: 140px;
}

div.privacy_check {
	text-align: center;
	height: 50px;
}

div.privacy_check span.check {
	background-color: #ED1C24;
    padding: 4px 4px 1px 4px;
}


.AOFerrmsg {
    color : #ff0000;
}
input.money {
    text-align: right;
}

/**  カレンダーで使用するtableに影響があるので、HPで設定されているCSSを消去 **/
div.calendar table th, div.calendar table td{
	padding: 0px;
}
div.calendar table td{
	background: initial;
    vertical-align: initial;
    border: initial;
    height: 20px;
}
div.calendar table th{
	color: initial;
	background: initial;
	font-weight: initial;
	font-size: initial;
	text-align:initial;
    height: 20px;
}


/** アップロード済みファイルに対するリンク */
a.link_file {
    color: #00b96f;
    cursor: pointer;
}
a.link_delfile {
    display: inline-block;
    background-color: #00b96f;
    border-radius: 5px;
    color: #FFF;
    cursor: pointer;
    padding: 0px 5px;
}
/*入力例*/
span.example {
    color: #717171;
}

/*受検科目*/
table.kamoku_table {
    width:100%;
    background: none;
    border: none;
    border-collapse: collapse;
}
table.kamoku_table th{
    background-color: #00b96f;
    color: #FFF;
    border: solid 1px #DED9D7;
    border-top: none;
    border-left: none;
}
table.kamoku_table th:last-child{
    border-right: none;
}
table.kamoku_table th.category{
    background-color: #F2F2F2;
    color: #00b96f;
    font-weight: normal;
    border: solid 1px #DED9D7;
    border-top: none;
    border-left: none;
    padding: 5px;
    text-align: center;
}

table.kamoku_table td{
    text-align: left;
    width: 35px;
    padding: 5px;
    background: none;
    border-top: solid 1px #DED9D7;
    border-bottom: solid 1px #DED9D7;
    border-left: none;
    border-right: none;
}
table.kamoku_table td.kamokuKubun{
    text-align: center;
    border-right: solid 1px #DED9D7;
}
table.kamoku_table td.kamokuName{
    width: 200px;
    border-right: solid 1px #DED9D7;
    padding-left: 20px;
}
table.kamoku_table td input.kamoku{
    width: 20px;
}
table.kamoku_table tr:last-child td {
    border-bottom: none;
}

table.form > tbody > tr > td.jukenhyo_msg {
    border-left: none;
    border-right: none;
    font-size: 11px;
    line-height: 14px;
    padding-top: 15px;
}

.chk_jukenhyo_msg {
    margin-left: 40px;
    line-height: 16px;
    font-size: 12px;
}

.formZenki .kamokuKouki {
    background-color: #cccccc;
}
.formKouki .kamokuZenki {
    background-color: #cccccc;
}

.msg_overlimit {
    color: #CE0E0E !important;
    font-size: 12px;
}

/****
* エラーメッセージ
*****/
.AOFerrmsg {
	display:none;
	color: #CF0318 !important;
	margin: 0px 10px;
    font-weight: bold;
}

/****
* エラー　背景色
*****/
.AOFerrbg {
    background: #FFD1D8;
}

/****
* 次のエラー、前のエラー　ボタン
*****/
div.move_error_button {
	position: fixed;
	bottom: 250px;
	right: 25px;
	opacity: 1;
	width: 200px;
	text-align: center;
}
div.move_error_button a{
    display: block;
    padding: 10px 0;
    width: 100%;
    border: solid 1px #CF0318;
    border-radius: 5px;
    background: #CF0318;
    color: #ffffff;
    text-decoration: none;
    margin: 15px 0;
}
div.move_error_button a:hover{
    opacity: 0.5;
}
