/*
Theme Name: Lotuslite
Theme URI: http://zthemes.net/themes/lotuslite
Author: ZThemes Studio
Author URI: https://zthemes.net/
Description: Lotuslite is a Responsive WordPress blog theme. The theme is a perfect combination of beautiful and professional. How to install theme: https://youtu.be/9aJYeYjohjo. Get free support and check the demo at http://zthemes.net/themes/lotuslite
Version: 1.1.1
Tested up to: 5.5.3
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: lotuslite
Tags: one-column, two-columns, right-sidebar, custom-background, footer-widgets, full-width-template, custom-logo, custom-menu, featured-images, theme-options, threaded-comments, translation-ready, blog, news

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

Lotuslite is based on Underscores http://underscores.me/, (C) 2012-2016 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
	## Logo
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
# Responsive
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
html {
	font-family: sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust:     100%;
}

body {
	margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
}

a:active,
a:hover {
	outline: 0;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;
}

dfn {
	font-style: italic;
}

h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

mark {
	background: #ff0;
	color: #000;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 1em 40px;
}

hr {
	box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input {
	line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

legend {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: bold;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}

table {
	width: 100%;
	border: 1px solid #f1f1f1;
	border-collapse: collapse;
	border-spacing: 0;
}
table caption{
	margin-bottom: 5px;
}
table > thead > tr > th,
table > tbody > tr > th,
table > tfoot > tr > th,
table > thead > tr > td,
table > tbody > tr > td,
table > tfoot > tr > td {
	border: 1px solid #f1f1f1;
	line-height: 1.3;
	padding: 8px;
	vertical-align: middle;
	text-align: center;
}

table > thead > tr > th, table > thead > tr > td {
	border-bottom-width: 2px;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body{
    font-family: 'Work Sans', sans-serif;
    font-size: 13px;
    color: #222222;
    line-height: 1.8;
    background-color: #fff;
}
button,
input,
select,
textarea {
	color: #404040;
    font-family: 'Work Sans', sans-serif;
	font-size: 14px;
	font-size: 1rem;
	line-height: 1.5;
}
h1,h2,h3,h4,h5,h6, #nav-wrapper .menu li a, .feat-more, .cat, .post-share .post-share-comments,
.about-title, #footer-social a, .more-link, .post-comments span.reply a, .widget .tagcloud a,
.pagination a , .post-tags a, .slicknav_nav a  {
    font-family: 'Montserrat', sans-serif;
}
textarea:focus, input:focus{
    outline: none;
}
h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
    font-family: 'Montserrat', sans-serif;
}

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

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 15px;
	font-size: 0.9375rem;
}

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

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

big {
	font-size: 125%;
}
.post-entry h1, .post-entry h2, .post-entry h3, .post-entry h4, .post-entry h5, .post-entry h6,
.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6	{
	color:#000;
	margin-bottom:20px;
	font-weight: 600;
}
.post-entry h1, .entry-content h1 {
	font-size:25px;
}
.post-entry h2, .entry-content h2 {
	font-size:20px;
}
.post-entry h3, .entry-content h3 {
	font-size:19px;
}
.post-entry h4, .entry-content h4 {
	font-size:18px;
}
.post-entry h5, .entry-content h5 {
	font-size:17px;
}
.post-entry h6, .entry-content h6 {
	font-size:15px;
}
ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}
/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
	box-sizing: border-box;
}

*,
*:before,
*:after { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
	box-sizing: inherit;
}


blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
}

blockquote,
q {
	quotes: "" "";
}
blockquote {
    padding: 5px 20px;
    font-size: 13px;
    font-family: 'Montserrat', sans-serif;
    border: 1px solid #ededed;
    color: #464646;
    line-height: 24px;
}
hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0;
	padding: 0;
}

ul {
	list-style: none;
}

ol {
	list-style: none;
}
.post-entry ul, .post-entry ol, .entry-content ul, .entry-content ol {
    padding-left: 20px;
    margin-bottom: 12px;
    color: #222;
}
.post-entry ol li, .entry-content ol li {
    margin-bottom: 8px;
    list-style: decimal;
}
.post-entry ul li, .entry-content ul li {
    margin-bottom: 6px;
    list-style: disc;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: bold;
}

dd {
	margin: 0 1.5em 1.5em;
}

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

table {
	margin: 0 0 1.5em;
	width: 100%;
}
.page-links .page-number {
    padding-left: 10px;
}
li{
	display:block;
}
/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5), inset 0 15px 17px rgba(255, 255, 255, 0.5), inset 0 -5px 12px rgba(0, 0, 0, 0.05);
	color: rgba(0, 0, 0, .8);
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1;
	padding: .6em 1em .4em;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8);
}


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: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
	margin: 2px 0;
}

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: #111;
}

textarea {
	width: 100%;
}

div#page {
    width: 100%;
    position: relative;
	overflow: hidden;
}
/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
/* 	color: #a5cccb; */
	color:lightcoral;
	text-decoration: none;
	transition: color 0.3s ease 0s, background-color 0.3s ease 0s, border-color 0.3s ease 0s;
    -webkit-transition: color 0.3s ease 0s, background-color 0.3s ease 0s, border-color 0.3s ease 0s;
    -o-transition: color 0.3s ease 0s, background-color 0.3s ease 0s, border-color 0.3s ease 0s;
}

