/* ******************************************************************
 *	File name		: style.css
 *	Summary			: css base
 * ******************************************************************
 */
/* -----------------------------------------------------------------
   base
----------------------------------------------------------------- */

body{
	background:url(../../image/base/bg.png) no-repeat center top;
}

main{
	display:block;
	position:relative;
	margin-top:0px;
	padding:75px 0 0 !important;
	padding:0px;
	width:100%;
	z-index:1;
}
#main_contents{
	position:relative;
	width:1000px;
	max-width:100%;
	margin:0px auto 20px;
	padding:0 50px 50px;
	background:rgba(255,255,255,0.9);
	overflow:hidden;
}

/* --- responsive --- */
@media screen and (max-width:767px){
	main{
		padding:60px 0 0 !important;
	}
	#main_contents{
		padding:0 20px 20px;
	}
}

/* -----------------------------------------------------------------
   pnkz
----------------------------------------------------------------- */

#pnkz{
	position:relative;
	width:1000px;
	max-width:100%;
	margin:0px auto 0px;
	list-style:none;
	}
	#pnkz li{
		display:inline-block;
		position:relative;
		margin:0 0 10px;
		font-size:0.8rem;
	}
	#pnkz li::after{
		content:" ";
		display:inline-block;
		position:relative;
		top:-1px;
		width:6px;
		height:6px;
		margin:0 7px;
		border-top:1px solid #000;
		border-right:1px solid #000;
		transform:rotate(45deg);
	}
	#pnkz li:last-child::after{
		display:none;
	}
	#pnkz li a{
		font-size:0.77rem;
		color:#000;
}

/* --- responsive --- */
@media screen and (max-width:767px){
	#pnkz{
		display:none;
	}
}

/* -----------------------------------------------------------------
   base
----------------------------------------------------------------- */

#main_contents > h2{
	position:relative;
	width:100%;
	height:80px;
	margin:0 0 20px;
	font-weight:bold;
	font-size:1.9rem;
	text-align:center;
	line-height:1.0;
	color:#000;
	}
	#main_contents > h2::before,
	#main_contents > h2::after{
		content:" ";
		position:absolute;
		left:50%;
		-moz-border-radius:50%;
		-webkit-border-radius:50%;
		border-radius:50%;
		transform: translate(-50%, -50%);
	}
	#main_contents > h2::before{
		top:0px;
		width:100%;
		height:160px;
		background:#E6E6E6;
		z-index:0;
	}
	#main_contents > h2::after{
		top:0px;
		width:100%;
		height:140px;
		background:#BAD76C;
		z-index:1;
	}
	#main_contents > h2 span{
		display:-webkit-flex;
		display:flex;
		justify-content:center;
		align-items:center;
		position:relative;
		width:100%;
		height:100%;
		padding-bottom:10px;
		font-weight:inherit;
		font-size:inherit;
		z-index:10;
	}

/* --- responsive --- */
@media screen and (max-width:767px){
	#main_contents > h2{
		width:calc(100% + 40px);
		margin:0 -20px 10px;
		font-size:1.5rem;
	}
}

/* -----------------------------------------------------------------
   h3
----------------------------------------------------------------- */

h3{
	position:relative;
	width:100%;
	margin:0 0 15px;
	padding:0 0 7px 0;
	font-weight:bold;
	font-size:1.27rem;
	border-bottom:1px solid #000;
	text-align:left;
	line-height:1.0;
	color:#000;
	}
	h3 *{
		font-weight:inherit;
		font-size:inherit;
}

/* --- responsive --- */
@media screen and (max-width:767px){
	h3{
		font-size:1.1rem;
	}
}

/* ------------------------------------------------
   
------------------------------------------------- */

#main_contents p{
	position:relative;
	margin:0 0 15px;
	font-weight:500;
	font-size:1.0rem;
	text-align:justify;
}
/* --- responsive --- */
@media screen and (max-width:767px){
	#main_contents p{
		font-size:0.84rem;
	}
}

/* -----------------------------------------------------------------
   ul
----------------------------------------------------------------- */

#main_contents ul li,
#main_contents ul li a{
	font-weight:500;
	color:#000;
	}
	#main_contents ul li a{
		text-decoration:underline;
	}
	#main_contents ul.disc li:last-child{
		margin:0px;
}

