/*
Theme Name: saibouken-new
Theme URI: https://www.saibouken.or.jp/
Author: Shunji TAKEMOTO
Author URI: https://www.saibouken.or.jp/
Description: saibouken
Version: 1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: saibouken
Tags: blog, photography, portfolio, two-columns, left-sidebar, right-sidebar, custom-menu, custom-header, custom-background, featured-images, theme-options, post-formats, sticky-post, threaded-comments, translation-ready
*/

/*------------------------
= Table Contents
--------------------------
Document Base
Navigation
- Social Media Icons
Pagination
Typography
Footer
Forms
Accessibility
Alignments
Clearings
Content
- Sections
-- Headline and Service
-- Gallery
-- Blog Posts
-- Testiomonials
- Posts and pages
- Comments
Media
- Captions
- Galleries
Elements
Infinite scroll
Responsive
-------------------------*/

/* Reset already include in bootstrap */

/*-------------------------------------------------------------
# Document Base
--------------------------------------------------------------*/
html, body {
	margin: 0;
	padding: 0;
	height: 100%;
}

body {
    line-height: 1;
    font: 14px/24px "Helvetica Neue", YuGothic,"Gothic Medium BBB";
    text-rendering: optimizeLegibility;
    word-wrap: break-word;
    font-weight:normal;
}

h1,
h2,
h3,
h4,
h5,
h6 {line-height:1.4;font-weight:bold;}

h4,
h5,
h6,
h1.entry-title {font-weight: bold;}

h1.entry-title {font-size: 42px;}

a {
    color: #222;
}
a:hover,
a:focus {
    text-decoration:underline dotted;
    outline: none;
    color: #333;
}

.site-description {
    padding: 15px 0;
    font-size: 11px;
    display: inline-block;
}

.entry-content ol li {
    margin-left: 40px;
}
.entry-content ul li {
    margin-left: 40px;
}
.entry-content li ol,
.entry-content li ul {
    margin-left: 20px;
}

.entry-content ul {
    list-style-type: disc;
}

.entry-content ol {
    list-style-type: decimal;
}

.entry-content ol ol {
    list-style-type: lower-alpha;
}

ul, ol {
	list-style-type: none;
}

mark {
    background-color: #000;
    padding: 0.2em;
    color: #fff;
}

.head-content mark {
    padding: 0 0.2em;
}

ul,
ol {
    padding: 0;
}
::selection {
    background: #000;
    color: #fff;
}
::-moz-selection {
    background: #000;
    color: #fff;
}

:focus { outline: 0; }
input:focus,
textarea:focus { outline: 1px solid #ccc; }

.overlay-white {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(255,255,255,.3);
    z-index: 0;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
#main-menu {
    transition: all 0.8s;
}

#main-menu.navbar-default {
    background: white;
    background: rgba(255, 255, 255, 1) !important;
}

.navbar-brand img {max-height: 50px;margin:0;}

#main-menu a.navbar-brand {background:url(/img/logo.svg) no-repeat;background-size:contain;width:302px;height:60px;text-indent:-9999px;margin:10px 0 10px 0;}

#main-menu.navbar-default .navbar-nav > li > a {
    background-color: transparent;
    font-size: 12px;
    letter-spacing: 1px;
}

.navbar-nav > li > a {
	color: #2c2c2c;
}

@media (min-width: 768px) {
.open .dropdown:hover > .dropdown-menu {
    display: block;
    left: 100%;
	top: 0;
	margin-top: 0;
}
.open .dropdown:hover > .dropdown-menu .dropdown .dropdown-menu {
    	display: none;
}
}

.dropdown-menu .dropdown-menu {
    border-radius: 0;
	z-index: 1001;
}

.dropdown-menu.active {
}


.dropdown-menu>.active>a,
.dropdown-menu>.active>a:focus,
.dropdown-menu>.active>a:hover {
	background-color: #999999;
}



.navbar-nav span {display:none;}
.navbar-nav li {border-top:solid 5px transparent;}
.navbar-nav li.active {border-top:solid 5px #E50212;}


.logged-in.admin-bar .navbar-fixed-top {
	top: 28px !important;
}
@media (max-width: 767px) {
	.logged-in.admin-bar .navbar-fixed-top.on {
		top: 46px !important;
	}
}

@media (max-width: 600px) {
	.logged-in.admin-bar .navbar-fixed-top.on {
		top: 0 !important;
	}
}

.on {
    background-color: #ffffff !important;
    padding: 0 !important;
}
.navbar-toggle {
    box-shadow: none;
}
.navbar.navbar-default.navbar-fixed-top {
    border-bottom: 1px solid transparent;
}
.navbar.navbar-default.navbar-fixed-top.on {
    border-bottom: 1px solid #eee;
}
.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .active > a:focus {
    background-color: transparent;
    font-weight: 700;
}

.navbar-default .navbar-toggle,
.navbar-default .navbar-toggle:hover {
    border-radius: 0;
    border: 0;
}

.navbar-default .navbar-toggle:focus {
    background-color: transparent;
}

.navbar-default .navbar-toggle:hover {
    background-color: #2c2c2c;
}

.navbar-default .navbar-toggle{
    background-color: transparent;
}

.navbar-toggle.collapsed .icon-bar,
.navbar-toggle .icon-bar {
    background-color: #2c2c2c;
}

.navbar-toggle:hover>.icon-bar {
    background-color: #ffffff;
}

.single .nav-links {
    margin: 40px 0;
}

.nav-previous, .nav-next {
    width: 50%;
    display: inline-block;
}

.nav-next {
    text-align: right;
}

/*--------------------------------------------------------------
## Social Media Icons menu
--------------------------------------------------------------*/

#menu-social {
}

