/*
Theme Name: Shapely
Theme URI: https://colorlib.com/wp/themes/shapely
Author: colorlib
Author URI: https://colorlib.com/
Description: Shapely is a powerful and versatile one page WordPress theme with pixel perfect design and outstanding functionality. It is by far the most advanced free WordPress theme available today with loads of unmatched customization options. This theme comes with several homepage widgets that can be used to add portfolio, testimonials, parallax sections, your product or service information, call for action and much more. Shapely supports most free and premium WordPress plugins such as WooCommerce, Jetpack, Gravity Forms, Contact Form 7, Yoast SEO, Google Analytics by Yoast and much more. This theme is the best suited for business, landing page, portfolio, ecommerce, store, local business,  personal websites but can be tweaked to be used as blog, magazine or any other awesome website while highlighting its unique one page setup. This is going to be the last WordPress theme you will ever want to use because it is so much better than anything you have seen. Needless to say that this theme is SEO friendly thanks to its well optimized strucutre. Shapely theme is mobile friendly and fully responsive making it your best multipurpose partnert for any project and website.
Version: 1.2.1
License: GNU General Public License v3
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: shapely
Tags: left-sidebar, right-sidebar, featured-images, post-formats, threaded-comments, theme-options, photography, portfolio, full-width-template, grid-layout

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.

Shapely is based on Underscores http://underscores.me/, (C) 2012-2017 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.com/normalize.css/
*/

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

/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/


html {
  font-family: 'dpfont', 'Montserrat', 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 {
  padding: 1em;
}

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-appearance: textfield;
  box-sizing: content-box;
}

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

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/




button,
input,
select,
textarea {
  color: #404040;
  font-family: sans-serif;
  font-size: 14px;
  line-height: 1.5;
}

h1,
h2 {
  font-family: 'dpfont';
}


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

p {
  margin-bottom: 1.5em;
}

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

q:before,
q:after {
  content: '"' !important;
  display: inline-block;
  position: relative;
}

address {
  margin: 0 0 1.5em;
}

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", Courier, monospace;
  font-size: 15px;
  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;
}

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

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

big {
  font-size: 125%;
}

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

hr {
  border: 0;
  height: 1px;
  margin-bottom: 1.5em;
}

ul,
ol {
  margin: 0 0 1.5em 3em;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

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



/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/

/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/

a,
a:visited {
  /*color: #745cf9;
    font-weight: 600;*/
  cursor: pointer;
}

a:active {
  color: #09005e;
}

a:hover,
a:focus {
  color: #5234f9;
}

a:focus {
  outline: thin dotted;
}

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

a,
a:visited,
a:active,
a:hover {
  text-decoration: none;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/

.main-navigation {
  clear: both;
  display: block;
  width: 100%;
  padding-top: 15px;
}

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

.main-navigation li {
  float: left;
  position: relative;
}

.main-navigation a {
  display: block;
  text-decoration: none;
}

.main-navigation ul ul {
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  float: left;
  position: absolute;
  top: 1.5em;
  left: -999em;
  z-index: 99999;
}

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

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

.main-navigation ul ul li {
  width: 100%;
}

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

@media screen and (min-width: 992px) {
  .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: left;
  width: 50%;
}

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

.site-title {
  display: none;
  font-size: 24px;
  line-height: 52px;
  color: #666;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  font-weight: 300;
  font-family: 'dpfont';
}

.site-title:hover {
  color: #333;
}

#site-navigation .module.left {
  padding-left: 15px;
}

#site-navigation .container > .flex-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

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

.widget {
  margin: 0 0 1.5em;
}

/* Make sure select elements fit in widgets. */

.widget select {
  max-width: 100%;
}

.contact-section .wpcf7-form label {
  width: 100%;
}

.contact-section.cover .container {
  padding: 96px 15px;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/

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

.sticky {
  display: block;
}

.hentry {
  margin: 0 0 1.5em;
}

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

.single .byline,
.group-blog .byline {
  display: inline;
}

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

/*--------------------------------------------------------------
## Asides
--------------------------------------------------------------*/

.blog .format-aside .entry-title,
.archive .format-aside .entry-title {
  display: none;
}

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

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

.bypostauthor {
  display: block;
}

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

/*!
// Contents
// ------------------------------------------------
 1. Global Styles
 2. Mixins
 3. Typography
 4. Colours
 5. Sections
 6. Buttons
 7. Nav
 8. Forms
 9. Breadcrumbs
 10. Pagination
 11. Icon Features
 12. Widgets
 13. Image Tiles
 14. Sliders
 15. Galleries
 16. Header Area
 17. WooCommerce
 18. Blog
 19. Image Blocks
 20. Portfolio
 21. Footer
 22. Spacing
 23. Other
/*!---------- 1. GLOBAL STYLES ----------*/

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 14px;
  line-height: 24px;
  font-family: 'dpfont', "Helvetica Neue", "Helvetica", Arial, sans-serif;
  color: #8c979e;
  overflow-x: hidden;
  font-weight: 400;
}

ul {
  list-style: disc;
}

.main-container {
  clear: both;
}

hr {
  border: none;
  border-top: 1px solid #ccc;
  margin: 0 0 24px 0;
  width: 100%;
}

.bg-dark hr {
  border-color: #555;
}

.content hr {
  width: 128px;
  max-width: 60%;
  height: 2px;
  background: #DDD;
  margin: 50px auto;
  border: 0;
}

.list-inline {
  margin-left: 0;
}

.list-inline > li {
  padding: 0 8px;
}

.list-inline > li:last-child {
  padding-right: 0;
}

.list-inline > li:first-child {
  padding-left: 0;
}

.overflow-hidden {
  overflow: hidden;
}

.right {
  right: 0;
}

.relative {
  position: relative;
  z-index: 2;
}

.container {
  position: relative;
}

/*!---------- 2. MIXINS ----------*/

.align-children {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
  flex-direction: row;
  -webkit-flex-direction: row;
}

@media all and (max-width: 991px) {
  .align-children {
    display: block !important;
  }
}

.align-transform {
  position: relative;
  transform: translate3d(0, -50%, 0);
  -webkit-transform: translate3d(0, -50%, 0);
  top: 50%;
  z-index: 2;
}

/*!---------- 3. TYPOGRAPHY ----------*/

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
table,
blockquote,
input,
textarea {
  margin-bottom: 24px;
  margin-top: 0;
  padding: 0;
}

h1 {
  font-family: 'dpfont', "Helvetica Neue", Helvetica, Arial, sans-serif;
}

h2,
h3,
h4,
h5,
h6 {
  font-family: 'dpfont', "Helvetica Neue", Helvetica, Arial, sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 400;
  color: #0e1015;
}

h1 {
  font-size: 60px;
  line-height: 64px;
}

h2 {
  font-size: 45px;
  line-height: 48px;
}

h3 {
  font-size: 30px;
  line-height: 33px;
}

h4 {
  font-size: 25px;
  line-height: 30px;
}

h5 {
  text-align: center;
  font-size: 22px;
  line-height: 28px;
  letter-spacing: 0.5em;
  text-indent: 0.5em;
}

h6 {
  font-size: 18px;
  line-height: 25px;
}

@media all and (max-width: 767px) {
  h1 {
    font-size: 32px;
    line-height: 40px;
    font-weight: 300;
  }

  h2 {
    font-size: 32px;
    line-height: 40px;
  }

  h3 {
    font-size: 24px;
    line-height: 32px;
  }

  h4 {
    font-size: 18px;
    line-height: 26px;
  }

  h5 {
    font-size: 16px;
    line-height: 24px;
  }

  h6 {
    font-size: 16px;
    line-height: 24px;
  }
}

.uppercase {
  font-weight: 400;
  text-transform: uppercase;
}

h5.uppercase {
  letter-spacing: 2px;
  margin-right: -2px;
}

p,
span {
  font-weight: 400;
}

p.lead {
  font-size: 16px;
  font-weight: 400;
  line-height: 28px;
}

@media all and (max-width: 767px) {
  p.lead {
    font-size: 13px;
    line-height: 24px;
  }

  p {
    font-size: 12px;
  }
}



.image-bg a {
  color: #fff;
}

.image-bg a:hover {
  color: #fff;
  opacity: .9;
}



blockquote {
  overflow: hidden;
  font-family: 'dpfont', "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 18px;
  line-height: 24px;
  padding: 32px 0;
  color: #001c28;
  font-weight: 400;
  border-left: 0 none;
  margin: 0;
}

blockquote p {
  font-family: 'dpfont', "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 18px;
  line-height: 24px;
  color: #001c28;
}

blockquote p:first-child:before,
blockquote p:last-child:after {
  content: "\0022";
}

.number {
  font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

@media all and (max-width: 767px) {
  br {
    display: none;
  }

  blockquote {
    font-size: 16px;
    line-height: 32px;
  }
}

th,
td {
  line-height: 24px !important;
}

/*!---------- 4. COLOURS ----------*/

.bg-primary {
  background: #745cf9 !important;
}

.bg-secondary {
  background: #f5f5f5;
}

.bg-dark {
  background: #0e1015;
}

/*!---------- 5. SECTIONS ----------*/

section,
footer {
  padding: 0px 0;
  position: relative;
  overflow: hidden;
}

.page-template-page-templatestemplate-home-php .content-area {
  padding: 0;
}

footer {
  padding: 10px 0;
  margin-top: 40px;
}

.fullscreen {
  height: 100vh;
}

.bg-dark h3,
.bg-dark h5,
footer.bg-dark h5,
.bg-primary h5,
.bg-dark h6,
footer.bg-dark h6 {
  color: #ffffff;
}

.bg-dark p,
footer.bg-dark p,
.bg-primary p,
.bg-dark span,
footer.bg-dark span,
.bg-dark li,
footer.bg-dark li {
  color: #fefefe;
}

@media all and (max-width: 767px) {
  section {
    padding: 0;
  }
}

.image-bg h3,
.image-bg h1 {
  color: #ffffff;
}

.image-bg p,
.image-bg li {
  color: #ffffff;
}

.image-bg div[class*='col-'] {
  position: relative;
  z-index: 3;
}

.background-image-holder {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  background: #0e1015;
  background-size: cover !important;
  background-position: 50% 50% !important;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  opacity: 0;
}

.background-image-holder img {
  display: none;
}

.background-image-holder.fadeIn {
  opacity: 1;
}

/*!---------- 6. BUTTONS ----------*/

.btn,
.button {
  font-family: 'dpfont', "Helvetica Neue", Helvetica, Arial, sans-serif;
  border: 2px solid #745cf9;
  padding: 0 26px;
  min-width: 150px;
  line-height: 36px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  border-radius: 0;
  color: #745cf9;
  text-align: center;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  margin-right: 8px;
  margin-bottom: 24px;
  white-space: normal;
}

.btn:last-child,
.btn:last-of-type {
  margin-right: 0;
}

.btn:hover,
.button:hover {
  background: #745cf9;
  color: #fff;
}

.btn-lg {
  line-height: 24px;
  min-width: 200px;
  padding-bottom: 13px;
  padding-top: 13px;
}

.btn-sm {
  min-height: 30px;
  font-size: 11px;
  line-height: 27px;
  min-width: 0;
}

.btn-filled,
a .btn-filled,
.button,
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
  background: #745cf9;
  color: #fff;
}

.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
  padding: 1em;
}

.btn-white,
.image-bg .btn,
.image-bg .btn:visited {
  color: #fff;
  border-color: #fff;
}

.image-bg .btn.btn-filled {
  background: #745cf9;
  color: #fff;
  border-color: #745cf9;
}

.btn-white:hover,
.image-bg .btn:hover,
.image-bg .btn:visited:hover {
  background: #fff;
  border-color: #fff;
  color: #222;
}

.image-bg .btn.btn-filled:hover,
.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
  background: #5d47d7;
  border-color: #5d47d7;
  color: #fff;
}

