@charset "utf-8";
/*=================================
1: reset-CSS
2: setting
3: header
4: footer
5: common-content
6: top page
7: second page
8: JS
=================================*/


/* 1: reset-CSS
================================== */
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
	font-weight: normal;
}
body {
	line-height:1;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section,main {
	display:block;
}
li {
	list-style:none;
}
blockquote, q {
	quotes:none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content:'';
	content:none;
}
a {
	margin:0;
	padding:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}

/* change colours to suit your needs */
ins {
	background-color:#ff9;
	color:#000;
	text-decoration:none;
}

/* change colours to suit your needs */
mark {
	background-color:#ff9;
	color:#000;
	font-style:italic;
	font-weight:bold;
}

del {
	text-decoration: line-through;
}
abbr[title], dfn[title] {
	border-bottom:1px dotted;
	cursor:help;
}
table {
	border-collapse:collapse;
	border-spacing:0;
	width:100%!important;
}

/* change border colour to suit your needs */
hr {
	display:block;
	height:1px;
	border:0;
	border-top:1px solid #cccccc;
	margin:1em 0;
	padding:0;
}
input, select {
	vertical-align:middle;
}


	.sp_show {
		display: none !important;
	}

/* 2: setting
================================== */
*, *:before, *:after {
	box-sizing: border-box;
}

/* clearfix*/
.cf:after { content: ""; clear: both; display: block; }
.clear { clear: both;}

html {
	overflow: auto;
	font-size: 62.5%;
}
body {
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
	font-weight: 500;
	color: #323232;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.7;
	-webkit-print-color-adjust: exact;/* baskground_print */
	word-wrap: break-word;
	overflow-wrap: break-word;
	-webkit-font-smoothing: antialiased;/* safari_textBold*/
	-webkit-text-size-adjust: 100%;/* safari_textBold*/
	min-width:1200px;
}
img {
	display: block;
	line-height: 0;
	max-width:100%;
	height:auto;
	margin:0 auto;
}
	.normal {
		display:inline-block;
		vertical-align:middle;
	}

input[type="submit"],
input[type="button"] {
border-radius: 0;
-webkit-box-sizing: content-box;
-webkit-appearance: button;
appearance: button;
border: none;
box-sizing: border-box;
cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
outline-offset: -2px;
}


/* link */
a {
	color:#006fb9;
	-webkit-transition: all .2s;
	transition: all .2s;
	text-decoration:none;
}
a:hover {
	color: #1ba3f9;
	text-decoration: underline;
}
a img {
	-webkit-transition: all .2s;
	transition: all .2s;
}
a img:hover {
	opacity:.7;
}

/* 3: header
================================== */
#wrapper {
	width:100%;
	position:relative;
	overflow: hidden;
}

#contents {
	height:100%;
}

#header {
	height:100px;
	box-shadow: 0 0 15px rgba(0,0,0,.3);
}

.header_main {
	width:100%;
	position:relative;
}


#header a,
.f_bg a {
	text-decoration:none;
}

#header h1 {
	float:left;
	margin:10px 0 0 0;
}

	#header h1 img {
		margin:0 auto;
		width:400px;
		height:auto;
	}


.header_menu {
	float:right;
	margin:10px;
}
.rois {
	width:200px;
	margin-right:10px;
}
.search {
	width:35px;
	padding:5px;
	margin-bottom:15px;
}


h2 {
	font-weight:bold;
	font-size:2.8rem;
	margin-bottom:0.5em;
	border-bottom: solid 3px #ccc;
	position: relative;
}

	#header h2 {
		border-bottom: solid 3px #fff;
	}

h2:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #006fb9;
  width: 20%;
}
	#header h2:after {
		width:30%;
	}


h3 {
  position: relative;
  padding: 0.2em 0.5em;
  background:#eee;
  font-size:2.0rem;
  margin-bottom:0.5em;
  font-weight:bold;
  overflow:hidden;
}

	h3:nth-of-type(n+2) {
		margin-top:2em;
	}

h4,
#dm_items_head {
	font-weight:bold;
	font-size:1.8rem;
	margin-bottom:0.5em;
	padding:0.2em;
	position: relative;
}

