@charset "UTF-8";

/*=====================================
フォント
=====================================*/
@import url('https://fonts.googleapis.com/css?family=Roboto:400,700');


/*=====================================
初期設定
=====================================*/
html, body {
	margin: 0px;
	padding: 0px;
	height: 100%;
	width: 100%;
}
html {
	font-size: 62.5%;
	font-style: normal;
	font-weight: normal;
}
body {
	color: #111;
	font-family: "Roboto", "sans-serif";
	font-size: 1.6rem;
	letter-spacing: .04rem;
	font-feature-settings : "pkna" 1; /* プロポーショナルメトリクスを有効にする指定 */
}
body * {
	box-sizing: border-box;
	word-wrap: break-word;
}
/* タグのリセット */
h1, h2, h3, h4, h5, h6, p, address, ul, li, dl, dt, dd, caption, img, form, blockquote, label {
	padding: 0px;
	margin: 0px;
	border: none;
	font-size: 100%;
	font-style: normal;
	font-weight: normal;
	line-height: 100%;
	list-style-type: none;
}
ol li {
	list-style-type: decimal !important;
}
table, th, td {
	/*	border: none;*/
	font-size: 100%;
	font-style: normal;
	font-weight: normal;
	line-height: 1.75;
	list-style-type: none;
}
/* テキストエリア内文字サイズのブラウザ間での統一 */
textarea {
	font-size: 100%;
}
/* 画像の下にできる隙間を除去 */
/* 画像綺麗に縮小 */
img {
	vertical-align: bottom;
	-ms-interpolation-mode: bicubic;
	-webkit-backface-visibility: hidden;
}
/* float解除 */
.clear {
	clear: both;
	font-size: 1%;
	line-height: 1%;
	width: 1%;
	overflow:hidden;
	display:block;
	visibility: hidden;
	height: 0;
	content : "";
}
/*IE8対応*/
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
	margin:0;
	padding:0;
}
/* フォントレンダリング設定: 1x解像度ではsubpixel、2x以上の解像度ではgrayscale */
body {
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-osx-font-smoothing: unset;
}
@media only screen and 
(-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
	body {
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
}
.al-right {
	text-align: right !important;
}
.al-left {
	text-align: left !important;
}
.al-center {
	text-align: center !important;
	margin-left: auto;
	margin-right: auto;
}


/*=====================================
テキスト・カラー指定
=====================================*/
a {
	color: #003a3e;
	transition: .3s all;
}
.bg_theme1 {
	background-color: #003a3e;
}
.bg_theme2 {
	background-color: #a7c35a;
}
.bg_theme3 {
	background-color: #8fdbdb;
}
.bg_theme4 {
	background-color: #d4ecec;
}
.bg_theme5 {
	background-color: #eaf6d8;
}
.bg_theme6 {
	background-color: #e4e5e5;
}
.bg_theme7 {
	background-color: #f4f5f5;
}
.bg_theme1 h1,
.bg_theme2 h1,
.bg_theme3 h1,
.bg_theme1 p,
.bg_theme2 p,
.bg_theme3 p,
.bg_theme1 ul li,
.bg_theme2 ul li,
.bg_theme3 ul li,
.bg_theme1 ol li,
.bg_theme2 ol li,
.bg_theme3 ol li,
.bg_theme1 dl,
.bg_theme2 dl,
.bg_theme3 dl,
.bg_theme1 a,
.bg_theme2 a,
.bg_theme3 a,
.bg_theme1 .date,
.bg_theme2 .date,
.bg_theme3 .date {
	color: #fff!important;
}
.category {
	color: #008a3f;
	font-family: "Roboto", "sans-serif";
	font-size: 1.2rem;
	font-style: normal;
	font-weight: 700;
	line-height: 1.75;
}
.date {
	color: #6d6d6d;
	font-family: "Roboto", "sans-serif";
	font-size: 1.2rem!important;
	font-style: oblique;
	line-height: 1.75;
}
.txt-grn {
    color: #008a3f!important
}
.ofh {
    overflow: hidden
}


/*=====================================
アイコン／ロゴ
=====================================*/
.icon {
	display: block;
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: 50% 50%;
	font-size: 0;
	text-align: left;
	text-indent: -9999px;
}
.icon_mailletter {
	background-image: url("../imgs/icon_mailletter.svg");
}
.icon_search {
	background-image: url("../imgs/icon_search.svg");
}
.icon_fb {
	background-image: url("../imgs/icon_fb.png");
}
.icon_tw {
	background-image: url("../imgs/icon_tw.png");
}
.icon_ml {
	background-image: url("../imgs/icon_mail.svg");
}
.icon_pr {
	background-image: url("../imgs/icon_print.svg");
}
.icon_mv {
	background-image: url("../imgs/icon_movie.svg");
}
.icon_square {
	background-color: #008a3f;
	width: 5rem;
	height: 5rem;
	background-size: 80%;
}
.icon_english {
	background-image: url("../imgs/icon_english.svg");
}
.footer_fb {
	background-image: url("../imgs/icon_fb_gr.png");
}
.footer_nt {
	background-image: url("../imgs/icon_nt_gr.png");
}
.footer_tw {
	background-image: url("../imgs/icon_tw_gr.png");
}
.footer_yt {
	background-image: url("../imgs/icon_yt_gr.png");
}
.footer_ml {
	background-image: url("../imgs/icon_mail_gr.svg");
}
.footer_ig {
	background-image: url("../imgs/icon_ig_gr.png");
}
.fs-el {
	font-size:2em !important;
}
.fs-l {
	font-size:1.5em !important;
}
.fs-s {
	font-size:0.8em !important;
}
.fs-es {
	font-size:0.5em !important;
}




/*=====================================

SP：スマホ用

=====================================*/

/*=====================================
基本レイアウト／SP
=====================================*/
body img {
	max-width: 100%;
	height: auto!important;
}
.contents_inner {
	padding-top: 4.2rem;
	padding-bottom: 4.2rem;
}
.colorbox_inner {
	padding-top: 2.8rem;
	padding-bottom: 2.8rem;
}
.pagecont {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-left: 7%;
	padding-right: 7%;
}
.entry > .pagecont {
	padding-left: 0;
	padding-right: 0;
}
.colorbox {
	width: 100%;
	max-width: 82.8rem;
	margin-left: auto;
	margin-right: auto;
	padding-left: 7%;
	padding-right: 7%;
}
.pagecont p,
.colorbox p {
	font-size: 1.6rem;
	line-height: 1.75;
}
.mgtop {
	margin-top: 2.8rem!important;
}
.mgtop00sp {
	margin-top: 0!important;
}
.mgbtm00sp {
	margin-bottom: 0!important;
}
.mgbtm00 {
	margin-bottom: 0!important;
}
.spno {
	display: none;
}
.sppevno {
	pointer-events: none;
}
.al_left {
	text-align: left;
}
.al_center {
	text-align: center;
}
th.al_center,
td.al_center {
	text-align: center!important;
}
.al_right {
	text-align: right;
}
article + *,
section + * {
	margin-top: 4.2rem;
}
article > *,
section > * {
	margin-bottom: 2.8rem;
}
article > *:last-child,
section > *:last-child {
	margin-bottom: 0;
}
main {
	display: block;
	padding-top: 6rem;
	padding-bottom: 5.6rem;
}
/* 基本float */
.fl-imgleft {
	margin-bottom: 1.2rem
}
.fl-imgright {
	margin-bottom: 1.2rem
}
.fl-imgleft.sp {
    float: left;
    margin-right: 1.4rem
}
.fl-imgright.sp {
    float: right;
    margin-left: 1.4rem
}
.img20 {
	display: block;
	width: 100%;
	max-width: 20rem;
	height: auto;
	margin-left: auto;
	margin-right: auto;
}
.img30 {
	display: block;
	width: 100%;
	max-width: 30rem;
	height: auto;
	margin-left: auto;
	margin-right: auto;
}
/* ボタン */
.mini_btn {
	display: inline-block!important;
	padding-left: 2rem;
	padding-right: 2rem;
	min-width: 13rem;
	border: 2px solid #008a3f;
	border-radius: 2rem;
	color: #008a3f!important;
	font-family: "Roboto", "sans-serif";
	font-style: normal;
	font-weight: 700;
	line-height: 2.4rem!important;
	text-align: center!important;
	text-decoration: none;
	transition: .3s all;
}
.mini_btn2 {
	display: inline-block!important;
	padding: .7rem 2rem;
	min-width: 13rem;
    background: #008a3f;
	border: 2px solid #008a3f;
	border-radius: 2rem;
	color: #fff!important;
	font-family: "Roboto", "sans-serif";
	font-style: normal;
	font-weight: 700;
	line-height: 2.4rem!important;
	text-align: center!important;
	text-decoration: none;
	transition: .3s all;
}
.mini_btn2.fs-s {
	padding: .7rem .7rem;
	font-size: 0.7em !important;
}
.normal_btn {
	color: #008a3f!important;
}
.normal_btn,
.normal_btn_rev {
	clear: both;
	display: block!important;
	margin-left: auto;
	margin-right: auto;
	padding: .7rem 2rem;
	width: 80%;
	max-width: 27.2rem;
	border: 2px solid #008a3f;
	border-radius: 3rem;
	font-family: "Roboto", "sans-serif";
	font-size: 1.6rem;
	font-style: normal;
	font-weight: 700;
	line-height: 1.5;
	text-align: center!important;
	text-decoration: none;
	transition: .3s all;
}
.normal_btn {
	color: #008a3f!important;
}
.normal_btn_rev {
    background-color: #008a3f;
	color: #fff!important;
}
.normal_btn2,
.normal_btn2_rev {
	clear: both;
	display: block!important;
	margin-left: auto;
	margin-right: auto;
	padding: .7rem 2rem;
	width: 80%;
	max-width: 27.2rem;
	border: 2px solid #002C33;
	border-radius: 3rem;
	font-family: "Roboto", "sans-serif";
	font-size: 1.6rem;
	font-style: normal;
	font-weight: 700;
	line-height: 1.5;
	text-align: center!important;
	text-decoration: none;
	transition: .3s all;
}
.normal_btn2 {
	color: #002C33!important;
}
.normal_btn2_rev {
    background-color: #002C33;
	color: #fff!important;
}
.normal_btn2,
.normal_btn2_rev {
	clear: both;
	display: block!important;
	margin-left: auto;
	margin-right: auto;
	padding: .7rem 2rem;
	width: 80%;
	max-width: 27.2rem;
	border: 2px solid #002C33;
	border-radius: 3rem;
	font-family: "Roboto", "sans-serif";
	font-size: 1.6rem;
	font-style: normal;
	font-weight: 700;
	line-height: 1.5;
	text-align: center!important;
	text-decoration: none;
	transition: .3s all;
}
.normal_btn2 {
	color: #002C33!important;
}
.normal_btn2_rev {
    background-color: #002C33;
	color: #fff!important;
}
.normal_btn3,
.normal_btn3_rev {
	clear: both;
	display: block!important;
	margin-left: auto;
	margin-right: auto;
	padding: .7rem 2rem;
	width: 80%;
	max-width: 27.2rem;
	border: 2px solid #00a2bf;
	border-radius: 3rem;
	font-family: "Roboto", "sans-serif";
	font-size: 1.6rem;
	font-style: normal;
	font-weight: 700;
	line-height: 1.5;
	text-align: center!important;
	text-decoration: none;
	transition: .3s all;
}
.normal_btn3 {
	color: #00a2bf!important;
}
.normal_btn3_rev {
    background-color: #00a2bf;
	color: #fff!important;
}
.normal_btn3,
.normal_btn3_rev {
	clear: both;
	display: block!important;
	margin-left: auto;
	margin-right: auto;
	padding: .7rem 2rem;
	width: 80%;
	max-width: 27.2rem;
	border: 2px solid #00a2bf;
	border-radius: 3rem;
	font-family: "Roboto", "sans-serif";
	font-size: 1.6rem;
	font-style: normal;
	font-weight: 700;
	line-height: 1.5;
	text-align: center!important;
	text-decoration: none;
	transition: .3s all;
}
.normal_btn3 {
	color: #00a2bf!important;
}
.normal_btn3_rev {
    background-color: #00a2bf;
	color: #fff!important;
}
.normal_btn.large,
.normal_btn_rev.large,
.normal_btn2.large,
.normal_btn2_rev.large,
.normal_btn3.large,
.normal_btn3_rev.large {
	width: 100%;
	max-width: 33.7rem;
}
[class^="normal_btn"] + [class^="normal_btn"] {
    margin-top: 1.4rem
}
.col > * {
    margin-bottom: 1.4rem
}
.col + .col {
    margin-top: 5.6rem
}
.mgt * + * {
    margin-top: 1.4rem
}
.mgt + .mgt {
    margin-top: 4.2rem
}
.menulink li {
    display: flex;
    align-items: stretch;
    margin-left: 0!important;
    padding-left: 0!important
}
.menulink li::before {
    display: none
}
.menulink a {
    display: flex!important;
    align-items: center;
    justify-content: center;
    margin-left: 0;
    margin-right: 0;
    width: 100%;
    max-width: 100%;
    border-radius: .8rem!important;
    text-decoration: none
}
.movieBox iframe {
    width: 100%;
    min-height: 52.75vw;
}
/*ページ内アンカー*/
.ancer {
	margin-top: -7rem;
	padding-top: 7rem;
}
/*特殊メニュー内バナー*/
.special-bnr {
    display: block!important;
    width: 92%;
    margin: 3%;
    padding: 2.2rem!important;
    background-color: #3caf7b;
    border-radius: 3px;
    color: #fff!important;
    font-weight: 700;
    font-size: 1.8rem!important;
    text-align: center
}


/*=====================================
ヘッダー／SP
=====================================*/
header {
	z-index: 40;
	display: -moz-box;
	display: -webkit-box;
	display: box;
	-moz-box-pack: justify;
	-webkit-box-pack: justify;
	box-pack: justify;
	-moz-box-align: center;
	-webkit-box-align: center;
	box-align: center;
	position: fixed;
	top: 0;
	left: 0;
	width: -webkit-calc(100% - 6rem);
	width: calc(100% - 6rem);
	height: 6rem;
	background-color: transparent;
}
header h1 {
	position: relative;
	z-index: 1001;
	margin-left: 1.4rem;
}
.genron_logo {
	display: block;
	margin-top: .4rem;
	height: 4.6rem;
	color: #111;
	font-family: "Roboto", "sans-serif";
	font-size: .7rem;
	line-height: 1.2rem;
	text-decoration: none;
	white-space: nowrap;
}
.genron_logo > span {
	display: block;
	background-image: url("../imgs/genron_logo_bl.png");
	background-position: left 50%;
	background-repeat: no-repeat;
	background-size: 100% auto;
	font-size: 0;
	width: 11.6rem;
	height: 2.2rem;
}
ul.members {
    display: flex;
    flex-direction: row
}
ul.members li:not(:first-child) {
    padding-left: .7rem
}
ul.members li a {
    display: flex;
    align-items: center;
    justify-content: center;
    /* width: 8rem; */
    height: 4.2rem;
    border-radius: .5rem;
    color: #fff;
    font-size: 1.4rem;
    font-weight: 700;
    text-decoration: none
}
ul.members li a.status {
    background-color: #008a3e;
	width: 14rem;
}
ul.members li a.statuson {
	color: #FFF;
	background-color: #003A3E;
	width: 8rem;
}
ul.members li a.regist {
    background-color: #82b422;
	width: 8rem;
}
ul.members li a.logout {
	color: #FFF;
	background-color: #959595;
	width: 8rem;
}
/*アンカー*/
.blue-link {
    display: flex;
    align-items: center
}
.blue-link::before {
    flex-shrink: 0;
    content: "";
    width: .7rem;
    height: .7rem;
    margin-right: 1rem;
    border-right: 3px solid #1991c9;
    border-top: 3px solid #1991c9;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}



/*=====================================
グローバルメニュー／SP
=====================================*/
nav.globalmenu {
	z-index: 39;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 6rem;
	background-color: #fff;
	box-shadow: 0 1px 3px 1px rgba(213,215,221,0.6);
	font-family: "Roboto", "sans-serif";
	text-align: right;
}
.pp_active {
	z-index: 45!important;
	background-color: transparent!important;
}


/*=====================================
フッター／SP
=====================================*/
footer {
	display: -moz-box;
	display: -webkit-box;
	display: box;
	-moz-box-pack: start;
	-webkit-box-pack: start;
	box-pack: start;
	-moz-box-orient: vertical;
	-webkit-box-orient: vertical;
	box-orient: vertical;
	-moz-box-align: center;
	-webkit-box-align: center;
	box-align: center;
	padding-top: 2.8rem;
	padding-left: 1.4rem;
	padding-right: 1.4rem;
	padding-bottom: 2.8rem;
	width: 100%;
	background-color: #002c33;
	color: #a3a5a5;
}
footer > * {
	margin-top: 2.8rem;
}
footer > *:first-child {
	margin-top: 0;
}
footer .genron_logo {
	color: #fff;
	line-height: 2rem;
	text-align: center;
}
footer .genron_logo span {
	background-image: url("../imgs/genron_logo_wh.png");
}
footer ul {
	font-size: 0;
	letter-spacing: 0;
}
footer ul li {
	display: inline-block;
	margin-left: 1.4rem;
	margin-right: 1.4rem;
	font-family: "Roboto", "sans-serif";
	font-size: 1.2rem;
	line-height: 2.8rem;
	letter-spacing: .04rem;
	text-align: center;
}
footer ul li a {
	color: #fff;
	text-decoration: none;
}
ul.footer_submenu li {
	width: -webkit-calc(50% - 2.8rem);
	width: calc(50% - 2.8rem);
}
ul.footer_submenu + ul.footer_menu {
	margin-top: 1.4rem;
}
ul.footer_menu li {
	font-size: 1.4rem; 
	font-weight: 700;
	width: -webkit-calc(50% - 1.4rem);
	width: calc(50% - 1.4rem);
	margin-left: .7rem;
	margin-right: .7rem;
}
ul.footer_sns li {
	margin-left: .7rem;
	margin-right: .7rem;
}
footer p {
	font-size: .8rem;
	line-height: 1.5;
	letter-spacing: .05rem;
}
footer a.mini_btn {
	background-color: #a3a5a5!important;
	border: 2px solid #a3a5a5!important;
	color: #002c33!important;
}
.footer_icon {
	display: block;
	width: 2.8rem;
	height: 2.8rem;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: 2.8rem;
	text-indent: -9999px;
}


/*=====================================
内部パーツ：編集可／SP
=====================================*/
.entry,
.page {
	width: 100%;
	max-width: 97.2rem;
	margin-left: auto;
	margin-right: auto;
	padding-left: 7%;
	padding-right: 7%;
}
.entry *,
.page * {
	font-size: 1.6rem;
	line-height: 1.75;
	word-wrap: break-word;
}
.entry h1,
.entry h2,
.entry h3,
.entry h4,
.entry h5,
.entry h6,
.page h1,
.page h2,
.page h3,
.page h4,
.page h5,
.page h6 {
	margin-left: auto;
	margin-right: auto;
	font-family: "Roboto", "sans-serif";
}
.entry h2,
.page h2,
.entry h2 *,
.page h2 *{
	font-size: 2.4rem;
	line-height: 1.45833;
}
.entry h3,
.page h3 {
	position: relative;
	padding-bottom: 2rem;
	font-size: 2.2rem;
	line-height: 1.5909;
}
.entry h3::before,
.page h3::before {
	position: absolute;
	left: 0;
	bottom: 0;
	content: '';
	width: 5.6rem;
	height: .3rem;
	background-color: #008a3f;
}
.entry h4,
.page h4 {
	padding-bottom: 1.3rem;
	border-bottom: 1px solid #d8d9d9;
	color: #008a3f;
	font-size: 2rem;
	line-height: 1.4;
}
.entry h5,
.page h5 {
	padding-bottom: 1.3rem;
	border-bottom: 1px solid #d8d9d9;
	font-size: 2rem;
	line-height: 1.4;
}
.entry h6,
.page h6 {
	padding-left: 1.8rem;
	border-left: 3px solid #008a3f;
	font-size: 2rem;
	line-height: 1.4;
}
.entry p,
.page p {
	font-size: 1.6rem;
	line-height: 1.75;
}
.entry p.narrow,
.page p.narrow {
	font-size: 1.55rem;
	line-height: 1.7;
}
.entry ul,
.entry ol,
.entry dl,
.page ul,
.page ol,
.page dl {
	padding: 0;
	font-size: 1.6rem;
	line-height: 1.75;
	margin-bottom:4rem;
	margin-top:2rem;
}
.entry ul li,
.entry ol li,
.entry dl dt,
.entry dl dd,
.page ul li,
.page ol li,
.page dl dt,
.page dl dd {
	font-size: 1.6rem;
	line-height: 1.75;
	list-style-type: none!important;
}
.entry ul li,
.page ul li,
.entry ol li,
.page ol li {
	position: relative;
	padding-left: 2rem;
}
.entry ul li::before,
.page ul li::before {
	content: '';
	position: absolute;
	left: .2rem;
	top: .9rem;
	width: .4rem;
	height: .4rem;
	border: 2px solid #008a3f;
	border-radius: .5rem;
}
.entry ol li::before,
.page ol li::before {
	content: '';
	position: absolute;
	left: .2rem;
	top: .8rem;
	width: .6rem;
	height: .4rem;
	border-top: 2px solid #a3a5a5;
	border-right: 2px solid #a3a5a5;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}
.entry blockquote,
.page blockquote {
	font-size: 1.6rem;
	line-height: 1.75;
}
.entry blockquote *,
.page blockquote * {
	font-size: 1.6rem;
	line-height: 1.75;
}
.entry div img,
.page div img {
	vertical-align: inherit;
}
.entry table,
.page table {
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}
.entry table th,
.page table th {
	font-weight: bold;
}
.entry table th,
.page table th,
.entry table td,
.page table td {
	padding: .7rem;
	font-size: 1.6rem;
	line-height: 1.75;
	border: 1px solid #d8d9d9;
	text-align: left;
	vertical-align: top;
	word-break: break-all;
	word-wrap: break-word;
}
.entry table th,
.page table th {
	background-color: #f2f4f4;
}
.entry table th img,
.page table th img,
.entry table td img,
.page table td img {
	width: auto;
	height: auto;
}
.entry hr,
.page hr {
	display: block;
	height: .1rem;
	margin-top: -.1rem;
	margin-left: auto;
	margin-right: auto;
	background-color: #d8d9d9;
	border: none;
}
.entry .entryframe, 
.page .entryframe {
	padding: 1.4rem;
	background-color: #f2f4f4;
	border-top: 2px solid #008a3f;
	color: #003a3e;
}
.entry .aka,
.page .aka {
	padding: 1.4rem;
	background-color: #fbeae8;
	border: 1px solid #e45d63;
}
.entry .ao,
.page .ao {
	padding: 1.4rem;
	background-color: #e0f9f9;
	border: 1px solid #8fdbdb;
}
.entry .midori,
.page .midori {
	padding: 1.4rem;
	background-color: #eaf6d8;
	border: 1px solid #008a3f;
}
.entry .summary,
.page .summary {
	padding: 1.4rem;
	background-color: #fcfae8;
	border: 1px solid #d1c359;
}
.entry .summaryb,
.page .summaryb {
	padding: 1.4rem;
	background-color: #fcfae8;
	border: 6px double #d1c359;
}
.entry .enq,
.page .enq {
	padding: 1.4rem;
	background-color: #fff;
	border: 1px solid #d8d9d9;
}
.entry .entryframe > * + *, 
.page .entryframe > * + *,
.entry .aka > * + *, 
.page .aka > * + *,
.entry .ao > * + *, 
.page .ao > * + *,
.entry .midori > * + *, 
.page .midori > * + *,
.entry .summary > * + *, 
.page .summary > * + *,
.entry .summaryb > * + *, 
.page .summaryb > * + *,
.entry .enq > * + *, 
.page .enq > * + * {
	margin-top: 1.4rem;
}
.entry img.photo2, 
.page img.photo2 {
	width:10% !important;
	float: left;
	margin-right: 1.4rem;
	margin-bottom: 1.4rem;
}
.entry_comment p:not(.date) {
	margin-top: -1.4rem!important;
	font-size: 1.6rem;
	line-height: 1.75;
}


/*=====================================
内部パーツ：編集不可／SP
=====================================*/
/*記事見出し*/
.entry_start {
	z-index: 2;
	position: relative;
	margin-bottom: 2.8rem;
}
.entry_photo {
	z-index: -1;
	position: relative;
}
.entry_photo > img {
	width: 100%;
	height: auto;
}
.entry_movie {
	z-index: -1;
	position: relative;
	padding-bottom : calc(56.25% + 3.5rem);
	text-align: center;
}
.entry_movie > iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: calc(100% - 3.5rem);
}
.entry_none {
	z-index: -1;
	height: 5.6rem;
}
.entry_photo + .entry_title,
.entry_movie + .entry_title,
.entry_none + .entry_title {
	margin-top: -3.5rem;
}
.entry_title {
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 1.4rem;
	width: 100%;
	max-width: 97.2rem;
	background-color: rgba(0,0,0,.8);
}
.entry_title > * {
	margin-bottom: .7rem;
}
.entry_title > ul {
	margin-bottom: 1.4rem;
	font-size: 0;
	letter-spacing: 0;
}
.entry_title > ul li {
	display: inline-block;
	padding-left: .7rem;
	padding-right: .7rem;
	background-color: #003a3e;
	font-family: "Roboto", "sans-serif";
	font-size: 1.1rem;
	line-height: 3.5rem;
	letter-spacing: .04rem;
	text-align: center;
}
.entry_title > ul li:first-child {
	background-color: #008a3f;
	font-weight: 700;
}
.entry_title > ul li, .entry_title > ul li a {
	color: #fff;
	text-decoration: none;
}
.entry_title > h1,
.entry_title > p {
	padding-left: 7%;
	padding-right: 7%;color: #fff!important;
}
.entry_title > h1 {
	font-family: "Roboto", "sans-serif";
	font-size: 3rem;
	line-height: 1.4;
}
.entry_title > h1 span {
	display: block;
	font-family: "Roboto", "sans-serif";
	font-size: 1.4rem;
	line-height: 2;
}
.entry_title > p {
	font-size: 1.2rem;
	font-style: oblique;
	line-height: 1.75;
}
.entry_title > p a {
	margin-bottom: 1.4rem;
}
.entry_title > h1 + p {
	margin-top: -.7rem;
}
/*ソーシャル*/
.entry_sns {
	padding-left: -webkit-calc(7% - 1rem);
	padding-left: calc(7% - 1rem);
	padding-right: -webkit-calc(7% - 1rem);
	padding-right: calc(7% - 1rem);
	text-align: right;
}
.entry_sns > ul {
	font-size: 0;
	letter-spacing: 0;
}
.entry_sns > ul li {
	display: inline-block;
	margin-left: 1rem;
	margin-right: 1rem;
}
.entry_sns .icon {
	width: 2.8rem;
	height: 2.8rem;
}
.entry_sns + .entry,
.entry_sns + .page {
	margin-top: 2.8rem;
}


/*=====================================
トップページ・中面／SP
=====================================*/
/*スライド*/
.top-slide {
	padding: 0!important;
	background-color: rgba(243,245,245,.9)
}
.sp-slide img {
	margin-top: 0!important;
	width: 100%!important;
	height: auto!important
}
.sp-slides a {
	display: block
}
.slide-title {
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 1.4rem;
	width: 100%;
	max-width: 75rem;
	min-height: 21rem;
	background-color: rgba(0,0,0,.8);
}
.slide-title > * {
	margin-bottom: .7rem;
}
.slide-title > ul {
	margin-bottom: 1.4rem;
	font-size: 0;
	letter-spacing: 0;
}
.slide-title > ul li {
	display: inline-block;
	padding-left: .7rem;
	padding-right: .7rem;
	background-color: #003a3e;
	font-family: "Roboto", "sans-serif";
	font-size: 1.1rem;
	line-height: 3.5rem;
	letter-spacing: .04rem;
	text-align: center;
}
.slide-title > ul li:first-child {
	background-color: #008a3f;
	font-weight: 700;
}
.slide-title > ul li, .entry_title > ul li a {
	color: #fff;
	text-decoration: none;
}
.slide-title > h1,
.slide-title > p {
	padding-left: 7%;
	padding-right: 7%;
    color: #fff!important;
}
.slide-title > h1 {
	padding-bottom: 0!important;
	font-family: "Roboto", "sans-serif";
	font-size: 2.4rem!important;
	line-height: 1.4;
	text-align: left!important;
}
.slide-title > h1::before,
.slide-title > h1::after {
	display: none;
}
.slide-title > h1 span {
	display: block;
	font-family: "Roboto", "sans-serif";
	font-size: 1.4rem;
	line-height: 2;
}
.slide-title > p {
	font-size: 1.2rem;
	font-style: oblique;
	line-height: 1.75;
}
.slide-title > p a {
	margin-bottom: 1.4rem;
}
.slide-title > h1 + p {
	margin-top: -.7rem;
}

/*メイン記事*/
.topmain + .maintopics {
	margin-top: -2.8rem;
}
/*トップページ共通*/
.toppage > section {
	padding-left: 7%;
	padding-right: 7%;
}
.boxlink,
.boxlink a {
	display: block;
	color: #111;
	text-decoration: none
}
.boxlink h2 {
	font-family: "Roboto", "sans-serif";
	font-size: 2rem;
	line-height: 1.4;
}
.boxlink h2 span {
	display: block;
	font-family: "Roboto", "sans-serif";
	font-size: 1.2rem;
	line-height: 1.75;
}
.boxlink span {
	display: block;
	font-size: 1.2rem;
	line-height: 1.75;
}
section:not(.pagecont) .boxlink span {
    padding: 0 1.4rem
}
.boxlink p {
	font-size: 1.6rem;
	line-height: 1.75;
}
.boxlink > * + p {
	margin-top: .7rem;
}
.boxphoto {
	position: relative;
	margin-top: .7rem;
	margin-bottom: .7rem;
	vertical-align: top;
}
.boxphoto > img {
	z-index: 0;
	position: relative;
    min-width: 100%;
}
.boxphoto > span {
	z-index: 1;
	position: absolute;
	bottom: 0;
	right: 0;
}
.related {
    padding: 10px 0;
}
section:not(.pagecont) .related {
    padding: 10px;
}
.related li {
	font-size: 1.4rem;
	line-height: 1.75;
}
.related li a {
    display: flex;
    align-items: flex-start
}
.related li a::before {
    content: "";
    display: block;
    flex-shrink: 0;
    margin-top: 8px;
    margin-right: 8px;
    width: 6px;
    height: 6px;
    border-top: 2px solid #008a3f;
    border-right: 2px solid #008a3f;
    transform: rotate(45deg);
}
.sidephoto {
	clear: both;
	display: inline-block;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
}
.sidephoto > .boxphoto {
	float: left;
	width: 35%;
	height: auto;
}
.sidephoto > *:not(.boxphoto) {
	margin-left: -webkit-calc(35% + 1.4rem);
	margin-left: calc(35% + 1.4rem);
}
.calendar {
	padding-top: 1.4rem;
	padding-bottom: 1.4rem;
	border-top: 1px solid #d8d9d9;
	border-bottom: 1px solid #d8d9d9;
}
.calendar + .calendar {
	margin-top: -2.9rem;
}
.calendar > * {
	display: table-cell!important;
}
.calendar > div > span {
	box-sizing: content-box;
	display: block;
	margin-right: 1.4rem;
	width: 5.6rem;
	height: 5.6rem;
 	background-color: #002c33;
	border: 7px solid #002c33;
	border-radius: 5rem;
	color: #fff;
	font-family: "Roboto", "sans-serif";
	font-size: 1.2rem;
	line-height: 1.2rem!important;
	text-align: center;
}
.calendar > div > span > b {
	display: block;
	font-weight: 700;
}
.calendar > div > span > strong {
	display: block;
	font-family: "Roboto", "sans-serif";
	font-size: 3rem;
	line-height: 3.2rem!important;
}
.calendar > h3 {
	display: block;
	font-family: "Roboto", "sans-serif";
	font-size: 2rem;
	line-height: 1.4;
}
.events_main > .calendar {
	padding-top: 0;
	padding-bottom: 0;
	border-top: 0;
	border-bottom: 0;
}
.events_main > * + * {
	margin-top: 1.4rem;
}
.events_main > p {
	font-size: 1.6rem;
	line-height: 1.75;
}
/*見出し*/
.toppage > section h1,
h1.title_type01 {
	position: relative;
	padding-bottom: 1rem;
	max-width: 110rem;
	margin-left: auto;
	margin-right: auto;
	color: #002c33;
	font-family: "Roboto", "sans-serif";
	font-size: 2.8rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
}
.toppage > section h1::after,
h1.title_type01::after {
	content: '';
	z-index: 1;
	position: absolute;
	bottom: -.3rem;
	left: 0;
	width: 100%;
	height: .3rem;
	background-color: rgba(203,205,205,.4);
}
.toppage > section h1::before,
h1.title_type01::before {
	content: '';
	z-index: 2;
	position: absolute;
	bottom: -.3rem;
	left: -webkit-calc(50% - 5.6rem);
	left: calc(50% - 5.6rem);
	width: 11.2rem;
	height: .3rem;
	background-color: #002c33;
}
.toppage > section.bg_theme1 h1::before,
.toppage > section.bg_theme2 h1::before,
.toppage > section.bg_theme3 h1::before,
.bg_theme1 h1.title_type01::before,
.bg_theme2 h1.title_type01::before,
.bg_theme3 h1.title_type01::before {
	background-color: #fff;
}
.toppage > section > h2,
.title_type02 {
	color: #008a3f;
	font-family: "Roboto", "sans-serif"!important;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.4;
}
*:not(h1) + h2 {
	margin-top: 5.6rem;
}
span + h2 {
	margin-top: 0;
}
.title_type03 {
	padding-bottom: .7rem;
	border-bottom: 1px solid #d8d9d9;
	color: #111;
	font-family: "Roboto", "sans-serif"!important;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.75;
}
.title_type04 {
	padding: .7rem!important;
    background: #003a3e;
    border: none!important;
	color: #fff!important;
	font-size: 1.7rem!important;
	font-weight: 700;
	line-height: 1.75;
    text-align: center
}
.title_type04::before {
    display: none!important
}
.title_type04 small {
	font-size: 1.3rem!important
}
.title_type05 {
    margin-left: 0!important;
    margin-right: 0!important;
    padding: 0!important;
    background: rgba(255 255 255 /0);
    border: none!important;
	color: #003a3e!important;
	font-size: 1.7rem!important;
	font-weight: 700;
	line-height: 1.75;
    text-align: left!important
}
.title_type06 {
    margin-left: 0!important;
    margin-right: 0!important;
	margin-bottom: .5em!important;
    padding: 0!important;
	color: #003a3e!important;
	font-size: 2rem!important;
	font-weight: 700;
	line-height: 1.75;
    text-align: center
}


/*=====================================
中面：リストページ／SP
=====================================*/
/*共通*/
.listpage {
	display: -moz-box;
	display: -webkit-box;
	display: box;
	-moz-box-pack: start;
	-webkit-box-pack: start;
	box-pack: start;
	-moz-box-orient: vertical;
	-webkit-box-orient: vertical;
	box-orient: vertical;
}
.pagebanner {
	-moz-box-ordinal-group: 1;
	-webkit-box-ordinal-group: 1;
	box-ordinal-group: 1;
}
.pagebanner a {
	text-decoration:none;
}
.menu_accordion {
	-moz-box-ordinal-group: 3;
	-webkit-box-ordinal-group: 3;
	box-ordinal-group: 3;
	margin-top: 4.2rem!important;
}
.list_contents {
	-moz-box-ordinal-group: 2;
	-webkit-box-ordinal-group: 2;
	box-ordinal-group: 2;
}
/*カテゴリートップ1Topics*/
.catrgorytop .boxlink {
	display: -moz-box;
	display: -webkit-box;
	display: box;
	-moz-box-pack: start;
	-webkit-box-pack: start;
	box-pack: start;
	-moz-box-orient: vertical;
	-webkit-box-orient: vertical;
	box-orient: vertical;
}
.catrgorytop .boxlink > .boxphoto {
	-moz-box-ordinal-group: 3;
	-webkit-box-ordinal-group: 3;
	box-ordinal-group: 3
}
.catrgorytop .boxlink > .category {
	-moz-box-ordinal-group: 1;
	-webkit-box-ordinal-group: 1;
	box-ordinal-group: 1;
}
.catrgorytop .boxlink > h2 {
	-moz-box-ordinal-group: 2;
	-webkit-box-ordinal-group: 2;
	box-ordinal-group: 2;
	margin-top: auto;
}
.catrgorytop .boxlink > .date {
	-moz-box-ordinal-group: 4;
	-webkit-box-ordinal-group: 4;
	box-ordinal-group: 4;
}
.catrgorytop + .column {
	margin-top: 2.8rem;
}

/*=====================================
写真・リードありコンテンツ　2020.06
=====================================*/
.catrgorytop.lead .boxlink > .boxphoto {
	-moz-box-ordinal-group: 4;
	-webkit-box-ordinal-group: 4;
	box-ordinal-group: 4
}
.catrgorytop.lead .boxlink > .category {
	-moz-box-ordinal-group: 1;
	-webkit-box-ordinal-group: 1;
	box-ordinal-group: 1;
}
.catrgorytop.lead .boxlink > h2 {
	-moz-box-ordinal-group: 2;
	-webkit-box-ordinal-group: 2;
	box-ordinal-group: 2;
	margin-top: auto;
}
.catrgorytop.lead .boxlink > p {
	-moz-box-ordinal-group: 3;
	-webkit-box-ordinal-group: 3;
	box-ordinal-group: 3;
}
.catrgorytop.lead .boxlink > .date {
	-moz-box-ordinal-group: 5;
	-webkit-box-ordinal-group: 5;
	box-ordinal-group: 5;
}
/*=====================================
写真上レイヤーテキスト　2020.06
=====================================*/
.boxlink-top {
    display: flex;
    flex-direction: column;
    color: #111;
    text-decoration: none
}
.boxlink-top div {
    order: 1
}
.boxlink-top h2 {
    margin-top: 0;
    padding-left: 1.8rem;
    border-left: 3px solid #008a3f;
    font-size: 2rem;
    line-height: 1.4
}
.boxlink-top img {
    order: 2;
    margin-top: .7rem;
    margin-bottom: .7rem
}

/*ページバナー*/
.pagebanner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 1.8rem;
    min-height: 12.2rem
}
.pagebanner h1 {
	font-size: 2.8rem;
	line-height: 1.5;
	text-align: center;
}
.pagebanner h1 span {
    display: block;
	font-size: 1.5rem;
	text-align: center;
}
/*テーマ・アーカイブス*/
.menu_accordion {
	margin: 0 auto;
	padding: 0;
}
.menu_accordion .ac_content {
	margin: 0;
	padding: 0;
}
.menu_accordion input {
	display: none;
}
.menu_accordion label {
	cursor: pointer;
	position: relative;
	display: block;
	padding: .7rem 1.8rem;
	background-color: #a3a5a5;
	border-top: 1px solid rgba(0, 0, 0, 0.05);
	border-bottom: 1px solid rgba(0, 0, 0, 0.05);
	color: #002c33;
	font-family: "Roboto", "sans-serif";
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 2;
}
.menu_accordion label::before {
	content: '+';
	position: absolute;
	top: 0;
	right: 0;
	width: 4.2rem;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 4.2rem;
	text-align: center;
}
.menu_accordion label.ac_active::before {
	content: '-';
}
.menu_accordion .ac_cont {
	overflow: hidden;
	padding: 0 1.4rem;
	height: 0;
	background-color: #a3a5a5;
	transition: 0.2s;
}
.menu_accordion input:checked + .ac_cont {
	padding: .7rem 1.4rem;
	height: auto;
}
.menu_accordion .ac_cont ul li {
	display: inline-block;
	padding: .7rem 1rem;
	font-family: "Roboto", "sans-serif";
	font-size: 1.4rem;
	line-height: 2;
}
.menu_accordion .ac_cont ul li a {
	color: #002c33;
	text-decoration: none;
}
.ac_cont + label {
	margin-top: -.1rem;
}
/*ページ送り*/
.pager {
	clear: both;
	font-size: 0;
	letter-spacing: 0;
}
.pager span,
.pager a {
	display: inline-block;
	font-family: "Roboto", "sans-serif";
	font-size: 1.4rem;
	line-height: 2;
	text-decoration: none;
	text-align: center;
}
.link_page {
	margin: .7rem;
	background-color: #a3a5a5;
	width: 2.8rem;
	color: #fff;
}
.current_page {
	margin: .7rem;
	background-color: #008a3f;
	width: 2.8rem;
	color: #fff;
}
.link_before,
.link_next {
	position: relative;
	margin: .7rem;
	color: #008a3f;
	font-size: 1.4rem;
	line-height: 2;
}
.link_before {
	padding-left: 1.4rem;
}
.link_next {
	padding-right: 1.4rem;
}
.link_before::before,
.link_next::before {
	content: '';
	position: absolute;
	top: 1rem;
	width: .5rem;
	height: .5rem;
	border-top: 2px solid #008a3f;
	border-right: 2px solid #008a3f;
}
.link_before::before {
	left: 0;
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}
.link_next::before {
	right: 0;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}


/*=====================================
ページ内メニュー　2018.07
=====================================*/
/* ボタン */
.pagebanner + .pagemenu {
	margin-top: .7rem;
}
.pagemenu ul {
	width: 98%;
	margin-left: auto;
	margin-right: auto;
	font-size: 0;
	letter-spacing: 0;
}
.pagemenu ul li {
	display: inline-block;
	width: 50%;
	margin: 0;
	padding: 1%;
	font-family: "Roboto", "sans-serif";
	font-size: 1.4rem;
}
.pagemenu ul li a {
	display: block;
	padding: .35rem 0;
	border: 2px solid #008a3f;
	color: #008a3f!important;
	font-style: normal;
	font-weight: 700;
	line-height: 2.4rem!important;
	text-align: center!important;
	text-decoration: none;
	transition: .3s all;
}
/*2020.07*/
.pagemenu.about + .entry_start {
    margin-top: .7rem
}

/*=====================================
EN追加
=====================================*/
img.photo2 {
	float:none;
	margin-left:auto;
	margin-right:auto;
	border: 1px solid #CCCCCC;
	width:60%;	
}

/*=====================================
1カラム写真ありコンテンツ用　2020.06
=====================================*/
.column1 > div.column1-inner > * {
    margin-bottom: 1.4rem
}
.column1 h2 {
    margin-bottom: 1.4rem;
	font-family: "Roboto", "sans-serif";
	font-size: 2rem;
	line-height: 1.4;
}
.column1 h2 span {
	display: block;
	font-family: "Roboto", "sans-serif";
	font-size: 1.2rem;
	line-height: 1.75;
}
.column1 > div.column1-inner {
    display: -webkit-flex;
    display: flex;
    flex-direction: column
}
.column1-inner > div.txt > * + * {
    margin-top: 1.4rem
}

/*=====================================
カラム内デザイン　2021.06
=====================================*/

.exbox__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 2.8rem 1.4rem;
    border-bottom: 1px solid #d8d9d9;
}
.exbox__inner > * + * {
    margin-left: .7rem
}
.exbox__inner.clmn {
    flex-direction: column
}
.exbox__inner.clmn > * + * {
    margin-top: .7rem;
    margin-left: 0
}
.exbox__inner.clmn h1,
.exbox__inner.clmn h2,
.exbox__inner.clmn h3,
.exbox__inner.clmn h4,
.exbox__inner.clmn h5,
.exbox__inner.clmn h6,
.exbox__inner.clmn p,
.exbox__inner.clmn .col {
    width: 100%
}
.exbox__inner.clmn p + h4 {
    margin-top: 1.4rem
}
.exbox__inner.clmn  .blck {
    margin-left: auto;
    margin-right: auto
}