.btn:visited {
  color: #745cf9;
}

.btn-white:visited,
.btn:visited:hover {
  color: #fff;
}

.btn-white:visited:hover {
  color: #222;
}

.btn-filled:visited {
  color: #fff;
}

.cfa-text {
  margin-bottom: 0;
  line-height: 45px;
}

.cfa-button {
  width: 100%;
}

.btn-filled:hover,
.btn:visited:hover {
  background: #5d47d7;
  border-color: #5d47d7;
}

input[type="submit"]:hover {
  background-color: #5d47d7;
  color: #fff;
}

.widget input[type="submit"] {
  border: none;
  margin-top: 5px;
}

/*!---------- 7. NAVIGATION ----------*/

.nav-container {
  -webkit-backface-visibility: hidden;
  max-width: 100%;
}

nav {
  background: #fff;
  -webkit-backface-visibility: hidden;
  max-width: 100%;
}

nav ul {
  margin-bottom: 0;
}

.module {
  display: inline-block;
  padding: 0 32px;
}

.module-group {
  display: inline-block;
}

.module.left {
  float: left;
}

.module.right,
.module-group.right {
  float: right;
}

nav .btn,
.nav-bar .btn {
  margin: 0;
  height: auto;
}

.nav-bar {
  line-height: 53px;
}

nav {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.nav-bar .module:not(.site-title-container),
.nav-bar .module-group {
  height: 80px;
}

.nav-bar a:not(.custom-logo-link) {
  display: inline-block;
  height: 80px;
}

.menu > li.dropdown {
  padding-right: 18px;
}

.dropdown:after {
  position: absolute;
  top: 30px;
  right: 0;
  font-size: 15px;
  content: "\f107";
  font-family: 'fontawesome';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
}

.shapely-dropdown {
  display: none;
}


.main-navigation .menu {
  width: 100%;
  height: 50px;
  font: 14px dpfont;
  font-style: normal;
  font-variant-ligatures: normal;
  font-variant-caps: normal;
  font-variant-numeric: normal;
  font-variant-east-asian: normal;
  font-weight: normal;
  font-stretch: normal;
  font-size: 14px;
  line-height: normal;
  font-family: 'dpfont';
}

.main-navigation .menu li a {
  font-family: 'dpfont';
  padding-top: 30px;
  font-size: 14px;
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 1px;
  color: #4c4c4c;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  max-width: 100%;
  white-space: normal;
}

.main-navigation .menu li a:hover,
.main-navigation .menu li:hover > a,
.main-navigation .menu > li:hover:after {
  color: #5234f9;
}

.main-navigation .menu > li {
  margin-right: 50px;
  float: left;
  position: relative;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  opacity: 1;
  color: #4c4c4c;
}

.main-navigation .menu > li:last-child {
  margin-right: 0;
}

.main-navigation .menu > li ul {
  left: 0;
  width: 200px;
  padding: 0;
  background: #0e1015;
  position: absolute;
  z-index: 99;
  top: 100%;
  opacity: 0;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  transform: translate3d(0, 10px, 0);
  -webkit-transform: translate3d(0, 10px, 0);
  -moz-transform: translate3d(0, 10px, 0);
  visibility: hidden;
  margin-top: -1px;
}

.main-navigation .menu > li > ul > li {
  position: relative;
  line-height: 24px;
  width: 100%;
  vertical-align: top;
}

.main-navigation .menu > li > ul .dropdown:after {
  color: #0e1015;
  top: 1px;
  right: 24px;
  content: "\f105";
}

.main-navigation .menu > li > ul li a {
  color: #fff;
  height: auto;
  padding: 6px 24px;
}

.main-navigation .menu > li > ul > li ul {
  left: 100%;
  top: 0;
}

.main-navigation .menu > li:hover > ul {
  opacity: 1;
  transform: translate3d(0, 0px, 0);
  -webkit-transform: translate3d(0, 0px, 0);
  -moz-transform: translate3d(0, 0px, 0);
  visibility: visible;
}

.main-navigation .menu > li > ul li:hover > ul {
  opacity: 1;
  transform: translate3d(0, 0px, 0);
  -webkit-transform: translate3d(0, 0px, 0);
  -moz-transform: translate3d(0, 0px, 0);
  visibility: visible;
}

@media all and (max-width: 1024px) {
  .dropdown:after {
    display: none;
  }

  .shapely-dropdown {
    font-size: 11px;
    padding: 0 10px;
    display: inline-block;
  }

  .main-navigation .menu > li > ul li:hover > a {
    background-color: transparent !important;
  }

  .main-navigation .menu li:hover > a {
    color: #4c4c4c;
  }

  body .main-navigation .menu > li > ul li:hover > a {
    color: #8c979e;
  }
}

@media all and (min-width: 991px) and (max-width: 1024px) {
  .dropdown-menu .shapely-dropdown {
    position: absolute;
    top: 0;
    right: 0;
  }

  .dropdown-menu .shapely-dropdown > .fa-angle-down:before {
    content: "\f105";
  }
}

@media all and (max-width: 991px) {
  .shapely-dropdown {
    float: right;
    border: 1px solid;
  }

  .menu li a {
    padding: 10px 0;
  }

  #site-navigation.main-navigation .menu > li > ul li a {
    width: auto;
    display: inline-block;
  }
}

.nav-container {
  min-height: 56px;
}

nav.outOfSight {
  transform: translate3d(0, -100px, 0);
  -webkit-transform: translate3d(0, -100px, 0);
  -moz-transform: translate3d(0, -100px, 0);
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
}

nav.scrolled {
  transform: translate3d(0, 0px, 0);
  -webkit-transform: translate3d(0, 0px, 0);
  -moz-transform: translate3d(0, 0px, 0);
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
}

nav.fixed.scrolled {
  visibility: visible;
  opacity: 1;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
}

nav.fixed {
  top: 0;
  z-index: 999;
  left: 0;
  right: 0;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
}

nav.fixed {
  position: fixed;
  visibility: hidden;
  opacity: 0;
}

nav.fixed.scrolled {
  visibility: visible;
  opacity: 1;
}

.dropdown-menu {
  border-radius: 0;
}

.nav-open {
  max-height: 10000px !important;
  height: auto !important;
}

.nav-open .navbar-collapse,
.nav-open #menu {
  display: block;
}

.module.widget-handle {
  padding: 0 24px;
  cursor: pointer;
  position: relative;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  margin: 0;
}

@media all and (max-width: 1100px) {
  .module.widget-handle {
    padding: 0 16px;
  }
}

@media all and (max-width: 991px) {
  ul.dropdown-menu.active {
    display: block !important;
  }
}

.module.widget-handle i {
  font-size: 14px;
  line-height: 53px;
  opacity: 1;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  color: #3a52bf;
}

.module.widget-handle:hover i {
  opacity: 1;
}

.widget-handle .function {
  -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
  cursor: default;
  width: 200px;
  background: #0e1015;
  position: absolute;
  z-index: 99;
  opacity: 0;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  transform: translate3d(0, -200%, 0);
  -webkit-transform: translate3d(0, -200%, 0);
  -moz-transform: translate3d(0, -200%, 0);
  margin-top: -2px;
  right: 0;
}

.module.widget-handle:hover .function,
.module.widget-handle .function.active {
  opacity: 1;
  transform: translate3d(0, 0px, 0);
  -webkit-transform: translate3d(0, 0px, 0);
  -moz-transform: translate3d(0, 0px, 0);
  visibility: visible;
}

.module.widget-handle .title {
  font-family: "Raleway", "Helvetica Neue", Helvetica, Arial, sans-serif;
  letter-spacing: 1px;
  text-transform: uppercase;
  font-size: 11px;
  font-weight: 600;
  display: none;
  opacity: .5;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
}

.module.widget-handle .title:hover {
  opacity: 1;
}

/* Search bar */

.search-form,
.woocommerce-product-search {
  padding: 8px;
  display: inline-block;
  width: 100%;
  line-height: 50px;
}

.widget-handle .search-form input[type="text"] {
  font-size: 16px;
  float: left;
  width: 70%;
}

.search-form input[type="text"] {
  font-size: 14px;
  margin: 0;
}

.widget-handle .function {
  background: #fff;
  width: 300px;
}

.btn.searchsubmit,
.search-widget-handle button.searchsubmit,
.woocommerce-product-search > input[type="submit"] {
  min-width: 17%;
  padding: 0;
  width: 27%;
  height: 50px;
  line-height: 48px;
  margin: -2px 0 0 8px;
}

.search-widget-handle button.searchsubmit .screen-reader-text {
  position: relative !important;
  width: auto;
  ;
  height: auto;
  clip: initial;
}

.btn.searchsubmit:hover {
  background-color: #5d47d7;
  color: #fff;
}

/*Search Page */

.search #primary,
.no-results {
  padding-top: 0
}

.no-results {
  border-bottom: 0;
}

.no-results form.search-form {
  padding: 0;
  width: 100%;
}

.not-found form #s {
  max-width: 292px;
  width: 71%;
}

.no-results form .searchsubmit {
  margin: 0;
}

.not-found form .searchsubmit i {
  display: none;
}

.not-found form .searchsubmit span.screen-reader-text {
  clip: auto;
  position: relative !important;
  height: auto;
  width: auto;
}

.main-navigation .menu > li ul {
  background: #fff;
}

.main-navigation .menu > li ul {
  background: #fff;
}

.main-navigation .menu > li > ul li a {
  color: #8c979e;
  width: 100%;
  font-size: 12px;
  text-transform: none;
  font-weight: 400;
}

.main-navigation .menu > li > ul li a:hover,
.main-navigation .menu > li > ul li:hover > a {
  background: #f8f8f8;
  color: #5234f9;
}

.main-navigation .menu > li > ul li:hover > a {
  opacity: 1;
}

.main-navigation .dropdown-menu > .active > a,
.main-navigation .dropdown-menu > .active > a:focus {
  /*color: #0e1015;*/
  background-color: #fff;
}

.main-navigation .menu > li > ul .dropdown:hover:after {
  color: #5234f9;
}

/* Widget Menu */
.widget_nav_menu .sub-menu,
.widget.widget_pages ul.children {
  border-top: 1px solid #ebebeb;
  padding-top: 20px;
  margin-top: 20px;
}

@media all and (max-width: 1120px) {
  .main-navigation .menu > li {
    margin-right: 24px;
  }
}

