@charset "UTF-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-style: normal;
  font-weight: normal;
  vertical-align: baseline;
}

/*touch-device link speed */
a, area, button, [role=button], input:not([type=range]), label,
select, summary, textarea {
  -ms-touch-action: manipulation;
  touch-action: manipulation;
}

/* reset */
input, button, select, textarea {
  -webkit-appearance: none;
}

input, textarea {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -webkit-appearance: none;
  border: solid 1px #b2b2b2;
}

html {
  min-height: 100%;
}

body {
  min-height: 100%;
}

/*image size max-width-100% */
img {
  max-width: 100%;
  height: auto;
  width/***/: auto;
  vertical-align: bottom;
}

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

blockquote, q {
  quotes: none;
}

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

input, textarea {
  margin: 0;
  padding: 0;
}

ol, ul {
  list-style: none;
}

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

caption, th {
  text-align: left;
}

:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}

table {
  width: 100%;
}

a {
  text-decoration: none;
}

/* コピー禁止 */
h1, h2, h3, h4, h5, p, img, ul, ol {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/*float clear overflow */
.flclear {
  clear: both;
  overflow: hidden;
}

/* flex between */
.flexbox {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

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

/*
テキストシャドウ {
    text-shadow: 1px 1px 3px $color-black;
}
テキストシャドウ {
    text-shadow: 1px 1px 3px $color-black;
}
ボックスシャドウ {
    -moz-box-shadow: 1px 1px 3px $color-black;
    -webkit-box-shadow: 1px 1px 3px $color-black;
    box-shadow: 1px 1px 3px $color-black;
}

ボックスシャドウ内側 {
    -moz-box-shadow: inset 1px 1px 3px $color-black;
    -webkit-box-shadow: inset 1px 1px 3px $color-black;
    box-shadow: inset 1px 1px 3px $color-black;
}
透明 {
    filter: alpha(opacity=25);
    -moz-opacity:0.25;
    opacity:0.25;
}
背景のみ透明 {
    background-color:$color-white-20;
}
//responsive
@media screen and (max-width: 767px){
}
@media screen and (min-width: 768px) and (max-width: 1024px){
}
@media screen and (min-width: 1025px){
}
--------------- */
/* fonts tweaks ---------------------------------------- */
/* text color fontfamily */
html {
  font-size: 62.5%; /* 16px x 0.625 = 10px(=1rem) */
  color: #1e1e1e;
  scroll-behavior: smooth;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "游ゴシック", YuGothic, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}
/* mincho */
.min {
  font-family: "ヒラギノ明朝 ProN W3", "游明朝", YuMincho, "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
}

body {
  font-size: 1.55rem; /* 15.5px*/
  line-height: 1.8em;
  -webkit-text-size-adjust: 100%; /* webkit browser bug 拡大表示 */
  font-feature-settings: "palt"; /* carning CSSで文字詰め */
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, body {
    font-feature-settings: "pkna";
  }
}
/*font size responsive */
/* PC & default */
h1 {
  font-size: 36px; /* IE8以下とAndroid4.3以下用フォールバック */
  font-size: calc(20rem + (1vw - 0.64rem) * 2.1429); /* 24px~36pxで可変*/
}

h2 {
  font-size: 24px; /* IE8以下とAndroid4.3以下用フォールバック */
  font-size: calc(2rem + (1vw - 0.64rem) * 0.7143); /* 20px~24pxで可変*/
}

/* Tab */
@media (min-width: 768px) {
  h1 {
    font-size: 3.6rem; /* 36px*/
  }
  h2 {
    font-size: 2.4rem; /* 24px*/
  }
}
/* Sp */
@media screen and (max-width: 767px) {
  h1 {
    font-size: 2.4rem; /* 24px*/
  }
  h2 {
    font-size: 2rem; /* 20px */
  }
}
/* ▽ baloon triangle ------------------------- */
.balloon {
  position: relative;
}

.balloon:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -20px;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #fde7d1 transparent transparent transparent;
  border-width: 20px 20px 0 20px;
}

header {
  border-top: solid 1px #efefef;
}

.f_wid {
  width: 100vw;
  margin: 0 calc(-50vw + 50%) !important;
  object-fit: cover;
}

/* link 矢印 ----------------------------------- */
a.a_btn {
  position: relative;
  display: block;
  box-sizing: border-box;
}

a.a_btn::after {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  width: 3px;
  height: 3px;
  margin: -2px 0 0 0;
  border-top: solid 2px #1e1e1e;
  border-right: solid 2px #1e1e1e;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* font deco------------------------------------------------ */
/* 必ずspanに適用する block要素には適用しない */
span.doubleunderline {
  border-bottom: double 6px orange;
}

span.dashed {
  border-bottom: dashed 2px orange;
}

span.dotted {
  border-bottom: dotted 3px orange;
}

span.borderline {
  border-bottom: solid 2px orange;
}

/* base Link color ------------------------ */
a {
  color: #1e1e1e;
}

a:visited {
  color: #1e1e1e;
}

a:hover {
  color: #1e1e1e;
}

/* pagination ---------------------------------------- */
.navigation.pagination {
  clear: both;
  margin: 48px auto;
}

.navigation.pagination ul.page-numbers {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
}

.navigation.pagination a.page-numbers,
.navigation.pagination span.page-numbers {
  display: inline-block;
  min-width: 40px;
  height: 40px;
  padding: 0 10px;
  border: 1px solid #d6d6d6;
  box-sizing: border-box;
  line-height: 38px;
  text-align: center;
}

.navigation.pagination span.page-numbers.current {
  border-color: #1e1e1e;
  background: #1e1e1e;
  color: #fff;
}

/* header common -------------------------- */
div.headlogobox p {
  background: url(../images/logo/logo_02.png) no-repeat;
  font-size: 0;
}

/* main visual ---------------------------- */
#mavisualinner {
  width: 100%;
  background: url(../images/mv-index.jpg);
  background-repeat: no-repeat;
  background-size: calc(100% - 96px) auto;
  background-position: 48px bottom;
  position: relative;
  box-sizing: border-box;
}

/* lower-page mv gradation box */
.mavbox {
  width: 100%;
  margin: 0 auto;
  align-self: center;
  background: #1e1e1e;
  background-size: 100%;
  box-sizing: border-box;
  animation: gradanim1 12s ease infinite;
}

/* contents ------------------------------- */
/* bunner maincont bottom */
#bunner_maincnt {
  border-top: solid 1px #efefef;
}

.bunner_maincnt_inner {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

#bunner_maincnt ul {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

#bunner_maincnt ul li {
  width: calc(50% - 0px);
  overflow: hidden;
}

#bunner_maincnt ul li img {
  width: 100%;
  height: 100%;
}

/* side menu under */
.bunner_side {
  width: 100%;
}

.bunner_side ul {
  width: 100%;
  box-sizing: border-box;
  padding: 12px 2px 0px;
}

/* breadcrumb ------------------------------ */
#breadcrumb {
  width: 100%;
}

.breadcrumbinner {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  box-sizing: border-box;
}

/* breadcrumb margin responsive */
@media screen and (max-width: 1200px) {
  .breadcrumbinner {
    padding: 0 4.8%;
  }
  #breadcrumb ul li {
    height: 44px !important;
    line-height: 44px !important;
  }
  #breadcrumb ul li a {
    height: 44px !important;
    line-height: 44px !important;
  }
}
@media screen and (min-width: 1201px) {
  .breadcrumbinner {
    padding: 0 64px;
  }
  #breadcrumb ul li {
    height: 44px !important;
    line-height: 44px !important;
  }
  #breadcrumb ul li a {
    height: 44px !important;
    line-height: 44px !important;
  }
}
#breadcrumb ul {
  width: 100%;
  clear: both;
  overflow: hidden;
}

#breadcrumb ul li {
  min-width: 68px;
  font-size: 12px;
  line-height: 14px;
  height: 14px;
  float: left;
  padding-top: 9px;
  padding-bottom: 9px;
}

#breadcrumb ul li a {
  width: 100%;
  display: block;
  line-height: 14px;
  height: 14px;
  font-size: 12px;
}

#breadcrumb ul li a::after {
  content: ">";
  padding-left: 14px;
  color: #b5b5b5;
}

/* footer ---------------------------------- */
footer {
  width: 100%;
  background: #1e1e1e;
}

.footerinner {
  width: 100%;
  max-width: 1200px;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
}

p.footlogo {
  width: 100%;
  text-align: center;
  font-size: 0;
}

/* div.footer_nav nav#footer_nav */
p.footlogo {
  margin-bottom: 12px;
}

@media screen and (max-width: 767px) {
  p.footlogo img {
    max-height: 40px;
  }
  .footerinner {
    padding: 6.4%;
    margin-bottom: 6.4%;
  }
  div.bunner_footer {
    width: 100%;
    margin: 4.8% auto 4.8%;
  }
  /* 1column padding margin */
  footer.content_1column .footerinner {
    padding: 4.8% !important;
    margin-bottom: 0 !important;
  }
  footer.content_1column .footerinner p.footlogo {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
  p.footlogo img {
    vertical-align: bottom;
    max-height: 34px;
  }
  .footerinner {
    padding: 4.8%;
    margin-bottom: 4.8%;
  }
  p.footlogo {
    margin-bottom: 4.8%;
    justify-content: flex-end;
  }
  /* bunner_footer */
  div.bunner_footer {
    width: 30%;
  }
  /* 1column padding margin */
  footer.content_1column .footerinner {
    padding: 36px !important;
    margin-bottom: 0 !important;
  }
  footer.content_1column .footerinner p.footlogo {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
}
@media screen and (min-width: 1201px) {
  footer p.footlogo {
    margin-bottom: 36px;
  }
  p.footlogo img {
    max-height: 34px;
    vertical-align: bottom;
  }
  footer .footerinner {
    padding: 48px 48px;
    margin: 0 auto 48px;
    justify-content: space-between;
  }
  /* bunner_footer */
  div.bunner_footer {
    width: 30%;
  }
  div.footer_nav nav ul li:last-child {
    margin: 0 !important;
  }
  /* 1column padding margin */
  footer.content_1column .footerinner {
    padding: 36px !important;
    margin-bottom: 0 !important;
  }
  footer.content_1column .footerinner p.footlogo {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
}
/* footer navigation linkaction */
div.footer_nav nav ul li a {
  width: 100%;
  box-sizing: border-box;
  height: 44px;
  line-height: 44px;
  font-size: 11px;
  color: #fff;
  padding-left: 12px;
  display: block;
  position: relative;
  letter-spacing: 0.075em;
}

div.footer_nav nav ul li a:after {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  right: 12px;
  width: 4px;
  height: 4px;
  margin: -2px 0 0 0;
  border-top: solid 1px #fff;
  border-right: solid 1px #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

div.footer_nav nav ul li a:hover {
  background: #fff;
  color: #1e1e1e;
}

div.footer_nav nav ul li a:hover:after {
  border-top: solid 1px #1e1e1e !important;
  border-right: solid 1px #1e1e1e !important;
}

/* footer linkcolor */
footer a.a_btn::after {
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
}

footer a.a_btn:hover {
  border-bottom: solid 1px #1e1e1e;
  transition: all 0.4s;
  padding-left: 16px;
  font-weight: bold;
}

/* bunner_footer --------------------------- */
div.bunner_footer {
  box-sizing: border-box;
}

div.bunner_footer ul {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  box-sizing: border-box;
}

div.bunner_footer ul li {
  background: #fff;
  overflow: hidden;
  margin-bottom: 12px;
  box-sizing: border-box;
}

@media screen and (max-width: 768px) {
  div.bunner_footer ul {
    padding: 0 2.4%;
  }
  div.bunner_footer ul li {
    width: 50%;
  }
}
@media screen and (min-width: 769px) {
  div.bunner_footer ul {
    padding-right: 24px;
  }
  div.bunner_footer ul li {
    width: 100%;
  }
}
div.bunner_footer ul li img {
  width: 100%;
  height: 100%;
  min-height: 96px;
}

/* copyright ------------------------------- */
#copylight {
  width: 100%;
  background: #fff;
  font-size: 0.9em;
  color: #1e1e1e;
  height: 60px;
  line-height: 60px;
  padding-left: 4.8%;
  box-sizing: border-box;
}

@media screen and (min-width: 769px) {
  #copylight {
    text-align: center;
    padding-left: 0 !important;
  }
}
/* footer content nouse -------------------- */
/* SNS */
.snslinks {
  width: 100%;
  box-sizing: border-box;
  padding: 0 6.4%;
  margin-top: 8%;
}

.snslinks ul {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}

.snslinks ul li {
  width: 33.3333333333%;
}

.snslinks ul li:nth-child(-n+3) {
  margin-bottom: 12px;
}

.snslinks ul li a {
  width: 100%;
  display: block;
  color: #fff;
  font-size: 0.5em;
  text-align: center;
}

/* serchbox */
#serchbox {
  width: 87.2%;
  margin: 1.2% auto 4.8%;
  box-sizing: border-box;
  height: 36px;
  font-size: 14px;
  line-height: 36px;
  background: #fcfcfc;
}

/* post ------------------------------------ */
.sitemapbox {
  width: 100%;
  clear: both;
  overflow: hidden;
  box-sizing: border-box;
  margin-bottom: 12%;
}

div.post {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  box-sizing: border-box;
  font-size: 16px;
  border-top: solid 1px #efefef;
  border-bottom: solid 1px #efefef;
}

.postbox {
  flex: 0 0 50%;
  width: 50%;
  max-width: 50%;
  box-sizing: border-box;
  display: flex;
}

@media (min-width: 768px) {
  .sitemapbox {
    margin-bottom: 56px !important;
  }
  .postbox {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%;
  }
}
#single .serieslist {
  width: 100%;
  border-top: solid 1px #efefef;
  border-bottom: solid 1px #efefef;
}

#single .serieslist_item {
  width: 100%;
  display: block;
  box-sizing: border-box;
  padding: 10px 10px 6px;
  border-bottom: solid 1px #efefef;
  position: relative;
}

#single .serieslist_item:last-child {
  border-bottom: none;
}

#single a.serieslist_item:hover {
  color: #fff;
  background: #1e1e1e;
}

#single .serieslist_current {
  background: #e5e5e5;
}

#single .serieslist dl {
  margin: 0;
}

#single .serieslist dt {
  line-height: 1em;
  margin-bottom: 4px;
  font-size: 12px;
}

#single .serieslist dd {
  line-height: 1.5em;
  font-size: 14px;
  font-weight: bold;
}

#single .serieslist_note {
  display: block;
  margin: 4px 0 2px;
  font-size: 12px;
  font-weight: normal;
  line-height: 1.4em;
  color: #5e5e5e;
}

#single a.serieslist_item:hover .serieslist_note {
  color: #fff;
}

a.postlink {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  overflow: hidden;
  padding: 11.4% 6.4%;
}

a.postlink:hover {
  background: #dbca57;
}

a.postlink dl {
  width: 100%;
  box-sizing: border-box;
}

dt.postThumbnail {
  width: 100%;
  background: #d88082;
}

dt.postThumbnail img {
  vertical-align: bottom;
}

dd.posttags {
  width: 100%;
  background: #d7f3ff;
}

ul.postcontent {
  width: 68%;
  float: right;
  padding-left: 24px;
  box-sizing: border-box;
}

/* date */
.pagetitle {
  padding-top: 12px;
  line-height: 1em;
  position: relative;
  padding: 18px 0px 8px;
  box-sizing: border-box;
  margin-bottom: 8px;
  font-size: 12px;
  border-bottom: solid 1px #efefef;
  border-top: solid 1px #efefef;
}

