/**
 * 1.0 Reset
 * -----------------------------------------------------------------------------
 */

body,
button,
input,
select,
textarea {
	font-family: Open Sans, sans-serif;
	font-size: 18px;
}

h4 {
	margin: 72px 0 36px;
}

p {
	margin: 24px 0;
}

code,
kbd,
tt,
var,
samp,
pre {
	font-family: Courier, monospace, serif;
}


/**
 * 2.0 Repeatable Patterns
 * -----------------------------------------------------------------------------
 */

.wp-caption img[class*="wp-image-"],
figure.wp-block-image img[class*="wp-image-"] {
	box-shadow: 2px 2px 6px 2px rgba(0,0,0,0.75);
}

.wp-caption.no-shadow img[class*="wp-image-"],
figure.wp-block-image.no-shadow img[class*="wp-image-"] {
	box-shadow: none;
}


/**
 * 3.0 Basic Structure
 * -----------------------------------------------------------------------------
 */

.site {
	max-width: 100%;
}


/**
 * 4.0 Header
 * -----------------------------------------------------------------------------
 */

.site-header {
	background-color: #1c457e;
	max-width: 100%;
}

.search-toggle {
	background-color: #1c457e;
}

.search-toggle:hover,
.search-toggle.active {
	background-color: #34c6f4;
}

.search-box {
	background-color: #34c6f4;
}


/**
 * 5.0 Navigation
 * -----------------------------------------------------------------------------
 */

.site-navigation a {
	text-transform: none;
}

.site-navigation .current_page_item > a,
.site-navigation .current_page_ancestor > a,
.site-navigation .current-menu-item > a,
.site-navigation .current-menu-ancestor > a {
	color: #fff;
}

.menu-toggle {
	background-color: #1c457e;
}

.menu-toggle:active,
.menu-toggle:focus,
.menu-toggle:hover {
	background-color: #34c6f4;
}


/**
 * 6.0 Content
 * -----------------------------------------------------------------------------
 */

.hentry {
	max-width: inherit;
}

.site-content .entry-header,
.site-content .entry-content,
.site-content .entry-summary,
.site-content .entry-meta,
.page-content {
	max-width: inherit;
}


/**
 * 6.2 Entry Header
 * -----------------------------------------------------------------------------
 */

.site-content .entry-header {
	padding: 0 10px;
	margin-bottom: 24px;
}

.entry-header .entry-title {
	text-transform: none;
}


/**
 * 6.3 Entry Meta
 * -----------------------------------------------------------------------------
 */

.page .byline {
	display: inline;
}


/**
 * 6.4 Entry Content
 * -----------------------------------------------------------------------------
 */

.entry-content table,
.comment-content table {
	font-size: 16px;
}

.entry-content a.anchor {
	margin-left: .4em;
	font-weight: normal;
	color: #777;
}

.entry-content li {
	margin: 0.8ex auto;
}

.entry-content p > code,
.entry-content li > code {
	background-color: #f3f4f5;
	padding: 2px 4px;
}

.entry-content .notice {
	border-left: 4px solid #ffb900;
	padding-left: 12px;
}


/**
 * 6.14 Comments
 * -----------------------------------------------------------------------------
 */

.comment-reply-title,
.comments-title {
	font: 900 16px/1.5 Open Sans, sans-serif;
}


/**
 * 5.0 Navigation
 * -----------------------------------------------------------------------------
 */

.primary-navigation {
	font-size: 14px;
}


/**
 * 11.0 Media Queries
 * -----------------------------------------------------------------------------
 */

@media screen and (min-width: 673px) {
	.content-sidebar {
		border: inherit;
		float: inherit;
		margin-left: inherit;
		padding: inherit;
		position: inherit;
		width: inherit;
	}

	.site-content {
		margin-right: inherit;
	}
}

@media screen and (min-width: 594px) {
	.site-content .entry-header {
		padding-right: 30px;
		padding-left: 30px;
	}
}

@media screen and (min-width: 783px) {
	.primary-navigation li:hover > a,
	.primary-navigation li.focus > a {
		background-color: #34c6f4;
	}
}

@media screen and (min-width: 846px) {
	.content-sidebar {
		border: 0;
		float: right;
		margin-left: -360px;
		padding: 48px 30px 24px;
		width: 360px;
		position: relative;
	}

	.site-content {
		margin-right: 360px;
	}

	.content-area,
	.content-sidebar {
		padding-top: 72px;
	}
}

@media screen and (min-width: 1008px) {
	.search-box-wrapper {
		padding-left: inherit;
	}

	.main-content {
		float: inherit;
	}

	.site-content {
		margin-left: inherit;
	}

	.site:before {
		display: none;
	}

	#secondary {
		background-color: inherit;
		border: inherit;
		clear: inherit;
		float: inherit;
		margin: inherit;
		min-height: inherit;
		width: inherit;
	}

	.site-description {
		display: none;
		margin: 0;
	}

	.footer-sidebar .widget {
		width: 45%;
	}
}

