/*! Made with Bones: http://themble.com/bones :) */
/******************************************************************
Site Name:
Author:

Stylesheet: Main Stylesheet

Here's where the magic happens. Here, you'll see we are calling in
the separate media queries. The base mobile goes outside any query
and is called at the beginning, after that we call the rest
of the styles inside media queries.

Helpful articles on Sass file organization:
http://thesassway.com/advanced/modular-css-naming-conventions

******************************************************************/
/*********************
IMPORTING PARTIALS
These files are needed at the beginning so that we establish all
our mixins, functions, and variables that we'll be using across
the whole project.
*********************/
/* normalize.css 2012-07-07T09:50 UTC - http://github.com/necolas/normalize.css */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 8/9.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}

/**
    * Correct `inline-block` display not defined in IE 8/9.
    */
audio,
canvas,
video {
  display: inline-block;
}

/**
    * Prevent modern browsers from displaying `audio` without controls.
    * Remove excess height in iOS 5 devices.
    */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
    * Address `[hidden]` styling not present in IE 8/9.
    * Hide the `template` element in IE, Safari, and Firefox < 22.
    */
[hidden],
template {
  display: none;
}

/* ==========================================================================
      Base
      ========================================================================== */
/**
    * 1. Set default font family to sans-serif.
    * 2. Prevent iOS text size adjust after orientation change, without disabling
    *    user zoom.
    */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
    * Remove default margin.
    */
body {
  margin: 0;
}
#container {
  max-width: 100%;
  overflow: hidden;
}
/* ==========================================================================
      Links
      ========================================================================== */
/**
    * Remove the gray background color from active links in IE 10.
    */
a {
  background: transparent;
}

/**
    * Address `outline` inconsistency between Chrome and other browsers.
    */
a:focus {
  outline: thin dotted;
}

/**
    * Improve readability when focused and also mouse hovered in all browsers.
    */
a:active,
a:hover {
  outline: 0;
}

/* ==========================================================================
      Typography
      ========================================================================== */
/**
    * Address variable `h1` font-size and margin within `section` and `article`
    * contexts in Firefox 4+, Safari 5, and Chrome.
    */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
    * Address styling not present in IE 8/9, Safari 5, and Chrome.
    */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
    * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
    */
b,
strong,
.strong {
  font-weight: bold;
}

/**
    * Address styling not present in Safari 5 and Chrome.
    */
dfn,
em,
.em {
  font-style: italic;
}

/**
    * Address differences between Firefox and other browsers.
    */
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

/*
    * proper formatting (http://blog.fontdeck.com/post/9037028497/hyphens)
   */
p {
  -webkit-hyphens: auto;
  -epub-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto;
}

/*
    * Addresses margins set differently in IE6/7.
    */
pre {
  margin: 0;
}

/**
    * Correct font family set oddly in Safari 5 and Chrome.
    */
code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  font-size: 1em;
}

/**
    * Improve readability of pre-formatted text in all browsers.
    */
pre {
  white-space: pre-wrap;
}

/**
    * Set consistent quote types.
    */
q {
  quotes: "\201C""\201D""\2018""\2019";
}

/**
    * Address inconsistent and variable font size in all browsers.
    */
q:before,
q:after {
  content: "";
  content: none;
}

small,
.small {
  font-size: 75%;
}

/**
    * Prevent `sub` and `sup` affecting `line-height` in all browsers.
    */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* ==========================================================================
     Lists
   ========================================================================== */
/*
    * Addresses margins set differently in IE6/7.
    */
dl,
menu,
ol,
ul {
  margin: 1em 0;
}

dd {
  margin: 0;
}

/*
    * Addresses paddings set differently in IE6/7.
    */
menu {
  padding: 0 0 0 40px;
}

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

/*
    * Corrects list images handled incorrectly in IE7.
    */
nav ul,
nav ol {
  list-style: none;
  list-style-image: none;
}

/* ==========================================================================
     Embedded content
   ========================================================================== */
/**
    * Remove border when inside `a` element in IE 8/9.
    */
img {
  border: 0;
}

/**
    * Correct overflow displayed oddly in IE 9.
    */
svg:not(:root) {
  overflow: hidden;
}

/* ==========================================================================
      Figures
      ========================================================================== */
/**
    * Address margin not present in IE 8/9 and Safari 5.
    */
figure {
  margin: 0;
}

/* ==========================================================================
      Forms
      ========================================================================== */
/**
    * Define consistent border, margin, and padding.
    */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
    * 1. Correct `color` not being inherited in IE 8/9.
    * 2. Remove padding so people aren't caught out if they zero out fieldsets.
    */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
    * 1. Correct font family not being inherited in all browsers.
    * 2. Correct font size not being inherited in all browsers.
    * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
    */
button,
input,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 2 */
  margin: 0;
  /* 3 */
}

/**
    * Address Firefox 4+ setting `line-height` on `input` using `!important` in
    * the UA stylesheet.
    */
button,
input {
  line-height: normal;
}

/**
    * Address inconsistent `text-transform` inheritance for `button` and `select`.
    * All other form control elements do not inherit `text-transform` values.
    * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
    * Correct `select` style inheritance in Firefox 4+ and Opera.
    */
button,
select {
  text-transform: none;
}

/**
    * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
    *    and `video` controls.
    * 2. Correct inability to style clickable `input` types in iOS.
    * 3. Improve usability and consistency of cursor style between image-type
    *    `input` and others.
    */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}

/**
    * Re-set default cursor for disabled elements.
    */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
    * 1. Address box sizing set to `content-box` in IE 8/9/10.
    * 2. Remove excess padding in IE 8/9/10.
    */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
    * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
    * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
    *    (include `-moz` to future-proof).
    */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box;
}

/**
    * Remove inner padding and search cancel button in Safari 5 and Chrome
    * on OS X.
    */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
    * Remove inner padding and border in Firefox 4+.
    */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
    * 1. Remove default vertical scrollbar in IE 8/9.
    * 2. Improve readability and alignment in all browsers.
    */
textarea {
  overflow: auto;
  /* 1 */
  vertical-align: top;
  /* 2 */
}

/* ==========================================================================
      Tables
      ========================================================================== */
/**
    * Remove most spacing between table cells.
    */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.image-replacement,
.ir {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}

.clearfix,
.cf,
.comment-respond {
  zoom: 1;
}
.clearfix:before,
.clearfix:after,
.cf:before,
.comment-respond:before,
.cf:after,
.comment-respond:after {
  content: "";
  display: table;
}
.clearfix:after,
.cf:after,
.comment-respond:after {
  clear: both;
}

/*
   use the best ampersand
   http://simplebits.com/notebook/2008/08/14/ampersands-2/
   */
span.amp {
  font-family: Baskerville, "Goudy Old Style", Palatino, "Book Antiqua", serif !important;
  font-style: italic;
}

/******************************************************************
   Site Name:
   Author:
   
   Stylesheet: Variables
   
   Here is where we declare all our variables like colors, fonts,
   base values, and defaults. We want to make sure this file ONLY
   contains variables that way our files don't get all messy.
   No one likes a mess.
   
   ******************************************************************/
/*********************
   COLORS
   Need help w/ choosing your colors? Try this site out:
   http://0to255.com/
   *********************/
/*
   Here's a great tutorial on how to
   use color variables properly:
   http://sachagreif.com/sass-color-variables/
   */
/******************************************************************
   Site Name:
   Author:
   
   Stylesheet: Typography
   
   Need to import a font or set of icons for your site? Drop them in
   here or just use this to establish your typographical grid. Or not.
   Do whatever you want to...GOSH!
   
   Helpful Articles:
   http://trentwalton.com/2012/06/19/fluid-type/
   http://ia.net/blog/responsive-typography-the-basics/
   http://alistapart.com/column/responsive-typography-is-a-physical-discipline
   
   ******************************************************************/
/*********************
   FONT FACE (IN YOUR FACE)
   *********************/
/*  To embed your own fonts, use this syntax
     and place your fonts inside the
     library/fonts folder. For more information
     on embedding fonts, go to:
     http://www.fontsquirrel.com/
     Be sure to remove the comment brackets.
   */
/*  @font-face {
         font-family: 'Font Name';
         src: url('library/fonts/font-name.eot');
         src: url('library/fonts/font-name.eot?#iefix') format('embedded-opentype'),
                url('library/fonts/font-name.woff') format('woff'),
                url('library/fonts/font-name.ttf') format('truetype'),
                url('library/fonts/font-name.svg#font-name') format('svg');
         font-weight: normal;
         font-style: normal;
     }
   */
/*
   The following is based of Typebase:
   https://github.com/devinhunt/typebase.css
   I've edited it a bit, but it's a nice starting point.
   */
/*
    i imported this one in the functions file so bones would look sweet.
    don't forget to remove it for your site.
   */
/*
   some nice typographical defaults
   more here: http://www.newnet-soft.com/blog/csstypography
   */
p {
  -ms-word-break: break-all;
  -ms-word-wrap: break-all;
  word-break: break-word;
  word-break: break-word;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto;
  -webkit-hyphenate-before: 2;
  -webkit-hyphenate-after: 3;
  hyphenate-lines: 3;
}

/******************************************************************
   Site Name:
   Author:
   
   Stylesheet: Sass Functions
   
   You can do a lot of really cool things in Sass. Functions help you
   make repeated actions a lot easier. They are really similar to mixins,
   but can be used for so much more.
   
   Anyway, keep them all in here so it's easier to find when you're
   looking for one.
   
   For more info on functions, go here:
   http://sass-lang.com/documentation/Sass/Script/Functions.html
   
   ******************************************************************/
/*********************
   COLOR FUNCTIONS
   These are helpful when you're working
   with shadows and such things. It's essentially
   a quicker way to write RGBA.
   
   Example:
   box-shadow: 0 0 4px black(0.3);
   compiles to:
   box-shadow: 0 0 4px rgba(0,0,0,0.3);
   *********************/
/*********************
   RESPONSIVE HELPER FUNCTION
   If you're creating a responsive site, then
   you've probably already read
   Responsive Web Design: http://www.abookapart.com/products/responsive-web-design
   
   Here's a nice little helper function for calculating
   target / context
   as mentioned in that book.
   
   Example:
   width: cp(650px, 1000px);
   or
   width: calc-percent(650px, 1000px);
   both compile to:
   width: 65%;
   *********************/
/******************************************************************
   Site Name:
   Author:
   
   Stylesheet: Mixins Stylesheet
   
   This is where you can take advantage of Sass' great features: Mixins.
   I won't go in-depth on how they work exactly,
   there are a few articles below that will help do that. What I will
   tell you is that this will help speed up simple changes like
   changing a color or adding CSS3 techniques gradients.
   
   A WORD OF WARNING: It's very easy to overdo it here. Be careful and
   remember less is more.
   
   Helpful:
   http://sachagreif.com/useful-sass-mixins/
   http://thesassway.com/intermediate/leveraging-sass-mixins-for-cleaner-code
   http://web-design-weekly.com/blog/2013/05/12/handy-sass-mixins/
   
   ******************************************************************/
/*********************
   TRANSITION
   *********************/
/*
   I totally rewrote this to be cleaner and easier to use.
   You'll need to be using Sass 3.2+ for these to work.
   Thanks to @anthonyshort for the inspiration on these.
   USAGE: @include transition(all 0.2s ease-in-out);
   */
/*********************
   CSS3 GRADIENTS
   Be careful with these since they can
   really slow down your CSS. Don't overdo it.
   *********************/
/* @include css-gradient(#dfdfdf,#f8f8f8); */
/*********************
   BOX SIZING
   *********************/
/* @include box-sizing(border-box); */
/* NOTE: value of "padding-box" is only supported in Gecko. So
   probably best not to use it. I mean, were you going to anyway? */
/******************************************************************
   Site Name:
   Author:
   
   Stylesheet: Grid Stylesheet
   
   I've seperated the grid so you can swap it out easily. It's
   called at the top the style.scss stylesheet.
   
   There are a ton of grid solutions out there. You should definitely
   experiment with your own. Here are some recommendations:
   
   http://gridsetapp.com - Love this site. Responsive Grids made easy.
   http://susy.oddbird.net/ - Grids using Compass. Very elegant.
   http://gridpak.com/ - Create your own responsive grid.
   https://github.com/dope/lemonade - Neat lightweight grid.
   
   
   The grid below is a custom built thingy I modeled a bit after
   Gridset. It's VERY basic and probably shouldn't be used on
   your client projects. The idea is you learn how to roll your
   own grids. It's better in the long run and allows you full control
   over your project's layout.
   
   ******************************************************************/
.last-col {
  float: right;
  padding-right: 0 !important;
}

/*
   Mobile Grid Styles
   These are the widths for the mobile grid.
   There are four types, but you can add or customize
   them however you see fit.
   */
@media (max-width: 767px) {
  .m-all {
    float: left;
    padding-right: 0.75em;
    width: 100%;
    padding-right: 0;
  }

  .m-1of2 {
    float: left;
    padding-right: 0.75em;
    width: 50%;
  }

  .m-1of3 {
    float: left;
    padding-right: 0.75em;
    width: 33.33%;
  }

  .m-2of3 {
    float: left;
    padding-right: 0.75em;
    width: 66.66%;
  }

  .m-1of4 {
    float: left;
    padding-right: 0.75em;
    width: 25%;
  }

  .m-3of4 {
    float: left;
    padding-right: 0.75em;
    width: 75%;
  }
}
/* Portrait tablet to landscape */
@media (min-width: 768px) and (max-width: 1029px) {
  .t-all {
    float: left;
    padding-right: 0.75em;
    width: 100%;
    padding-right: 0;
  }

  .t-1of2 {
    float: left;
    padding-right: 0.75em;
    width: 50%;
  }

  .t-1of3 {
    float: left;
    padding-right: 0.75em;
    width: 33.33%;
  }

  .t-2of3 {
    float: left;
    padding-right: 0.75em;
    width: 66.66%;
  }

  .t-1of4 {
    float: left;
    padding-right: 0.75em;
    width: 25%;
  }

  .t-3of4 {
    float: left;
    padding-right: 0.75em;
    width: 75%;
  }

  .t-1of5 {
    float: left;
    padding-right: 0.75em;
    width: 20%;
  }

  .t-2of5 {
    float: left;
    padding-right: 0.75em;
    width: 40%;
  }

  .t-3of5 {
    float: left;
    padding-right: 0.75em;
    width: 60%;
  }

  .t-4of5 {
    float: left;
    padding-right: 0.75em;
    width: 80%;
  }
}
/* Landscape to small desktop */
@media (min-width: 1030px) {
  .d-all {
    float: left;
    padding-right: 0.75em;
    width: 100%;
    padding-right: 0;
  }

  .d-1of2 {
    float: left;
    padding-right: 0.75em;
    width: 50%;
  }

  .d-1of3 {
    float: left;
    padding-right: 0.75em;
    width: 33.33%;
  }

  .d-2of3 {
    float: left;
    padding-right: 0.75em;
    width: 66.66%;
  }

  .d-1of4 {
    float: left;
    padding-right: 0.75em;
    width: 25%;
  }

  .d-3of4 {
    float: left;
    padding-right: 0.75em;
    width: 75%;
  }

  .d-1of5 {
    float: left;
    padding-right: 0.75em;
    width: 20%;
  }

  .d-2of5 {
    float: left;
    padding-right: 0.75em;
    width: 40%;
  }

  .d-3of5 {
    float: left;
    padding-right: 0.75em;
    width: 60%;
  }

  .d-4of5 {
    float: left;
    padding-right: 0.75em;
    width: 80%;
  }

  .d-1of6 {
    float: left;
    padding-right: 0.75em;
    width: 16.6666666667%;
  }

  .d-1of7 {
    float: left;
    padding-right: 0.75em;
    width: 14.2857142857%;
  }

  .d-2of7 {
    float: left;
    padding-right: 0.75em;
    width: 28.5714286%;
  }

  .d-3of7 {
    float: left;
    padding-right: 0.75em;
    width: 42.8571429%;
  }

  .d-4of7 {
    float: left;
    padding-right: 0.75em;
    width: 57.1428572%;
  }

  .d-5of7 {
    float: left;
    padding-right: 0.75em;
    width: 71.4285715%;
  }

  .d-6of7 {
    float: left;
    padding-right: 0.75em;
    width: 85.7142857%;
  }

  .d-1of8 {
    float: left;
    padding-right: 0.75em;
    width: 12.5%;
  }

  .d-1of9 {
    float: left;
    padding-right: 0.75em;
    width: 11.1111111111%;
  }

  .d-1of10 {
    float: left;
    padding-right: 0.75em;
    width: 10%;
  }

  .d-1of11 {
    float: left;
    padding-right: 0.75em;
    width: 9.09090909091%;
  }

  .d-1of12 {
    float: left;
    padding-right: 0.75em;
    width: 8.33%;
  }
}
/*********************
   IMPORTING MODULES
   Modules are reusable blocks or elements we use throughout the project.
   We can break them up as much as we want or just keep them all in one.
   I mean, you can do whatever you want. The world is your oyster. Unless
   you hate oysters, then the world is your peanut butter & jelly sandwich.
   *********************/
/******************************************************************
   Site Name:
   Author:
   
   Stylesheet: Alert Styles
   
   If you want to use these alerts in your design, you can. If not,
   you can just remove this stylesheet.
   
   ******************************************************************/
.alert-help,
.alert-info,
.alert-error,
.alert-success {
  margin: 10px;
  padding: 5px 18px;
  border: 1px solid;
}

.alert-help {
  border-color: #e8dc59;
  background: #ebe16f;
}

