/* ----------------
共通設定
------------------ */
* {
  box-sizing: border-box;
}

body {
  background: #f7f4ea;
  font-family: Meiryo, 'メイリオ', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'ＭＳ Ｐゴシック', 'MS PGothic', Verdana, sans-serif;
  -webkit-font-smoothing: antialiased;
  font-size: 14px;
  color: #4a4a4a;
}

.topBody {
  background-image: url(../images/bg_sp.jpg);
  background-size: 100% auto;
  background-repeat: no-repeat;

  /*	background-attachment: scroll;*/
}

/* リンクの設定 */
a:link {
  color: #006cd8;
  text-decoration: none;
}

a:visited {
  border: none;
  color: #7f5ad7;
  text-decoration: none;
}

a:active {
  border: none;
  color: #006cd8;
  text-decoration: none;
}

a:hover {
  border: none;
  color: #006cd8;
  text-decoration: underline;
}

/* ----------------
編集ページ
------------------ */
#adminBox {
  margin-bottom: 0;
}

.commonEntry .acms-admin-accordion-title {
  margin-top: 20px;
  margin-right: 0;
  margin-left: 0;
}

/*acms.cssのオーバーライド*/
.acms-site-form th {
  width: 150px;
}

@media screen and (max-width: 767px) {
  .acms-site-form th {
    width: 100%;
  }
}

@media screen and (max-width: 479px) {
  [class*='column-image-'],
  [class*='column-media-'],
  [class*='column-eximage-'] {
    margin-bottom: 20px;
    padding: 0;
    float: none;
    display: block;

    /*width: auto!important;*/
  }
}

@media screen and (max-width: 479px) {
  .acms-grid-r [class*='acms-col'] {
    padding-right: 10px;
    padding-left: 10px;
  }
}

/* アポイントメント申し込みフォーム */
@media screen and (max-width: 767px) {
  #exhibition .manualImg {
    width: 100%;
    height: auto;
  }

  #exhibition table.about th {
    text-align: left !important;
  }
}

/*
旧サイトのクラス
*/

/*特徴ページ*/
.otherFunctionList span {
  display: block;
  width: 100px;
  height: 100px;
  background: #ccc;
  color: #fff;
  font-size: 50px;
  line-height: 2.0em;
  border-radius: 50%;
  text-align: center;
}

.otherFunctionList .color_1 {

  /*赤紫*/
  background-color: #d083d3;
}

.otherFunctionList .color_2 {

  /*青紫*/
  background-color: #9991ea;
}

.otherFunctionList .color_3 {

  /*青色*/
  background-color: #7cb4f4;
}

.otherFunctionList .color_4 {

  /*青緑*/
  background-color: #50c2c6;
}

.otherFunctionList .color_5 {

  /*黄緑*/
  background-color: #a1d134;
}

.otherFunctionList .color_6 {

  /*黄色*/
  background-color: #f1b52d;
}

.otherFunctionList .color_7 {

  /*橙色*/
  background-color: #fea452;
}

.otherFunctionList .color_8 {

  /*桃色*/
  background-color: #ff9897;
}

.otherFunctionList .color_9 {

  /*暗いグレー*/
  background-color: #5f666c;
  color: #fff;
}

.otherFunctionList .color_10 {

  /*赤*/
  background-color: #c40f32;
  color: #fff;
}

.commonEntry .functionCopy {
  margin: 10px 0 0;
  font-size: 18px;
}

.commonEntry .functionName {
  margin: 0 0 20px;
  font-size: 26px;
  font-weight: normal;
}

@media screen and (max-width: 767px) {
  .otherFunctionList span {
    margin: 0 auto 10px auto;
  }
}

.commonEntry .iconHeadline2,
.entryColumn.is-style h2.iconHeadline2{
  position: relative;
  min-height: 25px;
  margin: 40px 20px 10px 0;
  padding: 10px 20px 5px 60px;
  background: #FFFFFF;
  border-bottom: solid 2px #E1DBC6;
  font-size: 17px;
}

.commonEntry .iconHeadline2 span,
.entryColumn.is-style h2.iconHeadline2 span {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 40px;
  height: 40px;
  padding: 0;
  text-align: center;
  background: #C40F32;
  color: #FFFFFF;
  font-size: 26px;
  line-height: 1.5em;
  text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.2);
}

.entryColumn.is-style h2.iconHeadline2::before {
  content: none;
}

.commonEntry .iconHeadline3,
.entryColumn.is-style h3.iconHeadline3{
  margin: 30px 10px 10px 10px;
  padding: 8px 20px 5px;
  background: #222;
  color: #fff;
  text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.2);
  border: 0;
  border-radius: 6px 6px 0 0;
  font-size: 22px;
}

.commonEntry .iconHeadline3 span,
.entryColumn.is-style h3.iconHeadline3 span {
  margin: 0 10px 0 0;
}

.entryColumn.is-style h3.iconHeadline3::before,
.entryColumn.is-style h3.bgRound::before {
  content: none;
}

.commonEntry .iconHeadline4 {
  margin: 30px 10px 10px 10px;
  padding: 5px 20px 3px;
  background: #e1dbc6;
  font-size: 18px;
  border: none;
}

.commonEntry .iconHeadline4 span {
  margin: 0 10px 0 0;
}

.priceBox {
  position: relative;
  background: #fff;
  margin: 0 0 2px 0;
  padding: 1px 0;
  clear: both;
}

.commonEntry .priceBox p {
  margin: 0 20px 20px;
  font-size: 12px;
}

.commonEntry .priceBox .price {
  position: absolute;
  top: 13px;
  right: 20px;
  margin: 0;
  color: #5f666c;
  text-align: right;
  font-size: 22px;
}

.commonEntry .price span {
  font-size: 0.5em;
}

.commonEntry .priceBox h4,
.commonEntry .priceBox h5 {
  margin: 20px 20px 10px;
  font-size: 18px;
}

.entryHr {
  border: none;
}

.icon-red {
  color: #c40f32;
}

a:hover .icon-red {
  text-decoration: none;
}

.icon-white {
  color: #fff;
}

.required {
  margin: 0 10px;
  padding: 1px 8px;
  background-color: #c40f32;
  color: #fff;
  font-size: 10px;
  border-radius: 3px;
  font-weight: normal;
}

.label-option {
  margin: 0 10px;
  padding: 1px 8px;
  background-color: #999;
  color: #fff;
  font-size: 10px;
  border-radius: 3px;
  font-weight: normal;
}

.commonEntry .socialBtnBox {
  text-align: right;
}

/* スクロールのターゲット */
.scrollTargetWrap {
  position: relative;
}

.scrollTarget {
  position: absolute;
  top: -70px;
}

/* メインカラム装飾 */
.entryColumn .pointBox1 {
  margin-right: 10px;
  margin-left: 10px;
}

.pointBox1 {
  clear: both;
  margin-bottom: 20px;
  padding: 20px;
  background: url(../images/pointBoxBg.png);
  border-radius: 6px;
}

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

.pointBox1 .iconHeadline3 {
  margin: -20px -20px 15px -20px;
}

.pointBox1 td {
  background: #fff;
}

/* リスト */
.discList {
  list-style-type: square;
  padding: 0 0 0 25px;
}

@media screen and (max-width: 767px) {
  .commonEntry .iconHeadline3 {
    font-size: 15px;
    margin-top: 20px;
    margin-bottom: 10px;
  }

  .pointBox1 {
    padding: 10px 10px 20px 10px;
  }

  .pointBox1 .iconHeadline3 {
    margin: -10px -10px 15px -10px;
  }

  .commonEntry .iconHeadline4 {
    font-size: 14px;
    margin-top: 10px;
  }

  .commonEntry .priceBox h4,
  .commonEntry .priceBox h5 {
    margin: 10px 10px 0;
  }

  .commonEntry .priceBox .price {
    position: static;
    margin: 0 0 10px 0;
  }

  .slideTable {
    overflow: auto;
    margin: 0 0 20px 0;
    border: 1px solid #e1dbc6;
  }

  .commonEntry .slideTable table {
    margin: 0;
  }

  .commonEntry .slideTable tr {
    display: table-row;
  }

  .commonEntry .slideTable tbody {
    display: table-row-group;
  }

  .commonEntry .slideTable th,
  .commonEntry .slideTable td {
    display: table-cell;
    white-space: nowrap;
  }
}

@media screen and (max-width: 479px) {
  .priceBox {
    padding: 10px;
  }

  .commonEntry .priceBox h4,
  .commonEntry .priceBox h5 {
    font-size: 15px;
  }

  .commonEntry .priceBox .price {
    font-size: 18px;
  }

  .commonEntry .priceBox .price span {
    font-size: 14px;
  }
}

/*　スタイルバナー　*/
.styleBanner {
  position: relative;
  background: #72787d; /* Old browsers */
  background: -webkit-linear-gradient(top, #72787d 0%, #5f666c 100%); /* Chrome10+,Safari5.1+ */
  background: linear-gradient(to bottom, #72787d 0%, #5f666c 100%); /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#72787d', endColorstr='#5f666c', GradientType=0); /* IE6-9 */
  color: #fff;
  text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.3);
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  font-size: 18px;
  padding: 20px 0;
  text-indent: 20px;
  margin-bottom: 20px;
}

.styleBanner:hover {
  background: #72787d;
}

.styleBanner.red {
  background: #c40f32;
}

.styleBanner.red:hover {
  background: #c40f32;
  opacity: 0.8;
}

.styleBanner a,
.styleBanner a:link,
.styleBanner a:visited,
.styleBanner a:active {
  color: #fff;
}

.styleBanner a:hover {
  text-decoration: none;
}

.styleBanner .icon {
  font-size: 26px;
  margin: 0 10px 0 0;
  vertical-align: -0.1em;
}

.styleBanner .arrow {
  display: block;
  position: absolute;
  right: 20px;
  bottom: 30px;
}

.styleBanner h3 {
  margin: 0;
}

.styleBanner .smallText {
  margin: 0 0 0 30px;
  font-size: 13px;
}

@media screen and (max-width: 767px) {
  .styleBanner {
    padding: 15px;
    text-indent: 0;
    padding-right: 35px;
  }

  .styleBanner .smallText {
    display: block;
  }

  .styleBanner .arrow {
    top: 22px;
  }
}


.button {
  display: inline-block;
  position: relative;
  background: #72787d; /* Old browsers */
  background: linear-gradient(to bottom, #72787d 0%, #5f666c 100%); /* W3C */
  color: #fff;
  text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.3);
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  font-size: 16px;
  font-weight: bold;
  padding: 12px 15px;
  text-indent: 20px;
  margin-bottom: 20px;
}

.button:link,
.button:hover,
.button:active,
.button:focus,
.button:visited {
  color: #fff;
  text-decoration: none;
}

.button:hover {
  background: #72787d;
}

.buttonWrap {
  margin: 0 0 20px;
}

.buttonWrapCenter {
  margin: 40px 0 80px;
  text-align: center;
}

.button.is-small {
  border-radius: 4px;
  font-size: 12px;
  padding: 12px 15px;
  text-indent: 0;
}

@media screen and (max-width: 767px) {
  .buttonWrapCenter {
    margin-bottom: 48px;
  }
}

/* ---------------
　　　.bxSlider
--------------- */
.bxSliderWrapper .bx-wrapper {
  left: auto;
  margin: 10px auto 60px;
  position: relative;
  max-width: 1410px;
}

.bxSliderWrapper .bx-wrapper img {
  width: 460px;
  height: auto;
  margin: 0 auto 20px;
  border-radius: 6px;
}

.bxSliderWrapper .bx-wrapper .bx-viewport {
  box-shadow: none;
  border: none;
  left: auto;
  background: transparent;
}

.bxSliderWrapper .bx-wrapper .bx-loading {
  width: 460px;
}

/* --------------------
 共通部品
--------------------- */
.responsiveImg {
  display: block;
  max-width: 100%;
  height: auto;
}

.responsiveImgCenter {
  margin: 0 auto;
}

.commonContainer {
  max-width: 1024px;
  width: 100%;
  margin: 0 auto;
}

/* 表示非表示 */
.hidePc {
  display: none;
}

.showPc {
  display: block;
}

.showSp {
  display: none;
}

@media screen and (max-width: 767px) {
  .commonContainer {
    padding: 0 10px;
  }

  .hidePc {
    display: block;
  }

  .showPc {
    display: none;
  }

  .showSp {
    display: block;
  }
}

/* 単語の区切り */
.wordBlock {
  display: inline-block;
}

/* ボタン */
.commonMainBackBtn {
  margin: 0 0 20px 0;
}

.commonFlatBtn,
a.commonFlatBtn:link,
a.commonFlatBtn:hover,
a.commonFlatBtn:visited {
  padding: 5px 10px;
  color: #666;
  border: 1px solid #666;
  border-radius: 6px;
  background: #fff;
}

a.commonFlatBtn:hover {
  background: #ddd;
}

/* ----------------------
 ヘッダー
 ----------------------- */
.commonHeader {
  background-color: #fff;
  width: 100%;
}

.commonHeaderNoIcon {
  padding-right: 5px;
  font-size: 1.3em;
  vertical-align: -0.15em;
}

.commonHeaderNoSiteTitle {
  padding-top: 20px;
}

.commonHeaderNoSiteTitle h1 {
  margin: 0;
}

.commonHeaderNoTopLinks {
  font-size: 14px;
}

.commonHeaderNoTopLinks ul {
  padding-top: 0px;
}

.commonHeaderNoTopLinks li {
  list-style-type: none;
  float: right;
  padding-left: 10px;
}

.commonHeaderNoSessionUserName {
  margin: 12px 0 0 0;
  font-size: 14px;
}

.commonHeaderNoLoginBtn {
  margin-top: 5px;
  padding: 7px 15px;
  font-size: 14px;
  border: 1px solid #333;
}

.commonHeaderNoDevLink {
  display: block;
  background-color: #5f666c;
  border-radius: 0 0 5px 5px;
  padding: 10px 20px 5px;
  font-size: 14px;
  color: #fff;
  transition: all .1s ease;
}

.commonHeaderNoDevLink:link,
.commonHeaderNoDevLink:hover,
.commonHeaderNoDevLink:visited,
.commonHeaderNoDevLink:active,
.commonHeaderNoDevLink:focus {
  color: #fff;
}

.commonHeaderNoDevLink:hover {
  text-decoration: none;
  background-color: #222;
}

.commonHeaderNoBottomLinks {
  float: left;
  width: auto;
  margin-left: 25px;
  font-size: 14px;
}

.commonHeaderNoBottomLinks li {
  list-style-type: none;
  float: right;
  padding: 0 0 0 30px;
}

.commonHeaderNoBottomLinksNoSmall
.commonHeaderNoDevLink:hover {
  background-color: #222;
  text-decoration: none;
}

.commonHeaderNoBottomLinks a:link,
.commonHeaderNoBottomLinks a:visited,
.commonHeaderNoBottomLinks a:active,
.commonHeaderNoBottomLinks a:focus {
  color: #333;
}

.commonHeaderNoBottomLinks a:hover {
  opacity: .7;
  text-decoration: none;
}

.commonHeaderNoSocialLinks {
  float: left;
  width: auto;
  margin-left: 15px;
  font-size: 14px;
}

.commonHeaderNoSocialLinks li {
  padding: 0 0 0 10px;
  list-style-type: none;
  float: right;
}

.commonHeaderNoSocialLinks a {
  transition: opacity .1s ease;
}

.commonHeaderNoSocialLinks a:hover {
  opacity: .7;
  text-decoration: none;
}

.commonIcon {
  display: inline-block;
  width: 30px;
  height: 30px;
  margin: 0 5px 0 0;
  border-radius: 5px;
  text-align: center;
  color: #fff;
  font-size: 19px;
  text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.2);
  line-height: 1.6;
}