/* Mobile Menu on Desktop */
@media all and (min-width: 992px) {
  .mobile-menu .module.widget-handle {
    border-left: none;
    line-height: 40px;
    min-height: 40px;
  }

  .mobile-menu .nav-bar .module-group {
    width: 100%;
  }

  .mobile-menu .visible-xs,
  .mobile-menu .visible-sm,
  .mobile-menu .nav-open .navbar-collapse.collapse {
    display: block !important;
  }

  .mobile-menu .navbar-collapse.collapse,
  .mobile-menu .nav-bar .module-group .module.hidden-xs,
  .mobile-menu .nav-bar .module-group .module.hidden-sm {
    display: none !important;
  }

  .mobile-menu #site-navigation .container > .flex-row {
    flex-wrap: wrap;
  }

  .mobile-menu .nav-bar,
  .nav-bar .module-group,
  .mobile-menu .nav-bar .module,
  .mobile-menu .nav-bar .module:not(.site-title-container) {
    height: auto;
  }

  .mobile-menu .nav-bar .module {
    padding: 0 16px;
  }

  .mobile-menu .navbar-collapse {
    margin-top: 20px;
    width: 100%;
  }

  .mobile-menu .main-navigation .menu li {
    line-height: 24px;
    display: block;
    width: 100%;
    max-width: 100%;
  }

  .mobile-menu .main-navigation .menu a {
    height: auto;
    line-height: 24px;
    padding: 4px 0;
  }

  .mobile-menu .shapely-dropdown {
    float: right;
    border: 1px solid;
    font-size: 11px;
    padding: 0 20px;
    display: inline-block;
    cursor: pointer;
  }

  .mobile-menu .main-navigation .menu > li > ul {
    position: relative;
    opacity: 1;
    visibility: visible;
    display: none;
    transform: translate3d(0, 0px, 0);
    -webkit-transform: translate3d(0, 0px, 0);
    -moz-transform: translate3d(0, 0px, 0);
    width: 100%;
    left: 0;
    border: 0 !important;
    box-shadow: none;
  }

  .mobile-menu .dropdown:after {
    display: none;
  }

  .mobile-menu ul.dropdown-menu.active {
    display: block !important;
  }

  .mobile-menu .module-group .module.left {
    float: none;
    display: block;
  }

  .mobile-menu .main-navigation .menu > li ul {
    position: relative;
    width: 100%;
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0px, 0);
    -webkit-transform: translate3d(0, 0px, 0);
    -moz-transform: translate3d(0, 0px, 0);
    left: 0;
    border: 0 !important;
    box-shadow: none;
  }

  .mobile-menu .main-navigation .menu > li > ul > li ul {
    left: 0 !important;
    display: none;
    padding: 0;
  }

  .mobile-menu #site-navigation.main-navigation .menu > li > ul li a {
    width: auto;
    display: inline-block;
    padding: 10px 16px;
  }

  .mobile-menu .main-navigation .menu > li > ul li a {
    padding: 10px 16px;
  }

  .mobile-menu .main-navigation .dropdown .dropdown li {
    padding-left: 18px;
  }

  .mobile-menu .main-navigation .menu > li > ul li a:hover,
  .mobile-menu .main-navigation .menu > li > ul li:hover > a {
    background-color: #fff;
  }

  .mobile-menu .search-widget-handle .search {
    padding: 0 15px;
  }

  .mobile-menu .widget-handle .function {
    width: 100%;
    max-width: 300px;
    position: relative;
    opacity: 1;
    transform: translate3d(0, 0px, 0);
    -webkit-transform: translate3d(0, 0px, 0);
    -moz-transform: translate3d(0, 0px, 0);
    visibility: visible;
    margin-top: 0;
    display: none;
    box-shadow: none !important;
  }

  .mobile-menu .module.widget-handle .title {
    display: inline-block;
    position: relative;
    bottom: 3px;
    margin-left: 8px;
  }

  .mobile-menu .toggle-search .function {
    display: block;
  }
}

@media all and (max-width: 991px) {
  .site-title-container {
    width: 84%;
  }

  .nav-bar,
  .nav-bar .module-group,
  .nav-bar .module,
  .nav-bar .module:not(.site-title-container) {
    height: auto;
  }

  .nav-bar .module {
    padding: 0 16px;
  }

  .nav-bar .module-group {
    width: 100%;
  }

  .nav-bar .module-group .module {
    display: block;
    float: none;
    width: 100%;
  }

  .main-navigation .menu {
    height: auto;
  }

  .main-navigation .menu a {
    height: auto;
    line-height: 24px;
    padding: 4px 0;
  }

  .main-navigation .menu li {
    line-height: 24px;
    display: block;
    width: 100%;
    max-width: 100%;
  }

  .main-navigation .menu > li ul {
    position: relative;
    width: 100%;
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0px, 0);
    -webkit-transform: translate3d(0, 0px, 0);
    -moz-transform: translate3d(0, 0px, 0);
    left: 0;
    border: 0 !important;
    box-shadow: none;
  }

  .main-navigation .menu > li > ul {
    position: relative;
    opacity: 1;
    visibility: visible;
    display: none;
    transform: translate3d(0, 0px, 0);
    -webkit-transform: translate3d(0, 0px, 0);
    -moz-transform: translate3d(0, 0px, 0);
  }

  .main-navigation .menu > li > ul .dropdown:after {
    content: "\f107";
  }

  .main-navigation .menu > li > ul > li ul {
    left: 0 !important;
    display: none;
    padding: 0;
  }

  .main-navigation .menu > li > ul li a {
    padding: 10px 16px;
  }

  .main-navigation .dropdown .dropdown li {
    padding-left: 18px;
  }

  .main-navigation .dropdown {
    padding-right: 0;
  }

  .module.widget-handle {
    border-left: none;
    line-height: 40px;
    min-height: 40px;
  }

  .module.widget-handle i {
    line-height: 40px;
  }

  .module.widget-handle .title {
    display: inline-block;
    position: relative;
    bottom: 3px;
    margin-left: 8px;
  }

  .widget-handle .function {
    width: 100%;
    max-width: 300px;
    position: relative;
    opacity: 1;
    transform: translate3d(0, 0px, 0);
    -webkit-transform: translate3d(0, 0px, 0);
    -moz-transform: translate3d(0, 0px, 0);
    visibility: visible;
    margin-top: 0;
    display: none;
    box-shadow: none !important;
  }

  .toggle-search .function {
    display: block;
  }

  .search-widget-handle .search {
    padding: 0 15px;
  }



  #site-navigation .container > .flex-row {
    flex-wrap: wrap;
  }

  .navbar-collapse {
    margin-top: 20px;
  }
}



/*!---------- 9. BREADCRUMBS ----------*/

.breadcrumb {
  margin-bottom: 24px;
}

.breadcrumb a {
  font-weight: 300;
}

/*!---------- 10. PAGINATION ----------*/

.pagination {
  margin: 0;
  border: none;
  background: transparent;
}

.pagination .nav-links *:first-child {
  border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
}

.pagination .nav-links *:last-child {
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
}

.pagination a,
.pagination span,
.woocommerce-pagination ul.page-numbers .page-numbers {
  width: 32px;
  height: 32px;
  padding: 0;
  text-align: center;
  padding-top: 6px;
  margin: 0 4px;
  color: #0e1015;
  font-weight: 400;
  font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  display: inline-block;
  border: 1px solid #ddd;
  line-height: 20px;
}

.woocommerce nav.woocommerce-pagination ul,
.woocommerce nav.woocommerce-pagination ul li {
  border: 0 none;
}

.pagination span:not(.dots),
.woocommerce-pagination ul.page-numbers span.page-numbers,
.woocommerce nav.woocommerce-pagination ul li a:focus,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
  background: #745cf9;
  color: #fff;
  border-color: #745cf9;
}

.pagination a:hover,
.pagination .active a,
.pagination .active:hover a {
  background: #745cf9;
  color: #fff;
  border-color: #745cf9;
}

/*!---------- 11. ICON FEATURES ----------*/

.feature {
  margin-bottom: 24px;
}

.feature p:last-child {
  margin-bottom: 0;
}

.feature-1 i {
  display: inline-block;
  margin-bottom: 16px;
  color: #745cf9;
}

.page-title {
  display: none;
  padding: 0;
}

/*!---------- 12. WIDGETS ----------*/

.main-container .nolist > ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.widget {
  margin-bottom: 0;
}

#secondary .widget {
  margin-bottom: 48px;
}

.category-list {
  line-height: 32px;
}

.widget hr {
  margin-bottom: 12px;
}

.recent-posts {
  line-height: 24px;
}

.recent-posts li {
  margin-bottom: 8px;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
}

.recent-posts .date {
  display: block;
  letter-spacing: 0;
  opacity: .8;
}

.recent-posts li:hover .date {
  opacity: 1;
}

.category-list span {
  float: right;
}

.jetpack_subscription_widget form {
  background: #745cf9;
  color: #fff;
  padding: 24px;
}

.jetpack_subscription_widget form #subscribe-text {
  color: #fff;
}

.jetpack_subscription_widget #subscribe-text h5 {
  color: #fff;
  margin-bottom: 16px;
  text-transform: uppercase;
}

.jetpack_subscription_widget #subscribe-text p {
  color: #fefefe;
}

.jetpack_subscription_widget #subscribe-email,
.jetpack_subscription_widget #subscribe-submit {
  margin: 0;
}

.jetpack_subscription_widget #subscribe-email input {
  margin: 0;
  padding: 3px 3px 3px 20px;
  width: 100%;
}

.jetpack_subscription_widget #subscribe-submit input {
  background: #fff;
  color: #745cf9;
  padding: 0;
}

.jetpack_subscription_widget .error {
  background-color: #FFBABA;
  color: #D8000C;
  padding: 5px 15px;
}

.jetpack_subscription_widget .success p {
  background-color: #DFF2BF;
  color: #4F8A10;
  padding: 5px 15px;
}

/*!---------- 13. IMAGE TILES ----------*/

img {
  max-width: 100%;
}

.image-tile {
  overflow: hidden;
  position: relative;
  margin-bottom: 24px;
}

.image-tile img {
  width: 100%;
  display: inline-block;
}

.inner-title:before {
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(34, 34, 34, 0.9) 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(0, 0, 0, 0)), color-stop(100%, rgba(34, 34, 34, 0.9)));
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(34, 34, 34, 0.9) 100%);
  background: -o-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(34, 34, 34, 0.9) 100%);
  background: -ms-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(34, 34, 34, 0.9) 100%);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(34, 34, 34, 0.9) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#0e1015', GradientType=0);
  pointer-events: none;
}

.inner-title:hover:before {
  transform: scale(1.2);
  -webkit-transform: scale(1.2);
}

.inner-title .title {
  position: absolute;
  width: 100%;
  z-index: 5;
}

.inner-title .title h5 {
  color: #ffffff;
}

.inner-title .title span {
  color: #ffffff;
}

.inner-title .title h5 {
  font-weight: 600;
}

.inner-title {
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  opacity: 1;
}

.inner-title:hover {
  opacity: .95;
}

.inner-title.hover-reveal:before {
  opacity: 0;
}

.inner-title.hover-reveal .title {
  opacity: 0;
  transform: translate3d(0, 50px, 0);
  -webkit-transform: translate3d(0, 50px, 0);
  -moz-transform: translate3d(0, 50px, 0);
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
}

.inner-title.hover-reveal:hover .title {
  opacity: 1;
  transform: translate3d(0, -50%, 0);
  -webkit-transform: translate3d(0, -50%, 0);
  -moz-transform: translate3d(0, -50%, 0);
  -webkit-transform: translate3d(0, -50%, 0);
  top: 50%;
}

.inner-title.hover-reveal:hover:before {
  opacity: 1;
}

@media all and (max-width: 768px) {
  .inner-title:before {
    transform: scale(1.2);
    -webkit-transform: scale(1.2);
  }

  .inner-title.hover-reveal .title {
    opacity: 1;
    transform: translate3d(0, -50%, 0);
    -webkit-transform: translate3d(0, -50%, 0);
    -moz-transform: translate3d(0, -50%, 0);
    -webkit-transform: translate3d(0, -50%, 0);
    top: 50%;
  }

  .inner-title.hover-reveal:before {
    opacity: 1;
  }

  .inner-title {
    opacity: .95;
  }
}

/*!---------- 14. SLIDERS ----------*/

.logo-carousel li {
  text-align: center;
}

.logo-carousel li {
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  opacity: .5;
}

.logo-carousel li:hover {
  opacity: 1;
}

.logo-carousel img {
  max-height: 60px;
}

@media all and (max-width: 767px) {
  .logo-carousel .slides li {
    width: 100%;
  }
}

/*!---------- 15. IMAGE GALLERIES ----------*/

.lightbox-grid,
.lightbox-grid ul,
.lightbox-grid li {
  position: relative;
  overflow: hidden;
}

.lightbox-grid li {
  width: 25%;
  float: left;
  border: 8px solid rgba(0, 0, 0, 0);
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  opacity: 1;
}

.lightbox-grid li:hover {
  opacity: .9;
}

.third-thumbs li {
  width: 25%;
  height: 13.08vw;
  border: none;
}

@media all and (max-width: 991px) {
  .lightbox-grid li {
    width: 33.33333%;
  }
}

@media all and (max-width: 767px) {
  .lightbox-grid li {
    width: 50%;
  }

  .third-thumbs li {
    height: 50vw;
  }
}

