@charset "UTF-8";
@font-face {
  font-family: "smartbali";
  src: url("../fonts/smartbali-fontset.eot");
  src: url("../fonts/smartbali-fontset.eot?#iefix") format("embedded-opentype"), url("../fonts/smartbali-fontset.woff") format("woff"), url("../fonts/smartbali-fontset.ttf") format("truetype"), url("../fonts/smartbali-fontset.svg#smartbali-fontset") format("svg");
  font-weight: normal;
  font-style: normal; }

[data-icon]:before {
  font-family: "smartbali" !important;
  content: attr(data-icon);
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

[class^="icon-"]:before,
[class*=" icon-"]:before {
  font-family: "smartbali" !important;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-close-round:before {
  content: "\61"; }

.icon-navicon:before {
  content: "\62"; }

.icon-search-find:before {
  content: "\63"; }

.icon-calendar:before {
  content: "\64"; }

.icon-check-circle:before {
  content: "\65"; }

.icon-check-circle-o:before {
  content: "\66"; }

.icon-instagram:before {
  content: "\67"; }

.icon-facebook-official:before {
  content: "\68"; }

.icon-down-dir:before {
  content: "\69"; }

.icon-left-dir:before {
  content: "\6a"; }

.icon-right-dir:before {
  content: "\6b"; }

.icon-up-dir:before {
  content: "\6c"; }

.icon-help-circled:before {
  content: "\6d"; }

.icon-right-open-mini:before {
  content: "\6f"; }

.icon-chevron-left:before {
  content: "\6e"; }

.icon-chevron-right:before {
  content: "\70"; }

* {
  box-sizing: border-box; }

body {
  padding: 0;
  margin: 0; }

ul {
  margin: 0;
  padding: 0; }

html {
  font-size: 62.5%; }

body {
  font-size: 14px;
  font-size: 1.4rem; }

/**
 * COMMMON STYLE
 */
.clear {
  clear: both; }

.aC {
  text-align: center !important; }

.aR {
  text-align: right !important; }

.aL {
  text-align: left !important; }

.fL {
  float: left; }

.fR {
  float: right; }

.p30 {
  padding: 30px !important; }

.pT0 {
  padding-top: 0px !important; }

.pT10 {
  padding-top: 10px !important; }

.pT20 {
  padding-top: 20px !important; }

.pT30 {
  padding-top: 30px !important; }

.pT40 {
  padding-top: 40px !important; }

.pT50 {
  padding-top: 50px !important; }

.pL20 {
  padding-left: 20px !important; }

.pB10 {
  padding-bottom: 10px !important; }

.pB20 {
  padding-bottom: 20px !important; }

.pB30 {
  padding-bottom: 30px !important; }

.pB40 {
  padding-bottom: 40px !important; }

.pB50 {
  padding-bottom: 50px !important; }

.mT0 {
  margin-top: 0 !important; }

.m0 {
  margin: 0 !important; }

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

.w100 {
  width: 100% !important; }

.w50 {
  width: 50% !important; }

.w30 {
  width: 30% !important; }

.w25 {
  width: 25% !important; }

.w20 {
  width: 20% !important; }

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

.bgnone {
  background: transparent none; }

.c1of2 {
  width: 50%;
  float: left; }

.c2of2 {
  width: 50%;
  float: right; }

.eng {
  font-family: "Raleway", sans-serif; }

ul.nostyle,
ol.nostyle {
  list-style: none;
  padding-left: 0; }

ul.icn {
  list-style: none;
  padding-left: 0; }
  ul.icn li {
    list-style: none;
    margin: 0;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 30px;
    background: url("../img/common/icn-list.png") no-repeat left 5px; }

img.w100 {
  width: 100%;
  height: auto; }

iframe[name=google_conversion_frame] {
  width: 0;
  height: 0;
  overflow: hidden; }

.clearfix {
  zoom: 1; }

.clearfix:after {
  content: "";
  display: block;
  clear: both; }

@media screen and (max-width: 480px) {
  .sp_aL {
    text-align: left !important; } }

.clr_red {
  color: #8c0000; }

body {
  margin: 0;
  padding: 0;
  font-family: sans-serif;
  line-height: 1.8;
  overflow-x: hidden; }

#page {
  overflow-x: hidden;
  width: 100%; }

p {
  line-height: 1.8;
  color: #4D4D4D; }

.subheading {
  color: #333333; }

ruby {
  font-size: 11px;
  font-weight: normal;
  color: #888888; }

a:hover img {
  opacity: 0.8; }

hr {
  margin-top: 30px;
  margin-bottom: 20px;
  border-color: #49300A; }

h1 span {
  margin-left: 10px;
  font-size: 14px;
  font-size: 1.4rem; }

h1.entry-title,
h1.cube {
  color: #49300A;
  text-align: left;
  letter-spacing: 0.05em;
  padding: 10px 10px 10px 65px;
  font-size: 32px;
  font-size: 3.2rem;
  background: url("../images/common/icn_prodecube.svg") no-repeat left center;
  background-size: 45px auto; }

h2.cube,
h3.cube,
h4.cube,
h5.cube {
  padding: 6px 20px 5px 60px;
  min-height: 45px;
  line-height: 40px;
  background: #49300A url("../images/common/icn_prodecube_white.svg") no-repeat 15px center;
  background-size: 30px auto;
  color: #FFFFFF;
  font-size: 26px;
  font-size: 2.6rem;
  font-family: sans-serif; }

.base_table {
  width: 100%; }
  .base_table th,
  .base_table td {
    padding: 7px 30px;
    border: 1px solid #CCCCCC;
    vertical-align: top; }
  .base_table th {
    background: #F3F0EA; }
  .base_table td ul, .base_table td ol {
    margin-left: 25px; }
  .base_table hr {
    margin-top: 0;
    margin-bottom: 10px;
    border-color: #CCCCCC; }

.price_table {
  width: 100%;
  margin-bottom: 20px; }
  .price_table thead th,
  .price_table thead td {
    background: #826A46;
    color: #FFFFFF;
    vertical-align: middle;
    text-align: center; }
  .price_table th,
  .price_table td {
    padding: 7px 10px;
    border: 1px solid #CCCCCC;
    vertical-align: top; }
  .price_table th {
    background: #F3F0EA; }
  .price_table td {
    text-align: center; }
    .price_table td ul, .price_table td ol {
      text-align: left;
      margin-left: 25px; }

strong.required,
span.required {
  background: #B93A21;
  color: #FFFFFF;
  font-size: 12px;
  font-size: 1.2rem;
  border-radius: 3px;
  margin-left: 3px;
  padding: 3px 5px;
  white-space: nowrap; }

.form_table {
  width: 100%;
  margin-top: 20px;
  margin-bottom: 30px; }
  .form_table th,
  .form_table td {
    padding: 15px 20px;
    border: 1px solid #CCCCCC;
    vertical-align: top; }
  .form_table th {
    width: 250px;
    background: #F3F0EA; }
    .form_table th strong {
      background: #B93A21;
      color: #FFFFFF;
      font-size: 12px;
      font-size: 1.2rem;
      border-radius: 3px;
      margin-left: 3px;
      padding: 3px 5px;
      white-space: nowrap; }
  .form_table td ul, .form_table td ol {
    margin-left: 25px; }

@media screen and (max-width: 480px) {
  body {
    padding-top: 45px;
    overflow-x: hidden;
    width: 100%; }
  #page {
    overflow-x: hidden;
    width: 100%; }
  .subheading {
    font-size: 2rem;
    margin: 2rem;
    line-height: 1.5em; }
    .subheading br {
      display: none; }
  h1.entry-title,
  h1.cube {
    font-size: 2.1rem;
    background-position: 2rem 0;
    background-size: 35px auto;
    padding: 1rem 2rem 1.2rem 6.5rem; }
  h2.cube,
  h3.cube,
  h4.cube,
  h5.cube {
    font-size: 2rem !important;
    padding: 1.3rem 2rem 1.3rem 6rem !important;
    line-height: 1.3em;
    background-position: 2rem 1rem;
    margin-left: 0 !important;
    margin-right: 0 !important; }
  h3, .h3 {
    font-size: 1.8rem;
    margin-left: 2rem;
    margin-right: 2rem; }
  h4 {
    line-height: 1.5; }
  .base_table {
    width: auto;
    margin: 1rem 0; }
    .base_table th,
    .base_table td {
      padding: 0.5rem;
      font-size: 1.2rem;
      line-height: 1.5em; }
    .base_table th {
      width: 30%; }
    .base_table td ul, .base_table td ol {
      margin-left: 20px;
      list-style: none; }
      .base_table td ul li, .base_table td ol li {
        position: relative;
        padding: 0 0 0 1rem; }
        .base_table td ul li:before, .base_table td ol li:before {
          content: "";
          width: 0.5rem;
          height: 0.5rem;
          background: #000;
          border-radius: 50%;
          display: block;
          position: absolute;
          top: 0.7rem;
          left: 0; }
  .price_table {
    margin: 1rem;
    width: auto; }
    .price_table th,
    .price_table td {
      font-size: 1.2rem;
      padding: 0.5em;
      line-height: 1.3em; }
  .form_table {
    width: auto;
    margin: 2rem; }
    .form_table th,
    .form_table td {
      padding: 0.5rem;
      font-size: 1.2rem;
      line-height: 1.5em; }
    .form_table th {
      width: 30%; }
      .form_table th strong {
        display: inline-block;
        padding: 0.2em;
        line-height: 1em;
        font-weight: normal; } }

/**
 * Header
 */
#header {
  background-color: #F3F0EA; }
  #header .inner_content {
    position: relative;
    padding: 8px 10px; }
  #header p {
    margin: 0;
    padding: 0 0; }
  #header #head_copy {
    font-size: 12px;
    font-size: 1.2rem; }
  #header #head_logo {
    display: inline-block;
    width: 370px;
    height: auto; }
  #header ul {
    position: relative;
    margin-left: 20px;
    margin-top: -10px;
    width: 450px;
    display: inline-block; }
    #header ul li {
      display: inline;
      margin-right: 5px; }
      #header ul li img {
        height: 25px;
        width: auto; }
  #header #head_time {
    position: absolute;
    right: 165px;
    top: 11px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.3;
    color: #816A45; }
  #header #head_mail {
    position: absolute;
    right: 0;
    top: 0;
    line-height: 1.5;
    display: inline-block; }
    #header #head_mail a {
      display: block;
      width: 140px;
      padding: 2px 3px 3px;
      background: #009139;
      color: #FFFFFF;
      text-align: center;
      text-decoration: none;
      border-radius: 0 0 3px 3px; }
      #header #head_mail a:hover {
        color: #FFFFFF;
        background-color: #00ab43; }
  #header #head_blog {
    position: absolute;
    right: 0;
    top: 35px; }
    #header #head_blog a {
      display: block;
      width: 140px;
      padding: 1px 3px 0px;
      background: #BF442D;
      color: #FFFFFF;
      text-align: center;
      text-decoration: none;
      border-radius: 3px; }
      #header #head_blog a:hover {
        color: #FFFFFF;
        background-color: #d04e36; }

#gnav {
  background: #49300A; }
  #gnav a {
    color: #FFFFFF;
    text-decoration: none; }
  #gnav ul {
    font-size: 0;
    display: inline-block; }
  #gnav li {
    font-size: 14px;
    font-size: 1.4rem;
    display: inline-block; }
  #gnav ul#gnav1 li {
    position: relative;
    display: inline-block;
    border-top: 5px solid #49300A;
    border-bottom: 5px solid #49300A; }
    #gnav ul#gnav1 li a {
      display: block;
      padding: 3px 20px; }
  #gnav ul#gnav1 li + li a {
    border-left: 1px solid #FFFFFF; }
  #gnav ul#gnav1 li.current-page-ancestor,
  #gnav ul#gnav1 li:hover,
  #gnav ul#gnav1 li.current {
    border-top: 5px solid #C9BCA7;
    border-bottom: 5px solid #C9BCA7; }
    #gnav ul#gnav1 li.current-page-ancestor a,
    #gnav ul#gnav1 li:hover a,
    #gnav ul#gnav1 li.current a {
      background: #C9BCA7;
      color: #49300A; }
  #gnav ul#gnav2 a {
    display: inline-block;
    width: 130px;
    border-radius: 3px;
    text-align: center; }
  #gnav ul#gnav2 li {
    font-size: 13px;
    font-size: 1.3rem;
    margin-left: 5px; }
    #gnav ul#gnav2 li a {
      background: #826A46; }
  #gnav ul#gnav2 li:hover a,
  #gnav ul#gnav2 li.current a {
    background: #13903E; }

#subnav {
  background: #C9BCA7; }
  #subnav ul {
    font-size: 0;
    display: inline-block; }
  #subnav li {
    font-size: 14px;
    font-size: 1.4rem;
    display: inline-block; }
  #subnav ul li {
    position: relative;
    display: inline-block;
    border-top: 5px solid #C9BCA7;
    border-bottom: 5px solid #C9BCA7; }
    #subnav ul li a {
      display: block;
      padding: 3px 30px;
      color: #49300A; }
  #subnav ul li + li a {
    border-left: 1px solid #49300A; }
  #subnav ul li.noborder a {
    border-left: none !important; }
  #subnav ul li.current_page_item,
  #subnav ul li:hover,
  #subnav ul li.current {
    border-top: 5px solid #B93A21;
    border-bottom: 5px solid #B93A21; }
    #subnav ul li.current_page_item a,
    #subnav ul li:hover a,
    #subnav ul li.current a {
      background: #B93A21;
      color: #FFFFFF;
      text-decoration: none; }

@media screen and (max-width: 480px) {
  #header {
    position: fixed;
    z-index: 10;
    top: 0;
    left: 0;
    width: 100%;
    height: 45px;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.3); }
    #header .inner_content {
      padding: 10px 15px 0; }
    #header #head_copy {
      display: none;
      font-size: 12px; }
    #header #head_logo {
      width: 210px;
      display: block; }
      #header #head_logo img {
        width: 100%;
        height: inherit;
        display: block; }
    #header ul {
      margin-left: 0;
      margin-top: 5px;
      display: block;
      display: none; }
    #header #head_time {
      display: none; }
    #header #head_mail {
      right: 0.5em; }
      #header #head_mail a {
        position: absolute;
        width: 45px;
        height: 45px;
        padding: 0;
        text-align: center;
        right: 40px;
        margin: auto;
        line-height: 45px;
        border-radius: 0; }
        #header #head_mail a img {
          height: 17px;
          width: auto; }
    #header #head_blog {
      display: none; }
  #gnav {
    display: none; }
  #subnav {
    display: none; } }

#footer_seminar {
  min-height: 330px;
  margin-top: 50px;
  padding-top: 50px;
  padding-bottom: 0;
  background: #B93A21; }
  #footer_seminar .inner_content {
    min-height: 330px;
    padding-bottom: 0px;
    position: relative;
    background: url("../images/common/footer_obayashi.png") no-repeat right 25px bottom; }
  #footer_seminar p {
    color: #FFFFFF; }
  #footer_seminar .copy1 {
    position: absolute;
    background: #FFFFFF;
    border-radius: 25px;
    text-align: center;
    padding-top: 20px;
    width: 270px;
    height: 270px; }
    #footer_seminar .copy1 span {
      display: block;
      font-weight: bold;
      padding: 10px 20px 5px;
      font-size: 14px;
      font-size: 1.4rem; }
    #footer_seminar .copy1 span.comment {
      text-align: left; }
    #footer_seminar .copy1 p.btn a {
      border-radius: 10px;
      padding: 6px 50px; }
    #footer_seminar .copy1 p {
      padding-top: 0px;
      margin-bottom: 0;
      color: #B93A21;
      line-height: 1.5;
      font-size: 17px;
      font-size: 1.7rem;
      font-weight: bold; }
    #footer_seminar .copy1:after {
      position: absolute;
      display: block;
      content: "";
      width: 0;
      height: 0;
      top: 100px;
      right: -105px;
      border: 50px solid #FFFFFF;
      border-width: 30px 55px;
      border-color: transparent transparent transparent #FFFFFF; }
  #footer_seminar .copy2 {
    margin-left: 280px;
    width: 500px; }
    #footer_seminar .copy2 p {
      margin-bottom: 10px;
      margin-bottom: 20px;
      font-size: 22px;
      font-size: 2.2rem; }
    #footer_seminar .copy2 p:last-of-type {
      margin-bottom: 0; }
  #footer_seminar .copy3 {
    position: absolute;
    right: 0;
    top: 60px;
    width: 170px;
    min-height: 215px;
    padding: 12px;
    background: rgba(0, 0, 0, 0.3); }
    #footer_seminar .copy3 h4 {
      margin: 10px 0 10px;
      padding: 0;
      color: #FFFFFF;
      font-size: 18px;
      font-size: 1.8rem; }
    #footer_seminar .copy3 p {
      font-size: 13px;
      font-size: 1.3rem;
      line-height: 1.5; }
    #footer_seminar .copy3 .btn {
      margin: 10px auto 0;
      padding: 0;
      text-align: center; }
      #footer_seminar .copy3 .btn a {
        margin: 0 auto;
        padding: 3px 20px;
        background: #FFFFFF;
        color: #B93A21;
        border-radius: 5px;
        text-align: center; }
      #footer_seminar .copy3 .btn a:hover {
        background: #FFDADA; }
    #footer_seminar .copy3:before, #footer_seminar .copy3:after {
      position: absolute;
      display: block;
      content: "";
      width: 0;
      height: 0; }
    #footer_seminar .copy3:before {
      top: 0;
      left: 0;
      border: 5px solid #FFFFFF;
      border-color: #FFFFFF transparent transparent #FFFFFF; }
    #footer_seminar .copy3:after {
      right: 0;
      bottom: 0;
      border: 5px solid #FFFFFF;
      border-color: transparent #FFFFFF #FFFFFF transparent; }

/**
 * Footer
 */
#footer {
  background-color: #4C4949;
  color: #FFFFFF; }
  #footer p {
    margin: 0;
    padding: 0;
    color: #FFFFFF; }
  #footer a {
    color: #FFFFFF; }
  #footer li {
    list-style: none;
    margin-left: 10px;
    margin-bottom: 10px;
    font-size: 14px;
    font-size: 1.4rem; }
    #footer li a {
      text-decoration: none; }
    #footer li ul {
      margin-top: 10px; }
    #footer li li {
      margin-bottom: 0px;
      font-size: 12px;
      font-size: 1.2rem; }
      #footer li li a {
        display: block;
        position: relative; }
      #footer li li a:before {
        content: "-";
        position: absolute;
        left: -10px;
        top: 0px; }
      #footer li li a:hover {
        text-decoration: underline; }
  #footer #foot_banner {
    padding-top: 30px;
    padding-bottom: 30px; }
    #footer #foot_banner ul li {
      display: inline-block;
      width: 230px;
      height: 100px;
      margin-right: 0px; }
      #footer #foot_banner ul li img {
        width: auto;
        height: 100px; }
  #footer #foot_contact {
    position: relative;
    height: 80px; }
    #footer #foot_contact p {
      padding: 0;
      margin: 0; }
    #footer #foot_contact p#foot_description {
      font-size: 12px;
      font-size: 1.2rem; }
    #footer #foot_contact #f_logo {
      position: absolute;
      width: 380px;
      height: 35px;
      top: 30px;
      left: 0; }
      #footer #foot_contact #f_logo img {
        width: 100%;
        height: auto; }
    #footer #foot_contact #f_tel_osaka {
      position: absolute;
      width: 200px;
      top: 30px;
      left: 400px; }
      #footer #foot_contact #f_tel_osaka img {
        width: 100%;
        height: auto; }
    #footer #foot_contact #f_tel_tokyo {
      position: absolute;
      width: 200px;
      top: 30px;
      left: 610px; }
      #footer #foot_contact #f_tel_tokyo img {
        width: 100%;
        height: auto; }
    #footer #foot_contact #f_tel_time {
      position: absolute;
      width: 380px;
      height: 35px;
      top: 55px;
      left: 400px;
      font-size: 11px;
      font-size: 1.1rem; }
    #footer #foot_contact #f_mail {
      position: absolute;
      width: 138px;
      top: 30px;
      right: 0; }
      #footer #foot_contact #f_mail a {
        text-decoration: none;
        border: 1px solid #0F5C18;
        display: block;
        padding: 5px 10px;
        line-height: 1.5;
        text-align: center;
        background: #009139;
        color: #FFFFFF; }
        #footer #foot_contact #f_mail a:hover {
          background: #00AB43; }
  #footer #foot_nav {
    padding-top: 20px; }
    #footer #foot_nav .col5 {
      float: left; }
    #footer #foot_nav .col1of5 {
      width: 21%; }
    #footer #foot_nav .col2of5 {
      width: 20%; }
    #footer #foot_nav .col3of5 {
      width: 24%; }
    #footer #foot_nav .col4of5 {
      width: 17%; }
    #footer #foot_nav .col5of5 {
      width: 17%; }
    #footer #foot_nav .col6of5 {
      display: none; }
  #footer #foot_copy {
    background: #000000; }
    #footer #foot_copy .inner_content {
      position: relative;
      padding-top: 10px;
      padding-bottom: 5px; }
    #footer #foot_copy p {
      font-size: 12px;
      font-size: 1.2rem; }
    #footer #foot_copy #copyright {
      position: absolute;
      right: 0;
      top: 10px; }
    #footer #foot_copy ul {
      display: inline; }
      #footer #foot_copy ul li {
        display: inline;
        margin-bottom: 0px;
        margin-right: 20px;
        font-size: 12px;
        font-size: 1.2rem; }