.commonIconDemoSite {
  background: #aad93d; /* Old browsers */
  background: -webkit-linear-gradient(top, #aad93d 0%, #87b218 100%); /* Chrome10+,Safari5.1+ */
  background: linear-gradient(to bottom, #aad93d 0%, #87b218 100%); /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#aad93d', endColorstr='#87b218', GradientType=0); /* IE6-9 */
  border-top: 1px solid #cee895;
  border-left: 1px solid #cee895;
  border-right: 1px solid #6f9315;
  border-bottom: 1px solid #6f9315;
}

.commonIconDownload {
  background: #8bbcf7; /* Old browsers */
  background: -webkit-linear-gradient(top, #8bbcf7 0%, #6897ce 100%); /* Chrome10+,Safari5.1+ */
  background: linear-gradient(to bottom, #8bbcf7 0%, #6897ce 100%); /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#8bbcf7', endColorstr='#6897ce', GradientType=0); /* IE6-9 */
  border-top: 1px solid #bdd8fa;
  border-left: 1px solid #bdd8fa;
  border-right: 1px solid #587fae;
  border-bottom: 1px solid #587fae;
}

.commonIconRequest {
  background: #f7db4c; /* Old browsers */
  background: -webkit-linear-gradient(top, #f7db4c 0%, #d0b629 100%); /* Chrome10+,Safari5.1+ */
  background: linear-gradient(to bottom, #f7db4c 0%, #d0b629 100%); /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#F7DB4C', endColorstr='#D0B629', GradientType=0); /* IE6-9 */
  border-top: 1px solid #f9ea9c;
  border-left: 1px solid #f9ea9c;
  border-right: 1px solid #ac9722;
  border-bottom: 1px solid #ac9722;
}

.commonIconMail {
  background: #ffb05e; /* Old browsers */
  background: -webkit-linear-gradient(top, #ffb05e 0%, #d68b3b 100%); /* Chrome10+,Safari5.1+ */
  background: linear-gradient(to bottom, #ffb05e 0%, #d68b3b 100%); /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffb05e', endColorstr='#d68b3b', GradientType=0); /* IE6-9 */
  border-top: 1px solid #ffd2a6;
  border-left: 1px solid #ffd2a6;
  border-right: 1px solid #b47533;
  border-bottom: 1px solid #b47533;
}

.commonIconTwitter {
  background: #55acee; /* Old browsers */
  background: -webkit-linear-gradient(top, #55acee 0%, #0093de 100%); /* Chrome10+,Safari5.1+ */
  background: linear-gradient(to bottom, #55acee 0%, #0093de 100%); /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#55acee', endColorstr='#0093de', GradientType=0); /* IE6-9 */
  border-top: 1px solid #6bbeed;
  border-left: 1px solid #6bbeed;
  border-right: 1px solid #026fa7;
  border-bottom: 1px solid #026fa7;
}

.commonIconYoutube {
  background: #55acee; /* Old browsers */
  background: -webkit-linear-gradient(top, #e52d27 0%, #b31217 100%); /* Chrome10+,Safari5.1+ */
  background: linear-gradient(to bottom, #e52d27 0%, #b31217 100%); /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e52d27', endColorstr='#b31217', GradientType=0); /* IE6-9 */
  border-top: 1px solid #ee7672;
  border-left: 1px solid #ee7672;
  border-right: 1px solid #880e12;
  border-bottom: 1px solid #880e12;
}

.commonIconGplus {
  background: #df4a32; /* Old browsers */
  background: -webkit-linear-gradient(top, #df4a32 0%, #b20000 100%); /* Chrome10+,Safari5.1+ */
  background: linear-gradient(to bottom, #df4a32 0%, #b20000 100%); /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#df4a32', endColorstr='#b20000', GradientType=0); /* IE6-9 */
  border-top: 1px solid #db7069;
  border-left: 1px solid #db7069;
  border-right: 1px solid #860101;
  border-bottom: 1px solid #860101;
}

.commonIconFacebook {
  background: #3b5998; /* Old browsers */
  background: -webkit-linear-gradient(top, #3b5998 0%, #183c7a 100%); /* Chrome10+,Safari5.1+ */
  background: linear-gradient(to bottom, #3b5998 0%, #183c7a 100%); /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#3b5998', endColorstr='#183c7a', GradientType=0); /* IE6-9 */
  border-top: 1px solid #7f93bc;
  border-left: 1px solid #7f93bc;
  border-right: 1px solid #132e5c;
  border-bottom: 1px solid #132e5c;
}

@media screen and (max-width: 960px) {
  .commonHeader {
    padding: 0 10px;
  }
}

.commonEntrySection {
  margin: 0 0 20px 0;
  background-color: #fff;
}

.commonEntryBox {
  padding: 0 50px 20px;
  background-color: #fff;
  margin-bottom: 10px;
}

.entryColumnWide {
  margin-right: -10px;
  margin-left: -10px;
}

.entryColumn > *:not([class*="column-"]):not([class*="acms-col"]):not(.column1):not(.column2):not(.column3):not(.column4):not(.column2_3) {
  margin-right: 10px;
  margin-left: 10px;
}

/* エントリー内OGP用の非表示設定 */
.entryColumn .displayNone {
  display: none;
}


/* ------------------------------
　　エントリースタイル
    基本はシンプルなスタイルが適用されます
    .entryColumn.is-style ：デフォルトで装飾されたスタイルが適用されます（マークダウン時でも装飾されるようになります）
------------------------------ */

.commonEntry {
  font-size: 16px;
}

/* 本文
------------------------------ */
.commonEntry p {
  margin: 0 10px 20px;
  line-height: 1.8;
}

.commonEntry p.entryHeaderCategory {
  margin: 5px 0 10px 0;
}

/* 見出し
------------------------------ */
.commonEntry h2 {
  margin: 0 10px 10px 10px;
  font-size: 24px;
  line-height: 1.5;
}

.commonEntry h2.border,
.entryColumn.is-style h2 {
  display: flow-root;
  position: relative;
  margin: 50px 10px 20px 10px;
  padding: 0 0 0 1.25em;
  font-size: 24px;
}

@supports not ( display: flow-root) {
  .commonEntry h2.border,
  .entryColumn.is-style h2 {
    overflow: hidden;
  }
}

.commonEntry h2.border::before,
.entryColumn.is-style h2::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  content: "";
  display: block;
  width: 6px;
  border-radius: 10em;
  background: #c41032;
}


.commonEntry h3 {
  margin: 0 10px 10px 10px;
  font-size: 20px;
  line-height: 1.5;
}

.commonEntry h3.border,
.entryColumn.is-style h3{
  position: relative;
  display: flow-root;
  margin: 40px 0 20px 0;
  padding: 0 0 0 1.25em;
  font-size: 20px;
}

.commonEntry h3.border::before,
.entryColumn.is-style h3::before{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  content: "";
  display: block;
  width: 6px;
  border-radius: 10em;
  background: #666;
}

@supports not ( display: flow-root) {
  .commonEntry h3.border,
  .entryColumn.is-style h3 {
    overflow: hidden;
  }
}

.commonEntry h3.bgRound,
.entryColumn.is-style h3.bgRound{
  padding: 5px 10px;
  background: #e1dcc6;
  border-radius: 5px;
}

.commonEntry h3.bgColor {
  padding: 5px 20px 3px;
  font-weight: normal;
  background: #e1dbc6;
}

.commonEntry h4 {
  margin: 0 10px 10px 10px;
  font-size: 18px;
  line-height: 1.5;
}

.commonEntry h5 {
  margin: 0 10px 10px;
  font-size: 16px;
  line-height: 1.5;
}


/* リスト
------------------------------ */
.commonEntry ul {
  margin: 0 10px 20px 10px;
  padding: 0 0 0 15px;
}

.commonEntry ul li {
  list-style-type: none;
  margin: 0 0 10px 0;
  padding: 0 0 0 18px;
  line-height: 1.5;
  background: url(/themes/acms/images/entry/list.gif) no-repeat 0 .6em;
}


/* テーブル
------------------------------ */
.commonEntry table:not(.entryContactForm,.showCaseTable) {
  width: 100%;
  margin: 0 0 15px 0;
  padding: 0;
  border: 1px solid #e1dbc6;
  border-collapse: collapse;
  color: #222;
}

.commonEntry table:not(.entryContactForm,.showCaseTable) th {
  background-color: #e1dbc6;
  border: 1px solid #fff;
  padding: 8px 10px;
  text-align: left;
}

.commonEntry table:not(.entryContactForm,.showCaseTable) td {
  padding: 5px 10px;
  border: 1px solid #e1dbc6;
  border-left: 0;
  border-right: 0;
}

.commonEntry .heading-in-td {
  margin: 15px 0 5px 0;
  font-size: 14px;
  font-weight: bold;
}


/* 動的フォーム
------------------------------ */
.dynamicFormTable th {
  width: 16em;
}

/* 引用
------------------------------ */
.commonEntry blockquote {
  clear: both;
  margin: 0 10px 15px 10px;
  padding: 20px;
  border: 1px solid #e1dbc6;
  font-size: 14px;
  border-radius: 6px;
}

.commonEntry blockquote .quoteTitleLink {
  color: #616161;
  font-weight: bold;
}

.commonEntry blockquote .quoteTitleLink:link,
.commonEntry blockquote .quoteTitleLink:hover,
.commonEntry blockquote .quoteTitleLink:visited,
.commonEntry blockquote .quoteTitleLink:active,
.commonEntry blockquote .quoteTitleLink:focus {
  color: #616161;
}

.commonEntry blockquote .quoteTitleLink:hover {
  text-decoration: underline;
}

/* テーブル
------------------------------ */
.commonEntry table {
  font-size: 14px;
}

/* 番号付きリスト
------------------------------ */
.commonEntry ol li {
  line-height: 1.2;
  margin-bottom: 0.8em;
}

/* 定義リスト
------------------------------ */
.commonEntry dl {
  margin: 0 10px 15px 10px;
}
.commonEntry dt {
  margin-top: 10px;
  font-weight: bold;
}
.commonEntry dt:first-child {
  margin: 0;
}
.commonEntry dd {
  margin-left: 20px;
}

/* 灰色バナーボタン */
.entryColumn .styleBanner {
  margin-left: 10px;
  margin-right: 10px;
}

@media screen and (max-width: 767px) {
  .commonEntryBox {
    padding: 15px 20px;
  }

  .entryColumnWide {
    margin-right: 0;
    margin-left: 0;
  }

  /* リスト
  ------------------------------ */
  .commonEntry ul {
    padding-left: 5px;
  }

  /* 番号付きリスト
  ------------------------------ */
  .commonEntry ol {
    padding-left: 25px;
  }

  /* テーブル
  ------------------------------ */
  .commonEntry table {
    font-size: 13px;
    margin-top: 0;
  }

  .commonEntry tbody,
  .commonEntry th,
  .commonEntry td,
  .commonEntry tr {
    display: block;
  }

  .commonEntry th {
    width: auto;
  }


  /* 見出し
  ------------------------------ */
  .commonEntry h2 {
    font-size: 20px;
    margin-top: 10px;
  }

  .commonEntry h2.border {
    font-size: 20px;
    margin-top: 30px;
  }

  .commonEntry h3 {
    font-size: 18px;
    margin-top: 10px;
  }

  .commonEntry h3.border {
    font-size: 18px;
    margin-top: 30px;
  }

  .commonEntry h4 {
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 16px;
  }

  .commonEntry h5 {
    margin-top: 10px;
    margin-bottom: 10px;
  }

}

.commonEntry .unit-separator {
  border: 0;
  border-top: 1px solid #e1dbc6;
}

/* ファイルユニット
------------------------------ */
.commonEntry [class*="column-file-"],
.commonEntry .media-file {
  display: inline-block;
}

.commonEntry [class*="column-file-"] a,
.commonEntry .media-file a,
.commonEntry [class*="column-file-"] a[href*=media-download],
.commonEntry .media-file a[href*=media-download] {
  display: inline-flex;
  align-items: center;
  padding: 15px;
  color: #333333;
  border: 1px solid rgba(0,0,0,.1);
  border-radius: 5px;
  background: #fcfbfa;
  transition: background-color .2s;
}

.commonEntry [class*="column-file-"] a:hover,
.commonEntry .media-file a:hover,
.commonEntry [class*="column-file-"] a[href*=media-download]:hover,
.commonEntry .media-file a[href*=media-download]:hover {
  text-decoration: none;
  background: #F5F5F5;
}

.commonEntry [class*="column-file-"] .caption,
.commonEntry .media-file .caption {
  margin: 0;
  color: #333333;
  font-size: 16px;
  font-weight: bold;
  text-align: left;
}

.commonEntry [class*="column-file-"] .columnIcon,
.commonEntry .media-file .columnIcon {
  width: 29px;
  height: auto;
  margin: 0 15px 0 0;
}



.commonEntrySuggest {
  display: flex;
  margin: 30px 0;
  padding: 20px 30px;
  background: #f2f2f2;
}
.commonEntrySuggestContent {
  width: 100%;
}
.commonEntry .commonEntrySuggestHeading {
  margin: 0 0 10px 0;
  font-size: 16px;
  line-height: 1.3;
}
.commonEntry .commonEntrySuggestDetail {
  margin: 0;
  font-size: 12px;
}
.commonEntrySuggestSide {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1 0 auto;
}
.commonEntrySuggestSide .buttonWrap,
.commonEntrySuggestSide .button {
  margin: 0;
  line-height: 1.2;
}

.commonEntrySuggestSide .button .arrow {
  margin: 0 0 0 10px;
}


@media screen and (max-width: 767px) {
  .commonEntrySuggest {
    flex-direction: column;
    margin: 20px 0 40px 0;
    padding: 20px;
  }

  .commonEntrySuggestContent {
    margin: 0 0 15px 0;
  }

  .commonEntry .commonEntrySuggestHeading {
    font-size: 18px;
  }

  .commonEntry .commonEntrySuggestDetail {
    font-size: 14px;
  }

  .commonEntrySuggestSide .buttonWrap {
    text-align: center;
  }
}


/* --------------------
  セクション&見出し
---------------------- */
.commonSection {
  margin: 60px 0;
}
.commonSection:last-child {
  margin: 80px 0 120px 0;
}
.commonSectionHeading {
  margin: 0 0 15px 0;
  font-size: 18px;
  line-height: 1.4;
}


/* --------------------
  カテゴリーリスト
---------------------- */
.commonCategoryList {
  margin-bottom: 30px;
}

.commonCategoryList ul {
  margin: 0;
  padding: 0;
}

.commonCategoryList li {
  display: block;
  margin-bottom: 5px;
  border-radius: 5px;
  background-color: #e1dbc6;
}

.commonCategoryList .commonCategoryListColor1 {
  background-color: #ff9897;
}

.commonCategoryList .commonCategoryListColor2 {
  background-color: #f1b52d;
}

.commonCategoryList .commonCategoryListColor3 {
  background-color: #9991ea;
}

.commonCategoryList .commonCategoryListColor4 {
  background-color: #a1d134;
}

.commonCategoryList .commonCategoryListColor5 {
  background-color: #5f666c;
}

.commonCategoryList .commonCategoryListColor6 {
  background-color: #c40f32;
}

.commonCategoryList .commonCategoryListColor7 {
  background-color: #50c2c6;
}

.commonCategoryList a {
  display: block;
  padding: 8px 16px;
  vertical-align: bottom;
  color: #222;
  font-weight: bold;
}

.commonCategoryList a:link,
.commonCategoryList a:visited,
.commonCategoryList a:active {
  color: #222;
}

.commonCategoryListItemTall a {
  padding: 20px;
  text-indent: 0;
}

.commonCategoryListColor5 a,
.commonCategoryListColor5 a:link,
.commonCategoryListColor5 a:visited,
.commonCategoryListColor5 a:active {
  color: #fff;
}

.commonCategoryListColor6 a,
.commonCategoryListColor6 a:link,
.commonCategoryListColor6 a:visited,
.commonCategoryListColor6 a:active {
  color: #fff;
}

.commonCategoryList a:hover {
  opacity: 0.8;
  text-decoration: none;
  background: rgba(255, 255, 255, 0.4);
}

.commonCategoryListIcon {
  color: #fff;
  padding-right: 5px;
}

.commonCategoryListIconTall {
  font-size: 26px;
  line-height: 1;
  vertical-align: -0.3em;
}


/* --------------------
  リストグループ
---------------------- */
.commonListGroup {
  margin: 0;
  padding: 0;
  list-style: none;
}

.commonListGroupLink {
  display: flex;
  align-items: center;
  padding: 15px 25px;
  color: #333;
  background: #fff;
}

.commonListGroupLink:hover {
  background: #f2f2f2;
}

.commonListGroupLink:link,
.commonListGroupLink:hover,
.commonListGroupLink:visited,
.commonListGroupLink:focus {
  color: #333;
  border: 1px solid #e1dbc6;
  border-top: 0;
}

.commonListGroupItem:first-child .commonListGroupLink {
  border-radius: 6px 6px 0 0;
  border-top: 1px solid #e1dbc6;
}
.commonListGroupItem:last-child .commonListGroupLink {
  border-radius: 0 0 6px 6px;
}

.commonListGroupTitle {

}

.commonListGroupArrow {
  margin-left: auto;
  padding-left: 10px;
  font-size: 18px;
}

@media screen and (max-width: 767px) {
  .commonListGroupLink {
    padding: 15px;
  }

  .commonListGroupArrow {
    padding-left: 10px;
  }
}


/* --------------------
  リストグループ（セカンダリーカラーがベース）
---------------------- */
.commonListSecondary {

}
.commonListSecondaryGroup {
  margin-top: 0;
  margin-bottom: 0;
  padding: 0;
}
.commonListSecondaryItem {
  display: block;
  margin-bottom: 10px;
}
.commonListSecondaryLink {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 76px;
  padding: 10px 25px 10px 30px;
  background-color: #e1dbc6;
  border-radius: 5px;
  color: #333;
  font-weight: bold;
  font-size: 18px;
  box-sizing: border-box;
  transition: background-color .2s;
}
.commonListSecondaryLink:hover {
  background-color: #d0c8ae;
}
.commonListSecondaryLink:link,
.commonListSecondaryLink:hover,
.commonListSecondaryLink:visited,
.commonListSecondaryLink:active,
.commonListSecondaryLink:focus {
  color: #333;
}
.commonListSecondaryText {
  display: flex;
  flex-direction: column;
}
.commonListSecondaryDesc {
  font-weight: normal;
  color: #666;
  font-size: 14px;
}
.commonListSecondaryIcon {
  margin-left: auto;
  color: #fff;
  font-size: 22px;
}

@media screen and (max-width: 767px) {
  .commonListSecondarySection {
    margin: 30px 0;
  }

  .commonEntrySection + .commonListSecondarySection {
    margin: 40px 0 60px 0;
  }

  .commonListSecondaryHeading {
    margin: 0 0 10px 0;
    font-size: 16px;
  }
}


/* --------------------
  ページャー
---------------------- */
.commonPagerBox {
  margin-top: 40px;
  margin-bottom: 48px;
  position: relative;
}

.commonPagerList {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding-left: 0;
}

.commonPagerListBtn {
  display: grid;
  place-items: center;
  padding: 6px 8px;
  line-height: 1;
  border: solid 1px #1D1D1D;
  border-radius: 4px;
  background: #1D1D1D;;
  color: white;
  font-size: 14px;
}

.commonPagerListLink .commonPagerListBtn,
.commonPagerBackLink .commonPagerListBtn,
.commonPagerForwardLink .commonPagerListBtn {
  background: transparent;
  color: #1D1D1D;

  &:hover {
    border: solid 1px #1D1D1D;
    background: #F5F5F5;
  }
}

@media screen and (min-width: 768px) {
  .commonPagerBox {
    margin-top: 56px;
    margin-bottom: 80px;
  }

  .commonPagerListBtn {
    padding: 12px;
  }
}


/* --------------------
  サムネイル（イベント情報で使用）
---------------------- */
.thumbnail {
  margin: 0 -10px 20px -10px;
  padding: 0;
}

.thumbnailItem {
  position: relative;
  display: block;
  float: left;
  width: calc(25% - 20px);
  margin: 0 10px 10px 10px;
  border: 1px solid #ccc;
  background: #fff;
  box-sizing: border-box;
  transition: all linear .2s;
}

.thumbnailItem.bl-hover {
  opacity: 0.8;
  background: #efefef;
}

.thumbnailItemInner {
  position: relative;
}

.thumbnailPref {
  position: absolute;
  top: 0;
  right: 0;
  margin: 0;
  padding: 2px 8px;
  color: #fff;
  font-size: 12px;
  background: #787778;
  border-radius: 0 0 0 6px;
}

.thumbnailImage {
  padding-top: 100%;
  background: url(/themes/acms/images/noimage220x220.png) no-repeat center;
  background-size: cover;
}

.thumbnailText {
  padding: 10px;
  border-top: 1px solid #ccc;
}

.thumbnailDat {
  margin: 0 10px 0 0;
}

.thumbnailDatDay {
  font-size: 20px;
}

.thumbnailDayLabel {
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 0 0 5px;
  color: #fff;
  font-size: 12px;
  text-align: center;
  background: #000;
  border-radius: 50%;
}

.thumbNailDayLabelSaturday {
  background: #7cb4f4;
}

.thumbNailDayLabelSunday {
  background: #ff9897;
}

.thumbnailCat {
  display: inline-block;
  min-width: 102px;
  padding: 0 5px;
  color: #666;
  font-size: 12px;
  font-weight: bold;
  text-align: center;
  background: #d8d8d8;
}

.thumbnailCat.online {
  /*赤紫*/
  color: #fff;
  background-color: #d083d3;
}

.thumbnailCat.sponsor {
  /*青色*/
  color: #fff;
  background-color: #7cb4f4;
}

.thumbnailCat.appear {
  /*青緑*/
  color: #fff;
  background-color: #50c2c6;
}

.thumbnailCat.host {
  /*黄緑*/
  color: #fff;
  background-color: #c40f32;
}

.thumbnailCat.general {
  /*黄色*/
  color: #fff;
  background-color: #f1b42d;
}

.thumbnailCat.user {
  /*橙色*/
  color: #fff;
  background-color: #fea452;
}

.thumbnailTitle {
  margin: 0;
  color: #006cd8;
  font-weight: bold;
  line-height: 1.4;
  overflow: hidden;
  text-overflow: ellipsis;
}

.thumbnailTitle a {
  color: #006cd8;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

.thumbnailTitle a:hover {
  text-decoration: none;
}

.thumbnailTitle a:visited {
  color: #006cd8;
}

@media screen and (max-width: 767px) {
  .thumbnailItem {
    width: calc(50% - 20px);
  }
}

@media screen and (max-width: 479px) {
  .thumbnail {
    margin: 0 0 20px 0;
  }

  .thumbnailItem {
    display: table;
    width: calc(100% - 20px);
    height: auto !important;
  }

  .thumbnailImage {
    display: table-cell;
    width: 100px;
    height: 100px;
    padding: 0;
  }

  .thumbnailText {
    display: table-cell;
    border: 0;
    border-left: 1px solid #ccc;
  }
}

/*お問い合わせ*/
.commonFormSection {
  margin: 0 0 20px 0;
  background-color: #fff;
}

.commonFormBox {
  padding: 20px 50px 20px;
  background-color: #fff;
  margin-bottom: 10px;
}

.commonFormBoxFooter {
  padding: 50px;
  border-top: 1px solid #e1dbc6;
}

.commonFormBoxFooter .c-heading {
  font-size: 25px;
  margin: 0 0 25px 0;
  padding: 0 0 20px 0;
}

.commonFormBoxHeading {
  margin: 40px 0 20px 0;
  padding: 5px 10px 3px;
  background-color: #e1dbc6;
  font-size: 16px;
  font-weight: normal;
}

.commonFormBoxHeading:first-child {
  margin-top: 0;
}

.commonFormDescription {
  margin: 0 0 5px 0;
  font-size: 14px;
}

.commonFormColumn {
  margin: 0 0 30px 0;
}

.commonFormColumn ul {
  margin: 0 0 20px 0;
}

.commonFormColumn p {
  margin: 0 0 20px 0;
}

.commonFormColumn h3 {
  margin: 0 0 20px 0;
}

.commonFormBoxSubmitContainer {
  padding: 20px;
  text-align: center;
}

.commonFormBoxSubmit {
  display: inline-block;
}

.commonFormBoxTable {
  font-size: 14px;
  min-width: 250px;
}

.commonFormBoxTable th {
  white-space: nowrap;
}

.commonFormBoxTable th .required {
  float: right;
}

.commonFormBoxTable th .label-option {
  float: right;
}

.commonFormInputSpace {
  margin-bottom: 10px;
}

.commonFormInputWithBar,
.commonFormInputWithoutBar {
  display: inline-block;
}

.commonFormText {
  float: left;
  white-space: nowrap;
}

.manualImg {
  float: left;
}
.manualImg {
  margin-right: 20px;
}
@media screen and (max-width: 479px) {
  .manualImg {
    float: none;
    display: block;
    margin: 0 auto;
  }
}

@media screen and (min-width: 768px) {
  .commonFormBoxTable.is-th-fix300 th {
    width: 300px;
  }
}

.introduction p {
  margin: 0 0 20px 0;
}
/*制作会社相談用の追記*/
.consultationFormColumn p {
  font-size: 16px;
}

.commonFormBoxGroup {
  display: flex;
}
.commonFormBoxZipGroup {
  display: flex;
}

@media screen and (min-width: 769px) {
  .commonFormPcIb {
    display: inline-block;
  }

  .commonFormBoxPrefSelectBox {
    margin: 0 0 0 5px;
  }

  .commonFormBoxPrefSelectBox,
  .commonFormBoxZipBox {
    display: inline-flex;
    align-items: center;
  }

  .commonFormBoxZipText {
    margin: 0 5px 0 0;
  }
}

/* ------------------------------
　　資料請求フォーム
------------------------------ */

/* 請求資料サンプルバナー */
.bannerRequestWrap {
  float: left;
  width: 300px;
  margin: 0 20px 0 0;
}
.bannerRequest.slick-slider {
  margin: 0 20px 0 0;
}
.bannerRequest {
  width: 300px;
  margin-bottom: 10px;
}
.bannerRequestItem {
  display: inline-block;
  max-width: 300px;
  max-height: 300px;
}

.bannerRequestNav {

}
.bannerRequestNavItem {
  margin: 2px;
  border: 1px solid #ccc;
  overflow: hidden;
  transition: opacity .2s;
}

.bannerRequestNavItem:hover {
  cursor: pointer;
  border: 1px solid #aaa;
  opacity: .7;
}

.bannerRequestNavItem.slick-current {
  border: 1px solid #137af3;
}
.bannerRequestNavItem:focus {
  outline: 0;
  border: 1px solid #137af3;
}

@media screen and (max-width: 767px) {
  .bannerRequestWrap {
    float: none;
    clear: both;
    width: 100%;
  }

  .bannerRequest {
    width: 100%;
  }

  .bannerRequestItem {
    margin: 0 auto;
    max-width: inherit;
    max-height: inherit;
  }
}

/* フォームテーブル */
.requestFormBoxTable th {
  width: 230px;
}

@media screen and (max-width: 767px) {
  .requestFormBoxTable th {
    width: 100%;
  }

  .commonFormBox {
    padding: 10px;
  }

  .commonFormBoxFooter {
    padding: 35px 20px 10px 20px;
  }

  .commonFormBoxFooter .c-heading {
    margin: 0 0 15px 0;
    font-size: 20px;
  }

  .commonFormBoxHeading {
    margin-top: 20px;
  }

  .commonFormInputWithBar {
    display: block;
    position: relative;
  }

  .commonFormInputWithoutBar {
    display: block;
  }

  .commonFormInputWithBar:after {
    position: absolute;
    top: 15px;
    right: -3px;
    content: "-";
  }

  .commonFormBoxZipText {
    font-size: 20px;
    margin-left: 5px;
    margin-top: 5px;
    display: inline-block;
  }

  .commonFormBoxPrefSelectBox {
    margin-top: 10px;
  }

  .commonFormBoxPrefSelectBox:after {
    content: "";
    display: table;
    clear: both;
  }

  .commonFormBoxSelect {
    width: 100%;
    max-width: 400px;
    font-size: 16px;
    margin-bottom: 10px;
  }

  .acms-form .commonFormBoxSelect {
    font-size: 16px;
  }

  .commonFormBoxSelectDefaultWidth {
    font-size: 16px;
  }

  .acms-form .commonFormBoxSelectDefaultWidth {
    font-size: 16px;
  }

  .commonFormBoxPrefSelect {
    float: right;
  }

  .commonFormBoxTable tbody,
  .commonFormBoxTable tr,
  .commonFormBoxTable td,
  .commonFormBoxTable th {
    display: block;
  }

  .commonFormBoxTable th {
    border-bottom: 0;
  }

  /* iOS のズーム防止 */
  .acms-form input[type="text"],
  .acms-form input[type="password"],
  .acms-form input[type="datetime"],
  .acms-form input[type="datetime-local"],
  .acms-form input[type="date"],
  .acms-form input[type="month"],
  .acms-form input[type="time"],
  .acms-form input[type="week"],
  .acms-form input[type="number"],
  .acms-form input[type="email"],
  .acms-form input[type="url"],
  .acms-form input[type="search"],
  .acms-form input[type="tel"],
  .acms-form textarea {
    font-size: 16px;
  }

  .gridSpContainer {
    margin-right: -10px;
    margin-left: -10px;
  }

  .gridSpContainer:after {
    content: " ";
    display: table;
    clear: both;
  }

  .gridSp5 {
    width: 41.66666667%;
    float: left;
    padding: 0 10px;
  }

  .gridSp6 {
    width: 50%;
    float: left;
    padding: 0 10px;
  }

  .gridSp2 {
    width: 16.66666%;
    float: left;
    padding: 0 10px;
  }

  .gridSp4 {
    width: 33.33333%;
    float: left;
    padding: 0 10px;
  }
}

/*エントリー部分*/
.redCopy {
  margin: 30px 0 20px;
  font-size: 30px;
  color: #c40e32;
}

.entryHeader {
  display: table;
  position: relative;
  margin-bottom: 20px;
  height: auto;
  min-height: 25px;
  background: #c40f32;
  color: #333;
  font-size: 16px;
  border-bottom: solid 2px #e1dbc6;
}

.entryHeaderNoMargin {
  margin-bottom: 0;
}

.entryHeaderDate {
  font-size: 18px;
  margin-bottom: 10px;
  display: inline-block;
}

.entryHeaderNoIcon {
  margin: 40px 0 30px;
  font-size: 20px;
  border-bottom: solid 2px #e1dbc6;
}

.entryHeaderNoIcon .entryTitle {
  margin: 0 0 10px;
}

.entryHeader .entryTitle {
  display: table-cell;
  width: 100%;
  margin-bottom: 0;
  margin-top: 0;
  padding: 10px 20px 5px 20px;
  font-size: 16px;
  background-color: #fff;
}

.entryTitle a {
  transition: opacity .2s ease;
}

.entryTitle a:link,
.entryTitle a:visited,
.entryTitle a:active {
  color: #333;
}

.entryTitle a:hover {
  text-decoration: none;
  opacity: .7;
}

.entryTitleQ {
  margin: 0 10px 0 0;
  color: #c40f32;
}

.commonEntry .entryTitleQuestion {
  font-size: 20px;
}

.entryTitle h1 {
  font-size: 16px;
}

.entryHeaderIcon {
  display: table-cell;
  padding-right: 10px;
  padding-left: 10px;
  color: #fff;
  font-size: 26px;
  text-align: center;
  line-height: 1;
  vertical-align: middle;
}

.entryHeaderYear {
  display: inline-block;
  margin-bottom: 5px;
  padding: 3px 0 0;
  font-size: 13px;
}

.entryHeaderLinkIcon {
  margin: -2px 5px 0 0;
  color: #c40f32;
  font-size: 14px;

  /*	line-height: 1.8em;*/
}

.entryHeaderHeading {
  font-size: 16px;
}

.entryHeader .entryHeaderLink {
  float: right;
  margin-top: 0;
  font-size: 14px;
  font-weight: normal;
}

.entryHeaderLink.js-tagToggle .entryHeaderLinkIcon {
  margin-left: 5px;
  margin-right: 0;
}

.entryHeader a {
  color: #222;
  text-decoration: none;
}

.entryHeaderCategory {
  font-size: 14px;
  margin-bottom: 10px;
}

.entryHeaderCategory a {
  color: #006cdb;
}

.entryHeaderCategory a:hover {
  text-decoration: underline;
}

.entryHeaderDescription {
  margin: 0 0 5px 0;
  font-size: 14px;
}

/* ヘッダーボタン */
.commonHeaderLicenseBtn {
  width: 210px;
  height: auto;
  margin: 5px 0 0 0;
  padding: 8px 10px;
  color: #fff;
  display: block;
  text-align: left;
  font-size: 12px;
  background-color: #c40f32;
  border-radius: 5px;
  transition: all .1s ease;
}

.commonHeaderLicenseBtn:link,
.commonHeaderLicenseBtn:visited,
.commonHeaderLicenseBtn:active,
.commonHeaderLicenseBtn:focus {
  color: #fff;
}

.commonHeaderLicenseBtn:hover {
  text-decoration: none;
  background-color: #a70f2d;
}

.commonHeaderLicenseBtn .icon {
  margin-right: 5px;
}

.commonHeaderNoBottomLinks {
  float: right;
}

@media screen and (max-width: 767px) {
  .entryHeader {
    margin-bottom: 9px;
    padding: 0;
  }

  .entryHeader .entryTitle {
    font-size: 16px;
    margin-bottom: 0;
    padding-top: 3px;
    padding-bottom: 3px;
    padding-right: 9px;
    padding-left: 7px;
  }

  .entryHeaderIcon {
    width: 40px;
    height: auto;
    line-height: 1;
    font-size: 16px;
    padding: 7px 7px;
  }

  .entryHeaderNoIcon {
    margin: 0 0 25px;
    line-height: 1.4;
  }

  .entryHeaderNoIcon .entryTitle {
    font-size: 18px;
  }

  .commonEntry .entryTitleQuestion {
    font-size: 18px;
  }

  .redCopy {
    font-size: 24px;
    line-height: 25px;
    margin-top: 5px;
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 479px) {
  .redCopy {
    font-size: 17px;
  }
}

.column-image-right,
.column-media-right {
  margin: 0 0 20px 20px;
}

.column-image-left,
.column-media-left {
  margin: 0 20px 20px 0;
}

.responsiveYoutube {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}

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

@media screen and (max-width: 767px) {
  .column-image-right,
  .column-media-right {
    margin-left: 0;
    width: 100% !important;
  }

  .column-image-left,
  .column-media-left {
    margin-right: 0;
    width: auto;
    max-width: 100%;
  }
}

.commonEntry [class*='column-image-'],
.commonEntry [class*='column-media-'] {
  padding-left: 10px;
  padding-right: 10px;
  margin: 0 0 20px 0;
}

.commonEntry .column-image-center,
.commonEntry .column-media-center {
  margin: 0 auto 20px auto;
}

.commonEntry .column-image-center .columnImage,
.commonEntry .column-media-center .columnImage {
  margin: 0 auto;
}

.entry-container {
  margin: 0 10px;
}

@media screen and (max-width: 767px) {
  table.js-table-unit-scroll-hint th,
  table.js-table-unit-scroll-hint td {
    display: table-cell;
    white-space: nowrap;
  }

  table.js-table-unit-scroll-hint tr {
    display: table-row;
  }
  table.js-table-unit-scroll-hint tbody {
    display: table-row-group;
  }
}

.acms-form select,
.acms-admin-form select,
.acms-admin-form .acms-form-select {
  -webkit-appearance: none;
}

/* -----------------------
 デベロッパーサイトへの誘致
 ---------------------- */
.commonDevSite {
  padding: 45px 0 0 0;
  color: #fff;
  background: #3c3c3c;
}
.commonDevSiteGrid {
  display: flex;
  flex-direction: column;
}
.commonDevSiteCol {

}
.commonDevSiteColImage {
  display: none;
  align-items: flex-end;
  justify-content: center;
  flex: 1 0 auto;
}
.commonDevSiteColText {
  padding: 0 10px 20px 10px;
}
.commonDevSiteImage {
  display: block;
}
.commonDevSiteHeading {
  margin: 0 0 20px 0;
  font-weight: normal;
  font-size: 24px;
  line-height: 1.4;
}
.commonDevSiteHeadingBreak {
  display: inline-block;
}
.commonDevSiteText {
  margin: 0 0 20px 0;
  font-size: 16px;
  line-height: 1.5;
}
.commonDevSiteBtnWrap {
  margin: 0;
  line-height: 1;
  font-size: 18px;
}
.commonDevSiteBtn {
  position: relative;
  display: inline-block;
  padding: 15px 50px 15px 25px;
  color: #fff;
  background: #222;
  border-radius: 6px;
  transition: background .2s;
}
.commonDevSiteBtn:link,
.commonDevSiteBtn:hover,
.commonDevSiteBtn:visited,
.commonDevSiteBtn:active,
.commonDevSiteBtn:focus {
  color: #fff;
}
.commonDevSiteBtn:hover {
  text-decoration: none;
  background: #000;
}
.commonDevSiteBtn:before {
  content: "";
  position: absolute;
  right: 15px;
  display: block;
  width: 14px;
  height: 14px;
  border-top: 1px solid #868686;
  border-right: 1px solid #868686;
  transform: rotate(45deg);
}

@media screen and (min-width: 768px) {
  .commonDevSiteGrid {
    flex-direction: row;
  }

  .commonDevSiteColImage {
    display: flex;
    padding: 0 20px 0 0;
  }

  .commonDevSiteColText {
    order: 2;
    padding: 10px 0 20px 20px;
  }

  .commonDevSiteHeading {
    margin: 0 0 30px 0;
    font-size: 30px;
  }
}

/* -----------------------
 フッター部分
 ---------------------- */
.commonFooter {
  background-color: #222;
  color: #fff;
  padding-top: 20px;
}

@media screen and (max-width: 1044px) {
  .commonFooter {
    padding: 20px 10px 0;
  }
}

@media screen and (max-width: 767px) {
  .commonFooter {
    padding: 0 10px;
  }
}

.commonFooter a {
  transition: opacity .2s ease;
}

.commonFooterNoTopList ul {
  padding: 0;

}

.commonFooterNoTopListItem1 ul {
  padding: 5px 0;
}

.commonFooterNoTopList li {
  display: block;
}

.commonFooterNoTopList a:link,
.commonFooterNoTopList a:visited,
.commonFooterNoTopList a:active {
  color: #fff;
}

.commonFooterNoTopList a:hover {
  opacity: .7;
  text-decoration: none;
}

.commonFooterNoTopListItem1 {
  width: 220px;
  margin-right: 10px;
  font-size: 16px;
  float: left;
}

.commonFooterNoTopListItem1 span {
  background-color: #fff;
  border-radius: 8px;
  color: #222;
}

.commonFooterNoTopListItem2 {
  font-size: 14px;
  margin-bottom: 10px;
}

.commonFooterNoTopListItem2 span {
  background-color: #222;
  color: #fff;
}

.commonFooterNoBottomList {
  border-bottom: 1px solid #fff;
}

.commonFooterNoBottomList ul {
  margin: 0;
  padding: 10px 0;
}

.commonFooterNoBottomList li {
  list-style-type: none;
  display: inline-block;
  font-size: 14px;
  margin-right: 20px;
}

.commonFooterNoBottomList a:link,
.commonFooterNoBottomList a:visited,
.commonFooterNoBottomList a:active {
  color: #fff;
}

.commonFooterNoBottomList a:hover {
  text-decoration: none;
  opacity: .7;
}

.commonFooterNoGoogle {
  float: left;
  margin-top: 10px;
}

.commonFooterNoGoogle a:link,
.commonFooterNoGoogle a:visited,
.commonFooterNoGoogle a:active {
  color: #fff;
}

.commonFooterSocialLinks {
  float: right;
  width: auto;
  margin-left: 15px;
  font-size: 14px;
}

.commonFooterSocialLinks li {
  padding: 0 0 0 10px;
  list-style-type: none;
  float: right;
}

.commonFooterSocialLinks a {
  transition: opacity .1s ease;
}

.commonFooterSocialLinks a:hover {
  opacity: .7;
  text-decoration: none;
}

@media screen and (max-width: 767px) {
  .commonFooterSocialLinks {
    float: none;
    margin: 0;
  }
  .commonFooterSocialLinks ul {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row-reverse;
    margin: 0;
    padding: 20px 0 0;
  }
}

.commonFooterNoCopyright {
  clear: both;
  padding: 5px 0;
}

.commonFooterNoCopyright p {
  margin: 0;
}

@media screen and (max-width: 767px) {
  .commonFooterNoCopyright {
    padding: 5px 0 20px;
    background-color: none;
    color: white;
    font-size: 10px;
    text-align: center;
  }
}

.commonFooterNoBackToTop {
  float: right;
}

.commonFooterNoBackToTop a {
  color: #7f5ad7;
}

.commonFooterNoBackToTopNoIcon {
  color: #c40f32;
  margin: 0 5px 0 0;
}

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

/* ---------------
　ソーシャルボタン
--------------- */
.snsBtn {
  position: relative;
  height: 15px;
  margin-bottom: 20px;
}

.snsBtn .facebookBtn {
  position: absolute;
  top: 0;
  left: 0;
}

.snsBtn .twitterBtn {
  position: absolute;
  top: 0;
  left: 110px;
}

.snsBtn .hatenaBtn {
  position: absolute;
  top: 0;
  left: 220px;
}

.snsBtn .plusoneBtn {
  position: absolute;
  top: 0;
  left: 290px;
}

/* ソーシャルボタン 右寄せ */
.snsRight .snsBtn {
  height: 30px;
}

.snsRight .snsBtn .facebookBtn,
.snsRight .snsBtn .twitterBtn,
.snsRight .snsBtn .hatenaBtn,
.snsRight .snsBtn .plusoneBtn {
  left: inherit;
}

.snsRight .snsBtn .facebookBtn {
  right: 270px;
}

.snsRight .snsBtn .twitterBtn {
  right: 165px;
}

.snsRight .snsBtn .hatenaBtn {
  right: 105px;
}

.snsRight .snsBtn .plusoneBtn {
  right: 0px;
}

.snsBtnMargin {
  margin-top: 20px;
}

/* --------------------
  エントリー コンタクトフォーム
--------------------- */
.entryContactForm {
  margin: 0 0 20px 0;
}

.entryContactForm th {
  width: 180px;
}

.entryContactForm .required {
  float: right;
}

.entryContactForm .label-option {
  float: right;
}

.entryContactFormMessage {
  margin: 0 0 20px 0;
}

.entryContactForm .form-group {
  margin: 0 0 10px 0;
}

@media screen and (max-width: 767px) {
  /* エントリー下のフォーム */
  .entryContactForm th,
  .entryContactForm td {
    display: block;
    width: 100%;
    text-align: left;
  }

  .entryContactForm th {
    width: auto;
    border-bottom: 0;
    padding-bottom: 0;
  }
  .entryContactForm td {
    padding-top: 5px;
  }
}

/*スマートフォン用のヘッダー*/
.spHeader {
  display: none;
  text-align: left;
  box-shadow: 0 0 2px #4a4a4a;
}

.spHeaderTitle {
  display: inline-block;
  margin: 0;
}

.spHeaderNoBtn {
  float: right;
  color: #fff;
}

.spHeaderNoBtn:hover {
  text-decoration: none;
}

.spHeaderNoLogo {
  margin: 8px 0 0 12px;
}

.spHeaderNoBtn:link,
.spHeaderNoBtn:hover,
.spHeaderNoBtn:visited {
  color: #fff;
}

.spHeaderNoBtn {
  background-color: #c51436;
  border-radius: 5px;
  box-shadow: 0 -1px 0 0 rgba(0, 0, 0, 0.5) inset;
  padding: 2px 10px;
  margin-right: 10px;
  margin-top: 10px;
  font-size: 24px;
}

.spHeaderNoBtn .acms-icon {
  padding-right: 0;
  vertical-align: -15%;
}

.uk-offcanvas-bar {
  background-color: #fff;
}

.offcanvasTitle {
  color: #c51436;
  font-weight: bold;
  font-size: 18px;
  line-height: 28px;
  margin: 19px 0 13px 13px;
  text-align: left;
}

/*.offcanvasList{
	margin:0;
	padding:0;
}
.offcanvasList li{
	background-color: #C51436;
	font-size:17px;
	padding:15px 0 9px 19px;
	color:#FFFFFF;
	text-align: left;
	text-shadow:0 -1px 0 rgba(0,0,0,0.5);
	border-bottom: 1px solid #FFFFFF;
}
.offcanvasList li:after{
	font-size:20px;
	content:"\e079";
	font-family: "acms-fonts";
	float:right;
	margin-right:12px;
}*/
@media screen and (max-width: 767px) {
  .offcanvasList,
  .offcanvasList ul {
    padding-top: 0;
    padding-bottom: 0;
  }

  .cs-toggleMenu {
    padding-left: 0;
    color: #fff;
    box-shadow: #ddd 0px 3px 4px 0px;
  }

  .offcanvasList li {
    padding: 12px 19px;
    cursor: pointer;
    list-style-type: none;
    display: block;
    background-color: #c51436;
    color: #fff;
    font-size: 17px;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, .5);
    border-bottom: 1px solid #fff;
    line-height: 25px;
  }

  .offcanvasList a {
    color: #fff;
  }

  .offcanvasList a:link,
  .offcanvasList a:visited,
  .offcanvasList a:active {
    color: #fff;
  }

  .offcanvasList a:hover {
    text-decoration: none;
  }

  .offcanvasList li:last-child {
    border-bottom: none;
  }

  .offcanvasList .offcanvasListExpandable.active {
    padding-bottom: 0;
  }

  .offcanvasListExpandable > ul {
    padding-left: 0;
    display: none;
    margin-right: -19px;
    margin-left: -19px;
    padding-top: 0;
    padding-bottom: 0;
  }

  .offcanvasListExpandable {
    position: relative;
  }

  .offcanvasListExpandable:after {
    font-size: 20px;
    position: absolute;
    top: 12px;
    right: 12px;
    content: "";
    font-family: "acms-fonts";
    float: right;

    /*margin-right:12px;*/
  }

  .offcanvasListExpandable.active:after {
    content: "";
  }

  .offcanvasListExpandable.active > ul {
    margin-top: 12px !important;
  }

  .offcanvasListExpandable li {
    background-color: #9d998b;
  }

  body {
    padding-top: 60px;
    box-sizing: border-box;
  }

  .spHeader {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    width: 100%;
    height: 60px;
    background-color: #fff;
    -webkit-transition: left 0.3s ease-in-out;
    transition: left 0.3s ease-in-out;
  }

  .uk-offcanvas-page .spHeader {
    left: -270px;
  }

  /*.uk-offcanvas-page{
		margin-top:0;
	}*/
  .wrapperForSp {
    padding-right: 10px;
    padding-left: 10px;
  }
}

.offcanvasAnotherList {
  background-color: #f7f4ea;
}

.offcanvasAnotherList ul {
  padding-top: 0;
  padding-bottom: 0;
}

.offcanvasAnotherList li {
  padding: 10px 18px;
  font-size: 16px;
  border-bottom: 1px solid #c51436;
}

.offcanvasAnotherListPcLink {
  position: relative;
}

.offcanvasAnotherListPcLink:after {
  position: absolute;
  font-size: 20px;
  position: absolute;
  top: 10px;
  right: 12px;
  content: "";
  color: #4e4c45;
  font-family: "acms-fonts";
  float: right;
}

.offcanvasAnotherList a,
.offcanvasAnotherList a:link,
.offcanvasAnotherList a:visited,
.offcanvasAnotherList a:active {
  color: #c51436;
}

.offcanvasAnotherList a:hover {
  text-decoration: none;
}

#globalNavi {
  width: 100%;
  height: 50px;
  margin: 0;
  z-index: 20;
  clear: both;
  background: #222;
  background: #c40f32;
  list-style: none outside none;
  font-weight: 600;
}

.globalNaviMypage {
  background: #222 !important;
}

#globalNavi ul {

  /*リスト全体*/
  list-style: none;
  margin: 0 auto;
  padding: 0;
  display: block;

  /*width: 940px;*/
  width: 100%;
  max-width: 940px;
  list-style: none;
}

#globalNavi ul li a:link,
#globalNavi ul li a:visited,
#globalNavi ul li a:hover,
#globalNavi ul li a:active,
#globalNavi ul li#viewing {
  display: block;
  _display: inline-block;
  height: 50px;
  padding: 0;
  color: #fff;
  font-size: 16px;
  letter-spacing: 0 !important;
  line-height: 3.4;
  border-left: 1px solid #e62929;
  border-right: 1px solid #a5000d;
  text-shadow: 1px 1px 0 #a5000d;
}

.globalNaviMypage ul li a:link,
.globalNaviMypage ul li a:visited,
.globalNaviMypage ul li a:hover,
.globalNaviMypage ul li a:active,
.globalNaviMypage ul li#viewing {
  text-shadow: 1px 1px 0 #000 !important;
  border-right: solid 1px #000 !important;
  border-left: solid 1px #444 !important;
}

#globalNavi ul li a:hover,
#globalNavi ul li#viewing {
  background: #000;
  text-decoration: none;
}

#globalNavi ul li.stay a,
#globalNavi ul li a:active {
  background: #eee;
  text-decoration: #a5000d;
  border-right: solid 1px #ddd;
}

#globalNavi ul li#viewing {
  background: #a5000d;
}

#globalNavi ul li {

  /*リストの1段目*/
  position: relative;
  top: 0;
  float: left;
  white-space: nowrap;
  width: 20%;
  text-align: center;
}

#globalNavi.globalNaviLogin ul li {

  /*width: 16.6%;*/
  width: auto;
}

#globalNavi.globalNaviLogin ul li ul li {
  width: 100%;
}

#globalNavi.globalNaviLogin ul li a:hover {
  background: #a5000d;
  text-decoration: none;
}

#globalNavi ul li ul {

  /*2段目以降*/
  display: none;
  width: auto;
  position: absolute;
  top: 50px;
  left: 0;
  padding: 0;
  z-index: 10;
}

#globalNavi ul li ul a {
  *width: 240px;
  height: 35px !important;
  text-align: left !important;
  line-height: 2.8 !important;
  padding: 0 20px !important;
  background: #222;
  border-top: solid 1px #444;
  border-bottom: solid 1px #000;
  border-right: none !important;
  border-left: none !important;
  font-size: 13px !important;
  text-shadow: 1px 1px 0 #000 !important;
  *overflow: visible;
}

#globalNavi ul li ul a:hover {
  background-color: #444;
}

#globalNavi ul li ul li {

  /*2段目以降のリスト項目*/
  position: relative;
  clear: left;
  height: 35px;
  width: 100%;
  border-left: none;
  border-right: none;
  font-size: 13px;
}

#globalNavi ul li ul li ul {

  /*3段目以降*/
  position: absolute;
  top: 0;
  left: 100%;
  width: auto;
  background: #222;
}

