@charset "utf-8";
/*
Theme Name: Twenty Sixteen Child
Template: twentysixteen
*/

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

*{
	margin:0;
	padding:0;
}
html {
	font-size: 16px;
}
body {
	text-align: center;
	margin: 0 auto;
	padding: 0;
	font-size: 1rem;
	color: #000;
	line-height: 1.7;
	background-color: #FFF;
	letter-spacing:0.04em;
	word-break: break-all;
	font-family: "Noto Sans JP","Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "Helvetica Neue", "Helvetica",Verdana, sans-serif;
}
a:focus, *:focus { outline:none; }
.entry-content a, .entry-summary a, .taxonomy-description a, .logged-in-as a, .comment-content a, .pingback .comment-body > a, .textwidget a, .entry-footer a:hover, .site-info a:hover {
	box-shadow: none;
}
a {
	color: #00C;
}
.entry-content a {
	color: #00C;
	text-decoration: underline;
}
a:hover {
	color: #F30;
	text-decoration: none;
}
a:hover,a:hover img{
    opacity: 0.7;
    filter: alpha(opacity=70);
}
.clearfix:after,body.single .nav-links:after,nav.navigation:after,.list-area:after {
   content: ".";
   display: block;
   clear: both;
   height: 0;
   visibility: hidden;
}
.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6, .entry-summary h1, .entry-summary h2, .entry-summary h3, .entry-summary h4, .entry-summary h5, .entry-summary h6, .comment-content h1, .comment-content h2, .comment-content h3, .comment-content h4, .comment-content h5, .comment-content h6, .textwidget h1, .textwidget h2, .textwidget h3, .textwidget h4, .textwidget h5, .textwidget h6 {
	font-weight: 700;
	color: #222;
	text-transform: initial;
}
div,p,a,th,td,h1,h2,h3,h4,h5,h6,input,textarea,dl,dt,dd,ul,li,span {
	box-sizing: border-box;
}
p {
	margin: 0;
	padding: 0 0 20px 0;
}
hr {
	clear: both;
}
.aligncenter {
	margin: 30px auto;
}
.post-thumbnail {
	margin: 2.5rem auto 1.25rem auto;
	max-width: 1300px;
	width: 100%;
}
body.error404 .page-header .page-title, body.search-no-results .page-header .page-title {
	text-align: center;
}
.site-branding {
	margin: 0;
	text-align: left;
	padding: 0 0 0 20px;
}
.site-title {
	font-family: "Noto Sans JP","Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "Helvetica Neue", "Helvetica",Verdana, sans-serif;
	font-size: 1.375rem;
	font-weight: 500;
}
.site-title small {
	font-size: .9375rem;
	margin-right: 5px;
}
.site-title img {
	width: 100%;
	height: auto;
	max-width: 120px;
}
p.site-title {
	padding-bottom: 0;
	text-align: left;
}
.site-branding .site-title a,.site-branding .site-title a:hover {
	color: #000;
}
.entry-content p {
	text-align: left;
	margin: 0 auto;
	padding: 0 0 2rem 0;
	width: 98%;
	letter-spacing: 0.1em;
	line-height: 2rem;
}
.entry-content p.tx-c {
	text-align: center;
}
.entry-content p.has-text-align-center {
	text-align: center;
}
.entry-content p.has-text-align-right {
	text-align: right;
}
.site {
	margin: 0;
	background-color: #FFF;
}
.site-header,.site-content,.site-footer {
	padding-left: 0;
	padding-right: 0;
}
.site-header {
	padding: 0;
	background-color: #FFF;
	transition: all .5s;
}
.site-header-main {
	min-height: 64px;
	transition: all .5s;
}
.site-header-main .main-nav {
	position: absolute;
	right: 0;
	top: 0;
}
.site-footer {
	margin: 0 auto;
	padding: 60px 2%;
	border-top: 5px solid #0967AD;
}
.cr {
	font-size: 0.75rem;
	text-align: left;
	box-sizing: border-box;
	padding: 4px;
	width: 100%;
}
.site-footer .inner,.cr {
	max-width: 1340px;
	margin: 0 auto;
}
.site-footer .inner {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin-bottom: 50px;
}
.site-footer .inner .logo {
	max-width: 220px;
}
.site-footer .inner .logo img {
	width: 100%;
	height: auto;
	line-height: 1;
}
.site-footer .inner .name {
	margin: 0 70px;
}
.site-footer .inner p {
	padding-bottom: 0;
	text-align: left;
}
.site-footer .inner .name p {
	line-height: 1.25;
}
.site-footer .inner .name p .fw-m {
	font-size: 1.625rem;
}
.kojya {
	font-size: 0.625rem;
	display: inline-table;
	margin-left: 20px;
}
.kojya a {
	color: #222;
}
p.jun {
	text-align: center;
}
.ff-min {
font-family: "Noto Serif JP", serif;	
}
.ff-roboto {
font-family: "Roboto",	sans-serif;
}
.fw-m {
	font-weight: 500;
}
.site-inner {
	max-width: inherit;
}
.site-content {
	padding: 0;
	margin: auto;
}
.no-sidebar .entry-header, .no-sidebar .entry-content, .no-sidebar .entry-summary, .no-sidebar .entry-footer, .no-sidebar .comments-area, .no-sidebar .image-navigation, .no-sidebar .post-navigation, .no-sidebar .pagination, .no-sidebar .page-header, .no-sidebar .page-content, .no-sidebar .content-bottom-widgets {
	margin-right: 0;
	margin-left: 0;
	font-family: "Noto Sans JP","Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "Helvetica Neue", "Helvetica",Verdana, sans-serif;
}
.page-header {
	margin: 0;
}
.no-sidebar .content-area, body.home .content-area {
	padding: 0;
	text-align: left;
}
body.home .content-area {
	margin: auto;
}
body.no-sidebar:not(.search-results) article:not(.type-page) .entry-content {
	display: block;
	float: none;
	max-width: 1600px;
	width: 90%;
	margin: 0 auto;
	padding: 3rem 0;
}
body.no-sidebar:not(.search-results) article:not(.type-page) .entry-footer,.no-sidebar .entry-footer {
	display: block;
	float: none;
	max-width: 1300px;
	width: 90%;
	margin: 0 auto;
}
body.archive article {
	max-width: 1300px;
	margin: 0 auto;
	width: 88%;
	border-bottom: 1px dotted #999;
	padding: 3rem 0;
}
body.archive article .entry-header a {
	color: #222;
}
body.archive article:first-of-type {
	margin-top: 0;
}
body.archive article .cont-tx {
	margin-bottom: 15px;
}
body.archive article .read-more {
	text-align: right;
}
body.archive article .read-more a {
	background-color: #147FC1;
	border-radius: 50vh;
	box-sizing: border-box;
	color: #FFF;
	font-size: .875rem;
	padding: 0.25rem 2rem;
	display: inline-block;
}
body.archive.no-sidebar:not(.search-results) article:not(.type-page) .entry-content {
	width: auto;
}
body.archive.no-sidebar:not(.search-results) article:not(.type-page) .entry-footer {
	width: auto;
}
body.archive.no-sidebar:not(.search-results) article:not(.type-page):last-of-type {
    border-bottom: none;
}
body.archive.post-type-archive-works article,body.archive.tag article {
	width: 100%;
}
.post-navigation,
.post-navigation .post-title,
.post-navigation div + div {
    border-style: none;
    font-size: 1rem;
    font-weight: 400;
}
.post-navigation .post-title {
	font-family: "Noto Sans JP","Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "Helvetica Neue", "Helvetica",Verdana, sans-serif;
	font-size: 0.875rem;
}
.post-navigation span {
	display: inline;
}
div.nav-next {
    text-align: right;
}

