/*
Theme Name: MT Labs' Main Theme with Bootstrap integration
Version: 1.0
Derived from the Original Theme: Twenty Eleven
Original Theme URI: http://wordpress.org/extend/themes/twentyeleven
Original Author: the WordPress team
Original Author URI: http://wordpress.org/
Original Version: 1.5
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/


/*  Attempt to fix sidescrolling problem on iphone*/
body {
	overflow-x: hidden;
	position: relative;
}

/* =Global
----------------------------------------------- */
body, input, textarea {
	color: #373737;
	font-family: "メイリオ", Meiryo, "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif; /* MTL Mat see tips.xls */
		/* font: 15px -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, Arial, sans-serif; */	/* MTL: divided into font-family and font-size for IE debugger */
		/* font-size: 100%; */	/* MTL: was 15px; not here, moved to above */
	line-height: 1.333;
}

input, textarea, select {	/* MTL: added instead */
	font-size: 100%;
}

/* Headings */
h1,h2,h3,h4,h5,h6 {
	clear: both;
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
}

/* Text elements */
hr, p {
	margin-bottom: 16px;
}

strong, .strong  {
	font-weight: bold;
}

cite, em, i {
	font-style: italic;
}

blockquote {
	font-family: Georgia, "Bitstream Charter", serif;
	font-style: italic;
	font-weight: normal;
	margin: 0 3em;
}

blockquote em, blockquote i, blockquote cite {
	font-style: normal;
}

blockquote cite {
	color: #666;
	font: 12px "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: 300;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

pre {
	background: #f4f4f4;
	font: 13px "Courier 10 Pitch", Courier, monospace;
	line-height: 1.5;
	margin-bottom: 1.625em;
	overflow: auto;
	padding: 0.75em 1.625em;
}

code, kbd, samp, var {
	font: 13px Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr, acronym, dfn {
	border-bottom: 1px dotted #666;
	cursor: help;
}

address {
	display: block;
	margin: 0 0 1.625em;
}

ins {
	background: #fff9c0;
	text-decoration: none;
}

sup,
sub {
	font-size: 10px;
	height: 0;
	line-height: 1;
	position: relative;
	vertical-align: baseline;
}

sup {
	bottom: 1ex;
}

sub {
	top: .5ex;
}

small {
	font-size: smaller;
}

a {
	color: #0b489a;
}
a:hover {
	text-decoration: none;
}

/* Assistive text */
.assistive-text {
	position: absolute !important;
	clip: rect(1px, 1px, 1px, 1px);
}

#access a.assistive-text:active,
#access a.assistive-text:focus {
	background: #eee;
	border-bottom: 1px solid #ddd;
	color: #1982d1;
	clip: auto !important;
	font-size: 12px;
	position: absolute;
	text-decoration: underline;
	top: 0;
	left: 7.6%;
}

/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}

/* Alignment */
.alignleft,
.alignright {	/* KAZ: MAR-2017: CHKHTML: added */
	margin-top: 0.2em;
	margin-bottom: 16px;
}
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.625em;
}
.alignright {
	display: inline;
	float: right;
	margin-left: 1.625em;
}
.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/* =Header
----------------------------------------------- */
#breadcrumbs {
	font-size: 80%;		/* 16px * 94% * 80% = 12.03px */
	line-height: 1;
	margin: 0 auto 25px;
}
.navbar {
	background-color: #e3f2fd;
	padding: 10px 0 14px;
	border-bottom: 1px #d2ecff solid;
}
.blog-masthead {
	margin-bottom: 3rem;
}
#blog-title h1 {
	color: #373737;
	margin-bottom: 2px;
}
#blog-description {
	margin-bottom: 0;
	font-size: 0.9em;
    padding-left: 3px;
}
.navbar-collapse {
	border-top: 1px solid #666;
	padding-top: 0.7rem;
}
.navbar-light .navbar-nav .nav-link {
    color: #666;
}
.navbar-light .navbar-nav .nav-link:hover {
    color: #0b489a;
}

/* =Content
----------------------------------------------- */

#topmain, #main {
	padding-bottom: 3rem;
}
.blog-categories,
.blog-author {
	margin-left: 1em;
}
.blog-date,
.blog-author,
.blog-categories,
.blog-categories a {
	font-size: 0.8rem;
	color: #999;
}

.blog-categories a {
	text-decoration: underline;
}
.blog-categories a:hover {
	color: #424242;
}

h1.entry-title,
.blog-post h2 {
	font-size: 2.2rem;
}

.blog-post h2 a {
	color: #0b489a;
}

.blog-post h2 a:hover {
	color: rgba(11, 72, 154, 0.8);
}

.blog-post a.read-more {
	color: #721c24;
}

.blog-post a.read-more:hover {
	color: rgba(114, 28, 36, 0.7);
	text-decoration: underline;
}