#globalNavi ul li ul li ul li {
  height: 28px !important;
}

#globalNavi ul li ul li ul a {
  display: block;
  color: #fff;
  height: 28px !important;
  padding: 0 20px !important;
  border-top: none !important;
  border-bottom: none !important;
  border-right: none !important;
  border-left: solid 1px #444 !important;
  line-height: 2.3 !important;
}

#globalNavi ul li:hover > ul {
  display: block;
}

#globalNavi {
  background: #c40f32;
}

#globalNavi ul {

  /*リスト全体*/
  list-style: none;
  margin: 0 auto;
  padding: 0;
  display: block;
  width: 100%;
  max-width: 940px;
  list-style: none;
}

#globalNavi ul li {
  width: 16.6%;
  text-align: center;
}

#globalNavi ul li a:link,
#globalNavi ul li a:visited,
#globalNavi ul li a:hover,
#globalNavi ul li a:active,
#globalNavi ul li#viewing {
  text-shadow: 1px 1px 0 #a5000d;
  border-right: solid 1px #a5000d;
  border-left: solid 1px #e62929;
}

#globalNavi ul li a:hover,
#globalNavi ul li#viewing {
  background: #a5000d;
  text-decoration: none;
}

#globalNavi ul li.stay a,
#globalNavi ul li a:active {
  background: #a5000d;
  text-decoration: none;
  border-right: solid 1px #a5000d;
}

#globalNavi ul li#viewing {
  background: #a5000d;
}

@media screen and (max-width: 940px) {
  #globalNavi ul li a:link,
  #globalNavi ul li a:visited,
  #globalNavi ul li a:hover,
  #globalNavi ul li a:active,
  #globalNavi ul li#viewing {
    font-size: 14px;
    line-height: 3.8;
  }
}

.globalNaviNoList {
  margin: 0 auto;
  padding: 0;
  display: block;
  max-width: 940px;
  width: 100%;
  list-style: none;
}

.globalNaviNoList li {
  list-style-type: none;
  width: 20%;
  text-align: center;
  position: relative;
  top: 0;
  float: left;
  white-space: nowrap;
}