.sp_menu_open, .sp_menu_close {
  display: none; }

@media screen and (max-width: 480px) {
  #footer_seminar {
    margin-top: 0;
    padding: 2rem 0;
    min-height: auto; }
    #footer_seminar .inner_content {
      min-height: auto;
      background-position: 50% 150px;
      background: none; }
    #footer_seminar .copy1 {
      position: relative;
      width: auto;
      height: auto;
      background: url("../images/common/footer_obayashi.png") no-repeat right -10vw bottom;
      background-size: contain;
      text-align: left;
      border-radius: 0; }
      #footer_seminar .copy1 .copy1_inner {
        padding: 1rem 1rem 1rem;
        margin: 0 0 0 2rem;
        width: 45vw;
        height: 45vw;
        background: #fff;
        border-radius: 1rem;
        position: relative; }
      #footer_seminar .copy1 span {
        font-size: 3vw;
        padding: 0;
        line-height: 1.4; }
      #footer_seminar .copy1 p.btn a {
        font-size: 4vw;
        margin-top: 2px;
        padding: 7px 10px;
        border-radius: 5px; }
      #footer_seminar .copy1 p {
        margin: 0;
        font-size: 3.5vw;
        line-height: 1.4; }
        #footer_seminar .copy1 p:after {
          content: "";
          border: 10px solid transparent;
          border-left-color: #fff;
          position: absolute;
          top: 20px;
          right: -20px; }
      #footer_seminar .copy1:after {
        display: none; }
    #footer_seminar .copy2 {
      width: auto;
      margin: 1rem 0 0; }
      #footer_seminar .copy2 p + p {
        padding: 0 60px; }
      #footer_seminar .copy2 p {
        padding: 0 20px;
        font-size: 5vw;
        line-height: 1.5;
        margin-bottom: 10px; }
        #footer_seminar .copy2 p img {
          width: 100%;
          height: auto;
          display: block; }
    #footer_seminar .copy3 {
      position: relative;
      right: auto;
      top: auto;
      width: auto;
      min-height: auto;
      margin: 2rem 2rem 0; }
      #footer_seminar .copy3 .btn {
        display: block; }
        #footer_seminar .copy3 .btn a {
          padding: 1rem; }
  #footer #foot_banner {
    padding: 0 20px; }
    #footer #foot_banner ul {
      text-align: center;
      padding-bottom: 20px; }
      #footer #foot_banner ul li {
        float: left;
        width: 47%;
        height: auto;
        margin: 20px 0 0px; }
        #footer #foot_banner ul li img {
          width: 100%;
          height: auto; }
      #footer #foot_banner ul li:nth-of-type(2n) {
        float: right; }
      #footer #foot_banner ul li:nth-of-type(2n-1) {
        clear: both; }
  #footer #foot_copy .inner_content {
    padding: 2rem 2rem 8rem; }
  #footer #foot_copy #copyright {
    position: relative;
    right: auto;
    top: auto;
    font-size: 1rem; }
  #footer #foot_copy ul {
    display: block; }
    #footer #foot_copy ul li {
      margin: 0 1em 1em 0;
      display: inline-block; }
  #footer #foot_contact {
    height: auto;
    padding: 1rem 2rem;
    border-top: 2px solid #000000; }
    #footer #foot_contact p {
      position: relative;
      top: auto;
      left: auto;
      width: auto;
      height: auto;
      max-width: auto;
      margin: 0.5rem 0rem; }
    #footer #foot_contact p#foot_description {
      padding-bottom: 1rem; }
    #footer #foot_contact #f_logo {
      position: relative;
      margin: 1rem 0rem;
      width: auto;
      top: 0; }
      #footer #foot_contact #f_logo img {
        width: 100%;
        height: auto; }
    #footer #foot_contact #f_tel_osaka {
      position: relative;
      width: 48%;
      float: left;
      top: 0;
      left: 0;
      margin: 0;
      padding: 10px 0 0; }
    #footer #foot_contact #f_tel_tokyo {
      position: relative;
      width: 48%;
      float: right;
      top: 0;
      left: 0;
      margin: 0;
      padding: 10px 0 0; }
    #footer #foot_contact #f_tel_time {
      clear: both;
      display: block;
      position: relative;
      padding-top: 5px;
      padding-bottom: 15px;
      width: auto;
      height: auto;
      top: 0;
      left: 0; }
    #footer #foot_contact #f_mail {
      position: relative;
      top: 0;
      left: 0;
      width: 100%;
      text-align: center; }
      #footer #foot_contact #f_mail a {
        display: block;
        text-align: center; }
        #footer #foot_contact #f_mail a img {
          width: 160px; }
  #sp_menu .sp_menu_list {
    top: 0;
    bottom: 0;
    right: -100%;
    position: fixed;
    z-index: 1001;
    display: none;
    background: #4C4949;
    overflow: visible !important; }
    #sp_menu .sp_menu_list .sp_menu_scroll {
      overflow: auto;
      height: 100%;
      box-shadow: 0 0 2rem 0 rgba(0, 0, 0, 0.5); }
      #sp_menu .sp_menu_list .sp_menu_scroll #foot_nav {
        padding: 0; }
        #sp_menu .sp_menu_list .sp_menu_scroll #foot_nav .col5 {
          float: none;
          width: 100%; }
          #sp_menu .sp_menu_list .sp_menu_scroll #foot_nav .col5 ul li {
            margin: 0; }
            #sp_menu .sp_menu_list .sp_menu_scroll #foot_nav .col5 ul li a {
              background: #fff;
              color: #000;
              display: block;
              padding: 1em 3rem 1rem 1rem;
              position: relative;
              border-bottom: 1px solid #ccc;
              text-decoration: none; }
              #sp_menu .sp_menu_list .sp_menu_scroll #foot_nav .col5 ul li a:after {
                position: absolute;
                top: 50%;
                right: 1rem;
                content: "";
                display: block;
                width: 1rem;
                height: 1rem;
                border: 2px solid #ccc;
                border-left: none;
                border-bottom: none;
                -webkit-transform: rotate(45deg);
                        transform: rotate(45deg);
                margin-top: -0.5rem; }
            #sp_menu .sp_menu_list .sp_menu_scroll #foot_nav .col5 ul li ul {
              margin-top: 0; }
              #sp_menu .sp_menu_list .sp_menu_scroll #foot_nav .col5 ul li ul li a {
                padding-left: 2.5rem; }
                #sp_menu .sp_menu_list .sp_menu_scroll #foot_nav .col5 ul li ul li a:before {
                  content: "-";
                  position: absolute;
                  left: 1rem;
                  top: 1em; }
        #sp_menu .sp_menu_list .sp_menu_scroll #foot_nav .col6of5 {
          display: block; }
  #sp_menu .sp_menu_open {
    z-index: 1;
    display: block;
    position: fixed;
    right: 0;
    top: 0;
    background: #009139;
    width: 45px;
    height: 45px;
    line-height: 45px;
    text-align: center;
    border: none;
    border-radius: 0;
    z-index: 10; }
    #sp_menu .sp_menu_open span, #sp_menu .sp_menu_open span:before, #sp_menu .sp_menu_open span:after {
      background: #fff;
      width: 27px;
      height: 3px;
      display: block; }
    #sp_menu .sp_menu_open span {
      position: relative;
      left: 9px;
      top: 22px; }
      #sp_menu .sp_menu_open span:before {
        content: "";
        position: absolute;
        top: -8px; }
      #sp_menu .sp_menu_open span:after {
        content: "";
        position: absolute;
        bottom: -8px; }
  #sp_menu .sp_menu_close {
    display: block;
    position: absolute;
    left: -49px;
    top: 0;
    background: #B93A21;
    padding: 22px;
    border-top: none;
    border-right: none;
    border-bottom: 0;
    border-radius: 0; }
    #sp_menu .sp_menu_close span, #sp_menu .sp_menu_close span:before, #sp_menu .sp_menu_close span:after {
      background: #fff;
      display: block;
      height: 4px; }
    #sp_menu .sp_menu_close span {
      position: relative;
      width: 4px; }
      #sp_menu .sp_menu_close span:before {
        content: "";
        position: absolute;
        width: 32px;
        top: 0;
        left: -14px;
        -webkit-transform: rotate(45deg);
                transform: rotate(45deg); }
      #sp_menu .sp_menu_close span:after {
        content: "";
        position: absolute;
        width: 32px;
        top: 0;
        left: -14px;
        -webkit-transform: rotate(-45deg);
                transform: rotate(-45deg); } }

/**
 * Sidebar
 */
#sidebar {
  width: 270px;
  float: right; }
  #sidebar .side_video {
    background-color: #FAF8F4;
    color: #CCC;
    border: 1px solid #978B84;
    border-radius: 10px;
    padding: 10px; }
    #sidebar .side_video p {
      margin: 0;
      line-height: 1.5;
      font-size: 11.5px;
      font-size: 1.15rem; }
    #sidebar .side_video .copy {
      text-align: center; }
    #sidebar .side_video h4 {
      margin: 10px 0;
      color: #B93A21;
      text-align: center;
      font-size: 18px;
      font-size: 1.8rem; }
  #sidebar .widget {
    margin-bottom: 30px; }
    #sidebar .widget h3 {
      text-align: center;
      color: #4A3005;
      margin-top: 0;
      padding: 8px 0;
      border-top: 2px solid #4A3005;
      border-bottom: 2px solid #4A3005;
      font-size: 18px;
      font-size: 1.8rem; }
    #sidebar .widget ul {
      list-style: none;
      margin-left: 0;
      padding-left: 0; }
      #sidebar .widget ul li {
        margin: 0;
        padding: 0; }
      #sidebar .widget ul li + li {
        border-top: 1px dotted #4A3005; }
      #sidebar .widget ul p {
        line-height: 1.5; }
      #sidebar .widget ul a {
        display: block;
        padding: 5px 5px;
        color: #B93A21; }
    #sidebar .widget.side_recommend h3 {
      border-top: none; }
    #sidebar .widget.side_recommend p {
      margin: 0; }
    #sidebar .widget.side_recommend ul {
      list-style: none; }
      #sidebar .widget.side_recommend ul li {
        position: relative;
        padding-top: 5px;
        min-height: 90px; }
        #sidebar .widget.side_recommend ul li p.img {
          position: absolute; }
          #sidebar .widget.side_recommend ul li p.img img {
            width: 90px;
            height: auto;
            max-height: 75px; }
        #sidebar .widget.side_recommend ul li p.title {
          margin-top: 0px;
          margin-left: 105px;
          line-height: 1.5; }
      #sidebar .widget.side_recommend ul li + li {
        border-top: 2px solid #4A3005; }
    #sidebar .widget.side_category ul {
      margin-left: 20px; }
      #sidebar .widget.side_category ul li {
        margin-bottom: 5px; }
        #sidebar .widget.side_category ul li a {
          color: #B93A21; }
    #sidebar .widget.side_tag ul {
      margin-left: 0;
      list-style: none; }
      #sidebar .widget.side_tag ul li {
        display: inline-block;
        margin-bottom: 5px;
        margin-right: 10px; }
        #sidebar .widget.side_tag ul li a {
          color: #B93A21; }
    #sidebar .widget.side_archives ul {
      margin-left: 20px; }
      #sidebar .widget.side_archives ul li {
        margin-bottom: 5px; }
        #sidebar .widget.side_archives ul li a {
          color: #B93A21; }

#togglesidebar {
  display: block;
  position: fixed;
  opacity: 0;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  width: 360px;
  height: 100%;
  top: 0;
  bottom: 0;
  left: auto;
  right: -380px;
  background-color: #000000;
  color: #FFFFFF; }
  #togglesidebar.active {
    display: block;
    z-index: 200;
    opacity: 1.0;
    right: 0px; }
  #togglesidebar ul {
    list-style: none;
    margin: 0;
    padding: 0; }
  #togglesidebar ul.nav {
    margin-top: 100px; }
    #togglesidebar ul.nav a {
      display: block;
      color: #FFFFFF;
      padding: 13px 30px; }
      #togglesidebar ul.nav a:before {
        content: "-";
        color: #F0C41F;
        font-weight: bold;
        margin-right: 13px; }
  #togglesidebar li {
    margin: 0;
    padding: 0;
    font-size: 16px;
    font-size: 1.6rem;
    border-bottom: 1px solid #222222; }
  #togglesidebar a {
    color: #FFFFFF; }
  #togglesidebar .list {
    padding: 30px; }
    #togglesidebar .list a {
      display: inline-block;
      width: 30px;
      margin-right: 15px; }
    #togglesidebar .list .fa {
      font-size: 36px;
      font-size: 3.6rem; }

#side-nav-btn {
  position: absolute;
  display: block;
  overflow: hidden;
  background: #BE0868;
  border-radius: 100px;
  width: 64px;
  height: 64px;
  top: 30px;
  right: 30px;
  font-size: 0;
  text-indent: -9999px;
  cursor: pointer;
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
  z-index: 1000; }
  #side-nav-btn:focus {
    outline: none; }
  #side-nav-btn span {
    display: block;
    position: absolute;
    padding: 0 !important;
    top: 32px;
    left: 17px;
    right: 17px;
    height: 3px;
    background: #FFFFFF;
    -webkit-transition: background 0 0.3s;
    transition: background 0 0.3s; }
  #side-nav-btn span::before,
  #side-nav-btn span::after {
    position: absolute;
    display: block;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #FFFFFF;
    content: "";
    -webkit-transition-duration: 0.3s, 0.3s;
            transition-duration: 0.3s, 0.3s;
    -webkit-transition-delay: 0.3s, 0;
            transition-delay: 0.3s, 0; }
  #side-nav-btn span::before {
    top: -10px;
    -webkit-transition-property: top, -webkit-transform;
    transition-property: top, -webkit-transform;
    transition-property: top, transform;
    transition-property: top, transform, -webkit-transform; }
  #side-nav-btn span::after {
    bottom: -10px;
    -webkit-transition-property: bottom, -webkit-transform;
    transition-property: bottom, -webkit-transform;
    transition-property: bottom, transform;
    transition-property: bottom, transform, -webkit-transform; }
  #side-nav-btn.active {
    position: fixed; }
    #side-nav-btn.active span {
      background: #BE0868;
      -webkit-transition-delay: 0, 0.3s;
              transition-delay: 0, 0.3s; }
    #side-nav-btn.active span::before,
    #side-nav-btn.active span::after {
      background-color: #fff;
      -webkit-transition-delay: 0, 0.3s;
              transition-delay: 0, 0.3s; }
    #side-nav-btn.active span::before {
      top: 0;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }
    #side-nav-btn.active span::after {
      bottom: 0;
      -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg); }

@media screen and (max-width: 480px) {
  #sidebar {
    width: auto;
    float: none; }
    #sidebar .side_video {
      margin: 1rem; }
      #sidebar .side_video p .__youtube_prefs__ {
        margin: 0 auto;
        display: block; }
    #sidebar .widget h3 {
      margin-left: 0;
      margin-right: 0;
      margin-bottom: 0; }
    #sidebar .widget ul p {
      padding: 0;
      margin: 0; }
    #sidebar .widget ul a {
      padding: 1rem; }
    #sidebar .widget.side_recommend h3 {
      margin-bottom: 0; }
    #sidebar .widget.side_recommend ul li + li {
      border-top: 1px dotted #4A3005; }
    #sidebar .widget.side_recommend ul li {
      padding: 0rem;
      min-height: auto; }
      #sidebar .widget.side_recommend ul li p.img {
        display: none; }
      #sidebar .widget.side_recommend ul li p.title {
        margin-left: 0px; }
    #sidebar .widget.side_category ul {
      margin-left: 0; }
      #sidebar .widget.side_category ul li {
        margin: 0; }
        #sidebar .widget.side_category ul li a {
          padding: 1rem; }
    #sidebar .widget.side_archives ul {
      margin-left: 0; }
    #sidebar .widget.side_archives select {
      border: 1px solid #ccc;
      min-width: auto;
      min-height: auto;
      padding: 0.5em;
      margin: 1rem; } }

a {
  color: #B93A21; }

/**
 * Layout
 */
.inner_content {
  position: relative;
  width: 1000px;
  margin: 0 auto; }

#main {
  padding-top: 50px; }

#maincontent.no_sidebar {
  float: none;
  width: 960px;
  margin: 0 auto; }
  #maincontent.no_sidebar > article {
    margin: 0 auto; }

body.home #maincontent.no_sidebar {
  float: none;
  width: 1000px;
  margin: 0 auto; }
  body.home #maincontent.no_sidebar > article {
    margin: 0 auto; }

#maincontent {
  width: 670px;
  float: left; }
  #maincontent .meta {
    line-height: 1.5; }
    #maincontent .meta p {
      margin: 0; }
    #maincontent .meta .category {
      background: #B7A68B;
      color: #FFFFFF;
      padding: 8px 20px;
      margin-right: 20px; }
    #maincontent .meta .date {
      padding: 8px 0px; }
  #maincontent .author {
    position: relative;
    background: #EDE9E1;
    margin-top: 50px;
    padding: 20px 20px 20px 200px; }
    #maincontent .author p {
      margin: 0; }
    #maincontent .author h3 {
      margin: 0 0 20px;
      color: #B93A21;
      font-size: 20px;
      font-size: 2rem; }
    #maincontent .author a {
      color: #B93A21; }
  #maincontent .share h4 {
    color: #B93A21;
    text-align: center;
    font-size: 18px;
    font-size: 1.8rem; }
  #maincontent .pagenav {
    padding: 30px 0 50px; }

.row .col-sm-6:nth-of-type(2n) .inner {
  padding-left: 20px; }

.row img {
  max-width: 100%;
  height: auto; }

h2 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }

