/* CSS Document */

/*=============================================
* PC・タブレット・スマートフォン共通
=============================================*/

    /* 共通設定 */
    html {
        font-size: 62.5%;
    }
    body{
        margin: 0;
        font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Osaka, Meiryo,"ＭＳ Ｐゴシック", sans-serif;
        overflow-y:scroll;
        color: #333;
    }
    a {
        color: #3984a9;
        word-wrap: break-word;
        line-height: normal;
    }
    a:visited {
        color: #3984a9;
    }
    .caution,
    .content h3.caution {
        color: #A7212E;
    }
    label:hover {
        color: #2017ae;
    }
    .asterisk {
      margin: 0;
      padding-left: 1em;
      text-indent: -1em;
      display: block;
      line-height: 1.3em;
    }

    /* プレースホルダー */
    input::-webkit-input-placeholder {
        color: #bbb;
    }
    input:-ms-input-placeholder {
        color: #bbb;
    }
    input:-moz-placeholder,
    input::-moz-placeholder {
        color: #bbb;
        opacity: 1;
    }

    /*ヘッダー*/
    header {
        width: 100%;
        border-bottom: 5px solid #e35885;
    }
    header p{
        margin: 9px 0;
    }
    .header-item p {
        width: 125px;
    }
    .header-item p img {
        width: 100%;
    }

    /*エラー表示*/
    .form-error {
        margin: 0 0 20px 0;
        padding: 4px;
        border: 2px #B74545 solid;
        background-color: #F8E6E6;
        line-height: 2.2em;
    }
    .form-error input[type="text"] {
        border: 3px #aaa solid;
    }
    .form-error_title {
        margin: 0;
        font-weight: bold;
        color: #AC1313;
    }
    .itemtable .input_error-text {
        margin: 5px 0 0 0;
        color: #AC1313;
        clear: both;
    }
    .itemtable input.input_error,
    .itemtable select.input_error {
        border: 2px #B74545 solid;
    }
    .itemtable tr.input_error {
        background-color: #F8E6E6;
    }
    .itemtable tr.input_error th {
        background-color: #F1CCCC;
    }
    .content p.form-error_title {
        margin: 0;
    }
    .content p {
        font-size: 15px; font-size: 1.5rem;
    }
    .content ul,
    .content ol {
        font-size: 15px; font-size: 1.5rem;
    }

    /*コンテンツ*/
    .content {
        width: 96%;
        max-width: 1000px;
        margin: 0 2% 40px 2%;
    }
    .content section {
        margin: 0 0 20px 0;
    }
    .content ul,
    .content ol {
        margin: 0 0 0 18px;
        padding: 0;
        font-size: 14px; font-size: 1.4rem;
    }
    .content ul li,
    .content ol li {
        margin: 0 10px 10px 0;
    }

    /*見出し*/
    header h1{
        margin: 0 0 8px 0;
        font-size: 13px; font-size: 1.3rem;
    }
    .content h2 {
        margin: 0 0 10px 0;
        padding: 0 0 0 5px;
        font-size: 18px; font-size: 1.8rem;
        border-left: 3px solid #937e6c;
        border-bottom: 1px dotted #CCC;
    }
    .content h3 {
        color: #072363;
    }
    .content h4 {
        margin: 0 0 3px 0;
    }
    .content h5 {
        margin: 5px 0 ;
        font-size: 13px; font-size: 1.3rem;
    }
    .content p {
        margin: 0 0 5px 0;
    }

    /*テーブル設定*/
    .itemtable {
        width: 100%;
        margin: 0 0 10px 0;
        border-top: 1px #CCC solid;
        border-right: 1px #CCC solid;
    }
    .itemtable caption {
        margin: 0 0 5px 0;
        text-align: left;
        font-size: 12px; font-size: 1.2rem;
    }
    .itemtable th,
    .itemtable td {
        padding: 8px 4px;
        box-sizing: border-box;
        overflow: hidden;
    }
    .itemtable th {
        text-align: left;
        border-bottom: 1px #DDD solid;
        border-left: 1px #CCC solid;
        background-color: #eee;
    }
    .itemtable td {
        border-left: 1px #CCC solid;
        border-bottom: 1px #CCC solid;
        font-size: 13px; font-size: 1.3rem;
    }
    .itemtable p {
        margin: 0;
        padding: 0;
        font-size: 15px; font-size: 1.5rem;
    }
    .itemtable h4 {
        margin: 0 0 10px 0;
        padding: 2px 4px;
        background-color: #f3f0e8;
    }

    /*入力フォーム 共通設定*/
    .input-long {
        width: 100%;
    }
    .input-short {
        width: 6rem;
    }
    input,
    select {
        height: 40px;
        -webkit-border-radius: 3px;
        -moz-border-radius: 3px;
        border-radius: 3px;
        font-size:14px; font-size:1.4rem;
        box-sizing: border-box;
    }
    select {
        font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Osaka, Meiryo,"ＭＳ Ｐゴシック", sans-serif;
        background-image: background: -webkit-linear-gradient(#FFF 0%, #EEE);
        background-image: background: -o-linear-gradient(#FFF 0%, #EEE);
        background-image: background: linear-gradient(#FFF 0%, #EEE);
        background: -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#EEE));
        background: linear-gradient(to bottom, #FFF, #EEE);/* IE10+, W3C */
        background: -moz-linear-gradient(top, #FFF, #EEE);/* Firefox用 */
        background-color: #f8f8f8;
        border: 1px solid #aaa;
    }
    input[type="text"],
    input[type="email"] {
        margin: 0;
        padding: 4px;
        font-size:18px; font-size:1.8rem;
        font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Osaka, Meiryo,"ＭＳ Ｐゴシック", sans-serif;
        border: 1px #aaa solid;
        -moz-box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.3);
        -webkit-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.3);
        box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.3);
        background-color: #f8f8f8;
    }
    input[type="submit"] {
        height: 44px;
        padding: 0;
        font-size:14px; font-size:1.4rem;
        font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Osaka, Meiryo,"ＭＳ Ｐゴシック", sans-serif;
        border: none;
        -webkit-border-radius: 4;
        -moz-border-radius: 4;
        border-radius: 4px;
    }
    input[type="radio"] {
        box-shadow: none;
    }
    textarea {
        font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Osaka, Meiryo,"ＭＳ Ｐゴシック", sans-serif;
        font-size: 16px; font-size: 1.6rem;
        padding: 5px;
        line-height: 1.3em;
        box-sizing: border-box;
    }
    .input-form th,
    .input-form td {
        width: 100%;
        display: block;
    }
    .button-enter,
    .button-form {
        width: 75%;
        border-style: none;
        font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Osaka, Meiryo,"ＭＳ Ｐゴシック", sans-serif;
        text-decoration: none;
        line-height: 1rem;
    }
    .button-enter {
        -webkit-border-radius: 6;
        -moz-border-radius: 6;
        border-radius: 6px;
        font-size: 16px; font-size: 1.6rem;
        background: #937e6c;
        color: #ffffff;
    }
    button.button-enter {
        padding: 18px 15px;
    }
    .button-form {
        -webkit-border-radius: 4;
        -moz-border-radius: 4;
        border-radius: 4px;
        font-size: 14px; font-size: 1.4rem;
        padding: 8px 15px 8px 15px;
        background: #217ea7;
        color: #ffffff;
    }
    .button-enter:disabled,
    .button-enter[disabled]:hover {
        background: #ccc;
        text-shadow: none;
    }
    .button-back:visited {
        color: #333;
    }
    .button-back,
    input[type="submit"].button-back {
		height: auto;
        background-image: background: linear-gradient(#FFF 0%, #EEE);
        background-image: background: -webkit-linear-gradient(#FFF 0%, #EEE);
        background-image: background: -o-linear-gradient(#FFF 0%, #EEE);
        background: linear-gradient(to bottom, #FFF, #EEE);/* IE10+, W3C */
        background: -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#EEE));
        background: -moz-linear-gradient(top, #FFF, #EEE);/* Firefox用 */
        background-color: #FFF;
        border: 1px solid #AAA;
        -webkit-border-radius: 4;
        -moz-border-radius: 4;
        border-radius: 4px;
        font-size: 14px; font-size: 1.4rem;
        font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Osaka, Meiryo,"ＭＳ Ｐゴシック", sans-serif;
        padding: 4px 15px 4px 15px;
        text-decoration: none;
        color: #333;
        display: inline-block;
    }
	input[type="submit"].button-back:hover {
		cursor: pointer;
	}
    .button-change_block {
        text-align: center;
    }
    .hissu {
        margin: 0 0 0 5px;
        padding: 0 3px;
        font-size: 11px; font-size: 1.1rem;
        background-color: #B74545;
        border-radius: 2px;
        color: #FFF;
        font-weight: normal;
        display: inherit;
    }

    /*利用規約*/
    fieldset.agree {
        padding: 0;
        border: none;
    }
    .user_policy {
        margin: 10px 0 0 0;
        text-align: center;
        font-size: 16px; font-size: 1.6rem;
    }
    .user_policy label {
        padding: 5px 0 10px 0;
        display: block;
    }
    .input-type label {
        margin: 3px 0 0 0;
        display: block;
    }
    .content .input_caution {
        margin: 0 0 10px 0;
        padding: 5px 10px;
        border: 1px #cccccc solid;
        background-color: #fff8eb;
        overflow: hidden;
    }
    .input-long, .input-full {
      width: 100%;
    }
    .news {
      margin: 0 0 20px 0;
      border: 1px solid #ccc;
      background-color: #fefefe;
      padding: 10px;
    }
    .content .news h3 {
      padding: 0;
      margin: 0 0 5px 0;
      color: #264606;
    }
    .content .news p {
      margin: 0;
    }

    /*合格発表*/
    .result_image img {
      width: 100%;
    }
    .content h3.congratulation {
      color: #e438ae;
    }
    .content h3.failure {
      color: #333;
    }
    .result_table tr:first-child th {
      background-color: #937e6c;
      color: #Fff;
    }

    /*合格発表*/
    .state_open {
      color: #14712d;
      background-color: #e7fded;
    }
    .state_end {
      color: #aaa;
      background-color: #eee;
    }

    /*フッター*/
    .footer_inner{
        width: 100%;
        border-top: 1px solid #CCC;
    }
    .footer_copyright{
        margin:10px auto;
        text-align: center;
        font-size: 13px; font-size: 1.3rem;
    }

/*=============================================
* スマートフォン 750px以下
=============================================*/

@media screen and (max-width: 750px) {

    /*共通設定*/
    body{
        line-height: 1.8rem;
    }
    input[type="submit"] {
        -webkit-appearance: none;
    }
    input[type="radio"] {
        vertical-align: middle;
        -webkit-border-radius : 20px;
    }
    input[type="checkbox"] {
        vertical-align: middle;
    }
    .smalltxt {
        font-size: 14px; font-size: 1.4rem;
    }
    .checkbox {
        width: 30px;
        height: 30px;
        -moz-transform: scale( 1 , 1 );
    }
    br.pcbr {
        display: none;
    }
    .hissu {
        margin: 0 0 0 5px;
        position: absolute;
        display: inline-block;
    }
    .itemtable th {
        font-size: 15px; font-size: 1.5rem;
    }
    .button-change_block {
        text-align: center;
    }
    input,
    select {
        font-size:15px; font-size:1.5rem;
    }
    input[type="submit"].button-enter {
        font-size: 18px; font-size: 1.8rem;
    }
    .button-enter {
        font-size: 18px; font-size: 1.8rem;
    }
    .input-long {
        display: block;
    }

    /*ヘッダー*/
    header {
        margin: 0 0 10px 0;
    }
    .header-item {
        width: 96%;
        margin: 10px 2%;
        text-align: center;
    }
    .header-item p {
        width: 260px;
        margin: 0 auto;
    }
    header h1 {
        font-size: 15px;
        font-size: 1.5rem;
    }

    /*見出し*/
    .content h2 {
        padding: 0 0 3px 5px;
        line-height: 2.2rem;
    }
    .content h3 {
        margin: 0 0 3px 0;
        padding: 5px 0;
        font-size: 16px; font-size: 1.6em;
        line-height: 2.2rem;
    }
    .content h3.type-title {
        font-size: 16px; font-size: 1.6rem;
    }
    .content h4 {
        margin: 0 0 10px 0;
        font-size: 16px; font-size: 1.6rem;
    }

    /*テーブル設定*/
    .itemtable td {
        font-size: 15px; font-size: 1.5rem;
    }
    .input-type th:nth-of-type(1) {
        width: 40%;
    }
    .input-type th:nth-of-type(2) {
        width: 23%;
    }
    .itemtable .input-innertable .department {
        width: auto;
    }
    .itemtable .input-innertable td {
        padding: 8px 4px;
    }
    .input-innertable select {
        width: 80px;
    }
    .itemtable .input-innertable td.input-innertable_1col {
        width: auto;
        padding: 0;
    }
    .input-innertable label {
        padding: 2px 0 0 5px;
    }
    .itemtable .input-innertable {
        padding: 0 10px;
    }

    /*合格発表*/
    .publish-state {
      border-right: none;
    }
    .publish-state thead {
      display: none;
    }
    .publish-state tr {
      margin: 0 0 20px 0;
      display: block;
    }
    .publish-state td {
      width: 100%;
      padding: 8px;
      display: block;
      border-right: 1px #CCC solid;
      border-left: 3px #666 solid;
    }
    .publish-state tr:nth-child(n+2) td:first-child {
      border-top: 1px solid #ccc;
    }
    .publish-state td::before {
      width: 100%;
      display: block;
      content: attr(data-label);
      padding: 0 0 5px 0;
      font-weight: bold;
    }
    .content h3.congratulation,
    .content h3.failure {
      font-size: 20px; font-size: 2rem;
      text-align: center;
    }
    .result_table tr th:first-child {
      width: 10rem;
    }
    /*フッター*/
    .footer_copyright {
        font-size: 11px; font-size: 1.1rem;
    }

}

/*=============================================
* PC 751px以上
=============================================*/

@media screen and (min-width: 751px) {

    /*共通設定*/
    body{
        line-height: 2.2rem;
    }
    button:hover {
        cursor: pointer;
    }
    a:hover {
        text-decoration: underline;
    }
    .smalltxt {
        font-size: 13px; font-size: 1.3rem;
    }
    br.spbr {
        display: none;
    }

    /*ヘッダー*/
    header {
        margin: 0 0 20px 0;
    }
    .header-item {
        width: 960px;
        margin: 12px auto 0 auto;
        text-align: left;
        overflow: hidden;
    }
    .header-item p {
        float: left;
    }
    .header-item h1 {
        float: left;
        font-size: 20px; font-size: 2.0rem;
    }

    /*画面ステップ*/
    .steplist {
        width: 959px;
        margin: 0 auto;
    }
    .steplist li {
        font-size: 14px; font-size: 1.4rem;
    }
    .steplist-pc:before {
        content: ".";
    }

    /*エラー表示*/
    .form-error {
        padding: 10px;
    }
    .content p.form-error_title {
        font-size: 18px; font-size: 1.8rem;
    }

    /*コンテンツ*/
    .content {
        width: 960px;
        margin: 0 auto 100px auto;
    }
    .content ul,
    .content ol {
        margin: 0 0 5px 20px;
        font-size: 14px; font-size: 1.4rem;
    }
    .content ul li,
    .content ol li {
        margin: 0 10px 0 0;
    }

    /*見出し*/
    header h1{
        padding: 20px 0 0 30px;
    }
    .content h2 {
        margin: 0 0 15px 0;
        padding: 8px 0 6px 8px;
        font-size: 24px; font-size: 2.4rem;
        border-bottom: 2px dotted #CCC;
        line-height: 3rem;
    }
    .content h3 {
        margin: 0 0 10px 0;
        font-size: 18px; font-size: 1.8em;
        line-height: 2.2rem;
    }
    .content h4 {
        font-size: 16px; font-size: 1.6rem;
    }
    section + h3 {
        margin: 0 0 10px 0;
    }

    /*テーブル設定*/
    .itemtable {
        margin: 0 0 10px 0;
    }
    .itemtable th,
    .itemtable td {
        padding: 6px 12px;
    }
    .itemtable th {
        font-size: 16px; font-size: 1.6rem;
    }
    .itemtable td {
        font-size: 16px; font-size: 1.6rem;
    }

    /*入力フォーム 共通設定*/
    .input-full {
        width: 100%;
    }
    .input-long {
        width: 70%;
    }
    .input-short {
        width: 7rem;
    }
    input,
    select {
        font-size:18px; font-size:1.8rem;
    }
    .input-form th,
    .input-form td {
      display: table-cell;
    }
    .input-form th {
      width: 30%;
    }
    .input-form td {
      width: 70%;
    }
    .input-form {
        margin: 0 0 20px 0;
    }
    input[type="text"],
    input[type="email"],
    input[type="submit"] {
        font-size:16px; font-size:1.6rem;
    }
    input[type="submit"] {
        font-size:20px; font-size:2rem;
    }
    .checkbox {
        vertical-align: text-top;
    }
    .button-enter,
    .button-form {
        width: 300px;
    }
    .button-enter_cvs {
        width: 460px;
    }
    .button-enter {
        font-size: 20px;font-size: 2rem;
    }
    .hissu {
        display: inline-block;
        float: right;
    }

    /*マウスオーバー設定*/
    label:hover,
    .checkbox:hover,
    input[type="radio"]:hover,
    .button-enter:hover,
    a.button-back:hover {
        cursor: pointer;
    }
    .button-enter:disabled {
        cursor: auto;
    }
    .button-enter:hover {
        background: #725b46;
    }
    .button-back:hover,
    input[type="submit"].button-back:hover {
        text-decoration: none;
        background: #EEE;
    }

    /*利用規約*/
    .user_policy label {
        margin: 0;
        display: inline-block;
    }

    /*合格発表掲載状況 テーブル*/
    .input-type label {
        display: inline;
    }
    .input-type tr td:first-child {
        text-align: left;
    }
    .input-type th:nth-of-type(1) {
      width: 10%;
    }
    .input-type th:nth-of-type(2) {
      width: 38%;
    }

    /*受験結果*/
    .result_image {
      width: 45%;
      float: left;
    }
    .content h3.congratulation,
    .content h3.failure {
      font-size: 22px; font-size: 2.2rem;
    }
    .result_information {
      padding: 10px;
      border: 1px #ccc solid;
    }
    .content section.result-backtop {
      padding: 20px 0 0 0;
      clear: both;
    }
    .result_table tr th:first-child {
      width: 15%;
    }


}
