@charset "utf-8";


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

all

============================================= */
* {
	font-style: normal;
}

html {
	font-size: 6.25%;
	box-sizing: border-box;
	-ms-text-size-adjust: 100%;  /* IE on Windows Phone用 */
  	-webkit-text-size-adjust: 100%;  /* iOS用 */
}
body {
	font-size: 18rem;
 	font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
 	color: #2A313A;
	line-height:1.8;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	min-width: 350px;
	width: 100%;
	min-height: 100vh;
}
img {
  max-width: 100%;
  object-fit: cover;
  vertical-align: bottom;
  }
@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, .group img { 
	vertical-align: middle;
    width: 100px;
	} /* IE11 */
}

/*link*/
a{
	color: #000D99;
}
a:a:visited{
	color: #8E24AA;
}
a:hover{
	color: #CC3434;
}
a[href^="http"]{
	padding: 0 20px 0 0;
    background: url("/img/common/ico_blank.png") no-repeat 100% 50%;
	background-size: 14px;
}

.pdf a{
    text-decoration: none;
	position: relative;
  	display: inline-block;
  	padding-left: 16px;
}
.pdf a span::before{
    content: '';
	width: 6px;
	height: 6px;
	border: 0px;
	border-top: solid 2px #0E9425;
	border-right: solid 2px #0E9425;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -4px;
}
.mokuyoPage .pdf a span::before{
	border-top: solid 2px #287AD9;
	border-right: solid 2px #287AD9;
}
.mokuyoPage .infoDesignB p.pdf{
	margin-bottom: 0;
}
.pdf a span::after {
	content:"";
    display: inline-block;
    width: 20px;
    height: 22px;
    padding: 2px 0;
	background: url("/img/common/ico_pdf.png") no-repeat;
	background-size: 22px;
	vertical-align: middle;
}

.docLink{
	margin-top: 10px;
}

.moreLink{
	text-align: right;
}
.backLink{
    margin-top: 40px;
}
.moreLink a,
.backLink a{
    text-decoration: none;
	position: relative;
  	display: inline-block;
  	padding: 0 12px;
}
.moreLink a::after{
    content: '';
	width: 6px;
	height: 6px;
	border: 0px;
	border-top: solid 1.4px #000D99;
	border-right: solid 1.4px #000D99;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 2px;
	margin-top: -4px;
}
.moreLink a:hover::after,
.backLink a:hover::after{
	border-top: solid 1.4px #CC3434;
	border-right: solid 1.4px #CC3434;
}
.backLink a::after{
    content: '';
	width: 6px;
	height: 6px;
	border: 0px;
	border-top: solid 1.4px #000D99;
	border-right: solid 1.4px #000D99;
	-ms-transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
	position: absolute;
	top: 50%;
	left: 2px;
	margin-top: -4px;
}

.txOrange{
	color: #E8490D;
}
.txGreen{
	color: #0E9425;
}
.txCenter{
	text-align: center;
}
.txRight{
	text-align: right;
}
.txLeft{
	text-align: left;
}
.txBold{
	font-weight: 700;
}
.mb0{
	margin-bottom: 0;
}
.mb10{
	margin-bottom: 10px;
}
.mb20{
	margin-bottom: 20px;
}
.mb30{
	margin-bottom: 30px;
}
.mb40{
	margin-bottom: 40px;
}
.mt0{
	margin-top: 0;
}
.mt10{
	margin-top: 10px;
}
.mt20{
	margin-top: 20px;
}
.mt30{
	margin-top: 30px;
}
.mt40{
	margin-top: 40px;
}
input:hover{
	cursor:pointer;
}
.br-sp {
    display: none;
}
.pc{
	display: block;
}
.sp{
	display: none;
}
 
@media (max-width: 600px) {
    .br-sp {
        display: block;
    }
	.pc{
	display: none;
}
	.sp{
	display: block;
}
}

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

header

============================================= */
header{
	width: 100%;
	border-top: 3px solid  #0E9425;
	position: fixed ;
	z-index: 9999;
}
header #headerTitle{
	font-size: 25rem;
	font-weight: bold;
	padding: 15px 0 ;
	border-bottom: 1px solid #2A313A;
	background-color: #FFFFFF;
}