/*=====================================
年表　2021.09
=====================================*/
.timeline {
    display: flex;
    flex-direction: column
}
.timeline-ttl {
    display: flex;
    justify-content: space-between;
}
.timeline-ttl h3 {
    padding: .5rem .5rem .3rem!important;
    width: 49%;
    font-size: 1.2rem;
    text-align: center
}
.timeline-ttl h3.grn {
    background: #008a3f;
    color: #fff
}
.timeline-ttl h3.gry {
    background: #eee;
    color: #222
}
.timeline-ttl h3::before {
    display: none
}
.timeline-table {
    position: relative;
    padding: 1.4rem 0;
}
.timeline-table img {
    display: block;
    margin: .8rem 0;
}
.timeline-table::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 6px;
    width: 3px;
    height: 100%;
    background: #d9d9d9
}
.timeline-table > div + div {
    margin-top: 1.4rem
}
.timeline-table div {
    position: relative;
    padding-left: 2rem
}
.timeline-table div.parallel {
    padding-left: 0
}
.timeline-table div::before {
	content: '';
	position: absolute;
	left: .2rem;
	top: .9rem;
    width: .5rem;
    height: .5rem;
    border-radius: 50%;
    background: #fff
}
.timeline-table div.tt-left::before {
    border: 3px solid #d9d9d9
}
.timeline-table div.tt-right::before {
    border: 3px solid #008a3f
}
.timeline-table div date {
    font-size: 1.4rem;
    font-weight: 700
}
.timeline-table div .tag {
    padding: .4rem .8rem .3rem;
    border-radius: .2rem;
    font-size: 1.2rem
}
.timeline-table div date + .tag {
    margin-left: .6rem
}
.timeline-table div.tt-left .tag {
    background: #eee;
    color: #222
}
.timeline-table div.tt-right .tag {
    background: #008a3f;
    color: #fff
}
/*協力者*/
.messageBox img {
    display: block;
    width: 50%;
    margin-left: auto;
    margin-right: auto;
}
.messageBox p {
    overflow: hidden
}
.messageBox small {
    font-size: .6em!important
}
/*=====================================
SNS誘導　2024.03
=====================================*/
p.catch {
	margin-bottom: 1em;
	font-size: 1.3rem;
	text-align: center
}
.cont-sns {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px 20px
}
.cont-sns img {
	width: 32px;
	aspect-ratio: 1/1
}