#menu-social li {
	display: inline-block;
	padding-right: 5px;
}

#menu-social li a::before {
	color: #888;
	content: none;
	font-family: "FontAwesome";
	display: inline-block;
	font-size: 18px;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#menu-social li a[href*="wordpress.org"]::before,
#menu-social li a[href*="wordpress.com"]::before {
	content: '\f19a';
}

#menu-social li a[href*="facebook.com"]::before {
	content: '\f082';
}

#menu-social li a[href*="twitter.com"]::before {
	content: '\f099';
}

#menu-social li a[href*="dribbble.com"]::before {
	content: '\f17d';
}

#menu-social li a[href*="plus.google.com"]::before {
	content: '\f0d5';
}

#menu-social li a[href*="pinterest.com"]::before {
	content: '\f0d2';
}

#menu-social li a[href*="github.com"]::before {
	content: '\f09b';
}

#menu-social li a[href*="tumblr.com"]::before {
	content: '\f173';
}

#menu-social li a[href*="youtube.com"]::before {
	content: '\f167';
}

#menu-social li a[href*="flickr.com"]::before {
	content: '\f16e';
}

#menu-social li a[href*="vimeo.com"]::before {
	content: '\f194';
}

#menu-social li a[href*="instagram.com"]::before {
	content: '\f16d';
}

#menu-social li a[href*="linkedin.com"]::before {
	content: '\f08c';
}

#menu-social li a[href*="soundcloud.com"]::before {
	content: '\f1be';
}

#menu-social li a[href*="vk.com"]::before {
	content: '\f189';
}

#menu-social li a[href*="feeds.feedburner.com"]::before {
	content: '\f09e';
}

/*--------------------------------------------------------------
# Pagination
--------------------------------------------------------------*/

.page-numbers {
    display: inline-block;
    padding-left: 0;
    margin: 20px 0;
    border-radius: 4px;
}

.page-numbers > li {
    display: inline-block;
    padding: 0;
    margin: 0;
}
.page-numbers > li > a,
.page-numbers > li > span {
    background: #f7f7f7;
    border: 0;
    width: 28px;
    height: 28px;
    line-height: 28px;
    padding: 0;
    margin: 0;
    text-align: center;
    color: #111;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    -o-border-radius: 2px;
    border-radius: 2px;
}
.page-numbers>li:first-child>a,
.page-numbers>li:first-child>span {
    border-top-left-radius: 3px;
    border-bottom-left-radius: 3px;
}
.page-numbers .current,
.page-numbers .current:hover,
.page-numbers .current:focus {
    background: #111;
    color: #fff;
}
.page-numbers > li > a:hover,
.page-numbers > li > span:hover,
.page-numbers > li > a:focus,
.page-numbers > li > span:focus {
    background: #f0f0f0;
    color: #111;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
h1,
h2,
h3 {
	clear: both;
	margin-bottom: 2em;
}

h4,
h5,
h6 {
	clear: both;
	margin-bottom: 0.5em;
}

p {
    font-family: "Helvetica Neue", YuGothic,"Gothic Medium BBB";
	margin-bottom: 2em;
}

.entry-content blockquote {
    margin: 40px 0;
}

.entry-content blockquote p {
    font: 20px/30px Helvetica,Arial,sans-serif;
    font-weight: lighter;
    letter-spacing: 1px;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
.btn[type=submit],
.button[type=submit],
input[type=submit],
input[type=button],
input[type=reset] {
    border: none;
    border-radius: 2px;
    background-color: #2c2c2c;
    color: #FFF;
    padding: 4px 16px;
}

input.search-submit {
    	border-radius: 0 2px 2px 0;
	margin-left: -10px;
}
input[type="search"] {
    border-radius: 3px 0 0 3px !important;
}

.button:hover,
.btn[type=submit]:hover,
.button[type=submit]:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	background-color: #333;
}

.button:active,
.btn[type=submit]:active,
.button[type=submit]:active,
input[type="button"]:active,
input[type="reset"]:active,
input[type="submit"]:active {
	background-color: #000;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #222;
	border: 1px solid #ccc;
	border-radius: 3px;
}

select {
	border: 1px solid #ccc;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #222;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"] {
	padding: 3px;
}

textarea {
	padding-left: 3px;
	resize: vertical;
	width: 100%;
}

input[type=checkbox],
input[type=radio] {
    display: inline-block;
}

label {
    font-weight: inherit !important;
}

.required {
    color: #E20D0D;
}

.edit-link a {
    font-size: 11px;
}

.edit-link::before {
	content: ' /';
}


/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
	outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
	content: "";
	display: table;
	table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
	clear: both;
}