header #headerTitle a{
	text-decoration: none;
	color: #2a313a;
}
.no_gNavi .gloNav{
	display: none;
}
#gNavi{
	background: #048056;
	background: -moz-linear-gradient( #0B9710 0%, #048056 100%);
	background: -webkit-gradient(linear, left top, left bottom, from(#0B9710), to(#048056));
	background: -webkit-linear-gradient( #0B9710 0%, #048056 100%);
	background: -o-linear-gradient( #0B9710 0%, #048056 100%);
	background: linear-gradient( #0B9710 0%, #048056 100%);
	font-weight:700;
	box-shadow: 0px 2px 4px -3px #777777;
}
#gNavi > ul{
	display: flex;
	display: -webkit-flex;
	margin: 0 auto;
	justify-content: center;
}
#gNavi > ul > li{
	position: relative;
	display: table-cell;
	display: inline-block;
    line-height: 1;
	border-right: 1px solid #81C785;
	background: #048056;
	background: -moz-linear-gradient( #0B9710 0%, #048056 100%);
	background: -webkit-gradient(linear, left top, left bottom, from(#0B9710), to(#048056));
	background: -webkit-linear-gradient( #0B9710 0%, #048056 100%);
	background: -o-linear-gradient( #0B9710 0%, #048056 100%);
	background: linear-gradient( #0B9710 0%, #048056 100%);
}
/*2階層目以降は横並びにしない*/
#gNavi ul ul{
    display: block;
	transition: .25s;
}
#gNavi > ul > li > a{
	width: 170px;
	color: #FFFFFF;
	text-decoration: none;
	display: inline-block;
	text-align: center;
	padding: 52px 0 16px;
	font-size: 20rem;
}
#gNavi > ul > li:first-of-type{
	border-left: 1px solid #81C785;
}
#gNavi > ul > li > a:hover{
	color: #0E9425;
	background-color: #E8F8C5;
	transition: .25s;
}
#gNavi > ul .has-child ul li a{
	display: block;
	text-decoration: none;
	color: #2A313A;
	padding: 10px 20px 12px;
	text-align: left;
}
#gNavi > ul .has-child ul li a:hover{
	transition: .25s;
	color: #E8490D;
}
#gNavi li.has-child ul{
    /*絶対配置で位置を指定*/
  padding: 9px;
  position: absolute;
  left:-1px;
  top:87px;
  z-index: 4;
  border: 1px solid #0E9425;
    /*形状を指定*/
  background:#ffffff;
  width:152px;
    /*はじめは非表示*/
  visibility: hidden;
  opacity: 0;
}
/*hoverしたら表示*/
#gNavi li.has-child:hover > ul,
#gNavi li.has-child ul li:hover > ul,
#gNavi li.has-child:active > ul,
#gNavi li.has-child ul li:active > ul{
  visibility: visible;
  opacity: 1;
}
/*共通矢印ボタン*/
.arrowBtn1,
.arrowBtn2{
  position: relative;
  display: inline-block;
  color: #333;
  text-decoration: none;
}
.arrowBtn1:before ,
.arrowBtn2:before {
  content: '';
  background: #2A313A;
  border-radius: 50%;
  position: absolute;
  top: 50%;
}
.arrowBtn1::after,
.arrowBtn2::after {
  content: '';
  border: 0;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute;
  top: 50%;
  transform: rotate(45deg);
}
.arrowBtn1:hover::before,
.arrowBtn2:hover::before {
  background: #E8490D;
  transition: .25s;
}
/*第一階層矢印ボタン*/
.arrowBtn1:before {
  width: 22px;
  height: 22px;
  right: 20px;
  margin-top: -10px;
}
.arrowBtn1::after {
  width: 7px;
  height: 7px;
  right: 28px;
  margin-top: -4px;
}
.mokuyo .arrowBtn1:hover::before {
  background: #0061D1;
}
/*第二階層矢印ボタン*/
.arrowBtn2:before {
  width: 15px;
  height: 15px;
  left: -3px;
  margin-top: -8px;
}
.arrowBtn2::after {
  width: 4px;
  height: 4px;
  left: 0;
  margin-top: -4px;
}
/*current*/
.current .arrowBtn1::before{
  display: none;
}
.current .arrowBtn1::after{
  display: none;
}
#gNavi > ul > .current > a{
	background-color: #E8F8C5;
}
#sideNavi .quyukai > ul > .current{
	background: #E8F8C5;
}
#gNavi > ul > .current a,
#sideNavi .quyukai > ul > .current a{
	color: #0E9425;
}

#sideNavi .quyukai > ul .has-child .current a{
	color: #E8490D;
}
#sideNavi .quyukai > ul .has-child .current .arrowBtn2::before{
	background: #E8490D;
}

/*ico*/
header .ico {
	background-position: center 10px;
}
#sideNavi .ico{
	background-position: 20px center;
}
.ico {
	background-repeat: no-repeat;
	background-size: 34px;
}
.ico.top {background-image: url('/img/common/ico_top.svg');}
.ico.about {background-image: url('/img/common/ico_about.svg');}
.ico.member {background-image: url('/img/common/ico_member.svg');}
.ico.schedule {background-image: url('/img/common/ico_schedule.svg');}
.ico.newsletter {background-image: url('/img/common/ico_newsletter.svg');}
.ico.club {background-image: url('/img/common/ico_club.svg');}
.ico.nx {background-image: url('/img/common/ico_nx.svg');}
.ico.info {background-image: url('/img/common/ico_info.svg');}
.ico.btnLogin {background-image: url('/img/common/ico_login.svg');}
.ico.downloadBtn {background-image: url('/img/common/ico_download.svg');}