#main_contents ul.disc{
	list-style:none;
	}
	#main_contents ul.disc li{
		position:relative;
		margin:0 0 7px;
		padding-left:20px;
	}
	#main_contents ul.disc li::before{
		content:" ";
		position:absolute;
		top:6px;
		left:0px;
		width:12px;
		height:12px;
		background:#BAD76C;
		-moz-border-radius:50%;
		-webkit-border-radius:50%;
		border-radius:50%;
}

#main_contents ul.num{
	padding-left:20px;
	list-style:decimal;
	}
	#main_contents ul.num li{
		position:relative;
		margin:0 0 7px;
}


#main_contents ul.kakko{
	list-style:none;
	padding-left:0px;
	}
	#main_contents ul.kakko li{
		margin-bottom:5px;
		padding-left:35px;
		text-indent:-22px;
	}
	#main_contents ul.kakko li:before{
		position:relative;
		display:inline-block;
	}
	#main_contents ul.kakko li:nth-child(1):before{content:"（１）";}
	#main_contents ul.kakko li:nth-child(2):before{content:"（２）";}
	#main_contents ul.kakko li:nth-child(3):before{content:"（３）";}
	#main_contents ul.kakko li:nth-child(4):before{content:"（４）";}
	#main_contents ul.kakko li:nth-child(5):before{content:"（５）";}
	#main_contents ul.kakko li:nth-child(6):before{content:"（６）";}
	#main_contents ul.kakko li:nth-child(7):before{content:"（７）";}
	#main_contents ul.kakko li:nth-child(8):before{content:"（８）";}
	#main_contents ul.kakko li:nth-child(9):before{content:"（９）";}


/* --- responsive --- */
@media only screen and (max-width:767px){
	#main_contents ul li,
	#main_contents ul li a{
		font-size:0.87rem;
	}
}

/* -----------------------------------------------------------------
   colorbox
----------------------------------------------------------------- */

.colorbox{
	display:inline-block;
	position:relative;
	margin:0 0 20px;
	padding:15px;
	background:rgba(35,50,101,0.1);
	background:rgba(46,167,224,0.1);
	border:1px solid rgba(46,167,224,0.5);
	-moz-border-radius:6px;
	-webkit-border-radius:6px;
	border-radius:6px;
	}
	.colorbox *:last-child{
		margin-bottom:0px !important;
	}
	.colorbox .colorbox_title{
		font-weight:bold;
		border-bottom:2px solid rgba(46,167,224,0.5);
		color:rgba(46,167,224,1) !important;
}

.colorbox_b{
	display:inline-block;
	position:relative;
	margin:0 0 20px;
	padding:15px;
	background:rgba(35,50,101,0.05);
	border:1px solid rgba(35,50,101,0.5);
	-moz-border-radius:6px;
	-webkit-border-radius:6px;
	border-radius:6px;
	}
	.colorbox_b *:last-child{
		margin-bottom:0px !important;
	}
	.colorbox_b .colorbox_title{
		font-weight:bold;
		border-bottom:2px solid rgba(35,50,101,0.5);
		color:rgba(35,50,101,1) !important;
}

/* -----------------------------------------------------------------
   table
----------------------------------------------------------------- */

#main_contents table{
	margin-bottom:20px;
	font-size:0.93rem;
	border-collapse:collapse;
	border-spacing:0px;
	border-top:1px solid #BBBBBB;
	border-left:1px solid #BBBBBB;
	line-height:2;
	}
	#main_contents table th,
	#main_contents table td{
		text-align:left;
		border-right:1px solid #BBBBBB;
		border-bottom:1px solid #BBBBBB;
		line-height:1.5;
	}
	#main_contents table th{
		padding:5px 10px 5px 10px;
		font-weight:bold;
		text-align:center;
		color:#000;
		background:rgba(49,49,64,0.1);
		vertical-align:top;
	}
	#main_contents table td{
		padding:5px 10px 5px 10px;
		text-align:left;
		background:rgba(255,255,255,0.5);
}

#main_contents table.table_01{
	border-collapse:separate;
	border-spacing:5px;
	border:1px solid #BBBBBB;
	background:rgba(255,255,255,0.2);
	}
	#main_contents table.table_01 th,
	#main_contents table.table_01 td{
		border:1px solid #BBBBBB;
}

#main_contents table.table_02{
	border-collapse:separate;
	border-spacing:1px;
	border:none;
	background:#5993BB;
	}
	#main_contents table.table_02 th,
	#main_contents table.table_02 td{
		border:none;
	}
	#main_contents table.table_02 th{
		background:rgba(255,255,255,0.2);
		color:#FFF;
	}
	#main_contents table.table_02 td{
		background:rgba(255,255,255,0.9);
		color:#000;
}

