body {
font-size:12px;
background:#fff;

color:#333;
overflow-x:hidden;
}
body * {
border-color:#ccc;
}
.defc {
background-color:#fff;
color:#333;
}
.tbg {
background:#eee;
color:#333;
}
h2 {
  border:1px solid #ccc;
  border-radius:5px;
  background:#eee;
  margin-bottom:10px;
  font-size:150%;
  font-weight:900;
  padding:10px;
}
h3 {
  border-bottom:1px solid #ccc;
  background:#eee;
  margin-bottom:10px;
  font-size:130%;
  font-weight:900;
  padding:5px;
}
a {
text-decoration: none;
color:#333;
}
a:hover {
text-decoration: none;
color:#333;
}
.tab a {
  background-color:#fff;
  border:1px solid #888;
  border-radius:4px;
  padding:1px 5px;
}
.tab strong {
  background-color:#ddd;
  border:1px solid #888;
  border-radius:4px;
  padding:1px 5px;
}
.edit_link {
border-color:#f00 !important;
}
body .tbg .container #nv_area .navbar_toggle {
border-color:#aaa !important;
}
body .tbg .container #nv_area .navbar_toggle .icon_bar {
background:#aaa !important;
}.H04 {
padding:5px;
}
.H04 .ttl {
display:block;
float:left;
}
.H04 .ttl h2 {
border:0;
text-align:left;
margin:0;
margin-bottom:3px;
width: max-content !important;
padding:0;
}
.H04 .ttl h2 div {
border:0;
width:100%;
height:auto;
}
.H04 .ttl span {
padding-left:0.5em;
display:block;
margin:0;
width: max-content !important;
}
.top_bg {
	background-repeat:no-repeat;
	background-position:0% 50%;
	background-size:cover;
}
.top_bg .overlay_black {
	background-color: rgba(0, 0, 0, 0.5);
}
.top_bg .container {
	padding:0;
}
.top_bg_content {
	padding:130px 45% 130px 0;
	background-repeat:no-repeat;
	background-position:100% 50%;
	color:#fff;
	padding-right:45%;
	text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
}
.top_bg_content h2 {
font-family: "Sawarabi Gothic";
font-size:360%;
font-weight:700;
margin-bottom:10px;
padding-bottom:10px;
border:0;
border-bottom:2px solid #ff0;
background:none;
border-radius:0;
}
.top_bg_content h2 strong {
	font-family: 'Roboto Condensed', sans-serif;
	font-size:140%;
}
.top_bg_content p {
	font-size:150%;
	font-weight:700;
       padding-left:1em;
}
.C1112 {
padding:20px 0 0 !important;
}
.O1004 img {
display: block;
margin: 0 auto;
}
.O1004 main note4 .txt,
.O1004 main .note4,
.O1004 aside .blst {
margin-top:20px;
}
.O1004 aside .blst a div {
width:100%;
display:inline-block;
border-bottom-style:solid;
border-bottom-width:1px;
padding-top:5px;
}
.O1004 main span,
.O1004 aside .blst span {
font-size:80%;
text-align:right;
display:inline-block;
width:100%;
}
.O1004 .contents {
}
.O1004 .contents .container {
width:100%;
}
.O1004 aside {
padding-top:20px !important;
padding-left:15px !important;
}
.O1004 .nav_side_menu {
  overflow: auto;
  font-weight: 200;
  top: 0px;
  border-radius:4px;
  overflow:hidden;
}
.O1004 .nav_side_menu div:nth-child(1) {
  line-height:2.5;
  display: block;
  text-align: center;
}
.O1004 .nav_side_menu .toggle-btn {
  display: none;
}
.O1004 .nav_side_menu ul,
.O1004 .nav_side_menu li {
  list-style: none;
  margin: 0px;
  line-height: 35px;
  cursor: pointer;
}
.O1004 .nav_side_menu li {
  padding-left: 1em !important;
}
.O1004 .nav_side_menu ul :not(collapsed) .arrow:before,
.O1004 .nav_side_menu li :not(collapsed) .arrow:before {
  font-family: FontAwesome;
  content: "";
  display: inline-block;
  padding-left: 10px;
  padding-right: 10px;
  vertical-align: middle;
  float: right;
}
.O1004 .nav_side_menu ul .active,
.O1004 .nav_side_menu li .active {
  opacity: 0.3;
}
.O1004 .nav_side_menu ul .sub_menu li.active,
.O1004 .nav_side_menu li .sub_menu li.active {
  opacity: 0.3;
}
.O1004 .nav_side_menu ul .sub_menu li.active a,
.O1004 .nav_side_menu li .sub_menu li.active a {
}
.O1004 .nav_side_menu ul .sub_menu li,
.O1004 .nav_side_menu li .sub_menu li {
  line-height: 2;
  border-top-style:solid;
  border-top-width:1px;
  margin-left: 0px;
}
.O1004 .nav_side_menu ul .sub_menu li:hover,
.O1004 .nav_side_menu li .sub_menu li:hover {
  opacity: 0.3;
}
.O1004 .nav_side_menu ul .sub_menu li:before,
.O1004 .nav_side_menu li .sub_menu li:before {
  font-family: FontAwesome;
  content: "";
  display: inline-block;
  padding-left: 10px;
  padding-right: 10px;
  vertical-align: middle;
}
.O1004 .nav_side_menu li {
  padding-left: 0px;
  border-top-style:solid;
  border-top-width:1px;
}
.O1004 .nav_side_menu li a {
  text-decoration: none;
}
.O1004 .nav_side_menu li a i {
  padding-left: 10px;
  width: 40px;
  padding-right: 20px;
}
.O1004 .nav_side_menu li:hover {
  opacity: 0.3;
  -webkit-transition: all 1s ease;
  -moz-transition: all 1s ease;
  -o-transition: all 1s ease;
  -ms-transition: all 1s ease;
  transition: all 1s ease;
}
@media(max-width:767px) {
  .O1004 .nav_side_menu {
    border:none;
  }
}
@media (min-width: 768px) {
 .O1004 .nav_side_menu .menu_list .menu_content {
    display: block;
  }
  .O1004 .nav_side_menu {
    border-style:solid;
    border-width:1px;
  }
}
.O1004 .caret {
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: 2px;
    margin-top: 3px;
    vertical-align: middle;
    border-top: 5px solid;
    border-right: 5px solid transparent !important;
    border-left: 5px solid transparent !important;
    border-bottom: 5px solid transparent !important;
}
.O1004 .tab {
margin-top:10px;
}
.O1004 .tab a,
.O1004 .tab strong {
  border:1px solid #aaa;
  border-radius:3px;
  padding:0 5px;
  margin:1px;
}
.O1004 .src {
  width:100%;
  margin-bottom: 5px;
}
.O1004 .src input {
  margin:0;
  font-size:14px;
  border:1px solid #ccc;
}
.O1004 .src input[type="text"] {
  width:75%;
  padding:2px;
}
.O1004 .src input[type="submit"] {
  padding:6px;
  color:#444;
}
.O1004 .src form {
    text-align: right;
    padding: 0;
}
.O1004 .src > div  {
    float: left;
    padding: 0;
    display:inline;
}
.O1004 .src p {
position:relative;
font-size:40px;
margin-top:-14px;
font-family:"CartFont" !important;
}
.O1004 .src div span {
  line-height:0.8;
  font-size:10px;
  color:#f00;
  font-weight: bold;
  background:#fff;
  padding:3px;
  margin:-40px 20px;
  border-radius:4px;
  border:1px solid #08f;
  position:absolute;
}
@media(max-width:767px) {
.O1004 aside .blst {
width:calc(100% - 15px);
}
.O1004 .src input {
  margin:30px 0 0;
}
}
.E01 {
font-size:14px;
margin-top:20px;
padding:10px 0;
}
.E01 .copyright {
	text-align:center;
	padding:0;
}