.section-border {
  border-bottom: 2px solid #49300A; }

.section {
  padding-bottom: 30px; }
  .section > h2 {
    margin-top: 40px;
    margin-bottom: 30px; }
  .section p {
    margin-top: 0; }
  .section > .inner {
    margin: 50px 70px 70px; }
    .section > .inner > ul, .section > .inner > ol {
      padding-top: 10px;
      margin-left: 25px; }
      .section > .inner > ul li, .section > .inner > ol li {
        margin-bottom: 5px; }
  .section > .inner_wide {
    margin: 50px 30px 70px; }
    .section > .inner_wide > ul, .section > .inner_wide > ol {
      padding-top: 10px;
      margin-left: 25px; }
      .section > .inner_wide > ul li, .section > .inner_wide > ol li {
        margin-bottom: 5px; }

.cube + .otherstaff {
  border-top: none; }

.otherstaff {
  text-align: center;
  padding: 50px 0;
  border-top: 2px solid #49300A; }
  .otherstaff h3 {
    color: #B93A21;
    margin-bottom: 50px; }
  .otherstaff ul {
    list-style: none; }
    .otherstaff ul li {
      display: inline-block;
      width: 180px;
      margin-right: 0px; }
      .otherstaff ul li p {
        margin: 0;
        line-height: 1.6; }
      .otherstaff ul li p.img {
        margin-bottom: 15px; }
      .otherstaff ul li p.name {
        font-size: 18px;
        font-size: 1.8rem; }
      .otherstaff ul li a:hover img {
        opacity: 0.8; }
    .otherstaff ul li + li {
      margin-left: 10px; }

@media screen and (max-width: 480px) {
  .inner_content {
    width: auto; }
  #main {
    padding-top: 1rem; }
  #maincontent.no_sidebar {
    width: auto; }
  body.home #maincontent.no_sidebar {
    width: auto; }
  #maincontent {
    width: auto;
    float: none; }
    #maincontent .meta .date {
      display: block;
      text-align: right;
      padding-right: 20px;
      margin: 0;
      padding-bottom: 0;
      padding-top: 0; }
    #maincontent .author {
      padding: 1rem 1rem 1rem 160px;
      min-height: 163px; }
    #maincontent .share {
      margin: 0 2rem; }
      #maincontent .share h4 {
        font-size: 16px;
        font-size: 1.6rem; }
      #maincontent .share .ssba.ssba-wrap a {
        padding: 1rem; }
        #maincontent .share .ssba.ssba-wrap a img {
          width: 36px !important;
          height: 36px;
          padding: 0; }
  .row .col-sm-6 {
    padding: 0; }
    .row .col-sm-6 .inner {
      padding: 0 !important; }
  h2 {
    margin-left: 2rem;
    margin-right: 2rem; }
  .section > h2 {
    font-size: 2rem;
    margin: 2rem;
    line-height: 1.5em; }
  .section p {
    margin: 1rem 2rem; }
  .section img {
    max-width: 100%;
    height: auto; }
  .section > .inner {
    margin: 0; }
    .section > .inner h3 {
      margin-left: 0;
      margin-right: 0;
      line-height: 1.5; }
    .section > .inner p {
      margin-left: 0;
      margin-right: 0; }
    .section > .inner > ul, .section > .inner > ol {
      margin: 2rem;
      padding: 0;
      list-style: none; }
      .section > .inner > ul li, .section > .inner > ol li {
        position: relative;
        padding: 0 0 0 1rem; }
        .section > .inner > ul li:before, .section > .inner > ol li:before {
          content: "";
          width: 0.5em;
          height: 0.5em;
          background: #000;
          display: block;
          border-radius: 50%;
          position: absolute;
          top: 0.8rem;
          left: 0; }
  .section > .inner_wide {
    margin: 0; }
  .otherstaff ul li {
    width: 42%;
    margin: 4% !important; }
    .otherstaff ul li p.img img {
      width: 100%;
      height: auto;
      display: block; } }

/**
 * Button
 */
/*

.btn{
  margin: 20px 0px 0;
  display: block;
  background: #F38A24;
  color: #ffffff;
  text-align: center;
  a{
    color: #FFFFFF;
  }
}
.btn.inline{
  display: inline-block;
  a{
    padding: 0 40px;
  }
}
input.btn.btn-s{
  padding: 8px 40px 6px;
  @include fs(14);
}
.btn-gray{
  background-color: #999999;
}
*/
.btn a {
  padding: 15px 50px;
  border-radius: 100px;
  display: block;
  text-decoration: none;
  font-size: 16px;
  font-size: 1.6rem; }

.btn-green a {
  background: #0A8F3E;
  color: #FFFFFF; }

.btn-green a:hover {
  background: #0ca748;
  color: #FFFFFF; }

.btn-black a {
  background: #DADADA;
  color: #333333; }

.btn-black a:hover {
  background: #EFEFEF;
  color: #333333; }

.btn.btn-center {
  display: block;
  margin: 0 auto;
  text-align: center; }
  .btn.btn-center a {
    display: inline-block;
    margin: 0 auto; }

.btn.btn-prev {
  float: left; }

.btn.btn-next {
  float: right; }

@media screen and (max-width: 480px) {
  .btn a {
    padding: 10px 35px;
    font-size: 16px;
    font-size: 1.6rem;
    white-space: normal; } }

/**
 * Form
 **/
input[type=submit], button, textarea {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

input[name=submitBack],
input[name=submitConfirm],
input[name=submit],
input.btn,
a.btn,
input.btn {
  margin: 0 auto;
  width: auto;
  min-height: 30px;
  padding: 10px 40px;
  border-radius: 5px;
  font-size: 18px;
  font-size: 1.8rem; }

input[name=submit],
input[name=submitConfirm],
a.btn-pink,
input.btn-pink {
  background: #0F5C18;
  color: #FFFFFF; }
  input[name=submit]:hover,
  input[name=submitConfirm]:hover,
  a.btn-pink:hover,
  input.btn-pink:hover {
    opacity: 0.8;
    color: #FFFFFF; }

input[name=submitBack] {
  background: #999999;
  color: #FFFFFF;
  margin-right: 30px; }
  input[name=submitBack]:hover {
    opacity: 0.8;
    color: #FFFFFF; }

input[type=email],
input[type=tel],
input[type=password],
input[type=text] {
  background: #FFFFFF;
  padding: 5px;
  width: 60%;
  background-color: #fff;
  border-radius: 3px;
  border-width: 1px;
  border-style: solid;
  border-color: #CCCCCC #CCCCCC;
  box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.1); }

input[type=radio],
input[type=checkbox] {
  width: auto;
  margin-right: 5px;
  border: none;
  border-radius: 0; }

select {
  min-width: 80px;
  min-height: 30px;
  padding: 5px 30px 5px 10px;
  margin-right: 10px;
  margin-left: 0; }

textarea {
  width: 100%;
  min-height: 120px;
  border-width: 1px;
  padding: 5px;
  background-color: #fff;
  border-radius: 3px;
  border-width: 1px;
  border-style: solid;
  border-color: #CCCCCC #CCCCCC;
  box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.1); }

input.btn {
  width: auto;
  margin-top: 20px;
  padding: 10px 100px;
  font-size: 16px;
  font-size: 1.6rem; }
  input.btn:hover {
    color: #FFFFFF;
    opacity: 0.8; }

label {
  display: inline-block;
  max-width: auto;
  width: auto;
  white-space: nowrap;
  margin: 0 30px 5px 0;
  font-weight: normal; }

.searcharea label {
  display: block;
  text-align: left;
  padding-top: 0;
  padding-bottom: 0;
  margin-bottom: 0; }

form .note {
  font-size: 12px;
  font-size: 1.2rem;
  color: #666666; }

@media screen and (max-width: 480px) {
  input[type=email],
  input[type=tel],
  input[type=password],
  input[type=text] {
    width: 100%; }
  label {
    white-space: normal; } }

/**
 * Mainimg
 */
#mainimg {
  background: #F3F0EA; }
  #mainimg p.img {
    margin: 0; }
  #mainimg.blog {
    padding: 20px 0; }
    #mainimg.blog p {
      margin: 0; }
    #mainimg.blog p.title {
      font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      font-size: 36px;
      font-size: 3.6rem; }
    #mainimg.blog p.copy {
      font-size: 14px;
      font-size: 1.4rem; }
  #mainimg.staff p.title {
    padding-top: 50px;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 34px;
    font-size: 3.4rem;
    line-height: 1.65; }
  #mainimg.staff .card {
    padding: 20px 30px;
    background: #B93A21;
    width: 400px;
    margin-top: 30px; }
    #mainimg.staff .card p {
      margin: 0;
      color: #FFFFFF; }
    #mainimg.staff .card .name {
      font-size: 22px;
      font-size: 2.2rem; }
  #mainimg.staff p.img {
    width: 503px;
    float: right;
    margin: 0; }

#mainimg.home {
  background: #000000 url("../images/home/home_mainimg_bg.jpg") no-repeat center top; }
  #mainimg.home .circle {
    position: absolute;
    right: -40px;
    top: 30px; }

#mainimg.about {
  background: url("../images/about/about_mainimg_bg.jpg") no-repeat 0 0;
  background-size: cover; }
  #mainimg.about + #main {
    padding-top: 0px; }
  #mainimg.about .inner_content {
    position: relative;
    width: 1200px; }
  #mainimg.about h1 {
    position: absolute;
    padding: 10px 0 10px 75px;
    margin: 0;
    left: 0px;
    top: 0px;
    margin: 40px 0 0 90px;
    color: #FFFFFF;
    text-align: center;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.9);
    font-size: 36px;
    font-size: 3.6rem;
    background: url("../images/common/icn_cube_shadow.svg") no-repeat left center; }
  #mainimg.about .message {
    position: absolute;
    top: 150px;
    width: 100%; }
    #mainimg.about .message p {
      color: #FFFFFF;
      text-align: center;
      font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      text-shadow: 0 0 10px rgba(0, 0, 0, 0.9);
      font-size: 33px;
      font-size: 3.3rem;
      line-height: 1.6; }
  #mainimg.about ul {
    padding-top: 30px;
    text-align: center; }
    #mainimg.about ul li {
      margin-right: 20px;
      display: inline-block;
      text-align: center;
      background: #FFFFFF;
      padding: 0 40px;
      color: #B93A21;
      line-height: 70px;
      height: 70px;
      font-weight: bold;
      font-size: 36px;
      font-size: 3.6rem; }
    #mainimg.about ul li:last-of-type {
      margin-right: 0; }

#mainimg.company {
  background: url("../images/company/company_mainimg_bg.jpg") repeat-x 0 0; }
  #mainimg.company + #main {
    padding-top: 0px; }
  #mainimg.company .inner_content {
    position: relative; }
  #mainimg.company .message {
    position: absolute;
    bottom: 20px;
    width: 100%; }
    #mainimg.company .message h1 {
      margin: 0 0 10px;
      color: #FFFFFF;
      text-align: center;
      font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      font-size: 42px;
      font-size: 4.2rem; }
    #mainimg.company .message p {
      color: #FFFFFF;
      text-align: center;
      font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      font-size: 20px;
      font-size: 2rem;
      line-height: 1.5; }

#mainimg.service-mainimg,
#mainimg.service-pro {
  background: #F3F0EA; }
  #mainimg.service-mainimg p,
  #mainimg.service-pro p {
    margin: 0; }
  #mainimg.service-mainimg p.title,
  #mainimg.service-pro p.title {
    padding-top: 50px;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 36px;
    font-size: 3.6rem;
    line-height: 1.7; }
  #mainimg.service-mainimg .card,
  #mainimg.service-pro .card {
    position: absolute;
    left: -20px;
    top: 0px;
    padding: 20px 30px;
    background: rgba(160, 20, 0, 0.8);
    width: 570px;
    margin-top: 30px; }
    #mainimg.service-mainimg .card *,
    #mainimg.service-pro .card * {
      margin: 0;
      color: #FFFFFF; }
    #mainimg.service-mainimg .card h1,
    #mainimg.service-pro .card h1 {
      margin: 0 0 10px;
      font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      font-size: 40px;
      font-size: 4rem;
      letter-spacing: -0.03em;
      text-align: center; }
    #mainimg.service-mainimg .card p.subtitle,
    #mainimg.service-pro .card p.subtitle {
      margin-bottom: 10px;
      background: rgba(60, 5, 0, 0.5);
      text-align: center;
      padding: 3px 5px;
      font-size: 20px;
      font-size: 2rem; }
    #mainimg.service-mainimg .card p.copy,
    #mainimg.service-pro .card p.copy {
      font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1.4;
      padding-left: 10px;
      text-align: center; }
  #mainimg.service-mainimg p.icnimg img,
  #mainimg.service-pro p.icnimg img {
    position: absolute;
    right: -10px;
    bottom: -20px;
    width: 150px;
    height: auto; }

@media screen and (max-width: 480px) {
  #mainimg p.img img {
    width: 100%;
    height: auto;
    display: block; }
  #mainimg.blog {
    padding: 2rem 2rem 1rem;
    margin-bottom: 1rem;
    background: #FFFFFF;
    border-bottom: 5px solid #F3F0EA; }
    #mainimg.blog p.title {
      font-size: 2.4rem;
      line-height: 1.3em; }
  #mainimg.staff p.title {
    font-size: 2rem;
    margin: 2rem;
    padding: 0; }
  #mainimg.staff .card {
    padding: 2rem;
    width: auto; }
    #mainimg.staff .card .name {
      font-size: 1.8rem; }
  #mainimg.staff p.img {
    width: auto;
    float: none; }
  #mainimg.home .circle {
    z-index: 1;
    top: auto;
    bottom: 25%;
    right: 5px; }
    #mainimg.home .circle img {
      width: 22vw; }
  #mainimg.about {
    background-position: 50% 50%; }
    #mainimg.about p.img {
      overflow-x: hidden; }
      #mainimg.about p.img img {
        position: absolute;
        top: 0;
        right: -30%;
        width: 170%;
        height: auto; }
    #mainimg.about .inner_content {
      width: auto;
      position: relative; }
    #mainimg.about h1 {
      position: relative;
      left: auto;
      top: auto;
      margin: 0;
      font-size: 2rem;
      background-position: 0 0;
      padding: 27px 2rem 27px 6rem;
      z-index: 1; }
    #mainimg.about .message {
      position: relative;
      top: auto;
      width: auto;
      padding: 0 2rem 2rem;
      z-index: 1;
      text-align: left; }
      #mainimg.about .message p {
        font-size: 1.8rem; }
        #mainimg.about .message p br {
          display: none; }
    #mainimg.about ul {
      padding: 0; }
      #mainimg.about ul li {
        padding: 1rem 0.7rem;
        line-height: 1em;
        height: auto;
        font-size: 18px;
        font-size: 1.8rem;
        width: 24vw; }
  #mainimg.company .message {
    position: relative;
    bottom: auto;
    width: auto; }
    #mainimg.company .message h1 {
      font-size: 2rem;
      margin: 2rem;
      color: #4D4D4D; }
    #mainimg.company .message p {
      font-size: 1.6rem;
      margin: 2rem;
      color: #4D4D4D; }
      #mainimg.company .message p br {
        display: none; }
  #mainimg.service-mainimg .card,
  #mainimg.service-pro .card {
    position: relative;
    left: auto;
    top: auto;
    padding: 2rem;
    width: auto;
    margin: 0; }
    #mainimg.service-mainimg .card h1,
    #mainimg.service-pro .card h1 {
      font-size: 2.4rem; }
    #mainimg.service-mainimg .card p.subtitle,
    #mainimg.service-pro .card p.subtitle {
      padding: 7px 25px;
      font-size: 16px;
      font-size: 1.6rem; }
    #mainimg.service-mainimg .card p.copy,
    #mainimg.service-pro .card p.copy {
      font-size: 16px;
      font-size: 1.6rem; }
      #mainimg.service-mainimg .card p.copy br,
      #mainimg.service-pro .card p.copy br {
        display: none; }
  #mainimg.service-mainimg p.icnimg img,
  #mainimg.service-pro p.icnimg img {
    left: 0.5rem;
    right: auto;
    bottom: auto;
    top: 0.5rem;
    width: 100px; } }

.bnr-prodecuclub {
  border: 1px solid #4A3003;
  width: 960px;
  margin: 20px auto;
  background-color: #BC3916; }
  .bnr-prodecuclub:hover {
    background-color: #c53c17; }
  .bnr-prodecuclub a {
    color: #FFFFFF;
    display: block;
    width: 100%;
    height: 130px;
    position: relative;
    padding: 10px; }
  .bnr-prodecuclub span {
    display: block;
    color: #FFFFFF; }
  .bnr-prodecuclub span.title {
    position: absolute;
    width: 660px;
    background-color: rgba(255, 255, 255, 0.1);
    left: 0px;
    top: 0px;
    padding: 12px 25px 7px;
    font-size: 23px;
    font-size: 2.3rem;
    line-height: 1.5;
    letter-spacing: 0.03em; }
  .bnr-prodecuclub span.lead {
    position: absolute;
    left: 27px;
    top: 65px;
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: 0.1em; }
  .bnr-prodecuclub span.img {
    z-index: 1;
    position: absolute;
    right: 0px;
    top: 0;
    width: 300px;
    height: 130px;
    overflow: hidden;
    background: url("../images/prodecuclub/prodecuclub_mainimg.jpg") no-repeat center top;
    background-size: 100% auto; }
  .bnr-prodecuclub span.season {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 3px;
    display: block;
    width: 660px;
    background: #4A3003;
    color: #FFFFFF;
    font-size: 16px;
    text-align: center; }
  .bnr-prodecuclub span.btn {
    position: absolute;
    left: 480px;
    top: 11px;
    padding: 5px 30px;
    border-radius: 100px;
    display: block;
    width: 158px;
    text-decoration: none;
    font-size: 16px;
    font-size: 1.6rem;
    background: #FFFFFF;
    color: #BC3916; }
  .bnr-prodecuclub span.btn:hover {
    opacity: 0.8; }

@media screen and (max-width: 480px) {
  .bnr-prodecuclub {
    margin: 20px 20px;
    width: auto; }
    .bnr-prodecuclub a {
      color: #FFFFFF;
      display: block;
      width: 100%;
      height: auto;
      padding: 0px 0 50px; }
    .bnr-prodecuclub span.title {
      position: relative;
      width: auto;
      text-align: center;
      left: 0px;
      top: 0px;
      padding: 7px 10px 3px;
      font-size: 20px;
      font-size: 2rem;
      letter-spacing: 0.1em; }
    .bnr-prodecuclub span.lead {
      position: relative;
      text-align: center;
      left: 0px;
      top: 0px;
      padding: 10px;
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.1em;
      margin-bottom: 0; }
    .bnr-prodecuclub span.img {
      position: absolute;
      right: 0;
      bottom: 0;
      top: auto;
      width: 43%;
      height: 90px;
      margin: 0;
      background: url("../images/prodecuclub/prodecuclub_mainimg.png") no-repeat center bottom;
      background-size: 120% auto; }
    .bnr-prodecuclub span.season {
      position: relative;
      bottom: 0;
      left: 0;
      padding: 3px;
      display: block;
      width: 90%;
      margin: 0 auto 10px;
      line-height: 1.6;
      font-size: 13px;
      text-align: center; }
    .bnr-prodecuclub span.btn {
      position: relative;
      left: 0px;
      top: 0px;
      margin: 10px;
      padding: 3px 20px;
      width: 150px;
      font-size: 15px;
      font-size: 1.5rem; }
    .bnr-prodecuclub span.btn:hover {
      opacity: 0.8; } }

/**
 * Page: base
 **/
#sitemap ul {
  list-style: none;
  margin: 0 0 0 20px;
  padding: 0; }
  #sitemap ul li {
    position: relative;
    margin: 0;
    padding: 0;
    border-top: 1px solid #DDDDDD; }
    #sitemap ul li a {
      padding: 5px;
      display: block; }
    #sitemap ul li li:before {
      content: "-";
      position: absolute;
      left: -15px;
      top: 5px; }

/*
.page-others {
  .basecontent {
    background: #FFFFFF;
    width: 920px;
    margin: 0 auto;
    padding: 60px;
    h3{
      margin-top: 40px;
      margin-bottom: 20px;
      @include fs(16);
      @include fw("bold");

    }
    h4{
      @include fs(15);
      margin-top: 30px;
      margin-bottom: 10px;
    }
    p{
      @include fs(13);
      line-height: 1.7;
    }
    a{
      text-decoration: underline;
    }
    ol,ul{
      margin-left: 25px;
      padding: 0;
    }
    li{
      margin-bottom: 5px;
      @include fs(13);
      line-height: 1.7;
    }

    ul.nostyle{
      list-style: none;
      padding-left: 0;
      margin-left: 0;
      li{
        margin-bottom: 10px;
      }
    }
  }

  &.page-404{
    h1{
      padding-top: 80px;
      margin-bottom: 10px;
      font-weight: normal;
      font-family: $font-english;
      @include fs(40);
      &:after{
        display: none;
      }
    }
    p.eng{
      color: #333333;
    }
    p a.btn{
      margin-top: 40px;
    }
    .inner{
      padding-bottom: 50px;
    }
  }
}
dl.table{
  position: relative;
  margin: 20px 0;
  dt{
    position: absolute;
    padding: 10px 15px 7px;
    border-left: 1px solid #DDDDDD;
  }
  dd{
    margin-top: 0;
    padding: 5px 15px 10px;
    margin-left: 220px;
  }
}
*/
@media screen and (max-width: 480px) {
  #sitemap ul {
    margin: 2rem; }
    #sitemap ul li:before {
      background: none; }
    #sitemap ul li ul {
      margin: 0; }
      #sitemap ul li ul li {
        padding: 0 0 0 10px; }
        #sitemap ul li ul li:before {
          left: 6px; } }

/**
 * Page: Staff
 **/