.alert-info {
  border-color: #bfe4f4;
  background: #d5edf8;
}

.alert-error {
  border-color: #f8cdce;
  background: #fbe3e4;
}

.alert-success {
  border-color: #deeaae;
  background: #e6efc2;
}

/******************************************************************
   Site Name:
   Author:
   
   Stylesheet: Button Styles
   
   Buttons are a pretty important part of your site's style, so it's
   important to have a consistent baseline for them. Use this stylesheet
   to create all kinds of buttons.
   
   Helpful Links:
   http://galp.in/blog/2011/08/02/the-ui-guide-part-1-buttons/
   
   ******************************************************************/
/*********************
   BUTTON DEFAULTS
   We're gonna use a placeholder selector here
   so we can use common styles. We then use this
   to load up the defaults in all our buttons.
   
   Here's a quick video to show how it works:
   http://www.youtube.com/watch?v=hwdVpKiJzac
   
   *********************/
.blue-btn,
.comment-reply-link,
#submit {
  display: inline-block;
  position: relative;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-decoration: none;
  color: white;
  font-size: 0.9em;
  font-size: 34px;
  line-height: 34px;
  font-weight: normal;
  padding: 0 24px;
  border-radius: 4px;
  border: 0;
  cursor: pointer;
  -webkit-transition: background-color 0.14s ease-in-out;
  transition: background-color 0.14s ease-in-out;
}
.blue-btn:hover,
.comment-reply-link:hover,
#submit:hover,
.blue-btn:focus,
.comment-reply-link:focus,
#submit:focus {
  color: white;
  text-decoration: none;
}
.blue-btn:active,
.comment-reply-link:active,
#submit:active {
  top: 1px;
}

/*
   An example button.
   You can use this example if you want. Just replace all the variables
   and it will create a button dependant on those variables.
   */
.blue-btn,
.comment-reply-link,
#submit {
  background-color: #2980b9;
}
.blue-btn:hover,
.comment-reply-link:hover,
#submit:hover,
.blue-btn:focus,
.comment-reply-link:focus,
#submit:focus {
  background-color: #2574a8;
}
.blue-btn:active,
.comment-reply-link:active,
#submit:active {
  background-color: #2472a4;
}

/******************************************************************
   Site Name:
   Author:
   
   Stylesheet: Form Styles
   
   We put all the form and button styles in here to setup a consistent
   look. If we need to customize them, we can do this in the main
   stylesheets and just override them. Easy Peasy.
   
   You're gonna see a few data-uri thingies down there. If you're not
   sure what they are, check this link out:
   http://css-tricks.com/data-uris/
   If you want to create your own, use this helpful link:
   http://websemantics.co.uk/online_tools/image_to_data_uri_convertor/
   
   ******************************************************************/
/*********************
   INPUTS
   *********************/
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
select,
textarea,
.field {
  display: block;
  height: 40px;
  line-height: 40px;
  padding: 0 12px;
  /*margin-bottom: 14px;*/
  font-size: 1em;
  color: #5c6b80;
  border-radius: 3px;
  vertical-align: middle;
  box-shadow: none;
  border: 0;
  width: 100%;
  max-width: 400px;
  font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  background-color: #eaedf2;
  -webkit-transition: background-color 0.24s ease-in-out;
  transition: background-color 0.24s ease-in-out;
}
input[type="text"]:focus,
input[type="text"]:active,
input[type="password"]:focus,
input[type="password"]:active,
input[type="datetime"]:focus,
input[type="datetime"]:active,
input[type="datetime-local"]:focus,
input[type="datetime-local"]:active,
input[type="date"]:focus,
input[type="date"]:active,
input[type="month"]:focus,
input[type="month"]:active,
input[type="time"]:focus,
input[type="time"]:active,
input[type="week"]:focus,
input[type="week"]:active,
input[type="number"]:focus,
input[type="number"]:active,
input[type="email"]:focus,
input[type="email"]:active,
input[type="url"]:focus,
input[type="url"]:active,
input[type="search"]:focus,
input[type="search"]:active,
input[type="tel"]:focus,
input[type="tel"]:active,
input[type="color"]:focus,
input[type="color"]:active,
select:focus,
select:active,
textarea:focus,
textarea:active,
.field:focus,
.field:active {
  background-color: #f7f8fa;
}
input[type="text"].error,
input[type="text"].is-invalid,
input[type="password"].error,
input[type="password"].is-invalid,
input[type="datetime"].error,
input[type="datetime"].is-invalid,
input[type="datetime-local"].error,
input[type="datetime-local"].is-invalid,
input[type="date"].error,
input[type="date"].is-invalid,
input[type="month"].error,
input[type="month"].is-invalid,
input[type="time"].error,
input[type="time"].is-invalid,
input[type="week"].error,
input[type="week"].is-invalid,
input[type="number"].error,
input[type="number"].is-invalid,
input[type="email"].error,
input[type="email"].is-invalid,
input[type="url"].error,
input[type="url"].is-invalid,
input[type="search"].error,
input[type="search"].is-invalid,
input[type="tel"].error,
input[type="tel"].is-invalid,
input[type="color"].error,
input[type="color"].is-invalid,
select.error,
select.is-invalid,
textarea.error,
textarea.is-invalid,
.field.error,
.field.is-invalid {
  color: #fbe3e4;
  border-color: #fbe3e4;
  background-color: white;
  background-position: 99% center;
  background-repeat: no-repeat;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo2NDM0NDREQkYwNEIxMUUyOTI4REZGQTEzMzA2MDcyNiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo2NDM0NDREQ0YwNEIxMUUyOTI4REZGQTEzMzA2MDcyNiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjQ3ODRGRkE2RjA0QTExRTI5MjhERkZBMTMzMDYwNzI2IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjY0MzQ0NERBRjA0QjExRTI5MjhERkZBMTMzMDYwNzI2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+U8iT5wAAAedJREFUeNqk1U9I02Ecx/HtV3aIFAc1hcRDUoGXRAq0oNLA2CrsEFmHbikZu0iQYIFGYAiegkCpLipBxPpDEBMUzB0EhSG2LhG7hMR2GviPgUTvB57Bw8P3+U23B16HPX8+e/b8nt93wezZSMCnhXETF3AcB5BDCnH8Dq98ExcGHcFn8Ah3cdDni+fxnPDv9oAnTB7CKu6VCFXtChZy56LxUjt+jfuB8toSOth9wd7xWAWhqrUjYR/FRTwWJm+iIPT/w7bQf5ljiZnBg45dtKFX6H+LU8gIY8OEV6vgTkStwXWE8BPTGDHGPqNPz2mCfSOOYkA99TvCt1bhGPL68zMcwmncMuape10jrI+q4BbHi/FLn31S9z2x5tRhTc+1W506ipM+T3oRD4X+8+qtc4SqFvL0z/Fr14S+Szjis8bz9Lvvaq8cwS/wwGfdlqfPSWqTiFlX77o13u9Ym1PBs8JAytpRoy44X9Ft9E/gvbA+rYKn8NcaaMVc8UHgBw4b9/iqUQZ6hOAJFbyDcUflmsEX4a6+wTtHGfhAIUqa1U29Zc2BytouThD8x6xuN5CtMPi2CrXLZkZf/HyZoRFCP7n+QVR4PV7uI/AjGghN7OU/r1ilnqILtfpNC+o6vIFljBKYlhb/F2AAgaBsWR5wRiIAAAAASUVORK5CYII=);
  outline-color: #fbe3e4;
}
input[type="text"].success,
input[type="text"].is-valid,
input[type="password"].success,
input[type="password"].is-valid,
input[type="datetime"].success,
input[type="datetime"].is-valid,
input[type="datetime-local"].success,
input[type="datetime-local"].is-valid,
input[type="date"].success,
input[type="date"].is-valid,
input[type="month"].success,
input[type="month"].is-valid,
input[type="time"].success,
input[type="time"].is-valid,
input[type="week"].success,
input[type="week"].is-valid,
input[type="number"].success,
input[type="number"].is-valid,
input[type="email"].success,
input[type="email"].is-valid,
input[type="url"].success,
input[type="url"].is-valid,
input[type="search"].success,
input[type="search"].is-valid,
input[type="tel"].success,
input[type="tel"].is-valid,
input[type="color"].success,
input[type="color"].is-valid,
select.success,
select.is-valid,
textarea.success,
textarea.is-valid,
.field.success,
.field.is-valid {
  color: #e6efc2;
  border-color: #e6efc2;
  background-color: white;
  background-position: 99% center;
  background-repeat: no-repeat;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo2NDM0NDRERkYwNEIxMUUyOTI4REZGQTEzMzA2MDcyNiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo2NDM0NDRFMEYwNEIxMUUyOTI4REZGQTEzMzA2MDcyNiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjY0MzQ0NERERjA0QjExRTI5MjhERkZBMTMzMDYwNzI2IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjY0MzQ0NERFRjA0QjExRTI5MjhERkZBMTMzMDYwNzI2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+7olkTQAAAfhJREFUeNqklU9oE0EUhzdroWjw0tBeWlDxkEaIp55TsCU9VKIgCrHBelA8CQ1Kr1WPbZrQ3gqtQqvGqxpQc2jBk6BIIaAGD4qNCKURpDSKiPi98gLDsJt//uBjsztvfnk7895sIPAw6/joGMThFJyAXn2+A+9gA57/TaY/eU0OeBgfhGm4DiGnsb7DAszxBz/NAdcKjMJLuNWCqagHbsscN5+L+hmH4QkMOe1L5jzFfNA2PgT34ajTuY7AGuZB0/hmh5m+gS0r8xv1zRvg+gGCHZiOwnF4DP3iB3sQkYxPd2C6CWfhB9Xwlus5+K1j4jXuaq3a+gM1H9OPcAa+7q9lPidZJqHbiIm7Wg22rsEI7FrPSzAMX/T+ADyAKSsu7Fr1KplehLvwCs5DvfBf65p+MypqRbO1FXK9utH4/QKuaqYTsG3E3INJv00Q46px3+XxanJ/Ute2/vqP4FKDza2KcdljIKdnhS0xXYULTaqmLMZFn8FFSFtvt6x70ExFCS5oUXspq2ssa7oEl1swFa+CGFdgtkHgPDyDKy02zyxNU6lXRUZb1EuHYayNNs+Yh5B0WQo+/8fpJnNTZFuzz2OpjoQ2QruSOQlMy35fEGmEGMxY9e1brxobw7TkWA1h6xfckUPb+JhGoE/Hpfvew7qUld/H9J8AAwDpw3WYrxcZ3QAAAABJRU5ErkJggg==);
  outline-color: #e6efc2;
}
input[type="text"][disabled],
input[type="text"].is-disabled,
input[type="password"][disabled],
input[type="password"].is-disabled,
input[type="datetime"][disabled],
input[type="datetime"].is-disabled,
input[type="datetime-local"][disabled],
input[type="datetime-local"].is-disabled,
input[type="date"][disabled],
input[type="date"].is-disabled,
input[type="month"][disabled],
input[type="month"].is-disabled,
input[type="time"][disabled],
input[type="time"].is-disabled,
input[type="week"][disabled],
input[type="week"].is-disabled,
input[type="number"][disabled],
input[type="number"].is-disabled,
input[type="email"][disabled],
input[type="email"].is-disabled,
input[type="url"][disabled],
input[type="url"].is-disabled,
input[type="search"][disabled],
input[type="search"].is-disabled,
input[type="tel"][disabled],
input[type="tel"].is-disabled,
input[type="color"][disabled],
input[type="color"].is-disabled,
select[disabled],
select.is-disabled,
textarea[disabled],
textarea.is-disabled,
.field[disabled],
.field.is-disabled {
  cursor: not-allowed;
  border-color: #cfcfcf;
  opacity: 0.6;
}
input[type="text"][disabled]:focus,
input[type="text"][disabled]:active,
input[type="text"].is-disabled:focus,
input[type="text"].is-disabled:active,
input[type="password"][disabled]:focus,
input[type="password"][disabled]:active,
input[type="password"].is-disabled:focus,
input[type="password"].is-disabled:active,
input[type="datetime"][disabled]:focus,
input[type="datetime"][disabled]:active,
input[type="datetime"].is-disabled:focus,
input[type="datetime"].is-disabled:active,
input[type="datetime-local"][disabled]:focus,
input[type="datetime-local"][disabled]:active,
input[type="datetime-local"].is-disabled:focus,
input[type="datetime-local"].is-disabled:active,
input[type="date"][disabled]:focus,
input[type="date"][disabled]:active,
input[type="date"].is-disabled:focus,
input[type="date"].is-disabled:active,
input[type="month"][disabled]:focus,
input[type="month"][disabled]:active,
input[type="month"].is-disabled:focus,
input[type="month"].is-disabled:active,
input[type="time"][disabled]:focus,
input[type="time"][disabled]:active,
input[type="time"].is-disabled:focus,
input[type="time"].is-disabled:active,
input[type="week"][disabled]:focus,
input[type="week"][disabled]:active,
input[type="week"].is-disabled:focus,
input[type="week"].is-disabled:active,
input[type="number"][disabled]:focus,
input[type="number"][disabled]:active,
input[type="number"].is-disabled:focus,
input[type="number"].is-disabled:active,
input[type="email"][disabled]:focus,
input[type="email"][disabled]:active,
input[type="email"].is-disabled:focus,
input[type="email"].is-disabled:active,
input[type="url"][disabled]:focus,
input[type="url"][disabled]:active,
input[type="url"].is-disabled:focus,
input[type="url"].is-disabled:active,
input[type="search"][disabled]:focus,
input[type="search"][disabled]:active,
input[type="search"].is-disabled:focus,
input[type="search"].is-disabled:active,
input[type="tel"][disabled]:focus,
input[type="tel"][disabled]:active,
input[type="tel"].is-disabled:focus,
input[type="tel"].is-disabled:active,
input[type="color"][disabled]:focus,
input[type="color"][disabled]:active,
input[type="color"].is-disabled:focus,
input[type="color"].is-disabled:active,
select[disabled]:focus,
select[disabled]:active,
select.is-disabled:focus,
select.is-disabled:active,
textarea[disabled]:focus,
textarea[disabled]:active,
textarea.is-disabled:focus,
textarea.is-disabled:active,
.field[disabled]:focus,
.field[disabled]:active,
.field.is-disabled:focus,
.field.is-disabled:active {
  background-color: #d5edf8;
}

input[type="password"] {
  letter-spacing: 0.3em;
}

textarea {
  max-width: 100%;
  /*min-height: 120px;*/
  line-height: 1.5em;
}

select {
  text-overflow: ellipsis;
  -webkit-appearance: none;
  /* 1 */
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAHCAYAAADXhRcnAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpEOEZCMjYxMEYwNUUxMUUyOTI4REZGQTEzMzA2MDcyNiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpEOEZCMjYxMUYwNUUxMUUyOTI4REZGQTEzMzA2MDcyNiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkQ4RkIyNjBFRjA1RTExRTI5MjhERkZBMTMzMDYwNzI2IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkQ4RkIyNjBGRjA1RTExRTI5MjhERkZBMTMzMDYwNzI2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Vxkp9gAAAI9JREFUeNpidHFxucHAwKAOxE+AmJmBMPgLxDJAfJMFSKwD4kqoAClgA+P///8ZXF1dPaCGcBKh6QcQB+3evXs7WDMIAA2QB1I7gFgDj0aQFz2BGh+AOEwwUaDAQyBlCMR7cGjcC5KHaQQBuM3IAOiKTiBVhiTUDdRUhq4Oq2aoAelAahIQ5wM1zsCmBiDAADhYMJXVZ9u9AAAAAElFTkSuQmCC);
  background-repeat: no-repeat;
  background-position: 97.5% center;
}

/*********************
   BASE (MOBILE) SIZE
   This are the mobile styles. It's what people see on their phones. If
   you set a great foundation, you won't need to add too many styles in
   the other stylesheets. Remember, keep it light: Speed is Important.
   *********************/
/******************************************************************
   Site Name:
   Author:
   
   Stylesheet: Base Mobile Stylesheet
   
   Be light and don't over style since everything here will be
   loaded by mobile devices. You want to keep it as minimal as
   possible. This is called at the top of the main stylsheet
   and will be used across all viewports.
   
   ******************************************************************/
/*********************
   GENERAL STYLES
   *********************/
body {
  font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 100%;
  line-height: 1.7;
  color: #000;
  background-color: #fff;
  -webkit-font-smoothing: antialiased;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ,
    Meiryo, "ＭＳ ゴシック", sans-serif;
}
#content {
	max-width: 100%;
	overflow: hidden;
}

/********************
   WORDPRESS BODY CLASSES
   style a page via class
   ********************/
/* for sites that are read right to left (i.e. hebrew) */
/* home page */
/* blog template page */
/* archive page */
/* date archive page */
/* replace the number to the corresponding page number */
/* search page */
/* search result page */
/* no results search page */
/* individual paged search (i.e. body.search-paged-3) */
/* 404 page */
/* single post page */
/* individual post page by id (i.e. body.postid-73) */
/* individual paged single (i.e. body.single-paged-3) */
/* attatchment page */
/* individual attatchment page (i.e. body.attachmentid-763) */
/* style mime type pages */
/* author page */
/* user nicename (i.e. body.author-samueladams) */
/* paged author archives (i.e. body.author-paged-4) for page 4 */
/* category page */
/* individual category page (i.e. body.category-6) */
/* replace the number to the corresponding page number */
/* tag page */
/* individual tag page (i.e. body.tag-news) */
/* replace the number to the corresponding page number */
/* custom page template page */
/* individual page template (i.e. body.page-template-contact-php */
/* replace the number to the corresponding page number */
/* parent page template */
/* child page template */
/* replace the number to the corresponding page number */
/* if user is logged in */
/* paged items like search results or archives */
/* individual paged (i.e. body.paged-3) */
/*********************
   LAYOUT & GRID STYLES
   *********************/
