@charset "UTF-8";

/*
black1 #232527 テキストカラー
black2 #000000
blue1 #102F6E
blue2 #3366CC タブメニュー/ テキストカラー/ テーマカラー
blue3 #799FD3 タイトル背景色
blue4 #C7DFF2
gray1 #C8C7CC
gray2 #EEF2F7
gray3 #8D99A3
gray4 #4A4A4A
gray5 #979797
gray6 #DFDFDF
orange1 #F95027
red1 #FF0707
white1 #ffffff
*/


body {
    background-color:#fff;
    color: #232527;
    margin:0;
    font-size:12px;
    font-family: "Roboto", "Noto Sans CJK", "ヒラギノ角ゴ Pro W3","游ゴシック", "游ゴシック体", "メイリオ", sans-serif;
}

body.gray2 {
    background-color: #EEF2F7;
}

.content {
    margin: 0 25px;
}

a:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="number"]:focus,
input[type="checkbox"]:focus,
input[type="radio"]:focus,
select:focus {
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    -webkit-box-shadow: none;
    box-shadow: none;
    outline: none;
}

input[type="text"],
input[type="password"],
input[type="number"],
input[type="text"],
select,
textarea {
    background-color: #ffffff;
    border: 1px solid #979797;
    border-radius: 5px; 
    font-size:15px;
    padding:10px;
    box-shadow: 0px 1px 3px rgba(0,0,0,0.5) inset;
    opacity: 0.9;
    height: 50px;
    padding: 10px 
}

textarea.form-control {
    color: #232527;
}

.select-box select,
.select-box-job select,
.select-box-railway select
{
    height: 50px;
    appearance: none;
    -webkit-appearance: none;
    position: relative;
    border: 1px solid #979797;
    border-radius: 5px;
    padding-right: 50px;
    overflow: hidden;
    color: #232527;
    font-size: 16px;
}

.select-box:after,
.select-box-job:after,
.select-box-railway:after
{
    content: " ";
    position: absolute;
    display: block;
    height: 50px;
    /*top: 22px;*/
    right: 15px;
    width: 50px;
    background: url('/img/ic_select_open.png') right top no-repeat;
    background-size: 12px 9px;
    background-position: center center;
    border-left: 1px solid #979797;
    pointer-events: none;
}
.select-box:after {
    top: 22px;
}

.select-box select.invalid-input-value {
    border-color: #f00;
}

.select-box-no-margin:after {
    top: 0;
}

.select-box-date {
    padding-left: 0;
    padding-right: 5px;
}

.select-box-date select {
    appearance: none;
    -webkit-appearance: none;
    position: relative;
    border: 1px solid #979797;
    border-radius: 5px;
    height: 30px;
    padding-right: 30px;
    overflow: hidden;
    margin: 20px 0;
    color: #232527;
}

.select-box-date:after {
    content: " ";
    position: absolute;
    display: block;
    height: 30px;
    top: 20px;
    right: 5px;
    width: 30px;
    background: url('/img/ic_select_open.png') right top no-repeat;
    background-size: 8px 6px;
    background-position: center center;
    border-left: 1px solid #979797;
    pointer-events: none;
}

.select-box-date select.invalid-input-value {
    border-color: #f00;
}

input[type="checkbox"] {
    -webkit-appearance: none;
    appearance: none;
    border-width: 0px;
    position: relative;
    width: 18px;
    height: 18px;
    vertical-align: middle;
    margin-right: 10px;
}

input[type="checkbox"]:not(:checked)::before {
    content: " ";
    position: absolute;
    left: 0px;
    top: 0px;
    width: 18px;
    height: 18px;
    background: url('/img/check_off.png');
}

input[type="checkbox"]:checked::before  {
    content: "  ";
    position: absolute;
    left: 0px;
    top: 0px;
    width: 18px;
    height: 18px;
    background: url(/img/check_on.png);
    
}

input[type="radio"] {
    -webkit-appearance: none;
    appearance: none;
    border-width: 0px;
    position: relative;
    width: 28px;
    height: 28px;
    vertical-align: middle;
    margin-right: 10px;
}

input[type="radio"]:not(:checked)::before  {
    content: "  ";
    position: absolute;
    left: 0px;
    top: 0px;
    width: 28px;
    height: 28px;
    background: url('/img/btn_radio_off.png');
    
}

