/* materialize.cssを上書きする */
@charset "utf-8";

body {
  font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-size: 14px;
}

button, input, optgroup, select, textarea {
  font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-size: 14px;
}

header {
	position: fixed;
	width: 100%;
	border: solid 1px #ddd;
}

.row {
	margin: 0px;
	padding: 0px;
}

/* フォントサイズがちょっと大きかったので調整 */
h1 { font-size: 2.50rem; line-height: 110%; margin: 0px; }
h2 { font-size: 2.15rem; line-height: 110%; margin: 0px; }
h3 { font-size: 2.00rem; line-height: 110%; margin: 0px; }
h4 { font-size: 1.45rem; line-height: 110%; margin: 0px; }
h5 { font-size: 1.30rem; line-height: 110%; margin: 0px; }
h6 { font-size: 1.15rem; line-height: 110%; margin: 0px; }

.row .col {
  padding: 0 .5rem;
}

.tabs .tab a {
  color: #333;
  background-color: #e3f2fd;
  display: block;
  width: 100%;
  height: 100%;
  padding: 0 24px;
  font-size: 14px;
  text-overflow: ellipsis;
  overflow: hidden;
  /*-webkit-transition: color .28s ease, background-color .28s ease;*/
  /*transition: color .28s ease, background-color .28s ease;*/
}

.tabs .tab a:hover, .tabs .tab a.active {
  background-color: transparent;
  color: #333;
  background-color: #64b5f6;
}

.tabs .indicator {
  position: absolute;
  bottom: 0;
  height: 2px;
  background-color: #0d47a1;
  will-change: left, right;
}

.tabs .tab a:focus, .tabs .tab a:focus.active {
  background-color: #e3f2fd;
  outline: none;
}


.input-field {
    position: relative;
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}

.sidenav li > a {
  color: rgba(0,0,0,0.87);
  display: block;
  font-size: 14px;
  font-weight: 500;
  height: 48px;
  line-height: 48px;
  padding: 0 16px;
}

.sidenav li.active {
    background-color: #bbdefb;
}

.sidenav li > a:hover {
  background-color: #e3f2fd;
}

.sidenav .collapsible-header:hover, .sidenav.fixed .collapsible-header:hover {
    background-color: #e3f2fd;
}

.sidenav .collapsible-body > ul:not(.collapsible) > li.active, .sidenav.sidenav-fixed .collapsible-body > ul:not(.collapsible) > li.active {
  background-color: #e1f5fe;
}

.sidenav .collapsible-body > ul:not(.collapsible) > li.active a, .sidenav.sidenav-fixed .collapsible-body > ul:not(.collapsible) > li.active a {
    color: #333;
}

.sidenav li > a > i, .sidenav li > a > [class^="mdi-"], .sidenav li > a li > a > [class*="mdi-"], .sidenav li > a > i.material-icons {
    float: left;
    height: 48px;
    line-height: 48px;
    margin: 0 0 0 0;
    width: 24px;
    color: rgba(0,0,0,0.54);
}

.sidenav .collapsible>.active .collapsible-header .chevron {
  transform: rotate(-90deg);
}

label {
  color: #333;
  font-size: .9rem;
}

.input-field > label {
  color: #333;
  font-size: 1.1rem;
}

.page-footer {
    padding-top: 20px;
    color: #333;
    background-color: #0d47a1;
}

.page-footer .footer-copyright {
    color: #333;
}

.card .card-content .card-title {
    display: block;
    line-height: 20px;
    margin-bottom: 0px;
}

.card .card-title {
    font-size: 20px;
    font-weight: 300;
}

.card .card-action {
  font-size: 20px;
  font-weight: 300;
  background-color: inherit;
  border-top: 1px solid rgba(160,160,160,0.2);
  position: relative;
  padding: 10px 10px;
}

input:not([type]),
input[type="text"]:not(.browser-default),
input[type="password"]:not(.browser-default),
input[type="email"]:not(.browser-default),
input[type="url"]:not(.browser-default),
input[type="time"]:not(.browser-default),
input[type="date"]:not(.browser-default),
input[type="datetime"]:not(.browser-default),
input[type="datetime-local"]:not(.browser-default),
input[type="tel"]:not(.browser-default),
input[type="number"]:not(.browser-default),
input[type="search"]:not(.browser-default),
textarea.materialize-textarea {
  background-color: transparent;
}

input:not([type]):focus:not([readonly]) + label,
input[type="text"]:not(.browser-default):focus:not([readonly]) + label, input[type="password"]:not(.browser-default):focus:not([readonly]) + label,
input[type="email"]:not(.browser-default):focus:not([readonly]) + label, input[type="url"]:not(.browser-default):focus:not([readonly]) + label,
input[type="time"]:not(.browser-default):focus:not([readonly]) + label,
input[type="date"]:not(.browser-default):focus:not([readonly]) + label, input[type="datetime"]:not(.browser-default):focus:not([readonly]) + label,
input[type="datetime-local"]:not(.browser-default):focus:not([readonly]) + label, input[type="tel"]:not(.browser-default):focus:not([readonly]) + label,
input[type="number"]:not(.browser-default):focus:not([readonly]) + label, input[type="search"]:not(.browser-default):focus:not([readonly]) + label,
textarea.materialize-textarea:focus:not([readonly]) + label {
    color: #0d47a1;
    font-weight: bold;
}