/* 全固定ページで非表示 */
.page .entry-title {
  display: none;
}

/*!---------- 16. Header Area ----------*/

.cover {
  margin: 0;
  padding: 0;
}

.cover p {
  color: #ffffff;
}

.cover:first-child .fullscreen {
  max-height: 100%;
}

@media all and (max-width: 767px) {
  .cover.fullscreen {
    height: auto;
    padding: 0;
  }
}

/*!---------- 17. WooCommerce ----------*/

.woocommerce ul.products li.product:nth-child(4n),
.woocommerce-page ul.products li.product:nth-child(4n) {
  margin-right: 0;
}

/*!---------- 18. BLOG ----------*/

.post-title a,
.post-title {
  font-size: 40px;
  font-weight: 300;
}

.post-title a:hover {
  color: #292929;
}

video:-webkit-full-screen,
audio:-webkit-full-screen {
  -webkit-transform: translateY(0%);
}

iframe {
  border: none;
}

.post-meta {
  overflow: hidden;
  display: inline-block;
  margin-bottom: 12px;
}

.post-meta > li {
  float: left;
  margin-right: 24px;
}

.post-meta i {
  font-size: 16px;
  margin-right: 8px;
  position: relative;
  top: 2px;
}

.comments-list,
.comments-list ul {
  width: 100%;
  overflow: hidden;
}

.comments.nolist > ul > li {
  padding-left: 0;
}

.comments-list li.comment {
  overflow: hidden;
  margin-bottom: 40px;
  width: 100%;
}

.comments-list p:last-of-type {
  margin: 0;
}

.comments-list .avatar,
.comments-list .comment {
  display: inline-block;
  float: left;
}

.comments-list .avatar {
  width: 10%;
}

.comments-list .avatar img {
  width: 75px;
}

.comments-list .comment {
  width: 90%;
  padding-left: 5%;
}

.comments-list .comment .btn {
  position: relative;
  margin: 0;
}

.comments-list ul {
  padding-left: 10%;
  padding-top: 40px;
}

.comments-list ul li:last-of-type {
  margin-bottom: 0;
}

.comments input[type="submit"] {
  max-width: 25%;
  float: right;
}

.masonry {
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  opacity: 0;
  transform: translate3d(0, 100px, 0);
  -webkit-transform: translate3d(0, 100px, 0);
  -moz-transform: translate3d(0, 100px, 0);
}

.masonry.fadeIn {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
}

.masonry-item {
  max-width: 100%;
}

.container .masonry-item {
  margin-bottom: 0px;
}

.masonry-item blockquote:hover {
  background: #745cf9;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  color: #fff;
}

.masonryFlyIn .masonry-item {
  opacity: 0;
  transform: translate3d(0, 50px, 0);
  -webkit-transform: translate3d(0, 50px, 0);
  -moz-transform: translate3d(0, 50px, 0);
}

.masonryFlyIn .masonry-item.fadeIn {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
}

.masonry-loader {
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  opacity: 1;
  position: absolute;
  width: 100%;
  z-index: 10;
  top: 80px;
}

.masonry-loader.fixed-center {
  top: 50%;
  left: 50%;
  transform: translate3d(-50%, 0, 0);
  -webkit-transform: translate3d(-50%, 0, 0);
  -moz-transform: translate3d(-50%, 0, 0);
  margin-top: -25px;
}

.masonry-loader.fadeOut {
  opacity: 0;
  max-height: 0;
  padding: 0;
  overflow: hidden;
}

.spinner {
  width: 50px;
  height: 50px;
  background-color: #745cf9;
  margin: 0 auto;
  display: inline-block;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -webkit-animation: sk-rotateplane 1.2s infinite ease-in-out;
  animation: sk-rotateplane 1.2s infinite ease-in-out;
}

@-webkit-keyframes sk-rotateplane {
  0% {
    -webkit-transform: perspective(120px);
  }

  50% {
    -webkit-transform: perspective(120px) rotateY(180deg);
  }

  100% {
    -webkit-transform: perspective(120px) rotateY(180deg) rotateX(180deg);
  }
}

@keyframes sk-rotateplane {
  0% {
    transform: perspective(120px) rotateX(0deg) rotateY(0deg);
    -webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg);
  }

  50% {
    transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
    -webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
  }

  100% {
    transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
    -webkit-transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
  }
}

@media all and (max-width: 767px) {
  .comments input[type="submit"] {
    max-width: 100%;
    float: none;
  }
}

.flex-direction-nav a.flex-next {
  right: 16px;
}

.flex-direction-nav a.flex-next:before,
.flex-direction-nav a.flex-prev:before {
  content: "\f105";
  font-family: 'fontawesome';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size: 24px;
  color: #fff;
}

.flex-direction-nav a.flex-prev {
  left: 16px;
}

.flex-direction-nav a.flex-prev:before {
  content: "\f104";
}

.flex-direction-nav a {
  opacity: 1;
  text-shadow: none;
  color: rgba(0, 0, 0, 0);
  width: 24px;
  height: 24px;
  margin: -12px 0 0;
}

.flex-control-nav li a {
  background: none;
  border: 2px solid #0e1015;
  width: 10px;
  height: 10px;
}

@media all and (max-width: 768px) {
  .flex-direction-nav {
    display: none;
  }
}

.text-slider .flex-direction-nav li a:before {
  color: #222;
}

.image-bg .text-slider .flex-direction-nav li a:before {
  color: #fff;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  opacity: .5;
}

.image-bg .text-slider .flex-direction-nav li a:hover:before {
  opacity: 1;
}

.text-slider .flex-direction-nav a.flex-prev {
  left: -60px;
}

.text-slider .flex-direction-nav a.flex-next {
  right: -60px;
}

.content p.intro {
  padding-bottom: 20px;
  border-bottom: 3px double #ddd;
  margin-bottom: 20px;
  font-size: 1.2em;
  line-height: 155%;
  font-weight: 700;
  color: #745cf9;
}

.content blockquote {
  padding: 30px 30px 30px 90px;
  background: #fafafa;
  border: 1px solid #eee;
  position: relative;
  font-style: italic;
}

.content q {
  background: #fafafa;
  font-style: italic;
}

.content blockquote cite {
  display: block;
  margin-top: 1.1em;
  font-family: 'Lato', Helvetica, sans-serif;
  font-size: 0.75em;
  line-height: 120%;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.content blockquote cite:before {
  content: "— ";
}

.content ul,
.content ol {
  margin-left: 1.5em;
}

.content ul {
  list-style: disc;
}

.content ul ul {
  list-style: circle;
}

.content ol {
  list-style: decimal;
}

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

.content ul ul,
.content ul ol,
.content ol ul,
.content ol ol {
  margin-bottom: 0;
}

.content li {
  margin-bottom: 0.5em;
  line-height: 170%;
}

.content ol > li:last-child,
.content ul > li:last-child {
  margin-bottom: 0;
}

.content ol > li:first-child,
.content ul > li:first-child {
  margin-top: 0.5em;
}

/* WordPress Tables */

.content table {
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show;
  font-size: 0.9em;
  width: 100%;
  margin-bottom: 1.1em;
}

.content th,
.content td {
  padding: 2%;
  margin: 0;
  overflow: visible;
  line-height: 120%;
  border-bottom: 1px solid #DDD;
}

.content th {
  padding-top: 0;
}

.content th {
  font-weight: bold;
  color: #111;
}

.content table tbody > tr:nth-child(odd) > td {
  background: #f9f9f9;
}

.content ul.post-meta {
  margin-left: 0;
}

.content ul.post-meta li {
  list-style: none;
  margin-top: 0 !important;
}

.comment-date {
  display: inline-block;
  font-size: 10px;
  padding: 5px 0;
}

.comments .fn {
  display: block;
}

.comment-reply {
  height: 20px;
  line-height: 16px;
  padding: 0 12px;
  font-size: 10px;
}

.page-title-section {
  height: 225px;
  padding: 70px 0;
}

.page-title {
  margin-bottom: 0 !important;
}

@media all and (max-width: 767px) {

  .page-title-section,
  #breadcrumbs {
    text-align: center;
  }
}

.author-bio {
  display: block;
  overflow: hidden;
  padding: 32px;
  background: #f5f5f5;
  border: 1px solid rgba(0, 0, 0, 0.1);
  margin-bottom: 40px;
}

.author-social {
  font-size: 16px !important;
}

/*!---------- 19. IMAGE BLOCKS ----------*/

.image-small {
  max-height: 80px;
}

.fade-half {
  opacity: 0.5;
}

.cast-shadow {
  -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
  margin-bottom: 10px;
}

.cast-shadow.img-responsive {
  margin: 10px auto;
}

/*!---------- 20. PORTFOLIO ----------*/

.project {
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  opacity: 1;
  padding: 0;
}

.project .image-tile {
  margin: 0;
}

.project:not(.masonry-item) .image-tile {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.project:not(.masonry-item) .image-tile a {
  display: block;
  width: 100%;
  height: 100%;
}

.project:not(.masonry-item) {
  padding-bottom: 25%;
  position: relative;
  margin-bottom: 0;
}

/*!---------- 21. FOOTER ----------*/

footer.bg-dark a {
  color: #fff;
}

.social-list {
  margin: 0;
}

.bg-dark .social-list a {
  color: #fff;
  opacity: .5;
}

.bg-dark .social-list a:hover {
  opacity: 1;
}

.back-to-top {
  position: absolute;
  right: 0;
  bottom: 0;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  height: 36px;
  width: 36px;
  padding: 5px 11px;
}

.back-to-top .fa {
  font-size: 18px;
  color: #fff;
}

.back-to-top:hover {
  opacity: 1;
}

.bg-dark .back-to-top {
  border-color: #fff;
}

.bg-dark .back-to-top:active,
.bg-dark .back-to-top:focus {
  color: #fff;
}

.bg-dark .back-to-top:hover {
  background: none;
}

.footer input[type="submit"] {
  border: 0;
  margin-top: 3px;
}

.copyright-text {
  color: #fefefe;
}

.footer .footer-credits {
  color: #fff;
}

.footer .footer-credits a {
  color: #fefefe;
  opacity: .8;
}

.footer .footer-credits a:hover,
.footer .footer-credits a:focus {
  color: #5234f9;
}

/*!---------- 22. SPACING ----------*/

.mt20 {
  margin-top: 20px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

.mb16 {
  margin-bottom: 16px;
}

.mb24 {
  margin-bottom: 24px;
}

.mb32 {
  margin-bottom: 32px;
}

.mb40 {
  margin-bottom: 40px;
}

.mb64 {
  margin-bottom: 64px;
}

.p24 {
  padding: 24px;
}

.p0 {
  padding: 0;
}

.pt48 {
  padding-top: 48px;
}

.pb0 {
  padding-bottom: 0 !important;
}

.pt0 {
  padding-top: 0;
}

@media all and (max-width: 767px) {
  .mb-xs-24 {
    margin-bottom: 24px;
  }

  .mb-xs-40 {
    margin-bottom: 40px;
  }
}

/*!---------- 23. OTHER ----------*/

.border-bottom {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.feature-1 i {
  font-size: 64px;
}

.parallax-section {
  padding-top: 0;
  padding-bottom: 0;
  border: 0;
}

.parallax-window {
  background: transparent;
}

.small-screen .top-parallax-section {
  overflow: hidden;
  padding: 96px 0;
}

.social-list {
  font-size: 22px;
}

.testimonial-img {
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  height: 100px;
  width: 100px;
  margin-bottom: 16px;
}

.image-bg a {
  color: #745cf9;
}

.widget-area section {
  border-bottom: 0;
  padding: 0;
}

/* Layout */

.has-sidebar-left #secondary {
  padding-right: 40px;
}

.no-sidebar {
  float: none;
  margin: 0 auto;
}

.full-width {
  width: 100%;
}

.tags-links {
  display: block;
}

#social {
  background: transparent;
  float: right;
}

.contact-section #social {
  float: none;
  border-bottom: 0 none;
}

