/*
Theme Name: Fukuzatsu
Theme URI: https://www.refugee.or.jp/fukuzatsu
Description: A theme by Japan Association for Refugees for Nippon Fukuzatsu Kiko.
Version: 1
Author: Masaru Yoshiyama
Author URI: https://www.refugee.or.jp
*/


body {
    font-family: Lato, "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.pc { display:none;}
.sm { display:block;}
@media screen and (min-width: 840px) {
	.pc { display:block;}
	.sm { display:none;}
	}

.size-auto, 
.size-full,
.size-large,
.size-medium,
.size-thumbnail {
    max-width: 100%;
    height: auto;
}


body {
    padding: 
        constant(safe-area-inset-top) 
        constant(safe-area-inset-right) 
        constant(safe-area-inset-bottom)
        constant(safe-area-inset-left);
	padding-top: calc(16px + 39vw);
    background-color: #F9F5F2;
}
@media screen and (min-width: 620px) {
	body {
		padding-top: 265px;
	}
}

p, ul, ol{
	font-size: 12pt;
}

a:link { color: #1EA0FA; }
a:visited { color: #82C8FF; }
a:hover { color: #1EA0FA; }
a:active { color: #1EA0FA; }

iframe {
	margin-bottom: 1em;
}

figure figcaption,
figure figcaption p{
	color: #999;
	font-size: 10pt;
	line-height: 1.3em;
	margin-bottom: 1em;
}

main {
	width: 100%;
	padding: 10px 4% 0;
	box-sizing:border-box;
}

.whitebox {
	margin:10px 0 20px;
	padding:5%;
	background-color: white;
}

@media screen and (min-width: 600px) {
	.whitebox {
		padding:5%;
	}
	article .whitebox {
		width:100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
	}
}
@media screen and (min-width: 840px) {
	main {
		display: flex;
		justify-content: center;
		width:840px;
		margin:auto;
	}
	article .whitebox,
	footer .whitebox {
		width: 100%;
		margin: 0 auto 1em;
		padding:40px 60px 20px;
	}
}

.mt-image-right {
	float:right;
	margin: 0 0 1em 10px;
}
.mt-image-left {
	float:left;
	margin: 0 10px 1em 0;
}


/*-------------------------------------------------------------
	header
-------------------------------------------------------------*/
header {
	width: 100%;
	overflow: hidden;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
	transition: height 0.3s;
	/*box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 10px 3px;*/
}
header #jar_logo{
	padding-top: 5px;
	padding-bottom: 5px;
	padding-left: 4%;
	background-color: white;
}
body[data-fixed="1"] header #jar_logo,
body[data-menu="1"] header #jar_logo {
	display: none;
	height: 0;
}
header #jar_logo a {
	display: block;
	width: 142px;
	height: 26px;
	background-image: url(./images/jar_logo.svg); 
	color: transparent;
	font-size: 0;
	line-height: 0;
	text-shadow: none;
}
header #logo {
	background-color: #F9F5F2;
}
header #logo .menu {
	float:left;
}
header #logo h1 {
	margin-bottom: 0;
}
header #logo h1 a {
	display: block;
	width: 100%;
	height: 39vw;
	background-image: url(./images/nfk_banner0922_3_w620-h240px.jpg); 
	background-position: center center; 
	background-size: 100% auto;
	background-repeat: no-repeat;
	color: transparent;
	font-size: 0;
	line-height: 0;
	text-shadow: none;
}
/*header #logo h1 span:before {
	font-family: 'Pe-icon-7-stroke';	
	content: "\e688";
	line-height: 1;
	font-size: 100%;	
}*/
body[data-menu="1"] header #logo h1 span:before {
	content: "\e682";
}
body[data-fixed="1"] header #logo,
body[data-menu="1"] header #logo {
	top: 0;
	left: 0;
}
body[data-fixed="1"] header #logo h1 a,
body[data-menu="1"] header #logo h1 a {
	height: 12vw;
	background-size: 25% auto;
}