.current .ico.top{background-image: url('/img/common/ico_top_on.svg');}
.current .ico.about {background-image: url('/img/common/ico_about_on.svg');}
.current .ico.member  {background-image: url('/img/common/ico_member_on.svg');}
.current .ico.schedule {background-image: url('/img/common/ico_schedule_on.svg');}
.current .ico.newsletter {background-image: url('/img/common/ico_newsletter_on.svg');}
.current .ico.club {background-image: url('/img/common/ico_club_on.svg');}
.current .ico.nx {background-image: url('/img/common/ico_nx_on.svg');}
.current .ico.info {background-image: url('/img/common/ico_info_on.svg');}

.ico.top:hover {background-image: url('/img/common/ico_top_on.svg');}
.ico.about:hover {background-image: url('/img/common/ico_about_on.svg');}
.ico.member:hover  {background-image: url('/img/common/ico_member_on.svg');}
.ico.schedule:hover  {background-image: url('/img/common/ico_schedule_on.svg');}
.ico.newsletter:hover  {background-image: url('/img/common/ico_newsletter_on.svg');}
.ico.club:hover  {background-image: url('/img/common/ico_club_on.svg');}
.ico.nx:hover  {background-image: url('/img/common/ico_nx_on.svg');}
.ico.info:hover  {background-image: url('/img/common/ico_info_on.svg');}
.ico.btnLogin:hover {background-image: url('/img/common/ico_login_on.svg');}
.ico.downloadBtn:hover {background-image: url('/img/common/ico_download_on.svg');}

/* ハンバーガーメニュー
===========================*/
@media screen and (min-width: 1201px) {
	.spMenu {
		display: none;
		}
	nav {
		display: block;
}
	#gNavi .top,#gNavi .mokuyo{
		display: none;
	}
	#gNavi .arrowBtn1::before,
	#gNavi .arrowBtn1::after{
		display: none;
	}
}
@media screen and (max-width: 1200px) {
	header .ico {
	background-position: 15px 10px;
}
	.gloNav{
		content: "";
		position: absolute;
		display: block;
		right: 15px;
		top: 10px;
	}
	#gNavi{
		height: 0;
	}
	#gNavi > ul > li:first-of-type {
    border-left: none;
}
	#gNavi > ul > li{
	border-right: none;
}
	#gNavi > ul > li a{
	width: 100%;
	padding: 15px 0 15px 70px;
	text-align: left;
}
	#gNavi > ul > li + li{
	border-top: 1px solid #81C785;
}
	#gNavi .mokuyo{
	background: #005DC8;
	background: -moz-linear-gradient( #008FC5 0%, #005DC8 100%);
	background: -webkit-gradient(linear, left top, left bottom, from(#008FC5), to(#005DC8));
	background: -webkit-linear-gradient( #008FC5 0%, #005DC8 100%);
	background: -o-linear-gradient( #008FC5 0%, #005DC8 100%);
	background: linear-gradient( #008FC5 0%, #005DC8 100%);
	}
	#gNavi .mokuyo a{
	padding: 15px;
}
	#gNavi .mokuyo a:hover{
	color: #0061D1;
	background: #ffffff;
}
	#gNavi .has-child ul{
		display: none;
	}
	.spMenu {
		display: block;
		z-index: 9999;
	}
	nav {
		position: fixed;
		margin-top: 61px;
		top: 0;
		right: -110vw;
		width: 100%;
		height: 100%;
		transition: .6s;
	}
.active nav {
		display: block;
		right: 0;
	}
	#gNavi ul {
		display: block;
	}
	nav ul li{
		width: 100%;
	}
	#menu li {
		margin-right: 0;
	}
	#menu li a {
		width: 100%;
		padding: 8px;
		margin-bottom: 8px;
	}
	#menu li a:before,
	#menu li a:before,
	#menu li a:after,
	#menu li a:after {
		border-bottom: none;
	}