.globalNaviNoList .stay {
  background: #c40f32;
}

.globalNaviNoList a:link,
.globalNaviNoList a:visited {
  display: block;
  height: 50px;
  color: #fff;
  font-size: 16px;
  line-height: 3.4;
  text-shadow: 1px 1px 0 #a5000d;
  border-right: solid 1px #a5000d;
  border-left: solid 1px #e62929;
}

.globalNaviNoList1 {
  display: none;
  width: auto;
  position: absolute;
  top: 50px;
  left: 0;
  padding: 0;
  z-index: 10;
}

li:hover .globalNaviNoList1 {
  display: block;
}

.globalNaviNoList1 li {
  position: relative;
  clear: left;
  height: 35px;
  width: 100%;
  border-left: none;
  border-right: none;
  font-size: 13px;
}

.globalNaviNoList1 a:link,
.globalNaviNoList1 a:visited {
  height: 35px;
  text-align: left;
  line-height: 2.8;
  padding: 0 20px;
  background: #222;
  border-top: solid 1px #444;
  border-bottom: solid 1px #000;
  border-right: none;
  border-left: none;
  font-size: 13px;
  text-shadow: 1px 1px 0 #000;
}

.globalNaviNoList1 a:hover {
  background-color: #444;
}

@media screen and (max-width: 940px) {
  #globalNavi {
    padding: 0 10px;
  }
}

@media screen and (max-width: 767px) {
  #globalNavi {
    display: none;
  }
}


/* =====================
    トピックパス
   ===================== */
