/* -- */
/* -- */
/* PC */
/* -- */
/* -- */


*{
margin: 0;
padding: 0;
box-sizing: border-box;
position: relative;
}

html{
font-size: 62.5%;
/*\*/
_font-size: 62.5%;
/**/
word-wrap: break-word;
}

a{
color: #010101;
text-decoration: none;
}

a.out:after{
content: url(../img/ico_out.png);
display: inline-block;
margin-left: 3px;
}
a.out_w:after{
content: url(../img/ico_out_w.png);
display: inline-block;
margin-left: 3px;
}
a:hover, a:focus{text-decoration: none;}

a:hover,a:focus,
a:hover img,
a:focus img{
filter: alpha(opacity=95);
-moz-opacity: 0.95;
opacity: 0.95;
}

img {
margin: 0;
padding: 0;
border: 0;
}

ul, ol {
list-style: none;
}

.clearfix:after {
content: "";
display: block;
clear: both;
height: 0;
visibility: hidden;
}
.clearfix { display: inline-block; }
/* exlude MacIE5 \*/
* html .clearfix { height: 1% }
.clearfix {display:block;}
/* end MacIE5 */

body{
font-size: 1.4rem;
font-family: 'Noto Sans Japanese','ヒラギノ角ゴ Pro W6','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
line-height: 1.8;
background-color: #04142b;
color: #010101;
}

/* Layout */
section{
width:100%;
display:block;
}
.wrapper{
width: 980px;
display: block;
margin: 0 auto 0 auto;
text-align: center;
}
section:after,
.wrapper:after{
content: "";
display: block;
clear: both;
height: 0;
visibility: hidden;
}
h2{
font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
font-size: 3.0rem;
font-weight: bold;
font-weight: 700;
}
.contents{
position: relative;
  overflow: hidden;
}
.btn_page{
width: 560px;
height: 60px;
display: block;
margin: 30px auto 0 auto;
text-align: center;
}
.btn_page a{
display: block;
line-height: 60px;
background-color: #ffffff;
border-radius: 3px;
box-sizing: border-box;
}
.page_banner{
display: block;
margin: 0 auto 32px auto;
text-align: center;
}
.page_banner img{
width: auto;
height: 132px;
}
.pcHide{
display: none !important;
}
.spHide{
display: block !important;
}
.pcHide_inlineB{
display: none !important;
}
.spHide_inlineB{
display: inline-block !important;
}
.pc_br{
display: inline;
}
.sp_br{
display: none;
}


/* nav */
nav{
width: 100%;
height: 60px;
display: block;
background-color: #ffffff;
text-align: center;
}
nav ul{
height: 60px;
display: inline-block;
margin: 0;
padding: 0;
}
nav ul:before{
content: "";
width: 104px;
height: 60px;
display: inline-block;
float: left;
background: url(../img/nav_ico_l.png) no-repeat left center;
background-size: 94px auto;
}
nav ul:after{
content: "";
width: 104px;
height: 60px;
display: inline-block;
float: right;
background: url(../img/nav_ico_r.png) no-repeat right center;
background-size: 94px auto;
}
nav ul li{
width: auto;
height: 60px;
display: inline-block;
margin: 0 24px 0 24px;
padding: 0;
}
nav ul li a{
width: auto;
height: 60px;
font-size: 1.6rem;
font-weight: 500;
line-height: 60px;
color: #10337e;
}
nav ul li a:hover{
font-weight: 700;
}


.nav:after,
.nav .wrapper:after,
.nav ul:after{
content: "";
display: block;
clear: both;
height: 0;
visibility: hidden;
}



/* breadcrumbs */
#breadcrumbs {
display: block;
margin: 0 0 0 0;
padding: 0 0 0 0;
background-color: #ffffff;
}
#breadcrumbs .wrapper{
padding: 8px 0 8px 0;
border-top: 1px solid #cccccc;
}
#breadcrumbs ol {
display: block;
float: left;
margin: 0 0 0 2px;
}
#breadcrumbs ol li {
display: inline-block;
font-size: 1.2rem;
color: #333333;
line-height: 12px;
}
#breadcrumbs ol li a {
color: #333333;
text-decoration: underline;
}
#breadcrumbs ol li:before {
content: " > ";
}
#breadcrumbs ol li:first-child:before {
content: "";
}