/* th */
#main_contents table.th_fwn th{font-weight:normal;}
#main_contents table.th_center th{text-align:center;}
#main_contents table.th_left th{text-align:left;}
#main_contents table.th_right th{text-align:right;}
#main_contents table.th_middle th{vertical-align:middle;}

/* td */
#main_contents table.td_fwb th{font-weight:bold;}
#main_contents table.td_center td{text-align:center;}
#main_contents table.td_left td{text-align:left;}
#main_contents table.td_right td{text-align:right;}
#main_contents table.td_middle td{vertical-align:middle;}

/* ex */
#main_contents table.border_none,
#main_contents table.border_none tr th,
#main_contents table.border_none tr td{
	border:none !important;
}
/* --- responsive --- */
@media screen and (max-width:767px){
	.table_scroll{
		overflow:auto;
		margin-bottom:20px;
		cursor:pointer;
		}
		.table_scroll table{
			margin-bottom:10px;
			width:767px !important;
			max-width:767px !important;
		}
		.table_scroll::-webkit-scrollbar{
			height:10px;
		}
		.table_scroll::-webkit-scrollbar-track{
			background: #555;
			-moz-border-radius:6px;
			-webkit-border-radius:6px;
			border-radius:6px;
		}
		.table_scroll::-webkit-scrollbar-thumb {
			background: #BCBCBC;
			-moz-border-radius:5px;
			-webkit-border-radius:5px;
			border-radius:5px;
	}
}

/* -----------------------------------------------------------------
   sub_menu_btn
----------------------------------------------------------------- */

.sub_meun_btn{
	width:100%;
	padding-bottom:30px;
	border-bottom:1px solid #000;
}
.sub_meun_btn ul{
	display:-webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content:center;
	flex-wrap:wrap;
	list-style:none;
	}
	.sub_meun_btn ul li{
		display:inline-block;
		position:relative;
		width:340px;
		height:60px;
		margin:0 10px 10px;
		}
		.sub_meun_btn ul li::after{
			content:" ";
			position:absolute;
			bottom:-30px;
			left:calc(50% - 9px);
			border:9px solid transparent;
			border-top:9px solid rgba(0,0,0,1);
		}
		.sub_meun_btn ul li.actve::after{
			opacity:1;
	}
	.sub_meun_btn ul li a{
		display:-webkit-flex;
		display:flex;
		justify-content:center;
		align-items:center;
		width:100%;
		height:60px;
		font-size:1.45rem;
		text-decoration:none !important;
		-moz-border-radius:12px;
		-webkit-border-radius:12px;
		border-radius:12px;
		border:2px solid #F1E900;
		vertical-align:bottom;
		-moz-box-shadow:0px 3px 3px rgba(0,0,0,0.4);
		-webkit-box-shadow:0px 3px 3px rgba(0,0,0,0.4);
		box-shadow:0px 3px 3px rgba(0,0,0,0.4);
		color:#000;
	}
	.sub_meun_btn ul li a span{
		position:relative;
		top:5px;
		font-size:0.95rem;
		color:inherit;
		vertical-align:bottom;
}
.sub_meun_btn ul li.active a{
	background:#F1E900;
}
/* --- responsive --- */
@media screen and (max-width:767px){
	.sub_meun_btn ul li a{
		font-size:1.10rem !important;
	}
	.sub_meun_btn ul li a span{
		top:3px;
		font-size:0.87rem !important;
	}
}

/* -----------------------------------------------------------------
   photo_box
----------------------------------------------------------------- */

.photo_box{
	display:block;
	width:100%;
	margin:0 auto 30px;
}
.photo_box figure{
	text-align:center;
	margin:0 auto 10px;
}
.photo_box figcaption{
	display:block;
	margin:0 auto 10px;
	text-align:center;
	font-size:0.9em;
	color:#888;
}

/* --- responsive --- */
@media only screen and (max-width:767px){
	.photo_box figcaption{
		font-size:0.77rem !important;
		line-height:1.5;
	}
}

.photo_box.column_3{
	display:-webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content:space-between;
	flex-wrap:wrap;
	width:100%;
	margin:0 auto 30px;
	}
	.photo_box.column_3 figure{
		position:relative;
		width:33%;
		text-align:center;
		margin:0 auto 10px;
}
/* --- responsive --- */
@media only screen and (max-width:767px){
	.photo_box.column_3 figure{
		width:100%;
	}
}