.topicpath {
  position: relative;
  /*height: 40px;*/
  background: #ece9d9;
  font-size: 14px;
}
.topicpathList {
  position: relative;
  height: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  overflow-y: scroll;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: none;
}
.topicpathList:after {
  position: absolute;
  top: 0;
  right: 0;
  content: "";
  display: block;
  width: 50px;
  height: 100%;
  background: linear-gradient(to right, rgba(236, 233, 217, 0), #ece9d9, #ece9d9);
}
.topicpathListItem {
  position: relative;
  display: inline-block;
  margin: 0 25px 0 0;
  padding: 10px 0;
  list-style: none;
}
.topicpathListItem:not(:last-child):before {
  content: "";
  position: absolute;
  top: 16px;
  right: -15px;
  width: 8px;
  height: 8px;
  border-top: 1px solid #bfb897;
  border-right: 1px solid #bfb897;
  transform: rotate(45deg);
}
.topicpathLink,
.topicpathLink:link,
.topicpathLink:visited,
.topicpathLink:hover,
.topicpathLink:active,
.topicpathLink:focus {
  color: #333;
}

@media screen and (max-width: 767px) {
  .topicpath {
    background: #c51436;
    color: #fff;
    font-size: 12px;
  }

  .topicpath:after {
    position: absolute;
    top: 0;
    right: 0;
    content: "";
    display: block;
    width: 50px;
    height: 100%;
    background: linear-gradient(90deg, rgba(197, 20, 54, 0), #c51436);
  }

  .topicpathList:before {
    content: none;
  }

  .topicpathList:after {
    content: none;
  }

  .topicpathListItem:not(:last-child):before {
    top: 16px;
    right: -15px;
    width: 6px;
    height: 6px;
    border-color: #fff;
  }

  .topicpathLink,
  .topicpathLink:link,
  .topicpathLink:visited,
  .topicpathLink:hover,
  .topicpathLink:active,
  .topicpathLink:focus {
    color: #fff;
  }

}

/* =====================
    コンテナー
   ===================== */
.mainContainer {
  max-width: 1024px;
  width: 100%;
  margin: 0 auto;
}

@media screen and (max-width: 1044px) {
  .mainContainer {
    padding: 0 10px;
  }
}

.titleSection {
  padding: 40px 20px 0 0;
}

.titleSectionNoMargin {
  padding: 20px 0;
}

.titleSectionNoTitle {
  margin: 0;
  font-size: 30px;
  font-weight: normal;
}

.titleSectionNoSubTitle {
  font-size: 16px;
  padding: 0 0 0 20px;
}

.titleSectionNoForm {
  width: 320px;
  float: right;
}

.gsc-search-button {
  box-sizing: content-box;
}

@media screen and (max-width: 767px) {
  .titleSectionWrap {
    margin: 0 -10px;
  }

  .titleSection {
    padding: 0 10px 10px 10px;
    margin-bottom: 16px;
    background-color: #c51436;
  }

  .titleSectionNoMargin {
    padding: 0 10px 10px 10px;
    background-color: #c51436;
  }


  .titleSectionNoTitle {
    color: #fff;
    font-size: 18px;
    line-height: 29px;
  }

  .titleSectionNoSubTitle {
    display: none;
  }
}

/* ページのお知らせ */
.notification {
  margin: 0 0 30px 0;
  padding: 30px 25px 30px 80px;
  border-radius: 6px;
  background: #efeee4;
}
.notificationHeading {
  position: relative;
  margin: 0 0 15px 0;
  font-size: 18px;
}
.notificationHeading:before {
  content: "";
  position: absolute;
  left: -50px;
  display: block;
  width: 30px;
  height: 30px;
  background: url('/themes/www@acms/images/licensev2/icon_info02.svg') no-repeat;
}
@media screen and (max-width: 767px) {
  .notification {
    padding: 20px 15px 20px 50px;
    background-position: left -10px top 10px;
    background-size: 66px 60px;
  }

  .notificationHeading {
    margin: 0 0 10px 0;
    font-size: 16px;
  }

  .notificationHeading:before {
    left: -38px;
  }
}

/* Not Found */
.notFound {
  margin: 0 0 20px 0;
}

/* ソーシャルボタン */
.socialBtn {
  display: inline-block;
}

.fb-like > span {
  vertical-align: baseline !important;
}

.socialBtnBox {
  margin-bottom: 25px;
}

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

.shareList,
.commonEntry ul.shareList {
  display: flex;
  justify-content: flex-end;
  margin: 10px -5px 70px -5px;
  padding: 0;
  list-style: none;
}
.shareItem,
.commonEntry ul .shareItem {
  margin: 0 5px;
  padding: 0;
  background: 0;
}
.shareItem a,
.commonEntry ul .shareItem a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: auto;
  padding: 10px;
  transition: transform .2s ease;
}
.shareItem a:hover,
.commonEntry ul .shareItem a:hover {
  transform: scale(.8);
}

@media screen and (max-width: 767px) {
  .shareList,
  .commonEntry ul.shareList {
    margin: 10px -5px 40px -5px;
  }
}

.demoSiteIntroBox {
  background-color: #dcd9ce;
  color: #4e4c45;
  margin-top: 30px;
  padding: 22px 10px;
}

.c-nav-page + .demoSiteIntroBox {
  margin-top: 0;
}

.demoSiteIntroBoxHeading {
  font-size: 20px;
  font-weight: normal;
}

.demoSiteIntroBoxMainText {
  font-size: 14px;
}

.demoSiteIntroBoxSubText {
  font-size: 12px;
  margin-bottom: 14px;
}

.demoSiteIntroBoxBtn {
  color: #fff;
}

.demoSiteIntroBoxBtn:link {
  border-radius: 5px;
  display: block;

  /* Rectangle 14: */
  background-image: -o-linear-gradient(-89deg, #8fd13c 0%, #52950d 100%);
  background-image: -moz-linear-gradient(-89deg, #8fd13c 0%, #52950d 100%);
  background-image: -ms-linear-gradient(-89deg, #8fd13c 0%, #52950d 100%);
  background-image: linear-gradient(-179deg, #8fd13c 0%, #52950d 100%);
  border: 2px solid #fff;
  -moz-box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.50), 0px 1px 5px 0px rgba(0, 0, 0, 0.20);
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.50), 0px 1px 5px 0px rgba(0, 0, 0, 0.20);
  padding: 11px 14px 11px 13px;
  font-size: 16px;
  color: #fff;
  line-height: 24px;
  width: 100%;

  /* a-blog cms デモサイト: */
  text-shadow: 0px -1px 0px rgba(0, 0, 0, 0.50);
}

.demoSiteIntroBoxBtn:visited,
.demoSiteIntroBoxBtn:active {
  color: #fff;
}

.demoSiteIntroBoxBtn:hover {
  text-decoration: none;
  background-image: none;
  background-color: #52950d;
}

.demoSiteIntroBoxBtn:after {
  font-family: "acms-fonts";
  content: "\e076";
  font-size: 18px;
  text-shadow: 0px -1px 0px rgba(0, 0, 0, 0.50);
  float: right;
  margin-top: 2px;
}

.demoSiteIntroBoxBtnIcon {
  margin-right: 6px;
  font-size: 18px;
  text-shadow: 0px -1px 0px rgba(0, 0, 0, 0.50);
}

/* -------------------
 サブカラム
 ------------------- */
.subModuleBox {
}

.subModuleBoxHeading {
  margin: 0 0 5px 0;
  text-align: center;
}

/* ■■■■■ エントリーリスト #entryList 　*/
ul.entryList {
  list-style: none;
  margin: 0 0 30px 0;
  padding: 0;
  border-top: solid 1px #e1dbc6;
}

ul.entryList li {
  vertical-align: bottom;
  zoom: 1;
}

/* そのページを表示しているとき */
ul.entryList li.stay {
  background-color: #eee;
}

ul.entryList li a {
  display: block;
  padding: 8px 10px;
  border-bottom: solid 1px #e1dbc6;
  vertical-align: bottom;
  zoom: 1;
}

ul.entryList li a:hover {
  background-color: #fff;
  text-decoration: none;
}

/* ■■■■■ カテゴリーリスト #categoryList 　*/
.categoryList {
  margin: 0 0 30px 0;
}

.categoryList a {
  transition: all .2s ease;
}

.categoryList a:hover {
  opacity: 0.8;
  text-decoration: none;
  background: rgba(255, 255, 255, 0.4);
}

.categoryList ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.categoryList ul li {
  margin: 0 0 10px 0;
  zoom: 1;
  border-radius: 5px;
  background-color: #e1dbc6;
}

.categoryList ul li a {
  display: block;
  padding: 8px 1em 8px 2.5em;
  vertical-align: bottom;
  color: #222;
  font-weight: bold;
  text-indent: -0.7em;
  zoom: 1;
}

/*　二段目以降　*/
.categoryList ul li ul {
  padding: 0 0 5px 0;
}

.categoryList ul li ul li {
  border-radius: 0;
  background: none;
  border-radius: 0;
}

.categoryList ul li ul li a {
  padding: 5px 20px 5px 35px;
  font-weight: normal;
}

.categoryList ul li a span {
  padding: 0 10px 0 0;
}

.categoryList ul li.sizeTall a {

  /*大きめ*/
  padding: 20px;
  text-indent: 0;
}

.categoryList ul li.sizeTall span {
  font-size: 26px;
  line-height: 1;
  vertical-align: -0.3em;
}

.categoryList ul li.sizeTall span.smallText {
  font-size: 12px;
}


/* -------------------
 トップページ
 ------------------- */
.topImageBox {
  background: #e6e2d8; /* Old browsers */
  background: -moz-linear-gradient(top, #e6e2d8 0%, #fff 100%); /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #e6e2d8), color-stop(100%, #fff)); /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #e6e2d8 0%, #fff 100%); /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #e6e2d8 0%, #fff 100%); /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #e6e2d8 0%, #fff 100%); /* IE10+ */
  background: linear-gradient(to bottom, #e6e2d8 0%, #fff 100%); /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e6e2d8', endColorstr='#ffffff', GradientType=0); /* IE6-9 */
}

.topImageBoxBody {
  background: url(../../www@acms/images/top/topImg.png) no-repeat;
  background-size: contain;
  padding-top: 120px;
  padding-left: 330px;
}

.topImageBoxImg {
  float: right;
  margin-bottom: 60px;
}

.topImageBoxList li {
  float: left;
}

@media screen and (max-width: 973px) {
  .topImageBoxImg {
    float: none;
  }

  .topImageBoxBody {
    padding-left: 10px;
  }
}
/*トップページ用1/2幅バナー*/
.top-banner-item {
  margin: 0 0 20px 0;
}
.top-banner a img {
  transition: ease-out .2s;
}

.top-banner a img:hover {
  opacity: .5;
}

@media screen and (max-width: 767px) {
  .top-banner ul li:first-child {
    margin-bottom: 15px;
  }
}

/*スマートフォンのメインビジュアル*/
.topSpImageBox {
  position: relative;
  height: 220px;
  margin-bottom: 13px;
}

.topSpImageBoxBody {
  position: absolute;
  bottom: -23px;
  width: 100%;
}

.topSpImageBoxBodyText {
  font-size: 20px;
  color: #c51436;
  width: 280px;
  margin: 0 auto;
  line-height: 25px;
  text-shadow: 0 0 3px #fff;
  padding: 10px;
  background-color: rgba(255, 255, 255, .5);
}

@media screen and (max-width: 767px) {
  .topImageBox {
    background: none;
  }

  .topImageBoxImg {
    display: none;
  }

  .topImageBoxList li {
    width: 33.3333333%;
  }
}
/* 書籍ホバーの効果 */
.topHoverBg {
  display: block;
  padding: 15px 0;
  transition: background-color linear .25s;
}

.topImageBook {
  -webkit-transform: rotate(-4deg);
  transform: rotate(-4deg);
  transition: transform ease .2s;
}

.topImageBookTxt {
  transition: opacity linear .25s;
}

.topImageNewDevSite {
  position: relative;
}
.topImageNewDevSiteGrid {
  display: flex;
  flex-direction: column;
}
.topImageNewDevSiteImage {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 15px;
}
.topImageNewDevSiteImageInner {
  position: relative;
  display: inline-block;
}

.topImageNewDevSiteText {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 15px;
}

.topImageNewLabel {
  position: absolute;
  bottom: 40px;
  left: -10px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  color: #fff;
  font-weight: bold;
  text-align: center;
  background: #fc0;
  z-index: 1;
}

.topImageNewLabel:before,
.topImageNewLabel:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: #fc0;
  z-index: -1;
}

.topImageNewLabel:before {
  transform: rotate(30deg);
}

.topImageNewLabel:after {
  transform: rotate(60deg);
}

@media screen and (min-width: 768px) {
  .topHoverBg:hover {
    background: rgba(251, 227, 197, 0.4);
  }

  .topHoverBg:hover .topImageBook {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  .topHoverBg:hover .topImageBookTxt {
    opacity: 0.8;
  }

  /* 新デベロッパーサイト */
  .topImageNewDevSiteGrid {
    flex-direction: row;
  }

  .topImageNewDevSite .topHoverBg:hover {
    background: rgba(255, 255, 255, 0.6);
  }

  .topImageNewLabel {
    bottom: 40px;
    left: -10px;
    width: 60px;
    height: 60px;
    transition: transform .4s ease;
  }

  .topImageNewDevSite .topHoverBg {
    padding: 70px 0;
  }

  .topImageNewDevSite .topHoverBg:hover .topImageNewLabel {
    transform: scale(1.2);
  }

  .topImageNewDevSiteImage {
    padding: 0 40px 0 0;
  }

}

/* リリース情報バナー */
.topSectionRelease {
  background: #f7931e;
}

.releaseBannerLink {
  display: block;
  overflow: hidden;
}

.releaseBannerImg {
  transition: transform ease-out .3s;
}

.releaseBannerLink:hover .releaseBannerImg {
  transform: scale(1.08, 1.08);
}

/* 機能紹介 */
.topFunctionBox {
  padding: 20px 0;
  margin-bottom: 15px;
  background-color: #fff;
}

.topFunctionBoxList li {
  list-style-type: none;
  text-align: center;
  color: #5f666c;
  margin-right: 20px;
  float: left;
}

.topFunctionBoxList li:last-child {
  margin-right: 0;
}

.whatEntryIcon,
.topFunctionBoxListIcon {
  display: block;
  width: 100px;
  height: 100px;
  text-align: center;
  background: #ccc;
  color: #fff;
  font-size: 50px;
  line-height: 2.0em;
  border-radius: 50%;
}

.whatEntryIcon1,
.topFunctionBoxListIcon1 {
  background-color: #d083d3;
}

.whatEntryIcon2,
.topFunctionBoxListIcon2 {
  background-color: #50c2c6;
}

.whatEntryIcon3,
.topFunctionBoxListIcon3 {
  background-color: #fea452;
}

.whatEntryIcon4,
.topFunctionBoxListIcon4 {
  background-color: #9991ea;
}

.whatEntryIcon5,
.topFunctionBoxListIcon5 {
  background-color: #a1d134;
}

.whatEntryIcon6,
.topFunctionBoxListIcon6 {
  background-color: #ff9897;
}

.whatEntryIcon7,
.topFunctionBoxListIcon7 {
  background-color: #7cb4f4;
}

.whatEntryIcon8,
.topFunctionBoxListIcon8 {
  background-color: #f1b52d;
}

@media screen and (max-width: 767px) {
  .whatEntryIcon {
    margin: 0 auto;
  }
}

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

.topFunctionBoxBtnContainerRight {
  padding-left: 5px;
}

.topFunctionBoxBtnContainerLeft {
  padding-right: 5px;
}

.topFunctionBoxBtn {
  background-color: #c51436;
  font-size: 18px;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, .5);
  box-shadow: 0 -3px 0 rgba(0, 0, 0, .5) inset;
  border-radius: 5px;
  width: 100%;
  display: block;
  color: #fff;
  padding: 5px 16px;
  cursor: pointer;
}

.topFunctionBoxBtn:hover {
  text-decoration: none;
}

.topFunctionBoxBtnIcon {
  font-size: 45px;
  line-height: 61px;
  margin-right: 12px;
  float: left;
}

.topFunctionBoxBtnText {
  margin-top: 10px;
  display: block;
  line-height: 1.2;
  text-align: right;
}

.topFunctionBoxBnrList {
  margin-right: -10px;
  margin-left: -10px;
  padding-top: 10px;
}

.topFunctionBoxBnrList li {
  float: left;
  padding: 0 10px;
  font-size: 1.3em;
  vertical-align: -0.15em;
}

.topFunctionBoxBnrList li:last-child {
  margin-right: 0;
}

.topFunctionBoxBnrListImg {
  border-radius: 6px;
  box-shadow: 0 1px 5px rgba(0, 0, 0, .2);
}

.topSpFunctionBoxBnrList {
  margin-right: -5px;
  margin-left: -5px;
}

.topSpFunctionBoxBnrItem {
  padding: 5px;
  float: left;
  width: 50%;
}

@media screen and (max-width: 767px) {
  .topFunctionBox {
    margin-bottom: 0;
    padding-bottom: 0;
  }

  .topFunctionBoxBnrList li {
    margin-right: 0;
  }

  .topFunctionBoxBnrListItem1 {
    width: 100%;
    height: auto;
    padding-bottom: 5px;
  }

  .topFunctionBoxBnrListItem2 {
    width: 50%;
    height: auto;
    padding-right: 5px;
  }

  .topFunctionBoxBnrListItem3 {
    width: 50%;
    height: auto;
    padding-left: 5px;
  }

  .topFunctionBox {
    background-color: transparent;
  }
}

.topFunctionBoxBnrListItem1 {
  width: 50%;
}

.topFunctionBoxBnrListItem2,
.topFunctionBoxBnrListItem3 {
  width: 25%;
}

.topBannerList li {
  list-style-type: none;
  padding-right: 5px;
  width: 50%;
  float: left;
}

.topBannerList li:nth-child(2n) {
  padding-left: 5px;
  padding-right: 0;
}

.topShowCaseBox {
}

.topShowCaseBoxList li {
  width: 25%;
  padding: 0 20px 10px 0;
  list-style-type: none;
  float: left;
}

.topShowCaseBoxTitle {
  font-weight: bold;
}

.topShowCaseBoxLink {
  display: block;
  transition: opacity linear .25s;
}

.topShowCaseBoxLink:hover {
  opacity: .7;
}

.topShowCaseBoxListIcon {
  margin: -3px 5px 0 0;
  color: #c40f32;
}

@media screen and (max-width: 767px) {
  .topShowCaseBoxList li {
    padding-right: 10px;
    width: 50%;
  }

  .topShowCaseBoxList li:nth-child(2n) {
    padding-right: 0;
  }
}

.topNoticeBox {
  margin-bottom: 30px;
}

.topNoticeBoxList {
  margin-top: -25px;
}

.topNoticeBoxList li {
  font-size: 14px;
  display: block;
  padding: 10px;
  border-bottom: solid 1px #e1dbc6;
}

.topNoticeBoxList li:hover {
  background-color: #e1dbc6;
}

.topNoticeBoxList a {
  text-decoration: none;
}

.topNoticeBoxList a:hover {
  text-decoration: none;
}

.topNoticeBoxListIcon {
  color: #c40f32;
}

.topNoticeBoxListDat {
  color: #5f666c;
  font-weight: bold;
  font-size: 12px;
}

.topNoticeBoxListCat {
  margin: 0 10px;
  color: #5f666c;
}

@media screen and (max-width: 767px) {
  .topNoticeBox {
    margin-bottom: 21px;
  }

  .topNoticeBoxList {
    margin-top: -17px;
  }

  .topNoticeBoxList li {
    padding: 5px;
  }

  .topNoticeBoxListTitle {
    display: block;
  }
}

/* -----------------------
  新トップページ
------------------------- */
.top2Body {
  font-size: 16px;
}

/*トップページ共通設定*/
.topContainer {
  max-width: 940px;
  margin: 0 auto;
  padding: 0 10px;
  box-sizing: border-box;
}

.topNarrowContainer {
  max-width: 740px;
  margin: 0 auto;
}

.topSection {
  padding: 60px 0;
}

.topSectionBorderTop {
  border-top: 1px solid #ddd;
}

.topSectionWhite {
  background: #fff;
}

.topSectionGroup {
  padding: 15px 0;
}

.topSectionGroupItem {
  padding: 15px 0;
}

.topSectionTitle {
  margin: 0 0 30px 0;
  color: #333;
  font-size: 34px;
  text-align: center;
}

.topSectionTitleLarge {
  margin: 0 15px;
  font-size: 60px;
}

/* セクションの概要文 */
.topSectionDesc {
  margin: 0 0 20px 0;
}


/* 公開事例で使用 */
.topSectionTitleLarge.odometer.odometer-auto-theme {
  vertical-align: baseline;
}

.topSectionBtnWrap {
  margin: 0;
  line-height: 1.2;
  text-align: center;
}

.topSectionBtn {
  display: inline-block;
  padding: 10px 20px;
  min-width: 235px;
  color: #fff;
  font-weight: bold;
  background: #787778;
  border-radius: 100px;
  transition: background linear .2s;
}

.topSectionBtn:link,
.topSectionBtn:visited,
.topSectionBtn:active {
  color: #fff;
}

.topSectionBtn:hover {
  text-decoration: none;
  background: #605f60;
}

@media screen and (min-width: 768px) {
  .topSectionDescShort {
    text-align: center;
  }
}

@media screen and (max-width: 767px) {
  .topSection {
    padding: 40px 0;
  }

  .topSectionTitle {
    margin: 0 0 20px 0;
    font-size: 24px;
  }

  .topSectionTitleLarge {
    font-size: 45px;
  }
}

/*メインビジュアル*/
.topImage {
  padding: 35px 0;
  background: top center;
  background-size: cover;
}

.topImageOrange {
  background-image: -webkit-linear-gradient(left, #fec852 0%, #fea452 100%);
  background-image: -moz-linear-gradient(left, #fec852 0%, #fea452 100%);
  background-image: linear-gradient(to right, #fec852 0%, #fea452 100%);
}


.topImageTitle {
  margin: 0 0 20px 0;
  color: #fff;
  font-size: 31px;
  line-height: 1.5;
  text-shadow: 1px 3px 3px rgba(0, 0, 0, 0.2);
}

.topImageDetail {
  margin: 0 0 30px 0;
  color: #fff;
  font-weight: bold;
  font-size: 20px;
  line-height: 1.5;
  text-shadow: 1px 3px 3px rgba(0, 0, 0, 0.2);
}

.topImageBtnWrap {
  margin: 0;
  font-weight: bold;
  font-size: 22px;
}

.topImageBtn {
  padding: 12px 40px;
  color: #fff;
  text-shadow: 0 -2px 1px rgba(0, 0, 0, 0.2);
  border-radius: 100px;
  background-image: -webkit-linear-gradient(top, #fec751 0%, #fea651 100%);
  background-image: -moz-linear-gradient(top, #fec751 0%, #fea651 100%);
  background-image: linear-gradient(to bottom, #fec751 0%, #fea651 100%);
}

.topImageBtn:link,
.topImageBtn:visited,
.topImageBtn:active {
  color: #fff;
}

.topImageBtn:hover {
  text-decoration: none;
  background: #fea651;
}

/* 8周年記念 */
.topImageCake {
  transition: transform .3s;
}

.topContainer:hover .topImageCake {
  transform: scale(1.05);
}


@media screen and (max-width: 767px) {
  .topImageTitle {
    margin: 0 0 15px 0;
    font-size: 20px;
  }

  .topImageDetail {
    font-size: 14px;
  }

  .topImageBtnWrap {
    font-size: 16px;
  }

  .topImageBtn {
    padding: 10px 20px;
  }
}

.topImageGrid img {
  vertical-align: top;
}

@media screen and (max-width: 479px) {
  .topImageIo {
    float: right;
    max-width: 200px;
  }
}

@media screen and (min-width: 480px) {
  .topImageGrid {
    margin: 0 -10px;
  }

  .topImageGridSm6 {
    float: left;
    width: 50%;
    padding: 0 10px;
    box-sizing: border-box;
  }

  .topImageGridRight {
    float: right;
  }
}

/*周知コンテンツ*/
.topWellKnown {
  max-width: 840px;
  margin: 0 auto;
}
.topWellKnownCatch {
  display: flex;
  margin: 0 0 35px 0;
}
.topWellKnownCatchQuestion {
  display: table;
  padding: 0 25px 0 0;
  font-size: 30px;
  line-height: 1;
  transform: rotate(350deg);
  font-family: 'NewCezanneProN-DB', Meiryo, 'メイリオ', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'ＭＳ Ｐゴシック', 'MS PGothic', Verdana, sans-serif;

}
.topWellKnownCatchQuestionFirstLetter {
  font-size: 120px;
}
.topWellKnownCatchQuestionCircle {
  display: table-cell;
  width: 214px;
  height: 214px;
  border-radius: 100%;
  background: #baebfa;
  vertical-align: middle;
  text-align: center;

}
.topWellKnownCatchQuestionLarge {
  display: block;
  font-size: 40px;
  white-space: nowrap;
}
.topWellKnownCatchAnswer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 0 0 0 25px;
}
.topWellKnownCatchHeading {
  margin: 0 0 25px 0;
  font-size: 30px;
  line-height: 1.2;
  font-family: 'TsukuARdGothicStd-E', Meiryo, 'メイリオ', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'ＭＳ Ｐゴシック', 'MS PGothic', Verdana, sans-serif;
}
.topWellKnownCatchHighlight {
  background: linear-gradient(transparent 45%, #fff100 0);
}
.topWellKnownCatchStrong {
  color: #d60f0f;
  font-size: 46px;
}
.topWellKnownCatchSide {
  font-size: 16px;
}

.topWellKnownCampaign {
  padding: 30px;
  background: #fff;
}
.topWellKnownCampaignInner {
  max-width: 600px;
  margin: 0 auto;
}
.topWellKnownCampaignHeading {
  margin: 15px 0 25px 0;
  text-align: center;
  font-family: 'AokaneStd-EB', Meiryo, 'メイリオ', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'ＭＳ Ｐゴシック', 'MS PGothic', Verdana, sans-serif;
  line-height: 1;
}
.topWellKnownCampaignHeadingHighlight {
  background: linear-gradient(transparent 45%, #fff100 0);
}
.topWellKnownCampaignHeading:before {
  content: "";
  display: inline-block;
  width: 21px;
  height: 28px;
  margin: 0 15px 0 0;
  vertical-align: middle;
  background: url('/themes/www@acms/images/top/topDoubleArrowMin.svg') no-repeat;
}
.topWellKnownCampaignHeading:after {
  content: "";
  display: inline-block;
  width: 21px;
  height: 28px;
  margin: 0 0 0 15px;
  vertical-align: middle;
  background: url('/themes/www@acms/images/top/topDoubleArrowMin.svg') no-repeat;
  transform: rotate(180deg);
}
.topWellKnownCampaignLead {
  margin: 0 0 25px 0;
  color: #b90404;
  font-size: 36px;
  line-height: 1.3;
  text-align: center;
  font-family: 'TsukuARdGothicStd-E', Meiryo, 'メイリオ', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'ＭＳ Ｐゴシック', 'MS PGothic', Verdana, sans-serif;
}
.topWellKnownCampaignDate {
  position: relative;
  max-width: 300px;
  margin: 0 auto 35px;
  color: #fff;
  text-align: center;
  line-height: 2;
  vertical-align: middle;
  background: #000;
}
.topWellKnownCampaignDate:before {
  content: "";
  display: block;
  left: 0;
  top: 0;
  position: absolute;
  border: 15px solid #000;
  border-left: 15px solid #fff;
}
.topWellKnownCampaignDate:after {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  border: 15px solid #000;
  border-right: 15px solid #fff;
}
.topWellKnownCampaignDetail {
  margin: 0 0 30px 0;
}
.topWellKnownCampaignBtnWrap {
  margin: 0 0 10px 0;
  text-align: center;
}
.topWellKnownCampaignBtn {
  padding: 20px 45px;
  color: #fff;
  font-family: 'TsukuARdGothicStd-E', Meiryo, 'メイリオ', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'ＭＳ Ｐゴシック', 'MS PGothic', Verdana, sans-serif;
  font-size: 20px;
  line-height: 1;
  border: 0;
  border-radius: 10em;
  background: #1da78b url('/themes/www@acms/images/ico_arrow_thin.svg') no-repeat center right 15px;
  background-size: 12px 24px;
  transition: background-color .2s;
}
.topWellKnownCampaignBtn:hover {
  background-color: #1b947a;
}
.topWellKnownCampaignBtnCopy {
  font-size: 12px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .topWellKnownCatch {
    margin: 0 0 10px 0;
  }

  .topWellKnownCatchQuestion {
    padding: 0 10px 0 0;
    font-size: 20px;
  }

  .topWellKnownCatchQuestionCircle {
    width: 100px;
    height: 100px;
  }

  .topWellKnownCatchQuestionLarge {
    font-size: 20px;
  }

  .topWellKnownCatchQuestionFirstLetter {
    font-size: 60px;
  }

  .topWellKnownCatchAnswer {
    padding: 0 0 0 10px;
  }

  .topWellKnownCatchHeading {
    margin: 0;
    font-size: 18px;
  }

  .topWellKnownCatchStrong {
    font-size: 24px;
  }

  .topWellKnownCatchSide {
    margin: 10px 0 15px 0;
    font-size: 14px;
  }

  .topWellKnownCampaign {
    padding: 20px 10px;
  }

  .topWellKnownCampaignBtn {
    padding: 15px 25px;
    font-size: 14px;
  }

  .topWellKnownCampaignHeading {
    margin: 0 0 5px 0;
    font-size: 14px;
  }

  .topWellKnownCampaignHeading:before,
  .topWellKnownCampaignHeading:after {
    width: 16px;
    height: 22px;
  }

  .topWellKnownCampaignLead {
    margin: 0 0 10px 0;
    font-size: 20px;
  }

  .topWellKnownCampaignDate {
    margin: 0 auto 15px;
    font-size: 14px;
  }

  .topWellKnownCampaignDate:before,
  .topWellKnownCampaignDate:after {
    border: 14px solid #000;
  }

  .topWellKnownCampaignDate:before {
    border-left: 14px solid #fff;
  }

  .topWellKnownCampaignDate:after {
    border-right: 14px solid #fff;
  }

  .topWellKnownCampaignDetail p {
    font-size: 12px;
  }

  .topWellKnownCampaignBtn {
    background-size: 8px 16px;
    background-position: center right 10px;
  }
}

/*提案ボタン*/
.suggestBtnWrapper {
  background: #fff;
}

.suggestBtnInner {
  max-width: 575px;
  margin: 0 auto;
  padding: 0 10px;
  box-sizing: border-box;
}

.suggestBtnInner a {
  transition: opacity linear .25s;
}

.suggestBtnInner a:hover {
  text-decoration: none;
  opacity: .7;
}

.suggestBtn {
  display: inline-block;
  padding: 20px 0;
  color: #333;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
}

.suggestBtn:link,
.suggestBtn:visited,
.suggestBtn:active {
  color: #333;
}

.suggestBtnLabelWrap {
  display: inline-block;
  margin: 0 20px 0 0;
}

.suggestBtnLabel {
  display: inline-block;
  padding: 2px 20px;
  color: #fff;
  background: #c61c2c;
}

@media screen and (max-width: 767px) {
  .suggestBtn {
    padding: 15px 0;
    font-size: 14px;
  }

  .suggestBtnLabelWrap {
    display: block;
    float: left;
    margin: 0 10px 0 0;
  }

  .suggestBtnLabel {
    padding: 2px 10px;
  }
}

/* 機能リスト */
.topFunctionList {
}

.topFunctionItem {
  float: left;
  display: block;
  width: 25%;
  margin: 0 0 20px 0;
  padding: 0 10px;
  color: #666;
  font-weight: bold;
  text-align: center;
  box-sizing: border-box;
}

.topFunctionItem a {
  display: block;
  padding: 15px 10px;
  color: #666;
  text-decoration: none;
  background: #fff;
  transition: background-color ease-out .25s;
}

.topFunctionItem a:link,
.topFunctionItem a:hover,
.topFunctionItem a:visited,
.topFunctionItem a:active {
  color: #666;
}

.topFunctionItem a:hover {
  text-decoration: none;
  background: #eee;
}

[class*="topFunctionIcon"] {
  display: block;
  margin: 0 0 5px 0;
  font-size: 60px;
  line-height: 1.5;
}

.topFunctionIcon1 {
  color: #d083d3;
}

.topFunctionIcon2 {
  color: #50c2c6;
}

.topFunctionIcon3 {
  color: #fea452;
}

.topFunctionIcon4 {
  color: #9991ea;
}

.topFunctionIcon5 {
  color: #a1d134;
}

.topFunctionIcon6 {
  color: #ff9897;
}

.topFunctionIcon7 {
  color: #7cb4f4;
}

.topFunctionIcon8 {
  color: #f1b52d;
}

@media screen and (max-width: 767px) {
  .topFunctionList {
    margin: 0 -5px;
  }

  .topFunctionItem {
    width: 33.333333%;
    margin: 0 0 10px 0;
    padding: 0 5px;
    font-size: 12px;

    /*border: 5px solid #F7F4EA;*/
  }

  .topFunctionItem a {
    padding: 10px;
  }

  [class*="topFunctionIcon"] {
    font-size: 40px;
    line-height: 1.4;
  }
}

/*事例紹介*/
.topShowCaseBoxList a:link {
  color: #006cd8;
  text-decoration: none;
}

.topShowCaseBoxList a:visited {
  border: none;
  color: #7f5ad7;
  text-decoration: none;
}

.topShowCaseBoxList a:active {
  border: none;
  color: #006cd8;
  text-decoration: none;
}

.topShowCaseBoxList a:hover {
  border: none;
  color: #006cd8;
  text-decoration: underline;
}

.topShowCaseBoxLink img {
  border: 1px solid #ccc;
}

/*お知らせ*/
.topHalfSectionList {
  margin: 0 -10px;
}

.topHalfSectionItem {
  float: left;
  width: 50%;
  padding: 0 10px;
  box-sizing: border-box;
}

@media screen and (max-width: 767px) {
  .topHalfSectionItem {
    width: calc(100% - 20px);
    margin: 0 10px;
  }
}

/* ヘッドライン（お知らせ用） */
.topHeadline {
  margin: 0 0 20px 0;
}

.topHeadlineItem {
  border-bottom: 1px solid #ccc;
}

.topHeadlineLink {
  display: block;
  color: #333;
  transition: background linear .2s;
}

.topHeadlineLink:hover {
  text-decoration: none;
  background: #ece9e0;
}

.topHeadlineLink {
  display: table;
  width: 100%;
  padding: 10px 0;
}

.topHeadlineIcon {
  display: table-cell;
  width: 1%;
  padding: 0 8px 0 0;
  vertical-align: middle;
}

.topHeadlineInner {
  display: table-cell;
}

.topHeadlineIcon {
  color: #c61c2c;
}

.topHeadlineInfo {
  margin: 0 0 5px 0;
}

.topHeadlineDat {
  display: inline-block;
  margin: 0 20px 0 0;
  color: #333;
}

.topHeadlineCat {
  display: inline-block;
  min-width: 145px;
  padding: 2px;
  color: #666;
  font-size: 12px;
  font-weight: bold;
  text-align: center;
  background: #d8d8d8;
}

.topHeadlineTitle {
  color: #006cd8;
  font-weight: bold;
}

/* バ���ー（お知らせ用） */
.topNewsBanner {
  position: relative;

  /*margin: 0 -10px;*/
}

.topNewsBanner .slick-arrow {
  width: 40px;
  height: 40px;
  z-index: 100;
}

.topNewsBanner .slick-next {
  right: 10px;
}

.topNewsBanner .slick-prev {
  left: 10px;
}

.topNewsBanner .slick-arrow:before {
  color: #222;
  font-size: 40px;
}

.topNewsBanner img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

.topNewsBannerItem a {
  display: block;
  transition: opacity linear .3s;
}

.topNewsBannerItem a:hover {
  opacity: .7;
}

/* エバンジェリスト */
.topEvengelistList {
  list-style: none;
  margin: 0 -10px 0;
  padding: 0;
  text-align: center;
  font-size: 12px;
}

.topEvengelistItem {
  display: block;
  float: left;
  width: 33.333333%;
  padding: 0 10px 20px;
  box-sizing: border-box;
}

.topEvengelistLink {
  color: #333;
}

.topEvengelistLink:hover .topEvengelistImg {
  transform: scale(1.1, 1.1);
}

.topEvengelistImgWrap {
  position: relative;
  display: inline-block;
}

.topEvengelistImgInner {
  position: relative;
  width: 80px;
  height: 80px;
  margin: 0 auto 5px;
  overflow: hidden;
  border-radius: 50%;
  z-index: 1;
}

.topEvengelistImg {
  display: block;
  border-radius: 50%;
  transition: transform ease-out .3s;
}

.topEvengelistDetail {
  display: block;
  text-align: center;
}

.topEvengelistItem .acms-label {
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 0 7px;
  z-index: 1;
}

@media screen and (min-width: 480px) {
  .topEvengelistItem {
    width: 25%;
  }
}

@media screen and (min-width: 768px) {
  .topEvengelistItem {
    width: 16.6667%;
  }
}

/*  サムネイル（イベント情報で使用） */
.topThumbnail {
  margin: 0 -10px 20px -10px;
}

.topThumbnailItem {
  position: relative;
  float: left;
  width: calc(25% - 20px);
  margin: 0 10px 10px 10px;
  border: 1px solid #ccc;
  background: #fff;
  box-sizing: border-box;
  transition: all linear .2s;
}

.topThumbnailItem.bl-hover {
  opacity: 0.8;
  background: #efefef;
}

.topThumbnailItemInner {
  position: relative;
}

.topThumbnailPref {
  position: absolute;
  top: 0;
  right: 0;
  padding: 2px 8px;
  color: #fff;
  font-size: 12px;
  background: #787778;
  border-radius: 0 0 0 6px;
}

.topThumbnailImage {
  width: 100%;
  height: 180px;
  background: url(/themes/acms/images/noimage220x220.png) no-repeat center;
  background-size: cover;
}

.topThumbnailText {
  padding: 10px;
  border-top: 1px solid #ccc;
}

.topThumbnailDat {
  margin: 0 10px 0 0;
}

.topThumbnailDatDay {
  font-size: 20px;
}

.topThumbnailDayLabel {
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 0 0 5px;
  color: #fff;
  font-size: 12px;
  text-align: center;
  background: #000;
  border-radius: 50%;
}

.topThumbNailDayLabelSaturday {
  background: #7cb4f4;
}

.topThumbNailDayLabelSunday {
  background: #ff9897;
}

.topThumbnailCat {
  display: inline-block;
  min-width: 102px;
  padding: 0 5px;
  color: #666;
  font-size: 12px;
  font-weight: bold;
  text-align: center;
  background: #d8d8d8;
}

.topThumbnailCat.online {
  /*赤紫*/
  color: #fff;
  background-color: #d083d3;
}

.topThumbnailCat.sponsor {
  /*青色*/
  color: #fff;
  background-color: #7cb4f4;
}

.topThumbnailCat.appear {
  /*青緑*/
  color: #fff;
  background-color: #50c2c6;
}

.topThumbnailCat.host {
  /*黄緑*/
  color: #fff;
  background-color: #c40f32;
}

.topThumbnailCat.general {
  /*黄色*/
  color: #fff;
  background-color: #f1b42d;
}

.topThumbnailCat.user {
  /*橙色*/
  color: #fff;
  background-color: #fea452;
}

.topThumbnailTitle {
  color: #006cd8;
  font-weight: bold;
  line-height: 1.4;
  overflow: hidden;
  text-overflow: ellipsis;
}

.topThumbnailTitle a {
  color: #006cd8;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

.topThumbnailTitle a:hover {
  text-decoration: none;
}

.topThumbnailTitle a:visited {
  color: #006cd8;
}

@media screen and (max-width: 767px) {
  .topThumbnailItem {
    width: calc(50% - 20px);
  }
}

@media screen and (max-width: 479px) {
  .topThumbnail {
    margin: 0 0 20px 0;
  }

  .topThumbnailItem {
    display: table;
    width: calc(100% - 20px);
    height: auto !important;
  }

  .topThumbnailImage {
    display: table-cell;
    width: 100px;
    height: 100px;
  }

  .topThumbnailText {
    display: table-cell;
  }
}

/*SNSタイムライン*/
.twitterTimelineWrap {
  margin: 0 0 20px 0;
}

.twitterTimelineWrap > iframe {
  border: 1px solid rgba(15, 70, 100, .12) !important;
  border-radius: 4px;
}

/*お問い合わせ*/
.topSectionSuggest {
  padding: 40px 0;
  background: #fec852;
  background-image: -webkit-linear-gradient(left, #fec852 0%, #fea452 100%);
  background-image: linear-gradient(to right, #fec852 0%, #fea452 100%);
}

.topSuggestTitle {
  margin: 0 0 30px 0;
  color: #fff;
  font-size: 34px;
  text-align: center;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
}

.topSuggestBtnWrap {
  text-align: center;
}

.topSuggestBtnList {
  text-align: center;
}

.topSuggestBtnListItem {
  display: inline-block;
  margin: 0 10px 15px;
}

.topSuggestBtnListItem:last-child {
  margin: 0 10px;
}

.topSuggestBtn {
  display: inline-block;
  padding: 5px 20px;
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  background: #c61c2c;
  border-radius: 100px;
  transition: background linear .2s;
}

.topSuggestBtn:link,
.topSuggestBtn:visited,
.topSuggestBtn:active {
  color: #fff;
}

.topSuggestBtn:hover {
  text-decoration: none;
  background: #ae1927;
}

@media screen and (max-width: 767px) {
  .topSectionSuggest {
    margin: 0 0 -30px 0;
  }

  .topSuggestTitle {
    margin: 0 0 20px 0;
    font-size: 28px;
  }

  .topSuggestBtn {
    min-width: 240px;
  }
}

/*  -------------------
 whatページ
---------------------- */
.whatNavi {
  width: 100%;
  margin: 0 auto;
}

.whatNaviNoList {
  max-width: 940px;
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

.whatNaviNoList li {
  display: block;
  width: 220px;
  float: left;
  margin: -2px 20px -2px 0;
  padding: 0;
}

@media screen and (min-width: 769px) {
  .whatNaviNoList li {
    display: block !important;
  }
}

.whatNaviNoList li:last-child {
  margin-right: 0;
}

.whatNaviNoList a {
  display: block;

  /*width: 216px;*/
  height: 50px;
  border: solid 2px #5f666c;
  background-color: #5f666c;
  color: #fff;
  text-align: center;
  font-size: 16px;
  line-height: 3.6;
}

.whatNaviNoList a:visited,
.whatNaviNoList a:hover {
  border: solid 2px #5f666c;
}

.whatNaviNoList a:link,
.whatNaviNoList a:visited,
.whatNaviNoList a:active {
  color: #fff;
}

.whatNaviNoIcon {
  font-size: 24px;
  margin: 0 0.3em 0 0;
  vertical-align: -0.15em;
}

/* そのページを表示しているとき */
.whatNavi .stay {
  background-color: transparent;
}

.whatNavi .stay a {
  background-color: #fff;
  color: #5f666c;
}

.whatNavi a:hover {
  text-decoration: none;
  opacity: 0.8;
}

.whatNavi li.stay {
  border-radius: 6px 6px 0 0;
  background: #fff;
}

/* ■■■■■ 上部 #whatTopNavi 　*/
/*#whatTopNavi {*/
/*margin-bottom: 50px;*/
/*}*/

#whatTopNavi .whatNavi {
  border-bottom: solid 2px #5f666c;
}

#whatTopNavi .whatNaviNoList a {
  border: solid 2px #5f666c;
  border-radius: 6px 6px 0 0;
}

#whatTopNavi .whatNaviNoList .stay a {
  border-bottom: solid 2px #fff;
}

/* ■■■■■ 下部 #whatBottomNavi 　*/
#whatBottomNavi {
  margin-bottom: 20px;
}

#whatBottomNavi .whatNavi {
  border-top: solid 2px #5f666c;
}

/*#whatBottomNavi .whatNaviNoList li {
}*/
#whatBottomNavi .whatNaviNoList a {
  border-radius: 0 0 6px 6px;
}

#whatBottomNavi .whatNaviNoList .stay a {
  border-top: solid 2px #fff;
}

/*whatページ用のナビゲーション*/
@media screen and (max-width: 940px) {
  .whatNavi {
    padding: 10px;
    padding-top: 0;
    padding-bottom: 0;
    margin-bottom: 10px;
  }

  .whatNavi li {
    float: none;
    width: 100%;
    margin: 0 0 1px 0;
  }

  .whatNavi .stay {
    margin-bottom: 0;
  }

  .whatNavi a {
    text-align: left;
    width: auto;
    padding-left: 16px;
    border: 1px solid #5f666c;
    padding-top: 8px;
    line-height: 32px;
    font-size: 16px;
    height: auto;
  }

  #whatTopNavi {
    margin-bottom: 0;
  }

  #whatTopNavi .whatNavi {
    border-bottom: none;
  }

  #whatTopNavi .whatNavi a {
    border-radius: 0;
  }

  #whatTopNavi .whatNavi .stay a {
    border: 1px solid #5f666c;
  }

  #whatBottomNavi {
    display: none;
  }

  .whatNavi .stay a:after {
    float: right;
    font-size: 20px;
    content: "\e079";
    margin-right: 10px;
    margin-top: -4px;
    font-family: "acms-fonts";
  }

  .whatNavi .stay.active a:after {
    content: "\e077";
  }

  .whatNavi li {
    display: none;
  }

  .whatNavi .stay {
    display: block;
  }
}

.whatContents {
  margin: 0 0 50px 0;
}

.whatEntry {
  padding-top: 50px;
  padding-bottom: 30px;
}

.whatEntry p {
  margin-bottom: 16px;
}

.whatEntry h2 {
  margin: 50px 0 20px 0;
  font-size: 36px;
}


.whatEntry h4 {
  margin: 30px 0 10px 0;
  font-size: 20px;
}

.whatEntry table {
  width: 100%;
  margin: 10px 0 30px 0;
  padding: 0;
  border: 1px solid #e1dbc6;
  border-collapse: collapse;
  color: #222;
}

.whatEntry th {
  background-color: #e1dbc6;
  border: 1px solid #fff;
  width: 200px;
  padding: 8px 10px;
  text-align: left;
}

.whatEntry td {
  padding: 5px 10px;
  border: 1px solid #e1dbc6;
}


@media screen and (max-width: 767px) {
  .whatEntry {
    margin-top: 30px;
  }

  .functionTable tr {
    _display: inline-table;
    zoom: 1;
  }

  .functionTable tr:after {
    clear: both;
    display: block;
    visibility: hidden;
    height: 0;
    content: ".";
  }

  .functionTable td:nth-child(2) {
    float: left;
    width: 90%;
    border: none;
    border-right: 1px solid #e1dbc6;
  }

  .functionTable td:nth-child(3) {
    float: left;
    border: none;
    width: 10%;
    text-align: center;
  }
}

.whatEntry ul {
  margin: 15px 20px 20px 0;
  padding: 0 0 0 35px;
  font-size: 14px;
}

.whatEntry li {
  list-style-type: none;
  margin: 0 0 0.8em 0;
  padding: 0 0 0 13px;
  line-height: 1.6;
  background: url(/themes/acms/images/entry/list.gif) no-repeat 0 6px;
}

.whatEntryTagLine {
  margin: 10px 0 0;
  font-size: 18px;
}

.whatEntryTagTitle {
  margin: 0 0 20px;
  font-size: 26px;
  font-weight: normal;
}

@media screen and (max-width: 767px) {
  .whatEntry ul {
    padding-left: 0;
  }

  .whatEntry {
    padding-top: 0;
    margin-bottom: 20px;
  }

  .whatEntry:last-child {
    margin-bottom: 0;
  }

  .whatEntry table {
    font-size: 13px;
    margin-top: 0;
  }

  .whatEntry h2 {
    font-size: 26px;
  }

  .whatEntry h3 {
    font-size: 20px;
  }

  .whatEntry tbody,
  .whatEntry th,
  .whatEntry td,
  .whatEntry tr {
    display: block;
  }

  .whatEntry th {
    width: auto;
  }
}

/*762行目
	whatEntryIcon
*/
.whatBannerContainer {
  margin: 0 -10px 50px;
}

.whatBannerWrap {
  list-style: none;
  margin: 0;
  padding: 0;
}

.whatBannerItem {
  float: left;
  width: 50%;
  padding: 0 10px;
  box-sizing: border-box;
}

.whatBanner {
  position: relative;
  float: left;
  width: 100%;
  height: 80px;
  padding: 0;
  background: #72787d; /* Old browsers */
  background: -webkit-linear-gradient(top, #72787d 0%, #5f666c 100%); /* Chrome10+,Safari5.1+ */
  background: linear-gradient(to bottom, #72787d 0%, #5f666c 100%); /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#72787d', endColorstr='#5f666c', GradientType=0); /* IE6-9 */
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  font-size: 18px;
  line-height: 4.8;
  text-indent: 20px;
  text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.3);
  transition: opacity .2s ease;
}

.whatBanner a {
  display: block;
}

.whatBanner .acms-icon-arrow-right {
  position: absolute;
  top: 50%;
  right: 20px;
  margin-top: -9px;
  color: #fff;
}

.whatBannerIcon {
  margin-right: 10px;
}

.whatBanner:first-child {
  margin-right: 20px;
}

.whatBanner.bl-hover {
  opacity: .7;
}

.whatBanner a {
  color: #fff;
}

.whatBanner a:link,
.whatBanner a:visited,
.whatBanner a:active {
  color: #fff;
}

.whatBanner a:hover {
  text-decoration: none;
}


/* ----------------------
 マニュアルページ
 ---------------------- */
.manualBox {
  margin-bottom: 25px;
}

.manualBox p {
  padding: 0;
}

.manualBox ul {
  float: left;
  width: 50%;
  padding-top: 20px;
}

.manualBoxImg {
  float: left;
  width: 315px;
}

.manualBoxBody {
  margin-left: 315px;
}

.manualBoxBody ul {
  padding-left: 0;
}

.manualBoxBody ul li {
  padding-left: 0;
  background: none;
}

.manualEditTable {
  width: 100%;
}

.manualEditTableTextArea {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .manualBoxBody {
    margin-left: 0;
  }

  .manualBoxImg {
    float: none;
    width: auto;
  }

  .manualBox ul {
    float: none;
    width: 100%;
    padding-top: 10px;
  }
}

/*制作事例ページ*/
.showcaseIndex.-margin-bottom:not(:has(.commonPagerBox)){
	margin-bottom: 80px;
}

.showcaseIndex .showcaseIndex{
	margin-top: 56px;
}

@media screen and (max-width: 767px) {
  .showcaseIndex.-margin-bottom:not(:has(.commonPagerBox)){
    margin-bottom: 48px;
  }
  
  .showcaseIndex .showcaseIndex{
    margin-top: 40px;
  }
}

.showcaseGrid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(460px, 1fr));
  grid-template-rows: max-content 1fr;
  grid-template-areas: "image title" "image info";
  gap: 0 32px;
}

.showCaseBox {
  display: flex;
  flex-wrap: wrap;
}

.showCaseBoxItem {
  margin: 0 0 10px 0;
  padding: 0 5px;
  width: 33.3333%;
  transition: opacity .2s ease;
}

.showCaseBoxItem:nth-last-child(n+4),
.showCaseBoxItem:nth-last-child(n+4) ~ .showCaseBoxItem {
  width: 25%;
}

.showCaseBoxItem.bl-hover {
  opacity: .7;
}

.showCaseBoxItem {
  padding-bottom: 15px;
}

.showCaseBoxItemImgWrapper {
  margin-bottom: 10px;
  max-width: 100%;
}

.showCaseBoxItemLink {
  margin: 0;
  font-weight: normal;
}

.showCaseBoxItemLinkIcon {
  color: #c40f32;
  margin: 0 5px 0 0;
}

.showCaseBoxItemAwardName {
  margin: 0 0 10px 0;
  font-size: 16px;
  font-weight: bold;
}

.showCaseBoxItemAwardName:before {
  content: "";
  display: inline-block;
  width: 34px;
  height: 28px;
  margin: 0 10px 0 0;
  vertical-align: middle;
  background: url(/themes/awards/images/common/icon-award.svg) no-repeat left center;
  background-size: cover;
}


/* タグ */
.showCaseTagListWrap {
  margin: 40px 0 0 0;
}

.showCaseTagListWrap .showCaseTagList {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
  padding-left: 0;
  margin: 0;
}

.showCaseTagListWrap .showCaseTagList li {
  display: inline-block;
  background: none;
  padding-left: 0;
}

.showCaseTagIcon {
  color: #c51436;
  font-size: 17px;
  margin-right: 5px;
}

.showCasePhotoBox a {
  color: #1D1D1D;
  transition: opacity .2s ease;
}

.showCasePhotoBox.-inverse a {
  color: white;
}

.showCasePhotoBox a:hover {
  opacity: .7;
}

.showCasePhotoBox a:visited {
  color: unset;
}

.showCasePhotoBox [class*="acms-icon-"] {
  display: inline-grid;
  place-content: center;
  width: 14px;
  height: 14px;
  margin: -3px 5px 0 0;
  border-radius: 50%;
  background: #C40F32;
  color: white;
  font-size: 9px;
}

.showCasePhotoBox .title {
  margin: 18px 0 0;
  line-height: 1.5;
  font-size: 16px;
}

.showCasePhotoBox .url {
  margin: 5px 0 0;
  font-size: 12px;
  word-break: break-all;
}

.showCasePhotoBox .url a {
  text-decoration: underline;
}

.showCasePhotoBox .url a:hover {
  text-decoration: none;
}

.showCasePhotoBox img {
  width: 100%;
  height: auto;
  border: 1px solid #E2E2E2;
}

.showCasePhotoImg2x3,
.showCasePhotoImg4x3 {
  object-fit: contain;
  object-position: center top;
  background-color: white;
}
.showCasePhotoImg2x3 {
  aspect-ratio: 2 / 3;
}
.showCasePhotoImg4x3 {
  aspect-ratio: 4 / 3;
}

.showcaseImg {
  grid-area: image;
  
  img {
    width: 100%;
    height: auto;
    border: 1px solid #E2E2E2;
  }
}

@media screen and (max-width: 767px) {
  .showcaseImg {
    margin: 0 0 20px 0;
  }
}

/* テーブル */
.showCaseTable {
  margin: 48px 0;
  border-right: none;
  border-left: none;
}

.showCaseTable tr {
  border-bottom: 1px solid #DDDDDD;
}

.showCaseTable th {
  border: none;
  background-color: transparent;
}

.showCaseTable td {
  border: none;
}

.showcaseTitle {
  grid-area: title;
}

.showCaseNameBox {
  padding: 10px 0;
  border-top: 1px solid #e1dbc6;
}

.showCaseNameBox p {
  margin: 0;
}

.showCaseName {
  margin: 0 0 10px;
  font-weight: bold;
}

.showcaseUrl {
  margin: 0;
}

.showcaseUrl [class*="acms-icon"] {
  margin: 0 5px 0 0;
}

.showcaseInfo {
  grid-area: info;
  p {
    font-size: 16px;
  }
}

.showCaseTable tr:nth-child(odd) {
  background: none;
}

.showCaseTable tr:last-child td {
  border-bottom: none;
}

.showCaseTable th,
.showCaseTable td {
  display: table-cell;
  padding: 16px 8px;
}

.showCaseTable th {
  padding-left: 0;
  white-space: nowrap;
}

.showCaseTable td {
  padding-right: 0;
}

.showCaseTable ul {
  margin: 0;
  padding-left: 0;
  list-style: none;
}

.showCaseTable li {
  position: relative;
  padding-left: 16px;
}

.showCaseTable li::before {
  content: "";
  position: absolute;
  top: 11px;
  left: 0;
  width: 5px;
  height: 5px;
  background: #C40F32;
}

.showCaseTable li + li {
  margin-top: .5em;
}

/* タグの絞り込み */
.showCaseFilterBoxWrap {
  margin-bottom: 40px;
}

.showCaseFilterBox {
  background-color: #fff;
  padding: 20px;
}

.showCaseFilterDesc {
  margin: 0;
}

.showCaseFilterTag {
  display: inline-block;
  margin-right: 10px;
}

.js-tagToggle {
  cursor: pointer;
}

.js-tagBody.active {
  display: none;
}

.showCaseFilterList {
  margin: 0;
  padding: 0;
}

.showCaseFilterList a {
  display: block;
  padding: 10px;
}

.showCaseFilterList a:hover {
  background-color: #e1dbc5;
}

.showCaseFilterList a:hover,
.showCaseFilterList a:link,
.showCaseFilterList a:visited {
  color: #212121;
  text-decoration: none;
}

.showCaseFilterList li {
  display: block;
  float: left;
  width: 25%;
}

.showCaseFilterList .acms-icon-open {
  margin-right: 10px;
}

.showTagRelational {
  margin: 80px 0 64px;
}

.showTagRelationalHeader {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
  margin-bottom: 56px;
}

.showTagRelationalHeader .entryHeaderLink {
  display: inline-flex;
  gap: .5rem;
  align-items: center;
  margin-left: auto;
  color: #1D1D1D;
  font-size: 14px;
}

@media screen and (max-width: 1024px) {
  .showcaseTitle {
    margin-bottom: 24px;
  }
}

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

  .showCaseBoxItem {
    width: 33.3%;
    padding-bottom: 0;
  }

  .showCaseBoxItem.is-tabletHalf:nth-last-child(n+4),
  .showCaseBoxItem.is-tabletHalf:nth-last-child(n+4) ~ .showCaseBoxItem.is-tabletHalf {
    width: 50%;
  }

  .showCaseBoxItemImgWrapper {
    margin: 0 auto 5px auto;
  }

  .showCaseTable {
    margin: 40px 0;
  }
  
  .showCaseTable th,
  .showCaseTable td {
    font-size: 14px;
  }

  .showCaseTagListWrap {
    margin-top: 0;
  }

  .showTagRelational {
    margin: 50px 0 20px;
  }

  .showTagRelationalHeader {
    margin-bottom: 24px;
  }
}


@media screen and (max-width: 479px) {
  .showCaseBoxItem:nth-last-child(n+4),
  .showCaseBoxItem:nth-last-child(n+4) ~ .showCaseBoxItem {
    width: 50%;
  }

  /*.showCaseBoxItem:first-child {*/
  /*  width: 100%;*/
  /*}*/
  .showCaseBoxItem:nth-last-child(3n) {
    width: 100%;
  }

  .showCaseBoxItem:nth-last-child(n+3) ~ .showCaseBoxItem {
    width: 50%;
  }


  .showCaseBoxItemImgWrapper {
    margin-bottom: 5px;
  }
}

/* ----------------
ライセンス
------------------ */
.licenseSection {
  padding: 35px 0;
}
.licenseHeading {
  margin: 0 0 35px 0;
  font-size: 35px;
  text-align: center;
}
.licenseDescription {
  max-width: 780px;
  margin: 0 auto 15px;
}
@media screen and (max-width: 767px) {
  .licenseHeading {
    margin: 0 0 20px 0;
    font-size: 20px;
  }
}
.licenseConversionBtnOuter {
  margin: 20px 0 30px 0;
  text-align: center;
}
.licenseEntry .licenseConversionBtnWrap,
.licenseConversionBtnWrap {
  margin: 0 0 10px 0;
}
.licenseConversionBtn {
  position: relative;
  display: block;
  max-width: 460px;
  margin: 0 auto;
  padding: 10px;
  color: #fff;
  font-size: 22px;
  text-align: center;
  border-radius: 6px;
  background: #d63030;
  transition: background .2s;
}
.licenseConversionBtn:link,
.licenseConversionBtn:hover,
.licenseConversionBtn:visited,
.licenseConversionBtn:active,
.licenseConversionBtn:focus {
  color: #fff;
}
.licenseConversionBtn:hover {
  text-decoration: none;
  background: #b42d2d;
}
.licenseConversionBtnIcon {
  margin: 0 10px 0 0;
  font-size: 40px;
}
.licenseConversionBtnArrow {
  position: absolute;
  top: 50%;
  right: 20px;
  margin: -12px 0 0 0;
  font-size: 24px;
}
.licenseConversionMicroCopy {
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  .licenseEntry .licenseConversionBtnWrap,
  .licenseConversionBtnWrap {
    margin: 0 10px 5px 10px;
  }

  .licenseConversionBtn {
    padding: 10px 36px 10px 10px;
    font-size: 16px;
  }

  .licenseConversionBtnIcon {
    font-size: 30px;
  }

  .licenseConversionBtnArrow {
    margin: -10px 0 0 0;
    font-size: 20px;
  }
}

/* 比較テーブル */
.licenseTableWrap {
  position: relative;
  margin: 60px 0 50px 0;
}
.licenseTable {
  width: 100%;
  table-layout: fixed;
  font-size: 13px;
  border-collapse: inherit;
}
.licenseTableName {
  position: relative;
  width: 130px;
  padding: 12px;
  color: #fff;
  font-size: 12px;
  line-height: 1.1;
  background: #666;
}
.licenseTableNameFirst {
  border-radius: 6px 0 0 0;
}
.licenseTableNameLast {
  border-radius: 0 6px 0 0;
}
.licenseTableNameBadge {
  position: absolute;
  top: -100%;
  left: 0;
  right: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin: 5px 0 0 0;
  padding: 6px;
  border-radius: 10em;
  color: #333;
  font-size: 12px;
  font-weight: bold;
  background: #ffdc48;
}
.licenseTableNameBadge:before {
  content: "";
  position: absolute;
  top: 100%;
  border: 7px solid transparent;
  border-top-color: #ffdc48;
}
.licenseTableNameStartup {
  background: #1880d9;
}
.licenseTableNameStandard {
  background: #d63030;
}
.licenseTableNameProfessional {
  background: #2c9893;
}
.licenseTableNameEnterprise {
  background: #693e9a;
}
.licenseTableNameSmall {
  display: block;
  font-size: 14px;
}
.licenseTable th,
.licenseTable td {
  padding: 10px 5px;
  text-align: center;
}
.licenseTable th {
  font-size: 12px;
}
.licenseTableLarge {
  font-size: 24px;
}
.licenseTableMedium {
  font-size: 16px;
}
.licenseTableSmall {
  font-size: 12px;
}
.licenseTableBold {
  font-weight: bold;
}
.licenseTableSupplement {
  display: block;
  font-size: 11px;
  font-weight: normal;
}
.licenseTableBreak {
  display: inline-block;
}
.licenseTableWhite {
  background: #fff;
}
.licenseTableHeading {
  background: #ede9dc;
}
.licenseTableBtn {
  display: block;
  padding: 5px 8px;
  color: #fff;
  font-size: 13px;
  font-weight: bold;
  border-radius: 6px;
  background: #666;
  transition: .2s background-color;
}
.licenseTableBtn:link,
.licenseTableBtn:hover,
.licenseTableBtn:visited,
.licenseTableBtn:active,
.licenseTableBtn:focus {
  color: #fff;
}
.licenseTableBtn:hover {
  text-decoration: none;
  background: #555;
}
.licenseTableBtnStartup {
  background: #1880d9;
}
.licenseTableBtnStandard {
  background: #d63030;
}
.licenseTableBtnProfessional {
  background: #2c9893;
}
.licenseTableBtnEnterprise {
  background: #693e9a;
}
.licenseTableBtnStartup:hover {
  background: #146ab4;
}
.licenseTableBtnStandard:hover {
  background: #b42d2d;
}
.licenseTableBtnProfessional:hover {
  background: #278580;
}
.licenseTableBtnEnterprise:hover {
  background: #5a3583;
}

.licenseTableBottomLeftRadius {
  border-radius: 0 0 0 6px;
}

.licenseTableTopLeftRadius {
  border-radius: 6px 0 0 0;
}

.licenseTableBottomRightRadius {
  border-radius: 0 0 6px 0;
}

.licenseTableYes {
  display: block;
  width: 22px;
  height: 22px;
  margin: 0 auto;
  border: 4px solid #577eff;
  border-radius: 100%;
}

.licenseTableImportant {
  display: flex;
  justify-content: center;
  color: #d63030;
  font-size: 11px;
  line-height: 1.3;
}
.licenseTableImportantText {
  display: flex;
  width: 2em;
  margin-right: 5px;
  text-align: right;
}
.licenseTableImportantStrong {
  display: flex;
  padding: 4px 12px;
  font-size: 14px;
  border: 1px solid currentColor;
  border-radius: 3px;
  white-space: nowrap;
}
.licenseTableImportantPrice {
  display: flex;
  justify-content: center;
  align-items: center;
}
.licenseTableImportantPriceUnit {
  align-items: center;
  justify-content: center;
  display: flex;
  white-space: nowrap;
}
.licenseTableAfterSupplement {
  list-style: none;
  margin: 0;
  padding: 0;
  color: #666;
  font-size: 12px;
  text-align: right;
}

.licenseTableAfterSupplement li {
  display: inline-block;
  margin: 0 0 0 15px;
}

@media screen and (max-width: 1200px) {
  .licenseTableWrap {
    margin: 50px 0 30px;
  }

  .licenseTable {
    table-layout: auto;
    font-size: 14px;
  }

  .licenseTable th,
  .licenseTable td {
    padding: 10px;
  }

  .licenseTable td {
    min-width: 110px;
  }

  .licenseTableLarge {
    font-size: 20px;
  }
}

@media screen and (max-width: 1024px) {
  .showcaseGrid {
    display: block;
  }
  
  .licenseTableScrollable {
    position: relative;
    overflow-x: auto;
  }

  .licenseTable {
    margin-top: 30px;
    font-size: 10px;
  }

  .licenseTable th,
  .licenseTable td {
    padding: 5px;
  }

  .licenseTableBreak {
    display: block;
  }

  .licenseTableName,
  .licenseTableNameSmall {
    font-size: 10px;
  }

  .licenseTableNameBadge {
    font-size: 11px;
    margin: 8px 0 0 0;
  }

  .licenseTableYes {
    width: 18px;
    height: 18px;
  }
}


/* ライセンスのサイド情報 */
.licenseInfo02 {
  display: flex;
  margin: 0 0 20px 0;
  border-radius: 6px;
}
.licenseInfo02Item {
  display: flex;
  width: 50%;
  margin: 0 0 20px 0;
}
.licenseInfo02ItemInner {
  padding: 30px;
  background: #fff;
}
.licenseInfo02Item:nth-child(2n) {
  border-left: 1px solid transparent;
}
.licenseInfo02Title {
  margin: 0 0 20px 0;
  font-size: 20px;
}
.licenseInfo02TitleFunction {
  color: #2154c7;
}
.licenseInfo02TitleLicense {
  color: #d63030;
}
.licenseInfo02TitleIcon {
  margin: 0 10px 0 0;
  font-size: 24px;
}
.licenseInfo02Detail {
  margin: 0 0 20px 0;
}
.licenseInfo02BtnWrap {

}
.licenseInfo02Btn {
  position: relative;
  display: block;
  max-width: 200px;
  margin: 0 auto;
  padding: 10px;
  color: #fff;
  text-align: center;
  border-radius: 6px;
  background: #999;
  transition: .2s background-color;
}
.licenseInfo02Btn:link,
.licenseInfo02Btn:hover,
.licenseInfo02Btn:visited,
.licenseInfo02Btn:active,
.licenseInfo02Btn:focus {
  color: #fff;
  text-decoration: none;
}
.licenseInfo02BtnFunction {
  background: #2154c7;
}
.licenseInfo02BtnLicense {
  background: #d63030;
}
.licenseInfo02BtnFunction:hover {
  background: #1e4bb2;
}
.licenseInfo02BtnLicense:hover {
  background: #b42d2d;
}
.licenseInfo02BtnArrow {
  position: absolute;
  top: 50%;
  margin: -8px 0 0 0;
  right: 10px;
  font-size: 16px;
}

@media screen and (max-width: 767px) {
  .licenseInfo02 {
    flex-direction: column;
  }

  .licenseInfo02Item {
    width: 100%;
  }

  .licenseInfo02Item:nth-child(2n+1) {
    margin-bottom: 2px;
  }

  .licenseInfo02ItemInner {
    padding: 20px;
  }

  .licenseInfo02Title {
    margin: 0 0 15px 0;
    font-size: 16px;
  }

  .licenseInfo02Detail {
    font-size: 12px;
  }
}

/* ライセンス適用の流れ */
.licenseFlowList {
  margin: 0;
  padding: 0;
}
.licenseFlowListItem {
  position: relative;
  display: flex;
  width: 100%;
  margin: 0 0 40px 0;
}
.licenseFlowArrow {
  position: relative;
}
.licenseFlowArrow:before {
  content: "";
  position: absolute;
  top: -28px;
  left: 50%;
  margin-left: -18px;
  border: 18px solid transparent;
  border-top: 18px solid #c30101;
}
.licenseFlowListItem:last-child {
  margin: 0;
}
.licenseFlowInner {
  display: flex;
  background: #fff;
}

.licenseFlowChild {
  margin: 0 0 10px 0;
  padding: 10px;
  background: #fff;
}


.licenseFlowTitle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin: 0 0 10px 0;
  padding: 2px 5px;
  color: #fff;
  font-size: 16px;
  background: #c30101;
}
.lisenseFlowHeader {
  display: flex;
  width: 100%;
}
.licenseFlowItem {
  padding: 15px 10px;
}
.licenseFlowListItemRow {
  display: flex;
  margin: 0 -10px;
}
.licenseFlowCol {
  padding: 0 10px;
}

