@charset "utf-8";

/*---------------------------

	basic custom

---------------------------*/

footer{
	margin-top: 0;
}


/*---------------------------

	Top page layout

---------------------------*/

/* Map script */
.js-map-tab:not(.js-map-tab--is-active){
	display: none;
}

/* Map Wrapper */
@media (min-width: 769px){
	.map{
		position: relative;
		z-index: 0;
	}
	.map-japan{
		position: relative;
		z-index: 0;
	}
	.map-japan__data{
		width: 100%;
	}
}
@media (max-width: 768px){
	.map-japan__data{
		display: none;
	}
}


/* Area */
.map-area__label{
	cursor: pointer;
}
.map-area__check{
	display: none;
}
.map-area__button{
	font-weight: bold;
	text-align: center;
	
	display: block;
	box-sizing: border-box;
	padding: .5em 1em;

	color: #E05D45;
	border: 1px solid;
}
.map-area__button:hover,
.map-area__check:checked ~ .map-area__button{
	color: #fff !important;
	background-color: #E05D45;
	border-color: transparent;
}
@media (min-width: 769px){
	.map-area{}
	.map-area__list{
		position: absolute;
		transform: translate(-50%, -50%);
	}
	.map-area__list--hokkaido	{ left: 70%;	top:  9%; }
	.map-area__list--tohoku		{ left: 86%;	top: 52%; }
	.map-area__list--kanto		{ left: 75%;	top: 79%; }
	.map-area__list--chubu		{ left: 50%;	top: 52%; }
	.map-area__list--kinki		{ left: 48%;	top: 91%; }
	.map-area__list--chugoku	{ left: 30%;	top: 60%; }
	.map-area__list--shikoku	{ left: 30%;	top: 91%; }
	.map-area__list--kyushu		{ left:  9%;	top: 67%; }
}
@media (max-width: 768px){
	.map-area{
		display: flex;
		flex-wrap: wrap;
		
		margin-left: -1em;
		margin-bottom: -1em;
	}
	.map-area__list{
		flex: 0 0 auto;
		width: calc(50% - 1em);
		
		margin-left: 1em;
		margin-bottom: 1em;
	}
}



/* News */
@media (min-width: 769px){
	.map-news{
		position: absolute;
		top:	 6%;
		left:	 0%;
		right:	50%;
		
		padding: 1em;
		
		border: 3px solid #fff;
		outline: 2px solid #D3B572;
		background-color: #F6F0E3;
	}
	.map-news__title{
		line-height: 1.33;
		font-size: 1.5em;
		
		margin-top: .416em;
		margin-bottom: .416em;
	}
	.map-news-list{}
	.map-news-list__item{}
	.map-news-list__more{
		display: block;
		box-sizing: border-box;
		color: inherit !important;
	}
	.map-news-list__more:hover{
		color: inherit !important;
		text-decoration: underline;
	}
	.map-news-list__more:hover .type{
		color: #fff !important;
	}
	.map-news-list__date{
		font-size: .875em;
		font-weight: bold;
		margin-bottom: .5em;
	}
	.map-news-grid{
		display: flex;
	}
	.map-news-grid__category{
		margin-right: 1em;
	}
	.map-news-grid__title{
		margin-top: .25em;
	}
}
@media (max-width: 768px){
	.map-news{
		display: none;
	}
}


/* News List */
.bg2 {
	background: url(../tokyo/_pack/img/cmn_bg_01.jpg);
	padding-top: 4em;
	padding-bottom: 6em;
}