/*=====================================

PC

=====================================*/

@media screen and (min-width: 769px) , print {

/*=====================================
テキスト系／PC
=====================================*/
a:hover {
	color: #00a2bf;
	transition: .3s all;
}


/*=====================================
基本レイアウト／PC
=====================================*/
.spno {
	display: inherit;
}
.pcno {
	display: none!important;
}
.sppevno {
	pointer-events: inherit;
}
.contents_inner {
	padding-top: 5.6rem;
	padding-bottom: 5.6rem;
}
.pagecont {
	padding-left: -webkit-calc((100% - 110rem) / 2 );
	padding-left: calc((100% - 110rem) / 2 );
	padding-right: -webkit-calc((100% - 110rem) / 2 );
	padding-right: calc((100% - 110rem) / 2 );
}
.colorbox {
	padding-left: 5.0724%;
	padding-right: 5.0724%;
}
.mgtop {
	margin-top: 4.2rem!important;
}
.mgt + .mgt {
    margin-top: 5.6rem
}
.col > .mgt + .mgt {
    margin-top: 0
}
.mgt h3 {
    margin-bottom: 2.1rem
}
.menulink li {
    min-height: 90px
}
.menulink a {
    border-radius: 1.4rem!important;
}
/* 基本float */
.fl-imgleft {
	display: inherit;
	float: left;
	margin-right: 2.8rem!important;
}
.fl-imgright {
	display: inherit;
	float: right;
	margin-left: 2.8rem!important;
}
.fl-imgleft p, .fl-imgright p {
	margin-bottom: 0 !important;
}
.wd320 {
    max-width: 320px;
}
article,
section {
	font-size: 0;
	letter-spacing: 0;
}
article *,
section * {
	font-size: normal;
	letter-spacing: .04rem;
}
article + *,
section + * {
	margin-top: 5.6rem;
}
article.entry,
section.entry {
	font-size: 1.8rem;
}
main {
	padding-top: 0;
}
/* ボタン */
.normal_btn,
.normal_btn_rev {
	width: auto;
    padding: 1.2rem 2rem;
	border-radius: 4.4rem;
	color: #008a3f!important;
	font-size: 1.8rem;
}
.normal_btn {
	color: #008a3f!important;
}
.normal_btn_rev {
    background-color: #008a3f;
	color: #fff!important;
}
.mini_btn:hover,
.normal_btn:hover {
	background-color: #008a3f;
	color: #fff!important;
	transition: .3s all;
}
.normal_btn_rev:hover {
	background-color: rgba(255,255,255,0);
	color: #008a3f!important;
	transition: .3s all;
}
.normal_btn2,
.normal_btn2_rev {
	width: auto;
    padding: 1.2rem 2rem;
	border-radius: 4.4rem;
	color: #002C33!important;
	font-size: 1.8rem;
}
.normal_btn2 {
	color: #002C33!important;
}
.normal_btn2_rev {
    background-color: #002C33;
	color: #fff!important;
}
.normal_btn2:hover {
	background-color: #002C33;
	color: #fff!important;
	transition: .3s all;
}
.mini_btn2:hover {
	background-color: #fff;
	color: #008a3f!important;
	transition: .3s all;
}
.normal_btn2_rev:hover {
	background-color: rgba(255,255,255,0);
	color: #002C33!important;
	transition: .3s all;
}

.normal_btn3,
.normal_btn3_rev {
	width: auto;
    padding: 1.2rem 2rem;
	border-radius: 4.4rem;
	color: #00a2bf!important;
	font-size: 1.8rem;
}
.normal_btn3 {
	color: #00a2bf!important;
}
.normal_btn3_rev {
    background-color: #00a2bf;
	color: #fff!important;
}
.mini_btn3:hover,
.normal_btn3:hover {
	background-color: #00a2bf;
	color: #fff!important;
	transition: .3s all;
}
.normal_btn3_rev:hover {
	background-color: rgba(255,255,255,0);
	color: #00a2bf!important;
	transition: .3s all;
}

.normal_btn.large,
.normal_btn_rev.large,
.normal_btn2.large,
.normal_btn2_rev.large,
.normal_btn3.large,
.normal_btn3_rev.large {
	width: 60%;
	max-width: 54rem;
}

.normal_btn.blck,
.normal_btn_rev.blck,
.normal_btn2.blck,
.normal_btn2_rev.blck,
.normal_btn3.blck,
.normal_btn3_rev.blck {
    display: block;
	width: 90%;
	max-width: 54rem;
    margin-left: auto;
    margin-right: auto
}


/*ページ内アンカー*/
.ancer {
	margin-top: -8.4rem;
	padding-top: 8.4rem;
}
/*2カラム*/
.column {
	text-align: center;
}
.column * {
	text-align: left;
}
.column2 {
	display: inline-block!important;
	width: 45.4545%;
	max-width: 50rem;
	vertical-align: top;
}
.column2:nth-child(odd) {
	margin-left: 1.4rem;
	margin-right: 1.4rem;
}
.column2:nth-child(even) {
	margin-left: 1.4rem;
	margin-right: 1.4rem;
}
.column2:nth-last-child(2) {
	margin-bottom: 0;
}
.column3 {
	display: inline-block!important;
	margin-left: 2.909%;
	margin-right: 2.909%;
	width: 27.2727%;
	max-width: 30rem;
	vertical-align: top;
}
.column3:nth-last-child(2),
.column3:nth-last-child(3) {
	margin-bottom: 0;
}
.col {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start
}
.col.col2 > * {
    width: 50%;
}
.col.col2.space {
    justify-content: space-between
}
.col.col2.space > * {
    width: 49%;
}
.col.col3 > * {
    width: -webkit-calc(100% / 3);
    width: calc(100% / 3);
    width: 33.3333%;
}
.col.col3.space > * {
    margin-left: 2%;
    width: 32%;
}
.col.col3.space > *:nth-child(3n + 1) {
    margin-left: 0
}
.col.col2.inner > *,
.col.col3.inner > * {
    padding-left: 1.5%;
    padding-right: 1.5%
}
.col > * {
    margin-bottom: 2.8rem
}
.movieBox iframe {
    min-height: 160px;
}
.noline {
    text-decoration: none!important
}
/*特殊メニュー内バナー*/
.special-bnr {
    width: 400px!important;
    margin-left: 0;
    margin-right: 0;
    padding: 1.2rem 3.2rem!important;
    font-size: 2rem!important
}

/*=====================================
ヘッダー／PC
=====================================*/
header {
	z-index: 10;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: stretch;
    flex-wrap: wrap;
	padding-top: .4rem;
	padding-left: -webkit-calc((100% - 120rem) / 2 );
	padding-left: calc((100% - 120rem) / 2 );
	padding-right: -webkit-calc((100% - 120rem) / 2 );
	padding-right: calc((100% - 120rem) / 2 );
	position: relative;
	width: auto;
	min-height: 11.2rem;
	box-shadow: 0;
	font-size: 0;
	letter-spacing: 0;
}
header h1 {
	display: flex;
    align-items: center;
	width: 16.8rem;
    height: 11.2rem;
}
.genron_logo {
	height: 8rem;
	font-size: 1.2rem;
	line-height: 2.4rem;
}
.genron_logo > span {
	width: 16.8rem;
	height: 3.2rem;
	font-size: 0;
	line-height: 1.6rem;
}
header .genron_logo:hover {
	color: #111;
}
header > div {
	display: flex;
	flex-direction: column;
	font-size: 0;
}
header > div ul {
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	margin-left: 1.4rem;
	font-size: 1.3rem;
	font-family: "Roboto", "sans-serif";
	line-height: 2.4rem;
}
header > div ul:first-of-type {
	margin-bottom: .4rem;
}
header ul li {
	padding-left: 1rem;
	padding-right: 1rem;
	font-size: 1.3rem;
	font-family: "Roboto", "sans-serif";
	line-height: 2.4rem;
}
header ul li a {
	color: #111;
	text-decoration: none;
}
header ul.btn li,
ul.members li:not(:first-child){
	padding-left: .3rem;
	padding-right: .3rem;
}
ul.members {
	display: flex;
	flex-direction: row;
    justify-content: flex-end;
    margin-bottom: .4rem
}
ul.members li {
    margin-left: 0;
    margin-right: 0
}
ul.members li a {
    display: flex;
    align-items: center;
    justify-content: center;
    /* width: 14.2rem; */
    height: 2.8rem;
    padding-left: 2rem;
    padding-right: 2rem;
    border-radius: 2rem;
    color: #fff;
    font-size: 1.4rem;
    font-weight: 700;
    text-decoration: none
}
ul.members li a.status {
    background-color: #008a3e;
	width: 18.2rem;
}
ul.members li a.statuson {
	background-color: #003A3E;
	width: 14.2rem;
}
ul.members li a.regist {
    background-color: #82b422;
	width: 14.2rem;
}
ul.members li a.logout {
	color: #FFF;
	background-color: #959595;
	width: 14.2rem;
}
ul.members li a:hover {
 background-color: #00a2bf;
 }
ul.members li a.logout:hover {
	background-color: #C4C4C4;
 }


/*=====================================
グローバルメニュー／PC
=====================================*/
nav.globalmenu {
	position: relative;
    width: 100%;
	height: 5.6rem;
    padding: 0;
	background-color: #008a3f;
	border-bottom: 3px solid #002c33;
	box-shadow: none;
	font-size: 0;
    list-style: none;
	letter-spacing: 0;
	text-align: inherit;
}
.is-fixed {
	position: fixed!important;
	top: 0;
	left: 0;
	z-index: 8999;
	width: 100%;
	box-shadow: 0 1px 3px 1px rgba(0,0,0,0.3);
}
.pp_active {
	background-color: #008a3f!important;
}



/*=====================================
フッター／PC
=====================================*/
footer {
	display: inherit;
	padding-top: 5.6rem;
	padding-left: -webkit-calc((100% - 120rem) / 2 );
	padding-left: calc((100% - 120rem) / 2 );
	padding-right: -webkit-calc((100% - 120rem) / 2 );
	padding-right: calc((100% - 120rem) / 2 );
	padding-bottom: 5.6rem;
	font-size: 0;
	letter-spacing: 0;
}
footer > * {
	display: inline-block;
	vertical-align: top;
	letter-spacing: .04rem;
}
footer > *:nth-child(1) {
	margin-left: 1.4rem;
	width: -webkit-calc(34% - 1.4rem);
	width: calc(34% - 1.4rem);
}
footer > *:nth-child(2) {
	margin-top: 0;
	margin-right: 1.4rem;
	width: -webkit-calc(66% - 1.4rem);
	width: calc(66% - 1.4rem);
}
footer > *:nth-child(3) {
	margin-left: 1.4rem;
	width: -webkit-calc(50% - 1.4rem);
	width: calc(50% - 1.4rem);
}
footer > *:nth-child(4) {
	margin-right: 1.4rem;
	width: -webkit-calc(50% - 1.4rem);
	width: calc(50% - 1.4rem);
}
footer .genron_logo {
	line-height: 2.4rem;
	text-align: left
}
footer .genron_logo:hover {
	color: #fff;
}
footer > div,
footer p {
	padding-left: 2.8rem;
	text-align: right;
}
footer ul li {
	margin-left: 2.8rem;
	margin-right: 0rem;
	font-size: 1.3rem;
}
footer ul li:first-child {
	margin-left: 0;
}
ul.footer_submenu li,
ul.footer_menu li {
	width: auto;
}
ul.footer_menu li {
	margin-left: 2.8rem;
	margin-right: 0rem;
	font-size: 1.5rem;
}
ul.footer_submenu + ul.footer_menu {
	margin-top: 0;
}
footer p {
	font-size: 1.1rem;
}
footer a.mini_btn:hover {
	background-color: #002c33!important;
	border: 2px solid #a3a5a5!important;
	color: #a3a5a5!important;
}


/*=====================================
内部パーツ：編集可／PC
=====================================*/
.entry,
.page {
	padding-left: 7.2rem;
	padding-right: 7.2rem;
}
.entry *,
.page * {
	font-size: 1.8rem;
}
.entry h2,
.page h2,
.entry h2 *,
.page h2 * {
	font-size: 3rem;
	line-height: 1.4;
}
.entry h3,
.page h3 {
	position: relative;
	padding-bottom: 2rem;
	font-size: 2.5rem;
	line-height: 1.5;
}
.entry h4,
.page h4 {
	font-size: 2.4rem;
	line-height: 1.45833;
}
.entry h5,
.page h5 {
	font-size: 2.4rem;
	line-height: 1.45833;
}
.entry h6,
.page h6 {
	font-size: 2.4rem;
	line-height: 1.45833;
}
.entry p,
.page p {
	font-size: 1.8rem;
}
.entry ul,
.entry ol,
.entry dl,
.page ul,
.page ol,
.page dl {
	font-size: 1.8rem;
}
.entry ul li,
.entry ol li,
.entry dl dt,
.entry dl dd,
.page ul li,
.page ol li,
.page dl dt,
.page dl dd {
	font-size: 1.8rem;
}
.entry ul li,
.page ul li,
.entry ol li,
.page ol li {
	position: relative;
	margin-left: 1.4rem;
	padding-left: 2rem;
}
.entry ul li::before,
.page ul li::before {
	top: 1.3rem;
}
.entry ol li::before,
.page ol li::before {
	top: 1.2rem;
}
.entry blockquote,
.page blockquote {
	margin-left: auto;
	margin-right: auto;
	font-size: 1.6rem;
	line-height: 1.75;
}
.entry blockquote *,
.page blockquote * {
	font-size: 1.6rem;
	line-height: 1.75;
}
.entry .entryframe, 
.page .entryframe,
.entry .aka, 
.page .aka,
.entry .ao, 
.page .ao,
.entry .midori, 
.page .midori,
.entry .summary, 
.page .summary,
.entry .summaryb, 
.page .summaryb,
.entry .enq, 
.page .enq {
	margin-left: -7.2rem;
	margin-right: -7.2rem;
	padding: 2.8rem 7.2rem;
}
.entry .entryframe.normal, 
.page .entryframe.normal,
.entry .aka.normal, 
.page .aka.normal,
.entry .ao.normal, 
.page .ao.normal,
.entry .midori.normal, 
.page .midori.normal,
.entry .summary.normal, 
.page .summary.normal,
.entry .summaryb.normal, 
.page .summaryb.normal,
.entry .enq.normal, 
.page .enq.normal {
	margin-left: 0;
	margin-right: 0;
	padding: 2.8rem;
}
.entry table,
.page table {
	width: auto;
}


/*=====================================
内部パーツ：編集不可／PC
=====================================*/
/*記事見出し*/
.entry_start {
	overflow-x: hidden;
	overflow-y: inherit;
	margin-bottom: 5.6rem;
}
.entry_photo {
	overflow: hidden;
	height: 42rem;
	margin-bottom: 2.8rem;
}
.entry_photo > img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	width: 100%;
	height: auto;
}
.entry_movie {
	padding-top: 4.2rem;
	padding-bottom: 8.4rem;
}
.entry_movie > iframe {
	position: relative!important;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 0;
	position: absolute;
	width: 82.1rem;
	max-width: 100%;
	height: 46.2rem;
}
.entry_none {
	height: 8.4rem;
}
.entry_title {
	width: 100%;
	max-width: 97.2rem;
    min-height: 15.4rem
}
.entry_title > ul li {
	padding-left: 3.5rem;
	padding-right: 3.5rem;
	font-size: 1.4rem;
	line-height: 4.2rem;
}
.entry_title > h1,
.entry_title > p {
	padding-left: 3.6rem;
	padding-right: 3.6rem;
}
.entry_title > h1 {
	font-size: 4.4rem;
	line-height: 1.2727;
}
.entry_title > p {
	font-size: 1.4rem;
	line-height: 2;
}
.entry_photo + .entry_title {
	position: absolute;
	bottom: 0;
	left: 50%;
	-webkit-transform: translate(-50%,0%);
	transform: translate(-50%,0%);
}
.entry_movie + .entry_title,
.entry_none + .entry_title {
	margin-top: -4.2rem;
}
/*ソーシャル*/
.entry_sns {
	padding-left: -webkit-calc((100% - 99.2rem) / 2 );
	padding-left: calc((100% - 99.2rem) / 2 );
	padding-right: -webkit-calc((100% - 99.2rem) / 2 );
	padding-right: calc((100% - 99.2rem) / 2 );
	text-align: right;
}
.entry_start + .entry_sns {
	margin-top: -2.8rem;
}
/*関連記事*/
.colorbox .sidephoto > .boxphoto {
	width: 20rem;
}
.colorbox .sidephoto > *:not(.boxphoto) {
	margin-left: 22.8rem;
}