/* アイコン */
.licenseFlowItemIcon {

}
.licenseFlowIcon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 85px;
  height: 85px;
  font-size: 46px;
  border-radius: 100%;
  background: #efede7;
}
/* 見出し */
.licenseFlowItemTitle {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.licenseFlowItemTitleHidePc {
  display: none;
}
.licenseFlowHeading {
  width: 7em;
  color: #c30101;
  font-size: 20px;
}
.licenseFlowCol .licenseFlowHeading {
  width: auto;
}
/* 詳細 */
.licenseFlowItemDetail {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  background: #fff;
}
.licenseFlowText {
  margin: 0 0 10px 0;
}
.licenseFlowLinkText {
  margin: 0 0 5px 0;
}
.licenseFlowLink {
  font-weight: bold;
  color: #333;
}
.licenseFlowLink:link,
.licenseFlowLink:hover,
.licenseFlowLink:active,
.licenseFlowLink:focus,
.licenseFlowLink:visited {
  color: #333;
}
.licenseFlowLinkSide {
  margin: 0 0 0 10px;
}
.licenseFlowLinkIcon {
  margin: 0 10px 0 0;
  color: #c30101;
}
@media screen and (max-width: 767px) {
  .licenseFlowListItem {
    margin: 0 0 30px 0;
  }

  .licenseFlowArrow:before {
    top: -21px;
    left: 50%;
    margin-left: -14px;
    border: 14px solid transparent;
    border-top: 14px solid #c30101;
  }

  .licenseFlowArrowHideMd:before {
    content: none;
  }

  .lisenseFlowHeader {
    flex-direction: column;
  }

  .licenseFlowItem {
    padding: 15px 10px;
  }

  .licenseFlowItemTitle {
    width: 100%;
    padding: 15px 10px 15px 0;
    font-size: 18px;
  }

  .licenseFlowItemTitleHidePc {
    display: block;
  }

  .licenseFlowItemTitleHideSp {
    display: none;
  }

  .licenseFlowItemTitle:before {
    top: -20px;
    left: calc(50% - 54px);
    border-width: 12px;
  }

  .licenseFlowHeading {
    width: auto;
  }

  .licenseFlowItemDetail {
    padding: 0 10px 15px 10px;
  }

  .licenseFlowIcon {
    width: 34px;
    height: 34px;
    font-size: 24px;
  }

  .licenseFlowText {
    font-size: 12px;
  }
}

/* ライセンス タブ */
.licenseTab {
  margin: 0 -3px;
}
.licenseTabList {
  display: flex;
  margin: 0;
  padding: 0;
}
.licenseTabListItem {
  position: relative;
  display: flex;
  justify-content: center;
  width: 25%;
  margin: 0 3px;
  font-size: 20px;
  font-weight: bold;
  border-radius: 6px 6px 0 0;
  line-height: 1.4;
  overflow: hidden;
  /*border-top: 8px solid #CCC;*/
}
.licenseTabListItem:before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  content: "";
  height: 8px;
  background: #ccc;
}
.licenseTabListItemLarge {
  width: 50%;
}
.licenseTabListItemSolo:before {
  background-color: #666;
}
.licenseTabListItemStartup:before {
  background-color: #1880d9;
}
.licenseTabListItemProfessional:before {
  background-color: #2c9893;
}
.licenseTabListItemStandard:before {
  background-color: #c72323;
}
.licenseTabListItemEnterprise:before {
  background-color: #693e9a;
}