a:hover,
a:active {
	outline: 0;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.main-navigation {
    text-align: center;
	/** add ko	*/
	background-color: #f9f8f4;
}
#top-bar-right {
    position: absolute;
    right: 40px;
    top: 0;
}
#top-social {
    position: absolute;
    left: 40px;
    top: 0;
}

#top-social a, #mobile-social a{
	font-size:12px;
	color:#000;
	margin-right:13px;
	line-height: 60px;
}
#top-social a:hover, #mobile-social a:hover {
	color:#999;
}

.top-search {
	float:left;
	line-height: 60px;
}
.top-search input {
    border: none !important;
    background: none;
    font-size: 10px !important;
    letter-spacing: 0.75px !important;
    width: 140px !important;
    color: #757575 !important;
}
.top-search ::-webkit-input-placeholder, .show-search ::-webkit-input-placeholder {
	color: #000 !important;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation li {
	position: relative;
	margin-right: 35px !important;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}
button.menu-toggle {
    background-color: transparent;
}
.main-navigation ul ul {
    float: left;
    position: absolute;
    top: 54px;
    left: -999em;
    z-index: 99999;
    background-color: #fff;
    text-align: left;
    border: 1px solid #F1F1F1;
    -webkit-box-shadow: 0 3px 2px 0px rgba(0,0,0,.05);
    -moz-box-shadow: 0 3px 2px 0px rgba(0,0,0,.05);
    box-shadow: 0 3px 2px 0px rgba(0,0,0,.05);
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul ul li {

}

.main-navigation li:hover > a,
.main-navigation li.focus > a {
}

.main-navigation ul ul :hover > a,
.main-navigation ul ul .focus > a {
}

.main-navigation ul ul a:hover,
.main-navigation ul ul a.focus {
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	left: 100%;
}

.main-navigation .current_page_item > a,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_ancestor > a,
.main-navigation .current-menu-ancestor > a {
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
	display: block;
	position: relative;
}
.container {
    width: 1200px;
    margin: 0 auto;
    padding: 0 25px;
}
div#content {
    padding-top: 30px;
    display: block;
}
.top-nav{
	display: block;
	position: relative;
}
nav#site-navigation {
    background: #000;
    height: 32px;
    position: relative;
    z-index: 9999;
    width: 100%;
    -webkit-backface-visibility: hidden;
}
.menu li {
    display: inline-block;
    margin-right: 14px;
    position: relative;
}
.menu li a {
	color: #fff;
    line-height: 50px;
    /* font-size: 11px; */
	font-size: 1em;
    font-weight: 400;
    letter-spacing: 0.75px;
    /* text-transform: uppercase; */
    display: block;
    -o-transition: .25s;
    -ms-transition: .25s;
    -moz-transition: .25s;
    -webkit-transition: .25s;
    transition: .25s;
}
#primary-menu.menu li a {
    font-size: 1em;
    font-weight: 500;
    letter-spacing: 1.5px;
    color: #000;
    line-height: 55px;
    /* text-transform: uppercase; */
    display: inline-block;
    -o-transition: .3s;
    -ms-transition: .3s;
    -moz-transition: .3s;
    -webkit-transition: .3s;
}
#primary-menu.menu li a:hover {
	color: #f3aeae;
}


#primary-menu.menu > li.menu-item-has-children > a:after {
    font-family: FontAwesome;
    content: "\f107";
    margin-left: 6px;
    color: #757575;
    font-size: 10px;
}
ul.sub-menu .menu-item a{
	padding: 0 10px;
    width: auto;
    min-width: 150px;
    line-height: 25px !important;
    letter-spacing: 0.15px !important;
}
.sub-menu li {
    padding: 0;
    margin-right: 0 !important;
}
ul.menu ul a, .menu ul ul a {
    color: #3c3c3c !important;
    margin: 0 !important;
    padding: 6px 10px 7px 10px !important;
    min-width: 160px !important;
    line-height: 25px !important;
    -o-transition: .25s !important;
    -ms-transition: .25s !important;
    -moz-transition: .25s !important;
    -webkit-transition: .25s !important;
    transition: .25s !important;
    /* font-size: 10px !important; */
	font-size: 1em !important;
}
ul.menu ul a:hover,
	.menu ul ul a:hover {
		color: #fff !important;
		background:#333 !important;
		
		/* ko */
		color: #333 !important;
		background:#f4e1e1 !important;
	}
#site-navigation .menu li a:hover {
	color:#999;
}
#site-navigation .menu > li.menu-item-has-children > a:after {
    font-family: FontAwesome;
    content: "\f107";
    margin-left: 7px;
    color: #999;
    font-size: 13px;
}
.m_menu_icon {
    display: block;
    width: 20px;
    height: 2px;
    background-color: #000;
}
.menu-toggle .m_menu_icon + .m_menu_icon {
	margin-top: 4px;
}

