body {
	background: url(../images/body_bg.jpg) no-repeat center top;
	border-top: 2px solid #F80051;
}
#wrap {}
#hd {
	background:#FFF;
}
#hd h1 {}
#hd h1 a {
	width:100%;
	height:100%;
	display:block
}
#hd h1 img {
	width:50%;
	padding:23px 0 23px 30px;
}

/* ==== Navigation === */
.nav_open {
	right:0px !important
}
#nav {
	-webkit-transition:All 0.5s ease;
	transition:All 0.5s ease;
	position:fixed;
	top:0px;
	right:-200px;
	height:calc(100% + 500px);
	padding-bottom:500px;
	z-index:100;
	width:200px;
	overflow-x:none;
	overflow-y:auto;
	background:#FFCBE4;
	color:#F80051;
}
#nav ul {
	display:block;
	margin:0;
	padding:0
}
#nav ul li {
	display:block;
	margin:0
}
#nav ul li a {
	font-size:13px;
	color:#F80051;
	display:block;
	padding:18px 10px;
	text-decoration:none;
	border-bottom:1px solid #fff;
	position:relative
}
#nav ul li a:hover {
	background:#F80051;
	color: #FFF;
}
.menu-trigger {
	z-index:1000;
	position:fixed !important;
	top:25px;
	right:15px;
	display:block;
	margin-top:-5px
}
.menu-trigger, .menu-trigger span {
	display:inline-block;
-webkit-transition:all .4s;
transition:all .4s;
	box-sizing:border-box
}
.menu-trigger {
	position:relative;
	width:36px;
	height:24px
}
.menu-trigger span {
	position:absolute;
	left:0;
	width:100%;
	height:4px;
	background-color:#F80051;
	border-radius:4px
}
.menu-trigger span:nth-of-type(1) {
top:0
}
.menu-trigger span:nth-of-type(2) {
top:10px
}
.menu-trigger span:nth-of-type(3) {
bottom:0
}
.menu-trigger::after {
position:absolute;
left:0;
bottom:-20px;
content:'MENU';
display:block;
width:100%;
color:#F80051;
font-size:10px;
text-decoration:none;
text-align:center;
-webkit-transition:all .4s;
transition:all .4s
}
.menu-trigger.active::after {
content:'CLOSE';
bottom:-25px;
color:#F80051
}
.menu-trigger.active span:nth-of-type(1) {
-webkit-transform:translateY(10px) rotate(-45deg);
-ms-transform:translateY(10px) rotate(-45deg);
transform:translateY(10px) rotate(-45deg);
background:#F80051
}
.menu-trigger.active span:nth-of-type(2) {
opacity:0;
background:#F80051
}
.menu-trigger.active span:nth-of-type(3) {
-webkit-transform:translateY(-10px) rotate(45deg);
-ms-transform:translateY(-10px) rotate(45deg);
transform:translateY(-10px) rotate(45deg);
background:#F80051
}


#con {
	width:90%;
	margin:0 auto;
	background:#FFFFFF;
	padding:0px 15px 20px;
	box-sizing:border-box;
}
#main {}
#main ol, #main ul {
	padding:5px 0px 5px 25px
}
#main ul {
	list-style-type:disc
}
#main ol li, #main ul li {
	padding:5px 0px
}
#main table {
	margin:10px 0px
}
#main table th, #main table td {
	padding:5px
}
#main a img {
	display:inline-block;
	-webkit-transition:All 0.5s ease;
	transition:All 0.5s ease
}
#main a img:hover {
	opacity:0.7
}
#main h2 {
	border-bottom:5px solid #F80051;
	font-size:20px;
	color: #666;
	padding-bottom:5px;
	padding-left:10px;
	margin-top:20px;
}
#main h3 {
	background:#FFCBE4;
	font-size:15px;
	font-weight:normal;
	border-radius:5px;
	margin:30px 0 5px;
	padding: 8px 5px 8px 20px;

}
#main h4 {}
#main h5 {}
h1.img, h2.img, h3.img, h4.img, h5.img, h6.img { margin: 0;padding: 0;background: none;border: none; }


dl.constitution_list{
width:100%;
overflow: hidden;
margin:0 auto;
}

dl.constitution_list dt{
display: block;
width: 10%;
margin-top: 10px;
float: left;
clear: both;
}

dl.constitution_list dd{
display: block;
width: 90%;
margin-top: 10px;
float: left;
}

dl.constitution_list dd ul li{
list-style-type: none;
padding: 2px !important;
}
dl.constitution_list dd ol li{
padding: 2px !important;
}

ol.constitution_list li{
padding: 2px !important;
}
table.committee_list{
margin: 0 auto;
border: 2px #333 solid;
width: 100%;
}

table.committee_list th{
margin: 0 auto;
border: 2px #333 solid;
width: 20%;
text-align: center;
}
table.committee_list td{
margin: 0 auto;
border: 1px #333 solid;
text-align: center;
}

table.committee_list2{
margin: 0 auto;
border: 2px #333 solid;
width: 100%;
}