/*=====================================
トップページ／PC
=====================================*/
/*スライド*/
.toppage > section.top-slide {
	padding-left: -webkit-calc((100% - 120rem) / 2 )!important;
	padding-left: calc((100% - 120rem) / 2 )!important;
	padding-right: -webkit-calc((100% - 120rem) / 2 )!important;
	padding-right: calc((100% - 120rem) / 2 )!important;
	background-color: #003a3e;
}
.slide-title {
	min-height: auto
}
.slide-title > ul li {
	padding-left: 3.5rem;
	padding-right: 3.5rem;
	font-size: 1.4rem;
	line-height: 4.2rem;
}
.slide-title > h1,
.slide-title > p {
	padding-left: 3.6rem;
	padding-right: 3.6rem;
	color: #111;
}
.slide-title > h1 {
	font-size: 3.8rem!important;
	line-height: 1.2894!important;
}
.slide-title > p {
	font-size: 1.4rem;
	line-height: 2;
}
a:hover .slide-title p {
	color: #111;
}
/*メイン記事*/
.topmain + .maintopics {
	margin-top: -8.4rem;
	padding-top: 5.6rem;
}
.topmain .entry_title {
	width: 64%;
	max-width: 75rem;
}
.topmain .entry_title > h1 {
	font-size: 3.8rem;
	line-height: 1.2894;
}
.topmain .entry_photo + .entry_title {
	position: absolute;
	bottom: 0;
	left: 50%;
	-webkit-transform: translate(-78.125%,0%);
	transform: translate(-78.125%,0%);
}
/*トップページ共通*/
.toppage > section {
	padding-left: -webkit-calc((100% - 110rem) / 2 );
	padding-left: calc((100% - 110rem) / 2 );
	padding-right: -webkit-calc((100% - 110rem) / 2 );
	padding-right: calc((100% - 110rem) / 2 );
}
.boxlink h2 {
	font-size: 2.4rem;
	line-height: 1.5;
}
.boxlink h2 span {
	font-size: 1.4rem;
	line-height: 2;
}
.boxlink span {
	display: block;
	font-size: 1.4rem;
	line-height: 2;
}
section:not(.pagecont) .boxlink span {
    padding: 0
}
section:not(.pagecont) .related {
    padding: 10px 0
}
/*NEW POLL*/
.top_newpoll .boxlink {
	display: inline-block;
	padding-left: 3.5rem;
	padding-right: 3.5rem;
}
.top_newpoll .boxphoto {
	float: left;
	margin-right: 2.8rem;
}
.top_newpoll .boxphoto + * {
	margin-top: 0;
}
.top_newpoll .boxphoto img {
	width: 39.9rem;
	height: auto;
}
/*EVENTS*/
.top_events {
	padding-left: -webkit-calc((100% - 110rem) / 2 );
	padding-left: calc((100% - 110rem) / 2 );
	padding-right: -webkit-calc((100% - 110rem) / 2 );
	padding-right: calc((100% - 110rem) / 2 );
}
.top_events > *:not(.events_ex) {
	margin-left: auto;
	margin-right: auto;
	max-width: 82.8rem;
}
.top_events > *:not(h1) {
	width: 94.182%;
}
.events_main {
	display: inline-block;
	margin-left: 2.909%;
	margin-right: 2.909%;
	padding-left: -webkit-calc((100% - 89.2rem) / 2 );
	padding-left: calc((100% - 89.2rem) / 2 );
	padding-right: -webkit-calc((100% - 89.2rem) / 2 );
	padding-right: calc((100% - 89.2rem) / 2 );
}
.events_main .boxphoto {
	float: right;
	margin-left: 2.8rem;
	width: 48.1884%;
	max-width: 39.9rem;
}
.calendar > * {
	display: table-cell!important;
	vertical-align: middle;
}
.calendar > div > span {
	box-sizing: content-box;
	display: block;
	margin-right: 1.4rem;
	width: 7.7rem;
	height: 7.7rem;
 	background-color: #002c33;
	border: 7px solid #002c33;
	border-radius: 5rem;
	color: #fff;
	font-family: "Roboto", "sans-serif";
	font-size: 1.2rem;
	line-height: 1.9rem!important;
	text-align: center;
}
.calendar > div > span > b {
	display: block;
	font-size: 1.4rem;
	font-weight: 700;
}
.calendar > div > span > strong {
	display: block;
	font-family: "Roboto", "sans-serif";
	font-size: 3.8rem;
	line-height: 3.9rem!important;
}
.calendar > h3 {
	display: block;
	font-family: "Roboto", "sans-serif";
	font-size: 2.4rem;
	line-height: 1.45833;
}
/*NEW POLL*/
.top_newpost > *:not(h1):not(a) {
	margin-left: auto;
	margin-right: auto;
	width: 94.182%;
	max-width: 82.8rem;
}
.sidephoto > .boxphoto {
	width: 24.8rem;
}
.sidephoto > *:not(.boxphoto) {
	margin-left: 27.6rem;
}
/*見出し*/
.toppage > section h1,
h1.title_type01 {
	padding-bottom: 2.8rem;
	font-size: 4.2rem;
	line-height: 1.3333;
}
.toppage > section h1::after,
h1.title_type01::after {
	bottom: 1.4rem;
}
.toppage > section h1::before,
h1.title_type01::before {
	bottom: 1.4rem;
}
.toppage > section > h2,
.title_type02,
.entry h2,
.entry h2 * {
	font-size: 2.8rem;
	line-height: 1.5;
}
.title_type04 {
	font-size: 2rem!important
}
.title_type05 {
	font-size: 1.8rem!important
}
.title_type06 {
	font-size: 2.8rem!important
}