/*------------------------------------------------------------
# Content
--------------------------------------------------------------*/
.content-area {
    position: relative;
    z-index: 1;
    padding:50px 30px 0 30px;
}
/*------------------------------------------------------------
## Sections
--------------------------------------------------------------*/
/* ### Headline and Service Section */

.section-title.center {
    padding: 30px 0;
    text-align: center;
}
.section-title h2:after {
    border-top: 2px solid #222222;
    content: '';
    display: block;
    width: 5%;
    margin: 20px auto;
}
.section-title h2,
.section-title.center h2 {
    font-weight: 400;
    color: #030303;
    font-size: 26px;
    letter-spacing: 2px;
    line-height: 1.8;
    margin-bottom: 0;
}

.section-title.center p {
    color: #535353;
    font-style: italic;
    letter-spacing: 1px;
    padding-bottom: 0;
    margin-bottom: 0;
}

#headline {
    background-size: cover !important;
    background-position: 50% !important;
    background-repeat: no-repeat !important;
    color: #000;
}
.background-fixed-supported #headline {
    background-attachment: fixed !important;
}

#headline h1 {width:100%;
    letter-spacing: 10px;
}
#headline p {
    color: #000;
    font-size: 18px;
}
#headline .head-content hr {
    background-color: #000000;
    height: 2px;
    border: 0 none;
    margin-bottom: 30px;
    margin-top: 30px;
    width: 100px;
}
.head-content {
    position: relative;
    padding: 19% 0 15%;
    overflow: hidden;
    z-index: 1;
}

.space {
    height: 100px;
}

.space .overlay-white,
.space .head-content {
    display: none;
}

.services-widget i.icon {
    border: 0 none;
    color: #444;
    font-size: 38px;
    text-align: center;
    transition: all 0.5s ease 0s;
    float: left;
}
#home-widgets .service {
    margin-top: 30px;
    margin-bottom: 40px;
}

.services-widget h4,
.services-widget p {
	margin-left: 70px;
}

.services-widget h4 {
    font-size: 18px;
    letter-spacing: 2px;
    clear: none;
}

#snsHeader li {display:inline-block;margin:0 0 0 10px;}
#snsHeader li a {}
#snsHeader li a img {width:30px !important;height:30px !important;}




/* ### Gallery Section */

.categories {
    padding: 10px 0 25px;
}
ul.cat li {
    display: inline-block;
}
#gallery li.pull-right {
    margin-top: 10px;
}
ol.type li {
    display: inline-block;
    margin-left: 20px;
}
ol.type li:after {
    content: ' / ';
    margin-left: 20px;
    color: #BDC3BD;
}
ol.type li:last-child:after {
    content: '';
}
ol.type li a {
    color: #666;
}
ol.type li a.active {
    font-weight: 700;
}
.isotope-item {
    z-index: 2
}
.isotope-hidden.isotope-item {
    z-index: 1
}
.isotope,
.isotope .isotope-item {
    -webkit-transition-duration: 0.8s;
    -moz-transition-duration: 0.8s;
    transition-duration: 0.8s;
}
.isotope-item {
    margin-right: -1px;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.isotope {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transition-property: height, width;
    -moz-transition-property: height, width;
    transition-property: height, width;
}
.isotope .isotope-item {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transition-property: -webkit-transform, opacity;
    -moz-transition-property: -moz-transform, opacity;
    transition-property: transform, opacity;
}
.hover-bg .hover-text {
    position: absolute;
    text-align: center;
    margin: 0 auto;
    color: #444;
    background: white;
    background: rgba(255, 255, 255, 0.8);
    padding: 15% 0;
    height: 100%;
    width: 100%;
    opacity: 0;
    transition: all 0.5s;
}
.hover-bg .hover-text>h4 {
    opacity: 0;
    letter-spacing: 2px;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
    transition: all 0.4s;
}
.hover-bg:hover .hover-text>h4 {
    margin-bottom: .5em;
    opacity: 1;
    -webkit-backface-visibility: hidden;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}
.hover-bg .hover-text>i {
    opacity: 0;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    transition: all 0.4s;
}
.hover-bg:hover .hover-text>i {
    opacity: 1;
    -webkit-backface-visibility: hidden;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
}
.hover-bg:hover .hover-text {
    opacity: 1;
}
#gallery i.fa {
    height: 36px;
    width: 36px;
    font-size: 18px;
    padding: 8px;
    border-radius: 50%;
    color: #fff;
    background-color: #333;
}
.hover-bg .line {
    background: #444 none repeat scroll 0 0;
    color: black;
    height: 2px;
    text-align: center;
    width: 66px;
}
.hover-bg .hover-text>hr {
    opacity: 0;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
    transition: all 0.5s;
}
.hover-bg:hover .hover-text>hr {
    opacity: 1;
    -webkit-backface-visibility: hidden;
    -webkit-transform: translateX(0);
    transform: translateX(0);
}