.wrap {
  width: 96%;
  max-width: 100%;
  margin: 0 auto;
}

/*********************
   LINK STYLES
   *********************/
a {
  color: #f01d4f;
  /* on hover */
  /* on click */
  /* mobile tap color */
}
a:hover,
a:focus {
  color: #d10e3c;
}
a:link {
  /*
       this highlights links on iPhones/iPads.
       so it basically works like the :hover selector
       for mobile devices.
       */
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.3);
}

/******************************************************************
   H1, H2, H3, H4, H5 STYLES
   ******************************************************************/
h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5 {
  text-rendering: optimizelegibility;
  font-weight: 500;
  /*
     if you're going to use webfonts, be sure to check your weights
     http://css-tricks.com/watch-your-font-weight/
     */
  /* removing text decoration from all headline links */
}
h1 a,
.h1 a,
h2 a,
.h2 a,
h3 a,
.h3 a,
h4 a,
.h4 a,
h5 a,
.h5 a {
  text-decoration: none;
}

h1,
.h1 {
  font-size: 2.5em;
  line-height: 1.333em;
}

h2,
.h2 {
  font-size: 1.75em;
  line-height: 1.4em;
  margin-bottom: 0.375em;
}

h3,
.h3 {
  font-size: 1.125em;
}

h4,
.h4 {
  font-size: 1.1em;
  font-weight: 700;
}

h5,
.h5 {
  font-size: 0.846em;
  line-height: 2.09em;
  text-transform: uppercase;
  letter-spacing: 2px;
}

/*********************
   HEADER STYLES
   *********************/
.header {
  background-color: #fff;
}

#logo {
  margin: 0.75em 0;
}
#logo a {
  color: #000;
}

/*********************
   NAVIGATION STYLES
   *********************/
/*
   all navs have a .nav class applied via
   the wp_menu function; this is so we can
   easily write one group of styles for
   the navs on the site so our css is cleaner
   and more scalable.
   */
.nav {
  border-bottom: 0;
  margin: 0;
  /* end .menu li */
  /* highlight current page */
  /* end current highlighters */
}
.nav li {
  /*
       so you really have to rethink your dropdowns for mobile.
       you don't want to have it expand too much because the
       screen is so small. How you manage your menu should
       depend on the project. Here's some great info on it:
       http://www.alistapart.com/articles/organizing-mobile/
       */
}
.nav li a {
  display: block;
  color: #000;
  text-decoration: none;
  padding: 0.75em;
  /*
         remember this is for mobile ONLY, so there's no need
         to even declare hover styles here, you can do it in
         the style.scss file where it's relevant. We want to
         keep this file as small as possible!
         */
}
.nav li ul.sub-menu li a,
.nav li ul.children li a {
  padding-left: 30px;
}

/* end .nav */
/*********************
   POSTS & CONTENT STYLES
   *********************/
#content {
}

.hentry {
  background-color: white;
  border-radius: 3px;
  margin-bottom: 1.5em;
  border: 1px solid #cccccc;
}
.hentry header {
  border-bottom: 1px solid #f8f9fa;
  padding: 1.5em;
}
.hentry footer {
  padding: 1.5em;
  border-top: 1px solid #f8f9fa;
}
.hentry footer p {
  margin: 0;
}

/* end .hentry */
.single-title,
.page-title,
.entry-title {
  margin: 0;
}

/* want to style individual post classes? Booya! */
/* post by id (i.e. post-3) */
/* general post style */
/* general article on a page style */
/* general style on an attatchment */
/* sticky post style */
/* hentry class */
/* style by category (i.e. category-videos) */
/* style by tag (i.e. tag-news) */
/* post meta */
.byline {
  color: #9fa6b4;
  font-style: italic;
  margin: 0;
}

/* entry content */
.entry-content {
  padding: 1.5em 1.5em 0;
  /*
     image alignment on a screen this size may be
     a bit difficult. It's set to start aligning
     and floating images at the next breakpoint,
     but it's up to you. Feel free to change it up.
     */
}
.entry-content p {
  margin: 0 0 1.5em;
}
.entry-content table {
  width: 100%;
  border: 1px solid #eaedf2;
  margin-bottom: 1.5em;
}
.entry-content table caption {
  margin: 0 0 7px;
  font-size: 0.75em;
  color: #9fa6b4;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.entry-content tr {
  border-bottom: 1px solid #eaedf2;
}
.entry-content tr:nth-child(even) {
  background-color: #f8f9fa;
}
.entry-content td {
  padding: 7px;
  border-right: 1px solid #eaedf2;
}
.entry-content td:last-child {
  border-right: 0;
}
.entry-content th {
  background-color: #f8f9fa;
  border-bottom: 1px solid #eaedf2;
  border-right: 1px solid #eaedf2;
}
.entry-content th:last-child {
  border-right: 0;
}
.entry-content blockquote {
  margin: 0 0 1.5em 0.75em;
  padding: 0 0 0 0.75em;
  border-left: 3px solid #2980b9;
  font-style: italic;
  color: #9fa6b4;
}
.entry-content dd {
  margin-left: 0;
  font-size: 0.9em;
  color: #787878;
  margin-bottom: 1.5em;
}
.entry-content img {
  margin: 0 0 1.5em 0;
  max-width: 100%;
  height: auto;
}
.entry-content .size-auto,
.entry-content .size-full,
.entry-content .size-large,
.entry-content .size-medium,
.entry-content .size-thumbnail {
  max-width: 100%;
  height: auto;
}
.entry-content pre {
  background: #323944;
  color: #f8f9fa;
  font-size: 0.9em;
  padding: 1.5em;
  margin: 0 0 1.5em;
  border-radius: 3px;
}

/* end .entry-content */
.wp-caption {
  max-width: 100%;
  background: #eee;
  padding: 5px;
  /* images inside wp-caption */
}
.wp-caption img {
  max-width: 100%;
  margin-bottom: 0;
  width: 100%;
}
.wp-caption p.wp-caption-text {
  font-size: 0.85em;
  margin: 4px 0 7px;
  text-align: center;
}

/* end .wp-caption */
/* image gallery styles */
/* end .gallery */
/* gallery caption styles */
.tags {
  margin: 0;
}

/******************************************************************
   PAGE NAVI STYLES
   ******************************************************************/
.pagination,
.wp-prev-next {
  margin: 1.5em 0;
}

.pagination {
  text-align: center;
}
.pagination ul {
  display: inline-block;
  background-color: white;
  white-space: nowrap;
  padding: 0;
  clear: both;
  border-radius: 3px;
}
.pagination li {
  padding: 0;
  margin: 0;
  float: left;
  display: inline;
  overflow: hidden;
  border-right: 1px solid #eaedf2;
}
.pagination a,
.pagination span {
  margin: 0;
  text-decoration: none;
  padding: 0;
  line-height: 1em;
  font-size: 1em;
  font-weight: normal;
  padding: 0.75em;
  min-width: 1em;
  display: block;
  color: #2980b9;
}
.pagination a:hover,
.pagination a:focus,
.pagination span:hover,
.pagination span:focus {
  background-color: #2980b9;
  color: white;
}
.pagination .current {
  cursor: default;
  color: #5c6b80;
}
.pagination .current:hover,
.pagination .current:focus {
  background-color: white;
  color: #5c6b80;
}

/* end .bones_page_navi */
/* fallback previous & next links */
.wp-prev-next .prev-link {
  float: left;
}
.wp-prev-next .next-link {
  float: right;
}

/* end .wp-prev-next */
/******************************************************************
   COMMENT STYLES
   ******************************************************************/
/* h3 comment title */
#comments-title {
  padding: 0.75em;
  margin: 0;
  border-top: 1px solid #f8f9fa;
  /* number of comments span */
}

.commentlist {
  margin: 0;
  list-style-type: none;
}

.comment {
  position: relative;
  clear: both;
  overflow: hidden;
  padding: 1.5em;
  border-bottom: 1px solid #f8f9fa;
  /* vcard */
  /* end .commentlist .vcard */
  /* end children */
  /* general comment classes */
}
.comment .comment-author {
  padding: 7px;
  border: 0;
}
.comment .vcard {
  margin-left: 50px;
}
.comment .vcard cite.fn {
  font-weight: 700;
  font-style: normal;
}
.comment .vcard time {
  display: block;
  font-size: 0.9em;
  font-style: italic;
}
.comment .vcard time a {
  color: #9fa6b4;
  text-decoration: none;
}
.comment .vcard time a:hover {
  text-decoration: underline;
}
.comment .vcard .avatar {
  position: absolute;
  left: 16px;
  border-radius: 50%;
}
.comment:last-child {
  margin-bottom: 0;
}
.comment .children {
  margin: 0;
  /* variations */
  /* change number for different depth */
}
.comment[class*="depth-"] {
  margin-top: 1.1em;
}
.comment.depth-1 {
  margin-left: 0;
  margin-top: 0;
}
.comment:not(.depth-1) {
  margin-top: 0;
  margin-left: 7px;
  padding: 7px;
}
.comment.odd {
  background-color: white;
}
.comment.even {
  background: #f8f9fa;
}

/* comment meta */
/* comment content */
.comment_content p {
  margin: 0.7335em 0 1.5em;
  font-size: 1em;
  line-height: 1.5em;
}

/* end .commentlist .comment_content */
/* comment reply link */
.comment-reply-link {
  font-size: 0.9em;
  float: right;
}

/* end .commentlist .comment-reply-link */
/* edit comment link */
.comment-edit-link {
  font-style: italic;
  margin: 0 7px;
  text-decoration: none;
  font-size: 0.9em;
}

/******************************************************************
   COMMENT FORM STYLES
   ******************************************************************/
.comment-respond {
  padding: 1.5em;
  border-top: 1px solid #f8f9fa;
}

#reply-title {
  margin: 0;
}

.logged-in-as {
  color: #9fa6b4;
  font-style: italic;
  margin: 0;
}
.logged-in-as a {
  color: #5c6b80;
}

.comment-form-comment {
  margin: 1.5em 0 0.75em;
}

.form-allowed-tags {
  padding: 1.5em;
  background-color: #f8f9fa;
  font-size: 0.9em;
}

/* comment submit button */
#submit {
  float: right;
  font-size: 1em;
}

/* comment form title */
#comment-form-title {
  margin: 0 0 1.1em;
}

/* cancel comment reply link */
/* logged in comments */
/* allowed tags */
#allowed_tags {
  margin: 1.5em 10px 0.7335em 0;
}

/* no comments */
.nocomments {
  margin: 0 20px 1.1em;
}

/*********************
   SIDEBARS & ASIDES
   *********************/
.widget ul li {
  /* deep nesting */
}

.no-widgets {
  background-color: white;
  padding: 1.5em;
  text-align: center;
  border: 1px solid #cccccc;
  border-radius: 2px;
  margin-bottom: 1.5em;
}

/*********************
   FOOTER STYLES
   *********************/
.footer {
  clear: both;
  background-color: #323944;
  color: #f8f9fa;
}
@media (max-width: 767px) {
	.footer {
		padding-bottom: 60px !important;
	}
}
/*
   if you checked out the link above:
   http://www.alistapart.com/articles/organizing-mobile/
   you'll want to style the footer nav
   a bit more in-depth. Remember to keep
   it simple because you'll have to
   override these styles for the desktop
   view.
   */
/* end .footer-links */
/*********************
   LARGER MOBILE DEVICES
   This is for devices like the Galaxy Note or something that's
   larger than an iPhone but smaller than a tablet. Let's call them
   tweeners.
   *********************/
@media only screen and (min-width: 481px) {
  /******************************************************************
     Site Name:
     Author:
     
     Stylesheet: 481px and Up Stylesheet
     
     This stylesheet is loaded for larger devices. It's set to
     481px because at 480px it would load on a landscaped iPhone.
     This isn't ideal because then you would be loading all those
     extra styles on that same mobile connection.
     
     A word of warning. This size COULD be a larger mobile device,
     so you still want to keep it pretty light and simply expand
     upon your base.scss styles.
     
     ******************************************************************/
  /*
     IMPORTANT NOTE ABOUT SASS 3.3 & UP
     You can't use @extend within media queries
     anymore, so just be aware that if you drop
     them in here, they won't work.
     */
  /*********************
     NAVIGATION STYLES
     *********************/
  /* .menu is clearfixed inside mixins.scss */
  .menu {
    /* end .menu ul */
  }
  .menu ul {
    /* end .menu ul li */
    /* highlight current page */
    /* end current highlighters */
  }
  .menu ul li {
    /*
           plan your menus and drop-downs wisely.
           */
  }
  .menu ul li a {
    /*
             you can use hover styles here even though this size
             has the possibility of being a mobile device.
             */
  }

  /* end .menu */
  /*********************
     POSTS & CONTENT STYLES
     *********************/
  /* entry content */
  .entry-content {
    /* at this larger size, we can start to align images */
  }
  .entry-content .alignleft,
  .entry-content img.alignleft {
    margin-right: 1.5em;
    display: inline;
    float: left;
  }
  .entry-content .alignright,
  .entry-content img.alignright {
    margin-left: 1.5em;
    display: inline;
    float: right;
  }
  .entry-content .aligncenter,
  .entry-content img.aligncenter {
    margin-right: auto;
    margin-left: auto;
    display: block;
    clear: both;
  }

  /* end .entry-content */
  /*********************
     FOOTER STYLES
     *********************/
  /*
     check your menus here. do they look good?
     do they need tweaking?
     */
  /* end .footer-links */
}
/*********************
   TABLET & SMALLER LAPTOPS
   This is the average viewing window. So Desktops, Laptops, and
   in general anyone not viewing on a mobile device. Here's where
   you can add resource intensive styles.
   *********************/
@media only screen and (min-width: 768px) {
  /******************************************************************
     Site Name:
     Author:
     
     Stylesheet: Tablet & Small Desktop Stylesheet
     
     Here's where you can start getting into the good stuff.
     This size will work on iPads, other tablets, and desktops.
     So you can start working with more styles, background images,
     and other resources. You'll also notice the grid starts to
     come into play. Have fun!
     
     ******************************************************************/
  /*********************
     GENERAL STYLES
     *********************/
  /*********************
     LAYOUT & GRID STYLES
     *********************/
  .wrap {
    width: 760px;
  }

  /*********************
     HEADER STYLES
     *********************/
  /*********************
     NAVIGATION STYLES
     *********************/
  .nav {
    border: 0;
    /* end .menu ul li */
    /* highlight current page */
    /* end current highlighters */
  }
  .nav ul {
    background: #323944;
    margin-top: 0;
  }
  .nav li {
    float: left;
    position: relative;
    /*
         plan your menus and drop-downs wisely.
         */
    /* showing sub-menus */
  }
  .nav li a {
    border-bottom: 0;
    /*
           you can use hover styles here even though this size
           has the possibility of being a mobile device.
           */
  }
  .nav li a:hover,
  .nav li a:focus {
    color: white;
    text-decoration: underline;
  }
  .nav li ul.sub-menu,
  .nav li ul.children {
    margin-top: 0;
    border: 1px solid #ccc;
    border-top: 0;
    position: absolute;
    visibility: hidden;
    z-index: 8999;
    /* highlight sub-menu current page */
  }
  .nav li ul.sub-menu li,
  .nav li ul.children li {
    /*
             if you need to go deeper, go nuts
             just remember deeper menus suck
             for usability. k, bai.
             */
  }
  .nav li ul.sub-menu li a,
  .nav li ul.children li a {
    padding-left: 10px;
    border-right: 0;
    display: block;
    width: 180px;
    border-bottom: 1px solid #ccc;
  }
  .nav li ul.sub-menu li:last-child a,
  .nav li ul.children li:last-child a {
    border-bottom: 0;
  }
  .nav li ul.sub-menu li ul,
  .nav li ul.children li ul {
    top: 0;
    left: 100%;
  }
  .nav li:hover > ul {
    top: auto;
    visibility: visible;
  }

  /* end .nav */
  /*********************
     SIDEBARS & ASIDES
     *********************/
  .sidebar {
    margin-top: 2.2em;
  }

  .widgettitle {
    border-bottom: 2px solid #444;
    margin-bottom: 0.75em;
  }

  .widget {
    padding: 0 10px;
    margin: 2.2em 0;
  }
  .widget ul li {
    margin-bottom: 0.75em;
    /* deep nesting */
  }
  .widget ul li ul {
    margin-top: 0.75em;
    padding-left: 1em;
  }

  /* links widget */
  /* meta widget */
  /* pages widget */
  /* recent-posts widget */
  /* archives widget */
  /* tag-cloud widget */
  /* calendar widget */
  /* category widget */
  /* recent-comments widget */
  /* search widget */
  /* text widget */
  /*********************
     FOOTER STYLES
     *********************/
  /*
     you'll probably need to do quite a bit
     of overriding here if you styled them for
     mobile. Make sure to double check these!
     */
  .footer-links ul li {
    /*
       be careful with the depth of your menus.
       it's very rare to have multi-depth menus in
       the footer.
       */
  }

  /* end .footer-links */
}
/*********************
   DESKTOP
   This is the average viewing window. So Desktops, Laptops, and
   in general anyone not viewing on a mobile device. Here's where
   you can add resource intensive styles.
   *********************/
