
/*====ページ全体
==========================================================*/

#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(bg.jpg) no-repeat center center;
	background-attachment: fixed;
	background-size: cover;
}
.nxt_header{ margin: 0 auto; width: 1000px; }
.localFooter,#bpGlobalFooter{ background-color: #fff; }


img {
	border:none;
	margin: 0;
	padding: 0;
	line-height: 0;
	vertical-align: bottom;
	max-width:100%; height:auto;
}

#wrap{
  width: 1000px;
  margin: 0 auto;
  overflow: hidden;
}
#MainArea{ margin:0; padding:0; }
#ContentsArea {
	margin:0 auto;
}

#header {
    background-color: #fff;
}

.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;
}

footer {
  padding-top: 20px;
  background-color: #ffffff;
  border-top: 3px solid #000000;
  position: relative;
  z-index: 1;
}

ul{ list-style: none;}

/*====ヘッダイメージ
==========================================================*/


.social_buttons{ width: 960px; margin: 0 auto; padding: 15px 0 5px;  }

#MainImgArea {
	margin: 0 auto;
	position: relative;
	text-align: center;
	padding: 0;
	overflow: hidden;
	z-index: 1;
}
#MainImgArea img{ width:100%; height:690px; object-fit:cover; }

#MainImgArea .img{ position:relative; margin:0 auto; padding-top:3%; }
#MainImgArea .img img{ box-shadow:0 0 30px #ccc; }

.maintit{
  margin: 0 auto;
  text-align: left;
  position: relative;
}
.maintit h1{
  position: relative;
  z-index: 1;
  max-width: 1000px;
  width: 90%;
  margin: -240px auto 0;
}
.maintit h1 span{ display:block; margin-bottom:5px; width:60%; }


@media screen and (max-width: 1440px) { 
  
  
}

#MainImgArea .read{
  position: relative;
  margin: 2em auto 3em;
  line-height: 2;
  font-weight: bold;
  text-align: left;
  text-align: justify;
  text-justify: inter-ideograph;
  font-size: 110%;
}
#MainImgArea .read p{ margin: 0 auto; width: 90%; max-width: 950px; letter-spacing: 0.05em; text-shadow:0 0 15px #fff; }




/*====コンテンツサイズ
==========================================================*/
#content { padding: 0 0 50px; font-size:17px; color:#333; position: relative; margin: 0 auto; background:url(bg.jpg) no-repeat fixed center center; background-size:cover;  }