/*=====================================
中面：リストページ／PC
=====================================*/
/*共通*/
.listpage {
	display: inherit;
	padding-bottom: 5.6rem;
}
.menu_accordion {
	margin-top: 0!important;
}
/*カテゴリートップ1Topics*/
.catrgorytop .boxlink {
	display: block;
	width: 93.4546%;
	margin-right: auto;
	margin-left: auto
}
.catrgorytop .boxlink > .boxphoto {
	float: left;
	width: 54.5454%;
	max-width: 60rem;
	margin-right: 2.8rem;
}
.catrgorytop .boxlink > .boxphoto.right {
	float: right;
	margin-right: 0;
	margin-left: 2.8rem;
}
.catrgorytop .boxlink > .boxphoto iframe {
	width: 100%;
    min-height: 36rem;
}
.catrgorytop .boxlink > h2 {
	font-size: 3.8rem;
	line-height: 1.2894;
}
.catrgorytop + .column {
	margin-top: 5.6rem;
}
/*ページバナー*/
.pagebanner {
    padding: 3rem;
    min-height: 13.9rem
}
.pagebanner h1 {
	font-size: 3.8rem;
}
/*テーマ・アーカイブス*/
.menu_accordion {
	min-height: 4.6rem;
	background-color: #002c33;
}
.menu_accordion .ac_content {
	position: relative;
}
.menu_accordion input {
	display: none;
}
.menu_accordion label {
	position: absolute;
	top: .9rem;
	display: inline-block;
	margin-right: 1.4rem;
	padding: 0 0;
	min-width: 12.9rem;
	border-top: 0;
	border-bottom: 0;
	border-radius: 1.4rem;
	text-align: center;
	transition: .3s all;
}
.menu_accordion label.ac_active {
	background-color: #fff;
	transition: .3s all;
}
.ac_theme {
	right: -webkit-calc((100% - 120rem) / 2 + 14.3rem);
	right: calc((100% - 120rem) / 2 + 14.3rem);
}
.ac_archives {
	right: -webkit-calc((100% - 120rem) / 2 );
	right: calc((100% - 120rem) / 2 );
}
.menu_accordion label::before,
.menu_accordion label.ac_active::before {
	display: none;
}
.menu_accordion .ac_cont {
	z-index: 3;
	overflow: hidden;
	position: absolute;
	top: 4.6rem;
	left: 0;
	padding-top: 0;
	padding-bottom: 0;
	padding-left: -webkit-calc((100% - 120rem) / 2 );
	padding-left: calc((100% - 120rem) / 2 );
	padding-right: -webkit-calc((100% - 120rem) / 2 );
	padding-right: calc((100% - 120rem) / 2 );
	height: 0;
	width: 100vw;
	background-color: #002c33;
}
.menu_accordion input:checked + .ac_cont {
	padding-top: 0;
	padding-bottom: 0;
	padding-left: -webkit-calc((100% - 120rem) / 2 );
	padding-left: calc((100% - 120rem) / 2 );
	padding-right: -webkit-calc((100% - 120rem) / 2 );
	padding-right: calc((100% - 120rem) / 2 );
	height: 0;
}
.menu_accordion label.ac_active + input + .ac_cont {
	padding-top: .7rem;
	padding-bottom: 2.8rem;
	padding-left: -webkit-calc((100% - 120rem) / 2 );
	padding-left: calc((100% - 120rem) / 2 );
	padding-right: -webkit-calc((100% - 120rem) / 2 );
	padding-right: calc((100% - 120rem) / 2 );
	height: auto;
}
.menu_accordion .ac_cont ul li {
	padding: .7rem 1.4rem;
	font-size: 1.6rem;
	line-height: 1.75;
}
.menu_accordion .ac_cont ul li a {
	color: #fff;
	text-decoration: none;
}
.menu_accordion .ac_cont ul li a:hover {
	color: #00a2bf;
}
.ac_cont + label {
	margin-top: 0;
}
/*ページ送り*/
.pager {
	font-size: 0;
	letter-spacing: 0;
	text-align: center;
}
.pager span,
.pager a {
	font-size: 1.4rem;
	line-height: 2.5;
}
.link_page {
	width: 3.5rem;
}
.link_page:hover {
	background-color: #008a3f;
	color: #fff;
}
.current_page {
	width: 3.5rem;
}
.link_before,
.link_next {
	font-size: 1.4rem;
	line-height: 2.5;
}
.link_before::before,
.link_next::before {
	top: 1.3rem;
}