.pagetitle::before {
  content: "Date";
  font-size: 10px;
  line-height: 1em;
  height: 10px;
  letter-spacing: 0.075em;
  color: #5e5e5e;
  position: absolute;
  top: 6px;
  left: 0px;
}

.pagetitle h3 {
  font-weight: bold;
}

/* title */
.pagecontent {
  min-height: 32px;
  line-height: 1.2em;
  position: relative;
  overflow: hidden;
  font-size: 13px;
  padding: 12px 0px 4px !important;
  border-bottom: solid 1px #efefef;
}

@media (min-width: 768px) {
  .pagecontent {
    padding: 12px 0px 10px !important;
  }
  .pagecontent {
    min-height: 32px;
    line-height: 1.2em;
    position: relative;
    overflow: hidden;
    font-size: 13px;
    padding: 12px 0px 14px;
  }
}
.pagecontent::before {
  content: "Title";
  font-size: 10px;
  line-height: 1em;
  height: 10px;
  color: #5e5e5e;
  letter-spacing: 0.075em;
  position: absolute;
  top: 0;
  left: 0;
}

p.no_image {
  width: 100%;
  position: relative;
}

p.no_image::after {
  width: 5.05em;
  height: 24px;
  line-height: 24px;
  font-size: 24px;
  content: "No Images";
  margin: auto;
  font-weight: bold;
  position: absolute;
  z-index: 10;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

/* 404 ------------------------------------- */
div.page404 ol {
  width: 100%;
  padding: 8% 0 8%;
  min-height: 700px;
  background-size: 92% auto;
  background-position: top center;
  position: relative;
  box-sizing: border-box;
}

div.page404 ol li a {
  width: 240px;
  text-align: center;
  box-sizing: border-box;
  padding: 3.2%;
  display: block;
  position: relative;
  background: #090909;
  color: #fff;
}

/* animation */
.msg {
  color: whitesmoke;
  text-align: center;
  font-family: "Bree Serif", Courier, monospaced;
  font-size: 1em;
  width: 20%;
  position: absolute;
  margin: 35px 0 0 2px;
  pointer-events: none;
}

@media screen and (max-width: 767px) {
  #contact {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  #contact {
    width: 88%;
    margin: 0 auto 0;
  }
}
/* contactform */
/* .contact お問い合わせフォーム 1colmn */
.content_1colmn .floatingmenu {
  display: none !important;
}

.step ul {
  width: 100%;
  background-color: #e5e5e5;
  box-sizing: border-box;
}

.cd-breadcrumb:after, .cd-multi-steps:after {
  content: "";
  display: table;
  clear: both;
}

.cd-breadcrumb li {
  display: inline-block;
  width: calc((100% - 4em) / 3);
  float: left;
}

.cd-breadcrumb li:last-of-type::after {
  /* hide separator after the last item */
  display: none;
}

.cd-breadcrumb li > * {
  /* single step */
  display: inline-block;
  color: #000;
}

.cd-breadcrumb.triangle {
  /* reset basic style */
  background-color: transparent;
  padding: 0;
}

.cd-breadcrumb.triangle li {
  width: calc((100% - 8px) / 3);
  position: relative;
  padding: 0;
  margin: 4px 4px 4px 0;
}

.cd-breadcrumb.triangle li:last-of-type {
  margin-right: 0;
}

.cd-breadcrumb.triangle li > * {
  width: 100%;
  font-size: 20px;
  position: relative;
  padding: 15px 1.1em 15px 2.5em;
  box-sizing: border-box;
  color: #000;
  background-color: #e5e5e5;
  border-color: #e5e5e5;
}

.cd-breadcrumb.triangle li.current > * {
  color: #fff;
  background-color: #e84572;
  border-color: #e84572;
  text-decoration: none;
}

.cd-breadcrumb.triangle li:first-of-type > * {
  padding-left: 1.6em;
  border-radius: 0.25em 0 0 0.25em;
}

.cd-breadcrumb.triangle li:last-of-type > * {
  border-radius: 0 0.25em 0.25em 0;
}

.cd-breadcrumb.triangle li::after, .cd-breadcrumb.triangle li > *::after {
  content: "";
  position: absolute;
  top: 0;
  left: 100%;
  height: 0;
  width: 0;
  border: 30px solid transparent; /* triangle height */
  border-right-width: 0;
  border-left-width: 20px;
}

/* this is the white separator between two items */
.cd-breadcrumb.triangle li::after {
  z-index: 1;
  -webkit-transform: translateX(4px);
  -moz-transform: translateX(4px);
  -ms-transform: translateX(4px);
  -o-transform: translateX(4px);
  transform: translateX(4px);
  border-left-color: #fff;
  /* reset style */
  margin: 0;
}

/* this is the colored triangle after each element */
.cd-breadcrumb.triangle li > *::after {
  z-index: 2;
  border-left-color: inherit;
}

/* hide the triangle after the last step */
.cd-breadcrumb.triangle li:last-of-type::after, .cd-breadcrumb.triangle li:last-of-type > *::after {
  display: none;
}

.checkedstep {
  background: #b2b2b2;
}

.formdesc {
  font-size: 14px;
}

.formdesc p:nth-child(1) {
  padding-bottom: 16px;
}

.formdesc dl dd ul li:nth-child(3) {
  text-indent: 1em;
}

.forminner {
  width: 100%;
  border: solid 1px #b2b2b2;
  box-sizing: border-box;
  margin-bottom: 48px;
}

.form dl {
  width: 100%;
  display: table;
  box-sizing: border-box;
  font-size: 16px;
  border-bottom: solid 1px #b2b2b2;
}

.form dl:nth-last-child(1) {
  border-bottom: none;
}

.form dl dt {
  width: 242px;
  padding: 12px;
  display: table-cell;
  box-sizing: border-box;
  background: #f5fbf7;
  vertical-align: middle;
}

dl.mail dd, dl.tel dd {
  padding-top: 21px !important;
}

.form dl dt span {
  color: #ff0000;
  padding-left: 12px;
}

.form dl dd {
  width: calc(100% - 242px);
  padding: 12px;
  border-left: solid 1px #b2b2b2;
  background: #fff;
  box-sizing: border-box;
  display: table-cell;
}

.form dl.inquiry dd {
  padding-left: 32px !important;
}

.inquiry .wpcf7-list-item label input {
  border: none !important;
  display: inline;
}

.wpcf7-list-item {
  position: relative;
  cursor: pointer;
}

span.wpcf7-list-item label {
  position: relative;
}

span.wpcf7-list-item label input {
  position: relative;
  padding-left: 20px;
}

span.wpcf7-list-item label input::before {
  width: 14px;
  height: 14px;
  background: #fff;
  border: solid 1px #000;
  content: "";
  border-radius: 50%;
  position: absolute;
  left: 0;
  box-sizing: border-box;
  top: -1px;
}

span.wpcf7-list-item label input:checked::after {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #000;
  content: "";
  position: absolute;
  left: 2px;
  top: 1px;
  border: none !important;
  box-shadow: none !important;
}

/* name kana -------------------- */
.wpcf7 input[name=sei], .wpcf7 input[name=mei], .wpcf7 input[name=kanamei], .wpcf7 input[name=kanasei] {
  width: 100%;
  height: 32px !important;
  padding: 0 8px;
  box-sizing: border-box;
}

.wpcf7 input[name=text-548], .wpcf7 input[name=text-549], .wpcf7 input[name=product] {
  width: 100%;
  height: 32px !important;
  padding: 0 8px;
}

.name dd ul {
  width: 100%;
  clear: both;
  overflow: hidden;
}

.name dd ul li {
  float: left;
}

.name dd ul li:nth-child(1) {
  width: 10%;
  line-height: 32px;
}

.name dd ul li:nth-child(2) {
  width: 34%;
  margin-right: 12%;
}

.name dd ul li:nth-child(3) {
  width: 10%;
  line-height: 32px;
}

.name dd ul li:nth-child(4) {
  width: 34%;
}

.kana dd ul {
  width: 100%;
  clear: both;
  overflow: hidden;
}

.kana dd ul li {
  float: left;
}

.kana dd ul li:nth-child(1) {
  width: 10%;
  line-height: 32px;
}

.kana dd ul li:nth-child(2) {
  width: 34%;
  margin-right: 12%;
}

.kana dd ul li:nth-child(3) {
  width: 10%;
  line-height: 32px;
}

.kana dd ul li:nth-child(4) {
  width: 34%;
}

dl.tel dd ol {
  width: 100%;
  clear: both;
  overflow: hidden;
}

dl.tel ol li {
  float: left;
}

dl.tel ol li:nth-child(1), dl.tel ol li:nth-child(3), dl.tel ol li:nth-child(5) {
  width: 28%;
  width: 28%;
}

dl.tel ol li:nth-child(2), dl.tel ol li:nth-child(4) {
  width: 8%;
  text-align: center;
  line-height: 32px;
}

.wpcf7 textarea {
  width: 100%;
  height: 100px !important;
}

.wpcf7 input[type=email], .wpcf7 text {
  width: 100%;
  height: 32px !important;
}

.wpcf7 input[type=tel] {
  width: 100%;
  height: 32px !important;
}

.wpcf7 input[type=submit] {
  background: #1e1e1e;
  border-radius: 4px;
  color: #fff;
  width: 88%;
  height: 88px;
  font-size: 30px;
  box-sizing: border-box;
  border: solid 1px #efefef;
}

.formdesc {
  margin-bottom: 6.4%;
  line-height: 1.8em;
}

.descbtn p.wpcf7c-elm-step1 {
  width: 100%;
  margin-bottom: 48px;
  clear: both;
  text-align: center;
  overflow: hidden;
}

.descbtn p.wpcf7c-elm-step2 {
  width: 100%;
  margin-bottom: 48px;
  text-align: center;
  clear: both;
  overflow: hidden;
}

/* SP&Tab floating menu p a des */
@media screen and (max-width: 640px) {
  #myBtn {
    width: 60px;
    height: 60px;
    line-height: 60px;
    display: none;
    position: fixed;
    right: 6.4%;
    bottom: 16px;
    z-index: 99;
    border-radius: 50%;
    background: #efefef;
    border: 1px solid #efefef;
    display: block;
    box-sizing: border-box;
    font-size: 0.8em;
    letter-spacing: -0.015em;
    text-align: center;
  }
  #myBtn:hover {
    color: #fff;
    background: #e84d50;
  }
}
/* PC floating menu p a des */
@media screen and (min-width: 641px) {
  #myBtn {
    width: 74px;
    height: 74px;
    line-height: 74px;
    display: none;
    position: fixed;
    bottom: 48px;
    right: 48px;
    z-index: 99;
    background: #fff;
    border: 1px solid #efefef;
    display: block;
    box-sizing: border-box;
    border-radius: 50%;
    font-size: 0.7em;
    text-align: center;
  }
  #myBtn:hover {
    color: #fff;
    background: #e84d50;
  }
}
.fadein {
  animation-name: fadein;
  animation-duration: 40s;
  animation-timing-function: ease-out;
  animation-delay: 1s;
  animation-iteration-count: 1;
  animation-direction: normal;
  animation-fill-mode: forwards;
}

