@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;700&display=swap');
/*
 * "Noto Sans CJK" licensed under the SIL Open Font License
 * https://www.google.com/get/noto/help/cjk/
 */
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 300;
	src: url('/common/fonts/NotoSansCJKjp-DemiLight.woff2') format('woff2'),
		url('/common/fonts/NotoSansCJKjp-DemiLight.woff') format('woff'),
		url('/common/fonts/NotoSansCJKjp-DemiLight.otf') format('opentype');
}

/* ****************************************************************************

　目次

-------------------------------------------------------------------------------

　01. 基本
　02. モジュール

******************************************************************************* */
/* ==

　01. 基本

=============================================================================== */
body {
	font-family: 'Noto Sans JP', "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", Arial, Helvetica, sans-serif;
  font-size: 75%;
  -webkit-text-size-adjust: 100%;
  min-width: 950px;
}
a {
	color: #000;
}
#socialArea,
#subFooter {
	display: none;
}
#header2 {
	display: none !important;
}
#main .rn_detailBlock {
	width: auto;
}
/* ==

　02. モジュール

=============================================================================== */
#main {
	background: none;
	padding: 0;
}
.sMain {
	position: relative;
  display: flex;
  justify-content: center;
}

/* MV
------------------------------------------------------------------------------- */
.sMv {
	max-width: 950px;
	margin: 0 auto;
	padding: 20px 20px 0;
}
#main .sMv .sMv_in {
	position: relative;
	top: -45px;
	padding: 0 70px 0 50px;
}
#main .sMv .sMv_in .sMv_tit {
	position: relative;
	background-color: #fff;
	width: auto;
	max-width: 640px;
	padding: 30px;
}
#main .sMv .sMv_in h1 {
	font-weight: 500;
	font-size: 24px;
	color: #fff;
}
#main .sMv .sMv_in h1 span {
	font-size: 16px;
	display: block;
	margin: 15px 0 0;
}
#main .sMv .sMv_in .sMv_txt {
	font-size: 14px;
	margin-bottom: 0;
}
#main .sMv .sMv_in .sMv_flag {
	font-size: 16px;
	margin-bottom: 0;
	color: #000;
}
#main .sMv .sMv_in .sMv_flag img {
	margin-right: 15px;
	width: auto;
}
#main .sMv .sMv_in h1 + .sMv_txt,
#main .sMv .sMv_in h1 + .sMv_flag {
	margin-top: 30px;
}
#main .sMv .sMv_in .sMv_date {
	position: absolute;
	top: 60px;
	right: 0;
	color: #999999;
	font-size: 12px;
}
#main .sMv .sMv_in .sMv_note {
	max-width: 700px;
	margin: 20px 0 0;
	color: #666666;
	font-size: 14px;
}
#main .sMv .sMv_in h1,
#main .sMv .sMv_in h1 span,
#main .sMv .sMv_in .sMv_txt,
#main .sMv .sMv_in a {
	color: #000000;
}
.sMv img {
	width: 100%;
	height: auto;
}
#main .sMv .sMv_in .sLabel {
	position: absolute;
	top: -2em;
	left: -3px;
	margin: 0;
	padding: 6px 10px;
	line-height: 1;
	font-family: 'Noto Serif JP', serif;
	font-size: 12px;
  font-weight: bold;
  color: #fff;
}
#main .sMv .sMv_in .sLabel-interview {
	background-color: #5c6bc2;
}
#main .sMv .sMv_in .sLabel-smartecotowns {
	background-color: #52acd7;
}
#main .sMv .sMv_in .sLabel-column {
	background-color: #54B659;
}
#main .sMv .sMv_in .sLabel-topics {
	background-color: #e1b631;
}

