/*
Theme Name: Noto Simple
Theme URI: https://github.com/htmsk138/noto-simple
Author: Hitomi Seki
Author URI: https://hitomiseki.com/
Description: Simple WordPress theme using Noto Sans.
Version: 1.4.2
Requires at least: 5.0
Tested up to: 5.5.3
Requires PHP: 7.2
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: noto-simple
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready, two-columns, right-sidebar, editor-style, sticky-post, blog, rtl-language-support

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.

Noto Simple 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.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Layout
# Forms
# Navigation
  ## Links
  ## Menus
# 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;
  opacity: 0.7;
}

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.5em 1em;
  text-align: left;
}

tr {
  border-bottom: 1px solid #ccc;
}

thead {
  background: #f0f0f0;
}

thead tr {
  border: none;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
html {
  font-size: 62.5%;
}

body,
button,
input,
select,
optgroup,
textarea {
  color: #404040;
  font-family: 'Noto Sans', sans-serif;
  font-weight: normal;
  font-size: 16px;
  font-size: 1.6rem;
  font-display: swap;
  line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both;
  font-weight: bold;
  margin-top: 3em;
}

p {
  margin-bottom: 1.5em;
}

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

blockquote {
  margin: 0 1.5em;
}

address {
  margin: 0 0 1.5em;
}

pre {
  background: #f0f0f0;
  font-family: 'Courier New', monospace !important;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.2;
  margin: 1.5em 0;
  max-width: 100%;
  overflow: auto;
  padding: 1em 2em;
}

code,
kbd,
tt,
var {
  font-family: 'Courier', monospace !important;
  font-size: 14px;
  font-size: 1.4rem;
  background: #f0f0f0;
  padding: 0.3em 0.8em;
}

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

mark,
ins {
  background: #fff9c0;
  text-decoration: none;
  padding: 0.3em 0.8em;
  margin: 0 0.3em;
}

big {
  font-size: 125%;
}

b,
strong {
  font-weight: bold;
}

.material-icons {
  vertical-align: middle;
}

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

body {
  background: #fff; /* Fallback for when there is no custom background color defined. */
}

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

blockquote,
q {
  quotes: "" "";
  background: #f0f0f0;
  padding: 1em 2em;
}

q {
  line-height: 3em;
}

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin-bottom: 1.5em;
}

ul,
ol {
  margin: 1.5em 0;
  padding-left: 2em;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

li {
  margin-bottom: 0.5em;
}

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

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. */
}

figure {
  margin: 1em 0; /* Extra wide images within figure tags don't overflow the content area. */
}

table {
  margin: 0 0 1.5em;
}

/*--------------------------------------------------------------
# Layout
--------------------------------------------------------------*/
.container {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
}

* {
  -ms-word-wrap: break-word;
  word-wrap: break-word;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.btn,
.nav-links a,
.page-links a,
.edit-link a,
.reply a {
  display: inline-block;
  border: 1px solid #404040;
  padding: 0.3em 1em;
  margin: 5px 0;
  text-decoration: none;
  color: #404040;
  background: #fff;
  font-size: 14px;
  font-size: 1.4rem;
}

button:not(.menu-toggle):hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
.btn:hover,
.nav-links a:hover,
.page-links a:hover,
.edit-link a:hover,
.reply a:hover,
button:not(.menu-toggle):focus,
input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus,
.btn:focus,
.nav-links a:focus,
.page-links a:focus,
.edit-link a:focus,
.reply a:focus,
button:not(.menu-toggle):active,
input[type="button"]:active,
input[type="reset"]:active,
input[type="submit"]:active,
.btn:active,
.nav-links a:active,
.page-links a:active,
.edit-link a:active,
.reply a:active {
  opacity: 1;
  background: #404040;
  color: #fff;
}

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: #777;
  border: 1px solid #ccc;
  padding: 3.5px 10px;
  margin: 5px 0;
  width: 100%;
  max-width: 30em;
}

select {
  border: 1px solid #ccc;
  min-width: 10em;
  background: #fff;
  height: 2.5em;
}

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

textarea {
  width: 100%;
  max-width: 30em;
}

div.wpcf7-response-output {
  margin: 2em 0 0;
  padding: 1em 2em;
}

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
.site-header {
  padding: 50px 0 100px;
  position: relative;
}

.site-branding {
  text-align: center;
}

.site-title {
  font-size: 32px;
  font-size: 3.2rem;
  font-weight: bold;
  margin: 0;
}

.site-title a,
.site-title a:visited,
.site-title a:focus {
  text-decoration: none;
  color: inherit;
}

.site-description {
  margin: 5px 0 25px;
  font-size: 14px;
  font-size: 1.4rem;
  color: #777;
}

.header-image {
  text-align: center;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
  color: #777;
  text-decoration: underline;
}

a:visited {
}

a:hover,
a:focus,
a:active {
}

a:focus {
  outline: thin dotted;
}

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

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.main-navigation {
  clear: both;
  display: block;
  width: 100%;
  font-size: 14px;
  font-size: 1.4rem;
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 50px;
}

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