.post-navigation a,
.post-navigation .meta-nav {
    padding: 0;
    line-height: 1;
    margin: 0;
}
.post-navigation a {
	display: inline-block;
    background-color: #EFEFEF;
    box-sizing: border-box;
    padding: 1rem;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	-ms-border-radius: 6px;
	border-radius: 6px;
}
.post-navigation .meta-nav {
	display: none;
}
nav.navigation {
    border-top: medium solid #999;
    border-bottom: thin solid #999;
    padding: 0.5rem 0;
}
.pagination .nav-links::after,
.pagination::after,
.pagination .nav-links::before,
.pagination::before {
    display: none;
}

.pagination .prev,
.pagination .next {
    background-color: transparent !important;
    color: #999 !important;
}
.comments-title,
.comment-reply-title,
.comment-notes,
.comment-form label,
.logged-in-as {
    font-size: 1rem;
    font-weight: 100;
    border-style: none;
}

.comments-title {
    font-weight: 400;
}

.comment-form {
    padding-top: 0.5em;
}

.comment-notes,
.comment-form label,
.logged-in-as {
    font-size: 0.8rem;
}

input[type="submit"] {
    font-size: 0.8rem;
}

p.comment-form-comment,
p.comment-form-author,
p.comment-form-email,
p.comment-form-url,
p.form-submit {
    margin-bottom: 0.5em;
}