#layer.sp-layer {
	display: block;
	-webkit-transition: .3s;
    transition: .3s;
	background-color: #000;
	opacity: 0.7;
	position: fixed;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	content: "";
	z-index: 100;
}
.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-trigger {
  position: relative;
  padding: 2px 16px;
  background: #E8490D;
  background: -moz-linear-gradient( #FF9D1D 0%, #E8490D 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(#FF9D1D), to(#E8490D));
  background: -webkit-linear-gradient( #FF9D1D 0%, #E8490D 100%);
  background: -o-linear-gradient( #FF9D1D 0%, #E8490D 100%);
  background: linear-gradient( #FF9D1D 0%, #E8490D 100%);
  border: 1px solid #707070;
  color: #ffffff;
  border-radius: 4px;  
  text-decoration: none;
  box-shadow: 0px 2px 4px -3px #777777;
}
.active .menu-trigger{
  background: #ffffff;
  border: 1px solid #E8490D;
}
.menu-trigger::after{
  content: "メニュー";
  font-weight: 700;
  color: #ffffff;
}
.active .menu-trigger::after{
  color: #E8490D;
}
.arrowBtn1:before {
  width: 25px;
  height: 25px;
  right: 90px;
  margin-top: -12px;
}
.arrowBtn1::after {
  width: 8px;
  height: 8px;
  right: 100px;
  margin-top: -4px;
}
.mokuyo.arrowBtn1:before {
  right: 20px;
}
.mokuyo.arrowBtn1::after {
  right: 30px;
}
.mokuyo.arrowBtn1:hover::before {
  background: #0061D1;
}
}

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

main

============================================= */
main{
	margin-top: 167px;
	margin-bottom: 90px;
}
.no_gNavi main{
	margin-top: 76px;
}
#contentsFlex{
	display: flex;
	display: -webkit-flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
/*loginBox*/
#loginBox{
	position: relative;
	background-image: url("../images/login_ph01.jpg");
	background-size: cover;
	background-position :center;
	height: 360px;
}
.mokuyoPage #loginBox{
	background-image: url("../images/login_ph02.jpg");
}
#loginBox form{
	width: 520px;
	margin: 0 auto;
	display: block;
	padding: 38px 0;
	border: 1px solid #989898;
	background-color: #FFFFFF;
	border-radius: 7px;
	text-align: center;
	position: absolute;
  	top: 50%;
  	left: 50%;
  	transform: translateY(-50%) translateX(-50%);
 	 -webkit- transform: translateY(-50%) translateX(-50%);
}
#loginBox form p{
	font-weight: bold;
	margin-bottom: 0;
}
#loginBox form .password{
	padding: 20px 0;
}
#loginBox form .password input{
	box-shadow:0px 2px 8px 0 #DCDCDC inset;
	width: 440px;
	border-radius: 7px;
	border: 1px solid #ABABAB;
	font-size: 16rem;
	padding: 10px;
}
#loginBox form .btnLogin{
	position: relative;
	width: 334px;
	margin-bottom: 10px;
	padding: 12px;
	background: #E8490D;
	background: -moz-linear-gradient( #FF9D1D 0%, #E8490D 100%);
	background: -webkit-gradient(linear, left top, left bottom, from(#FF9D1D), to(#E8490D));
	background: -webkit-linear-gradient( #FF9D1D 0%, #E8490D 100%);
	background: -o-linear-gradient( #FF9D1D 0%, #E8490D 100%);
	background: linear-gradient( #FF9D1D 0%, #E8490D 100%);
	border-radius: 7px;
	border: 1px solid #ABABAB;
	color: #FFFFFF;
	font-size: 18rem;
	font-weight: bold;
}
@media screen and (min-width: 861px){
	#loginBox form .btnLogin:hover{
		background: #ffffff;
		border: 1px solid #E8490D;
		color: #E8490D;
		transition: .4s;
	}
}


/*sideNavi*/
#sideNavi{
	width: 290px;
	font-weight:700;
	line-height: 1;
}
#sideNavi .quyukai,
#sideNavi .mokuyo{
	box-shadow: 0px 2px 4px -3px #777777;
}
#sideNavi .quyukai p{
	margin-bottom: 0;
	padding: 14px 0;
	background-color: #000000;
	color: #FFFFFF;
	padding-left: 20px;
	border-radius: 7px 7px 0 0;
}
#sideNavi .quyukai > ul{
	border: 1px solid #0E9425;
}
#sideNavi .quyukai > ul > li{
	background: #048056;
	background: -moz-linear-gradient( #0B9710 0%, #048056 100%);
	background: -webkit-gradient(linear, left top, left bottom, from(#0B9710), to(#048056));
	background: -webkit-linear-gradient( #0B9710 0%, #048056 100%);
	background: -o-linear-gradient( #0B9710 0%, #048056 100%);
	background: linear-gradient( #0B9710 0%, #048056 100%);
}
#sideNavi .quyukai li + li{
	margin-top: 1px;
}
#sideNavi .mokuyo a,
#sideNavi .quyukai > ul > li a{
	display: block;
	color: #FFFFFF;
	text-decoration: none;
	font-size: 20rem;
	padding: 13px 0;
}
#sideNavi .quyukai > ul > li a{
	padding-left: 70px;
}
#sideNavi .mokuyo a{
	padding-left: 20px;
	border-radius: 7px;
	border: 1px solid #ABABAB;
	margin-top: 15px;
	background: #005DC8;
	background: -moz-linear-gradient( #008FC5 0%, #005DC8 100%);
	background: -webkit-gradient(linear, left top, left bottom, from(#008FC5), to(#005DC8));
	background: -webkit-linear-gradient( #008FC5 0%, #005DC8 100%);
	background: -o-linear-gradient( #008FC5 0%, #005DC8 100%);
	background: linear-gradient( #008FC5 0%, #005DC8 100%);
}
#sideNavi .quyukai > ul > li > a:hover{
	color: #0E9425;
	background-color: #E8F8C5;
	transition: .25s;
}
#sideNavi .mokuyo a:hover{
	color: #0061D1;
	background: #ffffff;
	transition: .25s;
	border-radius: 7px;
	border: 1px solid #0061D1;
}
#sideNavi .quyukai > ul > li.has-child > ul{
	background: #ffffff;
	color: #E8490D;
	padding: 10px 0;
}
#sideNavi .quyukai > ul .has-child ul li a{
	display: block;
	color: #2A313A;
	padding: 7px 0 0 95px;
	font-size: 16rem;
}
#sideNavi .quyukai > ul .has-child ul li a:hover{
	color: #E8490D;
}
#sideNavi .quyukai > ul .has-child ul li .arrowBtn2::before {
 	left: 72px;
}
#sideNavi .quyukai > ul .has-child ul li .arrowBtn2::after {
 	left: 75px;
}
#sideNavi .quyukai > ul .has-child ul{
 	display: none;
}
#sideNavi .quyukai > ul .current.has-child ul{
	display: block;
}