/*=====================================
ページ内メニュー　2018.07
=====================================*/
/* ボタン */
.pagemenu ul {
	max-width: 118.6rem;
	font-size: 0;
	letter-spacing: 0;
}
.pagemenu ul li {
	width: 25%;
	padding: .35rem;
	font-size: 1.6rem;
}
.pagemenu ul li a {
	display: block;
	padding: .7rem 0;
}
.pagemenu ul li a:hover {
	background-color: #008a3f;
	color: #fff!important;
	transition: .3s all;
}
/*2020.07*/
.pagemenu.about ul li {
	width: 20%;
}

/*=====================================
EN追加
=====================================*/
img.photo2 {
	float: left;
	margin-right: 20px;
	margin-top:0px;
	padding:0px;
	border: 1px solid #CCCCCC;
}

/*=====================================
写真・リードありコンテンツ　2020.06
=====================================*/
.catrgorytop .boxlink > .boxphoto {
	-moz-box-ordinal-group: 4;
	-webkit-box-ordinal-group: 4;
	box-ordinal-group: 4
}

/*=====================================
1カラム写真ありコンテンツ用　2020.06
=====================================*/
.column1 h2 {
    margin-bottom: 2.8rem;
	font-size: 3.8rem;
	line-height: 1.2894;
}
.column1 h2 span {
	font-size: 1.4rem;
	line-height: 2;
}
.column1 > div.column1-inner {
    flex-direction: row;
    justify-content: space-between
}
.column1-inner > div.boxphoto {
    width: 54.5454%;
    max-width: 60rem;
}
.column1-inner > div.txt {
    display: flex;
    display: -webkit-flex;
    width: 40%;
    flex-direction: column;
    justify-content: flex-start
}
.column1-inner > div.txt a.normal_btn {
    min-width: 26.8rem;
    margin-left: 0;
    margin-right: 0
}
.column1-inner > div.txt > * + * {
    margin-top: 2.1rem
}
.entry .column1-inner > div.boxphoto {
    width: 40%;
}
.entry .column1-inner > div.txt {
    width: 55%;
}
/*=====================================
写真上レイヤーテキスト　2020.06
=====================================*/
.boxlink-top {
    position: relative;
    overflow: hidden;
    display: block;
    margin-bottom: 5.6rem;
    width: 100%;
}
.boxlink-top > div {
    z-index: 10;
    position: absolute;
    bottom: 0;
    display: flex;
    flex-direction: column;
    background-color: rgba(255,255,255,.8);
    padding: 1.4rem;
}
.boxlink-top.bk > div {
    background-color: rgba(0,0,0,.8);
}
.pagecont .boxlink-top > div {
    padding: 2.8rem;
}
.boxlink-top h2 {
    padding-left: 0;
    border-left: 0;
    font-size: 2.2rem;font-weight: bold;
    line-height: 1.45833
}
.boxlink-top.bk h2 {
    color: #fff;
}
.boxlink-top.bk:hover h2 {
	color: #00a2bf;
    transition: .3s all
}

