
/*====ページ全体
==========================================================*/

#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 #f5f5f5;
}
.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; background: url(mainbg.jpg) no-repeat fixed; background-size: cover; }
#ContentsArea {
	margin:0 auto;
	overflow: hidden;
}
#content { margin: 0 auto; position: relative; padding:10px 0 0; color:#000; font-size:17px; }
#content:before {
  content: "";
  width: 1100px;
  height: 100%;
  background-color: rgba(255, 255, 255, .95);
  position: absolute;
  left: calc(50% - 550px);
  top: 0;
  z-index: 0;
}
#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;
}
.mainimg{ display: flex; }
.maintit{
  display: flex;
  width: 100%;
  margin: 0 auto;
  position: relative;
  z-index: 2;
  height: 600px;
}
.mainimg h1{ margin: 3% auto; }
.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; }
@media screen and (max-width: 1280px) {
  .maintit {
  height: 500px;
}
}
@media screen and (max-width: 1080px) {
  .maintit {
  height: 400px;
}
}


#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;
  margin: 0 auto;
  line-height: 2;
  font-weight: bold;
  text-align: left;
  background:#efefef;
  text-align: justify;
  text-justify: inter-ideograph;
}
#MainImgArea .read .social_buttons{ text-align: center; margin: 0 auto; }
#MainImgArea .read .social_buttons li{ display: inline-block; float: none; } 
#MainImgArea .read p{ padding: 40px 1.5em; font-size: 115%;  margin: 0 auto; color: #000; max-width: 1000px; }
#MainImgArea .photo{
  position: relative;
}
#MainImgArea .read .prof{
  margin-top: 20px;
  border: 3px solid #0AB188;
  background-color: #fff;
  line-height: 1.5;
  padding-right: 20px;
}

#MainImgArea p.tit{ font-size: 80%; background-color: #fff; padding-bottom: 5px; color: #666; }

#MainImgArea .btn{ position: absolute; right: 0; bottom: 30px; }



/*====コンテンツサイズ
==========================================================*/

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: 40px auto 0;
	padding: 0 0 10px;
	width: 1000px;
}

.Account h2{
  position: relative;
  margin: 20px 0 20px;
  padding: 28px 40px 40px 110px;
  font-size: 170%;
  color: #000;
  line-height: 1.4;
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
}
.Account h2 > span{ display: block; position: relative; }
.Account h2 > span span{ color: #e60012; }
.Account h2:after{
  content: "";
  position: absolute;
  width: 1200px;
  height: 3px;
  background-color: #88bbdd;
  bottom: 20px;
  left: calc(50% - 600px);
}
.Account h2::before {
  content: "";
  position: absolute;
  left: 50px;
  top: 50%;
  margin-top: -30px;
  width: 50px;
  height: 50px;
  background: url(tit_icon.png) no-repeat center center;
  background-size: contain;
  z-index: 2;
}

@media screen and (max-width: 810px) {
  #ContentsArea {
	overflow: hidden;
}
}



.Account .acc > h3{ 
  font-size: 120%;
  padding: 25px 0 0px 0;
  margin: 0 50px 10px;
  color: #ca141d;
  border-top: 1px solid #aaa;
}
.Account .acc > h3 span{
  display: inline-block;
  background-color: #26c3d5;
  color: #fff;
  padding: 10px 20px;
  text-align: center;
  width: 5em;
  margin-right: 10px;
  letter-spacing: 0.1em;
  font-size: 80%;
}