@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@media screen and (max-width: 767px) {
  /*
  ** 320px -767px
  */
  .spno {
    display: none !important;
  }
  .mgnbtm48 {
    margin-bottom: 4.8%;
  }
  .mgnbtm64 {
    margin-bottom: 6.4%;
  }
  .btm_content {
    margin-bottom: 16%;
  }
  /* header --------------------------------------- */
  div.headlogobox p {
    background-position: 6.4% center;
    background-size: auto 36px !important;
    font-size: 0;
  }
  div.headlogobox p a {
    width: 30%;
    max-width: 240px;
    display: block;
    height: 68px;
    line-height: 68px;
  }
  /* #contents ----------------------------------- */
  /* -- main contents -- #main_cnt */
  #contents {
    width: 100%;
    padding: 6.4%;
    box-sizing: border-box;
  }
  #main_cnt {
    width: 100%;
  }
  /* -- #sub_cnt in sidebar.css ------------------ */
  /* footer -------------------------------------- */
  /* div.footer_nav nav#footer_nav */
  div.footer_nav {
    width: 100%;
  }
  #single {
    padding-top: 24px;
  }
}
@media screen and (max-width: 1024px) {
  /* #icon animation ------------------------------ */
  .menu-trigger.active span:nth-of-type(1) {
    -webkit-transform: translateY(11px) rotate(-45deg);
    transform: translateY(10px) rotate(-45deg);
  }
  .menu-trigger.active span:nth-of-type(2) {
    opacity: 0;
  }
  .menu-trigger.active span:nth-of-type(3) {
    -webkit-transform: translateY(-11px) rotate(45deg);
    transform: translateY(-10px) rotate(45deg);
  }
  /* SP Tab menu_btn --------------------------- */
  #nav-open {
    width: 48px;
    height: 44px;
    position: fixed;
    box-sizing: border-box;
    vertical-align: middle;
    z-index: 100;
    background: #fff;
    border: solid 1px #efefef;
    cursor: pointer;
    display: inline-block;
    transition: all 0.4s;
  }
  /*menu button location */
}
@media screen and (max-width: 1024px) and (max-width: 767px) {
  #nav-open {
    right: 6.4%;
    top: 12px;
  }
}
@media screen and (max-width: 1024px) and (min-width: 768px) and (max-width: 1024px) {
  #nav-open {
    right: 6.4%;
    top: 12px;
  }
}
@media screen and (max-width: 1024px) {
  /*ハンバーガーアイコン*/
  #nav-open span {
    position: absolute;
    height: 2px; /*線の太さ*/
    margin: 0 7px;
    box-sizing: border-box;
    display: inline-block;
    transition: all 0.4s;
    width: 32px; /*長さ*/
    background: #1e1e1e;
    border-radius: 25%;
    cursor: pointer;
    z-index: 9999;
  }
  #nav-open span:nth-of-type(1) {
    top: 10px;
  }
  #nav-open span:nth-of-type(2) {
    top: 20px;
  }
  #nav-open span:nth-of-type(3) {
    bottom: 10px;
  }
  #nav-drawer {
    position: relative;
    transition: 0.4s ease-in-out;
  }
  /*チェックボックス等は非表示に*/
  .nav_unshown {
    display: none;
  }
  /*閉じる用の薄黒カバー*/
  #nav-close {
    display: none; /*はじめは隠しておく*/
    position: fixed;
    z-index: 99;
    top: 0; /*全体に広がるように*/
    left: right;
    width: 100%;
    height: 100%;
    background: white;
    opacity: 0;
    transition: 0.4s ease-in-out;
  }
  /*中身*/
  #nav-content {
    overflow: auto;
    position: fixed;
    top: 0;
    height: 100%;
    left: 0;
    z-index: 9999; /*最前面に*/
    width: 68%; /*右側に隙間を作る*/
    max-width: 330px; /*最大幅*/
    background: #fff; /*背景色*/
    /* transition: .4s ease-in-out;/*滑らかに表示*/
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%); /*左に隠しておく*/
    box-sizing: border-box;
    transition: transform 400ms linear;
  }
  /*チェックが入ったらもろもろ表示*/
  #nav-input:checked ~ #nav-close {
    display: block; /*カバーを表示*/
    opacity: 0.5;
  }
  #nav-input:checked ~ #nav-content {
    -webkit-transform: translateX(0%);
    transform: translateX(0%); /*中身を表示*/
    transition: transform 400ms linear;
    box-shadow: 6px 0 25px rgba(0, 0, 0, 0.15);
  }
  /* #side-cnt -- drawer中身 ---------------- */
  .navlogo {
    background: url(../images/logo/logo_02.png) no-repeat;
    background-position: top center;
    background-size: auto 32px;
    height: 32px;
    margin: 24px 0 16px;
    font-size: 0;
  }
  .navlogo p {
    width: 100%;
    height: 32px;
  }
  .title_box_side {
    margin-bottom: 8px;
    margin-top: 0px;
    box-sizing: border-box;
    padding: 0 6.4%;
  }
  .title_box_side p {
    padding-left: 4px;
    box-sizing: border-box;
  }
  .title_news_side {
    font-size: 1.2em;
    line-height: 1em;
    margin-bottom: 4px;
  }
  .title_ruby_side {
    font-size: 0.7em;
    letter-spacing: 0.075em;
    color: #7a7a7a;
  }
  /* base link action -------------------- */
  #sub_cnt nav ul {
    border-top: solid 1px #e4e4e4;
  }
  #sub_cnt nav ul li {
    border-bottom: solid 1px #e4e4e4;
  }
  #sub_cnt nav ul li a {
    width: 100%;
    display: block;
    height: 40px;
    line-height: 40px;
    color: #1e1e1e;
    box-sizing: border-box;
    padding-left: 6.4%;
    font-size: 14px !important;
    position: relative;
  }
  #sub_cnt nav ul li a:after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    right: 6.4%;
    width: 3px;
    height: 3px;
    margin: -2px 0 0 0;
    border-top: solid 2px #1e1e1e;
    border-right: solid 2px #1e1e1e;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  #sub_cnt nav ul li a:hover {
    background: #1e1e1e;
    color: #fff;
    border-bottom: solid 2px #1e1e1e;
    transition: all 0.4s;
  }
  #sub_cnt nav ul li a:hover:after {
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
  }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
  /* tablet content hidden  */
  .tabno {
    display: none !important;
  }
  .mgnbtm48 {
    margin-bottom: 48px;
  }
  .mgnbtm64 {
    margin-bottom: 64px;
  }
  /* header --------------------------------------- */
  header {
    width: 100%;
    box-sizing: border-box;
    border-bottom: solid 1px #efefef;
  }
  .headerinner {
    width: 100%;
  }
  div.headlogobox p {
    background-position: center center;
    background-size: auto 32px !important;
    font-size: 0;
  }
  div.headlogobox p a {
    width: 32%;
    height: 100%;
    padding: 32px 0;
    display: block;
    margin: 0 auto;
  }
  div.headlogobox p a img {
    max-width: 144px;
  }
  div.head_nav {
    display: none;
  }
  /* -- main contents -- #main_cnt -------------------- */
  /* #contents */
  #contents {
    width: 100%;
  }
  /* main content start end border */
  #main_cnt {
    width: 87.2%;
    position: relative;
    border-top: solid 1px #efefef;
    border-bottom: solid 1px #efefef;
    box-sizing: border-box;
    margin: 6.4% auto;
  }
  #main_cnt::before {
    width: 100%;
    content: "";
    background: #efefef;
    display: block;
    height: 1px;
    position: absolute;
    top: 8px;
    right: 0;
  }
  #main_cnt::after {
    width: 100%;
    content: "";
    background: #efefef;
    display: block;
    height: 1px;
    position: absolute;
    bottom: 8px;
    right: 0;
  }
  #single {
    width: 100%;
    box-sizing: border-box;
  }
  /* footer ------------------------ */
  /* div.footer_nav nav#footer_nav */
  div.footer_nav {
    width: 60%;
  }
  div.footer_nav nav ul li {
    width: 100%;
  }
  div.footer_nav nav ul li a {
    font-size: 11px;
  }
}
@media screen and (min-width: 1025px) {
  /*
  ** 768px-1024px & 1025px-1200px & 1201px
  */
  .pcno {
    display: none !important;
  }
  .mgnbtm48 {
    margin-bottom: 48px;
  }
  .mgnbtm64 {
    margin-bottom: 64px;
  }
  /* header --------------------------------------- */
  header {
    width: 100%;
    border-bottom: solid 1px #efefef;
  }
  .headerinner {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  div.headlogobox p {
    background-position: left center;
    background-size: auto 34px !important;
  }
  /* header padding*/
}
@media screen and (min-width: 1025px) and (max-width: 1200px) {
  .headerinner {
    padding: 0px 4.8%;
  }
}
@media screen and (min-width: 1025px) and (min-width: 1201px) {
  .headerinner {
    padding: 0px 64px;
  }
}
@media screen and (min-width: 1025px) {
  div.headlogobox {
    width: 88px;
    box-sizing: border-box;
  }
  header div.headlogobox p {
    width: 100%;
    margin: 0 auto;
    background-position: left center;
  }
  div.headlogobox p a {
    width: 100%;
    height: 60px;
    display: block;
  }
}
@media screen and (min-width: 1025px) {
  /* content_1colmn */
  header.content_1colmn .headlogobox {
    margin: 0 auto !important;
  }
  /* header navigation ----------- */
  div.head_nav {
    width: calc(100% - 88px);
  }
  div.head_nav nav#head_nav ul {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    align-items: flex-end;
  }
  div.head_nav nav#head_nav li a {
    width: 100%;
    display: block;
    color: #1e1e1e;
    box-sizing: border-box;
    font-size: 12px;
    height: 60px;
    padding: 0 24px;
    line-height: 60px;
  }
  div.head_nav nav#head_nav li a:hover {
    text-decoration: underline;
    color: #1e1e1e;
    background: #efefef;
    border-bottom: none;
  }
  /* Contents ----------------------------------------- */
  /* #contents ------------------------- */
  #contents {
    width: 100%;
    max-width: 1200px;
    box-sizing: border-box;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    position: relative;
    /* media query */
    padding: 0 4.8%;
    margin: 4.8% auto;
  }
  /* #main_cnt -- width ---------------- */
  #main_cnt {
    /* media query */
    width: 71.2%;
    margin-right: 4.8%;
  }
  /* main content start end border */
  #main_cnt {
    position: relative;
    border-top: solid 1px #efefef;
    border-bottom: solid 1px #efefef;
    box-sizing: border-box;
  }
  #main_cnt::before {
    width: 100%;
    content: "";
    background: #efefef;
    display: block;
    height: 1px;
    position: absolute;
    top: 8px;
    right: 0;
  }
  #main_cnt::after {
    width: 100%;
    content: "";
    background: #efefef;
    display: block;
    height: 1px;
    position: absolute;
    bottom: 8px;
    right: 0;
  }
}
@media screen and (min-width: 1025px) and (min-width: 1201px) {
  #contents {
    padding: 0px 64px 0px;
    margin: 64px auto 88px !important;
  }
  #main_cnt {
    width: calc(76% - 64px);
    margin-right: 64px;
  }
}
@media screen and (min-width: 1025px) {
  /* 1column width100% */
  .content_1column #main_cnt {
    width: 88%;
    margin: 0 auto 0 !important;
  }
  /* #sub_cnt  -- width --------------- */
  #sub_cnt {
    width: 24%;
  }
  .content_1column #sub_cnt {
    display: none;
  }
  /* #sub_cnt ----------------------------------------- */
  .nav-unshown, .navlogo {
    display: none;
  }
  #sub_cnt nav ul li a {
    width: 100%;
    display: block;
    height: 36px;
    line-height: 36px;
    color: #0c0b0b;
    box-sizing: border-box;
    position: relative;
    font-size: 12px;
    letter-spacing: 0.045em;
  }
  #sub_cnt nav ul li a:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 12px;
    width: 2px;
    height: 2px;
    margin: -1px 0 0 0;
    border-top: solid 1px #1e1e1e;
    border-right: solid 1px #1e1e1e;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  #sub_cnt nav ul li a:hover {
    transition: all 0.8s;
    padding-left: 8px;
  }
  /* footer ------------------------------- */
  /* div.footer_nav nav#footer_nav */
  div.footer_nav {
    width: 70%;
  }
  div.footer_nav nav ul {
    display: flex;
    flex-wrap: wrap;
    box-sizing: border-box;
  }
  div.footer_nav nav ul li {
    width: 25%;
  }
  div.footer_nav nav ul li a {
    font-size: 0.7em;
    height: 32px;
    line-height: 32px;
  }
  #single {
    padding-top: 16px;
  }
}
@media (max-width: 767px) {
  body.home {
    /* main visual #mavisual ---------------- */
  }
  body.home #mavisual {
    width: 100%;
  }
  body.home #mavisualinner {
    width: 100%;
    background-size: cover;
    background-position: center center;
  }
  body.home {
    /* main visual */
  }
  body.home #mavisual .h1box {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    padding: 12.8% 9.6% 10.8%;
    position: relative;
    background: rgba(255, 255, 255, 0.6);
    align-self: center;
    background-size: cover;
  }
  body.home .h1box h1 span {
    width: 100%;
    display: block;
  }
  body.home .h1subtxt {
    font-size: 1.6rem;
    border-bottom: solid 1px #1e1e1e;
    border-top: solid 1px #1e1e1e;
    letter-spacing: 0.025em;
    padding: 5.4% 0 4.6%;
    text-align: center;
    line-height: 1.5em;
  }
  body.home .mvft_bg {
    font-size: 2.6em;
    text-align: center;
    padding: 11.8% 0 6.4%;
    line-height: 1em;
  }
  body.home .h1box ul {
    width: 100%;
    line-height: 1.8em;
    padding-top: 9%;
  }
  body.home .h1box ul li:nth-child(1) {
    font-size: 1.25em;
  }
  body.home li.pc_tellbtn {
    width: 80.8%;
    position: absolute;
    bottom: 12.6%;
    left: 9.6%;
  }
  body.home .pc_tellbtn a {
    width: 100%;
    color: #fff;
    text-decoration: none;
    line-height: 44px;
    height: 44px;
    padding: 0 6.4%;
    box-sizing: border-box;
    background: #1e1e1e;
    display: block;
    letter-spacing: 0.075em;
    border-radius: 3px;
    position: relative;
  }
  body.home .pc_tellbtn a:hover {
    background: #ea1525;
    color: #fff;
  }
  body.home .pc_tellbtn a:after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    right: 6.4%;
    width: 3px;
    height: 3px;
    margin: -2px 0 0 0;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  body.home {
    /* contents -------------------------------- */
    /* -- main contents -- #main_cnt -- */
  }
  body.home div.newsbox {
    width: 100%;
    border-bottom: solid 1px #efefef;
    padding-bottom: 1.25em;
    margin-bottom: 12%;
    clear: both;
    overflow: hidden;
    position: relative;
  }
  body.home p.news_title {
    font-size: 14px;
    line-height: 44px;
    height: 44px;
    text-indent: 1.6%;
    display: block;
    box-sizing: border-box;
    letter-spacing: 0.05em;
    border-top: solid 1px #efefef;
    border-bottom: solid 1px #efefef;
  }
  body.home {
    /* news allposts btn in p.news_title ------ */
  }
  body.home p.allnews {
    width: 30%;
    position: absolute;
    right: 0;
    top: 0;
  }
  body.home p.allnews a {
    width: 100%;
    display: block;
    font-size: 0.7em;
    line-height: 44px;
    height: 44px;
    position: relative;
    box-sizing: border-box;
    padding: 0 12px;
    background: #1e1e1e;
    color: #fff;
  }
  body.home p.allnews a::after {
    right: 12px;
    border-color: #fff;
  }
  body.home .topicbox a {
    width: 100%;
    display: block;
    position: relative;
  }
  body.home {
    /* NEWS link_action */
  }
  body.home .topicbox a:hover {
    background: #f1f1f1;
  }
  body.home .topicbox a::after {
    display: block;
    content: "";
    position: absolute;
    bottom: 46%;
    right: 12px;
    width: 4px;
    height: 4px;
    margin: -2px 0 0 0;
    border-top: solid 1px #0c0b0b;
    border-right: solid 1px #0c0b0b;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  body.home .newsbox dl {
    width: 100%;
    padding: 2.2% 1.6% 1.8%;
    box-sizing: border-box;
    margin-bottom: 0;
    border-bottom: solid 1px #efefef;
  }
  body.home .newsbox dl dt {
    line-height: 1em;
    margin-bottom: 4px;
    font-size: 13px;
  }
  body.home .newsbox dl dd {
    line-height: 1.5em;
    font-size: 14px;
  }
  body.home {
    /* cntent base css */
  }
  body.home .content_base {
    width: 100%;
    box-sizing: border-box;
    clear: both;
    overflow: hidden;
    padding-bottom: 6.4%;
  }
  body.home {
    /* recommended ------------------------------- */
    /*  */
  }
  body.home .recommendtitlle {
    width: 100%;
    font-size: 14px;
    line-height: 44px;
    height: 44px;
    box-sizing: border-box;
    padding: 0px 1.6% 0px;
    display: block;
    margin-bottom: 6.4%;
    border-top: solid 1px #efefef;
    border-bottom: solid 1px #efefef;
  }
  body.home #recommended {
    width: 100%;
    clear: both;
    overflow: hidden;
    border-bottom: solid 1px #efefef;
    box-sizing: border-box;
  }
  body.home .recommendbox {
    width: 46.8%;
    box-sizing: border-box;
    float: left;
    padding: 0px 0 12%;
    margin-bottom: 6.4%;
    position: relative;
    border-bottom: solid 1px #efefef;
  }
  body.home #recommended .recommendbox:nth-child(odd) {
    margin-left: 6.4%;
  }
  body.home .recommendbox div dl {
    width: 100%;
    padding: 0px 0px 0;
    box-sizing: border-box;
  }
  body.home .recommendbox div dl dt {
    width: 100%;
    margin-bottom: 12px;
    line-height: 1.2em;
  }
  body.home .recommendbox div dl dt img {
    width: 100%;
    height: auto;
  }
  body.home .recommendbox div dl dd {
    font-size: 0.9em;
    line-height: 1.4em;
  }
  body.home .recommendbox div dl dd:nth-child(2) {
    margin-bottom: 10px;
  }
  body.home .recommendbox div h3 {
    font-size: 1em;
    font-weight: bold;
    line-height: 1em;
  }
  body.home .recommendbox div dl dd:nth-child(3) {
    line-height: 1.5em;
  }
  body.home .recommendbox div dl dd:nth-child(4) {
    font-size: 0.9em;
    line-height: 1em;
    position: absolute;
    right: 0px;
    bottom: 11px;
    text-align: center;
    background: #dd5053;
    color: #fff;
    padding: 3.5px 5px 3px;
    box-sizing: border-box;
  }
  body.home .trianglebox {
    width: 100%;
    position: relative;
    display: block;
    line-height: 1;
  }
  body.home .trianglebox::before {
    content: "";
    top: 0;
    left: 0;
    border-bottom: 2.4em solid transparent;
    border-left: 2.4em solid #db4648;
    position: absolute;
  }
  body.home .trianglebox::after {
    content: "";
    right: 0;
    bottom: 0;
    border-top: 2.4em solid transparent;
    border-right: 2.4em solid #db4648;
    position: absolute;
  }
  body.home {
    /* content ------------------------------- */
  }
  body.home .content_base {
    width: 100%;
    margin-bottom: 8%;
    font-size: 1.4rem;
  }
  body.home .content_base:last-child {
    margin-bottom: 0 !important;
  }
  body.home {
    /* .content_index1 */
  }
  body.home .content_index1 p {
    width: 100%;
    display: block;
    background: url(../images/sp_img/sp_mv01.png) no-repeat;
    background-position: center top;
    background-size: cover;
    padding-top: 64%;
    line-height: 1;
    font-size: 0;
    margin-bottom: 4.8%;
  }
  body.home {
    /* content_2 */
  }
  body.home .content_2 h2, body.home .content_3 h2 {
    font-size: 16px;
    line-height: 1.2em;
    margin-bottom: 3.6%;
  }
  body.home .content_2 ul {
    margin-bottom: 6.4%;
  }
  body.home {
    /* content_3 */
    /* content_3 text */
  }
  body.home {
    /* content_3 -- */
  }
  body.home {
    /* content_4 */
  }
  body:not(.home) {
    /* main visual #mavisual */
  }
  body:not(.home) #mavisual {
    width: 100%;
    background-position: center center;
    background-size: cover;
  }
  body:not(.home) #mavisualinner {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: inline-flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    ex-direction: column-reverse;
    background: rgba(255, 255, 255, 0.75);
  }
  body:not(.home) .mavbox {
    width: 100%;
    padding: 2% 0;
    background: #1e1e1e;
    box-sizing: border-box;
  }
  body:not(.home) #mavboxinner {
    max-width: 800px;
    padding: 0 6.4%;
    margin: 0 auto;
    box-sizing: border-box;
  }
  body:not(.home) #mavisual ul {
    box-sizing: border-box;
    margin: 0 auto;
    letter-spacing: 0.145em;
    font-size: 1.25em !important;
    color: #fff;
  }
  body:not(.home) #mavisual ul li {
    padding-top: 0.1em;
    line-height: 1.2em;
  }
  body:not(.home) #mavisual ul li:nth-child(1) {
    font-size: 2.4em;
  }
  body:not(.home) {
    /* #contents */
    /* main content start end border */
  }
  body:not(.home) #main_cnt {
    border-top: solid 1px #efefef;
    border-bottom: solid 1px #efefef;
  }
  body:not(.home) #main_cnt::before {
    width: 100%;
    content: "";
    background: #efefef;
    display: block;
    margin-top: 8px;
    height: 1px;
  }
  body:not(.home) #main_cnt::after {
    width: 100%;
    content: "";
    background: #efefef;
    display: block;
    margin-bottom: 8px;
    height: 1px;
  }
  body:not(.home) #main_cnt > div {
    padding-bottom: 16%;
  }
  body:not(.home) {
    /* text base page */
  }
  body:not(.home) {
    /* caption,bodytext  */
  }
  body:not(.home) .content_1 {
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 6.4%;
    position: relative;
  }
  body:not(.home) {
    /* -- main contents -- #main_cnt -- */
  }
  body:not(.home) .content_1 h2 {
    width: 100%;
    padding: 12px 0 8px;
    line-height: 1em;
    font-size: 1.3em;
    letter-spacing: 0.075em;
    box-sizing: border-box;
  }
  body:not(.home) .cnt1_mgn {
    margin-bottom: 12%;
  }
  body:not(.home) .content_1 > p {
    width: 40%;
    line-height: 1em;
    padding-bottom: 3px;
    text-align: right;
    color: #8e8e8e;
    position: absolute;
    right: 0;
    top: 63px;
    font-size: 0.8em;
    border-bottom: solid 1px #efefef;
  }
  body:not(.home) .content_1 dl {
    width: 100%;
    position: relative;
    margin-bottom: 64px;
    clear: both;
    overflow: hidden;
  }
  body:not(.home) .content_1 dl dt {
    border-bottom: dotted 1px #efefef;
    box-sizing: border-box;
    font-size: 0.9em;
    display: block;
    line-height: 1.2em;
    padding-bottom: 31px;
  }
  body:not(.home) .content_1 dl dd {
    font-size: 14px;
    line-height: 2em;
  }
  body:not(.home) .content_1 dl dd:nth-child(2) {
    width: 100%;
    line-height: 0;
    margin-bottom: 16px;
    box-sizing: border-box;
    position: relative;
    padding-top: 36%;
  }
  body:not(.home) dd.noimgbox {
    font-size: 0 !important;
    padding-top: 0 !important;
  }
  body:not(.home) {
    /* 下層MV  */
  }
  body:not(.home) .mvbg_pricelist {
    background: url(../images/sp_img/sp_mv01.png) no-repeat;
    background-size: cover;
    background-position: center center;
    padding-top: 36%;
    padding-bottom: 36%;
  }
  body:not(.home) .mvbg_pricelist ul li svg {
    fill: #f25a78;
  }
  body:not(.home) .mvbg_recruit {
    background: url(../images/sp_img/mv_recruit_sp.png) no-repeat;
    background-size: cover;
    background-position: center top;
  }
  body:not(.home) .mvbg_recruit ul li svg {
    fill: #41b7a0;
  }
  body:not(.home) .mvbg_overview {
    background: url(../images/lower_mv/mv_overview.png) no-repeat;
    background-size: cover;
    background-position: center top;
  }
  body:not(.home) .mvbg_overview ul li svg {
    fill: #f5ff83;
  }
  body:not(.home) .mvbg_orderflow {
    background: url(../images/lower_mv/mv_hiyou.png) no-repeat;
    background-size: cover;
    background-position: center top;
  }
  body:not(.home) .mvbg_orderflow ul li svg {
    fill: #f25a78;
  }
  body:not(.home) .mvbg_allpost {
    background: url(../images/img_material/images.jpg) no-repeat;
    background-size: cover;
    background-position: center top;
  }
  body:not(.home) .content_1 dl dd:nth-child(2) ul {
    width: 100%;
    box-sizing: border-box;
    padding: 0% 0 4.8% 6.4%;
  }
  body:not(.home) .content_1 dl dd:nth-child(2) ul li {
    color: #fff;
    font-weight: bold;
  }
  body:not(.home) {
    /* content_1 ul under image */
  }
  body:not(.home) .content_1 dl dd:nth-child(2) ul li:nth-child(1) {
    width: 16%;
    position: absolute;
    left: 0;
    top: 0;
  }
  body:not(.home) .content_1 dl dd:nth-child(2) ul li:nth-child(2) {
    width: 16%;
    transform: rotate(180deg);
    position: absolute;
    bottom: 0;
    right: 0;
  }
  body:not(.home) .content_1 dl dd:nth-child(2) ul li:nth-child(3) {
    font-size: 1.1em;
    line-height: 1.3em;
    margin-bottom: 1.2%;
  }
  body:not(.home) .content_1 dl dd:nth-child(2) ul li:nth-child(4) {
    font-size: 1.6em;
    line-height: 1.2em;
  }
  body:not(.home) dl.lower_title {
    box-sizing: border-box;
    padding: 8px 0px 10px;
  }
  body:not(.home) dl.lower_title dt {
    border-bottom: dotted 1px #efefef;
    box-sizing: border-box;
    padding: 4px 0 10px;
    margin-bottom: 14px;
    font-size: 0.85em;
    letter-spacing: 0.055em;
  }
  body:not(.home) dl.lower_title dd:nth-child(3) {
    padding-bottom: 0px;
  }
  body:not(.home) .content_recruit dl.lower_title dd {
    margin-bottom: 16%;
  }
  body:not(.home) dl.lower_title dl dd ul {
    margin-bottom: 48px;
  }
  body:not(.home) dl.lower_title dl dd ul li {
    line-height: 1.8em;
  }
  body:not(.home) dl.lower_title dd ul li:nth-child(1) {
    width: 100%;
    border-bottom: dotted 1px #1e1e1e;
    padding: 4px 8px 1px;
    margin-bottom: 24px;
    position: relative;
    box-sizing: border-box;
    font-size: 1.1em;
    letter-spacing: 0.105em;
  }
  body:not(.home) dl.lower_title dd ul li:nth-child(1)::before {
    content: "";
    height: 66px;
    width: 66px;
    border-radius: 50%;
    border: solid 1px #b82a2c;
    position: absolute;
    z-index: -1;
    top: -12px;
    left: -16px;
  }
  body:not(.home) {
    /* 会社概要 - overview - */
  }
  body:not(.home) .googlemap {
    margin: 12px 0 12px;
    width: 100%;
    height: 360px;
  }
  body:not(.home) .googlemap iframe {
    width: 100%;
    min-height: 320px;
  }
  body:not(.home) .mgnbtm120 {
    margin-bottom: 16%;
  }
  body:not(.home) {
    /* site_map */
  }
  body:not(.home) .sitemapbox {
    margin-bottom: 12.8%;
  }
  body:not(.home) #sitemap_sitepage ul {
    width: 100%;
    clear: both;
    overflow: hidden;
  }
  body:not(.home) #sitemap_sitepage ul li {
    width: 50%;
    background: #edb559;
    margin-bottom: 2.4%;
    float: left;
  }
  body:not(.home) #sitemap_sitepage ul li a {
    width: 100%;
    font-size: 1.2em;
    display: block;
    box-sizing: border-box;
    padding: 12px;
    text-align: center;
  }
  body:not(.home) #sitemap_sitepage ul li:last-child {
    margin-bottom: 0;
  }
  body:not(.home) .content_single {
    padding-top: 24px;
    padding-bottom: 44px;
  }
  body:not(.home) .content_single > h2 {
    padding-bottom: 12px;
    border-bottom: solid 1px #efefef;
    font-size: 1.3em;
    line-height: 1.45em;
    letter-spacing: 0.075em;
  }
  body:not(.home) .single_cnt1 {
    padding: 12px 0;
    border-bottom: dotted 1px #efefef;
    color: #7a7a7a;
    font-size: 0.75em;
    line-height: 1.8em;
  }
  body:not(.home) .single_cnt1 span {
    display: inline-block;
    margin-right: 1em;
  }
  body:not(.home) .single_cnt1 a {
    color: #1e1e1e;
    text-decoration: underline;
  }
  body:not(.home) .single_eyecatch {
    margin-top: 20px;
  }
  body:not(.home) .single_eyecatch img {
    display: block;
    width: 100%;
    height: auto;
  }
  body:not(.home) .tags {
    width: 100%;
    padding-top: 16px;
    clear: both;
    overflow: hidden;
  }
  body:not(.home) .tags li a {
    display: block;
    float: left;
    background: #355c7d;
    margin-right: 8px;
    color: #fff;
    padding: 8px 8px;
    margin-bottom: 8px;
    font-size: 0.75em;
    line-height: 1em;
    word-break: keep-all;
  }
  body:not(.home) .tags li a:last-child {
    margin-right: 0 !important;
  }
  body:not(.home) .tags li a:hover {
    background: #1e1e1e;
    color: #fff;
  }
  body:not(.home) .single_cnt2 {
    padding-top: 20px;
    line-height: 1.8em;
    overflow-wrap: break-word;
  }
  body:not(.home) .content_single > h2,
  body:not(.home) .single_cnt1,
  body:not(.home) .single_cnt2,
  body:not(.home) .single_cnt2 * {
    -webkit-user-select: text;
    -moz-user-select: text;
    -ms-user-select: text;
    user-select: text;
  }
  body:not(.home) .single_cnt2 > :first-child {
    margin-top: 0;
  }
  body:not(.home) .single_cnt2 > :last-child {
    margin-bottom: 0;
  }
  body:not(.home) .single_cnt2 p {
    margin-bottom: 20px;
  }
  body:not(.home) .single_cnt2 h2 {
    margin: 40px 0 16px;
    padding: 12px 0 8px;
    border-bottom: solid 1px #efefef;
    font-size: 1.3em;
    line-height: 1.5em;
    letter-spacing: 0.075em;
    box-sizing: border-box;
  }
  body:not(.home) .single_cnt2 h3 {
    margin: 32px 0 10px;
    padding-bottom: 6px;
    font-size: 1.15em;
    line-height: 1.6em;
    letter-spacing: 0.05em;
    font-weight: bold;
  }
  body:not(.home) .single_cnt2 h4 {
    margin: 28px 0 8px;
    font-size: 1em;
    line-height: 1.6em;
    font-weight: bold;
  }
  body:not(.home) .single_cnt2 strong,
  body:not(.home) .single_cnt2 b {
    font-weight: bold;
  }
  body:not(.home) .single_cnt2 em,
  body:not(.home) .single_cnt2 i {
    font-style: italic;
  }
  body:not(.home) .single_cnt2 ul,
  body:not(.home) .single_cnt2 ol {
    margin-bottom: 20px;
    padding-left: 1.6em;
  }
  body:not(.home) .single_cnt2 ul {
    list-style: disc;
  }
  body:not(.home) .single_cnt2 ol {
    list-style: decimal;
  }
  body:not(.home) .single_cnt2 li {
    margin-bottom: 8px;
  }
  body:not(.home) .single_cnt2 li:last-child {
    margin-bottom: 0;
  }
  body:not(.home) .single_cnt2 li > ul,
  body:not(.home) .single_cnt2 li > ol {
    margin-top: 8px;
    margin-bottom: 0;
  }
  body:not(.home) .single_cnt2 a {
    color: #1e1e1e;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
  }
  body:not(.home) .single_cnt2 a:visited {
    color: #1e1e1e;
  }
  body:not(.home) .single_cnt2 a:hover {
    color: #1e1e1e;
    background: #efefef;
  }
  body:not(.home) .single_cnt2 table {
    display: block;
    width: 100%;
    margin-bottom: 24px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    border-collapse: collapse;
    font-size: 0.85em;
    line-height: 1.7em;
  }
  body:not(.home) .single_cnt2 caption {
    padding-bottom: 8px;
    font-weight: bold;
    text-align: left;
  }
  body:not(.home) .single_cnt2 th,
  body:not(.home) .single_cnt2 td {
    min-width: 9em;
    padding: 10px 12px;
    border: solid 1px #b2b2b2;
    background: #fff;
    vertical-align: top;
    box-sizing: border-box;
  }
  body:not(.home) .single_cnt2 th {
    background: #f5fbf7;
    font-weight: bold;
  }
  body:not(.home) .single_cnt2 blockquote {
    margin: 24px 0;
    padding: 16px 18px;
    background: #efefef;
    border-radius: 4px;
  }
  body:not(.home) .single_cnt2 blockquote > :last-child {
    margin-bottom: 0;
  }
  body:not(.home) .single_cnt2 pre {
    margin-bottom: 24px;
    padding: 16px;
    background: #1e1e1e;
    color: #fff;
    font-size: 0.85em;
    line-height: 1.7em;
    overflow-x: auto;
    box-sizing: border-box;
  }
  body:not(.home) .single_cnt2 code,
  body:not(.home) .single_cnt2 kbd,
  body:not(.home) .single_cnt2 samp {
    font-family: Consolas, Monaco, "Courier New", monospace;
    font-feature-settings: normal;
  }
  body:not(.home) .single_cnt2 :not(pre) > code,
  body:not(.home) .single_cnt2 kbd,
  body:not(.home) .single_cnt2 samp {
    padding: 0.15em 0.35em;
    background: #efefef;
  }
  body:not(.home) .single_cnt2 pre code {
    padding: 0;
    background: transparent;
    color: inherit;
  }
  body:not(.home) .single_cnt2 figure {
    margin-bottom: 24px;
  }
  body:not(.home) .single_cnt2 figure img,
  body:not(.home) .single_cnt2 > img {
    display: block;
    max-width: 100%;
    height: auto;
  }
  body:not(.home) .single_cnt2 figcaption {
    padding-top: 8px;
    color: #7a7a7a;
    font-size: 0.8em;
    line-height: 1.6em;
  }
  body:not(.home) .single_cnt2 hr {
    margin: 36px 0;
    border: 0;
    border-top: solid 1px #efefef;
  }
  body:not(.home) {
    /* price list Estimates */
    /* 制作費用 - pricelist -------------------------------- */
    /* pricelistbox ------ */
  }
  body:not(.home) .pricelistbox {
    margin-bottom: 88px;
  }
  body:not(.home) .pricelistbox ul > li {
    box-sizing: border-box;
  }
  body:not(.home) {
    /* 簡易制作 */
  }
  body:not(.home) {
    /* テンプレートCMS制作 */
  }
  body:not(.home) {
    /* 目標を達成する制作 */
  }
  body:not(.home) {
    /* 達成したい目標を超える制作 */
  }
  body:not(.home) .pricelistbox ul:nth-child(4) > li {
    border: none !important;
  }
  body:not(.home) ol.page_nav {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
  }
  body:not(.home) .page_nav li {
    width: 46.8%;
    font-size: 1em;
    line-height: 1.2em;
    margin-bottom: 6.4%;
  }
  body:not(.home) .page_nav li:nth-child(odd) {
    border: solid 1px #ed358b;
    box-sizing: border-box;
    margin-right: 6.4%;
  }
  body:not(.home) .page_nav li:nth-child(2) {
    background: #efefef;
  }
  body:not(.home) .page_nav li:nth-child(4) {
    background: #efefef;
  }
  body:not(.home) .page_nav li a {
    display: block;
    box-sizing: border-box;
    padding: 24px 24px 24px;
    line-height: 1.2em;
  }
  body:not(.home) {
    /* inbox */
  }
  body:not(.home) .hbox {
    width: 100%;
    position: relative;
    align-items: center;
    margin-bottom: 6.4%;
    box-sizing: border-box;
    padding: 22px 0;
  }
  body:not(.home) .hbox::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: #efefef;
    position: absolute;
    left: 0;
    top: 0;
  }
  body:not(.home) .hbox::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: #efefef;
    position: absolute;
    right: 0;
    bottom: 0;
  }
  body:not(.home) .pricelistbox_base h2 {
    width: 100%;
    padding: 0em 0 0.8em;
    display: block;
    line-height: 1em;
    letter-spacing: 0.075em;
    font-size: 1.2em;
  }
  body:not(.home) .pricelistbox_base h3 {
    line-height: 1em;
    letter-spacing: 0.075em;
    font-size: 1em;
    color: #888888;
  }
  body:not(.home) {
    /* pricelistbox 1 */
  }
  body:not(.home) .pricelistinbox {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
  }
  body:not(.home) .pricelistinbox ul {
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 44px;
    display: flex;
    flex-wrap: wrap;
  }
  body:not(.home) .pricelistinbox ul > li {
    width: 100%;
  }
  body:not(.home) .pricelistinbox ul > li span {
    box-sizing: border-box;
  }
  body:not(.home) .pricelistinbox ul > li:nth-child(1) {
    font-size: 1.2em;
    line-height: 1em;
    letter-spacing: 0.025em;
    border-top: dotted 1px #41b7a0;
    border-bottom: dotted 1px #41b7a0;
    padding-top: 11px;
    padding-bottom: 8px;
    font-weight: bold;
    margin-bottom: 12px;
  }
  body:not(.home) .pricelistinbox ul > li:nth-child(2) {
    width: 100%;
    margin-bottom: 1.6em;
  }
  body:not(.home) .pricelistinbox ul > li:nth-child(2) ol {
    width: 100%;
    box-sizing: border-box;
    padding: 0 4px;
  }
  body:not(.home) .pricelistinbox ul > li:nth-child(2) ol li {
    font-size: 14px;
    line-height: 1.6em;
    box-sizing: border-box;
    padding: 0 0px 6px;
  }
  body:not(.home) .pricelistinbox ul > li:nth-child(3) {
    width: 100%;
    line-height: 1em;
    border-top: dotted 1px #efefef;
    box-sizing: border-box;
    padding-bottom: 0.5em;
    padding-top: 16px;
    text-align: right;
  }
  body:not(.home) ol.pricelistinbox_under {
    width: 100%;
    line-height: 1.8em;
    font-size: 14px;
    background: #f9f9f9;
    box-sizing: border-box;
    padding: 4.8%;
    margin: 0 auto;
  }
  body:not(.home) .price_ftbig {
    font-size: 1.85em;
  }
  body:not(.home) .pricelistbox_base {
    margin-bottom: 88px;
  }
  body:not(.home) {
    /* #ppc */
  }
  body:not(.home) #ppc {
    width: 100%;
    clear: both;
    overflow: hidden;
  }
  body:not(.home) ul.list_ppc {
    width: 100%;
    clear: both;
    overflow: hidden;
  }
  body:not(.home) ul.list_ppc li {
    width: 100%;
    line-height: 1.8em;
  }
  body:not(.home) ul.list_ppc li:nth-child(1) {
    width: 30%;
    float: left;
  }
  body:not(.home) ul.list_ppc li:nth-child(2) {
    width: 30%;
    float: left;
  }
  body:not(.home) .price_ppc {
    width: 100%;
    margin-bottom: 48px;
    box-sizing: border-box;
    clear: both;
    overflow: hidden;
  }
  body:not(.home) .price_ppc li {
    width: 100% !important;
    vertical-align: bottom;
  }
  body:not(.home) .price_ppc li:nth-child(1) {
    font-size: 1.1em;
    margin-bottom: 1.2%;
  }
  body:not(.home) .price_ppc li:nth-child(3) {
    margin-bottom: 6.4%;
  }
  body:not(.home) .price_ppc li:nth-child(4) {
    text-align: right;
  }
  body:not(.home) .price_ppc li:nth-child(4) span:nth-child(1) {
    font-size: 1.5em !important;
  }
  body:not(.home) .note {
    width: 100%;
    margin-bottom: 44px;
    box-sizing: border-box;
    line-height: 1.8em;
    border-radius: 4px;
  }
  body:not(.home) .pricelink {
    width: 40%;
    margin-left: 60%;
    margin-top: 16px;
  }
  body:not(.home) .pricelink a {
    width: 100%;
    display: block;
    background: #d02e31;
    color: #fff;
    line-height: 1em;
    box-sizing: border-box;
    padding: 8px 12px 12px;
  }
  body:not(.home) .pricelistbox2 ul {
    font-size: 14px;
  }
  body:not(.home) .pricelistbox2 ul li {
    line-height: 1.8em !important;
  }
  body:not(.home) .pricelistbox2 ul:nth-child(2) {
    margin-bottom: 6.4%;
  }
  body:not(.home) .pricelistbox2 ul:nth-child(2) li:nth-child(1) {
    font-weight: bold;
  }
  body:not(.home) .pricelistbox3 ul {
    font-size: 14px;
  }
  body:not(.home) .pricelistbox3 ul li {
    line-height: 1.8em !important;
  }
  body:not(.home) .pricelistbox3 ul li:nth-child(1) {
    margin-bottom: 6.4% !important;
  }
  body:not(.home) .pricelistbox3 ul li:nth-child(2) {
    margin-bottom: 6.4% !important;
  }
  body:not(.home) {
    /* #seo */
  }
  body:not(.home) #seo {
    width: 100%;
    clear: both;
    overflow: hidden;
  }
  body:not(.home) .pricelistbox5 ul {
    width: 100%;
    float: left;
    box-sizing: border-box;
    background: #fafafa;
    padding: 4.8% 4.8% 4%;
    margin-bottom: 6.4%;
  }
  body:not(.home) .pricelistbox5 ul:nth-child(2) {
    margin-right: 32px;
    background: #efefef;
    line-height: 1.3em !important;
  }
  body:not(.home) .pricelistbox5 ul li:nth-child(1) h4 {
    font-weight: bold;
    padding-bottom: 2.4%;
  }
  body:not(.home) .pricelistbox5 ul li:nth-child(2) {
    min-height: 48px;
    font-size: 0.9em;
    margin-bottom: 4.8%;
  }
  body:not(.home) .pricelistbox5 ul li:nth-child(3) {
    text-align: right;
  }
  body:not(.home) {
    /* #analytics */
  }
  body:not(.home) .pricelistbox6 {
    width: 100%;
    clear: both;
    overflow: hidden;
  }
  body:not(.home) .pricelistbox6 ul {
    width: calc((100% - 0px) / 1);
    float: left;
    box-sizing: border-box;
    margin-bottom: 9.6%;
  }
  body:not(.home) .pricelistbox6 ul li {
    line-height: 1.5em;
  }
  body:not(.home) .pricelistbox6 ul li:nth-child(2) {
    min-height: 48px;
    padding: 0 4px;
    margin-bottom: 24px;
  }
  body:not(.home) .pricelistbox6 ul li h4 {
    width: 100%;
    font-size: 1em;
    line-height: 1em;
    padding-bottom: 5px;
    vertical-align: middle;
    background: #1a1a1a;
    color: #fff;
    padding: 8px 8px 7px;
    margin-bottom: 7px;
    box-sizing: border-box;
  }
  body:not(.home) .p_box_ul {
    margin-right: 32px;
  }
  body:not(.home) .p_price {
    text-align: right;
  }
  body:not(.home) {
    /* -- 制作依頼 .orderflow ------------------------------- */
  }
  body:not(.home) .content_orderflow {
    margin-bottom: 88px;
  }
  body:not(.home) {
    /* content_2 */
  }
  body:not(.home) #orderflow div > ul {
    width: 100%;
    box-sizing: border-box;
    margin: 18px auto 24px;
  }
  body:not(.home) #orderflow div > ul li:nth-child(1) {
    margin-bottom: 12px;
  }
  body:not(.home) #orderflow div > ul li:nth-child(3) {
    margin: 64px auto 24px;
    font-size: 1.1em;
    line-height: 1.5em;
  }
  body:not(.home) #orderflow div > ul li:nth-child(4) {
    width: 100%;
    margin: 0 auto;
    line-height: 1.8em;
  }
  body:not(.home) .content_2 {
    position: relative;
  }
  body:not(.home) #orderflow .content_2 dl {
    margin: 0 auto 12%;
    box-sizing: border-box;
    padding: 12% 10.6% 8%;
  }
  body:not(.home) .full-width {
    width: 100vw;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
  }
  body:not(.home) #orderflow .content_2 dl dt {
    width: 100%;
    margin-top: 12px;
    box-sizing: border-box;
    margin-bottom: 12px;
    font-size: 1.35em;
    line-height: 1em;
    letter-spacing: 0.025em;
  }
  body:not(.home) #orderflow .content_2 dl dt::after {
    margin-top: 8px;
    padding-top: 12px;
    border-top: solid 1px #efefef;
    display: block;
    line-height: 1em;
    letter-spacing: 0em;
    font-size: 0.75em;
    text-align: right;
    color: #989898;
  }
  body:not(.home) .orderflow_dtimg1 {
    background: url(../images/orderflow/order_flow_img_green.png) no-repeat;
    background-position: -62% top;
    background-size: 80% auto;
  }
  body:not(.home) .orderflow_dtimg1 dt::after {
    content: "Management";
  }
  body:not(.home) .orderflow_dtimg2 {
    background: #fefefef;
  }
  body:not(.home) .orderflow_dtimg2 dt::after {
    content: "Crative";
  }
  body:not(.home) .orderflow_dtimg3 {
    background: url(../images/orderflow/order_flow_img_purple.png) no-repeat;
    background-position: 162% top;
    background-size: 80% auto;
  }
  body:not(.home) .orderflow_dtimg3 dt::after {
    content: "Analytics";
  }
  body:not(.home) #orderflow .content_2 dl dd {
    width: 100%;
    box-sizing: border-box;
  }
  body:not(.home) #orderflow .content_2 dl dd h4 {
    width: 100%;
    font-size: 1.1em;
    line-height: 1.4em;
    box-sizing: border-box;
  }
  body:not(.home) #orderflow .content_2 dl dd:nth-child(3) {
    width: 100%;
    margin-top: 4.8%;
    box-sizing: border-box;
    line-height: 2em;
    font-size: 1em;
  }
  body:not(.home) .orderflow_box {
    width: 100%;
  }
  body:not(.home) .orderflow_box ol {
    width: 100%;
    box-sizing: border-box;
    padding: 18% 4% 16%;
    min-height: 240px;
    margin-bottom: 16%;
  }
  body:not(.home) .of_boxbg1 {
    background: url(../images/orderflow/order_flow_img_green.png) no-repeat;
    background-position: center top;
    background-size: 100% auto;
  }
  body:not(.home) .of_boxbg2 {
    background: url(../images/orderflow/order_flow_img_blue.png) no-repeat;
    background-position: center top;
    background-size: 100% auto;
  }
  body:not(.home) .of_boxbg3 {
    background: url(../images/orderflow/order_flow_img_purple.png) no-repeat;
    background-position: center top;
    background-size: 100% auto;
  }
  body:not(.home) .orderflow_box ol li:nth-child(1) {
    margin-bottom: 8%;
  }
  body:not(.home) .orderflow_box ol li:nth-child(1) img {
    width: 50%;
    text-align: center;
    margin: 0 25%;
  }
  body:not(.home) .orderflow_box ol li:nth-child(2) {
    font-size: 14px;
    box-sizing: border-box;
    padding: 0 6.4%;
  }
  body:not(.home) .of_p {
    padding: 15% 11% 15%;
    box-sizing: border-box;
    background: url(../images/orderflow/orderflow_img3.png) no-repeat;
    background-position: center center;
    background-size: 96% 96%;
    box-sizing: border-box;
    font-size: 14px;
    line-height: 1.8em;
  }
  body:not(.home) {
    /* privacypolicy */
  }
  body:not(.home) #content_privacy > dl > dd {
    margin-bottom: 6.4%;
    height: auto !important;
  }
  body:not(.home) ul.pri_ul1 {
    margin-bottom: 12.8%;
  }
  body:not(.home) ul.pri_ul1 li dl dd {
    font-size: 14px;
    margin-bottom: 6.4%;
  }
  body:not(.home) div.form form {
    width: 100%;
    margin: 0 auto;
    padding: 12px;
    background: #f9f9f9;
    box-sizing: border-box;
    clear: both;
    overflow: hidden;
  }
  body:not(.home) .formdesc {
    margin-bottom: 24px;
  }
  body:not(.home) .form_promotion {
    font-size: 0;
    margin-bottom: 12px;
  }
  body:not(.home) .form_promotion img {
    vertical-align: bottom;
  }
  body:not(.home) dl.formbase {
    width: 100%;
    clear: both;
    overflow: hidden;
    padding: 24px;
    box-sizing: border-box;
    background: #fdfdfd;
  }
  body:not(.home) dl.formbase dt {
    width: 32%;
    padding: 3.6%;
    clear: both;
    display: block;
    overflow: hidden;
    box-sizing: border-box;
    float: left;
    margin-bottom: 8px;
    line-height: 1em;
    height: 88px;
    position: relative;
  }
  body:not(.home) .ft_checkbox {
    font-size: 1.35em;
    color: #fff;
  }
  body:not(.home) .ft_checkboxruby {
    position: absolute;
    bottom: 22px;
    left: 24px;
    color: #fff;
  }
  body:not(.home) dl.formbase dd {
    line-height: 1em;
    width: 68%;
    box-sizing: border-box;
    float: right;
    display: block;
    height: 88px;
    background: #fff;
    vertical-align: bottom;
    font-family: "ヒラギノ明朝 ProN W3", "游明朝", YuMincho, "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
  }
  body:not(.home) .ft_price {
    font-size: 2.4em !important;
    padding-right: 2px;
    letter-spacing: 0 !important;
    font-weight: bold !important;
  }
  body:not(.home) .yori {
    font-weight: bold !important;
    vertical-align: text-top;
    padding-left: 4px;
    font-size: 1.25em !important;
  }
  body:not(.home) .yen {
    font-weight: bold !important;
    vertical-align: text-top;
    font-size: 1.25em !important;
  }
  body:not(.home) .regularprice {
    padding-top: 16px;
    height: 2em !important;
  }
  body:not(.home) .discountprice {
    line-height: 1.6em;
  }
  body:not(.home) .ft_reg_price {
    font-size: 1.6em;
    text-decoration: line-through #c83436;
  }
  body:not(.home) .reg_yen {
    font-size: 1em;
    font-weight: bold !important;
    vertical-align: baseline;
  }
  body:not(.home) .cv {
    width: 80%;
    margin: 36px auto 0;
    padding: 20px 24px;
    box-sizing: border-box;
    background: #f38688;
    color: #fff;
    font-size: 1.1em;
  }
}
@media (min-width: 768px) {
  body.home {
    /* main visual #mavisual ---------------- */
  }
  body.home #mavisual {
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    border-bottom: solid 1px #efefef;
  }
  body.home #mavisualinner {
    width: 100%;
    max-width: 1200px;
    height: 400px;
    box-sizing: border-box;
    margin: 0 auto;
    background-size: 60% calc(100% - 96px);
    background-position: right bottom;
    position: relative;
  }
  body.home #mavisual #mavisualinner .h1box {
    width: 100%;
    height: 100%;
    position: relative;
  }
  body.home {
    /* ma left div */
    /* text1 想いをカタチにしちゃう会社サトラボ。 -- */
    /* text2 -- サトラボ - Sato - Laboratory */
    /*　under txet formlink */
    /* sidebar floating bottom limit 
    ** function.phpで非表示だけだと、floatが突き抜ける
    */
    /* #contents --------------------------------- */
    /* H2 */
    /* cntent base */
    /* margin-bottomは#contentsで指定 */
    /* -- #contents -- #main_cnt -- div.newsbox*/
    /* news allposts btn in p.news_title*/
    /* recommended ------------------------------- */
    /*  */
    /* .content_index1 */
    /* content ------------------------------- */
    /* content_2 */
    /* content_3 */
    /* content_4 */
  }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
  body.home #mavisualinner {
    padding: 0px 0px;
    height: 360px;
    background-size: auto 100%;
    background-position: center bottom;
  }
  body.home #mavisual #mavisualinner .h1box {
    width: 100%;
    box-sizing: border-box;
    background: rgba(255, 255, 255, 0.6);
  }
  body.home .h1box ul {
    width: 100% !important;
    padding: 124px 0 0 64px;
  }
}
@media (min-width: 768px) {
  body.home .h1box h1 {
    width: 100%;
    font-size: 1.8em;
    line-height: 1em;
  }
  body.home .h1box h1 span {
    display: block;
    position: absolute;
  }
  body.home .h1subtxt {
    width: calc(100% - 64px);
    font-size: 0.8em;
    letter-spacing: 0.035em;
    position: absolute;
  }
  body.home .mvft_bg {
    font-size: 1em;
    box-sizing: border-box;
  }
  body.home .h1box ul {
    width: 60%;
    box-sizing: border-box;
    position: absolute;
    bottom: 126px;
    left: 0;
    font-size: 1.4em;
  }
  body.home .h1box ul li span {
    display: block;
  }
  body.home .mv_subtxt1 {
    line-height: 1em;
    font-size: 1em;
    margin-bottom: 6px;
  }
  body.home .mv_subtxt2 {
    line-height: 1.4em;
    font-size: 1em;
    letter-spacing: 0.055em;
  }
  body.home li.pc_tellbtn a {
    width: calc(100% - 96px);
    color: #fff;
    text-decoration: none;
    font-size: 15px;
    line-height: 1em;
    letter-spacing: 0.045em;
    padding: 16px 20px 14px;
    background: #1e1e1e;
    border: solid 1px #fff;
    border-radius: 3px;
    position: absolute !important;
    bottom: 62px;
    left: 48px;
  }
  body.home .pc_tellbtn a:hover {
    background: #dd4346;
  }
  body.home .pc_tellbtn a:after {
    top: calc(50% + 0.5px);
    right: 24px;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
  }
}
@media screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1024px) {
  body.home {
    /* text1 想いをカタチにしちゃう会社サトラボ。 -- */
  }
  body.home .h1subtxt {
    width: calc(100% - 64px);
    font-size: 0.7em;
    letter-spacing: 0.035em;
    position: absolute;
    left: 64px;
    top: 64px;
    text-align: center;
  }
  body.home {
    /* text2 -- サトラボ - Sato - Laboratory */
  }
  body.home .mvft_bg {
    width: calc(100% - 64px);
    font-size: 1.8em;
    box-sizing: border-box;
    top: 120px;
    text-align: center;
  }
  body.home .mv_subtxt1 {
    text-align: center;
  }
  body.home .mv_subtxt2 {
    text-align: center;
    font-size: 1.6em;
  }
}
@media screen and (min-width: 768px) and (min-width: 1025px) {
  body.home #main_cnt {
    padding: 48px 0;
  }
  body.home {
    /* text1 想いをカタチにしちゃう会社サトラボ。 -- */
  }
  body.home .h1subtxt {
    width: calc(100% - 48px);
    font-size: 0.6em;
    position: absolute;
    left: 48px;
    top: 48px;
  }
  body.home {
    /* text2 -- サトラボ - Sato - Laboratory */
  }
  body.home .mvft_bg {
    width: calc(100% - 47px);
    font-size: 1.55em;
    box-sizing: border-box;
    left: 47px;
    top: 94px;
  }
  body.home .h1box ul {
    padding: 24px 48px 0;
  }
  body.home li.pc_tellbtn a {
    width: calc(100% - 48px);
    left: 24px;
  }
}
@media (min-width: 768px) {
  body.home #breadcrumb {
    display: none;
  }
  body.home #main_cnt h2 {
    width: 100%;
    display: block;
    padding: 16px 0;
    box-sizing: border-box;
    font-size: 1.15em;
    line-height: 1.5em;
    letter-spacing: 0.045em;
    border-top: solid 1px #efefef;
    border-bottom: solid 1px #efefef;
    margin-bottom: calc(16px + 0.5em);
  }
  body.home .content_base {
    width: 100%;
    margin-bottom: 88px;
  }
  body.home .content_base:last-child {
    margin-bottom: 0 !important;
  }
  body.home div.newsbox {
    width: 100%;
    border-bottom: solid 1px #efefef;
    padding-bottom: 24px;
    position: relative;
  }
  body.home .news_title {
    width: 100%;
    display: block;
    font-size: 1em;
    line-height: 1em;
    box-sizing: border-box;
    padding: 13px 12px 10px;
    border-top: solid 1px #efefef;
    border-bottom: solid 1px #efefef;
  }
  body.home p.allnews {
    width: 26%;
    position: absolute;
    right: 0;
    top: 0;
  }
  body.home p.allnews a {
    width: 100%;
    display: block;
    line-height: 1em;
    font-size: 12px;
    letter-spacing: 0.025em;
    padding: 14px 8px 13px;
    background: #efefef;
    position: relative;
    box-sizing: border-box;
  }
  body.home .newsbox a {
    width: 100%;
    display: block;
    position: relative;
  }
  body.home .newsbox a:hover {
    color: #fff;
    background: #1e1e1e;
  }
  body.home .newsbox a::after {
    display: block;
    content: "";
    position: absolute;
    bottom: 41%;
    right: 16px;
    width: 4px;
    height: 4px;
    margin: -2px 0 0 0;
    border-top: solid 1px #1e1e1e;
    border-right: solid 1px #1e1e1e;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  body.home .newsbox a:hover:after {
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
  }
  body.home .newsbox dl {
    padding-top: 10px;
    box-sizing: border-box;
    padding-left: 10px;
    padding-bottom: 6px;
    border-bottom: solid 1px #efefef;
    margin-bottom: 16px;
  }
  body.home .newsbox dl:nth-last-child(1) {
    margin-bottom: 0 !important;
  }
  body.home .newsbox dl dt {
    line-height: 1em;
    margin-bottom: 4px;
    font-size: 12px;
  }
  body.home .newsbox dl dd {
    line-height: 1.5em;
    font-size: 14px;
    font-weight: bold;
  }
  body.home .topicbox {
    width: 100%;
    position: relative;
  }
  body.home .recommendtitlle {
    width: 100%;
    font-size: 1em;
    line-height: 1em;
    box-sizing: border-box;
    padding: 13px 12px 10px;
    display: block;
    margin-bottom: 36px;
    border-top: solid 1px #efefef;
    border-bottom: solid 1px #efefef;
  }
  body.home #recommended {
    width: 100%;
    clear: both;
    overflow: hidden;
    border-bottom: solid 1px #efefef;
  }
  body.home .recommendbox {
    width: calc((100% - 16px) / 2);
    box-sizing: border-box;
    float: left;
    margin-bottom: 32px;
    padding: 0 12px;
    position: relative;
    border-bottom: solid 1px #efefef;
  }
  body.home #recommended .recommendbox:nth-child(odd) {
    margin-left: 16px;
  }
  body.home .recommendbox div dl {
    width: 100%;
    padding: 0px 0px 32px;
    box-sizing: border-box;
  }
  body.home .recommendbox div dl dt {
    width: 100%;
    margin-bottom: 16px;
    line-height: 1.2em;
  }
  body.home .recommendbox div dl dt img {
    width: 100%;
    height: auto;
  }
  body.home .recommendbox div dl dd {
    font-size: 0.9em;
    line-height: 1.4em;
  }
  body.home .recommendbox div dl dd:nth-child(2) {
    margin-bottom: 10px;
  }
  body.home .recommendbox div h3 {
    font-size: 1em;
    font-weight: bold;
    line-height: 1em;
  }
  body.home .recommendbox div dl dd:nth-child(3) {
    line-height: 1.5em;
  }
  body.home .recommendbox div dl dd:nth-child(4) {
    font-size: 0.9em;
    line-height: 1em;
    position: absolute;
    right: 0px;
    bottom: 24px;
    text-align: center;
    background: #dd5053;
    color: #fff;
    padding: 3.5px 5px 3px;
    box-sizing: border-box;
  }
  body.home .trianglebox {
    width: 100%;
    position: relative;
    display: block;
    line-height: 1;
  }
  body.home .trianglebox::before {
    content: "";
    top: 0;
    left: 0;
    border-bottom: 2.4em solid transparent;
    border-left: 2.4em solid #db4648;
    position: absolute;
  }
  body.home .trianglebox::after {
    content: "";
    right: 0;
    bottom: 0;
    border-top: 2.4em solid transparent;
    border-right: 2.4em solid #db4648;
    position: absolute;
  }
  body.home .content_index1 p {
    background: url(../images/lower_mv/rec_mv.jpg) no-repeat;
    background-position: center center;
    background-size: cover;
    height: 265px;
  }
  body.home .cnt2_auth {
    width: 100%;
    clear: both;
    overflow: hidden;
    background: #cb6466;
  }
  body.home .cnt2_auth li {
    width: 33.3333333333%;
    text-align: center;
    float: left;
    font-size: 0;
  }
  body.home .cnt2_auth li img {
    width: 80%;
    text-align: center;
    vertical-align: bottom;
  }
  body.home .cnt2_auth li:nth-child(2) {
    margin: 0 2.4%;
  }
  body.home .content_2 dl {
    padding-bottom: 32px;
  }
  body.home .index_dl1 {
    width: 100%;
    margin: 0 auto;
    box-sizing: border-box;
    position: relative;
    padding: 12px;
    margin-bottom: 6%;
  }
  body.home .index_dl1 dt {
    display: block;
    width: 100%;
    padding-top: 36px;
    padding-bottom: 32px;
    padding-left: calc(16% + 36px);
    margin-bottom: 24px;
    line-height: 1.5em;
    font-size: 1.6em;
    letter-spacing: 0.01em;
    background: #efefef;
    box-sizing: border-box;
  }
  body.home .index_dl1 dd {
    width: 100%;
    box-sizing: border-box;
    line-height: 1.8em;
  }
  body.home .right-style dt {
    padding-left: 0 !important;
    padding-right: calc(16% + 24px) !important;
    background: #efefef;
    text-align: right !important;
  }
  body.home .right-style dd {
    margin-left: 0;
  }
  body.home dl.index_dl2 dt {
    width: 72%;
    margin: 0 auto;
    margin-bottom: 3.75%;
  }
  body.home dl.index_dl2 dd {
    width: 72%;
    margin: 0 auto;
    margin-bottom: 1.875%;
    font-size: 1.4em;
  }
  body.home .float-right {
    float: right !important;
  }
  body.home .cnt-1_ol {
    width: 100%;
    clear: both;
    overflow: hidden;
    margin-bottom: 12px;
  }
  body.home .cnt-1_ol li {
    width: calc((100% - 12px) / 2) !important;
    float: left;
    text-align: center;
  }
  body.home .cnt-1_ol li img {
    width: 88%;
    text-align: center;
  }
  body.home .content_3 ol {
    margin-bottom: 36px;
  }
  body.home .content_3 ul {
    width: 100%;
    box-sizing: border-box;
    padding: 24px 0px 24px;
    display: flex;
    flex-wrap: wrap;
  }
  body.home .content_3 ul:nth-child(odd) {
    background: #efefef;
  }
  body.home .content_3 ul li {
    box-sizing: border-box;
  }
  body.home .content_3 ul li:nth-child(1) {
    width: 36%;
  }
  body.home .content_3 ul li:nth-child(2) {
    width: 64%;
    padding: 24px;
    font-size: 0.85em;
  }
  body.home .content_3 ul li:nth-child(3) {
    width: 64%;
  }
  body.home .content_4 {
    background: #e9595c;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  body.home .content_4 {
    width: 100vw;
    background: #e9595c;
    margin: 0 calc(-50vw + 50%) !important;
    object-fit: cover;
  }
}
@media (min-width: 768px) {
  body.home .content_4 h2 {
    text-align: center;
    margin-bottom: 20px;
  }
  body.home .content_4 h2 img {
    max-width: 240px;
  }
  body.home .content_4 ul {
    width: 100%;
    box-sizing: border-box;
    padding: 8px 48px;
    color: #fff;
  }
  body.home .content_4 ul li {
    line-height: 1.8em;
  }
  body.home .content_4 ul li:nth-child(1) {
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 0.05em;
  }
  body:not(.home) {
    /* main visual #mavisual */
  }
  body:not(.home) #mavisualinner {
    background-size: cover;
    background-position: right bottom;
  }
  body:not(.home) #mavisual ul {
    width: 100%;
    max-width: 1200px;
    box-sizing: border-box;
    margin: 0 auto;
    letter-spacing: 0.145em;
    color: #fff;
    padding: 24px 4.8%;
  }
  body:not(.home) #mavisual ul li:nth-child(1) h1 {
    font-size: 1.8em;
    letter-spacing: 0.195em;
    line-height: 1em;
  }
  body:not(.home) {
    /* #contents */
    /* text base page */
  }
  body:not(.home) .content_base {
    width: 100%;
    margin-bottom: 88px;
  }
  body:not(.home) {
    /* caption,bodytext  */
  }
  body:not(.home) .content_1 {
    width: 100%;
    box-sizing: border-box;
    position: relative;
    clear: both;
    overflow: hidden;
  }
  body:not(.home) {
    /* -- main contents -- #main_cnt 
    	page-on 
    	-- recruit overview
    */
  }
  body:not(.home) .content_1 h1 {
    font-size: 12.4em;
  }
  body:not(.home) .content_1 h2 {
    width: 100%;
    padding: 28px 0 7px;
    line-height: 1em;
    font-size: 1.5em;
    letter-spacing: 0.075em;
    box-sizing: border-box;
  }
  body:not(.home) .cnt1_mgn {
    margin-bottom: 48px;
  }
  body:not(.home) .content_1 > p {
    width: 30%;
    line-height: 1.2em;
    padding-bottom: 2px;
    text-align: right;
    color: #8e8e8e;
    position: absolute;
    right: 0px;
    top: 62px;
    border-bottom: solid 1px #efefef;
  }
  body:not(.home) .content_1 dl {
    width: 100%;
    position: relative;
    margin-bottom: 48px;
    clear: both;
    overflow: hidden;
  }
  body:not(.home) .content_1 dl dt {
    border-bottom: dotted 1px #efefef;
    box-sizing: border-box;
    font-size: 0.9em;
    display: block;
    line-height: 1.1em;
    padding-bottom: 18px;
  }
  body:not(.home) .content_1 dl dd {
    font-size: 14px;
    line-height: 2em;
  }
  body:not(.home) .content_1 dl dd:nth-child(2) {
    width: 100%;
    height: 260px;
    margin-bottom: 16px;
    position: relative;
  }
  body:not(.home) dd.noimgbox {
    font-size: 0 !important;
    height: auto !important;
  }
  body:not(.home) {
    /* 下層MV  */
  }
  body:not(.home) .mvbg_pricelist {
    background: url(../images/lower_mv/rec_mv.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
  }
  body:not(.home) .mvbg_pricelist ul li svg {
    fill: #f25a78;
  }
  body:not(.home) .mvbg_recruit {
    background: url(../images/orderflow/mv_recruit.png) no-repeat;
    background-size: cover;
    background-position: center top;
  }
  body:not(.home) .mvbg_recruit ul li svg {
    fill: #41b7a0;
  }
  body:not(.home) .mvbg_overview {
    background: url(../images/orderflow/mv_overview.png) no-repeat;
    background-size: cover;
    background-position: center top;
  }
  body:not(.home) .mvbg_overview ul li svg {
    fill: #f5ff83;
  }
  body:not(.home) .mvbg_orderflow {
    background: url(../images/orderflow/mv_orderflow.png) no-repeat;
    background-size: cover;
    background-position: center top;
    position: relative;
  }
  body:not(.home) .mvbg_orderflow ul li svg {
    fill: #f25a78;
  }
  body:not(.home) .mvbg_allpost {
    background: url(../images/img_material/images.jpg) no-repeat;
    background-size: cover;
    background-position: center top;
  }
  body:not(.home) {
    /* content_1 ul under image */
  }
  body:not(.home) .content_1 dl dd:nth-child(2) ul {
    width: 100%;
    box-sizing: border-box;
    padding: 140px 64px 0;
  }
  body:not(.home) .content_1 dl dd:nth-child(2) ul li {
    color: #fff;
    font-weight: bold;
    letter-spacing: 0.1em;
  }
  body:not(.home) .content_1 dl dd:nth-child(2) ul li:nth-child(1) {
    width: 11%;
    position: absolute;
    left: 0;
    top: 0;
  }
  body:not(.home) .content_1 dl dd:nth-child(2) ul li:nth-child(2) {
    width: 11%;
    transform: rotate(180deg);
    position: absolute;
    bottom: 0;
    right: 0;
  }
  body:not(.home) .content_1 dl dd:nth-child(2) ul li:nth-child(3) {
    font-size: 1.4em;
    margin-bottom: 0.5em;
  }
  body:not(.home) .content_1 dl dd:nth-child(2) ul li:nth-child(4) {
    font-size: 2.4em;
  }
  body:not(.home) {
    /* 	.lower 下層ページ 見出しと文章 */
  }
  body:not(.home) dl.lower_title {
    width: 100%;
    clear: both;
    overflow: hidden;
    box-sizing: border-box;
    position: relative;
  }
  body:not(.home) dl.lower_title > dt {
    width: 100%;
    border-top: solid 1px #efefef;
    border-bottom: solid 1px #efefef;
    box-sizing: border-box;
    display: block;
    margin-bottom: 32px;
    padding: 16px 0;
  }
  body:not(.home) dl dd:nth-child(3) {
    padding-bottom: 0px;
  }
  body:not(.home) dl.lower_title > dd ul {
    margin-bottom: 48px;
  }
  body:not(.home) dl.lower_title > dd ul li {
    line-height: 1.8em;
    box-sizing: border-box;
    padding: 0px 12px;
  }
  body:not(.home) .cnt_ov_mgn {
    padding-top: 12px;
  }
  body:not(.home) dl.lower_title > dd ul li:nth-child(1) {
    width: 100%;
    border-bottom: dotted 1px #1e1e1e;
    padding: 4px 18px;
    margin-bottom: 24px;
    position: relative;
    z-index: 40;
    font-size: 1.15em;
    letter-spacing: 0.105em;
  }
  body:not(.home) dl.lower_title > dd ul li:nth-child(1)::before {
    content: "";
    height: 66px;
    width: 66px;
    border-radius: 50%;
    border: solid 1px #b82a2c;
    position: absolute;
    z-index: -1;
    top: -12px;
    left: 0px;
  }
  body:not(.home) dl.lower_title > dd ul li:nth-child(2) {
    font-size: 1.5rem;
  }
  body:not(.home) .cnt1_ulbase li h3 {
    padding-bottom: 6px;
  }
  body:not(.home) .cnt1_ulbase li {
    line-height: 1.8em;
  }
  body:not(.home) {
    /* 会社概要 - overview - */
  }
  body:not(.home) .googlemap {
    margin: 12px 0 18px;
    width: 100%;
    height: 360px;
  }
  body:not(.home) .googlemap iframe {
    width: 100%;
    min-height: 320px;
  }
  body:not(.home) {
    /* 採用情報 - recruit - */
    /* recruit --------------------------- */
  }
  body:not(.home) .content_recruit {
    width: 100%;
    clear: both;
    overflow: hidden;
  }
  body:not(.home) div.recruitbox {
    width: 100%;
    margin-bottom: 88px;
    padding-bottom: 24px;
  }
  body:not(.home) div.recruitbox:last-child {
    margin-bottom: 44px;
  }
  body:not(.home) .recruit_p {
    width: 100% !important;
    height: auto !important;
  }
  body:not(.home) .recruit1 {
    background: url(../images/recruitment/recruit_2.png) no-repeat;
    padding-top: 24px;
    background-size: 30% auto;
  }
  body:not(.home) .recruit2 {
    background: url(../images/recruitment/recruit_4.png) no-repeat;
    background-size: 370px auto;
  }
  body:not(.home) .recruit3 {
    background: url(../images/recruitment/recruit_1.png) no-repeat;
    background-size: 446px auto;
  }
  body:not(.home) div.recruitbox h3 {
    width: 100%;
    box-sizing: border-box;
    padding-left: 33%;
    margin-bottom: 8px;
  }
  body:not(.home) div.recruitbox > ul {
    width: 67%;
    margin-left: 33%;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 44px;
  }
  body:not(.home) div.recruitbox > ul > li {
    width: 25%;
  }
  body:not(.home) div.recruitbox > ul > li:nth-child(1) {
    width: 100%;
  }
  body:not(.home) div.recruitbox > ul > li:nth-child(2) {
    width: 100%;
  }
  body:not(.home) div.recruitbox > ul > li:nth-child(3) {
    width: 100%;
  }
  body:not(.home) div.recruitbox > ul > li:nth-child(4) {
    width: 100%;
  }
  body:not(.home) div.recruitbox > ul > li:nth-child(n+5) {
    background: #cb1f22;
    height: 44px;
    font-size: 12px;
    color: #fff;
    box-sizing: border-box;
  }
  body:not(.home) div.recruitbox > ol {
    width: 70%;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 16px;
    background: #efefef;
    display: flex;
    flex-wrap: wrap;
  }
  body:not(.home) div.recruitbox > ol > li {
    width: 30%;
  }
  body:not(.home) div.recruitbox > ol > li:nth-child(odd) {
    width: 30%;
  }
  body:not(.home) div.recruitbox > ol > li:nth-child(even) {
    width: 70%;
    margin-bottom: 24px;
  }
  body:not(.home) {
    /* site page ----------------------------------- */
    /* production results 制作実績 -------- */
  }
  body:not(.home) .product_detailbox {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  body:not(.home) #productionresults h3 {
    width: 100%;
    background: #1e1e1e;
    color: #fff;
    font-size: 15px;
    padding-left: 24px;
    margin-bottom: 24px;
    box-sizing: border-box;
    border-bottom: solid 1px #efefef;
  }
  body:not(.home) .product_h3_1 {
    background-position: left center !important;
    background-size: 32% auto !important;
  }
  body:not(.home) .page_nav2 {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    background: #ef5457;
    margin-bottom: 44px;
  }
  body:not(.home) .page_nav2 li {
    width: calc(50% - 0.5px);
    border-bottom: solid 1px #fff;
  }
  body:not(.home) .page_nav2 li:nth-child(odd) {
    border-right: solid 1px #fff;
  }
  body:not(.home) .page_nav2 li a {
    width: 100%;
    color: #fff;
    padding: 24px 24px;
    height: 122px;
    font-size: 1.2em;
    line-height: 1.3em;
    box-sizing: border-box;
  }
  body:not(.home) .page_nav2 li a::after {
    border-color: #fff;
    right: 24px;
    top: 96px;
  }
  body:not(.home) .page_nav2 li a:hover {
    background: #1e1e1e;
  }
  body:not(.home) .detail_inbox {
    width: calc(100% - 0px);
    margin-bottom: 32px;
    padding-bottom: 32px;
    border-bottom: solid 1px #efefef;
  }
  body:not(.home) .detail_inbox:last-child {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }
  body:not(.home) {
    /* div.detail_inbox dl dd ol 詳細テキスト -- */
  }
  body:not(.home) .detail_inbox dl {
    display: flex;
    flex-wrap: wrap;
  }
  body:not(.home) .detail_inbox dl dt {
    width: 100%;
  }
  body:not(.home) .detail_inbox dl dd:nth-child(2) {
    margin-top: 12px;
    width: 35%;
  }
  body:not(.home) .detail_inbox dl dd:nth-child(3) {
    width: 65%;
    box-sizing: border-box;
    padding: 24px;
  }
  body:not(.home) .detail_inbox dl dd ol {
    box-sizing: border-box;
    position: relative;
  }
  body:not(.home) .detail_inbox dl dd ol > li {
    font-size: 0.85em;
  }
  body:not(.home) {
    /* site image pc */
  }
  body:not(.home) .detail_inbox dl dd ol > li:nth-child(1) {
    margin-bottom: 12px;
    padding-top: 24px;
  }
  body:not(.home) .detail_inbox dl dd ol > li:nth-child(1) img {
    max-width: 80%;
  }
  body:not(.home) {
    /* site image sp */
  }
  body:not(.home) {
    /* client */
  }
  body:not(.home) .detail_inbox dl dd ol > li:nth-child(3) {
    width: 100%;
  }
  body:not(.home) .detail_inbox dl dd ol > li:nth-child(4)::before {
    content: "クライアント名";
    background: #1e1e1e;
    font-size: 10px;
    line-height: 14px;
    color: #fff;
    padding: 0px 4px 0;
    margin-right: 4px;
  }
  body:not(.home) .detail_inbox dl dd ol > li:nth-child(4)::after {
    content: "様";
    padding-left: 4px;
  }
  body:not(.home) .floating {
    width: 40%;
    right: 0px;
    top: 0px;
    height: 220px;
    overflow: hidden;
    position: absolute;
  }
  body:not(.home) .service_type {
    font-size: 13px;
    margin-bottom: 12px;
  }
  body:not(.home) .service {
    font-size: 14px;
    line-height: 1.8em;
  }
  body:not(.home) {
    /* product tags */
  }
  body:not(.home) .detail_inbox dl dd ol li ul {
    width: 100%;
    padding: 12px;
    background: #efefef;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
  }
  body:not(.home) .detail_inbox dl dd ol li ul::before {
    width: 100%;
    content: "制作タグ";
    background: #1e1e1e;
    font-size: 0.75em;
    color: #fff;
    padding: 0px 4px;
    box-sizing: border-box;
  }
  body:not(.home) .detail_inbox dl dd ol li ul li {
    box-sizing: border-box;
  }
  body:not(.home) {
    /* 制作費用 - pricelist -------------------------------- */
    /* pricelistbox ------ */
  }
  body:not(.home) .pricelistbox {
    margin-bottom: 88px;
  }
  body:not(.home) .pricelistbox ul > li {
    box-sizing: border-box;
  }
  body:not(.home) {
    /* 簡易制作 */
  }
  body:not(.home) {
    /* テンプレートCMS制作 */
  }
  body:not(.home) {
    /* 目標を達成する制作 */
  }
  body:not(.home) {
    /* 達成したい目標を超える制作 */
  }
  body:not(.home) .pricelistbox ul:nth-child(4) > li {
    border: none !important;
  }
  body:not(.home) ol.page_nav {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
  }
  body:not(.home) .page_nav li {
    width: calc((100% - 66px) / 4);
    font-size: 1em;
    line-height: 1.2em;
  }
  body:not(.home) .page_nav li:nth-child(odd) {
    border: solid 1px #ed358b;
    box-sizing: border-box;
    margin-right: 22px;
  }
  body:not(.home) .page_nav li:nth-child(2) {
    background: #efefef;
    margin-right: 22px;
  }
  body:not(.home) .page_nav li:nth-child(4) {
    background: #efefef;
  }
  body:not(.home) .page_nav li a {
    display: block;
    box-sizing: border-box;
    padding: 24px 24px 24px;
    line-height: 1.2em;
  }
  body:not(.home) {
    /* inbox */
  }
  body:not(.home) .hbox {
    width: 100%;
    position: relative;
    align-items: center;
    margin-bottom: 24px;
    box-sizing: border-box;
    padding: 22px 0 21px;
  }
  body:not(.home) .hbox::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: #efefef;
    position: absolute;
    left: 0;
    top: 0;
  }
  body:not(.home) .hbox::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: #efefef;
    position: absolute;
    right: 0;
    bottom: 0;
  }
  body:not(.home) .pricelistbox_base h2 {
    width: 100%;
    padding: 0em 0 0.5em;
    display: block;
    line-height: 1em;
    letter-spacing: 0.075em;
    font-size: 1.2em;
  }
  body:not(.home) .pricelistbox_base h3 {
    line-height: 1em;
    letter-spacing: 0.075em;
    font-size: 1em;
    color: #888888;
  }
  body:not(.home) {
    /* pricelistbox 1 */
  }
  body:not(.home) .pricelistinbox {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
  }
  body:not(.home) .pricelistinbox ul {
    width: 30.6666666667%;
    box-sizing: border-box;
    margin-bottom: 44px;
    display: flex;
    flex-wrap: wrap;
  }
  body:not(.home) .pricelistinbox ul:nth-child(2) {
    margin: 0 4%;
  }
  body:not(.home) .pricelistinbox ul > li {
    width: 100%;
  }
  body:not(.home) .pricelistinbox ul > li span {
    box-sizing: border-box;
  }
  body:not(.home) .pricelistinbox ul > li:nth-child(1) {
    font-size: 1.2em;
    line-height: 1em;
    letter-spacing: 0.025em;
    border-top: dotted 1px #41b7a0;
    border-bottom: dotted 1px #41b7a0;
    padding-top: 11px;
    padding-bottom: 8px;
    font-weight: bold;
    margin-bottom: 12px;
  }
  body:not(.home) .pricelistinbox ul > li:nth-child(2) {
    width: 100%;
    margin-bottom: 1.6em;
  }
  body:not(.home) .pricelistinbox ul > li:nth-child(2) ol {
    width: 100%;
    box-sizing: border-box;
    min-height: 140px;
    padding: 0 4px;
  }
  body:not(.home) .pricelistinbox ul > li:nth-child(2) ol li {
    font-size: 14px;
    line-height: 1.6em;
    box-sizing: border-box;
    padding: 0 0px 6px;
  }
  body:not(.home) .pricelistinbox ul > li:nth-child(3) {
    width: 100%;
    line-height: 1em;
    border-top: dotted 1px #efefef;
    box-sizing: border-box;
    padding-bottom: 0.5em;
    padding-top: 16px;
    text-align: right;
  }
  body:not(.home) ol.pricelistinbox_under {
    width: 92%;
    line-height: 1.8em;
    font-size: 14px;
    background: #f9f9f9;
    box-sizing: border-box;
    padding: 18px 18px 16px;
    margin: 0 auto;
  }
  body:not(.home) .price_ftbig {
    font-size: 1.85em;
  }
  body:not(.home) .pricelistbox_base {
    margin-bottom: 88px;
  }
  body:not(.home) {
    /* #ppc */
  }
  body:not(.home) ul.list_ppc {
    width: 100%;
    margin-bottom: 44px;
    clear: both;
    overflow: hidden;
  }
  body:not(.home) ul.list_ppc li {
    width: 100%;
    line-height: 1.8em;
    float: left;
  }
  body:not(.home) ul.list_ppc li:nth-child(1) {
    width: 30%;
  }
  body:not(.home) ul.list_ppc li:nth-child(2) {
    width: 30%;
  }
  body:not(.home) ul.list_ppc li img {
    width: 70%;
  }
  body:not(.home) .price_ppc {
    margin-bottom: 48px;
    box-sizing: border-box;
    padding: 18px;
    clear: both;
    background: #efefef;
    overflow: hidden;
  }
  body:not(.home) .price_ppc li {
    width: 100% !important;
    vertical-align: bottom;
  }
  body:not(.home) .price_ppc li:nth-child(4) {
    text-align: right;
  }
  body:not(.home) .price_ppc li:nth-child(4) span:nth-child(1) {
    font-size: 1.5em !important;
  }
  body:not(.home) .note {
    width: 100%;
    margin-bottom: 44px;
    box-sizing: border-box;
    line-height: 1.8em;
    border-radius: 4px;
  }
  body:not(.home) .pricelink {
    width: 40%;
    margin-left: 60%;
    margin-top: 16px;
  }
  body:not(.home) .pricelink a {
    width: 100%;
    display: block;
    background: #d02e31;
    color: #fff;
    line-height: 1em;
    box-sizing: border-box;
    padding: 8px 12px 12px;
  }
  body:not(.home) {
    /* #seo */
  }
  body:not(.home) #seo {
    width: 100%;
    clear: both;
    overflow: hidden;
  }
  body:not(.home) .pricelistbox5 ul {
    width: calc((100% - 32px) / 2);
    float: left;
    box-sizing: border-box;
    background: #fafafa;
    padding: 18px 18px 12px;
  }
  body:not(.home) .pricelistbox5 ul:nth-child(2) {
    margin-right: 32px;
    background: #efefef;
    line-height: 1.3em !important;
  }
  body:not(.home) .pricelistbox5 ul li:nth-child(1) h4 {
    font-weight: bold;
    padding-bottom: 4px;
  }
  body:not(.home) .pricelistbox5 ul li:nth-child(2) {
    margin-right: 32px;
    min-height: 48px;
    font-size: 0.9em;
  }
  body:not(.home) {
    /* #analytics */
  }
  body:not(.home) .pricelistbox6 {
    width: 100%;
    clear: both;
    overflow: hidden;
  }
  body:not(.home) .pricelistbox6 ul {
    width: calc((100% - 32px) / 2);
    float: left;
    box-sizing: border-box;
  }
  body:not(.home) .pricelistbox6 ul li {
    line-height: 1.5em;
  }
  body:not(.home) .pricelistbox6 ul li:nth-child(2) {
    min-height: 48px;
    padding: 0 4px;
    margin-bottom: 24px;
  }
  body:not(.home) .pricelistbox6 ul li h4 {
    width: 100%;
    font-size: 1em;
    line-height: 1em;
    padding-bottom: 5px;
    vertical-align: middle;
    background: #1a1a1a;
    color: #fff;
    padding: 8px 8px 7px;
    margin-bottom: 7px;
    box-sizing: border-box;
  }
  body:not(.home) .p_box_ul {
    margin-right: 32px;
  }
  body:not(.home) .p_price {
    text-align: right;
  }
  body:not(.home) {
    /* -- 制作依頼 .orderflow ------------------------------- */
  }
  body:not(.home) #orderflow div > ul {
    width: 100%;
    box-sizing: border-box;
    margin: 18px auto 24px;
  }
  body:not(.home) #orderflow div > ul li:nth-child(1) {
    margin-bottom: 12px;
  }
  body:not(.home) #orderflow div > ul li:nth-child(3) {
    margin: 64px auto 16px;
    font-size: 1.2em;
    line-height: 1.5em;
  }
  body:not(.home) #orderflow div > ul li:nth-child(4) {
    width: 100%;
    margin: 0 auto;
    line-height: 1.8em;
  }
  body:not(.home) #orderflow .content_2 dl {
    width: 100%;
    box-sizing: border-box;
    margin: 0 auto 88px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  body:not(.home) #orderflow .content_2 dl dt {
    width: 100%;
    margin-top: 12px;
    box-sizing: border-box;
    margin-bottom: 12px;
    font-size: 1.8em;
    line-height: 1em;
    letter-spacing: -0.15em;
  }
  body:not(.home) #orderflow .content_2 dl dt::after {
    margin-top: 8px;
    padding-top: 12px;
    border-top: solid 1px #efefef;
    display: block;
    line-height: 1em;
    letter-spacing: 0em;
    font-size: 0.75em;
    text-align: right;
    color: #989898;
  }
  body:not(.home) .orderflow_dtimg1 {
    background: url(../images/orderflow/orderflow_img_management.png) no-repeat;
    background-position: left top;
  }
  body:not(.home) .orderflow_dtimg1 dt::after {
    content: "Management";
  }
  body:not(.home) .orderflow_dtimg2 {
    background: url(../images/orderflow/orderflow_img_creative.png) no-repeat;
    background-position: left top;
  }
  body:not(.home) .orderflow_dtimg2 dt::after {
    content: "Creative";
  }
  body:not(.home) .orderflow_dtimg3 {
    background: url(../images/orderflow/orderflow_img_analytics.png) no-repeat;
    background-position: left top;
  }
  body:not(.home) .orderflow_dtimg3 dt::after {
    content: "Analytics";
  }
  body:not(.home) #orderflow .content_2 dl dd {
    width: 100%;
    box-sizing: border-box;
  }
  body:not(.home) #orderflow .content_2 dl dd:nth-child(3) {
    width: 100%;
    margin-top: 24px;
    background: #efefef;
    box-sizing: border-box;
    padding: 18px 24px 16px;
    line-height: 1.8em;
    font-size: 15px;
    border-radius: 4px;
  }
  body:not(.home) #orderflow .content_2 dl dd h4 {
    width: 100%;
    font-size: 1.3em;
    line-height: 1.4em;
    box-sizing: border-box;
  }
  body:not(.home) .orderflow_box {
    width: 100%;
    clear: both;
    overflow: hidden;
  }
  body:not(.home) .orderflow_box ol {
    width: calc((100% - 32px) / 3);
    float: left;
    box-sizing: border-box;
    padding: 32px 16px 28px;
    min-height: 220px;
    margin-bottom: 36px;
  }
  body:not(.home) .orderflow_box ol li {
    line-height: 1.6em;
  }
  body:not(.home) .orderflow_box ol li:nth-child(1) {
    width: 82%;
    text-align: center;
    margin: 0 auto 16px;
  }
  body:not(.home) .of_boxbg1 {
    background: url(../images/orderflow/order_flow_img_green.png) no-repeat;
    background-position: center top;
    background-size: 100% auto;
  }
  body:not(.home) .of_boxbg2 {
    margin: 0 16px;
    background: url(../images/orderflow/order_flow_img_blue.png) no-repeat;
    background-position: center top;
    background-size: 100% auto;
  }
  body:not(.home) .of_boxbg3 {
    background: url(../images/orderflow/order_flow_img_purple.png) no-repeat;
    background-position: center top;
    background-size: 100% auto;
  }
  body:not(.home) .of_p {
    width: 80%;
    margin: 0 auto;
    clear: both;
    overflow: hidden;
    box-sizing: border-box;
    padding: 56px 24px 60px;
    background: url(../images/orderflow/orderflow_img3.png) no-repeat;
    background-size: cover;
    background-position: center center;
  }
  body:not(.home) {
    /* privacypolicy */
  }
  body:not(.home) #privacypolicy dl dd {
    height: auto !important;
  }
  body:not(.home) {
    /* single page */
  }
  body:not(.home) #mvbg_orderflow {
    box-sizing: border-box;
  }
  body:not(.home) .content_single {
    padding-top: 24px;
    padding-bottom: 48px;
  }
  body:not(.home) .content_single > h2 {
    line-height: 1.45em;
    letter-spacing: 0.075em;
    padding-bottom: 12px;
    border-bottom: solid 1px #efefef;
  }
  body:not(.home) .single_cnt1 {
    padding: 12px 0;
    font-size: 12px;
    line-height: 1.8em;
    color: #7a7a7a;
    border-bottom: dotted 1px #efefef;
  }
  body:not(.home) .single_cnt1 span {
    display: inline-block;
    margin-right: 1em;
  }
  body:not(.home) .single_cnt1 a {
    color: #1e1e1e;
    text-decoration: underline;
  }
  body:not(.home) .single_eyecatch {
    margin-top: 24px;
  }
  body:not(.home) .single_eyecatch img {
    display: block;
    width: 100%;
    height: auto;
  }
  body:not(.home) .tags {
    width: 100%;
    padding-top: 16px;
    clear: both;
    overflow: hidden;
  }
  body:not(.home) .tags li a {
    display: block;
    float: left;
    background: #355c7d;
    margin-right: 8px;
    margin-bottom: 8px;
    padding: 8px;
    color: #fff;
    font-size: 0.75em;
    line-height: 1em;
    word-break: keep-all;
  }
  body:not(.home) .tags li a:last-child {
    margin-right: 0;
  }
  body:not(.home) .tags li a:hover {
    background: #1e1e1e;
    color: #fff;
  }
  body:not(.home) .single_cnt2 {
    padding-top: 24px;
    line-height: 2em;
    overflow-wrap: break-word;
  }
  body:not(.home) .content_single > h2,
  body:not(.home) .single_cnt1,
  body:not(.home) .single_cnt2,
  body:not(.home) .single_cnt2 * {
    -webkit-user-select: text;
    -moz-user-select: text;
    -ms-user-select: text;
    user-select: text;
  }
  body:not(.home) .single_cnt2 > :first-child {
    margin-top: 0;
  }
  body:not(.home) .single_cnt2 > :last-child {
    margin-bottom: 0;
  }
  body:not(.home) .single_cnt2 p {
    margin-bottom: 24px;
  }
  body:not(.home) .single_cnt2 h2 {
    margin: 48px 0 18px;
    padding: 0 0 10px;
    border-bottom: solid 1px #efefef;
    font-size: 1.5em;
    line-height: 1.5em;
    letter-spacing: 0.075em;
    box-sizing: border-box;
  }
  body:not(.home) .single_cnt2 h3 {
    margin: 36px 0 12px;
    padding-bottom: 6px;
    font-size: 1.2em;
    line-height: 1.6em;
    letter-spacing: 0.05em;
    font-weight: bold;
  }
  body:not(.home) .single_cnt2 h4 {
    margin: 32px 0 10px;
    font-size: 1em;
    line-height: 1.6em;
    font-weight: bold;
  }
  body:not(.home) .single_cnt2 strong,
  body:not(.home) .single_cnt2 b {
    font-weight: bold;
  }
  body:not(.home) .single_cnt2 em,
  body:not(.home) .single_cnt2 i {
    font-style: italic;
  }
  body:not(.home) .single_cnt2 ul,
  body:not(.home) .single_cnt2 ol {
    margin-bottom: 24px;
    padding-left: 1.6em;
  }
  body:not(.home) .single_cnt2 ul {
    list-style: disc;
  }
  body:not(.home) .single_cnt2 ol {
    list-style: decimal;
  }
  body:not(.home) .single_cnt2 li {
    margin-bottom: 8px;
  }
  body:not(.home) .single_cnt2 li:last-child {
    margin-bottom: 0;
  }
  body:not(.home) .single_cnt2 li > ul,
  body:not(.home) .single_cnt2 li > ol {
    margin-top: 8px;
    margin-bottom: 0;
  }
  body:not(.home) .single_cnt2 a {
    color: #1e1e1e;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
  }
  body:not(.home) .single_cnt2 a:visited {
    color: #1e1e1e;
  }
  body:not(.home) .single_cnt2 a:hover {
    color: #1e1e1e;
    background: #efefef;
  }
  body:not(.home) .single_cnt2 table {
    margin-bottom: 32px;
    border-collapse: collapse;
    font-size: 0.9em;
    line-height: 1.7em;
  }
  body:not(.home) .single_cnt2 caption {
    padding-bottom: 8px;
    font-weight: bold;
    text-align: left;
  }
  body:not(.home) .single_cnt2 th,
  body:not(.home) .single_cnt2 td {
    padding: 12px;
    border: solid 1px #b2b2b2;
    background: #fff;
    vertical-align: top;
    box-sizing: border-box;
  }
  body:not(.home) .single_cnt2 th {
    background: #f5fbf7;
    font-weight: bold;
  }
  body:not(.home) .single_cnt2 blockquote {
    margin: 32px 0;
    padding: 18px 24px 16px;
    background: #efefef;
    border-radius: 4px;
  }
  body:not(.home) .single_cnt2 blockquote > :last-child {
    margin-bottom: 0;
  }
  body:not(.home) .single_cnt2 pre {
    margin-bottom: 32px;
    padding: 18px 24px;
    background: #1e1e1e;
    color: #fff;
    font-size: 0.9em;
    line-height: 1.7em;
    overflow-x: auto;
    box-sizing: border-box;
  }
  body:not(.home) .single_cnt2 code,
  body:not(.home) .single_cnt2 kbd,
  body:not(.home) .single_cnt2 samp {
    font-family: Consolas, Monaco, "Courier New", monospace;
    font-feature-settings: normal;
  }
  body:not(.home) .single_cnt2 :not(pre) > code,
  body:not(.home) .single_cnt2 kbd,
  body:not(.home) .single_cnt2 samp {
    padding: 0.15em 0.35em;
    background: #efefef;
  }
  body:not(.home) .single_cnt2 pre code {
    padding: 0;
    background: transparent;
    color: inherit;
  }
  body:not(.home) .single_cnt2 figure {
    margin-bottom: 32px;
  }
  body:not(.home) .single_cnt2 figure img,
  body:not(.home) .single_cnt2 > img {
    display: block;
    max-width: 100%;
    height: auto;
  }
  body:not(.home) .single_cnt2 figcaption {
    padding-top: 8px;
    color: #7a7a7a;
    font-size: 0.8em;
    line-height: 1.6em;
  }
  body:not(.home) .single_cnt2 hr {
    margin: 44px 0;
    border: 0;
    border-top: solid 1px #efefef;
  }
}