/* Dropdown **********/
#site-navigation .menu .sub-menu,
#site-navigation .menu .children {
	background-color: #000;
	display: none;
	padding: 0;
	position: absolute;
	margin-top:0;
	left: 0;
	top: 50px;
	z-index: 99999;
}
#site-navigation ul.menu ul a,
#site-navigation .menu ul ul a {
	color: #999;
	margin: 0;
	font-size:10px;
	letter-spacing:1px;
	padding: 6px 10px;
	min-width: 175px;
	line-height:20px;
	-o-transition:.25s;
	-ms-transition:.25s;
	-moz-transition:.25s;
	-webkit-transition:.25s;
	transition:.25s;
	border-top:1px solid;
	border-color:#333;
}
#site-navigation ul.menu ul li,
#site-navigation .menu ul ul li {
	padding-right:0;
	margin-right:0;
}
#site-navigation ul.menu ul a:hover,
#site-navigation .menu ul ul a:hover {
	color: #fff;
	background:#333;
}
#site-navigation ul.menu li:hover > ul,
#site-navigation .menu ul li:hover > ul {
	display: block;
}
#site-navigation .menu .sub-menu ul,
#site-navigation .menu .children ul {	
	left: 100%;
	top: 0;	
}
.top-nav-lotus .top-nav a {
    text-transform: none !important;
    line-height: 32px !important;
}

ul#top-menu {
    display: inline-block;
}

@media screen and (min-width: 768px) {
	
		.container {
		width: 95%;
		margin: 0 auto;
	}
	main#main {
		width: 69.23077%;
	}
	aside.sidebar {
		width: 25.96154%;
	}
	
	
	.menu-toggle {
		display: none;
	}
	.main-navigation ul {
		display: block;
	}
}

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
	margin: 0 0 1.5em;
	overflow: hidden;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	float: right;
    text-align: right;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	float: left;
	text-align: left;
}

/*--------------------------------------------------------------
## Logo
--------------------------------------------------------------*/

.site-branding {
    margin: 0;
    display: block;
    text-align: center;
    padding-top: 40px;
    padding-bottom: 45px;
    width: 100%;
}
h1.site-title, h2.site-title {
    font-size: 30px;
    letter-spacing: 4px;
    text-transform: none;
    font-weight: 600;
    font-family: 'Montserrat', sans-serif;
    margin: 0;
}
h1.site-title a, h2.site-title a{
	color: #fff;
	/* color: #D86F7C; */
	text-shadow: 1px 2px 3px #808080;
}
h3.site-title{
	color: #fff;
	/* color: #D86F7C; */
	text-shadow: 1px 2px 3px #ffffff;
}
p.site-description{
    font-family: 'Work Sans', sans-serif;
    letter-spacing: 2px;
    font-size: 10px;
    padding-top: 10px;
    padding-bottom: 10px;
}
header.site-header {
    height: 50px;
    border-bottom: 1px solid #ECECEC;
}
.site-branding img.custom-logo {
    height: auto;
    width: auto;
    vertical-align: middle;
    line-height: 80px;
    margin-top: 20px;
    margin-bottom: 20px;
}
/*--------------------------------------------------------------
# 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;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.sidebar .widget {
    width: 100%;
    margin-right: 0;
    float: none;
    margin-bottom: 42px;
    padding-bottom: 40px;
	background:#fff !important;
}

/* Make sure select elements fit in widgets. */
.widget select {
	max-width: 100%;
}
.sidebar .widget-title {
    margin-bottom: 25px;
}
.widget-title {
    font-size: 16px;
    letter-spacing: 2px;
    font-weight: 500;
    color: #000;
    margin-bottom: 35px;
    text-align: center;
}
.widget h3{
	font-size: 16px;
}
.widget .search-field{
	border-radius: 0px;
    font-size: 14px;
    margin: 0 0 10px;
    padding: 4px 12px;
}
.widget input[type="submit"] {
    background: transparent;
    border: 1px solid #ccc;
    font-size: 14px;
}
.widget ul, .widget ol{
    margin: 0;
    padding: 0;
}
.widget_recent_entries li a, .widget_archive li a{
	color: #424243;
	font-size: 14px;
}
.widget .tagcloud a, .entry-tags a {
    font-size: 9px !important;
    letter-spacing: 0.75px;
    text-transform: uppercase;
    color: #656565;
    padding: 2px 12px 1px 12px;
    margin-right: 8px;
    margin-bottom: 12px;
    display: inline-block;
    -o-transition: .3s;
    -ms-transition: .3s;
    -moz-transition: .3s;
    -webkit-transition: .3s;
    transition: .3s;
}
.widget .tagcloud a:hover, .entry-tags a:hover {
	opacity:.7;
	text-decoration:none;
	background:#a5cccb;
	color:#fff;
}
.widget p {
	font-size:13px;
	line-height:22px;
}
.widget a:hover {
	text-decoration:underline;
}
.widget ul li {
    padding: 0;
    margin-bottom: 10px;
    list-style: none;
    line-height: 20px;
    padding-left: 2px;
}
.widget_categories ul li {
    text-transform: uppercase;
    letter-spacing: 1.25px;
    font-size: 11px;
    font-weight: 600;
    text-align: center;
    padding-top: 5px;
    padding-bottom: 5px;
}
.widget_categories ul li a {
	color: #797979;
}
.widget_categories ul li a:hover{
	color: #000;
}
.widget ul li:last-child {
	margin-bottom:0;
	padding-bottom:0;
	border-bottom:none;
}
.widget img {
	max-width:100%;
	height:auto;
}
.widget .screen-reader-text {
	display:none;
}
/* Search Widget */
.search-form input.search-field {
    background: #fff url(img/searchsubmit.png) no-repeat 96% 13px;
    padding: 14px 14px;
    font-size: 12px;
    color: #999;
    width: 280px;
}
.widget .search-form .search-field:focus { outline:none; }
.widget .search-form input.search-field { 
	width:100%;
	box-sizing:border-box;
}
.search-form .search-submit{ display: none; }