@media screen and (min-width: 620px) {
	header #logo h1 a {
		height: 240px;
		background-size: auto;
	}
	body[data-fixed="1"] header #logo h1 a,
	body[data-menu="1"] header #logo h1 a {
		height: 75px;
	}
	body[data-fixed="1"] header #logo h1 a {
		background-size: 150px auto;
	}
}

aside {
	margin-top: 20px;
	padding: 1px 10px;
	background-color: white;
	font-weight: bold;
}
body[data-fixed="1"] header + aside,
body[data-menu="1"] header + aside {
	margin-top: -10vw;
}
aside p {
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	color: black;
	text-align: center;
}

.article header #jar_logo {
	display: none;
}

.article header #logo h1 {
	background-color: #F9F5F2;
	text-align: left;
}

.article header #logo h1 a {
	height: 100px;
	background-size: 200px;	
}

/*-------------------------------------------------------------
	article_list
-------------------------------------------------------------*/
#article_list article {
	padding: 0;
}

#article_list article .date {
	float: left;
	font-size: 10pt;
}
#article_list article .thumbnail::before{
	content: "";
	display: block;
	padding-top: 75%;
}
#article_list article .thumbnail {
	float: left;
	position: relative;
	overflow: hidden;
	width: 100%;
	margin-bottom: 5px;
}
#article_list article .thumbnail img{
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	max-width: 150%;
	max-height: 150%;
}

#article_list article h1 {
	color: #1EA0FA;
	font-size: 150%;
	font-weight: bold;
	/*font-family: Verdana,Helvetica,"Hiragino Sans","ヒラギノ角ゴ Pro W6","Hiragino Kaku Gothic Pro",Osaka,"Yu Gothic","ＭＳ Ｐゴシック","MS PGothic",sans-serif;*/
}
#article_list article h1 a {
	color: #1EA0FA;
}
#article_list article h1 a:visited {
	color: #82C8FF;
}
#article_list article .title .author {
	width: 100%;
}
#article_list article .title .author p{
	display: inline-block;
	vertical-align: middle;	
	margin-bottom: 0;
}
#article_list article .title .author p.author_image{
	width: 30%;
	max-width: 70px;
	margin-right: 5px;
}
#article_list article .title .author p.author_image img{
	border-radius: 50%;
}
#article_list article .title .author p.author_name{
	width: calc(100% - 85px);
}
#article_list article .title .author p.author_name span.name{
	font-weight: 600;
}
#article_list article p a {
	color: black;
}

#sidebar {
	display: none;
	background-color: white;
	margin-bottom: 10px;
	padding:10px;
}

@media screen and (min-width: 600px) {
	#article_list article {
	}
	#article_list article .date {
		width: 100%;
		text-align: left;	
	}
	#article_list article .thumbnail {
		width: 40%;
		margin-right: 2%;
	}
	#article_list article .title {
		width:58%;
	}
}
@media screen and (min-width: 760px) {
	#article_list article .title {
		position: relative;
	}
	#article_list article .title .author{
		position: absolute;
		bottom: 0;
	}
}
@media screen and (min-width: 840px) {
	#article_list {
		width:900px;
		margin-right: 10px;
	}
	#article_list article .whitebox {
		margin:auto;
		margin-bottom: 10px;
		padding: 5%;
		width:100%;
	}
	#sidebar {
		width:240px;
	}
	#sidebar h1 {
		font-size: 120%;
	}
}

#article_list p.noarticle {
	margin-left: 1em;
}


/*--------- article -----------*/
.article main {
	padding-top: 1%;
}

@media screen and (min-width: 600px) {
	main #article .whitebox {
		width:100%;
		display: flex;
		padding: 20px 50px;
		flex-wrap: wrap;
		justify-content: flex-start;
	}
}
@media screen and (min-width: 940px) {
	main #article .whitebox,
	footer .whitebox {
		width: 900px;
		margin: 0 auto 1em;
		padding:40px 60px 20px;
	}
}

