*{
    margin:0;
    padding:0;
    font-family: Georgia, serif;
    box-sizing: border-box;
    color: #444;
	word-wrap: break-word;
}
/*
html {
    scroll-behavior: smooth;
}
*/
/* scrollbar styling */
	* {
	  scrollbar-width: thin;
	  scrollbar-color: #a6a6a6 #e6e6e6;
	}
	*::-webkit-scrollbar {
	  width: 8px;
	}
	*::-webkit-scrollbar-track {
	  background: #e6e6e6;
	}
	*::-webkit-scrollbar-thumb {
	  background-color: #a6a6a6;
	  border: 1px solid #e6e6e6;
	}
/* scrollbar styling — END */

svg#line_logo {
		display: inline-block; 
		width: auto; 
        max-width: 240px;
		transition: 0.3s;
	}
	svg#line_logo path {
		fill: #fff;
        stroke: #888888;
        stroke-miterlimit: 10;
		stroke-dasharray: 400;
		animation: line_logo 6s;
	}
	@keyframes line_logo {
		0% { stroke-dashoffset: 400; } 
		100% { stroke-dashoffset: 0; }
	}
	svg#line_logo:hover #heart {
		animation: orange_heart 2s forwards;
	}
    @keyframes orange_heart {
		0 { stroke: #888888; fill: #fff; }
		100% { stroke: #f07305; fill: #f07305; }
	}


body {
    background-color:#ffffff;
}

::-moz-selection{ 
    background: #f07305;
    color: #fff;
}
::selection{
    background: #f07305;
    color: #fff;
}

button::-moz-focus-inner {
  border: 0;
}

img{
    max-width:100%;
}

a{
    text-decoration: none;
}

a:focus,
.anchor:focus{
    outline:none !important;
}

.alignCenter{
    text-align: center;
}

#wrap,
#wrapRp,
#wrapMenu,
#wrapBlogMain,
#share-buttons{
    width:100%;
    max-width: 760px;
    margin:0 auto;
    padding:20px 20px 40px 20px;
}

#wrapRp p, 
#wrapRp ul,
#wrapRp ol {
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
}

#wrapRp figcaption/*:not(.contentRpMain figcaption)*/{
    font-size: 15px;
	line-height: 130%;
    color: #777;
	font-style:italic;
}

.headline{
    margin-bottom: 40px;
}

#contentRpMain{
    min-height: calc(100vh - 370px);
}
#contentBlogMain{
	height:auto;
	min-height: calc(100vh - 370px);
}

#content p a,
#content li a,
a.link{
    /*display:inline-block;*/
    padding: 6px 0 0 0;
    border-bottom: 6px solid rgba(11,142,54,0.2);
    transition: 0.3s;
    line-height: 11px;
}
#content p a:hover,
#content li a:hover,
a.link:hover,
#content p a:focus,
#content li a:focus,
a.link:focus,
#content p a:active,
#content li a:active,
a.link:active{
    background: rgba(11,142,54,0.15);
    border-bottom: 6px solid transparent;
}
#content h1 a {
    text-decoration: none;
	color: inherit;
}

.imgLink,
.album a{
	border-bottom:0 !important;
}
.imgLink:hover, .album a:hover,
.imgLink:focus, .album a:focus,
.imgLink:active, .album a:active{
	background:0 !important;
	border-bottom:0 !important;
}