.section.staffprofile {
  border-bottom: 2px solid #49300A; }
  .section.staffprofile .row > div:first-of-type {
    padding-right: 0; }
  .section.staffprofile .staff-intro p + br + ul,
  .section.staffprofile .staff-intro p + ul {
    margin-top: -0.5em; }
  .section.staffprofile .staff-intro p + br,
  .section.staffprofile .staff-intro ul + br {
    display: none; }
  .section.staffprofile .staff-intro ul {
    margin-left: 20px;
    margin-top: 0;
    margin-bottom: 0.5em; }
    .section.staffprofile .staff-intro ul br {
      display: none; }
    .section.staffprofile .staff-intro ul li {
      line-height: 1.3;
      font-size: 92%; }
  .section.staffprofile .prof_detail {
    position: relative;
    margin-bottom: 10px;
    padding: 20px;
    background: #F3F0EA;
    color: #49300A; }
    .section.staffprofile .prof_detail dt {
      font-size: 20px;
      font-size: 2rem;
      margin-bottom: 10px;
      letter-spacing: 0.1em; }
    .section.staffprofile .prof_detail dd {
      line-height: 1.5; }
    .section.staffprofile .prof_detail:before {
      position: absolute;
      display: block;
      content: "";
      width: 0;
      height: 0;
      left: 0;
      top: 0;
      border: 15px solid #49300A;
      border-color: #49300A transparent transparent #49300A; }

#staffs {
  padding-top: 30px; }
  #staffs ul {
    margin: 0;
    padding: 0;
    list-style: none; }
    #staffs ul li {
      width: 50%;
      float: left;
      margin: 0;
      padding: 0;
      position: relative;
      height: 220px; }
      #staffs ul li p.img {
        position: absolute; }
      #staffs ul li p.area {
        margin-left: 200px;
        display: inline-block;
        margin-bottom: 5px;
        background: #B7A68B;
        color: #FFFFFF;
        line-height: 1.5;
        padding: 3px 10px 2px; }
      #staffs ul li p.name {
        margin-left: 200px;
        font-size: 28px;
        font-size: 2.8rem; }
      #staffs ul li p.link {
        margin-left: 200px; }

@media screen and (max-width: 480px) {
  .section.staffprofile .staff-intro ul {
    margin-left: 4rem;
    margin-right: 2rem; }
  .section.staffprofile .prof_detail {
    margin: 2rem; }
  .single-staff .section h2 {
    margin-top: 2rem;
    margin-bottom: 1rem; }
  .single-staff .section .row {
    padding-bottom: 15px;
    border-bottom: 1px solid #CCCCCC; }
  .single-staff .section .row:last-of-type {
    border: none;
    padding-bottom: 0; }
  #staffs ul li {
    width: 100%;
    float: none; }
  .otherstaff {
    padding: 30px 0; }
    .otherstaff h3 {
      margin-top: 0;
      margin-bottom: 1rem; } }

/**
 * Page: Home
 **/
body.home .heading {
  padding-top: 2px;
  padding-bottom: 10px;
  background: url("../images/home/home_head_support.svg") no-repeat left top;
  background-size: 145px auto; }

body.home .section p.subheading {
  text-align: center;
  font-size: 28px;
  font-size: 2.8rem;
  line-height: 1.4;
  margin-top: 0px;
  margin-bottom: 30px;
  font-weight: bold; }

body.home .section h2 {
  text-align: center;
  font-family: sans-serif;
  color: #B93A21;
  font-weight: bold;
  font-size: 22px;
  font-size: 2.2rem; }

body.home .section h4 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 22px;
  font-size: 2.2rem; }

body.home .btn_thinking {
  width: 495px;
  height: auto; }

body.home .service3 {
  float: left;
  width: 32%;
  margin-right: 2%; }
  body.home .service3 dl {
    padding: 0;
    margin: 0;
    min-height: 300px; }
  body.home .service3 dt {
    text-align: center;
    margin: 0; }
    body.home .service3 dt p {
      margin-top: 0;
      margin-bottom: 0px;
      color: #B93A21;
      font-weight: bold;
      font-size: 14px;
      font-size: 1.4rem; }
    body.home .service3 dt h4 {
      margin: 0 0 20px;
      font-size: 20px;
      font-size: 2rem;
      font-family: sans-serif;
      font-weight: bold;
      line-height: 1.5; }
  body.home .service3 dd {
    margin: 0;
    padding: 0;
    line-height: 1.7; }

body.home .service3:nth-of-type(3n) {
  margin-right: 0; }

body.home #service {
  background: #F3F0EA; }
  body.home #service ul li {
    width: 320px; }

body.home #service:before,
body.home #service:after {
  position: absolute;
  display: block;
  content: "";
  height: 100%;
  width: 100%;
  background: #F3F0EA;
  left: -100%;
  top: 0; }

body.home #service:after {
  left: 100%; }

body.home #column ul {
  padding: 30px 0;
  list-style: none; }
  body.home #column ul li {
    position: relative;
    display: block;
    float: left;
    width: 205px;
    margin-right: 45px; }
    body.home #column ul li p {
      margin: 0; }
    body.home #column ul li img {
      width: 200px;
      height: auto; }
  body.home #column ul li:nth-of-type(4n) {
    margin-right: 0; }
  body.home #column ul p.label {
    position: absolute;
    left: -10px;
    top: -10px;
    line-height: 1.3;
    font-size: 12px;
    font-size: 1.2rem;
    padding: 5px 15px;
    background-color: #FEF052;
    color: #000000; }
    body.home #column ul p.label.label-report {
      background: #E43A1F;
      color: #FFFFFF; }
    body.home #column ul p.label.label-thinking {
      background: #6DBD95;
      color: #FFFFFF; }
    body.home #column ul p.label.label-column {
      background-color: #FEF052;
      color: #000000; }
  body.home #column ul dl {
    margin: 0;
    padding: 10px 0 0; }
    body.home #column ul dl dt {
      margin: 0 0 5px;
      padding: 0;
      font-size: 18px;
      font-size: 1.8rem;
      min-height: 3em; }
    body.home #column ul dl dd {
      margin: 0;
      padding: 0; }
    body.home #column ul dl dd.btn {
      display: block;
      width: initial;
      margin-top: 5px;
      padding: 0 5px; }
      body.home #column ul dl dd.btn a {
        display: block;
        text-align: center;
        width: 100%;
        border: 1px solid #49300A;
        border-radius: 5px;
        padding: 3px 10px;
        background: #E8E4D9;
        background: url("../images/common/btn_bg.png") repeat-x 0 0;
        color: #000000; }

#home-news {
  background: #E6E0D5;
  height: 35px; }
  #home-news .inner_content {
    position: relative; }
    #home-news .inner_content:before {
      position: absolute;
      display: block;
      content: "";
      height: 100%;
      width: 100%;
      background: #4A3109;
      left: -100%;
      top: 0; }
    #home-news .inner_content dl {
      position: relative;
      margin: 0;
      padding: 0;
      height: 35px; }
      #home-news .inner_content dl dt {
        position: relative;
        background: #4A3109;
        margin: 0;
        padding: 0;
        display: block;
        width: 85px;
        height: 35px;
        line-height: 35px;
        letter-spacing: 0.2em;
        color: #FFFFFF; }
      #home-news .inner_content dl dt:after {
        position: absolute;
        content: "";
        width: 0;
        height: 0;
        right: -20px;
        border: 20px solid #4A3109;
        border-width: 18px 10px;
        border-color: transparent transparent transparent  #4A3109;
        border-style: solid; }
      #home-news .inner_content dl dd {
        position: absolute;
        top: 0;
        margin: 0;
        margin-left: 115px;
        height: 35px;
        padding: 0;
        line-height: 35px; }
        #home-news .inner_content dl dd ul {
          list-style: none; }
        #home-news .inner_content dl dd li a {
          color: #4A3109;
          text-decoration: underline; }
          #home-news .inner_content dl dd li a:hover {
            text-decoration: none; }
      #home-news .inner_content dl dd.btn {
        right: 0;
        top: 0;
        line-height: 1.5; }
        #home-news .inner_content dl dd.btn a {
          margin-top: 3px;
          padding: 2px 20px;
          background: #BEAF97;
          color: #FFFFFF;
          letter-spacing: 0.1em;
          border-radius: 6px;
          font-size: 14px; }

@media screen and (max-width: 480px) {
  body.home .heading {
    background-position: 50% 0;
    padding-top: 145px;
    padding-bottom: 2rem;
    margin-top: 2rem;
    border-bottom: 1px solid #ccc;
    background: none;
    padding-top: 0; }
  body.home .home_circle {
    display: block !important;
    background: #B93A21;
    color: #FFFFFF;
    border-radius: 5px;
    padding: 10px 5px;
    line-height: 1.5;
    text-align: center;
    font-size: 18px;
    font-weight: bold; }
  body.home .section p.subheading {
    font-size: 1.8rem;
    margin-bottom: 0; }
  body.home .section h2 {
    font-size: 1.6rem; }
  body.home .btn_thinking {
    width: 100%;
    display: block; }
  body.home .service3 {
    float: none;
    width: auto;
    margin: 2rem 0 !important;
    border-bottom: 1px solid #ccc; }
    body.home .service3 dl {
      min-height: auto; }
    body.home .service3 dd img {
      margin: 0 auto;
      display: block;
      width: 80%; }
    body.home .service3 dd p {
      text-align: center; }
  body.home #service {
    padding: 1rem 0 1rem; }
    body.home #service ul {
      padding: 0 20px; }
      body.home #service ul li {
        width: auto;
        float: none;
        margin: 0 0 20px; }
  body.home #service:before,
  body.home #service:after {
    display: none; }
  body.home #column ul {
    padding: 20px 20px 0; }
    body.home #column ul li:last-of-type {
      border-bottom: 1px dotted #49300A; }
    body.home #column ul li {
      border-top: 1px dotted #49300A;
      float: none;
      width: 100%;
      padding: 10px;
      margin: 0px 0 0; }
      body.home #column ul li p {
        float: left;
        width: 30%; }
      body.home #column ul li img {
        width: 100%; }
    body.home #column ul dl {
      float: right;
      width: 65%; }
      body.home #column ul dl dt {
        font-size: 14px;
        font-size: 1.4rem;
        min-height: auto;
        font-weight: normal; }
      body.home #column ul dl dd.btn {
        padding: 0px; }
  #home-news {
    height: auto; }
    #home-news .inner_content dl {
      height: auto; }
      #home-news .inner_content dl dt {
        width: auto;
        height: auto;
        padding: 0 1rem; }
      #home-news .inner_content dl dt:after {
        display: none; }
      #home-news .inner_content dl dd {
        position: relative;
        top: auto;
        margin-left: 0;
        height: auto;
        padding: 2rem 2rem 1rem;
        line-height: 1.5em; }
      #home-news .inner_content dl dd.btn {
        position: relative;
        top: auto;
        right: auto;
        margin-left: 0;
        height: auto;
        width: auto;
        display: block;
        padding: 0 2rem 2rem; } }

/**
 * Page: About
 **/
.page-id-4 .section h2,
.page-about .section h2 {
  font-family: sans-serif; }

.page-id-4 .section .subheading,
.page-about .section .subheading {
  text-align: center;
  font-size: 26px;
  font-size: 2.6rem;
  line-height: 1.5;
  margin-bottom: 30px;
  font-weight: bold; }

.page-id-4 .beforeafter dd ul,
.page-about .beforeafter dd ul {
  list-style: none;
  text-align: center;
  margin-left: 0; }
  .page-id-4 .beforeafter dd ul li,
  .page-about .beforeafter dd ul li {
    font-weight: bold;
    font-size: 20px;
    font-size: 2rem; }

.page-id-4 #service,
.page-about #service {
  background: #F3F0EA; }
  .page-id-4 #service ul li,
  .page-about #service ul li {
    width: 300px;
    background: #FFFFFF; }

.page-id-4 #service:before,
.page-id-4 #service:after,
.page-about #service:before,
.page-about #service:after {
  position: absolute;
  display: block;
  content: "";
  height: 100%;
  width: 100%;
  background: #F3F0EA;
  left: -100%;
  top: 0; }

.page-id-4 #service:after,
.page-about #service:after {
  left: 100%; }

@media screen and (max-width: 480px) {
  .page-id-4 .section .subheading,
  .page-about .section .subheading {
    font-size: 18px;
    font-size: 1.8rem; }
  .page-id-4 #service,
  .page-about #service {
    padding: 1rem 0 1rem; }
    .page-id-4 #service ul,
    .page-about #service ul {
      padding: 0 20px; }
      .page-id-4 #service ul li,
      .page-about #service ul li {
        width: auto;
        float: none;
        margin: 0 0 20px; } }

/**
 * Page: company
 **/
#feature_content ol {
  margin: 0;
  padding: 30px 0 0;
  list-style: none; }
  #feature_content ol li:nth-of-type(3n) {
    margin-right: 0; }
  #feature_content ol li:nth-of-type(3n+1) {
    clear: both; }
  #feature_content ol li:before {
    position: absolute;
    content: "";
    width: 100px;
    height: 100px;
    top: -50px;
    left: -50px;
    background: #B93A21;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg); }
  #feature_content ol li:after {
    position: absolute;
    font-size: 24px;
    font-size: 2.4rem;
    top: 0px;
    left: 10px;
    color: #FFFFFF;
    font-weight: bold; }
  #feature_content ol li:nth-of-type(1):after {
    content: "1"; }
  #feature_content ol li:nth-of-type(2):after {
    content: "2"; }
  #feature_content ol li:nth-of-type(3):after {
    content: "3"; }
  #feature_content ol li:nth-of-type(4):after {
    content: "4"; }
  #feature_content ol li:nth-of-type(5):after {
    content: "5"; }
  #feature_content ol li:nth-of-type(6):after {
    content: "6"; }
  #feature_content ol li {
    position: relative;
    overflow: hidden;
    padding: 20px;
    width: 280px;
    margin-right: 30px;
    margin-bottom: 30px;
    float: left;
    box-shadow: 0 0 25px rgba(50, 40, 0, 0.2); }
    #feature_content ol li dl {
      margin: 0;
      padding: 0; }
      #feature_content ol li dl dt {
        margin: 0;
        padding: 20px 0 20px;
        text-align: center;
        font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
        font-size: 23px;
        font-size: 2.3rem; }
      #feature_content ol li dl dd {
        margin: 0;
        padding: 0;
        line-height: 1.8; }

#result_content .subheading {
  text-align: center;
  font-size: 32px;
  font-size: 3.2rem;
  line-height: 1.4;
  margin-top: 0px;
  margin-bottom: 30px;
  font-weight: bold; }

#result_content dl.resultblock:nth-of-type(2n) {
  margin-right: 0; }

#result_content dl.resultblock {
  position: relative;
  width: 46%;
  margin-top: 30px;
  margin-bottom: 0;
  margin-right: 8%;
  float: left;
  box-shadow: 0 0 25px rgba(50, 40, 0, 0.2); }
  #result_content dl.resultblock dt {
    padding: 20px 0 0;
    text-align: center;
    font-weight: normal;
    font-size: 22px;
    font-size: 2.2rem; }
    #result_content dl.resultblock dt strong {
      display: block;
      margin-top: -10px;
      color: #B93A21;
      line-height: 1.3; }
    #result_content dl.resultblock dt em {
      font-style: normal; }
    #result_content dl.resultblock dt em.to {
      display: block;
      font-size: 28px;
      font-size: 2.8rem;
      font-weight: bold; }
    #result_content dl.resultblock dt em.num {
      font-size: 70px;
      font-size: 7rem;
      font-family: "Raleway", sans-serif; }
    #result_content dl.resultblock dt em.unit {
      font-size: 40px;
      font-size: 4rem; }
  #result_content dl.resultblock dd {
    margin: 0;
    padding: 20px 30px 30px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5; }
  #result_content dl.resultblock dd.img {
    position: absolute; }
  #result_content dl.resultblock dd.foot.line2 {
    padding-top: 10px; }
  #result_content dl.resultblock dd.foot.line3 {
    font-size: 18px;
    font-size: 1.8rem;
    padding-top: 10px;
    line-height: 1.5; }
    #result_content dl.resultblock dd.foot.line3 strong {
      font-size: 34px;
      font-size: 3.4rem; }
  #result_content dl.resultblock dd.foot {
    margin: 0;
    padding: 0;
    min-height: 120px;
    text-align: center;
    font-weight: bold;
    background: #B93A21;
    color: #FFFFFF;
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.3; }
    #result_content dl.resultblock dd.foot strong {
      font-size: 54px;
      font-size: 5.4rem; }

#result_content dl.resultblock dd.img {
  top: -60px;
  left: -70px; }

#result_content dl.resultblock + dl.resultblock dd.img {
  left: auto;
  right: -70px; }

.text-red {
  color: #B93A21; }

h4 + table.base_table {
  margin-top: 40px; }

#greeting {
  padding: 0 70px;
  margin: -20px 0px 0px;
  background: url("../images/company/president.jpg") no-repeat right 30px bottom; }
  #greeting .inner {
    margin: 0;
    padding-top: 0px;
    padding-bottom: 30px;
    padding-right: 230px; }
    #greeting .inner h2 {
      padding-top: 20px; }
    #greeting .inner p {
      padding-top: 0px; }
  #greeting .inner + * {
    margin-top: 0; }
  #greeting + * {
    margin-top: 0; }

#access + div.inner_wide .fL,
#access + div.inner_wide .fR {
  width: 440px; }

#access + div.inner_wide .access_copy {
  color: #B93A21;
  font-size: 16px;
  font-size: 1.6rem; }

#access + div.inner_wide h4 {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold; }

#access + div.inner_wide .simplemap {
  margin-bottom: 20px; }

@media screen and (max-width: 480px) {
  .cube + .inner {
    padding-left: 15px;
    padding-right: 15px; }
  #feature_content ol {
    padding-top: 0; }
    #feature_content ol li:nth-of-type(1):after {
      content: "1"; }
    #feature_content ol li:nth-of-type(2):after {
      content: "2"; }
    #feature_content ol li:nth-of-type(3):after {
      content: "3"; }
    #feature_content ol li:nth-of-type(4):after {
      content: "4"; }
    #feature_content ol li:nth-of-type(5):after {
      content: "5"; }
    #feature_content ol li:nth-of-type(6):after {
      content: "6"; }
    #feature_content ol li {
      width: auto;
      margin: 2rem !important;
      float: none; }
      #feature_content ol li dl dt {
        padding-top: 5px;
        padding-bottom: 10px; }
  #result_content .subheading {
    font-size: 1.8rem; }
  #result_content dl.resultblock {
    width: auto;
    margin: 0 0rem 2rem !important;
    float: none; }
    #result_content dl.resultblock dt {
      font-size: 1.6rem; }
      #result_content dl.resultblock dt em.to {
        font-size: 1.8rem; }
      #result_content dl.resultblock dt em.num {
        font-size: 4rem; }
      #result_content dl.resultblock dt em.unit {
        font-size: 3rem; }
    #result_content dl.resultblock dd {
      padding: 2rem; }
    #result_content dl.resultblock dd.img {
      top: -10px;
      left: -15px;
      padding: 0; }
      #result_content dl.resultblock dd.img img {
        width: 28vw; }
    #result_content dl.resultblock dd.foot {
      font-size: 1.7rem !important;
      min-height: auto;
      padding: 1rem; }
      #result_content dl.resultblock dd.foot strong {
        font-size: 1.5em !important; }
  #result_content dl.resultblock + dl.resultblock dd.img {
    right: -20px; }
  h4 + table.base_table {
    margin: 15px 0 0; }
  table.base_table th {
    width: auto;
    white-space: nowrap; }
  table.base_table td.td1 {
    white-space: nowrap; }
  .section table p {
    margin: 0; }
  #greeting {
    margin: 0;
    background-position: right bottom;
    background-size: 140px;
    padding: 0 0 160px; }
    #greeting .inner {
      padding: 0; }
      #greeting .inner h2 {
        margin: 0 2rem; }
  #access + div.inner_wide .fL,
  #access + div.inner_wide .fR {
    width: auto;
    float: none; }
  #access + div.inner_wide h4 {
    font-size: 1.6rem;
    margin: 2rem; } }

/**
 * Page: company
 **/
.shadowbox {
  position: relative;
  padding: 20px;
  box-shadow: 0 0 25px rgba(50, 40, 0, 0.2); }