/*topicPath*/
.topicPath{
	padding: 4px 0;
	background-color: #2A313A;
}
.topicPath ol{
	display: flex;
	display: -webkit-flex;
}
.topicPath li::after{
  content: ">";
  display: inline-block;
  padding: 0 10px; /*左右に余白*/
}
.topicPath li:last-child::after{
  display: none;
}
.topicPath li,
.topicPath li a{
	color: #FFFFFF;
	font-size: 16rem;
	text-decoration: none;
}
.topicPath li a{
	font-weight: bold;
}
.topicPath li a:hover{
	text-decoration: underline;
}

/*contents*/
.innerBox{
	padding: 0 10px;
}
.contents{
	padding-top: 50px;
}
.contentsBox{
	display: block;
	width: 1200px;
	margin: 0 auto;
}
.mainContents,
.no_sideNavi .mainContents{
	width: 860px;
}
.no_sideNavi .mainContents{
	margin: 0 auto;
}
.no_sideNavi #sideNavi{
	display: none;
}
@media screen and (min-width: 861px){
	#topPage #mainVisual{
		max-width: 1200px;
		display: block;
		margin: auto;
	}
}
@media screen and (min-width: 1201px){
	#topPage #mainVisual{
		padding-top: 12px;
	}
}
.MVimages{
	position: relative;
}
.MVcaption{
	padding-right: 15px;
	margin-top: -28px;
	position: relative;
	font-size: 16rem;
	bottom:0;
	text-align: right;
	color: #ffffff;
	z-index: 2;
	background: rgb(217,217,217);
    background: linear-gradient(90deg, rgba(217,217,217,0) 35%, rgba(42,49,58,0.8) 75%, rgba(42,49,58,0.8) 100%);
}
#mainVisual h1 {
    font-size: 24rem;
    color: #ffffff;
    text-align: center;
    letter-spacing: 0.4em;
}
.subPage #mainVisual{
    background: url("/images/index_h01.jpg") no-repeat center center;
	background-size: cover;
	padding: 62px 0;
}