/* ### Blog Posts Section */

.home #blog {
    padding: 30px 0 20px;
}
#blog {
    padding: 30px 0 20px;
}
#blog {
    margin-bottom: 40px;
}
#blog h3 {
    color: #030303;
    font-size: 18px;
    letter-spacing: 2px;
    margin: 0;
    line-height: 1.5;
    font-weight: bold;
}
#blog ul.post-meta {
    font-family: "Helvetica Neue", YuGothic,"Gothic Medium BBB";
    color: #999;
    font-size: 12px;
    letter-spacing: 0px;
    margin: 5px 0 15px;
    line-height: 1.5;
    font-weight: 400;
}
#blog .post-img {
    width: 100%;
    margin-bottom: 27px;
}
#blog span.date {
    font-family: "Helvetica Neue", YuGothic,"Gothic Medium BBB";
    background-color: black;
    border-radius: 50px;
    color: white;
    display: block;
    font-size: 16px;
    font-weight: normal;
    text-align: center;
    height: 60px;
    margin: 10px;
    padding: 4px;
    position: absolute;
    letter-spacing: 0px;
    width: 60px;
    opacity: 0.8;
}
#blog h3 a:hover {
    color: #fff;
    background-color: #222;
}

#blog .entry-summary {
}

ul.post-meta {
    margin: 0;
    padding: 0;
    list-style: none;
}
ul.post-meta li {
    display: inline-block;
}

.meta-num-comm a {
    color: #777;
    font-size: 12px;
}
.meta-num-comm a .fa {
    color: #ddd;
    font-size: 14px;
}

#blog .footer-meta {
}
a.read-more {
    color: #999;
    font-size: 14px;
    letter-spacing: 0px;
}
a.read-more::after {
    color: #999;
    font-size: 14px;
    letter-spacing: 0px;
}
a.read-more:hover {
    color: #222;
}

/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/

#headline .caption-wrapper {
    padding-top: 160px;
    padding-bottom: 60px;
	position: relative;
    z-index: 1;
}
#headline .single-caption {
    overflow: hidden;
    width: 100%;
    text-align: left;
    padding: 0;
}
.sticky {
	display: block;
}
.hentry {
	margin: 0 0 1.5em;
}
.byline,
.updated:not(.published) {
	display: none;
}
.single .byline,
.group-blog .byline {
	display: inline;
	margin-right: 10px;
}
.widget-area,
.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.error-404 {
    min-height: 260px;
}

.entry-content p a {
    text-decoration: underline;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

.entry-meta,
.entry-footer,
.post-metadate,
.post-metacat {
}

.post-metadate,
.post-metacat {
        font-size: 11px;
}

.post-metacat {
    color: #999;
}


.post-metadate a {
    color: #999;
}

footer.entry-footer {
    margin-top: 20px;
}

.single .entry-footer .cat-links,
.single .entry-footer .tags-links,
.single .entry-footer .edit-link {
	display: block;
	color: #999999;
}

.single .entry-footer .cat-links::before {
    	content: '___';
    	display: block;
	color: #999999;
}

/*= Footer
-------------------------------------------------*/
#go-top {width:90%;text-align: right;margin:0 0 2em 0;}

#footer,
#go-top {
    z-index: 1;
    position: relative;
}

#footer {
    background: #ffffff;
    padding: 90px 0 10px 0;
    text-align: center;
    border-top:dotted 1px #000;
}
#footer a {}



#footer nav ul {}
#footer nav ul li {float:left;width:190px;font-size:16px;font-weight:bold;text-align:left;margin:0 0 2em 0;}
#footer nav ul li ul {padding:0.5em 0 0 0;}
#footer nav ul li ul li {float:none;font-size:14px;font-weight:normal;margin:0;}





.credit {clear:both;font-size: 12px;padding:3em 0 0 0;}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/

.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}


.comment-author.vcard,
header.comment-meta {
    display: inline-block;
}