.comments-area {
    border-top: thin solid #999;
    padding-bottom: 0.5rem;
    margin-bottom: 2rem;
}

.comment-list article {
    padding: 0.2rem;
}

.comment-metadata {
    margin-bottom: 0.5rem;
}

.comment-reply-link {
    margin-top: 0.5rem;
}
.pagination .page-numbers {
	margin: 0 4px;
}
.page-header {
	border-top: none;
	padding-top: 0;
}
.gallery {
	margin: 10px auto;
	width: 98%;
}
.gallery-item a {
	display: inline-block;
}
.gallery-item img {
	width: 100% !important;
	height: auto;
}
.gallery-caption {
	font-style: normal;
}
.entry-content ol,.entry-content ul {
	width: 96%;
	margin: auto;
	padding: 0 0 1.25rem 0;
}
.entry-content hr {
	background: #999;
	margin: 30px auto;
}
.site-main {
	margin-bottom: 0;
	padding-bottom: 3.25rem;
}
body.archive.no-sidebar:not(.search-results) article:not(.type-page) .entry-content {
	padding: 1rem 0;
}
input[type="submit"] {
    padding: 1.25rem 2rem;
	box-sizing: border-box;
    font-size: 1rem;
    margin-top: 1.25rem;
	background: #124582;
	color: #FFF;
	font-weight: 500;
	font-family: "Noto Sans JP","Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "Helvetica Neue", "Helvetica",Verdana, sans-serif;
}
button:hover,
button:focus,
input[type="button"]:hover,
input[type="button"]:focus,
input[type="reset"]:hover,
input[type="reset"]:focus,
input[type="submit"]:hover,
input[type="submit"]:focus {
	background: #124582;
}
.no-sidebar .entry-content,.no-sidebar .page-content,.no-sidebar .entry-summary {
	max-width: 1300px;
	margin: 0 auto;
	padding: 8rem 0;
	box-sizing: border-box;
}
body.home.no-sidebar .entry-content {
	max-width: inherit;
	width: 100%;
	padding: 0;
	margin: 0;
}
.no-sidebar .entry-summary,body.single .entry-content {
	padding: 1.25rem 0;
}
body.no-sidebar:not(.search-results).single article:not(.type-page) .entry-content {
	max-width: 1300px;
	margin: auto;
	padding: 3rem 0;
}
body.no-sidebar:not(.search-results).single article:not(.type-page) .entry-footer {
	max-width: 1300px;
	margin: auto;
}
body.no-sidebar:not(.search-results).single-works article:not(.type-page) .entry-content,body.no-sidebar:not(.search-results).single-works article:not(.type-page) .entry-footer {
	padding: 2.5rem 0;
	max-width: 1300px;
}
body.home .entry-content {
	padding: 0;
}
.no-sidebar .entry-header, .no-sidebar .page-header, body.error404 .page-header, body.search-no-results .page-header {
    box-sizing: border-box;
    font-weight: 700;
	background-color: #147FC1;
	background-image: url(images/h1-bg.png);
	background-position: right center;
	background-repeat: no-repeat;
	background-size: cover;
	padding: 100px 10px;
}
.entry-title,.page-title {
	font-size: 2.5rem;
	margin: 0 auto;
	font-weight: 700;
	text-align: center;
	font-family: "Noto Serif JP", serif;	
	color: #FFF;
	text-shadow: 0px 3px 3px rgba(9, 65, 127, 0.65);
}
body.archive article .entry-header, body.search-results.no-sidebar .entry-header {
    background-color: transparent;
    background-image: none;
    max-width: 1300px;
    margin: auto;
    padding: 1rem 0;
    color: #000;
    text-align: left;
    border-bottom: none;
    min-height: inherit;
}
body.archive article .entry-title,body.search-results.no-sidebar .entry-header {
	font-size: 1.25rem;
	padding: 1.75rem 0 0.625rem 0;
	width: auto;
	-moz-text-shadow: none;
	-webkit-text-shadow: none;
	-ms-text-shadow: none;
	text-shadow: none;
	text-align: left;
}
body.archive article:first-of-type .entry-title {
	padding-top: 3.75rem;
}
body.search-results.no-sidebar .entry-header {
	margin-bottom: 0;
	padding: 0.625rem 0;
}
body.search-results.no-sidebar .entry-header:after {
	display: none;
}
body.search-results article {
	padding-bottom: 0;
	margin-bottom: 0;
}
body.search-results article .entry-title {
	font-weight: normal;
	padding: 0.375rem 0.5rem 0.375rem 1.5rem;
	font-size: 1.35rem;
	position: relative;
	-moz-text-shadow: none;
	-webkit-text-shadow: none;
	-ms-text-shadow: none;
	text-shadow: none;
	text-align: left;
}
body.search-results article .entry-title:before {
    content: '→';
    position: absolute;
    left: 0;
    top: 5px;
    color: #000;
}
body.search-results article:first-of-type {
	margin-top: 3.75rem;
}
body.archive article .entry-header:after {
	display: none;
}
body.post-type-archive .entry-title a {
	text-decoration: underline;
}
.no-sidebar .comments-area {
	max-width: 1600px;
	margin: auto;
	width: 88%;
}
nav.navigation {
    border: none;
	text-align: left;
}
.pagination {
	margin-top: 3.75rem;
}
.pagination .page-numbers {
    margin: 0 0.375rem;
    box-sizing: border-box;
    border: 1px solid #999;
    padding: 0.675rem 0.875rem;
	background-color: #FFF;
}
.page-numbers.dots {
    border: none;
	background-color: transparent !important;
}
.page-numbers.current {
    border: none;
    background-color: #666;
    color: #FFF;
    font-weight: normal;
}
.pagination a {
	color: #000;
}
.pagination a:hover {
	background-color: #F0F2D9;
}
.pagination a.page-numbers.prev, .pagination a.page-numbers.next {
	padding: 0;
	background-color: #DEDEDE !important;
}
.pagination a.page-numbers.prev:hover, .pagination a.page-numbers.next:hover {
	background-color: #CCC !important;
}
.pagination .next:before,.pagination .prev:before {
	color: #333;
}
.pagination .prev,.pagination .next {
	width: 42px;
	height: 42px;
}
.pagination.top .prev, .pagination.top .next {
	top: 16px;
	right: 8px;
}
.pagination .prev,.pagination.top .prev {
	right: 58px;
}
.pagination .prev:before, .pagination .next:before {
    height: 42px;
    line-height: 42px;
    width: 42px;
}
.pagination .nav-links {
	padding-right: 8rem;
}
.pagination .current .screen-reader-text {
    position: absolute !important;
}
#fancybox-wrap {
	z-index: 99999;
	width: auto !important;
}
button, button[disabled]:hover, button[disabled]:focus, input[type="button"], input[type="button"][disabled]:hover, input[type="button"][disabled]:focus, input[type="reset"], input[type="reset"][disabled]:hover, input[type="reset"][disabled]:focus, input[type="submit"], input[type="submit"][disabled]:hover, input[type="submit"][disabled]:focus {
	margin: 0 1rem 0.625rem 1rem;
	font-weight: 500;
}
body.home .site-main > article {
	margin-bottom: 0;
}
.wp-caption .wp-caption-text {
	font-style: normal;
}
.no-sidebar .post-navigation,.no-sidebar .pagination {
	max-width: 1300px;
	width: 88%;
	margin: 1.125rem auto;
}
body.single .nav-links .nav-previous {
	width: 48%;
	text-align: right;
	vertical-align: top;
	letter-spacing: normal;
	float: left;
	margin: 0 1%;
}
body.single .nav-links .nav-next {
	width: 48%;
	text-align: left;
	vertical-align: top;
	letter-spacing: normal;
	float: right;
	margin: 0 1%;
}
/* common */
.google-maps {
    height: 0;
    margin: 0 auto;
    overflow: hidden;
    padding-bottom: 360px;
    position: relative;
}
.google-maps iframe {
    height: 100% !important;
    left: 0;
    position: absolute;
    top: 0;
    width: 100% !important;
}
.youtube {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}