body a.boxlink-top img {
    margin: auto;
    width: 100%;
}
.boxlink-top.bk p,
.boxlink-top.bk span.date {
    color: #fff
}
.boxlink-top p,
.boxlink-top:hover p {
    color: #111
}
.boxlink-top.bk:hover p {
    color: #fff
}

/*=====================================
年表　2021.09
=====================================*/
.timeline-table::before {
    left: 50%;
    width: 4px;
    margin-left: -2px
}
.timeline-table div {
    margin-left: 0!important;
    width: 50%
}
.timeline-table div.parallel {
    display: flex;
    width: 100%
}
.timeline-table div.tt-left {
    padding-left: 0;
    padding-right: 2rem;
    text-align: right
}
.timeline-table div.tt-right {
    transform: translateX(100%)
}
.timeline-table div.parallel div.tt-right {
    transform: translateX(0)
}
.timeline-table div.tt-left::before {
    top: .8rem;
    left: 100%;
    margin-left: -8px;
    width: .8rem;
    height: .8rem;
    border: 4px solid #d9d9d9
}
.timeline-table div.tt-right::before {
    top: .8rem;
    left: -8px;
    width: .8rem;
    height: .8rem;
    border: 4px solid #008a3f
}
.timeline-table div date {
    font-size: 1.6rem
}
.timeline-table div .tag {
    display: none
}
/*協力者*/
.messageBox img {
    display: inline-block;
    width: 25%;
    margin-left: auto;
    margin-right: auto;
}
.messageBox h2 {
    margin-top: 0!important
}

}