.comment-metadata {
    margin: 10px 0;
}

.comment-list .children {
	list-style: none;
	margin: 0;
}

.comment-list .children > li {
	padding-left: 8%;
}

.no-comments,
.comment-navigation .nav-links {
    margin: 20px 0;
}

.comments-area {
    margin-bottom: 40px;
    margin-top: 20px;
}

.comments-area .comments-title {
    font-size: 18px;
    line-height: 24px;
}

.comments-area .comment-list {
    list-style: none;
    padding: 0;
    margin: 40px 0 0 0;
}

.comments-area ul.children {
}

.comment .children {
	padding-left: 20px;
}

.comment-body .comment-body {
	margin-bottom: 40px;
}

.pingback {
    margin-bottom: 20px;
}

.pingback:last-child {
	margin-bottom: 40px;
}

h3.comments-title,
h3.comment-reply-title {
    margin: 20px 0;
    font-family: "Helvetica Neue", YuGothic,"Gothic Medium BBB";
    font-size: 16px;
    font-weight: bold;
}

h3.comments-title {
    margin-top: 40px;
}

.comment-content {
	margin: 20px 0;
}

.comment-content p {
	margin: 0;
    	line-height: 1.5;
}

.comments-area footer {
}

.comments-area footer .comment-author,
.comments-area footer .comment-meta {
    display: inline-block;
    font-size: 12px;
}

.comments-area footer cite {
    font-style: normal;
}

cite.fn,
.comments-area footer .comment-author,
.comment-metadata {
    	font-size: 12px;
    font-family: "Helvetica Neue", YuGothic,"Gothic Medium BBB";
    	font-style: normal;
}

cite.fn {
    font-size: 14px;
	font-weight: bold;
}

.comments-area footer .comment-author a {
    text-decoration: none;
}

.comments-area footer .comment-author a:hover {
    color: #000;
}

.comments-area footer .comment-meta {
    margin-left: 4px;
}

.comments-area footer .comment-meta,
.comments-area footer .comment-meta a {
    color: #aaaaaa;
    text-decoration: none;
    font-size: 12px;
}

.comments-area footer .comment-meta:hover,
.comments-area footer .comment-meta a:hover {
    color: #000;
}

.comments-area #respond {
    padding-top: 40px;
}

.reply a {
    font-size: 11px;
}

.reply::before {
    content: ' /';
}

.comment-form-author, .comment-form-email, .comment-form-url {
    float: left;
    width: 32%;
}

.comment-form:after,
.comment-body:after,
.comment:after {
    display: table;
    content: "";
    clear: both;
}

@media screen and (max-width: 760px) {
	.comment-form-author, .comment-form-email, .comment-form-url {
    		float: none;
	}
	input[type="text"], input[type="email"], input[type="url"],
	.comment-form-author, .comment-form-email, .comment-form-url {
    		width: 100%;
	}
}

@media screen and (max-width: 740px) {
	#comments .comment .children {
		padding-left: 0;
	}
}

/*--------------------------------------------------------------
## Search Page
--------------------------------------------------------------*/

.search-list h3 {
    margin: 5px 0;
}

.search-list article:first-child {
	margin-top: 40px;
}