.flowstep {
  padding-top: 70px;
  padding-left: 50px;
  padding-right: 50px; }
  .flowstep .shadowbox {
    padding-left: 130px;
    padding-right: 120px;
    margin-bottom: 90px; }
    .flowstep .shadowbox h2 {
      margin-top: 10px;
      margin-bottom: 20px;
      font-family: sans-serif;
      font-weight: bold;
      font-size: 38px;
      font-size: 3.8rem;
      letter-spacing: 0.1em; }
    .flowstep .shadowbox h3 {
      font-weight: bold; }
    .flowstep .shadowbox h4 {
      margin-top: 20px;
      font-weight: bold; }
  .flowstep .shadowbox + .shadowbox:before {
    position: absolute;
    display: block;
    content: "";
    width: 100px;
    height: 100px;
    margin: 0 auto;
    left: 0;
    right: 0;
    top: -75px;
    background: url("../images/flow/flow_nextarrow.svg") no-repeat 0 0;
    background-size: 60px auto; }
  .flowstep img.stepicn {
    position: absolute;
    width: 145px;
    height: auto;
    left: -40px;
    top: -43px; }

@media screen and (max-width: 480px) {
  .flowstep {
    padding: 0; }
    .flowstep .shadowbox:first-of-type {
      margin-top: 4rem; }
    .flowstep .shadowbox {
      margin: 8rem 2rem 2rem;
      padding: 2.5rem 0 0.5rem; }
      .flowstep .shadowbox h2 {
        text-align: center;
        margin-top: 0;
        margin-bottom: 10px;
        letter-spacing: 0;
        font-size: 22px;
        font-size: 2.2rem; }
      .flowstep .shadowbox h3 {
        margin-bottom: 0;
        font-size: 16px;
        font-size: 1.6rem; }
      .flowstep .shadowbox .btn {
        padding: 0;
        margin-top: 0;
        margin-bottom: 0; }
        .flowstep .shadowbox .btn a {
          border-radius: 0.5rem;
          padding: 1rem; }
    .flowstep .shadowbox + .shadowbox:before {
      width: 61px;
      height: 62px;
      top: -70px; }
    .flowstep img.stepicn {
      width: 80px;
      left: 5px;
      top: -40px; } }

/**
 * Page: Service Index
 */
.home #service ul li {
  background: #FFFFFF; }

#service {
  position: relative;
  padding: 30px 0; }
  #service h2 {
    color: #49300A;
    text-align: left; }
  #service h2.logo {
    letter-spacing: 0.05em;
    padding: 10px 65px;
    font-size: 32px;
    font-size: 3.2rem;
    background: url("../images/common/icn_prodecube.svg") no-repeat left center;
    background-size: 45px auto; }
  #service ul {
    list-style: none;
    margin: 0;
    padding: 0; }
    #service ul li {
      position: relative;
      float: left;
      width: 300px;
      background: #F3F0EA;
      padding-top: 10px;
      margin-bottom: 20px;
      margin-right: 20px; }
      #service ul li > p {
        margin-left: 10px;
        margin-right: 10px;
        text-align: center; }
      #service ul li a > img {
        width: 100%;
        height: auto; }
      #service ul li dl {
        padding: 10px;
        margin: 0; }
        #service ul li dl dt {
          text-align: center;
          margin-bottom: 10px;
          font-size: 20px;
          font-size: 2rem; }
        #service ul li dl dd.content {
          min-height: 8.5em; }
        #service ul li dl dd.btn {
          display: block;
          text-align: center; }
          #service ul li dl dd.btn a {
            padding: 0 20px;
            display: block;
            border-radius: 10px;
            background: #927C5A;
            border: 1px solid #6E552C;
            color: #FFFFFF; }
          #service ul li dl dd.btn a:hover {
            background: #a08965;
            color: #FFFFFF; }
    #service ul li:nth-of-type(3n) {
      margin-right: 0; }

/**
 * Page: Service Detail
 **/
.cate-service .section p.subheading,
.page-template-tpl-service .section p.subheading {
  text-align: center;
  font-size: 28px;
  font-size: 2.8rem;
  line-height: 1.4;
  margin-top: 0px;
  margin-bottom: 30px;
  font-weight: bold; }

.cate-service .section h2,
.page-template-tpl-service .section h2 {
  text-align: center;
  font-family: sans-serif;
  color: #B93A21;
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold; }

.cate-service .section h4,
.page-template-tpl-service .section h4 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 22px;
  font-size: 2.2rem; }

.cate-service .section > h4,
.page-template-tpl-service .section > h4 {
  margin-top: 30px; }

.cate-service h2.cube,
.page-template-tpl-service h2.cube {
  margin-bottom: 30px; }

.cate-service ul.circlefig,
.page-template-tpl-service ul.circlefig {
  list-style: none;
  padding-bottom: 30px;
  padding-left: 20px; }
  .cate-service ul.circlefig li,
  .page-template-tpl-service ul.circlefig li {
    position: relative;
    display: inline-block;
    margin-right: 10%;
    width: 21.5%; }
    .cate-service ul.circlefig li img,
    .page-template-tpl-service ul.circlefig li img {
      width: 100%;
      height: auto; }
  .cate-service ul.circlefig.step3 li,
  .page-template-tpl-service ul.circlefig.step3 li {
    width: 22%; }
  .cate-service ul.circlefig li:last-of-type,
  .page-template-tpl-service ul.circlefig li:last-of-type {
    margin-right: 0; }
  .cate-service ul.circlefig li.circle_multiple:before,
  .cate-service ul.circlefig li.circle_add:before,
  .page-template-tpl-service ul.circlefig li.circle_multiple:before,
  .page-template-tpl-service ul.circlefig li.circle_add:before {
    position: absolute;
    content: "＋";
    color: #C2B49C;
    font-size: 64px;
    left: -65px;
    top: 12px; }
  .cate-service ul.circlefig li.circle_multiple:before,
  .page-template-tpl-service ul.circlefig li.circle_multiple:before {
    -webkit-transform: rotateZ(45deg);
            transform: rotateZ(45deg); }
  .cate-service ul.circlefig li.circle_equal:before,
  .page-template-tpl-service ul.circlefig li.circle_equal:before {
    position: absolute;
    content: "=";
    color: #C2B49C;
    font-size: 74px;
    left: -57px;
    top: -4px; }

.cate-service ul.step,
.page-template-tpl-service ul.step {
  list-style: none;
  padding-bottom: 30px; }
  .cate-service ul.step li,
  .page-template-tpl-service ul.step li {
    position: relative;
    display: inline-block;
    margin-right: 2.5%; }
    .cate-service ul.step li img,
    .page-template-tpl-service ul.step li img {
      width: 100%;
      height: auto; }
  .cate-service ul.step.step3,
  .page-template-tpl-service ul.step.step3 {
    padding-left: 30px; }
    .cate-service ul.step.step3 li,
    .page-template-tpl-service ul.step.step3 li {
      width: 22%;
      margin-right: 10%; }
  .cate-service ul.step.step4 li,
  .page-template-tpl-service ul.step.step4 li {
    width: 22%; }
  .cate-service ul.step li:last-of-type,
  .page-template-tpl-service ul.step li:last-of-type {
    margin-right: 0; }
  .cate-service ul.step li + li:before,
  .page-template-tpl-service ul.step li + li:before {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    left: -16px;
    top: 55px;
    border-style: solid;
    border-color: transparent transparent transparent #C2B49C;
    border-width: 8px 13px; }
  .cate-service ul.step.step3 li + li:before,
  .page-template-tpl-service ul.step.step3 li + li:before {
    left: -43px;
    top: 55px;
    border-width: 14px 20px; }

.cate-service .side_video,
.page-template-tpl-service .side_video {
  background-color: #FAF8F4;
  background: url("../images/common/bg.png") repeat-x 0 0;
  color: #CCC;
  border: 1px solid #49300A;
  border-radius: 10px;
  padding: 10px;
  margin-top: 30px; }
  .cate-service .side_video p,
  .page-template-tpl-service .side_video p {
    margin: 0;
    line-height: 1.5;
    font-size: 11.5px;
    font-size: 1.15rem; }
  .cate-service .side_video .copy,
  .page-template-tpl-service .side_video .copy {
    text-align: center; }
  .cate-service .side_video h4,
  .page-template-tpl-service .side_video h4 {
    margin: 10px 0;
    color: #B93A21;
    text-align: center;
    font-family: sans-serif;
    font-size: 18px;
    font-size: 1.8rem; }
  .cate-service .side_video .fluid-width-video-wrapper,
  .page-template-tpl-service .side_video .fluid-width-video-wrapper {
    margin-bottom: 10px; }

.cate-service .block3,
.page-template-tpl-service .block3 {
  float: left;
  width: 32%;
  margin-right: 2%;
  border: 1px solid #49300A;
  border-radius: 10px;
  background: #F7F4F0 url("/img/common/bg.png") repeat-x 0 0; }
  .cate-service .block3 dl,
  .page-template-tpl-service .block3 dl {
    padding: 20px;
    margin-bottom: 0;
    min-height: 300px; }
  .cate-service .block3 dt,
  .page-template-tpl-service .block3 dt {
    text-align: center;
    margin: 0; }
    .cate-service .block3 dt strong,
    .cate-service .block3 dt p,
    .page-template-tpl-service .block3 dt strong,
    .page-template-tpl-service .block3 dt p {
      display: block;
      margin-top: 0;
      margin-bottom: 5px;
      color: #B93A21;
      font-weight: bold;
      font-size: 18px;
      font-size: 1.8rem; }
    .cate-service .block3 dt h4,
    .page-template-tpl-service .block3 dt h4 {
      margin: 0 0 20px;
      font-size: 19px;
      font-size: 1.9rem;
      font-weight: bold;
      line-height: 1.5; }
  .cate-service .block3 dd,
  .page-template-tpl-service .block3 dd {
    line-height: 1.7; }
    .cate-service .block3 dd ul,
    .page-template-tpl-service .block3 dd ul {
      margin-left: 20px; }

.cate-service .block3:nth-of-type(3n),
.page-template-tpl-service .block3:nth-of-type(3n) {
  margin-right: 0; }

.cate-service ol.yearprogram,
.cate-service ol#yearprogram,
.page-template-tpl-service ol.yearprogram,
.page-template-tpl-service ol#yearprogram {
  margin: 0;
  padding: 0;
  list-style: none; }
  .cate-service ol.yearprogram > li,
  .cate-service ol#yearprogram > li,
  .page-template-tpl-service ol.yearprogram > li,
  .page-template-tpl-service ol#yearprogram > li {
    position: relative;
    float: left;
    width: 23.5%;
    margin-right: 1.9%;
    margin-bottom: 20px;
    background: #F7F4F0;
    border: 1px solid #49300A; }
    .cate-service ol.yearprogram > li p.num,
    .cate-service ol#yearprogram > li p.num,
    .page-template-tpl-service ol.yearprogram > li p.num,
    .page-template-tpl-service ol#yearprogram > li p.num {
      position: absolute;
      top: 5px;
      left: 5px;
      line-height: 1.3;
      color: #FFFFFF;
      z-index: 1;
      font-size: 22px;
      font-size: 2.2rem; }
    .cate-service ol.yearprogram > li dl,
    .cate-service ol#yearprogram > li dl,
    .page-template-tpl-service ol.yearprogram > li dl,
    .page-template-tpl-service ol#yearprogram > li dl {
      padding: 40px 0 0;
      margin: 0; }
    .cate-service ol.yearprogram > li dt,
    .cate-service ol#yearprogram > li dt,
    .page-template-tpl-service ol.yearprogram > li dt,
    .page-template-tpl-service ol#yearprogram > li dt {
      padding: 0 10px;
      min-height: 80px;
      font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      text-align: center;
      font-size: 22px;
      font-size: 2.2rem; }
      .cate-service ol.yearprogram > li dt.line1,
      .cate-service ol#yearprogram > li dt.line1,
      .page-template-tpl-service ol.yearprogram > li dt.line1,
      .page-template-tpl-service ol#yearprogram > li dt.line1 {
        font-size: 20px;
        font-size: 2rem; }
      .cate-service ol.yearprogram > li dt.line2,
      .cate-service ol#yearprogram > li dt.line2,
      .page-template-tpl-service ol.yearprogram > li dt.line2,
      .page-template-tpl-service ol#yearprogram > li dt.line2 {
        font-size: 20px;
        font-size: 2rem; }
      .cate-service ol.yearprogram > li dt.line3,
      .cate-service ol#yearprogram > li dt.line3,
      .page-template-tpl-service ol.yearprogram > li dt.line3,
      .page-template-tpl-service ol#yearprogram > li dt.line3 {
        font-size: 19px;
        font-size: 1.9rem; }
      .cate-service ol.yearprogram > li dt.line4,
      .cate-service ol#yearprogram > li dt.line4,
      .page-template-tpl-service ol.yearprogram > li dt.line4,
      .page-template-tpl-service ol#yearprogram > li dt.line4 {
        font-size: 18px;
        font-size: 1.8rem; }
    .cate-service ol.yearprogram > li dd,
    .cate-service ol#yearprogram > li dd,
    .page-template-tpl-service ol.yearprogram > li dd,
    .page-template-tpl-service ol#yearprogram > li dd {
      padding: 10px; }
      .cate-service ol.yearprogram > li dd p,
      .cate-service ol#yearprogram > li dd p,
      .page-template-tpl-service ol.yearprogram > li dd p,
      .page-template-tpl-service ol#yearprogram > li dd p {
        line-height: 1.3;
        margin: 0 0 5px; }
      .cate-service ol.yearprogram > li dd strong,
      .cate-service ol#yearprogram > li dd strong,
      .page-template-tpl-service ol.yearprogram > li dd strong,
      .page-template-tpl-service ol#yearprogram > li dd strong {
        display: block; }
      .cate-service ol.yearprogram > li dd strong + br,
      .cate-service ol#yearprogram > li dd strong + br,
      .page-template-tpl-service ol.yearprogram > li dd strong + br,
      .page-template-tpl-service ol#yearprogram > li dd strong + br {
        display: none; }
      .cate-service ol.yearprogram > li dd ul,
      .cate-service ol#yearprogram > li dd ul,
      .page-template-tpl-service ol.yearprogram > li dd ul,
      .page-template-tpl-service ol#yearprogram > li dd ul {
        padding: 0;
        margin-top: 0;
        margin-left: 20px;
        margin-bottom: 5px;
        list-style: circle; }
    .cate-service ol.yearprogram > li:before,
    .cate-service ol#yearprogram > li:before,
    .page-template-tpl-service ol.yearprogram > li:before,
    .page-template-tpl-service ol#yearprogram > li:before {
      z-index: 1;
      position: absolute;
      content: "";
      display: block;
      width: 0;
      height: 0;
      top: -1px;
      left: -1px;
      border: 30px solid #B93A21;
      border-color: #B93A21 transparent transparent #B93A21; }
  .cate-service ol.yearprogram li:nth-of-type(4n),
  .cate-service ol#yearprogram li:nth-of-type(4n),
  .page-template-tpl-service ol.yearprogram li:nth-of-type(4n),
  .page-template-tpl-service ol#yearprogram li:nth-of-type(4n) {
    margin-right: 0; }

.cate-service .optionblock,
.page-template-tpl-service .optionblock {
  position: relative;
  border: 1px solid #49300A;
  background: #F7F4F0;
  padding: 20px 20px 20px 20px;
  margin-top: 30px; }
  .cate-service .optionblock p,
  .page-template-tpl-service .optionblock p {
    margin: 0; }
  .cate-service .optionblock p.img img,
  .page-template-tpl-service .optionblock p.img img {
    float: right;
    margin-left: 30px; }
  .cate-service .optionblock p.label,
  .page-template-tpl-service .optionblock p.label {
    display: inline; }
    .cate-service .optionblock p.label img,
    .page-template-tpl-service .optionblock p.label img {
      position: absolute;
      left: 0;
      top: 0;
      width: 100px;
      height: auto; }
  .cate-service .optionblock p.btn,
  .page-template-tpl-service .optionblock p.btn {
    display: block;
    text-align: center; }
    .cate-service .optionblock p.btn a,
    .page-template-tpl-service .optionblock p.btn a {
      padding: 10px 20px;
      display: inline-block;
      border-radius: 10px;
      background: #927C5A;
      border: 1px solid #6E552C;
      color: #FFFFFF; }
    .cate-service .optionblock p.btn a:hover,
    .page-template-tpl-service .optionblock p.btn a:hover {
      background: #a08965;
      color: #FFFFFF; }
  .cate-service .optionblock h4,
  .page-template-tpl-service .optionblock h4 {
    padding-top: 30px; }

.cate-service .pro-voice dl,
.page-template-tpl-service .pro-voice dl {
  margin-bottom: 50px; }

.cate-service .pro-voice dt,
.page-template-tpl-service .pro-voice dt {
  width: 130px;
  float: left; }
  .cate-service .pro-voice dt img,
  .page-template-tpl-service .pro-voice dt img {
    width: 100%;
    height: auto; }

.cate-service .pro-voice dd,
.page-template-tpl-service .pro-voice dd {
  position: relative;
  width: 800px;
  padding: 30px;
  float: right;
  background: #F3F0EA;
  border-radius: 20px;
  line-height: 1.7; }
  .cate-service .pro-voice dd p,
  .page-template-tpl-service .pro-voice dd p {
    margin: 0; }

.cate-service .pro-voice dd:before,
.page-template-tpl-service .pro-voice dd:before {
  position: absolute;
  content: "";
  display: block;
  width: 0;
  height: 0;
  top: 40px;
  left: -40px;
  border: 20px solid #F3F0EA;
  border-color: transparent #F3F0EA transparent transparent; }

.cate-service .helps dl.help,
.page-template-tpl-service .helps dl.help {
  position: relative;
  margin-bottom: 30px;
  min-height: 130px; }
  .cate-service .helps dl.help dt,
  .page-template-tpl-service .helps dl.help dt {
    color: #49300A;
    font-size: 20px;
    font-size: 2rem;
    margin-bottom: 10px;
    margin-left: 220px; }
  .cate-service .helps dl.help dd,
  .page-template-tpl-service .helps dl.help dd {
    margin-left: 220px; }
  .cate-service .helps dl.help dd.img,
  .page-template-tpl-service .helps dl.help dd.img {
    position: absolute;
    width: 200px;
    top: 0;
    margin: 0;
    left: 0; }
    .cate-service .helps dl.help dd.img img,
    .page-template-tpl-service .helps dl.help dd.img img {
      width: 100%;
      height: auto; }

.cate-service .casetiles.col4 dl.casetile,
.page-template-tpl-service .casetiles.col4 dl.casetile {
  width: 22%;
  margin-right: 4%; }
  .cate-service .casetiles.col4 dl.casetile:last-of-type,
  .page-template-tpl-service .casetiles.col4 dl.casetile:last-of-type {
    margin-right: 0; }
  .cate-service .casetiles.col4 dl.casetile:nth-of-type(4n),
  .page-template-tpl-service .casetiles.col4 dl.casetile:nth-of-type(4n) {
    margin-right: 0; }
  .cate-service .casetiles.col4 dl.casetile:nth-of-type(4n+1),
  .page-template-tpl-service .casetiles.col4 dl.casetile:nth-of-type(4n+1) {
    clear: both; }

.cate-service .casetiles.col3 dl.casetile,
.page-template-tpl-service .casetiles.col3 dl.casetile {
  width: 30%;
  margin-right: 5%; }
  .cate-service .casetiles.col3 dl.casetile:nth-of-type(3n),
  .page-template-tpl-service .casetiles.col3 dl.casetile:nth-of-type(3n) {
    margin-right: 0; }
  .cate-service .casetiles.col3 dl.casetile:nth-of-type(3n+1),
  .page-template-tpl-service .casetiles.col3 dl.casetile:nth-of-type(3n+1) {
    clear: both; }

.cate-service .casetiles dl.casetile,
.page-template-tpl-service .casetiles dl.casetile {
  float: left;
  width: 30%;
  margin-right: 5%; }
  .cate-service .casetiles dl.casetile:last-of-type,
  .page-template-tpl-service .casetiles dl.casetile:last-of-type {
    margin-right: 0; }
  .cate-service .casetiles dl.casetile dt,
  .page-template-tpl-service .casetiles dl.casetile dt {
    color: #49300A;
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 10px; }
  .cate-service .casetiles dl.casetile dd.img,
  .page-template-tpl-service .casetiles dl.casetile dd.img {
    padding-bottom: 10px; }
    .cate-service .casetiles dl.casetile dd.img img,
    .page-template-tpl-service .casetiles dl.casetile dd.img img {
      border: 1px solid #49300A; }

.cate-service ul#service_scrollnavi,
.page-template-tpl-service ul#service_scrollnavi {
  padding-top: 20px;
  padding-bottom: 30px;
  list-style: none; }
  .cate-service ul#service_scrollnavi li,
  .page-template-tpl-service ul#service_scrollnavi li {
    float: left;
    width: 32%;
    margin-right: 2%; }
    .cate-service ul#service_scrollnavi li:last-of-type,
    .page-template-tpl-service ul#service_scrollnavi li:last-of-type {
      margin-right: 0; }
    .cate-service ul#service_scrollnavi li a,
    .page-template-tpl-service ul#service_scrollnavi li a {
      color: #49300A;
      font-weight: bold;
      font-size: 16px;
      font-size: 1.6rem;
      height: 40px;
      line-height: 40px;
      position: relative;
      display: block;
      background: #F5F3EE url("../images/common/bg.png") repeat-x center center;
      text-align: center;
      border: 1px solid #49300A;
      border-radius: 5px; }
      .cate-service ul#service_scrollnavi li a:hover,
      .page-template-tpl-service ul#service_scrollnavi li a:hover {
        text-decoration: none;
        background-color: #e2dcce;
        background-image: none; }
      .cate-service ul#service_scrollnavi li a:after,
      .page-template-tpl-service ul#service_scrollnavi li a:after {
        position: absolute;
        content: '';
        width: 15px;
        height: 15px;
        top: 8px;
        right: 15px;
        border: 2px solid #927C59;
        border-color: transparent #927C59 #927C59 transparent;
        -webkit-transform: rotateZ(40deg) skewX(-10deg);
                transform: rotateZ(40deg) skewX(-10deg); }