.menuOpen, .menuClose{
    width:100%;
    text-align: right;
}
.menuOpen a,
.menuClose a{
    display:inline-block;
    height:70px;
    padding:10px;
}
.menuClose a img,
.menuOpen a img{
    max-height: 34px;
    width:auto;
}
.menuOpen svg#line_logo{
    display: inline-block;
    max-height: 34px; 
    width:auto;
    max-width: 240px;
    position:absolute;
    top:10px;
    left:7px;
}
nav ul{
    list-style-type: none;
    padding-left: 0px;
    text-align: center;
}
nav ul li{
    margin-bottom:40px;
}
nav ul li a{
    font-style:italic;
    font-size: 22px;
}
nav ul li a.btn {
    font-style: normal;
    color: white;
    background-color: forestgreen;
    border: 2px solid forestgreen;
    padding: 0.75em 1.5em;
    transition: 0.2s;
}
nav ul li a.btn:hover {
    background-color: white;
    color: forestgreen;
}
#breadcrumb{
    font-size: 12px;
    letter-spacing: 0.6px;
    padding-bottom:20px;
    padding-top: 20px;
    margin-bottom:10px;
    border-bottom:1px solid #ccc;
}
#breadcrumb a{
    color: #777;
    text-decoration: none;
	font-style: italic;
}
#breadcrumb a::after{
	content: " ≻ ";
	color: #000;
	font-style: normal;
    font-family: sans-serif;
}

#breadcrumb span{
    color: #999;
	font-style: italic;
}

#lang{
    text-align: right;
    position: relative;
}
#lang a, #lang span{
    font-family: sans-serif;
    font-size: 12px;
    display:inline-block;
    margin-left:5px;
}
#lang a{
    color: #999;
}
#lang a:hover{
    color: #333;
}
#lang #date {
    display: inline-block;
    position: absolute;
    left: 0;
    bottom: 0;
    color: #999;
    font-style: italic;
    font-family: Georgia, serif;
}

h1{
    font-size: 34px;
    margin:30px 0 20px 0;
    line-height: 120%;
}
h2{
    font-size: 26px;
    /*margin: 60px 0 20px 0;*/
    margin: 4rem 0 1.5rem 0;
    line-height:110%;
}
h3{
    font-size: 20px;
    /*margin: 60px 0 20px 0;*/
    margin: 4rem 0 1.5rem 0;
    line-height:110%;
}
#wrap h4{
    font-size: 22px;
    margin-top:30px;
    margin-bottom:10px;
}
p, ul li, ol li, script{
    font-size: 18px;
    line-height:160%;
}
.note{
    line-height: 100%;
}
p{
    margin-bottom:20px;
}
ul{
    padding-left:40px;
}
ol{
    padding-left:40px;
}
ol > li::marker {
    font-weight: 900;
    font-size: 1.1em;
    color: #f07305;
}
ol > li {
    padding-left: 4px;
}
ul li, ol li{
    margin-bottom:15px;
}
ul ul, ul ol, ol ol, ol ul {
    margin-top: 15px;
    margin-bottom: 25px;
}
ul.dashlist {
	list-style-type: " – "; 
	padding-left: 20px;
}
ul.dashlist li {
	padding-left: 5px;
}

.note{
    font-size: 12px;
    vertical-align: text-top;
    cursor: pointer;
	transition: 0.3s;
}
.note:hover {
	color: #f07305;
}
#note{
    border-top:1px solid #ccc;
    margin: 40px -20px 0px -20px;
    padding: 20px;
	background-color: #fff;
	position: relative;
}
@-webkit-keyframes fadeIn {
	from { opacity: 0; }
	  to { opacity: 1; }
}
@keyframes fadeIn {
	from { opacity: 0; }
	  to { opacity: 1; }
}
#note.sticky {
	position: -webkit-sticky;
	position: sticky;
	bottom: 0;
	box-shadow: 0 0 20px rgba(0,0,0,0.3);
	-webkit-animation: fadeIn 1s;
	animation: fadeIn 0.3s;
}
#note p, #note a, #note span {
    font-size: 14px;
}
#note .sticky_close {
	text-align: right;
	cursor: pointer;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 10;
	display: inline-block;
	font-size: 200%;
	line-height: 0.6;
	padding: 0.25em;
	transition: 0.3s;
	display: none;
}
#note .sticky_close:hover {
	color: #f07305;
}
#note.sticky {
	padding-top: 50px;
}
#note.sticky .sticky_close {
	display: block;
}
#note ol li{
    position:relative;
    padding-left:13px; 
}
#note ol li::before{
    content: " [ \00a0 \00a0 \00a0 \00a0 \00a0 ] ";
    position:absolute;
    left: -2em;
}
#note ol > li::marker {
	color: inherit;
	font-weight: 400;
}
.mark {
	margin: 20px -20px;
	padding: 25px 20px 5px 20px;
	background-color: #f2f2f2;
}

