@charset "UTF-8";
/*===============================

    Reset

================================*/
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

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

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

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

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background-repeat: no-repeat;
}

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

/*===============================

    Base

================================*/
html {
  color: #333333;
  font-size: 16px;
}

@media screen and (max-width: 320px) {
  html {
    font-size: 14px;
  }
}

body {
  font-family: 'Helvetica Neue',Arial,'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','ヒラギノ角ゴシック','Hiragino Sans',YuGothic,'Yu Gothic','メイリオ',Meiryo,sans-serif;
}

p {
  line-height: 1.8;
}

a {
  color: #333333;
  text-decoration: none;
  -webkit-transition: all .3s;
  transition: all .3s;
}

img, svg {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

.bgImage {
  background-position: center;
  background-size: cover;
  padding-top: 66.66667%;
  background-repeat: no-repeat;
}

.inner {
  max-width: 1024px;
  margin: auto;
  padding: 0 14px;
}

/*===============================

    Utility

================================*/
.fixedBgImg {
  position: relative;
}

.fixedBgImg::before {
  content: "";
  display: block;
  width: 100%;
  height: 100vh;
  background: url(../images/bg.jpg);
  background-size: cover;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
}

.huti {
  text-shadow: #333333 2px 0px, #333333 -2px 0px, #333333 0px -2px, #333333 0px 2px, #333333 2px 2px, #333333 -2px 2px, #333333 2px -2px, #333333 -2px -2px, #333333 1px 2px, #333333 -1px 2px, #333333 1px -2px, #333333 -1px -2px, #333333 2px 1px, #333333 -2px 1px, #333333 2px -1px, #333333 -2px -1px;
}

.txt-center {
  text-align: center;
}

.txt-right {
  text-align: right;
}

.txt-bold {
  font-weight: bold;
}

.txt-link {
  color: #FFBA0F;
  text-decoration: underline;
  display: inline-block;
}

.vrtTxt {
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
}

.widthMax {
  margin: 0 calc(50% - 50vw);
}

.stretchedLink::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(0, 0, 0, 0);
}

.hukidashi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-weight: bold;
  text-align: center;
}

.hukidashi::before, .hukidashi::after {
  content: "";
  display: block;
  width: 0.125rem;
  background-color: #333333;
}

.hukidashi::before {
  -webkit-transform: rotate(-10deg);
  transform: rotate(-10deg);
  margin-right: 0.5em;
}

.hukidashi::after {
  -webkit-transform: rotate(10deg);
  transform: rotate(10deg);
  margin-left: 0.5em;
}

.iframeWrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.iframeWrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.flexbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.lock {
  overflow: hidden;
}

@media screen and (min-width: 769px) {
  .flexbox-pc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}

@media screen and (max-width: 768px) {
  .pc {
    display: none;
  }
}

@media screen and (min-width: 769px) {
  .sp {
    display: none;
  }
}

/*===============================

    animation

================================*/
.effectFadeIn {
  opacity: 0;
  -webkit-transition: all 3s;
  transition: all 3s;
}

.effectFadeIn.effectScroll {
  opacity: 1;
}

.effectFadeUp {
  opacity: 0;
  -webkit-transform: translate(0, 45px);
  transform: translate(0, 45px);
  -webkit-transition: all 1s;
  transition: all 1s;
}

.effectFadeUp.effectScroll {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

.effectFadeRight {
  opacity: 0;
  -webkit-transform: translate(45px, 0);
  transform: translate(45px, 0);
  -webkit-transition: all 1s;
  transition: all 1s;
}

.effectFadeRight.effectScroll {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

.effectFadeLeft {
  opacity: 0;
  -webkit-transform: translate(-45px, 0);
  transform: translate(-45px, 0);
  -webkit-transition: all 1s;
  transition: all 1s;
}

.effectFadeLeft.effectScroll {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

.effectZoom {
  -webkit-transition: all 6s;
  transition: all 6s;
}

.effectZoom.effectScroll {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

.effectMaker {
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, rgba(253, 242, 161, 0.6)));
  background: -webkit-linear-gradient(transparent 50%, rgba(253, 242, 161, 0.6) 50%);
  background: linear-gradient(transparent 50%, rgba(253, 242, 161, 0.6) 50%);
  background-repeat: no-repeat;
  background-size: 200% 100%;
  background-position: 200% 0;
  -webkit-transition: 2.5s;
  transition: 2.5s;
}

.effectMaker.effectScroll {
  background-position: 100% 0;
}

.floatingEffect {
  -webkit-animation: fuwafuwa 3s infinite;
  animation: fuwafuwa 3s infinite;
}

@-webkit-keyframes fuwafuwa {
  0% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
  50% {
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }
  100% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}

@keyframes fuwafuwa {
  0% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
  50% {
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }
  100% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}

/*===============================

    Layout

================================*/
/*
    メインコンテンツ上下余白
================================*/
#mainContents {
  padding-top: 62px;
}

@media screen and (min-width: 769px) {
  #mainContents {
    padding-top: 0;
  }
}

@media all and (-ms-high-contrast: none) {
  #mainContents {
    overflow: hidden;
  }
}

/*
    カラムレイアウト
================================*/
@media screen and (min-width: 769px) {
  .column-2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}

.column-2_main {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.column-2_side {
  margin-top: 30px;
}

@media screen and (min-width: 769px) {
  .column-2_side {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 250px;
    flex: 0 0 250px;
    padding: 0 50px 0 0;
    margin-top: 0;
    padding: 0 0 0 50px;
  }
}

/*
    余白
================================*/
.sc {
  margin-top: 76px;
}

.sc_content {
  margin-top: 38px;
}

.sc_btn {
  margin-top: 60px;
}

.page_content {
  margin-top: 2.125rem;
}

@media screen and (min-width: 769px) {
  .page_content {
    margin-top: 60px;
  }
}

/*
    小見出し
================================*/
/*===============================

    Component

================================*/
/*
    サイトヘッダー
================================*/
#siteHeader {
  width: 100%;
  background-color: rgba(255, 255, 255, 0.9);
  padding: 0 0 0 8px;
  position: absolute;
  z-index: 1000;
}

#siteHeader > .flexbox {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

#siteHeader > .flexbox .siteName {
  margin-right: auto;
  width: 157px;
}

@media screen and (min-width: 769px) {
  #siteHeader > .flexbox .siteName {
    width: auto;
  }
}

#siteHeader > .flexbox .gNavi {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

#siteHeader .sitelogo {
  width: 140px;
  max-height: 60px;
}

#siteHeader .siteName {
  font-size: 24px;
}

#siteHeader .siteDesc {
  font-size: 0.625rem;
  line-height: 1.4;
  margin-right: 1rem;
}

@media screen and (min-width: 769px) {
  #siteHeader {
    padding: 0 0 0 20px;
  }
}

.gNavi_menu.flexbox {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.gNavi_menu.flexbox .gNavi_menu_item {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 115px;
  flex: 0 1 115px;
}

.gNavi_menu.flexbox .gNavi_contact {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 185px;
  flex: 0 0 185px;
  margin-left: 1rem;
}

.gNavi_menu_item {
  line-height: 1.2;
  font-size: 0.875rem;
}

.gNavi_menu_item a {
  display: block;
  padding: 32px 0.5rem;
  text-align: center;
}

.gNavi_menu_item a:hover {
  background-color: #FFFFFF;
}

.gNavi_contact {
  font-size: 0.6875rem;
  color: #4D4D4D;
  font-weight: bold;
  background-color: #FFBA0F;
}

.gNavi_contact a {
  padding: 7px 8px;
}

.gNavi_contact a:hover {
  background-color: #FFBA0F;
  opacity: 0.7;
}

.gNavi_contact_tel {
  display: block;
  font-size: 1.375rem;
  line-height: 1.59091;
  padding-left: calc(15px + 0.25em);
  position: relative;
}

.gNavi_contact_tel::before {
  content: "";
  display: block;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  background-image: url(../images/common/icon-phone.svg);
}

#siteHeader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 99;
}

/*
    ドロワーメニュー（sp）
================================*/
#spDrawerToggle {
  padding: 18px 16px;
  -webkit-transition: ease .3s;
  transition: ease .3s;
  background-color: #FFBA0F;
}

#spDrawerToggle span {
  position: relative;
  display: block;
  height: 2px;
  width: 34px;
  background: #333333;
  -webkit-transition: ease .3s;
  transition: ease .3s;
}

#spDrawerToggle span:nth-child(1) {
  top: 0;
}

#spDrawerToggle span:nth-child(2) {
  margin: 10px 0;
}

#spDrawerToggle span:nth-child(3) {
  top: 0;
}

#spDrawerToggle.active {
  background-color: #FFBA0F;
}

#spDrawerToggle.active span:nth-child(1) {
  top: 12px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

#spDrawerToggle.active span:nth-child(2) {
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  opacity: 0;
}

#spDrawerToggle.active span:nth-child(3) {
  top: -12px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

#spDrawer {
  overflow: auto;
  position: fixed;
  top: 62px;
  left: 0;
  width: 100%;
  height: calc(100% - 62px);
  padding: 1rem 1rem;
  -webkit-transition: all .4s;
  transition: all .4s;
  opacity: 0;
  z-index: -99;
  background-color: #FFBA0F;
  -webkit-transition: ease .3s;
  transition: ease .3s;
}

#spDrawer.active {
  opacity: 1;
  z-index: 99;
}

#spDrawer .acdnMenu_item_tgl {
  border-color: #333333;
}

#spDrawer .acdnMenu_2nd_item {
  border-color: #333333;
  background-color: #FFD672;
}

#spDrawer .ctaNavi-sp {
  margin: 1.125rem auto 0;
  max-width: 320px;
}

#spDrawer .ctaNavi-sp_tel-wrap {
  padding: 10px;
  background-color: #FFFFFF;
  border-radius: 4px;
}

#spDrawer .ctaNavi-sp_tel {
  color: #FFBA0F;
  margin-top: 0;
}

#spDrawer .ctaNavi-sp_tel span {
  color: #333333;
}

#spDrawer .ctaNavi-sp_btn {
  background-color: #333333;
  border-color: #333333;
  color: #FFFFFF;
  padding-left: 50px;
  padding-right: 0;
}

#spDrawer .ctaNavi-sp_btn::after {
  background-image: url(../images/common/icon_btn_mail-white.svg);
  left: 1em;
}

/*
    コンテンツページヘッダー
================================*/
.pageHeader {
  position: relative;
}

@media screen and (min-width: 769px) {
  .pageHeader {
    margin-top: 0;
  }
}