.main-navigation li {
  position: relative;
  flex: 0 0 auto;
  margin: 0;
}

.main-navigation a {
  display: block;
  text-decoration: none;
  padding: 0.7em 1.5em;
  color: inherit;
}

.main-navigation ul ul {
  box-shadow: 1px 1px 8px #ccc;
  position: absolute;
  top: 100%;
  left: -999em;
  z-index: 99999;
  background: #fff;
}

.main-navigation ul ul ul {
  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 li.current_page_item > a {
  background: #f0f0f0;
  opacity: 1;
}

.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;
  display: block;
}

.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;
}

.menu-toggle {
  border: none;
  padding: 0;
  position: absolute;
  right: 0;
  top: -50px;
  background: none;
}

.menu-toggle .material-icons {
  font-size: 40px;
  font-size: 4rem;
}

.menu-toggle[aria-expanded="false"] .material-icons.close,
.menu-toggle[aria-expanded="true"] .material-icons.open {
  display: none;
}

.menu-toggle:hover,
.menu-toggle:focus,
.menu-toggle:active {
  background: inherit;
  color: inherit;
}

.main-navigation.toggled {
  box-shadow: 0 2px 6px #eee;
}

.main-navigation.toggled ul li:hover > ul,
.main-navigation.toggled ul li.focus > ul {
  width: 100%;
  position: unset;
  box-shadow: none;
  padding-left: 2em;
  font-size: 0.9em;
  float: none;
}

.main-navigation.toggled ul li:hover > ul a,
.main-navigation.toggled ul li.focus > ul a {
  padding-left: 0;
}

.main-navigation.toggled ul li:hover > ul li:last-child,
.main-navigation.toggled ul li.focus > ul li:last-child {
  border: none;
}

.main-navigation.toggled li {
  border-bottom: 1px dashed #ccc;
}

@media (min-width: 768px) {
  .menu-toggle {
    display: none;
  }

  .main-navigation {
    position: static;
    margin: 0;
  }

  .main-navigation ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
}

@media (max-width: 767px) {
  .main-navigation ul {
    background: #fff;
  }

  .main-navigation a {
    width: 100% !important;
  }
}

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
  overflow: hidden;
  font-size: 14px;
  font-size: 1.4rem;
  margin: 30px 0 50px;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
  float: left;
  width: 50%;
  text-decoration: none;
  color: inherit;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
  float: right;
  text-align: right;
  width: 50%;
  text-decoration: none;
  color: inherit;
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
.site-footer {
  font-size: 12px;
  font-size: 1.2rem;
  padding: 20px 0;
  margin-top: 50px;
  text-align: center;
}

#back-to-top {
  background: rgba(255,255,255,0.7);
  color: inherit;
  border-radius: 50%;
  position: fixed;
  bottom: 5vh;
  right: 5vw;
  opacity: 0;
  visibility: hidden;
  transition: visibility 0s linear 0.5s, opacity 0.5s linear;
}

#back-to-top.shown {
  opacity: 0.8;
  visibility: visible;
  transition-delay: 0s;
}

#back-to-top .material-icons {
  font-size: 60px;
  font-size: 6rem;
}

@media (min-width: 1330px ) {
  #back-to-top {
    right: calc(50vw - 600px);
  }
}