input[type="radio"]:checked::before  {
    content: "  ";
    position: absolute;
    left: 0px;
    top: 0px;
    width: 28px;
    height: 28px;
    background: url(/img/btn_radio_on.png);
    
}

input.error[type=text] {
    border: 1px solid #ff0707;
}

.text1 {
    font-size:12px;
}
.text2 {
    font-size:13px;
}
.text3 {
    font-weight:bold;
    font-size:13px;
}
.text4 {
    font-size:14px;
}
.text5 {
    font-size:15px;
}
.text6 {
    font-weight:bold;
    font-size:15px;
}
.text7 {
    font-size:17px;
}
.text8 {
    font-weight:bold;
    font-size:17px;
}

.buttonA1 {
    background-color: #36c;
    color: #fff;
    border: none;
    height: 50px;
    border-radius: 4px;
    font-size: 17px;
    outline: 0;
    line-height: 2.941176;
    padding-bottom: 0;
    padding-top: 0;
}
.buttonA1:active {
    background-color: #2E5CB7;
    color: #E5E5E5;
}
.buttonA1:hover, .buttonA1:focus {
    color: #E5E5E5;
}
.buttonA1:disabled {
    background-color: #8D99A3;
    color: #fff;
    opacity: 1;
}

.buttonA2 {
    background-color: #fff;
    color: #36c;
    border: 1px solid #36c;
    border-radius: 4px;
    height: 50px;
    font-size: 17px;
    outline: 0;
}
.buttonA2:active {
    background-color: #F2F2F2;
    color: #36c;
}
.buttonA2:hover, .buttonA2:focus {
    border: 1px solid #36c;
    color: #36c;
}
.buttonA2:disabled {
    background-color: #8D99A3;
    border: none;
    color: #fff;
}

.buttonB1 {
    background-color: #fff;
    color: #36c;
    height: 28px;
    border: 2px solid #36c;
    border-radius: 2px;
    font-size:12px;
    outline: 0;
}
.buttonB1:active {
    background-color: #F2F2F2;
    color: #36c;
}
.buttonB1:hover, .buttonB1:focus {
    color: #36c;
}
.buttonB1:disabled {
    background-color: transparent;
    border: none;
    color: transparent;
}

.buttonB2 {
    background-color: #fff;
    color: #36c;
    height: 28px;
    border:1px solid #36c;
    border-radius: 2px;
    font-size:12px;
    outline: 0;
    padding: 0 2em;
}
.buttonB2:active {
    background-color: #F2F2F2;
    color: #36c;
}
.buttonB2:hover, .buttonB2:focus {
    color: #36c;
}
.buttonB2:disabled {
    background-color: transparent;
    border: none;
    color: transparent;
}

/*地図リンク*/
.buttonB3 {
    background-color: #fff;
    background: url('/img/present/icn_map.png');
    background-repeat: no-repeat;
    border:2px solid #36c;
    border-radius: 2px;
    font-size:12px;
    color: #36c;
    padding-left:24px;
    line-height:1.5em;
    outline: 0;
}
.buttonB3:active {
    background-color: #F2F2F2;
    color: #36c;
}
.buttonB3:hover, .buttonB3:focus {
    color: #36c;
}
.buttonB3:disabled {
    background-color: transparent;
    border: none;
    color: transparent;
}

/*電話リンク*/
.buttonB4 {
    background-color: #fff;
    background: url('/img/present/icn_tel.png');
    background-repeat: no-repeat;
    background-position: left center;
    border:2px solid #36c;
    border-radius: 2px;
    font-size:12px;
    color: #36c;
    padding-left:24px;
    line-height:1.5em;
}
.buttonB4:active {
    background-color: #F2F2F2;
    color: #36c;
}
.buttonB4:hover, .buttonB4:focus {
    color: #36c;
}
.buttonB4:disabled {
    background-color: transparent;
    border: none;
    color: transparent;
}

a.buttonB4 {
    text-decoration: none;
    padding: 3px 3px 3px 20px;
}