#social li {
  display: inline-block;
}

#social li,
#social ul {
  border: 0 !important;
  list-style: none;
  padding-left: 0;
  text-align: center;
}

.contact-section #social ul {
  text-align: left;
}

.contact-section .social-icons li a {
  color: #745cf9;
}

.contact-section .social-icons li a:hover {
  color: #5d47d7;
}

#social .social_icon span {
  display: none;
}

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

#social li a[href*="facebook.com"] .fa:before,
.fa-facebook-f:before,
.fa-facebook:before {
  content: "\f09a"
}

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

#social li a[href*="/feed"] .fa:before,
.fa-rss:before {
  content: "\f09e"
}

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

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

#social li a[href*="linkedin.com"] .fa:before,
.fa-linkedin:before {
  content: "\f0e1"
}

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

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

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

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

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

#social li a[href*="skype.com"] .fa:before,
.fa-skype:before {
  content: "\f17e"
}

#social li a[href*="foursquare.com"] .fa:before,
.fa-foursquare:before {
  content: "\f180"
}

#social li a[href*="vimeo.com"] .fa:before,
.fa-vimeo-square:before {
  content: "\f194"
}

#social li a[href*="spotify.com"] .fa:before,
.fa-spotify:before {
  content: "\f1bc"
}

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

.header-image-bg {
  background-size: cover;
  position: relative;
}

.header-image-bg .page-title {
  position: relative;
  z-index: 2;
}

.customize-partial-edit-shortcut button,
.widget .customize-partial-edit-shortcut button {
  left: 0 !important;
}

#site-navigation .customize-partial-edit-shortcut button,
#site-navigation .widget .customize-partial-edit-shortcut button,
#colophon .customize-partial-edit-shortcut button,
#colophon .widget .customize-partial-edit-shortcut button,
#secondary .customize-partial-edit-shortcut button,
#secondary .widget .customize-partial-edit-shortcut button {
  left: -30px !important;
}

.video-widget {
  position: relative;
  overflow: hidden;
  height: calc(100vh - 56px);
}

.video-widget .video-controls {
  position: absolute;
  bottom: 20px;
  left: 20px;
  z-index: 6;
}

.video-widget .video-controls button {
  background: #745cf9;
  color: #fff;
  border: none;
  padding: 5px 10px;
  text-align: center;
}

.video-widget.youtube {
  position: relative;
  background: transparent;
}

.vimeo-holder iframe {
  width: 100%;
}

.video-widget.vimeo:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 5;
}

.ytplayer-container {
  position: absolute;
  top: 0;
  z-index: -1;
}

.shapely_home_parallax {
  width: 100%;
  display: block;
}

.shapely_home_parallax > section:not(.image-bg) .btn-white {
  border-color: #745cf9;
  color: #745cf9;
}

.shapely_home_parallax > section:not(.image-bg) .btn-white:hover,
.shapely_home_parallax > section:not(.image-bg) .btn-white:focus {
  color: #fff;
  background-color: #5234f9;
  border-color: #5234f9;
}

.shapely_home_parallax > section:not(.image-bg) .btn-white:active {
  border-color: #5234f9;
  background-color: #5234f9;
  color: #fff;
}

.bg-secondary .text-right {
  z-index: 2;
}

/*
* Widgets
*/
.widget .widget-title {
  font-family: "Raleway", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 22px;
  line-height: 24px;
  color: #001c28;
  margin-bottom: 25px;
}

.widget.widget_archive > div ul,
.widget.widget_archive ul,
.widget.widget_categories > div ul,
.widget.widget_categories ul,
.widget.widget_meta > div ul,
.widget.widget_meta ul,
.widget.widget_pages > div ul,
.widget.widget_pages ul,
.widget.widget_nav_menu > div ul,
.widget.widget_nav_menu ul {
  list-style-type: none;
  padding-left: 0;
  margin-left: 0;
}

.widget.widget_archive > div ul li,
.widget.widget_archive ul li,
.widget.widget_categories > div ul li,
.widget.widget_categories ul li,
.widget.widget_meta > div ul li,
.widget.widget_meta ul li,
.widget.widget_pages > div ul li,
.widget.widget_pages ul li,
.widget.widget_nav_menu > div ul li,
.widget.widget_nav_menu ul li {
  border-bottom: 1px solid #ebebeb;
  padding-bottom: 20px;
  margin-bottom: 20px;
}

.widget.widget_archive > div ul li:last-of-type,
.widget.widget_archive ul li:last-of-type,
.widget.widget_categories > div ul li:last-of-type,
.widget.widget_categories ul li:last-of-type,
.widget.widget_meta > div ul li:last-of-type,
.widget.widget_meta ul li:last-of-type,
.widget.widget_pages > div ul li:last-of-type,
.widget.widget_pages ul li:last-of-type,
.widget.widget_nav_menu > div ul li:last-of-type,
.widget.widget_nav_menu ul li:last-of-type {
  border: none;
  padding-bottom: 0;
  margin-bottom: 0;
}

.woocommerce .widget_layered_nav ul li span,
.widget.widget_archive > div ul li span,
.widget.widget_archive ul li span,
.widget.widget_categories > div ul li span,
.widget.widget_categories ul li span,
.widget.widget_meta > div ul li span,
.widget.widget_meta ul li span,
.widget.widget_pages > div ul li span,
.widget.widget_pages ul li span,
.widget.widget_nav_menu > div ul li span,
.widget.widget_nav_menu ul li span {
  font-size: 12px;
  font-family: "Raleway", "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #8c979e;
  float: right;
}

.woocommerce .widget_layered_nav ul li a,
.woocommerce .widget_layered_nav_filters ul li a,
.woocommerce.widget ul.cart_list li a,
.woocommerce.widget ul.product_list_widget li a,
.widget_products .product_list_widget a,
.widget_product_categories ul.product-categories li a,
.widget_product_tag_cloud .tagcloud a,
.widget.widget_archive > div ul li a,
.widget.widget_archive ul li a,
.widget.widget_categories > div ul li a,
.widget.widget_categories ul li a,
.widget.widget_meta > div ul li a,
.widget.widget_meta ul li a,
.widget.widget_pages > div ul li a,
.widget.widget_pages ul li a,
.widget.widget_nav_menu > div ul li a,
.widget.widget_nav_menu ul li a {
  font-size: 14px;
  font-family: "Raleway", "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #8c979e;
  font-weight: 400;
}

.woocommerce .widget_layered_nav ul li a:hover,
.woocommerce .widget_layered_nav_filters ul li a:hover,
.woocommerce.widget ul.cart_list li a:hover,
.woocommerce.widget ul.product_list_widget li a:hover,
.widget_products .product_list_widget a:hover,
.widget_product_categories ul.product-categories li a:hover,
.widget_product_tag_cloud .tagcloud a:hover,
.widget.widget_archive > div ul li a:focus,
.widget.widget_archive > div ul li a:hover,
.widget.widget_archive ul li a:focus,
.widget.widget_archive ul li a:hover,
.widget.widget_categories > div ul li a:focus,
.widget.widget_categories > div ul li a:hover,
.widget.widget_categories ul li a:focus,
.widget.widget_categories ul li a:hover,
.widget.widget_meta > div ul li a:focus,
.widget.widget_meta > div ul li a:hover,
.widget.widget_meta ul li a:focus,
.widget.widget_meta ul li a:hover,
.widget.widget_pages > div ul li a:focus,
.widget.widget_pages > div ul li a:hover,
.widget.widget_pages ul li a:focus,
.widget.widget_pages ul li a:hover,
.widget.widget_nav_menu > div ul li a:focus,
.widget.widget_nav_menu > div ul li a:hover,
.widget.widget_nav_menu ul li a:focus,
.widget.widget_nav_menu ul li a:hover {
  color: #5234f9;
}

.woocommerce.widget ul.cart_list li a.remove {
  font-size: 1.5em;
}

.widget.widget_recent_comments ul {
  list-style-type: none;
  padding-left: 0;
  margin-left: 0;
}

.widget.widget_recent_comments ul li {
  color: #8c979e;
}

.widget.widget_recent_comments ul li a {
  font-family: "Raleway", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400;
}

.widget.widget_recent_comments ul li .comment-author-link {
  color: #8c979e;
}

.widget.widget_recent_comments ul li .comment-author-link a {
  color: #8c979e;
}

.widget.widget_recent_comments ul li .comment-author-link a:focus,
.widget.widget_recent_comments ul li .comment-author-link a:hover {
  color: #5234f9;
}

.widget.widget_nav_menu .menu > li {
  float: none;
}

.widget.widget_nav_menu .menu > li a {
  text-transform: initial;
  font-size: 14px;
  font-family: "Raleway", "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #8c979e;
  font-weight: 400;
  opacity: 1;
}

.widget.widget_nav_menu .menu > li a:focus,
.widget.widget_nav_menu .menu > li a:hover {
  color: #5234f9;
}

.widget.widget_tag_cloud a {
  text-transform: initial;
  font-size: 14px;
  font-family: "Raleway", "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #8c979e;
  font-weight: 400;
}

.widget.widget_tag_cloud a:focus,
.widget.widget_tag_cloud a:hover {
  color: #5234f9;
}

.widget.widget_recent_entries ul {
  list-style-type: none;
  padding-left: 0;
  margin-left: 0;
}

.widget.widget_recent_entries ul li {
  border-bottom: 1px solid #ebebeb;
  padding-bottom: 20px;
  margin-bottom: 20px;
}

.widget.widget_recent_entries ul li:last-of-type {
  border: none;
  padding-bottom: 0;
}

.widget.widget_recent_entries ul li .post-date {
  font-size: 12px;
  color: #001c28;
  padding-left: 10px;
  border-left: 1px solid #ebebeb;
}

.widget.widget_recent_entries ul li a {
  text-transform: initial;
  font-size: 14px;
  font-family: "Raleway", "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #8c979e;
  font-weight: 400;
  display: inline-block;
  width: 100%;
}

.widget.widget_recent_entries ul li a:focus,
.widget.widget_recent_entries ul li a:hover {
  color: #5234f9;
}

.widget.widget_rss .rss-widget-icon {
  display: none;
}

.widget.widget_rss .widget-title a {
  font-family: "Raleway", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 22px;
  line-height: 24px;
  color: #001c28;
  margin-bottom: 25px;
  font-weight: 400;
}

.widget.widget_rss ul {
  list-style-type: none;
  padding-left: 0;
  margin-left: 0;
}

.widget.widget_rss ul li {
  margin-bottom: 40px;
}

.widget.widget_rss ul li .rsswidget {
  font-size: 22px;
  font-family: "Raleway", "Helvetica Neue", Helvetica, Arial, sans-serif;
  line-height: 24px;
  font-weight: 400;
  color: #001c28;
  display: block;
}

.widget.widget_rss ul li .rsswidget:hover,
.widget.widget_rss ul li .rsswidget:focus {
  color: #745cf9;
}

.widget.widget_rss ul li .rss-date {
  font-size: 12px;
  display: inline-block;
  width: 100%;
  margin-bottom: 30px;
}

.widget.widget_rss ul li .rssSummary {
  color: #8c979e;
  font-size: 14px;
}

.widget.widget_rss ul li cite {
  color: #001c28;
  font-style: normal;
}

.widget.widget_search .search-form,
.widget_product_search .woocommerce-product-search {
  padding: 0;
  position: relative;
}

.widget.widget_search .search-form > input,
.widget_product_search .woocommerce-product-search > input {
  background: transparent;
  border: 1px solid #ebebeb;
  text-transform: initial;
  font-weight: 400;
  box-sizing: border-box;
}