h4:after,
#dm_items_head:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 5px #006fb9;
  width: 5%;
}

h5 {
	font-size:  1.6rem; 
	position: relative;
	padding: 0.5em 0;
	font-weight:  bold;
	margin:1em auto 0.5em auto;
}


.inr {
	width:100%;
	max-width:1200px;
	margin:0 auto;
	padding: 0 10px;
	position:relative;
}

	section .inr {
		padding: 50px 10px 80px 10px;
		overflow:hidden;
	}

#n2-ss-2-arrow-previous,
#n2-ss-2-arrow-next {
	display:none;
}

.edit-link-small {
    background: -moz-linear-gradient(top,#FFF 0%,#E6E6E6);
    background: -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#E6E6E6));
    border: 2px solid #DDD;
    color: #111;
    border-radius: 4px;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-box-shadow: 1px 1px 1px rgba(000,000,000,0.3);
    -webkit-box-shadow: 1px 1px 1px rgba(000,000,000,0.3);
    width: 100px;
    padding: 0.1em 0.4em;
    font-size: 75%;
}

.fig {
	max-width:1000px;
	margin:0 auto;
}

	.fig img {
		margin:0 auto;
	}
	
table {
	border:solid 1px #ccc;
}

	#___gcse_0 table {
		border:0!important;
	}

th,td {
	padding:0.5em;
	border:solid 1px #ccc;
}
	
	#___gcse_0 table th,
	#___gcse_0 table td {
		border:0!important;
	}

.bogo-language-switcher .current{
		display: none;
}

/* -----gnav----- */
.parentNav {
	clear:right;
}

#btn,
.meganav {
	display:none;
}

.parentNav > li {
	margin-right:5px;
	font-weight:bold;
}

.parentNav > li > a {
	position:relative;
	padding:15px 25px 15px 15px;
	color:#333;
}

	.parentNav > li > a:hover {
		background:#006fb9;
		color:white;
	}

.parentNav > li > a::after {
    position: absolute;
    right: 10px;
    top: 40%;
    content: "";
    width: 8px;
    height: 8px;
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}

.parentNav li.en a {
	display:block;
	background:#000;
	color:white;
	padding:0 1em;
	position:relative;
}

.parentNav > li.en a::after {
    border:0;
}


#gloval_nav ul > li.open > .meganav { 
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap: wrap;
}
#gloval_nav ul > li > .meganav { 
	display: none; 
	width: 100%; 
	z-index: 20;  
	position: absolute; 
	background: rgba(0,111,185,0.96); 
	left: 0; 
	top: 100px;
}

#gloval_nav ul > li > .meganav h2 {
	color:white;
	
}
#gloval_nav ul > li > .meganav > p { 
	float: left; 
	width: 240px; 
	font-size: 1.6rem; 
	color: #fff; 
	font-weight: bold;
}

.nav_tit {
	width:30%;
	background:rgba(51,51,51,0.96);
	padding: 20px 20px 50px 20px;
	color:white;
}

	.nav_tit p {
		font-weight:bold;
	}

.nav_menu {
	width:70%;
	padding: 20px;
	position:relative;
}


	.nav_menu > .sub-menu > li > a {
		display:block;
		color:white;
		border-bottom:solid 1px #9dd8f9;
		padding:0.2em 0.5em;
		font-weight:bold;
		position:relative;
	}

	.nav_menu > .sub-menu > li > a::after {
		position: absolute;
		right: 10px;
		top: 40%;
		content: "";
		width: 8px;
		height: 8px;
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	
	.nav_menu > .sub-menu > li {
		width: calc(100%/3.2);
		margin-right:15px;
		margin-bottom:15px;
	}
	
	.parentNav li:nth-child(2) .nav_menu > .sub-menu > li {
		width: calc(100%/2.2);
	}
	
.megaNavClose {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 28px;
    height: 28px;
    background: #FFF;
    border-radius: 50%;
}

.megaNavClose:hover {
	color: #FFF;
	background: #3aa9ef;
}
.megaNavClose::before,
.megaNavClose::after {
	display: block;
	content: "";
	position: absolute;
	top: 45%;
	left: 0;
	right: 0;
	width: 12px;
	margin: auto;
	border-top: 2px solid #001b4c;
}
.megaNavClose::before {
	transform: skewY(-45deg);
}
.megaNavClose::after {
	transform: skewY(45deg);
}
.megaNavClose:hover::before,
.megaNavClose:hover::after {
	border-color: #FFFFFF;
}





/* main
================================== */
#main {
	font-size:1.4rem;
	position:relative;
}

	.kuro {
		position:relative;
	}

	.kuro:after {
		content:"";
		position:absolute;
		width:100%;
		height:100%;
		top:0;
		left:0;
		background: rgba(0,0,0,0.4);
	}