.blog-post img, 
#my-blog .entry-content img,
#my-blog .entry-summary img {
	max-width: 100%;
	height: auto;
	margin-bottom: 1rem;
	padding: 6px;
}

/* Single Blog Posts */

header.entry-header {
	margin-bottom: 2rem;
}

footer.entry-meta {
	text-align: right;
	margin-bottom: 1rem;
}

footer.entry-meta .edit-link {
	background: #eee;
    padding: 3px 10px;
    border-radius: 5px;
}

footer.entry-meta a {
	color: black;
}

#nav-single {
	text-align: center;
	clear: both;
}

#nav-single a.btn.next {
	margin-right: 20px;
}


/* Images */
p img,
.wp-caption {
	margin-top: 0.4em;
}
.wp-caption {
	max-width: 96%;
	background: #eee;
	margin-bottom: 1em;	
	padding: 5px 0;	
}
.wp-caption img {
	display: block;
	margin: 0 auto;
	max-width: 98%;
}
.wp-caption img[class*='wp-image-'] {	/* MTL: added against img[class*='wp-image-'] */
	border: 0;
	padding: 0;
}
.wp-caption .wp-caption-text,
.gallery-caption {
	color: #666;
	font-size: 12px;
}
.wp-caption .wp-caption-text {
	margin-bottom: 1px;	/* MAT: was 16px; MTL was 0.6em */
	padding: 2px 0 0 5px;	/* MAT: was 5px 0 5px 5px KAZ: was 10px 0px 5px 40px */
	position: relative;
	background: transparent;	/* MAT */
	text-align: center;
}
#content .gallery {
	margin: 0 auto 1.625em;
}
#content .gallery a img {
	border: none;
}
img#wpstats {
	display: block;
	margin: 0 auto 1.625em;
}
#content .gallery-columns-4 .gallery-item {
	width: 23%;
	padding-right: 2%;
}
#content .gallery-columns-4 .gallery-item img {
	width: 100%;
	height: auto;
}

/* Image borders */
.wp-caption img {
	border-color: #eee;
}
a:focus img[class*="align"],
a:hover img[class*="align"],
a:active img[class*="align"],
a:focus img[class*="wp-image-"],
a:hover img[class*="wp-image-"],
a:active img[class*="wp-image-"],
#content .gallery .gallery-icon a:focus img,
#content .gallery .gallery-icon a:hover img,
#content .gallery .gallery-icon a:active img {/* Add some useful style to those fancy borders for linked images ... */
	 	 /* MTL MAT background: #eee; */
	border-color: #bbb;
}
.wp-caption a:focus img,
.wp-caption a:active img,
.wp-caption a:hover img {/* ... including captioned images! */
	background: #fff;
	border-color: #ddd;
}

/* Make sure embeds and iframes fit their containers */
embed,
iframe,
object {
	max-width: 100%;
}

/* Author Info */
#author-info {
	font-size: 12px;
	overflow: hidden;
}
.singular #author-info {
	background: #f9f9f9;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	margin: 2.2em -35.6% 0 -35.4%;
	padding: 20px 35.4%;
}
.archive #author-info {
	border-bottom: 1px solid #ddd;
	margin: 0 0 2.2em;
	padding: 0 0 2.2em;
}
#author-avatar {
	float: left;
	margin-right: -78px;
}
#author-avatar img {
	background: #fff;
	-moz-border-radius: 3px;
	border-radius: 3px;
	-webkit-box-shadow: 0 1px 2px #bbb;
	-moz-box-shadow: 0 1px 2px #bbb;
	box-shadow: 0 1px 2px #bbb;
	padding: 3px;
}
#author-description {
	float: left;
	margin-left: 108px;
}
#author-description h2 {
	color: #000;
	font-size: 15px;
	font-weight: bold;
	margin: 5px 0 10px;
}

/* Singular content styles for Posts and Pages */
.singular article {
	margin-bottom: 3rem;
}
blockquote.pull {
	font-size: 21px;
	font-weight: bold;
	line-height: 1.6125em;
	margin: 0 0 1.625em;
	text-align: center;
}
.singular blockquote.pull {
	margin: 0 -22.25% 1.625em;
}
.pull.alignleft {
	margin: 0 1.625em 0 0;
	text-align: right;
}
.singular .pull.alignleft {
	margin: 0 1.625em 0 -22.25%;
}
.pull.alignright {
	margin: 0 0 0 1.625em;
	text-align: left;
}
blockquote.pull.alignleft,
blockquote.pull.alignright {
	width: 33%;
}
.singular .pull.alignright {
	margin: 0 -22.25% 0 1.625em;
}
.singular blockquote.pull.alignleft,
.singular blockquote.pull.alignright {
	width: 33%;
}

/* =error404
----------------------------------------------- */