main #article p.date{
	text-align: left;
}
main #article h1,
main #index h1 {
	width: 100%;
	color: #1EA0FA;	
	font-size: 150%;
	font-weight: bold;
	font-family: Verdana,Helvetica,"Hiragino Sans","ヒラギノ角ゴ Pro W6","Hiragino Kaku Gothic Pro",Osaka,"Yu Gothic","ＭＳ Ｐゴシック","MS PGothic",sans-serif;
}
main #article p.sublead {
	color: #666666;
	font-size: 85%;
}
main #article #author_head {
	width: 100%;
}
main #article #author_head p.author{
	width: calc(100% - 65px);
}
main #article #author_head p {
	display: inline-block;
	vertical-align: middle;	
}
@media screen and (min-width: 840px) {
	main #article #author_head {
		width: calc(100% - 235px)
	}
}

main #article #author_head img {
	width: 50px;
	height: 50px;
	margin-right: 10px;
	margin-bottom: 0;
	border-radius: 25px;
}

main #article .thumbnail {
	width:100%;
}

main #article h2,
main #index h2 {
	clear: both;
	width:100%;
	margin-top: 30px;
	margin-bottom: 10px;
	padding: 2px 0;
	border-bottom: 1px solid #46AA28;
	color: #46AA28;	
	font-size:100%;
	font-weight: bold;
}

main #article h3,
main #index h3 {
	clear: both;
	margin-top: 30px;
	margin-bottom: 10px;
	padding: 2px 0;
	border-bottom: 1px dashed ;	
	font-size:100%;
}


main #article .sns {
	display: flex;
	flex-basis: auto;
	flex-wrap: wrap;
	justify-content: center; 
	width: 100%;
	padding: 3px 0 1em;
	text-align: center;
}
main #article .sns.bottom{
	margin-top: 5px;
	padding-bottom: 5px;
}
main #article .sns div{
	float:left;
	margin-top: 5px;
	margin-right: 5px;
}

main #article #contents a {
	border-bottom: 1px dashed #aaa;
}
main #article #contents a.nolinkline{
	border-bottom: none;
}

main #article #author {
	clear:both;
	margin:10px 0px 0px 0px;
	}
main #article #author .author_title {
	clear: both;
	width:100%;
	margin-top: 30px;
	margin-bottom: 10px;
	padding: 2px 0;
	border-bottom: 1px solid #1EA0FA;
	color: #1EA0FA;	
	font-size:100%;
	font-weight: bold;	
	text-transform:uppercase;
}
main #article #author .img { 
	float:left;
	margin-bottom: 0;
	}
main #article #author .img img {
	width: 150px;
	height: 150px;
	margin-top:4px;
	margin-bottom: 0;
}

main #article #author .name_p {
	margin:0 0 10px 170px;
	font-weight: bold;
	}
main #article #author .txt {
	margin-left:170px;
}

@media screen and (max-width: 910px) {
	main #article #author .img { float:none; text-align:center;}
	main #article #author .name_p {
		margin:10px 0 10px 0px;
		font-size:16px;
		}
	main #article #author .txt {
		margin-left:0px;
	}
}


main p.int {
	font-weight: bold;
}

main .column {
	border:1px solid #ddd;
	margin-left: -5px;
	margin-right: -5px;
	padding:12px;
}
main #article .column > h2 {
	margin-top: 5px;
}

/*--------- static page -----------*/
#static h1 {
	margin-bottom: 10px;
	padding:0 0 0 0.5em;
	border-left:5px solid #1EA0FA;
	width: 100%;
	color:#1EA0FA;
	font-size:110%;
	font-weight:normal;
	line-height:1.2;	
}
#static h2 {
	margin-top: 30px;
	margin-bottom: 10px;
	padding: 2px 0;
	width: 100%;
	border-bottom: 1px solid #46AA28;
	color: #46AA28;
	font-size:100%;
}
#static .lead {
	font-size: 120%;
	font-style: italic;
}

#static .profile {
	clear: both;
	padding-top: 10px;
	padding-right: 0;
	padding-left: 0;
}
#static .profile img {
	float: left;
	width: 25%;
	height: auto;
	margin-right: 3%;
}
#static .profile .name {
	font-size: 14px;
	font-weight: bold;
}

@media screen and (min-width: 768px) {
	#about .profile {
		clear: none;
	}
	#about .profile p {
		margin-right: 1em;
	}
}