.buttonC1 {
    height: 40px;
    border: 1px solid #36c;
    border-radius: 4px;
    font-size: 17px;
    background-color: #FFFFFF;
    color: #36c;
    outline: 0;
}
.buttonC1:active {
    background-color: #F2F2F2;
    color: #36c;
}
.buttonC1:hover, .buttonC1:focus {
    color: #36c;
}
.buttonC1:disabled {
}

.buttonC2 {
    height: 40px;
    border: none;
    border-radius: 4px;
    font-size: 17px;
    background-color: #36c;
    color: #FFFFFF;
    outline: 0;
}
.buttonC2:active {
    background-color: #2E5CB7;
    color: #E5E5E5;
}
.buttonC2:hover, .buttonC2:focus {
    color: #E5E5E5;
}
.buttonC2:disabled {
    background-color: #8D99A3;
    color: #fff;
    opacity: 1;
}

.buttonD1 {
    position: fixed;
    bottom: 0;
    left: 0;
    height: 40px;
    border-radius: 0;
    font-size: 17px;
    background-color: #36c;
    color: #fff;
    height: 40px;
    font-size: 17px;
}

.buttonD1:active {
    background-color: #2E5CB7;
    color: #E5E5E5;
}

.buttonD1:hover, .buttonD1:focus {
    border: none;
    color: #E5E5E5;
}

.buttonD1:disabled {
    background-color: #8D99A3;
    color: #fff;
    opacity: 1;
}

.buttonE1 {
    position: fixed;
    bottom: 0;
    left: 0;
    height: 50px;
    font-size: 17px;
    border: none;
    border-top: 1px solid #36c;
    border-radius: 0;
    background-color: #fff;
    color: #36c;
    opacity: 1;
}
.buttonE1:active {
    background-color: #F2F2F2;
    color: #36c;
}

.buttonE1:hover, .buttonE1:focus {
    border-top: 1px solid #36c;
    color: #36c;
}

.buttonE2 {
    position: fixed;
    bottom: 0;
    right: 0;
    border-radius: 0;
    height: 50px;
    font-size: 17px;
    background-color: #36c;
    color: #fff;
    opacity: 1;
}
.buttonE2:active {
    background-color: #2E5CB7;
    color: #E5E5E5;
}

.buttonE2:hover, .buttonE2:focus {
    border: none;
    color: #E5E5E5;
}

.buttonE2:disabled {
    background-color: #8D99A3;
    color: #fff;
    opacity: 1;
}

.buttonF1 {
    width: 75px;
    height: 36px;
    font-size: 17px;
    background-color: #36c;
    color: #fff;
    border-radius: 4px;
}
.buttonF1:active {
    background-color: #2E5CB7;
    color: #E5E5E5;
}

.buttonF1:hover, .buttonF1:focus {
    color: #E5E5E5;
}

.buttonF1:disabled {
    background-color: #8D99A3;
    color: #fff;
    opacity: 1;
}

.btn-g1 {
    background-color: #FFFFFF;
    border: 0.26vmin #3366CC solid;
    color: #3366CC;
    font-size: 2.93vmin;
    font-weight: bold;
    border-radius : 0.8vmin;
}

.btn-g1:active {
    background-color: #F2F2F2;
    color: #3366CC;
}

.btn-g1:hover, .btn-g1:focus {
    color: #3366CC;
}

.btn-g1:disabled {
    background-color: #8D99A3;
    color: #FFFFFF;
    opacity: 1;
}

.btn-h1 {
    background-color: #4A4A4A;
    color: #FFFFFF;
}

.btn-h1:active {
    background-color: #424242;
    color: #F2F2F2;
}

.btn-h1:hover, .btn-h1:focus {
    color: #F2F2F2;
}

.btn-i1 {
    width: 20vmin;
    height: 9.6vmin;
    font-size: 4.53vmin;
    background-color: #36c;
    color: #fff;
    border-radius: 1.06vmin;
}
.btn-i1:active {
    background-color: #2E5CB7;
    color: #E5E5E5;
}

.btn-i1:hover, .btn-i1:focus {
    color: #E5E5E5;
}

.btn-i1:disabled {
    background-color: #8D99A3;
    color: #fff;
    opacity: 1;
}

div#title {
    background-color: #799FD3;
    text-align: center;
    vertical-align: middle;
    font-size: 17px;
    font-weight: bold;
    color:#fff;
    line-height: 3em;
}