#slider {
	position:relative;
}

.slider {
	min-height:400px;
	z-index:-1;
}

	.slider img{
		width:100%;
		height:auto;
	}

.catch {
	position:absolute;
	top:25%;
	right:10%;
	color:white;
	font-size:3.5rem;
	font-weight:bold;
	text-shadow: 1px 2px 3px rgba(0,0,0,0.6);
	background: rgba(0,0,0,0.3);
	padding: 0.5em;
}

.header_news {
	margin:30px auto 0 0;
	width:47%;
	height:300px;
	font-weight:bold;
	position:relative;
	z-index:9999;
	/*overflow:auto;*/
	float:left;
}

.header_news2 {
	margin:10px auto 0 0;
	width:47%;
	height:300px;
	font-weight:bold;
	position:relative;
	z-index:9999;
	/*overflow:auto;*/
	float:left;
}

.news_inr {
	overflow:auto;
	height:250px;
	background:rgba(255,255,255,0.9);
	box-shadow: 0 0 15px rgba(0,0,0,.3);
	padding:20px;
	clear:both;
}

.news_inr .flexbox_sbwap li {
	width:100%;
}

	.header_news h1,
	#news_contents h1,
	.header_news2 h1,
	#news_contents2 h1{
		background:#333;
		width:100%;
		display:block;
		margin:0 0 0.5em 0;
		padding:0.2em;
		color:white;
		text-align:center;
		font-weight:bold;
		font-size:2.0rem;
	}

.header_news_more {
	text-align:right;
	padding:0 10px;
	font-weight:bold;
	overflow:hidden;
}

	.header_news_more a {
		display:block;
		width:10em;
		text-align:center;
		float:right;
		background:white;
		box-shadow: 2px 2px 2px #ccc;
		margin: 0.3em 0 20px 0;
	}
	
	.header_news_more a:hover {
		box-shadow:0 0 0;
		background:#666;
		color:white;
	}


#news {
}

	.news dt {
		width:6em;
		float:left;
	}
	
	.news dd {
		margin-left:7em;
	}
	
	.article .news dt {
		width:8em;
	}
	
	.article .news dd {
		margin-left:9em;
	}
	
	.article .news dl {
		border-bottom:solid 1px #ccc;
		padding:1em;
	}

#news_contents {
	margin:30px 0 0 auto;
	width:47%;
	height:300px;
	font-weight:bold;
	position:relative;
	z-index:9999;
	float:right;
}

.page_link,
.pagenation {
	margin:1em 0;
}



.page-numbers {
	display:flex;
}

.page-numbers.current {
	background:#006fb9;
	color:white;
}

.page-numbers li {
	border:solid 1px #ccc;
	margin-right:5px;
}

.page-numbers li a,
.page-numbers.current {
	display:block;
	padding:0.5em 1em;
}

#news_contents2 {
	margin:10px 0 0 auto;
	width:47%;
	height:300px;
	font-weight:bold;
	position:relative;
	z-index:9999;
	float:right;
}

#news_contents li {
	width: 100%;
	padding:5px 10px;
}

.sub_menu li {
	width:calc(100%/4.2);
	text-align:center;
	font-weight:bold;
	font-size:2.0rem;
	border-bottom:solid 1px #ccc;
}

.sub_menu {
	margin-bottom:3em;
}

.sub_menu li.current {
	border-bottom:solid 3px #000;
}