blockquote {
    margin: 4rem auto;
    max-width: 660px;
    font-size: 1.4em;
    line-height: 1.4;
    font-style: italic;
    position: relative;
    padding: 0px 10px 50px 10px;
    text-align: center; 
    border-top: 1px solid rgba(0,0,0,0.3);
    border-bottom: 1px solid rgba(0,0,0,0.3);
    border-image: linear-gradient(to right, rgba(0,0,0,0), rgba(0,0,0,0.5), rgba(0,0,0,0)) 1;
}
blockquote::before {
	font-size: 80px;
    line-height: 1;
    font-family: Georgia, serif;
    text-align: center;
    box-sizing: border-box;
	content: "”";
    display: block;
    margin: -25px auto 0px auto;
    color: rgba(0,0,0,0.4);
    background-color: #fff;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    padding-right: 10px;
    padding-top: 10px;
}

.quote_outer {
	display: flex;
	flex-direction: column;
	justify-content: center;
	/*align-items: center;*/
	min-height: 60vh;
	margin: 120px 0;
	padding: 60px 40px 40px 40px;
}
.quote_mark {
	font-size: 100px;
	line-height: 0;
	margin-top: -20px;
	margin-bottom: 80px;
}
.quote_outer {
	box-shadow: 0 0 30px rgba(0,0,0,0.05) inset;
}
.quote_outer * {
	/*color: #efefef;*/
	letter-spacing: 0.0125em;
} 
.quote_inner * {
	/*font-size: 200%;*/
	font-size: 24px;
	line-height: 1.4;
	font-style: italic;
	-webkit-hyphens: none !important;
	-ms-hyphens: none !important;
	hyphens: none !important;
}

@media (min-width:600px) {
	.quote_outer {
		padding: 100px 80px 80px 80px;
	}
	.quote_mark {
		font-size: 200px;
		line-height: 0;
		margin-top: -100px;
		margin-bottom: 140px;
	}
	.quote_inner * {
		font-size: 30px;
	}
}
.quote_outer:nth-child(1), 
.quote_outer:nth-child(6),
.quote_outer:nth-child(11)
{
	background-color: #f6f2f0;
}
.quote_outer:nth-child(2),
.quote_outer:nth-child(7),
.quote_outer:nth-child(12)
{
	background-color: #e9f5db;
}
.quote_outer:nth-child(3), 
.quote_outer:nth-child(8), 
.quote_outer:nth-child(13) 
{
	background-color: #f8edeb;
}
.quote_outer:nth-child(4), 
.quote_outer:nth-child(9), 
.quote_outer:nth-child(14) 
{
	background-color: #f0e7d6;
}
.quote_outer:nth-child(5),
.quote_outer:nth-child(10),
.quote_outer:nth-child(15)
 {
	background-color: #e2ecf2;
}