/* tab ------------------------------*/
ul.tab{ padding: 0; margin: 0 auto;  width: 96%; position: relative; z-index: 2; display: flex; justify-content: center; gap: 1.5em;}
ul.tab a{ display:block; box-shadow:6px 6px 0 #ccc; transition:.4s; }
ul.tab a:hover{ box-shadow:none; transform:translate(6px,6px); filter: brightness(130%); }
.tab-area{ margin: 2em auto 3em; position:relative; z-index:1; }
.tab-area h3{ letter-spacing:0.3em; margin-bottom: 1em; text-align:center; color:#666; position:relative; font-size:120%; }
.tab-area h3:before{
  content: "";
  position: absolute;
  height: 1px; bottom: 48%; left: 50%; transform: translateX(-50%); max-width: 1000px; width: 90%; background-color: #999;
}
.tab-area h3 span{ display:inline-block; background-color:#fff; padding: 0 .5em; position:relative; z-index:2;  }


.topLink{ width: 1070px; margin: 5em auto 0; display: flex; justify-content: space-between; flex-wrap:wrap; padding: 0;}
.topLink li{ width: 520px; margin-bottom: 40px; position: relative; }
.topLink a{ display: flex; justify-content: space-between; padding: 0;  transition: all .3s; flex-direction: row-reverse; box-shadow:0 0 15px rgba(0,0,0,0.3); background-color:#f0f0f0; }
.topLink a .img{ width: 170px; position: relative; z-index: 1; overflow:hidden; }
.topLink a .img img{ transition: all .3s; }
.topLink a .txt{ width: 350px; }
.topLink a .txt > span{ display: block; font-weight: bold; }
.topLink a .txt .com{  background:url(tit_bg.png) no-repeat center center; background-size: 100% auto; color: #fff; font-size: 110%; padding: 0 20px; position: relative; transition: all .3s; height: 50px; line-height:50px }
.topLink a .txt .com.type2{ font-size: 75%; letter-spacing: -0.05em; }
.topLink a .txt .com:before{ content: "MORE >>"; position: absolute;right: 10px; top: 0px; opacity: 0.7; color: #fff; font-size: 12px; letter-spacing: 0.05em;  }
.topLink a .txt .tit{ display: table-cell; vertical-align: middle; color: #000; transition: all .3s; height: 120px; padding: 0 10px 0 20px; font-size: 98%; font-feature-settings: "palt"; letter-spacing:0.02em;  }
.topLink a .txt .tit span{ color: #00a150; transition: all .3s; }
.topLink a:hover{ text-decoration: none; }
.topLink a:hover .txt .com{ color: #f6ff65; }
.topLink a:hover .txt .tit{ color:#000b94; }
.topLink a:hover{ background-color:#d4e9f9; }
.topLink a:hover .img img{ transform:scale(1.07); }

@media screen and (max-width: 1070px) { 
  .topLink{ width: 980px; font-size:90%; }
  .topLink li{ width: 480px; }
  .topLink a .img{ width: 168px; }
}


/* 各記事の設定 ------------------------------*/
.Account{
	position: relative;
	margin:3em auto;
	padding: 0;
	overflow: hidden;
}
.Account:before {
  content: "";
  width: 3000px;
  height: 100%;
  background-color: rgba(255, 255, 255, .8);
  position: absolute;
  left: calc(50% - 1500px);
  top: 0;
  z-index: 0;
  box-shadow: 0 0 30px #ddd;
}


.Account h2{
  position: relative;
  margin: 1em 0;
  font-size: 200%;
  text-align: left;
  font-weight: 600;
  color: #333;
  line-height: 1.4;
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
  display: flex;
  align-items: center;
}
.Account h2 img{ z-index:1; position:relative; box-shadow:10px 10px 0 rgba(0,0,0,.08); }
.Account h2 > span{ position: relative; z-index: 2; margin-left:-2em; line-height:1.6; }
.Account h2 > span span{ display:inline-block; background:#fff; margin:.1em 0; padding:0 .2em; }
.Account h2:before,.Account h2:after{
  content: "";
  position: absolute;
  width: 120%;
  height: 1px;
}

.Account h2:after{ bottom: .5em; left: 50%; transform: translateX(-50%); height: 3px; width: 1220px; background-color: #ff9900; }
.foodandlife .Account h2:after{ background-color: #86ad3d; }


.Account .acc > h3{ 
  font-size: 130%;
  padding: 25px 0 0px 0;
  margin: 0 50px 10px;
  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%;
}

.acc {
	margin:20px 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;
  font-weight: 500;
}
.acc > p.st{ font-weight: 500; text-indent: 0em; color: #6e718d; }
.letter-s{ letter-spacing: -0.01em; }
.acc p b{  display: inline-block; position: relative; margin-right: 1em; font-weight: 500;  }
.acc p b:before{ content: "";  width: 100%; height: 1px; background-color: #373d71; bottom: 0.3em; left: 0; position: absolute; }
.acc p.user,.acc p.user2 { text-indent: 0; }
.acc p.user > b{ color: #373d71; }
.acc p.user2 > b{ color: #0f203e; }
.acc p.user2 b:before{ background-color: #0f203e; }

.prof{ border-top: 1px solid #B22C00; padding-top: 30px; font-size: 90%; width: 750px; margin: 30px auto 0; }
.prof h3{ color: #B22C00; }



.next{ text-align: center;  width: 900px; margin: 30px auto 0; font-weight: bold; border-bottom: 1px solid #ccc; padding-bottom: 20px;  }
.next a span{ background-color: #00afd0; color: #fff; display: inline-block; margin-right: 10px; padding: 0 10px; }
.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; }


/* 図の設定 ------------------------------*/
.photo {
  display: inline-block;
  width: 500px;
  margin:10px 5px 10px;
  vertical-align: top;
  color: #555;
  letter-spacing: 0.05em;
  overflow: hidden;
}
.photo img{ max-width: 100%; height: auto;  }
.photo.trans{ transform: rotate(2deg); }
.photo.L,.img.L{
	margin:5px 0 15px 0;
	float:left;
	transform: translateX(-50px);
}
.photo.L img{  }
.photo.R,.img.R {
	margin:5px 0 15px 0;
	float:right;
	transform: translateX(50px);
}
.photo > p{ font-size: 90%; padding: 0 20px 0px 100px; margin: 20px 0 0; text-indent: 0; text-align: left; line-height: 1.5; font-weight: 500;  }
.photo > p.pro{ font-weight: normal; color: #333; text-align: left !important; }
.photo.R > p{ text-align: right; padding: 0 100px 0px 20px }
.photo > p > span{ font-size: 140%; letter-spacing: 0.05em; font-weight:600; }
.photo > p > span span{ font-size: 80%; }
.photo > p > span span span{ font-weight:normal; }
.photo > p.user2{ color: #0c345d; }
.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.type1 { background: none; width: 350px; }
.photo.type1 > p{ text-align: left; padding-bottom: 0; }

.ph_end{ text-align: center; margin-top: 20px; }
.ph_end img{ max-width: 100%; height: auto; }


.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: 0 0 30px;
  padding: 20px 0;
}
.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: left; }
.fig > p.tit{ font-weight: bold; text-align: center; }

.w450{ width: 450px; }

/*
.fig .figimg::before{
  position: absolute;
  content: "ダミー";
  display: block;
  top: 48%;
  left: 40%;
  color: #fff;
  background-color: #333;
  padding: 10px 50px;
}*/
.fig .figtxt{
  text-align: left;
  font-size: 85%;
  line-height: 1.8;
  margin: 2em auto 1em;
  color: #555;
  max-width: 800px;
}
.fig .figtxt h3{
  margin-bottom: 15px;
  text-align: center;
  color: #fff;
  padding: 5px;
  background-color: #202020;
  font-size: 120%;
  font-weight: 500;
}
.fig .figtxt p{ text-indent: 0; }




.footArea{
  margin: 5em auto 1em;
  padding: 2em 50px 4em;
  box-sizing: border-box;
  background: #333;
  background: linear-gradient(to right, #444, #111);
  color: #fff;
  font-size: 90%;
  width: 100%;
  max-width: 1230px;
  position: relative;
  z-index: 2;
}
.footArea h2{
  border-bottom: 1px solid #ccc;
  position: relative;
  margin: 20px 0 15px;
  letter-spacing: 0.3em;
  font-size: 130%;
  font-weight: 500;
  color: #ccc;
  line-height: 1;
  padding: .7em 0;
}
.footArea a{ color: #fff; }
.footArea > div{
  max-width: 1000px;
  margin: 0 auto;
}


#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;
}
#linkArea li a:hover{
  
}
#linkArea li.st{ background-color: #fffbd0; font-weight: bold; }

.bnr{ max-width: 800px; margin: 80px auto 0; }



/* 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;
	z-index: 1;
}
.PageTop a{ background-color: #949595; 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;
}


#note_text{ font-size: 75%; color: #fff; text-align: center; margin-top: 15px; padding-bottom: 20px; }
.kome{
	font-size: 90%;
	line-height:1.6em;
	color: #555;
}
.kome2{
	font-size: 75%;
	line-height:1.4em;
	color: #777;
}
.banner{
	margin: 15px 0;
}
.f85 {font-size: 85%; }
.f110 {font-size: 110%; }
.f150 {font-size: 150%; }
.tar {text-align: right;}
.tac{ text-align: center;}
.fb{  font-weight: bold;}
.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;}
.mt15{margin-top: 15px;}
.mt20{margin-top: 20px;}
.mt30{margin-top: 30px;}
.mt40{margin-top: 40px;}
.mt50{margin-top: 50px;}
.mt60{margin-top: 60px;}

/* 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;}


/* 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;