.widget.widget_search .search-form > input#s:hover,
.widget.widget_search .search-form > input#s:focus,
.widget_product_search .woocommerce-product-search > input.search-field:hover,
.widget_product_search .woocommerce-product-search > input.search-field:focus,
textarea:hover,
textarea:focus,
input[type="text"]:hover,
input[type="search"]:hover,
input[type="email"]:hover,
input[type="tel"]:hover,
input[type="text"]:focus,
input[type="search"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus {
  border-color: #745cf9;
  box-shadow: none;
  outline: none;
}

.widget.widget_search input[type="text"]:focus + button[type="submit"].searchsubmit,
.widget.widget_search input[type="text"]:hover + button[type="submit"].searchsubmit,
.widget.widget_product_search input[type="text"]:focus + button[type="submit"].searchsubmit,
.widget.widget_product_search input[type="text"]:hover + button[type="submit"].searchsubmit {
  color: #745cf9;
  border-color: #745cf9 !important;
}

.widget.widget_search .search-form > button[type="submit"].searchsubmit,
.widget_product_search .woocommerce-product-search > button[type="submit"].searchsubmit {
  position: absolute;
  border: none;
  top: 7px;
  right: 0;
  margin: 0;
  bottom: 7px;
  height: 35px;
  width: 40px;
  border-left: 1px solid #ebebeb !important;
  border-right: 0 none !important;
  border-top: 0 none !important;
  border-bottom: 0 none !important;
  color: transparent;
  background-color: transparent !important;
  z-index: 2;
  font-size: 14px;
  line-height: 1.5;
}

.widget.widget_search .search-form > button[type="submit"].searchsubmit,
.widget.widget_product_search button[type="submit"].searchsubmit {
  color: #ebebeb;
}

.footer-widget-area .widget.widget_search .search-form > button[type="submit"].searchsubmit,
.footer-widget-area .widget.widget_product_search button[type="submit"].searchsubmit {
  color: #fff;
}

.widget_product_search .woocommerce-product-search > button[type="submit"]:hover {
  color: transparent !important;
  background-color: transparent !important;
}

.widget.widget_search .search-form > .searchsubmit:hover,
.widget.widget_search .search-form > .searchsubmit:focus,
.widget.widget_search .search-form > .searchsubmit:active {
  color: transparent;
}

.widget.widget_search .search-form :-moz-placeholder {
  text-transform: initial;
  font-weight: 400;
  letter-spacing: initial;
  color: #8c979e;
  font-size: 14px;
  font-family: 'Raleway';
}

.widget.widget_search .search-form ::-moz-placeholder {
  text-transform: initial;
  font-weight: 400;
  letter-spacing: initial;
  color: #8c979e;
  font-size: 14px;
  font-family: 'Raleway';
}

.widget.widget_search .search-form :-ms-input-placeholder {
  text-transform: initial;
  font-weight: 400;
  letter-spacing: initial;
  color: #8c979e;
  font-size: 14px;
  font-family: 'Raleway';
}

.widget_product_categories ul.product-categories {
  list-style: none;
  padding: 0;
  margin: 0;
}

.widget_product_categories ul.product-categories ul {
  list-style: none;
  padding-top: 20px;
}

.widget_product_categories ul.product-categories li:not(.cat-parent) {
  padding-bottom: 20px;
}

.widget.widget_calendar {
  position: relative;
}

.widget.widget_calendar .widget-title,
.widget.widget_calendar h3 {
  display: none;
}

.widget.widget_calendar table {
  border: 0;
  border-collapse: separate;
  border-spacing: 4px;
}

.widget.widget_calendar #wp-calendar {
  font-size: 12px;
}

.widget.widget_calendar #wp-calendar > caption {
  color: #001c28;
  font-family: "Raleway", "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-align: center;
  font-size: 18px;
  font-weight: 400;
  padding-bottom: 20px;
  padding-top: 16px;
  min-height: 55px;
  position: relative;
  margin-bottom: 20px;
  border-bottom: 1px solid #ebebeb;
}

.widget.widget_calendar #wp-calendar > caption:after {
  width: 75px;
  display: block;
  content: '';
  height: 1px;
  background: #745cf9;
  position: absolute;
  bottom: -1px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -khtml-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
}

.widget.widget_calendar #wp-calendar thead {
  color: #745cf9;
}

.widget.widget_calendar #wp-calendar td:not(.pad):not(#next):not(#prev) {
  width: 44px;
  height: 44px;
  border: 1px solid #ebebeb;
}

.widget.widget_calendar #wp-calendar td:not(.pad):not(#next):not(#prev)#today {
  border-color: #745cf9;
}

.widget.widget_calendar #wp-calendar td:not(.pad):not(#next):not(#prev)#today:hover {
  background: #745cf9;
  color: #fff;
}

.widget.widget_calendar #wp-calendar td:not(.pad):not(#next):not(#prev)#today:hover a {
  color: #fff;
}

.widget.widget_calendar #wp-calendar td,
.widget.widget_calendar #wp-calendar th {
  padding: 6px 7px;
  color: #001c28;
  text-align: center;
}

.widget.widget_calendar #wp-calendar td a,
.widget.widget_calendar #wp-calendar th a {
  color: #745cf9;
  text-decoration: none;
}

.widget.widget_calendar #wp-calendar td a:hover,
.widget.widget_calendar #wp-calendar td a:focus,
.widget.widget_calendar #wp-calendar th a:hover,
.widget.widget_calendar #wp-calendar th a:focus {
  text-decoration: none;
}

.widget.widget_calendar #wp-calendar #prev {
  position: absolute;
  top: -2px;
  left: 10%;
  width: 35px;
  height: 55px;
  background-color: transparent;
  color: #FFF;
}

.widget.widget_calendar #wp-calendar #prev:before {
  content: '\f104';
  display: block;
  font-size: 16px;
  line-height: 46px;
  text-align: center;
  position: relative;
  font-family: 'FontAwesome';
  color: #001c28;
}

.widget.widget_calendar #wp-calendar #prev > a {
  top: 18px;
  position: absolute;
  color: transparent !important;
  left: 0;
}

.widget.widget_calendar #next {
  position: absolute;
  top: -2px;
  right: 10%;
  width: 35px;
  height: 55px;
  background-color: transparent;
  color: #FFF;
}

.widget.widget_calendar #next:before {
  content: '\f105';
  display: block;
  font-size: 16px;
  line-height: 46px;
  text-align: center;
  position: relative;
  font-family: 'FontAwesome';
  color: #001c28;
}

.widget.widget_calendar #next > a {
  top: 18px;
  position: absolute;
  color: transparent !important;
  right: 0;
}

#colophon .widget {
  margin-bottom: 24px;
}

#colophon .site-info {
  margin-top: 15px;
}

#colophon .widget {
  display: inline-block;
  width: 100%;
}

#colophon .widget ul {
  padding-left: 0;
  margin-left: 0;
  margin-bottom: 0;
}

#colophon .widget ul li {
  margin-right: 0;
}

#colophon .widget .widget-title {
  color: #fff;
  border-bottom: none;
}

#colophon .widget.widget_calendar #wp-calendar > caption {
  color: #fff;
}

#colophon .widget.widget_calendar #wp-calendar td:not(.pad):not(#next):not(#prev)#today,
#colophon .widget.widget_calendar #wp-calendar thead {
  color: #fff;
}

#colophon .widget.widget_calendar #wp-calendar th,
#colophon .widget.widget_calendar #wp-calendar td {
  color: #fff;
}

#colophon .widget.widget_calendar #wp-calendar #prev:before,
#colophon .widget.widget_calendar #wp-calendar #next:before {
  color: #fff;
}

#colophon .widget.widget_rss ul li .rsswidget {
  color: #fff;
}

#colophon .widget.widget_rss ul li .rsswidget:hover,
#colophon .widget.widget_rss ul li .rsswidget:focus {
  color: #5234f9;
}

#colophon .widget.widget_rss .widget-title a {
  color: #fff;
}

#colophon .widget.widget_rss .widget-title a:hover,
#colophon .widget.widget_rss .widget-title a:focus {
  color: #5234f9;
}

/*
* Content
*/
.post-content {
  margin-bottom: 20px;
}

.post-content .entry-header {
  display: none;
  position: relative;
}

.post-content .entry-header img {
  width: 100%;
}

.post-content .post-meta {
  list-style-type: none;
  margin-left: 0;
}

.post-content .post-meta li {
  position: relative;
}

.post-content .post-meta li a {
  color: #745cf9;
  font-weight: 400;
}

.post-content .post-meta li a:hover,
.post-content .post-meta li a:focus {
  color: #5234f9;
}

.post-content .post-meta li:before {
  content: '';
  height: 10px;
  width: 2px;
  background: #001c28;
  display: block;
  position: absolute;
  bottom: 6px;
  left: -13px;
}

.post-content .post-meta li:first-of-type:before {
  content: none;
}

.post-content .entry-content .post-title {
  font-size: 30px;
  line-height: 35px;
  margin-top: 25px;
  margin-bottom: 10px;
}

.post-content .entry-content .post-title a {
  font-weight: 300;
  color: #001c28;
}

.post-content.post-grid-small .shapely-category {
  width: 70%;
}

.post-content .shapely-category {
  position: absolute;
  background: #fff;
  height: 62px;
  width: 45%;
  bottom: 0;
  left: 0;
}

.post-content .shapely-category a {
  font-family: 'Raleway', 'Helvetica Neue', 'Helvetica', 'sans-serif';
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  color: #bebebe;
  display: inline-block;
  width: 100%;
  text-align: center;
  margin-top: 16px;
  padding-bottom: 13px;
  position: relative;
}

.post-content .shapely-category a:hover,
.post-content .shapely-category a:focus {
  color: #5234f9;
}

.post-content .shapely-category a:after {
  content: '';
  display: block;
  width: 45px;
  height: 1px;
  background: #ebebeb;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -khtml-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: 0;
}

.post-content .more-link {
  display: block;
  width: 140px;
  margin-top: 20px;
  text-align: center;
  background: #745cf9;
  color: #fff;
  padding: 10px 20px;
}

.post-content .more-link:hover,
.post-content .more-link:focus {
  background: #5234f9;
}

.shapely-next-prev {
  padding-bottom: 35px;
}

.shapely-tags {
  padding-top: 20px;
  padding-bottom: 20px;
  border-top: 1px solid #ebebeb;
}

.shapely-tags > span {
  font-size: 15px;
  color: #767676;
  margin-right: 10px;
}

.shapely-tags > a {
  font-size: 15px;
  font-weight: 400;
  color: #767676;
}

.shapely-tags > a:hover,
.shapely-tags > a:focus {
  color: #5234f9;
}

.shapely-related-posts {
  padding-top: 35px;
  border-top: 1px solid #ebebeb;
  position: relative;
}

.shapely-related-posts .shapely-related-post-title a {
  color: #001c28;
  font-size: 18px;
  font-weight: normal;
  display: inline-block;
  margin-top: 20px;
  position: relative;
  padding-left: 9px;
}

.shapely-related-posts .shapely-related-post-title a:before {
  content: '';
  height: 13px;
  width: 1px;
  background: #e1e1e1;
  position: absolute;
  left: 0;
  top: 6px;
}

.shapely-related-posts .shapely-related-post-title a:hover,
.shapely-related-posts .shapely-related-post-title a:focus {
  color: #5234f9;
}

.shapely-related-posts .shapely-carousel-navigation {
  margin-bottom: 0;
}

.shapely-related-posts .shapely-carousel-navigation .shapely-carousel-arrows {
  list-style-type: none;
  margin: 0;
}

.shapely-related-posts .shapely-carousel-navigation .shapely-carousel-arrows li {
  display: inline-block;
  position: absolute;
  right: -17px;
  top: 50%;
  width: 35px;
  height: 35px;
  background: rgba(0, 0, 0, 0.6);
  border-radius: 50%;
  z-index: 100;
  text-align: center;
  line-height: 35px;
}