#main .sMv .sMv_in-interview .sLabel {
	background-color: #5c6bc2;
}
#main .sMv .sMv_in-smartecotowns .sLabel {
	background-color: #52acd7;
}
#main .sMv .sMv_in-column .sLabel {
	background-color: #54B659;
}
#main .sMv .sMv_in-topics .sLabel {
	background-color: #e1b631;
}
#main .sMv .sMv_in-interview .sMv_tit {
	border: 3px solid #5C6BC2;
}
#main .sMv .sMv_in-column .sMv_tit {
	border: 3px solid #54B659;
}
#main .sMv .sMv_in-topics .sMv_tit {
	border: 3px solid #E1B631;
}
#main .sMv .sMv_in-smartecotowns .sMv_tit {
	border: 3px solid #52ACD7;
}
#main .sMv .sMv_in-interview h1 {
	color: #5C6BC2;
}
#main .sMv .sMv_in-column h1 {
	color: #54B659;
}
#main .sMv .sMv_in-topics h1 {
	color: #E1B631;
}
#main .sMv .sMv_in-smartecotowns h1 {
	color: #52ACD7;
}


/* テキスト
------------------------------------------------------------------------------- */
#main .sTit02,
#main .sIndex h2,
#main .sBlock01 h2,
#main .sLead h2,
.sList01-ranking .sList01_item::after {
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
}
#main h1,
#main h2 {
	width: auto;
	text-align: left;
	background-color: transparent;
}
#main h3 {
	color: #000;
}
#main .sBlock01 .sTit02 {
	margin-bottom: 50px;
	font-size: 28px;
	font-weight: 500;
	text-align: center;
	letter-spacing: 6px;
}
#main .sNav .sTit02 {
	font-size: 22px;
	margin-bottom: 20px;
	letter-spacing: 4px;
	text-align: center;
}
.sTit02::before {
	content: "";
	width: 32px;
	height: 32px;
	display: block;
	margin: 0 auto 10px;
}
.sTit02-recommend::before {
	background: url(/sustainable/sustainable_journey/images/svg/icon_article.svg) no-repeat 0 0;
	background-size: cover;
}
.sTit02-crown::before {
	background: url(/sustainable/sustainable_journey/images/svg/icon_crown.svg) no-repeat 0 0;
	background-size: cover;
}
#main .sContents .sNotes {
	font-size: 14px;
	color: #777;
	line-height: 1.6;
	text-align: left;
}
.sNotes li {
  margin: 0 0 3px 1.8em;
  text-indent: -1.8em;
}

