body,td,th,pre, input, textarea {
  font-family: 'Noto Sans Japanese' !important;
}
i, cite, em, var, address, dfn {
  font-style: normal;
}


/* colors */
.info, .blue {
  color: blue;
}
.green {
  color: green;
}
.red, .danger {
  color: red;
}
.warn, .orange {
  color: orange;
}
.bg_white {
  background-color: #ffffff;
}
.padding5 {
  padding: .5em;
}
.padding10 {
  padding: 1em;
}
.padding10px {
  padding: 10px;
}
.pointer {
	cursor: pointer;
}


.navbar-inverse {
  border: none;
  background: none;
  padding: 0;
}

/* disable buttons.css height style */
button.button {
  height: 51.2px;
}

.memo_icon {
  cursor: pointer;
}

.flex-container {
	display: flex;
	justify-content: space-around;
}
.flex-box {
  width: 100%;
  flex-grow: 1;
  margin: 0 1em;
}

/* override bootstrap css */
.form-control {
  width: auto;
  display: inline-block;
}

/* for Modal */
#lean_overlay {
    position: fixed;
    z-index:100;
    top: 0px;
    left: 0px;
    height:100%;
    width:100%;
    background: #000;
    display: none;
}

/* for user registration */
.child_form {
  line-height: 50px;
}


[class*="status_"] {
  border-radius: 4px;
  box-shadow: 0 0 2px #ffffff inset;
  color: #fff;
  display: inline-block;
  font-weight: bold;
  margin: 0 auto;
  padding: 3px 0;
  width: 85px;
  font-size: 14px;
}
.status_red {
	background-color: #FF4A4A;
}
.status_blue {
	background-color: #4169E1;
}
.status_green {
	background-color: green;
}
.status_orange {
	background-color: #ff892a;
}