.news_img {
	text-align:center;
	width:60px;
    float:left;
    margin-right:10px;
}
	.news_img img {
		margin:0 auto;
		vertical-align:middle;
	}
	
.top_btn {
	text-align:right;
	background:rgba(255,255,255,0.9);
	float:right;
	clear:both;
	width:200px;
	margin-bottom:10px;
}

.top_btn a {
	text-align:center;
	color:#333;
	display:block;
	font-weight:bold;
	width:200px;
}

.update {
	color:#333;
	padding:0 0.2em;
    margin-top: auto;
    float:left;
    width:6.5em;
}

.more {
	text-align:right;
	font-size:2.4rem;
	position:relative;
	padding-right:150px;
}

.more a {
	color:#333;
}

	.more:after {
		content:"";
		width:146px;
		height:20px;
		position:absolute;
		top:20%;
		right:0;
		display:block;
		background:url(../images/icn_arrow.svg) no-repeat;
		
	}

#soshiki {
	background:url(../images/back_soshiki.jpg) no-repeat;
	background-size:cover;
}

#soshiki li > a {
	display:block;
	min-height:250px;
	color:#333;
}

#soshiki li {
  transition: .3s;
  -webkit-transform: scale(1);
  transform: scale(1);
}


#soshiki li:hover {
	-webkit-transform: scale(1.05);
  transform: scale(1.05);
}

#soshiki li a:hover {
	text-decoration:none;
}

#soshiki h1 {
	font-size:3.0rem;
	text-align:center;
	font-weight:bold;
	margin:0 auto 1em auto;
	color:white;
}

#soshiki li {
	width: calc(100%/4.3);
	background:white;
	padding:10px;
	box-shadow: 0 0 10px rgba(0,0,0,.3);
	margin-bottom:30px;
    display: flex;
    flex-direction: column;
    margin-right:20px;
    /*min-height:360px;*/
}

.soshiki_tit {
	font-size:2.0rem;
	font-weight:bold;
	border-bottom:solid 1px #333;
	margin-bottom:0.5em;
	padding:0.5em;
	line-height:1.2;
}

	.s_more {
		text-align:right;
		width:100%;
		margin-top: auto;
	}
		.s_more img {
			width:50%;
			float:right;
		}
	
.soshiki_stit {
	background:#333;
	color:white;
	padding:0 0.2em;
	font-weight:bold;
	font-size:1.8rem;
	margin-bottom:10px;
}

.soshiki_img img {
	max-width:100%;
	height:auto;
}

/* 4: footer
================================== */

#footer {
	position:relative;
	clear:both;
	background:white;
}

#footer .inr {
	overflow: hidden;
}
#footer .inr ul.f_menu {
	padding: 10px 0;
	justify-content:flex-end;
}
	#footer .f_menu li {
		margin-right:15px;
	}
	
	#footer .f_menu li a {
		position:relative;
		text-align:left;
		color:#000;
		padding-left:15px;
	}

	#footer .f_menu li a::before {
		content:"";
		display: inline-block;
		width: 10px;
		height: 10px;
		margin-right: 5px;
		position: absolute;
		left: 0;
		top: 35%;
		content: "";
		width: 8px;
		height: 8px;
		border-top: 2px solid #006fb9;
		border-right: 2px solid #006fb9;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	
	#footer .f_menu li:first-child::before {
		content:"";
	}

.f_bg {
	background:#006fb9;
	color:white;
	padding-top:20px;
}
	#menu-footer_menu > li,
	#menu-en_footer_menu > li {
		font-weight:bold;
	}
	
	#menu-footer_menu > li > a,
	#menu-en_footer_menu > li > a {
	    pointer-events: none;
	}
	
	#menu-footer_menu .sub-menu,
	#menu-en_footer_menu .sub-menu {
		margin-left:1em;
	}
	
#footer a {
	color:white;
	font-size:1.4rem;
}

.ad {
	text-align:center;
	font-size: 1.6rem;
	padding-top:20px;
}

#copy {
	clear:both;
	text-align:center;
	padding:20px;
	font-size: 1.2rem;
}