/* コンテンツ
------------------------------------------------------------------------------- */
.sContents {
	width: 78%;
}
#main .sContents p {
	color: #000;
	font-size: 16px;
	margin-bottom: 36px;
}
.sContents_in {
	max-width: 850px;
	margin: 0 auto;
	padding: 30px 20px;
}
/* index */
.sIndex {
	position: relative;
	margin-bottom: 80px;
}
.sIndex_in {
	position: relative;
	padding: 40px 60px;
}
.sIndex::before,
.sIndex::after,
.sIndex_in::before,
.sIndex_in::after {
	content: "";
	width: 64px;
	height: 64px;
	position: absolute;
	top: 0;
	left: 0;
	background: url(/sustainable/sustainable_journey/common/images/index_icon01.png) no-repeat 0 0;
}
.sIndex::after {
	left: auto;
	right: 0;
	transform: rotateZ(90deg);
}
.sIndex_in::before,
.sIndex_in::after {
	top: auto;
	bottom: 0;
	transform: rotateZ(270deg);
}
.sIndex_in::after {
	left: auto;
	right: 0;
	transform: rotateZ(180deg);
}
#main .sIndex h2 {
	font-size: 24px;
	margin-bottom: 10px;
}
#main .sIndex ul {
	font-size: 16px;
}
#main .sIndex ul li {
	margin-bottom: 13px;
}
#main .sIndex ul li:last-child {
	margin-bottom: 0;
}
#main .sIndex ul li a {
	position: relative;
	display: block;
	padding-left: 20px;
}
#main .sIndex ul li a::before {
	content: "●";
	position: absolute;
	top: 0.5em;
	left: 0;
	font-size: 10px;
	transform: scale(0.7);
}
/* lead */
.sLead {
	margin-bottom: 80px;
	padding: 40px;
}
.sLead_col01_img {
	max-width: 270px;
	width: 31.76%;
  float: right;
}
.sLead_col01_img img {
	width: 100%;
	height: auto;
}
.sLead_col01_txt {
  max-width: 560px;
	width: 65.88%;
  float: left;
}
.sLead-interview {
	background-color: #EDF0FF;
}
.sLead-smartecotowns {
	background-color: #E6F5FC;
}
.sLead-column {
	background-color: #E9F7E9;
}
.sLead-topics {
	background-color: #FCF7DE;
}
#main .sLead h2 {
	text-align: center;
	font-size: 22px;
}
/* block */
.sBlock01 {
	position: relative;
	padding: 0 0 50px;
}
.sLead p,
.sBlock01 p,
#main .sNotes {
	font-family: 'Noto Sans Japanese', "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", Arial, Helvetica, sans-serif;
	font-weight: 300;
}
#main .sLead p:last-child {
	margin-bottom: 0;
}
.sInner01 {
  margin: 0 auto;
  padding: 0 15px;
  max-width: 1240px;
}
.sInner01-v1 {
  margin: 0 auto;
  padding: 0 15px;
  max-width: 1040px;
}
#main .sBlock01 .sTit01 {
	position: relative;
	font-size: 24px;
	margin-bottom: 40px;
	padding: 30px;
	border-left: 6px solid #1F1F1F;
	background-color: #F5F5F5;
	line-height: 1.4;
}
#main .sBlock01 .sTit01-interview {
	border-left-color: #5c6bc2;
}
#main .sBlock01 .sTit01-smartecotowns {
	border-left-color: #52acd7;
}
#main .sBlock01 .sTit01-column {
	border-left-color: #54B659;
}
#main .sBlock01 .sTit01-topics {
	border-left-color: #e1b631;
}
#main .sBlock01 h3 {
	font-size: 18px;
	line-height: 1.7;
}
.sBlock01-bb1 {
	margin-bottom: 40px;
	padding-bottom: 120px;
}
.sBlock01-bb1::before {
	content: "";
	width: 100%;
	height: 1px;
	background-color: #000;
	position: absolute;
	bottom: 0;
	left: 0;
}
.sBlock01-bb1::after {
	content: "";
	width: 100%;
	height: 1px;
	background-color: #000;
	position: absolute;
	bottom: -3px;
	left: 0;
}
.sBlock01-bb2 {
	background: url(/sustainable/sustainable_journey/images/rn01/index_border01.gif) repeat-x 0 bottom;
	margin-bottom: 45px;
}
.sBlock01_img {
	margin: 50px auto;
	text-align: center;
}
.sBlock01_img img {
	width: 100%;
	max-width: 700px;
	height: auto;
}
.sBlock01_img-v1 img {
	max-width: 640px;
}
/* カラム */
.sCol01,
.sCol02,
.sCol03 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.sCol01_item {
	width: 48%;
}
.sCol02_item {
	position: relative;
	width: 32%;
	margin-bottom: 40px;
	background-color: #F5F5F5;
}
.sCol01_item img,
.sCol02_item img,
.sCol03_item img {
	width: 100%;
	height: auto;
}
.sCol02_item::after {
  content: "";
  width: 72px;
  height: 15px;
  position: absolute;
  bottom: 20px;
  right: 20px;
  background: url(/sustainable/sustainable_journey/images/svg/icon_arrow02.svg) no-repeat 0 0;
}
#main .sCol02_item h3 {
	margin-bottom: 0;
	padding: 20px 20px 50px;
	line-height: 1.7;
	font-size: 14px;
	text-align: left;
	font-weight: 500;
}
#main .sCol02_item a {
	text-decoration: none;
}
#main .sCol02_item a:hover {
	opacity: 0.7;
}
.sCol03_item {
	position: relative;
	width: calc(50% - 10px);;
	margin-bottom: 40px;
}
/* ユニバーサルデザイン */
.sDesign {
	padding: 30px;
}
.sDesign_head {
	margin-bottom: 36px;
	border-bottom: 2px solid #E5E5E5;
}
.sDesign_item {
	margin-bottom: 36px;
	padding-bottom: 36px;
	border-bottom: 2px solid #E5E5E5;
}
.sDesign_item:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}
#main .sDesign_tit01,
#main .sDesign_tit02 {
	margin-bottom: 36px;
	font-size: 18px;
	font-weight: bold;
	border-bottom: none !important;
}
.sDesign-interview {
	border: 10px solid #EDF0FF;
}
#main .sDesign-interview .sDesign_tit01 {
	color: #5C6BC2;
}
.sDesign .sLink01 {
	display: block;
	margin-top: 30px;
	font-size: 16px;
	font-weight: bold;
}
.sCol01 + .sNotes {
	margin-top: 10px;
}