.beforeafter dl {
  width: 47%;
  position: relative; }

.beforeafter dl.before {
  float: left; }

.beforeafter dl.after {
  float: right; }

.beforeafter dl.after::before {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  left: -70px;
  top: 210px;
  border-style: solid;
  border-color: transparent transparent transparent #C2B49C;
  border-width: 25px 40px; }

.beforeafter dt {
  text-align: center;
  color: #B93A21;
  font-size: 22px;
  font-size: 2.2rem; }

.beforeafter dl.after dt {
  color: #0F5C18; }

.beforeafter dd img {
  margin-top: 10px;
  margin-bottom: 20px; }

.beforeafter dd p {
  text-align: center; }

.beforeafter dd ul {
  width: auto;
  margin: 0 auto 0 140px; }
  .beforeafter dd ul li {
    margin-bottom: 5px;
    font-size: 16px;
    font-size: 1.6rem; }

.page-id-19 .optionblock h4,
.page-id-19.cate-service .optionblock h4,
.page-id-19.page-template-tpl-service .optionblock h4 {
  padding-top: 20px; }

.page-id-19 .optionblock h4 + p,
.page-id-19.cate-service .optionblock h4 + p,
.page-id-19.page-template-tpl-service .optionblock h4 + p {
  line-height: 1.4; }

@media screen and (max-width: 480px) {
  #service {
    padding: 0; }
    #service h2.logo {
      padding: 5px 0 5px 35px;
      font-size: 18px;
      font-size: 1.8rem;
      background-position: 0 0px;
      margin: 2rem;
      line-height: 1.4;
      background-size: 30px auto; }
    #service ul {
      padding: 0 20px; }
      #service ul li {
        width: auto;
        padding: 0;
        margin-right: 0;
        margin-bottom: 20px; }
        #service ul li > p {
          margin: 3px; }
        #service ul li dl dt br {
          display: none !important; }
        #service ul li dl dd.content {
          padding-bottom: 10px;
          line-height: 1.4; }
  .cate-service .section,
  .page-template-tpl-service .section {
    padding-left: 20px;
    padding-right: 20px; }
    .cate-service .section p.subheading,
    .page-template-tpl-service .section p.subheading {
      font-size: 2rem;
      margin: 2rem 0 1rem; }
    .cate-service .section p,
    .page-template-tpl-service .section p {
      margin: 0 0 1rem; }
    .cate-service .section h2,
    .page-template-tpl-service .section h2 {
      margin-left: 0;
      margin-right: 0;
      line-height: 1.3;
      font-size: 19px;
      font-size: 1.9rem; }
    .cate-service .section h4,
    .page-template-tpl-service .section h4 {
      text-align: center;
      margin: 1rem; }
    .cate-service .section .col-sm-8,
    .cate-service .section .col-sm-4,
    .page-template-tpl-service .section .col-sm-8,
    .page-template-tpl-service .section .col-sm-4 {
      padding: 0; }
  .cate-service .side_photo,
  .page-template-tpl-service .side_photo {
    text-align: center; }
  .cate-service ul.circlefig,
  .page-template-tpl-service ul.circlefig {
    padding: 1rem 1rem 2rem;
    text-align: center; }
    .cate-service ul.circlefig li,
    .page-template-tpl-service ul.circlefig li {
      width: 22vw;
      margin-right: 3vw; }
    .cate-service ul.circlefig li.circle_multiple:before,
    .cate-service ul.circlefig li.circle_add:before,
    .page-template-tpl-service ul.circlefig li.circle_multiple:before,
    .page-template-tpl-service ul.circlefig li.circle_add:before {
      top: 7vw;
      font-size: 5vw;
      left: -5.1vw;
      width: 5vw;
      text-align: center;
      height: 5vw; }
    .cate-service ul.circlefig li.circle_multiple:before,
    .page-template-tpl-service ul.circlefig li.circle_multiple:before {
      left: -3.5vw;
      top: 7.2vw; }
    .cate-service ul.circlefig li.circle_equal:before,
    .page-template-tpl-service ul.circlefig li.circle_equal:before {
      top: 6.3vw;
      font-size: 5vw;
      left: -4.8vw;
      width: 5vw;
      text-align: center;
      height: 5vw; }
  .cate-service ul.step,
  .page-template-tpl-service ul.step {
    margin: 0 1rem !important;
    text-align: center !important;
    padding: 0 0 2rem !important; }
    .cate-service ul.step li,
    .page-template-tpl-service ul.step li {
      width: 19vw !important;
      margin-right: 1vw !important; }
      .cate-service ul.step li:before,
      .page-template-tpl-service ul.step li:before {
        top: 8vw !important;
        left: -2vw !important;
        border-width: 2vw !important; }
    .cate-service ul.step.step3 li,
    .page-template-tpl-service ul.step.step3 li {
      width: 23vw !important;
      margin-right: 2vw !important; }
      .cate-service ul.step.step3 li:before,
      .page-template-tpl-service ul.step.step3 li:before {
        top: 9vw !important;
        left: -2.5vw !important; }
    .cate-service ul.step li:last-of-type,
    .page-template-tpl-service ul.step li:last-of-type {
      margin-right: 0; }
  .cate-service .side_video,
  .page-template-tpl-service .side_video {
    margin: 1rem; }
    .cate-service .side_video .__youtube_prefs__,
    .page-template-tpl-service .side_video .__youtube_prefs__ {
      width: 100%;
      height: auto;
      margin: 0 auto;
      display: block; }
    .cate-service .side_video .copy,
    .page-template-tpl-service .side_video .copy {
      margin-bottom: 0.5rem; }
    .cate-service .side_video h4,
    .page-template-tpl-service .side_video h4 {
      margin: 1rem; }
    .cate-service .side_video .fluid-width-video-wrapper,
    .page-template-tpl-service .side_video .fluid-width-video-wrapper {
      margin-bottom: 0; }
  .cate-service .block3,
  .page-template-tpl-service .block3 {
    float: none;
    width: auto;
    margin: 0 0 1.5rem !important;
    height: auto !important; }
    .cate-service .block3 dl,
    .page-template-tpl-service .block3 dl {
      padding: 15px;
      min-height: auto; }
    .cate-service .block3 dt h4,
    .page-template-tpl-service .block3 dt h4 {
      margin-bottom: 10px; }
    .cate-service .block3 dd,
    .page-template-tpl-service .block3 dd {
      line-height: 1.5; }
  .cate-service ol.yearprogram > li:nth-of-type(2n),
  .cate-service ol#yearprogram > li:nth-of-type(2n),
  .page-template-tpl-service ol.yearprogram > li:nth-of-type(2n),
  .page-template-tpl-service ol#yearprogram > li:nth-of-type(2n) {
    float: right; }
  .cate-service ol.yearprogram > li:nth-of-type(2n-1),
  .cate-service ol#yearprogram > li:nth-of-type(2n-1),
  .page-template-tpl-service ol.yearprogram > li:nth-of-type(2n-1),
  .page-template-tpl-service ol#yearprogram > li:nth-of-type(2n-1) {
    clear: both; }
  .cate-service ol.yearprogram > li,
  .cate-service ol#yearprogram > li,
  .page-template-tpl-service ol.yearprogram > li,
  .page-template-tpl-service ol#yearprogram > li {
    float: none;
    width: 100%;
    margin: 0 0 1rem !important;
    height: auto !important; }
    .cate-service ol.yearprogram > li p.num,
    .cate-service ol#yearprogram > li p.num,
    .page-template-tpl-service ol.yearprogram > li p.num,
    .page-template-tpl-service ol#yearprogram > li p.num {
      font-size: 16px;
      font-size: 1.6rem;
      top: 3px;
      left: 3px;
      width: 0.6em;
      display: block;
      text-align: center; }
    .cate-service ol.yearprogram > li dl,
    .cate-service ol#yearprogram > li dl,
    .page-template-tpl-service ol.yearprogram > li dl,
    .page-template-tpl-service ol#yearprogram > li dl {
      font-size: 20px;
      font-size: 2rem;
      padding: 25px 20px 0; }
    .cate-service ol.yearprogram > li dt,
    .cate-service ol#yearprogram > li dt,
    .page-template-tpl-service ol.yearprogram > li dt,
    .page-template-tpl-service ol#yearprogram > li dt {
      min-height: 0; }
      .cate-service ol.yearprogram > li dt.line1, .cate-service ol.yearprogram > li dt.line2, .cate-service ol.yearprogram > li dt.line3, .cate-service ol.yearprogram > li dt.line4,
      .cate-service ol#yearprogram > li dt.line1,
      .cate-service ol#yearprogram > li dt.line2,
      .cate-service ol#yearprogram > li dt.line3,
      .cate-service ol#yearprogram > li dt.line4,
      .page-template-tpl-service ol.yearprogram > li dt.line1,
      .page-template-tpl-service ol.yearprogram > li dt.line2,
      .page-template-tpl-service ol.yearprogram > li dt.line3,
      .page-template-tpl-service ol.yearprogram > li dt.line4,
      .page-template-tpl-service ol#yearprogram > li dt.line1,
      .page-template-tpl-service ol#yearprogram > li dt.line2,
      .page-template-tpl-service ol#yearprogram > li dt.line3,
      .page-template-tpl-service ol#yearprogram > li dt.line4 {
        font-size: 16px;
        font-size: 1.6rem; }
      .cate-service ol.yearprogram > li dt br,
      .cate-service ol#yearprogram > li dt br,
      .page-template-tpl-service ol.yearprogram > li dt br,
      .page-template-tpl-service ol#yearprogram > li dt br {
        display: none; }
    .cate-service ol.yearprogram > li dd,
    .cate-service ol#yearprogram > li dd,
    .page-template-tpl-service ol.yearprogram > li dd,
    .page-template-tpl-service ol#yearprogram > li dd {
      font-size: 13px;
      font-size: 1.3rem; }
      .cate-service ol.yearprogram > li dd ul > ul,
      .cate-service ol#yearprogram > li dd ul > ul,
      .page-template-tpl-service ol.yearprogram > li dd ul > ul,
      .page-template-tpl-service ol#yearprogram > li dd ul > ul {
        margin-left: 0;
        margin-bottom: 0; }
    .cate-service ol.yearprogram > li:before,
    .cate-service ol#yearprogram > li:before,
    .page-template-tpl-service ol.yearprogram > li:before,
    .page-template-tpl-service ol#yearprogram > li:before {
      border-width: 20px; }
  .cate-service .optionblock,
  .page-template-tpl-service .optionblock {
    margin: 2rem 0rem;
    padding: 0; }
    .cate-service .optionblock p,
    .page-template-tpl-service .optionblock p {
      line-height: 1.5;
      margin: 2rem; }
    .cate-service .optionblock p.img,
    .page-template-tpl-service .optionblock p.img {
      margin: 0; }
      .cate-service .optionblock p.img img,
      .page-template-tpl-service .optionblock p.img img {
        float: none;
        margin: 0;
        width: 100%; }
    .cate-service .optionblock p.label img,
    .page-template-tpl-service .optionblock p.label img {
      width: 70px; }
    .cate-service .optionblock p.btn,
    .page-template-tpl-service .optionblock p.btn {
      padding: 0; }
    .cate-service .optionblock h4,
    .page-template-tpl-service .optionblock h4 {
      padding: 0;
      margin: 0 1rem 1rem;
      font-size: 20px;
      font-size: 2rem; }
  .cate-service .pro-voice,
  .page-template-tpl-service .pro-voice {
    padding-bottom: 0; }
    .cate-service .pro-voice dl,
    .page-template-tpl-service .pro-voice dl {
      margin-bottom: 20px; }
    .cate-service .pro-voice dt,
    .page-template-tpl-service .pro-voice dt {
      float: none;
      margin: 0 auto; }
    .cate-service .pro-voice dd,
    .page-template-tpl-service .pro-voice dd {
      width: auto;
      padding: 15px;
      margin: 15px 0 0;
      float: none;
      border-radius: 10px;
      line-height: 1.4; }
    .cate-service .pro-voice dd:before,
    .page-template-tpl-service .pro-voice dd:before {
      top: -40px;
      left: 60px;
      border-color: transparent transparent #F3F0EA transparent; }
  .cate-service .helps dl.help,
  .page-template-tpl-service .helps dl.help {
    margin: 2rem 0;
    min-height: auto; }
    .cate-service .helps dl.help dt,
    .page-template-tpl-service .helps dl.help dt {
      margin-left: 0; }
    .cate-service .helps dl.help dd,
    .page-template-tpl-service .helps dl.help dd {
      margin-left: 0; }
    .cate-service .helps dl.help dd.img,
    .page-template-tpl-service .helps dl.help dd.img {
      position: relative;
      width: auto;
      top: auto;
      left: auto;
      margin-left: 0;
      margin-bottom: 1rem; }
  .cate-service .casetiles dl.casetile,
  .page-template-tpl-service .casetiles dl.casetile {
    position: relative;
    border-top: 1px dotted #49300A;
    width: auto !important;
    margin: 0 !important;
    padding: 10px 0;
    float: none; }
    .cate-service .casetiles dl.casetile dt,
    .page-template-tpl-service .casetiles dl.casetile dt {
      margin-left: 90px;
      margin-bottom: 0; }
    .cate-service .casetiles dl.casetile dd,
    .page-template-tpl-service .casetiles dl.casetile dd {
      margin-left: 90px; }
    .cate-service .casetiles dl.casetile dd.img,
    .page-template-tpl-service .casetiles dl.casetile dd.img {
      position: absolute;
      top: 10px;
      left: 0;
      margin: 0;
      width: 80px; }
      .cate-service .casetiles dl.casetile dd.img img,
      .page-template-tpl-service .casetiles dl.casetile dd.img img {
        width: 100%;
        height: auto;
        display: block; }
  .cate-service ul#service_scrollnavi,
  .page-template-tpl-service ul#service_scrollnavi {
    padding: 0;
    margin: 1rem; }
    .cate-service ul#service_scrollnavi li,
    .page-template-tpl-service ul#service_scrollnavi li {
      float: none;
      width: 100%;
      margin: 0.5rem 0; }
      .cate-service ul#service_scrollnavi li a,
      .page-template-tpl-service ul#service_scrollnavi li a {
        background-size: cover;
        height: auto;
        line-height: 1.3em;
        padding: 0.5em; }
  .beforeafter dl {
    width: auto;
    margin: 2rem 4rem; }
  .beforeafter dl.before {
    float: none; }
  .beforeafter dl.after {
    float: none;
    margin-top: 80px; }
  .beforeafter dl.after::before {
    left: 50%;
    top: -56px;
    border-color: #C2B49C transparent transparent transparent;
    border-width: 40px 25px;
    margin-left: -25px; }
  .beforeafter dd img {
    max-width: 100%;
    display: block;
    margin-left: auto;
    margin-right: auto; }
  .beforeafter dd ul {
    margin: 0 0 0 2em; } }

/**
 * Page: Seminar
 */
.oldseminar_table {
  width: 95%;
  margin-top: 30px;
  margin-bottom: 50px;
  margin-left: auto;
  margin-right: auto; }
  .oldseminar_table thead th, .oldseminar_table thead td {
    background: #0F5C18;
    text-align: center;
    color: #FFFFFF;
    font-weight: normal;
    font-size: 14px;
    font-size: 1.4rem; }
  .oldseminar_table th,
  .oldseminar_table td {
    padding: 5px 10px;
    border: 1px solid #D2D1D6;
    font-size: 12px;
    font-size: 1.2rem; }
  .oldseminar_table td:first-of-type,
  .oldseminar_table td:last-of-type,
  .oldseminar_table td:nth-of-type(2) {
    white-space: nowrap; }