footer div{
    width: 100%;
    max-width: 760px;
    margin:0px auto;
    padding:10px;
    border-top:1px solid #ccc;
    text-align: center;
    font-size: 14px;
}
footer div span,
footer div a{
    font-family: sans-serif;
    display:inline-block;
    margin: 10px;
}
footer div span{
    display:block;
}
#jumper{
    display:inline-block;
    cursor: pointer;
    text-align: center;
    font-size: 30px;
    width:auto;
    position:fixed;
    bottom:10px;
    right:10px;
    padding: 5px 10px;
    background-color: rgba(255,255,255,0.7);
    z-index: 100;
    display:none;
    transition: all 0.4s;
}
#jumper:hover {
    color: #f07305;
}
figure.secondary{
    margin: 20px 0;
}
figure.secondary img {
	border: 1px solid rgba(0,0,0,0.1);
}
figure.transbg{
    margin: 20px 0;
}
#copyright{
    background-color: rgba(0,0,0,0.8);
    position: fixed;
    top:0;
    left:0;
    text-align: center;
    width:100%;
    height:100%;
    /*padding:100px 20px 0 20px;*/
    padding-top:calc(50vh - 100px);
    padding-left:20px;
    padding-right:20px;
    display:none;
    z-index: 15000;
}
#copyright div{
    background: #fff;
    width:100%;
    max-width:500px;
    padding: 50px 20px;
    margin:0 auto;
}
button,
.button,
#copyright button{
	display: inline-block;
    margin-top:20px;
	margin-right: 20px;
    padding:10px 20px;
    background-color: #f07305;
    border:2px solid #f07305;
    color: #fff;
    cursor: pointer;
    font-size: 18px;
	line-height: 1;
    transition:0.3s;
}
button:hover,
.button:hover,
#copyright button:hover{
    background-color: #fff;
    color: #f07305;
}
.back_button_wrap{
    padding:0px 0px 10px 0px;
}

#share-buttons{
    border-top:1px solid #ccc;
    padding:20px;
}

#share-buttons img{
    display: inline-block;
    width: 50px;
    padding:10px;
    border: 0;
    box-shadow: 0;
} 


/* START anchor teaser */
.teaser {
	margin-top:30px;
	margin-bottom:50px;
	text-align: center;
}
.teaser a, .teaser > div {
	padding:15px 5px;
	width:45%;	
}	
.teaser figure figcaption{
	text-align: center;
	font-style: italic;
	hyphens: auto;
}
.teaser a, .teaser > div {
		display:inline-block !important;
		margin: 10px 5px;
}

.album {
    text-align: center;
}
.album a {
    display: inline-block;
	/*width:45%;*/	
    width:27%;
	margin: 5px 5px;
}
	
.album a img {
	width:100%;
	border:1px solid rgba(0,0,0,0.1);
}

.jump_to_thumbs {
    cursor: pointer;
    text-align: right;
    margin-bottom: 50px;
}


/* rp */
#myBtnContainer{
	padding: 0px 0px 20px 0px;
	/*text-align: center;*/
}
#myBtnContainer button {
	font-size: 80%;
}
#rpcontainer {
	width: 100%;
	max-width: 1400px;
	display: flex;
	flex-wrap: wrap;
	margin: 0 -10px;
}
#rpcontainer::after {
	content: "";
	clear: both;
	display: table;
}
.filterDiv {
	/*float: left;*/
	color: #ffffff;
	/*width:calc(100% - 26px);*/
	width: 100%;
	text-align: center;
	/*margin: 10px;*/
	padding: 10px;
	box-sizing: border-box;
	height:auto;
	display: none;
}
.filterDiv a {
	display: block;
}
.filterDiv figcaption{
	font-family: Georgia, serif;
	font-style: italic;
	font-size: 16px;
	color: #666; 
	padding:0px 5px 5px 5px;
}   
.filterDiv img{
	transition: 0.3s; 
	opacity: 0.9;
	filter: alpha(opacity=9); 
}    
.filterDiv:hover img,
.filterDiv:focus img{
	opacity: 1;
	filter: alpha(opacity=100);
}    

.show {
	display: block;
}

.rpcontainer {
	margin-top: 20px;
	overflow: hidden;
}