@media screen and (min-width: 769px){
	.g-main nav ul {
		width: 1000px;
		margin: 0 auto;
	}
    .g-main nav ul::after {
		content: '';
		display: table;
		clear: both;
	}
	.g-main nav ul li {
		float: left;
		width: 450px;
		margin: 0 15px;
	}
	.g-main nav ul li figure figcaption {
		font-size: 1.3rem;
		line-height: 2;
		margin: 10px 0 0;
	}
	.g-main nav ul li a {
		display: block;
		color: #000;
		text-decoration: none;
		text-align: center;
		width: 430px;
		background: #fff;
		border: solid 1px #ccc;
		margin: auto;
	}
	.g-main nav ul li a:hover {
		color: #fff !important;
		background: #e05d45 !important;
	}
	.g-main nav ul li a:hover span {
		color: #fff !important;
	}
	.g-main nav ul li a:hover span:after {
		color: #fff !important;
	}
	.g-main nav ul li a span {
		font-size: 1.5rem;
	}
	.g-main nav ul li a span:after {
		content: 'r';
		font-family: 'icon';
		margin: 0 0 0 8px;
	}
	
	.news{
		margin-top: 100px;
	}
	.news .v2-list {
		width: 1000px;
		margin: 50px auto 0;
		
		max-height: 500px;
		overflow: auto;
	}
	.news .v2-list ul li {
		display: flex;
		align-items: center;
		padding: 20px 0 15px;
		border-bottom: solid 1px #dedede;
	}

	.news .v2-list ul li section {
		display: flex;
		flex-grow: 1;
		align-items: center;
	}
	.news .v2-list ul li section small {
		display: block;
		font-size: 1.3rem;
	}
	.news .v2-list ul li section p {
		font-size: 1.5rem;
		line-height: 1.5;
		padding: 10px;
	}
	.news .v2-list ul li a {
		display: block;
		color: #000;
		text-decoration: none;
		text-align: center;
		width: 158px;
		line-height: 60px;
		background: #fff;
		border: solid 1px #ccc;
	}
	.news .v2-list ul li a:hover {
		color: #fff !important;
		background: #e05d45 !important;
	}
	.news .v2-list ul li a:hover span {
		color: #fff !important;
	}
	.news .v2-list ul li a:hover span:after {
		color: #fff !important;
	}
	.news .v2-list ul li a span {
		font-size: 1.5rem;
	}
	.news .v2-list ul li a span:after {
		content: 'r';
		font-family: 'icon';
		margin: 0 0 0 8px;
	}
	
	.news .v2-list small{
		font-weight: bold;
	}
}
	
.m-event,
.t-event{
	background-color: #E05E46;
	color: #fff;
	font-size: 0.825em;
}
.y-event{
	background-color: #293E69;
	color: #fff;
	font-size: 0.825em;
}

.mahoroba-event{
	background-color: #D2B573;
	color: #fff;
	font-size: 0.825em;
}

.related-temples{
	background-color: #296849;
	color: #fff;
	font-size: 0.825em;
}
span.m-event, .t-event, .y-event, .mahoroba-event, .related-temples {
	display: inline-block;
	width: 100px;
	padding: 5px 10px;
	text-align: center;
	/*margin-bottom: 1em;*/
}
	
@media screen and (max-width: 768px){
	.news nav{
		margin-top: 5em;
	}
	.news nav ul {
		text-align: center;
		width: 90%;
	}
	.news nav ul li {
		display: inline-block;
		margin: 0 0 1em 0;
	}
	.news nav ul li (:last-child) {
		margin-bottom: 0;
	}
	.g-main nav ul {
		margin: auto;
	}
    .g-main nav ul::after {
		content: '';
		display: table;
		clear: both;
	}
	.g-main nav ul li {
		float: left;
	}
	.g-main nav ul li figure fiEgcaption {
		font-size: 1.3rem;
		line-height: 2;
		margin: 10px 0 0;
	}
	.g-main nav ul li a {
		display: block;
		color: #000;
		text-decoration: none;
		text-align: center;
		width: 330px;
		background: #fff;
		border: solid 1px #ccc;
		line-height: 1em;
	}
	.g-main nav ul li a:hover {
		color: #fff !important;
		background: #e05d45 !important;
	}
	.g-main nav ul li a:hover span {
		color: #fff !important;
	}
	.g-main nav ul li a:hover span:after {
		color: #fff !important;
	}
	.g-main nav ul li a span {
		font-size: 1.5rem;
	}
	.g-main nav ul li a span:after {
		content: 'r';
		font-family: 'icon';
		margin: 0 0 0 8px;
	}
	
	.news .v2-list {
		margin: 50px auto 0;
		
		max-height: 50vh;
		overflow: auto;
	}
	.news .v2-list ul li {
		display: flex;
		align-items: center;
		padding: 20px 0 15px;
		border-bottom: solid 1px #dedede;
		justify-content:space-between;
	}

	.news .v2-list ul li section {
		margin:auto 1em;
	}
	.news .v2-list ul li section small {
		display: block;
		font-size: 0.9em;
		font-weight: bold;
		margin-bottom: 1em;
	}
	.news .v2-list ul li section p {
		line-height: 1.5;

	}
	.news .v2-list ul li a {
		display: flex;
		flex-flow: column;
		flex-basis: 120px;
		color: #000;
		text-decoration: none;
		text-align: center;
		line-height: 60px;
		background: #fff;
		border: solid 1px #ccc;
		margin-right: 1em;
		flex-shrink: 0;
	}
	.news .v2-list ul li a:hover {
		color: #fff !important;
		background: #e05d45 !important;
	}
	.news .v2-list ul li a:hover span {
		color: #fff !important;
	}
	.news .v2-list ul li a:hover span:after {
		color: #fff !important;
	}
	.news .v2-list ul li a span {
		font-size: 1.5rem;
	}
	.news .v2-list ul li a span:after {
		content: 'r';
		font-family: 'icon';
		margin: 0 0 0 8px;
	}
	
	.v2i-news {
		margin-top: 4.25em;
		margin-bottom: 6.25em;
	}
	.news {
		margin-top: 60px !important;
	}
	.news .v2-list ul li {
		display: flex;
		align-items: center;
		padding: 20px 0 15px;
		border-bottom: solid 1px #dedede;
	}
	
	span.m-event, .t-event, .y-event, .mahoroba-event, .related-temples{
		margin-bottom: 1em;
	}
}