.pageHeader_img {
  height: 27vh;
  max-height: 465px;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

@media screen and (min-width: 769px) {
  .pageHeader_img {
    height: 90vh;
  }
}

.pageHeader_body {
  max-width: 1024px;
  padding: 0 14px;
  text-align: right;
  line-height: 1.5;
  width: 100%;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

@media screen and (min-width: 769px) {
  .pageHeader_body {
    text-align: right;
    top: calc(50% + 40px);
  }
}

.pageHeader_ttl, .pageHeader_txt {
  margin-left: auto;
}

.pageHeader_ttl {
  color: #333333;
  font-weight: bold;
  font-size: 1.125rem;
  line-height: 1.8;
}

.pageHeader_ttl::after {
  content: "";
  display: block;
  width: 70%;
  height: 3px;
  background-color: #FFBA0F;
  margin-left: auto;
}

@media screen and (min-width: 769px) {
  .pageHeader_ttl::after {
    height: 5px;
    width: 100%;
    max-width: 556px;
  }
}

@media screen and (min-width: 769px) {
  .pageHeader_ttl {
    font-size: 1.75rem;
  }
}

.pageHeader_txt {
  color: #333333;
  font-weight: bold;
  font-size: 0.875rem;
  line-height: 1.8;
  margin-top: 0.42857em;
}

@media screen and (min-width: 769px) {
  .pageHeader_txt {
    font-size: 1.4375rem;
  }
}

.pageHeader_ttl-tape {
  font-size: 1.0625rem;
  font-weight: bold;
  padding: 0.75rem 14px;
  line-height: 1.23529;
  text-align: center;
  background-color: rgba(255, 255, 255, 0.71);
  letter-spacing: 2.5px;
  width: 100%;
  position: absolute;
  left: 0;
  top: calc(50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media screen and (min-width: 769px) {
  .pageHeader_ttl-tape {
    padding: 35px 14px;
    font-size: 1.5625rem;
    top: calc(50% + 41px);
  }
}

/*
    パンくずリスト
================================*/
.breadcrumbs {
  font-size: 0.6875rem;
  line-height: 1.5;
  padding: 0.875rem 0;
  background-color: #F0F0F0;
}

.breadcrumbs .flexbox {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

.breadcrumbs_item + .breadcrumbs_item {
  margin-left: 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.breadcrumbs_item + .breadcrumbs_item::before {
  content: "";
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: solid 1px #333333;
  border-right: solid 1px #333333;
  margin-right: 8px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media screen and (min-width: 769px) {
  .breadcrumbs {
    font-size: 1rem;
  }
}

/*
    セクション
================================*/
.sc_header_ttl {
  font-size: 1.125rem;
  line-height: 1.5;
  text-align: center;
  letter-spacing: 1px;
  font-weight: bold;
}

@media screen and (min-width: 769px) {
  .sc_header_ttl {
    font-size: 1.4375rem;
  }
}

.sc_header_ttl-primary {
  padding: 0.875rem 1rem 0.5625rem;
  background-color: #FFBA0F;
}

@media screen and (min-width: 769px) {
  .sc_header_ttl-primary {
    padding: 1.5rem 1rem 1.375rem;
  }
}

.sc_header_ttl-primaryLight {
  padding: 0.875rem 1rem 0.5625rem;
  background-color: #FFE8C0;
}

@media screen and (min-width: 769px) {
  .sc_header_ttl-primaryLight {
    padding: 1.5rem 1rem 1.375rem;
  }
}

.sc_header_ttl-tp {
  color: #FFBA0F;
  font-size: 1.125rem;
  line-height: 1.5;
  font-weight: bold;
}

@media screen and (min-width: 769px) {
  .sc_header_ttl-tp {
    font-size: 1.5625rem;
    line-height: 1.25;
  }
}

.sc_content_block {
  margin-top: 3.125rem;
}

.sc_content_read {
  text-align: center;
  font-size: 0.875rem;
}

@media screen and (min-width: 769px) {
  .sc_content_read {
    font-size: 1.125rem;
  }
}

.sc_content_hd-unb {
  color: #FFBA0F;
  font-size: 1.125rem;
  line-height: 1.66667;
  text-align: center;
  margin-top: 4.75rem;
}

.sc_content_hd-unb::after {
  content: "";
  display: block;
  width: 110px;
  height: 5px;
  margin: 18px auto;
  background-color: #FFBA0F;
}

@media screen and (min-width: 769px) {
  .sc_content_hd-unb {
    font-size: 1.5625rem;
    line-height: 1.44;
  }
  .sc_content_hd-unb::after {
    width: 180px;
  }
}

.sc_content_hd-lb {
  font-size: 1.125rem;
  line-height: 1.44444;
  border-left: solid 5px #333333;
  padding-left: 0.5rem;
}

@media screen and (min-width: 769px) {
  .sc_content_hd-lb {
    font-size: 1.4375rem;
    line-height: 1.47826;
    border-left: solid 6px #333333;
    padding-left: 1rem;
  }
}

.sc_content_hd-pr {
  color: #FF8B00;
  font-weight: bold;
  text-align: center;
  line-height: 1.875;
  margin-top: 1.375rem;
}

@media screen and (min-width: 769px) {
  .sc_content_hd-pr {
    text-align: left;
    font-size: 1.375rem;
    line-height: 1.59091;
    margin-top: 1.75rem;
  }
}

/*
    製品情報
================================*/
.product > .flexbox {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -1.3125rem 0 0;
}

.product > .flexbox .product_item {
  width: 100%;
  margin: 1.3125rem 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.product > .flexbox .product_body {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.product > .flexbox .product_body .product_fotter {
  margin-top: auto;
}

@media screen and (min-width: 481px) {
  .product > .flexbox {
    margin: -3% 0 0 -3%;
  }
  .product > .flexbox .product_item {
    width: 47%;
    margin: 3% 0 0 3%;
  }
}

@media screen and (min-width: 769px) {
  .product > .flexbox {
    margin: -3% 0 0 -2%;
  }
  .product > .flexbox .product_item {
    width: 31.333%;
    margin: 3% 0 0 2%;
  }
}

.product_item {
  border-radius: 3px;
  -webkit-box-shadow: 0 0 3px rgba(30, 30, 30, 0.75);
  box-shadow: 0 0 3px rgba(30, 30, 30, 0.75);
  overflow: hidden;
}

.product_img .bgImage {
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  padding-top: 52.23881%;
}

@media screen and (min-width: 769px) {
  .product_img .bgImage {
    padding-top: 66.24204%;
  }
}

.product_body {
  padding: 10px 7px;
}

.product_ttl {
  font-size: 1.1875rem;
  line-height: 1.5;
  color: #FFBA0F;
  font-weight: bold;
  border-bottom: solid 2px #FFBA0F;
  padding: 0 7px;
}

.product p {
  font-size: 0.875rem;
  margin-top: 14px;
  padding: 0 7px;
}

.product_fotter {
  text-align: right;
}

.product_btn {
  width: 100%;
  font-weight: bold;
  color: #FFBA0F;
  display: inline-block;
  position: relative;
  padding: 0.5rem 1.9375rem 0.4375rem 0.5rem;
}

.product_btn::after {
  content: "";
  display: block;
  width: 1.625rem;
  height: 1.625rem;
  background-image: url(../images/common/icon_btn_arrow-primary.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  margin-left: 5px;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.product_btn::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 100vh;
  position: absolute;
  bottom: 0;
  left: 0;
}

.product_btn:hover {
  opacity: 0.7;
}

/*
    制作実績
================================*/
.catNavi {
  margin-bottom: 2.875rem;
}

@media screen and (min-width: 769px) {
  .catNavi {
    margin-top: 40px;
  }
}

.catNavi_ttl {
  font-size: 1.125rem;
  text-align: center;
  font-weight: bold;
}

.catNavi_menu {
  padding: 1.375rem 0;
}

.catNavi_menu > .flexbox {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -1em 0 0 -1em;
}

.catNavi_menu_item {
  font-size: 0.875rem;
  color: #4D4D4D;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 1em 0 0 1em;
}

.catNavi_menu_item::after {
  content: "|";
  display: inline-block;
  margin-left: 1em;
  margin-top: -2px;
}

.catNavi_menu_item-ttl {
  font-size: 1.125rem;
}

.catNavi_menu_item-ttl::after {
  font-size: 0.875rem;
}

.catNavi_menu_item a {
  color: #4D4D4D;
  text-decoration: underline;
}

.catNavi_current_ttl {
  color: #FFBA0F;
  font-weight: bold;
  font-size: 1.125rem;
  line-height: 1.44444;
  position: relative;
  padding: 1.375rem 0 0 1em;
  border-top: solid 3px #FFBA0F;
}

.catNavi_current_ttl::before {
  content: "";
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: solid 2px #FFBA0F;
  border-right: solid 2px #FFBA0F;
  position: absolute;
  top: 1.66667em;
  left: 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: all .5s;
  transition: all .5s;
}

.works .flexbox {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -1.3125rem 0 0;
}

.works .flexbox .works_item {
  width: 100%;
  margin: 1.3125rem 0 0;
}

@media screen and (min-width: 481px) {
  .works .flexbox {
    margin: -3% 0 0 -3%;
  }
  .works .flexbox .works_item {
    width: 47%;
    margin: 3% 0 0 3%;
  }
}

@media screen and (min-width: 769px) {
  .works .flexbox {
    margin: -2.211% 0 0 -2.211%;
  }
  .works .flexbox .works_item {
    width: 31.122%;
    margin: 2.211% 0 0 2.211%;
  }
}

.works_item {
  position: relative;
}

.works_img .bgImage {
  padding-top: 80.64516%;
}

.works_body {
  width: 100%;
  padding: 8px 10px 5px;
  background-color: rgba(51, 51, 51, 0.81);
  position: absolute;
  left: 0;
  bottom: 0;
}

.works_cat {
  display: inline-block;
  color: #FFFFFF;
  background-color: #FFBA0F;
  font-size: 0.9375rem;
  line-height: 1.4;
  padding: 2px 1em;
}

.works_client {
  color: #FFFFFF;
  font-size: 0.875rem;
  line-height: 1.5;
  margin-top: 8px;
}

.works_client_cat {
  text-decoration: underline;
}

/*
    制作実績モーダル
================================*/
.works_modal {
  max-width: 570px;
  margin: auto;
}

@media screen and (min-width: 769px) {
  .works_modal_meta.flexbox-pc {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
  .works_modal_meta.flexbox-pc .works_client {
    margin-left: 1rem;
  }
}

.works_modal_meta {
  margin-top: 0.75rem;
}

.works_modal_meta .works_client {
  color: #333333;
}

.works_modal_txt {
  margin-top: 1rem;
}

/*
    CTAナビ（PC）
================================*/
@media screen and (min-width: 769px) {
  .ctaNaviSect .sc_header_ttl {
    font-size: 1.3125rem;
  }
}

@media screen and (min-width: 769px) {
  .ctaNaviSect .sc_header_ttl-primary {
    padding: 2.5625rem 1rem 2.3125rem;
  }
}

.ctaNavi-pc > .flexbox .ctaNavi-pc_item {
  width: 32%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.ctaNavi-pc_header_ttl {
  font-weight: bold;
  font-size: 1.1875rem;
  text-align: center;
  margin: 3.125rem 0;
}

.ctaNavi-pc_item {
  text-align: center;
  position: relative;
  border: solid 3px #FFBA0F;
  border-radius: 7px;
  padding: 1.125rem;
  margin-bottom: 4.25rem;
}

.ctaNavi-pc_ttl {
  margin-top: 0.625rem;
  font-size: 0.9375rem;
  font-weight: bold;
}

.ctaNavi-pc_num {
  font-size: 1.375rem;
  line-height: 1.36364;
  font-weight: bold;
}

.ctaNavi-pc_smalltxt {
  font-size: 0.75rem;
  line-height: 1.41667;
  font-weight: bold;
}

.ctaNavi-pc_txt {
  margin-top: 0.75rem;
  font-size: 1.0625rem;
  width: 100%;
  position: absolute;
  top: 100%;
  left: 0;
}

.ctaNavi-pc a:hover {
  opacity: 0.7;
}

/*
    CTAナビ（SP）
================================*/
.ctaNavi-sp {
  padding: 1.25rem 14px;
  background-color: #FFBA0F;
  text-align: center;
}

.ctaNavi-sp_header_ttl {
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
  color: #FFFFFF;
}

.ctaNavi-sp_tel {
  font-weight: bold;
  line-height: 1.2;
  margin-top: 0.75rem;
}

.ctaNavi-sp_tel span {
  display: block;
  font-size: 1.8125rem;
}

.ctaNavi-sp_tel span::before {
  content: "";
  display: inline-block;
  background-size: contain;
  background-image: url(../images/common/icon_btn_phone.svg);
  width: 18px;
  height: 20px;
}

.ctaNavi-sp_open {
  font-size: 0.8125rem;
  line-height: 1.38462;
}

.ctaNavi-sp_btn {
  margin-top: 10px;
}

/*
    カード
================================*/
.cardWraper .flexbox {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

.cardWraper .flexbox .card {
  width: calc(94.9999% / 4);
  margin: 1.25% 0;
}

.card {
  background-color: #FFFFFF;
  -webkit-box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.25);
  box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.25);
  text-align: center;
}

.card div + div {
  margin-top: 20px;
}

.card_header {
  font-size: 0.9375rem;
}

.card_body {
  font-size: 0.875rem;
}

/*
    特徴
================================*/
.feature > .flexbox-pc .feature_item {
  margin-top: 1rem;
}

@media screen and (min-width: 769px) {
  .feature > .flexbox-pc .feature_item {
    margin-top: 0;
    width: calc(96% / 3);
  }
}

/*
    リスト
================================*/
.list {
  line-height: 1.8;
}

.list-gd ul li {
  position: relative;
  padding-left: 1.5em;
}

.list-gd ul li::before {
  position: absolute;
  top: 0;
  left: 0;
  font-family: "Font Awesome 5 Free";
  font-weight: bold;
  content: "\f00c";
  display: block;
}

/*
    ボタン
================================*/
.btnArea .hukidashi {
  color: #00B900;
}

.btnArea .hukidashi::before, .btnArea .hukidashi::after {
  background-color: #00B900;
}

.flexbox-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  max-width: 750px;
  margin: auto;
}

.flexbox-btn .btn {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 320px;
  flex: 1 1 320px;
}

.btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  width: 100%;
  max-width: 320px;
  padding: 0.85714em 0.5em;
  border: solid 2px #FFBA0F;
  text-align: center;
  line-height: 1.5;
  font-weight: bold;
  font-size: 0.875rem;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

.btn-center {
  margin-left: auto;
  margin-right: auto;
}

.btn-right {
  margin-left: auto;
}

@media screen and (min-width: 769px) {
  .btn {
    font-size: 1rem;
  }
}

.btn:hover {
  opacity: 0.7;
}

.btn-primary {
  background-color: #FFBA0F;
  color: #FFFFFF;
  border-color: #FFBA0F;
}

.btn-gray {
  background-color: #333333;
  color: #FFFFFF;
  border-color: #333333;
}

.btn-mail {
  background-color: #FFFFFF;
  border-color: #FFFFFF;
  padding-right: 50px;
}

.btn-mail::after {
  content: "";
  display: block;
  width: 36px;
  height: 26px;
  background-image: url(../images/common/icon_btn_mail.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  right: 1em;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.btn-arrow::after {
  content: "";
  display: block;
  width: 0.5em;
  height: 0.5em;
  border-right: solid 2px #FFFFFF;
  border-top: solid 2px #FFFFFF;
  margin-left: 0.5em;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.btn-back {
  color: #FFFFFF;
  background-color: #707070;
  border: solid 1px #707070;
}

.btn-back::after {
  content: "";
  display: block;
  width: 0.5em;
  height: 0.5em;
  border-left: solid 1px #FFFFFF;
  border-bottom: solid 1px #FFFFFF;
  position: absolute;
  top: 50%;
  left: 16px;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}

/*
    ページネーション
================================*/
.pagenation {
  margin-top: 1.875rem;
}

@media screen and (min-width: 769px) {
  .pagenation {
    margin-top: 50px;
  }
}

.pagenation .flexbox {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.pagenation_item {
  margin: 5px;
  border: solid 1px #FFBA0F;
  min-width: 2.375rem;
}

.pagenation_item a {
  display: block;
  padding: 13px 5px;
  background-color: #FFFFFF;
  text-align: center;
}

.pagenation_item a:hover {
  color: #FFFFFF;
  background-color: #FFBA0F;
}

.pagenation_item.current a {
  color: #FFFFFF;
  background-color: #FFBA0F;
}

.pagenation_btn-prev a, .pagenation_btn-next a {
  padding: 13px 22px;
}

/*
    サムネ付きスライダー
================================*/
.slider_main .slick-slide img {
  width: 100%;
}

.slider_thumb {
  margin-top: 1rem;
}

.slider_thumb li {
  margin: 0 0.5rem 0;
}

.slider_thumb .slick-prev, .slider_thumb .slick-next {
  z-index: 2;
  width: 1.5rem;
  height: 1.5rem;
}

.slider_thumb .slick-prev {
  left: 0.5rem;
}

.slider_thumb .slick-next {
  right: 0.5rem;
}

.slider_thumb .slick-prev:before, .slider_thumb .slick-next:before {
  font-family: "Font Awesome 5 Free";
  font-weight: bold;
  color: #FFBA0F;
  opacity: 1;
}

.slider_thumb .slick-prev:before {
  content: "\f137";
}

.slider_thumb .slick-next:before {
  content: "\f138";
}

/*
    カードレイアウト
================================*/
.card-hrz {
  background-color: #fff;
  padding: 22px;
  border: solid 1px #707070;
}

.card-hrz.flexbox {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.card-hrz.flexbox .card-hrz_image {
  width: 100%;
  margin-bottom: 30px;
}

.card-hrz.flexbox .card-hrz_body {
  width: 100%;
}

@media screen and (min-width: 769px) {
  .card-hrz.flexbox .card-hrz_image {
    width: 42%;
  }
  .card-hrz.flexbox .card-hrz_body {
    width: 58%;
    padding-left: 58px;
  }
}

.card-hrz + .card-hrz {
  margin-top: 20px;
}

.card-hrz_image .bgImage {
  padding-top: 65.16291%;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.card-hrz_body_title {
  margin-top: 30px;
  font-size: 1.25rem;
  font-weight: bold;
}

.card-hrz_body_text {
  margin-top: 20px;
  color: #999999;
  font-size: 0.875rem;
  line-height: 1.57143;
}

.card-vrt {
  background-color: #fff;
  padding: 22px;
  border: solid 1px #707070;
}

.card-vrt_image .bgImage {
  padding-top: 65.16291%;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.card-vrt_body_title {
  margin-top: 30px;
  font-size: 1.25rem;
  font-weight: bold;
}

.card-vrt_body_text {
  margin-top: 20px;
  color: #999999;
  font-size: 0.875rem;
  line-height: 1.57143;
}

.tagInfo {
  margin: -0.25rem;
}

.tagInfo .tag {
  display: inline-block;
  margin: 0.25rem;
}

.tagInfo .date {
  color: #333333;
}

.tag {
  font-size: 12px;
  padding: 0.375rem 0.625rem;
  text-align: center;
  color: #fff;
  font-weight: bold;
  background-color: #3F51B5;
  -webkit-box-shadow: 0px 3px 6px #00000029;
  box-shadow: 0px 3px 6px #00000029;
  border-radius: 2px;
}

/*
    タブ
================================*/
.tab_btn {
  float: left;
}

.tab_btn.btn {
  width: 49%;
  max-width: 100%;
  margin-top: 0;
  margin-left: 2%;
  background-color: #BEBABA;
  border-color: #BEBABA;
  color: #333333;
  -webkit-transition: all .2s;
  transition: all .2s;
}

.tab_btn.btn:nth-of-type(odd) {
  margin-left: 0;
}

.tab_btn.btn:nth-of-type(3), .tab_btn.btn:nth-of-type(4) {
  margin-top: 2%;
}

.tab_btn.btn:hover {
  background-color: #FFBA0F;
  border-color: #FFBA0F;
  color: #FFFFFF;
}

@media screen and (min-width: 769px) {
  .tab_btn.btn {
    width: 23.875%;
    margin-left: 1.5%;
  }
  .tab_btn.btn:nth-of-type(odd) {
    margin-left: 1.5%;
  }
  .tab_btn.btn:nth-of-type(3), .tab_btn.btn:nth-of-type(4) {
    margin-top: 0;
  }
  .tab_btn.btn:nth-of-type(1) {
    margin-left: 0;
  }
}

.tab_content {
  display: none;
  clear: both;
  overflow: hidden;
}

.tab #tab_btn-01:checked ~ #tab_content-01,
.tab #tab_btn-02:checked ~ #tab_content-02,
.tab #tab_btn-03:checked ~ #tab_content-03,
.tab #tab_btn-04:checked ~ #tab_content-04 {
  display: block;
}

.tab input:checked + .tab_btn {
  background-color: #FFBA0F;
  border-color: #FFBA0F;
  color: #FFFFFF;
}

.tab input[name="tab_btn"] {
  display: none;
}

.tab_content_inner {
  margin-top: 2rem;
}

.tab_content_ttl {
  font-size: 1.5rem;
  margin-bottom: 1rem;
}

/*
    横スクロール
================================*/
.hrzScr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  margin: 0 -14px;
  padding: 0 14px;
}

.hrzScr_item {
  -webkit-box-flex: 1;
  -ms-flex: 1 0 80%;
  flex: 1 0 80%;
}

@media screen and (min-width: 769px) {
  .hrzScr_item {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 340px;
    flex: 1 0 340px;
  }
}

.hrzScr_item + .hrzScr_item {
  margin-left: 1rem;
}

.hrzScr::after {
  content: "";
  display: block;
  -webkit-box-flex: 1;
  -ms-flex: 1 0 14px;
  flex: 1 0 14px;
}

/*
    gallery
================================*/
.gallery > .flexbox {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -2% 0 0 -2%;
}

.gallery > .flexbox .gallery_item {
  width: 48%;
  margin: 2% 0 0 2%;
}

@media screen and (min-width: 769px) {
  .gallery > .flexbox {
    margin: -1% 0 0 -1%;
  }
  .gallery > .flexbox .gallery_item {
    width: 24%;
    margin: 1% 0 0 1%;
  }
}

/*
    ページトップへ
================================*/
#siteFooter {
  position: relative;
}

#pageTop {
  position: absolute;
  right: 14px;
  bottom: 0;
}

#pageTop_btn {
  display: block;
  width: 50px;
  height: 50px;
  background-color: rgba(255, 255, 255, 0.75);
}

#pageTop_btn::before {
  content: "";
  display: block;
  width: 19%;
  height: 19%;
  border-top: 1px solid #FFBA0F;
  border-left: 1px solid #FFBA0F;
  position: absolute;
  top: 54%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg);
}

/*
    サイトフッター
================================*/
#siteFooter-pc {
  margin-top: 3.75rem;
  background-color: #FFBA0F;
  padding: 4.375rem 0;
}

#siteFooter-pc .copyright {
  font-size: 0.75rem;
  text-align: center;
}

.footer_content {
  padding-bottom: 1.25rem;
}

.footer_content.flexbox .footer_navi {
  width: 55.62%;
}

.footer_content.flexbox .footer_address {
  width: 44.38%;
}

.footer_navi {
  padding: 2.5rem 0 0;
}

.footer_navi > .flexbox {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  margin-top: -2.5rem;
}

.footer_navi > .flexbox .footer_menu {
  width: 33.333%;
  padding-right: 1rem;
  margin-top: 2.5rem;
}

.footer_menu_ttl {
  font-weight: bold;
  color: #FFFFFF;
  margin-bottom: 5px;
}

.footer_menu_item a {
  color: #FFFFFF;
  font-size: 0.875rem;
  line-height: 1.92857;
  position: relative;
  padding-left: 1em;
  display: inline-block;
}

.footer_menu_item a::before {
  content: "";
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: solid 1px #FFFFFF;
  border-right: solid 1px #FFFFFF;
  position: absolute;
  top: 0.85714em;
  left: 0;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  -webkit-transition: all .5s;
  transition: all .5s;
}

.footer_address {
  border-left: solid 2px #FFFFFF;
  padding: 2.5rem 0 0 4%;
  font-size: 0.875rem;
}

.footer_address .siteName {
  margin-bottom: 1.25rem;
}

.footer_address p {
  line-height: 1.35714;
}

.footer_address_tel {
  font-weight: bold;
  font-size: 1.75rem;
}

.footer_address_tel span {
  font-size: 1.3125rem;
}

.footer_bottom {
  padding-top: 1.25rem;
  border-top: solid 2px #FFFFFF;
}

.footer_bottom .footer_menu > .flexbox {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

.footer_bottom .footer_menu > .flexbox .footer_menu_item + .footer_menu_item {
  margin-left: 3.75rem;
}

#siteFooter-sp {
  margin-top: 1.625rem;
}

#siteFooter-sp .siteName {
  margin-top: 1.625rem;
  text-align: center;
}

#siteFooter-sp .acdnMenu {
  margin-top: 1.25rem;
}

#siteFooter-sp .footer_bottom {
  padding-top: 0.625rem;
}

#siteFooter-sp .footer_bottom .footer_menu {
  padding: 0 10px;
}

#siteFooter-sp .footer_bottom .footer_menu_item a {
  font-size: 0.6875rem;
  display: block;
  color: #333333;
  font-weight: bold;
}

#siteFooter-sp .footer_bottom .footer_menu_item a::before {
  border-color: #333333;
}

#siteFooter-sp .footer_bottom .footer_menu_item + .footer_menu_item {
  margin-left: 0.6875rem;
}

/*
    固定お問合せボタン
================================*/
.floatCtaBtn {
  display: block;
  position: fixed;
  top: 280px;
  right: 0;
  z-index: 98;
  -webkit-transition: all .3s;
  transition: all .3s;
  font-size: 0.625rem;
  line-height: 1.25;
  width: 47px;
  height: 125px;
  padding: 12px 6px;
  background-color: rgba(255, 186, 15, 0.7);
  text-align: center;
}

.floatCtaBtn_line {
  display: block;
  position: fixed;
  top: 430px;
  right: 0;
  z-index: 98;
  -webkit-transition: all .3s;
  transition: all .3s;
  font-size: 0.625rem;
  line-height: 1.25;
  width: 47px;
  height: 85px;
  padding: 12px 6px;
  background-color: rgba(0, 185, 0, 0.7);
  text-align: center;
}

.floatCtaBtn_icon {
  color: #FFFFFF;
  background-color: #4D4D4D;
  padding: 4px 1px;
}

.floatCtaBtn .vrtTxt, .floatCtaBtn_line .vrtTxt {
  font-weight: bold;
  margin: 10px auto 0;
}

@media screen and (min-width: 769px) {
  .floatCtaBtn .vrtTxt , .floatCtaBtn_line .vrtTxt {
    position: absolute;
    top: 50px;
    right: 50%;
    -webkit-transform: translate(50%, 0);
    transform: translate(50%, 0);
  }
}

@media screen and (min-width: 769px) {
  .floatCtaBtn {
    font-size: 0.75rem;
    width: 54px;
    top: 180px;
    height: 192px;
  }
.floatCtaBtn_line {
    font-size: 0.75rem;
    width: 54px;
    top: 390px;
    height: 120px;
  }
}

.floatCtaBtn:hover {
  opacity: 0.7;
}

/*
    トップスクロールボタン
================================*/
#topSrcBtn {
  margin: auto;
  background-color: #FFBA0F;
  width: 68px;
  height: 68px;
  border-radius: 50%;
  color: #FFFFFF;
  font-size: 12px;
  line-height: 1.16667;
  font-weight: bold;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

#topSrcBtn_icon {
  display: inline-block;
  width: 1rem;
  height: 1rem;
  border-top: solid 4px #FFFFFF;
  border-right: solid 4px #FFFFFF;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

/*
    アコーディオン
================================*/
.acdnMenu {
  background-color: #FFBA0F;
  font-size: 12px;
  font-weight: bold;
}

.acdnMenu_item_tgl {
  display: block;
  padding: 1em 14px;
  border-bottom: solid 1px #B3B3B3;
}

.acdnMenu_2nd_item {
  display: block;
  padding: 1em 14px;
  background-color: #FFFFFF;
  border-bottom: solid 1px #B3B3B3;
}

.acdnMenu .acdnMenu_item_tgl, .acdnMenu .acdnMenu_2nd_item {
  position: relative;
}

.acdnMenu .acdnMenu_item_tgl::after, .acdnMenu .acdnMenu_2nd_item::after {
  content: "";
  display: block;
  width: 0.5em;
  height: 0.5em;
  border-top: solid 1px #333333;
  border-right: solid 1px #333333;
  position: absolute;
  top: 50%;
  right: 14px;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  -webkit-transition: all .5s;
  transition: all .5s;
}

.acdnMenu .acdnMenu_item_tgl.active::after, .acdnMenu .acdnMenu_2nd_item.active::after {
  content: "";
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

.copyright {
  text-align: center;
  color: #FFBA0F;
  font-size: 0.75rem;
  padding: 1rem;
}

/*
    モーダルウィンドウ
================================*/
.modaal-container {
  max-width: 812px;
  border: solid 4px #FFBA0F;
}

@media screen and (min-width: 769px) {
  .modaal-content-container {
    padding: 60px 40px;
  }
}

.modaal-wrapper .modaal-close {
  display: none;
}

.modal_close {
  display: block;
  border: solid 4px #FFBA0F;
  width: 36px;
  height: 36px;
  background-color: #FFFFFF;
  cursor: pointer;
  -webkit-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
  position: absolute;
  top: 1rem;
  right: 1rem;
}

.modal_close::before, .modal_close::after {
  display: block;
  content: "";
  width: 4px;
  height: 22px;
  background: #FFBA0F;
  -webkit-transition: background .2s ease-in-out;
  transition: background .2s ease-in-out;
  position: absolute;
  top: 4px;
  left: 12px;
}

.modal_close::before {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.modal_close::after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.modal_close span {
  position: absolute;
  top: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  text-align: center;
  font-size: 0.9375rem;
  color: #FFBA0F;
  padding-top: 6px;
}

/*
    背景オーバーレイ
================================*/
.overlay {
  width: 0;
  height: 0;
  background-color: rgba(0, 0, 0, 0.5);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 98;
  opacity: 0;
  -webkit-transition: opacity .4s;
  transition: opacity .4s;
}

.overlay.active {
  width: 100vw;
  height: 100vh;
  opacity: 1;
}

/*===============================

    Page

================================*/
/*
    トップページ
================================*/
.index .sc_header_ttl-tp {
  font-size: 1.375rem;
  font-weight: normal;
  text-shadow: #FFBA0F 0.5px 0.5px 0, #FFBA0F -0.5px -0.5px 0, #FFBA0F -0.5px 0.5px 0, #FFBA0F 0.5px -0.5px 0, #FFBA0F 0px 0.5px 0, #FFBA0F 0 -0.5px 0, #FFBA0F -0.5px 0 0, #FFBA0F 0.5px 0 0;
}

@media screen and (min-width: 769px) {
  .index .sc_header_ttl-tp {
    font-size: 2rem;
  }
}

.topVisual {
  position: relative;
}

.topVisual_img {
  height: 90vh;
  max-height: 508px;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url(../images/index/topvisual_sp.jpg);
}

@media screen and (min-width: 769px) {
  .topVisual_img {
    max-height: 720px;
    background-image: url(../images/index/topvisual.jpg);
  }
}

.topVisual_inner {
  padding: 0 14px;
  text-align: center;
  line-height: 1.5;
  width: 100%;
  position: absolute;
  left: 50%;
  top: 43%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

@media screen and (min-width: 769px) {
  .topVisual_inner {
    top: 50%;
    text-align: right;
  }
}

.topVisual_title {
  color: #1A1A1A;
  font-weight: 900;
  font-size: 1.4375rem;
  line-height: 1.4;
  display: inline-block;
  border-bottom: solid 3px #1A1A1A;
  padding: 0 0.5rem 0.3125rem;
  text-shadow: 0px 0px 6px rgba(255, 255, 255, 0.65);
}

@media screen and (min-width: 769px) {
  .topVisual_title {
    font-size: 2.5rem;
    border-bottom: solid 4px #1A1A1A;
    padding: 0 0 0.3125rem 1rem;
  }
}

@media screen and (max-width: 320px) {
  .topVisual_title {
    font-size: 1.125rem;
  }
}

.topVisual_text {
  margin-top: 0.5rem;
  color: #1A1A1A;
  font-weight: 900;
  line-height: 1.63636;
  text-shadow: 0px 0px 6px rgba(255, 255, 255, 0.65);
}

@media screen and (min-width: 769px) {
  .topVisual_text {
    font-size: 1.375rem;
  }
}

@media all and (-ms-high-contrast: none) {
  .topVisual {
    overflow: hidden;
  }
}

.infoBar {
  width: 100%;
  padding: 1rem 0;
  font-size: 0.75rem;
  background-color: rgba(255, 186, 15, 0.78);
  line-height: 1.5;
  position: absolute;
  bottom: 0;
  left: 0;
}

@media screen and (min-width: 769px) {
  .infoBar {
    font-size: 0.9375rem;
  }
  .infoBar .flexbox-pc {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .infoBar .infoBar_meta.flexbox-pc .infoBar_cat {
    margin-left: 0.625rem;
  }
}

.infoBar_header {
  font-size: 1.125rem;
  font-weight: bold;
  text-align: center;
  padding: 0 2rem;
}

.infoBar_body {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.infoBar_cat {
  color: #FFFFFF;
  background-color: #333333;
  text-align: center;
  padding: 0 1rem;
}

.infoBar_link {
  margin-left: 1rem;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  text-decoration: underline;
}

.infoBar_link::after {
  content: "詳細を見る→";
  display: inline-block;
  margin-left: 1rem;
  font-weight: bold;
}

.indexAbout_survice {
  margin: 35px auto 0;
  max-width: 752px;
  padding: 0 14px;
}

@media screen and (min-width: 769px) {
  .indexAbout_survice > .flexbox-pc {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .indexAbout_survice > .flexbox-pc .indexAbout_survice_item {
    width: 31.83%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: 0;
  }
  .indexAbout_survice > .flexbox-pc .indexAbout_survice_body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}

.indexAbout_survice_item {
  text-align: center;
  max-width: 230px;
  margin: auto;
}

.indexAbout_survice_item + .indexAbout_survice_item {
  margin-top: 1.625rem;
}

.indexAbout_survice_ttl {
  margin-top: 0.625rem;
}

.indexAbout_survice_body {
  margin-top: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  padding: 1rem;
  background-color: #FFBA0F;
  border-radius: 5px;
}

#indexProduct .product {
  margin-top: 4.375rem;
}

.product_pageNavi {
  margin-top: 60px;
}

@media screen and (min-width: 769px) {
  .product_pageNavi > .flexbox-pc .product_pageNavi_item {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }
  .product_pageNavi > .flexbox-pc .product_pageNavi_item_inner {
    max-width: 472px;
    height: 100%;
    position: relative;
    padding-bottom: 10px;
    padding-bottom: 3.125rem;
  }
  .product_pageNavi > .flexbox-pc .product_pageNavi_item_inner .product_pageNavi_footer {
    position: absolute;
    bottom: 0;
    right: 0;
  }
  .product_pageNavi > .flexbox-pc .product_pageNavi_item:first-child .product_pageNavi_item_inner {
    margin-left: auto;
  }
}

.product_pageNavi_item {
  color: #FFFFFF;
  background-color: #FFBA0F;
  padding: 1.25rem 1rem;
}

.product_pageNavi_item:last-child {
  background-color: #FFAB3D;
}

.product_pageNavi_ttl {
  font-size: 1.3125rem;
  line-height: 1.66667;
  font-weight: bold;
  padding-bottom: 0.38095em;
  border-bottom: solid 2px #FFFFFF;
}

.product_pageNavi_body {
  font-size: 0.875rem;
  margin-top: 1rem;
}

.product_pageNavi_footer {
  text-align: right;
  margin-top: 0.875rem;
}

.product_pageNavi_btn {
  font-weight: bold;
  background-color: #FFFFFF;
  display: inline-block;
  position: relative;
  padding: 0.625rem 2.4375rem 0.5625rem 0.5rem;
}

.product_pageNavi_btn::after {
  content: "";
  display: block;
  width: 1.625rem;
  height: 1.625rem;
  background-image: url(../images/common/icon_btn_arrow-gray.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  margin-left: 5px;
  position: absolute;
  right: 0.5rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

#indexReason {
  padding: 80px 0;
  overflow: hidden;
  background-image: url(../images/index/reason_bg.jpg);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.indexReason_header {
  position: relative;
  padding-left: 13.6%;
  text-align: right;
}

.indexReason_header_ttl {
  font-size: 1.25rem;
}

.indexReason_header_body {
  font-size: 0.8125rem;
  padding: 1.25rem 1rem;
  position: relative;
  z-index: 2;
  margin-top: 1rem;
}

.indexReason_header_body::after {
  content: "";
  display: block;
  width: 100vw;
  height: 100%;
  background-color: #FFBA0F;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

@media screen and (min-width: 769px) {
  .indexReason_header {
    padding-left: 200px;
    text-align: left;
  }
  .indexReason_header_ttl {
    font-size: 1.875rem;
    position: absolute;
    top: 50px;
    left: 14px;
    z-index: 3;
  }
  .indexReason_header_body {
    margin-top: 0;
    font-size: 1.125rem;
    padding: 3.625rem 0 3.625rem 10.5rem;
  }
}

.reason {
  background-color: rgba(255, 255, 255, 0.7);
  padding: 60px 30px;
  max-width: 460px;
  margin: auto;
}

.reason + .reason {
  margin-top: 3.375rem;
}

.reason.flexbox-pc {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.reason.flexbox-pc.reason-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

@media screen and (min-width: 769px) {
  .reason.flexbox-pc.reason-reverse .reason_body_ttl {
    text-align: left;
  }
  .reason.flexbox-pc.reason-reverse .reason_body_subttl {
    text-align: left;
  }
  .reason.flexbox-pc.reason-reverse .reason_body_txt {
    text-align: left;
  }
  .reason.flexbox-pc.reason-reverse .reason_body .btn {
    margin: 1rem auto 0 0;
  }
}

.reason.flexbox-pc .reason_img {
  width: 100%;
}

.reason.flexbox-pc .reason_body {
  width: 100%;
  margin-top: 1rem;
}

@media screen and (min-width: 769px) {
  .reason.flexbox-pc .reason_img {
    width: 45.83%;
  }
  .reason.flexbox-pc .reason_body {
    width: 47.83%;
    margin-top: 0;
  }
}

.reason_img {
  text-align: center;
}

.reason_body_ttl {
  color: #FFBA0F;
  text-align: center;
  font-size: 2.125rem;
  line-height: 1.48438;
}

.reason_body_subttl {
  text-align: center;
  font-weight: bold;
  font-size: 1rem;
  line-height: 1.48148;
}

.reason_body_txt {
  margin-top: 1rem;
  font-size: 0.875rem;
}

.reason_body .btn {
  margin: 1rem auto 0;
}

@media screen and (min-width: 769px) {
  .reason {
    max-width: 1200px;
  }
  .reason_body_ttl {
    text-align: right;
    font-size: 4rem;
  }
  .reason_body_subttl {
    text-align: right;
    font-size: 1.6875rem;
  }
  .reason_body_txt {
    text-align: right;
    font-size: 1rem;
  }
  .reason_body .btn {
    margin: 1rem 0 0 auto;
  }
}

.productSearch {
  margin-top: 2.5rem;
  border-bottom: solid 3px #FFBA0F;
}

.productSearch_map a rect, .productSearch_map a text {
  -webkit-transition: fill 0.3s;
  transition: fill 0.3s;
}

.productSearch_map a:hover rect {
  fill: #ffba0f;
}

.productSearch_map a:hover text {
  fill: #FFFFFF;
}

.productSearch_map a:hover ~ a rect {
  fill: #ffba0f;
}

.productSearch_map a:hover ~ a text {
  fill: #FFFFFF;
}

@media all and (-ms-high-contrast: none) {
  .productSearch_map svg {
    height: 346px;
    overflow: hidden;
  }
}

#indexCtaNavi {
  margin-top: 3.125rem;
}

#indexBanner {
  margin-top: 5.625rem;
}

.banner > .flexbox {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.banner > .flexbox .banner_item {
  width: 100%;
}

.banner > .flexbox .banner_item + .banner_item {
  margin-top: 1rem;
}

@media screen and (min-width: 769px) {
  .banner > .flexbox .banner_item {
    width: 48.7%;
  }
  .banner > .flexbox .banner_item + .banner_item {
    margin-top: 0;
  }
}

.banner a:hover {
  opacity: 0.7;
}

/*
    看板屋とは
================================*/
.page-about .pageHeader_img {
  background-position: 10% center;
}

.page-about .pageHeader .pageHeader_ttl::after {
  width: 50%;
  max-width: 340px;
}

.page-about .feature_item {
  position: relative;
}

@media screen and (min-width: 769px) {
  .page-about .feature_item {
    padding-top: 20px;
  }
  .page-about .feature_item::before {
    content: "";
    display: block;
    width: 58%;
    height: 8px;
    background-color: #FFBA0F;
    position: absolute;
    top: 0;
    left: 0;
  }
}

.page-about .feature_item + .feature_item {
  margin-top: 90px;
}

.page-about .feature_item_inner {
  position: relative;
}

.page-about .feature_item_body {
  position: relative;
  z-index: 2;
  max-width: 480px;
  margin: auto;
}

.page-about .feature_item_img {
  max-width: 240px;
  margin: auto;
}

@media screen and (min-width: 769px) {
  .page-about .feature_item {
    padding-bottom: 90px;
  }
  .page-about .feature_item + .feature_item {
    margin-top: 180px;
  }
  .page-about .feature_item_img {
    max-width: 480px;
    position: absolute;
    bottom: -90px;
    right: 0;
  }
  .page-about .feature_item_body {
    max-width: 640px;
    margin: 0 auto 0 0;
  }
}

.page-about .feature_ttl {
  font-size: 1.8125rem;
  line-height: 1.31481;
  color: #FFD472;
  font-weight: bold;
  text-align: center;
}

.page-about .feature_ttl::before {
  content: "";
  display: block;
  width: 250px;
  height: 5px;
  background-color: #FFBA0F;
  margin: auto;
}

@media screen and (min-width: 769px) {
  .page-about .feature_ttl {
    font-size: 3.375rem;
    text-align: left;
  }
  .page-about .feature_ttl::before {
    display: none;
  }
}

.page-about .feature_subttl {
  line-height: 1.5625;
  margin-top: 1.5rem;
  font-weight: bold;
  text-align: center;
}

@media screen and (min-width: 769px) {
  .page-about .feature_subttl {
    font-size: 1.5rem;
    line-height: 1.58333;
    text-align: left;
  }
}

.page-about .feature_txt {
  margin-top: 1em;
  font-size: 0.875rem;
  line-height: 1.88235;
}

@media screen and (min-width: 769px) {
  .page-about .feature_txt {
    font-size: 1.0625rem;
    line-height: 1.88235;
  }
}

.page-about .feature_btn {
  margin: 2rem auto 0;
}

@media screen and (min-width: 769px) {
  .page-about .feature_btn {
    margin: 2rem auto 0 0;
  }
}

.page-about .feature_btn:hover {
  opacity: 0.7;
}

@media screen and (min-width: 769px) {
  .page-about .feature .feature_item:nth-of-type(even)::before {
    left: auto;
    right: 0;
  }
  .page-about .feature .feature_item:nth-of-type(even) .feature_item_body {
    margin: 0 0 0 auto;
    text-align: right;
  }
  .page-about .feature .feature_item:nth-of-type(even) .feature_item_body .feature_btn {
    margin: 2rem 0 0 auto;
  }
  .page-about .feature .feature_item:nth-of-type(even) .feature_item_img {
    right: auto;
    left: 0;
  }
  .page-about .feature .feature_item:nth-of-type(even) .feature_ttl, .page-about .feature .feature_item:nth-of-type(even) .feature_subttl {
    text-align: right;
  }
  .page-about .feature .feature_item-service .feature_item_img {
    max-width: 412px;
  }
  .page-about .feature .feature_item-support {
    padding-bottom: 190px;
  }
  .page-about .feature .feature_item-support .feature_item_img {
    max-width: 360px;
    bottom: -190px;
  }
}

.page-about .ctaNavi-sp {
  margin-top: 4.75rem;
}

/*
    製品一覧
================================*/
.page-product .pageHeader_img {
  background-image: url(../images/product/page-product_header_bg.jpg);
}

.page-product .pageHeader_ttl {
  text-shadow: 0px 0px 4px #141414;
}

.page-product_naviArea {
  padding: 32px 14px;
  background-color: #CCCCCC;
}

.page-product_naviArea_ttl {
  text-align: center;
  font-size: 1.0625rem;
  line-height: 1.70588;
  padding-bottom: 32px;
}

@media screen and (min-width: 769px) {
  .page-product_naviArea {
    background-color: #FFFFFF;
    padding: 0 14px;
  }
}

@media screen and (min-width: 769px) {
  .page-product_navi .flexbox-pc {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .page-product_navi .flexbox-pc .page-product_navi_img {
    width: 29%;
  }
  .page-product_navi .flexbox-pc .page-product_navi_body {
    width: 49%;
    margin-left: 1%;
  }
  .page-product_navi .flexbox-pc .page-product_navi_icon {
    width: 11%;
    margin-left: 5%;
  }
}

.page-product_navi_img {
  text-align: center;
}

.page-product_navi_item {
  padding: 0.5em;
  border-radius: 8px;
  background-color: #FFFFFF;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.page-product_navi_item + .page-product_navi_item {
  margin-top: 35px;
}

@media screen and (min-width: 769px) {
  .page-product_navi_item {
    background-color: #CECECE;
  }
  .page-product_navi_item.novelty {
    background-color: #EEEEEE;
  }
  .page-product_navi_item:hover.design {
    background-color: #E6E6E6;
  }
  .page-product_navi_item:hover.novelty {
    background-color: #F5F5F5;
  }
  .page-product_navi_item:hover .page-product_navi_icon::after {
    left: 60%;
  }
}

.page-product_navi_ttl {
  text-align: center;
  font-weight: bold;
  line-height: 1.5;
  margin-top: 0.8em;
  padding-bottom: 0.25rem;
  border-bottom: solid 2px #4D4D4D;
}

@media screen and (min-width: 769px) {
  .page-product_navi_ttl {
    font-size: 1.5rem;
    text-align: left;
    margin-top: 0;
  }
}

.page-product_navi_txt {
  margin-top: 1em;
  font-size: 0.875rem;
}

@media screen and (min-width: 769px) {
  .page-product_navi_txt {
    font-size: 1rem;
  }
}

.page-product_navi_icon {
  font-weight: bold;
  position: relative;
  display: inline-block;
  line-height: 28px;
  padding-right: 36px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.page-product_navi_icon::before, .page-product_navi_icon::after {
  content: "";
  display: block;
}

.page-product_navi_icon::before {
  width: 28px;
  padding-top: 28px;
  background-color: #FFFFFF;
  -webkit-box-shadow: 0px 0px 3px rgba(90, 90, 90, 0.85);
  box-shadow: 0px 0px 3px rgba(90, 90, 90, 0.85);
  border-radius: 50%;
  position: absolute;
  top: 0;
  right: 0;
}

.page-product_navi_icon::after {
  width: 17px;
  height: 10px;
  background-image: url(../images/product/page-product_navi_arrow.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  right: 5px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media screen and (min-width: 769px) {
  .page-product_navi_icon {
    padding-right: 0;
  }
  .page-product_navi_icon::before {
    width: 100%;
    padding-top: 100%;
    position: static;
  }
  .page-product_navi_icon::after {
    width: 48.214%;
    height: 21.42%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: all .3s;
    transition: all .3s;
  }
}

/*
    製品情報（共通）
================================*/
.page-product .pageHeader_ttl {
  color: #FFFFFF;
}

.page-product .pageHeader_txt {
  color: #FFFFFF;
}

.page-product .sc_header_ttl-primaryLight {
  margin-top: 3.5rem;
}

.page-product #siteFooter-pc {
  margin-top: 0;
}

.page-product p:not([class]) {
  margin-top: 1em;
}

.page-product_flexbox_img {
  text-align: center;
  margin: 0 -14px;
}

.page-product_flexbox_body {
  margin-top: 1.5rem;
}

@media screen and (min-width: 769px) {
  .page-product_flexbox {
    margin-top: 2.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .page-product_flexbox_body {
    width: 47%;
    margin-top: 0;
  }
  .page-product_flexbox_body p {
    padding-left: 0.875rem;
  }
  .page-product_flexbox_img {
    width: 47%;
  }
}

.page-product_hrzBox + .page-product_hrzBox {
  margin-top: 1.5rem;
}

@media screen and (min-width: 769px) {
  .page-product_hrzBox.flexbox-pc {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .page-product_hrzBox.flexbox-pc .page-product_hrzBox_img {
    width: 31.6%;
  }
  .page-product_hrzBox.flexbox-pc .page-product_hrzBox_body {
    width: 65.6%;
  }
}

.page-product_hrzBox_ttl {
  font-weight: bold;
  font-size: 1.0625rem;
  line-height: 1.47059;
  padding-bottom: 0.5rem;
  border-bottom: solid 2px #FFBA0F;
  margin-top: 1rem;
}

@media screen and (min-width: 769px) {
  .page-product_hrzBox_ttl {
    font-size: 1.3125rem;
    line-height: 1.42857;
    margin-top: 0;
  }
}

.page-product_hrzBox_txt {
  margin-top: 0.5rem;
  font-size: 0.9375rem;
  line-height: 1.66667;
}

@media screen and (min-width: 769px) {
  .page-product_hrzBox_txt {
    font-size: 1.125rem;
    line-height: 1.77778;
  }
}

.page-product_hrzBox_btn {
  margin: 1rem auto 0;
  color: #FFBA0F;
  max-width: 374px;
}

.page-product_hrzBox_btn::after {
  content: "";
  display: block;
  width: 1.85714em;
  height: 1.14286em;
  background-image: url(../images/product/kanban_cat_menu_arrow.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  right: 1em;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: all .3s;
  transition: all .3s;
}

@media screen and (min-width: 769px) {
  .page-product_hrzBox_btn {
    margin: 1rem;
  }
}

.page-product_about {
  position: relative;
}

@media screen and (min-width: 769px) {
  .page-product_about {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .page-product_about_img {
    width: 43.67%;
  }
  .page-product_about_body {
    width: 53.21%;
  }
}

.page-product_about_img {
  text-align: center;
  margin: 0 -14px;
}

.page-product_about_img .bgImage {
  padding-top: 80%;
}

@media screen and (min-width: 769px) {
  .page-product_about_img {
    margin: 0;
  }
  .page-product_about_img .bgImage {
    padding-top: 100%;
  }
}

.page-product_about_body {
  padding: 1rem;
  background-color: rgba(255, 255, 255, 0.9);
  -webkit-box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.75);
  box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.75);
  margin-top: -7.5rem;
  position: relative;
}

@media screen and (min-width: 769px) {
  .page-product_about_body {
    margin-top: 0;
    background-color: transparent;
    -webkit-box-shadow: none;
    box-shadow: none;
  }
}

.page-product_about_ttl {
  color: #FFBA0F;
  line-height: 1.8;
  font-size: 1.25rem;
  text-align: center;
  position: relative;
}

.page-product_about_ttl::after {
  content: "";
  display: block;
  width: 150px;
  height: 3px;
  margin: 5px auto;
  background-color: #FFBA0F;
}

@media screen and (min-width: 769px) {
  .page-product_about_ttl {
    font-size: 1.6875rem;
    text-align: left;
    padding-bottom: 0.5rem;
  }
  .page-product_about_ttl::after {
    content: "";
    display: block;
    width: 100vw;
    height: 5px;
    background-color: #FFBA0F;
    position: absolute;
    bottom: 0;
    right: 0;
  }
}

.page-product_about_txt {
  font-size: 0.875rem;
  line-height: 1.92857;
  margin-top: 2.14286em;
}

@media screen and (min-width: 769px) {
  .page-product_about_txt {
    margin-top: 1.22222em;
    font-size: 1.125rem;
    line-height: 1.88889;
  }
}

.page-product_point {
  margin-top: 36px;
  padding-top: 49px;
}

@media screen and (min-width: 769px) {
  .page-product_point > .flexbox-pc .page-product_point_item {
    width: 49%;
  }
}

.page-product_point_item {
  position: relative;
  border-radius: 7px;
  border: solid 3px #FFBA0F;
  padding: 4rem 1rem 1rem;
  background-color: #FFFFFF;
}

.page-product_point_item + .page-product_point_item {
  margin-top: 3.75rem;
}

.page-product_point_item::before {
  content: "POINT";
  display: block;
  font-size: 1.5rem;
  font-weight: bold;
  width: 4.125em;
  height: 4.125em;
  background-color: #FFBA0F;
  border-radius: 50%;
  color: #FFFFFF;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

@media screen and (min-width: 769px) {
  .page-product_point_item {
    border: solid 1px #FFBA0F;
    padding: 70px 20px 20px;
  }
  .page-product_point_item + .page-product_point_item {
    margin-top: 0;
  }
}

.page-product_point_ttl {
  font-size: 1.125rem;
  text-align: center;
  font-weight: bold;
  line-height: 1.42308;
}

@media screen and (min-width: 769px) {
  .page-product_point_ttl {
    font-size: 1.625rem;
  }
}

.page-product_point_txt {
  font-size: 0.9375rem;
  margin-top: 1.125rem;
}

@media screen and (min-width: 769px) {
  .page-product_point_txt {
    font-size: 0.9375rem;
    margin-top: 1.5rem;
  }
}

.hrzGallery {
  margin-top: 1.625rem;
}

@media screen and (min-width: 769px) {
  .hrzGallery .flexbox-pc {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .hrzGallery .flexbox-pc.flex-3 {
    margin: -2.81% 0 0 -2.81%;
  }
  .hrzGallery .flexbox-pc.flex-3 .hrzGallery_item {
    width: 30.52%;
    margin: 2.81% 0 0 2.81%;
  }
  .hrzGallery .flexbox-pc.flex-4 {
    margin: -2.41% 0 0 -2.41%;
  }
  .hrzGallery .flexbox-pc.flex-4 .hrzGallery_item {
    width: 22.59%;
    margin: 2.41% 0 0 2.41%;
  }
}

.hrzGallery_item + .hrzGallery_item {
  margin-top: 1.5rem;
}

@media screen and (min-width: 769px) {
  .hrzGallery_item + .hrzGallery_item {
    margin-top: 0;
  }
}

.hrzGallery_img {
  text-align: center;
  border: solid 1px #DDDDDD;
}

.hrzGallery_ttl {
  font-weight: bold;
  font-size: 1.125rem;
  line-height: 1.38889;
  border-bottom: solid 1px #FFBA0F;
  margin-top: 1rem;
  padding-bottom: 0.5rem;
}

.hrzGallery_txt {
  font-size: 0.9375rem;
  margin-top: 0.5rem;
  color: #666666;
}

.howto_item {
  -webkit-box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.75);
  box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.75);
  border-radius: 5px;
  padding: 1.125rem;
}

.howto_item + .howto_item {
  margin-top: 1.875rem;
}

@media screen and (min-width: 769px) {
  .howto_item {
    padding: 24px 38px;
  }
}

.howto_header_ttl {
  color: #FFBA0F;
  line-height: 1.7619;
  border-bottom: solid 3px #FFBA0F;
}

@media screen and (min-width: 769px) {
  .howto_header_ttl {
    font-size: 1.3125rem;
  }
}

.howto_body {
  margin-top: 1.3125rem;
}

@media screen and (min-width: 769px) {
  .howto_body.flexbox-pc .howto_body_img {
    width: 28%;
  }
  .howto_body.flexbox-pc .howto_body_txt {
    width: 65%;
  }
}

.howto_body_img {
  text-align: center;
}

.howto_body_img img {
  max-width: 62%;
}

@media screen and (min-width: 769px) {
  .howto_body_img img {
    max-width: 100%;
  }
}

.howto_body_txt {
  color: #808080;
}

.howto_body_txt_ttl {
  font-weight: bold;
  margin-bottom: 0.75rem;
  color: #333333;
  margin-top: 1rem;
  line-height: 1.57143;
}

@media screen and (min-width: 769px) {
  .howto_body_txt_ttl {
    font-size: 1.125rem;
    line-height: 1.55556;
    margin-top: 0;
  }
}

.howto_body_txt_data {
  font-size: 0.75rem;
}

.howto_body_txt_data ul {
  list-style: disc;
  line-height: 1.5;
  padding-left: 1.57143em;
}

@media screen and (min-width: 769px) {
  .howto_body_txt_data {
    font-size: 0.9375rem;
  }
}

.page-product_works .sc_content {
  margin-top: 3.75rem;
}

.page-product_works .btn {
  margin-top: 3.375rem;
  display: inline-block;
  width: auto;
  max-width: 100%;
  padding: 1rem;
}

@media screen and (min-width: 769px) {
  .page-product_works .btn {
    padding: 1rem 2.375rem;
  }
}

.page-product_ctaArea {
  background-color: #FFFBF3;
  padding: 1.625rem 0;
}

.page-product_ctaArea_ttl {
  font-size: 0.9375rem;
  line-height: 1.6;
  text-align: center;
  margin-bottom: 18px;
  font-weight: bold;
}

@media screen and (min-width: 769px) {
  .page-product_ctaArea {
    padding: 2.75rem 0;
  }
  .page-product_ctaArea_ttl {
    font-size: 1.25rem;
    line-height: 1.75;
    margin-bottom: 2.25rem;
  }
}

.page-product_cta {
  padding: 1.25rem 14px;
  text-align: center;
  background-color: #E04169;
  max-width: 800px;
  margin: auto;
  font-weight: bold;
}

@media screen and (min-width: 769px) {
  .page-product_cta {
    border-radius: 10px;
  }
}

.page-product_cta_ttl {
  line-height: 1.5;
  text-align: center;
  color: #FFFFFF;
  margin-bottom: 18px;
}

@media screen and (min-width: 769px) {
  .page-product_cta_ttl {
    font-size: 1.25rem;
    line-height: 1.75;
  }
}

.page-product_cta_tel {
  color: #FFFFFF;
  font-weight: bold;
  line-height: 1.2;
  margin-top: 0.75rem;
}

.page-product_cta_tel a {
  color: #FFFFFF;
}

.page-product_cta_tel span {
  display: block;
  font-size: 1.8125rem;
}

.page-product_cta_tel span::before {
  content: "";
  display: inline-block;
  background-size: contain;
  background-image: url(../images/product/page-product_cta_icon_phone.svg);
  width: 24px;
  height: 24px;
  margin-right: 0.25em;
}

@media screen and (min-width: 769px) {
  .page-product_cta_tel span {
    font-size: 40px;
  }
  .page-product_cta_tel span::before {
    width: 30px;
    height: 30px;
  }
}

.page-product_cta_open {
  color: #FFFFFF;
  font-size: 0.8125rem;
  line-height: 1.38462;
  font-weight: bold;
}

@media screen and (min-width: 769px) {
  .page-product_cta_open {
    font-size: 0.9375rem;
  }
}

.page-product_cta_btn {
  margin-top: 10px;
  padding-right: 0;
  padding-left: 50px;
}

.page-product_cta_btn::after {
  right: auto;
  left: 1rem;
  background-image: url(../images/product/page-product_cta_icon_mail.svg);
}

.kanbanCat_menu {
  max-width: 930px;
  margin: auto;
}

.kanbanCat_menu > .flexbox {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.kanbanCat_menu > .flexbox .kanbanCat_menu_item {
  width: 100%;
}

@media screen and (min-width: 769px) {
  .kanbanCat_menu > .flexbox {
    margin: -1% 0 0 -1%;
  }
  .kanbanCat_menu > .flexbox .kanbanCat_menu_item {
    width: 32.25%;
    margin: 1% 0 0 1%;
  }
}

.kanbanCat_menu_item a {
  display: block;
  font-size: 0.875rem;
  line-height: 1.5;
  font-weight: bold;
  padding: 1em;
  background-color: #FFFFFF;
  border: solid 2px #FFBA0F;
  padding-right: 2.5em;
  position: relative;
}

.kanbanCat_menu_item a::after {
  content: "";
  display: block;
  width: 1.85714em;
  height: 1.14286em;
  background-image: url(../images/product/kanban_cat_menu_arrow.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  right: 1em;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: all .3s;
  transition: all .3s;
}

.kanbanCat_menu_item a:hover::after {
  right: 0.5em;
}

.kanbanCat_menu_item + .kanbanCat_menu_item a {
  border-top: none;
}

@media screen and (min-width: 769px) {
  .kanbanCat_menu_item + .kanbanCat_menu_item a {
    border-top: solid 2px #FFBA0F;
  }
}

.kanbanCat_btn {
  display: block;
  background-color: #FF8A00;
  color: #FFFFFF;
  font-weight: bold;
  padding: 1.25em;
  border: solid 3px #FFFFFF;
  width: 100%;
  max-width: 352px;
  margin: auto;
  padding-right: 3.4375em;
  position: relative;
}

.kanbanCat_btn + .kanbanCat_btn {
  margin-top: 0.5rem;
}

@media screen and (min-width: 769px) {
  .kanbanCat_btn {
    margin: 0;
  }
  .kanbanCat_btn + .kanbanCat_btn {
    margin-top: 0;
  }
}

.kanbanCat_btn::after {
  content: "";
  display: block;
  width: 2.1875em;
  height: 2.1875em;
  background-image: url(../images/product/kanban_cat_btn_arrow.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  right: 1.25em;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: all .3s;
  transition: all .3s;
}

.kanbanCat_btn:hover::after {
  right: 0.5em;
}

.kanbanCatSection {
  background-color: #FFEFD2;
  padding: 2.5rem 0;
}

.kanbanCatSection .sc_content_hd-unb {
  margin-top: 0;
  color: #333333;
}

.kanbanCatSection .sc_content_hd-unb::after {
  height: 3px;
}

@media screen and (min-width: 769px) {
  .kanbanCatSection .sc_content_hd-unb {
    font-size: 1.1875rem;
  }
  .kanbanCatSection .sc_content_hd-unb::after {
    width: 133px;
  }
}

.kanbanCatSection .btnArea {
  margin-top: 1.25rem;
}

@media screen and (min-width: 769px) {
  .kanbanCatSection {
    margin-top: 76px;
  }
  .kanbanCatSection .btnArea {
    margin-top: 30px;
  }
  .kanbanCatSection .btnArea.flexbox-pc {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .kanbanCatSection .btnArea .kanbanCat_btn + .kanbanCat_btn {
    margin-left: 30px;
  }
}

/*
    製品情報（トップ）
================================*/
.page-product-index #siteFooter-pc {
  margin-top: 3.75rem;
}

/*
    製品情報（インクジェット出力サービス）
================================*/
.page-product-print_table {
  font-size: 0.9375rem;
  line-height: 1.5;
  border-top: 4px solid #FFFFFF;
  border-left: 4px solid #FFFFFF;
  border-spacing: 0;
  width: 100%;
}

.page-product-print_table th, .page-product-print_table td {
  border-bottom: 4px solid #FFFFFF;
  border-right: 4px solid #FFFFFF;
  padding: 0.5rem;
}

.page-product-print_table th {
  background-color: #FFBA0F;
  color: #FFFFFF;
  text-align: left;
}

.page-product-print_table td {
  background-color: #FFEED1;
}

@media screen and (max-width: 640px) {
  .page-product-print_table {
    font-size: 0.875rem;
  }
  .page-product-print_table .thead {
    display: none;
  }
  .page-product-print_table tr {
    width: 100%;
  }
  .page-product-print_table tr {
    width: 100%;
    display: block;
    padding: 0 1em 1em;
    background-color: #ffeed1;
  }
  .page-product-print_table tr + tr {
    margin-top: 1rem;
  }
  .page-product-print_table td {
    display: block;
    width: 100%;
    padding-left: 10em;
    position: relative;
    border-bottom: solid 1px #FFBA0F;
    border-right: none;
  }
  .page-product-print_table td:first-child {
    background-color: #FFBA0F;
    color: #fff;
    font-weight: bold;
    padding: 0.5rem;
    margin: 0 -1em;
    width: calc(100% + 2em);
  }
  .page-product-print_table td:before {
    content: attr(data-label);
    float: left;
    font-weight: bold;
    margin-right: 10px;
    width: 10em;
    position: absolute;
    top: 0.5rem;
    left: 0.5rem;
  }
}

.page-product-print .page-product_ctaArea {
  background-color: #FFFFFF;
  padding: 0;
}

.page-product-print .page-product_ctaArea_ttl {
  color: #E04169;
}

@media screen and (min-width: 769px) {
  .page-product-print .page-product_ctaArea {
    padding: 0;
  }
}

.page-product-print .kanbanCatSection {
  margin-top: 0;
}

@media screen and (min-width: 769px) {
  .page-product-print .kanbanCatSection {
    margin-top: 76px;
  }
}

.page-product-print #siteFooter-pc {
  margin-top: 3.75rem;
}

/*
    製品一覧
================================*/
.page-product-digital-signage_merit.flexbox {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -1.4% 0 0 -1.4%;
}

.page-product-digital-signage_merit.flexbox dt {
  width: 100%;
  margin-top: 0.5em;
}

.page-product-digital-signage_merit.flexbox dd {
  width: 100%;
  margin-top: 0.5em;
}

@media screen and (min-width: 769px) {
  .page-product-digital-signage_merit.flexbox dt {
    width: calc(300px - 1.4%);
    margin: 1.4% 0 0 1.4%;
  }
  .page-product-digital-signage_merit.flexbox dd {
    width: calc(98.6% - 300px);
    margin: 1.4% 0 0 1.4%;
  }
}

.page-product-digital-signage_merit dt, .page-product-digital-signage_merit dd {
  padding: 1.25rem 1rem;
  line-height: 1.5;
}

.page-product-digital-signage_merit dt {
  font-size: 1.0625rem;
  font-weight: bold;
  background-color: #FFEBC5;
}

.page-product-digital-signage_merit dd {
  background-color: #FFFAF1;
}

/*
    製品情報（デザイン制作）
================================*/
.page-product-design .sc_content {
  overflow: hidden;
}

.page-product-design_sc_ttl {
  font-size: 1.125rem;
  line-height: 1.5;
  text-align: center;
  font-weight: bold;
}

.page-product-design_sc_ttl::after {
  content: "";
  display: block;
  width: 80px;
  height: 3px;
  background-color: #FFBA0F;
  margin: 1rem auto 0;
}

@media screen and (min-width: 769px) {
  .page-product-design_sc_ttl {
    font-size: 1.5625rem;
    line-height: 1.44;
  }
}

.page-product-design_sc_ttl-tp {
  text-align: center;
  font-size: 0.9375rem;
  line-height: 1.66667;
  color: #666666;
}

@media screen and (min-width: 769px) {
  .page-product-design_sc_ttl-tp {
    color: #FFBA0F;
    font-size: 1.4375rem;
    line-height: 1.65217;
    font-weight: bold;
  }
}

.page-product-design_concept {
  padding: 2.875rem 0;
  background-image: url(../images/product/design/page-product-design_concept_bg_sp.jpg);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

@media screen and (min-width: 769px) {
  .page-product-design_concept {
    padding: 62px 32px;
    background-image: url(../images/product/design/page-product-design_concept_bg.jpg);
  }
}

.page-product-design_concept_inner {
  background-color: rgba(255, 255, 255, 0.85);
  padding: 1.5625rem 0.9375rem;
}

@media screen and (min-width: 769px) {
  .page-product-design_concept_inner {
    max-width: 700px;
    margin-left: auto;
    background-color: transparent;
    padding: 0;
  }
}

.page-product-design_concept_ttl {
  color: #FF8B00;
  line-height: 1.6875;
  font-weight: bold;
  position: relative;
  padding-bottom: 1.0625rem;
  text-align: center;
  margin: 0 -0.5em;
}

@media screen and (min-width: 769px) {
  .page-product-design_concept_ttl {
    color: #333333;
    font-size: 1.4375rem;
    line-height: 1.82609;
    text-align: right;
    margin: 0;
  }
  .page-product-design_concept_ttl::after {
    content: "";
    display: block;
    width: 100vw;
    height: 3px;
    background-color: #FFBA0F;
    position: absolute;
    bottom: 0;
    left: 80px;
  }
}

.page-product-design_concept_body {
  font-size: 0.875rem;
  line-height: 1.6875;
  text-align: left;
}

@media screen and (min-width: 769px) {
  .page-product-design_concept_body {
    font-size: 1.0625rem;
    line-height: 1.76471;
    text-align: right;
  }
}

.page-product-design #siteFooter-pc {
  margin-top: 3.75rem;
}

.designWorks > .flexbox {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: -1.75rem;
}

.designWorks > .flexbox .designWorks_item {
  width: 100%;
  margin-top: 1.75rem;
}

@media screen and (min-width: 481px) {
  .designWorks > .flexbox {
    margin: -3% 0 0 -1%;
  }
  .designWorks > .flexbox .designWorks_item {
    width: 49%;
    margin: 3% 0 0 1%;
  }
}

@media screen and (min-width: 769px) {
  .designWorks > .flexbox {
    margin: -3% 0 0 -0.8%;
  }
  .designWorks > .flexbox .designWorks_item {
    width: 32.53%;
    margin: 3% 0 0 0.79%;
  }
}

.designWorks_item {
  position: relative;
  border-top: solid 6px #FFBA0F;
  padding-top: 6px;
}

.designWorks_ttl {
  line-height: 1.5;
  background-color: #FFFFFF;
  border: solid 2px #FFBA0F;
  color: #666666;
  font-weight: bold;
  padding: 11px 14px;
  margin-top: 6px;
  -webkit-transition: all .3s;
  transition: all .3s;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.designWorks_ttl span {
  position: relative;
  display: block;
  width: 27px;
  height: 27px;
  border-radius: 50%;
  background-color: #FFBA0F;
  margin-left: auto;
}

.designWorks_ttl span::before, .designWorks_ttl span::after {
  content: "";
  display: block;
  width: 14px;
  height: 2px;
  background-color: #FFFFFF;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition: all .3s;
  transition: all .3s;
}

.designWorks_ttl span::before {
  -webkit-transform: translate(-50%, -50%) rotate(-90deg);
  transform: translate(-50%, -50%) rotate(-90deg);
}

@media screen and (min-width: 769px) {
  .designWorks_ttl:hover {
    background-color: #FFBA0F;
    color: #FFFFFF;
  }
}

.designWorks_ttl.active {
  background-color: #FFBA0F;
  color: #FFFFFF;
}

.designWorks_ttl.active span {
  background-color: #FFFFFF;
}

.designWorks_ttl.active span::before {
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.designWorks_ttl.active span::before, .designWorks_ttl.active span::after {
  background-color: #FFBA0F;
}

.designWorks_cnt {
  line-height: 1.5;
  padding: 0.8125rem;
  background-color: #FFBA0F;
  color: #FFFFFF;
  position: absolute;
  bottom: 53px;
  left: 0;
  overflow: hidden;
  height: 66vw;
}

@media screen and (min-width: 481px) {
  .designWorks_cnt {
    height: 34vw;
  }
}

@media screen and (min-width: 769px) {
  .designWorks_cnt {
    height: 23vw;
    max-height: 230px;
  }
}

.designWorks_cnt_ttl {
  border-bottom: solid 2px #FFFFFF;
  padding-bottom: 5px;
  font-weight: bold;
}

.designWorks_cnt_txt {
  margin-top: 10px;
  font-size: 0.875rem;
}

@media screen and (min-width: 769px) {
  .designWorks_cnt_txt {
    font-weight: bold;
  }
}

/*
製品情報（ノベルティ制作）
================================*/
.page-product-novelty #siteFooter-pc {
  margin-top: 3.75rem;
}

.page-product-novelty .sc_content {
  overflow: hidden;
}

.page-product-novelty_cat {
  position: relative;
  background-color: #FFF8EC;
  padding: 1.5rem 0;
}

@media screen and (min-width: 769px) {
  .page-product-novelty_cat {
    background-color: #FFFFFF;
    padding: 66px 0;
  }
  .page-product-novelty_cat > .flexbox-pc {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .page-product-novelty_cat_img {
    width: 53.61%;
  }
  .page-product-novelty_cat_body {
    width: 42.16%;
  }
}

.page-product-novelty_cat_img {
  text-align: center;
  margin-top: 0.875rem;
}

@media screen and (min-width: 769px) {
  .page-product-novelty_cat_img {
    margin-top: 0;
  }
  .page-product-novelty_cat_img .bgImage {
    padding-top: 100%;
  }
}

.page-product-novelty_cat_body {
  position: relative;
}

@media screen and (min-width: 769px) {
  .page-product-novelty_cat_body {
    margin-top: 0;
    background-color: transparent;
    -webkit-box-shadow: none;
    box-shadow: none;
  }
}

.page-product-novelty_cat_ttl {
  line-height: 1.8;
  font-size: 1.125rem;
  text-align: center;
  position: relative;
  padding-bottom: 0.5rem;
}

.page-product-novelty_cat_ttl::after {
  content: "";
  display: block;
  width: 100%;
  height: 3px;
  background-color: #FFBA0F;
  position: absolute;
  bottom: 0;
  right: 0;
}

@media screen and (min-width: 769px) {
  .page-product-novelty_cat_ttl {
    font-size: 1.5625rem;
    text-align: right;
    padding-bottom: 0.5rem;
  }
  .page-product-novelty_cat_ttl::after {
    content: "";
    display: block;
    width: 100vw;
    height: 5px;
    background-color: #FFBA0F;
  }
}

.page-product-novelty_cat_txt {
  font-size: 0.875rem;
  line-height: 1.92857;
  margin-top: 1.14286em;
  text-align: center;
}

@media screen and (min-width: 769px) {
  .page-product-novelty_cat_txt {
    text-align: right;
    font-size: 1rem;
    margin-top: 1em;
    line-height: 1.75;
  }
}

@media screen and (min-width: 769px) {
  .page-product-novelty_cat.reverse {
    background-color: #FFF8EC;
  }
  .page-product-novelty_cat.reverse > .flexbox-pc {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .page-product-novelty_cat.reverse .page-product-novelty_cat_ttl {
    text-align: left;
  }
  .page-product-novelty_cat.reverse .page-product-novelty_cat_txt {
    text-align: left;
  }
  .page-product-novelty_cat.reverse .page-product-novelty_cat_ttl::after {
    left: 0;
    right: auto;
  }
}

.page-product-novelty_point {
  padding: 55px 0;
  background-color: #FFBA0F;
}

.page-product-novelty_point_ttl {
  font-size: 1.0625rem;
  line-height: 1.76471;
  text-align: center;
}

@media screen and (min-width: 769px) {
  .page-product-novelty_point_ttl {
    font-size: 1.4375rem;
    line-height: 1.82609;
  }
}

.page-product-novelty_point .page-product_point_ttl {
  line-height: 1.5625;
}

@media screen and (min-width: 769px) {
  .page-product-novelty_point .page-product_point_ttl {
    font-size: 1.4375rem;
    line-height: 1.65217;
  }
}

.page-product-novelty_point .page-product_point_item::before {
  border: solid 4px #FFFFFF;
}

/*
    導入実績
================================*/
.page-work_archive_inner {
  margin-top: 0.875rem;
}

@media screen and (min-width: 769px) {
  .page-work_archive_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    margin-top: 1.875rem;
  }
}

.page-work_case_menu {
  margin-top: 3.125rem;
}

@media screen and (min-width: 769px) {
  .page-work_case_menu {
    margin-top: 0;
  }
}

.page-work_case_menu > .flexbox {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -8px 0 0 -8px;
}

.page-work_case_menu > .flexbox .page-work_case_menu_item {
  margin: 8px 0 0 8px;
}

@media screen and (min-width: 769px) {
  .page-work_case_menu > .flexbox {
    margin: -1.5% 0 0 -1.5%;
  }
  .page-work_case_menu > .flexbox .page-work_case_menu_item {
    width: 23.5%;
    margin: 1.5% 0 0 1.5%;
  }
}

.page-work_case_menu_item a {
  display: block;
  padding: 0.5rem;
  line-height: 1.3;
  background-color: #E6E6E6;
  border: solid 1px #808080;
  font-size: 0.8125rem;
}

@media screen and (min-width: 769px) {
  .page-work_case_menu_item a {
    font-size: 1rem;
    text-align: center;
    font-weight: bold;
    padding: 0.25em;
    height: 48px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #FFBA0F;
    background-color: #FFFFFF;
    border: solid 2px #FFBA0F;
  }
  .page-work_case_menu_item a:hover {
    color: #FFFFFF;
    background-color: #FFBA0F;
  }
}

/*
    制作の流れ
================================*/
.flowBox_item {
  border: solid 3px #FFBA0F;
  border-top: solid 12px #FFBA0F;
  padding: 0.875rem 0.625rem;
}

@media screen and (min-width: 769px) {
  .flowBox_item {
    padding: 12px 20px 20px;
  }
}

.flowBox_item + .flowBox_item {
  margin-top: 108px;
  position: relative;
}

.flowBox_item + .flowBox_item::before, .flowBox_item + .flowBox_item::after {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.flowBox_item + .flowBox_item::before {
  width: 68px;
  height: 68px;
  border-radius: 50%;
  border: solid 1px #FFBA0F;
  top: -100px;
}

.flowBox_item + .flowBox_item::after {
  width: 20px;
  height: 20px;
  border-right: solid 4px #FFBA0F;
  border-bottom: solid 4px #FFBA0F;
  -webkit-transform: translateX(-50%) rotate(45deg);
  transform: translateX(-50%) rotate(45deg);
  top: -80px;
}

.flowBox_block {
  margin-top: 1.875rem;
}

.flowBox_header {
  font-weight: bold;
  line-height: 1.6;
}

.flowBox_header.flexbox {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.flowBox_header_num {
  color: #FFBA0F;
  border-right: solid 3px #FFBA0F;
  padding: 0.375rem 0.375rem 0.375rem 0;
  font-size: 0.9375rem;
  text-align: center;
}

.flowBox_header_ttl {
  padding-left: 0.75rem;
}

@media screen and (min-width: 769px) {
  .flowBox_header_num {
    font-size: 1.4375rem;
    padding: 20px 53px 20px 23px;
  }
  .flowBox_header_ttl {
    font-size: 1.4375rem;
    padding-left: 25px;
  }
}

.flowBox_flexbox_txt_data {
  color: #808080;
  font-size: 0.75rem;
  margin-top: 1rem;
}

.flowBox_flexbox_txt_data ul {
  list-style: disc;
  line-height: 1.5;
  padding-left: 1.57143em;
}

@media screen and (min-width: 769px) {
  .flowBox_flexbox_txt_data {
    font-size: 0.9375rem;
  }
}

.flowBox_flexbox_img {
  text-align: center;
  margin: 1rem auto;
  width: 80%;
  max-width: 254px;
}

@media screen and (min-width: 769px) {
  .flowBox_flexbox.flexbox-pc .flowBox_flexbox_txt {
    width: 63%;
  }
  .flowBox_flexbox.flexbox-pc .flowBox_flexbox_img {
    width: 35%;
    margin: 0;
    max-width: 100%;
  }
}

.flowBox_btn {
  min-height: 4.25rem;
  border-radius: 6px;
  max-width: 400px;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  padding: 0 1rem;
  padding-left: 4.25rem;
  width: auto;
  margin: 1rem auto 0;
}

.flowBox_btn::before {
  content: "";
  display: block;
  background-image: url();
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  left: 1rem;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.flowBox_btn-mail::before {
  width: 40px;
  height: 30px;
  background-image: url(../images/common/icon_btn_mail.svg);
}

.flowBox_btn-tel {
  font-size: 1.25rem;
  white-space: nowrap;
}

.flowBox_btn-tel::before {
  width: 32px;
  height: 33px;
  background-image: url(../images/common/icon-phone.svg);
}

.flowBox_btn-tel span {
  font-size: 0.625rem;
  margin-left: 0.5rem;
}

@media screen and (max-width: 320px) {
  .flowBox_btn-tel {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .flowBox_btn-tel span {
    margin-left: 0;
  }
  .flowBox_btn-tel span br {
    display: none;
  }
}

@media screen and (min-width: 769px) {
  .flowBox_btn {
    height: 68px;
    margin: 1rem 0 0;
  }
  .flowBox_btn-tel {
    font-size: 1.5625rem;
  }
  .flowBox_btn-tel span {
    font-size: 0.8125rem;
  }
}

.flowBox_hd {
  font-weight: bold;
  color: #FFBA0F;
  text-align: center;
  margin-bottom: 1rem;
  line-height: 1.5;
}

@media screen and (min-width: 769px) {
  .flowBox_hd {
    text-align: left;
    font-size: 1.5rem;
  }
}

.flowBox p {
  font-size: 0.875rem;
}

@media screen and (min-width: 769px) {
  .flowBox p {
    font-size: 1rem;
  }
}

/*
    お知らせ
================================*/
.page-info_sc_ttl {
  font-size: 1.125rem;
  line-height: 1.5;
  text-align: center;
  font-weight: bold;
}

.page-info_sc_ttl::after {
  content: "";
  display: block;
  width: 200px;
  height: 3px;
  background-color: #FFBA0F;
  margin: 1rem auto 0;
}

@media screen and (min-width: 769px) {
  .page-info_sc_ttl {
    font-size: 1.5625rem;
    line-height: 1.44;
  }
}

.page-info .pagenation_item {
  border: solid 1px #333333;
}

.page-info .pagenation_item a:hover {
  background-color: #333333;
}

.page-info .pagenation_item.current a {
  background-color: #333333;
}

.page-info .pagenation .btn {
  background-color: #FFBA0F;
  margin-bottom: 1.75rem;
}

.infoArchive_item {
  padding: 1rem 0;
  border-bottom: solid 1px #808080;
}

.infoArchive_ttl {
  text-decoration: underline;
  margin-top: 1rem;
  font-size: 0.875rem;
  line-height: 1.5;
}

@media screen and (min-width: 769px) {
  .infoArchive_ttl {
    font-size: 1rem;
  }
  .infoArchive_ttl a:hover {
    opacity: 0.5;
  }
}

.infoArchive_meta {
  line-height: 1.5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.infoArchive_meta li + li {
  margin-left: 0.75rem;
}

.infoArchive_meta_cat {
  font-size: 0.875rem;
  background-color: #FFBA0F;
  min-width: 120px;
  text-align: center;
  font-weight: bold;
  padding: 4px 1em 2px;
  display: inline-block;
}

.infoArchive_meta_date {
  font-size: 0.8125rem;
  color: #828282;
}

@media screen and (min-width: 769px) {
  .infoArchive_meta_cat {
    font-size: 1rem;
    min-width: 150px;
  }
  .infoArchive_meta_date {
    font-size: 1.125rem;
  }
}

/*
    お知らせ（詳細）
================================*/
.page-info-detail {
  background-color: #F5F5F5;
}

.infoPost {
  padding: 1.25rem 0.5rem;
  background-color: #FFFFFF;
}

@media screen and (min-width: 769px) {
  .infoPost {
    padding: 40px 74px;
  }
}

.infoPost_meta_cat {
  font-size: 0.875rem;
  background-color: #FFBA0F;
  min-width: 120px;
  text-align: center;
  font-weight: bold;
  padding: 2px 1rem 1px;
  margin-top: 0.5rem;
  display: inline-block;
  line-height: 1.5;
}

.infoPost_meta_date {
  font-size: 0.875rem;
  color: #828282;
}

@media screen and (min-width: 769px) {
  .infoPost_meta_cat {
    margin-top: 1.25rem;
    font-size: 1.3125rem;
    min-width: 173px;
  }
  .infoPost_meta_date {
    font-size: 1.25rem;
  }
}

.infoPost_header {
  border-bottom: solid 1px #808080;
  padding-bottom: 1.125rem;
}

@media screen and (min-width: 769px) {
  .infoPost_header {
    padding-bottom: 1.25rem;
  }
}

.infoPost_ttl {
  margin-top: 1.25rem;
  font-size: 1.125rem;
  line-height: 1.5;
}

@media screen and (min-width: 769px) {
  .infoPost_ttl {
    font-size: 1.5625rem;
  }
}

.infoPost_content {
  margin-top: 36px;
}

.infoPost_content p {
  margin-top: 1em;
}

/*
    お問合せ
================================*/
.page-contact {
  background-color: #F5F5F5;
}

.page-contact_read {
  font-size: 0.875rem;
  text-align: center;
}
.page-contact_otherbox{
  margin:40px 0;
}
.page-contact_otherbox  li{
  display: inline-block;
  width: 49.7%;
  margin: 0 auto;
  text-align: center;
  vertical-align: middle;
}
.page-contact_telbox{
  background-color: #fceec1;
  height: 150px;
  padding: 20px;
}
.page-contact_linebox{
  background-color: #d9dfae;
  height: 150px;
  padding: 20px;
}
.telbox_ttl{
  font-size: 18px;
  font-weight: bold;
  color: #d18600;
}
.telbox_num{
  font-size: 30px;
  font-weight: bold;
}
.linebox_ttl{
  font-size: 18px;
  font-weight: bold;
  color: #567562;
}
.linebox_num{
  font-size: 20px;
  background-color: #567562;
  color: #fff;
  font-weight: bold;
  border-radius: 50px;
  margin: 8px auto 15px;
}



.page-contact_tel {
  font-size: 1.3125rem;
  margin-top: 0.625rem;
  text-align: center;
  font-weight: bold;
  line-height: 1.3;
  letter-spacing: 2px;
}

.page-contact_tel span {
  font-size: 1.875rem;
}

.page-contact_open {
  font-size: 0.875rem;
  text-align: center;
}

.page-contact_box {
  max-width: 770px;
  margin: auto;
  margin-top: 1.25rem;
  background-color: #FFB00F;
  padding: 1rem;
}

.page-contact_link {
  color: #FFBA0F;
  text-align: center;
  font-size: 1.125rem;
  text-decoration: underline;
  margin-top: 3.75rem;
  display: inline-block;
}
@media screen and (max-width: 980px){
  .telbox_txt{
    font-size: 12px;
  }
  .linebox_txt{
    font-size: 12px;
  }
}
@media screen and (max-width: 769px){
  .page-contact_otherbox  li{
    display: block;
    width: 100%;
  }
  .page-contact_telbox{
    padding: 10px;
    margin-bottom: 10px;
    height: auto;
  }
  .page-contact_linebox{
    padding: 10px;
    height: auto;
  }
  .telbox_ttl{
    font-size: 16px;
  }
  .telbox_num{
    font-size: 24px;
  }
  .linebox_ttl{
    font-size: 16px;
  }
  .linebox_num{
    font-size: 16px;
    border-radius: 50px;
    margin: 8px auto 15px;
    display: inline-block;
    padding: 3px 30px;
    margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .page-contact_read {
    font-size: 1.25rem;
  }
}

  .page-contact_tel {
    font-size: 2.125rem;
    margin-top: 14px;
    letter-spacing: 4px;
  }
  .page-contact_tel span {
    font-size: 3rem;
  }
  .page-contact_open {
    font-size: 1.25rem;
    margin-top: 14px;
  }
  .page-contact_link {
    margin-top: 80px;
  }
}

.page-contact .page_content .inner {
  background-color: #FFFFFF;
  padding-top: 1.875rem;
  padding-bottom: 1.875rem;
  width: 95%;
}

@media screen and (min-width: 769px) {
  .page-contact .page_content .inner {
    width: 100%;
    padding-top: 48px;
    padding-bottom: 48px;
  }
}

.page-contact .sc_content {
  margin-top: 22px;
}

.contactForm {
  max-width: 770px;
  margin: auto;
  margin-top: 1.875rem;
  padding: 0.875rem 0.625rem;
  -webkit-box-shadow: 0 0 2px rgba(30, 30, 30, 0.75);
  box-shadow: 0 0 2px rgba(30, 30, 30, 0.75);
  border-radius: 5px;
}

.contactForm .fo-name {
  max-width: 220px;
}

.contactForm .fo-name + .fo-name {
  margin: 1rem 0 0 0;
}

.contactForm .fo-name #fo-name-last, .contactForm .fo-name #fo-name-first {
  width: calc(100% - 1.5em);
  margin-left: 0.5em;
}

@media screen and (min-width: 769px) {
  .contactForm .fo-name {
    display: inline-block;
  }
  .contactForm .fo-name + .fo-name {
    margin: 0 0 0 1rem;
  }
}

@media screen and (min-width: 769px) {
  .contactForm {
    margin-top: 40px;
    padding: 40px 64px;
    -webkit-box-shadow: 0 0 4px rgba(30, 30, 30, 0.75);
    box-shadow: 0 0 4px rgba(30, 30, 30, 0.75);
  }
}

.contactForm .btn-primary {
  color: #333333;
}

/*
    フォーム
================================*/
form {
  line-height: 1.5;
}

form dl {
  margin: 0 auto;
  overflow: hidden;
}

form dl dt {
  clear: both;
  width: auto;
  float: none;
  overflow: hidden;
  position: relative;
  font-weight: bold;
  margin-top: 24px;
}

form dl dt .required {
  margin-left: 1em;
  font-size: 13px;
  text-align: center;
  line-height: 1;
  width: 54px;
  padding: 4px;
  color: #FFFFFF;
  border-radius: 4px;
  background-color: #D8412F;
}

form dl dd {
  width: auto;
  float: none;
  margin-top: 10px;
}

form input[type="text"],
form input[type="email"],
form input[type="tel"],
form input[type="date"],
form textarea {
  width: 100%;
  padding: 10px 2%;
  border: 1px solid #4D4D4D;
  border-radius: 5px;
  background: #F5F5F5;
  -webkit-appearance: none;
  font-size: 100%;
}

form textarea {
  display: block;
  width: 100%;
  padding: 15px 2%;
  border: 1px solid #707070;
  resize: vertical;
  -webkit-appearance: none;
  font-size: 100%;
}

form ul li input[type="radio"],
form ul li input[type="checkbox"] {
  margin-right: 10px;
  /* margin-top: 10px; */
  margin-top: -3px;
}

/* form ul li:first-child input[type="radio"],
// form ul li:first-child input[type="checkbox"] {
// 	margin-top: 0px;
} */
form select {
  font-size: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 10px 2%;
  border: 1px solid #4D4D4D;
  border-radius: 5px;
  background: #F5F5F5;
  background-image: url(../images/common/icon_select_arrow.svg);
  background-repeat: no-repeat;
  background-size: 12px 10px;
  background-position: right 10px center;
  width: 100%;
}

form select option {
  background-color: #FFFFFF;
}

select::-ms-expand {
  display: none;
}

form ul {
  list-style-type: none;
}

form ul li label:hover {
  cursor: pointer;
}

form p#form_submit {
  width: 90%;
  margin: 0 auto;
  padding: 15px 0;
}

form input[type="button"],
form input[type="submit"] {
  border-radius: 0;
  -webkit-appearance: none;
  cursor: pointer;
}

form input[type="button"]:hover {
  cursor: pointer;
}

.form_submit {
  margin-top: 40px;
}

.form_errorMsg {
  font-size: 0.875rem;
  color: #EB2832;
  font-weight: normal;
  margin-left: 0.25em;
}

form .form_error {
  background-color: #FDEDED;
}

form .form_error::-webkit-input-placeholder {
  color: #FA1F05;
}

form .form_error:-ms-input-placeholder {
  color: #FA1F05;
}

form .form_error::-ms-input-placeholder {
  color: #FA1F05;
}

form .form_error::placeholder {
  color: #FA1F05;
}

form select.form_error {
  color: #FA1F05;
}

form input[type="date"].form_error {
  color: #FA1F05;
}

/*
    スタッフブログ
================================*/
.page-blog_header {
  text-align: center;
  line-height: 1.5;
}

.page-blog_header_ttl {
  font-size: 1.375rem;
  font-weight: normal;
}

.page-blog_header_subtxt {
  font-size: 1.125rem;
  margin-bottom: 10px;
}

.page-blog .catNavi {
  border-bottom: solid 1px #FFBA0F;
}

.page-blog .catNavi_menu {
  padding: 2rem 14px;
}

.page-blog .catNavi_menu > .flexbox {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media screen and (min-width: 769px) {
  .page-blog .catNavi {
    margin-top: 0;
  }
}

.page-blog .pagenation_item {
  border: solid 1px #333333;
}

.page-blog .pagenation_item a:hover {
  background-color: #333333;
}

.page-blog .pagenation_item.current a {
  background-color: #333333;
}

.page-blog .pagenation .btn {
  background-color: #FFBA0F;
  margin-bottom: 1.75rem;
}

.page-blog-detail .catNavi {
  background-color: #FFFFFF;
}

.page-blog-detail .catNavi_menu {
  padding: 2rem 14px;
}

.page-blog-detail .catNavi_menu > .flexbox {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.page-blog-detail .post {
  background-color: #FFFFFF;
}

@media screen and (min-width: 769px) {
  .page-blog-detail {
    background-color: #F5F5F5;
  }
  .page-blog-detail .post {
    padding: 40px 75px;
  }
}

.page-blog-detail .pagenation {
  text-align: center;
}

.page-blog-detail_pagenation_link {
  text-decoration: underline;
}

.page-blog-detail .relatedArticle {
  background-color: #FFFFFF;
  padding: 1.875rem 0;
  margin-top: 1.875rem;
}

@media screen and (min-width: 769px) {
  .page-blog-detail .relatedArticle {
    padding: 50px 0;
    margin-top: 50px;
  }
}

.page-blog-detail #siteFooter-pc {
  margin-top: 0;
}

.blogArchive {
  margin: 0 -10px;
}

.blogArchive > .flexbox {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -2% 0 0 -2%;
}

.blogArchive > .flexbox .blogArchive_item {
  width: 48%;
  margin: 2% 0 0 2%;
}

@media screen and (min-width: 481px) {
  .blogArchive > .flexbox {
    margin: -1% 0 0 -1%;
  }
  .blogArchive > .flexbox .blogArchive_item {
    width: 32.3%;
    margin: 1% 0 0 1%;
  }
}

@media screen and (min-width: 769px) {
  .blogArchive > .flexbox {
    margin: -0.8% 0 0 -0.8%;
  }
  .blogArchive > .flexbox .blogArchive_item {
    width: 24.1%;
    margin: 0.8% 0 0 0.8%;
  }
}

.blogArchive_item {
  border: solid 1px #B7B7B7;
  padding: 0.375rem;
  overflow: hidden;
  position: relative;
}

@media all and (-ms-high-contrast: none) {
  .blogArchive_item::after {
    content: "";
    display: block;
    width: 100%;
    height: 0.5rem;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), to(white));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0), white);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0), white);
    position: absolute;
    bottom: 0;
    left: 0;
  }
}

.blogArchive_item:hover .blogArchive_img .bgImage {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
  -webkit-transition: all .3s;
  transition: all .3s;
}

.blogArchive_item:hover .blogArchive_body {
  opacity: 0.5;
}

.blogArchive_img {
  position: relative;
  overflow: hidden;
  border: solid 1px #B7B7B7;
}

.blogArchive_img .bgImage {
  padding-top: 65.02058%;
  -webkit-transition: all .3s;
  transition: all .3s;
}

@media screen and (min-width: 769px) {
  .blogArchive_img .bgImage {
    padding-top: 65.02058%;
  }
}

.blogArchive_img .blogArchive_meta {
  width: 100%;
  background-color: rgba(51, 51, 51, 0.81);
  padding: 2px 4px 3px;
  position: absolute;
  bottom: 0;
  left: 0;
}

.blogArchive_img .blogArchive_meta_cat, .blogArchive_img .blogArchive_meta_date {
  display: inline;
  color: #FFFFFF;
  font-size: 0.625rem;
  line-height: 1.4;
}

.blogArchive_img .blogArchive_meta_cat::before {
  content: "";
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: solid 1px #FFFFFF;
  border-right: solid 1px #FFFFFF;
  margin-right: 0.5em;
  -webkit-transform: rotate(45deg) translateY(-2px);
  transform: rotate(45deg) translateY(-2px);
}

.blogArchive_img .blogArchive_meta_date {
  margin-left: 0.5em;
}

.blogArchive_img .blogArchive_meta_date::before {
  content: "/";
  margin-right: 0.5em;
}

@media screen and (min-width: 769px) {
  .blogArchive_img .blogArchive_meta {
    padding: 7px 8px 5px;
  }
  .blogArchive_img .blogArchive_meta_cat {
    font-size: 0.8125rem;
  }
  .blogArchive_img .blogArchive_meta_date {
    font-size: 0.6875rem;
  }
}

.blogArchive_body {
  margin-top: 0.75rem;
  line-height: 1.5;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 6;
  -webkit-box-orient: vertical;
  -webkit-transition: all .3s;
  transition: all .3s;
}

@media all and (-ms-high-contrast: none) {
  .blogArchive_body {
    position: relative;
    max-height: 7em;
    text-overflow: ellipsis;
  }
}

.blogArchive_ttl {
  display: inline;
  font-size: 0.75rem;
}

.blogArchive_txt {
  display: inline;
  color: #808080;
  font-size: 0.625rem;
  margin-top: 0.5rem;
  line-height: 1.8;
}

@media screen and (min-width: 769px) {
  .blogArchive_ttl {
    font-size: 0.9375rem;
  }
  .blogArchive_txt {
    font-size: 0.8125rem;
    line-height: 1.73;
  }
}

.relatedArticle_ttl {
  color: #4D4D4D;
  font-size: 1.25rem;
  margin-bottom: 1em;
}

@media screen and (min-width: 769px) {
  .relatedArticle_ttl {
    font-size: 1.4375rem;
  }
}

@media screen and (min-width: 769px) {
  .relatedArticle .blogArchive > .flexbox {
    margin: -1% 0 0 -1%;
  }
  .relatedArticle .blogArchive > .flexbox .blogArchive_item {
    width: 32.3%;
    margin: 1% 0 0 1%;
    height: 397px;
  }
}

/*
    記事
================================*/
.post_header_cat {
  font-size: 0.8125rem;
  color: #808080;
  margin-bottom: 0.5rem;
}

.post_header_cat a {
  text-decoration: underline;
}

.post_header_cat span {
  -webkit-transform: translateY(-1px);
  transform: translateY(-1px);
  display: inline-block;
}

.post_header_cat span::after {
  content: "";
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: solid 1px #333333;
  border-right: solid 1px #333333;
  margin-right: 8px;
  margin-left: 5px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.post_header_date {
  font-size: 0.8125rem;
  color: #4D4D4D;
  margin-bottom: 0.5rem;
}

@media screen and (min-width: 769px) {
  .post_header_cat {
    font-size: 1rem;
  }
  .post_header_date {
    font-size: 1.125rem;
  }
}

.post_ttl {
  line-height: 1.5;
}

@media screen and (min-width: 769px) {
  .post_ttl {
    font-size: 1.5rem;
    line-height: 1.58333;
  }
}

.post_content {
  margin-top: 1.875rem;
}

@media screen and (min-width: 769px) {
  .post_content {
    margin-top: 38px;
  }
}

.post_content p {
  font-size: 0.875rem;
  line-height: 1.6;
  margin-top: 1rem;
  color: #808080;
}

@media screen and (min-width: 769px) {
  .post_content p {
    font-size: 1rem;
    margin-top: 2rem;
  }
}

.post_content p img {
  display: block;
  margin: auto;
}

.post_content .hd {
  line-height: 1.5;
  color: #4D4D4D;
}

@media screen and (min-width: 769px) {
  .post_content .hd + .hd {
    margin-top: 1.875rem;
  }
}

.post_content .hd-1 {
  font-size: 1.125rem;
  margin-top: 1.66667em;
  padding: 0 0.5rem;
  border-left: 3px solid #4D4D4D;
}

@media screen and (min-width: 769px) {
  .post_content .hd-1 {
    font-size: 1.5rem;
    margin-top: 3.16667em;
  }
}

.post_content .hd-2 {
  font-size: 1rem;
  margin-top: 1.5em;
  position: relative;
  padding: 0.75rem;
  background-color: #F0F0F0;
}

@media screen and (min-width: 769px) {
  .post_content .hd-2 {
    font-size: 1.25rem;
    margin-top: 3.2em;
  }
}

/*
    企業情報
================================*/
.page-company_sc_ttl {
  font-size: 1.125rem;
  border-bottom: solid 1px #707070;
  padding-bottom: 0.5em;
}

@media screen and (min-width: 769px) {
  .page-company_sc_ttl {
    font-size: 1.375rem;
  }
}

.page-company .txt-link {
  font-size: 1.125rem;
  margin-top: 2rem;
  font-weight: bold;
}

@media screen and (min-width: 769px) {
  .page-company .txt-link {
    margin-top: 64px;
  }
}

.page-company #siteFooter-pc {
  margin-top: 0;
}

.companyData > .flexbox {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.companyData > .flexbox dt, .companyData > .flexbox dd {
  width: 100%;
  padding: 1rem 0;
}

.companyData > .flexbox dt {
  padding: 1rem 0 0;
}

.companyData > .flexbox dd {
  padding: 0 0 1rem;
}

.companyData > .flexbox .companyData_map {
  width: 100%;
}

@media screen and (min-width: 769px) {
  .companyData > .flexbox dt, .companyData > .flexbox dd {
    width: 100%;
    padding: 1rem;
  }
  .companyData > .flexbox dt {
    width: 18%;
  }
  .companyData > .flexbox dd {
    width: 82%;
  }
}

.companyData dt, .companyData dd {
  line-height: 1.5;
}

.companyData dt {
  font-weight: bold;
  font-size: 1.0625rem;
}

.companyData-access {
  margin-top: 1rem;
  padding: 1rem 0;
  background-color: #FCFCFC;
}

@media screen and (min-width: 769px) {
  .companyData-access {
    margin-top: 30px;
    padding: 30px 0;
  }
}

.companyData_map .iframeWrap {
  padding-top: 67.76119%;
}

@media screen and (min-width: 769px) {
  .companyData_map .iframeWrap {
    padding-top: 43.47826%;
  }
}

/*
    プライバシーポリシー
================================*/
.page-policy_sc_ttl {
  font-size: 1.125rem;
  border-bottom: solid 1px #707070;
  padding-bottom: 0.5em;
  text-align: left;
}

@media screen and (min-width: 769px) {
  .page-policy_sc_ttl {
    font-size: 1.375rem;
  }
}

.page-policy .txt-link {
  font-size: 1.125rem;
  margin-top: 2rem;
  font-weight: bold;
}

@media screen and (min-width: 769px) {
  .page-policy .txt-link {
    margin-top: 64px;
  }
}

.policy {
  font-size: 0.875rem;
}

@media screen and (min-width: 769px) {
  .policy {
    font-size: 0.9375rem;
  }
}

.policy h3 {
  margin-top: 2em;
  font-weight: normal;
  line-height: 1.6;
}

.policy p {
  margin-top: 1em;
  line-height: 1.6;
}

.policy ul {
  margin-top: 1em;
  line-height: 1.6;
  list-style: disc;
  padding-left: 2em;
}

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