.subtitleA {
    margin: 20px;
}

.subtitleB {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    font-size: 16px;
    text-align: center; /* for no-flexbox browsers */
}

.subtitleB:before,
.subtitleB:after {
    border-top: 1px solid;
    content: "";
    display: inline; /* for IE */
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex: 1;
    flex-grow: 1;
}

.subtitleB:before {
    margin-right: 16px;
}

.subtitleB:after {
    margin-left: 16px;
}

.subtitle-c {
    background-color: #3366CC;
    color:#fff;
    font-size: 3.2vmin;
    height: 8vmin;
    line-height: 2.4;
    text-align: center;
}


.tabmenuA {
    -webkit-padding-start:0;
    -webkit-margin-before:0;
    -webkit-margin-after:0;
    margin:auto;
    text-align:center;
    border-bottom: 1px solid #C8C7CC;
    padding:20px 0 4px;
}
.tabmenuA li {
    display: table-cell;
    vertical-align:middle;
    padding: 4px 0;
    font-size:17px;
}
.tabmenuA li a {
    text-decoration: none;
    color: #232527;
}

.tabmenuA li.ui-state-active a {
    text-decoration: none;
}

.tabmenuA li.ui-state-active a span {
    padding:6px 0;
    border-bottom: 4px solid #36c;
    color: #36c;
}

.tabmenuA li.ui-state-disabled a span {
    color:#C8C7CC;
}

.tabmenuB {
    -webkit-padding-start:0;
    -webkit-margin-before:0;
    -webkit-margin-after:0;
    margin:auto;
    /*text-align:center;*/
    border-bottom: 1px solid #C8C7CC;
    padding:0px 0 4px;    
}

.tabmenuB li {
    display: inline-block;
    vertical-align:middle;
    padding: 4px 0;
    font-size:17px;    
    outline: 0;
}

.tabmenuB li a {
    text-decoration: none;
    color: #232527;
    text-align:center;
}

.tabmenuB li.ui-state-active a {
    text-decoration: none;
}

.tabmenuB li.ui-state-active a span {
    padding:6px 0;
    border-bottom: 4px solid #36c;
    color: #36c;
}

.tabmenuB li.ui-state-disabled a span {
    color:#C8C7CC;
}

.tabmenuC {
    
}

.tabmenu-d.ui-tabs {
    border-width: 0;
    padding: 0;
}

.tabmenu-d > ul.ui-tabs-nav {
    background-color: #EEF2F7;
    border: none;
    border-bottom: 0.26vmin solid #DFDFDF;
    border-radius: 0;
    border-top: 0.26vmin solid #DFDFDF;
    display: flex;
    justify-content: center;
    padding: 2.66vmin;
}

.tabmenu-d > ul li.ui-state-default {
    background-color: #FFFFFF;
    border: 0.26vmin solid #3366CC;
    border-radius: 0;
    display: flex;
    flex: 1;
    justify-content: center;
}

.tabmenu-d > .ui-tabs-nav li.ui-state-default {
    margin: 0 -0.26vmin;
}

.tabmenu-d > ul li:first-of-type {
    border-bottom-left-radius: 1.33vmin;
    border-top-left-radius: 1.33vmin;
}

.tabmenu-d > ul li:last-of-type {
    border-bottom-right-radius: 1.33vmin;
    border-top-right-radius: 1.33vmin;
}

.tabmenu-d > ul li.ui-tabs-active {
    background-color: #3366CC;
}

.tabmenu-d > ul li.ui-state-default a {
    color: #3366CC;
    width: 100%;
}

.tabmenu-d > ul li.ui-tabs-active a {
    color: #FFFFFF;
}

/*応募ボタン*/
div.apply_button {
    text-align:center; 
    margin: 30px 16px 20px;
}

div.apply_button button {
    width: 100%;
}