/* ボタン
------------------------------------------------------------------------------- */
.sBtn01 {
	position: relative;
	display: block;
	margin: 0 auto;
	padding: 15px 20px;
	max-width: 440px;
	width: 100%;
	background-color: #fff;
	font-size: 14px;
	text-decoration: none;
	text-align: left;
	font-weight: 400;
}
.sBtn01:hover {
	text-decoration: underline;
}
.sBtn01::after {
  content: '';
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 20px;
  width: 22px;
  height: 12px;
  margin-top: -6px;
  background: url(/common/images/rn04/svg/arw_ico02.svg) left top no-repeat;
  background-size: contain;
}

/* pager */
.sBlock01-pager {
	padding: 0 0 120px; 
}
#main .sContents .sPager01,
#main .sContents .sPager01 .sLink01 {
	font-size: 18px;
}
/* link */
.sLink01 {
	position: relative;
	font-weight: bold;
}
.sLink01::after {
	content: "";
	width: 24px;
	height: 7px;
	display: inline-block;
	margin-left: 10px;
	background: url(/sustainable/sustainable_journey/images/svg/icon_arrow05.svg) no-repeat 0 0;
	background-size: 100%;
}
.sPager02 {
	margin: 50px auto 0;
}
.sPager02-page2 {
	max-width: 400px;
}
.sPager02-page2-1::before {
	content: "";
	display: block;
	margin-right: 20px;
	width: 115px;
}
.sPager02-page2-2::after {
	content: "";
	display: block;
	margin-left: 20px;
	width: 115px;
}
.sPager02 {
	display: flex;
	justify-content: space-between;
}
.sPager02_item {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 48px;
	height: 48px;
	vertical-align: middle;
	text-align: center;
	border: 1px solid #E1E1E1;
	text-decoration: none;
}
.sPager02_item-current {
	background-color: #666666;
	color: #fff;
}
a.sPager02_item:hover {
	text-decoration: underline;
}
.sPager02_item-next,
.sPager02_item-prev {
	width: 115px;
	margin-left: 20px;
}
.sPager02_item-prev {
	margin-left: 0;
	margin-right: 20px;
}

/* サイドナビ
------------------------------------------------------------------------------- */
.sNav {
	width: 22%;
	padding: 20px 2% 0;
	box-sizing: border-box;
	vertical-align: top;
}
.sNav p {
	width: auto;
	margin-bottom: 10%;
}
.sNav img {
	width: 100%;
	height: auto;
}
.sNav_head a:hover {
	opacity: 0.7;
}
.sNav_about {
	position: relative;
	display: block;
	text-align: center;
	font-size: 14px;
	text-decoration: none;
	background-color: #F5F5F5;
}
.sNav_about:hover {
	opacity: 0.7;
}
.sNav_category {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
}
.sNav_category_item {
	width: 50%;
}
.sNav_category_item a {
	position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  align-items: center;
	text-decoration: none;
	font-size: 12px;
	height: 100%;
	line-height: 1.5;
}
.sNav_category_item a:hover {
	opacity: 0.7;
}
.sNav_in {
	margin: 50px 10px;
}
.sList01_item {
	margin-bottom: 20px;
}
.sList01_item a {
	display: block;
	text-decoration: none;
	font-weight: 500;
	background-color: #F5F5F5;
}
.sList01_item a:hover {
	opacity: 0.7;
}
.sList01_txt {
	padding: 20px;
	display: block;
	font-size: 14px;
}
.sList01-ranking .sList01_item {
	position: relative;
	background-color: #F5F5F5;
}
.sList01-ranking .sList01_item a {
	padding: 20px 20px 20px 50px;
	display: block;
	font-size: 14px;
}
.sList01-ranking .sList01_item a:hover {
	text-decoration: underline;
}
.sList01-ranking .sList01_item::after {
	width: 30px;
	height: 30px;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #1F1F1F;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 14px;
}
.sList01-ranking .sList01_item:nth-child(1)::after {
	content: "1";
	background-color: #BC9F4F;
}
.sList01-ranking .sList01_item:nth-child(2)::after {
	content: "2";
	background-color: #848484;
}
.sList01-ranking .sList01_item:nth-child(3)::after {
	content: "3";
	background-color: #AB9175;
}
.sList01-ranking .sList01_item:nth-child(4)::after {
	content: "4";
}
.sList01-ranking .sList01_item:nth-child(5)::after {
	content: "5";
}
.sList01-ranking .sList01_item:nth-child(6)::after {
	content: "6";
}
.sList01-ranking .sList01_item:nth-child(7)::after {
	content: "7";
}
.sList01-ranking .sList01_item:nth-child(8)::after {
	content: "8";
}
.sList01-ranking .sList01_item:nth-child(9)::after {
	content: "9";
}
.sList01-ranking .sList01_item:nth-child(10)::after {
	content: "10";
}

