@charset "utf-8";

/* ===================================================================
format
=================================================================== */

/*	body
----------------------------------------------------*/
body {
text-align: center;
font-family: 游ゴシック体, YuGothic, 'Yu Gothic', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif , "FontAwesome";
}

/*	a:link,a:visited,a:hover,a:active
----------------------------------------------------*/
a			{color:#0040e1;text-decoration:underline;}
a:link		{color:#0040e1;text-decoration:underline;}
a:visited	{color:#0040e1;}
a:hover		{text-decoration:none;}
a:active	{color:#0040e1;}

/*	img
----------------------------------------------------*/
img {
max-width: 100%;
width: 100%;
height: auto;
}

.st img {
max-width:initial;
width:initial;
}

/* ===================================================================
Layout
=================================================================== */
#contents,#blog_cont{width: 770px;}
#sidebar,#news_side	{width: 270px;}

/* ===================================================================
Layout-contents
=================================================================== */

/*	header
----------------------------------------------------*/
#header {
}

/*	nav
----------------------------------------------------*/


/*	main
----------------------------------------------------*/
#main {
-js-display: flex;/* IE8-9 */
display: -ms-flexbox;/* IE10 */
display: flex;
-ms-flex-pack: justify;/* IE10 */
justify-content: space-between;
width: 100%;
max-width: 1080px;
margin: 0 auto;
}

/*	contents
----------------------------------------------------*/
#contents h1 {
position: relative;
padding: 15px 10px 15px 30px;
font-size: 20px;
border-top: 3px solid #191978;
background: white;
-webkit-box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.25);
-moz-box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.25);
box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.25);
}

#contents h1:before {
content: "";
position: absolute;
top: 15px;
left: 10px;
width: 5px;
height: 33px;
margin-right: 20px;
background: #191978;
}

#contents h2 {
padding: 13px 10px 8px 15px;
font-size: 18px;
font-weight: bold;
border-bottom: 4px solid #efeded;
background: #f4f4f4;
}

#contents h2:before {
font-family: "FontAwesome";
content: "\f10c";
padding-right: 10px;
font-size: 18px;
color: #191978;
}

#contents h3 {
position: relative;
padding: 10px 10px 10px 0;
font-size: 18px;
font-weight: bold;
border-bottom: 4px solid #eaeaea;
}

#contents h3:before {
content:"";
display:block;
position:absolute;
bottom:0;
width:15%;
border-bottom:4px solid #9cb7d0;
margin-bottom:-4px;
}

/*	sidebar
----------------------------------------------------*/
#sidebar h3 {
padding: 12px 15px;
color: white;
background: #22227d;
}

#sidebar li a {
display: block;
padding: 12px 15px;
color: #333;
text-decoration: none;
border-bottom:1px solid #ccc;
}

#sidebar li:last-child {
border-bottom: none;
}

#sidebar li.child a {
padding: 12px 20px 12px 20px;
font-size: 14px;
}

#sidebar li.child a:before {
    font-family: "FontAwesome";
    content: "\f105";
    padding-right: 15px;
}

#sidebar li a:hover {
background: #f5f5f5;
}

/*	#news_side
----------------------------------------------------*/
#news_side .side_cont {
margin-bottom: 20px;
}

#news_side h3 {
padding: 20px 15px;
color: white;
background: #22227d;
}

#news_side li {
list-style-type: none;
}

#news_side li a {
display: block;
padding: 15px;
color: #333;
text-decoration: none;
border-bottom:1px solid #ccc;
}

#news_side li a:hover {
background: #f5f5f5;
}

/*	footer
----------------------------------------------------*/
#footer p.copy {
color: white;
font-size: 12px;
text-align: center;
background: #000057;
}

/* ===================================================================
FontAwesome
=================================================================== */
.fa {}

/* ===================================================================
breadcrumb
=================================================================== */
/*	breadcrumb
----------------------------------------------------*/
.breadcrumb {
max-width: 1080px;
width: 100%;
margin: 0 auto;
}

.breadcrumb ol {
-js-display: flex;/* IE8-9 */
display: -ms-flexbox;/* IE10 */
display: flex;
padding: 1em 0;
}

.breadcrumb li {
font-size: 12px;
}

.breadcrumb li:before {
content: ">";
padding: 0 0.3em 0 0.8em;
}

.breadcrumb li:first-child:before {
content: none;
}

/* ===================================================================
Pagetop
=================================================================== */
.pagetop {
position: fixed;
right: 20px;
bottom: 20px;
font-size: 77%;
}

.pagetop a {
display: block;
    width: 100px;
    padding: 1em 0;
    text-align: center;
    text-decoration: none;
    color: #191978;
    font-weight: bold;
    border: 2px #191978 solid;
    border-radius: 0.5em;
    background: #fff;
}

.pagetop a:hover {
text-decoration: none;
background: #eef5ff;
}

/* ===================================================================
Rollover 背景が白の時用
=================================================================== */
a img {
opacity: 1;
transition: .3s ease-in-out; 
}

a:hover img {
opacity: .7;
filter: alpha(opacity=30);
}