/*=====================================

メニュー調整／PC

=====================================*/
@media screen and (min-width: 415px) and (max-width: 768px) {
footer > div {
	text-align: center;
}
ul.footer_submenu li,
ul.footer_menu li {
	width: auto;
}
}
@media screen and (min-width: 769px) and (max-width: 849px) {
header {
	padding-top: 3.6rem;
}
.genron_logo {
	padding-left: 5.2rem;
	background-size: 4.2rem auto;
	height: 4.2rem;
	font-size: 2.2rem;
	line-height: 3rem;
}
.genron_logo > span {
	font-size: .8rem;
	line-height: .8rem;
	letter-spacing: -.02rem;
}
header > ul li {
	margin-left: .7rem;
	margin-right: .7rem;
}
header > ul li a.mini_btn {
	margin-left: -.7rem;
	padding-left: .7rem;
	padding-right: .7rem;
	min-width: auto;
}
footer ul li {
	margin-left: 1.4rem;
}
}
@media screen and (min-width: 850px) and (max-width: 1048px) {
header {
	padding-top: 3.6rem;
}
header > ul li {
	margin-left: .7rem;
	margin-right: .7rem;
}
header > ul li a.mini_btn {
	margin-left: -.7rem;
	min-width: auto;
}
footer ul li {
	margin-left: 1.4rem;
}
}
@media screen and (min-width: 769px) and (max-width: 1199px) {
.ac_theme {
	right: 14.3rem;
}
.ac_archives {
	right: 0;
}

/*=====================================
SNS誘導　2024.03
=====================================*/
p.catch {
	font-size: 1.6rem
}
.cont-sns {
	display: flex;
}
.cont-sns img {
	width: 50px;
	aspect-ratio: 1/1
}
.cont-sns a img {
	opacity: 1;
	transition: .3s
}
.cont-sns a:hover img {
	opacity: .7
}
}

/*add 190508 */
.ki {
	display: block;
	color: #6c4b00;
	border-top: 1px solid #FEF6D8;
	border-bottom: 1px solid #FEF6D8;
	background: #fefae7;
	line-height: 160%;
	margin-top: 15px;
	margin-right: 0;
	margin-bottom: 40px;
	margin-left: 0;
	padding-top: 10px;
	padding-right: 10px;
	padding-bottom: 10px;
	padding-left: 15px;
}
.green-link {
	clear: both;
	display: block;
	margin-top: 10px;
	padding-left: 16px;
	margin-bottom: 8px;
	background-image: url(/site_img/arrow_blue.gif);
	background-repeat: no-repeat;
	background-position: 4px 12px;
}


/*=====================================
add 19101  詳細画面に飛ばすボタン
=====================================*/
div.fancy_button {
	float: left;
	border-width: 1px;
	border-style: solid;
	border-color: transparent transparent #666 transparent;
	border-color: transparent transparent rgba(202,202,202,0.27) transparent;
	-webkit-border-radius: 11px; -moz-border-radius: 11px; border-radius: 511px;
	-webkit-background-clip: padding-box;
}

div.fancy_button a {
	background: #555;
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.4)), to(rgba(77,77,77,0.4)));
	background: -moz-linear-gradient(top, rgba(0,0,0,0.4), rgba(77,77,77,0.4));
	float: left;
	padding: 2px;
	text-decoration: none;
	outline: 0;
	-webkit-border-radius: 10px; -moz-border-radius: 10px; border-radius: 10px;
	-webkit-background-clip: padding-box;
	margin-left:auto;margin-right:auto;
	width:21em;
}

div.fancy_button a span {
	display: block;
	letter-spacing: -1px;
	border-width: 1px;
	border-style: solid;
	border-color: #ccc #444 #111 #444;
	border-color: rgba(255,255,255,0.7) rgba(0,0,0,0.3) rgba(0,0,0,0.6) rgba(0,0,0,0.3);
	font: bold 21px/1em Arial;
	color: white;
	padding: 0.48em 2em;
	text-shadow: rgba(0,0,0,0.45) 0 -1px 0;
	-webkit-box-shadow: rgba(0,0,0,0.75) 0px 0px 3px; -moz-box-shadow: rgba(0,0,0,0.75) 0px 0px 3px; box-shadow: rgba(0,0,0,0.75) 0px 0px 3px;
	-webkit-border-radius: 7px; -moz-border-radius: 7px; border-radius: 7px;
	background: transparent -webkit-gradient(linear, left top, left bottom, from(rgba(255,255,255,0.6)), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.5, rgba(255,255,255,0.01)), to(transparent));
	background: transparent -moz-linear-gradient(top, rgba(255,255,255,0.6), rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.01) 50%, transparent);
	filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#80FFFFFF', endColorstr='#00FFFFFF');
  -webkit-background-clip: padding-box;
}

div.fancy_button a:hover span {
	border-top-color: rgba(255,255,255,0.65);
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(220,220,220,0.6)), color-stop(0.5, rgba(100,100,100,0.2)), color-stop(0.5, rgba(0,0,0,0.21)), to(rgba(0, 0, 0, 0.20)));
	background: -moz-linear-gradient(top, rgba(220,220,220,0.6), rgba(100,100,100,0.2) 50%, rgba(0,0,0,0.21) 50%, rgba(0, 0, 0, 0.20));
	filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#99dcdcdc', endColorstr='#33000000');
	-webkit-background-clip: padding-box;
}

div.fancy_button a:active span {
	border-top-color: rgba(255,255,255,0.2);
	border-left-color: rgba(0,0,0,0.4);
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(150,150,150,0.6)), color-stop(0.5, rgba(60,60,60,0.6)), color-stop(0.5, rgba(40,40,40,0.6)), to(rgba(20, 20, 20, 0.5)));
	background: -moz-linear-gradient(top, rgba(150,150,150,0.6), rgba(60,60,60,0.6) 50%, rgba(40,40,40,0.6) 50%, rgba(20, 20, 20, 0.5));
	filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#80969696', endColorstr='#59000000');
	-webkit-box-shadow: inset 0 0 18px rgba(0,0,0,0.75), rgba(0,0,0,0.75) 0px 0px 3px; -moz-box-shadow: inset 0 0 18px rgba(0,0,0,0.75), rgba(0,0,0,0.75) 0px 0px 3px; box-shadow: inset 0 0 18px rgba(0,0,0,0.75), rgba(0,0,0,0.75) 0px 0px 3px;
	-webkit-background-clip: padding-box;
}

div.fancy_button a span:active {
	border-top-color: rgba(255,255,255,0.2);
	border-left-color: rgba(0,0,0,0.4);
	filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#80969696', endColorstr='#59000000');
}
#donation3 input {
	display: block;
	letter-spacing: -1px;
	border-width: 1px;
	border-style: solid;
	border-color: #ccc #444 #111 #444;
	border-color: rgba(255,255,255,0.7) rgba(0,0,0,0.3) rgba(0,0,0,0.6) rgba(0,0,0,0.3);
	font: bold 21px/1em Arial;
	color: #FFFFFF;
	padding: 0.48em 2em;
	text-shadow: rgba(0,0,0,0.45) 0 -1px 0;
	-webkit-box-shadow: rgba(0,0,0,0.75) 0px 0px 3px;
	-moz-box-shadow: rgba(0,0,0,0.75) 0px 0px 3px;
	box-shadow: rgba(0,0,0,0.75) 0px 0px 3px;
	-webkit-border-radius: 7px;
	-moz-border-radius: 7px;
	border-radius: 7px;
	background: transparent -webkit-gradient(linear, left top, left bottom, from(rgba(255,255,255,0.6)), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.5, rgba(255,255,255,0.01)), to(transparent));
	background: transparent -moz-linear-gradient(top, rgba(255,255,255,0.6), rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.01) 50%, transparent);
	filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#80FFFFFF', endColorstr='#00FFFFFF');
	-webkit-background-clip: padding-box;
	background-color: #008000;
}

#donation3 input:hover{
	border-top-color: rgba(255,255,255,0.65);
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(220,220,220,0.6)), color-stop(0.5, rgba(100,100,100,0.2)), color-stop(0.5, rgba(0,0,0,0.21)), to(rgba(0, 0, 0, 0.20)));
	background: -moz-linear-gradient(top, rgba(220,220,220,0.6), rgba(100,100,100,0.2) 50%, rgba(0,0,0,0.21) 50%, rgba(0, 0, 0, 0.20));
	filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#99dcdcdc', endColorstr='#33000000');
	-webkit-background-clip: padding-box;
	background-color: #009900;
}

#donation3 input:active{
	border-top-color: rgba(255,255,255,0.2);
	border-left-color: rgba(0,0,0,0.4);
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(150,150,150,0.6)), color-stop(0.5, rgba(60,60,60,0.6)), color-stop(0.5, rgba(40,40,40,0.6)), to(rgba(20, 20, 20, 0.5)));
	background: -moz-linear-gradient(top, rgba(150,150,150,0.6), rgba(60,60,60,0.6) 50%, rgba(40,40,40,0.6) 50%, rgba(20, 20, 20, 0.5));
	filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#80969696', endColorstr='#59000000');
	-webkit-box-shadow: inset 0 0 18px rgba(0,0,0,0.75), rgba(0,0,0,0.75) 0px 0px 3px;
	-moz-box-shadow: inset 0 0 18px rgba(0,0,0,0.75), rgba(0,0,0,0.75) 0px 0px 3px;
	box-shadow: inset 0 0 18px rgba(0,0,0,0.75), rgba(0,0,0,0.75) 0px 0px 3px;
	-webkit-background-clip: padding-box;
	background-color: #003300;
}
/*add20200729 enatural*/
.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  margin-left: auto;
  margin-right: auto;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}