/* Instagram Widget **********/
.sidebar .instagram-pics {
	margin-left:-10px;
	overflow:hidden;
}
.sidebar .instagram-pics li {
	width: 30.83%;
    display: inline-block;
    padding: 0;
    margin: 0 0 2.5% 2.5%;
    background: none;
    border: 0;
    vertical-align: top;
    box-shadow: none;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}
.sidebar .instagram-pics li img {
	max-width:100%;
	vertical-align:middle;
}
.sidebar .instagram-pics li img:hover {
	opacity:.87;
}
.sidebar .null-instagram-feed p.clear a{
    text-align: center;
    width: 100%;
    display: block;
    padding: 4px 0;
    border: 1px solid;
    text-transform: uppercase;
    box-sizing: border-box;
    font-size: 11px;
    letter-spacing: 1.75px;
    font-weight: 600;
    color: #797979;
    margin-top: 15px;
}



/* X（旧：Twitter） Widget **********/
.wp-social-link-x {
    background-color: #000; /* Xの黒背景 */
    color: #fff;            /* アイコン白 */
}
.wp-social-link-x svg {
    width: 24px;
    height: 24px;
}



/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.entry-box-post {
    padding-bottom: 5px;
}
header.entry-header {
    text-align: center;
    margin-bottom: 10px;
    margin-top: 15px;
}
.entry-thumb {
	text-align: center;
	margin-top: 20px;
	margin-bottom: 20px;
}
.entry-thumb img{
	width: auto;
	height: auto;
}
section.content-area {
    min-height: 480px;
}
main#main{ 
	float: left; 
	margin-bottom: 35px; 
	width: 750px; 
	margin-right: 25px; 
	padding-left: 5px;
}

main.full-width{
	width: 100% !important;
	margin-right: 0px !important;
}
main.full-width .entry-thumb img{
	width: 100% !important;
}
aside.sidebar {
    width: 310px;
    float: right;
    margin-top: 5px;
    padding-left: 15px;
    padding-right: 5px;
    box-sizing: border-box;
}
.entry-cate a {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 1.25px;
    text-transform: uppercase;
    margin-right: 4px;
    -o-transition: .3s;
    -ms-transition: .3s;
    -moz-transition: .3s;
    -webkit-transition: .3s;
}
.entry-cate a:hover {
	text-decoration:underline;
}

h2.entry-title, h1.entry-title {
    font-size: 26px;
    color: #313131;
    letter-spacing: 1px;
    font-weight: 500;
     margin: 0;
}
h2.entry-title a:hover {
	opacity:.80;
}
h2.entry-title a, h1.entry-title a{
	color: #000;
}
h1.page-title {
    font-size: 24px;
    letter-spacing: 2px;
    text-transform: uppercase;
    padding-top: 10px;
    font-weight: 400;
    text-align: center;
    border: 1px solid #ededed;
    padding: 15px 0;
    margin-bottom: 30px;
}
h2.entry-title a:hover, h1.entry-title a:hover{
	opacity: 0.8;
}
time.entry-date {
    font-size: 9px;
    font-weight: 400;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: #999;
}
.entry-more{
    text-align: center;
    margin-top: 20px;
    border: 1px solid #ededed;
    padding: 15px;
    text-align: center;
    margin-top: 20px;
    border: 1px solid #ededed;
    padding: 15px;
    line-height: 30px;
    overflow: hidden;
    clear: both;
}
.read-more {
    float: left;
    line-height: 30px;
}
.meta-comment {
    float: right;
    line-height: 30px;
}
.entry-more a{
    font-size: 11px;
    line-height: 35px;
    padding-left: 10px;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #FF758E;
    font-weight: 700;
}
.entry-more a:hover {
	color: #FF758E;
}
article.post {
    margin-bottom: 80px;
    padding-bottom: 15px;
}
.entry-meta {
    margin-bottom: 25px;
}
.entry-content {
    margin-top: 0;
}
.sticky {
	display: block;
}

.hentry {
	margin: 0 0 1.5em;
}

.single .byline .author ,
.group-blog .byline .author {
	font-size: 14px;
	font-style: normal;
	margin-left: 5px;
}
.byline,
.updated:not(.published) {
	display: none;
}
.entry-tags {
    margin-top: 35px;
}

p, .page-content,
.entry-content,
.entry-summary {
	margin: 0 0;
	font-size: 13px;
    line-height: 1.8;
    letter-spacing: 0.25px;
}
.entry-content a {
    font-weight: 600;
}
.entry-content a:hover{
	text-decoration: underline;
}
.entry-share {
	text-align: center;
    margin-top: 38px;
    height: 54px;
    line-height: 54px;
    border-top: 1px dotted #e5e5e5;
    border-bottom: 1px dotted #e5e5e5;
}
.entry-share .share-box {
    width: 35px;
    height: 35px;
    background: #fff;
    display: inline-block;
    line-height: 35px;
    -o-transition: .3s;
    -ms-transition: .3s;
    -moz-transition: .3s;
    -webkit-transition: .3s;
}
.entry-share .share-box:hover {
	opacity: 0.6;
}
.page-links {
	clear: both;
	margin: 0 0 1.5em;
}
.nav-previous, .nav-next {
    font-family: 'Work Sans', sans-serif;
    letter-spacing: 1.75px;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 600;
}
.nav-previous a, .nav-next a {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 3px;
    padding: 7px 50px;
    color: #333;
    -o-transition: .22s;
    -ms-transition: .22s;
    -moz-transition: .22s;
    -webkit-transition: .22s;
    transition: .22s;
    display: block;
    font-weight: 600;
}
.nav-previous a:hover, .nav-next a:hover {
	background:#a5cccb;
	color:#fff;
}
nav.navigation.posts-navigation {
    margin-bottom: 60px;
}
footer.site-footer {
    padding-top: 30px;
    padding-bottom: 55px;
    overflow: hidden;
    font-family: 'Montserrat', sans-serif;
    clear: both;
    text-align: center;
    border-bottom: 6px solid #a5cccb;
}
footer .site-info {
	text-align: center;
	font-size: 12px;
    color: #6b6b6b;
    letter-spacing: 1.25px;
    font-family: 'Work Sans', sans-serif;
    padding-top: 55px;
}
footer a{
	font-weight: 600;
}
.footer-text {
	color:#333;
	font-size:12px;
	letter-spacing:1px;
	width: 50%;
	position: relative;
	float: none;
	padding-left: 15px;
    padding-right: 15px;
}



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