/* -----------------------------------------------------------------
   outlink
----------------------------------------------------------------- */

a.outlink::after{
	content:" ";
	display:inline-block;
	position:relative;
	width:10px;
	height:9px;
	margin:0 0 0 5px;
	background:url(../../image/base/blank.png) no-repeat 0 0;
	}
	a.outlink:has(img)::after{
		display:none;
}
a.urllink{
	font-size:0.70rem !important;
}

/* -----------------------------------------------------------------
   btn
----------------------------------------------------------------- */

.btn{
	position:relative;
	width:100%;
	margin:0 auto 20px;
	text-align:left;
	}
	.btn p,
	.btn a{
		display:inline-block;
		position:relative;
		width:auto;
		max-width:100%;
		padding:10px 50px 10px 20px;
		position:relative;
		font-weight:bold;
		font-size:1.0rem;
		text-align:center;
		text-decoration:none;
		background:#F1E900;
		border:1px solid #000;
		-moz-border-radius:6px;
		-webkit-border-radius:6px;
		border-radius:6px;
		transition-duration:0.5s;
		color:#000;
		cursor:pointer;
		user-select:none;
		}
		.btn p:hover,
		.btn a:hover{
			opacity:0.5;
		}
		.btn p::before,
		.btn p::after,
		.btn a::before,
		.btn a::after{
			content:" ";
			position:absolute !important;
			z-index:10;
		}
		.btn p::before,
		.btn a::before{
			top:calc(50% - 0px);
			right:10px;
			width:14px;
			height:2px;
			background:#000;
		}
		.btn p::after,
		.btn a::after{
			top:calc(50% - 4px);
			right:10px;
			width:8px !important;
			height:8px !important;
			margin:0px !important;
			border-top:2px solid #000;
			border-right:2px solid #000;
			transform:rotate(45deg);
			background:none !important;
}

/* -----------------------------------------------------------------
   download_link
----------------------------------------------------------------- */

.download_link{
	position:relative;
	border-top:1px solid rgba(0,97,177,0.3);
	}
	.download_link li{
		display:block;
		position:relative;
		width:100%;
		border-bottom:1px solid rgba(0,97,177,0.3);
	}
	.download_link li a{
		display:block;
		position:relative;
		width:100%;
		padding:10px 10px 10px 30px;
		line-height:1.35;
		text-decoration:none;
		transition-duration:0.5s;
	}
	.download_link li a:hover{
		text-decoration:none;
		background:rgba(0,191,255,0.2);
	}
	.download_link li a::before,
	.download_link li a::after{
		content:" ";
		position:absolute;
		}
		.download_link li a::before{
			top:12px;
			left:0px;
			width:20px;
			height:20px;
			background:rgba(0,97,177,1);
			-moz-border-radius:3px;
			-webkit-border-radius:3px;
			border-radius:3px;
		}
		.download_link li a::after{
			top:17px;
			left:3px;
			border:5px solid transparent;
			border-left: 6px solid #FFF;
	}

	.download_link li.pdf a,
	.download_link li.word a,
	.download_link li.excel a,
	.download_link li.zip a{
		padding:10px 10px 10px 40px;
	}
	.download_link li.pdf a::before,
	.download_link li.word a::before,
	.download_link li.excel a::before,
	.download_link li.zip a::before{
		top:4px;
		left:0px;
		width:32px;
		height:32px;
	}
	.download_link li.pdf a::before{
		background:url(../../image/base/pdf.png) no-repeat 0 0;
	}
	.download_link li.word a::before{
		background:url(../../image/base/word.png) no-repeat 0 0;
	}
	.download_link li.excel a::before{
		background:url(../../image/base/excel.png) no-repeat 0 0;
	}
	.download_link li.zip a::before{
		background:url(../../image/base/zip.png) no-repeat 0 0;
	}
	.download_link li.pdf a::after,
	.download_link li.word a::after,
	.download_link li.excel a::after,
	.download_link li.zip a::after{
		display:none;
}

/* --- responsive --- */
@media only screen and (max-width:767px){
	.download_link li a::before{
		top:10px;
	}
	.download_link li a::after{
		top:15px;
	}
	.download_link li.pdf a::before,
	.download_link li.word a::before,
	.download_link li.excel a::before,
	.download_link li.zip a::before{
		top:2px;
	}
}