@media only screen and (min-width: 1030px) {
  /******************************************************************
     Site Name:
     Author:
     
     Stylesheet: Desktop Stylsheet
     
     This is the desktop size. It's larger than an iPad so it will only
     be seen on the Desktop.
     
     ******************************************************************/
  .wrap {
    width: 1170px;
  }
}
/*********************
   LARGE VIEWING SIZE
   This is for the larger monitors and possibly full screen viewers.
   *********************/
@media only screen and (min-width: 1240px) {
  /******************************************************************
     Site Name: 
     Author: 
     
     Stylesheet: Super Large Monitor Stylesheet
     
     You can add some advanced styles here if you like. This kicks in
     on larger screens.
     
     ******************************************************************/
}
/*********************
   RETINA (2x RESOLUTION DEVICES)
   This applies to the retina iPhone (4s) and iPad (2,3) along with
   other displays with a 2x resolution. You can also create a media
   query for retina AND a certain size if you want. Go Nuts.
   *********************/
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
  only screen and (min--moz-device-pixel-ratio: 1.5),
  only screen and (min-device-pixel-ratio: 1.5) {
  /******************************************************************
     Site Name: 
     Author: 
     
     Stylesheet: Retina Screens & Devices Stylesheet
     
     When handling retina screens you need to make adjustments, especially
     if you're not using font icons. Here you can add them in one neat
     place.
     
     ******************************************************************/
  /* 
     
     EXAMPLE 
     Let's say you have an image and you need to make sure it looks ok
     on retina screens. Let's say we have an icon which dimension are
     24px x 24px. In your regular stylesheets, it would look something
     like this:
     
     .icon {
       width: 24px;
       height: 24px;
       background: url(img/test.png) no-repeat;
     }
     
     For retina screens, we have to make some adjustments, so that image
     doesn't look blurry. So, taking into account the image above and the
     dimensions, this is what we would put in our retina stylesheet:
     
     .icon {
       background: url(img/test@2x.png) no-repeat;
       background-size: 24px 24px;
     }
     
     So, you would create the same icon, but at double the resolution, meaning 
     it would be 48px x 48px. You'd name it the same, but with a @2x at the end
     (this is pretty standard practice). Set the background image so it matches
     the original dimensions and you are good to go. 
     
     */
}
/*********************
   PRINT STYLESHEET
   Feel free to customize this. Remember to add things that won't make
   sense to print at the bottom. Things like nav, ads, and forms should
   be set to display none.
   *********************/
@media print {
  /******************************************************************
     Site Name:
     Author:
     
     Stylesheet: Print Stylesheet
     
     This is the print stylesheet. There's probably not a lot
     of reasons to edit this stylesheet. If you want to
     though, go for it.
     
     ******************************************************************/
  * {
    background: transparent !important;
    color: black !important;
    text-shadow: none !important;
    filter: none !important;
    -ms-filter: none !important;
  }

  a {
    color: #444 !important;
    text-decoration: underline;
  }
  a:after {
    content: " (" attr(href) ")";
  }
  a abbr[title]:after {
    content: " (" attr(title) ")";
  }

  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: "";
  }

  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }

  thead {
    display: table-header-group;
  }

  tr,
  img {
    page-break-inside: avoid;
  }

  img {
    max-width: 100% !important;
  }

  @page {
    margin: 0.5cm;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
  h3 {
    page-break-after: avoid;
  }

  .sidebar,
  .page-navigation,
  .wp-prev-next,
  .respond-form,
  nav {
    display: none;
  }
}

/*********************
    共通パーツ
    *********************/

#container {
  position: relative;
}

/*電話番号リンク*/
@media (min-width: 768px) {
  a[href^="tel:"] {
    text-decoration: none;
    color: inherit;
    pointer-events: none;
  }
}

/*テーブル*/
@media (max-width: 767px) {
  table.two_column {
    border: none;
  }
  table.two_column tbody th,
  table.two_column tbody td {
    display: block;
    border: none;
    width: auto;
  }
}

section {
  padding-top: 50px;
  padding-bottom: 50px;
}

@media (max-width: 767px) {
  section {
    padding-top: 20px;
    padding-bottom: 30px;
  }
}

/* 2分割 */
.two_in_one {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.two_in_one.reverse {
  flex-direction: row-reverse;
}

.two_in_one > div {
  width: 50%;
}

@media (max-width: 767px) {
  .two_in_one > div {
    width: 100%;
  }
}

/* 3分割 */
.three_in_one {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.three_in_one > div {
  width: 33.3333%;
}

@media (max-width: 767px) {
  .three_in_one > div {
    width: 100%;
  }
}

/* 4分割 */
.four_in_one {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.four_in_one > div {
  width: 25%;
}

@media (max-width: 767px) {
  .four_in_one > div {
    width: 100%;
  }
}

/* 5分割 */
.five_in_one {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.five_in_one > div {
  width: 20%;
}

@media (max-width: 767px) {
  .five_in_one > div {
    width: 100%;
  }
}

/* 6分割 */
.six_in_one {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.six_in_one > div {
  width: 16%;
}

@media (max-width: 767px) {
  .six_in_one > div {
    width: 50%;
  }
}

/* 画像 */
div.image > img {
  width: 100%;
  vertical-align: bottom;
}

a > img {
  width: 100%;
  vertical-align: bottom;
}

/* googleマップ レスポンシブ */
.googlemap {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}

.googlemap iframe,
.googlemap object,
.googlemap embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media (min-width: 768px) {
  .googlemap {
    width: 80%;
    margin: auto;
    padding-bottom: 40%;
  }
}

/* youtube レスポンシブ */
.youtube {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* スマホのみ改行 */
@media (min-width: 768px) {
  br.m {
    display: none;
  }
}

/*PCのみ改行*/
@media (max-width: 767px) {
  br.pc {
    display: none;
  }
}

/*PCのみ文字中央寄せ*/
.text_center {
  text-align: center;
}
@media (max-width: 767px) {
  .text_center {
    text-align: left;
  }
}

/*文字中央寄せ*/
.text_align_center {
  text-align: center;
}

/*********************
    ローディング
   *********************/

#loader-bg {
  position: fixed;
  width: 100vw;
  height: 100vh;
  top: 0px;
  left: 0px;
  background: #fff;
  z-index: 9999;
}

/*********************
    ヘッダー
   *********************/

.header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
 box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3);
}

.header #inner-header {
  display: flex;
  justify-content: space-between;
  padding: 0 0 0 30px;
  position: relative;
}

.header.first_view {
  /* display: none; */
	box-shadow: none;
}

/* .home .header.first_view #inner-header {
     align-items: flex-start;
   } */

.header .logo {
  height: 60px;
  width: auto;
  padding: 15px 0;
}

.header .logo a {
  display: flex;
  align-items: center;
  height: 100%;
  width: 100%;
}

.header .logo img {
  height: 100%;
  width: auto;
}

@media (max-width: 767px) {
  .header,
  #inner-header {
    height: 60px;
    padding: 0;
  }

  .header {
    position: fixed;
    transition: 0.2s linear;
    -moz-transition: 0.2s linear;
    -webkit-transition: 0.2s linear;
    -o-transition: 0.2s linear;
    -ms-transition: 0.2s linear;
  }
}

.header .menu {
  display: none;
}

.header .menu_box {
  display: flex;
  flex-wrap: wrap;
}

.header .menu_box > nav {
  display: flex;
  align-items: center;
}

@media (max-width: 767px) {
  .header .menu {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 101;
    width: 60px;
    height: 60px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
  label.buMenu {
    position: relative;
    z-index: 102;
    border: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    height: 22px;
    width: 25px;
  }
  label.buMenu .icon-bar {
    display: block;
    width: 25px;
    height: 2px;
    border-radius: 5px;
    margin-top: 0px;
    background-color: #F47B45;
    transition: transform 0.3s ease-in-out, top 0.5s ease;
    position: absolute;
    left: 0;
  }
  .menu .menu_text {
    font-size: 11px;
    text-align: center;
    color: #F47B45;
    line-height: 1;
    margin: 7px 0 0;
    font-weight: bold;
  }
  label.buMenu .icon-bar:nth-child(1) {
    margin-top: 2px;
  }
  label.buMenu .icon-bar:nth-child(2) {
    top: 11px;
  }
  label.buMenu .icon-bar:nth-child(3) {
    bottom: 0;
  }
  /* メニューオープン時のハンバーガー */
  .open label.buMenu .icon-bar:nth-child(1) {
    top: 8px;
    transform: rotate(45deg);
  }
  .open label.buMenu .icon-bar:nth-child(2) {
    transform: scaleX(0);
  }
  .open label.buMenu .icon-bar:nth-child(3) {
    bottom: 10px;
    transform: rotate(135deg);
  }

  .header .menu_box {
    position: absolute;
    width: 100%;
    height: 0;
    top: 60px;
    left: 0;
    background: #fff;
    margin: 0;
    padding-top: 0px;
    z-index: 99;
    overflow: hidden;
    transition: 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    background: #f8f8f8;
  }
  .header .menu.open + .menu_box {
    height: auto;
  }

  .header .menu_box > * {
    width: 100%;
    margin: 0;
  }
  .header .menu_box .top-nav {
    width: 100%;
  }

  .header .nav > li {
    width: 100%;
  }

  .home .header.first_view  {
    box-shadow: none;
  }
}

/*********************
    メニュー
   *********************/

a.tel_box {
  display: flex;
  align-items: center;
  text-decoration: none;
  color: #000;
  margin-left: 1em;
}

a.tel_box img {
  width: 30px;
  margin-right: 5px;
}
a.tel_box .text {
  display: flex;
  flex-direction: column;
  align-items: center;
}

a.tel_box .number {
  font-size: 25px;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
  white-space: nowrap;
  font-family: "Noto Sans JP", sans-serif;
}

a.tel_box .time {
  display: block;
  font-size: 12px;
  font-weight: normal;
  text-align: center;
  width: 100%;
  white-space: nowrap;
}

a.contact_box {
  display: flex;
  align-items: center;
  text-decoration: none;
  color: #000;
  margin-left: 1em;
  background: #ccc;
  padding: 15px;
}

a.contact_box img {
  width: 30px;
  margin-right: 5px;
}

@media (min-width: 768px) {
  .header .nav li a {
    text-align: center;
    color: #000;
    padding: 0.75em 1.5em;
  }
}

/* ========================================
    全体
  ======================================== */

/* ========================================
    メインイメージ
  ======================================== */
#main_visual {
  background: #f47b45;
  text-align: center;
  margin-top: 10px;
  padding-bottom: 0;
}
.main_visual_image {
	min-height: 154vw;
}
@media (min-width: 768px) {
	.main_visual_image {
		min-height: 0;
	}
}
@media (min-width: 1350px) {
	.main_visual_image {
		min-height: 45vw;
	}
}
#main_visual img {
  width: 100%;
  height: auto;
}

/* ========================================
    バナー
  ======================================== */
#top_bnr ul {
  display: flex;
}
#top_bnr ul li {
  margin-left: 20px;
  border-radius: 5px;
  overflow: hidden;
}
#top_bnr ul li:first-child {
  margin-left: 0;
}
#top_bnr ul li img {
  width: 100%;
  vertical-align: bottom;
}

/* ========================================
    商品ラインナップ（スライダー）
  ======================================== */
ul.lineup_list li,
ul.lineup_slider li {
	text-align: center;
	border: solid 1px #ccc;
	margin: 10px;
	padding: 20px 40px;
	background:#FFF;
	max-width: 500px;
}
ul.lineup_list li a,
ul.lineup_slider li a {
	display: block;
	color: inherit;
	text-decoration: none;
}
ul.lineup_slider li + li {
	display: none;
}
ul.lineup_list li .car_img,
ul.lineup_slider li .car_img {
	padding-top: 47.5%;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	margin: 0 0 20px;
}

/********************
    車名
  ********************/
ul.lineup_list {
	display: none;
	flex-wrap: wrap;
	display: none;
	justify-content: center;
}
ul.lineup_list.disp {
	display: flex;
}
ul.lineup_list li {
	width: calc(100% / 3 - 20px);
}
@media (max-width: 767px) {
	ul.lineup_list li {
		width: calc(100%);
		margin-left: auto;
		margin-right: auto;
	}
}
ul.lineup_list,
ul.lineup_slider {
  margin: 0 25px;
}
ul.lineup_list li h3,
ul.lineup_slider li h3 {
  font-weight: bold;
}
ul.lineup_list li h3 span,
ul.lineup_slider li h3 span {
  display: block;
  font-size: 14px;
  font-weight: normal;
}

ul.lineup_slider .slick-prev,
ul.lineup_slider .slick-next {
  z-index: 100;
  background: #f47b45;
  width: 30px;
  height: 50px;

  display: flex;
  justify-content: center;
  align-items: center;
}

ul.lineup_slider .slick-prev:before,
ul.lineup_slider .slick-next:before {
  content: "";
  width: 10px;
  height: 10px;
  border: 0px;
  border-top: solid 3px #fff;
  border-right: solid 3px #fff;
  position: absolute;
}
ul.lineup_slider .slick-prev:before {
  -ms-transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}
ul.lineup_slider .slick-next:before {
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

ul.lineup_slider .slick-prev:hover,
ul.lineup_slider .slick-next:hover {
  background: #f47b45;
  opacity: 0.8;
}



/********************
    価格
  ********************/
/* グレード */
ul.lineup_list li .grade,
ul.lineup_slider li .grade {
  margin: 0 auto 0.5em;
}
/* 月々月額 */
ul.lineup_list li .price_box > p:first-child,
ul.lineup_slider li .price_box > p:first-child {
  display: block;
  width: 100px;
  margin: auto;
  background: #f47b45;
  color: #fff;
  font-size: 14px;
  font-weight: normal;
  margin-bottom: 1em;
}

/* ***** 価格：〇〇円税込～ ***** */
ul.lineup_list li .price_box p,
ul.lineup_slider li .price_box p {
  margin: 0 auto;
}
ul.lineup_list li .price_box .price,
ul.lineup_slider li .price_box .price {
  display: inline-flex;
  align-items: center;
  font-weight: bold;
  line-height: 1.2;
}

/* 価格 */
ul.lineup_list li .price_box .price p:first-child,
ul.lineup_slider li .price_box .price p:first-child {
  font-size: 40px;
}

/* 円・税込み */
ul.lineup_list li .price_box .price p:nth-child(2),
ul.lineup_slider li .price_box .price p:nth-child(2) {
  display: inline-flex;
  flex-direction: column-reverse;
  line-height: 1;
  margin: 0 5px;
}
ul.lineup_list li .price_box .price p:nth-child(2) .yen,
ul.lineup_slider li .price_box .price p:nth-child(2) .yen {
  font-size: 20px;
}
ul.lineup_list li .price_box .price p:nth-child(2) .tax,
ul.lineup_slider li .price_box .price p:nth-child(2) .tax {
  font-size: 10px;
  margin-bottom: 2px;
}
/* 総支払金額 */
ul.lineup_list li .price_box .total_price,
ul.lineup_slider li .price_box .total_price {
  display: flex;
  align-items: baseline;
  justify-content: center;
  font-size: 14px;
  white-space: nowrap;
}
ul.lineup_list li .price_box .total_price p,
ul.lineup_slider li .price_box .total_price p {
  margin: 0;
}
ul.lineup_list li .price_box .total_price p.num ,
ul.lineup_slider li .price_box .total_price p.num {
  font-size: 18px;
  margin: 0 0.1em;
}
/* クレジットカード */
ul.lineup_list li .credit_card,
ul.lineup_slider li .credit_card {
    display: flex;
    align-items: center;
    width: calc(100% + 50px);
    justify-content: center;
    margin: 10px -30px 15px;
    border-bottom: 1px dotted #CCB;
    padding-top: 5px;
    padding-bottom: 5px;
}
ul.lineup_list li .credit_card .txt_credit_ok,
ul.lineup_slider li .credit_card .txt_credit_ok {
    background: #f2d100;
    display: inline-block;
    margin: 1%;
    font-size: 2.5vw;
    padding: 0.25em 0.4em;
    font-weight: bold;
    color: #000;
}

ul.lineup_list li .credit_card .card_type,
ul.lineup_slider li .credit_card .card_type {
	display:flex;
}
ul.lineup_list li .credit_card img,
ul.lineup_slider li .credit_card img {
	height: 25px;
	margin: 4px;
}
@media (min-width: 768px) and (max-width: 1023px) {
	ul.lineup_list li .price_box,
	ul.lineup_slider li .price_box {
	    width: calc(100% + 40px);
	    margin-left: -20px;
	    margin-right: -20px;
	}
	ul.lineup_list li .price_box .price p:first-child,
	ul.lineup_slider li .price_box .price p:first-child {
	  font-size: 30px;
	}
	ul.lineup_list li .price_box .total_price,
	ul.lineup_slider li .price_box .total_price {
	  font-size: 1.3vw;
	}
	ul.lineup_list li .price_box .total_price p.num ,
	ul.lineup_slider li .price_box .total_price p.num {
	  font-size: 1.8vw;
	}
	ul.lineup_list li .credit_card,
	ul.lineup_slider li .credit_card {
	  flex-wrap: wrap;
	}
	ul.lineup_list li .credit_card .txt_credit_ok,
	ul.lineup_slider li .credit_card .txt_credit_ok {
		width: 100%;
	    font-size: 1.6vw;
	}
	ul.lineup_list li .credit_card .txt_credit_ok br,
	ul.lineup_slider li .credit_card .txt_credit_ok br {
		display: none;
	}
	ul.lineup_list li .car_btn,
	ul.lineup_slider li .car_btn {
		margin: 0.5em -30px;
	}
}
@media (min-width: 1024px) {
	ul.lineup_list li .credit_card .txt_credit_ok,
	ul.lineup_slider li .credit_card .txt_credit_ok {
		font-size: min(0.75vw, 12px);
	}
}
@media (min-width: 1200px) {
	ul.lineup_list li .credit_card img,
	ul.lineup_slider li .credit_card img {
		height: 30px;
		margin: 5px;
	}
}
.btn_box a.btn01 {
    background: #F47B45;
    color: #FFF;
    text-decoration: none;
    padding: 0.75em 3em;
    font-size: 126%;
    letter-spacing: 0.05em;
    display: flex;
    margin: 1em auto 2em;
    border-radius: 40px;
    position: relative;
    align-items: center;
    max-width: 420px;
	width: fit-content;
}
.btn_box a.btn01.car.list {
	display: none;
}
.btn_box a.btn01:after {
	content: "\f138";
	font-family: FontAwesome;
	position: absolute;
	right: 1em;
}
.btn_box a.btn01.car:before {
    content: "\f1b9";
    font-family: 'FontAwesome';
    font-size: 26px;
    margin-right: 0.75em;
}
.btn_box a.btn01.faq:before
{
	content:"\f128";
    font-family: 'FontAwesome';
    font-size: 26px;
    margin-right: 0.75em;
}
.btn_box a.btn01.chirashi:before
{
	content:"\f15c";
    font-family: 'FontAwesome';
    font-size: 26px;
    margin-right: 0.75em;
}

/* ========================================
    NORIDOKIとは
  ======================================== */
#top_about {
    position: relative;
    margin-bottom: 50px;
}