table.seminar_table {
  width: 100%; }
  table.seminar_table th,
  table.seminar_table td {
    padding: 6px 10px; }
  table.seminar_table th {
    vertical-align: top;
    width: 100px;
    font-size: 16px;
    font-size: 1.6rem; }
  table.seminar_table td {
    vertical-align: top;
    padding-top: 9px; }
  table.seminar_table .note {
    padding-left: 0;
    padding-bottom: 15px;
    color: #B93A21; }
  table.seminar_table .date th {
    padding-left: 40px;
    background: url("../images/seminar/seminaricn_col.png") no-repeat 2px top; }
  table.seminar_table .place th {
    padding-left: 40px;
    background: url("../images/seminar/seminaricn_place.png") no-repeat 2px 3px; }
  table.seminar_table .target th {
    padding-left: 40px;
    background: url("../images/seminar/seminaricn_target.png") no-repeat 0 5px; }
  table.seminar_table .capacity th {
    padding-left: 40px;
    background: url("../images/seminar/seminaricn_capacity.png") no-repeat 4px 6px; }
  table.seminar_table .fee th {
    padding-left: 40px;
    background: url("../images/seminar/seminaricn_fee.png") no-repeat 4px 6px; }
  table.seminar_table .content th {
    padding-left: 40px;
    background: url("../images/seminar/seminaricn_content.png") no-repeat 6px 3px; }
  table.seminar_table em.seminar-full {
    padding: 5px 10px;
    margin-left: 10px;
    font-style: normal;
    background-color: #999999;
    color: #000000;
    border-radius: 5px;
    font-size: 12px;
    font-size: 1.2rem; }

.seminar_block {
  padding: 15px;
  margin-bottom: 30px;
  background: #F3F0EA; }
  .seminar_block header {
    position: relative;
    padding-bottom: 15px;
    margin-bottom: 20px;
    border-bottom: 2px solid #49300A; }
  .seminar_block .seminar-pref {
    position: relative;
    width: 85px;
    height: 85px;
    text-align: center;
    line-height: 85px;
    margin-bottom: 0;
    background: #0F5C18;
    color: #FFFFFF;
    font-size: 16px;
    font-size: 1.6rem; }
  .seminar_block .seminar-title {
    position: absolute;
    left: 100px;
    top: 0;
    font-weight: bold;
    line-height: 1.5;
    font-size: 21px;
    font-size: 2.1rem; }
  .seminar_block .seminar-sponsor {
    position: absolute;
    left: 100px;
    top: 65px;
    color: #666666;
    font-size: 12px;
    font-size: 1.2rem; }
  .seminar_block .btn {
    text-align: center;
    padding: 0px; }
    .seminar_block .btn a {
      padding: 0; }
    .seminar_block .btn span {
      font-size: 85%; }
  .seminar_block .btn.pdf a {
    display: block;
    color: #FFFFFF;
    padding: 5px 10px;
    border-radius: 5px;
    background: #B93A21; }
  .seminar_block table.seminar_table {
    margin-left: 00px;
    width: 100%; }

@media screen and (max-width: 480px) {
  .oldseminar_table {
    width: auto;
    margin: 2rem; }
    .oldseminar_table thead th, .oldseminar_table thead td {
      font-size: 1.2rem; }
    .oldseminar_table th,
    .oldseminar_table td {
      padding: 0.5rem;
      line-height: 1.5; }
      .oldseminar_table th p,
      .oldseminar_table td p {
        margin: 0; }
  table.seminar_table th {
    padding: 0.5rem 0 1rem 4rem;
    width: 33%; }
  table.seminar_table td {
    padding: 0.7rem 0 1rem 0;
    line-height: 1.5; }
    table.seminar_table td p {
      margin: 0;
      line-height: 1.5; }
  table.seminar_table em.seminar-full {
    display: inline-block;
    margin: 0; }
  .seminar_block {
    margin: 2rem;
    padding: 1rem; }
    .seminar_block header {
      padding-bottom: 0; }
    .seminar_block p.img {
      margin-top: 0;
      margin-bottom: 0; }
      .seminar_block p.img img {
        margin: 0 auto; }
    .seminar_block .col-sm-9 {
      padding: 0; }
    .seminar_block .seminar-pref {
      width: auto;
      height: auto;
      line-height: 2em;
      margin: 0; }
    .seminar_block .seminar-title {
      position: relative;
      left: auto;
      top: auto;
      font-size: 1.6rem;
      margin: 1rem 0; }
      .seminar_block .seminar-title br {
        display: none; }
    .seminar_block .seminar-sponsor {
      position: relative;
      left: auto;
      top: auto;
      margin: 1rem 0; } }

/**
 * Page: Blog
 **/
.archive h2 {
  font-family: sans-serif;
  margin: 0;
  padding: 30px 0 30px;
  font-size: 24px;
  font-size: 2.4rem; }

.archive.post-type-archive-seminar h2 {
  padding: 6px 20px 5px 60px; }

.post-type-archive-news .newsarchive a {
  display: block;
  position: relative;
  color: #333333;
  padding-left: 20px; }

.post-type-archive-news .newsarchive a:before {
  position: absolute;
  content: "";
  border: 5px solid #B93A21;
  top: 7px;
  left: 5px;
  border-color: transparent transparent transparent #B93A21; }

.post-type-archive-news .newsarchive p {
  padding-left: 20px;
  color: #999999; }

.pagenavi {
  border-top: 1px dotted #49300A;
  margin: 30px 0 30px;
  padding: 30px 0; }

.aC .wp-pagenavi {
  border-top: 1px dotted #49300A;
  margin: 0 0 30px;
  padding: 30px auto;
  float: none !important; }

.newsarchive {
  border-top: 1px dotted #49300A;
  padding-top: 10px;
  padding-bottom: 10px; }
  .newsarchive h3 {
    margin-top: 5px;
    margin-bottom: 5px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.5; }
  .newsarchive p {
    margin-bottom: 0; }

.blogarchive {
  border-top: 1px dotted #49300A;
  padding-top: 15px;
  padding-bottom: 15px; }
  .blogarchive dl {
    position: relative;
    margin: 0;
    padding: 0;
    min-height: 95px; }
    .blogarchive dl dt, .blogarchive dl dd {
      margin: 0;
      padding: 0; }
    .blogarchive dl dt.title {
      margin-left: 140px;
      margin-bottom: 5px;
      font-size: 18px;
      font-size: 1.8rem; }
    .blogarchive dl dd.category {
      margin-left: 140px;
      display: inline-block;
      margin-bottom: 5px;
      background: #B7A68B;
      color: #FFFFFF;
      line-height: 1.5;
      padding: 3px 10px 2px; }
    .blogarchive dl dd.img {
      position: absolute;
      width: 120px;
      left: 0;
      top: 0; }
      .blogarchive dl dd.img img {
        width: 100%;
        border: 1px solid #DDDDDD; }
    .blogarchive dl dd.date {
      margin-left: 140px; }
  .blogarchive .entry-title-list {
    font-size: 24px;
    font-size: 2.4rem; }

.single h1.entry-title {
  padding-right: 0; }

.single .body span {
  /*display: block;*/ }

.single .body span img {
  display: block;
  margin-top: 20px;
  margin-bottom: 10px;
  max-width: 100%;
  height: auto; }

.author {
  margin-bottom: 30px;
  min-height: 185px; }
  .author img {
    position: absolute;
    left: 20px;
    width: 140px;
    height: auto; }

#samecategory {
  padding-top: 30px;
  padding-bottom: 30px; }
  #samecategory .item {
    position: relative;
    padding: 25px 0;
    min-height: 150px;
    border-top: 2px solid #49300A; }
    #samecategory .item img {
      width: 150px;
      height: auto; }
    #samecategory .item p {
      margin: 0; }
    #samecategory .item p.img {
      position: absolute;
      width: 160px;
      min-height: 125px; }
    #samecategory .item p.category {
      display: inline-block;
      margin-left: 170px;
      margin-bottom: 5px;
      background: #B7A68B;
      color: #FFFFFF;
      line-height: 1.5;
      padding: 8px 20px 5px; }
    #samecategory .item p.date {
      position: absolute;
      display: inline-block;
      right: 0;
      top: 30px;
      color: #49300A; }
    #samecategory .item .title {
      margin-left: 170px;
      font-size: 22px;
      font-size: 2.2rem; }
      #samecategory .item .title a:hover {
        color: #B93A21; }
    #samecategory .item .more {
      text-align: right; }
      #samecategory .item .more a {
        color: #0F5C18;
        text-decoration: underline; }
        #samecategory .item .more a:hover {
          text-decoration: none; }
  #samecategory .item:first-of-type {
    margin-top: 30px; }
  #samecategory .item:last-of-type {
    border-bottom: 2px solid #49300A; }

@media screen and (max-width: 480px) {
  .archive h2 {
    padding: 2rem 2rem 1rem;
    font-size: 2rem;
    background: #F3F0EA; }
  .archive p {
    margin: 1rem 2rem; }
    .archive p img {
      max-width: 100%;
      height: auto;
      display: block; }
  .archive footer:not(#footer) {
    margin: 1rem 2rem; }
  .archive article {
    border-bottom: 1px solid #ccc; }
  .archive.post-type-archive-seminar h2 {
    padding: 6px 20px 5px 60px;
    background: #49300A url(../images/common/icn_prodecube_white.svg) no-repeat 15px center; }
  .newsarchive {
    border-bottom: none !important; }
    .newsarchive h3 {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.4;
      margin: 0 15px; }
    .newsarchive h3 + p {
      text-align: right;
      margin-top: 0;
      margin-bottom: 0; }
  .post-type-archive-news .newsarchive a {
    padding-left: 15px; }
  .post-type-archive-news .newsarchive a:before {
    top: 4px;
    left: 0; }
  .blogarchive {
    padding: 1rem;
    border-top: none; }
    .blogarchive dl {
      min-height: 75px; }
      .blogarchive dl dt.title {
        margin-left: 110px;
        font-size: 16px;
        font-size: 1.6rem; }
      .blogarchive dl dd.img {
        width: 100px; }
      .blogarchive dl dd.date {
        margin-left: 110px; }
    .blogarchive + .aC .wp-pagenavi a {
      display: inline-block;
      margin: 3px; }
  .single h1.entry-title {
    margin-top: 0;
    padding-right: 2rem; }
  .single .body {
    padding: 0 2rem; }
  .single img {
    max-width: 100%;
    height: auto; }
  .author h3 {
    margin-bottom: 10px; }
  .author img {
    top: 1rem;
    left: 1rem; }
  .author p.profile {
    line-height: 1.4;
    font-size: 13px;
    font-size: 1.3rem; }
  #samecategory .item {
    padding: 1rem;
    min-height: 100px;
    top: 1px; }
    #samecategory .item p.img {
      width: 100px;
      top: 1rem;
      left: 1rem; }
    #samecategory .item p.category {
      margin-left: 110px;
      display: block;
      padding: 0.5em;
      font-size: 1.2rem;
      line-height: 1.3em; }
    #samecategory .item p.date {
      margin-left: 110px;
      position: relative;
      right: auto;
      top: auto;
      font-size: 1.2rem;
      display: block; }
    #samecategory .item .title {
      margin-left: 110px;
      font-size: 16px;
      font-size: 1.6rem; } }

/**
 * Page: Prodecuclub
 **/
.page-prodecuclub .clubnav ul {
  list-style: none;
  padding: 0;
  margin: 0 0 30px; }
  .page-prodecuclub .clubnav ul li {
    display: block;
    width: 33%;
    float: left;
    background: #CBBCA4;
    border-right: 1px solid #FFFFFF;
    line-height: 1.5;
    text-align: center; }
    .page-prodecuclub .clubnav ul li a {
      padding: 10px;
      display: block; }

.page-prodecuclub .club_message_detail {
  margin-left: 50px;
  margin-right: 50px;
  background-color: #F2EFEA;
  padding: 30px; }
  .page-prodecuclub .club_message_detail p {
    margin-bottom: 20px; }

.page-prodecuclub .section p.subheading {
  text-align: center;
  font-size: 28px;
  font-size: 2.8rem;
  line-height: 1.4;
  margin-top: 0px;
  margin-bottom: 30px;
  font-weight: bold; }

.page-prodecuclub .section h2 {
  text-align: center;
  font-family: sans-serif;
  color: #B93A21;
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold; }

.page-prodecuclub .section h4 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 22px;
  font-size: 2.2rem; }

.page-prodecuclub .section > h4 {
  margin-top: 30px; }

.page-prodecuclub h2.cube {
  margin-bottom: 30px; }

.page-prodecuclub ul.circlefig {
  list-style: none;
  padding-bottom: 30px;
  padding-left: 20px; }
  .page-prodecuclub ul.circlefig li {
    position: relative;
    display: inline-block;
    margin-right: 10%;
    width: 21.5%; }
    .page-prodecuclub ul.circlefig li img {
      width: 100%;
      height: auto; }
  .page-prodecuclub ul.circlefig.step3 li {
    width: 22%; }
  .page-prodecuclub ul.circlefig li:last-of-type {
    margin-right: 0; }
  .page-prodecuclub ul.circlefig li.circle_multiple:before,
  .page-prodecuclub ul.circlefig li.circle_add:before {
    position: absolute;
    content: "＋";
    color: #C2B49C;
    font-size: 64px;
    left: -65px;
    top: 12px; }
  .page-prodecuclub ul.circlefig li.circle_multiple:before {
    -webkit-transform: rotateZ(45deg);
            transform: rotateZ(45deg); }
  .page-prodecuclub ul.circlefig li.circle_equal:before {
    position: absolute;
    content: "=";
    color: #C2B49C;
    font-size: 74px;
    left: -57px;
    top: -4px; }

.page-prodecuclub ul.step {
  list-style: none;
  padding-bottom: 30px; }
  .page-prodecuclub ul.step li {
    position: relative;
    display: inline-block;
    margin-right: 2.5%; }
    .page-prodecuclub ul.step li img {
      width: 100%;
      height: auto; }
  .page-prodecuclub ul.step.step3 {
    padding-left: 30px; }
    .page-prodecuclub ul.step.step3 li {
      width: 22%;
      margin-right: 10%; }
  .page-prodecuclub ul.step.step4 li {
    width: 22%; }
  .page-prodecuclub ul.step li:last-of-type {
    margin-right: 0; }
  .page-prodecuclub ul.step li + li:before {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    left: -16px;
    top: 55px;
    border-style: solid;
    border-color: transparent transparent transparent #C2B49C;
    border-width: 8px 13px; }
  .page-prodecuclub ul.step.step3 li + li:before {
    left: -43px;
    top: 55px;
    border-width: 14px 20px; }

.page-prodecuclub .side_video {
  background-color: #FAF8F4;
  background: url("../images/common/bg.png") repeat-x 0 0;
  color: #CCC;
  border: 1px solid #49300A;
  border-radius: 10px;
  padding: 10px;
  margin-top: 30px; }
  .page-prodecuclub .side_video p {
    margin: 0;
    line-height: 1.5;
    font-size: 11.5px;
    font-size: 1.15rem; }
  .page-prodecuclub .side_video .copy {
    text-align: center; }
  .page-prodecuclub .side_video h4 {
    margin: 10px 0;
    color: #B93A21;
    text-align: center;
    font-family: sans-serif;
    font-size: 18px;
    font-size: 1.8rem; }
  .page-prodecuclub .side_video .fluid-width-video-wrapper {
    margin-bottom: 10px; }

.page-prodecuclub .block3 {
  float: left;
  width: 32%;
  margin-right: 2%;
  border: 1px solid #49300A;
  border-radius: 10px;
  background: #F7F4F0 url("/img/common/bg.png") repeat-x 0 0; }
  .page-prodecuclub .block3 dl {
    padding: 20px;
    margin-bottom: 0;
    min-height: 250px; }
  .page-prodecuclub .block3 dt {
    text-align: center;
    margin: 0; }
    .page-prodecuclub .block3 dt strong,
    .page-prodecuclub .block3 dt p {
      display: block;
      margin-top: 0;
      margin-bottom: 5px;
      color: #B93A21;
      font-weight: bold;
      font-size: 18px;
      font-size: 1.8rem; }
    .page-prodecuclub .block3 dt h4 {
      margin: 0 0 20px;
      font-size: 19px;
      font-size: 1.9rem;
      font-weight: bold;
      line-height: 1.5; }
  .page-prodecuclub .block3 dd {
    line-height: 1.7; }
    .page-prodecuclub .block3 dd ul {
      margin-left: 20px; }

.page-prodecuclub .block3:nth-of-type(3n) {
  margin-right: 0; }

.page-prodecuclub ol.yearprogram,
.page-prodecuclub ol#yearprogram {
  margin: 0;
  padding: 0;
  list-style: none; }
  .page-prodecuclub ol.yearprogram > li,
  .page-prodecuclub ol#yearprogram > li {
    position: relative;
    float: left;
    width: 23.5%;
    margin-right: 1.9%;
    margin-bottom: 20px;
    background: #F7F4F0;
    border: 1px solid #49300A; }
    .page-prodecuclub ol.yearprogram > li p.num,
    .page-prodecuclub ol#yearprogram > li p.num {
      position: absolute;
      top: 5px;
      left: 5px;
      line-height: 1.3;
      color: #FFFFFF;
      z-index: 1;
      font-size: 22px;
      font-size: 2.2rem; }
    .page-prodecuclub ol.yearprogram > li dl,
    .page-prodecuclub ol#yearprogram > li dl {
      padding: 40px 0 0;
      margin: 0; }
    .page-prodecuclub ol.yearprogram > li dt,
    .page-prodecuclub ol#yearprogram > li dt {
      padding: 0 10px;
      min-height: 80px;
      font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      text-align: center;
      font-size: 22px;
      font-size: 2.2rem; }
      .page-prodecuclub ol.yearprogram > li dt.line1,
      .page-prodecuclub ol#yearprogram > li dt.line1 {
        font-size: 20px;
        font-size: 2rem; }
      .page-prodecuclub ol.yearprogram > li dt.line2,
      .page-prodecuclub ol#yearprogram > li dt.line2 {
        font-size: 20px;
        font-size: 2rem; }
      .page-prodecuclub ol.yearprogram > li dt.line3,
      .page-prodecuclub ol#yearprogram > li dt.line3 {
        font-size: 19px;
        font-size: 1.9rem; }
      .page-prodecuclub ol.yearprogram > li dt.line4,
      .page-prodecuclub ol#yearprogram > li dt.line4 {
        font-size: 18px;
        font-size: 1.8rem; }
    .page-prodecuclub ol.yearprogram > li dd,
    .page-prodecuclub ol#yearprogram > li dd {
      padding: 10px; }
      .page-prodecuclub ol.yearprogram > li dd p,
      .page-prodecuclub ol#yearprogram > li dd p {
        line-height: 1.3;
        margin: 0 0 5px; }
      .page-prodecuclub ol.yearprogram > li dd strong,
      .page-prodecuclub ol#yearprogram > li dd strong {
        display: block; }
      .page-prodecuclub ol.yearprogram > li dd strong + br,
      .page-prodecuclub ol#yearprogram > li dd strong + br {
        display: none; }
      .page-prodecuclub ol.yearprogram > li dd ul,
      .page-prodecuclub ol#yearprogram > li dd ul {
        padding: 0;
        margin-top: 0;
        margin-left: 20px;
        margin-bottom: 5px;
        list-style: circle; }
    .page-prodecuclub ol.yearprogram > li:before,
    .page-prodecuclub ol#yearprogram > li:before {
      z-index: 1;
      position: absolute;
      content: "";
      display: block;
      width: 0;
      height: 0;
      top: -1px;
      left: -1px;
      border: 30px solid #B93A21;
      border-color: #B93A21 transparent transparent #B93A21; }
  .page-prodecuclub ol.yearprogram li:nth-of-type(4n),
  .page-prodecuclub ol#yearprogram li:nth-of-type(4n) {
    margin-right: 0; }

.page-prodecuclub .optionblock {
  position: relative;
  border: 1px solid #49300A;
  background: #F7F4F0;
  padding: 20px 20px 20px 20px;
  margin-top: 30px; }
  .page-prodecuclub .optionblock p {
    margin: 0; }
  .page-prodecuclub .optionblock p.img img {
    float: right;
    margin-left: 30px; }
  .page-prodecuclub .optionblock p.label {
    display: inline; }
    .page-prodecuclub .optionblock p.label img {
      position: absolute;
      left: 0;
      top: 0;
      width: 100px;
      height: auto; }
  .page-prodecuclub .optionblock p.btn {
    display: block;
    text-align: center; }
    .page-prodecuclub .optionblock p.btn a {
      padding: 10px 20px;
      display: inline-block;
      border-radius: 10px;
      background: #927C5A;
      border: 1px solid #6E552C;
      color: #FFFFFF; }
    .page-prodecuclub .optionblock p.btn a:hover {
      background: #a08965;
      color: #FFFFFF; }
  .page-prodecuclub .optionblock h4 {
    padding-top: 30px; }

.page-prodecuclub .pro-voice dl {
  margin-bottom: 50px; }

.page-prodecuclub .pro-voice dt {
  width: 130px;
  float: left; }
  .page-prodecuclub .pro-voice dt img {
    width: 100%;
    height: auto; }

.page-prodecuclub .pro-voice dd {
  position: relative;
  width: 800px;
  padding: 30px;
  float: right;
  background: #F3F0EA;
  border-radius: 20px;
  line-height: 1.7; }
  .page-prodecuclub .pro-voice dd p {
    margin: 0; }

.page-prodecuclub .pro-voice dd:before {
  position: absolute;
  content: "";
  display: block;
  width: 0;
  height: 0;
  top: 40px;
  left: -40px;
  border: 20px solid #F3F0EA;
  border-color: transparent #F3F0EA transparent transparent; }

.page-prodecuclub .helps dl.help {
  position: relative;
  margin-bottom: 30px;
  min-height: 130px; }
  .page-prodecuclub .helps dl.help dt {
    color: #49300A;
    font-size: 20px;
    font-size: 2rem;
    margin-bottom: 10px;
    margin-left: 220px; }
  .page-prodecuclub .helps dl.help dd {
    margin-left: 220px; }
  .page-prodecuclub .helps dl.help dd.img {
    position: absolute;
    width: 200px;
    top: 0;
    margin: 0;
    left: 0; }
    .page-prodecuclub .helps dl.help dd.img img {
      width: 100%;
      height: auto; }

.page-prodecuclub .casetiles.col4 dl.casetile {
  width: 22%;
  margin-right: 4%; }
  .page-prodecuclub .casetiles.col4 dl.casetile:last-of-type {
    margin-right: 0; }
  .page-prodecuclub .casetiles.col4 dl.casetile:nth-of-type(4n) {
    margin-right: 0; }
  .page-prodecuclub .casetiles.col4 dl.casetile:nth-of-type(4n+1) {
    clear: both; }

.page-prodecuclub .casetiles.col3 dl.casetile {
  width: 30%;
  margin-right: 5%; }
  .page-prodecuclub .casetiles.col3 dl.casetile:nth-of-type(3n) {
    margin-right: 0; }
  .page-prodecuclub .casetiles.col3 dl.casetile:nth-of-type(3n+1) {
    clear: both; }

.page-prodecuclub .casetiles dl.casetile {
  float: left;
  width: 30%;
  margin-right: 5%; }
  .page-prodecuclub .casetiles dl.casetile:last-of-type {
    margin-right: 0; }
  .page-prodecuclub .casetiles dl.casetile dt {
    color: #49300A;
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 10px; }
  .page-prodecuclub .casetiles dl.casetile dd.img {
    padding-bottom: 10px; }
    .page-prodecuclub .casetiles dl.casetile dd.img img {
      border: 1px solid #49300A; }

.page-prodecuclub ul#service_scrollnavi {
  padding-top: 20px;
  padding-bottom: 30px;
  list-style: none; }
  .page-prodecuclub ul#service_scrollnavi li {
    float: left;
    width: 32%;
    margin-right: 2%; }
    .page-prodecuclub ul#service_scrollnavi li:last-of-type {
      margin-right: 0; }
    .page-prodecuclub ul#service_scrollnavi li a {
      color: #49300A;
      font-weight: bold;
      font-size: 16px;
      font-size: 1.6rem;
      height: 40px;
      line-height: 40px;
      position: relative;
      display: block;
      background: #F5F3EE url("../images/common/bg.png") repeat-x center center;
      text-align: center;
      border: 1px solid #49300A;
      border-radius: 5px; }
      .page-prodecuclub ul#service_scrollnavi li a:hover {
        text-decoration: none;
        background-color: #e2dcce;
        background-image: none; }
      .page-prodecuclub ul#service_scrollnavi li a:after {
        position: absolute;
        content: '';
        width: 15px;
        height: 15px;
        top: 8px;
        right: 15px;
        border: 2px solid #927C59;
        border-color: transparent #927C59 #927C59 transparent;
        -webkit-transform: rotateZ(40deg) skewX(-10deg);
                transform: rotateZ(40deg) skewX(-10deg); }

