@charset "utf-8";
/**************
pc設定
***************/

/* PC共通設定 */
html {
  width: 100%;
  height: 100%;
  font-size: 62.5%;
}
body {
  width: 100%;
  height: auto;
  margin: auto 0 0 0;
  line-height: 1.7;
  overflow-y: scroll;
  /***フッター最下部へ***/
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}
header, footer {
  width: 100%;
  height: 100%;
}
header > img, footer > img {
  width: 100%;
  height: 16px;
  object-fit: cover;
}
header {
  position: fixed;
  width: 100%;
  height: auto;
  padding: 0;
  margin: 0;
  background: #fff;
  line-height: 0;
  z-index:99;
}
footer {
  position: initial;
  bottom: 0;
  width: 100%;
  height: auto;
  background: #fff;
  /***フッター最下部へ***/
  margin-top: auto;
}
.footer-footer {
  display: block;
  margin: 20px auto 0 auto;
  justify-content: center;
  background: #fff;
}
.footer-box {
  display: flex;
  margin: 10px 0 0 0;
  justify-content: space-around;
}
.footer-box ul {
  padding: 0 0 0 6em;
}
.footer-box ul li {
  display: list-item;
  list-style: inherit;
}
.footer-inner {
  justify-content: center;
}
.footer-li {
  display: block;
  width: 100%;
  font-size: 1.5em;
  font-weight: bold;
  text-align: left;
}
.footer-li > a:hover {
  text-decoration: underline;
}
.footer-p-txt-link > a {
  display: block;
  width: 80%;
  margin: 0 0 0 32px;
  font-size: 2em;
  text-align: center;
  border: double 3px #963;
  border-radius: 6px;
}
.footer-logo {
  display: block;
  margin: 10px auto 0 auto;
}
.copyright {
  font-size: 1.2em;
  font-weight: bold;
  text-align: center;
}
/**見出し・テキスト**/
.h1-ttl-pc {
  width: 100%;
  height: auto;
  margin: 14px auto;
  text-align: center;
}
.h1-ttl-pc > img {
  width: 100%;
  height: auto;
  margin: 0 auto;
}
.h1-ttl-footer a > img {
  display: block;
  width: 10%;
  height: auto;
  margin: 0 auto;
}
.h1-ttl-sp {
  display: none;
}
.h2-top, .h2 {
  width: 80%;
  height: 100%;
  font-family: 'DotGothic16', sans-serif;
  text-align: center;
  padding: 0 0 8px 1em;
  margin: 16px auto 0 auto;
  border: double 6px #963;
  border-radius: 10px;
  background: #fff;
  text-decoration: underline 2px #963;
  text-underline-position: under;
  letter-spacing: 1em;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.h2-top > img, .h2 > img {
  display: block;
  width: 192px;
  height: 64px;
  margin: 0 auto;
}
.h2-ttl {
  font-size: 4em;
}
.h2-p {
  font-size: 3.2em;
  font-weight: bold;
}
.h2-p-span {
  display: inline-block;
  text-align: left;
  font-size: 0.8em;
  font-weight: normal;
  padding: 0 2em;
  margin: 0 auto;
  line-height: 2em;
  text-decoration: underline 2px #963;
}
.h2-img {
  width: 192px;
  height: auto;
}
.h3 {
  display: block;
  width: 100%;
  text-align: center;
  padding: 0 1em;
  margin: 0 auto 16px auto;
}
.h3 > img {
  display: block;
  margin: 0 auto;
  width: 128px;
  height: auto;
}
.h3-ttl-top, .h3-ttl {
  display: inline-block;
  text-align: left;
  font-size: 3em;
  letter-spacing: 0.6em;
  text-decoration: underline solid 2px #963;
}
.h3-ttl-top > a, .h3-ttl > a {
  font-size: 1em;
}
.h3-p {
  display: inline-block;
  width: 100%;
  text-align: center;
  font-size: 2.5em;
  text-decoration: underline solid 2px #963;
  padding: 0 1em;
  letter-spacing: 0.2em;
}
.h3-span {
  display: inline-block;
  text-align: left;
  padding: 0 1em;
  font-size: 2em;
  line-height: 1.5;
  letter-spacing: 0.2em;
  text-decoration: underline 2px #963;
}
.h4-ttl {
  font-size: 2.5em;
  font-weight: bold;
  text-align: center;
  text-decoration: underline solid 2px #963;
}
/***外部へのリンク枠***/
.h3-span-link {
  display: block;
  width: 100%;
  height: auto;
  text-align: center;
  border: double 6px #c33;
  border-radius: 6px;
  padding: 8px 0;
  margin: 16px auto;
}
.h3-span-link > a {
  display: block;
  width: 100%;
  height: auto;
}
/***ページ内のリンク枠***/
.h3-span-request {
  display: block;
  width: 100%;
  text-align: left;
  padding: 0 1em;
  font-size: 2em;
  line-height: 1.5;
  letter-spacing: 0.2em;
  text-decoration: underline 2px #963;
}
.h3-span-link-request {
  display: block;
  width: 100%;
  height: auto;
  text-align: center;
  border: double 6px #963;
  border-radius: 6px;
  padding: 8px 0;
  margin: 16px auto;
  background: #e9f5ff;
}
.h3-span-link-request > a {
  display:block;
  width: 100%;
  height: auto;
}
/**リンク位置**/
.contents {
  display: block;
  width: 100%;
  height: 100%;
  background: url("../images/toumoto-haikei.png") top left repeat;
  margin: 206px 0 0 0;
  z-index: 9;
  /***子要素inline-blockの左右中央寄せ***/
  text-align: center;
}
.h3-ttl-top, .h3-ttl {
  padding: 234px 0 0 0;
  margin: -234px 0 0 0;
}
/**タブレット・スマホの改行**/
.sp {
  display: none;
}
/**花のアイコン**/
.icon-lacehana {
  text-align: left;
  padding: 5px 35px;
  font-size: 2em;
  font-weight: bold;
  text-decoration: underline double 2px #963;
  background-image: url('../images/hana-icon.png');
  background-repeat: no-repeat;
}
/**状態（リンク、ホバー、その他）**/
a:link {
  color: #000;
  text-decoration: underline 2px #69c;
}
a:visited {
  color: #630;
  text-decoration: underline 2px #630;
}
a:hover {
  color: #9cf;
  text-decoration: underline 2px #9cf;
}
.h1-ttl-pc > a:hover {
  color: #630;
  text-decoration: none;
}
/**トップへ戻るボタン**/
#page-top {
  position: fixed;
  right: 16px;
  bottom: 16px;
  display: block;
  width: 64px;
  height: 64px;
  padding: 0;
  margin: auto;
  z-index: 9999;
}
#page-top > a {
  text-decoration: none;
}
#page-top > a > img {
  width: 64px;
  height: 64px;
}
#page-top:hover {
  color: #000;
}
#top-h2-page-top, #h2-page-top {
  padding: 230px 0 0 0;
  margin: -230px 0 0 0;
}
/**ハンバーガーメニュー**/
#gnav-input, .humb-menu > label {
  display: none;
}
/**メニューナビゲーション**/
.pc-nav ul {
  display: flex;
  width: 100%;
  height: auto;
  margin: auto 0;
  align-items: center;
  list-style: none;
  justify-content: space-around;
  font-family: 'DotGothic16', sans-serif;
  font-feature-settings: "palt";
  letter-spacing: 0.5em;
  font-size: 2vw;
  font-weight: bold;
}
.pc-nav ul li {
  width: 100%;
  height: auto;
  padding: 0;
  margin: 4px auto 12px auto;
}
.pc-nav ul li > a {
  text-decoration: none;
  display: flex;
  width: 100%;
  height: auto;

  justify-content: center;
  align-items: center;
}
.pc-nav ul li > a:hover {
  color: #9cf;
}
.pc-nav ul li a > img {
  margin: 0 16px 0 0;
}
/**パンくずリスト**/
.breadcrumbs  {
  position: fixed;
  display: flex;
  flex-direction: column;
  width: 8%;
  height: auto;
  padding: 0;
  margin: 16px 0 0 14px;
  list-style: none;
  font-size: 1.5em;
  border: double 3px #963;
  border-radius: 6px;
  text-align: center;
  background: #fff;
}
.breadcrumbs li {
  background: #fff;
  padding: 0 5px 0 0;
  margin: 0 auto;
}
.breadcrumbs li a {
  padding: 5px;
  color: #999;
  text-decoration: none;
}
.breadcrumbs li a:hover {
  color: #9cf;
  text-decoration: underline;
}
.breadcrumbs li:after {
  display: block;
  padding: 0 ;
  content: '>';
  margin: 0 auto;
  text-align: center;
}
.breadcrumbs li:last-child:after {
  content: '';
}
/**2カラム**/
#wrap {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  height: auto;
}
.column  {
  display: block;
  right: 10%;
  width: 60%;
  margin: 16px 10% 0 auto;
}
.aside  {
  display: block;
  position: sticky;
  width: 19%;
  height: 100%;
  text-align: center;
  list-style: none;
  margin: 12px auto 0 auto;
  top: 216px;
  left: 10%;
  /***スクロールバー***/
  overflow-y: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.aside::-webkit-scrollbar {
  display: none;
}
.aside-top {
  display:block;
  position: sticky;
  width: 19%;
  height: 100%;
  text-align: center;
  list-style: none;
  margin: 12px auto 0 auto;
  top: 220px;
  left: 10%;
  /***スクロールバー***/
  overflow-y: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.aside-top::-webkit-scrollbar {
  display: none;
}
.aside-top ul, .aside ul{
  display: block;
  width: 100%;
  height: auto;
  margin: 5px auto;
  text-align: center;
}
.aside-li {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 0 0.4em 0 0.8em;
  margin: 0 auto 16px auto;
  font-weight: bold;
  border: double 6px #963;
  border-radius: 10px;
  background-color: #fbfaf5;
  list-style: none;
  font-size: 2em;
  font-weight: bold;
  line-height: 2.6em;
}
.aside-li > a {
  display: inline-block;
  text-align: left;
  width: 100%;
  padding: 0;
  margin: 0 auto;
  z-index: 999;
  top: 0;
}
.aside-top ul li a > img, .aside ul li a > img {
  vertical-align: middle;
}
/**プライバシーポリシー**/
.privacy-txt {
  width: 80%;
  padding: 3%;
  margin: 3% auto;
  background-color: #fff;
  border: double 6px #963;
  border-radius: 10px;
  box-sizing: border-box;
  line-height: 2.6em;
}
.privacy-txt-koumoku {
  font-size: 2em;
  font-weight: bold;
}
.privacy-txt-koumoku-txt {
  font-size: 1.5em;
  padding: 0 0 8px 0;
}
/*HOME・WORK・BLOG・Q&A*/
.box {
  display: block;
  width: 100%;
  height: auto;
  padding: 8px 0 8px 2em;
  margin: 0 auto 32px auto;
  border: double 6px #963;
  border-radius: 10px;
  background: #fff;
}
.box-top {
  display: block;
  width: 100%;
  height: auto;
}
.box-top-list {
  width: 100%;
}
.box-top-txt {
  width: 100%;
}
.box-top-list-inner {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  height: auto;
  justify-content: center;
}
.box-top-ol {
  list-style-position: inside;
}
.box-top-ol > li {
  display: list-item;
  word-wrap: break-word;
  letter-spacing: 0.2em;
}
.box-top-ol-li {
  display: block;
  width: 96%;
  text-align: center;
  font-size: 2em;
  font-weight: bold;
  text-decoration: underline solid 2px #006;
  letter-spacing: 0.4em;
  border-top: double 3px #963;
  padding: 16px 0 0 0;
  margin: 16px auto 16px auto;
}
.box-top-ol-li:last-child {
  border-bottom: double 3px #963;
}
.box-top-ol-li-p {
  padding: 0 1em;
  margin: 0 auto;
  text-decoration: underline solid 2px #006;
}
.box-top-ol-li > ul {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  height: auto;
  list-style: none;
  justify-content: center;
  padding: 0;
}
.box-top-ol-li > ol {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  height: auto;
  justify-content: center;
  padding: 0;
}
.box-top-dote-sample > li {
  display: list-item;
}
.box-top-dote-img > img {
  display: block;
}
.sample-gensundai > img, .sample-setto > img, .sample-hanagara > img {
  display: block;
  /***PC右クリック・ドラッグ禁止***/
  pointer-events: none;
  /***スマホ長押し禁止***/
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-touch-callout: none;
  -moz-user-select: none;
  user-select: none;
}
.sample-gensundai, .sample-setto {
  display: block;
  margin: 16px auto;
  font-size: 0.8em;
  font-weight: normal;
  border: 2px solid;
  border-radius: 4px;
}
.sample-hanagara {
  display: block;
  width: 100%;
  height: auto;
  margin: 16px auto;
  font-size: 0.8em;
  font-weight: normal;
  border: 2px solid;
  border-radius: 4px;
}
.img-sample-setto {
  display: block;
  margin: 8px auto;
}
.img-sample-hanagara {
  display: block;
  width: 90%;
  height: auto;
  margin: 8px auto;
  border: 1px solid;
}

.img-sample-gensundai {
  display: block;
  width: 32px;
  height: 32px;
  margin: 8px auto;
}
.img-sample-gensundai {
  display: block;
  width: 32px;
  height: 32px;
  margin: 8px auto;
}
.box-top-dote-img-kingaku {
  width: 90%;
  margin: 0 auto 8px auto;
  font-size: 1em;
  font-weight: normal;
  border: 1px solid;
  border-radius: 4px;
  text-decoration: underline solid 2px #963;
  text-decoration-skip-ink: none;
}
.box-inner > ul {
  padding: 0 32px;
  font-size: 2em;
  text-align: left;
}
.box-inner ul > li {
  font-weight: bold;
  margin: 0 1em;
}
.box-inner ul li > ul {
  padding: 0 0 0 16px;
}
.box-inner ul li ul > li {
  font-weight: normal;
}
.box-top-dote-img {
  margin: 16px;
}
.box-inner {
  display: block;
  width: 100%;
  height: auto;
}
.box-inner > ol  {
  padding: 0 0 0 32px;
}
.box-inner ol > li {
  text-align: left;
  font-size: 2em;
  font-weight: normal;
  padding: 0 0 32px 0;
  margin: 0 1em 0 0;
}
.box-inner ol li > img {
  display: block;
  width: 128px;
  height: auto;
  padding: 0;
  margin: 0 auto;
}
.box-top-dote-sp > img {
  display:none;
}
.box-top-ol-li-p {
  font-size: 0.8em;
  font-weight: normal;
}
.box-top-ol-li-p > img {
  display: block;
  width: 90%;
  height: auto;
  margin: 0 auto;
}

.img-new {
  vertical-align: top;
}

.freesozai {
  display: block;
  width: 75%;
  height: auto;
  padding: 8px 0;
  margin: 16px auto;
  border: double 6px #006;
  border-radius: 6px;

}
.freesozai-li {
  font-size: 2em;
  font-weight: bold;
  list-style: none;
  text-decoration: underline #006;
}
.freesozai-li-inner {
  font-weight: normal;
  list-style: none;
  text-decoration: none;
}
/*REQUEST*/
.request {
  font-size: 2em;
  text-align: left;
  padding: 0 0 0 1em;
}
.request-kanseihin {
  display: block;
  width: 100%;
  font-size: 2em;
  text-align: center;
  font-weight: bold;
  padding: 1em 1em 0 1em;
  list-style-position: inside;
}
.request-kanseihin > li {
  border-top: double 3px #963;
  padding: 16px 0 0 0;
}
.request-kanseihin > li:last-child {
  border-bottom: double 3px #963;

}
.request-p {
  font-weight: normal;
}
.request-kanseihin-inner {
  display: flex;
  width: 100%;
  justify-content: space-around;
}
.request-kanseihin-inner:first-child {
  border-left: none;
}
.request-kanseihin-inner-li > img {
  padding: 16px 32px;
}

.request-kanseihin ul > li {

  list-style: none;
}
.request-qa-dl {
  font-size: 2em;
  text-align: left;
}
.request-qa-dl > dt {
  font-weight: bold;
}
.p-request {
  width: 90%;
  font-size: 2em;
  padding-left: 1em;
  padding-right: 1em;
  margin: 0 auto;
  text-align: left;
  text-indent: -1em;
}
/***現在のリクエスト状況***/
.request-genzai-li {
  font-size: 2em;
  font-weight: bold;
  text-align: center;
  list-style-position: inside;
}
/***リクエスト・グーグルフォーム***/
.box-request-googleform {
  display: block;
  width: 100%;
  height: auto;
  padding: 8px 0 8px 2em;
  margin: 0 auto 32px auto;
  border: double 6px #963;
  border-radius: 10px;
  background: #e9f5ff;
}
.box-request-googleform-inner {
  font-size: 2em;
  text-align: center;
  padding: 0 0 32px 0;
  list-style-position: inside;

}
.request-googleform {
  display: block;
  width: 100%;
  height: auto;
}
.aside-li-request {
  background: #e9f5ff;
}

/*CONTACT*/
.contact {
  width: 80%;
  padding: 3% 8%;
  margin: 16px auto;
  border: double 6px #963;
  border-radius: 10px;
  box-sizing: border-box;
  background: #fff;
}
/*404ページ*とサンクスページ*/
.menu-text-thanks {
  margin: 26px 0 0 0;
}
.thanks {
  text-align: center;
}
.thanks > img {
  width: 30%;
  height: auto;
  margin: 10px 0 0 0;
}
.h2-p-thanks-404 {
  font-size: 2.5em;
  font-weight: bold;
  text-decoration: underline 2px #963;
  margin: auto 0;
}
.h2-p-thanks-404-topheidou {
  display: block;
  font-size: 3em;
  font-weight: bold;
  margin: 0 auto;
}
.thanks-ruby {
  display: block;
  width: 100%;
  margin: 0 auto;
}
.thanks-ruby > rt {
  display: block;
  width: 100%;
  text-align: center;

}

/**************
タブレット設定
***************/
@media(min-width: 768px) and (max-width: 1023px) {
  /* タブレット共通設定 */
  /**見出し・テキスト**/
  .h1-ttl-pc {
    width: 100%;
    height: auto;
    margin: 6px auto 0 auto;
  }
  .h1-ttl-pc > a > img {
    display: block;
    width: 90%;
    height: auto;
    margin: 10px auto 14px auto;
  }
  .h1-ttl-footer a > img {
    width: 20%;
  }
  .h2-top, .h2 {
    display: inline-block;
    width: 85%;
    margin: 32px 0;
  }
  .h2-ttl {
    font-weight: bold;
  }
  .h2-p {
    text-align: center;
    padding: 0 0 0 0.5em;
  }
  .h3 {
    text-align: center;
    margin: 0 auto;
  }
  .h3-ttl-top, .h3-ttl {
    text-align: left;
  }
  .h3-ttl > img {
    width: 32px;
    height: 32px;
  }
  .h3-p, .h3-span, .h3-span-request {
    display: block;
    text-align: left;
  }



  /**リンク位置**/
  .contents {
    margin: 260px 0 0 0;
  }
  .h3-ttl-top, .h3-ttl {
    padding:  308px 0 0 0;
    margin: -308px 0 0 0;
  }
  /**タブレット・スマホの改行**/
  .pc {
    display: block;
  }
  .sp {
    display: none;
  }
  /**トップへ戻るボタン**/
  #page-top {
    right: 4px;
    bottom: 4px;
    width: 48px;
    height: 48px;
  }
  #page-top a > img {
    width: 48px;
    height: 48px;
  }
  #top-h2-page-top, #h2-page-top {
    padding: 308px 0 0 0;
    margin: -308px 0 0 0;
  }
  /**メニューナビゲーション**/
  .pc-nav {
    display: block;
    margin: 0 auto 16px auto;
  }
  .pc-nav ul {
    justify-content: center;
    font-size: 2em;
    margin: auto;
  }
  .pc-nav ul li a:hover {
    text-decoration: underline #ccf;
  }
  .pc-nav ul li {
    display: block;
    padding: 0;
    margin: 0;
    text-align: center;
  }
  .pc-nav ul li > a {
    display: block;
    padding: 0;
    margin: auto;
  }
  .pc-nav ul li a > img {
    display: block;
    padding: 0;
    margin: 0 auto 16px auto;
  }
  /**パンくずリスト**/
  .breadcrumbs  {
    width: 6%;
    margin: 32px 0 0 6px;
    font-size: 1vw;
  }
  .breadcrumbs li {
    padding: 0;
  }
  .breadcrumbs li a {
    padding: 0;
  }
  /**2カラム**/
  #wrap {
    display: block;
    width: 85%;
    height: auto;
    padding: 0;
    margin: 0 auto;
  }
  .column  {
    top: 0;
    flex-wrap: wrap;
    width: 100%;
    height: 100%;
    text-align: left;
    margin: 0 auto;
  }
  .aside, .aside-top {
    position: inherit;
    width: 100%;
    height: auto;
    margin: 0 auto 32px auto;
    top: 0;
    bottom: 0;
    /***スクロールバー***/
    overflow-y: hidden;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .aside::-webkit-scrollbar, .aside-top::-webkit-scrollbar {
    display: none;
  }
  .aside ul, .aside-top ul {
    padding: 0;
    margin: 6px auto;
  }
  .aside-li {
    height: auto;
    padding: 0 1em;
    margin: 0 auto 6px auto;
    border: solid 3px #963;
    align-items: center;
  }
  .aside-li > a {
    text-align: center;
  }
  /*REQUEST*/
  .p-request {
    width: 95%;
    font-size: 2em;
    padding-right: 1em;
    margin: 0 auto;
    text-align: left;
  }
  /*WORK・BLOG・Q&A*/
  .box, .box-box-top-dote {
    padding: 5px;
    margin: 0 auto 32px;
  }
  .box-inner ul li > img {
    display:none;
  }
  /*CONTACT*/
  .contact {
    width: 85%;
  }
  /*404ページ*とサンクスページ*/
  .thanks > img {
    width: 80%;
  }
  .h2-p-thanks-404 {
    text-align: left;
  }
}

