@charset "UTF-8";
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/* Suggested order:
 * display
 * list-style
 * position
 * float
 * clear
 * width
 * height
 * margin
 * padding
 * border
 * background
 * color
 * font
 * text-decoration
 * text-align
 * vertical-align
 * white-space
 * other text
 * content
 *
 */
/* @  Reset +
 * ------------------------------------------------------------ */
* {
  box-sizing: border-box;
}

*:before,
*:after {
  box-sizing: border-box;
}

h1, h2, h3, h4, h5, h6, p, ul, ol, dl, table, pre, figure, blockquote {
  margin: 0;
}

ul, ol {
  list-style-type: none;
  list-style-image: none;
  padding-left: 0;
}

dd {
  margin-left: 0;
}

p, li, dt, dd, th, td, pre {
  -ms-line-break: strict;
  line-break: strict;
  word-wrap: break-word;
  word-break: normal;
}

dfn {
  font-style: normal;
}

sup {
  vertical-align: text-top;
  top: 0;
}

sub {
  vertical-align: text-bottom;
  bottom: 0;
}

hr {
  display: none;
}

img {
  border: 0;
  vertical-align: middle;
  -ms-interpolation-mode: bicubic;
}

iframe {
  border: 0;
  vertical-align: top;
}

img, object, video {
  max-width: 100%;
}

img {
  height: auto;
}

.ie8 img {
  width: auto;
}

/* @  Print Reset +
* ------------------------------------------------------------ */
@media print {
  .header,
  .footer,
  .beta-block {
    display: none;
  }

  .alpha-block {
    width: 100% !important;
  }
}
/* @  Font Reset
* ------------------------------------------------------------ */
html {
  font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "YuGothic", "Yu Gothic", "游ゴシック", "-Meiryo", "メイリオ", sans-serif;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  color: #333;
  font-size: 87.5%;
  line-height: 1.85714;
}
@media only screen and (max-width: 63.6875em) {
  html {
    font-size: 87.5%;
  }
}
@media only screen and (max-width: 39.9375em) {
  html {
    font-size: 87.5%;
  }
}
@media only screen and (max-width: 63.6875em) {
  html {
    line-height: 1.85714;
  }
}
@media only screen and (max-width: 39.9375em) {
  html {
    line-height: 1.6;
  }
}

h1, h2, h3, h4, h5, h6 {
  font-size: 14px;
  font-size: 1rem;
  font-weight: normal;
}

h2 {
  font-size: 26px;
  font-weight: normal;
  margin: 0 0 30px 0;
  line-height: 1.53846;
}
@media only screen and (max-width: 39.9375em) {
  h2 {
    font-size: 20px;
    margin: 0 0 25px 0;
    line-height: 1.35;
  }
}

h3 {
  font-size: 20px;
  font-weight: normal;
  margin: 0 0 20px 0;
  line-height: 1.4;
}

.csr h3 {
  font-weight: bold;
}

@media only screen and (max-width: 39.9375em) {
  h3 {
    font-size: 16px;
    margin: 0 0 15px 0;
    line-height: 1.71429;
  }
}

h4 {
  font-size: 14px;
  font-weight: bold;
  margin: 0 0 20px 0;
  line-height: 1.3;
}
@media only screen and (max-width: 39.9375em) {
  h4 {
    font-size: 14px;
    margin: 0 0 15px 0;
  }
}

/* @  Link Reset
* ------------------------------------------------------------ */
a:link,
a:visited,
a:hover,
a:active {
  color: #3577e4;
  text-decoration: none;
}

a:hover {
  color: #1853b4;
  text-decoration: underline;
}

::-moz-selection {
  background: #ccc;
  color: #FFF;
  text-shadow: none;
}

::selection {
  background: #ccc;
  color: #FFF;
  text-shadow: none;
}

input::-moz-selection,
textarea::-moz-selection {
  color: #333;
}

input::selection,
textarea::selection {
  color: #333;
}

a {
  -webkit-tap-highlight-color: rgba(204, 204, 204, 0.5);
}

a:link {
  -webkit-tap-highlight-color: rgba(204, 204, 204, 0.5);
}

/* @  Reset
* ------------------------------------------------------------ */
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/**
 * 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;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * 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/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * 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;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible;
}

/**
 * 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 Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
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;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 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 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  /* 2 */
  box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 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/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold;
}

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}


/* @ Code Layout
 * ------------------------------------------------------------ */
code,
kbd,
pre,
samp {
  font-family: Monaco, Menlo, Consolas, "Courier New", monospace;
}

code {
  padding: 2px 4px;
  font-size: 90%;
  color: #c7254e;
  background-color: #f9f2f4;
  white-space: nowrap;
  border-radius: 6px;
}

pre {
  display: block;
  padding: 0.42857px;
  margin: 0 0 0.92857px;
  font-size: 13px;
  line-height: 1.85714;
  word-break: break-all;
  word-wrap: break-word;
  color: #222222;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
}
pre code {
  padding: 0;
  font-size: inherit;
  color: inherit;
  color: #c7254e;
  white-space: pre-wrap;
  background-color: transparent;
  border-radius: 0;
}

.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}

/* @ end */
/* @ Form Layout
 * ------------------------------------------------------------ */
fieldset {
  padding: 0;
  margin: 0;
  border: 0;
}

input[type="search"] {
  box-sizing: border-box;
}

input[type="radio"],
input[type="checkbox"] {
  margin: 4px 0 0;
  margin-top: 1px \9;
  /* IE8-9 */
  line-height: normal;
}

input[type="file"] {
  display: block;
}

select[multiple],
select[size] {
  height: auto;
}

select optgroup {
  font-size: inherit;
  font-style: inherit;
  font-family: inherit;
}

input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
  outline: thin dotted #333;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

input[type="number"]::-webkit-outer-spin-button, input[type="number"]::-webkit-inner-spin-button {
  height: auto;
}

input[type="radio"][disabled], fieldset[disabled] input[type="radio"],
input[type="checkbox"][disabled], fieldset[disabled]
input[type="checkbox"] {
  cursor: not-allowed;
}

input,
textarea,
select,
button {
  outline: none;
  font: inherit;
  font-size: inherit;
  -webkit-appearance: none;
  -webkit-text-size-adjust: none;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  border-radius: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  box-shadow: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
}

@media print {
    /* @  Print Layout
  * ------------------------------------------------------------ */
  * {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }

  a,
  a:visited {
    text-decoration: underline;
  }

  .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;
  }

  body {
    -webkit-print-color-adjust: exact;
  }
}
/* @  Content Layout
 * ------------------------------------------------------------ */
.ie8 body {
  min-width: 1020px;
}

@media only screen and (min-width: 40em) {
  body, html {
    min-width: 1020px;
  }
}
@media only screen and (max-width: 39.9375em) {
  body, html {
    overflow-x: hidden;
    min-width: 320px;
  }
}

.content {
  margin-bottom: 60px;
}