/*** Instagram footer area ***/
#instagram-footer {
	text-align:center;
	overflow:hidden;
	position: relative;
}
.instagram-title {
	display: none;
}
#instagram-footer .instagram-pics li {
	width:12.5%;
	display:inline;
	float:left;
}
#instagram-footer .instagram-pics li img {
	max-width:100%;
	vertical-align:middle;

}
#instagram-footer .instagram-pics li img:hover {
	opacity:.9;
}
#instagram-footer p.clear {
    display: none;
}
#instagram-footer .null-instagram-feed .clear > a {
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 2px;
    display: block;
    background: #fff;
    color: #424243;
    padding: 8px 35px;
    position: absolute;
    border-radius: 3px;
    left: 50%;
    top: 62%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    -o-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}


.search .search-field{
	border-radius: 0px;
    font-size: 14px;
    margin: 0 0 10px;
    padding: 4px 12px;
}
.search input[type="submit"] {
    background: transparent;
    border: 1px solid #ccc;
    font-size: 14px;
}

#footer-social {
    text-align: center;
    margin-bottom: 35px;
    margin-top: 40px;
}

#footer-social a{
    margin-right: 30px;
    color: #888;
    -o-transition:.3s;
	-ms-transition:.3s;
	-moz-transition:.3s;
	-webkit-transition:.3s;
	font-size: 18px;
}
#footer-social a:hover{
	color: #000;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
div#comments {
    padding-top: 35px;
}
.navigation.post-navigation {
    padding-bottom: 35px;
    border-bottom: 1px solid #eee;
}
.comment-reply-title{
	font-size: 14px;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-weight: 500;
    padding-bottom: 5px;
    display: inline-block;
    color: #353535;
}
ol.comment-list {
    padding: 0;
    margin-left: 15px;
}
#comments .comment-notes{
	color: #999;
	font-size: 14px;
    letter-spacing: 0.25px;
}
.comment-form label{
	color: #999;
	font-size: 14px;
    margin-right: 10px;
}
input#wp-comment-cookies-consent {
    margin-right: 15px;
}
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}
div#respond {
    margin-top: 30px;
}
.comment-form input.submit{
    color: #505050;
    font-weight: 600;
    padding: 10px 20px 10px;
    margin-top: 6px;
    display: inline-block;
    -o-transition: .3s;
    -ms-transition: .3s;
    -moz-transition: .3s;
    -webkit-transition: .3s;
    transition: .3s;
    cursor: pointer;
    width: auto;
    background-color: transparent;
	margin-bottom: 30px;
	border: none;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-top: 30px;
}
.comment-form input.submit:hover {
	background:#a5cccb;
	color:#FFF;
}
.comments-title{
    font-size: 14px;
    letter-spacing: 1.25px;
    text-transform: uppercase;
    margin-bottom: 35px;
    font-weight: 500;
    padding-bottom: 5px;
    display: block;
    text-align: center;
    color: #505050;
}
.comment .says{
	display: none;
}
.comment-author .avatar {
	float: left;
	margin-right: 10px;
	width: 50px;
    height: 50px;
}
.comment-author .fn{
	text-transform: uppercase;
    color: #333;
    font-family: 'Work Sans', sans-serif;
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.75px;
}
.comment-metadata time{
	font-size: 12px;
    color: #999;
    font-style: italic;
    display: inline-block;
    margin-bottom: 10px;
    margin-right: 5px;
}
.comment-content {
    margin-left: 50px;
    font-size: 16px;
}
li.comment {
    position: relative;
}
li.comment .reply {
    display: inline-block;
    position: absolute;
    top: 0;
    right: 0;
    background-color: #aaa;
    border-radius: 2px;
}
li.comment .reply a{
    color: #fff;
    font-size: 10px;
    padding: 5px;
    text-transform: uppercase;
    font-family: 'Work Sans', sans-serif;
}
/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation, /* Older / Newer Posts Navigation (always hidden) */
.infinite-scroll.neverending .site-footer { /* Theme Footer (when set to scrolling) */
	display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# 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%;
}

/*--------------------------------------------------------------
## 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-item {
	display: inline-block;
	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;
}
/*--------------------------------------------------------------
# Responsive
--------------------------------------------------------------*/
@media (max-width: 1100px) {
	.container {
		width: 95%;
		margin: 0 auto;
	}
	main#main {
		width: 69.23077%;
	}
	aside.sidebar {
		width: 25.96154%;
	}
}