.shapely-related-posts .shapely-carousel-navigation .shapely-carousel-arrows li a {
  color: #fff;
  display: block;
  line-height: 35px;
}

.shapely-related-posts .shapely-carousel-navigation .shapely-carousel-arrows li:hover,
.shapely-related-posts .shapely-carousel-navigation .shapely-carousel-arrows li:focus {
  background: black;
}

.shapely-related-posts .shapely-carousel-navigation .shapely-carousel-arrows li:first-of-type {
  left: -17px;
  right: initial;
}

/*
* Comments
*/
.comment-form :-moz-placeholder {
  text-transform: initial;
  font-weight: 400;
  letter-spacing: initial;
  color: #8c979e;
  font-size: 14px;
  font-family: 'Raleway';
}

.comment-form ::-moz-placeholder {
  text-transform: initial;
  font-weight: 400;
  letter-spacing: initial;
  color: #8c979e;
  font-size: 14px;
  font-family: 'Raleway';
}

.comment-form :-ms-input-placeholder {
  text-transform: initial;
  font-weight: 400;
  letter-spacing: initial;
  color: #8c979e;
  font-size: 14px;
  font-family: 'Raleway';
}

.comment-form textarea {
  background: transparent;
  border-bottom: 1px solid #ebebeb;
  height: 120px;
}

.comment-form textarea:focus,
.comment-form textarea:active {
  outline: none;
  border-bottom: 1px solid #745cf9;
}

.comment-form input[type="text"],
.comment-form input[type="url"],
.comment-form input[type="email"] {
  background: transparent;
  border-bottom: 1px solid #ebebeb;
  width: 31.3%;
  float: left;
  margin-right: 3%;
}

.comment-form input[type="text"]:last-of-type,
.comment-form input[type="url"]:last-of-type,
.comment-form input[type="email"]:last-of-type {
  margin: 0;
}

.comment-form input[type="text"]:focus,
.comment-form input[type="text"]:active,
.comment-form input[type="url"]:focus,
.comment-form input[type="url"]:active,
.comment-form input[type="email"]:focus,
.comment-form input[type="email"]:active {
  outline: none;
  border-bottom: 1px solid #745cf9;
}

.comment-form .form-submit {
  display: inline-block;
  width: 100%;
  margin-top: 15px;
}

.author-bio {
  background: transparent;
}

.author-bio .avatar img {
  border-radius: 50%;
}

@media all and (min-width: 991px) {
  .author-bio .col-sm-10 {
    border-left: 1px solid #ebebeb;
  }

  .author-bio-left-side .author-bio .col-sm-10 {
    border-left: 0 none;
  }
}

.author-bio .fn {
  font-weight: 400;
  font-size: 18px;
}

.author-bio p {
  margin-top: 10px;
  color: #8c979e;
  font-size: 14px;
}

.author-bio .author-email {
  color: #8c979e;
  font-weight: 400;
}

.author-bio .author-email:hover,
.author-bio .author-email:focus {
  color: #5234f9;
}

@media all and (min-width: 550px) {
  .author-bio .author-social {
    position: absolute;
    right: 20px;
    top: 0;
  }
}

.author-bio .author-social li {
  padding: 0 5px;
}

.author-bio .author-social li a {
  color: #001c28;
  font-size: 12px;
}

.author-bio-left-side .col-sm-2,
.author-bio-left-side .col-sm-10 {
  width: 100%;
}

.author-bio-left-side .author-bio {
  text-align: center;
  padding: 15px 20px;
}

.author-bio-left-side .author-bio .fn {
  margin-top: 10px;
  display: inline-block;
  width: 100%;
}

.author-bio-left-side .author-bio .author-email {
  display: none;
}

.author-bio-left-side .author-bio .author-social {
  position: relative;
  display: inline-block;
  text-align: center;
  top: initial;
  left: initial;
  right: initial;
  bottom: initial;
}

.author-bio-left-side .author-bio .author-social li a {
  color: #001c28;
}

.single-post .entry-content .dropcaps-content > p:first-child:first-letter,
.single-jetpack-portfolio .entry-content .dropcaps-content > p:first-child:first-letter {
  float: left;
  font-size: 57px;
  margin: 10px;
  margin-right: 20px;
  color: #001c28;
}

.shapely-related-posts .owl-carousel .owl-item .related-item-thumbnail img {
  display: none;
}

.shapely-related-posts .related-item-thumbnail {
  display: block;
  padding-bottom: 85%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.pt0 {
  padding-top: 30px;
}

/* WooCommerce */
.woocommerce-product-gallery figure {
  padding: 0;
}

.woocommerce .cart .coupon input.button {
  width: auto;
}

.woocommerce-page #content table.cart td.actions .coupon .input-text {
  width: auto;
}

.create-account label.woocommerce-form__label {
  width: 100% !important;
  display: block !important;
}

.woocommerce form .form-row.create-account .input-checkbox {
  position: relative;
}

/* Contact Form 7 */
.wpcf7-form div.wpcf7-validation-errors {
  background: #ffdbdb;
  color: #000;
}

.wpcf7-form div.wpcf7-mail-sent-ng {
  background: #ff0000;
  color: #fff;
}

.wpcf7-form div.wpcf7-mail-sent-ok {
  background: #398f14;
  color: #fff;
}

.wpcf7-form div.wpcf7-spam-blocked {
  background: #ffa500;
  color: #000;
}

span.wpcf7-not-valid-tip {
  /*margin-top: -24px;*/
}

div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing {
  border: 2px solid #ffdbdb;
}

.page-template-template-widget section.content-area {
  padding-top: 0;
}

.widget .text-center .img-responsive {
  margin-left: auto;
  margin-right: auto;
}

section .widget-post-thumbnail {
  display: block;
  margin-bottom: 24px;
}

section .widget-post-title {
  margin: 0;
}

section .widget-post-excerpt {
  margin-top: 24px;
  padding: 0 15px;
}

/*==================== ECHここから ====================*/
/*========== NEWS ==========*/
#news_block article {
  float: left;
  list-style: none;
}

#news_block img:hover {
  opacity: 0.7;
}

#news_block article h3 {
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  font-family: "Helvetica Neue", "Helvetica", Arial, sans-serif;
}

#news_block h5 {
  margin-bottom: 60px;
}

#news_block .cate {
  background: #f0f0f0;
  padding: 5px;
  font-size: 16px;
  font-weight: bold;
}

#news_block .newstxt {
  padding: 5px;
  font-size: 14px;
  font-family: "Helvetica Neue", "Helvetica", Arial, sans-serif;
  color: #7a7a7a;
}

#news_block .newstxt a,
#news_block .newstxt a:visited {
  color: #7a7a7a;
}

#news_block article .date {
  font-size: 16px;
  margin-top: 10px;
  font-family: "Helvetica Neue", "Helvetica", Arial, sans-serif;
}

#news_block article .img_box {
  position: relative;
  width: 100%;
  height: 100%;
  margin-bottom: 20px;
}

#news_block article .img_box:before {
  content: "";
  display: block;
  padding-top: 100%;
}

#news_block article .img_box a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

#news_block article .img_box img {
  width: 100%;
  height: auto;
  line-height: 0;
  position: absolute;
  bottom: 0;
}

.newslist {
  /*margin-bottom:60px;*/
}

.pager {
  margin: 40px 0 80px 0;
}

.pager .page-numbers {
  font-weight: 400;
  border: 1px solid #cccccc;
  padding: 10px;
  margin-right: 5px;
}

.cat_name {
  text-align: center;
  font-family: 'dpfont', "Helvetica Neue", "Helvetica", Arial, sans-serif;
  margin-top: -50px;
  margin-bottom: 60px;
}

#news_block {
  margin-bottom: 80px;
}

/*===== デバイス別 =====*/
/* ブレイクポイントはデフォルト参照 */
@media (min-width: 768px) {
  #news_block .news_detail article {
    width: 800px;
    margin: 0 auto;
  }

  #news_block .news_detail {
    width: 800px;
    margin: 0 auto;
  }

  #news_block .newslist article {
    width: 21%;
    margin: 60px 16px 0;
  }

}

@media (max-width: 1024px) and (min-width: 768px) {
  #news_block .newslist article {
    width: 45%;
    margin: 0 40px 0 0;
  }

  #news_block .newslist article:nth-child(even) {
    margin-right: 0;
  }

  #news_block .news_detail article {
    width: 700px;
    margin: 0 auto;
  }
}

@media (max-width: 767px) {
  #news_block .news_detail article {
    float: none;
    width: 70%;
    margin: 0 auto;
  }

  #news_block .newslist article {
    float: none;
    width: 70%;
    margin: 0 auto;
  }
  #news_block .newslist article + article {
    margin-top: 50px;
  }
}

.our_doughnut p {
  color: #000000;
  font-size: 20px;
  text-align: center;
  letter-spacing: 7px;
}

.subtitle_d {
  letter-spacing: 7px;
  font-size;
  12px;
}

/*========== contact ==========*/
.form_wrap h5 {
  margin-bottom: 60px;
}

.form_wrap table {
  font-family: "Helvetica Neue", "Helvetica", Arial, sans-serif;
}

input[type="text"],
input[type="search"],
input[type="email"],
input[type="tel"] {
  background: #f5f5f5;
  border: 1px solid #ddd;
  width: 60%;
  height: 50px;
  padding-left: 20px;
  font-weight: 500;
  margin-bottom: 0;
  border-radius: 0
}

textarea {
  border: 1px solid #ddd;
}

.wpcf7-form-control-wrap {
  padding-right: 20px;
}

.form_wrap table tr:last-child td,
.form_wrap table tr:last-child th {
  border-bottom: 1px solid #ddd;
}

.form_wrap .btn_submit {
  margin-top: 40px;
  text-align: center;
}

input[type="submit"] {
  font-size: 14px;
  background-color: #000000 !important;
}

.form_wrap .required {
  color: #ff0000;
}

a.elementor-button-link.elementor-button.elementor-size-md {
  width: 350px;
}

/*===== デバイス別 =====*/
/* ブレイクポイントはデフォルト参照 */
@media (min-width: 768px) {
  .form_wrap table {
    width: 800px;
    margin: 0 auto;
  }

  .form_wrap th {
    width: 20%;
  }

  .form_wrap tr {
    border-top: 1px solid #ddd;
  }

  .form_wrap td,
  .form_wrap th {
    padding: 20px;
  }
}

@media (max-width: 1024px) and (min-width: 768px) {
  .form_wrap table {
    width: 800px;
    margin: 0 auto;
  }

  .form_wrap th {
    width: 20%;
  }
}

@media (max-width: 767px) {

  input[type="text"],
  input[type="search"],
  input[type="email"],
  input[type="tel"] {
    width: 100%;
  }

  .form_wrap .table > tbody > tr > td,
  .table > tfoot > tr > td,
  .table > tfoot > tr > th,
  .table > thead > tr > td,
  .table > thead > tr > th {
    border-top: none;
  }

  .form_wrap th,
  .form_wrap td {
    width: 100%;
    display: block;
    margin-bottom: 10px;
  }

  .form_wrap th {
    border-top: 1px solid #ddd;
    padding-top: 20px;
  }

  .form_wrap table tr:last-child th {
    border-bottom: none;
  }
}

/*========== company ==========*/
.company_wrap h5 {
  margin-bottom: 60px;
}

.company_wrap table {
  font-family: "Helvetica Neue", "Helvetica", Arial, sans-serif;
}

.company_wrap table tr:last-child td,
.company_wrap table tr:last-child th {
  border-bottom: 1px solid #ddd;
}

.company_wrap th,
.company_wrap td {
  padding: 10px;
}