h2{
	position: relative;
	margin-bottom: 20px;
	padding: 5px 0 2px 12px;
	background-color: #E8F8C5;
	border-bottom: 2px solid #707070;
	border-radius: 7px 7px 0 0;
	font-weight: bold;
}
h2:first-letter{
  color:#0E9425;
}
h2::before {
    content: "";
    position: absolute;
    display: block;
    width: 100px;
    height: 2px;
    background: #0E9425;
    left: 0;
    bottom: -2px;
}
h3{
	position: relative;
	margin-bottom: 20px;
	padding-left: 20px;
	background-image : linear-gradient(to right, #aaaaaa 2px, transparent 2px);
	background-size: 9px 2px;
	background-repeat: repeat-x;
	background-position: left bottom;
}
h3::before{
	content: "";
    position: absolute;
	top: 6px;
    left: 0;
    width: 10px;
    height: 18px;
    border-radius: 2px;
    background: #E8F8C5;
}
h4{
	position: relative;
	color: #0E9425;
	padding-left: 20px;
}
h4::before{
	content: "";
    position: absolute;
	top: 7px;
    left: 0;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 2px solid #0E9425;
}
h4::after{
    content: "";
    position: absolute;
    top: 11px;
    left: 4px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #0E9425;
}
p + h4{
	margin-top: 20px;
}
section + section{
	 margin-top: 50px;	
}
p{
	margin-bottom: 16px;
}
.innerImg{
	text-align: center;
	margin: 40px auto;
}
.flexContents{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
    flex-wrap: wrap;
	max-width: 840px;
	width: 100%;
}
.flexContents .box{
	margin-bottom: 40px;
	text-align: center;
}
 .flexContents .innerbox{
	width: 240px;
	margin: auto;
}
.flexContents .box h4{
	text-align: left;
}
/*downloadBtn*/
a.downloadBtn[href$=".pdf"]{
    display: inline-block;
	width: 240px;
	padding: 10px 0;
	position: relative;
  	padding-left: 0;
	text-align: center;
	text-decoration: none;
	background-color: #FC5110;
	border: 1px solid #707070;
	color: #FFFFFF;
	border-radius: 7px;
	font-weight: 700;
	box-shadow: 0px 2px 4px -3px #777777;
}
a.downloadBtn[href$=".pdf"]::before,
a.downloadBtn[href$=".pdf"]::after {
    display: none;
}
.ico.downloadBtn{
	background-position: right 40px center;
	background-size: 18px;
}
a.downloadBtn[href$=".pdf"]:hover{
	background-color: #ffffff;
	color: #FC5110;
	border: 1px solid #FC5110;
	-webkit-transform: translateY(4px);
  	transform: translateY(4px);
	box-shadow: none;
	transition: .25s;
}
.flexContents::after {
	display: block;
	content:"";
	width: 240px;
}
@media screen and (max-width: 860px){
	.flexContents{
		-webkit-justify-content: space-around;
		justify-content: space-around;
	}
	.flexContents::after {
	width: -webkit-calc(100% / 2 - 5px);
    width: calc(100% / 2 - 5px);
}
}
@media screen and (min-width: 600px)and (max-width: 860px){
	.flexContents .box{
		width: -webkit-calc(100% / 2 - 5px);
   		width: calc(100% / 2 - 5px);
	}
}	
@media screen and (max-width: 600px){
	.flexContents{
		flex-direction:column;
	}
	.flexContents .box{
		margin: auto;
		height: 550px;
	}
}


/*お知らせ欄（右ナビ有り）*/
.info-list{
  list-style: none outside;
  margin: 0;
  padding: 0;
}
.info-list .item .itemBox{
  position: relative;
  display: flex;
  display: -webkit-flex;
  flex-wrap: nowrap;
  padding: 7px 0;
  text-decoration: none;
}
.info-list .item .itemBox::after,
.list .item ul::after{
  content: "";
  background-image: linear-gradient(to right, #5B5B5B, #5B5B5B 1px, transparent 1px, transparent 3px);
  background-size: 3px 1px;
  background-repeat: repeat-x;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  pointer-events: none;
}
.info-list .item:first-of-type .itemBox::after,
.list .item:first-of-type ul::after{
  display: none;
}
.info-list .item .date{
  margin: 0;
  min-width: 100px;
  font-weight: bold;
  padding: 0 20px 0 0;
}
.info-list .item .itemBox .date{
}
.infoDesignA .info-list .item .date{
  color: #0E9425;
}
.infoDesignB .info-list .item .date{
  color: #287AD9;
}
@media screen and (max-width: 860px){
.info-list .item .itemBox{
  display:block;
}
.info-list .item .date{
  min-width: 100px;
}
.info-list .item .text{
  margin-top: 10px;
}
}

/*お知らせ欄（右ナビ無し*/
.list{
  list-style: none outside;
  margin: 0;
  padding: 0;
}
.list .item ul{
  position: relative;
  display: flex;
  display: -webkit-flex;
  flex-wrap: nowrap;
  padding: 7px 0;
  text-decoration: none;
}
.list .item .title{
  margin: 0;
  min-width: 100px;
  font-weight: bold;
  padding: 0 20px 0 0;
}
.list .item .itemBox .title{
}
.listDesignB .list .item .title{
  color: #287AD9;
}
.listDesignA .list .item .title{
  color: #0E9425;
}
@media screen and (max-width: 860px){
.list .item a{
  flex-wrap: wrap;
}
.list .item .title{
  min-width: 100px;
}
.list .item ul{
  display: block;	
}
.list .item ul .text{
  margin-top: 10px;	
}
}

/*table*/
table{
	width: 100%;
	border-collapse:  collapse;
}
table  th{
	background: #707070;
	color: #FFFFFF;
}
th,td {
   border: 1px solid #B8B8B8;
   padding: 4px 10px
}
tbody tr{
	text-align: center;
}
tbody tr:nth-of-type(even) {
    background: #F5F8F4;
}
.tableTypeA tbody tr td:first-of-type,
.tableTypeA tbody tr td:nth-of-type(4n),
.tableTypeB tbody tr td:first-of-type,
.tableTypeB tbody tr td:nth-of-type(4n),
.tableTypeC tbody tr td:last-of-type
{
	text-align: left;
}
.tableTypeB tbody tr td:first-of-type,
.tableTypeC tbody tr td:first-of-type{
	background-color: #F8FDED;
}
.tableTypeB tbody tr:nth-of-type(2n) td:first-of-type,
.tableTypeC tbody tr:nth-of-type(2n) td:first-of-type{
	background-color: #EEF6E2;
}
@media screen and (max-width: 800px){
	.tableTypeA colgroup,
	.tableTypeB colgroup,
	.tableTypeC colgroup{
	display: none;
	}
	.tableTypeA table,
	.tableTypeB table,
	.tableTypeC table{
	width: 100%;
	border-collapse:  collapse;
	}
	.tableTypeA thead, 
	.tableTypeB thead, 
	.tableTypeC thead {
	display: none;
	}
	.tableTypeA tr,
	.tableTypeB tr,
	.tableTypeC tr{
	display: block;
	margin-bottom: 12px;
	border-right: 1px solid #B8B8B8;
	border-left: 1px solid #B8B8B8;
	}
	.tableTypeA td,
	.tableTypeB td,
	.tableTypeC td{
	display: block;
	text-align: left;
	border: 0;
	}
	.tableTypeA td + td,
	.tableTypeB td + td,
	.tableTypeC td + td{
	border-bottom: 1px solid #B8B8B8;
	}
	.tableTypeC td{
	border-top: 1px solid #B8B8B8;
	}
	.tableTypeA tbody tr td:first-of-type,
	.tableTypeB tbody tr td:first-of-type,
	.tableTypeB tbody tr:nth-of-type(2n) td:first-of-type{
	background: #707070;
	color: #FFFFFF;
	text-align: center;
	}
	.tableTypeC tbody tr td:first-of-type{
	text-align: center;
	}
	.tableTypeB tbody td:nth-of-type(3){
    padding-left: 64px;
	}
	.tableTypeB tbody td:nth-of-type(4){
    padding-left: 100px;
	}
	.tableTypeA tbody td:before,
	.tableTypeB tbody td:before{
    color: #707070;
	}
	.tableTypeA tbody td:nth-of-type(2):before {
    content: "享年：";
	}
	.tableTypeA tbody td:nth-of-type(3):before {
    content: "地区：";
	}
	.tableTypeA tbody td:nth-of-type(4):before {
    content: "命日：";
	}
	.tableTypeA tbody td:nth-of-type(5):before {
    content: "その他：";
	}
	.tableTypeB tbody td:nth-of-type(2):before {
    content: "曜日：";
	}
	.tableTypeB tbody td:nth-of-type(3):before {
    content: "時間：";
	margin-left: -54px;
	}
	.tableTypeB tbody td:nth-of-type(4):before {
    content: "行事内容：";
	margin-left: -90px;
	}
}
/*group*/
.listNumber{
	display: flex;
	display: -webkit-flex;
	width: 550px;
	margin-bottom: 30px;
	justify-content: space-between;
}
.listNumber .current a{
	text-decoration: none;
	color: #2a313a;
	font-weight: 700;
	pointer-events: none;
}
.group{
	margin-bottom: 40px;
}
.group .tableArea td:first-of-type{
	width: 100px;	
}
.group .tableArea td:last-child{
	text-align: left;	
}
.group td{
	padding: 10px;
}
.group img{
	vertical-align: middle;
	min-width: 100px;
}
.group td:nth-child(2){
	width: 20%;
}
.group td:last-child{
	width: 40%;
}

/*greenBox*/
.greenBox {
    border: 4px solid #E8F8C5;
    border-radius: 7px;
    padding: 14px;
    margin-top: 20px;
}

/*linkBtn*/
.linkBtn ul{
	display:  -webkit-flex;
	display: flex;
}
.linkBtn ul .item {
	width: 200px;
	text-align: center;
	display:  -webkit-flex;
	display: flex;
}
.linkBtn ul .item +.item {
	margin-left: 20px;
}
.linkBtn ul .item a{
	display: block;
	border-radius: 7px;
	padding: 12px;
	background-color: #0E9425;
	border: 1px solid #707070;
	color: #FFFFFF;
	text-decoration: none;
	box-shadow: 0px 4px 4px -3px #707070;
}
.linkBtn ul .item a .title{
	font-weight: bold;
	font-size: 20rem;
	position: relative;
  	display: inline-block;
	padding-right: 20px;
}
.linkBtn ul .item a .title::after{
    content: '';
	width: 8px;
	height: 8px;
	border: 0px;
	border-top: solid 2px #ffffff;
	border-right: solid 2px #ffffff;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 2px;
	margin-top: -4px;
}
.linkBtn ul .item a:hover .title::after{
	border-top: solid 2px #0E9425;
	border-right: solid 2px #0E9425;
}
.linkBtn ul .item a .title + p{
	text-align: left;
}
.linkBtn ul .item a:hover{
	box-shadow:none;
	background-color: #E8F8C5;
	color: #0E9425;
	transition: .2s;
	-webkit-transform: translateY(4px);
  	transform: translateY(4px);
}
@media screen and (max-width: 860px){
	.linkBtn{
	padding: 0 15px;
}
}
.group .attention{
		display: none;
		font-size: 16rem;
	}


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

footer

============================================= */
footer{
	margin-top: auto;
	padding: 30px 15px;
	color: #FFFFFF;
	background-color: #2A313A;
	font-size: 16rem;
	text-align: center;
}
footer .footerTitle{
	font-size: 15rem;
}
footer .footerTitle .mokuyo{
	display: none;
}
.mokuyoPage footer .footerTitle .qu{
	display: none;
}
.mokuyoPage footer .footerTitle .mokuyo{
	display: block;
}

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

mokuyo

============================================= */
.mokuyoPage #mainVisual{
    background: url("/images/index_h02.jpg") no-repeat center center;
	background-size: cover;
	padding: 62px 0;
}
.mokuyoPage header{
	border-top: 3px solid #287AD9;
}
.mokuyoPage h2{
	background-color: #E5F1FF;
}
.mokuyoPage h2:first-letter{
  color:#287AD9;
}
.mokuyoPage h2::before {
    background: #287AD9;
}
.mokuyoPage h3::before{
    background: #E5F1FF;
}
.mokuyoPage h4::before{
    border: 2px solid #287AD9;
}
.mokuyoPage h4::after{
    background-color: #287AD9;
}

@media screen and (max-width: 1200px){
	#sideNavi{
		display: none;
	}
	header #headerTitle{
		border-bottom: 1px solid #EEEEEE;
		padding: 8px 15px;
		font-size: 23rem;
	}
	.no_gNavi main,main {
		margin-top: 60px;
	}
	.mainContents {
		width: 860px;
		display: block;
		margin: auto;
	}
	.contentsBox{
		width: 100%;
	}
	.topicPath{
		padding: 4px 15px;
	}
}
@media screen and (max-width: 860px){
	img {
		max-width: 100%;
  	}
	.no_gNavi header{
		text-align: center;
	}
	.mainContents,
	.no_sideNavi .mainContents{
		width: 100%;
	}
	.contents {
    padding-top: 15px;
	}
	.innerBox {
		padding: 0 15px;
	}
	h1{
		padding: 0 15px;
	}
	h2{
		padding: 14px 15px;
		border-radius: 0;
		font-size: 20rem;
	}
	#loginBox  .loginContents {
	background-color:rgba(255,255,255,0.6);
	height: 100%;
	}
	#loginBox form{
	width: 100%;
	border-radius: 0;
	border: none;
	background-color: transparent;
	padding: 0;
	}
	
	#loginBox form .password input {
    width: 90%;
	}
	#loginBox form .btnLogin{
	width: 70%;	
	}
	.topicPath ol {
	 display:block;
	 overflow-x: auto;
	 overflow-y: hidden;
	 -webkit-overflow-scrolling: touch;
	 overflow-scrolling: touch;
	 overflow: auto;
	 white-space: nowrap;
	}
	.topicPath li {
	 display:inline;
	 flex: 0 0 20%;
	}
	.group > div {
    white-space: nowrap;
	overflow: scroll;
	}
	.group > div::-webkit-scrollbar { 
	  height: 18px; 
	}
	.group > div::-webkit-scrollbar-track { 
	  background: #eee; 
	  border-radius: 4px; 
	} 
	.group > div::-webkit-scrollbar-thumb { 
	  border-radius: 4px; background: #0E9425; 
	}
	.group .attention{
		display: block;
	}
}
@media screen and (max-width: 600px){
	.listNumber{
	 width: 100%;
	}
}