/*スクロールボタン*/
#page-top {
    position: fixed;
    bottom: 10px;
    right: 10px;
    font-weight: bold;
    font-size: 80%;
    z-index: 999;
    text-align: center;
}
#page-top a {
    position: relative;
    display: block;
    width: 48px;
    height: 48px;
    background: #374149;
    color:  #fff;
    opacity: 0.7;
}

#page-top a::after {
    position: absolute;
    right: 16px;
    top: 40%;
    display: block;
    content: "";
    width: 16px;
    height: 16px;
    border-top: 3px solid #FFF;
    border-right: 3px solid #FFF;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}



/* 5: common-content
================================== */
.flexbox {/* 折り返しのみ */
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
}
.flexbox_wap,
.nav_menu > .sub-menu {/* 折り返しのみ */
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap: wrap;
}
.flexbox_sbwap,
#menu-footer_menu,
#menu-en_footer_menu {/* 折り返し・水平方向端揃え */
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-justify-content: space-between; /* Safari */
	justify-content: space-between;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap: wrap;
}

.flexbox_sbnwap{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-justify-content: space-between; /* Safari */
	justify-content: space-between;
	-ms-flex-wrap : nowrap; /*for IE10*/
	-webkit-flex-wrap : nowrap; /*for old webkit browser*/
	flex-wrap: nowrap;
}

.flexbox_cwap {/* 折り返し・水平中央揃え */
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-justify-content: center; /* Safari */
	justify-content: center;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap: wrap;
}
.flexbox_c {/* 折り返しなし・水平中央揃え */
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-justify-content: center; /* Safari */
	justify-content: center;
}
.flexbox_end {
	align-items: flex-end;
}
.fL {float:left!important;}
.fR {float:right!important;}
.m0 {margin:0 auto!important;}
.m1em {margin:1em;}
.m2em {margin:2em auto;}
.mR1em {margin-right:1em!important;}
.mL1em {margin-left:1em!important;}
.mT1em {margin-top:1em!important;}
.mT2em {margin-top:2em!important;}
.mT4em {margin-top:4em!important;}
.mT50 {margin-top:50px;}
.mT100 {margin-top:100px;}
.mB0 {margin-bottom:0!important;}
.mB1em {margin-bottom:1em!important;}
.mB20 {margin-bottom:20px!important;}
.mB40 {margin-bottom:40px!important;}
.p1em {padding:1em;}
.p2em {padding:2em!important;}
.pT1em {padding-top:1em;}
.pB1em {padding-bottom:1em;}
.tC {text-align:center;}
.tR {text-align:right!important;}
.tL {text-align:left!important;}
.fB {font-weight: bold;}
.fI {font-style: italic;}
.b_green {background:#c1e7e4;}
.b_white {background:#ffffff;}
.fbig {font-size: 2.0rem;}
.underL {border-bottom:solid 1px #000;}
.mauto {margin:auto;}
.mid {vertical-align:middle;}
.red {color:red;}
.disc li ,.article_body ul li{margin-left:1.5em; list-style:disc;}
.decimal li {list-style:decimal; margin-left:2em;}

	.tC img {
		margin:0 auto;
	}

.link_pdf {
	background:url(../images/icn_pdf.svg) no-repeat 0 center;
	padding-left:20px;
}

.link_blank,
#main a[target="_blank"] {
	background:url(../images/icn_blank.svg) no-repeat right center;
    background-size: 14px;
    padding-right: 20px;
}


#breadcrumb {
	overflow:hidden;
	font-size:1.4rem;
	padding:2px 0;
	background: #efefef;
}

#breadcrumb li:before {
	content:"＞";
	padding: 0 5px;
}
#breadcrumb li:first-child:before {
	content: none;
}

#breadcrumb ul {
	margin:0 30px;
}

#breadcrumb .inr {
	padding:0;
}


/*２階層目*/
#title {
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#2cabd6+0,006fb9+100 */
background: #2cabd6; /* Old browsers */
background: -moz-linear-gradient(left,  #2cabd6 0%, #006fb9 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(left,  #2cabd6 0%,#006fb9 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to right,  #2cabd6 0%,#006fb9 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2cabd6', endColorstr='#006fb9',GradientType=1 ); /* IE6-9 */
	height:150px;
}

	#title h1 {
		font-size:3.0rem;
		font-weight:bold;
		color:white;
		text-shadow: 1px 2px 3px rgba(0,0,0,0.6);
		padding-left:1em;
	}