/**************
スマートフォン設定
***************/
@media (max-width: 767px) {
    /* スマートフォン共通設定 */
    .footer-box {
      display: block;
    }
    .h1-ttl-footer a > img {
      width: 40%;
    }
    /**見出し・テキスト**/
    .h1-ttl-pc {
      display: none;
    }
    .h1-ttl-sp {
      display: block;
      width: 100%;
      height: auto;
      margin: 6px auto;
      text-align: center;
    }
    .h2-ttl, #top-h2-page-top, #h2-page-top {
      font-size: 3em;
    }
    .h2-top, .h2 {
      display: inline-block;
      width: 90%;
      height: auto;
    }
    .h2-top {
      margin: 64px 0 16px 0;
    }
    .h2 {
      margin: 96px 0 16px 0;
    }
    .h2-img {
      display: block;
      margin: 0 auto;
    }
    .h2-ttl {
      font-size: 3em;
      font-weight: bold;
    }
    .h2-p {
      text-align: left;
      font-size: 2em;
      line-height: 2em;
      padding: 0 1em;
      margin: 0 auto;
    }
    .h2-p-span {
      display: block;
      padding: 0.5em;
      font-size: 0.8em;
    }
    .h3 {
      padding: 0.5em 1em;
      margin: 0 auto;
    }
    .h3 > img {
      display: inline-block;
      text-align: center;
      padding: 0;
    }
    .h3-ttl-top, .h3-ttl {
      padding: 0 0.4em 0 0.4em;
      margin: 0 auto;
      font-size: 2.2em;
    }
    .h3-p {
      text-align: left;
      padding: 0 0.4em 0 0.4em;
      font-size: 2em;
    }
    .h3-span, .h3-span-request {
      width: 100%;
      height: auto;
      text-indent: -1em;
    }
    /***外部へのリンク枠***/
    .h3-span-link {
      display: block;
      width: 100%;
      padding: 4px;
      margin: 8px auto;
      text-indent: 0;
    }
    /***ページ内のリンク枠***/
    .h3-span-link-request {
      display: block;
      width: 100%;
      padding: 4px;
      margin: 8px auto;
      text-indent: 0;
    }


    /**タブレット・スマホの改行**/
    .sp {
      display: block;
    }
    /**リンク位置**/
    .contents {
      height: auto;
      margin: 192px 0 0 0;
    }
    .h3-ttl-top {
      padding: 266px 0 0 0;
      margin: -266px 0 0 0;
    }
    .h3-ttl {
      padding: 296px 0 0 0;
      margin: -296px 0 0 0;
    }
    /**トップへ戻るボタン**/
    #page-top {
      right: 2px;
      bottom: 4px;
      width: 32px;
      height: 32px;
    }
    #page-top a > img {
      width: 32px;
      height: 32px;
    }
    #top-h2-page-top {
      padding: 266px 0 0 0;
      margin: -266px 0 0 0;
    }
    #h2-page-top {
      padding: 296px 0 0 0;
      margin: -296px 0 0 0;
    }

    /**ハンバーガーメニュー**/
    #gnav-btn {
      display: flex;
      height: 64px;
      padding: 16px 0 16px 0;
      background-color: #fff;
      border: double 6px #963;
      border-radius: 6px;
      margin: 0 auto 6px auto;
      align-items: center;
      justify-content: center;
      background:  #fbfaf5;
      width: 90%;
      letter-spacing: 0.5em;
    }
    #gnav-btn > img {
      padding: 0;
    }
    .humb-menu {
      display: block;
    }
    .humb-menu input {
      display: none;
    }
    .humb-menu label {
      display: block;
      cursor: pointer;
      text-decoration: none;
      margin: 0 auto 0 0;
      padding: 0;
      width: 100%;
      background: rgba(255, 255, 255, 0.5);
      font-size: 3em;
      font-weight: bold;
      text-align: left;
      position: sticky;
      border-top: dotted 2px #963;
      font-family: 'DotGothic16', sans-serif;
      font-feature-settings: "palt";
      letter-spacing: 8px;
    }
    .pc-nav {
      display: none;
    }
    #gnav-input:checked ~ .pc-nav {
      display: block;
      width: 100%;
      height: 100%;
      left: 0;
      top: 0;
      cursor: pointer;
      padding: 0;
      position: sticky;
    }
    #gnav-input label {
      display: flex;
      width: 100%;
      height: auto;
    }
    .humb-menu > label {
      display: flex;
      position: relative;
      text-align: center;
    }
    .img-humb-menu {
      vertical-align: middle;
    }
    .tozi {
      display: none;
    }
    #gnav-input:checked ~ label .tozi {
      display: inline-block;
      vertical-align: middle;
    }
    #gnav-input:checked ~ label .img-humb-menu {
      display: none;
    }
    .span-nav {
      display: inline-block;
      width: 100%;
      height: auto;
      padding: 0 0 0 48px;
    }
    /**メニューナビゲーション**/
    .pc-nav ul {
      display: block;
      font-size: 3em;
      font-weight: bold;
      letter-spacing: 0.2em;
      padding: 0 8px;
      margin: auto;
    }
    .pc-nav ul li {
      display: flex;
      height: 100%;
      padding: 8px 0 0 8px;
      border-top: dotted 2px #963;
      justify-content: center;
      align-items: stretch;
    }
    .pc-nav ul li > a {
      display: flex;
      justify-content: flex-start;

      /*margin: 0 auto 0 0;*/
      text-align: center;
    }
    .pc-nav ul li:last-child {
      border-bottom: dotted 2px #963;
    }
    .pc-nav ul li a:hover {
      text-decoration: underline #ccf;
      color: #ccf;
    }
    .pc-nav ul li a > img {
      display: block;
      width: 64px;
      height: 64px;
      margin: 0 32px 0 0;
    }
    /**パンくずリスト**/
    .breadcrumbs  {
      flex-direction: row;
      width: 90%;
      padding: 0 0 0 16px;
      margin: 47px 5% 16px 5%;
      font-size: 1.2em;
      border: solid 2px #000;
      color: #fff;
      background: #963;
      z-index: 9999;
    }
    .breadcrumbs li {
      display: flex;
      flex-direction: row;
      width: 50%;
      background: #963;
      padding: 0 0 0 0;
      align-items: center;
    }
    .breadcrumbs li > a {
      margin: 0 0 0 0;
      color: #ccc;
      text-align: right;
      text-decoration: none;
    }
    .breadcrumbs li:after {
      margin: 0;
    }

    .pankuzu-1 {

      width: 100%;
      height: 100%;
      margin: 0 0 0 auto;
      justify-content: flex-end;
    }
     .pankuzu-list {
      width:100%;
      height: auto;
      justify-content: flex-start;
     }
    /**2カラム**/
    #wrap {
      display: block;
      width: 90%;
      padding: 0;
      margin: 0 auto;
    }
    .column  {
      top: 0;
      width: 100%;
      height: 100%;
      text-align: left;
      margin: 0 auto;
    }
    .aside, .aside-top {
      position: inherit;
      width: 100%;
      height: auto;
      margin: 0 auto 16px auto;
      top: 0;
      bottom: 0;
      /***スクロールバー***/
      overflow-y: hidden;
      -ms-overflow-style: none;
      scrollbar-width: none;
    }
    .aside::-webkit-scrollbar, .aside-top::-webkit-scrollbar {
      display: none;
    }
    .aside-top ul, .aside ul {
      margin: 6px auto;
    }
    .aside-li {
      height: auto;
      padding: 0 1em;
      margin: 0 auto 6px auto;
      border: solid 3px #963;
      align-items: center;
    }
    /*REQUEST*/
    .request-kanseihin-inner {
      display: block;
      width: 100%;
    }
    /*WORK・BLOG・Q&A*/
    .box {
      padding: 0 0 8px 0.5em;
    }
    .box-inner > ul {
      padding: 0 0 0 8px;
    }
    .box-inner ul li > ul {
      padding: 0;
    }
    .box-inner > ol {
      padding: 0 0 0 8px;
    }
    .box-inner ol > li {
      padding: 0 1em 0 0;
      margin: 0 0 16px 1em;
    }
    .box-inner ol li > img {
      text-align: center;
    }
    /* お問い合わせ */
    .contact {
      width: 90%;
      padding: 5%;
      margin: 3% auto;
      font-weight: bold;
      border: double 6px #963;
      border-radius: 10px;
    }
    .contact-otoiawase {
      display: block;
      width: 100%;
    }
    .fild-box {
      width: 100%;
    }
    /*プライバシーポリシー*/
    .privacy-txt {
      width: 90%;
    }
    /*404ページ*とサンクスページ*/
    .thanks > img {
      width: 80%;
    }
    .h2-p-thanks-404 {
      font-size: 2em;
      text-align: left;
    }
    .h2-p-thanks-404-topheidou {
      font-size: 2em;
    }
}

/*以上*/