.licenseTabInner {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 100%;
  height: 72px;
  padding: 10px 2px 2px 2px;
  background: #eee;
  line-height: 1.3;
}
.licenseTabInner:link,
.licenseTabInner:hover,
.licenseTabInner:visited,
.licenseTabInner:active,
.licenseTabInner:focus {
  color: #333;
}
.licenseTabInner:hover,
.licenseTabInner.is-active {
  text-decoration: none;
  background: #fff;
}
.licenseTabSmall {
  font-size: 14px;
}
.licenseDetail {
  width: 100vw;
  margin: 0 calc(-50vw + 50%);
  background: #fff;
}
.licenseDetail {
  display: none;
}
.licenseDetail.is-active {
  display: block;
}
.licenseDetailInner {
  padding: 40px 0;
}
.licenseDetailSpacer {
  padding: 0 10px;
}
.licenseDetailHeader {
  margin: 0 10px 40px 10px;
}
.licenseDetailHeaderLead,
.commonEntry .licenseDetailHeaderLead {
  margin-bottom: 10px;
  color: #888;
  font-size: 18px;
  line-height: 1.5;
}

.commonEntry .licenseDetailHeaderTitle,
.licenseDetailHeaderTitle {
  font-size: 40px;
  line-height: 1.3;
}

.licenseDetailsolo .licenseDetailHeaderTitle {
  color: #666;
}

.licenseDetailstartup .licenseDetailHeaderTitle {
  color: #1880d9;
}

.licenseDetailstandard .licenseDetailHeaderTitle {
  color: #c72323;
}
.licenseDetailprofessional .licenseDetailHeaderTitle {
  color: #2c9893;
}
.licenseDetailenterprise .licenseDetailHeaderTitle {
  color: #693e9a;
}

.licenseDetailFooter {
  width: 100vw;
  margin: 0 calc(-50vw + 50%) 40px;
  padding: 20px 10px;
  color: #fff;
  text-align: center;
  background: #333;
}

@media screen and (max-width: 1024px) {
  .licenseTabListItem {
    font-size: 16px;
  }
}

@media screen and (max-width: 767px) {
  .licenseDetailSpacer {
    padding: 0;
  }

  .licenseTabList {
    margin: 0 -7px 0 0;
    overflow-x: scroll;
  }

  .licenseTabListItem {
    flex: 1 1 auto;
    width: auto;
    min-width: 100px;
    margin: 0 2px;
    font-size: 10px;
    border-radius: 3px 3px 0 0;
  }

  .licenseTabListItem:before {
    height: 3px;
  }

  .licenseTabInner {
    height: 40px;
    padding: 6px 2px 2px 2px;
    line-height: 1.3;
  }

  .licenseDetailHeader {
    margin: 0 10px 15px 10px;
  }

  .licenseTabSmall {
    font-size: 10px;
  }

  .licenseDetailHeaderLead,
  .commonEntry .licenseDetailHeaderLead {
    font-size: 12px;
  }

  .commonEntry .licenseDetailHeaderTitle,
  .licenseDetailHeaderTitle {
    font-size: 20px;
  }

  .licenseDetailFooter {
    margin: 0 calc(-50vw + 50%) 20px;
  }
}

/* ライセンスエントリー */
.licenseEntryInfo {
  padding: 15px;
  color: #fff;
  background: #333;
  border-radius: 6px;
}
.licenseEntryInfoInner {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
}
.licenseEntryInfoList {
  padding: 0;
}
.licenseEntry {
  font-size: 16px;
}
.licenseEntry h3 {
  margin: 0 10px 15px;
  padding: 10px 15px;
  font-size: 20px;
  line-height: 1.3;
  border-radius: 6px;
  background: #ccc;
}
.licenseEntry h4 {
  position: relative;
  display: block;
  margin: 0 10px 15px;
  padding: 10px 10px 10px 40px;
  line-height: 1.4;
  background: #efefef;
}
.licenseEntry h4:before {
  content: "";
  position: absolute;
  left: 10px;
  top: 12px;
  display: inline-block;
  width: 22px;
  height: 22px;
  margin: 0 5px 0 0;
  border-radius: 100%;
  border: 6px solid #999;
  box-sizing: border-box;
}

.licenseEntry .c-text-supplement {
  font-size: 14px;
  color: #999;
}
.licenseEntry ul {
  padding: 0;
}
.licenseDetailstartup h3 {
  color: #1880d9;
  background: #deeeff;
}
.licenseDetailstandard h3 {
  color: #c72323;
  background: #fce2e2;
}
.licenseDetailprofessional h3 {
  color: #2c9893;
  background: #caf1ef;
}
.licenseDetailenterprise h3 {
  color: #693e9a;
  background: #cbc0d8;
}
.licenseDetailstartup h4:before {
  border-color: #deeeff;
}
.licenseDetailstandard h4:before {
  border-color: #efbcbc;
}
.licenseDetailprofessional h4:before {
  border-color: #afdad8;
}
.licenseDetailenterprise h4:before {
  border-color: #cbc0d8;
}


.licenseEntryInfo {
  margin: 0 10px 8px 10px;
}
.licenseEntry .licenseEntryInfoList {
  margin: 0;
  padding: 0;
}
.licenseEntry ul .licenseEntryInfoListItem {
  margin: 0;
  padding: 0;
  background: 0;
}
.licenseEntryInfoName {
  font-size: 12px;
}
.licenseEntryInfoItem {
  display: flex;
}
.licenseEntryInfoValue {
  font-size: 20px;
  font-weight: bold;
}
.licenseEntryInfoValueStrike {
  margin-right: 5px;
}
.licenseEntryInfoValueStrike .licenseEntryInfoValue {
  color: #c3c3c3;
  font-size: 16px;
}
.licenseEntryInfoValue small {
  font-size: 70%;
}
.licenseEntryInfoValueSide {
  color: #c3c3c3;
  font-size: 12px;
  font-weight: normal;
}

.tooltip {
  position: relative;
  margin: 0 0 0 5px;
  color: #fff;
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}
.tooltip:link,
.tooltip:hover,
.tooltip:visited,
.tooltip:active,
.tooltip:focus {
  color: #fff;
}

.tooltip:after {
  content: "";
  height: 0;
  position: absolute;
  width: 0;
  border: 6px solid transparent;
  border-top-color: #333;
  top: 0;
  left: 50%;
  margin-left: -6px;
}
.tooltipWhite:after {
  display: none;
  border-top-color: #eee;
}

.tooltipContent {
  position: absolute;
  bottom: 100%;
  left: 50%;
  display: none;
  width: 140px;
  max-width: 300px;
  padding: 6px 10px;
  background: #333;
  color: #fff;
  border-radius: 4px;
  opacity: .9;
  font-size: 11px;
  word-break: break-all;
  text-align: center;
  z-index: 3810;
  transform: translate(-50%);
}
.tooltipWhite .tooltipContent {
  color: #333;
  background: #eee;
}
.tooltip:active .tooltipContent,
.tooltip:focus .tooltipContent,
.tooltip:hover .tooltipContent {
  display: block;
}
.tooltip:active:after,
.tooltip:focus:after,
.tooltip:hover:after {
  display: block;
}