/*--------------------------------------------------------------
# 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;
  word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.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,
.alignright,
.aligncenter {
  clear: both;
  display: block;
  float: none;
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 568px) {
  .alignleft {
    display: inline;
    float: left;
    margin-right: 1.5em;
  }

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

/*--------------------------------------------------------------
# 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
--------------------------------------------------------------*/
.widget-area {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.widget {
  margin: 0 0 50px;
  font-size: 14px;
  font-size: 1.4rem;
  flex: 0 1 31%;
}

/* Make sure select elements fit in widgets. */
.widget select {
  max-width: 100%;
}

.widget input,
.widget select {
  max-width: 10em !important;
}

.widget ul {
  padding: 0;
  list-style: none;
}

.widget li {
  margin: 0;
  padding: 1em 0;
  border-top: 1px dashed #ccc;
}

.widget li > ul {
  padding: 1em 0 0 1em;
}

.widget li:last-child {
  border-bottom: 1px dashed #ccc;
}

.widget li > ul li:last-child {
  border-bottom: none;
}

.widget li:first-child {
  border-top: none;
}

.widget li > ul li:first-child {
  border-top: 1px dashed #ccc;
}

.widget-title {
  background: #f0f0f0;
  padding: 0.5em;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: normal;
  margin-top: 0;
}

.widget a {
  text-decoration: none;
  color: inherit;
}

.search-form {
  display: flex;
}

.search-submit {
  margin-left: 5px !important;
}

@media (max-width: 567px) {
  .widget {
    width: 100%;
    flex: none;
  }
}

@media (min-width: 568px) and (max-width: 767px) {
  .widget {
    flex: 0 1 48%;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .widget {
    flex: 0 1 31%;
  }
}

@media (min-width: 1024px) {
  .widget {
    width: 100%;
    flex: none;
  }
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.home.blog .page-title {
  display: none;
}

.page-title,
h1.entry-title {
  margin: 0 0 1em;
}

h2.entry-title {
  margin-top: 0;
  padding: 0.5em 0 1.5em 0;
  border-bottom: 1px solid #ccc;
}

.entry-title a {
  color: inherit;
  text-decoration: none;
}

.entry-meta,
.entry-footer {
  font-size: 12px;
  font-size: 1.2rem;
}

.entry-footer {
  border-top: 1px dashed #ccc;
  padding-top: 1em;
  margin-top: 50px;
}

.blog .post,
.archive .post,
.search .post,
.search .page {
  border: 1px solid #ccc;
  padding: 2em;
  margin-bottom: 50px;
}

.sticky {
  display: block;
  position: relative;
}

.post:not(.sticky) .sticky-icon {
  display: none;
}

.sticky .sticky-icon {
  float: right;
  font-size: 40px;
  font-size: 4rem;
}

.post,
.page {
  margin: 0 0 1.5em;
}

.updated:not(.published) {
  display: none;
}

.featured-image {
  margin: 1.5em 0 0;
  text-align: center;
}

.page-content,
.entry-content,
.entry-summary {
  margin: 1.5em 0 0;
  line-height: 1.8;
}

.page-links {
  clear: both;
  padding: 1em 0;
}

.page-links a {
  margin: 0 0.7em;
}

.cat-links:not(:last-child),
.tags-links:not(:last-child),
.comments-link:not(:last-child) {
  margin-right: 1em;
  border-right: 1px solid #ccc;
  padding-right: 1em;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

.comments-area,
.comment-respond {
  border-top: 1px solid #ccc;
}

.comments-title {
  text-align: center;
}

.comment-list {
  list-style: none;
  padding: 0;
  margin: 0 0 50px;
}

.comment-list .children {
  list-style: none;
  margin-top: 1.5em;
}

.comment,
.pingback {
  padding: 1.5em 0;
  border-top: 1px dashed #ccc;
  margin-bottom: 0;
}

.comment-list .children .comment:last-child {
  padding-bottom: 0;
}

.comment-list > .comment:first-child,
.comment-list > .pingback:first-child {
  border: none;
}

.comment-metadata {
  font-size: 12px;
  font-size: 1.2rem;
}

.comment-author a {
  color: inherit;
}

.comment-author .avatar {
  margin-right: 0.5em;
  vertical-align: middle;
}

.comment-author .says {
  display: none;
}

.comment .edit-link {
  margin-left: 1em;
}

.comment.bypostauthor > .comment-body {
  border: 5px solid #f0f0f0;
  padding: 1em;
}

.no-comments {
  text-align: center;
  background: #404040;
  color: #fff;
  padding: 0.5em;
  margin: 50px 0;
}

[class*=comment-form-] input,
[class*=comment-form-] textarea {
  display: block;
}

.comment-notes {
  font-size: 14px;
  font-size: 1.4rem;
}

@media (max-width: 676px) {
  .comment-list .children .children {
    padding: 0;
  }
}

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

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
  display: inline-block;
}

/*--------------------------------------------------------------
## 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;
  font-size: 12px;
  font-size: 1.2rem;
}

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

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
  margin-bottom: 1.5em;
}

.gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 50%;
}

@media (min-width: 568px) {
  .gallery-columns-3 .gallery-item,
  .gallery-columns-4 .gallery-item,
  .gallery-columns-5 .gallery-item,
  .gallery-columns-6 .gallery-item,
  .gallery-columns-7 .gallery-item,
  .gallery-columns-8 .gallery-item,
  .gallery-columns-9 .gallery-item {
    max-width: 33.33333%;
  }
}

@media (min-width: 768px) {
  .gallery-columns-4 .gallery-item {
    max-width: 25%;
  }

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

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

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

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

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

.gallery-columns-1 .gallery-item {
  width: 100%;
}

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

.gallery-caption {
  display: block;
  font-size: 12px;
  font-size: 1.2rem;
}

/*--------------------------------------------------------------
# Responsive
--------------------------------------------------------------*/
@media (max-width: 567px) {
  .hidden-sm,
  .visible-md:not(.visible-sm),
  .visible-lg:not(.visible-sm),
  .visible-xl:not(.visible-sm) {
    display: none !important;
  }
}

@media (min-width: 568px) and (max-width: 767px) {
  .hidden-md,
  .visible-sm:not(.visible-md),
  .visible-lg:not(.visible-md),
  .visible-xl:not(.visible-md) {
    display: none !important;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .hidden-lg,
  .visible-sm:not(.visible-lg),
  .visible-md:not(.visible-lg),
  .visible-xl:not(.visible-lg) {
    display: none !important;
  }
}

@media (min-width: 1024px) {
  .hidden-xl,
  .visible-sm:not(.visible-xl),
  .visible-md:not(.visible-xl),
  .visible-lg:not(.visible-xl) {
    display: none !important;
  }
}