@media (max-width: 991px) {
	h2.entry-title, h1.entry-title {
	    font-size: 20px;
	    letter-spacing: 1px;
	}
	#footer-social a {
	    font-size: 10px;
	    margin: 0 15px;
	}
	#instagram-footer .null-instagram-feed .clear > a {
	    padding: 5px 25px;
	    top: 65%;
	}
	.sidebar .instagram-pics li {
	    width: 29%;
	    margin: 0 0 8px 8px;
	}
	.container{
		width: 95%;
		margin: 0 auto;
	}
	main#main{
	width: 69.23077%;
	}
	aside.sidebar {
		width: 25.96154%;
	}
	.site-branding {
    	margin-top: 50px !important;
	}
	p.site-description{
		padding-top: 0;
		margin-top: 0;
		font-size: 12px;
	}
	.entry-content {
	    margin-top: 0;
	}
}

@media (max-width: 768px) {
	.container{
		width: 95%;
    	margin: 0 auto;
	}
	main#main{
		width: 69.23077%;
		margin:0 auto;
		float: none;
	}
	aside.sidebar{
		width: 25.96154%;
		margin: 0 auto;
		float: none;
	}
	#top-search{
		position: absolute;
    	top: 0;
    	right: 0;
	}
	.site-branding {
    	margin-top: 40px !important;
	}
	h1.site-title {
    	font-size: 42px;
	}
	h2.entry-title, h1.entry-title {
    	font-size: 16px;
    	line-height: 22px;
    	letter-spacing: 1px;
	}
	.entry-meta {
	    margin-bottom: 15px;
	}
	.entry-content {
	    margin-top: 0;
	}
	.entry-more a{
		font-size: 10px;
		letter-spacing: 0.75px;
	}
	button.menu-toggle{
		height: 46px;
    	background: transparent;
    	border: none;
	}
	.lotuslite-logo img{
		max-width: 80%;
	}
	.main-navigation li{
		float: none;
	}
	.menu li{
		display: block;
		width: 100%;
	    padding: 0 15px;
	}
	#main-nav #primary-menu {
    	background-color: #fff;
		z-index: 9;
	}
	.menu-top-menu-container .menu li{
		display: inline-block;
		padding: 0;
		width: auto;
	}
	#site-navigation .menu .sub-menu, #site-navigation .menu .children {
		display: block;
	    position: relative;
	    top: 0px;
	    bottom: 0;
	}
	#site-navigation .menu .sub-menu ul, #site-navigation .menu .children ul{
		top: 0;
		left: 0;
	}
	#site-navigation ul.menu ul a, #site-navigation .menu ul ul a{
		border: none;
	}
	.menu .sub-menu, .menu .children {
		position: relative;
    	margin-top: 0px;
    	top: 0;
    	border: none;
    	left: 0;
	    text-align: center;
	    box-shadow: none;
	}
	.main-navigation ul ul{
		float: none;
	}
	.menu .sub-menu li, .menu .children li{
		border: none;
	}
	.menu li a {
		line-height: 35px;
	}
	.menu .sub-menu li a, .menu .children li a{
		padding: 0;
		line-height: 30px;
	}
	h1.page-title {
    	font-size: 18px;
    	letter-spacing: 1px;
	}
	#top-social a {
	    margin-left: 8px;
	    font-size: 12px;
	}
	#instagram-footer .instagram-pics li {
	    width: 25%;
	    padding: 0;
	    margin: 0;
	}
	.entry-cate a {
	    font-size: 8px;
	    letter-spacing: 1.25px;
	    margin: 0 2px 2px;
	    padding: 2px 5px;
	}
	#primary-menu.menu li a{
		line-height: 30px;
	}
}

@media (max-width: 480px) {
	#top-social{
		display: none;
	}
	.container{
		width: 95%;
	}
	main#main{
		width: 95%;
		margin:0 auto;
		float: none;
	}
	aside.sidebar{
		width: 95%;
		margin: 0 auto;
		float: none;
	}
	#top-search{
		position: absolute;
    	top: 0;
    	right: 0;
	}
	.site-branding {
    	margin-top: 5px !important;
	}
	h1.site-title {
    	font-size: 32px;
	}
	p.site-description {
	    font-size: 10px;
	}
	h2.entry-title, h1.entry-title {
    	font-size: 16px;
    	line-height: 22px;
    	letter-spacing: 1px;
	}
	.entry-meta {
	    margin-bottom: 15px;
	}
	.entry-content {
	    margin-top: 0;
	}
	.entry-more a{
		font-size: 10px;
		letter-spacing: 0.75px;
	}
	button.menu-toggle{
		height: 46px;
    	background: transparent;
    	border: none;
	}
	.lotuslite-logo img{
		max-width: 80%;
	}
	.main-navigation li{
		float: none;
	}
	.menu li{
		display: block;
		width: 100%;
	    padding: 0 15px;
	}
	#site-navigation .menu .sub-menu, #site-navigation .menu .children {
		display: block;
	    position: relative;
	    top: 0px;
	    bottom: 0;
	}
	#site-navigation .menu .sub-menu ul, #site-navigation .menu .children ul{
		top: 0;
		left: 0;
	}
	#site-navigation ul.menu ul a, #site-navigation .menu ul ul a{
		border: none;
	}
	.menu .sub-menu, .menu .children {
		position: relative;
    	margin-top: 0px;
    	top: 0;
    	border: none;
	}
	.main-navigation ul ul{
		float: none;
	}
	.menu .sub-menu li, .menu .children li{
		border: none;
	}
	.menu li a {
		line-height: 35px;
	}
	.menu .sub-menu li a, .menu .children li a{
		padding: 0;
		line-height: 30px;
	}
	h1.page-title {
    	font-size: 18px;
    	letter-spacing: 1px;
	}
	#top-social a {
	    margin-left: 8px;
	    font-size: 12px;
	}
	#instagram-footer .instagram-pics li {
	    width: 25%;
	    padding: 0;
	    margin: 0;
	}
	.entry-cate a {
	    font-size: 8px;
	    letter-spacing: 1.25px;
	    margin: 0 2px 2px;
	    padding: 2px 5px;
	}

	.top-nav-lotus .menu li {
		display: inline-block !important;
	    width: inherit;
	    padding: 0;
	}
	.entry-box-post {
    	margin: 0;
    	padding-bottom: 10px;
	}
	article.post {
    	margin-bottom: 25px;
	}
	#main-nav #primary-menu {
	    text-align: left;
	}
	.menu .sub-menu, .menu .children {
		text-align: left;
	}
	
	#main-nav li ul{
		display: none;
	}
}
	
	
	