.licenseOptionInfo {
  margin: 0 10px 15px 10px;
}
.licenseEntry .licenseOptionInfoList {
  margin: 0;
  padding: 0;
}
.licenseEntry ul .licenseOptionInfoListItem {
  margin: 0 0 1px 0;
  padding: 20px 20px;
  background: #efefef;
}
.licenseOptionInfoHeader {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.licenseOptionInfoDetail {
  margin: 10px 0 0 0;
}
.licenseOptionInfoName {
  line-height: 1.3;
  font-size: 16px;
  font-weight: bold;
}
.licenseOptionInfoValue {
  line-height: 1.3;
  font-size: 18px;
  font-weight: bold;
  text-align: right;
}
.licenseOptionInfoValue small {
  display: block;
  font-weight: normal;
  font-size: 70%;
}

@media screen and (max-width: 767px) {
  .licenseEntry h3 {
    font-size: 16px;
  }

  .licenseEntry h4 {
    top: 7px;
  }

  .licenseEntryInfoItem {
    flex-direction: column;
    text-align: right;
  }

  .licenseOptionInfoHeader {
    display: block;
  }

  .licenseOptionInfoName {
    display: block;
    margin: 0 0 10px 0;
    font-size: 14px;
  }

  .licenseOptionInfoValue {
    display: block;
  }
}

/* FAQ */
.entryColumn > *:not([class*="column-"]):not([class*="acms-col"]):not(.column1):not(.column2):not(.column3):not(.column4):not(.column2_3).licenseFaq {
  margin: 0;
}
.licenseEntry .entryColumn > *:not([class*="column-"]):not([class*="acms-col"]):not(.column1):not(.column2):not(.column3):not(.column4):not(.column2_3).licenseFaq {
  margin: 0 -10px;
}
.commonEntry .licenseFaqList {
  margin: 0 10px;
  padding: 0;
}
.commonEntry ul .licenseFaqListItem {
  margin: 0 0 20px 0;
  padding: 0;
  min-height: 44px;
  background: #fff;
  border-radius: 6px;
  box-sizing: border-box;
}
.licenseFaqQuestion {
  border-radius: 6px;
  overflow: hidden;
}
.licenseFaqQuestionBtn {
  position: relative;
  display: block;
  padding: 20px 40px 20px 50px;
  font-size: 16px;
  background: #fff;
  transition: background .2s ease-out;
}
.licenseFaqQuestionBtn:link,
.licenseFaqQuestionBtn:hover,
.licenseFaqQuestionBtn:visited,
.licenseFaqQuestionBtn:active,
.licenseFaqQuestionBtn:focus {
  color: #333;
}
.licenseFaqQuestionBtn:hover {
  text-decoration: none;
}
.licenseFaqQuestionBtn:before {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  display: block;
  width: 24px;
  height: 2px;
  background: #e54c4c;
  transition: width .1s ease-in-out;
}
.licenseFaqQuestionBtn:after {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  display: block;
  width: 24px;
  height: 2px;
  background: #e54c4c;
  transform: rotate(-90deg);
  transition: width .1s ease-in-out, transform .2s ease-in;
}

.licenseFaqQuestionBtn:hover:before,
.licenseFaqQuestionBtn:hover:after {
  width: 28px;
}
.licenseFaqQuestionBtn.js-fader-active:after {
  transform: rotate(0deg);
}

.licenseFaqAnswer {
  margin: 0;
  padding: 0 10px 10px 10px;
}
.licenseFaqAnswer:target {
  display: block !important;
}

.licenseFaqInner {
  /*display: flex;*/
  position: relative;
  padding: 20px;
  background: #f4f4f4;
  border-radius: 6px;
}
.licenseFaqAnswer h4 {
  background: #fdfdfd;
}

.commonEntry:not(.licenseEntry) .licenseFaqAnswer h4 {
  padding: 10px;
}

.licenseFaqQuestionMark {
  position: absolute;
  top: 50%;
  left: 20px;
  color: #e54c4c;
  font-size: 24px;
  margin: -18px 25px 0 0;
}
.licenseFaqAnswerMark {
  position: absolute;
  left: 20px;
  display: inline-block;
  text-align: center;
  width: 48px;
  height: 44px;
  color: #fff;
  font-size: 24px;
  line-height: 44px;
  background: #e54c4c;
  border-radius: 6px;
}
.licenseFaqAnswerMark:before {
  content: "";
  position: absolute;
  bottom: -9px;
  left: 50%;
  border: 9px solid transparent;
  border-left: 9px solid #e54c4c;
  transform: rotate(-45deg);
}
.licenseFaqAnswerContent {
  padding: 0 0 0 54px;
}

@media screen and (max-width: 767px) {
  .commonEntry ul .licenseFaqListItem {
    /*padding: 10px 15px;*/
  }

  .licenseFaqQuestionBtn {
    font-size: 14px;
  }

  .licenseFaqQuestionBtn:before {
    width: 20px;
  }

  .licenseFaqQuestionBtn:after {
    width: 20px;
  }

  .licenseFaqQuestionBtn:hover:before,
  .licenseFaqQuestionBtn:hover:after {
    width: 25px;
  }
}

/* ---------------------
 サポート
----------------------- */
.supportBox {
  height: calc(100% - 30px);
  margin: 0 0 30px 0;
  border-radius: 6px 6px 0 0;
  background: #fff;
  overflow: hidden;
  border-bottom: 1px solid #e1dbc5;
}

.supportBoxTextInner {
  height: 100%;
  padding: 20px;
  border: 1px solid #e1dbc5;
}

.commonEntry .supportBoxHeading {
  margin: 0;
  padding: 15px 5px;
  color: #fff;
  font-size: 22px;
  line-height: 1.4;
  text-align: center;
  background: #222;
}

.commonEntry .supportBoxHalfHeading {
  margin: 0;
  padding: 8px 5px;
  color: #fff;
  font-size: 16px;
  line-height: 1.4;
  text-align: center;
  background: #222;
}

.supportBoxImg {
  margin: 0 0 20px 0;
}

.supportBoxLead {
  text-align: center;
}

.supportBoxPrice {
  font-size: 16px;
}

.supportBoxPrice strong {
  display: block;
  font-weight: bold;
}

/* ボタン */
.commonEntry p.supportBtnWrap {
  margin: 0;
  text-align: center;
}

.supportBtnWrap {
  text-align: center;
}

.supportBtn {
  display: inline-block;
  width: 240px;
  max-width: 100%;
  padding: 10px;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.8;
  border: 0;
  border-radius: 4px;
  background: #c40f32;
}

.supportBtn:link,
.supportBtn:hover,
.supportBtn:visited,
.supportBtn:active {
  color: #fff;
}

.supportBtn:hover {
  text-decoration: none;
  background: #a60d2a;
  transition: background-color .2s ease;
}

@media screen and (max-width: 767px) {
  .supportBox {
    height: 100%;
  }
}

.supportFormBox h3 {
  padding: 5px 20px 3px;
  background: #e1dbc6;
  font-size: 16px;
  font-weight: normal;
  border: none;
}

/* ---------------------
制作会社検索
----------------------- */
.productionMapContainer {
  background-color: #fff;
  padding: 10px;
  margin: 0 0 20px 0;
}

.productionMap {
  position: relative;
}

.productionMap a {
  display: block;
  transition: opacity .2s ease;
}

.productionMap a:hover {
  opacity: .7;
}

.productionMap li {
  display: block;
}

.productionMapHokkaido {
  position: absolute;
  right: 0;
  top: 0;
}

.productionMapTohoku {
  position: absolute;
  right: 0;
  top: 117px;
}

.productionMapKanto {
  position: absolute;
  right: 0;
  top: 219px;
}

.productionMapChubu {
  position: absolute;
  right: 82px;
  top: 219px;
}

.productionMapKinki {
  position: absolute;
  right: 164px;
  top: 240px;
}

.productionMapChugoku {
  position: absolute;
  right: 246px;
  top: 240px;
}

.productionMapShikoku {
  position: absolute;
  right: 246px;
  top: 316px;
}

.productionMapKyushu {
  position: absolute;
  right: 340px;
  top: 240px;
}

.productionMapOther {
  position: absolute;
  right: 340px;
  top: 137px;
}

.productionMapText {
  margin-bottom: 20px;
}

.productionMapList {
  margin: 0;
  padding: 0;
}

.productionMapList li {
  display: block;
  font-size: 16px;
  margin: 0 0 10px;
}

.productionMapList a:link,
.productionMapList a:visited,
.productionMapList a:active {
  color: #333;
}

.productionMapList [class*="acms-icon-"] {
  margin: 0 5px 0 0;
}

.productionPartnerBannerList {
  margin: 0;
  padding: 0;
}

.productionPartnerBannerList li {
  display: block;
  float: left;
  width: 20%;
  padding: 10px;
}

.productionCompanyListTable {
  font-size: 14px;
  margin-bottom: 10px;
}

.productionCompanyListTable th {
  background-color: #e1dbc6;
}

.productionCompanyListTable tr:nth-of-type(2n),
.productionCompanyListTable tr.even {
  background-color: #f7f4ea;
}

.productionBusinessPartnerText {
  margin-bottom: 20px;
}

@media screen and (min-width: 768px) {
  .productionMapContainer {
    min-height: 500px;
    padding: 50px;
    margin-bottom: 50px;
  }

  .productionMapContainerLeftBox {
    float: left;
    max-width: 420px;
  }
}

@media screen and (max-width: 767px) {
  .productionMap {
    width: 230px;
    height: 220px;
    margin: 0 auto;
  }

  .productionMapHokkaido {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
  }

  .productionMapHokkaido img {
    width: 61px;
    height: 50px;
  }

  .productionMapTohoku {
    position: absolute;
    top: 55px;
    right: 0;
    bottom: 0;
  }

  .productionMapTohoku img {
    width: 61px;
    height: 50px;
  }

  .productionMapKanto {
    position: absolute;
    top: 110px;
    right: 0;
    bottom: 0;
  }

  .productionMapKanto img {
    width: 40px;
    height: 83px;
  }

  .productionMapChubu {
    position: absolute;
    top: 110px;
    right: 45px;
    bottom: 0;
  }

  .productionMapChubu img {
    width: 40px;
    height: 72px;
  }

  .productionMapKinki {
    position: absolute;
    top: 120px;
    right: 90px;
    bottom: 0;
  }

  .productionMapKinki img {
    width: 40px;
    height: 72px;
  }

  .productionMapChugoku {
    position: absolute;
    top: 120px;
    right: 135px;
    bottom: 0;
  }

  .productionMapChugoku img {
    width: 40px;
    height: 32px;
  }

  .productionMapShikoku {
    position: absolute;
    top: 157px;
    right: 135px;
    bottom: 0;
  }

  .productionMapShikoku img {
    width: 40px;
    height: 35px;
  }

  .productionMapKyushu {
    position: absolute;
    top: 120px;
    right: 180px;
    bottom: 0;
  }

  .productionMapKyushu img {
    width: 40px;
    height: 72px;
  }

  .productionMapOther {
    position: absolute;
    top: 65px;
    right: 180px;
    bottom: 0;
  }

  .productionMapOther img {
    width: 40px;
    height: 40px;
  }

  .productionPartnerBannerList {
    margin-right: -10px;
    margin-left: -10px;
  }

  .productionPartnerBannerList li {
    float: left;
    width: 33.33333%;
    padding: 10px;
  }
}

.productionCompanySummary {
  border-bottom: 2px solid #e1dbc6;
  padding-bottom: 20px;
  margin-bottom: 20px;
}

.productionCompanyDetail {
  border-bottom: 2px solid #e1dbc6;
  margin-bottom: 40px;
  padding-bottom: 20px;
}

.productionCompanyDetailComment {
  margin-bottom: 10px;
}

.productionCompanyDetailAddress {
  margin: 0;
}

.productionCompanyDetailTel {
  margin: 0;
}

.productionCompanyDetailIcon {
  margin-right: 10px;
}

.productionHeadingMiddle {
  background-color: #5f666c;
  border-radius: 4px;
  padding: 5px 10px;
  margin-bottom: 20px;
  color: #fff;
  font-size: 16px;
}

.productionHeadingMiddleIcon {
  margin-right: 8px;
  vertical-align: baseline;
}

.productionEntry {
  margin-bottom: 20px;
}

.productionEntryHeader {
  background-color: #c40f32;
  border-bottom: 2px solid #e1dbc6;
}

.productionEntryHeaderCase {
  padding: 5px 7px;
  color: #fff;
  font-size: 12px;
}

.productionEntryHeaderCase .large,
.productionEntryHeaderAmount {
  line-height: 1;
  margin-left: 7px;
  font-size: 18px;
  font-weight: bold;
  font-face: "Verdana";
}

.productionEntryHeaderCompany {
  margin: 0;
  padding: 5px 7px;
  background-color: #fff;
  color: #333;
  font-size: 17px;
  font-weight: normal;
}

.productionEntryHeader a:hover {
  text-decoration: none;
}

.productionEntryHeaderArrow {
  float: right;
  margin-top: 5px;
  margin-right: 2px;
}

.productionEntrySummary {
  background-color: #fff;
  padding: 9px 10px 7px 10px;
}

.productionEntrySummaryLogo {
  float: right;
  margin-left: 4px;
  width: 200px;
  border: 1px solid #e1dbc6;
}

.productionEntrySummaryLogo img {
  vertical-align: top;
}

.productionCompanyDetailItem {
  font-weight: bold;
  font-size: 14px;
}

.productionCompanyDetailAbout {
  margin-bottom: 9px;
}

.productionCompanyDetailIcon {
  margin-right: 5px;
}

.productionCompanyListIcon {
  font-size: 20px;
  margin-left: 5px;
  color: #c40f32;
}

@media screen and (min-width: 769px) {
  /* 一覧ページ */
  .productionEntryHeader {
    display: table;
    width: 100%;
    font-size: 14px;
    background: #fff;
  }

  .productionEntryHeaderCase {
    display: table-cell;
    background: #c40f32;
    text-align: center;
    vertical-align: middle;
    width: 1%;
    white-space: nowrap;
  }

  .productionEntryHeaderCase .large {
    display: block;
    line-height: 1.4;
    font-size: 24px;
  }

  .productionEntryHeaderTitle {
    display: table-cell;
    padding: 10px 20px;
    vertical-align: middle;
  }

  /* 詳細ページ */
  .productionEntrySummary {
    padding: 20px;
  }

  .productionEntrySummaryLogo {
    margin-left: 20px;
  }

  .productionCompanyDetailComment {
    line-height: 1.9;
  }

  .partnerPhotoListBox {
    margin: 0 0 20px 0;
  }
}

@media screen and (max-width: 767px) {
  .productionCompanySummary {
    padding-bottom: 5px;
  }

  .productionCompanyList {
    padding-left: 0;
    border-bottom: 1px solid #aaa;
  }

  .productionCompanyList li {
    border-top: 1px solid #aaa;
    padding: 7px 10px;
  }

  .productionCompanyListName {
    margin-bottom: 4px;
  }

  .productionEntrySummaryLogo {
    width: 100px;
  }
}

.productionAreaList {
  list-style: none;
  margin: 0;
  padding: 0;
}

.productionAreaList ul {
  margin: 0;
  padding: 0;
}

.productionAreaList li {
  display: block;
  margin: 0 0 10px 0;
  zoom: 1;
  border-radius: 5px;
  font-size: 16px;
  font-weight: bold;
}

.productionAreaList a {
  display: block;
  color: #222;
  padding: 10px;
}

.productionAreaList a:link,
.productionAreaList a:visited,
.productionAreaList a:active {
  color: #222;
}

.productionAreaList a:hover {
  text-decoration: none;
}

.productionAreaListIcon {
  margin-right: 7px;
  display: inline-block;
  color: #fff;
  font-size: 20px;
}

.productionAreaListHokkaido {
  background-color: #d083d3;
}

.productionAreaListTouhoku {
  background-color: #9991ea;
}

.productionAreaListKanto {
  background-color: #7cb4f4;
}

.productionAreaListChubu {
  background-color: #50c2c6;
}

.productionAreaListKinki {
  background-color: #a1d134;
}

.productionAreaListChugoku {
  background-color: #f1b52d;
}

.productionAreaListShikoku {
  background-color: #fea452;
}

.productionAreaListKyushu {
  background-color: #ff9897;
}

.productionAreaListOther {
  background-color: #5f666c;
}

.productionAreaListOther a,
.productionAreaListOther a:link,
.productionAreaListOther a:visited {
  color: #fff;
}

.productionAreaSubListproductionMapList {
  padding: 0;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
}

.productionAreaSubList li {
  border-radius: 0;

  /*border-top:1px solid #FFFFFF;*/
  margin-bottom: 0;
}

/*地方のサブリストカラー*/
.productionAreaListTouhoku .productionAreaSubList {
  background-color: #c1bcf2;
}

.productionAreaListKanto .productionAreaSubList {
  background-color: #b0d2f8;
}

.productionAreaListChubu .productionAreaSubList {
  background-color: #96dadd;
}

.productionAreaListKinki .productionAreaSubList {
  background-color: #c3e27f;
}

.productionAreaListShikoku .productionAreaSubList {
  background-color: #fec48e;
}

.productionAreaListChugoku .productionAreaSubList {
  background-color: #f7d381;
}

.productionAreaListKyushu .productionAreaSubList {
  background-color: #ffc1c1;
}

.productionAreaSubList a {
  padding-left: 20px;
  transition: background-color .2s ease;
}

.productionAreaList a:hover {
  background: rgba(255, 255, 255, 0.2);
}

.productionCompanySpComment {
  margin-bottom: 19px;
}

.productionCompanySpCommentBox {
  padding-bottom: 8px;
}

.partnerPhotoListItem {
  margin-bottom: 20px;
}

.partnerPhotoListItem a {
  display: block;
  transition: opacity .2s ease;
}

.partnerPhotoListItem a:hover {
  opacity: .7;
}

.partnerPhotoListItem img {
  border: 1px solid #ccc;
}

.productionCaseSubTitle {
  margin: 10px 6px;
}

.productionCaseAmount {
  font-size: 18px;
  color: #d22b45;
  margin-left: 10px;
}

.productionSmoothScroll {
  display: none;
  text-align: right;
  margin-bottom: 16px;
  font-size: 15px;
}

.productionSmoothScrollIcon {
  font-size: 18px;
  margin-top: -4px;
}

.productionSmoothScroll a {
  color: #c51436;
}

.productionSmoothScroll a:hover {
  text-decoration: none;
}

@media screen and (max-width: 767px) {
  .productionSmoothScroll {
    display: block;
  }
}

/* --------------------
スケジュール
---------------------- */
.scheduleNav {
  position: relative;
  margin-top: 30px;
  margin-bottom: 20px;
}

.scheduleNavList {
  margin: 0 -10px;
  padding: 0;
}

.scheduleNavListItem {
  display: block;
  float: left;
  width: 50%;
  padding: 0 10px;
  box-sizing: border-box;
}

.schedulePrevMonth,
.scheduleNextMonth {
  display: inline-block;
  padding: 5px 10px;
  border: 1px solid #c7c1a9;
  background-color: #e1dbc6;
  background-image: none;
  box-shadow: 1px 1px 0 #f2efe6 inset, 0 1px 1px #dedbd2;
  text-shadow: 1px 1px 0 #fff;
  border-radius: 6px;
  color: #222;
  font-size: 16px;
  line-height: 1;
}

.schedulePrevMonth:link,
.schedulePrevMonth:visited,
.scheduleNextMonth:link,
.scheduleNextMonth:visited {
  border: 1px solid #c7c1a9;
  color: #222;
}

.schedulePrevMonth:hover,
.scheduleNextMonth:hover {
  background-color: #d1c9ac;
  box-shadow: none;
  text-decoration: none;
}

.schedulePrevMonth {
  float: left;
}

.scheduleNextMonth {
  float: right;
  text-align: right;
}

.scheduleNavDate {
  margin: 0;
  color: #333;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  z-index: -1;
}

@media screen and (min-width: 768px) {
  .scheduleNavDate {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
  }
}

.schedulePrevMonthIcon {
  margin-right: 5px;
}

.scheduleNextMonthIcon {
  margin-left: 5px;
}

/* イベントスケジュール */
.scheduleTable {
  border-collapse: collapse;
  border-bottom: solid 1px #e1dbc6;
  margin-bottom: 30px;
  width: 100%;
}

.scheduleTable tr {
  border-top: solid 1px #e1dbc6;
}

.scheduleTableItem {
  margin: 0 0 5px 0;
}

.weekForeSpacer,
.weekRearSpacer {
  opacity: 0.7;
}

.scheduleTableDay {
  /* width: 100px; */
  text-align: right;
  font-size: 30px;
  font-weight: normal;
}

.scheduleTablePlan {
  padding: 5px 0 5px 20px;
  font-size: 15px;
}

.scheduleTableWeek {
  display: inline-block;
  width: 30px;
  height: 30px;
  margin: 0 0 0 5px;
  padding: 0;
  background-color: #222;
  border-radius: 50%;
  color: #fff;
  font-size: 16px;
  text-align: center;
  font-weight: bold;
  line-height: 2.0;
  vertical-align: 0.2em;
}

.w0 .scheduleTableWeek {
  background-color: #ff9897;
}

.w6 .scheduleTableWeek {
  background-color: #7cb4f4;
}

.scheduleTableLabel {
  display: inline-block;
  width: 160px;
  margin: 0 5px 0 0;
  color: #fff;
  text-align: center;
  font-weight: bold;
}

/* 旧イベ���トスケジュール */
.scheduleTableLabel.onlineSeminar {
  /*赤紫*/
  background-color: #d083d3;
}

.scheduleTableLabel.uStream {
  /*青紫*/
  background-color: #9991ea;
}

.scheduleTableLabel.sponsorEvent {
  /*青色*/
  background-color: #7cb4f4;
}

.scheduleTableLabel.appearEvent {
  /*青緑*/
  background-color: #50c2c6;
}

.scheduleTableLabel.hostSeminar {
  /*黄緑*/
  background-color: #a1d134;
}

.scheduleTableLabel.generalSeminar {
  /*黄色*/
  background-color: #f1b42d;
}

.scheduleTableLabel.userSeminar {
  /*橙色*/
  background-color: #fea452;
}

.scheduleTableLabel.color_8 {
  /*桃色*/
  background-color: #ff9897;
}

/* 新イベントスケジュール 2016 */
.scheduleLabel {
  display: inline-block;
  width: 120px;
  margin: 0 5px 0 0;
  color: #fff;
  text-align: center;
  font-weight: bold;
}

.scheduleLabel.host {
  /*赤*/
  background-color: #c40f32;
}

.scheduleLabel.online {
  /*赤紫*/
  background-color: #d083d3;
}

.scheduleLabel.exhibit {
  /*青紫*/
  background-color: #9991ea;
}

.scheduleLabel.sponsor {
  /*青色*/
  background-color: #7cb4f4;
}

.scheduleLabel.appear {
  /*青緑*/
  background-color: #50c2c6;
}

.scheduleLabel.general {
  /*黄色*/
  background-color: #f1b42d;
}

.scheduleLabel.user {
  /*橙色*/
  background-color: #fea452;
}

/* イベント名 */
.scheduleTableName {
  display: inline-block;
}
/* 時間 */
.scheduleTableTime {
  margin: 0 5px 0 10px;
}
/* アイコン */
.scheduleTableIcon {
  margin: 0 5px;
}

@media screen and (max-width: 767px) {
  .scheduleTableDay {
    width: 60px;
    font-size: 15px;
    padding-top: 5px;
    padding-bottom: 5px;
  }

  .scheduleTableWeek {
    width: 25px;
    height: 25px;
    font-size: 14px;
    vertical-align: middle;
  }

  .schedulePrevMonth {
    margin-bottom: 10px;
  }

  .scheduleTableName {
    display: block;
  }
}

@media screen and (max-width: 479px) {
  .scheduleNavListItem {
    width: 100%;
  }

  .schedulePrevMonth,
  .scheduleNextMonth {
    display: block;
    float: none;
  }
}

/*サポート���ーブル*/
.supportTableContainer {
  width: 100%;
  overflow-y: hidden;
  -ms-overflow-style: -ms-autohiding-scrollbar;
}

.commonEntry .supportTable {
  display: table;
  margin-left: 0px !important; /*エントリーのユニットに直接スタイルがふられているため*/
}

.supportTable tbody {
  display: table-row-group;
}

.supportTable tr {
  display: table-row;
}

.supportTable th,
.supportTable td {
  display: table-cell;
  white-space: nowrap;
}

.supportTable td {
  border-right: 1px solid #e1dbc6;
}

/*v2.1.0リリースページ*/

/* 背景画像 */
.releaseSiteEntry .releaseSiteIconList {
  text-align: center;
  margin-bottom: 10px;
}

.commonEntry .releaseSiteIconList li {
  display: inline-block;
  background: none;
}

.releaseSiteEntry {
  margin-bottom: 40px;
}

.releaseSiteIcon {
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background-color: #fff;
  margin: 0 auto;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 55px 55px;
}

.releaseSiteIconListLong {
  text-align: center;
}

.releaseSiteIconText {
  margin-bottom: 5px;
}

.releaseSiteIconSns {
  background-image: url(../../news@www@acms/images/v210/iconSns.png);
  background-position-y: 10px;
}

.releaseSiteIconCart {
  background-image: url(../../news@www@acms/images/v210/iconCart.png);
  background-position-y: 10px;
}

.releaseSiteIconApproval {
  background-image: url(../../news@www@acms/images/v210/iconApproval.png);
}

.releaseSiteIconCustom {
  background-image: url(../../news@www@acms/images/v210/iconCustom.png);
}

.releaseSiteIconCustomSmall {
  background-image: url(../../news@www@acms/images/v210/iconCustom90.png);
  background-position: 10px 10px;
}

.releaseSiteIconMedia {
  background-image: url(../../news@www@acms/images/v210/iconMedia.png);
}

.releaseSiteIconMediaSmall {
  background-image: url(../../news@www@acms/images/v210/iconMedia90.png);
}

.releaseSiteIconMediaUnit {
  background-image: url(../../news@www@acms/images/v210/iconMediaUnit.png);
}

.releaseSiteIconMediaUnitSmall {
  background-image: url(../../news@www@acms/images/v210/iconMediaUnit90.png);
}

.releaseSiteIconVideo {
  background-image: url(../../news@www@acms/images/v210/iconVideo.png);
}

.releaseSiteIconVideoSmall {
  background-image: url(../../news@www@acms/images/v210/iconVideo90.png);
  background-position-y: 10px;
}

.releaseSiteIconRule {
  background-image: url(../../news@www@acms/images/v210/iconRule.png);
}

.releaseSiteIconRuleSmall {
  background-image: url(../../news@www@acms/images/v210/iconRule90.png);
}

.releaseSiteEntry .releaseSiteSummary {
  text-align: center;
  margin-bottom: 10px;
}

.releaseSiteEntry .releaseSiteHeading {
  text-align: center;
  margin-top: 0;
  margin-bottom: 5px;
}

.releaseSiteEntry .releaseSiteDetail {
  margin-bottom: 10px;
}

.releaseSiteDownloadBox {
  margin-bottom: 30px;
}

.releaseSiteEntry .bx-wrapper .bx-viewport {
  left: 0;
}

.socialBtnBox iframe {
  max-width: none;
}

/* 追記 */
iframe {
  max-width: 100%;
}

/* ------------------------
  エバンジェリスト
   ------------------------- */
.evangelistEntryHeaderIcon {
  white-space: nowrap;
  font-size: 18px;
  height: 80px;
  padding-left: 20px;
  padding-right: 20px;
}

.evangelistSummary {
  margin-bottom: 50px;
  line-height: 1.9;
}

.evangelistEntryTitle {
  vertical-align: middle;
}

.evangelistCompanyName {
  font-size: 14px;
  line-height: 1.9;
  padding: 0 5px 0 0;
  font-weight: normal;
}

.evaList {
  margin: 0 -10px 30px -10px;
}

.evaItem {
  float: left;
  width: 33.333333%;
  padding: 0 10px;
  box-sizing: border-box;
}

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

.acms-label-gender-male {
  background-color: #7096cd;
}

.acms-label-gender-female {
  background-color: #cd7086;
}

@media screen and (max-width: 767px) {
  .evaItem {
    width: 50%;
  }

  .evaPhoto img {
    float: left;
    width: 100px;
    height: auto;
    margin-right: 10px;
  }
}

@media screen and (max-width: 479px) {
  .evaItem {
    width: 100%;
  }
}

p.evaText {
  margin-bottom: 20px;
}

.evaPhoto {
  margin: 0 0 20px 0;
  overflow: hidden;
}

.evaCompany,
.evaName {
  display: block;
}

/* ------------------------
   コンテンツ東京
   ----------------------- */
.exibitionAboutTable {
  font-size: 14px;
  width: 100%;
}

.exibitionAboutTable th {
  padding: 5px 20px 5px 5px;
  text-align: right;
}

.exibitionAboutTable td {
  padding: 5px;
}

@media screen and (max-width: 767px) {
  .exibitionAboutTable,
  .exibitionAboutTable tbody,
  .exibitionAboutTable tr,
  .exibitionAboutTable th,
  .exibitionAboutTable td {
    display: block;
    text-align: left;
  }
}


/*
	ユニットグループ
*/
.display_none {
  display: none;
}


/* ------------------------
   無料オンライン相談
----------------------- */
.onlineSection {
  padding: 50px 15px;
  background: #fff;
  margin: 10px 0 40px;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
}
.onlineHeading {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  margin: 0 0 35px 0;
  font-weight: normal;
  font-size: 40px;
  color: #333;
}
.onlineHeadingComment {
  position: relative;
  display: inline-block;
  margin: 0 0 15px 0;
  padding: 10px 60px;
  color: #fff;
  font-size: 16px;
  line-height: 1;
  border-radius: 10em;
  background: #e66969;
}
.onlineHeadingComment:before {
  content: "";
  position: absolute;
  bottom: -20px;
  left: 50%;
  margin-left: -10px;
  display: inline-block;
  border: 10px solid transparent;
  border-top: 10px solid #e66969;
}
.onlineHeadingCommentStrong {
  font-size: 20px;
  font-weight: normal;
}
.onlineHeadingIcon {
  display: inline-block;
}
.onlineHeadingIcon:before {
  content: "";
  display: inline-block;
  width: 50px;
  height: 56px;
  margin: 0 20px 0 0;
  vertical-align: middle;
  background: url('/themes/www@acms/images/ico_online.svg') no-repeat;
}

.onlineSectionInner {
  max-width: 834px;
  margin: 0 auto;
}
.onlineImageCol {
  text-align: right;
}

.onlineImageWrap {
  display: inline-block;
}

.onlineImage {
  display: block;
  max-width: 100%;
  height: auto;
}

.onlineImageCaption {
  margin: 0 0 15px 0;
  color: #707070;
  text-align: center;
}

.onlineContent p {
  margin: 0 0 10px 0;
  font-size: 16px;
}

.onlineConversion {
  margin: 40px 0 0 0;
  text-align: center;
}

.onlineBtnCopy {
  margin: 0 0 15px 0;
  color: #666;
  font-size: 13px;
  font-weight: bold;
}

.onlineBtnCopy:before {
  content: "";
  display: inline-block;
  width: 1px;
  height: 20px;
  margin: 0 20px 0 0;
  transform: rotate(330deg);
  background: #707070;
  vertical-align: middle;

}
.onlineBtnCopy:after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 20px;
  margin: 0 0 0 20px;
  transform: rotate(30deg);
  background: #707070;
  vertical-align: middle;
}

.onlineBtn {
  width: 100%;
  max-width: 340px;
  padding: 20px 20px;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  background: #c41032;
  border-radius: 6px;
  border: 0;
  transition: background-color .2s ease-out;
  box-shadow: 0 2px 2px rgba(0,0,0,0.2);
}

.onlineBtn:hover {
  background-color: #A70F2D;
}

@media screen and (max-width: 767px) {
  .onlineImageCol {
    text-align: center;
  }

  .onlineHeading {
    margin: 0 0 15px 0;
    font-size: 24px;
  }

  .onlineHeadingIcon:before {
    width: 40px;
    height: 45px;
    margin: 0 10px 0 0;
  }

  .onlineHeadingComment {
    margin: 0 0 10px 0;
    padding: 15px 40px;
    font-size: 16px;
  }

  .onlineHeadingComment:before {
    bottom: -16px;
    margin-left: -8px;
    display: inline-block;
    border-width: 8px;
  }

  .onlineHeadingCommentStrong {
    font-size: 20px;
  }

  .onlineBtn {
  font-size: 15px;
}
}

/* Video responsive styles for top-main-visual-v32 */
.p-top-hero-v32__video {
  width: 100%;
  height: auto;
}

/* Show smartphone video by default (672px未満) */
.p-top-hero-v32__video--sp {
  display: block;
}

.p-top-hero-v32__video--pc {
  display: none;
}

/* Show PC video for 672px and above */
@media screen and (min-width: 672px) {
  .p-top-hero-v32__video--sp {
    display: none;
  }
  
  .p-top-hero-v32__video--pc {
    display: block;
  }
}