/*--------- index -----------*/
.article main {
	padding-top: 1%;
}

@media screen and (min-width: 600px) {
	main #index .whitebox {
		width:100%;
		display: flex;
		padding: 20px 50px;
		flex-wrap: wrap;
		justify-content: flex-start;
	}
}
@media screen and (min-width: 940px) {
	main #index .whitebox {
		width: 900px;
		margin: 0 auto 1em;
		padding:40px 60px 20px;
	}
}

/*--------- author -----------*/
#authorinfo {
	width: 100%;
}
#authorinfo .photo { 
	float:left;
	margin-bottom: 0;
}
#authorinfo img.avatar { 
	width: 150px;
	height: 150px;
	margin-top:4px;
	margin-bottom: 0;
}

#authorinfo #name {
	margin:0 0 10px 170px;
	font-weight: bold;
	}
#authorinfo #description {
	margin-left:170px;
}

@media screen and (max-width: 910px) {
	#authorinfo .photo { float:none; text-align:center;}
	#authorinfo #name {
		margin:10px 0 10px 0px;
		font-size:16px;
		}
	#authorinfo #description {
		margin-left:0px;
	}
}

@media screen and (min-width: 600px) {
	body.author #article_list article .thumbnail {
		width: 25%;
		margin-right: 2%;
	}
	body.author #article_list article .title {
		width:73%;
	}
}
@media screen and (min-width: 840px) {
	body.author #article_list {
		width:900px;
		margin-right: 10px;
	}
	body.author #article_list article .whitebox {
		margin:auto;
		margin-bottom: 10px;
		padding: 5%;
		width:100%;
	}
}


/*--------- image -----------*/
full-size-link {
	text-align: right;
}


/*-------------------------------------------------------------
	footer
-------------------------------------------------------------*/
footer {
	clear: both;
	padding: 10px 4% 5px;
	background-color: white;
	text-align: center;
}
body[data-menu="1"] footer {
	position: fixed;
	top: 11vw;
	width: 100%;
	height: 100vh;
	z-index: 80;
}
@media screen and (min-width: 620px) {
	body[data-menu="1"] footer{
		top: 75px;
	}
}

footer #menu {
	margin-bottom: 0;
	background-color: white;
	text-align: left;
	margin-bottom: 1.5em;
	padding-bottom: 1.5em;
	border-bottom: 1px solid #999;
}

footer #menu ul{
	margin-left: -22px;
}
footer #menu ul li{
	list-style: none;
	padding-left: -22px;
	border-bottom: 1px dashed #999;
	line-height: 200%;
	font-size: 140%;
	color: #aaa;
}
footer #menu ul li a,
footer #menu ul li a:hover {
	color: #555;
}
footer #menu ul li span {
	color: #1EA0FA;
	font-weight: bold;
	font-size: 80%;
}

footer #footer_logo {
	width: 182px;
	margin: auto;
	margin-bottom: 1em;
	padding-top: 5px;
	padding-bottom: 5px;
	background-color: white;
}
footer #footer_logo a {
	display: block;
	width: 182px;
	height: 34px;
	background-image: url(./images/jar_logo_l.svg); 
	color: transparent;
	font-size: 0;
	line-height: 0;
	text-shadow: none;
}


footer small {
	display: block;
	margin: 0 4% 2%;
	font-size: 10px;
	line-height: 1;
}



/*-------------------------------------------------------------
	SNS
-------------------------------------------------------------*/
ul.share {
	margin: 0 auto;
	padding-left: calc( 50% - 116px );
	padding-right: calc( 50% - 116px );
}

@media screen and (min-width: 840px) {
	#author_head + ul.share {
		width: 231px;
		margin: 5px 0 0 0;
		padding-left: 0;
		padding-right: 0;
	}
}

ul.share .snsbtn {
    float:left;
    margin:0 3px 0 3px;
    list-style: none;
}
ul.share .snsbtn.line {
	margin-right: 2px;
}

ul.share .snsbtn a:hover{
    background-color:#FFF;
    opacity: 0.5;
}