#main p {
	margin-bottom:1em;
}

.article_link {
	clear:both;
}

.link {
	background:#eeeeee;
	padding:0.5em;
	margin:1em auto;
}

	.link li {
		display:block;
		position:relative;
		padding:0.5em 0.5em 0.5em 1em;
		border-bottom:dashed 1px #0469ad;
	}
	
	.link li:last-child {
		border:0;
	}


	.link li::before {
		content:"";
		width: 10px;
		height: 10px;
		position: absolute;
		left: 0;
		top: 40%;
		content: "";
		width: 8px;
		height: 8px;
		border-top: 2px solid #006fb9;
		border-right: 2px solid #006fb9;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}

.edit-link {
    background: -moz-linear-gradient(top,#FFF 0%,#E6E6E6);
    background: -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#E6E6E6));
    border: 2px solid #DDD;
    color: #111;
    border-radius: 4px;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-box-shadow: 1px 1px 1px rgba(000,000,000,0.3);
    -webkit-box-shadow: 1px 1px 1px rgba(000,000,000,0.3);
    width: 100px;
    padding: 0.5em 0.8em;
    font-size: 85%;
}

a.post-edit-link, a.post-edit-link:visited {
    text-decoration: none;
    color: #777;
}

.photo {
    float: right;
    width: 300px;
    position: relative;
    padding: 1em;
    background-color: #f6f6f6;
    margin: 1em 0 1em 1em;
}
.photo::after {
    position: absolute;
    top: 0;
    right: 0;
    content: '';
    width: 0;
    border-width: 0 16px 16px 0;
    border-style: solid;
    border-color: #fff #fff #ddd #ddd;
    box-shadow: -1px 1px 2px rgba(0, 0, 0, .1);
}

.article {
	margin-bottom:1em;
}

.sitemap > li {
	position:relative;
}

	.sitemap > li::before {
		content:"■";
	}
	
	.sitemap > li > ul {
		margin-left:1em;
		margin-bottom:1em;
	}


.w3eden .card h3 {
	background:none;
}

.package-title a {
	pointer-events: none;
}

.w3eden .package-title a {
	color:#333!important;
}


.cp_ipselect {
	overflow: hidden;
	width: 200px;
	margin: 0 0 1em 0;
	text-align: center;
}
.cp_ipselect select {
	width: 100%;
	padding-right: 1em;
	cursor: pointer;
	text-indent: 0.01px;
	text-overflow: ellipsis;
	border: none;
	outline: none;
	background: transparent;
	background-image: none;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
}
.cp_ipselect select::-ms-expand {
    display: none;
}
.cp_ipselect.cp_sl01 {
	position: relative;
	border: 1px solid #bbbbbb;
	border-radius: 2px;
	background: #ffffff;
}
.cp_ipselect.cp_sl01::before {
	position: absolute;
	top: 0.8em;
	right: 0.9em;
	width: 0;
	height: 0;
	padding: 0;
	content: '';
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 6px solid #666666;
	pointer-events: none;
}
.cp_ipselect.cp_sl01 select {
	padding: 8px 38px 8px 8px;
	color: #666666;
}

.home_link {
	overflow:hidden;
}

.home_link a {
	background:#666;
	padding:5px;
	display:block;
	text-align:center;
	width:100%;
	color:white;
}

.news_inr h1 a,
.news_contents h1 a {
	color:white;
}


.left_column {
	width:16%;
}

.right_column {
	width:80%;
}

#menu-side_menu li a,
#menu-side_menu_en li a,
.left_menu li a {
	display:block;
	padding:10px;
	border:solid 1px #ccc;
	margin:0 0 1em 0;
	position:relative;
}
#menu-side_menu li a::after,
#menu-side_menu_en li a::after,
.left_menu li a::after  {
position: absolute;
  right: 5px;
  top: 45%;
  content: "";
  width: 8px;
  height: 8px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}