/*===== デバイス別 =====*/
/* ブレイクポイントはデフォルト参照 */
@media (min-width: 768px) {
  .company_wrap table {
    width: 800px;
    margin: 0 auto;
  }

  .privacy {
    width: 800px;
    margin: 0 auto;
  }

  .company_wrap th {
    width: 20%;
  }

  .table > tbody > tr > td,
  .table > tbody > tr > th,
  .table > tfoot > tr > td,
  .table > tfoot > tr > th,
  .table > thead > tr > td,
  .table > thead > tr > th {
    padding: 20px;
  }
}

@media (max-width: 1024px) and (min-width: 768px) {
  .company_wrap table {
    width: 800px;
    margin: 0 auto;
  }

  .privacy {
    width: 800px;
    margin: 0 auto;
  }

  .company_wrap th {
    width: 20%;
  }

  .table > tbody > tr > td,
  .table > tbody > tr > th,
  .table > tfoot > tr > td,
  .table > tfoot > tr > th,
  .table > thead > tr > td,
  .table > thead > tr > th {
    padding: 20px;
  }
}

@media (max-width: 767px) {

  .company_wrap .table > tbody > tr > td,
  .table > tfoot > tr > td,
  .table > tfoot > tr > th,
  .table > thead > tr > td,
  .table > thead > tr > th {
    border-top: none;
  }

  .company_wrap th,
  .company_wrap td {
    width: 100%;
    display: block;
    margin-bottom: 10px;
  }

  .company_wrap th {
    border-top: 1px solid #ddd;
    padding-top: 20px;
  }

  .table > tbody > tr > th {
    padding-top: 20px;
  }

  .company_wrap table tr:last-child th {
    border-bottom: none;
  }
}

/*========== recruit ==========*/

.recruit_arc {
  background: #f8f8f8;
  margin-bottom: 60px;
}

#recruit_block table {
  font-family: "Helvetica Neue", "Helvetica", Arial, sans-serif;
}

#recruit_block h5 {
  margin-bottom: 60px;
}

#recruit_block table tr:last-child td,
#recruit_block table tr:last-child th {
  border-bottom: 1px solid #ddd;
}

#recruit_block th,
#recruit_block td {
  padding: 20px;
}

/*===== デバイス別 =====*/
/* ブレイクポイントはデフォルト参照 */
@media (min-width: 768px) {
  .recruit_arc {
    width: 800px;
    margin: 0 auto 60px;
  }

  #recruit_block table {
    width: 800px;
    margin: 0 auto;
  }

  #recruit_block table td,
  #recruit_block table th {
    border-bottom: 1px solid #ddd;
  }

  #recruit_block table tr:first-child th,
  #recruit_block table tr:first-child td {
    border-top: 1px solid #ddd;
  }

  #recruit_block th {
    width: 20%;
  }

  .table > tbody > tr > td,
  .table > tbody > tr > th,
  .table > tfoot > tr > td,
  .table > tfoot > tr > th,
  .table > thead > tr > td,
  .table > thead > tr > th {
    padding: 20px;
  }
}

@media (max-width: 1024px) and (min-width: 768px) {
  .recruit_arc {
    width: 700px;
    margin: 0 auto 60px;
  }

  #recruit_block table {
    width: 700px;
    margin: 0 auto;
  }

  #recruit_block table td,
  #recruit_block table th {
    border-bottom: 1px solid #ddd;
  }

  #recruit_block th {
    width: 20%;
  }

  .table > tbody > tr > td,
  .table > tbody > tr > th,
  .table > tfoot > tr > td,
  .table > tfoot > tr > th,
  .table > thead > tr > td,
  .table > thead > tr > th {
    padding: 20px;
  }
}

@media (max-width: 767px) {

  #recruit_block .table > tbody > tr > td,
  .table > tfoot > tr > td,
  .table > tfoot > tr > th,
  .table > thead > tr > td,
  .table > thead > tr > th {
    border-top: none;
  }

  #recruit_block th,
  #recruit_block td {
    width: 100%;
    display: block;
    /*margin-bottom: 10px;*/
  }

  #recruit_block th {
    border-top: 1px solid #ddd;
    padding-top: 20px;
  }

  .table > tbody > tr > th {
    padding-top: 20px;
  }

  #recruit_block table tr:last-child th {
    border-bottom: none;
  }
}
}

/*========== picup menu ==========*/
.pickupmenu {
  font-weight: bold;
  color: #7a7a7a;
}

/*===== clearfix =====*/
/* 恐らくないので追加、重複あれば削除 */
.clearfix:after {
  content: " ";
  display: block;
  clear: both;
}

/*========== navi ==========*/
.module {
  display: inline-block;
  padding: 0;
}

.main-navigation .menu > li {
  margin-right: 30px;
}

/*========== navi ==========*/
.footer-linkmenu {
  font-size: 12px;
  margin-top: 40px;
}

.footer-linkmenu ul,
.footer-linkmenu li {
  list-style: none;
  display: inline-block;
  margin: 0;
}

/* 181019 項目追加のため
.footer-linkmenu li{
	margin-right:20px;
}
*/
.footer-linkmenu li:after {
  content: '｜';
  margin-left: 12px;
}



/* 20191015 問い合わせフォーム追加 */
.main_form .contact_table {
  table-layout: fixed;
  width: auto;
  width: 1000px;
  border-collapse: collapse;
  margin-top: 10px;
}
.main_form .contact_table th {
  width: 260px;
  font-size: 21px;
  font-weight: normal;
  line-height: 1;
  padding: 30px 0 30px 20px;
  border-bottom: 1px solid #ccc;
}
.main_form .contact_table td {
  border-bottom: 1px solid #ccc;
  padding: 22px 0;
}
.main_form .contact_table td [type="text"],
.main_form .contact_table td [type="email"],
.main_form .contact_table td select {
  width: 700px;
  font-size: 18px;
  font-family: "游ゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, YuGothic, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  padding: 10px;
  line-height: 1;
  border: 1px solid #7a7a7a;
  background: #fff;
}

.main_form .contact_table td [type="radio"] + span {
  display: inline-block;
  font-size: 18px;
  font-family: "游ゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, YuGothic, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1;
  padding: 10px 20px 10px 4px;
}
.main_form .wpcf7-select {
  appearance: menulist-button;
  -webkit-appearance: menulist-button;
  -moz-appearance: menulist-button;
  background: #fff !important;
  height: 40px;
  border: 1px solid #7A7A7A;
  border-radius: 0 !important;
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}
.main_form .wpcf7-select:focus option {
  outline: 0;
  border: 0;
}
.main_form .contact_table option {
  font-weight: normal;
  font-family: "游ゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, YuGothic, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1;
}
.main_form .contact_table textarea {
  width: 700px;
  height: 200px;
  line-height: 1.2;
  padding: 10px;
  box-sizing: border-box;
  background: #fff;
  border: 1px solid #7a7a7a;
}
.main_form .contact_table td [type="text"]:hover,
.main_form .contact_table td [type="email"]:hover,
.main_form .contact_table td select:hover,
.main_form .contact_table textarea:hover{
  border: 1px solid #7a7a7a !important;
}
.main_form .contact_table ul {
  margin: 0;
}
.main_form .contact_table li {
  font-size: 18px;
  margin-top: 8px;
  list-style: none;
}
.main_form .contact_table li:first-child {
  margin-top: 0px;
}
.main_form .contact_table li > span {
  display: block;
  font-size: 18px;
}

.contact_table .require {
  display: inline-block;
  background: #000;
  color: #fff;
  font-size: 13px;
  line-height: 1;
  padding: 5px;
  margin-left: 8px;
  vertical-align: 4px;
}
[role="alert"] {
  display: block;
  color: red !important;
  font: 16px;
  font-weight: bold;
  margin-top: 5px;
}

/* お問い合わせフォーム　個人情報 */
.main_form {
  margin-top: 80px;
}
.main_form .scroll * {
  font-size: 14px;
  font-family: sans-serif !important;
  line-height: 1.5;
  color: #333;
}
.main_form .scroll {
  height: 180px;
  background: #fff;
  margin: 30px 20px 0;
  padding: 30px 40px;
  overflow: auto;
  border: 1px #cccccc solid;
  text-align: left;
}
.main_form .scroll p {
  font-size: 13px;
  color: #333;
  line-height: 1.5;
  text-align: left;
  margin-bottom: 10px;
}
.main_form .scroll dt,
.main_form .scroll dd {
  font-size: 13px;
  font-weight: normal;
  color: #333;
  line-height: 1.5;
}
.scroll dd {
  margin-bottom: 10px;
}
.main_form .scroll a {
  font-family: sans-serif !important;
}
.main_form .scroll a:hover {
  text-decoration: underline;
}
.main_form .agree_check {
  font-size: 18px;
  line-height: 1;
  text-align: center;
  margin: 30px 0 40px;
}
.main_form #submit {
  display: block !important;
  width: 100% !important;
  max-width: 320px;
  height: auto;
  color: #fff !important;
  background: #57585e url(/wp-content/themes/shapely/assets/images/arrow_white.png) no-repeat 290px center !important;
  background-size: 9px 16px !important;
  font-size: 21px !important;
  font-family: "游ゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, YuGothic, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
  line-height: 1;
  padding: 20px 0 !important;
  border: 0 !important;
  cursor: pointer !important;
  margin: auto !important;
  transition: background-color 0.05s !important;
  border-radius: 0 !important;
  box-sizing: border-box !important;
}
.main_form #submit:hover {
  background-color: #f29300;
  transition: background-color 0.05s;
}

.main_form .common_recap > div {
  margin: 0 auto 40px;
}

.dpinquiry{
  width:50%;
  padding:30px;
  border: solid 2px;
  margin:40px auto;
  }
.dpinquiry_head{
  text-align:center;
  margin-bottom:20px;
  font-size:140%;
}
.dpinquiry_body{
  text-align:center;
  font-size:180%;
  font-weight: bold;
}
.wpcf7-form div.wpcf7-mail-sent-ok {
  background: transparent !important;
  color: #333 !important;
  text-align: center !important;
  width: 60%;
  margin: auto !important;
}

@media screen and (max-width: 1001px) {
  .main_form {
    margin-top: 40px;
  }
  .main_form h2 {
    font-size: 18px !important;
  }
  .main_form .contact_table {
    width: auto;
    border-top: 1px solid #ccc;
  }
  .main_form .contact_table th,
  .main_form .contact_table td {
    display: block;
    width: 100%;
    font-size: 14px;
  }
  .contact_table .require {
    font-size: 11px;
    vertical-align: 3px;
  }
  
  .main_form .contact_table th {
    border-bottom: 0;
    padding-left: 0;
    padding-bottom: 0;
    padding-top: 10px;
  }
  .main_form .contact_table td {
    padding: 10px 0 15px;
  }
  .main_form .contact_table td * {
    font-size: 14px;
  }
  .main_form .contact_table td [type="text"],
  .main_form .contact_table td [type="email"],
  .main_form .contact_table td select,
  .main_form .contact_table textarea {
    width: 100%;
    font-size: 14px;
    padding: 0 10px;
  }
  .main_form .wpcf7-list-item {
    margin: 0;
  }
  .main_form .wpcf7-list-item-label {
    font-size: 14px !important;
  }
  .main_form .scroll {
    padding: 15px;
    margin: 0;
  }
  .main_form .agree_check {
    font-size: 16px;
    margin: 20px 0;
  }
  .main_form .scroll * {
    font-size: 12px !important;
  }
  .main_form .scroll br {
    display: block;
  }
  .main_form .scroll dd {
    margin-left: 0;
    margin-right: 0;
  }
  .main_form .wpcf7-form-control-wrap {
    padding: 0;
  }
  
  .dpinquiry{
    width:auto;
    padding:20px;
    border: solid 2px;
    margin:30px auto;
    }
  .dpinquiry_head{
    text-align:center;
    margin-bottom:10px;
    font-size:95%;
  }
  .dpinquiry_body{
    text-align:center;
    font-size:16px;
    font-weight: bold;
    color: inherit;
  }
  .wpcf7-form div.wpcf7-mail-sent-ok {
    width: auto;
  }
}