
/*====ページ全体
==========================================================*/

#ContentsArea{ font-family: Noto Sans,Noto Sans JP, Meiryo, 'Osaka', sans-serif; }
body {
	margin: 0 auto;
	padding: 0;
	overflow-x: hidden;
	width: 100% !important;
	min-width: 1000px;
  background: url(head_bg.png) no-repeat center top #fff;
}
.nbo_header{ margin: 0 auto; max-width: 1000px; }
.localFooter,#bpGlobalFooter{ background-color: #fff; padding-top: 30px; }


img {
	border:none;
	margin: 0;
	padding: 0;
	line-height: 0;
	vertical-align: bottom;
}

#wrap{
  width: 1000px;
  margin: 0 auto;
  overflow: hidden;
}
#MainArea{ margin:0; padding:0; }
#ContentsArea {
	margin:0 auto;
	overflow: hidden;
}
#ContentsArea img{ max-width: 100%; height: auto; }
#content { margin: 0 auto; position: relative; padding:10px 0 5em; color:#000; font-size:17px; border-bottom: 20px solid #93c6e8; background: url(topbg.png) no-repeat top center; background-size: 120% auto; }

#header {
    margin-bottom: 4px;
}

.bk
{
	color: #000;
}

br{ line-height: 1em;}

a {
	text-decoration: none;
	color:#385C93;
	border:none;
}

a:hover	{
	color:#385C93;
	text-decoration:underline;
}


h1 {
	margin:0;
	padding:0;
	line-height:0;
}
p {
	margin:0;
	padding:0;
}

.cl {
	clear: both;
}
.fl {
	float: left;
}
.fr {
	float: right;
}

.cap
{
	font-weight: normal;
}

ul{ list-style: none;}

footer {
    padding-top: 20px;
    background-color: #ffffff;
    border-top: 3px solid #555;
}

#social_area{ background-color: #000; padding: 10px 0 5px; position: relative; z-index: 1; }
.social_buttons{ width: 960px; margin: 0 auto; }

/*====ヘッダイメージ
==========================================================*/


/* tab ------------------------------*/
ul.tab{ overflow: hidden; padding: 0; margin: 30px 0 0; }
ul.tab li{ float: left; margin-left: 20px; }
ul.tab li:first-child{ margin-left: 0; }



#MainImgArea {
  margin: 0 auto;
  position: relative;
  text-align: center;
  padding: 0 0 0;
  overflow: hidden;
}
#MainImgArea .bnr{ padding: 2%; display:block; background-color:rgba(255, 255, 255, .85); box-sizing:border-box; width: 100%; transition:.3s; }
#MainImgArea .bnr a{ transition:.3s; }
#MainImgArea .bnr a:hover{ filter: brightness(110%) saturate(105%); }
/*
#MainImgArea .bnr.is-fixed {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 50;
    padding: 1%;
}*/

.mainimg{  }
.maintit{
  display: flex;
  width: 100%;
  margin: 0 auto;
  position: relative;
  z-index: 2;
  height: 600px;
}
.mainimg h1{ margin: 0 auto 0; }
.maintit h1{ width: 50%; height: 100%; padding: 0 4%; box-sizing: border-box; background: linear-gradient(45deg,#080a0e,#40495c); display: flex; align-items: center; }
.maintit h1 img{ display: block; margin: 0 auto; }
.maintit .img{ width: 50%; background: url(mainimg.jpg) no-repeat center center; background-size: cover; }

#MainImgArea img{ max-width: 100%; height: auto; }
#MainImgArea .img img{ /*box-shadow:10px 10px 0 rgba(0,155,215,0.5);*/ }
#MainImgArea .prof{
  color: #555;
  font-size: 80%;
  width: 450px;
  line-height: 1.6em;
}
#MainImgArea .prof strong{ font-size: 120%; }
#MainImgArea .prof .txt{
  background-color: rgba(255,255,255,0.7);
  padding: 5px 5px 0 0;
}


#MainImgArea .read{
  position: relative;
  padding: 5%;
  margin: 0 auto;
  line-height: 2;
  text-align: left;
  background:#efefef;
  text-align: justify;
  text-justify: inter-ideograph;
}
#MainImgArea .read p{ margin:.5em 0; }