input:not([type]):focus:not([readonly]),
input[type="text"]:not(.browser-default):focus:not([readonly]),
input[type="password"]:not(.browser-default):focus:not([readonly]),
input[type="email"]:not(.browser-default):focus:not([readonly]),
input[type="url"]:not(.browser-default):focus:not([readonly]),
input[type="time"]:not(.browser-default):focus:not([readonly]),
input[type="date"]:not(.browser-default):focus:not([readonly]),
input[type="datetime"]:not(.browser-default):focus:not([readonly]),
input[type="datetime-local"]:not(.browser-default):focus:not([readonly]),
input[type="tel"]:not(.browser-default):focus:not([readonly]),
input[type="number"]:not(.browser-default):focus:not([readonly]),
input[type="search"]:not(.browser-default):focus:not([readonly]),
textarea.materialize-textarea:focus:not([readonly]) {
    border-bottom: 1px solid #0d47a1;
    -webkit-box-shadow: 0 1px 0 0 #26a69a;
    box-shadow: 0 1px 0 0 #0d47a1;
}

input.valid:not([type]),
input.valid:not([type]):focus,
input.valid[type="text"]:not(.browser-default),
input.valid[type="text"]:not(.browser-default):focus,
input.valid[type="password"]:not(.browser-default),
input.valid[type="password"]:not(.browser-default):focus,
input.valid[type="email"]:not(.browser-default),
input.valid[type="email"]:not(.browser-default):focus,
input.valid[type="url"]:not(.browser-default),
input.valid[type="url"]:not(.browser-default):focus,
input.valid[type="time"]:not(.browser-default),
input.valid[type="time"]:not(.browser-default):focus,
input.valid[type="date"]:not(.browser-default),
input.valid[type="date"]:not(.browser-default):focus,
input.valid[type="datetime"]:not(.browser-default),
input.valid[type="datetime"]:not(.browser-default):focus,
input.valid[type="datetime-local"]:not(.browser-default),
input.valid[type="datetime-local"]:not(.browser-default):focus,
input.valid[type="tel"]:not(.browser-default),
input.valid[type="tel"]:not(.browser-default):focus,
input.valid[type="number"]:not(.browser-default),
input.valid[type="number"]:not(.browser-default):focus,
input.valid[type="search"]:not(.browser-default),
input.valid[type="search"]:not(.browser-default):focus,
textarea.materialize-textarea.valid,
textarea.materialize-textarea.valid:focus,
.select-wrapper.valid > input.select-dropdown {
    border-bottom: 1px solid #2196f3;
    -webkit-box-shadow: 0 1px 0 0 #2196f3;
    box-shadow: 0 1px 0 0 #2196f3;
}