.p1 .Account{ background: #20535f; color: #fff; border:none; box-shadow:none; }
.p1 .Account h2{ color: #fcdb53; background: none; border-bottom: 2px dotted #fff; }
	
.acc {
	margin:10px auto 0;
	font-size: 100%;
	position: relative;
	
}
.acc > p{
  line-height: 2em;
  text-indent: 1em;
  text-align: justify;
  text-justify:inter-ideograph;
  width: 900px;
  margin:0 auto 15px;
}

.acc.read > p{ font-weight: 700; text-indent: 0; margin-bottom: 0; }

.letter-s{ letter-spacing: -0.01em; }
.acc .st{ font-style: italic; color: #000; text-indent: 0; font-size: 110%; font-weight: bold; }
.acc p b{  display: inline-block; position: relative; margin-right: 1em; background-color: #88bbdd; color: #fff; padding: 0 .8em 2px; line-height: 1.6; }
.acc p.user,.acc p.user2,.acc p.user3 { text-indent: 0; }
.acc p.user2 > b{ background-color: #ff9922; }
.acc p.user3 > b{ background-color: #ff8a18; }


.company{ font-size: 90%;  color: #333; width: 950px; margin: 60px auto; border: 1px solid #0077c4; }
.company .acc{ width: 850px; margin: 0 auto; padding-bottom: 20px; }
.company .acc p{ text-indent: 0; margin-bottom: 10px; }
.company h2{}
.company h3 { margin-bottom: 5px; }


.next{ text-align: center;  max-width: 900px; margin: 50px auto 0; font-weight: bold; padding-bottom: 50px;  }

.paging{ width: 900px; margin: 25px auto; text-align: center; }
.paging li{ display: inline-block; margin: 0 5px; }
.paging li a{ border: 1px solid #656464; color: #656464; display: block; padding: 0.2em 0.7em; }
.paging li a:hover{ text-decoration: none; }
.paging li:not(.active) a:hover{ background-color: #00afd0; border-color: #00afd0; color: #fff; }
.paging li.active a{ border-color: #00afd0; color:#00afd0; font-weight: bold; }

.youtube-iframe{ max-width: 900px; margin: 0 auto; }
.youtube-iframe > div{
  position: relative;
  width: 100%;
  padding-top: 56.25%;}
.youtube-iframe iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}


/* 図の設定 ------------------------------*/
.photoW{
  position: relative;
  margin: 40px 0;
}
.photoW:before{
  content: "";
  position: absolute;
  width: 2000px;
  left: calc(50% - 1000px);
  height: 100%;
  top: 0;
  background: #d7e7ed;
}
.photoW > div{ position: relative; display: flex; flex-direction: row; align-items: center; }
.photoW .ph{ width: 498px; transform: translateX(-50px); }
.photoW .txt{ width: 600px; font-size: 90%; transform: translateX(100px); color: #333; }
.photoW .txt .name{ font-weight: 600; font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif; line-height: 1.6; font-size: 110%; }
.photoW .txt .name span{ font-size: 130%; }
.photoW .txt .prof{ margin-top: .5em; font-size: 100%; line-height: 1.8;  }
.photoW.R > div{ flex-direction: row-reverse; transform: translateX(-50px); }
.photoW.R .ph{ transform: translateX(0); }
.photoW.R .txt{  }


.photo {
  display: inline-block;
  width: 500px;
  margin:10px 5px 10px;
  vertical-align: top;
  color: #112941;
  overflow: hidden;
}
.photo img{ max-width: 100%; height: auto;  }
.photo.trans{ transform: rotate(2deg); }
.photo.L,.img.L{
	margin:10px 30px 15px 0;
	float:left;
}
.photo.R,.img.R {
	margin:10px 0 15px 30px;
	float:right;
}
.photo.L img{ border-radius: 0 0 0 0; }
.photo.R img{ border-radius: 0 0 0 0; }
.photo > p{ font-size: 80%; padding: 0 20px 0px 50px; margin: 10px 0 0; text-indent: 0; text-align: left; line-height: 1.5; font-weight: bold; font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif; line-height: 1.6;  }
.photo > p.pro{ font-weight: normal; color: #333; text-align: left !important; }
.photo.R > p{ text-align: right; padding: 0 50px 0px 20px }
.photo > p > span{ display: block; font-size: 160%; font-weight: bold; letter-spacing: 0.05em; }
.photo > p > span span{ font-size:80%; }
.photo > p span.user2{ color: #000; }
.phtxt{ padding: 0 10px; text-align: left; }
.phtxt p{ margin-top: 10px; line-height: 1.4; font-size: 80%; text-indent: 0; color: #555; }
.photo > p.cap{ font-weight:normal; font-size:80%; padding-left:30px; }

.photo.type1 { background: none; width: 350px; }
.photo.type1 > p{ text-align: left; padding-bottom: 0; }
.photo.type2 { margin-top: 80px; margin-bottom: 80px; }


.PhotoAreaL {
	width:250px;
	margin:5px 15px 10px 0;
	padding:0;
	float:left;
	background:#555;
	color:#FFF;
}
.PhotoAreaR {
	width:250px;
	margin:5px 0 5px 15px;
	padding:0;
	float:right;
	background:#555;
	color:#FFF;
}
.PhotoImg {
	width:246px;
	margin:2px;
}
.PhotoImg img{
  width: 100%;
  height: auto;
}
.PhotoTitle{
	margin:5px 0 0 0;
	padding:0 10px 5px;
	line-height:1.4em;
	font-weight:bold;
	font-size:80%;
}
.PhotoText{
	margin:0 0 0 0;
	padding:0 10px 10px;
	line-height:1.4em;
	font-size:80%;
}

.PhotoText a {
	color:#FFFFFF;
}

.PhotoText a:hover	{
	color:#FFFFFF;
	text-decoration:underline;
}

.fig{
  text-align: center;
  margin: 30px auto;
  padding: 30px 0;
  max-width: 1000px;
  background-color: #fff;
  border-radius: 5px;
}
.fig.ph{ max-width: 900px; }
.fig.R{ float: right; margin:10px 0 15px 25px; }
.fig a img:hover{ opacity:0.7; }
.fig .figimg{
  position: relative;
}

.fig img{ max-width: 100%; height: auto; }
.fig > p{ font-size: 80%; padding: 0; margin: 10px 0 0; text-indent: 0; line-height: 1.5; text-align: center; }
.fig > p.tit{ font-weight: bold; text-align: center; }

.w450{ width: 450px; }

.fig .figimg{ width: 90%; margin: 0 auto 1em; }
.fig .figtxt{
  width: 90%;
  font-size: 90%;
  line-height: 1.4em;
  margin: 0 auto;
  color: #555;
}
.fig .figtxt h3{
  margin-bottom: 10px;
  line-height: 1.5;
  text-align: center;
  color: #fff;
  background-color: #555;
  padding: .2em;
}
.fig .figtxt p{ text-indent: 0; text-align: left;}


#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;
  text-indent: 0 !important;
}
.kome2{
	font-size: 75%;
	line-height:1.4em;
  text-indent: 0 !important;
	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;
}

/* 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 */
.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;
	