.error404 #primary #searchform {
	background: #f9f9f9;
	border: 1px solid #ddd;
	overflow: hidden;
	margin: 0 0 25px;
}
.error404 #primary #s {
	width: 95%;
}

/* =Navigation
-------------------------------------------------------------- */
/* DEC-2018 KAZ: added these */
.wp-pagenavi {
	clear: both;
	text-align: center;
	margin-top: 3rem;
}
.wp-pagenavi > span,
.wp-pagenavi > a {
	border-radius: .25rem;
	display: inline-block;
	min-width: 32px;
	margin: 0 5px;
	padding: 3px 5px;
	line-height: 1.5;
	font-size: 1rem;
	vertical-align: middle;
	transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
.wp-pagenavi > span.current {
	border: #666 1px solid;
	color: #666;
}
.wp-pagenavi > a {
	border: #0b489a 1px solid;
	color: #0b489a;
}
.wp-pagenavi > a:hover {
	background-color: #0b489a;
	border-color: #0b489a;
	color: #fff;
	text-decoration: none;
}


/* =Comments
----------------------------------------------- */


/* Post author highlighting */
.commentlist > li.bypostauthor {
	background: #ddd;
	border-color: #d3d3d3;
}
.commentlist > li.bypostauthor .comment-meta {
	color: #575757;
}
.commentlist > li.bypostauthor .comment-meta a:focus,
.commentlist > li.bypostauthor .comment-meta a:active,
.commentlist > li.bypostauthor .comment-meta a:hover {
}
.commentlist > li.bypostauthor:before {
	content: url(images/comment-arrow-bypostauthor.png);
}

/* Post Author threaded comments */
.commentlist .children > li.bypostauthor {
	background: #ddd;
	border-color: #d3d3d3;
}
#commentform p:nth-of-type(3) {	/* MTL don't allow to input url to avoid spam */
	display: none;
}

/* =Footer
----------------------------------------------- */
footer.footer {
	background-color: #424242;
}

footer.footer .container {
	padding: 3rem 0;
}

footer a {
	color: #fff;
}

footer a:hover {
	color: #e3f2fd;
}
footer #footer-home-link {
	display: block;
	text-align: center;
	font-size: 90%;
	margin-bottom: 2em;
}
footer #footer-home-link:hover {
	text-decoration: underline;
}
footer #footer-logo {
    margin-bottom: 1rem;
}

footer #footer-logo img {
	width: 200px;
}

#ft_copyright {
	color: #ccc;
	line-height: 30px;
	height: 30px;
	font-size: 70%;
	text-align: center;
}

#ft_copyright p {
	margin-bottom: 0;
}

.wp_social_bookmarking_light {
	width: 200px;
	margin: 0 auto !important;
	clear: both;
}

/* MTL: common entries
-------------------------------------------------------------- */
.left {
	text-align: left;
	display: block;	/* 2016 Mat added these. If you use these for table, list, etc. and can't cover by the following td.right .., please override these invidually. */
}
.center {
	text-align: center;
	display: block;
}
.right {
	text-align: right;
	display: block;
}
td.right, th.right, td.center, th.center, td.left, th.left {
	display: table-cell;
}
li.right, li.right, li.center {
	display: list-item
}
.middle {
	vertical-align: middle;
}
.imgonly {
	line-height: 0;
}
.imgonly a,
a.imgonly {
	display: inline-block;
}
.bold {
	font-weight: bold;
}
.clear {
	clear: both;
}
a.current img, .transbtn:hover, a:hover img {	/* 2016 Mat added a:hover img and notransbtn */
	opacity: 0.75;
	filter: alpha(opacity=75);
}
.notransbtn:hover, a:hover img.notransbtn, #headlogo a:hover img, #ft_links a:hover img {	/* KAZ: DEC-2017: added a:hover img.notransbtn */
	opacity: 1;	/* was initial */
	filter: none;	/* was initial */
}
.ios .transbtn:hover {
/* iOS 8.4.1 で :hover に opacity が指定してあると 2 回タップしないとリンク先に飛ばない。script.js でユーザーエージェントを見て body に class="ios" を追加。 */
	opacity: 1;
	filter: none;
}
.nomargin {	/* 2016 Mat added */
	margin: 0 !important;
}
.onlymarginright{
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	margin-left: 0 !important;
}
.onlymarginleft{
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	margin-right: 0 !important;
}
.nopadding {
	padding: 0 !important;
}
.noborder {
	border: 0px !important;
}
.noclear {
	clear: none !important;
}
.nobackground {
	background: transparent none !important;
}