[type="checkbox"] + span:not(.lever) {
    position: relative;
    padding-left: 35px;
    cursor: pointer;
    display: inline-block;
    height: 22px;
    line-height: 22px;
    font-size: 1rem;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

[type="radio"]:not(:checked) + span, [type="radio"]:checked + span {
    position: relative;
    padding-left: 35px;
    cursor: pointer;
    display: inline-block;
    height: 22px;
    line-height: 22px;
    font-size: 1rem;
    -webkit-transition: .28s ease;
    transition: .28s ease;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

select {
  background-color: transparent;
  border-bottom: solid 1px #9e9e9e;
}

td, th {
  padding: 10px 5px;
}

[type="radio"]:checked + span::after, [type="radio"].with-gap:checked + span::before, [type="radio"].with-gap:checked + span::after {
    border: 2px solid #333;
}

.btn, .btn-large, .btn-small {
    text-decoration: none;
    color: #fff;
    background-color: #0277bd;
    text-align: center;
    letter-spacing: .5px;
    -webkit-transition: background-color .2s ease-out;
    transition: background-color .2s ease-out;
    cursor: pointer;
}

.btn:hover, .btn-large:hover, .btn-small:hover {
    background-color: #0d47a1;
}

.material-tooltip {
  padding: 10px 8px;
  font-size: 1rem;
  z-index: 2000;
  background-color: transparent;
  border-radius: 2px;
  min-height: 36px;
  line-height: 150%;
  opacity: 0;
  position: absolute;
  text-align: left;
  max-width: calc(100% - 4px);
  overflow: hidden;
  left: 0;
  top: 0;
  pointer-events: none;
  visibility: hidden;
  color: #fff;
  background-color: #311b92;
  font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-size: 1.0em;
  font-weight: 0;
}

/* original css */
.nowrap {
  white-space: nowrap;
}

.display-none {
  display: none;
}

.header {
  color: #fff;
  background-color: #0d47a1;
}

.hamburger_color {
  color: #fafafa;
}

.bg_sat { background-color: #DDF1F9; }
.bg_sun { background-color: #FFDFE5; }

.bg_header { color: #fff; background-color: #0d47a1; }
.bg_footer { color: #fff; background-color: #0d47a1; }

.text-al { text-align: left; }
.text-ac { text-align: center; }
.text-ar { text-align: right; }

.border-a { border: solid 1px #dddddd; }
.border-l { border-left: solid 1px #dddddd; }
.border-t { border-top: solid 1px #dddddd; }
.border-r { border-right: solid 1px #dddddd; }
.border-b { border-bottom: solid 1px #dddddd; }

.rem12 { font-size: 1.2rem; }
.rem11 { font-size: 1.1rem; }
.rem10 { font-size: 1.0rem; }
.rem09 { font-size: 0.9rem; }
.rem08 { font-size: 0.8rem; }
.rem07 { font-size: 0.7rem; }

.pa0  { padding:         0px; }
.pa5  { padding:         5px; }
.pa10 { padding:        10px; }
.pa15 { padding:        15px; }
.pa20 { padding:        20px; }

.pl0  { padding-left:    0px; }
.pl5  { padding-left:    5px; }
.pl10 { padding-left:   10px; }
.pl15 { padding-left:   15px; }
.pl20 { padding-left:   20px; }

.pt0  { padding-top:     0px; }
.pt5  { padding-top:     5px; }
.pt7  { padding-top:     7px; }
.pt10 { padding-top:    10px; }
.pt15 { padding-top:    15px; }
.pt20 { padding-top:    20px; }

.pr0  { padding-right:   0px; }
.pr5  { padding-right:   5px; }
.pr10 { padding-right:  10px; }
.pr15 { padding-right:  15px; }
.pr20 { padding-right:  20px; }

.pb0  { padding-bottom:  0px; }
.pb5  { padding-bottom:  5px; }
.pb10 { padding-bottom: 10px; }
.pb15 { padding-bottom: 15px; }
.pb20 { padding-bottom: 20px; }

.ma0  { margin:          0px; }
.ma5  { margin:          5px; }
.ma10 { margin:         10px; }
.ma15 { margin:         15px; }
.ma20 { margin:         20px; }

.ml0  { margin-left:     0px; }
.ml5  { margin-left:     5px; }
.ml10 { margin-left:    10px; }
.ml15 { margin-left:    15px; }
.ml20 { margin-left:    20px; }

.mt0  { margin-top:      0px; }
.mt3  { margin-top:      3px; }
.mt5  { margin-top:      5px; }
.mt7  { margin-top:      7px; }
.mt10 { margin-top:     10px; }
.mt15 { margin-top:     15px; }
.mt20 { margin-top:     20px; }
.mt25 { margin-top:     25px; }
.mt30 { margin-top:     30px; }

.mr0  { margin-right:    0px; }
.mr5  { margin-right:    5px; }
.mr10 { margin-right:   10px; }
.mr15 { margin-right:   15px; }
.mr20 { margin-right:   20px; }

.mb0  { margin-bottom:   0px; }
.mb5  { margin-bottom:   5px; }
.mb10 { margin-bottom:  10px; }
.mb15 { margin-bottom:  15px; }
.mb20 { margin-bottom:  20px; }

.pt5p  { padding-top:     5%; }
.pt10p { padding-top:    10%; }
.pt15p { padding-top:    15%; }
.pt20p { padding-top:    20%; }

.mt5p  { margin-top:      5%; }
.mt10p { margin-top:     10%; }
.mt15p { margin-top:     15%; }
.mt20p { margin-top:     20%; }
.mt25p { margin-top:     25%; }
.mt30p { margin-top:     30%; }

.mb5p  { margin-bottom:   5%; }
.mb10p { margin-bottom:  10%; }
.mb15p { margin-bottom:  15%; }
.mb20p { margin-bottom:  20%; }
.mb25p { margin-bottom:  25%; }
.mb30p { margin-bottom:  30%; }

.wid50  { width:     50px; }
.wid60  { width:     60px; }
.wid70  { width:     70px; }
.wid80  { width:     80px; }
.wid90  { width:     90px; }
.wid100 { width:    100px; }
.wid150 { width:    150px; }
.wid200 { width:    200px; }

/* datepicker */
.datepicker-date-display { text-align:center; }
.year-text { font-size:1.5rem !important; }
.day-text, .month-text { font-size:2rem; }
.date-text { font-size:6rem !important; padding:1.4rem; }

/* PageTop */
#page-top {
  position: fixed;
  bottom: 5px;
  right: 20px;
  font-size: 14px;
  line-height: 1;
  z-index: 99;
}
#page-top a {
  background: #2962ff;
  text-decoration: none;
  color: #fff;
  width: 50px;
  padding: 10px;
  padding-top: 12px;
  text-align: center;
  display: block;
  border-radius: 30px;
  opacity: 0.9;
  transition: all .3s ease;
}
#page-top a:hover {
  text-decoration: none;
  opacity: .5;
}

.fade {
  transition: all 2000ms;
  opacity: 0;
  visibility: hidden;
  transform: translate(0px, 50px);
}

.fadein {
  opacity: 1;
  visibility: visible;
  transform: translate(0px, 0px);
}