/* ローカルナビ
------------------------------------------------------------------------------- */
.sLocalNav01 {
	margin-bottom: 80px;
	padding: 35px 0;
	background: rgb(222,240,255);
	background: linear-gradient(90deg, rgba(222,240,255,1) 0%, rgba(222,255,225,1) 100%);
}
.sLocalNav01 .sInner01 {
	position: relative;
	max-width: 1040px;
}
.sLocalNav01 .sInner01::after {
	content: "";
	width: 230px;
	height: 98px;
	position: absolute;
	top: -80px;
	right: 100px;
	background: url(/sustainable/sustainable_journey/images/rn01/index_icon01.png) no-repeat 0 0;
}
#main .sLocalNav01_tit {
	line-height: 1;
	margin: 0 0 30px;
	font-size: 20px;
	font-weight: 700;
}
.sLocalNav01_tit a {
	display: inline-block;
	position: relative;
	padding: 0 50px 0 0;
	text-decoration: none;
}
.sLocalNav01_tit a::after {
	content: '';
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 0;
	width: 23px;
	height: 8px;
	margin: -4px 0 0;
	background: url(/sustainable/sustainable_journey/images/svg/icon_arrow05.svg) no-repeat 0 0;
  background-size: 100%;
}
#main .sLocalNav01_list {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	line-height: 1.3;
	margin: -14px 0 0;
	font-size: 117%;
	font-weight: 400;
}
.sLocalNav01_list li {
	width: 23%;
	margin: 14px 1.894% 0 0;
}
.sLocalNav01_list li:nth-child(5n) {
	margin-right: 0;
}
.sLocalNav01_list a {
	display: block;
	padding: 6px 0 13px;
	border-bottom: 1px solid #BABABA;
	position: relative;
	text-decoration: none;
}
.sLocalNav01_list a::after {
	content: '';
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 0;
	width: 23px;
	height: 8px;
	margin: -7px 0 0;
	background: url(/sustainable/sustainable_journey/images/svg/icon_arrow05.svg) no-repeat 0 0;
  background-size: 100%;
}

@media only screen and (max-width: 1000px) {
	.sLocalNav01_list li {
		width: 23%;
	}
}

/* 旧css調整 */
#main .sContents .section {
	width: auto;
}
#main .sContents .article {
	width: auto;
}
.col1ImgBlock img {
	width: 100%;
	height: auto;
}
.col1ImgBlock .sNotes,
.sCol03_item .sNotes {
	margin-top: 15px;
}
.col1ImgBlock-mb1 {
	margin-bottom: 36px;
}
#main .sLead-interview .profBlock {
	border-color: #D5DBF2;
}
#main .profBlock,
#main .profColBlock {
	width: auto;
}
#main .sLead .profBlock,
#main .sLead .profColBlock {
	margin-bottom: 0;
}
#main .sLead .profBlock {
	padding: 26px;
}
#main .profColBlock .colL {
	width: 22.5%;
	max-width: 160px;
}
#main .profColBlock .colL img {
	width: 100%;
	height: auto;
}
#main .profColBlock .colR {
	width: 74.44%;
}
#main .profColBlock .colR .title {
	font-size: 16px;
	margin-bottom: 20px;
}
#main .profColBlock .colR p {
	font-size: 14px;
}
#main .checkBloclk.column {
	background-color: #E9F7E9;
}
#main .checkBloclk .checkCol2Bloclk .colR {
	width: calc(100% - 100px);
}
#main .profBlock {
	padding: 36px;
}