/*簡単に定義*/
.text-color-black1 {
    color: #000000;
}
.text-color-blue1 {
    color: #102F6E;
}
.text-color-blue2 {
    color: #36c;
}
.text-color-blue3 {
    color: #799FD3;
}
.text-color-blue4 {
    color: #C7DFF2;
}
.text-color-gray1 {
    color: #C8C7CC;
}
.text-color-gray2 {
    color: #EEF2F7;
}
.text-color-gray3 {
    color: #8D99A3;
}
.text-color-gray4 {
    color: #4A4A4A;
}
.text-color-gray5 {
    color: #979797;
}
.text-color-gray6 {
    color: #DFDFDF;
}
.text-color-white1 {
    color: #FFF;
}
.text-color-orange1 {
    color: #F95027;
}
.text-color-yellow1 {
    color: #FFFF00;
}

.text-color-red1 {
    color: #FF0000;
}

.bg-color-blue1 {
    background-color: #102F6E;
}
.bg-color-blue2 {
    background-color: #36c;
}
.bg-color-blue3 {
    background-color: #799FD3;
}
.bg-color-blue4 {
    background-color: #C7DFF2;
}
.bg-color-gray1 {
    background-color: #C8C7CC;
}
.bg-color-gray2 {
    background-color: #EEF2F7;
}
.bg-color-gray3 {
    background-color: #8D99A3;
}
.bg-color-gray4 {
    background-color: #4A4A4A;
}
.bg-color-gray5 {
    background-color: #979797;
}
.bg-color-gray6 {
    background-color: #DFDFDF;
}
.bg-color-white1 {
    background-color: #FFF;
}

.form-horizontal-label-row {
    background-color: #C7DFF2;
    color: #102F6E;
    
    margin-bottom: 2vh;
    margin-left: 0;
    margin-right: 0;
    padding: 5px 5px;
    text-align: left;
}

.form-horizontal-label-row [class^="col-"] {
    padding-left: 0;
    padding-right: 0;
}

.form-horizontal-label-row label {
    margin-bottom: 0;
    margin-top: 3px;
    margin-left: 5px;
}

.form-horizontal .row-select-date {
    margin-left: 0;
}

.form-label-date {
    margin-top: 25px;
    margin-bottom: 20px;
    padding: 0;
}

.note {
    font-size: 12px;
    text-align: center;
    margin:10px 0 25px;
}

.invalid-input-value {
    border-color: #f00;
}
input[type=text].invalid-input-value,
input[type=password].invalid-input-value
{
    border-color: #f00;
}

.ios_text {
    margin: 1em 25px;
    font-size: 12px
}

.bg-loading {
    display: table;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 999;
}

.bg-loading .loadingMsg {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    padding-top: 140px;
    background: url("./images/ajax-loader.gif") center center no-repeat;
}

.message-area {
    padding: 5px 10px;
}

.top-message {
    margin-bottom: 6vh;
    margin-top: 3vh;
    text-align: center;
    line-height: 1.7em;
    font-size: 17px;
}

a.link-access {
    color: #0000FF;
    text-decoration: underline;
}

.sns_buttons {
    height: 1.5em;
    margin: 10px;
}
.sns_buttons a {
    outline: 0;
}

.sns_buttons > div {
    float: right;
    padding: 0 5px;
}

.sns_buttons:after {
    clear: both;
    display: block;
}

.button-seibuapp {
    align-items: center;
    background-color: #36c;
    border: 1px solid #36c;
    border-radius: 5px;
    -webkit-box-shadow: none;
    box-shadow: none;
    color: #ffffff;
    display: flex;
    font-size: 17px;
    justify-content: center;
    outline: none;
    padding: 5px;
    text-align: center;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}

.button-seibuapp:disabled {
    background-color: #8D99A3;
    border: 1px solid #8D99A3;
}

.ripple {
    position: relative;
    overflow: hidden;
}

.ripple .rp-effect {
    position: absolute;
    border-radius: 50%;
    opacity: 0.35;
    transform: scale(0);
    background: #000;
    animation: ripple 700ms;
    pointer-events: none;
}

@-webkit-keyframes ripple {
    to {
        opacity: 0;
        transform: scale(2.0);
    }
}

@keyframes ripple {
    to {
        opacity: 0;
        transform: scale(2.0);
    }
}

.btn-dialog-ok {
    background-color: #fff;
    color: #36c;
    font-weight: bold;
}

.btn-dialog-cancel {
    background-color: #fff;
    color: #36c;
    font-weight: bold;
}

.dialog-versionup > .modal-window-footer {
    border-top: none;
    margin-top: 0;
}