.container {
  margin-left: auto;
  margin-right: auto;
  max-width: 980px;
  width: 100%;
  padding-right: 10px;
  padding-left: 10px;
}
.container:before, .container:after {
  content: " ";
  display: table;
}
.container:after {
  clear: both;
}
@media only screen and (max-width: 39.9375em) {
  .container {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.alpha_block {
  width: 68.75%;
  float: left;
}
.alpha_block._form {
  /* width: 68.75%; */
  width: 100%;
  float: left;
}
@media only screen and (max-width: 39.9375em) {
  .alpha_block {
    width: auto;
    float: none;
    margin-left: 0;
  }
}
.beta_block {
  padding-top: 62px;
  width: 26.04167%;
  float: right;
}
.beta_block._form {
  padding-top: 62px;
  /* width: 26.04167%; */
  width: 100%;
  float: right;
}
@media only screen and (max-width: 39.9375em) {
  .beta_block {
    padding-top: 20px;
  }
}
@media only screen and (max-width: 39.9375em) {
  .beta_block {
    width: auto;
    float: none;
    margin-left: 0;
  }
}

.section_group {
  margin: 60px 0 60px 0;
}
@media only screen and (max-width: 39.9375em) {
  .section_group {
    margin: 50px 0 50px 0;
  }
  .section_group:last-child {
    margin-bottom: 0;
  }
}

.unit_group {
  margin: 30px 0 0 0;
}
@media only screen and (max-width: 39.9375em) {
  .unit_group {
    margin: 20px 0 0 0;
  }
}

.section_group > .section_group {
  margin: 60px 0 0 0;
}
@media only screen and (max-width: 39.9375em) {
  .section_group > .section_group {
    margin: 30px 0 0 0;
  }
}

/* @  MAIN VISUAL
 * ------------------------------------------------------------ */
.main_visual {
  text-align: center;
  position: relative;
}

.main_visual .main_visual-body {
  margin-left: auto;
  margin-right: auto;
  max-width: 1020px;
  width: 100%;
  position: relative;
  text-align: left;
  padding: 40px 30px 40px 30px;
}
.main_visual .main_visual-body:before, .main_visual .main_visual-body:after {
  content: " ";
  display: table;
}
.main_visual .main_visual-body:after {
  clear: both;
}
@media only screen and (max-width: 39.9375em) {
  .main_visual .main_visual-body {
    padding: 30px 20px 26px 20px;
  }
}

.main_title_unit {
  position: relative;
  z-index: 2;
  color: #fff;
}
.main_title_unit .main_title {
  font-size: 32px;
  margin: 0;
  line-height: 1.4;
}
@media only screen and (max-width: 39.9375em) {
  .main_title_unit .main_title {
    font-size: 23px;
  }
}
.main_title_unit .sub_title {
  display: block;
  margin-top: -10px;
  font-size: 16px;
}
@media only screen and (max-width: 39.9375em) {
  .main_title_unit .sub_title {
    font-size: 12px;
  }
}

.main_img_unit {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.main_visual-type_img {
  background-color: #80B6E2;
  position: relative;
  overflow: hidden;
}
@media only screen and (max-width: 39.9375em) {
  .bg_blue {
    background-color: #80B6E2;
    position: relative;
    overflow: hidden;
    padding-bottom: 24px;
  }
}
.main_visual-type_img .main_title_unit {
  color: #fff;
}

.main_visual-type_text {
  background-color: #F3F3F3;
}
.main_visual-type_text .main_title_unit {
  color: #333;
}

.main_visual-type_form {
  background-color: #F3F3F3;
}
.main_visual-type_form .main_visual-body {
  padding: 25px 30px 25px 30px;
}
@media only screen and (max-width: 39.9375em) {
  .main_visual-type_form .main_visual-body {
    padding: 30px 20px 26px 20px;
  }
}
.main_visual-type_form .main_title_unit {
  color: #333;
}

.main_visual-type_slide .main_visual-body {
  padding: 30px 10px 70px 10px;
}
.main_visual-type_slide .main_img_unit {
  background: url(../../img/products/ph_residential_main_visual.jpg) center center no-repeat;
  content: '';
  display: block;
  height: 487px;
}
@media only screen and (max-width: 39.9375em) {
  .main_visual-type_slide .main_img_unit {
    background: url(../../img/products/sp_ph_residential_main_visual.jpg) bottom center no-repeat;
    background-size: cover;
    height: 132px;
  }
}

.main_slide_group {
  position: absolute;
  z-index: 1;
  margin-top: 30px;
}

.main_slide-item {
  overflow: hidden;
  height: 328px;
  display: inline-block;
  margin-bottom: 10px;
  border-radius: 10px;
  background: url(../../img/products/ph_residential_main_bg.png) 0 0 repeat-y;
}
.main_slide-item:before, .main_slide-item:after {
  content: " ";
  display: table;
}
.main_slide-item:after {
  clear: both;
}

.main_slide-item03 {
  background: url(../../img/products/ph_residential_main_bg02.png) 0 0 repeat-y;
  position: relative;
}
.main_slide-item03 .btn_e {
  position: absolute;
  right: 56px;
  bottom: 30px;
}

.main_slide-left {
  float: left;
  padding-top: 30px;
  padding-bottom: 30px;
}

.main_slide-right {
  float: left;
  width: 500px;
  padding-top: 30px;
  padding-right: 60px;
  padding-bottom: 30px;
  padding-left: 30px;
}
.main_slide-right .media-img {
  margin-right: 10px !important;
}
.main_slide-right .media-body {
  position: relative;
}

.main_slide-title {
  margin-bottom: 0 !important;
}

.main_slide-text {
  font-size: 12px;
  color: #777777;
  margin-bottom: 20px;
}
.main_slide-text span {
  color: #ACACAC;
}

.main_slide_thum {
  text-align: center;
  width: 1000px;
}
.main_slide_thum span {
  margin-left: 3px;
  margin-right: 3px;
  cursor: pointer;
  text-indent: -9999px;
  display: inline-block;
  height: 10px;
  width: 10px;
  background-color: #fff;
  border-radius: 50%;
}
.main_slide_thum span:hover {
  background-color: #EB1E23;
  opacity: .3;
}
.main_slide_thum .current {
  background-color: #EB1E23;
}

.main_slide_controller .prev, .main_slide_controller .next {
  position: absolute;
  text-align: center;
  top: 50%;
  margin-top: -42px;
  height: 52px;
  width: 42px;
  line-height: 56px;
  vertical-align: middle;
  display: block;
  cursor: pointer;
}
.main_slide_controller .prev:hover, .main_slide_controller .next:hover {
  opacity: .7;
}
.main_slide_controller .prev:after, .main_slide_controller .next:after {
  content: "";
  position: relative;
  top: 0;
  line-height: 1;
  display: inline-block;
}

.main_slide_controller .prev {
  left: 0;
  background-color: #7F7F7F;
  border-radius: 0px 4px 4px 0px;
}
.main_slide_controller .prev:after {
  background-image: url(../../img/sprite.png);
  background-position: -161px -143px;
  width: 8px;
  height: 14px;
  background-size: 197px 179px;
}
.ie8 .main_slide_controller .prev:after {
  background-image: url(../../img/sprite.png);
  background-position: -326px -190px;
  width: 8px;
  height: 14px;
}
.main_slide_controller .next {
  right: 0;
  background-color: #7F7F7F;
  border-radius: 4px 0px 0px 4px;
}
.main_slide_controller .next:after {
  background-image: url(../../img/sprite.png);
  background-position: -152px -143px;
  width: 8px;
  height: 14px;
  background-size: 197px 179px;
}
.ie8 .main_slide_controller .next:after {
  background-image: url(../../img/sprite.png);
  background-position: -326px -174px;
  width: 8px;
  height: 14px;
}

/* @ breadcrumb
 * ------------------------------------------------------------ */
.breadcrumb {
  border-bottom: 1px solid #dedede;
  background-color: #F5F5F5;
}

.breadcrumb-body {
  margin-left: auto;
  margin-right: auto;
  max-width: 1020px;
  width: 100%;
  padding-right: 10px;
  padding-left: 10px;
}
.breadcrumb-body:before, .breadcrumb-body:after {
  content: " ";
  display: table;
}
.breadcrumb-body:after {
  clear: both;
}
.breadcrumb-body span {
  display: inline-block;
  vertical-align: middle;
  line-height: 38px;
  font-size: 12px;
  margin-left: 8px;
}
.breadcrumb-body span:first-child {
  margin-left: 9px;
}
.breadcrumb-body a {
  color: #333;
}
.breadcrumb-body .breadcrumb-arrow {
  background-image: url(../../img/sprite.png);
  background-position: -153px -44px;
  width: 14px;
  height: 39px;
  background-size: 197px 179px;
  display: inline-block;
  content: '';
}
.ie8 .breadcrumb-body .breadcrumb-arrow {
  background-image: url(../../img/sprite.png);
  background-position: -264px -244px;
  width: 14px;
  height: 39px;
}

.section-datasheet-group {
  margin-bottom: 50px;
}

.section-catalog-download-group,
.section-catalog-download-group .text,
.section-catalog-download-group * {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
}

.section-catalog-download-group {
  margin-left: -20px;
  margin-right: -20px;
}
.section-catalog-download-group .group {
  border-collapse: separate;
  border-spacing: 20px;
  display: table;
  width: 100%;
}
.section-catalog-download-group .group.column01 {
  width: 51.42857142857142%;
}
.section-catalog-download-group .half {
  border-collapse: separate;
  border-spacing: 20px;
  display: table;
  width: 51.5%;
}
.section-catalog-download-group .group + .group {
  margin-top: -20px;
}
.section-catalog-download-group .cell-group {
  border: solid 1px #dedede;
  width: 50%;
  text-align: center;
  vertical-align: top;
  display: table-cell;
}
.section-catalog-download-group .cell-group:hover {
  text-decoration: none;
}
.section-catalog-download-group .cell-group:hover .download {
  text-decoration: none;
}
.section-catalog-download-group .pic-group {
  padding: 20px;
}
.section-catalog-download-group .pic-group img {
  border: solid 1px #e0e0e0;
}
.section-catalog-download-group .pic-group + .text-group {
  border-top: dashed 1px #dedede;
}
.section-catalog-download-group .text-group {
  padding: 16px 20px 16px;
}
.section-catalog-download-group .title {
  font-size: 20px;
  font-weight: bold;
  color: #333;
}
.section-catalog-download-group .text {
  margin-top: 10px;
  font-size: 12px;
  color: #777;
}
.section-catalog-download-group .download {
  margin-top: 10px;
  font-size: 12px;
  font-weight: bold;
}

@media only screen and (max-width: 39.9375em) {
  .section-catalog-download-group {
    margin-left: -15px;
    margin-right: -15px;
  }
  .section-catalog-download-group .group {
    border-spacing: 15px;
  }
  .section-catalog-download-group .group + .column01 {
  width: 52.58064516129032%;
}
  .section-catalog-download-group .group + .group {
    margin-top: -15px;
  }
  .section-catalog-download-group .pic-group {
    padding: 15px;
  }
  .section-catalog-download-group .pic-group img {
    width: auto;
    height: 95px;
  }
  .section-catalog-download-group .text-group {
    padding: 11px 15px 11px;
    text-align: left;
  }
  .section-catalog-download-group .title {
    font-size: 16px;
  }
  .section-catalog-download-group .text {
    font-size: 12px;
  }
  .section-catalog-download-group .download {
    margin-top: 10px;
  }
}
/* @  Footer Layout
 * ------------------------------------------------------------ */
@media only screen and (max-width: 39.9375em) {
  #form .footer {
    border-top: solid 1px #dedede;
    padding-top: 10px;
  }

  .list_group_d-footer {
    margin: 0 20px;
  }

  .footer_list_inline {
    padding: 0 20px;
    margin-bottom: 5px;
  }
  .footer_list_inline li {
    display: inline-block;
  }
  .footer_list_inline a {
    color: #333;
    font-size: 12px;
  }

  .to_top a {
    border-top: solid 1px #dedede;
    width: 100%;
    display: block;
    padding: 14px 20px 20px;
    color: #333;
    text-align: center;
    font-size: 12px;
  }
  .to_top a:after {
    background-image: url(../../img/sprite.png);
    background-position: -73px -159px;
    width: 7px;
    height: 5px;
    background-size: 197px 179px;
    content: "";
    margin-left: 10px;
    display: inline-block;
  }

  .copy {
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    color: #828282;
    font-size: 11px;
    background-color: #DEDEDE;
    padding: 6px 20px;
    text-align: center;
  }
}
/* ミドルサイズ以上に適用 */
@media only screen and (min-width: 40em) {
  .footer_group {
    border-top: solid 1px #dedede;
  }
  .footer_group .list_group_a {
    padding: 0;
    border-right: solid 1px #dedede;
    border-left: solid 1px #dedede;
  }
  .footer_group .list_group_a li {
    line-height: 1.7;
  }
  .footer_group .list_group_a-col {
    padding: 33px 40px 29px 40px;
  }
  .footer_group .list_group_a-col.first {
    border-left-width: 0;
    padding-left: 40px;
    padding-right: 20px;
  }
  .footer_group .list_group_a-col.last {
    padding-left: 40px;
    padding-right: 40px;
  }
  .footer_group .btn_a a, .footer_group .btn_a input {
    padding-top: 13px;
    padding-bottom: 13px;
  }
  .footer_group .btn_a a:before {
    top: 50%;
    -webit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
	.footer_contact-body,
  .footer_list-body,
  .footer_copy-body {
    margin-left: auto;
    margin-right: auto;
    max-width: 1020px;
    width: 100%;
    padding-right: 10px;
    padding-left: 10px;
    display: table;
    width: 100%;
  }
  .footer_contact-body:before, .footer_contact-body:after,
  .footer_list-body:before, .footer_list-body:after,
  .footer_copy-body:before,
  .footer_copy-body:after {
    content: " ";
    display: table;
  }
  .footer_contact-body:after,
  .footer_list-body:after,
  .footer_copy-body:after {
    clear: both;
  }

  .footer_list-body ul {
    margin-bottom: 20px;
  }

  .footer_copy-body {
    position: relative;
    padding-top: 55px;
    margin-bottom: 20px;
    font-size: 12px;
  }

  .footer_list_inline {
    margin-bottom: 15px;
  }
  .footer_list_inline li {
    display: inline-block;
    margin-right: 23px;
  }
  .footer_list_inline li:before {
    content: '|';
    display: inline-block;
    margin-right: 27px;
  }
  .footer_list_inline a {
    color: #333;
  }
  .footer_list_inline li:first-child:before {
    display: none;
    margin-right: 0;
  }

  .to_top {
    position: absolute;
    right: 11px;
    top: 63px;
  }
  .to_top a {
    background-image: url(../../img/sprite.png);
    background-position: -110px 0px;
    width: 58px;
    height: 43px;
    background-size: 197px 179px;
    overflow: hidden;
    float: right;
  }
  .to_top a:before {
    content: "";
    display: block;
    width: 0;
    height: 100%;
  }

  .copy {
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  }
}
/* ie8に適用 */
.ie8 .footer_group {
  border-top: solid 1px #dedede;
}
.ie8 .footer_group .list_group_a {
  padding: 0;
  border-right: solid 1px #dedede;
  border-left: solid 1px #dedede;
}
.ie8 .footer_group .list_group_a li {
  line-height: 1.7;
}
.ie8 .footer_group .list_group_a-col {
  padding: 33px 40px 29px 40px;
}
.ie8 .footer_group .list_group_a-col.first {
  border-left-width: 0;
  padding-left: 40px;
  padding-right: 20px;
}
.ie8 .footer_group .list_group_a-col.last {
  padding-left: 40px;
  padding-right: 40px;
}
.ie8 .footer_group .btn_a a, .ie8 .footer_group .btn_a input {
  padding-top: 13px;
  padding-bottom: 13px;
}
.ie8 .footer_group .btn_a a:before {
  top: 36%;
}
.ie8 .footer_list-body,
.ie8 .footer_copy-body {
  margin-left: auto;
  margin-right: auto;
  max-width: 1020px;
  width: 100%;
  padding-right: 10px;
  padding-left: 10px;
  display: table;
  width: 100%;
}
.ie8 .footer_list-body:before, .ie8 .footer_list-body:after,
.ie8 .footer_copy-body:before,
.ie8 .footer_copy-body:after {
  content: " ";
  display: table;
}
.ie8 .footer_list-body:after,
.ie8 .footer_copy-body:after {
  clear: both;
}
.ie8 .footer_list-body ul {
  margin-bottom: 20px;
}
.ie8 .footer_copy-body {
  position: relative;
  padding-top: 55px;
  margin-bottom: 20px;
  font-size: 12px;
}
.ie8 .footer_list_inline {
  margin-bottom: 15px;
}
.ie8 .footer_list_inline li {
  display: inline-block;
  margin-right: 23px;
}
.ie8 .footer_list_inline li:before {
  content: '|';
  display: inline-block;
  margin-right: 27px;
}
.ie8 .footer_list_inline a {
  color: #333;
}
.ie8 .footer_list_inline li:first-child:before {
  display: none;
  margin-right: 0;
}
.ie8 .to_top {
  position: absolute;
  right: 11px;
  top: 63px;
}
.ie8 .to_top a {
  background-image: url(../../img/sprite.png);
  background-position: -110px 0px;
  width: 58px;
  height: 43px;
  background-size: 197px 179px;
  overflow: hidden;
  float: right;
}
.ie8 .to_top a:before {
  content: "";
  display: block;
  width: 0;
  height: 100%;
}
.ie8 .copy {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.ie8 .to_top a {
  background-image: url(../../img/sprite.png);
  background-position: -68px -286px;
  width: 58px;
  height: 44px;
}

/* @  Header Layout
 * ------------------------------------------------------------ */
.header {
  position: relative;
  z-index: 100;
  background-color: #fff;
}

.header_description:before, .header_description:after {
  content: " ";
  display: table;
}
.header_description:after {
  clear: both;
}

.site_id {
  margin: 0;
  padding-top: 7px;
  display: block;
  float: left;
  margin-top: 29px;
}

.site_id a img:nth-child(1) { }
.site_id a img:nth-child(2) { margin-left: 11px; }

@media only screen and (max-width: 39.9375em) {
  .site_id {
    width: 37%;
  }
}
@media only screen and (max-width: 39.9375em) {
  .site_id {
    margin-top: 0px;
  }
}
@media only screen and (max-width: 39.9375em) {
  .site_id {
    margin-bottom: 7px;
  }
}
@media only screen and (max-width: 39.9375em) {
  .site_id {
    padding-left: 20px;
  }
}
.site_id a {
  font-size: 0;
  display: block;
}
.site_id a:hover {
  opacity: .7;
}

.header_form_group {
  margin-top: 33px;
  margin-right: 20px;
  width: 55%;
  float: right;
  text-align: right;
}
@media only screen and (max-width: 39.9375em) {
  .header_form_group {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 39.9375em) {
  .header_form_group {
    font-size: 11px;
  }
}
@media only screen and (max-width: 39.9375em) {
  .header_form_group {
    letter-spacing: -1px;
  }
}

.recruit_banner_block {
  width: 251px;
}
.recruit_banner_block:hover {
  opacity: .8;
}

@media only screen and (max-width: 39.9375em) {
  .recruit_banner_block {
    margin: 20px;
    width: auto;
  }
}



@media only screen and (max-width: 39.9375em) {
  .header_description {
    margin: 0;
    padding: 0;
    height: 60px;
    display: block;
  }

  .site_id {
    margin: 17px 0 0 20px;
    padding: 0;
    width: 145px;
    display: block;
  }

  .site_id a img:nth-child(1) { width: 100px; }
  .site_id a img:nth-child(2) { margin-left: 5px; width: 40px; }

  .menu_sm {
    position: absolute;
    z-index: 200;
    right: 20px;
    top: 22px;
  }

  .menu_sm-links {
    line-height: 1;
    float: right;
    display: block;
    margin-left: 10px;
    background-image: url(../../img/sprite.png);
    background-position: -94px -143px;
    width: 20px;
    height: 14px;
    background-size: 197px 179px;
  }

  .dropdown_a-toggle {
    cursor: pointer;
  }

  .dropdown_a {
    position: absolute;
    z-index: 200;
    left: 0;
    top: 41px;
    width: 100%;
  }

  .dropdown_a-body {
    width: 100%;
    position: absolute;
    height: auto;
    overflow: hidden;
    z-index: 500;
    background-color: #EFEFEF;
  }
  .dropdown_a-body .list_group_c {
    margin-bottom: 22px;
  }

  .list_group_d-header {
    margin: 0 20px;
  }

  .header_btn-box {
    margin: 20px;
  }

  .dropdown_a-body.is_toggle-hidden {
    height: 0;
    overflow: hidden;
  }

  .header_yahoo-search {
    border-bottom: dashed 1px #dedede;
    padding: 20px;
    font-size: 0;
    display: block;
  }
  .header_yahoo-search input,
  .header_yahoo-search textarea,
  .header_yahoo-search select,
  .header_yahoo-search button {
    outline: none;
    font: inherit;
    font-size: inherit;
    -webkit-appearance: none;
    -webkit-text-size-adjust: none;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    box-shadow: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
  }
  .header_yahoo-search .group {
    background-color: #fff;
    border: solid 1px #dedede;
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
    display: table;
  }
  .header_yahoo-search .group > div {
    text-align: left;
    vertical-align: top;
    display: table-cell;
  }
  .header_yahoo-search div.button {
    width: 43px;
  }
  .header_yahoo-search input.keywords {
    background: #fff url("../../img/common/yahoo_search_bg.gif") no-repeat 10px center;
    border: none;
    border-radius: 0;
    padding: 0 5px;
    width: 100%;
    height: 48px;
    line-height: 48px;
    font-size: 14px;
    vertical-align: top;
    display: inline-block;
  }
  .header_yahoo-search input.keywords.nobg, .header_yahoo-search input.keywords:focus {
    background-image: none;
  }
  .header_yahoo-search button {
    background: #fff url("../../img/common/yahoo_search_button_bg_sp.gif") no-repeat center center;
    border: none;
    border-radius: 0;
    width: 43px;
    height: 48px;
    vertical-align: top;
    display: inline-block;
  }
}
@media only screen and (max-width: 39.9375em) and (-webkit-min-device-pixel-ratio: 2) {
  .header_yahoo-search button {
    background-image: url(../../img/common/yahoo_search_button_bg_sp_2x.gif);
    background-size: 23px 25px;
    -webkit-background-size: 23px 25px;
  }
}

/* スモールサイズ以上に適用 */
@media only screen and (min-width: 40em) {
  .header_description {
    margin-left: auto;
    margin-right: auto;
    max-width: 1020px;
    width: 100%;
    padding-right: 10px;
    padding-left: 10px;
    margin-bottom: 14px;
  }

  .header_description_body {
    float: right;
  }

  .header_nav {
    background-color: #f5f5f5;
    margin-bottom: 21px;
    padding: 7px 7px 7px 17px;
    font-size: 0;
    line-height: normal;
    display: block;
  }
  .header_nav input,
  .header_nav textarea,
  .header_nav select,
  .header_nav button {
    outline: none;
    font: inherit;
    font-size: inherit;
    -webkit-appearance: none;
    -webkit-text-size-adjust: none;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    box-shadow: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
  }
  .header_nav li {
    padding-left: 21px;
    font-size: 11px;
    line-height: normal;
    vertical-align: middle;
    display: inline-block;
  }
  .header_nav li:first-child {
    padding-left: 0;
  }
  .header_nav li a {
    color: #333;
    font-size: 11px;
  }
  .header_nav li:before {
    background-image: url(../../img/sprite.png);
    background-position: -192px -88px;
    width: 5px;
    height: 8px;
    background-size: 197px 179px;
    margin-right: 7px;
    display: inline-block;
    content: '';
  }
  .header_nav .blank {
    padding-left: 12px;
  }
  .header_nav .blank:before {
    margin-right: 5px;
    background-image: url(../../img/sprite.png);
    background-position: -31.5px -166px;
    width: 10px;
    height: 10px;
    background-size: 197px 179px;
  }
  .header_nav .blank a[target="_blank"]:after {
    display: none;
  }
  .header_nav .yahoo {
    padding-left: 12px;
    font-size: 0;
  }
  .header_nav .yahoo:before {
    display: none;
  }
  .header_nav .yahoo input.keywords {
    background: #fff url("../../img/common/yahoo_search_bg.gif") no-repeat 10px center;
    border: none;
    border-radius: 0;
    padding: 0 5px;
    width: 140px;
    height: 25px;
    line-height: 25px;
    font-size: 11px;
    vertical-align: top;
    display: inline-block;
  }
  .header_nav .yahoo input.keywords.nobg, .header_nav .yahoo input.keywords:focus {
    background-image: none;
  }
  .header_nav .yahoo button {
    background: #fff url("../../img/common/yahoo_search_button_bg.gif") no-repeat center center;
    border: none;
    border-radius: 0;
    width: 28px;
    height: 25px;
    vertical-align: top;
    display: inline-block;
  }

  .header_contact {
    font-size: medium;
    float: right;
  }
  .header_contact li {
    margin-left: 11px;
    font-size: 87.5%;
    display: inline-block;
  }
  .header_contact li:first-child {
    margin-left: 0;
  }
  .header_contact .btn_a a, .header_contact .btn_a input {
    padding-top: 6px;
    padding-bottom: 6px;
  }
  .header_contact .btn_a a:before {
    top: 13px;
  }

  .g_nav {
    clear: both;
    border-top: 1px solid #dedede;
    background: url("../../img/common/solid_bar.png") bottom left repeat-x;
  }

  .g_nav_body {
    position: relative;
    margin-left: auto;
    margin-right: auto;
    max-width: 1020px;
    width: 100%;
    padding-right: 10px;
    padding-left: 10px;
  }
  .g_nav_body:before, .g_nav_body:after {
    content: " ";
    display: table;
  }
  .g_nav_body:after {
    clear: both;
  }
  .g_nav_body .g_nav_item {
    border-bottom: 1px solid #dedede;
    float: left;
    width: 20%;
    border-right: 1px solid #dedede;
  }
  .g_nav_body .g_nav_item:first-child {
    border-left: 1px solid #dedede;
  }
  .g_nav_body .g_nav_item .g_nav_link {
    cursor: pointer;
    color: #333;
    text-decoration: none;
    font-size: 16px;
    display: block;
    padding: 17px 10px;
    text-align: center;
  }

  .g_nav_item-body {
    display: none;
    background-color: #fff;
    padding: 31px 0 29px 0;
    border-bottom: 1px solid #dedede;
  }
  .g_nav_item-body .list_group {
    border-right-width: 0;
    border-left-width: 0;
  }

  .g_nav_item-head {
    padding-right: 40px;
    padding-left: 40px;
  }

  .g_nav_item .g_nav_item-body {
    display: none;
    width: 1000px;
    border-right: solid 1px #dedede;
    border-left: solid 1px #dedede;
    margin-top: 1px;
    height: auto;
    position: absolute;
    left: 10px;
    z-index: 100;
  }

  .g_nav_item:hover {
    border-bottom-color: #fff;
  }

  .g_nav_item:hover .g_nav_item-body {
    display: block;
  }
}
.ie8 .header_description {
  margin-left: auto;
  margin-right: auto;
  max-width: 1020px;
  width: 100%;
  padding-right: 10px;
  padding-left: 10px;
  margin-bottom: 14px;
}
.ie8 .header_description_body {
  float: right;
}
.ie8 .header_nav {
  background-color: #f5f5f5;
  margin-bottom: 21px;
  padding: 7px 7px 7px 17px;
  font-size: 0;
  line-height: normal;
  display: block;
}
.ie8 .header_nav input,
.ie8 .header_nav textarea,
.ie8 .header_nav select,
.ie8 .header_nav button {
  outline: none;
  font: inherit;
  font-size: inherit;
  -webkit-appearance: none;
  -webkit-text-size-adjust: none;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  border-radius: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  box-shadow: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
}
.ie8 .header_nav li {
  padding-left: 21px;
  font-size: 11px;
  line-height: normal;
  vertical-align: middle;
  display: inline-block;
}
.ie8 .header_nav li:first-child {
  padding-left: 0;
}
.ie8 .header_nav li a {
  color: #333;
  font-size: 11px;
}
.ie8 .header_nav li:before {
  background-image: url(../../img/sprite.png);
  background-position: -192px -88px;
  width: 5px;
  height: 8px;
  background-size: 197px 179px;
  margin-right: 7px;
  display: inline-block;
  content: '';
}
.ie8 .header_nav .blank {
  padding-left: 12px;
}
.ie8 .header_nav .blank:before {
  margin-right: 5px;
  background-image: url(../../img/sprite.png);
  background-position: -31.5px -166px;
  width: 10px;
  height: 10px;
  background-size: 197px 179px;
}
.ie8 .header_nav .blank a[target="_blank"]:after {
  display: none;
}
.ie8 .header_nav .yahoo {
  padding-left: 12px;
  font-size: 0;
}
.ie8 .header_nav .yahoo:before {
  display: none;
}
.ie8 .header_nav .yahoo input.keywords {
  background: #fff url("../../img/common/yahoo_search_bg.gif") no-repeat 10px center;
  border: none;
  border-radius: 0;
  padding: 0 5px;
  width: 140px;
  height: 25px;
  line-height: 25px;
  font-size: 11px;
  vertical-align: top;
  display: inline-block;
}
.ie8 .header_nav .yahoo input.keywords.nobg, .ie8 .header_nav .yahoo input.keywords:focus {
  background-image: none;
}
.ie8 .header_nav .yahoo button {
  background: #fff url("../../img/common/yahoo_search_button_bg.gif") no-repeat center center;
  border: none;
  border-radius: 0;
  width: 28px;
  height: 25px;
  vertical-align: top;
  display: inline-block;
}
.ie8 .header_contact {
  font-size: medium;
  float: right;
}
.ie8 .header_contact li {
  margin-left: 11px;
  font-size: 87.5%;
  display: inline-block;
}
.ie8 .header_contact li:first-child {
  margin-left: 0;
}
.ie8 .header_contact .btn_a a, .ie8 .header_contact .btn_a input {
  padding-top: 6px;
  padding-bottom: 6px;
}
.ie8 .header_contact .btn_a a:before {
  top: 13px;
}
.ie8 .g_nav {
  clear: both;
  border-top: 1px solid #dedede;
  background: url("../../img/common/solid_bar.png") bottom left repeat-x;
}
.ie8 .g_nav_body {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  max-width: 1020px;
  width: 100%;
  padding-right: 10px;
  padding-left: 10px;
}
.ie8 .g_nav_body:before, .ie8 .g_nav_body:after {
  content: " ";
  display: table;
}
.ie8 .g_nav_body:after {
  clear: both;
}
.ie8 .g_nav_body .g_nav_item {
  border-bottom: 1px solid #dedede;
  float: left;
  width: 25%;
  border-right: 1px solid #dedede;
}
.ie8 .g_nav_body .g_nav_item:first-child {
  border-left: 1px solid #dedede;
}
.ie8 .g_nav_body .g_nav_item .g_nav_link {
  cursor: pointer;
  color: #333;
  text-decoration: none;
  font-size: 16px;
  display: block;
  padding: 17px 10px;
  text-align: center;
}
.ie8 .g_nav_item-body {
  display: none;
  background-color: #fff;
  padding: 31px 0 29px 0;
  border-bottom: 1px solid #dedede;
}
.ie8 .g_nav_item-body .list_group {
  border-right-width: 0;
  border-left-width: 0;
}
.ie8 .g_nav_item-head {
  padding-right: 40px;
  padding-left: 40px;
}
.ie8 .g_nav_item .g_nav_item-body {
  display: none;
  width: 1000px;
  border-right: solid 1px #dedede;
  border-left: solid 1px #dedede;
  margin-top: 1px;
  height: auto;
  position: absolute;
  left: 10px;
  z-index: 100;
}
.ie8 .g_nav_item:hover {
  border-bottom-color: #fff;
}
.ie8 .g_nav_item:hover .g_nav_item-body {
  display: block;
}
.ie8 .header_nav li:before {
  background-image: url(../../img/sprite.png);
  background-position: -388px -67px;
  width: 5px;
  height: 8px;
}
.ie8 .header_nav .blank:before {
  background-image: url(../../img/sprite.png);
  background-position: -326px -206px;
  width: 10px;
  height: 10px;
}

/* @  Widget Layout
 * ------------------------------------------------------------ */
.widget_list {
  margin-bottom: 30px;
}

.widget_list-title {
  margin-bottom: 16px;
}

.widget_link_list {
  border: 1px solid #dedede;
}
.widget_link_list li {
  border-bottom: 1px dashed #dedede;
}
.widget_link_list li:last-child {
  border-bottom-width: 0;
}
.widget_link_list a {
  font-size: 12px;
  display: block;
  padding: 15px 25px;
}
@media only screen and (max-width: 39.9375em) {
  .widget_link_list a {
    font-size: 14px;
  }
}
.widget_link_list a:active {
  box-shadow: inset 0 0 6px 1px rgba(0, 0, 0, 0.1);
}
.widget_link_list a.current, .widget_link_list a:hover {
  background-color: #F5F5F5;
  color: #333;
  text-decoration: none;
}
@media only screen and (max-width: 39.9375em) {
  .widget_link_list li {
    border-bottom: 1px solid #dedede;
  }
  .widget_link_list a {
    position: relative;
  }
  .widget_link_list a.current, .widget_link_list a:hover {
    text-decoration: none;
  }
  .widget_link_list a:after {
    background-image: url(../../img/sprite.png);
    background-position: -104px -88px;
    width: 5px;
    height: 7px;
    background-size: 197px 179px;
    content: "";
    position: absolute;
    top: 42%;
    right: 20px;
    display: inline-block;
  }
}

.widget_bnr-item {
  margin-bottom: 30px;
}
@media only screen and (max-width: 39.9375em) {
  .widget_bnr-item {
    margin-bottom: 10px;
  }
}
.widget_bnr-item a {
  text-align: center;
  display: block;
}
.widget_bnr-item a:hover {
  opacity: .7;
}
@media only screen and (max-width: 39.9375em) {
  .widget_bnr-item {
    border: 1px solid #dedede;
  }
  .widget_bnr-item img {
    width: 50%;
  }
  .widget_bnr-item a {
    display: block;
    padding: 10px 30px !important;
    color: #333;
    position: relative;
  }
  .widget_bnr-item a:active {
    box-shadow: inset 0 0 6px 1px rgba(0, 0, 0, 0.1);
  }
  .widget_bnr-item a:hover {
    text-decoration: none;
  }
  .widget_bnr-item a:after {
    background-image: url(../../img/sprite.png);
    background-position: -104px -88px;
    width: 5px;
    height: 7px;
    background-size: 197px 179px;
    content: "";
    position: absolute;
    top: 42%;
    right: 10px;
    display: inline-block;
  }
}

.widget_bnr-border {
  border: 1px solid #dedede;
}
.widget_bnr-border a {
  padding: 8px 30px;
}

.menu_overlay,
.modal_overlay {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0,0,0,0.6);
  width: 100%;
  height: 497px;
  min-height: 100vh;
  z-index: 100;
}

.modal_overlay {
  z-index: 200;
}

.entry p {
  margin-bottom: 15px;
}
.entry .time {
  margin-bottom: 0 !important;
}

/* @ list_group
 * ------------------------------------------------------------ */
.list_group_a {
  background-color: #fff;
  display: table;
  width: 100%;
}
.list_group_a:before, .list_group_a:after {
  content: " ";
  display: table;
}
.list_group_a:after {
  clear: both;
}
.list_group_a ul {
  margin-bottom: 20px;
}
.list_group_a ul a {
  font-size: 12px;
}
.list_group_a ul li {
  margin-bottom: 2px;
}
.list_group_a ul ul {
  margin-bottom: 0;
}
.list_group_a ul.border_dashed {
  padding-bottom: 10px;
}
.list_group_a ul.border_solid {
  padding-bottom: 20px;
  margin-bottom: 25px;
}

.list_group_a-col {
  width: 335px;
  border-left: solid 1px #dedede;
  padding-right: 40px;
  padding-left: 40px;
  display: table-cell;
  vertical-align: top;
}
.list_group_a-col.first {
  border-left-width: 0;
  padding-right: 30px;
}

/* 20180919 追加 */
.list_group_a-col.list_group_a-col_type_2-1 { width: 375px; }
.list_group_a-col.list_group_a-col_type_2-2 { width: 625px; }

.list_group_a-title {
  font-weight: bold;
  color: #3FB7EB;
  font-size: 20px;
  margin: 0 0 10px 0;
}

.list_group_a-sub_title {
  color: #333;
  margin: 0 0 9px 0;
}

.list_group_a-sub_title ._bld {
  font-weight: bold;
}

/* 20180919 追加 */
.g_nav_item-list li a { font-size: 14px; }

.list_group_b {
  margin-bottom: 30px;
  border-bottom: 1px solid #dedede;
}
.list_group_b:before, .list_group_b:after {
  content: " ";
  display: table;
}
.list_group_b:after {
  clear: both;
}
.list_group_b li {
  position: relative;
  background-color: #FFF;
  float: left;
  width: 50%;
  border-top: 1px solid #dedede;
}
.list_group_b li.col_one {
  width: 100%;
}
.list_group_b li:nth-child(odd) {
  border-right: 1px solid #dedede;
}
.list_group_b a {
  font-size: 16px;
  text-align: center;
  display: block;
  padding: 12px 20px;
  color: #333;
  position: relative;
}
.list_group_b a:active {
  box-shadow: inset 0 0 6px 1px rgba(0, 0, 0, 0.1);
}
.list_group_b a:hover {
  text-decoration: none;
}

.list_group_b-bg_gray a {
  font-size: 12px;
  background-color: #F5F5F5;
  padding: 10px 10px;
}
.list_group_b-bg_gray a:after {
  background-image: url(../../img/sprite.png);
  background-position: -104px -88px;
  width: 5px;
  height: 7px;
  background-size: 197px 179px;
  content: "";
  margin-left: 10px;
  display: inline-block;
}

.list_group_c {
  margin-bottom: 12px;
  background-color: #fff;
}
.list_group_c li:first-child {
  border-top: 1px solid #dedede;
}
.list_group_c li {
  border-bottom: 1px solid #dedede;
}
.list_group_c a {
  display: block;
  padding: 11px 20px;
  color: #333;
  position: relative;
}
.list_group_c a:active {
  box-shadow: inset 0 0 6px 1px rgba(0, 0, 0, 0.1);
}
.list_group_c a:hover {
  text-decoration: none;
}
.list_group_c a:after {
  background-image: url(../../img/sprite.png);
  background-position: -104px -88px;
  width: 5px;
  height: 7px;
  background-size: 197px 179px;
  content: "";
  position: absolute;
  top: 42%;
  right: 20px;
  display: inline-block;
}

.list_group_e {
  background-color: #fff;
}
.list_group_e li:first-child {
  border-top: 1px solid #dedede;
}
.list_group_e li {
  border-bottom: 1px solid #dedede;
}
.list_group_e li:last-child {
  border-bottom-width: 0;
}
.list_group_e a {
  display: block;
  padding: 11px 0px;
  color: #333;
  position: relative;
}
.list_group_e a:hover {
  text-decoration: none;
}
.list_group_e a:after {
  background-image: url(../../img/sprite.png);
  background-position: -104px -88px;
  width: 5px;
  height: 7px;
  background-size: 197px 179px;
  content: "";
  position: absolute;
  top: 42%;
  right: 10px;
  display: inline-block;
}
.list_group_e ul {
  background-color: #F5F5F5;
}
.list_group_e ul li {
  padding-left: 10px;
}
.list_group_e ul li:last-child {
  border-bottom-width: 0;
}

.list_group_e-last {
  border-bottom: 1px solid #dedede;
}

.list_group_d:before, .list_group_d:after {
  content: " ";
  display: table;
}
.list_group_d:after {
  clear: both;
}
.list_group_d li {
  width: 50%;
  float: left;
}
.list_group_d li:nth-child(odd) {
  padding-right: 10px;
}

/* 20180919 追加 */
.g_nav_contact_block .g_nav_contact_block-title { width: 100%; font-size: 14px; margin-bottom: 10px; }
.g_nav_contact_block .g_nav_contact_block-btn { width: 250px; display: inline-block; vertical-align: middle; margin-bottom: 0; }
.g_nav_contact_block .g_nav_contact_block-btn a { padding: 17px 10px 17px 38px; font-size: 14px; line-height: 1; }
.g_nav_contact_block .g_nav_contact_block-btn a::before { top: 18px; }
.g_nav_contact_block .g_nav_contact_block-tel { margin-left: 25px; display: inline-block; vertical-align: middle; }
.g_nav_contact_block .g_nav_contact_block-tel .ipp_tel_number { position: relative; font-size: 26px;  font-weight: bold; font-family: Myriad, Helvetica, Arial, sans-serif; line-height: 1.0; color: #000; vertical-align: middle; top: -5px; }
.g_nav_contact_block .g_nav_contact_block-tel .ipp_tel_number::before { content: ""; display: inline-block; height: 18px; width: 13px; background: url(/img/icon_tel.png) left center no-repeat; margin-right: 5px; }
.g_nav_contact_block .g_nav_contact_block-tel .ipp_tel_time{ line-height: 1; font-weight: bold; }
.list_group_a-sub_title._bld {font-weight: bold;}
.g_nav_contact_block-title._bld {font-weight: bold;}
/* @ box
 * ------------------------------------------------------------ */
.box_a {
  text-align: center;
  background-color: #fff;
}
.box_a a {
  display: block;
  color: #333;
}
.box_a a:hover {
  opacity: .7;
  text-decoration: none;
}

.box_a-title {
  font-size: 20px;
  padding: 15px;
  margin-bottom: 0;
}

.box_b {
  display: block;
  text-align: center;
  background-color: #fff;
  border: 1px solid #dedede;
}
@media only screen and (max-width: 39.9375em) {
  .box_b {
    border-width: 0;
  }
}
.box_b a:hover {
  opacity: 0.7;
  display: block;
  text-decoration: none;
}

.box_b-title {
  font-size: 14px;
  color: #3577e4;
  font-weight: bold;
}

.box_b-body {
  padding: 13px 10px 20px 10px;
}
@media only screen and (max-width: 39.9375em) {
  .box_b-body {
    border: 1px solid #dedede;
  }
}
.box_b-body .c-Fix {
  clear: both;
}
.box_b-body .f_box {
  margin: 0 auto;
  display:inline-block;
}
.box_b-body .f_box div {
  display: inline;
}
.box_b-body .f_box div .new {
  margin-right: 4px;
  background-color: #eb1e23;
  color: #fff;
  font-size: 10px;
  padding: 1px 6px;
}
.box_b-body .f_box .last {
  margin-right: 0;
}
.box_b-body .box_b-title .tx12 {
  font-size: 12px;
}
.box_b-body .box_b-title .tx10red {
  font-size: 10px;
  color: #eb1e23;
}
.box_b-body.suncrystal{
  height: 130px;
  padding: 30px;
}
.box_b-body.suncrystal .box_b-title {
  text-align: center;
}
.box_b-body.suncrystal .box_b-title a:hover {
  display: inline-block;
}
.box_b-body.suncrystal .text_small {
  clear: both;
}
.box_b-body.suncrystal .box_b-title.right {
  margin-left: 10px;
}

.box_b-body.justroof {
  height: 130px;
  padding-top: 42px;
}
.txtred{
  color: #eb1e23;
}
@media only screen and (max-width: 39.9375em) {
.box_b-body.suncrystal{
  height: 105px;
  padding-top: 20px;
}
  .box_b-body.justroof {
    height: 105px;
    padding-top: 30px;
  }
}

/* @ color_box
 * ------------------------------------------------------------ */
.color_box_a, .color_box_a-border {
  margin-top: 30px;
  background-color: #f8f8f8;
  padding: 20px;
  margin-bottom: 20px;
}
@media only screen and (max-width: 39.9375em) {
  .color_box_a, .color_box_a-border {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 39.9375em) {
  .color_box_a, .color_box_a-border {
    padding: 10px;
    margin-bottom: 10px;
  }
}

.color_box_a-border {
  border: 1px solid #dedede;
}

.color_box_b {
  margin-top: 30px;
  background-color: #fff9eb;
  padding: 20px;
  margin-bottom: 20px;
}
@media only screen and (max-width: 39.9375em) {
  .color_box_b {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 39.9375em) {
  .color_box_b {
    padding: 10px;
    margin-bottom: 10px;
  }
}

.color_box_big {
  padding: 36px;
}
@media only screen and (max-width: 39.9375em) {
  .color_box_big {
    padding: 20px;
  }
}
.color_box_big h3 {
  margin-bottom: 10px;
}

.link_box {
  margin-bottom: 20px;
}
.link_box a {
  text-align: center;
  border: 1px solid #dedede;
  padding: 22px 28px;
  display: block;
}
.link_box a:active {
  box-shadow: inset 0 0 6px 1px rgba(0, 0, 0, 0.1);
}
@media only screen and (max-width: 39.9375em) {
  .link_box a {
    padding: 10px 14px;
  }
}

.link_list {
  margin-bottom: 20px;
}

/* @ border_box
 * ------------------------------------------------------------ */
.border_box_a {
  border: 6px solid #dedede;
  padding: 19px 15px;
  margin-top: 30px;
}
@media only screen and (max-width: 39.9375em) {
  .border_box_a {
    margin-top: 10px;
  }
}

.border_box_b {
  padding: 22px 28px;
  border: 1px solid #dedede;
  margin-top: 30px;
}
@media only screen and (max-width: 39.9375em) {
  .border_box_b {
    margin-top: 10px;
  }
}

.border_box_c {
  text-align: center;
  padding: 30px;
  border: 1px solid #dedede;
  margin-top: 30px;
}
@media only screen and (max-width: 39.9375em) {
  .border_box_c {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 39.9375em) {
  .border_box_c {
    padding: 10px;
  }
}

.beta_block .border_box_a,
.beta_block .border_box_b,
.beta_block .border_box_c {
  margin-top: 0;
}

.border_img {
  border: 1px solid #dedede;
}

.border_dashed {
  padding-bottom: 10px;
  margin-bottom: 20px;
  border-bottom: 1px dashed #dedede;
}

.border_solid {
  padding-bottom: 10px;
  margin-bottom: 20px;
  border-bottom: 1px solid #dedede;
}

/* @ コンバージョンボックス
 * ------------------------------------------------------------ */
.cv_box {
  padding: 35px 65px;
}
.cv_box:before, .cv_box:after {
  content: " ";
  display: table;
}
.cv_box:after {
  clear: both;
}
@media only screen and (max-width: 39.9375em) {
  .cv_box {
    padding: 20px;
  }
}

.cv_box_col {
  float: left;
  width: 50%;
  padding-left: 50px;
  padding-left: 50px;
}
@media only screen and (max-width: 39.9375em) {
  .cv_box_col {
    float: none;
  }
}
@media only screen and (max-width: 39.9375em) {
  .cv_box_col {
    width: auto;
  }
}
@media only screen and (max-width: 39.9375em) {
  .cv_box_col {
    padding-left: 0;
  }
}
.cv_box_col:first-child {
  border-right: 1px dashed #dedede;
  padding-right: 50px;
  padding-right: 50px;
  padding-left: 0;
}
@media only screen and (max-width: 39.9375em) {
  .cv_box_col:first-child {
    padding-right: 0;
  }
}
@media only screen and (max-width: 39.9375em) {
  .cv_box_col:first-child {
    border-right-width: 0;
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px dashed #dedede;
  }
}

/* @ コンバージョンボックス
 * ------------------------------------------------------------ */
.download_box {
  border: 1px solid #dedede;
  border-bottom-width: 0;
}
.download_box a {
  display: block;
}
.download_box a:hover, .download_box a:focus {
  background-image: -webkit-linear-gradient(transparent, rgba(255, 255, 255, 0.1) 40%, rgba(255, 255, 255, 0.2));
  background-image: linear-gradient(transparent, rgba(255, 255, 255, 0.1) 40%, rgba(255, 255, 255, 0.2));
}
.download_box a:focus {
  outline: 0;
}
.download_box a:active {
  box-shadow: inset 0 0 6px 1px rgba(0, 0, 0, 0.1);
}
.download_box a[disabled] {
  opacity: .4;
  cursor: not-allowed;
}
.download_box a:hover {
  text-decoration: none;
}

.download_box-img {
  text-align: center;
  padding: 21px 30px 0;
  border-bottom: 1px solid #dedede;
}
@media only screen and (max-width: 39.9375em) {
  .download_box-img {
    padding: 10px 20px 0;
  }
}

.download_box-title {
  margin-bottom: 10px;
  color: #333;
}

.download_box-body {
  padding: 25px 30px;
  border-bottom: 1px solid #dedede;
}
@media only screen and (max-width: 39.9375em) {
  .download_box-body {
    padding: 10px;
  }
}
@media only screen and (max-width: 39.9375em) {
  .download_box-body {
    border-bottom-width: 0;
  }
}

.download_box-foot {
  padding: 10px 20px;
  border-bottom: 1px solid #dedede;
}
@media only screen and (max-width: 39.9375em) {
  .download_box-foot {
    padding: 0 10px 10px;
  }
}

.notice_box {
  color: #E10205;
  margin: 20px 0px;
}
.notice_box .tit {
  font-weight: bold;
}

/* @ 設置レイアウト例
  * ------------------------------------------------------------ */
.arrow_colum {
  padding-top: 30px;
}
.arrow_colum p {
  font-size: 12px;
  margin-left: 10px;
  text-align: center;
}

.arrow_box {
  margin: 5px 10px;
}

.arrow_box_body {
  background-color: #fff;
  padding: 13px 15px 13px 10px;
  color: #eb1e23;
  font-weight: bold;
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
}
.arrow_box_body p {
  font-size: 29px;
}
.arrow_box_body span {
  font-size: 18px;
}
.arrow_box_body:after {
  content: '';
  background: url(/img/icon_box_arrow_right.png) no-repeat 0 0;
  width: 72px;
  height: 142px;
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  left: auto;
  bottom: auto;
  margin: -71px 0 0 0;
}

.arrow_box {
  line-height: 1;
  border-top: 0;
  border-bottom: 0;
  border-right-width: 0;
  padding: 2px;
  position: relative;
  overflow: hidden;
  background-color: #F7292E;
}

/* @ media
 * ------------------------------------------------------------ */
.media:before, .media:after {
  content: " ";
  display: table;
}
.media:after {
  clear: both;
}

@media only screen and (max-width: 39.9375em) {
  .media + .media {
    padding-top: 20px;
    border-top: 1px dashed #dedede;
  }
  .media + .media:last-child {
    border-bottom: 1px solid #dedede;
    padding-bottom: 20px;
  }
}

.media-img {
  margin-bottom: 10px;
  text-align: center;
}

.media-p20 {
  padding: 20px 0;
}

.media-img.pull_left {
  margin-right: 30px;
}
@media only screen and (max-width: 39.9375em) {
  .media-img.pull_left {
    margin-right: 10px;
  }
}

.media-img.pull_right {
  margin-left: 30px;
}
@media only screen and (max-width: 39.9375em) {
  .media-img.pull_right {
    margin-left: 10px;
  }
}

.media-img img > img {
  display: block;
}

.media-body {
  margin-bottom: 10px;
  overflow: hidden;
}
.media-body p {
  margin-bottom: 10px;
}
.media-body *:last-child {
  margin-bottom: 0;
}

.media-body-no_overflow {
  overflow: inherit;
}

.media-body-pc_no_overflow {
  overflow: inherit;
}
@media only screen and (max-width: 39.9375em) {
  .media-body-pc_no_overflow {
    overflow: hidden;
  }
}

@media only screen and (max-width: 39.9375em) {
  .media-body-sp_no_overflow {
    overflow: inherit;
  }
}

@media only screen and (max-width: 39.9375em) {
  .media-body-sp_clear {
    overflow: visible;
  }
}

@media only screen and (max-width: 39.9375em) {
  .un_media-body { float: left; width: calc(100% - 93px); }
}

.media-h_unit {
  position: relative;
  margin-bottom: 10px;
}
@media only screen and (max-width: 39.9375em) {
  .media-h_unit {
    position: static;
  }
}
@media only screen and (max-width: 39.9375em) {
  .media-h_unit:after {
    clear: both;
    display: block;
    content: '';
  }
}

.media-sub_title {
  color: #777777;
  font-size: 12px;
}

.media-title {
  margin-bottom: 10px;
}

.media-h_unit-voice {
  margin-top: 20px;
}
@media only screen and (max-width: 39.9375em) {
  .media-h_unit-voice {
    margin-top: 0;
  }
}
.media-h_unit-voice .media-sub_title {
  position: absolute;
  top: -20px;
  left: 0;
}
@media only screen and (max-width: 39.9375em) {
  .media-h_unit-voice .media-sub_title {
    position: static;
  }
}
.media-h_unit-voice .media-title {
  margin-bottom: 10px;
}

.media-max140 {
  width: 140px;
}
@media only screen and (max-width: 39.9375em) {
  .media-max140 {
    width: 83px;
  }
}

.media-max68 {
  width: 68px;
}
@media only screen and (max-width: 39.9375em) {
  .media-max68 {
    width: 68px;
  }
}

.media-img.pull_right.media-max68 {
  margin-left: 10px;
}
@media only screen and (max-width: 39.9375em) {
  .media-img.pull_right.media-max68 {
    margin-left: 10px;
  }
}

.media-img.pull_left.media-max68 {
  margin-right: 10px;
}
@media only screen and (max-width: 39.9375em) {
  .media-img.pull_left.media-max68 {
    margin-right: 10px;
  }
}

/* @ grid
 * ------------------------------------------------------------ */
.grid:before, .grid:after {
  content: " ";
  display: table;
}
.grid:after {
  clear: both;
}

.colum {
  min-height: 1px;
  float: left;
  margin-bottom: 20px;
  width: 100%;
}

.grid03 > .colum {
  width: 30.30303%;
  margin-left: 4.54545%;
}
.grid03 > .colum:first-child {
  margin-left: 0;
}

.grid03_01 > .colum {
  width: 30.30303%;
  margin-left: 4.54545%;
}
@media only screen and (max-width: 39.9375em) {
  .grid03_01 > .colum {
    width: auto;
  }
}
@media only screen and (max-width: 39.9375em) {
  .grid03_01 > .colum {
    margin-left: auto;
  }
}
.grid03_01 > .colum:first-child {
  margin-left: 0;
}
.grid03_01 > .colum:nth-child(3n+1) {
  clear: both;
  margin-left: 0;
}
@media only screen and (max-width: 39.9375em) {
  .grid03_01 > .colum {
    float: none;
    margin-right: auto;
  }
}

.ie8 .grid03_01 > .colum:first-child + * + * + *, .ie8 .grid03_01 > .colum:first-child + * + * + * + * + * + *, .ie8 .grid03_01 > .colum:first-child + * + * + * + * + * + * + * + * + * {
  clear: both;
  margin-left: 0;
}

.grid03_02 > .colum {
  width: 31.21212%;
  margin-left: 3.0303%;
}
@media only screen and (max-width: 39.9375em) {
  .grid03_02 > .colum {
    width: 48.21429%;
  }
}
@media only screen and (max-width: 39.9375em) {
  .grid03_02 > .colum {
    margin-left: 3.57143%;
  }
}
.grid03_02 > .colum:first-child {
  margin-left: 0;
}
.grid03_02 > .colum:nth-child(3n+1) {
  clear: both;
  margin-left: 0;
}
@media only screen and (max-width: 39.9375em) {
  .grid03_02 > .colum:nth-child(3n+1) {
    clear: none;
    margin-left: 3.57143%;
  }
  .grid03_02 > .colum:nth-child(2n+1) {
    clear: both;
    margin-left: 0;
  }
}

.ie8 .grid03_02 > .colum:first-child + * + * + *, .ie8 .grid03_02 > .colum:first-child + * + * + * + * + * + *, .ie8 .grid03_02 > .colum:first-child + * + * + * + * + * + * + * + * + *, .ie8 .grid03_02 > .colum:first-child + * + * + * + * + * + * + * + * + * + * + * + *, .ie8 .grid03_02 > .colum:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *, .ie8 .grid03_02 > .colum:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *, .ie8 .grid03_02 > .colum:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *, .ie8 .grid03_02 > .colum:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * {
  clear: both;
  margin-left: 0;
}

.grid02 > .colum {
  width: 48.48485%;
  margin-left: 3.0303%;
}
.grid02 > .colum:first-child {
  margin-left: 0;
}

.grid02_01 > .colum {
  width: 48.48485%;
  margin-left: 3.0303%;
}
@media only screen and (max-width: 39.9375em) {
  .grid02_01 > .colum {
    width: auto;
  }
}
@media only screen and (max-width: 39.9375em) {
  .grid02_01 > .colum {
    margin-left: auto;
  }
}
.grid02_01 > .colum:first-child {
  margin-left: 0;
}
.grid02_01 > .colum360, .grid02_01 > .colum270 {
  width: 54.54545% !important;
  min-height: 1px;
  float: left;
  margin-bottom: 20px;
  width: 100%;
}
@media only screen and (max-width: 39.9375em) {
  .grid02_01 > .colum360, .grid02_01 > .colum270 {
    width: auto !important;
  }
}
.grid02_01 > .colum270 {
  width: 40.90909% !important;
  margin-left: 4.54545%;
}
@media only screen and (max-width: 39.9375em) {
  .grid02_01 > .colum270 {
    width: auto !important;
  }
}
@media only screen and (max-width: 39.9375em) {
  .grid02_01 > .colum270 {
    margin-left: auto;
  }
}
.grid02_01 > .colum:nth-child(2n+1) {
  clear: both;
  margin-left: 0;
}
@media only screen and (max-width: 39.9375em) {
  .grid02_01 > .colum {
    float: none;
    margin-right: auto;
  }
}

.ie8 .grid02_01 > .colum:first-child + * + *, .ie8 .grid02_01 > .colum:first-child + * + * + * + *, .ie8 .grid02_01 > .colum:first-child + * + * + * + * + * + * {
  clear: both;
  margin-left: 0;
}

@media only screen and (max-width: 39.9375em) {
  .sp_video_2colum:before, .sp_video_2colum:after {
    content: " ";
    display: table;
  }
  .sp_video_2colum:after {
    clear: both;
  }
  .sp_video_2colum .video_container {
    float: left;
    width: 50%;
    padding-bottom: 38%;
  }

  .sp_video_2colum-title {
    width: 50%;
    padding-left: 15px;
    float: right;
  }
}
@media only screen and (max-width: 39.9375em) {
  .box_responsive {
    width: 100%;
    overflow-y: hidden;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin-bottom: 5px;
    position: relative;
  }
  .box_responsive table, .box_responsive pre {
    white-space: nowrap;
  }
  .box_responsive .grid, .box_responsive pre {
    width: 660px;
  }
  .box_responsive:after {
    position: absolute;
    background-image: url(../../img/sprite.png);
    background-position: -169px -101px;
    width: 22px;
    height: 22px;
    background-size: 197px 179px;
    bottom: 0px;
    right: 0;
    top: 0;
    left: auto;
    margin: auto;
    content: '';
  }
  .box_responsive.box_responsive-scrolled:after {
    display: none;
  }
}

/* @ 「屋根に置く」タイプの太陽光発電システム
 * ------------------------------------------------------------ */
.house_group {
  margin-top: 60px;
  position: relative;
  text-align: center;
}

.house-overlap {
  background-color: #FFF;
  border-radius: 8px;
  box-shadow: 0 0 9px rgba(0, 0, 0, 0.08);
  padding: 20px;
  position: absolute;
  top: 50px;
  right: 0;
  left: 0;
  margin: auto;
  width: 314px;
  display: none;
}
.house-overlap.is_overlap {
  display: block;
}

.house-img {
  margin-right: 10px;
  width: 66px;
  float: left;
}

.house-body {
  overflow: hidden;
}

.house-title {
  text-align: left;
  margin-bottom: 10px;
  font-size: 14px;
}
.house-title span {
  font-size: 12px;
}

.house-num {
  margin-right: 5px;
  font-weight: bold;
  vertical-align: middle;
  margin-top: -3px;
  display: inline-block;
  font-size: 24px !important;
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  color: #eb1e23;
}

.house-text {
  text-align: left;
  font-size: 12px;
  margin-bottom: 10px;
}

.house-close {
  display: inline-block;
  cursor: pointer;
  color: #eb1e23;
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-size: 12px;
  font-weight: 500;
}
.house-close:before {
  position: relative;
  display: inline-block;
  margin-right: 5px;
  background-image: url(../../img/sprite.png);
  background-position: -97.5px -166px;
  width: 7px;
  height: 7px;
  background-size: 197px 179px;
  content: '';
}
.ie8 .house-close:before {
  background-image: url(../../img/sprite.png);
  background-position: -208px -214px;
  width: 7px;
  height: 7px;
}

.house-btn01,
.house-btn02,
.house-btn03,
.house-btn04,
.house-btn05,
.house-btn06,
.justroof-house-btn01,
.justroof-house-btn02,
.justroof-house-btn03,
.justroof-house-btn04,
.justroof-house-btn05,
.justroof-house-btn06 {
  position: absolute;
  cursor: pointer;
}
.house-btn01:hover,
.house-btn02:hover,
.house-btn03:hover,
.house-btn04:hover,
.house-btn05:hover,
.house-btn06:hover,
.justroof-house-btn01:hover,
.justroof-house-btn02:hover,
.justroof-house-btn03:hover,
.justroof-house-btn04:hover,
.justroof-house-btn05:hover,
.justroof-house-btn06:hover {
  opacity: .7;
}

.house-btn01 {
  top: -40px;
  left: 330px;
}

.house-btn02 {
  top: 6px;
  left: 70px;
}

.house-btn03 {
  top: 114px;
  left: 30px;
}

.house-btn04 {
  bottom: 73px;
  left: 39px;
}

.house-btn05 {
  bottom: 18px;
  left: 105px;
}

.house-btn06 {
  bottom: 14px;
  left: 303px;
}

.justroof-house-btn01 {
  top: 6px;
  left: 70px;
}

.justroof-house-btn02 {
  top: 114px;
  left: 30px;
}

.justroof-house-btn03 {
  bottom: 73px;
  left: 39px;
}

.justroof-house-btn04 {
  bottom: 14px;
  left: 303px;
}

.justroof-house-btn05 {
  bottom: 18px;
  left: 105px;
}

.justroof-house-btn06 {
  bottom: 34px;
  left: 396px;
}

.mb40 {
  margin-bottom: 40px;
}

.conditions .conditions_box {
  margin-bottom: 20px;
}
.conditions .red {
  color: #f7292e;
}

.sp_house-img {
  text-align: center;
  margin-bottom: 20px;
}

/* @ モーダル
 * ------------------------------------------------------------ */
.modal-group {
  position: fixed;
  display: none;
  z-index: 200;
  top: 50%;
  left: 0;
  right: 0;
  margin: auto;
  padding: 50px 80px;
  background: #fff;
  border: 6px solid #dedede;
  width: 860px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
@media only screen and (max-width: 39.9375em) {
  .modal-group {
    padding: 20px;
    width: 100%;
  }
}

.modal-close {
  cursor: pointer;
  position: absolute;
  background-image: url(../../img/sprite.png);
  background-position: -110px -44px;
  width: 42px;
  height: 42px;
  background-size: 197px 179px;
  top: -20px;
  right: -20px;
  content: '';
}
.modal-close:hover {
  opacity: .7;
}
.ie8 .modal-close {
  background-image: url(../../img/sprite.png);
  background-position: -282px -174px;
  width: 42px;
  height: 42px;
}

/* @ スライダー
 * ------------------------------------------------------------ */
.slide {
  overflow: hidden;
  position: relative;
}

.slide-body {
  display: block;
  position: relative;
  background-color: #EFEFEF;
  text-align: center;
  margin-bottom: 13px;
}
.slide-body:before, .slide-body:after {
  content: " ";
  display: table;
}
.slide-body:after {
  clear: both;
}
.slide-body ul {
  overflow: hidden;
  display: block;
}
.slide-body li {
  text-align: center;
  float: left;
  width: 660px;
}

.bx-prev {
  text-indent: -9999px;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -17px;
  cursor: pointer;
  background-image: url(../../img/sprite.png);
  background-position: -73px -72px;
  width: 30px;
  height: 34px;
  background-size: 197px 179px;
  display: block;
  content: '';
}
.bx-prev:hover {
  opacity: .7;
}
.ie8 .bx-prev {
  background-image: url(../../img/sprite.png);
  background-position: -280px -244px;
  width: 30px;
  height: 34px;
}

.bx-next {
  text-indent: -9999px;
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -17px;
  cursor: pointer;
  background-image: url(../../img/sprite.png);
  background-position: -110px -87px;
  width: 30px;
  height: 34px;
  background-size: 197px 179px;
  display: block;
  content: '';
}
.bx-next:hover {
  opacity: .7;
}
.ie8 .bx-next {
  background-image: url(../../img/sprite.png);
  background-position: -338px -248px;
  width: 30px;
  height: 34px;
}

.slide-thum {
  padding-left: 2px;
  margin-right: -19px;
}
.slide-thum:before, .slide-thum:after {
  content: " ";
  display: table;
}
.slide-thum:after {
  clear: both;
}
.slide-thum span {
  float: left;
  margin-bottom: 10px;
  margin-right: 19px;
}
.slide-thum a {
  overflow: hidden;
  box-sizing: border-box;
  display: block;
  opacity: .3;
}
.slide-thum a:hover {
  border: 2px solid #eb1e23;
  margin: -2px;
  opacity: .7;
}
.slide-thum a.active {
  border: 2px solid #eb1e23;
  margin: -2px;
  opacity: 1;
}

.ie8 .slide-thum span {
  width: 90px;
  display: block;
}
.ie8 .slide-thum span img {
  width: 90px;
  height: auto;
}

.slide-title {
  display: none;
}
.slide-title.active {
  display: block;
}

.slide-wide .slide-body li {
  width: 700px;
}
.slide-wide .slide-thum {
  margin-right: -10px;
}
.slide-wide .slide-thum span {
  margin-right: 10px;
}
.un_case_slide { 
  display: flex;
  flex-wrap: wrap;
}

.sp_slide {
  position: relative;
  max-width: 100%;
}

.sp_slide-body {
  text-align: center;
  margin-bottom: 13px;
  width: 100%;
  position: relative;
}
.sp_slide-body:before, .sp_slide-body:after {
  content: " ";
  display: table;
}
.sp_slide-body:after {
  clear: both;
}
.sp_slide-body li {
  text-align: center;
  width: 100%;
}
.sp_slide-body .bx-prev {
  background-image: url(../../img/sprite.png);
  background-position: -169px -78px;
  width: 22px;
  height: 22px;
  background-size: 197px 179px;
  display: block;
  content: '';
  text-indent: -9999px;
  background-color: transparent;
  border: none;
  position: absolute;
  left: -10px;
  top: 50%;
  margin-top: -11px;
}
.sp_slide-body .bx-next {
  background-image: url(../../img/sprite.png);
  background-position: -169px -101px;
  width: 22px;
  height: 22px;
  background-size: 197px 179px;
  display: block;
  content: '';
  text-indent: -9999px;
  background-color: transparent;
  border: none;
  position: absolute;
  right: -10px;
  top: 50%;
  margin-top: -11px;
}

/* @ form base
 * ------------------------------------------------------------ */
.form-control::-webkit-input-placeholder {
  color: #CCC;
}

.form-control::-moz-placeholder {
  color: #CCC;
}

.form-control:-moz-placeholder {
  color: #CCC;
}

.form-control:-ms-input-placeholder {
  color: #CCC;
}

.form-control.placeholder {
  color: #CCC;
}

.form-control {
  margin-top: 6px;
  margin-bottom: 10px;
  padding: 10px 6px;
  border: 1px solid #dedede;
  color: #555;
  vertical-align: middle;
  border-radius: 0;
  -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}
.form-control:focus {
  border-color: #ccc;
  outline: 0;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(204, 204, 204, 0.6);
}
.form-control:focus, .form-control:hover {
  background: #fafafa;
}
.form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control {
  background-color: #EEE;
  cursor: not-allowed;
}
.form-control:last-child {
  margin-bottom: 0;
}

textarea.form-control {
  height: auto;
}

.form-unit {
  margin-bottom: 20px;
}

.req {
  color: #EE4D5A;
  font-size: 10px;
  background-color: #FFF;
  border-radius: 2px;
  padding: 2px 4px;
  border: 1px solid #dedede;
  margin-left: 5px;
}
@media only screen and (max-width: 39.9375em) {
  .req {
    background-color: #EBEBEB;
    color: #777777;
    border-radius: 0px;
    border-width: 0px;
    padding: 4px;
    font-size: 14px;
  }
}

.form_err .form-control,
.form_err select,
.form_err button {
  border-color: #FF9797;
  background-color: #FEE9E9;
}
.form_err .form_err-text {
  display: block;
}

.form_err .form-control,
.form_err .input-rc-group.toggle,
.form_err select,
.form_err button {
  border-color: #FF9797;
  background-color: #FEE9E9;
}
.form_err .form_err-text {
  display: block;
}

.form-control.form_err,
.input-rc-group.toggle.form_err,
select.form_err,
button.form_err {
  border-color: #FF9797;
  background-color: #FEE9E9;
}

.form_err-text {
  display: none;
  color: #FF9797;
  font-size: 12px;
}

.form_text-space {
  margin-top: 1.5em;
}
@media only screen and (max-width: 39.9375em) {
  .form_text-space {
    margin-top: 0;
  }
}

.submit_group {
  position: relative;
  text-align: center;
  margin: 25px auto;
}
.submit_group .submit_back {
  position: absolute;
  top: 6px;
  left: 0;
}
.submit_group .btn_a {
  display: inline-block;
}

.input-rc-group {
  font-size: 0;
  display: block;
}

.input-rc-group > li {
  font-size: 0;
  line-height: normal;
  display: block;
  position: relative;
  overflow: visible;
}

.input-rc-group > li + li {
  margin-top: 10px;
}

.input-rc-group > li.disabled {
  opacity: 0.6;
  color: #999;
}

.input-rc-group > li label {
  padding-left: 30px;
  min-height: 20px;
  font-size: 14px;
  color: #585858;
  display: inline-block;
  position: relative;
  overflow: hidden;
}

.input-rc-group > li input[type="checkbox"],
.input-rc-group > li input[type="radio"] {
  filter: alpha(opacity=0);
  opacity: 0;
  -webkit-opacity: 0;
  -moz-opacity: 0;
  position: absolute;
  z-index: -1;
}

.input-rc-group > li input[type="checkbox"] + label:before,
.input-rc-group > li input[type="radio"] + label:before {
  content: "";
  background-image: url(../../img/form/form_icons.png);
  background-position: 0 0;
  background-repeat: no-repeat;
  width: 20px;
  height: 20px;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.input-rc-group > li input[type="checkbox"]:disabled + label,
.input-rc-group > li input[type="radio"]:disabled + label {
  opacity: 0.6;
}

.input-rc-group > li input[type="checkbox"]:focus + label,
.input-rc-group > li input[type="radio"]:focus + label {
  background-color: rgba(255, 6, 82, 0.1);
  box-shadow: 0 0 2px 3px rgba(255, 6, 82, 0.1);
  -webkit-box-shadow: 0 0 2px 3px rgba(255, 6, 82, 0.1);
  -moz-box-shadow: 0 0 2px 3px rgba(255, 6, 82, 0.1);
}

.input-rc-group > li input[type="radio"].selected + label, .input-rc-group > li input[type="radio"]:checked + label,
.input-rc-group > li input[type="checkbox"].selected + label,
.input-rc-group > li input[type="checkbox"]:checked + label {
  color: #333333;
}

.input-rc-group > li input[type="radio"] + label:before {
  background-position: -40px -40px;
}

.input-rc-group > li input[type="radio"] + label.selected:before {
  background-position: -140px -40px;
}

.input-rc-group > li input[type="radio"].selected + label:before, .input-rc-group > li input[type="radio"]:checked + label:before {
  background-position: -140px -40px;
}

.input-rc-group > li input[type="checkbox"] + label:before {
  background-position: -40px -140px;
}

.input-rc-group > li input[type="checkbox"] + label.selected:before {
  background-position: -140px -140px;
}

.input-rc-group > li input[type="checkbox"].selected + label:before, .input-rc-group > li input[type="checkbox"]:checked + label:before {
  background-position: -140px -140px;
}

.input-rc-group.line {
  margin-top: -10px;
}

.input-rc-group.line > li {
  margin-top: 10px;
  margin-right: 15px;
  display: inline-block;
}

.input-rc-group.line > li:last-child {
  margin-right: 0;
}

.input-rc-group.toggle {
  border: solid 1px #d4d4d4;
  display: block;
  font-size: 0;
  white-space: nowrap;
  background-color: #fff;
  margin-top: 6px;
  margin-bottom: 10px;
}

.input-rc-group.toggle li {
  margin: 0;
  width: 50%;
  font-size: 14px;
  text-align: center;
  display: inline-block;
}

.input-rc-group.toggle li label {
  cursor: pointer;
  padding: 6px 14px 4px;
  display: block;
}

.input-rc-group.toggle li + li {
  border-left: solid 1px #d4d4d4;
  margin: 0;
}

.input-rc-group.toggle li input[type="checkbox"] + label:before,
.input-rc-group.toggle li input[type="radio"] + label:before {
  margin-right: 5px;
  vertical-align: middle;
  display: inline-block;
  position: relative;
  top: -1px;
  left: auto;
}

select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  text-indent: .01px;
  /*Firefox用*/
  text-overflow: "";
  /*Firefox用*/
  background-image: url(../../img/form/form_icon_select_bottom.png);
  background-position: 100% center;
  background-repeat: no-repeat;
  background-color: #fff;
  text-align: left;
  cursor: pointer;
  color: #555;
  margin-top: 6px;
  margin-bottom: 10px;
  padding: 10px 6px;
  border: 1px solid #dedede;
  border-radius: 0px;
}
select:focus, select:active {
  background-image: url(../../img/form/form_icon_select_top.png);
}

.ie8 select,
.ie9 select {
  background-image: none;
  padding-right: 4px;
}

.form_btn {
  white-space: nowrap;
  margin-top: 6px;
  margin-bottom: 10px;
  cursor: pointer;
  background-color: #FFF;
  background-image: -webkit-linear-gradient( bottom , #F4F4F4 0%, #FFF 85%, #FFF 100%);
  background-image: -webkit-linear-gradient(bottom, #F4F4F4 0%, #FFF 85%, #FFF 100%);
  background-image: linear-gradient(to top, #F4F4F4 0%, #FFF 85%, #FFF 100%);
  border: 1px solid #dedede;
  margin-left: -1px;
  padding: 12px 4px 10px 4px;
  color: #585858;
}
@media only screen and (max-width: 39.9375em) {
  .form_btn {
    font-size: 12px;
  }
}
.form_btn.txt_small {
  font-size: 13px;
}

.form_btn:hover {
  border-color: #b3b3b3;
  color: #333333;
}

.form_btn:active, .form_btnn:focus {
  border-color: #4b8ec9;
  color: #333333;
}

.form-control, .form_btn {
  height: 43px;
}

/* @ form
 * ------------------------------------------------------------ */
.step_bar {
  margin-bottom: 15px;
}
.step_bar:before, .step_bar:after {
  content: " ";
  display: table;
}
.step_bar:after {
  clear: both;
}
.step_bar li {
  position: relative;
  text-align: center;
  float: left;
  background-color: #EBEBEB;
  color: #777;
  padding: 10px;
  border: 1px solid #dedede;
  border-left-width: 0;
  width: 33.3%;
  vertical-align: middle;
}
@media only screen and (max-width: 39.9375em) {
  .step_bar li {
    padding: 5px;
  }
}
.step_bar .current {
  background-color: #919191;
  color: #fff;
}
.step_bar .step1 {
  border-left: 1px solid #dedede;
}
.step_bar .step1 span:before, .step_bar .step1 span:after {
  display: none !important;
}
.step_bar span:before {
  bottom: 0;
  -webkit-transform: skew(-20deg);
  transform: skew(-20deg);
}
.step_bar span:after {
  top: 0;
  -webkit-transform: skew(20deg);
  transform: skew(20deg);
}
.step_bar span:before, .step_bar span:after {
  position: absolute;
  left: -5px;
  display: block;
  content: '';
  background-color: #EBEBEB;
  border-left: 1px solid #dedede;
  width: 23px;
  height: 23px;
}
@media only screen and (max-width: 39.9375em) {
  .step_bar span:before, .step_bar span:after {
    width: 17px;
  }
}
@media only screen and (max-width: 39.9375em) {
  .step_bar span:before, .step_bar span:after {
    height: 17px;
  }
}
.step_bar .step1.current span:before, .step_bar .step1.current span:after {
  background-color: #919191;
}
.step_bar .step2.current span:before, .step_bar .step2.current span:after {
  background-color: #919191;
}
.step_bar .step3.current span:before, .step_bar .step3.current span:after {
  background-color: #919191;
}

.form-text_confirmation {
  font-size: 12px;
}

.table_group {
  display: table;
}

.cell_group {
  display: table-cell;
  vertical-align: top;
}
.cell_group .form-control {
  border-left-width: 0;
}

.cell_group:first-child .form-control {
  border-left-width: 1px;
}

.item-grid:before, .item-grid:after {
  content: " ";
  display: table;
}
.item-grid:after {
  clear: both;
}

.item-bg {
  background-image: url(../../img/form/form_img01.png);
  background-repeat: no-repeat;
  border-top: 1px solid #dedede;
  border-left: 1px solid #dedede;
  content: '';
  display: inline-block;
  position: relative;
}
.item-bg label {
  cursor: pointer;
  min-height: 20px;
  font-size: 14px;
  color: #585858;
  overflow: hidden;
  width: 151px;
  height: 128px;
  display: block;
  padding-left: 30px;
  padding-top: 104px;
  font-size: 14px;
}
@media only screen and (max-width: 39.9375em) {
  .item-bg label {
    width: 100%;
  }
}
@media only screen and (max-width: 39.9375em) {
  .item-bg label {
    height: 93px;
  }
}
@media only screen and (max-width: 39.9375em) {
  .item-bg label {
    padding-top: 69px;
  }
}
@media only screen and (max-width: 39.9375em) {
  .item-bg label {
    font-size: 12px;
  }
}
.item-bg input[type="checkbox"],
.item-bg input[type="radio"] {
  filter: alpha(opacity=0);
  opacity: 0;
  -webkit-opacity: 0;
  -moz-opacity: 0;
  position: absolute;
  z-index: -1;
}
.item-bg input[type="checkbox"] + label:before,
.item-bg input[type="radio"] + label:before {
  content: "";
  background-image: url(../../img/form/form_icons.png);
  background-position: 0 0;
  background-repeat: no-repeat;
  width: 20px;
  height: 20px;
  display: block;
  position: absolute;
  left: 4px;
  overflow: hidden;
}
.item-bg input[type="radio"] + label:before {
  background-position: -40px -40px;
}
.item-bg input[type="radio"].selected + label:before,
.item-bg input[type="radio"]:checked + label:before {
  background-position: -140px -40px;
}
@media only screen and (max-width: 39.9375em) {
  .item-bg {
    background-image: url(../../img/form/sp_form_img14.png);
    background-size: 133px 93px;
    border-right: 1px solid #dedede;
    border-bottom: 1px solid #dedede;
  }
}

.colum-item {
  display: block;
  float: left;
  cursor: pointer;
}
@media only screen and (max-width: 39.9375em) {
  .colum-item {
    width: 48.21429%;
    margin-bottom: 10px;
    margin-left: 3.57143%;
  }
  .colum-item:first-child {
    margin-left: 0;
  }
  .colum-item:nth-child(2n+1) {
    margin-left: 0px;
  }
}

.item01-bg {
  background-image: url(../../img/form/form_img01.png);
}
@media only screen and (max-width: 39.9375em) {
  .item01-bg {
    background-image: url(../../img/form/sp_form_img01.png);
  }
}

.item02-bg {
  background-image: url(../../img/form/form_img02.png);
}
@media only screen and (max-width: 39.9375em) {
  .item02-bg {
    background-image: url(../../img/form/sp_form_img02.png);
  }
}

.item03-bg {
  background-image: url(../../img/form/form_img03.png);
}
@media only screen and (max-width: 39.9375em) {
  .item03-bg {
    background-image: url(../../img/form/sp_form_img03.png);
  }
}

.item04-bg {
  background-image: url(../../img/form/form_img04.png);
}
@media only screen and (max-width: 39.9375em) {
  .item04-bg {
    background-image: url(../../img/form/sp_form_img04.png);
  }
}

.item05-bg {
  background-image: url(../../img/form/form_img05.png);
}
@media only screen and (max-width: 39.9375em) {
  .item05-bg {
    background-image: url(../../img/form/sp_form_img05.png);
  }
}

.item11-bg {
  background-image: url(../../img/form/form_img11.png);
}
@media only screen and (max-width: 39.9375em) {
  .item11-bg {
    background-image: url(../../img/form/sp_form_img11.png);
  }
}

.item12-bg {
  background-image: url(../../img/form/form_img12.png);
}
@media only screen and (max-width: 39.9375em) {
  .item12-bg {
    background-image: url(../../img/form/sp_form_img12.png);
  }
}

.item13-bg {
  background-image: url(../../img/form/form_img13.png);
}
@media only screen and (max-width: 39.9375em) {
  .item13-bg {
    background-image: url(../../img/form/sp_form_img13.png);
  }
}

.item14-bg {
  background-image: url(../../img/form/form_img14.png);
}
@media only screen and (max-width: 39.9375em) {
  .item14-bg {
    background-image: url(../../img/form/sp_form_img14.png);
  }
}

.item03-bg {
  border-right: 1px solid #dedede;
  border-bottom: 1px solid #dedede;
}

.item04-bg {
  border-bottom: 1px solid #dedede;
}

.item05-bg {
  border-right: 1px solid #dedede;
  border-bottom: 1px solid #dedede;
}

.item12-bg {
  border-bottom: 1px solid #dedede;
}

.item13-bg {
  border-right: 1px solid #dedede;
  border-bottom: 1px solid #dedede;
}

.item14-bg {
  border-right: 1px solid #dedede;
  border-bottom: 1px solid #dedede;
}

.location_select-body {
  display: none;
}

.help {
  position: relative;
  display: inline-block;
}
@media only screen and (max-width: 39.9375em) {
  .help {
    display: block;
  }
}
@media only screen and (max-width: 39.9375em) {
  .help {
    height: 0;
  }
}

.help-icon {
  cursor: pointer;
  color: #3FB7EB;
  margin-left: 5px;
}
.help-icon:before {
  margin-right: 5px;
  background-image: url(../../img/sprite.png);
  background-position: -156px -122px;
  width: 9px;
  height: 14px;
  background-size: 197px 179px;
  content: '';
  display: inline-block;
}
.ie8 .help-icon:before {
  background-image: url(../../img/sprite.png);
  background-position: -384px -220px;
  width: 9px;
  height: 14px;
}

@media only screen and (max-width: 39.9375em) {
  .sp_group.help-icon {
    display: inline !important;
  }
}

.help-close {
  cursor: pointer;
  position: absolute;
  background-image: url(../../img/sprite.png);
  background-position: -169px 0px;
  width: 28px;
  height: 27px;
  background-size: 197px 179px;
  top: -12px;
  right: -12px;
  content: '';
}
.help-close:hover {
  opacity: .7;
}
.ie8 .help-close {
  background-image: url(../../img/sprite.png);
  background-position: -340px -286px;
  width: 28px;
  height: 27px;
}

.help-body {
  z-index: 2;
  position: absolute;
  width: 275px;
  top: 25px;
  left: 0;
  display: none;
  border: 4px solid #dedede;
  padding: 20px;
  background-color: #fff;
}
@media only screen and (max-width: 39.9375em) {
  .help-body {
    position: relative;
  }
}
@media only screen and (max-width: 39.9375em) {
  .help-body {
    width: auto;
  }
}
@media only screen and (max-width: 39.9375em) {
  .help-body {
    top: 0;
  }
}

.radio_event {
  display: none;
}

.heading_a {
  border-bottom: 1px solid #dedede;
  font-size: 26px;
  padding-bottom: 20px;
}
.heading_a._add {
  border-bottom: none;
  font-size: 18px;
  padding-bottom: 0;
}
/* 20180920 */
.bl_heading_a_small { display: inline-block; font-size: 12px; margin: 16px 0 0 26px; }

.heading_z {
  border-bottom: 1px solid #dedede;
  font-size: 22px;
  padding-bottom: 20px;
}

@media only screen and (max-width: 39.9375em) {
  .heading_a {
    font-size: 20px;
  }
  /* 20180920 */
  .bl_heading_a_small { margin: 0; }
}

.heading_b {
  font-size: 20px;
  font-weight: normal;
}
@media only screen and (max-width: 39.9375em) {
  .heading_b {
    font-size: 16px;
  }
}

.heading_c {
  font-size: 14px;
}

.caption,
.caption-center {
  padding-top: 5px;
}

.caption-center {
  text-align: center;
}

.h_unit {
  position: relative;
}
.h_unit .more_right {
  position: absolute;
  right: 0px;
  top: 28%;
}
@media only screen and (max-width: 39.9375em) {
  .h_unit .more_right a {
    position: relative;
  }
  .h_unit .more_right a:after {
    margin-left: 5px;
    background-image: url(../../img/sprite.png);
    background-position: -104px -88px;
    width: 5px;
    height: 7px;
    background-size: 197px 179px;
    content: "";
    position: relative;
    top: -2px;
    line-height: 1;
    display: inline-block;
  }
}

/* @ list
 * ------------------------------------------------------------ */
.ie8 .table_headline tr:before, .ie8 .table_headline tr:after {
  content: " ";
  display: table;
}
.ie8 .table_headline tr:after {
  clear: both;
}
.ie8 .table_headline th, .ie8 .table_headline td {
  float: left;
}

.list_inline li {
  display: inline-block;
  margin-right: 8px;
}

.list_disc {
  list-style-type: disc;
  list-style-position: inside;
}
.list_disc li {
  text-indent: -1em;
  padding-left: 1em;
}

.list_decimal {
  list-style-type: decimal;
  list-style-position: inside;
}
.list_decimal li {
  text-indent: -1em;
  padding-left: 1em;
}

.list_disc-orange li,
.list_disc-gray li {
  text-indent: -1em;
  padding-left: 1em;
}
.list_disc-orange li:before,
.list_disc-gray li:before {
  background-image: url(../../img/sprite.png);
  background-position: -74px -166px;
  width: 8px;
  height: 8px;
  background-size: 197px 179px;
  display: inline-block;
  content: '';
  margin-right: 5px;
}
.ie8 .list_disc-orange li:before, .ie8
.list_disc-gray li:before {
  background-image: url(../../img/sprite.png);
  background-position: -208px -192px;
  width: 8px;
  height: 8px;
}

.list_disc-gray li:before {
  background-image: url(../../img/sprite.png);
  background-position: -65px -166px;
  width: 8px;
  height: 8px;
  background-size: 197px 179px;
}
.ie8 .list_disc-gray li:before {
  background-image: url(../../img/sprite.png);
  background-position: -208px -202px;
  width: 8px;
  height: 8px;
}

.list_a span {
  font-weight: bold;
}

.table_headline {
  width: 100%;
}
.table_headline th,
.table_headline td {
  display: block;
  text-align: left;
}
@media only screen and (max-width: 39.9375em) {
  .table_headline th {
    margin-bottom: 5px;
  }
}
.table_headline td {
  padding-bottom: 24px;
  margin-bottom: 24px;
  border-bottom: 1px dashed #dedede;
}
.table_headline .new,
.table_headline .category {
  margin-left: 4px;
  background-color: #eb1e23;
  color: #fff;
  font-size: 12px;
  padding: 2px 6px;
}
.table_headline .category-shunfeng {
  background-color: #3FB7EB;
}
.table_headline .category-suntech_powe_japan {
  background-color: #eb1e23;
}

.fragment_nav {
  text-align: center;
  width: 100%;
}
@media only screen and (max-width: 39.9375em) {
  .fragment_nav {
    display: table;
  }
}
.fragment_nav li {
  vertical-align: middle;
  display: inline-block;
  display: inline-block;
  margin-left: 13px;
  border: 1px solid #dedede;
}
@media only screen and (max-width: 39.9375em) {
  .fragment_nav li {
    display: table-cell;
  }
}
@media only screen and (max-width: 39.9375em) {
  .fragment_nav li {
    margin-left: -0.5em;
  }
}
.fragment_nav li:first-child {
  margin-left: 0px;
}
@media only screen and (max-width: 39.9375em) {
  .fragment_nav li:first-child {
    margin-left: -0.5em;
  }
}
@media only screen and (max-width: 39.9375em) {
  .fragment_nav li {
    border-right-width: 0;
  }
  .fragment_nav li:last-child {
    border-right-width: 1px;
  }
}
.fragment_nav span {
  text-align: left;
  display: inline-block;
}
.fragment_nav a {
  width: 206px;
  display: block;
  position: relative;
  padding: 10px;
}
.fragment_nav a:hover, .fragment_nav a:focus {
  background-image: -webkit-linear-gradient(transparent, rgba(255, 255, 255, 0.1) 40%, rgba(255, 255, 255, 0.2));
  background-image: linear-gradient(transparent, rgba(255, 255, 255, 0.1) 40%, rgba(255, 255, 255, 0.2));
}
.fragment_nav a:focus {
  outline: 0;
}
.fragment_nav a:active {
  box-shadow: inset 0 0 6px 1px rgba(0, 0, 0, 0.1);
}
.fragment_nav a[disabled] {
  opacity: .4;
  cursor: not-allowed;
}
@media only screen and (max-width: 39.9375em) {
  .fragment_nav a {
    width: auto;
  }
}
@media only screen and (max-width: 39.9375em) {
  .fragment_nav a {
    padding: 10px 20px 10px 10px;
  }
}
.fragment_nav a:after {
  background-image: url(../../img/sprite.png);
  background-position: -64px -159px;
  width: 8px;
  height: 5px;
  background-size: 197px 179px;
  content: '';
  display: inline-block;
  margin-left: 10px;
  position: relative;
  top: -2px;
}
.ie8 .fragment_nav a:after {
  background-image: url(../../img/sprite.png);
  background-position: -208px -231px;
  width: 8px;
  height: 5px;
}
@media only screen and (max-width: 39.9375em) {
  .fragment_nav a:after {
    position: absolute;
  }
}
@media only screen and (max-width: 39.9375em) {
  .fragment_nav a:after {
    top: 45%;
  }
}
@media only screen and (max-width: 39.9375em) {
  .fragment_nav a:after {
    right: 10px;
  }
}

/* @ button
 * ------------------------------------------------------------ */
.btn_a {
  text-align: center;
  position: relative;
  margin-bottom: 10px;
}
.btn_a a, .btn_a input, .btn_a button {
  border: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  cursor: pointer;
  display: block;
  background: #eb1e23;
  background-image: -webkit-linear-gradient(left, #D11B1F 0, #D11B1F 35px, #eb1e23 35px);
  background-image: linear-gradient(to right, #D11B1F 0, #D11B1F 35px, #eb1e23 35px);
  padding: 8px 10px 8px 40px;
  color: #FFF;
  border-radius: 4px;
  line-height: 1.6;
}
@media only screen and (max-width: 39.9375em) {
  .btn_a a, .btn_a input, .btn_a button {
    background-image: -webkit-linear-gradient(left, #D11B1F 0, #D11B1F 25px, #eb1e23 25px);
    background-image: linear-gradient(to right, #D11B1F 0, #D11B1F 25px, #eb1e23 25px);
    padding-right: 15px;
    padding-left: 35px;
  }
}
.btn_a a:before,
.btn_a button:before {
  background-image: url(../../img/sprite.png);
  background-position: -192px -78px;
  width: 5px;
  height: 9px;
  background-size: 197px 179px;
  display: inline-block;
  content: '';
  position: absolute;
  top: 15px;
  left: 16px;
}
.ie8 .btn_a a:before, .ie8
.btn_a button:before {
  background-image: url(../../img/sprite.png);
  background-position: -388px -56px;
  width: 5px;
  height: 9px;
}
@media only screen and (max-width: 39.9375em) {
  .btn_a a:before,
  .btn_a button:before {
    left: 8px;
  }
}
.btn_a a:hover {
  opacity: .8;
  text-decoration: none;
}

/* red_btn */
.btn_a-type01 a, .btn_a-type01 input, .btn_a-type01 button {
  background: #eb1e23;
  background-image: -webkit-linear-gradient(left, #D11B1F 0, #D11B1F 35px, #eb1e23 35px);
  background-image: linear-gradient(to right, #D11B1F 0, #D11B1F 35px, #eb1e23 35px);
}
@media only screen and (max-width: 39.9375em) {
  .btn_a-type01 a, .btn_a-type01 input, .btn_a-type01 button {
    background-image: -webkit-linear-gradient(left, #D11B1F 0, #D11B1F 25px, #eb1e23 25px);
    background-image: linear-gradient(to right, #D11B1F 0, #D11B1F 25px, #eb1e23 25px);
  }
}

/* gray_btn */
.btn_a-type02 a, .btn_a-type02 input, .btn_a-type02 button {
  background: #919191;
  background-image: -webkit-linear-gradient(left, #7F7F7F 0, #7F7F7F 35px, #919191 35px);
  background-image: linear-gradient(to right, #7F7F7F 0, #7F7F7F 35px, #919191 35px);
}
@media only screen and (max-width: 39.9375em) {
  .btn_a-type02 a, .btn_a-type02 input, .btn_a-type02 button {
    background-image: -webkit-linear-gradient(left, #7F7F7F 0, #7F7F7F 25px, #919191 25px);
    background-image: linear-gradient(to right, #7F7F7F 0, #7F7F7F 25px, #919191 25px);
  }
}

/* blue_btn */
.btn_a-type03 a, .btn_a-type03 input, .btn_a-type03 button {
  background: #3577e4;
  background-image: -webkit-linear-gradient(left, #145fdc 0, #145fdc 35px, #3577e4 35px);
  background-image: linear-gradient(to right, #145fdc 0, #145fdc 35px, #3577e4 35px);
}
@media only screen and (max-width: 39.9375em) {
  .btn_a-type03 a, .btn_a-type03 input, .btn_a-type03 button {
    background-image: -webkit-linear-gradient(left, #145fdc 0, #145fdc 25px, #3577e4 25px);
    background-image: linear-gradient(to right, #145fdc 0, #145fdc 25px, #3577e4 25px);
  }
}

.btn_b {
  margin-bottom: 10px;
}
.btn_b a, .btn_b input, .btn_b button {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  cursor: pointer;
  text-align: center;
  color: #333;
  background-color: #FFF;
  border: 1px solid #dedede;
  background-image: -webkit-linear-gradient( bottom , #F4F4F4 0%, #FFF 85%, #FFF 100%);
  background-image: -webkit-linear-gradient(bottom, #F4F4F4 0%, #FFF 85%, #FFF 100%);
  background-image: linear-gradient(to top, #F4F4F4 0%, #FFF 85%, #FFF 100%);
  display: block;
  padding: 11px 25px 10px 15px;
  position: relative;
}
.btn_b a:before,
.btn_b button:before {
  background-image: url(../../img/sprite.png);
  background-position: -115px -143px;
  width: 14px;
  height: 14px;
  background-size: 197px 179px;
  display: inline-block;
  content: '';
  position: absolute;
  top: 36%;
  right: 11px;
}
.btn_b a:hover {
  opacity: .8;
  text-decoration: none;
}

.btn_c {
  text-align: center;
  margin-bottom: 10px;
}
.btn_c a {
  border: 1px solid #333;
  display: inline-block;
  padding: 6px 20px;
  color: #333;
  position: relative;
}
.btn_c a:active {
  box-shadow: inset 0 0 6px 1px rgba(0, 0, 0, 0.1);
}
.btn_c a:hover {
  text-decoration: none;
}
.btn_c a:after {
  margin-left: 5px;
  background-image: url(../../img/sprite.png);
  background-position: -104px -88px;
  width: 5px;
  height: 7px;
  background-size: 197px 179px;
  content: "";
  position: relative;
  top: -2px;
  line-height: 1;
  display: inline-block;
}

.btn_d {
  margin-bottom: 10px;
}
.btn_d a {
  border: 1px solid #fff;
  border-radius: 4px;
  display: inline-block;
  padding: 6px 20px;
  color: #fff;
  position: relative;
}
.btn_d a:active {
  box-shadow: inset 0 0 6px 1px rgba(0, 0, 0, 0.1);
}
.btn_d a:hover {
  text-decoration: none;
}
.btn_d a:after {
  margin-left: 5px;
  background-image: url(../../img/sprite.png);
  background-position: -192px -78px;
  width: 5px;
  height: 9px;
  background-size: 197px 179px;
  content: "";
  position: relative;
  top: 0px;
  line-height: 1;
  display: inline-block;
}
.ie8 .btn_d a:after {
  background-image: url(../../img/sprite.png);
  background-position: -388px -56px;
  width: 5px;
  height: 9px;
}

.btn_e {
  text-align: left;
  margin-bottom: 10px;
}
.btn_e a {
  border-radius: 4px;
  border: 1px solid #333;
  display: inline-block;
  padding: 10px 42px;
  color: #333;
  position: relative;
}
.btn_e a:active {
  box-shadow: inset 0 0 6px 1px rgba(0, 0, 0, 0.1);
}
.btn_e a:hover {
  text-decoration: none;
}
.btn_e a:after {
  margin-left: 5px;
  background-image: url(../../img/sprite.png);
  background-position: -192px -88px;
  width: 5px;
  height: 8px;
  background-size: 197px 179px;
  content: "";
  position: relative;
  top: -2px;
  line-height: 1;
  display: inline-block;
}
.ie8 .btn_e a:after {
  background-image: url(../../img/sprite.png);
  background-position: -388px -67px;
  width: 5px;
  height: 8px;
}

.btn_f {
  border: 1px solid #dedede;
}
.btn_f a {
  font-size: 12px;
  display: block;
  padding: 15px 25px;
  position: relative;
}
@media only screen and (max-width: 39.9375em) {
  .btn_f a {
    font-size: 14px;
  }
}
.btn_f a:active {
  box-shadow: inset 0 0 6px 1px rgba(0, 0, 0, 0.1);
}
.btn_f a.current, .btn_f a:hover {
  background-color: #F5F5F5;
  color: #333;
  text-decoration: none;
}
.btn_f a.current, .btn_f a:hover {
  text-decoration: none;
}
.btn_f a:after {
  background-image: url(../../img/sprite.png);
  background-position: -104px -88px;
  width: 5px;
  height: 7px;
  background-size: 197px 179px;
  content: "";
  position: absolute;
  top: 42%;
  right: 20px;
  display: inline-block;
}

/* @ table
 * ------------------------------------------------------------ */
.table_a {
  margin-top: 10px;
  width: auto;
  margin-bottom: 10px;
}
.table_a table {
  width: 100%;
  max-width: 100%;
  border-bottom: solid 1px #dedede;
  border-right: solid 1px #dedede;
}
.table_a th,
.table_a td {
  text-align: left;
  vertical-align: middle;
  padding: 11px 19px;
}
.colspanbox{
  text-align: center;
  vertical-align: middle;
  padding: 1px 2px;
}
@media only screen and (max-width: 39.9375em) {
	.table_a table {
		max-width: none;
	}

  .table_a th,
  .table_a td {
    padding: 1px 2px;
  }
}
.table_a th {
  border-left: solid 1px #dedede;
  border-top: solid 1px #dedede;
  background-color: #fbfbfb;
  width: 235px;
  font-weight: normal;
}
.un_company_data th {
  width: 210px;
}
.colspanbox{
  border-left: solid 1px #dedede;
  border-top: solid 1px #dedede;
  background-color: #fbfbfb;
  width: 235px;
  font-weight: normal;
  text-align: center;
}
.table_a thead th {
  background-color: #ECECEC;
  width: auto;
}
.table_a td {
  border-left: solid 1px #dedede;
  border-top: solid 1px #dedede;
  background-color: #FFF;
  /*text-align: center;*/
}
.table_a td img.bl_table_a_img_center { display: block; margin: 0 auto; }
.table_a .bg_none {
  background-color: #fff;
  border-top-width: 0;
  border-left-width: 0;
}
.table_a .center {
  text-align: center;
}
.table_a a:hover {
  opacity: .7;
}

.table_a.colum th {
  width: auto;
}

.table_a-th_small th {
  width: 178px;
}
@media only screen and (max-width: 39.9375em) {
  .table_a-th_small th {
    width: 50%;
  }
}

.table_a-line4 thead th,
.table_a-line4 thead td,
.table_a-line4 td {
  text-align: center;
}
.table_a-line4 th {
  width: auto;
  /*white-space: nowrap;*/
}
.table_a-line4 th,
.table_a-line4 td {
  padding: 11px 10px;
}
@media only screen and (max-width: 39.9375em) {
  .table_a-line4 th,
  .table_a-line4 td {
    padding: 11px 10px;
  }
}

.ie8 .table_b {
  width: auto;
  margin-bottom: 10px;
}
.ie8 .table_b table {
  width: 100%;
  max-width: 100%;
  border-bottom: solid 2px #fff;
  border-right: solid 2px #fff;
}
.ie8 .table_b table span {
  font-size: 12px;
}
.ie8 .table_b th,
.ie8 .table_b td {
  line-height: 1.4;
  text-align: left;
  vertical-align: top;
  padding: 8px 10px 10px;
}
.ie8 .table_b th {
  border-left: solid 2px #fff;
  border-top: solid 2px #fff;
  background-color: #efefef;
  width: 178px;
  font-weight: bold;
  color: #333;
}
.ie8 .table_b td {
  border-left: solid 2px #fff;
  border-top: solid 2px #fff;
  background-color: #FBFBFB;
}
.ie8 .table_b .bg_type02 th {
  background-color: #FDF7E0;
}
.ie8 .table_b .bg_type02 td {
  background-color: #FFFDF5;
}

@media only screen and (min-width: 39.9375em) {
  .table_b {
    width: auto;
    margin-bottom: 10px;
  }
  .table_b table {
    width: 100%;
    max-width: 100%;
    border-bottom: solid 2px #fff;
    border-right: solid 2px #fff;
  }
  .table_b table span {
    font-size: 12px;
  }
  .table_b th,
  .table_b td {
    line-height: 1.4;
    text-align: left;
    vertical-align: top;
    padding: 8px 10px 10px;
  }
  .table_b th {
    border-left: solid 2px #fff;
    border-top: solid 2px #fff;
    background-color: #efefef;
    width: 178px;
    font-weight: bold;
    color: #333;
  }
  .table_b td {
    border-left: solid 2px #fff;
    border-top: solid 2px #fff;
    background-color: #FBFBFB;
  }
  .table_b .bg_type02 th {
    background-color: #FDF7E0;
  }
  .table_b .bg_type02 td {
    background-color: #FFFDF5;
  }
}
@media only screen and (max-width: 39.9375em) {
  .table_b table {
    width: 100%;
    max-width: 100%;
  }
  .table_b th, .table_b td {
    display: block;
    text-align: left;
    vertical-align: top;
    padding: 0px 10px 10px;
  }
  .table_b th {
    padding-top: 10px;
  }
}
.table_c {
  width: auto;
  margin-bottom: 10px;
}
.table_c table {
  width: 100%;
  max-width: 100%;
}
.table_c th,
.table_c td {
  text-align: left;
  vertical-align: top;
  margin-bottom: 10px;
}

.table_d {
  margin-top: 10px;
  width: auto;
  margin-bottom: 10px;
}
.table_d table {
  width: 100%;
  max-width: 100%;
  border-bottom: solid 1px #dedede;
  border-right: solid 1px #dedede;
}
.table_d th,
.table_d td {
  text-align: left;
  vertical-align: middle;
  padding: 11px 19px;
}
@media only screen and (max-width: 39.9375em) {
  .table_d th,
  .table_d td {
    padding: 11px 10px;
  }
}
.table_d th {
  border-left: solid 1px #dedede;
  border-top: solid 1px #dedede;
  background-color: #fbfbfb;
  width: 135px;
  font-weight: normal;
}
.table_d thead th {
  background-color: #ECECEC;
  width: auto;
}
.table_d td {
  border-left: solid 1px #dedede;
  border-top: solid 1px #dedede;
  background-color: #FFF;
}
.table_d .bg_none {
  background-color: #fff;
  border-top-width: 0;
  border-left-width: 0;
}
.table_d .center {
  text-align: center;
}
.table_d a:hover {
  opacity: .7;
}

/* @ icon
 * ------------------------------------------------------------ */
.target_blank:after {
  background-image: url(../../img/sprite.png);
  background-position: -185px -143px;
  width: 10px;
  height: 10px;
  background-size: 197px 179px;
  width: 10px;
  height: 10px;
  margin-left: 5px;
  display: inline-block;
  content: '';
}
.ie8 .target_blank:after {
  background-image: url(../../img/sprite.png);
  background-position: -384px -236px;
  width: 10px;
  height: 10px;
}

.icon_pdf:before {
  background-image: url(../../img/sprite.png);
  background-position: -64px -143px;
  width: 13px;
  height: 15px;
  background-size: 197px 179px;
  margin-right: 5px;
  display: inline-block;
  content: '';
  top: 2px;
  position: relative;
}
.ie8 .icon_pdf:before {
  background-image: url(../../img/sprite.png);
  background-position: -180px -332px;
  width: 13px;
  height: 15px;
}

.icon_pdf-after:after {
  background-image: url(../../img/sprite.png);
  background-position: -64px -143px;
  width: 13px;
  height: 15px;
  background-size: 197px 179px;
  margin-left: 5px;
  display: inline-block;
  content: '';
  top: 2px;
  position: relative;
}
.ie8 .icon_pdf-after:after {
  background-image: url(../../img/sprite.png);
  background-position: -180px -332px;
  width: 13px;
  height: 15px;
}

.icon_zip:before {
  background-image: url(../../img/sprite.png);
  background-position: -185px -124px;
  width: 12px;
  height: 15px;
  background-size: 197px 179px;
  margin-right: 5px;
  display: inline-block;
  content: '';
  top: 2px;
  position: relative;
}
.ie8 .icon_zip:before {
  background-image: url(../../img/sprite.png);
  background-position: -166px -332px;
  width: 12px;
  height: 15px;
}

.icon_zip span,
.icon_pdf-after span,
.icon_pdf span {
  font-size: 12px;
}
@media only screen and (max-width: 39.9375em) {
  .icon_zip span,
  .icon_pdf-after span,
  .icon_pdf span {
    font-size: 1rem;
  }
}

.icon_right-red {
  position: relative;
}
.icon_right-red:after {
  margin-left: 5px;
  background-image: url(../../img/sprite.png);
  background-position: -104px -88px;
  width: 5px;
  height: 7px;
  background-size: 197px 179px;
  content: "";
  position: relative;
  top: -2px;
  line-height: 1;
  display: inline-block;
}

.free_dial {
  position: relative;
  font-size: 26px;
  font-weight: bold;
  letter-spacing: -.2px;
  font-family: Myriad, Helvetica, Arial, sans-serif;
  line-height: 1.4;
}
@media only screen and (max-width: 39.9375em) {
  .free_dial {
    font-size: 2rem;
  }
}
.free_dial:before {
  background-image: url(../../img/sprite.png);
  background-position: 0px -143px;
  width: 33px;
  height: 22px;
  background-size: 197px 179px;
  margin-right: 5px;
  display: inline-block;
  content: '';
}
.ie8 .free_dial:before {
  background-image: url(../../img/sprite.png);
  background-position: -28px -332px;
  width: 33px;
  height: 22px;
}

.sp_free_dial-box {
  background-color: #fff;
  margin: 0 20px 30px;
  border: solid 1px #dedede;
  padding: 16px 10px 14px;
  text-align: center;
}

.sp_free_dial {
  position: relative;
  font-size: 20px;
  font-weight: bold;
  letter-spacing: -.2px;
  font-family: Myriad, Helvetica, Arial, sans-serif;
  line-height: 1;
}
.sp_free_dial:before {
  background-image: url(../../img/sprite.png);
  background-position: -130px -143px;
  width: 21px;
  height: 14px;
  background-size: 197px 179px;
  margin-right: 5px;
  display: inline-block;
  content: '';
}

.img_expansion {
  margin: 0;
  padding: 0;
  display: block;
  position: relative;
  z-index: 0;
}
.img_expansion:hover {
  opacity: .7;
}
.img_expansion > img {
  width: 100%;
  height: auto;
  display: block;
  position: relative;
  z-index: 0;
}
.img_expansion:after {
  background-image: url(../../img/sprite.png);
  background-position: -73px -107px;
  width: 30px;
  height: 30px;
  background-size: 197px 179px;
  content: '';
  display: block;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 1;
}
.ie8 .img_expansion:after {
  background-image: url(../../img/sprite.png);
  background-position: -156px -286px;
  width: 30px;
  height: 30px;
}

.ie8 .img_expansion {
  z-index: -1;
}
.ie8 .img_expansion > img {
  z-index: -1;
}
.ie8 .img_expansion:after {
  z-index: 1;
}

.back_icon:before, .back_link:before {
  background-image: url(../../img/sprite.png);
  background-position: -192px -101px;
  width: 5px;
  height: 8px;
  background-size: 197px 179px;
  content: '';
  display: inline-block;
  margin-right: 5px;
}
.ie8 .back_icon:before, .ie8 .back_link:before {
  background-image: url(../../img/sprite.png);
  background-position: -388px -77px;
  width: 5px;
  height: 8px;
}
@media only screen and (max-width: 39.9375em) {
  .back_icon:before, .back_link:before {
    background-image: url(../../img/sprite.png);
    background-position: -104px -80px;
    width: 5px;
    height: 7px;
    background-size: 197px 179px;
  }
}

.back_link {
  font-size: 14px;
  border-bottom: 1px solid #dedede;
  padding-bottom: 12px;
  padding-top: 10px;
  margin-bottom: 10px;
}

/* @ accordion
 * ------------------------------------------------------------ */
.accordion .is_expanded {
  border-bottom: dashed 1px #dedede;
}
.accordion .is_expanded .heading_img-title:after,
.accordion .is_expanded .heading-unit-title:after {
  background-image: url(../../img/sprite.png);
  background-position: -185px -140px;
  width: 10px;
  height: 1px;
  background-size: 197px 179px;
  top: 46%;
}
.accordion .is_expanded .heading_img-title.line1:after,
.accordion .is_expanded .heading-unit-title.line1:after {
  top: 60%;
}
.accordion .media {
  padding-top: 10px;
  border-bottom-width: 0;
  margin-bottom: 0;
}
.accordion .media .media-img {
  margin-bottom: 20px;
}

.accordion_submenu {
  padding-top: 15px;
}
.accordion_submenu p {
  margin-bottom: 10px;
}
.accordion_submenu .btn_c {
  margin-bottom: 20px;
}
.accordion_submenu > .color_box_a, .accordion_submenu > .color_box_a-border {
  margin-top: 0;
  margin-bottom: 20px;
}

.accordion_submenu-last {
  border-bottom: solid 1px #dedede;
}

.accordion_submenu {
  display: none;
}

.heading_img-unit,
.heading-unit {
  border-top: solid 1px #dedede;
}
.heading_img-unit:before, .heading_img-unit:after,
.heading-unit:before,
.heading-unit:after {
  content: " ";
  display: table;
}
.heading_img-unit:after,
.heading-unit:after {
  clear: both;
}

.heading_img-unit-last,
.heading-unit-last {
  border-bottom: solid 1px #dedede;
}

.heading_img-left {
  float: left;
  width: 100px;
  margin-right: 15px;
}

.heading_img-title,
.heading-unit-title {
  overflow: hidden;
  padding: 10px 0;
  margin-bottom: 0;
  line-height: 1.3;
  position: relative;
}
.heading_img-title:after,
.heading-unit-title:after {
  margin-left: 5px;
  background-image: url(../../img/sprite.png);
  background-position: -42.5px -166px;
  width: 10px;
  height: 10px;
  background-size: 197px 179px;
  top: 43%;
  content: "";
  position: absolute;
  right: 10px;
  line-height: 1;
  display: inline-block;
}
.heading_img-title.line1,
.heading-unit-title.line1 {
  padding-top: 23px;
}
.heading_img-title.line1:after,
.heading-unit-title.line1:after {
  top: 55%;
}

.heading-unit-title {
  padding: 20px 30px 20px 0;
  font-size: 16px;
}
.heading-unit-title span {
  vertical-align: middle;
  color: #eb1e23;
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-size: 25px;
  font-weight: bold;
  margin-right: 5px;
  margin-top: -3px;
  display: inline-block;
}

.accordion_type02 .heading_img-unit,
.accordion_type02 .heading-unit {
  border-top: dashed 1px #dedede;
}
.accordion_type02 .heading_img-unit-last,
.accordion_type02 .heading-unit-last {
  border-bottom: dashed 1px #dedede;
}
.accordion_type02 .heading_img-title,
.accordion_type02 .heading-unit-title {
  line-height: 1.6;
}
.accordion_type02 .heading_img-title:after,
.accordion_type02 .heading-unit-title:after {
  display: none;
}
@media only screen and (max-width: 39.9375em) {
  .accordion_type02 .heading_img-title:after,
  .accordion_type02 .heading-unit-title:after {
    display: inline-block;
  }
}

.icon_q {
  color: #3577E4;
  text-indent: -2em;
  padding-left: 2em;
}
.icon_q:before {
  margin-right: 10px;
  background-image: url(../../img/sprite.png);
  background-position: -169px -53px;
  width: 24px;
  height: 24px;
  background-size: 197px 179px;
  content: "";
  position: relative;
  top: 5px;
  line-height: 1;
  display: inline-block;
}
.ie8 .icon_q:before {
  background-image: url(../../img/sprite.png);
  background-position: -308px -218px;
  width: 24px;
  height: 24px;
}

.icon_a {
  margin-left: 10px;
  position: relative;
  padding-left: 2em;
}
.icon_a:before {
  background-image: url(../../img/sprite.png);
  background-position: -169px -28px;
  width: 24px;
  height: 24px;
  background-size: 197px 179px;
  content: "";
  position: absolute;
  top: 0px;
  left: -10px;
  line-height: 1;
  display: inline-block;
}
.ie8 .icon_a:before {
  background-image: url(../../img/sprite.png);
  background-position: -282px -218px;
  width: 24px;
  height: 24px;
}

.accordion_type03 .is_expanded {
  border-bottom: none;
}
.accordion_type03 .is_expanded .heading_img-title:after,
.accordion_type03 .is_expanded .heading-unit-title:after {
  background-image: url(../../img/sprite.png);
  background-position: -185px -140px;
  width: 10px;
  height: 1px;
  background-size: 197px 179px;
  top: 46%;
}
.accordion_type03 .accordion_submenu {
  padding-top: 0;
}

/* @ ステップ+アンカーリンク
 * ------------------------------------------------------------ */
.step_ank_link {
  background: #fff url(../../img/common/step_link_bg.png) 0 0 repeat-y;
  border-radius: 4px;
  border: 1px solid #dedede;
  display: table;
  width: 100%;
}
@media only screen and (max-width: 39.9375em) {
  .step_ank_link {
    background-image: none;
  }
}
@media only screen and (max-width: 39.9375em) {
  .step_ank_link {
    display: block;
  }
}
.step_ank_link a {
  display: block;
  color: #333;
}
.step_ank_link a:hover {
  text-decoration: none;
}

.step_ank_link-head {
  vertical-align: middle;
  display: table-cell;
  width: 165px;
  font-weight: bold;
  position: relative;
}
@media only screen and (max-width: 39.9375em) {
  .step_ank_link-head {
    display: block;
  }
}
@media only screen and (max-width: 39.9375em) {
  .step_ank_link-head {
    width: auto;
  }
}
@media only screen and (max-width: 39.9375em) {
  .step_ank_link-head {
    background: #fff url(../../img/part/step_link_bg.png) 0 0 repeat-y;
    display: table;
    width: 100%;
  }
  .step_ank_link-head:after {
    background-image: url(../../img/sprite.png);
    background-position: -91px -159px;
    width: 7px;
    height: 5px;
    background-size: 197px 179px;
    content: "";
    position: absolute;
    top: 45%;
    right: 10px;
    display: inline-block;
  }
}

.step_ank_link-num {
  padding-left: 17px;
  padding-right: 17px;
  background-color: #eb1e23;
  color: #fff;
  display: table-cell;
}
@media only screen and (max-width: 39.9375em) {
  .step_ank_link-num {
    width: 45px;
  }
}

.step_ank_link-title {
  margin: 0;
  padding: 10px 10px 10px 20px;
  display: table-cell;
}
@media only screen and (max-width: 39.9375em) {
  .step_ank_link-title {
    border-bottom: 1px dashed #dedede;
    background-color: inherit;
  }
}

.step_ank_link-body {
  display: table-cell;
  vertical-align: middle;
  padding: 13px 0px;
  position: relative;
}
@media only screen and (max-width: 39.9375em) {
  .step_ank_link-body {
    display: block;
  }
}
.step_ank_link-body:after {
  background-image: url(../../img/sprite.png);
  background-position: -64px -159px;
  width: 8px;
  height: 5px;
  background-size: 197px 179px;
  content: "";
  position: absolute;
  top: 50%;
  right: 10px;
  display: inline-block;
}
.ie8 .step_ank_link-body:after {
  background-image: url(../../img/sprite.png);
  background-position: -208px -231px;
  width: 8px;
  height: 5px;
}
.step_ank_link-body p {
  border-left: 1px dashed #dedede;
  padding: 0 40px 0 20px;
}
@media only screen and (max-width: 39.9375em) {
  .step_ank_link-body p {
    border-left-width: 0;
    padding: 0 20px 0 20px;
  }
}
@media only screen and (max-width: 39.9375em) {
  .step_ank_link-body:after {
    display: none;
  }
}

.next_step:after {
  content: '';
  display: block;
  text-align: center;
  height: 0;
  width: 0;
  border-left: 11px solid transparent;
  border-right: 11px solid transparent;
  border-top: 12px solid #DEDEDE;
  margin: 9px auto;
}
@media only screen and (max-width: 39.9375em) {
  .next_step:after {
    margin-top: 0px;
    height: 0;
    width: 0;
    border-left: 25px solid transparent;
    border-right: 25px solid transparent;
    border-top: 20px solid #DEDEDE;
  }
}

/* @ video
 * ------------------------------------------------------------ */
/*doc
=========================================
---
title: youtube埋め込み(ワンカラム)
name: video_container
category: part
---


```html_example
<section class="section_group">
  <div class="video_container">
    <iframe width="640" height="360" src="https://www.youtube.com/embed/erFsPN5e4g0" frameborder="0" allowfullscreen></iframe>
  </div>
</section>
```
*/
.video_container {
  position: relative;
  overflow: hidden;
  padding-bottom: 70%;
  height: 0;
}

.video_container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.section-products-system-nav-group .indoor,
.section-products-system-nav-group .outdoor {
  background-position: 12px center;
  background-repeat: no-repeat;
}
.section-products-system-nav-group .indoor {
  background-image: url(/img/products/system/nav_indoor.gif);
}
.section-products-system-nav-group .outdoor {
  background-image: url(/img/products/system/nav_outdoor.gif);
}
.section-products-system-nav-group a {
  padding: 0 10px 0 98px;
  height: 82px;
  line-height: 82px;
  text-align: left;
}

@media only screen and (max-width: 39.9375em) {
  .section-products-system-nav-group .indoor,
  .section-products-system-nav-group .outdoor {
    background-position: 4px center;
    background-repeat: no-repeat;
  }
  .section-products-system-nav-group .indoor {
    background-image: url(/img/products/system/sp_nav_indoor.gif);
  }
}
@media only screen and (max-width: 39.9375em) and (-webkit-min-device-pixel-ratio: 2) {
  .section-products-system-nav-group .indoor {
    background-image: url(/img/products/system/sp_nav_indoor_2x.gif);
    background-size: 31px 24px;
    -webkit-background-size: 31px 24px;
  }
}
@media only screen and (max-width: 39.9375em) {
  .section-products-system-nav-group .outdoor {
    background-image: url(/img/products/system/sp_nav_outdoor.gif);
  }
}
@media only screen and (max-width: 39.9375em) and (-webkit-min-device-pixel-ratio: 2) {
  .section-products-system-nav-group .outdoor {
    background-image: url(/img/products/system/sp_nav_outdoor_2x.gif);
    background-size: 31px 24px;
    -webkit-background-size: 31px 24px;
  }
}
@media only screen and (max-width: 39.9375em) {
  .section-products-system-nav-group a {
    padding: 0 10px 0 42px;
    height: 42px;
    line-height: 42px;
  }
}
.main-cv-box-group {
  padding: 35px 65px;
}
.main-cv-box-group:before, .main-cv-box-group:after {
  content: " ";
  display: table;
}
.main-cv-box-group:after {
  clear: both;
}
.main-cv-box-group .cell-group {
  padding-right: 50px;
  width: 50%;
  float: left;
}
/* 2018.09.14 */
.main-cv-box-group .cell-group__single {
  padding-right: 0;
  float: none;
  margin: 0 auto;
}

.main-cv-box-group .cell-group + .cell-group {
  border-left: dashed 1px #dedede;
  padding-left: 50px;
  padding-right: 0;
}
.main-cv-box-group .title {
  margin-bottom: 16px;
  width: 210px;
  height: 36px;
  display: block;
  background-position: 0 0;
  background-repeat: no-repeat;
  display: block;
  font-size: 100%;
  line-height: normal;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  color: transparent;
  position: relative;
}
/* 2018.09.14 */
.main-cv-box-group .cell-group__single .title {
  margin: 0 auto 16px;
}

.main-cv-box-group .title.yen {
  background-image: url(/img/common/cv_yen.jpg);
}
.main-cv-box-group .title.battery {
  background-image: url(/img/common/cv_battery.jpg);
}

.ie8 .main-cv-box-group .title {
  font-size: 0;
  color: transparent !important;
}

@media only screen and (max-width: 39.9375em) {
  .main-cv-box-group {
    padding: 20px;
  }
  .main-cv-box-group .cell-group {
    padding-left: 0;
    padding-right: 0;
    width: auto;
    float: none;
  }
  .main-cv-box-group .cell-group + .cell-group {
    border-top: dashed 1px #dedede;
    border-left: none;
    margin-top: 20px;
    padding-top: 20px;
    padding-left: 0;
    padding-right: 0;
  }
  .main-cv-box-group .title {
    margin-bottom: 14px;
    min-height: 34px;
    width: auto;
    height: auto;
    display: block;
    font-size: 16px;
    font-weight: bold;
    color: #666;
    text-indent: 0;
    position: relative;
    overflow: visible;
  }
  .main-cv-box-group .title.yen, .main-cv-box-group .title.battery {
    background-image: none;
  }
  .main-cv-box-group .title.yen:before, .main-cv-box-group .title.battery:before {
    content: "";
    background-position: 0 0;
    background-repeat: no-repeat;
    margin-right: 10px;
    width: 34px;
    height: 34px;
    vertical-align: middle;
    display: inline-block;
    position: relative;
    top: -2px;
  }
  .main-cv-box-group .title.yen:before {
    background-image: url(/common/images_sp/cv_icon_yen.gif);
  }
  .main-cv-box-group .title.battery:before {
    background-image: url(/common/images_sp/cv_icon_battery.gif);
  }
}
.features-nagano-map-info-group {
  margin: 20px 0 0;
  border-collapse: separate;
  border-spacing: 0;
  border: none;
  display: table;
}
.features-nagano-map-info-group .cell-group {
  padding-right: 10px;
  width: 50%;
  font-size: 14px;
  text-align: left;
  vertical-align: top;
  display: table-cell;
}
.features-nagano-map-info-group .cell-group + .cell-group {
  padding-left: 10px;
  padding-right: 0;
}
.features-nagano-map-info-group .group {
  display: table-row;
}
.features-nagano-map-info-group .group + .group .cell-group {
  padding-top: 20px;
}
.features-nagano-map-info-group h2 {
  margin: 0 0 10px;
  padding: 0;
  font-size: 16px;
  font-weight: bold;
  line-height: normal;
  color: #F6292E;
}
.features-nagano-map-info-group h2 img {
  margin-right: 5px;
  vertical-align: middle;
  position: relative;
  top: -2px;
}

@media only screen and (max-width: 39.9375em) {
  .features-nagano-map-info-group {
    display: block;
  }
  .features-nagano-map-info-group .cell-group {
    padding-right: 0;
    width: auto;
    display: block;
  }
  .features-nagano-map-info-group .cell-group + .cell-group {
    margin-top: 15px;
    padding-left: 0;
    padding-right: 0;
  }
  .features-nagano-map-info-group .group {
    display: block;
  }
  .features-nagano-map-info-group .group + .group {
    margin-top: 15px;
  }
  .features-nagano-map-info-group .group + .group .cell-group {
    padding-top: 0;
  }
}
.section-headline-group .new,
.section-headline-group .category {
  margin-left: 4px;
  background-color: #eb1e23;
  color: #fff;
  font-size: 12px;
  padding: 2px 6px;
}
.section-headline-group .category-shunfeng {
  background-color: #3FB7EB;
}
.section-headline-group .category-suntech_powe_japan {
  background-color: #eb1e23;
}
.section-headline-group ul,
.section-headline-group li,
.section-headline-group li > span {
  display: block;
}
.section-headline-group li {
  border-bottom: dashed 1px #dedede;
  padding-bottom: 24px;
}
.section-headline-group li + li {
  margin-top: 24px;
}
.section-headline-group li > span + span {
  margin-top: 5px;
}

@media only screen and (max-width: 39.9375em) {
  .section-headline-group li {
    padding-bottom: 8px;
  }
  .section-headline-group li + li {
    margin-top: 8px;
  }
}
.ie-prompt {
  text-align: center;
  margin: 0px auto 0px;
  padding: 10px;
  background-color: #ccc;
  font-size: medium;
  line-height: normal;
  color: #FFF;
  z-index: 400;
  position: relative;
}
.ie-prompt p {
  font-size: 87.5%;
  line-height: 1.85714;
}

.text_left {
  text-align: left !important;
}

.text_right {
  text-align: right !important;
}

.pc_group {
  display: block;
}
@media only screen and (max-width: 39.9375em) {
  .pc_group {
    display: none;
  }
}

.sp_group {
  display: none;
}
@media only screen and (max-width: 39.9375em) {
  .sp_group {
    display: block;
  }
}

.pc_cb {
  clear: both;
}
@media only screen and (max-width: 39.9375em) {
  .pc_cb {
    clear: none;
  }
}

.cb {
  clear: both;
}

.sp_cb {
  clear: both;
}
@media only screen and (max-width: 39.9375em) {
  .sp_cb {
    clear: none;
  }
}

.bdb_n {
  border-bottom-width: 0 !important;
}

.pull_left {
  float: left;
}

.pull_right {
  float: right;
}

.text_center {
  text-align: center;
}

.bold {
  font-weight: bold;
}

.text_small {
  color: #777777;
  font-size: 12px;
}

.text {
  margin-bottom: 20px;
}

.color_blue {
  color: #3FB7EB;
}

.color_red {
  color: #eb1e23;
}

.color_red_bold {
  color: #eb1e23;
}

.color_gray {
  color: #777777;
}

.img_100p {
  width: 100%;
}

.is_visible-sp {
  display: none !important;
}
@media only screen and (max-width: 39.9375em) {
  .is_visible-sp {
    display: block !important;
  }
}

@media only screen and (max-width: 39.9375em) {
  .is_hidden-sp {
    display: none !important;
  }
}

.is_overlap {
  display: block;
}

.mt0 {
  margin-top: 0 !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb05 {
  margin-bottom: 5px !important;
}

.mt-10 {
  margin-top: -10px !important;
}

@media only screen and (max-width: 39.9375em) {
  .mt0-sp {
    margin-top: 0;
  }
}

.w10p {
  width: 10% !important;
}

.w20p {
  width: 20% !important;
}

.w30p {
  width: 30% !important;
}

.w40p {
  width: 40% !important;
}

.w50p {
  width: 50% !important;
}

.w60p {
  width: 60% !important;
}

.w70p {
  width: 100%;
}

.w80p {
  width: 80% !important;
}

.w90p {
  width: 90% !important;
}

.w100p {
  width: 100% !important;
}

@media only screen and (max-width: 39.9375em) {
  .w10p-sp {
    width: 10% !important;
  }

  .w20p-sp {
    width: 20% !important;
  }

  .w30p-sp {
    width: 30% !important;
  }

  .w40p-sp {
    width: 40% !important;
  }

  .w50p-sp {
    width: 50% !important;
  }

  .w60p-sp {
    width: 60% !important;
  }

  .w70p-sp {
    width: 70% !important;
  }

  .w80p-sp {
    width: 80% !important;
  }

  .w90p-sp {
    width: 90% !important;
  }

  .w100p-sp {
    width: 100% !important;
  }
}
/* @  MAIN VISUAL
 * ------------------------------------------------------------ */
.top_main_visual {
  position: relative;
}

.top_main_visual .main_visual-body {
  margin-left: auto;
  margin-right: auto;
  max-width: 1000px;
  width: 100%;
  position: relative;
  text-align: left;
}
.top_main_visual .main_visual-body:before, .top_main_visual .main_visual-body:after {
  content: " ";
  display: table;
}
.top_main_visual .main_visual-body:after {
  clear: both;
}

.main_visual_btn01,
.main_visual_btn02,
.main_visual_btn03,
.main_visual_btn04 {
  position: absolute;
}
.main_visual_btn01 a:hover,
.main_visual_btn02 a:hover,
.main_visual_btn03 a:hover,
.main_visual_btn04 a:hover {
  opacity: .7;
}

.main_visual_btn01 {
  top: 40px;
  left: -3px;
}

.main_visual_btn02 {
  top: 154px;
  left: 205px;
}

.main_visual_btn03 {
  top: 57px;
  right: -13px;
}

.main_visual_btn04 {
  top: 285px;
  right: 49px;
}

.top_main_slide_group {
  overflow: hidden;
}

.top_main_slide_group-inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  background: url(../../img/top/slide_bg.png) 0 0 repeat;
}

.top_main_slide {
  position: relative;
  overflow: hidden;
  margin-left: auto;
  margin-right: auto;
  max-width: 1000px;
  width: 100%;
  position: relative;
  text-align: left;
}
.top_main_slide:before, .top_main_slide:after {
  content: " ";
  display: table;
}
.top_main_slide:after {
  clear: both;
}

.top_main_slide_close {
  margin-top: 20px;
  margin-bottom: 15px;
  display: block;
  float: right;
  cursor: pointer;
}
.top_main_slide_close:before {
  background-image: url(../../img/sprite.png);
  background-position: -110px -122px;
  width: 21px;
  height: 20px;
  background-size: 197px 179px;
  content: "";
  display: inline-block;
  margin-right: 7px;
  vertical-align: middle;
  position: relative;
  top: 0;
}
.ie8 .top_main_slide_close:before {
  background-image: url(../../img/sprite.png);
  background-position: -107px -332px;
  width: 21px;
  height: 20px;
}

.top_main_slide_thum {
  clear: both;
}
.top_main_slide_thum ul {
  padding: 0 1px;
  margin-bottom: 10px;
  display: table;
  width: 100%;
}

.top_main_slide_thum-item {
  display: table-cell;
  border: 1px solid #dedede;
  border-left-width: 0;
}
.top_main_slide_thum-item:first-child {
  border-left-width: 1px;
}
.top_main_slide_thum-item a {
  color: #333;
  text-decoration: none;
  display: block;
  background-color: #fff;
  padding: 10px 10px 9px;
}
.top_main_slide_thum-item a:before, .top_main_slide_thum-item a:after {
  content: " ";
  display: table;
}
.top_main_slide_thum-item a:after {
  clear: both;
}
.top_main_slide_thum-item a:hover, .top_main_slide_thum-item a.selected {
  border: 2px solid #eb1e23;
  margin: -2px;
  z-index: 100;
  position: relative;
}
.top_main_slide_thum-item a:hover.thum01, .top_main_slide_thum-item a.selected.thum01 {
  border-color: #eb1e23;
}
.top_main_slide_thum-item a:hover.thum02, .top_main_slide_thum-item a.selected.thum02 {
  border-color: #fcb913;
}
.top_main_slide_thum-item a:hover.thum03, .top_main_slide_thum-item a.selected.thum03 {
  border-color: #5a5a5a;
}
.top_main_slide_thum-item a:hover.thum04, .top_main_slide_thum-item a.selected.thum04 {
  border-color: #4c8eca;
}

.top_main_slide_thum-img {
  float: left;
  margin-right: 10px;
}

.top_main_slide_thum-title {
  vertical-align: middle;
}

.top_main_slide-item {
  overflow: hidden;
  display: inline-block;
  margin-bottom: 10px;
  padding-bottom: 20px;
  line-height: 1.8;
}
.top_main_slide-item:before, .top_main_slide-item:after {
  content: " ";
  display: table;
}
.top_main_slide-item:after {
  clear: both;
}

.top_main_slide-left {
  float: left;
}

.top_main_slide-right {
  float: left;
  width: 500px;
  height: 313px;
  padding: 23px 60px 30px 40px;
  border: 1px solid #dedede;
  border-radius: 0 10px 10px 0;
  background: url(../../img/top/slide_bg.png) 0 0 repeat;
  position: relative;
}
.top_main_slide-right .btn_e {
  position: absolute;
  bottom: 24px;
  left: 38px;
}
.top_main_slide-right .btn_e a {
  padding: 6px 24px;
}

.top_main_slide-title {
  background: url(../../img/top/slide_bar01.jpg) 0 bottom no-repeat;
  padding-bottom: 15px;
  margin-bottom: 15px;
}

.top_main_slide-item01 .top_main_slide-title {
  background-image: url(../../img/top/slide_bar01.jpg);
}

.top_main_slide-item02 .top_main_slide-title {
  background-image: url(../../img/top/slide_bar02.jpg);
}

.top_main_slide-item03 .top_main_slide-title {
  background-image: url(../../img/top/slide_bar03.jpg);
}

.top_main_slide-item04 .top_main_slide-title {
  background-image: url(../../img/top/slide_bar04.jpg);
}

.top_main_slide-text {
  margin-bottom: 22px;
}

.top_main_slide_controller .prev, .top_main_slide_controller .next {
  position: absolute;
  text-align: center;
  top: 50%;
  margin-top: -42px;
  height: 52px;
  width: 42px;
  line-height: 56px;
  vertical-align: middle;
  display: block;
  cursor: pointer;
}
.top_main_slide_controller .prev:hover, .top_main_slide_controller .next:hover {
  opacity: .7;
}
.top_main_slide_controller .prev:after, .top_main_slide_controller .next:after {
  content: "";
  position: relative;
  top: 0;
  line-height: 1;
  display: inline-block;
}

.top_main_slide_controller .prev {
  left: 0;
  background-color: #7F7F7F;
  border-radius: 0px 4px 4px 0px;
}
.top_main_slide_controller .prev:after {
  background-image: url(../../img/sprite.png);
  background-position: -161px -143px;
  width: 8px;
  height: 14px;
  background-size: 197px 179px;
}
.ie8 .top_main_slide_controller .prev:after {
  background-image: url(../../img/sprite.png);
  background-position: -326px -190px;
  width: 8px;
  height: 14px;
}
.top_main_slide_controller .next {
  right: 0;
  background-color: #7F7F7F;
  border-radius: 4px 0px 0px 4px;
}
.top_main_slide_controller .next:after {
  background-image: url(../../img/sprite.png);
  background-position: -152px -143px;
  width: 8px;
  height: 14px;
  background-size: 197px 179px;
}
.ie8 .top_main_slide_controller .next:after {
  background-image: url(../../img/sprite.png);
  background-position: -326px -174px;
  width: 8px;
  height: 14px;
}

/* @  section
 * ------------------------------------------------------------ */
.top_sec01 {
  background-color: #F5F5F5;
  padding-top: 5px;
  padding-bottom: 5px;
}

.top_sec01-inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 1020px;
  width: 100%;
  padding-right: 10px;
  padding-left: 10px;
}
.top_sec01-inner:before, .top_sec01-inner:after {
  content: " ";
  display: table;
}
.top_sec01-inner:after {
  clear: both;
}

.top_sec01-col {
  float: left;
  padding-left: 5px;
  width: 33.3%;
}
.top_sec01-col:first-child {
  padding-left: 0;
}

.cell_zip_calc_group {
  width: 100px;
}

/* @  add 20150713 Layout
 * ------------------------------------------------------------ */
.csr-group h3 {
  font-size: 18px;
  margin-bottom: 10px;
}
.csr-group h3 + h3 {
  margin-top: 20px;
}
.csr-group .border_dashed {
  padding-bottom: 20px;
}

.media-max-half {
  width: 50%;
}

.caution_graybox {
  background-color: #fbfbfb;
  padding: 20px;
}

.cleanenergy_list {
  margin-top: 0;
}
.cleanenergy_list ul {
  display: table;
  width: 100%;
}
.cleanenergy_list ul li {
  display: table-row;
}
.cleanenergy_list ul li > span {
  display: table-cell;
  text-align: left;
  vertical-align: middle;
  border-bottom: 1px solid #dedede;
  padding: 20px 0;
  position: relative;
}
.cleanenergy_list ul li > span.text-group:before, .cleanenergy_list ul li > span.text-group:after {
  content: "";
  width: 10px;
  height: 15px;
  display: block;
  background-color: #fff;
  position: absolute;
}
.cleanenergy_list ul li > span.text-group:before {
  top: 0;
  left: -5px;
}
.cleanenergy_list ul li > span.text-group:after {
  bottom: 0;
  left: -5px;
}
.cleanenergy_list ul li > span:first-child {
  width: 100px;
  border-right: 1px dashed #dedede;
}
.cleanenergy_list ul li > span.text-group {
  padding-left: 20px;
}

.notes_attention_group {
  margin: 5px 0 0;
  padding-left: 30px;
  min-height: 21px;
  position: relative;
}
.notes_attention_group + * {
  margin-top: 10px;
}
.notes_attention_group img.attention {
  width: 21px;
  height: 19px;
  position: absolute;
  top: 3px;
  left: 0;
}

/*20160315変更
=========================================================*/
.installation_new_icon{
    margin-right: 4px;
  margin-left: 10px;
    background-color: #eb1e23;
    color: #fff;
    padding: 1px 6px;
  font-size: 22px;
}
.installation_new_text{
  margin-bottom: 10px;
}

/*20160322
=========================================================*/
.archive_link{
  margin-top: 30px;
  text-align: right;
}

/*20160418 変更
=========================================================*/
.topline_section{
  border-top: 1px solid #dedede;
  padding-top: 20px;
}


/*20160825 導入事例-サンテックパワーエナジーディベロップメント（株）が開発した太陽光発電所
=========================================================*/

.caption_value { padding-top:0px }

/*都道府県名が3文字の時*/
.caption_name_3txt p.box_left { width:40px; float:left; }
.caption_name_3txt p.box_right { width:166px; float:left; }

/*都道府県名が4文字の時*/
.caption_name_4txt p.box_left { width:52px; float:left; }
.caption_name_4txt p.box_right { width:154px; float:left; }



/*new style
=========================================================*/
/* clearfix */
.cFix:after { content: ""; clear: both; display: block; }

.pc_block {
  display: block;
}
.sp_block {
  display: none;
}


.fl_box .left_box{
  margin-right: 30px;
  float: left;
}
.fl_box .right_box{
  float: left;
}

.border_box{
  padding: 30px 20px 25px;
  border: 1px solid #dedede;
}
.border_box-ttl{
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 30px;;
}
.icon_submission{
	padding: 10px;
	margin-right: 12px;
	color: #fff;
	font-size: 16px;
	font-weight: normal;
}
.orange_box{
  padding: 20px;
  background: #fff9eb;
}
.orange_box-ttl{
  padding-left: 10px;
  border-left: 4px solid #333;
  font-size: 14px;
  font-weight: bold;
}
.frame-ttl{
  padding: 0px 5px;
  margin-bottom: 10px;
  display: inline-block;
  border: 1px solid #333;
  font-size: 14px;
  font-weight: bold;
}

.txt-small{ font-size: 12px; }
.txt-bold{ font-weight: bold; }
.txt_c { text-align: center; }
.txt-gray{ color: #777777; }
.txt-red{ color: #f7292e; }

.img-icon_new:after { content: ""; padding-right: 55px; background: url("/common/images/ico_new.gif") right center no-repeat; }


.notice_list { margin-top: 30px; }
.notice_list dt { width: 100px; float: left; position: relative; }
.notice_list dt::after { content: ":"; display: block; position: absolute; right: 0; top: 0; }
.notice_list dd { padding-left: 110px; }
.chara_down { padding-left: 1em; text-indent: -1em; }


/* @  Widget Layout
 * ------------------------------------------------------------ */
.widget_bnr-border02{
	border: 1px solid #999;
}

@media only screen and (max-width: 39.9375em) {
  .pc_block { display: none; }
  .sp_block { display: block; }

  .fl_box{
    width: 100%;
  }
  .fl_box .left_box{
    margin-right: 3%;
  }
  .fl_box .right_box{
  }

  .border_box{
    padding: 15px 10px 10px;
    border: 1px solid #dedede;
  }
  .border_box-ttl{
    font-size: 16px;
    line-height:24px;
    margin-bottom:10px;
  }
  .icon_submission{
    padding: 0px 3px;
    margin-right: 3%;
    display: block;
    float: left;
    width: 17%;
    text-align: center;
  }
  .sp_layout{
    float: left;
    width: 80%;;
  }
  .orange_box{
  width: 100%;
    padding: 15px 10px;
    background: #fff9eb;
  }
  .orange_box-ttl{
    font-size: 12px;
    font-weight: bold;
    border-left: 4px solid #333;
    padding-left: 10px;
  }
  .frame-ttl{
    margin-bottom: 10px;
    font-size: 14px;
    font-weight: bold;
  }
  .txt-small{ font-size: 10px; }

  .txt-right { text-align: right; }

/* @  Widget Layout
 * ------------------------------------------------------------ */
	.widget_bnr-item.widget_bnr-border02 a { display: block; padding: 0 !important; color: #333; position: relative; }
	.widget_bnr-item.widget_bnr-border02 a:after { background: none; }
	.widget_bnr-item.widget_bnr-border02 img{ width: 100%; }
	.widget_bnr-border02{ border: none; }

}
/* include setting
=========================================================*/

#contents.alpha_block { width: 68.75%; float: left; padding-left: 0; }

/* fotter
 * --------------------------------------------------------------- */
/* .list_group_a_footer-col {
  width: 250px;
  border-left: solid 1px #dedede;
  padding: 33px 20px 45px;
  display: table-cell;
  vertical-align: top;
} */
.list_group_a_footer-col {
  width: 290px;
  border-left: solid 1px #dedede;
  padding: 33px 20px 45px;
  display: table-cell;
  vertical-align: top;
}
.list_group_a_footer-col.first {
  border-left-width: 0;
  padding-right: 20px;
}

/* new_sp_nav
------------------------------------------------------------------ */
@media only screen and (max-width: 39.9375em) {
	.sp_nav {
		top: 20px;
	}
	.sp_nav .sp_nav_btn,
	.sp_nav .sp_nav_btn span {
		display: inline-block;
		-webkit-transition: all .4s;
		transition: all .4s;
		box-sizing: border-box;
	}
	.sp_nav .sp_nav_btn {
		line-height: 1;
    float: right;
    display: block;
    margin-left: 10px;
		width: 26px;
		height: 18px;
		position: relative;
	}
	.sp_nav .sp_nav_btn span {
		width: 100%;
		height: 2px;
		background: #a5a5a5;
		border-radius: 2px;
		position: absolute;
		left: 0;
	}
	.sp_nav .sp_nav_btn span:nth-of-type(1) {
		top: 0;
	}
	.sp_nav .sp_nav_btn span:nth-of-type(2) {
		top: 8px;
	}
	.sp_nav .sp_nav_btn span:nth-of-type(3) {
		bottom: 0;
	}
	.sp_nav .sp_nav_btn.is_toggle-on span:nth-of-type(1) {
		-webkit-transform: translateY(9px) rotate(-45deg);
		transform: translateY(9px) rotate(-45deg);
	}
	.sp_nav .sp_nav_btn.is_toggle-on span:nth-of-type(2) {
		opacity: 0;
	}
	.sp_nav .sp_nav_btn.is_toggle-on span:nth-of-type(3) {
		-webkit-transform: translateY(-7px) rotate(45deg);
		transform: translateY(-7px) rotate(45deg);
	}
	.nav_arrow {
		background: #fff;
		border-top: solid 1px #dedede;
	}
	.nav_arrow a {
		display: block;
		padding: 13px 20px;
		font-size: 16px;
		color: #333;
		position: relative;
		line-height: 1.3;
	}
	.nav_arrow a:hover {
	  text-decoration: none;
	}
	.nav_arrow a:after {
		background-image: url(../img/nav_arrow.png);
		width: 10px;
		height: 10px;
		background-size: 100% 100%;
		content: "";
		position: absolute;
		top: 42%;
		right: 20px;
		display: inline-block;
	}
	.g_nav-small .heading-unit-title {
		padding: 12px 20px;
		background: #fff;
	}
	.g_nav-small .heading-unit-title:after {
		top: 38.5%;
		right: 19px;
  }
  .sp_nav_wrap {
    margin: 0 0 30px;
  }
	.sp_nav_wrap .accordion_submenu{
		background: #fff;
	}
	.sp_nav_list {
		border-top: 1px dashed #dedede;
		padding-top: 25px;
		margin: 0 20px;
	}
	.sp_nav_list-sub_title {
		color: #333;
		margin-bottom: 11px;
    font-weight: bold;
	}
	.sp_nav_list ul {
		margin: 0 0 10px 20px;
	}
	.sp_nav_list ul li {
		padding: 5px 0px;
	}
	.g_nav-small .sp_free_dial-box {
		margin-bottom: 0;
	}
}

/* anc_link (update:20170619)
-----------------------------------------------------------*/
.anc_link { width: 100%; margin-top: 10px; font-size: 0; }
.anc_link.anc_link_first_block { margin-top: 0; }
.anc_link .anc_itme:first-child { margin-left: 0; }
.anc_link .anc_itme { display: inline-block; margin-left: 15px; width: 210px; border: 1px solid #dedede; color: #3577e4; vertical-align: top; text-align: center; font-size: 14px; }
.anc_link .anc_itme > a { width: 100%; padding: 10px; display: block; box-sizing: border-box; color: #3577e4; }
.anc_link .anc_itme > a:after { background-image: url(../../img/sprite.png); background-position: -64px -159px; width: 8px; height: 5px; background-size: 197px 179px; content: ''; display: inline-block; margin-left: 10px; position: relative; top: -2px; }
.anc_link .anc_acd_itme { position: relative; }
.anc_link .anc_acd_itme .acd_anc_ttl { padding: 10px; color: #3577e4; text-align: center; cursor: pointer; line-height: 1.5; }
.anc_link .anc_acd_itme .acd_anc_block { width: 100%; display: none; background: #fff; position: absolute; top: 100%; left: 0; z-index: 3; border: 1px solid #dedede; }
.anc_link .anc_acd_itme .acd_anc_block ul li { border-bottom: 1px solid #dedede; }
.anc_link .anc_acd_itme .acd_anc_block ul li:last-child { border-bottom: none; }
.anc_link .anc_acd_itme .acd_anc_block ul li a { padding: 5px; width: 206px; display: block; box-sizing: border-box; color: #3577e4; }
.anc_link .anc_acd_itme .acd_anc_block ul li a:after { background-image: url(../../img/sprite.png); background-position: -64px -159px; width: 8px; height: 5px; background-size: 197px 179px; content: ''; display: inline-block; margin-left: 10px; position: relative; top: -2px; }
@media only screen and (min-width: 39.9376em) {
  .anc_link .anc_acd_itme .acd_anc_ttl { width: 210px; height: 60px; display: -webkit-flex; display: flex; -webkit-flex-direction: row; flex-direction: row; align-items: center; justify-content: center; }
  body.download .anc_link .anc_acd_itme .acd_anc_ttl { height: auto; line-height: 1.85714; }
}
@media only screen and (max-width: 39.9375em) {
	.anc_link { width: 100%; position: relative; border-left: 1px solid #dedede; display: table; }
	.anc_link .anc_itme { margin-left: 0; width: 33.3333%; position: static; display: table-cell; border: 1px solid #dedede; border-left: none; vertical-align: middle; }
	.anc_link .anc_itme > a { padding: 5px; display: inline-block; }
	.anc_link .anc_acd_itme { width: 33.3333%; float: none; position: static; border: 1px solid #dedede; border-left: none; }
	.anc_link .anc_acd_itme .acd_anc_ttl { margin: 0; padding: 5px; width: 100%; border: none; }
	.anc_link .anc_acd_itme .acd_anc_block { width: 100%; border: 1px solid #dedede; position: absolute; top: 100%;left: -1px; }
	.anc_link .anc_acd_itme .acd_anc_block ul li a { padding: 10px; width: 100%; }
}

/* 20170217
-----------------------------------------------------------*/
.section-catalog-download-group .text-group .new { margin: 0 auto 10px; width: 60px; color: #FFF; text-align: center; background-color: #F00; }

/* 2017510 ipp_side
-----------------------------------------------------------*/
.energydev_tel_box { text-align: center; }
.energydev_tel_box .tel_box-title { margin-bottom: 15px; color: #8e8e8e; font-weight: bold; line-height: 1; }
.energydev_tel_box .tel_box-number { margin-bottom: 15px; }
.energydev_tel_box .tel_box-number p { position: relative; font-size: 20px;  font-weight: bold; letter-spacing: -.2px; font-family: Myriad, Helvetica, Arial, sans-serif; line-height: 1.4; color: #ff0003; vertical-align: middle; }
.energydev_tel_box .tel_box-number p span { padding-left: .4em; font-size: 26px; }
.energydev_tel_box .tel_box-time { line-height: 1.5; }

/* 20170515 header,footer
-----------------------------------------------------------*/
.list_group_a-col.type_2-1 { width: 375px; }
.list_group_a-col.type_2-2 { width: 625px; }
.type_2-2 .ipp_btn { width: 250px; display: inline-block; vertical-align: middle; margin-bottom: 0; }
.type_2-2 .ipp_btn a { padding: 13px 0 13px 28px; font-size: 12px; }
.type_2-2 .ipp_tel { padding-left: 25px; display: inline-block; vertical-align: middle; }
.type_2-2 .ipp_tel .ipp_tel_number { position: relative; font-size: 26px;  font-weight: bold; font-family: Myriad, Helvetica, Arial, sans-serif; line-height: 1.0; color: #000; vertical-align: middle; top: -5px; }
.type_2-2 .ipp_tel .ipp_tel_number::before { content: ""; display: inline-block; height: 18px; width: 13px; background: url(/img/icon_tel.png) left center no-repeat; margin-right: 5px; }
.type_2-2 .ipp_tel .ipp_tel_time{ line-height: 1; font-weight: bold; }

.footer_contact-wrap { border-bottom: solid 1px #dedede; }
.footer_contact-body { padding: 21px 10px; font-size: 0; }
.footer_contact-body .footer_contact-title { margin-bottom: 0; display: inline-block; vertical-align: middle; font-size: 14px; font-weight: bold; }
.footer_contact-body .btn_a { margin: 0 95px 0 40px; display: inline-block; vertical-align: middle; }
.footer_contact-body .btn_a a { padding: 13px 60px 13px 80px; font-size: 12px; }
.footer_contact-body .btn_a.footer_contact-body .btn_a.footer_contact-body a {}
.footer_contact-body .footer_contact-tel { display: inline-block; vertical-align: middle; }
.footer_contact-body .free_dial { font-size: 28px; }
.footer_contact-body .contact_time { font-size: 12px; }

.footer .list_group_a-title { margin-bottom: 15px; font-size: 14px; }
.footer .list_group_a-title:first-child { margin-top: 5px; }
.footer .list_group_a-sub_title { margin-bottom: 15px; font-size: 14px; margin-bottom: 10px; }
.footer .list_group_a-sub_title:first-child { margin-top: 5px; }
.footer .list_group_a ul { margin-bottom: 25px; }
.footer .list_group_a ul:last-child { margin-bottom: 0; }
.footer .list_group_a ul li { margin-bottom: 5px; }

/* 20170630 industry
-----------------------------------------------------------*/
.main_visual.main_visual-industry { margin: 0 auto; width: 970px; height: 110px; background: url(/industry/images/title_bg.jpg) center center no-repeat; }
@media only screen and (max-width: 39.9375em) {
  .main_visual.main_visual-industry { width: auto; height: auto; background: #F3F3F3; }
  .main_visual.main_visual-industry .main_title_unit { color: #333; }
}

/* 201708010 ニュースリリース用
-----------------------------------------------------------*/
.news_release_wrap .news_anc_list { margin: 20px 0; }
.news_release_wrap .news_anc_list ul { margin-left: 5px; }
.news_release_wrap .news_anc_list ul li { padding-bottom: 0; border-bottom: none; text-indent: -1.5em; padding-left: 1.5em; }
.news_release_wrap .news_anc_list ul li + li { margin-top: 0; }

.news_release_wrap .news_section_group { margin-bottom: 40px; }
.news_release_wrap .news_section_group .news_section_heading { padding: 10px 0; border: 1px solid #000; border-width: 1px 0; }
.news_release_wrap .news_section_group .news_txt_group { margin-bottom: 10px; }
.news_release_wrap .news_section_group .news_img_group { margin-bottom: 10px; }
.news_release_wrap .news_section_group .news_img_group figure { margin: 0; }
.news_release_wrap .news_section_group .news_img_group figure img { width: 100%; }
.news_release_wrap .news_section_group .news_img_group.widthAuto figure img { width: auto; }
.news_release_wrap .news_section_group .news_img_group figure figcaption { color: #777; }
.news_release_wrap .news_section_group .news_img_group .news_img_group_col2 { margin-right: 2%; width: 49%; float: left; }
.news_release_wrap .news_section_group .news_img_group .news_img_group_col2:nth-child(2n) { margin-right: 0; }

.news_release_wrap .news_bottom_txt_group { margin: 40px 0; padding: 5px 0; border: solid #dedede; border-width: 1px 0; }
.news_release_wrap .news_bottom_txt_group_inner { padding: 10px 0; border: solid #dedede; border-width: 1px 0; }

.news_release_wrap .news_section_group .news_table_group table { width: 100%; border: solid 1px #b4b4b4; }
.news_release_wrap .news_section_group .news_table_group table caption { padding: 5px 10px; border-left: solid 1px #b4b4b4; border-right: solid 1px #b4b4b4; text-align: left; font-weight: bold; }
.news_release_wrap .news_section_group .news_table_group table:first-child caption { border-top: solid 1px #b4b4b4; }
.news_release_wrap .news_section_group .news_table_group table thead {}
.news_release_wrap .news_section_group .news_table_group table thead th {}
.news_release_wrap .news_section_group .news_table_group table tbody {}
.news_release_wrap .news_section_group .news_table_group table tbody th { font-weight: normal; }
.news_release_wrap .news_section_group .news_table_group table th { border-left: solid 1px #b4b4b4; border-top: solid 1px #b4b4b4; padding: 5px 0; }
.news_release_wrap .news_section_group .news_table_group table td { border-left: solid 1px #b4b4b4; border-top: solid 1px #b4b4b4; text-align: center; }
.news_release_wrap .news_section_group .news_table_group .bgc-blue { background-color: #cde8f4; }
.news_release_wrap .news_section_group .news_table_group .bgc-red { background-color: #F4D4D6; }

/* 0915追記 */
.news_release_wrap .news_section_group .news_fl_box { margin-bottom: 20px; }
.news_release_wrap .news_section_group .news_fl_box .news_right_box { margin-left: 30px; float: right; width: 240px; }

.news_release_wrap .news_section_group .news_icon_group  { margin-top: 25px; padding: 0 20px; }
.news_release_wrap .news_section_group .news_icon_group .news_icon_heading { position: relative; }
.news_release_wrap .news_section_group .news_icon_group h4.news_icon_heading { margin-bottom: 5px; }
.news_release_wrap .news_section_group .news_icon_group .news_icon_heading::before { content: ""; display: block; background: no-repeat center center/100% auto; position: absolute; }
.news_release_wrap .news_section_group .news_icon_group h3.news_icon_heading::before { width: 20px; height: 20px; top: 2px; left: -25px; }
.news_release_wrap .news_section_group .news_icon_group h4.news_icon_heading::before { width: 15px; height: 15px; top: 0; left: -20px }
.news_release_wrap .news_section_group .news_icon_group .news_icon_loupe::before { background-image: url(/img/icon_loupe.png); }
.news_release_wrap .news_section_group .news_icon_group .news_icon_pencil::before { background-image: url(/img/icon_pencil.png); }

.news_release_wrap .news_section_group .news_border_box { padding: 0 25px; padding-bottom: 5px; border-bottom: 1px solid #000; }
.news_release_wrap .news_section_group .news_border_box .news_border_heading { position: relative; }
.news_release_wrap .news_section_group .news_border_box .news_border_heading span { padding-right: 1em; background: #fff; display: inline-block; }
.news_release_wrap .news_section_group .news_border_box .news_border_heading::after { content: ""; display: block; width: calc(100% + 25px); height: 1px; background: #000; position: absolute; top: 50%; z-index: -1; }

/* 20171018追記 */
.news_release_wrap .mt25 { margin-top: 25px; }
.news_release_wrap .news_square_list li { margin-top: 0; padding-bottom: 0; border-bottom: none; padding-left: 1em; text-indent: -1em; }
.news_release_wrap .news_square_list li:before { content: "■"; }
.news_release_wrap .news_caption_list li { margin-top: 0; padding-bottom: 0; border-bottom: none; padding-left: 2em; text-indent: -2em; }

/* 20171129 */
.news_release_wrap .news_wraparound_box { margin-bottom: 20px; display: block; }
.news_release_wrap .news_wraparound_box .wraparound_box { display: block; }
.news_release_wrap .news_wraparound_box .wraparound_box figure { margin: 0; }
.news_release_wrap .news_wraparound_box .wraparound_box img { width: 100%; }
.news_release_wrap .news_wraparound_box .wraparound_box figcaption { color: #777; }
.news_release_wrap .news_wraparound_box .wraparound_box.wraparound_right { margin: 0 0 5px 20px; float: right; }
.news_release_wrap .news_wraparound_box .wraparound_box.wraparound_left {  margin: 0  20px 5px 0; float: left; }

/* 20171220追記 */
.news_release_wrap .news_enclose_chara { margin: 0; padding: 2px 5px; border: 1px solid #000; display: inline-block; }
.news_release_wrap .news_section_group .news_img_group .news_img_group_col3 { margin-right: 1%; width: 32%; float: left; }
.news_release_wrap .news_section_group .news_img_group .news_img_group_col3:nth-child(3n) { margin-right: 0; }
.news_release_wrap .news_section_group .num_list_style01 { margin: 10px 0; counter-reset: brackets_num 0; }
.news_release_wrap .news_section_group .num_list_style01 > li { border-bottom: none; position: relative; padding: 0 0 0 2em; }
.news_release_wrap .news_section_group .num_list_style01 > li:before { position: absolute; left: 0; content: "(" counter(brackets_num) ")"; counter-increment: brackets_num 1; }
.news_release_wrap .news_section_group .num_list_style01 > li + li { margin-top: 10px; }

/* 20180215追記 */
.news_release_wrap .news_section_group .num_list_style02 { margin: 10px 0; list-style: decimal; }
.news_release_wrap .news_section_group .num_list_style02 > li { border-bottom: none; padding: 0; }
.news_release_wrap .news_section_group .num_list_style02 > li + li { margin-top: 10px; }
.news_release_wrap .news_section_group .news_table_group.news_table_style_th_color table thead th { background-color: #ececec; }
.news_release_wrap .news_section_group .news_table_group.news_table_style_th_color table tbody th { background-color: #fbfbfb; }

/* 20180307追記 */
.news_release_wrap .news_section_group .news_border_img_box { width: auto; padding: 15px; border: 1px solid #dedede; margin-top: 5px; }
.news_release_wrap .news_section_group .news_table_group .news_table-th_large { width: 50%; }


/* 20170830 出力制御のお知らせ
-----------------------------------------------------------*/
.notice_output_control { margin: 15px 0 40px; padding: 10px 20px 14px; border: 3px #EB1E23 solid;}
.notice_output_control .notice_heading { font-size: 116%; font-weight: bold; color: #EB1E23;}
.notice_output_control .notice_text { line-height: 1.6; margin: 8px 0 0 18px;}
.notice_output_control .notice_text > a { padding: 0 3px; display: inline-block;}

/* 20180302 画像を中央におけるブロック
-----------------------------------------------------------*/
.pict_block { text-align: center; }


/* 20180302 テーブル3列用
-----------------------------------------------------------*/
.table_a-th_180 th { width: 180px; }


/* add to gc 2018.05.29
-----------------------------------------------------------*/
.footer_addlink {
  display: inline-block;
  margin: 0 0 0 60px;
}
.flex_box {
  display: flex;
  flex-wrap: wrap;
}
.item {
  width: 30%;
  margin: 4px 0;
}
.item._col2 {
  width: 40%;
  margin: 40px 5% 10px;
}
.m_60 {
	margin: 60px 0 10px;
}
.m_40 {
  margin: 40px 0 10px;
}
.m_20 {
  margin: 20px 0 10px;
}
.m_10 {
  margin: 10px 0 0 0;
}
.imgbox_csr .left.m_none {
  padding-top: 0;
}
.imgbox_csr .right.m_none {
  padding-top: 0;
}
.movie_area {
  margin: 80px 0 0;
  padding: 20px;
  background: #f5f5f5;
}
.movie_ttl {
  font-weight: bold;
  font-size: 16px;
}
.movie_txt {
  margin: 10px 0 20px;
  text-align: justify;
}
@media only screen and (max-width: 39.9375em) {
  .item {
    width: 100%;
  }
  .movie_area {
    margin: 40px 0 0;
    padding: 20px;
    background: #7BB3F0;
  }
}
.after_item:after {
  content: '';
  display: block;
  width: 50%;
}

/*  製品仕様（太陽電池モジュールVシリーズ・Wシリーズ、屋根置き型サンクリスタル）2018.09.14
=========================================================*/
.bl_product.box_responsive.table_a { display: flex; margin-bottom: 60px; }
.bl_product.box_responsive.table_a:last-of-type { margin-bottom: 0; }
.bl_product.box_responsive.table_a .bl_product_img { width: 229px; margin-right: 20px; }
.bl_product.box_responsive.table_a .bl_product_img img { display: block; width: 173px; margin: 0 auto; }
.bl_product.box_responsive.table_a .bl_product_description { width: 409px; }
.bl_product.box_responsive.table_a .bl_product_name { color: #333; font-size: 20px; font-weight: bold; line-height: 1.1; margin-bottom: 16px; }
.bl_product.box_responsive.table_a .bl_product_feature { display: flex; margin-bottom: 20px; }
.bl_product.box_responsive.table_a .bl_product_feature_item { width: 60px; margin-right: 10px; }
.bl_product.box_responsive.table_a .bl_product_feature_item:last-of-type { margin-right: 0; }
.bl_product.box_responsive.table_a .bl_product_detail_title { position: relative; width: 100%; color: #3577e4; font-size: 14px; padding: 14px 10px 13px; border: solid 1px #dedede; margin-bottom: 10px; }
.bl_product.box_responsive.table_a .bl_product_detail_title_btn { display: block; position: absolute; top: 50%; right: 10px; width: 17px; height: 17px; background: #3577e4; transform: translateY(-50%); }
.bl_product.box_responsive.table_a .bl_product_detail_title_btn:before,
.bl_product.box_responsive.table_a .bl_product_detail_title_btn:after { content: ""; display: block; position: absolute; background: #fff; }
.bl_product.box_responsive.table_a .bl_product_detail_title_btn:before { top: 8px; left: 4px; width: 10px; height: 2px; }
.bl_product.box_responsive.table_a .bl_product_detail_title_btn:after { top: 4px; left: 8px; width: 2px; height: 10px; }
.bl_product.box_responsive.table_a .bl_product_detail_title.is_expanded .bl_product_detail_title_btn:after { content: none; }
.bl_product.box_responsive.table_a .bl_product_detail_data { display: none; }
.bl_product.box_responsive.table_a .bl_product_detail_data table { table-layout: fixed; width: 100%; font-size: 14px; white-space: normal; }
.bl_product.box_responsive.table_a .bl_product_detail_data table th { width: 50%; padding: 13px 6px 13px 10px;  }
.bl_product.box_responsive.table_a .bl_product_detail_data table td { text-align: center; padding: 0; }
@media only screen and (max-width: 39.9375em) {
	.bl_product.box_responsive.table_a { display: block; margin-bottom: 40px; }
	.bl_product.box_responsive.table_a .bl_product_img { width: 100%; margin: 0 0 20px; }
	.bl_product.box_responsive.table_a .bl_product_img img { width: 29.5774%; margin: 0 auto; }
	.bl_product.box_responsive.table_a .bl_product_description { width: 100%; }
	.bl_product.box_responsive.table_a .bl_product_name { font-size: 16px; text-align: center; }
	.bl_product.box_responsive.table_a .bl_product_feature { display: flex; justify-content: center; margin-bottom: 15px; }
	.bl_product.box_responsive.table_a .bl_product_feature_item { width: 67px; margin-right: 10px; }
	.bl_product.box_responsive.table_a .bl_product_detail_title { font-size: 13px; padding: 13px 7px 13px 10px; }
	.bl_product.box_responsive.table_a .bl_product_detail_data table { font-size: 12px; }
	.bl_product.box_responsive.table_a .bl_product_detail_data table th { width: 50%; padding: 10px 6px 10px 10px;  }
	.bl_product.box_responsive.table_a .bl_product_detail_data table td { width: 50%; text-align: center; padding: 0; }
}

/* add to gc 2018.11.28 */
/* header */
.list_group_a-col.list_group_a-col_type_2-1._add {
  width: 200px;
  padding: 0;
}
.list_group_a-col.list_group_a-col_type_2-2._add {
  width: 70%;
  padding: 0 0 0 20px;
}
.pc_group.g_nav .flex_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}
.pc_group.g_nav .f_item {
  width: 50%;
}
.pc_group.g_nav .f_item:nth-child(1) {
  margin-right: 2%;
}
.pc_group.g_nav .f_item:nth-child(2) {
  width: 48%;
  padding: 0 0 0 2%;
  border-left: solid 1px #eee;
}
.pc_group.g_nav .f_item._sangyo {
  width: 100%;
}
.pc_group.g_nav .f_item .f_item_ttl .ttl {
  font-size: 12px;
  font-weight: bold;
}
.pc_group.g_nav .f_item .f_item_ttl .note {
  font-size: 10px;
  font-weight: bold;
}
/* footer */
.footer_contact-body .flex_box {
  justify-content: space-around;
}
.footer_contact-body .flex_box .f_item {
  width: 50%;
}
@media only screen and (max-width: 39.9375em) {
  .list_group_d li:nth-child(odd) {
    padding-right: 0;
  }
  .list_group_d li {
    float: left;
    width: 100%;
  }
}
.footer_contact-body .flex_box .f_item:nth-child(2) {
  padding-left: 4%;
  border-left: solid 1px #eee;
}
.f_item_ttl .ttl {
  font-size: 16px;
  font-weight: bold;
}
.f_item_ttl .note {
  margin: 0 0 0 20px;
  font-size: 12px;
  font-weight: bold;
}
.f_item_tel,
.f_item_btn {
  margin: 16px 0 0 16px;
}
.sub_ttl {
  font-size: 12px;
  font-weight: bold;
}
.footer_contact-body .f_item_btn .btn_a {
    margin: 0;
    display: inline-block;
    vertical-align: middle;
}
/* products/case.html */

.un_link_box_mb30._add,
.un_link_box_mt30._add {
  padding: 20px;
  text-align: center;
  border: solid 1px #dedede;
}
.un_link_box_mb30._add .btn_a.btn_a-type02.footer_contact-btn,
.un_link_box_mt30._add .btn_a.btn_a-type02.footer_contact-btn {
  width: 180px;
  margin: 20px auto 0;
}
/* 404 */
.not_found {
  margin: 60px auto;
}
.not_found_txt {
  text-align: center;
  font-size: 24px;
}
@media only screen and (max-width: 39.9375em) {
  .not_found {
    margin: 20px 10px 0;
  }
  .not_found_txt {
    text-align: left;
    font-size: 16px;
  }
}

.add_txt_area {
  margin: 40px 0;
}
.add_txt {
  margin: 0 0 40px;
}
.add_sub_ttl {
  font-size: 17px;
  font-weight: bold;
  padding: 10px;
  border-bottom: solid 1px #333;
}
.add_sub_txt {
  margin: 20px 0 0;
}
.add_list {
  margin: 20px 0 0;
  list-style-type: disc;
}

.cleanenergry_txt {
  margin: 0 0 20px;
}
.cleanenergy_box {
  margin: 20px 0 0;
}
.add_list_ttl {
  display: block;
  font-size: 17px;
  font-weight: bold;
}
.cleanenergy_item {
  width: 50%;
  padding: 10px;
}
.cleanenergry_num {
  display: block;
}
@media only screen and (max-width: 39.9375em) {
  .cleanenergy_item {
    width: 100%;
    padding: 0;
  }
}

.contact_info.cleanenergy { padding: 40px 0 30px; width: 100%; background: #f3f3f3; }
.contact_info.cleanenergy .info_ttl { margin-bottom: 30px; font-size: 20px; font-weight: bold; line-height: 1; text-align: center; }
.contact_info.cleanenergy .btn_a { margin: 0 auto 25px; width: 250px; }
.contact_info.cleanenergy .btn_a a { padding: 11px 0px 12px 28px; }
.contact_info.cleanenergy .btn_a a:before { top: 17px; }
.contact_info.cleanenergy .info_tel_number { text-align: center; margin-bottom: 3px; }
.contact_info.cleanenergy .info_tel_number p { position: relative; font-size: 20px;  font-weight: bold; letter-spacing: -.2px; font-family: Myriad, Helvetica, Arial, sans-serif; line-height: 1.4; vertical-align: middle; }
.contact_info.cleanenergy .info_tel_number p span { padding-left: .4em; font-size: 26px; }
.contact_info.cleanenergy .time { text-align: center; }
@media only screen and (max-width: 39.9375em) {
  .contact_info.cleanenergy { margin-bottom: 50px; padding: 30px 0; }
  .contact_info.cleanenergy .info_ttl { margin-bottom: 15px; font-size: 16px; line-height: 1.4; }
  .contact_info.cleanenergy .btn_a { margin: 0 auto 20px; width: 76.12%; }
  .contact_info.cleanenergy .btn_a a:before { left: 10px; }
  .contact_info.cleanenergy .info_tel_number { text-align: center; margin-bottom: 10px; }
  .contact_info.cleanenergy .info_tel_number p { position: relative; font-size: 20px;  font-weight: bold; letter-spacing: -.2px; font-family: Myriad, Helvetica, Arial, sans-serif; line-height: 1.4; vertical-align: middle; }
  .contact_info.cleanenergy .info_tel_number p span { padding-left: .4em; font-size: 26px; color: #000; }
  .contact_info.cleanenergy .info_tel_number p span a { color: #000; }
  .contact_info.cleanenergy .time { text-align: center; }
}

.num_li {
  margin: 10px 0 0 20px;
  list-style-type: decimal;
}
.ttl_num01 {
  position: relative;
  padding: 0 0 0 24px;
}
.ttl_num01:before {
  content: "1.";
  position: absolute;
  left: 0;
}

.image_box {
  display: block;
  padding: 12px 6px;
  text-align: center;
  font-size: 12px;
  font-weight: bold;
  line-height: 1.4;
  color: #fff;
  background: #E60012;
  border-radius: 2px;
}
.image_box._blue {
  display: block;
  padding: 12px 0px;
  text-align: center;
  font-size: 10px;
  font-weight: bold;
  line-height: 1.4;
  color: #39A1DC;
  background: #fff;
  border: solid 2px #39A1DC;
}
.image_box._yellow {
  display: block;
  padding: 12px 0;
  text-align: center;
  font-size: 10px;
  font-weight: bold;
  line-height: 1.4;
  color: #FCB912;
  background: #fff;
  border: solid 2px #FCB912;
}
.image_box._red {
  display: block;
  padding: 12px 0;
  text-align: center;
  font-size: 10px;
  font-weight: bold;
  line-height: 1.4;
  color: #E60012;
  background: #fff;
  border: solid 2px #E60012;
}
.list_box {
  margin: 0 0 40px;
}
.list_box._add {
  margin: 0 40px 40px;
}
.list_link {
  display: block;
}
.forte_block .detail_block._add {
  margin: 0 0 20px;
}