#top_about::before {
    content: "";
    display: block;
    position: absolute;
    z-index: 10;
    top: 170px;
    right: 0;
    width: 100%;
    /*height: 700px;*/
    height: 450px;
    background: #f47b45;
    transform: skewY(-4deg);
    z-index: -1;
    background: #f47b45 linear-gradient(0deg, rgba(0,0,0,0.1) 0%, rgba(255,255,255,0) 40%);
}

/* 見出し */
#top_about h2 {
  font-weight: bold;
}
#top_about h2 img {
  max-width: 400px;
  margin-right: 10px;
  vertical-align: middle;
}

/* テキスト */
#top_about .two_in_one .text {
  margin-left: 40px;
  color: #fff;
}
#top_about .two_in_one .text h3 {
    font-size: 30px;
    font-weight: bold;
    margin-top: 1.5em;
}
#top_about .two_in_one .text h3 span {
  font-size: 40px;
}

/********************
    3つのpoint
********************/
/* 枠 */
#top_about .three_in_one {
  margin-top: 20px;
}
#top_about .three_in_one > div {
  position: relative;
  background: #fff;
  width: calc(calc(100% - 100px) / 3);
  text-align: center;
  padding: 20px;
  overflow: hidden;
  border-radius: 10px;
}
#top_about .three_in_one > div.center {
  margin: 0 50px;
}

/* 角の数字 */
#top_about .three_in_one > div:after {
  position: absolute;
  left: 0;
  top: 0;
  content: "";
  border-top: 40px solid #000;
  border-left: 40px solid #000;
  border-right: 40px solid #fff;
  border-bottom: 40px solid #fff;
  box-sizing: border-box;
}
#top_about .three_in_one .item > span {
  position: absolute;
  top: 5px;
  left: 10px;
  font-size: 20px;
  color: #fff;
  font-weight: bold;
  z-index: 1000;
}

/* 画像 */
#top_about .three_in_one .item img {
  height: 100px;
  width: auto;
}

/* 見出し */
#top_about .three_in_one .item h3 {
  font-size: 120%;
  font-weight: bold;
}
#top_about .three_in_one .item h3 span {
  font-size: 140%;
  color: #f47b45;
}

#top_about .three_in_one .item p {
  font-size: 14px;
}
/********************
	新　3つのpoint
********************/
#top_about .feature_wrap {
	display: flex;
	justify-content: space-between;
}
#top_about .feature_wrap > div {
	flex-basis: calc(100% / 3 - 10px);
}
#top_about .feature_wrap .item {
	display: flex;
	flex-wrap: wrap;
	background: #ffece7;
	padding: 1em;
	border-radius: 10px;
	height: 100%;
}
#top_about .feature_wrap .item .num {
	width: 80px;
	position: relative;
	z-index: 2;
	margin-right: 5px;
}
#top_about .feature_wrap .item .num img {
	display: block;
	width: 100%;
}
#top_about .feature_wrap .item h3 {
	font-size: 22px;
	font-weight: bold;
	margin: 0;
	align-self: center;
}
#top_about .feature_wrap .item h3 span {
	color: #f47b45;
}
#top_about .feature_wrap .body {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #fff;
	border-radius: 5px;
	padding: 1em;
	position: relative;
	font-weight: bold;
	margin-top: -0.5em;
	margin-bottom: auto;
}
#top_about .feature_wrap .body ul {
	margin: 0;
}
#top_about .feature_wrap .body ul li {
	background-image: url('../images/common/point_list.svg');
	background-repeat: no-repeat;
	background-size: 1.5em;
	background-position: center left;
	padding-left: 2em;
	font-size: 12px;
	margin: 0;
}
#top_about .feature_wrap .body ul li span {
	color: #f47b45;
}
#top_about .feature_wrap .body .image {
	width: 25%;
	position: absolute;
	right: 0.5em;
	top: 50%;
	transform: translateY(-50%);
}
@media (min-width: 1400px) {
	#top_about .feature_wrap {
		margin: 0 -100px 0;
	}
	#top_about .feature_wrap .item {
	    padding: 1.5em 1em;
	}
	#top_about .feature_wrap .item .num {
	    width: 90px;
	}
	#top_about .feature_wrap .item h3 {
	    font-size: 28px;
	}
	#top_about .feature_wrap .body {
	    padding: 1.5em 1em;
	}
	#top_about .feature_wrap .body ul li {
		font-size: 14px;
	}
}
@media (min-width: 800px) and (max-width: 1029px) {
	#top_about .feature_wrap {
		margin: 0 calc(50% - 50vw) 0;
		padding: 0 15px;
	}
	#top_about .feature_wrap .item .num {
		width: 6vw;
	}
	#top_about .feature_wrap .item h3 {
		font-size: 1.8vw;
	}
	#top_about .feature_wrap .body {
		display: block;
	}
	#top_about .feature_wrap .body .image {
		position: static;
		transform: none;
		margin: 1em auto 0;
	}
}
@media (max-width: 799px) {
	#top_about .feature_wrap {
		display: block;
		padding: 0 2vw;
	}
	#top_about .feature_wrap .item {
		margin-bottom: 2em;
	}
	#top_about .feature_wrap .item .num {
		width: 18vw;
	}
	#top_about .feature_wrap .item h3 {
		font-size: 4.8vw;
	}
	#top_about .feature_wrap .body ul li {
		font-size: 3vw;
	}
}

/* ========================================
  月々のお支払い以外は一切不要！
======================================== */
#top_payment {
    background: linear-gradient(
    90deg,
    #f47b45 0%,
    #f47b45 50%,
    #f8f8f8 50%,
    #f8f8f8 100%
  );
    margin-bottom: 100px;
}
#top_payment .two_in_one {
  align-items: center;
  text-align: center;
}

#top_payment .two_in_one .left {
  padding-right: 40px;
}
#top_payment .two_in_one .right {
  padding-left: 40px;
}

#top_payment .text h2 {
  font-size: 30px;
  font-weight: bold;
  line-height: 1.7;
}
#top_payment .text h2 span {
  display: block;
  color: #f47b45;
  font-size: 45px;
}

#top_payment .text p span {
  font-size: 12px;
}

/* ========================================
  特選車種のご紹介
======================================== */

#top_carlineup {
    background: #FFF1EB;
    padding-top: 0;
	padding-bottom:120px;
}

#ecoto h2,
#jclp_movies h2,
#faq h2,
#store h2,
#top_carlineup h2 {
  background: #000;
  color: #fff;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.2em;
  padding: 30px;
  border-bottom: solid 5px #f47b45;
  margin-bottom: 2em;
}
#top_carlineup h2 {
  margin-bottom: 0;
}
#top_carlineup .vehicle_type_sum
{
	display: none;
    background-size: auto auto;
    background-color: rgba(255, 255, 255, 1);
    background-image: repeating-linear-gradient(135deg, transparent, transparent 5px, rgba(244, 244, 244, 1) 5px, rgba(244, 244, 244, 1) 7px );
	    padding: 2em 1em;
}
#top_carlineup .vehicle_type_sum .wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

#top_carlineup .vehicle_type_sum .type_list {
    background: #FFF;
    border-radius: 100px;
    border: 1px solid #D1D1D1;
    padding: 0.3em 1.5em;
    margin: 1em;
    letter-spacing: 0.1em;
    font-size: 20px;
    font-weight: 500;
    display: flex;
    align-items: center;
}
#top_carlineup .vehicle_type_sum .type_list.all_num
{
    border: 3px solid #F47B45;
    font-weight: bold;
    font-size: 24px;
}

#top_carlineup .vehicle_type_sum .type_list span {
    color: #F47B45;
    font-size: 28px;
    font-weight: bold;
    margin: auto 0.1em;
    letter-spacing: 0;
}


#top_carlineup .carlineup_catch {
    background: #F47B45;
    color: #FFF;
    padding-bottom: 200px;
    margin-bottom: 150px;
}
#top_carlineup .carlineup_catch .komikomi_content {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    padding-top: 3em;
}
#top_carlineup .carlineup_catch .komikomi_content .left
{
	width:45%;
}
#top_carlineup .carlineup_catch .komikomi_content .right
{
	width:55%;
}
#top_carlineup .carlineup_catch .komikomi_content .left img,
#top_carlineup .carlineup_catch .komikomi_content .right img
{
	width:100%;
}
#top_carlineup .carlineup_catch .komikomi_content .left {
    text-align: center;
    font-weight: bold;
}
#top_carlineup .carlineup_catch .komikomi_content .left .sub
{
    font-size: 22px;
}
#top_carlineup .carlineup_catch .komikomi_content .left .main
{
    font-size: 36px;
}
#top_carlineup .carlineup_catch .lineup_image
{
	position:relative;
}
#top_carlineup .carlineup_catch .lineup_image img {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}


#top_carlineup .lineup_tasukattar h2.help_title {
    background: #fff;
    position: relative;
    border: 3px solid #f47b45;
    font-size: 30px;
    width: 100%;
    margin: auto;
    color: #000;
    letter-spacing: 0;
    padding: 0.5em;
    line-height: 1.7;
    margin-bottom: 1.5em;
}

#top_carlineup .lineup_tasukattar .help_subtxt {
    text-align: center;
    font-size: 120%;
    font-weight: 400;
}

.lineup_tasukattar h2.help_title:before,
.lineup_tasukattar h2.help_title:after {
	content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    z-index: auto !important;
}
.lineup_tasukattar h2.help_title:before {
	border: 30px solid transparent;
    border-top: 24px solid #f47b45;
}
.lineup_tasukattar h2.help_title:after {
    border: 25px solid transparent;
    border-top: 20px solid #fff;
}

.lineup_tasukattar h2.help_title div {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}
.lineup_tasukattar h2.help_title img {
    margin: 0 10px 0 0;
	width: 255px;
}

@media (max-width: 767px) {

	.lineup_tasukattar h2.help_title {
		font-size: 20px;
	    width: 100%;
	}

	.lineup_tasukattar h2.help_title img {
		width: 200px;
		margin: 0 0 5px;
	}

}



.lineup_tasukattar h2.fukidashi2 {
	background: #f47b45;
    position: relative;
    color: #fff;
    margin-left: calc((100vw - 100%) / 2 * -1);
    margin-right: calc((100vw - 100%) / 2 * -1);
    padding-left: calc((100vw - 100%) / 2);
    padding-right: calc((100vw - 100%) / 2);
    width: 100vw;
    padding-top: 20px!important;
    padding-bottom: 20px;
    margin-bottom: 80px;
}

.lineup_tasukattar h2.fukidashi2:after {
    border: 20px solid transparent;
    border-top: 25px solid #f47b45;
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    z-index: auto !important;
}

@media (max-width: 991px) {

	.lineup_tasukattar .tasukattar1 .parts_img_type03_box p br {
		display: none;
	}

}

.lineup_tasukattar .tasukattar1
{
	margin-bottom:40px;
}

.lineup_tasukattar .tasukattar2 .cparts-img-block {
	border-radius: 10px;
    overflow: hidden;
}

.lineup_tasukattar .tasukattar2 h4 {
	background: #e12f4a;
	color: #fff;
	width: 80%;
	text-align: center;
	padding: 5px;
	margin: -15px auto 15px;
	z-index: 1;
	position: relative;
}

.lineup_tasukattar .tasukattar2 .cparts-txt-block p {
	color: #e12f4a;
	font-size: 20px;
	text-align: center;
	font-weight: bold;
}
.lineup_tasukattar .tasukattar2 .cparts-txt-block p strong {
	font-size: 130%;
}

.lineup_tasukattar .tasukattar3 br {
	display: none;
}


@media (max-width: 1199px) {
	.lineup_tasukattar .tasukattar2  {
		justify-content: space-around;
		margin-top: 2em;
	}
	.lineup_tasukattar .tasukattar2 > div {
		max-width: 250px;
	}
	.lineup_tasukattar .tasukattar2 h4 {
	    font-size: 18px;
	}	
	.lineup_tasukattar .tasukattar2 .cparts-txt-block p {
		font-size: 18px;
	}
}

@media (max-width: 767px) {

	.lineup_tasukattar .tasukattar2 > div {
	    padding-left: 5px;
	    padding-right: 5px;
	}
	.lineup_tasukattar .tasukattar2 .cparts-body-block .cparts-txt-block {
	    background: #e12f4a;
	    z-index: 1;
	    position: relative;
	    width: 90%;
	    margin: auto;
	}
	.lineup_tasukattar .tasukattar2 .cparts-body-block .cparts-txt-block h4 {
		width: 100%;
		margin-bottom: 5px;
	    font-size: 16px;
	}
	.lineup_tasukattar .tasukattar2 .cparts-body-block .cparts-txt-block h4:after {
		content: "";
		display: block;
		position:absolute;
		bottom: 0;
		left: 50%;
		transform: translateX(-50%);
		height: 1px;
		width: 60%;
		background: #fff;
	}
	.lineup_tasukattar .tasukattar2 .cparts-body-block .cparts-txt-block p {
	    color: #fff;
	    font-size: 12px;
	    padding-bottom: 5px;
	    margin-bottom: 0;
	}
	
	.lineup_tasukattar .tasukattar3 br {
		display: block;
	}

}

.lineup_tasukattar .wrap {
    margin-top: 100px;
    background: #FFF;
    padding: 40px 40px;
    border-radius: 20px;
    box-shadow: 0 0 13px rgba(244,123,69,0.2);
}


.lineup_tasukattar .tasukattar1 .box_6040
{
	display:flex;
	flex-wrap:wrap;
}
.lineup_tasukattar .tasukattar1 .box_6040 .left {
    width: 70%;
    padding: 0 2em;
}
.lineup_tasukattar .tasukattar1 .box_6040 .right
{
	width:30%;
}