/*====コンテンツサイズ
==========================================================*/

a.linkBtn {
  display: block;
  margin: 30px auto 20px;
  padding: 10px 0;
  text-align: center;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  width: 840px;
  box-sizing: border-box;
  overflow: hidden;
  box-shadow:0 0 10px #aaa;
  background: #0a1d37;
  position: relative;
}
a.linkBtn:before{ content: "";position: absolute; left: 5px; top: 5px; display: block;  border: 1px solid #fff; width: 828px; height: 104px; opacity:0.5; }
a.linkBtn:hover{
  background: #88bbdd;
  border-color: #fff;
  box-shadow:0 0 0 #ccc;
  transform: translateX(5px);
}
#note_text{ font-size: 80%; text-align: center; z-index: 1; position: relative; font-weight: normal; }




/* 各記事の設定 ------------------------------*/
.Account{
	position: relative;
	margin: 4em auto 0;
	padding: 0;
	max-width: 1400px;
}
.Account.end{ margin-bottom:3em; }

.Account h2{
  height: 50px;
  margin: 1em 0 1.5em;
  padding: 0;
  overflow: hidden;
  position:relative;
}
.Account h2 img{
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: auto !important; height: 50px !important; max-width: 1399px !important;
}

@media screen and (max-width: 810px) {
  #ContentsArea {
	overflow: hidden;
}
}