table.committee_list2 th{
margin: 0 auto;
border: 2px #333 solid;
text-align: center;
}
table.committee_list2 td{
margin: 0 auto;
border: 1px #333 solid;
text-align: center;
}
.aisatsu02 {
	text-align:center;
}
.osaka_logo {
	text-align:center;
}
.table_C {
	width:720px;
	border-top: 1px solid #D7D7D7;
	border-left: 1px solid #D7D7D7;
}
.table_C td {
	border-right: 1px solid #D7D7D7;
	border-bottom: 1px solid #D7D7D7;
	vertical-align: top;
}
.table_C th {
	border-right: 1px solid #D7D7D7;
	border-bottom: 1px solid #D7D7D7;
	background-color: #ededed;
	text-align: center;
	font-weight: bold;
}
.table_C02 {
	width:700px;
	border:2px #000 solid;
}
.table_C02 th {
	vertical-align:middle;
	text-align:center;
	border-right:1px solid #000;
	border-bottom:1px solid #000;
}
.table_C02 td {
	vertical-align:middle;
	text-align:center;
	border-right:1px solid #000;
	border-bottom:1px solid #000;
}
.table_C03 {
	width:700px;
	border:2px #000 solid;
}
.table_C03 th {
	vertical-align:middle;
	text-align:center;
	border-right:1px solid #000;
	border-bottom:1px solid #000;
}
.table_C03 td {
	vertical-align:middle;
	border-right:1px solid #000;
	border-bottom:1px solid #000;
}

.t_box {
	display: flex;
}

.t_box .gray_box {
	font-weight: bold;
    background-color: #ccc;
    text-align: center;
}

.scroll-wrap{
    width: 90%;
    padding: 5%;
    overflow-x: auto;
}
.scroll-wrap::-webkit-scrollbar {
    height: 10px;
}
.scroll-wrap::-webkit-scrollbar-thumb{
    background: #999;
    border-radius: 5px;
}
.scroll-wrap::-webkit-scrollbar-track-piece {
    background: #efefef;
}
/* ==== sidenavi === */
#sidenav {
	display:none;
}

#page_img img {
	max-width:100%;
}
/*----------------------------------------------------------------------------
Index
----------------------------------------------------------------------------*/
/* ==== 新着情報 === */
#i_news h2 {
	font-size:20px;
	color:#333333;
	border-bottom:#F80051 5px solid;
	margin-top:30px;
	background:url(../images/info_icon.png) no-repeat 210px 3px;
	background-size: 25px;
	padding-bottom:5px;
}
#i_news h2 span.info_h3_line {
	border-right: 1px solid #999999;
	padding-right:10px;
	padding-left:3px;
}
#i_news h2 span.info_h3_s {
	font-size:13px;
	vertical-align:middle;
	padding-left:10px;
}

#news_table {
	height:250px;
	overflow-y:auto;
}
#i_news table {
	width:100%;
	margin-top:10px;
}
#i_news table tr {
	background:#F8F8F8;
	border-bottom:10px solid #FFF;
}
#i_news table td {
	display:block;
	width:100%;
	vertical-align: top;
	padding: 3px 5px 10px 25px;
	box-sizing:border-box;
}
#i_news table td.data {
	color: #12327E;
	background: url(../images/news_icon.png) no-repeat 10px 16px;
	background-size:7px;
	padding:10px 0 0 25px;
}
#i_news02 table {
	width:100%;
	margin-top:10px;
}
#i_news02 table tr {
	background:#F8F8F8;
	border-bottom:10px solid #FFF;
}
#i_news02 table td {
    display: block;
    width: 100%;
    vertical-align: top;
    padding: 3px 10px 10px;
    box-sizing: border-box;
}
#i_news02 table td.data {
	color: #12327E;
	background: url(../images/news_icon.png) no-repeat 10px 16px;
	background-size:7px;
	padding:10px 0 0 25px;
}
#i_news02 dl {
    padding-left: 0.5em;
}
#i_news02 dl dt {
    font-weight: bold;
}
#i_news02 dl dd {
    padding: 0.5em 1em;
}
/*----pagetop----*/
#page-top {
    position: fixed;
    bottom: 10px;
    right: 20px;
    font-size: 50%;
}
#page-top a {
	width:40px;
    background: #F4B5CA;
    text-decoration: none;
    color: #333333;
    padding: 10px 0;
    text-align: center;
    display: block;
    border-radius: 40px;
	line-height:1.2em;
}
#page-top a:hover {
    text-decoration: none;
}
.container {
	display:flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.l_container {
	display:flex;
	flex-wrap: wrap;
}
.item {
	padding:0 10px;
}
.item img {
	vertical-align:middle;
}
/* ==== Footer === */
#ft {
	margin-top:30px;
	padding-top: 15px;
	padding-bottom: 15px;
	text-align: center;
	background: #FFCBE4;
}
/* ==== 会則・細則 ==== */
ol.bracket,
ol.closing_bracket,
ol.dots_none_num {
	list-style-type: none;
}
ol.bracket > li {
	counter-increment: cnt;
}
ol.bracket > li:before {
	content: "("counter(cnt) ") ";
}
.margin_T60 {
	margin-top:60px!important;
}
#main ol, #main ul {
	padding-left: 0;
}
#main ol .closing_bracket {
	padding-left: 25px;
}
#main ol.indent {
	padding-left: 25px;
}
ol.dots_none_num li {
    text-indent: -1.3rem;
    margin-left: 1.3rem;
}