@media screen and (min-width: 1080px) {
	.search-box-wrapper {
		padding-left: inherit;
	}

	.archive-header,
	.comments-area,
	.image-navigation,
	.page-header,
	.page-content,
	.post-navigation,
	.site-content .entry-header,
	.site-content .entry-content,
	.site-content .entry-summary,
	.site-content footer.entry-meta {
		max-width: 728px;
	}
}

@media screen and (min-width: 1110px) {
	.archive-header,
	.comments-area,
	.image-navigation,
	.page-header,
	.page-content,
	.post-navigation,
	.site-content .entry-header,
	.site-content .entry-content,
	.site-content .entry-summary,
	.site-content footer.entry-meta {
		padding-right: 30px;
		padding-left: 30px;
	}
}

@media screen and (min-width: 1218px) {
	.archive-header,
	.comments-area,
	.image-navigation,
	.page-header,
	.page-content,
	.post-navigation,
	.site-content .entry-header,
	.site-content .entry-content,
	.site-content .entry-summary,
	.site-content footer.entry-meta {
		margin-right: auto;
	}
}


/**
 * 13.0 Google AdSense
 * -----------------------------------------------------------------------------
 */

.cf7com-adsense {
	margin: 48px 0 96px;
	max-width: 728px;
}

.google-auto-placed {
	margin: 48px 0 96px;
}

.cf7com-adsense ins {
	background: white;
}

.content-sidebar .cf7com-adsense {
	text-align: center;
	margin: 24px 0 48px;
}

body ins.adsbygoogle::before {
	display: inline-block;
	width: 100%;
	padding: 4px 0;
	border-radius: 16px 16px 0 0;
	background-color: #f3f4f5;
	color: #40464d;
	font-weight: normal;
	font-size: 16px;
	content: "Advertisement";
}

body ins.adsbygoogle:lang(ja)::before {
	content: "広告";
}

body ins.adsbygoogle:lang(es)::before {
	content: "Anuncio";
}

@media screen and (min-width: 456px) {
	.content-sidebar .cf7com-adsense {
		width: 300px;
		height: auto;
		min-height: 250px;
	}
}

@media screen and (min-width: 1218px) {
	.full-width .site-content .cf7com-adsense {
		margin-right: auto;
	}
}

@media print {
	.cf7com-adsense {
		display: none;
	}
}


/**
 * 14.0 Bogo
 * -----------------------------------------------------------------------------
 */

ul.bogo-language-switcher li {
	display: block;
	padding: 8px;
}

ul.bogo-language-switcher li.current {
	text-decoration: underline;
}


/**
 * 15.0 Donate Page
 * -----------------------------------------------------------------------------
 */

.wapuloader-demo .ajax-loader {
	visibility: hidden;
	display: inline-block;
	position: relative;
	background-image: none;
	background-color: transparent;
	opacity: 1;
	width: 32px;
	height: 32px;
	border: none;
	padding: 0;
	margin: 0 0 0 8px;
	vertical-align: middle;
}

.wapuloader-demo .ajax-loader::before {
	position: absolute;
	content: url('https://contactform7.com/wp-content/plugins/wapuloader/wapuu-original.svg');
	background-color: transparent;
	width: 32px;
	height: 32px;
	border: none;
	transform-origin: center;
	animation-name: rolling-wapuu;
	animation-duration: 1000ms;
	animation-timing-function: ease-out;
	animation-direction: alternate;
	animation-iteration-count: infinite;
}

.wapuloader-demo .ajax-loader {
	visibility: visible;
}

@media (prefers-reduced-motion: reduce) {
	.wapuloader-demo .ajax-loader::before {
		animation-name: blink;
		animation-duration: 4000ms;
		animation-timing-function: linear;
	}
}

@keyframes rolling-wapuu {
	from {
		transform: rotate(0deg);
		left: 0;
	}

	to {
		transform: rotate(360deg);
		left: 64px;
	}
}

@keyframes blink {
	from {
		opacity: 0.1;
	}

	50% {
		opacity: 0.9;
	}

	to {
		opacity: 0.1;
	}
}


/**
 * 16.0 - Contact Forms
 * -----------------------------------------------------------------------------
 */

.wpcf7 > form {
	border: 1px solid #aaa;
	padding: 20px;
	margin: 1em;
}

.wpcf7 > form input[type="submit"][disabled],
.wpcf7 > form input[type="submit"][disabled]:hover,
.wpcf7 > form input[type="submit"][disabled]:focus {
	background-color: #999;
}

.wpcf7 > form textarea.oneliner {
	height: 38px;
}

.wpcf7 > form.payment-required .hideonpayment {
	display: none;
}