/* ================================
   read more　のコメントの絵の色
   ================================ */

/* Read More */
.entry-more .read-more a {
  color: #FF758E !important;
}

/* Comment 文字 */
.entry-more .meta-comment,
.entry-more .meta-comment a,
.entry-more .meta-comment span {
  color: #FF758E !important;
}

/* Comment 吹き出しアイコン */
.entry-more .meta-comment i,
.entry-more .meta-comment svg,
.entry-more .meta-comment::before {
  color: #FF758E !important;
  fill: #FF758E !important;
}

	
	
/* =========================
   記事タイトル（ブログ）を折り返す
   ========================= */

/* 一覧・アーカイブ・トップの投稿リスト内のタイトル */
body:not(.home) .entry-title,
body:not(.home) .entry-title a,
.home .post .entry-title,
.home .post .entry-title a {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  display: inline !important; /* 念のため（inline-block等で折れない対策） */
}

/* 個別記事ページのタイトル */
.single-post .entry-header .entry-title,
.single-post .entry-header .entry-title a {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}

/* トップページだけ折り返さない指定は維持 */
.top_h_title {
  white-space: nowrap !important;
  overflow: hidden;
  text-overflow: ellipsis;
}


/* 親要素が nowrap の場合の保険（投稿カード内だけ） */
.home .post,
.archive .post,
.blog .post {
  white-space: normal !important;
}


/* =========================================
   見出し・記事タイトルの折り返しを確実にする
   （トップの top_h_title は折り返さない）
   ========================================= */

/* 0) トップだけ折り返さない（あなたの指定を維持） */
.top_h_title{
  white-space: nowrap !important;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* 1) 記事タイトル（一覧＋個別）を折り返す */
.entry-title,
.entry-title a,
.single-post .entry-header .entry-title,
.single-post .entry-header .entry-title a,
.page .entry-header .entry-title,
.page .entry-header .entry-title a {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  overflow: visible !important;         /* ← “切れる”対策 */
  text-overflow: clip !important;       /* ← “…”対策 */
}

/* 2) 本文内の見出し（h2/h3等）を折り返す：投稿＆固定ページ */
.single-post .entry-content h1,
.single-post .entry-content h2,
.single-post .entry-content h3,
.single-post .entry-content h4,
.single-post .entry-content h5,
.single-post .entry-content h6,
.page .entry-content h1,
.page .entry-content h2,
.page .entry-content h3,
.page .entry-content h4,
.page .entry-content h5,
.page .entry-content h6 {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  overflow: visible !important;         /* ← “切れる”対策 */
  text-overflow: clip !important;       /* ← “…”対策 */
}

/* 3) 念のため：記事本文エリア全体で nowrap を解除（本文だけ） */
.single-post .entry-content,
.page .entry-content {
  white-space: normal !important;
}

@media screen and (min-width: 700px) {
  body h1, body h2, body h3 { white-space: nowrap !important; }
}

/* 親要素が nowrap の場合の保険（投稿ページのみ） */
.single-post .entry-header,
.single-post .entry-content {
  white-space: normal !important;
}


/* =========================================
   information 投稿：ブロック見出しの折り返し修正
   ========================================= */