/* pagenation */
.pagenation,
ul.page-numbers{
display: inline-block;
margin: 32px 0 0 ;
color: #ffffff;
}
.pagenation li,
ul.page-numbers li{
display: inline-block;
float: left;
margin: 0 0 0 8px;
padding: 2px;
line-height: 1;
}
.pagenation li:first-child,
ul.page-numbers li:first-child{
margin: 0 0 0 0;
}
.pagenation li a,
ul.page-numbers li a{
color: #ffffff;
}
.pagenation li.this a,
ul.page-numbers li .current{
padding: 2px 4px 2px 4px;
background-color: #ffffff;
color: #010101;
border-radius: 2px;
}
.pagenation li span.current_page,
ul.page-numbers li span.current_page{
padding: 2px 4px 2px 4px;
background-color: #ffffff;
color: #010101;
border-radius: 2px;
}

/* Back to Button */
#gotoTop{
display: block;
float: right;
margin: 8px 2px 0 0;
font-size: 1.2rem;
line-height: 12px;
color: #333333;
cursor: pointer;
}
#gotoTop span {
display: inline-block;
padding-left: 12px;
background: url(../img/arr_top_pc.png) no-repeat left center;
background-size: auto 13px;
}

/* fixed btn */
#btn_menu{
width:  60px;
height: 0;
display: block;
padding: 60px 0 0 0;
background: url(../img/menu_off.jpg) no-repeat center center;
background-size: 60px 60px;
position: fixed;
top: 0;
right: 0;
overflow: hidden;
z-index: 91000;
}
.menu-open #btn_menu{
background: url(../img/menu_on.jpg) no-repeat center center;
background-size: 60px 60px;
}
#btn_kouen{
width:  60px;
display: block;
position: fixed;
top: 62px;
right: 0;
overflow: hidden;
z-index: 90001;
}
#btn_kouen a{
width:  60px;
display: block;
padding: 22px 0 22px 0;
overflow: hidden;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
text-align: center;
line-height: 60px;
background-color: #10337e;
font-size: 1.8rem;
color: #ffffff;
}
#btn_kouen a span{
padding: 36px 0 0 0;
background: url(../img/ico_kouen.png) no-repeat center top;
background-size: 22px 24px;
}

/* footerContents */
#footerContents{
width: 100%;
display: block;
padding: 48px 0 48px 0;
background-color: #ffffff;
}
#footerContents ul{
display: inline-block;
margin: 0 auto 0 auto;
}
#footerContents ul li{
display: inline-block;
margin: 0 20px 0 20px;
}
#footerContents ul li img{
width: auto;
height: 64px;
}

#footerContents .page_banner{
margin-top: 0;
margin-bottom: 32px;
}


/* footer */
footer{
width: 100%;
display: block;
padding: 42px 0 42px 0;
background-color: #04142b;
color: #ffffff;
}
.footerLink{
display: inline-block;
float: left;
}
.footerLink a{
color: #ffffff;
}
#copyright{
display: inline-block;
float: right;
}

/* slide menu */
#slideMenu{
display: none;
padding: 0 0 0 20px;
position: fixed;
top: 0;
right: -240px;
width: 240px;
height: 100%;
background: #04142b;
color: #fff;
z-index: 1;
padding-top: 40px;
-webkit-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000);
-moz-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000);
-o-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000);
transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); /* easeInOutExpo */
-webkit-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000);
-moz-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000);
-o-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000);
transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); /* easeInOutExpo */
}

.menu-open #page{
left: -240px;
left: 0;
box-shadow: 1px 0 2px #000;
-webkit-box-shadow: 1px 0 2px #000;
}
.menu-open #btn_kouen{
display: none;
}
.menu-open #slideMenu{
display: block;
right: 0;
}
.menu-open #overlay{
z-index: 3;
opacity: 0.3;
left: -240px;
}


#slideMenu ul{
display: block;
padding: 46px 0 0 0;
border-bottom: 1px solid #ffffff;
}
#slideMenu li{
display: block;
border-top: 1px solid #ffffff;
}
#slideMenu a{
display: block;
padding: 25px 2px 25px 5px;
color: #ffffff;
}
#slideMenu a:hover{
background-color: #ffffff;
color: #04142b;
}
#slideMenu li#slide_menu_close{
display: none;
}

.jsondata_list{
display:none !important;
}

/* video embed
----------------------------------*/

.embed{
width: 100%;
display: block;
position: relative;
padding-bottom: 56.25%;
height: 0;
overflow: hidden;
border: 1px solid #333333;
box-sizing:border-box;
}
.embed iframe{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.embed video{
width: 100%;
height: auto;
margin: 0;
padding: 0;
background-size: contain;
}


/* -- */
/* -- */
/* PC */
/* -- */
/* -- */