/* 2022.03.01 */
/*
#myBtnContainerWrapper {
	position: relative;
	margin-bottom: 30px;
	height: 36px;
	overflow: hidden;
	z-index: 50;
	background-color: #fff;
}
#myBtnContainer {	
	padding: 0;
	overflow-y: hidden;
	position: absolute;
	width: 100%;
	height: 36px;
	top: 0;
	left: 0;
	right: 0;
	z-index: 55;
}
#myBtnContainer.dropdown_list {
	height: 200px;
	max-height: 200px;
	overflow-y: scroll;
}
#myBtnContainer .btn {
	width: 100%;
	text-align: left;
}
*/
/* Style the buttons */
.btn {
	font-family: sans-serif;
	border: none;
	outline: none;
	padding: 12px 16px;
	background-color: #f1f1f1;
	cursor: pointer !important;
	display:inline-block;
	margin: 2px auto;
	color:#666;
}
.btn:hover,
.btn:focus{
	background-color: #ccc;
	color: white;
}
.btn.active {
	background-color: #666;
	color: white;
}

@media(min-width:500px){
	.filterDiv {
		/*width:calc(50% - 26px);*/
		/*height:225px;*/
		width: 50%;
	}
}    
@media(min-width:700px){
	#myBtnContainer{
		margin:0 auto;
	}
	.filterDiv {
		/*width:calc(33% - 26px); */
		/*height:170px;*/
		width: 33.33%;
	}
	.filterDiv figcaption{
		min-height:auto;
	} 
	.filterDiv a:hover,
	.filterDiv a:focus{
		box-shadow: 0 0 5px rgba(0,0,0,0.5);
	}
}    

/* video thumbnail link */
.video_thumb {
	display:block;
	position:relative;
	transition: all 0.2s;
}
.video_thumb * {
	transition: all 0.2s;
}
.video_thumb:hover img {
	opacity: 0.8;
}
.video_thumb::after {
	content: "►";
	text-align: center;
	text-shadow: 0 0 15px rgba(0,0,0,0.8);
	font-size: 20vw;
	line-height: 100%;
	color: rgba(255,255,255,0.8);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	transition: all 0.2s;
}
.video_thumb:hover::after {
	color: rgba(255,255,255,0.95);
}
@media (min-width: 600px) {
	.video_thumb::after {
		font-size: 130px;
	}
}

/* ################################ */
/* ################################ */
/* ################################ */
/* ################################ */
@media(min-width:600px){ 
	
		
		
	}

/* END  anchor teaser */



@media(min-width:400px){
    .menuClose a img,
    .menuOpen a img{
        max-height: 100%;
        width:auto;
    }
    .menuOpen svg#line_logo{
        max-height: 50px; 
        max-width: 350px;
    }
}

@media(min-width:600px){
    
    nav ul li{
        margin-bottom:50px;
    }
    nav ul li a{
        font-size: 26px;
    }
    #lang a, #lang span{
        font-size: 15px;
        margin-left:5px;
    }
    h1{
        font-size:46px;
        margin: 30px 0 20px 0;
    }
	h2 {
		font-size: 34px;
	}
    h3{
        font-size: 26px;
    }
    figure.secondary{
        margin: 40px 30px;
    }
    figure.transbg{
		margin: 40px 0;
	}
    footer div span{
        display:inline-block;
    }
    #jumper{
        font-size: 30px;
        bottom:10px;
        right:30px;
        padding: 5px 10px;
    }
	
	.teaser a{
			width:30%;
	}
	.album a{
		/*width:30%;*/
		width:23%;
	}
	
	
}

@media print{
    
    img, figcaption, header, #breadcrumb, #lang, .back_button_wrap, footer, #jumper, #share-buttons, #note.sticky .sticky_close {
        display:none;
    }
    
    #content a[href]::after {
      	content: " <" attr(href) "> ";
      	color: #888;
      	background-color: inherit;
      	font-style: italic;
      	size: 50%;
		font-size: 14px;
		line-height: 120%;
    }
	#content h1 a[href]::after {
		display: block;
	}
	
	#note.sticky {
		box-shadow: none;
		padding: 20px;
	}
    
}