.single-post.post-type-information .entry-content h2.wp-block-heading,
.single-post.post-type-information .entry-content h3.wp-block-heading,
.single-post.post-type-information .entry-content h4.wp-block-heading {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

/* strong が原因で折り返らないのを防ぐ */
.single-post.post-type-information .entry-content h2.wp-block-heading strong,
.single-post.post-type-information .entry-content h3.wp-block-heading strong,
.single-post.post-type-information .entry-content h4.wp-block-heading strong {
  white-space: normal !important;
}


/* =========================================
   Information 個別記事：見出し（wp-block-heading）折り返し強制
   ========================================= */

/* 1) Information個別記事（single-info）を最優先で狙う */
.single-info .entry-content h2.wp-block-heading,
.single-info .entry-content h3.wp-block-heading,
.single-info .entry-content h4.wp-block-heading {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

/* strong が nowrap / inline-block 等で折り返しを止めるのを防ぐ */
.single-info .entry-content h2.wp-block-heading strong,
.single-info .entry-content h3.wp-block-heading strong,
.single-info .entry-content h4.wp-block-heading strong {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  display: inline !important;  /* ←これが効くことが多い */
}

/* 2) 万一 single-info ではない場合の保険（single-post側もカバー） */
.single-post .entry-content h2.wp-block-heading,
.single-post .entry-content h3.wp-block-heading,
.single-post .entry-content h4.wp-block-heading {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}
.single-post .entry-content h2.wp-block-heading strong,
.single-post .entry-content h3.wp-block-heading strong,
.single-post .entry-content h4.wp-block-heading strong {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  display: inline !important;
}



/* =========================================
   Information 記事：本文内 見出しの改行を有効化
   h1 / h2 / h3（Gutenberg対応）
   ========================================= */

/* 本文エリアの見出し本体 */
.single-info .entry-content h1,
.single-info .entry-content h2,
.single-info .entry-content h3 {
  white-space: normal !important;        /* 折り返しOK */
  overflow-wrap: anywhere !important;    /* 長文・数字対応 */
  word-break: break-word !important;
  overflow: visible !important;          /* 切れ防止 */
  text-overflow: clip !important;
}

/* Gutenberg見出しクラス */
.single-info .entry-content .wp-block-heading {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  overflow: visible !important;
}

/* strong が原因で折り返らないのを防ぐ */
.single-info .entry-content h1 strong,
.single-info .entry-content h2 strong,
.single-info .entry-content h3 strong {
  white-space: normal !important;
  display: inline !important;
}


/* =========================================
   Information 個別記事：タイトル（entry-header内）だけ折り返し
   ========================================= */

/* タイトルがh2で出ている想定（Lotusliteのinfoでよくある） */
.single-info .entry-header h1,
.single-info .entry-header h2 {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;

  /* “切れる”原因を潰す */
  overflow: visible !important;
  text-overflow: clip !important;
}

/* タイトルに付いているクラス（item_line等）が悪さをする場合の保険 */
.single-info .entry-header .item_line,
.single-info .entry-header .iem_line {
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

/* 親要素が nowrap を持っている場合の保険（タイトル周辺だけ） */
.single-info .entry-header {
  white-space: normal !important;
  overflow: visible !important;
}


.single-info .entry-title,
.single-info .entry-title a {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  overflow: visible !important;
  text-overflow: clip !important;
}





/* =========================================
   ブログ（通常投稿）タイトル：折り返しを有効化
   ========================================= */

/* 個別記事ページのタイトル（single post） */
.single-post .entry-header .entry-title,
.single-post .entry-header .entry-title a,
.single-post .entry-header h1,
.single-post .entry-header h2 {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

/* 一覧（ブログ一覧・カテゴリー・アーカイブ等）のタイトル */
.blog .entry-title,
.blog .entry-title a,
.archive .entry-title,
.archive .entry-title a,
.search .entry-title,
.search .entry-title a {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

/* もしテーマがタイトル周辺を切っている場合の保険 */
.blog .entry-header,
.archive .entry-header,
.search .entry-header {
  overflow: visible !important;
}






/* =========================================
   個別記事のトップ画像（アイキャッチ）高さ固定
   ブログ + information（single系）
   ========================================= */

/* 個別記事ページの先頭アイキャッチ（テーマ側で使われがちなセレクタに対応） */
.single-post .post-thumbnail img,
.single-info .post-thumbnail img,
.single-post .wp-post-image,
.single-info .wp-post-image {
  width: 100%;
  height: 320px;           /* ←ここだけ好みで調整（例：200〜320px） */
  object-fit: cover;       /* 重要：縦長だけ中央でトリミング */
  object-position: center; /* 中央を見せる */
  display: block;
  border-radius: 12px;     /* 角丸が要らなければ削除 */
}

/* 画像を包む親が overflow しない場合の保険 */
.single-post .post-thumbnail,
.single-info .post-thumbnail {
  overflow: hidden;
}


/* =========================================
   個別記事トップ画像
   PC：高さ固定（縦長トリミング）
   スマホ：画像そのまま表示
   ========================================= */

/* PC・タブレット（デフォルト） */
.single-post .post-thumbnail img,
.single-info .post-thumbnail img,
.single-post .wp-post-image,
.single-info .wp-post-image {
  width: 100%;
  height: 260px;           /* PCでの表示高さ */
  object-fit: cover;       /* 縦長はトリミング */
  object-position: center;
  display: block;
}

/* 画像のはみ出し防止 */
.single-post .post-thumbnail,
.single-info .post-thumbnail {
  overflow: hidden;
}

/* =========================
   スマホだけ元画像表示
   ========================= */
@media (max-width: 767px) {
  .single-post .post-thumbnail img,
  .single-info .post-thumbnail img,
  .single-post .wp-post-image,
  .single-info .wp-post-image {
    height: auto !important;     /* 高さ固定を解除 */
    object-fit: contain !important; /* 元の比率で表示 */
  }
}

/* パソコン（1200px以上）でサイドバーがあるページだけメインを広く */
@media screen and (min-width: 1200px)  {
    body:has(aside.sidebar) main#main {
        float: left !important;
        width: 70% !important;
        margin-right: 2.5% !important;
    }

    body:has(aside.sidebar) aside.sidebar {
        float: right !important;
        width: 25% !important;
    }
}