@media screen and (min-width: 61.5625em) {
	.site-main > article {
		margin-bottom: 2.5rem;
	}
	.site-branding, .site-header-menu, .header-image {
		margin: 0 auto;
	}
	.site-header {
		padding: 0;
	}
	.content-bottom-widgets .widget-area {
		margin-bottom: 0;
	}
	.entry-content h2, .entry-summary h2, .comment-content h2 {
		font-size: 1.5rem;
		line-height: 1.5;
		margin-top: 6rem;
		margin-bottom: 2.5rem;
	}
	.entry-content h3, .entry-summary h3, .comment-content h3 {
		font-size: 1.25rem;
		line-height: 1.5;
		margin-top: 2.5rem;
		margin-bottom: 1.875rem;
	}
	.entry-content h4,.entry-summary h4,.comment-content h4 {
		font-size: 1.25rem;
		line-height: 1.5;
		margin-top: 2rem;
		margin-bottom: 2rem;
	}
	.entry-content h5,.entry-summary h5,.comment-content h5 {
		font-size: 1.125rem;
		line-height: 1.5;
		margin-top: 2rem;
		margin-bottom: 2rem;
	}
	.entry-content h6, .entry-summary h6,.comment-content h6 {
		font-size: 1.125rem;
		line-height: 1.5;
		margin-top: 2rem;
		margin-bottom: 2rem;
		font-style: normal;
	}
}
@media screen and (min-width: 56.875em) {
	.widget input[type="search"].search-field {
		max-width: 480px;
	}
	.widget input {
		font-size: 1.25rem;
		line-height: normal;
	}
}
@media screen and (min-width: 44.375em) {
	body:not(.custom-background-image)::before,body:not(.custom-background-image):after {
        height: 0;
    }
	.site-main {
		margin-bottom: 0;
	}
	.site-header {
		padding: 0;
	}
	.site-branding {
		margin: 0;
	}
	.site-title {
		font-family: "Noto Sans JP","Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "Helvetica Neue", "Helvetica",Verdana, sans-serif;
		font-size: 1.625rem;
		font-weight: 500;
	}
}
@media screen and (min-width:1025px){
	.site-header-main {
		margin: 0 auto;
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		height: 100px;
	}
	.site-header.fixed {
		position: fixed;
		width: 100%;
		z-index: 10;
		box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.25);
	}
	body.contact .site-header.fixed {
		z-index: 1002;
	}
	.site-title {
		position: relative;
		z-index: 2;
	}
	.site-branding {
		padding: 0 0 0 20px;
	}
	.site-header-main .main-nav {
		position: absolute;
		right: 20px;
		top: initial;
	}
	.site-header.fixed .site-header-main {
		height: 70px;
	}
	.site-title img {
		max-width: 150px;
	}
	.site-header.fixed .site-title img {
		max-width: 120px;
	}
	.site-header .site-title {
		font-size: 1.625rem;
	}
	.site-header.fixed .site-title {
		font-size: 1.375rem;
	}
}
@media screen and (max-width:1400px){
	.no-sidebar .post-navigation, .no-sidebar .pagination {
		margin-left: auto !important;
		margin-right: auto !important;
	}
	body.search-results article {
		width: 90%;
		margin: auto;
	}
}
@media screen and (max-width:1320px){
	.no-sidebar .entry-content, .no-sidebar .entry-summary, .no-sidebar .entry-footer, .no-sidebar .comments-area, .no-sidebar .image-navigation, .no-sidebar .post-navigation, .no-sidebar .pagination, .no-sidebar .page-content, .no-sidebar .content-bottom-widgets {
		margin-right: 4%;
		margin-left: 4%;
	}
}
@media screen and (max-width:1024px){
	.site-title {
		text-align: left;
	}
	.no-sidebar .entry-content, .no-sidebar .entry-summary, .no-sidebar .entry-footer, .no-sidebar .comments-area, .no-sidebar .image-navigation, .no-sidebar .post-navigation, .no-sidebar .pagination, .no-sidebar .page-content, .no-sidebar .content-bottom-widgets {
		margin-right: 2%;
		margin-left: 2%;
	}
	.no-sidebar .entry-header, .no-sidebar .page-header, body.error404 .page-header, body.search-no-results .page-header {
		padding: 3.75rem 1.25rem;
	}
	.entry-title, .page-title {
		font-size: 1.75rem;
		text-align: left;
	}
	.site-footer .inner .logo {
		width: 100%;
		margin: 0 auto;
		text-align: center;
		padding-bottom: 1rem;
	}
	.site-footer .inner p {
		text-align: center;
	}
	.site-footer .inner .name, .site-footer .inner .add {
		width: 100%;
		margin: 10px auto 0 auto;
	}
	.cr {
		text-align: center;
	}
	.site-footer {
		padding-bottom: 40px;
	}
	.no-sidebar .entry-content, .no-sidebar .page-content, .no-sidebar .entry-summary {
		padding-top: 5rem;
	}
}
@media screen and (max-width:768px){
	.no-sidebar .entry-content, .no-sidebar .page-content, .no-sidebar .entry-summary {
		padding: 2.5rem 0;
	}
	body.archive article .read-more {
		text-align: center;
		margin-top: 1rem;
	}
}
@media screen and (max-width:640px){
	.no-sidebar .entry-header, .no-sidebar .page-header, body.error404 .page-header, body.search-no-results .page-header {
		padding: 2.5rem 0.75rem;
	}
	.entry-title, .page-title {
		font-size: 1.5rem;
	}
	.kojya {
		display: block;
		margin-left: 0;
	}
	body.archive article {
		padding: 2rem 0;
	}
	body.archive article .entry-header, body.search-results.no-sidebar .entry-header {
		padding: .5rem 0;
	}
	body.archive article .entry-header h2, body.search-results.no-sidebar .entry-header h2 {
		font-size: 1.25rem;
	}
	body.archive article .cont-tx {
		font-size: .9rem;
	}
	.site-branding {
		padding-left: 10px;
	}
	.gallery-columns-4 .gallery-item {
		max-width: 50%;
	}
}
@media screen and (max-width:480px){
	.entry-title, .page-title {
		text-align: left;
	}
	.cr {
		padding: 4px 8px;
		text-align: left;
		line-height: 1.5;
	}
	.no-sidebar .entry-header, .no-sidebar .page-header, body.error404 .page-header, body.search-no-results .page-header {
		background-position: center;
	}
}
@media screen and (max-width:380px) {
	.site-header-main {
		padding-right: 65px;
	}
	.site-title {
		font-size: .9rem;
	}
	.site-title small {
		font-size: .75rem;
	}
}