.beforeafter dl {
  width: 47%;
  position: relative; }

.beforeafter dl.before {
  float: left; }

.beforeafter dl.after {
  float: right; }

.beforeafter dl.after::before {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  left: -70px;
  top: 210px;
  border-style: solid;
  border-color: transparent transparent transparent #C2B49C;
  border-width: 25px 40px; }

.beforeafter dt {
  text-align: center;
  color: #B93A21;
  font-size: 22px;
  font-size: 2.2rem; }

.beforeafter dl.after dt {
  color: #0F5C18; }

.beforeafter dd img {
  margin-top: 10px;
  margin-bottom: 20px; }

.beforeafter dd p {
  text-align: center; }

.beforeafter dd ul {
  width: auto;
  margin: 0 auto 0 140px; }
  .beforeafter dd ul li {
    margin-bottom: 5px;
    font-size: 16px;
    font-size: 1.6rem; }

.page-id-19 .optionblock h4,
.page-id-19.cate-service .optionblock h4,
.page-id-19.page-template-tpl-service .optionblock h4 {
  padding-top: 20px; }

.page-id-19 .optionblock h4 + p,
.page-id-19.cate-service .optionblock h4 + p,
.page-id-19.page-template-tpl-service .optionblock h4 + p {
  line-height: 1.4; }

@media screen and (max-width: 480px) {
  .page-prodecuclub .section,
  .cate-service .section,
  .page-template-tpl-service .section {
    padding-left: 20px;
    padding-right: 20px; }
    .page-prodecuclub .section p.subheading,
    .cate-service .section p.subheading,
    .page-template-tpl-service .section p.subheading {
      font-size: 2rem;
      margin: 2rem 0 1rem; }
    .page-prodecuclub .section p,
    .cate-service .section p,
    .page-template-tpl-service .section p {
      margin: 0 0 1rem; }
    .page-prodecuclub .section h2,
    .cate-service .section h2,
    .page-template-tpl-service .section h2 {
      margin-left: 0;
      margin-right: 0;
      line-height: 1.3;
      font-size: 19px;
      font-size: 1.9rem; }
    .page-prodecuclub .section h4,
    .cate-service .section h4,
    .page-template-tpl-service .section h4 {
      text-align: center;
      margin: 1rem; }
    .page-prodecuclub .section .col-sm-8,
    .page-prodecuclub .section .col-sm-4,
    .cate-service .section .col-sm-8,
    .cate-service .section .col-sm-4,
    .page-template-tpl-service .section .col-sm-8,
    .page-template-tpl-service .section .col-sm-4 {
      padding: 0; }
  .page-prodecuclub .side_photo,
  .cate-service .side_photo,
  .page-template-tpl-service .side_photo {
    text-align: center; }
  .page-prodecuclub ul.circlefig,
  .cate-service ul.circlefig,
  .page-template-tpl-service ul.circlefig {
    padding: 1rem 1rem 2rem;
    text-align: center; }
    .page-prodecuclub ul.circlefig li,
    .cate-service ul.circlefig li,
    .page-template-tpl-service ul.circlefig li {
      width: 22vw;
      margin-right: 3vw; }
    .page-prodecuclub ul.circlefig li.circle_multiple:before,
    .page-prodecuclub ul.circlefig li.circle_add:before,
    .cate-service ul.circlefig li.circle_multiple:before,
    .cate-service ul.circlefig li.circle_add:before,
    .page-template-tpl-service ul.circlefig li.circle_multiple:before,
    .page-template-tpl-service ul.circlefig li.circle_add:before {
      top: 7vw;
      font-size: 5vw;
      left: -5.1vw;
      width: 5vw;
      text-align: center;
      height: 5vw; }
    .page-prodecuclub ul.circlefig li.circle_multiple:before,
    .cate-service ul.circlefig li.circle_multiple:before,
    .page-template-tpl-service ul.circlefig li.circle_multiple:before {
      left: -3.5vw;
      top: 7.2vw; }
    .page-prodecuclub ul.circlefig li.circle_equal:before,
    .cate-service ul.circlefig li.circle_equal:before,
    .page-template-tpl-service ul.circlefig li.circle_equal:before {
      top: 6.3vw;
      font-size: 5vw;
      left: -4.8vw;
      width: 5vw;
      text-align: center;
      height: 5vw; }
  .page-prodecuclub ul.step,
  .cate-service ul.step,
  .page-template-tpl-service ul.step {
    margin: 0 1rem !important;
    text-align: center !important;
    padding: 0 0 2rem !important; }
    .page-prodecuclub ul.step li,
    .cate-service ul.step li,
    .page-template-tpl-service ul.step li {
      width: 19vw !important;
      margin-right: 1vw !important; }
      .page-prodecuclub ul.step li:before,
      .cate-service ul.step li:before,
      .page-template-tpl-service ul.step li:before {
        top: 8vw !important;
        left: -2vw !important;
        border-width: 2vw !important; }
    .page-prodecuclub ul.step.step3 li,
    .cate-service ul.step.step3 li,
    .page-template-tpl-service ul.step.step3 li {
      width: 23vw !important;
      margin-right: 2vw !important; }
      .page-prodecuclub ul.step.step3 li:before,
      .cate-service ul.step.step3 li:before,
      .page-template-tpl-service ul.step.step3 li:before {
        top: 9vw !important;
        left: -2.5vw !important; }
    .page-prodecuclub ul.step li:last-of-type,
    .cate-service ul.step li:last-of-type,
    .page-template-tpl-service ul.step li:last-of-type {
      margin-right: 0; }
  .page-prodecuclub .side_video,
  .cate-service .side_video,
  .page-template-tpl-service .side_video {
    margin: 1rem; }
    .page-prodecuclub .side_video .__youtube_prefs__,
    .cate-service .side_video .__youtube_prefs__,
    .page-template-tpl-service .side_video .__youtube_prefs__ {
      width: 100%;
      height: auto;
      margin: 0 auto;
      display: block; }
    .page-prodecuclub .side_video .copy,
    .cate-service .side_video .copy,
    .page-template-tpl-service .side_video .copy {
      margin-bottom: 0.5rem; }
    .page-prodecuclub .side_video h4,
    .cate-service .side_video h4,
    .page-template-tpl-service .side_video h4 {
      margin: 1rem; }
    .page-prodecuclub .side_video .fluid-width-video-wrapper,
    .cate-service .side_video .fluid-width-video-wrapper,
    .page-template-tpl-service .side_video .fluid-width-video-wrapper {
      margin-bottom: 0; }
  .page-prodecuclub .block3,
  .cate-service .block3,
  .page-template-tpl-service .block3 {
    float: none;
    width: auto;
    margin: 0 0 1.5rem !important;
    height: auto !important; }
    .page-prodecuclub .block3 dl,
    .cate-service .block3 dl,
    .page-template-tpl-service .block3 dl {
      padding: 15px;
      min-height: auto; }
    .page-prodecuclub .block3 dt h4,
    .cate-service .block3 dt h4,
    .page-template-tpl-service .block3 dt h4 {
      margin-bottom: 10px; }
    .page-prodecuclub .block3 dd,
    .cate-service .block3 dd,
    .page-template-tpl-service .block3 dd {
      line-height: 1.5; }
  .page-prodecuclub ol.yearprogram > li:nth-of-type(2n),
  .page-prodecuclub ol#yearprogram > li:nth-of-type(2n),
  .cate-service ol.yearprogram > li:nth-of-type(2n),
  .cate-service ol#yearprogram > li:nth-of-type(2n),
  .page-template-tpl-service ol.yearprogram > li:nth-of-type(2n),
  .page-template-tpl-service ol#yearprogram > li:nth-of-type(2n) {
    float: right; }
  .page-prodecuclub ol.yearprogram > li:nth-of-type(2n-1),
  .page-prodecuclub ol#yearprogram > li:nth-of-type(2n-1),
  .cate-service ol.yearprogram > li:nth-of-type(2n-1),
  .cate-service ol#yearprogram > li:nth-of-type(2n-1),
  .page-template-tpl-service ol.yearprogram > li:nth-of-type(2n-1),
  .page-template-tpl-service ol#yearprogram > li:nth-of-type(2n-1) {
    clear: both; }
  .page-prodecuclub ol.yearprogram > li,
  .page-prodecuclub ol#yearprogram > li,
  .cate-service ol.yearprogram > li,
  .cate-service ol#yearprogram > li,
  .page-template-tpl-service ol.yearprogram > li,
  .page-template-tpl-service ol#yearprogram > li {
    float: none;
    width: 100%;
    margin: 0 0 1rem !important;
    height: auto !important; }
    .page-prodecuclub ol.yearprogram > li p.num,
    .page-prodecuclub ol#yearprogram > li p.num,
    .cate-service ol.yearprogram > li p.num,
    .cate-service ol#yearprogram > li p.num,
    .page-template-tpl-service ol.yearprogram > li p.num,
    .page-template-tpl-service ol#yearprogram > li p.num {
      font-size: 16px;
      font-size: 1.6rem;
      top: 3px;
      left: 3px;
      width: 0.6em;
      display: block;
      text-align: center; }
    .page-prodecuclub ol.yearprogram > li dl,
    .page-prodecuclub ol#yearprogram > li dl,
    .cate-service ol.yearprogram > li dl,
    .cate-service ol#yearprogram > li dl,
    .page-template-tpl-service ol.yearprogram > li dl,
    .page-template-tpl-service ol#yearprogram > li dl {
      font-size: 20px;
      font-size: 2rem;
      padding: 25px 20px 0; }
    .page-prodecuclub ol.yearprogram > li dt,
    .page-prodecuclub ol#yearprogram > li dt,
    .cate-service ol.yearprogram > li dt,
    .cate-service ol#yearprogram > li dt,
    .page-template-tpl-service ol.yearprogram > li dt,
    .page-template-tpl-service ol#yearprogram > li dt {
      min-height: 0; }
      .page-prodecuclub ol.yearprogram > li dt.line1, .page-prodecuclub ol.yearprogram > li dt.line2, .page-prodecuclub ol.yearprogram > li dt.line3, .page-prodecuclub ol.yearprogram > li dt.line4,
      .page-prodecuclub ol#yearprogram > li dt.line1,
      .page-prodecuclub ol#yearprogram > li dt.line2,
      .page-prodecuclub ol#yearprogram > li dt.line3,
      .page-prodecuclub ol#yearprogram > li dt.line4,
      .cate-service ol.yearprogram > li dt.line1,
      .cate-service ol.yearprogram > li dt.line2,
      .cate-service ol.yearprogram > li dt.line3,
      .cate-service ol.yearprogram > li dt.line4,
      .cate-service ol#yearprogram > li dt.line1,
      .cate-service ol#yearprogram > li dt.line2,
      .cate-service ol#yearprogram > li dt.line3,
      .cate-service ol#yearprogram > li dt.line4,
      .page-template-tpl-service ol.yearprogram > li dt.line1,
      .page-template-tpl-service ol.yearprogram > li dt.line2,
      .page-template-tpl-service ol.yearprogram > li dt.line3,
      .page-template-tpl-service ol.yearprogram > li dt.line4,
      .page-template-tpl-service ol#yearprogram > li dt.line1,
      .page-template-tpl-service ol#yearprogram > li dt.line2,
      .page-template-tpl-service ol#yearprogram > li dt.line3,
      .page-template-tpl-service ol#yearprogram > li dt.line4 {
        font-size: 16px;
        font-size: 1.6rem; }
      .page-prodecuclub ol.yearprogram > li dt br,
      .page-prodecuclub ol#yearprogram > li dt br,
      .cate-service ol.yearprogram > li dt br,
      .cate-service ol#yearprogram > li dt br,
      .page-template-tpl-service ol.yearprogram > li dt br,
      .page-template-tpl-service ol#yearprogram > li dt br {
        display: none; }
    .page-prodecuclub ol.yearprogram > li dd,
    .page-prodecuclub ol#yearprogram > li dd,
    .cate-service ol.yearprogram > li dd,
    .cate-service ol#yearprogram > li dd,
    .page-template-tpl-service ol.yearprogram > li dd,
    .page-template-tpl-service ol#yearprogram > li dd {
      font-size: 13px;
      font-size: 1.3rem; }
      .page-prodecuclub ol.yearprogram > li dd ul > ul,
      .page-prodecuclub ol#yearprogram > li dd ul > ul,
      .cate-service ol.yearprogram > li dd ul > ul,
      .cate-service ol#yearprogram > li dd ul > ul,
      .page-template-tpl-service ol.yearprogram > li dd ul > ul,
      .page-template-tpl-service ol#yearprogram > li dd ul > ul {
        margin-left: 0;
        margin-bottom: 0; }
    .page-prodecuclub ol.yearprogram > li:before,
    .page-prodecuclub ol#yearprogram > li:before,
    .cate-service ol.yearprogram > li:before,
    .cate-service ol#yearprogram > li:before,
    .page-template-tpl-service ol.yearprogram > li:before,
    .page-template-tpl-service ol#yearprogram > li:before {
      border-width: 20px; }
  .page-prodecuclub .optionblock,
  .cate-service .optionblock,
  .page-template-tpl-service .optionblock {
    margin: 2rem 0rem;
    padding: 0; }
    .page-prodecuclub .optionblock p,
    .cate-service .optionblock p,
    .page-template-tpl-service .optionblock p {
      line-height: 1.5;
      margin: 2rem; }
    .page-prodecuclub .optionblock p.img,
    .cate-service .optionblock p.img,
    .page-template-tpl-service .optionblock p.img {
      margin: 0; }
      .page-prodecuclub .optionblock p.img img,
      .cate-service .optionblock p.img img,
      .page-template-tpl-service .optionblock p.img img {
        float: none;
        margin: 0;
        width: 100%; }
    .page-prodecuclub .optionblock p.label img,
    .cate-service .optionblock p.label img,
    .page-template-tpl-service .optionblock p.label img {
      width: 70px; }
    .page-prodecuclub .optionblock p.btn,
    .cate-service .optionblock p.btn,
    .page-template-tpl-service .optionblock p.btn {
      padding: 0; }
    .page-prodecuclub .optionblock h4,
    .cate-service .optionblock h4,
    .page-template-tpl-service .optionblock h4 {
      padding: 0;
      margin: 0 1rem 1rem;
      font-size: 20px;
      font-size: 2rem; }
  .page-prodecuclub .pro-voice,
  .cate-service .pro-voice,
  .page-template-tpl-service .pro-voice {
    padding-bottom: 0; }
    .page-prodecuclub .pro-voice dl,
    .cate-service .pro-voice dl,
    .page-template-tpl-service .pro-voice dl {
      margin-bottom: 20px; }
    .page-prodecuclub .pro-voice dt,
    .cate-service .pro-voice dt,
    .page-template-tpl-service .pro-voice dt {
      float: none;
      margin: 0 auto; }
    .page-prodecuclub .pro-voice dd,
    .cate-service .pro-voice dd,
    .page-template-tpl-service .pro-voice dd {
      width: auto;
      padding: 15px;
      margin: 15px 0 0;
      float: none;
      border-radius: 10px;
      line-height: 1.4; }
    .page-prodecuclub .pro-voice dd:before,
    .cate-service .pro-voice dd:before,
    .page-template-tpl-service .pro-voice dd:before {
      top: -40px;
      left: 60px;
      border-color: transparent transparent #F3F0EA transparent; }
  .page-prodecuclub .helps dl.help,
  .cate-service .helps dl.help,
  .page-template-tpl-service .helps dl.help {
    margin: 2rem 0;
    min-height: auto; }
    .page-prodecuclub .helps dl.help dt,
    .cate-service .helps dl.help dt,
    .page-template-tpl-service .helps dl.help dt {
      margin-left: 0; }
    .page-prodecuclub .helps dl.help dd,
    .cate-service .helps dl.help dd,
    .page-template-tpl-service .helps dl.help dd {
      margin-left: 0; }
    .page-prodecuclub .helps dl.help dd.img,
    .cate-service .helps dl.help dd.img,
    .page-template-tpl-service .helps dl.help dd.img {
      position: relative;
      width: auto;
      top: auto;
      left: auto;
      margin-left: 0;
      margin-bottom: 1rem; }
  .page-prodecuclub .casetiles dl.casetile,
  .cate-service .casetiles dl.casetile,
  .page-template-tpl-service .casetiles dl.casetile {
    position: relative;
    border-top: 1px dotted #49300A;
    width: auto !important;
    margin: 0 !important;
    padding: 10px 0;
    float: none; }
    .page-prodecuclub .casetiles dl.casetile dt,
    .cate-service .casetiles dl.casetile dt,
    .page-template-tpl-service .casetiles dl.casetile dt {
      margin-left: 90px;
      margin-bottom: 0; }
    .page-prodecuclub .casetiles dl.casetile dd,
    .cate-service .casetiles dl.casetile dd,
    .page-template-tpl-service .casetiles dl.casetile dd {
      margin-left: 90px; }
    .page-prodecuclub .casetiles dl.casetile dd.img,
    .cate-service .casetiles dl.casetile dd.img,
    .page-template-tpl-service .casetiles dl.casetile dd.img {
      position: absolute;
      top: 10px;
      left: 0;
      margin: 0;
      width: 80px; }
      .page-prodecuclub .casetiles dl.casetile dd.img img,
      .cate-service .casetiles dl.casetile dd.img img,
      .page-template-tpl-service .casetiles dl.casetile dd.img img {
        width: 100%;
        height: auto;
        display: block; }
  .page-prodecuclub ul#service_scrollnavi,
  .cate-service ul#service_scrollnavi,
  .page-template-tpl-service ul#service_scrollnavi {
    padding: 0;
    margin: 1rem; }
    .page-prodecuclub ul#service_scrollnavi li,
    .cate-service ul#service_scrollnavi li,
    .page-template-tpl-service ul#service_scrollnavi li {
      float: none;
      width: 100%;
      margin: 0.5rem 0; }
      .page-prodecuclub ul#service_scrollnavi li a,
      .cate-service ul#service_scrollnavi li a,
      .page-template-tpl-service ul#service_scrollnavi li a {
        background-size: cover;
        height: auto;
        line-height: 1.3em;
        padding: 0.5em; }
  .beforeafter dl {
    width: auto;
    margin: 2rem 4rem; }
  .beforeafter dl.before {
    float: none; }
  .beforeafter dl.after {
    float: none;
    margin-top: 80px; }
  .beforeafter dl.after::before {
    left: 50%;
    top: -56px;
    border-color: #C2B49C transparent transparent transparent;
    border-width: 40px 25px;
    margin-left: -25px; }
  .beforeafter dd img {
    max-width: 100%;
    display: block;
    margin-left: auto;
    margin-right: auto; }
  .beforeafter dd ul {
    margin: 0 0 0 2em; } }

.pc_none {
  display: none; }

@media only screen and (max-width: 480px) {
  .sp_none {
    display: none; }
  .pc_none {
    display: inline; }
  hr.pc_none,
  br.pc_none {
    display: block; } }

/*# sourceMappingURL=maps/style.css.map */