ul.toplink{ padding:0; margin:0; display:flex; flex-wrap:wrap; justify-content:space-between; }
ul.toplink li{ position:relative; width:calc(50% - 1.2em);  }
ul.toplink li:nth-of-type(3),ul.toplink li:nth-of-type(4){ margin-top:2em; }
ul.toplink li:nth-of-type(2),
ul.toplink li:nth-of-type(4),
ul.toplink li:nth-of-type(6),
ul.toplink li:nth-of-type(8),
ul.toplink li:nth-of-type(10),
ul.toplink li:nth-of-type(12){ background-color:rgba(204,204,204,.3); }
ul.toplink li > a{ position:absolute; display:block; left:0; top:0; width:100%; height:100%; z-index:2; }
ul.toplink li .toplink-in{ letter-spacing:0.05em; margin:0 auto; padding:2em; color:#555; position:relative; }
ul.toplink li > a +.toplink-in:before{ position: absolute; content: ""; left: 0; top: 0; width: 0; height: 0; background: #fff; transition: .4s;}
ul.toplink li .toplink-in .txt{ position: relative; z-index: 1;  text-align: justify; text-justify: inter-ideograph;}
ul.toplink li .toplink-in .ph{ transition:.4s; position: relative; z-index: 1; }
ul.toplink li .toplink-in p.vol{ font-size:130%; font-weight:bold; margin-bottom:.2em; }
ul.toplink li .toplink-in p.vol b{ font-size:150%; color: #868686; display:inline-block; position:relative; vertical-align:middle; margin-right:.5em; transition:.4s; }
ul.toplink li .toplink-in p.vol b:before,
ul.toplink li .toplink-in p.vol b:after{ content:""; position:relative; display: inline-block; width:43px; height:58px; background: url(top_tit_icon01.png) no-repeat center center; background-size:cover; vertical-align:middle; }
ul.toplink li .toplink-in p.vol b:before{ margin-right:.3em; }
ul.toplink li .toplink-in p.vol b:after{ background-image:url(top_tit_icon02.png); margin-left:.3em; }
ul.toplink li .toplink-in p.sub{ font-size:160%; font-weight:bold; margin-bottom:.1em; transition:.4s; }
ul.toplink li .toplink-in h3{ font-size:195%; font-weight:bold; margin:0; letter-spacing:0; transition:.4s; }
ul.toplink li .toplink-in p.read{ margin:.8em 0 0; color:#000; }

ul.toplink li > a:hover + .toplink-in p.sub{ color:#222; }
ul.toplink li > a:hover + .toplink-in h3{ color:#88bbdd; }
ul.toplink li > a:hover + .toplink-in .ph{ filter: brightness(115%) saturate(105%);}
ul.toplink li > a:hover + .toplink-in:before{ width:100%; height:100%; }

ul.toplink li.wid{ width:100%; }
ul.toplink li.wid .toplink-in{ display:flex; justify-content:space-between; flex-direction: row-reverse; }
ul.toplink li.wid .toplink-in .txt{  width:52%; }
ul.toplink li.wid .toplink-in .ph{ width:46%; }
ul.toplink li.wid.coming .toplink-in{ justify-content:center; }
ul.toplink li.wid.coming .toplink-in .txt{ text-align:center; }

ul.top-mov{ padding:0; margin:0 auto; display:flex; justify-content:space-between; flex-wrap:wrap; }
ul.top-mov li{ max-width:675px; width:48.5%; margin-bottom:2%; }
ul.top-mov li a{ font-size:170%; font-weight:bold; color:#555; transition: .3s; }
ul.top-mov li .mov{ margin-top:.5em; }
ul.top-mov li .mov > p{ font-size:150%; font-weight:bold; color:#555; margin: .5em 0 .2em;}
ul.top-mov li .play{ position:relative; transition: .3s; }
ul.top-mov li img{ transition: .3s; }
ul.top-mov li .play:before{ content: ""; position: absolute; z-index: 1; left: 50%; top: 50%; transform: translate(-50%,-50%); width:80px; height:80px; display:block; background:url(play.png) no-repeat center center; background-size:cover; transition: .3s; }
ul.top-mov li a:hover .play:before{ width:60px; height:60px; }
ul.top-mov li a p{ margin:.5em 0; }
ul.top-mov li a p.tag{ display:inline-block; background-color:#555555; color:#fff; margin:1em 0 .2em; font-size:70%; padding:.2em 2em; transition: .3s; }
ul.top-mov li a p.tag + p{ margin-top:0; }
ul.top-mov li a:hover{ color: #88bbdd; text-decoration:none; }
ul.top-mov li a:hover p.tag{ background-color:#333; }
ul.top-mov li a:hover img{ filter: brightness(115%) saturate(105%); }

ul.kanren-link{ padding:0; margin:0; }
ul.kanren-link li{ margin-bottom: 1.4em;}
ul.kanren-link li a{ position:relative; display:block; color:#333; font-size:160%; letter-spacing:0.05em; transition:.4s; }
ul.kanren-link li a:hover,ul.kanren-link li a:hover span{ text-decoration:none; color: #00bfff !important;}
ul.kanren-link li a:before{ content:""; width:100%; height:2px; background-color:#00bfff; position:absolute; left:0; bottom:-.4em; display:block; }
ul.kanren-link li a span{ color:#93c6e8; display:block; transition:.4s; margin-left:-.5em;  }

.modal{ max-width:1000px; }

@media screen and (max-width: 1399px){
  ul.kanren-link{ margin:0 auto; }
  .Account.end{ font-size:90%; }
  ul.toplink li .toplink-in h3{ font-size:185%; }
  ul.toplink li .toplink-in p.vol{ font-size:110%;}
}
@media screen and (max-width: 1399px) and (min-width: 1000px) {
  ul.toplink,ul.kanren-link{ font-size:1.21vw;  }
  ul.top-mov li a{ font-size:2.4vw;  }
}
@media screen and (max-width: 999px){ 
  ul.toplink,ul.kanren-link{ font-size:70%; }
  ul.top-mov li a{ font-size:150%;  }
}

#footArea{
  margin: 50px auto 0;
  padding: 50px 0 70px;
  color: #fff;
  font-size: 90%;
  background: linear-gradient(45deg,#555,#555);
  width: 100%;
  position: relative;
  z-index: 2;
}
#footArea a{ color: #fff; }
#footArea > div{
  max-width: 900px;
  margin: 0 auto;
}
#footArea h2{
  font-size: 100%;
  background-color: #99ccee;
  color: #fff;
  position: relative;
  padding: 7px 15px 9px;
  margin: 20px 0 15px;
  letter-spacing: 0.3em;
}
#footArea .kome{ color: #ccc; }


#linkArea {
	margin:0;
	padding:0;
	list-style:none;
}
#linkArea li{
	border-top: 1px dotted #999;	
}
#linkArea li:first-child{
  border: none;
}
#linkArea li a{
  background:url(../icon_link.png) no-repeat left center;
  padding:10px 10px 10px 28px;
  line-height:1.5em;
  margin-bottom: 1px;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  display: inline-block;
  font-size: 100%;
}
#linkArea li a:hover{
  
}
#linkArea li.st{ background-color: #fffbd0; font-weight: bold; }

.link-box{ padding: 0; }
.link-box > li{ box-sizing: border-box; margin-top: 2em; background-color: #ecf8e9; padding: 40px 50px; }
.link-box > li a{ display: flex; justify-content: space-between; align-items: center; background-color: #00966a; color: #fff; font-size: 130%; border-radius: 7px; box-shadow: 2px 2px 5px rgba(0, 0, 0, .2); padding: 1em .8em; margin-bottom: .6em; font-weight: bold; border: 3px solid #00966a; transition: .5s;}
.link-box > li a b{ text-shadow: 2px 2px 0 rgba(0, 0, 0, .2); }
.link-box > li a span{ font-size: 75%; text-align: right; font-weight: normal; transition: .5s; }
.link-box > li a:hover{ text-decoration: none; opacity: .8; border-color: #fff !important; }
.link-box > li a:hover span{ transform: translateX(5px); }
.link-box > li .txt{ line-height: 1.8; }
.link-box > li.col2{ background-color: #e9f8f3; }
.link-box > li.col2 a{ background-color: #00c7bb; border-color: #00c7bb; }

ul.list{ box-sizing:border-box; max-width:900px; margin:0 auto 2em; padding:0 }
ul.list li{ position: relative; padding:.7em; background-color:#fff;  border:2px dotted #aaa; margin-bottom:.5em; }



/* ContactAreaの設定 ------------------------------*/

#ContactArea {
	margin:0 0 40px 0;
	padding:0;
	font-size:85%;
	width: 730px;
}
#Contact {
	margin:5px;
	padding:10px 0 0 0;
}
#ContactTxt {
	margin:0 0 0 0;
	padding:0;
	line-height:1.5em;
}

#ContactTxt2 {
	width: 676px;
	_width: 690px;
	margin:0;
	padding:0 10px 0;
	float:left;
	line-height:1.5em;
	border-bottom: 2px solid #385C93;
	border-right: 2px solid #385C93;
	border-left: 2px solid #385C93;
}

#ContactTxt p{
	margin:0px;
	font-size: 90%;
}
#ContactImg {
	margin:0 0 0 0;
	float:right;
}

/* PageTopの設定 ------------------------------*/
.PageTop {
	margin:0 auto 10px;
	padding:0;
	overflow: hidden;
	width: 1000px;
  position: relative;
}
.PageTop a{ background-color: #777; display: block; width: 200px; float: right; transition: all .3s; text-align: center; padding: 12px 0; }
.PageTop a:hover{ background-color: #000; }
.PageTop a img{ display: block; margin: 0 auto; }

#rem_content{
	background-color: #fff;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    margin: 0 auto;
    padding: 20px 0;
    text-align: left;
    width: 1000px;
}
#rem_content h3 {
    font-size: 150%;
    margin: 10px 0;
    padding: 0;
    text-align: center;
}
#rem_content p {
    font-size: 90%;
    line-height: 1.8em;
    padding: 0 105px 10px;
    text-indent: 0;
}
#rem_content h5 {
    font-size: 90%;
    margin: 30px 0 10px 105px;
    padding: 0;
}


/*====RightArea
==========================================================*/
#MenuArea {
	width:230px;
	margin:0;
	padding:0;
	list-style:none;
}
#MenuArea li{
  margin-bottom: 1px;
}
#RightArea img,#RightArea a{
	display: block;
	vertical-align: top;
}




/* ボックス内dloatｖalear */
.clearfix:after,.acc:after {
	content: ".";
	display: block;
	visibility: hidden;
	clear: both;
	height: 0;
}
.clearfix,.acc {display: inline-block;}
/* Hides from macIE \*/
* html .clearfix,* html .acc {height: 1%;}
.clearfix,.acc {display: block;}
/* End hide from macIE */

.st_bl{
	font-weight: bold;
	color: #003399;
}

.st_or{
	font-weight: bold;
	color: #E8340E;
}

.line
{
	border-bottom: 1px dotted #cccccc;
}
.gmenu
{
	margin: 0; 
	padding: 0;
	height: 55px;
}

.gmenu li{
	list-style: none;
	margin: 0;
	padding: 0;
	height: 55px;
	font-size: 0;
	vertical-align: bottom;
}

.pall{
	margin: 10px 0 0 20px;
	padding: 0;
}

.cap
{
	font-weight: normal;
}

.newpdt
{
	font-weight: bold;
	color: #ff6600;
}


.kome{
	font-size: 90%;
	line-height:1.6em;
	color: #555;
}
.kome2{
	font-size: 75%;
	line-height:1.4em;
	color: #555;
}

.flex2{ display:flex; justify-content:space-between; }
.flex2 > div{ width:48%; }

.banner{
	margin: 15px 0;
}
.f85 {font-size: 85%; }
.f110 {font-size: 110%; }
.f150 {font-size: 150%; }
.tar {text-align: right !important;}
.tac{ text-align: center !important;}
.fb{  font-weight: bold !important;}
.fl{ float: left;}
.fr{ float: right;}

dl{ font-size: 80%; color: #333; }
dt,dd{ line-height: 1.5; margin-bottom: 5px; }
dt{ float: left; }
dd{ margin-left: 1.2em; }

a.alpha{ transition: all .3s; display: block; }
a.alpha:hover {
  filter:alpha(opacity=80);
  -moz-opacity: 0.8;
  opacity: 0.8;
  transform:translate(3px,0);
}
sup,
sub {
    height: 0;
    line-height: 1;
    vertical-align: baseline;
    _vertical-align: bottom;
    position: relative;
    font-size: 70%;
}
 
sup {
    bottom: 1.4ex;
}
 
sub {
    top: .5ex;
}


.sp{ display: none !important; }
@media screen and (max-width: 1440px) {
  #MainImgArea{ width:94%; }
  #content{ padding-left:3%; padding-right:3%; }
  ul.top-mov li .play:before{ width:60px; height:60px; }
  ul.top-mov li a:hover .play:before{ width:45px; height:45px; }
}
@media screen and (max-width: 810px) {
  #MainArea img{ max-width: 100%; height: auto;  }
  #MainArea,#content{ font-size:3vw; }
  #MainImgArea{ width:100%; }
  #MainImgArea .read{ font-size:108%; }
  .mainimg h1 {  }
  /* #MainImgArea .bnr.is-fixed {padding: 2%; background-color: #fff;} */
  .pc{ display: none !important; }
  .sp{ display: block !important; }
  body { background: none; min-width: auto; }
  .nbo_header,.nxt_header{ display: none; }
  #sp_header{ background: #000; text-align: center; padding: 5px; }
  #sp_header img{ width: 120px; margin: 0 auto; height:auto; }
  .social_buttons{ width: 95%; margin: 0 auto;  }
  .social_buttons li { margin-right: 5px; }
  .w90{ margin:0 auto; }
  #content{ padding-left:5%; padding-right:5%; border-bottom: 10px solid #93c6e8; background: url(topbg.png) no-repeat top center; background-size: auto 110%; }

  ul.toplink li .toplink-in h3{ font-size:200%; }

  .Account { margin-top:2em; }
  .Account h2 { margin: 1em 0 .5em;}
  .Account h2,.Account h2 img { height:25px !important; }
  ul.toplink { font-size: 65%;}
  ul.toplink p.kome{ font-size: 100%;}
  ul.toplink li .toplink-in { padding:1.5em; }
  ul.toplink li.wid .toplink-in { flex-wrap:wrap; flex-direction: row; }
  ul.toplink li.wid .toplink-in .txt { width: 100%; }
  ul.toplink li.wid .toplink-in .ph { width: 100%; margin-bottom:1.5em; }
  ul.toplink li .toplink-in p.vol b::before, 
  ul.toplink li .toplink-in p.vol b::after{ width:1.3em; height:1.8em; }
  ul.toplink li .toplink-in p.vol{ font-size:125%;
  ul.toplink li .toplink-in p.read { font-size:140%; line-height:1.7; }
  ul.kanren-link { font-size: 58%; margin-bottom:5em; }
  ul.kanren-link li a span { margin-left: -.3em; }
  ul.kanren-link li { margin-bottom: 2em; }
  ul.kanren-link li a::before { bottom:-.6em; }
  ul.top-mov { display: block; }
  ul.top-mov li { width:100%; font-size:110%; margin-top:1em; margin-bottom:2em; }

}

/* margin-top */
.mt0{margin-top: 0 !important;}
.mt1{margin-top: 1px;}
.mt2{margin-top: 2px;}
.mt3{margin-top: 3px;}
.mt4{margin-top: 4px;}
.mt5{margin-top: 5px;}
.mt10{margin-top: 10px !important;}
.mt15{margin-top: 15px !important;}
.mt20{margin-top: 20px !important;}
.mt30{margin-top: 30px !important;}
.mt40{margin-top: 40px !important;}
.mt50{margin-top: 50px !important;}
.mt60{margin-top: 60px !important;}

/* margin-right */
.mr1{margin-right: 1px;}
.mr2{margin-right: 2px;}
.mr3{margin-right: 3px;}
.mr4{margin-right: 4px;}
.mr5{margin-right: 5px;}
.mr10{margin-right: 10px;}
.mr15{margin-right: 15px;}
.mr20{margin-right: 20px;}
.mr30{margin-right: 30px;}

/* margin-bottom */
.mb0{margin-bottom: 0px !important;}
.mb1{margin-bottom: 1px;}
.mb2{margin-bottom: 2px;}
.mb3{margin-bottom: 3px;}
.mb4{margin-bottom: 4px;}
.mb5{margin-bottom: 5px;}
.mb10{margin-bottom: 10px;}
.mb15{margin-bottom: 15px;}
.mb20{margin-bottom: 20px;}
.mb30{margin-bottom: 30px !important;}
.mb50{margin-bottom: 50px !important;}

/* margin-left */
.ml1{margin-left: 1px;}
.ml2{margin-left: 2px;}
.ml3{margin-left: 3px;}
.ml4{margin-left: 4px;}
.ml5{margin-left: 5px;}
.ml10{margin-left: 10px;}
.ml15{margin-left: 15px;}
.ml20{margin-left: 20px;}

/* padding-top */
.pt1{padding-top: 1px;}
.pt2{padding-top: 2px;}
.pt3{padding-top: 3px;}
.pt4{padding-top: 4px;}
.pt5{padding-top: 5px;}
.pt10{padding-top: 10px;}
.pt15{padding-top: 15px;}
.pt20{padding-top: 20px;}
.pt40{padding-top: 40px;}

/* padding-right */
.pr1{padding-right: 1px;}
.pr2{padding-right: 2px;}
.pr3{padding-right: 3px;}
.pr4{padding-right: 4px;}
.pr5{padding-right: 5px;}
.pr10{padding-right: 10px;}
.pr15{padding-right: 15px;}
.pr20{padding-right: 20px;}

/* padding-bottom */
.pb1{padding-bottom: 1px;}
.pb2{padding-bottom: 2px;}
.pb3{padding-bottom: 3px;}
.pb4{padding-bottom: 4px;}
.pb5{padding-bottom: 5px;}
.pb10{padding-bottom: 10px;}
.pb15{padding-bottom: 15px;}
.pb20{padding-bottom: 20px;}

/* padding-left */
.pl1{padding-left: 1px;}
.pl2{padding-left: 2px;}
.pl3{padding-left: 3px;}
.pl4{padding-left: 4px;}
.pl5{padding-left: 5px;}
.pl10{padding-left: 10px;}
.pl15{padding-left: 15px;}
.pl20{padding-left: 20px;}
.pl30{padding-left: 30px;}
.pl40{padding-left: 40px;}

/* padding */
.pg1{padding: 1px;}
.pg2{padding: 2px;}
.pg3{padding: 3px;}
.pg4{padding: 4px;}
.pg5{padding: 5px;}
.pg10{padding: 10px;}
.pg15{padding: 15px;}
.pg20{padding: 20px;}
.pg30{padding: 30px;}
.pg40{padding: 40px;}

.line {
	border-bottom: 1px dotted #1F88CC;