.search-list article {
	margin-bottom: 40px;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/

.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

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

.white-popup {
  	position: relative;
  	x-background: #FFF;
  	padding: 20px;
  	width: auto;
  	max-width: 600px;
  	margin: 20px auto;
}

.mfp-wrap {
	background-color: transparent !important;
}

.white-popup img {
  	padding: 20px 0;
}

.popup-link .fa {
    margin-top: 0.5em;
}

.blink {
  animation: blink 0.7s steps(2, start) infinite;
  -webkit-animation: blink 0.7s steps(2, start) infinite;
}
@keyframes blink {
  to {
    visibility: hidden;
  }
}
@-webkit-keyframes blink {
  to {
    visibility: hidden;
  }
}
#cursor {
  color: #fff;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/

.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/

.gallery {
	margin-bottom: 1.5em;
}

.gallery img {
    max-width: 100%;
    height: auto;
}

.gallery-item {
	display: inline-block;
	padding: 5px;
	text-align: center;
	vertical-align: top;
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/

img {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

th {
    text-align: left;
}

table > thead > tr > th,
table > tbody > tr > th,
table > tfoot > tr > th,
table > thead > tr > td,
table > tbody > tr > td,
table > tfoot > tr > td {
    padding: 8px;
    line-height: 1.428571429;
    vertical-align: top;
    border-top: 1px solid #ddd;
}
.table>tbody>tr>td {
    padding: 4px 8px;
    text-align: center;
}
table > caption + thead > tr:first-child > th,
table > colgroup + thead > tr:first-child > th,
table > thead:first-child > tr:first-child > th,
table > caption + thead > tr:first-child > td,
table > colgroup + thead > tr:first-child > td,
table > thead:first-child > tr:first-child > td {
    border-top: 0;
}
table > tbody + tbody {
    border-top: 2px solid #dddddd;
}
table .table {
    background-color: #ffffff;
}

.label {
    font-size: .9em;
    font-weight: 400;
}

.bg-primary,
.bg-success,
.bg-info,
.bg-warning,
.bg-danger {
	padding: 0 8px;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/

.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

.infinity-end.neverending .site-footer {
	display: block;
}





/*--------------------------------------------------------------
# catch
--------------------------------------------------------------*/
#catch {position:relative;padding:40px 0 0 0;}
#catch p {font-family:"Ryumin Regular KL";}
#catch p.txt01 {margin:0 300px 1em 0;font-size:24pt;font-weight:bold;line-height:1.8;}
#catch p.txt02 {margin:0 300px 1em 0;font-size:12pt;font-weight:bold;line-height:1.8;}
#catch p.maarui {position:absolute;top:0;right:0;width:320px;}


/*--------------------------------------------------------------
# News
--------------------------------------------------------------*/
#News {margin: 0 auto;width:calc(100% - 220px);}
#News ul {margin:0;border-top:solid 1px #000;}
#News ul li {position:relative;border-bottom:solid 1px #000;padding:15px 0 15px 150px;line-height:1.2;}
#News ul li span {position:absolute;left:0;top:15px;}


/*--------------------------------------------------------------
# message
--------------------------------------------------------------*/
.headmessage {position:relative;min-height:750px;margin:0 0 5em 0;}
.headmessage p {margin:0 550px 2em 0;}
.headmessage .imgfix {position:absolute;top:0;right:0;margin:0;text-align:center;}
.headmessage .imgfix img {margin:0 0 10px 0;width:500px;}

.sig {text-align:right;}
.sig span {font-size:18px;}

ol li ol {list-style-type:lower-roman;}


/*--------------------------------------------------------------
# contact post-80 お問い合わせ
--------------------------------------------------------------*/
#wpcf7-f97-p80-o1 {background:#eee;padding:50px;color:#000000;}


.wpcf7 input[name="your-affiliation"],
.wpcf7 input[name="your-name"],
.wpcf7 input[name="your-furigana"],
.wpcf7 input[name="your-email"],
.wpcf7 input[name="your-email_confirm"],
.wpcf7 input[name="tel"] {width:80% !important;height:35px !important;}
.wpcf7 textarea[name="your-message"] {width:300px !important;height:10em !important;}

.post-80 .inqBox ,
.post-3607 .inqBox {float:left;width:49%;}


h1 {position:relative;font-size: 16px;letter-spacing: 2px;line-height: 1.8;background:#E50212;color:#fff;text-align:left;padding:20px 0 5px 15px;margin:0 0 80px 0;letter-spacing:3px;}
h1 span {position:absolute;bottom:-60px;left:0;color:#E50212;font-family: "Gothic Medium BBB";font-size:22px;letter-spacing:normal;}

h2 {color:#E50212;background:url(/img/h2_bk.gif) left top repeat-x;;padding:85px 0 0 0;margin:0 0 1em 0;}



/* トップ */
#youtube {float:right;width:400px;margin:0 0 1em 0;}




.contentscenter {text-align:center;padding:1em 0;}
.contentscenter img {margin:0 0 10px 0;}
.imgfloat {float:right;margin:0 0 1em 1em;clear:both;}

/* post-40 活動内容 */
.post-40 .imgfloat {margin:0 0 2em 1em;}
.post-40 .authentication .imgfloat {margin:-3.5em 0 0 1em;}
.post-40 #partner {}
.post-40 #partner h3 {margin:0 0 0.5em 0;}
a:hover img {opacity:0.8;}
.post-40 .ltgImg {float:right;width:500px;text-align:center;}


/* post-34 研究所紹介 */
.post-34 #administrationProf {}
.post-34 #administrationProf h4 {clear:both;margin:0 220px 0.5em 0;font-size:18px;font-weight:900;}
.post-34 #administrationProf h4 span {font-size:15px;}
.post-34 #administrationProf p.img {float:right;margin:-2.3em 0 1em 0;width:220px;text-align:right;}
.post-34 #administrationProf p.txt {margin:0 0 2em 0;}
.post-34 #administrationProf p.txt a {text-decoration:none;}
.post-34 #administrationProf p.txt a:hover {text-decoration:underline dotted;}

.post-34 #organizerProf h4 {clear:both;margin:0 0 0.5em 0;font-size:18px;font-weight:900;}
.post-34 #organizerProf h4 span {font-size:15px;}
.post-34 #organizerProf p a {text-decoration:none;}
.post-34 #organizerProf p a:hover {text-decoration:underline dotted;}

/*仮ページ3598*/
.post-3598 #administrationProf {}
.post-3598 #administrationProf h4 {clear:both;margin:0 220px 0.5em 0;font-size:18px;font-weight:900;}
.post-3598 #administrationProf h4 span {font-size:15px;}
.post-3598 #administrationProf p.img {float:right;margin:-2.3em 0 1em 0;width:220px;text-align:right;}
.post-3598 #administrationProf p.txt {margin:0 0 2em 0;}
.post-3598 #administrationProf p.txt a {text-decoration:none;}
.post-3598 #administrationProf p.txt a:hover {text-decoration:underline dotted;}

.post-3598 #organizerProf h4 {clear:both;margin:0 0 0.5em 0;font-size:18px;font-weight:900;}
.post-3598 #organizerProf h4 span {font-size:15px;}
.post-3598 #organizerProf p a {text-decoration:none;}
.post-3598 #organizerProf p a:hover {text-decoration:underline dotted;}
/**/


/* post-3 プライバシーポリシー */
.post-3 h3 {margin:0 0 0.5em 0;}
.post-3 ol {margin:-1em 0 3em 0;}


hr {clear:both;visibility:hidden;}


#contactBtn {text-align:center;padding:3em 0 0 0;clear:both;}
#contactBtn p {}
#contactBtn .bnr {width:100%;margin:0 auto 2em;text-align:center;}
#contactBtn .bnr a {display:inline-block;margin:10px;}
#contactBtn .link a {display:block;background:#E50212;color:#ffffff;width:300px;margin:0 auto;height:50px;line-height:50px;font-size:16px;letter-spacing:3px;}

.post {border:solid 1px #999;padding:10px;}



#catNav {margin:0 auto;text-align:center;letter-spacing:-0.4em;}
#catNav li {display:inline-block;margin:0 -1px 0 0;letter-spacing:normal;}
#catNav li a {border-left:solid 1px #333;border-right:solid 1px #333;padding:3px 1.3em;}
#catNav li a:hover {background:#eee;}

.footer-meta {text-align:right;}



body.single #main {}
#sidebar {border:solid 1px #000;}

.post-34 dl {margin:0 0 1em 0;}
.post-34 dl dt {height:0;overflow:visible;}
.post-34 dl dd {margin:0 0 0 150px;}
.post-34 dl.wide dd {margin:0 0 0 260px;font-size:16px;}
/*仮ページ3598*/
.post-3598 dl {margin:0 0 1em 0;}
.post-3598 dl dt {height:0;overflow:visible;}
.post-3598 dl dd {margin:0 0 0 150px;}
.post-3598 dl.wide dd {margin:0 0 0 260px;font-size:16px;}



.archive .content-area {margin-top:-15em;}
.single .content-area {margin-top:-8em;}

.single-post h1 {background:none;color:#E50212;font-size:18px;}
.single-post #secondary ul {padding:0 0 1em 1em;}
.single-post .post {background:#ffffff;}


#memberList {}
#memberList h3 {font-size:18px;margin:0 0 0.5em 0;}
#memberList ul {margin:0 0 3em 0;}
#memberList ul li {list-style:none;margin:0;}

.pagination {width:100%;text-align:center;}











/*--------------------------------------------------------------
# Responsive
--------------------------------------------------------------*/

/* Phone devices */
@media (max-width: 414px) {
	#headline .caption-wrapper {padding-top: 100px;}
	.hover-bg .hover-text>h4,
	.hover-bg .hover-text {opacity: 1;}

.imgfloat {float:none;display:block;margin:0 0 1em 1em;clear:both;}

.post-34 #administrationProf h4 {clear:both;margin:0 0 0.5em 0;}
.post-34 #administrationProf p.img {float:none;margin:0.5em 0 0.5em 0;width:220px;text-align:left;}
.post-34 #administrationProf p.txt {margin:0 0 2em 0;}

.post-40 .authentication img {display:none;}
.post-40 .authentication:after {display:block;content:url(/img/authentication.gif);margin:1em 0 0 70px;}
.post-40 .imgfloat {margin:0.5em 0 0.5em 1em !important;}
.post-40 ul {margin:0 0 2em 0;}
.post-40 h3.narrow {margin:0 0 0.2em 0;}
.mbnone {display:none;}

#wpcf7-f97-p80-o1 {padding:50px 15px !important;margin:0 -15px;}
.post-80 .inqBox ,
.post-3607 .inqBox {float:none;width:100%;margin:0 0 2em 0;}

	
.single-post .post {margin:0 -15px;}


#snsHeader li {display:inline-block;margin:0 10px 0 0;}


}

/* Small devices */
@media (min-width: 768px) {
	.single .entry-header .entry-meta {
    		margin-top: 20px;
	}
	.caption-wrapper p {
    		font-size: 18px;
    		font-weight: 700;
    		display: block;
    		width: 40%;
	}


}
@media (max-width: 769px) {
	#headline h1 {}
	#headline {background-attachment: none !important;}
	#gallery, #home-widgets {
	    padding: 0;
	}
	.head-content {
	    padding-top: 30%;
	    padding-bottom: 10%;
	}

#catch p.txt01 {margin:0 0 1em 0;}
#catch p.txt02 {margin:0 0 1em 0;padding:0 0 1.5em 0;}
#catch p.maarui {position:static;margin:100px auto -500px;;height:400px;text-align:center;}

#News ul {margin:0 0 0 0;border-top:solid 1px #000;}
#News .fb {}

.post-34 dl {margin:0 0 1em 0;}
.post-34 dl dt {height:auto;overflow:visible;}
.post-34 dl dd {margin:0 0 0 1em !important;}

#catNav {margin:-2em 0 0 1em;text-align:left;}
#catNav li {display:block;margin:0;}
#catNav li a {display:block;border:none}

#main-menu a.navbar-brand {background:url(/img/logo_smp.svg) left center no-repeat;background-size:contain;width:178px;height:50px;margin:10px 0 10px 20px;}
#catch {padding:0;margin:0;}
.content-area {padding:0 30px 0 30px;}

.post-40 #campaign img {display:none;}
.post-40 #campaign:after {display:block;content:" ";background:url(/img/campaign.jpg) center top no-repeat;margin:1em 0 0 -5px;height:60px;}
.post-40 .ltgImg {float:none;width:100%;text-align:center;}

#wpcf7-f97-p80-o1 {padding:50px 20px;}
#wpcf7-f97-p80-o1 input[type="text"] ,
#wpcf7-f97-p80-o1 input[type="submit"] ,
#wpcf7-f97-p80-o1 textarea {width:100% !important;}
.post-80 .inqBox ,
.post-3607 .inqBox {float:none;width:100%;margin:0 0 2em 0;}


#bs-example-navbar-collapse-1 {background:#666;}
#bs-example-navbar-collapse-1 a {color:#fff;}
.post-80 .inqBox ,
.post-3607 .inqBox {float:none;width:100%;margin:0 0 2em 0;}

.navbar-nav li {border-top:none;}
.navbar-nav li {border-left:solid 5px transparent;}
.navbar-nav li.active {border-top:none;}
.navbar-nav li.active {border-left:solid 5px #E50212;}

.archive .content-area {margin-top:-5em;}
.single .content-area {margin-top:-5em;}

}

/* Medium devices */
@media (min-width: 992px) {
}
@media (max-width: 991px) {
	#headline .single-caption {
    		width: 99%;
	}
#youtube {float:none;width:100%;margin:0 auto 1em auto;}
#News {float:none;width:100%;margin:0 0 1em 0;}

.headmessage p {margin:0 0 2em 0;}
.headmessage .imgfix {position:static;margin:0 0 1em 0;width:100%;text-align:center;}

.post-80 .inqBox ,
.post-3607 .inqBox {float:none;width:100%;margin:0 0 2em 0;}


}

@media (min-width: 768px){
	/* Keep Bootstrap’s .navbar-right .dropdown-menu alignment (right:0; left:auto) — do not override with both auto */
#main-menu a.navbar-brand {margin:25px 0 10px 0;}
#snsHeader {position:absolute;right:5%;top:55px;}

}

/* Large devices */
@media (min-width: 1200px) {
#snsHeader {position:absolute;right:10px;top:55px;text-align:right;}
}

/*koba*/
    .fix{
     position: fixed;
     z-index: 90000;
     right: 0;   
    }
    .fix img{
      width: 110px;
      height: auto;
    }
    #fix1{
      bottom: 170px;
    }
    #fix2{
      bottom: 30px;
    }
     @media (max-width: 768px){
    .fix img{
      width: 80px;
      height: auto;
    }
    #fix1{
      bottom: 130px;
    }
    #fix2{
      bottom: 35px;
    }
    }

    .back-gray{
        background-color: #f2f2f2;
        padding: 60px 0;
        margin-top: 60px;
    }
    .banner{
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 20px;
        flex-wrap: wrap;
    }
    .banner li{
        width: calc(100% / 2 - 20px);
    }
     @media (max-width: 768px){
         .banner li{
        width: 100%;
    }
     }

     #sns{
        margin-top: 60px;
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
         @media (max-width: 768px){
           flex-wrap: wrap;
           gap: 20px;
         }
     }
     #youtube{
       @media (min-width: 769px){
         width: 45%;
       }
     }
     #insta{
        @media (min-width: 769px){
         width: 50%;
       }
     }
     #youtube iframe{
        width: 100%;
        height: auto;
        margin-top: 60px;
        aspect-ratio: 16/9;
     }