/* 入金ステータス */
.status_cancel {
	background: #ff5c5c;
  font-weight: bold;
	text-align:center;
}
.status_waiting_selection {
  background-color: #fa9915;
  font-weight: bold;
	text-align:center;
}
.status_rejected {
  background: #febbbb; /* Old browsers */
	/* IE9 SVG, needs conditional override of 'filter' to 'none' */
	background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPHJhZGlhbEdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgY3g9IjUwJSIgY3k9IjUwJSIgcj0iNzUlIj4KICAgIDxzdG9wIG9mZnNldD0iMCUiIHN0b3AtY29sb3I9IiNmZWJiYmIiIHN0b3Atb3BhY2l0eT0iMSIvPgogICAgPHN0b3Agb2Zmc2V0PSIzMCUiIHN0b3AtY29sb3I9IiNmZTkwOTAiIHN0b3Atb3BhY2l0eT0iMSIvPgogICAgPHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjZmY1YzVjIiBzdG9wLW9wYWNpdHk9IjEiLz4KICA8L3JhZGlhbEdyYWRpZW50PgogIDxyZWN0IHg9Ii01MCIgeT0iLTUwIiB3aWR0aD0iMTAxIiBoZWlnaHQ9IjEwMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
	background: -moz-radial-gradient(center, ellipse cover, #febbbb 0%, #fe9090 30%, #ff5c5c 100%); /* FF3.6+ */
	background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%,#febbbb), color-stop(30%,#fe9090), color-stop(100%,#ff5c5c)); /* Chrome,Safari4+ */
	background: -webkit-radial-gradient(center, ellipse cover, #febbbb 0%,#fe9090 30%,#ff5c5c 100%); /* Chrome10+,Safari5.1+ */
	background: -o-radial-gradient(center, ellipse cover, #febbbb 0%,#fe9090 30%,#ff5c5c 100%); /* Opera 12+ */
	background: -ms-radial-gradient(center, ellipse cover, #febbbb 0%,#fe9090 30%,#ff5c5c 100%); /* IE10+ */
	background: radial-gradient(ellipse at center, #febbbb 0%,#fe9090 30%,#ff5c5c 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#febbbb', endColorstr='#ff5c5c',GradientType=1 ); /* IE6-8 fallback on horizontal gradient */
  font-weight: bold;
	text-align:center;
}
.status_waiting_payment {
  background-color: #518EE8;
}
.status_paid {
  background-color: #7db500;
}
.status_repayment {
  background-color: #E8AC51;
}
.status_recess {
  background-color: #AC51E8;
}

.chusen_style, .tosen_style, .rakusen_style {
	border-radius: 4px;
	box-shadow: 0 0 2px #ffffff inset;
	color: #fff;
	display: inline-block;
	margin: 0 auto;
	padding: 3px 0;
	width: 85px;
	font-size: 14px;
  font-weight: bold;
	text-align:center;
}
.chusen_style {
	background-color: #fa9915;
}
.tosen_style {
	background-color: #7db500;
}
table.table_info td.tosen_style {
	color: #FFFFFF;
	background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2EwZTgwMCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzZiOWMwMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
	background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #a0e800), color-stop(100%, #6b9c00));
	background: -moz-linear-gradient(top, #a0e800, #6b9c00);
	background: -webkit-linear-gradient(top, #a0e800, #6b9c00);
	background: linear-gradient(to bottom, #a0e800, #6b9c00);
}
.rakusen_style {
	background: #ff5c5c;
}

/* default style */
.inline_block {
  display: inline-block;
	padding: 0;
}
.inline {
  display: inline;
}
.inline_list li {
  display: inline;
}
.small {font-size: 80%;}

.drop_down_menu {
  list-style-type: none;
  position: relative;
  margin: 0;
  padding: 0;
}
.drop_down_menu button {
  height: 2.5em;
  width: 15em;
}
.drop_down_menu button > i {
  font-size: 1.2em;
}
.drop_down_menu li{
  position: relative;
  margin: 0;
  padding: 5px;
}
.dropdown_close .open_icon {
  display: none;
}
.dropdown_open .close_icon {
  display: none;
}
.drop_down_menu .child {
  list-style-type: none;
  display: none;
  position: absolute;
  right: 0;
  left: 0;
  padding: 0;
  background-color: black;
  box-shadow: 0 12px 10px 0 rgba(0,0,0,.3);
}
.drop_down_menu .child li {
  margin: 1px;
  padding: 0px;
}


/* マイページ用 */
#point_notice {
    display: flex;
    padding: 0 0 1em;
}
.point_notice_box {
    text-align: center;
}
.point_amount {
    color: red;
}
.shadow_box {
    margin: 20px;
    background: #d9ebfe;
    box-shadow: 0 0 50px #5e96d2 inset;
    -moz-box-shadow: 0 0 50px #5e96d2 inset;
    -webkit-box-shadow: 0 0 50px #5e96d2 inset;
}


.notice_box {
    flex-grow: 1;
    position: relative;
    z-index: 1;
    padding: 9px;
    margin: 0 .5em;
    font-size: 1.1em;
    border: 1px #f4f4f4 solid;
}
.content_html {
    white-space: pre-wrap;
    word-wrap: break-word;
    overflow: auto;
    margin: 0;
    height: 210px;
}
.user_box {
    margin: 0 0 1em;
    padding: 9px;
    margin: 0 .5em;
    background-color: #f4f4f4;
}
.user_box h2 {
    margin: 0;
}
.user_box label {
    font-weight: bold;
    margin: 9px 0;
}

.mypage_content {
    border-radius: 4px;
    border: 1px #ddd solid;
    padding: 14px 18px;
}

.schedules_container {
  display: flex;
  flex-direction: column;
  margin: 1em;
}

.dropdown_box {
  background-color: #f2f2f2;
  border: 2px dashed #f6af3a;
  border-radius: 8px;
  box-shadow: 0 0 0 4px #f2f2f2;
  padding: 1.5em;
  color: black;
  text-align: center;
}

/* dropdown menu */
.mypage_menu a {
  padding: 0 20px;
  box-sizing: border-box;
}
.mypage_menu .button {
}
.mypage_menu .dropdown a {
  font-size: 22px;
  height: 51.2px;
  line-height: 51.2px;
}

/* 下矢印 */
.init-bottom:after {
    content: '';
    display: inline-block;
    width: 6px;
    height: 6px;
    margin: 0 0 0 15px;
    border-right: 1px solid black;
    border-bottom: 1px solid black;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

/* floatクリア */
.menu:before,
.menu:after {
    content: " ";
    display: table;
}

.menu:after {
    clear: both;
}

.menu {
}

.menu > li.menu__single {
    position: relative;
}

li.menu__single ul.menu__second-level {
    position: absolute;
    top: 40px;
    width: 100%;
    background: #b6d2aa;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}

li.menu__single:hover ul.menu__second-level {
    top: 50px;
    visibility: visible;
    opacity: 1;
}

/* コンポーネント */
.birthday_selection {
  display: flex;
  align-items: center;
}

.header-border-1 {
	margin: 0;
  border-width: 5px 0 0 0;
  border-style: solid;
  border-color: #552b7d;
}
.header-border-2 {
	margin: 0;
  border-width: 2px 0 0 0;
  border-style: solid;
  border-color: #3e6d27;
}

/* 印刷用設定 */
@media print {
  .no_print {
    display: none;
  }
}

.success {
    border-color: #c7eed8;
    background-color: #d7f3e3;
    padding: 8px;
    margin: 5px;
}

.error {
    border-color: #f7c6c5;
    background-color: #f9d6d5;
    padding: 8px;
    margin: 15px;
}

/* for spf-sendai */
.spf-sendai-payment-selection-label {
    font-size: 1.1em;
    padding-left: 12px;
    padding-right: 16px;
    padding-top: 4px;
    font-weight: bold;
}