/* 4分割 */
.four_in_one {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.four_in_one > div {
	width: calc(25% - 10px);
	margin:5px 5px;
}

@media (max-width: 767px) {
	.four_in_one > div {
		width: 100%;
	}
}

.four_in_one.tasukattar2 > div img
{
	width:100%;
	height:auto;
}

.lineup_tasukattar .tasukattar1 .box_6040 .compensation {
    background: #E12F4A;
    padding: 30px 30px 15px;
}
.lineup_tasukattar .tasukattar1 .box_6040 .compensation img {
    margin: 10px auto 10px;
}



.parts_detail_title {
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.05em;
    line-height: 1.5;
    font-size: 2.6em;
}

.parts_detail_title strong {
	font-size: 150%;
    color: #f47b45;
}

@media (max-width: 767px) {

	 .parts_detail_title p {
		line-height: 1.3;
	}
}

 .parts_detail_text {
	text-align: center;
}


.parts_img_type26.parts_detail_flow {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
}


 .parts_detail_flow > div {
	margin-top: 0!important;
}

 .parts_detail_flow > div:nth-child(odd) .parts_img_type26_box_text .subtext {
	border: 1px solid #000;
	margin-bottom: 0;
	background: #000;
	color: #fff;
	text-align: center;
	line-height: 1;
	border-radius: 10px 10px 0 0;
    padding: 8px 0;
    font-size: 12px;
}
.parts_detail_flow > div:nth-child(odd) .parts_img_type26_box_text .car {
    border: 1px solid #000;
    margin-bottom: 0;
    text-align: center;
    line-height: 1;
    font-size: 18px;
    font-weight: bold;
    padding: 8px 0;
    margin: 0 auto 35px;
}

 .parts_detail_flow > div:nth-child(even) {
	font-weight: bold;
    color: #f47b45;
    text-align: center;
    font-size: 20px ;
}
 .parts_detail_flow > div:nth-child(even) p {
	display: flex;
	align-items: center;
	justify-content: center;
    flex-direction: row-reverse;
}
 .parts_detail_flow > div:nth-child(even) p:after {
    font-family: FontAwesome;
    content: "\f063";
	display:flex;
	width: 30px;
	height: 30px;
	justify-content: center;
	align-items: center;
	color: #fff;
	background: #f47b45;
	border-radius: 50%;
	margin-right: 10px;
}
 .parts_detail_flow > div:nth-child(even) br {
	display: none;
}

 .parts_detail_flow > div:nth-child(odd) {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	flex-direction: row-reverse;
}
 .parts_detail_flow > div:nth-child(odd) .parts_img_type26_box_text,
 .parts_detail_flow > div:nth-child(odd) .parts_img_type26_box_photo {
	width: 50%;
	overflow:hidden;
}
 .parts_detail_flow > div:nth-child(odd) .parts_img_type26_box_photo img
{
	width:100%;
	height:auto;
}
 .parts_detail_flow > div:nth-child(odd) .parts_img_type26_box_text {
	padding-left: 5px;
	padding-right: 5px;
}

 .parts_detail_flow > div:nth-child(even),
 .parts_detail_flow > div:nth-child(even) .parts_img_type26_box_text {
	padding: 0;
}


@media (min-width: 992px) {

	 .parts_detail_title br {
		/*display: none;*/
	}
	
	 .parts_detail_text br {
		display: none;
	}

	 .parts_detail_flow > div:nth-child(odd) {
		flex: none;
		width: 26%;
	}
	 .parts_detail_flow > div:nth-child(even) {
		flex: none;
		width: 11%;
	}
	
	 .parts_detail_flow > div:nth-child(odd) {
		flex-direction: row;
	}
	 .parts_detail_flow > div:nth-child(odd) .parts_img_type26_box_text,
	 .parts_detail_flow > div:nth-child(odd) .parts_img_type26_box_photo {
		width: 100%;
	}
	 .parts_detail_flow > div:nth-child(odd) .parts_img_type26_box_text .subtext {
	    font-size: 16px;
	}
	 .parts_detail_flow > div:nth-child(even) p {
		display: block;
	}
	 .parts_detail_flow > div:nth-child(even) br {
		display: block;
	}

	 .parts_detail_flow > div:nth-child(even) p:after {
	    content: "\f061";
		margin: 10px auto 0;
	}
}






section.lowprice {
    background-color: #ffffff;
    background-image: radial-gradient(#ffeecc 15%, transparent 5%),radial-gradient(#ffe1b6 15%, transparent 5%), repeating-linear-gradient(135deg, transparent, transparent 5px, rgba(255, 241, 215, 1) 3px, rgba(255, 251, 235, 1) 9px );
    background-position: 0 0, 0px 10px;
    background-size: 10px 10px;
    margin-top: 50px;
    padding-top: 100px;
    padding-bottom: 90px;
}

section.lowprice .lowprice_catch_box
{
	display:table;
	margin:auto;
}
section.lowprice .lowprice_catch_box > div {
    text-align: center;
    display: flex;
    align-items: center;
    font-size: 26px;
    font-weight: 600;
    justify-content: center;
    margin-bottom: 15px;
}
section.lowprice .lowprice_catch_box > div img {
    width: 250px;
    margin-right: 0.5em;
}
section.lowprice .lowprice_catch_box > div u {
    color: #f47b45;
    font-size: 38px;
    text-decoration: none;
    border-bottom: 2px dashed #f47b45;
    padding-left: 10px;
}

h3.black_baloon {
    position: relative;
    display: flex;
    margin: 1.5em auto;
    padding: 0.5em 2em;
    color: #fff;
    background: #000;
    align-items: center;
    max-width: 600px;
    border-radius: 10px;
    font-size: 28px;
    font-weight: bold;
    justify-content: center;
}

h3.black_baloon:after
{
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #000;
}
h3.black_baloon img
{
	width:250px;
	margin-right:0.5em;
}


section.lowprice .lprs_box {
    background: #FFF;
    margin: 15px;
    padding: 10px 30px 30px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    border-top: 5px solid #F47B45;
    box-shadow: 0 0 7px rgba(0,0,0,0.1);
}

section.lowprice .lprs_box .num {
    width: 30%;
    color: #fcd7c7;
    font-size: 74px;
    font-weight: bold;
position: relative;
}

section.lowprice .lprs_box .num:after {
    background: #999;
    border: none;
    content: "";
    display: block;
    height: 70%;
    width: 1px;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    position: absolute;
}

section.lowprice .lprs_box .head {
    width: 70%;
    font-size: 28px;
    font-weight: bold;
    letter-spacing: 0.1em;
}

section.lowprice .lprs_box .num,
section.lowprice .lprs_box .head
{
    display: flex;
    justify-content: center;
}

section.lowprice .lprs_box .text {
    width: 100%;
    position: relative;
    padding: 1.5em 0.5em 0.5em;
}
section.lowprice .lprs_box .text:before {
    background: #999;
    border: none;
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    top: 0;
    transform: translateY(-50%);
    right: 0;
    position: absolute;
}

h3.under_baloon {
    position: relative;
    display: flex;
    margin: 1.5em auto;
    padding: 0.5em 2em;
    align-items: center;
    font-size: 28px;
    max-width: 800px;
    font-weight: bold;
    justify-content: center;
    border-bottom: 2px solid #f47b45;
}

h3.under_baloon img
{
	width:250px;
	margin-right:0.5em;
}


h3.under_baloon:before {
    content: "";
    border: 29px solid transparent;
    border-top: 23px solid #f47b45;
    background: transparent;
    height: auto;
    width: auto;
    margin: 0;
}

h3.under_baloon:after {
    content: "";
    border: 26px solid transparent;
    border-top: 21px solid #fff;
    top: calc(100% - 2px);
}

h3.under_baloon:before, h3.under_baloon:after {
    content: "";
    display: block;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
}

.recommend_box {
    background: #fff1eb;
    margin-top: 50px;
}
.recommend_box .two_in_one {
    padding: 30px;

}
.recommend_box .two_in_one > div
{
	background:#FFF;
    padding: 30px;
    margin: 20px;
	width:calc(50% - 40px);

	border-radius: 10px;
    border: 1px solid #CCC;
    position: relative;

}
.recommend_box h4 {
    text-align: center;
    font-size: 136%;
    margin-top: 0;
}
.recommend_box .left h4 {
    color: #f27b4d;
}
.recommend_box .right h4
{
	color:#35859a;
}


.recommend_box ul{
    display: table;
    margin: auto;
}

.recommend_box ul li {
    position: relative;
    padding-left: 2em;
    margin-bottom: 1em;
}
.recommend_box .left ul li:before
{
	content: '';
    display: block;
    width: 15px;
    height: 15px;
    margin: auto 0;
    background: #fbd4b6;
    border: 2px solid #f5964f;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
}
.recommend_box .right ul li:before
{
	content: '';
    display: block;
    width: 15px;
    height: 15px;
    margin: auto 0;
	background: #b8dee6;
    border: 2px solid #35859a;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
}


h2.border_bottom {
    position: relative;
    font-weight: bold;
    margin-bottom: 50px;
    margin-top: 0;
    padding-bottom: 10px;
    color: #333;
    font-size: 32px;
}

h2.border_bottom:after {
	content: "";
	position: absolute;
	top: 100%;
	display: block;
	width: 60px;
	height: 3px;
	left: 50%;
	transform: translateX(-50%);
	background: #f47b45;
	
}

h2.border_bottom > span {
	display: block;
	text-align: center;
}
h2.border_bottom > span:first-child {
	letter-spacing: 3px;
}
h2.border_bottom > span:last-child {
	font-size: 70%;
	color: #f47b45;
}


h2.border_bottom2 {
	border-bottom: 2px solid #aaa;
    display: inline-block;
    padding-right: 2em;
    padding-left: 0.5em;
	padding-bottom: 10px;
}

@media (max-width: 1600px) {

	h2.border_bottom2 {
		margin-left: -300px;
		padding-left: 300px;
	}


}



.flow_list.five_in_one {
	justify-content: space-between;
}

.flow_list.five_in_one > div {
}

.flow_list .image {
    width: 80%;
    margin: 0 auto 10px;
    position: relative;
    background: #FFF;
    border-radius: 50%;
    border: 2px solid #EEE;
}


.flow_list .image > img {
    padding: 2.5vw;
    min-height: 180px;
    max-height: 180px;
    min-width: 180px;
    max-width: 180px;
}
.flow_list .image:after {
content: "";
    display: block;
    position: absolute;
    right: -30px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 0 10px 15px;
    border-color: transparent transparent transparent #f47b45;
}

.flow_list > div:last-child .image:after {
	display: none;
}


.flow_list .text {
	text-align: center;
    font-size: 13px;
}
.flow_list .text .title {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 0.5em;
}
.flow_list .text .title .number {
	color: #f47b45;
	font-size: 150%;
    margin-right: 5px;
}
.flow_list .text .time {
	background: #5e95d4;
	color: #fff;
	display:table;
	margin: auto;
	padding: 2px 10px;
	margin-bottom: 0.5em;
}

.flow_list .text .description > span.big {
	font-size: 20px;
	color: #de9238;
	font-weight: bold;
}

@media (max-width: 1029px) {

	.flow_list.five_in_one > div {
		width: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		margin-bottom: 40px;
		position: relative;
	}
	.flow_list .image {
		width: 150px;
		margin: 0 30px;
	}
	.flow_list .image:after {
		display: none;
	}
	.flow_list.five_in_one > div:after {
		content: "";
	    display: block;
	    position: absolute;
	    width: 0;
	    height: 0;
	    border-style: solid;
		border-color: #f47b45 transparent transparent transparent;
		border-width: 15px 15px 0px 15px;
		bottom: -25px;
		left: 50%;
		transform: translateX(-50%);
	}
	.flow_list.five_in_one > div:last-child:after {
		display: none;
	}
	.flow_list .text {
		text-align: left;
		width: 250px;
	}
	.flow_list .text .time {
		margin-left: 0;
	}
}

@media (max-width: 767px) {

	.flow_list .image {
		margin-left: 0;
	}
	.flow_list .text .title {
		font-size: 16px;
	}

}


section#flow {
    background-color: #FFF;
    background-image: linear-gradient( transparent 95%, rgba(0, 0, 0, .06) 50%, rgba(0, 0, 0, .06)), linear-gradient( 90deg, transparent 95%, rgba(0, 0, 0, .06) 50%, rgba(0, 0, 0, .06) );
    background-size: 17px 17px;
    background-repeat: repeat;
    padding-bottom: 63px;
    margin-top: 50px;
    border-top: 1px solid #EEE;
    border-bottom: 1px solid #EEE;
}
.faq_box {
    display: flex;
	justify-content: space-between;
	align-items: center;
	max-width: 950px;
	margin-bottom: 4em;
}
.faq_box.rev {
	margin-left: auto;
	flex-direction: row-reverse;
}
.faq_img_box {
	width: 200px;
}
.faq_img img {
	display: block;
	width: 100%;
	height: auto;

}
.faq_content {
    width: calc(100% - 250px - 15px);
}
.faq_question {
    border: 2px solid #ccc;
	position: relative;
    min-width: 60%;
	margin-bottom: 2em;
	border-radius: 5px;
}
.faq_question:before,
.faq_question:after {
	content: "";
	position: absolute;
	top: calc(50% - 0.5em);
	display: block;
	width: 1.2em;
	height: 1.2em;
	transform: rotate(45deg);
	transform-origin: center;
}
.faq_question:before {
	right: calc(100% - 0.5em);
	border-left: 2px solid #ccc;
	border-bottom: 2px solid #ccc;
}
.faq_question:after {
	right: calc(100% - 0.5em - 1px);
	background: #fff;
}
.faq_box.rev .faq_question:before,
.faq_box.rev .faq_question:after {
	right: auto;
	transform: rotate(-135deg);
}
.faq_box.rev .faq_question:before {
	left: calc(100% - 0.5em);
}
.faq_box.rev .faq_question:after {
	left: calc(100% - 0.5em - 1px);
}
.faq_question_inner {
	display: flex;
	position: relative;
    font-size: 20px;
    font-weight: bold;
    padding: 0.5em 2em;
}
.faq_question_inner:before {
	content: "Q";
	color: #f47b45;
	border: 1px solid;
	border-radius: 50%;
	display: flex;
	width: 1.5em;
	height: 1.5em;
	justify-content: center;
	align-items: center;
	margin-right: 0.5em;
}
.faq_question_inner span {
	width: calc(100% - 2em);
}
.faq_answer {
	display: flex;
    padding: 0.5em 2em;
	font-size: 20px;
    font-weight: bold;
}
.faq_answer:before {
	content: "A";
	background: #f47b45;
	color: #fff;
	border-radius: 50%;
	display: flex;
	width: 1.5em;
	height: 1.5em;
	justify-content: center;
	align-items: center;
	margin-right: 0.5em;
}
.faq_answer_inner {
	width: calc(100% - 2em);
}
.faq_answer_title {
    color: #f47b45;
    border-bottom: 1px dashed;
    margin-bottom: 0.5em;
}
.faq_answer_text {
    font-size: 16px;
	font-weight: normal;
}
section#store {
	padding-bottom: 30px;
}
.shop_box {
    display: flex;
    justify-content: space-between;
}
.shop_info {
    width: 400px;
	text-align: center;
}
.shop_logo {
	width: 80%;
	margin: 0 auto;
}
.shop_logo img {
	display: block;
	width: 100%;
	height: auto;
}
.shop_name {
    font-size: 24px;
}
.shop_tel_box {
    margin: 2em 0;
    display: block;
	text-decoration: none;
	color: inherit;
}
.shop_tel {
	font-size: 30px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: bold;
}
.shop_tel img {
	width: 1.5em;
	margin-right: 0.2em;
	display: block;
}
.line_box {
    display: flex;
	display: table;
	background: #00b900;
	color: #fff;
	text-decoration: none;
	padding: 0.5em 1.5em;
	margin: 0 auto 0.5em;
	border-radius: 10px;
}
.line_image {
    width: 2em;
	display: table-cell;
	vertical-align: middle;
	height: 100%;
}
.line_image img {
	display: block;
	width: 100%;
	height: auto;
}
.line_text {
    display: table-cell;
    vertical-align: middle;
	padding-left: 0.5em;
}
.line_note {
    font-size: 12px;
}
.shop_map {
    width: calc(100% - 400px - 15px);
}
.shop_map iframe {
    width: 100%;
	max-width: 100%;
	display: block;
	margin: 0 auto 1em;
}
.map_detail {
    text-decoration: none;
    display: table;
    margin: auto;
    border: 1px solid;
    padding: 0.5em 3em;
    border-radius: 10px;
	color: #f47b45;
	position: relative;
}
.map_detail:after {
	content: "\f138";
	font-family: FontAwesome;
	position: absolute;
	right: 0.5em;
}
.source-org.copyright {
    text-align: center;
    margin: 5px;
font-size: 10px;
}