/*---------------------------

	List page layout

---------------------------*/
.g-lecture{
	font-size: 1.14em;
}
.g-lecture .underlayer_visual{
	background-image: url(../v2-img/lecture/visual.jpg);
}
.page-title2{
	line-height: 1.33;
	font-size: 2em;
	text-align: center;
	
	margin-top: 2.5em;
	margin-bottom: 2.5em;
}



.area{}
.area + .area{
	margin-top: 8em;
}
.area__name{
	color: #E05D45;
	font-size: 1.71em;
	padding-left: .25em;
	margin-bottom: .41em;
	border-left: 5px solid;
}



.lecture-list{}
.lecture-list__item{
	padding: 2.14em;
	padding-bottom: 3.75em;
	border-bottom: 1px solid #ccc;
}
@media (max-width: 768px){
	.lecture-list__item{
		padding-left: 0;
		padding-right: 0;
	}
}
.lecture-list__item:first-child{
	border-top: 1px solid #ccc;
}
.lecture-list__item:nth-child(even){
	background-color: #f9f9f9;
}



@media (min-width:769px){
	.lecture{
		display: flex;
	}
	.lecture-person{
		flex: 0 0 18%;
		margin-left: 2.6%;
	}
	.lecture-body{
		flex: 1 1 auto;
	}
}
@media (max-width:768px){
	.lecture-body + .lecture-person{
		margin-top: 1.5em;
	}
}



.lecture-person__portrait{
	margin-bottom: 1em;
	text-align: center;
}
.lecture-person__photo{
	max-width: 100%;
}
.lecture-person__name{
	text-align: center;
}




.lecture-header{
	margin-bottom: 1.125em;
}
@media (min-width:769px){
	.lecture-header{
		display: flex;
		align-items: center;
	}
}
.type{
	line-height: 1.33;
	font-size: .75em;
	text-align: center;
	
	color: #fff;
	background-color: #ccc;
	margin-right: .83em;
	padding: .83em;
	
}
.type.honzan		{ background-color: #E05D45; }
.type.tokyo			{ background-color: #E05D45; }
.type.relate		{ background-color: #2A6949; }
.type.yuishiki		{ background-color: #2A6949; }
.type.mahoroba		{ background-color: #D3B572; }
.type.yakushijikai	{ background-color: #2A4069; }
.type.yuishiki		{ background-color: #723AA7; }
.type.tsudoi		{ background-color: #D946A2; }



@media (max-width:768px){
	.type{
		display: table;
		margin-bottom: .5em;
	}
}
.lecture-header__name{
	font-size: 1.25em;
	font-weight: bold;
}
.lecture-summary{}
.lecture-summary th,
.lecture-summary td{}
.lecture-summary th{}
.lecture-summary th:first-child{
	white-space: nowrap;
}
.lecture-summary th:first-child:after{
	content: "：";
}
.lecture-summary td{}


/* 生タグスタイリング */
.lecture-summary a{
	text-decoration: underline;
}
.lecture-summary a:hover{
	text-decoration: none;
}
.lecture-summary strong{
	font-weight: bold;
}

@media(min-width:769px){
	.lecture-summary a[href^='tel:']{
		color: inherit;
		text-decoration: inherit;
		pointer-events: none;
	}
}


/*add_20201026ち追加*/
a{
	/*text-decoration: underline;*/
	color: #e05d45;
	}
a:hover {
	color: #000000; 
	}
a:hover:before {
	color: #000000; 
	}
a:hover:after {
	color: #000000;
	}
/*a:hover span {
	color: #e05d45; 
	}
a:hover span:before {
	color: #e05d45; 
}
a:hover span:after {
	color: #e05d45; 
	}*/