/* MTL: Sidebar Components
----------------------------------------------- */
.sidebar-module,
.widget_categories,
.widget_archive {
	margin-top: 2rem;
}
.sidebar-module:first-child {
	margin-top: 0;
}
.sidebar-textarea,
.widget_categories,
.widget_archive {
	padding: 1.5rem 1rem;
	background-color: #f5f5f5;
	border-radius: .25rem;
}
.sidebar-textarea .fa-home {
	margin-right: 0.5rem;
}
#blog-sidebar .sidebar-sns-links {
	width: 100%;
	display: -webkit-inline-box;
	display: -moz-inline-box;
	display: -ms-inline-flexbox;
	display: -webkit-inline-flex;
	display: inline-flex;
	-webkit-box-pack: justify;
	-moz-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-around;
	justify-content: space-around;
}
#blog-sidebar a.sidebar-icon.facebook {
	color: #4267b2;
}
#blog-sidebar a.sidebar-icon.linkedin {
	color: #0084bf;;
}
#blog-sidebar a.sidebar-icon.twitter {
	color: #4ab3f4;
}
#blog-sidebar h3,
.widget_categories h3,
.widget_archive h3 {
	font-size: 1.4rem;
}
#blog-sidebar h3 {
	margin-bottom: 1.2rem;
}
.widget_categories ul {
	margin-bottom: 0;
	padding-left: 30px;
}
#blog-sidebar .home-link {
	display: -moz-box;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-moz-box-align: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
}
aside .banner {
	text-align: center;
    margin: 1em auto;
}
aside .banner img {
	max-width: 100%;
}


/* Front Page Components
----------------------------------------------- */
#my-blog footer.entry-meta {
	display: none;
}
#my-blog .blog-post {
	margin-bottom: 5rem;
}
#my-blog .blog-post:last-child {
	margin-bottom: 0;
}


/* Additional Styles for Blog Page
----------------------------------------------- */
/* KAZ: added margins for headings */
#my-blog .entry-content h2 {
	margin-top: 2.5rem;
	margin-bottom: 1rem;
}
#my-blog .entry-content h3 {
	margin-top: 2rem;
	margin-bottom: 0.75rem;
}
#my-blog .entry-content h4 {
	margin-top: 1.75rem;
}
#my-blog .entry-content h5 {
	margin-top: 1.5rem;
}

/* KAZ: added for image with credit information */
#my-blog .entry-content .imgwithcredit {
	margin-bottom: 2rem;
}
#my-blog .entry-content .imgwithcredit img {
	margin-bottom: 0;
	padding: 0;
}
#my-blog .entry-content .imgwithcredit span.credit {
	display: block;
	line-height: 2;
	font-size: 10px;
	text-align: right;
}

/* KAZ: added for code quotations */
#my-blog .entry-content pre.code,
#my-blog .entry-content code {
	font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
	font-size: 88%;
}
#my-blog .entry-content pre.code {
	background-color: #00004c;
	color: #eee;
	margin-bottom: 6px;
	padding: 0.75em 1rem;
	line-height: inherit;
/*	white-space: pre-wrap; */
}
#my-blog .entry-content p + pre.code {
	margin-top: -10px;
}
#my-blog .entry-content pre.code span.keyword {
	color: #3f3;
}
#my-blog .entry-content pre.code span.string {
	color: #f33;
}
#my-blog .entry-content pre.code span.comment {
	color: #c93;
}
#my-blog .entry-content pre.code span.var {
	color: #69f;
}
#my-blog .entry-content code {
	background-color: #d7d7d7;
	margin: 0 0.2rem;
	color: #0056b3;
}


/* =IE8
----------------------------------------------- */
#ie8 section.feature-image.large img {
	width: 100%;
}


/* MTL: Responsive
----------------------------------------------- */
@media ( max-width: 1199px ) {
	#blog-sidebar h3,
	.widget_categories h3 {
		font-size: 1.1rem;
	}
}

@media ( max-width: 991px ) {
	#blog-sidebar {
		margin-top: 4rem;
		border-top: 1px solid #666;
		padding-top: 3rem;
	}
}

@media ( max-width: 767px) {
	.navbar,
	.navbar .container {
		display: block;
	}

	.navbar .container {
		text-align: center;
	}

	#blog-title {
		margin-top: 1rem;
		border-top: 1px solid rgba(11, 72, 154, 0.3);
		padding-top: 1rem;
	}
	.alignleft,
	.alignright {
		display: block;
		float: none;
		margin-right: auto;
		margin-left: auto;
	}
}

@media ( max-width: 450px ) {
	h1.entry-title,
	.blog-post h2 {
		font-size: 1.8rem;
	}

	.logo-img {
		height: 75px;
	}

	#blog-title h1 {
		font-size: 2.25rem;
	}
}

@media ( max-width: 335px ) {
	#blog-title h1 {
		font-size: 2rem;
	}
}


/* =Print
----------------------------------------------- */
@media print {
	.entry-meta .edit-link a {
		display: none;
	}
}