@media (max-width: 767px) {
	#top_bnr {
		display: none;
	}
	#top_bnr ul {
		display: block;
	}
	#top_bnr ul li:first-child,
	#top_bnr ul li {
		margin: 0 auto 2em;
		width: 85%;
	}
	#top_about {
		overflow: hidden;
		padding-bottom: 30px;
	}
	#top_about::before {
		height: calc(100% - 200px);
	}
	#top_about h2 {
		display: flex;
		align-items: center;
	}
	#top_about h2 img {
		width: calc(100% - 3em);
	}
	#top_about .two_in_one .text {
		margin: 0 auto;
		width: 100;
	}
	#top_about .two_in_one .text h3 {
		text-align: center;
	}
	#top_about .two_in_one .text p {
		margin: 1em auto;
		width: 85%;
	}
	#top_about .two_in_one .text p br {
		display: none;
	}
	#top_about .three_in_one {
		display: block;
	}
	#top_about .three_in_one > div.center,
	#top_about .three_in_one > div {
		margin: 0 auto 2em;
		width: 85%;
	}
	#top_payment {
		background: transparent;
		padding: 0;
	}
	#top_payment .wrap {
		width: 100%;
	}
	#top_payment .two_in_one {
		flex-direction: column-reverse;
	}
	#top_payment .two_in_one .left {
		background: #f47b45;
		margin: 0 auto 0;
		padding: 2em 2em;
	}
	#top_payment .two_in_one .right {
		background: #f8f8f8;
		margin: 0 auto 0;
		padding: 1em 2%;
	}
	#top_payment .text h2 span {
		color: #f47b45;
	}
	#top_carlineup {
		padding-top: 0;
	}
	#top_carlineup h2 {
		margin-top: 0;
	}
	#top_carlineup .vehicle_type_sum {
		padding: 2em 0;
	}
	#top_carlineup .vehicle_type_sum .type_list {
		margin: 0 0.5vw;
		font-size: 3.4vw;
		padding: 0.3em 1em;
	}
	#top_carlineup .vehicle_type_sum .type_list span {
		font-size: 120%;
	}
	#top_carlineup .vehicle_type_sum .type_list.all_num {
		margin-top: 1em;
	}
	#top_carlineup .carlineup_catch {
		padding-bottom: 25vw;
		margin-bottom: 10vw;
	}
	#top_carlineup .carlineup_catch .komikomi_content {
		display: block;
	}
	#top_carlineup .carlineup_catch .komikomi_content .left {
		width: 100%;
		margin-bottom: 1em;
	}
	#top_carlineup .carlineup_catch .komikomi_content .right {
		width: 100%;
		margin-bottom: 1em;
	}
	#top_carlineup .carlineup_catch .lineup_image img {
		display: block;
		width: 105%;
	}
	.lineup_tasukattar .wrap {
	    background: transparent;
	    padding: 40px 0;
	    box-shadow: none;
	    padding: 1em;
	}
	.lineup_tasukattar .tasukattar1 .box_6040 {
		display: block;
	}
	.lineup_tasukattar .tasukattar1 .box_6040 .left {
		width: 100%;
		padding: 0;
	}
	#top_carlineup .lineup_tasukattar h2.help_title {
		font-size: 5vw;
		padding: 0.5em 0.3em;
	}
	.lineup_tasukattar h2.help_title img {
		width: 50vw;
		margin-right: 3vw;
	}
	#top_carlineup .lineup_tasukattar .help_subtxt {
		font-size: 3.8vw;
		font-weight: bold;
	}
	.lineup_tasukattar .tasukattar1 .box_6040 .right {
		width: 100%;
	}
	.lineup_tasukattar .tasukattar1 .box_6040 .compensation {
		display: flex;
		padding: 1em;
		justify-content: space-between;
		margin-top: 1em;
	}
	.lineup_tasukattar .tasukattar1 .box_6040 .compensation img {
		margin: 0;
		width: calc(50% - 0.5em);
	}
	.lineup_tasukattar .tasukattar2 > div {
		width: calc(50% - 10px);
		margin: 0;
		padding: 0;
	}
	.four_in_one.tasukattar2 > div img {
		display: block;
	}
	.lineup_tasukattar .tasukattar2 .cparts-txt-block {
		background: #e12f4a;
		width: 90%;
		margin: 0 auto 0;
		padding: 1vw 0px 1vw;
		top: -15px;
		position: relative;
	}
	.lineup_tasukattar .tasukattar2 h4 {
		padding: 0;
		margin: 0;
		width: 100%;
		position: relative;
		font-size: 4vw;
	}
	.lineup_tasukattar .tasukattar2 h4:after {
		content: "";
		position: absolute;
		top: 100%;
		left: 10%;
		display: block;
		width: 80%;
		background: #fff;
		height: 1px;
	}
	.lineup_tasukattar .tasukattar2 .cparts-txt-block p {
	    color: #fff;
	    font-size: 3vw;
		margin: 0;
	}
	.parts_detail_title {
		font-size: 7vw;
	}
	.parts_detail_title strong {
		font-size: 125%;
	}
	.parts_detail_flow > div:nth-child(2n) {
		margin: 0 auto;
	}

	section.lowprice .lowprice_catch_box > div {
		display: block;
		font-size: 5.5vw;
	}
	section.lowprice .lowprice_catch_box > div img {
	    width: 45vw;
	    margin-right: 2vw;
	    display: inline-block;
	    vertical-align: middle;
	}
	section.lowprice .lowprice_catch_box > div u {
		display: table;
		margin: auto;
		padding: 0;
		font-size: 10vw;
	}
	h3.black_baloon {
		padding: 0.5em 2vw;
		font-size: 5.5vw;
		
	}
	h3.black_baloon img {
	    width: 45vw;
	    margin-right: 2vw;
	    display: inline-block;
	    vertical-align: middle;
	}
	section.lowprice .lprs_box {
		margin: 0 0 15px;
		padding: 2.5vw 7.5vw 7.5vw;
	}
	section.lowprice .lprs_box .num {
		font-size: 16vw;
	}
	section.lowprice .lprs_box .head {
		font-size: 5vw;
		letter-spacing: 0;
	}
	section.lowprice .lprs_box .text {
		font-size: 3vw;
		padding: 1.5em 0em 0.5em;
	}
	h3.under_baloon {
		display: block;
		padding: 0.5em 2vw;
		font-size: 6.5vw;
		text-align: center;
	}
	h3.under_baloon img {
	    width: 60vw;
	    margin-right: 2vw;
	    display: inline-block;
	    vertical-align: middle;
	}
	.recommend_box .two_in_one {
	    display: block;
	    padding: 7vw 6vw 3vw;
	}
	.recommend_box .two_in_one > div {
		width: 100%;
		padding: 5vw;
		margin: 0 0 5vw;
	}
	.flow_list.five_in_one > div {
		
	}
	.flow_list .image {
		overflow: hidden;
		width: 30%;
		padding-top: 30%;
	}
	.flow_list .image img {
		display: block;
		width: 70%;
		height: 70%;
		min-height: inherit;
		min-width: inherit;
		padding: 0;
		position: absolute;
		top: 15%;
		left: 15%;
		object-fit: contain;
		object-position: center;
	}
	.flow_list .text {
		width: calc(70% - 15px);
	}

	.faq_box {
		display: block;
	}
	.faq_img_box {
		width: 50%;
		margin: 0 auto 2em;
	}
	.faq_content {
		width: 100%;
	}
	.faq_question:before,
	.faq_question:after,
	.faq_box.rev .faq_question:before,
	.faq_box.rev .faq_question:after {
		top: inherit;
		right: inherit;
		left: calc(50% - 1em);
		transform: rotate(135deg);
	}
	.faq_box.rev .faq_question:before,
	.faq_question:before {
		bottom: calc(100% - 0.5em);
	}
	.faq_box.rev .faq_question:after,
	.faq_question:after {
		bottom: calc(100% - 0.5em - 1px);
	}
	.faq_question_inner {
		font-size: 18px;
		padding: 0.5em 1em;
	}
	.faq_answer {
		font-size: 18px;
		padding: 0.5em 1em;
	}
	.shop_box {
		display: block;
	}
	.shop_info {
		width: 100%;
		margin-bottom: 2em;
	}
	.shop_map {
		width: 100%;
	}
}

@media (max-width: 767px) {

	.btn_box a.btn01
	{
		
	}

	.btn_box a.btn01 {
	    padding: 0.75em 2.4em;
	    width: 90%;
	    font-size: 100%;
	    justify-content: center;
	}

	#top_about h2 {
	    display: flex;
	    align-items: center;
	    padding: 0 0.5em;
	    margin-bottom: 1em;
	}
	#top_about {
	    margin-bottom: 50px;
	}

	.lineup_tasukattar .wrap .text_center br
	{
		display:none;
	}

	#top_carlineup {
	    padding-bottom: 60px;
	}

	.parts_img_type26.parts_detail_flow {
	    margin-top: 50px;
	}
	section.lowprice {
	    padding-top: 60px;
	    padding-bottom: 60px;
	}

	h2.border_bottom {
	    margin-top: 1.5em;
	}
}


br.m{display:none;}
br.pc{display:block;}

@media (max-width: 767px) {

	br.m{
		display:block;
	}
	br.pc{
		display:none;
	}

}

/* fix contact */
.fix_contact_wrap .pc {
  display: none
}

.fix_contact_wrap {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 99;
}

.fix_contact {
  display: flex;
  justify-content: space-between;
}

/*
.fix_contact:after {
  content: "";
  position: absolute;
  top: 0;
  left: calc(50% - 0.5px);
  width: 1px;
  height: 100%;
  background: #fff;
}
*/
.fix_tel_box,
.fix_line_box {
  width: calc((100%) / 2);
  /*background: rgba(0, 185, 0, 0.9);*/
}
.fix_tel_box {
  background: #fff;
  border: 3px solid #F47B45;
}
.fix_line_box {
  background: #F47B45;
}

.fix_tel_box a,
.fix_line_box a {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  height: 100%;
  padding: 4px 0;
  font-weight: bold;
  color: #fff;
  text-decoration: none;
  white-space: nowrap;
}
.fix_tel_box a,
.fix_tel_box a:hover {
	color: #000;
}
.fix_line_box a:hover {
  color: #fff;
}

.fix_tel_icon,
.fix_line_icon {
  margin-right: 5px;
}

.fix_tel_icon {
  width: 30px;
}

.fix_line_icon {
  width: 40px;
}

.fix_tel_icon img,
.fix_line_icon img {
  display: block;
  max-width: 100%;
}

.fix_tel_txt,
.fix_line_txt {}

.fix_tel_time {
  font-size: 2.1vw;
  width: 100%;
  text-align: center;
  line-height: 1.4;
}

@media (min-width: 768px) {
  .fix_contact_wrap .pc {
    display: block;
  }

  .fix_contact_wrap .sp {
    display: none;
  }

  .fix_contact_wrap {
    bottom: 10%;
    right: 0;
    left: auto;
    width: auto;
  }

  .fix_contact {
    flex-direction: column-reverse;
  }

  .fix_contact:after {
    display: none;
  }

  .fix_tel_box a,
  .fix_line_box a {
    padding: 4px 6px;
  }

  .fix_tel_box a,
  .fix_tel_box a:hover {
    color: #000;
  }

  .fix_tel_box,
  .fix_line_box {
    width: 100%;
    border-radius: 10px 0px 0px 10px;
    margin-top: 30px;
  }

  .fix_tel_box {
    background: #fff;
    border: 1px solid #f47b45;
    border-right: 0;
  }

  .fix_line_box {
    background: #00b900;
  }

  .fix_tel_icon,
  .fix_line_icon {
    width: 40px;
  }

  .fix_tel_txt,
  .fix_line_txt {
    width: calc(100% - 45px);
  }
  .fix_tel_time {
    font-size: 10px;
  }
}

#shop_slider {
	padding-bottom: 0;
}
.slider_wrap {
  max-width: 800px;
  margin: auto;
  padding-bottom: 1px;
}

.bx-wrapper {
  border: 0 !important;
  -moz-box-shadow: inherit !important;
  -webkit-box-shadow: inherit !important;
  box-shadow: inherit !important;
}

ul.bxslider {
  margin-bottom: 40px;
  height: 100%;
  aspect-ratio: 16 / 10;
}

ul.bxslider li {
  margin: 0;
  padding: 0;
  border: 0;
  height: 100%;
  width: 100%;
}
.bx-viewport ul.bxslider li {
/*  height: 100%;*/
}
ul.bxslider li+li {
  display: none;
}

ul.bxslider li img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  drop-shadow: 0 0 5px #ccc;
  filter: drop-shadow(0 0 5px #ccc);
}

a.store_site_link {
	display: table;
	margin: 3em auto 0;
	font-size: small;
	color: #f47b45;
	text-decoration: underline;
}


/* 複数店舗対応 */
.shop_list.tabs {
	display: block;
	margin-top: 40px;
}
.shop_list.tabs input[name="tab_item"] {
	display: none;
}
.shop_list.tabs .category {
	display: flex;
}
.shop_list.tabs .category > label {
	width: calc(25%);
	margin: 0;
	border-radius: 0;
	color: #000;
	border: none;
	border-top: 3px solid #fff;
	padding: 10px 0;
	position: relative;
}
.shop_list.tabs .category input:checked + label:before {
	content: "";
	display: block;
	width: 100%;
	height: 5px;
	position: absolute;
	background: #fff1eb;
	left: 0;
	bottom: -3px;
}
.shop_list.tabs .category > label:hover {
	opacity:1;
	background: #efe1db;
}
.shop_list.tabs .category label > .inner {
	width: 100%;
	border-left: 1px solid #ccc;
}
.shop_list.tabs .category label:last-child > .inner {
	border-right: 1px solid #ccc;
}

.shop_list.tabs .category .tab_item {
	text-align: center;
	background: #fff;
	transition: all 0.3s ease;
	cursor: pointer;
}
.shop_list.tabs .category input:checked + .tab_item {
	border: 1px solid #000;
	border-top: 3px solid #f47b45;
	border-bottom: none;
	background: #fff1eb;
	color: #000;
	padding: 10px 0;
}

.shop_list.tabs .category input:checked + label > .inner {
	border: none;
}
.shop_list.tabs .contents {
	border-top: 1px solid #000;
	background: #fff1eb;
	padding-top: 50px;
	padding-bottom: 50px;
}
@media (max-width: 767px) {
	.shop_list.tabs .category > label {
		width: calc(50%);
	}
}

.fix_add_tel,
.fix_add_line {
	display: flex;
	justify-content: space-around;
	overflow: hidden;
	height: 0;
	transform: translateY(100%);
	transition: .3s;
}
.fix_add_tel .fix_tel_box,
.fix_add_line .fix_line_box {
	width: calc((100%) / 2 - 4px);
	border-bottom: 0;
	border-radius: 10px 10px 0 0;
}
.fix_add_line .fix_line_box {
	background: #00b900;
}
.fix_add_tel .fix_tel_icon {
	width: 20px;
	margin-right: 3px;
}
.fix_add_line .fix_line_icon {
	width: 30px;
	margin-right: 3px;
}
.fix_add_tel .fix_tel_txt,
.fix_add_line .fix_line_txt {
	max-width: calc(100% - 30px);
	font-size: 14px;
	letter-spacing: -0.05em;
}
.fix_add_tel .fix_tel_box a,
.fix_add_line .fix_line_box a {
	min-height: 45px;
}
@media (min-width: 768px) {
	.fix_add_tel,
	.fix_add_line {
		display: none;
	}
}
.privacy_header section {
	padding: 0;
}
.privacy_header section h2 {
	margin: 0 !important;
}
section#privacy .wrap {
	max-width: 1040px;
}
section#privacy h3 {
	font-weight: bold;
	font-size: 18px;
	margin: 2.5em 0 1em;
}
section#privacy b {
	font-size: 15px;
	letter-spacing: 0.01em;
}
section#privacy p {
	font-size: 15px;
	letter-spacing: 0.01em;
}
section#privacy a {
	color: inherit;
}
section#privacy ol li,
section#privacy ul li {
	font-size: 14px;
	letter-spacing: 0.01em;
	padding-left: 2em;
	position: relative;
	margin-bottom: 0.3em;
}
section#privacy ul li:before {
	content: "●";
	width: 1em;
	display: block;
	position: absolute;
	left: .5em;
	top: 0;
}
section#privacy ol {
	counter-reset: item;
}
section#privacy ol li {
}
section#privacy ol > li:before {
	counter-increment: item;
	content: counter(item)'.';
	width: 1.5em;
	display: block;
	position: absolute;
	left: .5em;
	top: 0;
}
section#privacy .privacy_contact {
	border: 1px solid #ccc;
	padding: 20px;
	margin: 40px 0;
	max-width: 600px;
}
section#privacy .privacy_contact h4 {
	margin: 0 0 1em;
}
section#privacy .privacy_contact p {
	font-size: 18px;
	margin: 0;
}
.privacy_link {
	text-align: center;
	display: block;
	font-size: 80%;
	margin: 0 auto;
	padding: 1em 0;
	color: inherit;
	font-weight: normal;
}
section#privacy table {
	width: 100%;
	border-top: 1px solid #ddd;
	border-left: 1px solid #ddd;
	margin: 1em 0;
}
section#privacy table th,
section#privacy table td {
	border-bottom: 1px solid #ddd;
	border-right: 1px solid #ddd;
	font-size: 14px;
	padding: 15px;
}
section#privacy table thead th {
	background: #f1f1f1;
	text-align: center;
}
section#privacy table th {
	white-space: nowrap;
}
section#privacy table td dl {
	display: flex;
	flex-wrap: wrap;
}
section#privacy table td dl dt {
	width: 90px;
	position: relative;
	padding-right: 1em;
}
section#privacy table td dl dt:after {
	content: " : ";
	position: absolute;
	right: 0;
	margin: 0 0.5em;
}
section#privacy table td dl dd {
	width: calc(100% - 90px);
}

span.tbd {
	background: #ffbdbd;
}
span.chg {
	background: #fdf7a0;
}
span.add {
	/* color: #00f; */
}
span.dell {
	text-decoration: line-through;
	color: #888;
}
.third_party_btn {
	cursor: pointer;
}
#third_party_wrap {
	position: fixed;
	z-index: 99;
	top: 0;
	left: 0;
	/* display: none; */
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0, 0.8);
	visibility: hidden;
	opacity: 0;
	transition: all .3s ease-out;
}
#third_party_wrap.show {
	visibility: visible;
	opacity: 1;
}
#third_party_wrap .third_party_inner {
	width: fit-content;
	height: fit-content;
	padding: 2em 3em;
	border: double;
	background: #fff;
	position: relative;
}
#third_party_wrap .third_party_inner:before,
#third_party_wrap .third_party_inner:after {
	content: "";
	position: absolute;
	top: 10px;
	right: 5px;
	display: block;
	width: 15px;
	height: 2px;
	background: #000;
}
#third_party_wrap .third_party_inner:before {
	transform: rotate(45deg);
}
#third_party_wrap .third_party_inner:after {
	transform: rotate(-45deg);
}
section#privacy #third_party_wrap h2 {
	margin: 0;
}
section#privacy #third_party_wrap h3 {
	margin-top: 1.5em;
}

/* トップページ店舗一覧 */
section#store .all_shop_list ul {
	display:flex;
	flex-wrap:wrap;
}
section#store .all_shop_list ul li {
	width: calc(50% - 20px);
	border: 3px solid #ec6f3b;
	border-radius: 12px;
	margin: 10px;
	overflow:hidden;
}
section#store .all_shop_list ul li a {
	color: #000;
	text-decoration: none;
	position: relative;
	display: block;
	transition: all 0.3s;
	padding: 20px;
}
section#store .all_shop_list ul li a:hover {
	transition: all 0.3s;
	background:#fff7e9;
}
section#store .all_shop_list ul li a:after {
	content: "\f138";
	font-family: FontAwesome;
	position: absolute;
	right: 1em;
	color: #ec6f3b;
	top: 50%;
	transform: translateY(-50%);
}
section#store .all_shop_list ul li a .shop_name {
	font-size:20px;
	font-weight:bold;
}
section#store .all_shop_list ul li a .company_name {
	color:#999;
	display: inline-block;
}
section#store .all_shop_list ul li a .shop_address {
	color:#999;
	display: inline-block;
}
@media (max-width: 767px) {
	section#store .all_shop_list ul li {
		width: calc(100% - 20px);
	}
}

/* ダイナースバナー */
.final_banner img {
	max-width: 100%;
	height: auto;
	width: 750px;
}

/* line紹介バナー */
.line_banner img {
	max-width: 100%;
	height: auto;
	width: 600px;
}


@media (max-width: 767px) {
	.pc_contact_wrap {
		display: none;
	}
}
.pc_contact_wrap {
	position: fixed;
	bottom: 10%;
	right: 0;
	left: auto;
	width: auto;
	z-index: 99;
}
.pc_contact {
	display: flex;
	justify-content: space-between;
	flex-direction: column-reverse;
}
.pc_contact .item {
	width: 100%;
	border-radius: 10px 0px 0px 10px;
	margin-top: 30px;
}
.pc_contact .item.tel {
	background: #fff;
	border: 1px solid #f47b45;
	border-right: 0;
}
.pc_contact .item.line {
	background: #00b900;
}
.pc_contact .item a {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	height: 100%;
	padding: 4px 6px;
	font-weight: bold;
	color: #fff;
	text-decoration: none;
	white-space: nowrap;
}
.pc_contact .item.tel a,
.pc_contact .item.tel a:hover {
	color: #000;
}
.pc_contact .item .icon {
	width: 40px;
	margin-right: 5px;
}
.pc_contact .item .icon img {
	display: block;
	max-width: 100%;
}
.pc_contact .item .txt {
	width: calc(100% - 45px);
}
.pc_contact .item .tel_time {
	font-size: 10px;
	width: 100%;
	text-align: center;
	line-height: 1.4;
}
@media (min-width: 768px) {
	.sp_contact_wrap {
		display: none;
	}
}
.sp_contact_wrap {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	z-index: 9999;
	transition-duration: 0.2s;
	padding: 0 3vw 3vw;
	min-height: 60px;
}
.sp_contact {
	display: flex;
	justify-content: space-between;
	box-shadow: 0 0 10px rgb(0 0 0 / 0.4);
}
.sp_contact .item {
	width: calc((100%) / 2);
}
.sp_contact .item:only-child {
	width: 100%;
}
.sp_contact.mini .item.tel {
	width: 65px;
}
.sp_contact.mini .item.line {
	width: calc(100% - 65px);
}
.sp_contact .item.tel {
	background: #fff;
	border: 3px solid #F47B45;
}
.sp_contact .item.line {
	background: #F47B45;
}
.sp_contact.mini .item.line {
	background: #00b900;
}
.sp_contact .item a,
.sp_contact_tel .item a,
.sp_contact_line .item a {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	height: 100%;
	padding: 4px 0;
	font-weight: bold;
	color: #fff;
	text-decoration: none;
	white-space: nowrap;
}
.sp_contact .item.tel a,
.sp_contact_tel .item a,
.sp_contact_line .item a,
.sp_contact .item.tel a:hover,
.sp_contact_tel .item a:hover,
.sp_contact_line .item a:hover {
	color: #000;
}
.sp_contact .item .icon {
	margin-right: 5px;
}
.sp_contact .item.tel .icon {
	width: 30px;
}
.sp_contact .item.line .icon {
	width: 40px;
}
.sp_contact .item .icon img,
.sp_contact_tel .icon img,
.sp_contact_line .icon img {
	display: block;
	max-width: 100%;
}
.sp_contact .item .tel_time,
.sp_contact_tel .item .tel_time,
.sp_contact_line .item .tel_time {
	font-size: 2.1vw;
	width: 100%;
	text-align: center;
	line-height: 1.4;
}

.sp_contact.mini .tel_num,
.sp_contact.mini .tel_time {
	display: none;
}
.sp_contact_tel,
.sp_contact_line {
	display: flex;
	justify-content: space-around;
	overflow: hidden;
	height: 0;
	transform: translateY(100%);
	transition: .3s;
}
.sp_contact_tel .item {
	background: #fff;
	border: 3px solid #F47B45;
}
.sp_contact_line .item {
	background: #00b900;
}
.sp_contact_tel .item,
.sp_contact_line .item {
	width: calc((100%) / 2 - 4px);
	border-bottom: 0;
	border-radius: 10px 10px 0 0;
}
.sp_contact_tel .item:first-child:nth-last-child(3),
.sp_contact_tel .item:nth-child(2):nth-last-child(2),
.sp_contact_tel .item:nth-child(3):last-child,
.sp_contact_line .item:first-child:nth-last-child(3),
.sp_contact_line .item:nth-child(2):nth-last-child(2),
.sp_contact_line .item:nth-child(3):last-child {
	width: calc((100%) / 3 - 4px);
}

.sp_contact_tel .item a,
.sp_contact_line .item a {
	min-height: 45px;
}
.sp_contact_line .item a {
	color: #fff;
}
.sp_contact_tel .item .icon {
	width: 20px;
	margin-right: 3px;
}
.sp_contact_line .item .icon {
	width: 30px;
	margin-right: 3px;
}

.sp_contact_tel .item .txt,
.sp_contact_line .item .txt {
	font-size: 14px;
	letter-spacing: -0.05em;
}
.sp_contact_tel .item .tel_num,
.sp_contact_line .item .line_txt {
	max-width: calc(100% - 30px);
	font-size: 14px;
	letter-spacing: -0.05em;
}

/**/
.header .menu_box > .sp_tel_header {
	width: 300px;
	max-width: 80%;
	margin: 20px auto;
}
.sp_tel_header {
	border-radius: 10px;
	background: #fff;
	border: 2px solid #f47b45;
}
.sp_tel_header a {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	height: 100%;
	padding: 4px 6px;
	font-weight: bold;
	color: #fff;
	text-decoration: none;
	/*white-space: nowrap;*/
}
.sp_tel_header a,
.sp_tel_header a:hover {
	color: #000;
}
.sp_tel_header .icon {
	width: 40px;
	margin-right: 5px;
}
.sp_tel_header .icon img {
	display: block;
	max-width: 100%;
}
.sp_tel_header .txt {
	width: calc(100% - 45px);
	text-align: center;
	letter-spacing: 0.1em;
}
.sp_tel_header .tel_num {
	font-size: 24px;
	line-height: 1.2;
}
.sp_tel_header .tel_time {
	font-size: 12px;
	width: 100%;
	text-align: center;
	line-height: 1.2;
}
@media (min-width: 768px) {
	.sp_tel_header {
		display: none;
	}
}

/* 最新情報 */
.latest_wrap h2 {
	background: #000;
	color: #fff;
	text-align: center;
	font-weight: bold;
	letter-spacing: 0.2em;
	padding: 30px;
	border-bottom: solid 5px #f47b45;
}
.latest_box {
	width: 96%;
	max-width: 700px;
	margin: 0 auto 2em;
}
.latest_box:after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	clear: both;
}
.latest_item {
	padding: 0 1em;
}
.latest_box > #latest_slider .latest_item + .latest_item {
	display: none;
}
.latest_item a {
	border: 8px solid #fff;
	box-shadow: 10px 10px 30px 0px rgba(0,0,0,0.15);
	display: block;
	border-radius: 15px;
	overflow: hidden;
}
.latest_item a img {
	display: block;
}
.latest_box .bx-viewport {
	overflow: visible !important;
}
.latest_box .bx-wrapper .bx-prev {
	left: -5px !important;
}
.latest_box .bx-wrapper .bx-next {
	right: -5px !important;
}
.latest_box .bx-wrapper .bx-pager-item {
	width: 45px;
}
.latest_box .bx-wrapper .bx-pager-item a {
	width: calc(100% - 10px) !important;;
}


#pre_form_chk {
	display: none;
}
.pre_form_switch {
	position: fixed;
	right: 20px;
	bottom: 275px;
	transition: .3s ease-in-out;
	-webkit-transform: translateX(0%);
	transform: translateX(0%);
    z-index: 10;
}

.pre_form_btn {
    position: relative;
    background: #f47b45;
    border: 2px solid #FFF;
    /*padding: 1.5em 0.8em 0.8em;*/
    /*line-height: 1.5;*/
    padding: 0.8em 1.2em 0.8em;
    line-height: 1.4;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    border-radius: 10%;
    /*border-radius: 50%;*/
    /*aspect-ratio: 1 / 1;*/
    color: #fff;
    box-shadow: 1px 1px 3px rgba(0,0,0,.3);
    animation: float 2s linear infinite;
    cursor: pointer;
    /*font-size: 16px;*/
    font-size: 15px;
    font-weight: bold;
    text-shadow: 0 0 3px rgb(0 0 0 / 50%);
    background-color: #f2a000;
    background-image: radial-gradient(#f1b10d 1.3px, transparent 1.3px);
    background-size: calc(5 * 1px) calc(5 * 1px);
	/*text-indent: 1.5em;*/
}
.pre_form_btn:before {
    content: "";
    position: absolute;
    bottom: -50px;
    left: -40px;
    display: block;
    width: 65px;
    aspect-ratio: 5 / 6;
    background-image: url(../images/common/n/pencal.svg);
    background-size: contain;
    background-repeat: no-repeat;
}
.pre_form_btn > img {
	position: absolute;
	width: 28%;
	left: 10%;
	top: 10%;
	transform: rotate(-10deg);
}
.pre_form {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(244, 123, 69, 0.9);
	z-index: 999;
	color: #fff;
	font-size: 14px;
	transition: .3s ease-in-out;
	-webkit-transform: translateX(100%);
	transform: translateX(100%);

	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;

	overflow-y: scroll;
}
#pre_form.open {
	-webkit-transform: translateX(0%);
	transform: translateX(0%);
}
.pre_form .pre_form_inner {
	padding: 1em 1.5em;
	max-height: 100%;
	max-width: 700px;
	margin: auto;
}
.pre_form .close {
	position: relative;
	z-index: 102;
	border: none;
	height: 22px;
	width: 25px;
	margin-left: auto;
}
.pre_form .close span {
	display: block;
	width: 25px;
	height: 3px;
	border-radius: 5px;
	background-color: #fff;
	transition: transform .3s ease-in-out, top .5s ease;
	position: absolute;
	left: 0;
}
.pre_form .close span:first-child {
	margin-top: 2px;
	top: 8px;
	transform: rotate(45deg);
}
.pre_form .close span:last-child {
	bottom: 9px;
	transform: rotate(135deg);
}
.pre_form h3 {
    font-size: 19px;
    font-weight: bold;
    text-align: center;
    border: 3px double;
    padding: 0.2em;
    margin-bottom: 2em;
    padding: 0.5em;
    letter-spacing: 0.05em;
}
.pre_form a {
	color: #fff;
}

table.mail_form {
	margin: auto;
}

table.mail_form tr:first-child {
	border-top: 1px solid #999;
}

table.mail_form tr {
	border-bottom: 1px solid #999;
}

form table tr th.required:after {
    content: "\5fc5\9808";
    color: white;
    white-space: nowrap;
    margin-left: 10px;
    font-size: 90%;
    padding: 2px 5px;
    background: rgb(247,147,30);
    background: -moz-linear-gradient(top, rgb(247,147,30) 0%, rgb(241,90,36) 100%);
    background: -webkit-linear-gradient(top, rgb(247,147,30) 0%,rgb(241,90,36) 100%);
    background: linear-gradient(to bottom, rgb(247,147,30) 0%,rgb(241,90,36) 100%);
    background: #c34343;
}
table.mail_form th {
	padding: 0.5em 1em;
	vertical-align: middle;
	text-align: left;
}
table.mail_form td {
	padding: 1em 2em;
}
table.mail_form td .note {
	font-size: 12px;
}

table.mail_form span.wpcf7-list-item {
	margin: 0.3em 0.6em;
}

.mail_form_submit {
    border: none;
    display: table;
    margin: 0 auto;
    text-decoration: none;
    position: relative;
    padding: 1em 2em;
    width: 220px;
    height: 45px;
    transition: 0.5s linear;
    -moz-transition: 0.5s linear;
    -webkit-transition: 0.5s linear;
    -o-transition: 0.5s linear;
    -ms-transition: 0.5s linear;
    background: #000;
    font-weight: bold;
    color: #fff;
}
.mail_form_submit:hover {
	opacity: 0.7;
}
.mail_form_submit[disabled] {
	background: #666;
	color: #ccc;
}

.pre_form_contact_wrap {
	display: flex;
	gap: 1em;
}
.pre_form_contact {
	flex-basis: 50%;
	display: flex;
	align-items: center;
	text-decoration: none;
	gap: 1em;
	padding: 0.2em 0.5em;
	font-weight: bold;
	font-size: 3.5vw;
}
.pre_form_contact.tel {
	background: #fff;
	color: #333;
	border: 2px solid #F47B45;
}
.pre_form_contact.line {
	background: #00b900;
}
.pre_form_contact img {
	width: 10vw;
	display: block;
}
@media (min-width: 768px) {
	.pre_form_contact_wrap {
		display: none;
	}
}

@media (max-width: 767px) {
	.pre_form_switch {
		right: 10px;
		bottom: 110px;
	}
	.pre_form .pre_form_inner {
		overflow-y: auto;
	}
	input[type="text"], 
	input[type="password"], 
	input[type="datetime"], 
	input[type="datetime-local"], 
	input[type="date"], 
	input[type="month"], 
	input[type="time"], 
	input[type="week"], 
	input[type="number"], 
	input[type="email"], 
	input[type="url"], 
	input[type="search"], 
	input[type="tel"], 
	input[type="color"], 
	select, 
	textarea, 
	.field {
		margin-top: 0;
		margin-bottom: 0;
	}
	table.mail_form tr:first-child,
	table.mail_form tr {
		border: none;
	}
	table.mail_form th {
		width: 100%;
		padding: 0.5em 0.5em 0px;
	}
	table.mail_form td {
		padding: 0.5em;
	}
}

.wpcf7 form.sent .wpcf7-response-output {
	text-align: center;
	color: #000;
	background: #fff;
	border: 2px double #2e9e5d;
	padding: 0.5em 1em;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output {
    border: none;
    text-align: center;
    color: #ff6d00;
    background: #C00;
    color: #FFF;
}
.wpcf7-not-valid-tip {
    background: #C00;
    color: #FFF;
    text-align: center;
}

@keyframes float {
	0% {
		transform: translatey(0) rotate(0);
	}
	25% {
		/*transform: translatey(-5px) rotate(4deg);*/
		transform: translate(-5px,-5px) rotate(-4deg);
	}
	50% {
		transform: translatey(0) rotate(0);
	}
	75% {
		/*transform: translatey(5px) rotate(-8deg);*/
		transform: translate(5px,5px) rotate(8deg);
	}
	100% {
		transform: translatey(0) rotate(0);
	}
}

@media (max-width: 767px){
	.footer {
	    padding-bottom: 170px !important;
	}
}
.grecaptcha-badge { 
    visibility: hidden;
}

/* 公式サイトへ(トップページのみ) */
.officeal_site_link {
	width: 40%;
	margin: 0 auto;
	padding: 0 0 20px;
}
.officeal_site_link a,
.officeal_site_link a img {
	display: block;
	width: 100%;
}
.officeal_site_fix {
	position: fixed;
	bottom: 10%;
	right: 0;
	width: 200px;
	z-index: 99;
	box-shadow: 0px 0px 5px rgba(0,0,0,0.3);
}
.officeal_site_fix a {
	display: block;
	width: 100%;
}
@media (max-width: 767px){
	.officeal_site_link {
		width: 80%;
	}
	.officeal_site_fix {
		bottom: 0;
		right: 15%;
		width: 70%;
	}
}
.car_btn {
	color: #fff;
	background: #000;
	border-radius: 5px;
	width: fit-content;
	margin: 0.5em auto;
	padding: 0.2em 2em;
	white-space: nowrap;
}
@media (max-width: 767px){
	.car_btn {
		font-size: 14px;
	}
}

/* 7MAXへのバナー */
.sevenmax_bnr {
	width: min(400px, 95%);
	margin: 2em auto;
}
.sevenmax_bnr a {
	color: inherit;
	text-decoration: none;
	display: flex;
	justify-content: space-between;
	width: 100%;
	padding: 0.5em 0.5em 0.5em 1em;
	position: relative;
	border-radius: 10px;
	border: 2px solid #2e9e5d;
	box-shadow: 0px 0px 5px rgba(0,0,0,0.3);
}
.sevenmax_bnr a:after {
	content: ">";
	display: flex;
	background: #2e9e5d;
	aspect-ratio: 1;
	width: 1.4em;
	border-radius: 50%;
	position: absolute;
	justify-content: center;
	align-items: center;
	line-height: 1;
	color: #fff;
	top: calc(50% - 0.7em);
	right: 0.8em;
	font-weight: bold;
	font-size: 14px;
}
.sevenmax_bnr a .text {
	font-size: min(15px, 3.5vw);
	letter-spacing: 0.05em;
	background: #ffd900;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1.5;
	padding: 0 2.2em 0 0.8em;
	width: calc(60% - 1em);
	border-radius: 6px;
	font-weight: bold;
	margin-bottom: 0.5em;
}
.sevenmax_bnr a img {
	display: block;
	width: 40%;
}
.sevenmax_bnr a img.car_image {
	position: absolute;
	right: 5%;
	top: 65%;
	width: 60%;
}

#ecoto {
	padding: 50px 0;
}

.ecoto_bnr {
	max-width: 720px;
	margin: 0 auto;
	width: 90%;
}
.ecoto_bnr a {
	border: 5px solid #fff;
	box-shadow: 0px 0px 5px 0px rgb(0 0 0 / 15%);
	display: block;
	border-radius: 15px;
	overflow: hidden;
}
.ecoto_bnr img {
	display: block;
	width: 100%;
	height: auto;
}
