@charset "UTF-8";

/* CSS変数の宣言 */
/* サブページで、テンプレートで対応しきれないスタイルをこちらに記入します。ASのみ書き込み可能 */
ol,
ul {
  margin: 0;
  padding: 0;
}
@media (max-width:999px) {
    .list-design4.column4 .item{
      overflow: hidden;
      width: calc(100% / 2 - 1rem);
    }
/*最後のitem左寄せ*/
  .list-design4.column4 .contents-wrap::after {
  content:"";
  display: block;
  width: calc(100% / 2 - 1rem);
  }
}

.bg-color {
  background: var(--accentColor);
}

.bg-color a {
  color: #ffffff;
}

.container.bg-white {
  margin: 0 auto;
  padding: 0;
  width: 100%;
  max-width: 1280px;
}

/*見出し装飾*/
h2.heading-left {
  /*  padding-left: 1em;*/
  padding-top: 1em;
}

/*見出し装飾*/
/*[class^="list-design"] h3 {
  margin-bottom: 2rem;
  line-height: 1.5;
}*/

h2 {
  padding-bottom: 3px;
  margin-left: 1em;
  margin-right: 1em;
  /*padding-left: 0.5em;*/
  padding-left: 0;
  position: relative;
  border-bottom: 3px solid #dad6c5;
  z-index: 0;
}

h2::before {
  content: "";
  position: absolute;
  bottom: -3px;
  left: 0;
  background: var(--accentColor);
  width: 50px;
  height: 3px;
  display: block;
  z-index: 1;
}

h3 {
  font-size: 1.8em;
}

#intro>.intro-container {
  padding-top: 0;
  padding: 0 1em;
  padding-bottom: 2rem;
  margin: 0;
}

.intro-container>.intro-txt {
  width: 100%;
  margin: 0 auto;
  /*  display: grid;*/
  display: inline;
  place-content: center;
}

.intro-container>.intro-txt {
  margin-top: 0;
  padding-top: 0;
}

/*intro-txt内外部リンク、テキストリンク*/
.intro-txt>.link-gaibu {
  display: block;
}

.link-gaibu,
.text-link {
  display: inline-block;
  line-height: 2;
  margin-top: 2em !important;
}

.link-gaibu:after {
  content: url("../images/common/link_icon.png");
  vertical-align: middle;
  padding-left: 0.5rem;
}

#ul-link-gaibu {
  text-align: right;
  list-style-type: none;
}

#ul-link-gaibu li {
  padding-right: 2rem;
  background: transparent url(../images/common/link_icon.png) right 50% no-repeat;
}

/*資料一覧ボタン*/
ul.button-link {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  padding-top: 1em;
  padding-left: 4em;
}

.button-link li {
  vertical-align: middle;
  margin:0;
  padding:0;
  width:100%;
}

.button-link a.arrow {
  display: inline-block;
  line-height: normal;
  padding: 1.5rem 5rem 1.5rem 4.5rem;
  font-size: 1.1em;
  background: var(--borderColor);
  color: #fff;
  text-decoration: none;
  position: relative;
}

.button-link a.arrow.all {
  background: var(--accentColor);
}

.arrow::before,
.arrow::after {
  content: "";
  top: calc(50% - 1px);
  /*right: 0.5em;*/
  right: 1em;
  width: 15px;
  height: 2px;
  /*border-radius: 9999px;*/
  background-color: #ffffff;
  transform-origin: calc(100% - 1px) 50%;
  position: absolute;
}

/*全資料一覧のみpadding調整*/
.pl-0 {
  padding-left: 0;
}

.intro-container > ul.button-link {
  padding-left: 1em;
}

@media (max-width: 767px) {
  ul.button-link {
    display: block;
    width: 100%;
    padding: 0;
    padding-left:0 !important;
    margin: 1em auto;
  }

  .button-link a.arrow {
    width:90%;
    padding: 1.5rem 4rem 1.5rem 2.5rem;
  }

  .button-link a.arrow.all {
    width: 100%;
}

  ul.button-link.pd-1 {
  padding-left: 2em !important;
  padding-right:2em;
}
}

/*各資料群の間にラインを引く*/
.dotted-line {
  border: none;
  border-top: 1px dotted #888;
  margin: 0 2em;
}

/*翻刻のある資料*/
.pick-up {
  display: block;
  margin: 3em auto 0 2em;
}

.pick-up p {
  font-weight: 900;
  font-size: 1.1em;
  margin-bottom: 1em;
}

.pick-up p::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 22px;
  background: #383838;
  margin: 0 0.5em -0.2em 0;
}

.pick-up a {
  display: block;
  text-decoration: underline;
  line-height: 2.5;
  padding-left: 1em;
}

/*トップページへのリンク*/
.link-toppage {
  display: block;
}

.link-toppage p {
  margin: 3em 2em 0 2em;
}

.link-toppage a {
  display: block;
  /*margin: 3em 2em 0 2em;*/
  margin: 0.5em 2em 0 2em !important;
  padding-left: 1em;
  margin-top: 1.5em;
  text-decoration: underline;
}

@media (max-width: 767px) {
  .link-toppage p {
    margin: 3em 1em 0 1em;
  }

  .link-toppage a {
    display: block;
    /*margin: 3em 2em 0 2em;*/
    margin: 0 1em !important;
    padding-left: 0em;
    margin-top: 1.5em;
  }
}

/*江戸屋敷図の小分類リンク*/
.button-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  /*padding: 0.5rem 1.5rem;*/
  padding: 0.2rem 1rem;
  list-style: none;
  justify-content: left;
}

.button-list li a {
  display: inline-block;
  padding: 6px 12px;
  font-size: 16px;
  background-color: #f0f0f0;
  border: 1px solid #ccc;
  border-radius: 6px;
  text-decoration: none;
  /*color: #333;*/
  transition: background-color 0.2s;
}

.button-list li a:hover {
  background-color: #ddd;
  color: #000;
}

/* ===================================================================
 SUBPAGE / 「都志見往来日記・同諸勝図」翻刻テキスト 凡例ページ
=================================================================== */

.tsushimi-hanrei ol {
  padding-left: 1.5em;
  list-style-type: decimal;
}

.tsushimi-hanrei ol li {
  padding-bottom: 1em;
}

.tsushimi-hanrei ol li ol {
  padding-left: 0;
  margin-left: 1.5em;
  padding-top: 0.3em;
}

.tsushimi-hanrei ol li ol li {
  list-style-type: none;
  counter-increment: cnt;
  padding-bottom: 0.5em;
  position: relative;
}

.tsushimi-hanrei ol li ol li::before {
  content: "(" counter(cnt) ") ";
  display: inline-block;
  margin-left: -2.5em;
  width: 2em;
  text-align: right;
  position: absolute;
  top: 0;
  left: 0;
}

/*768以上で段落調整*/
@media print,
screen and (min-width: 768px) {
  #intro>.intro-container {
    width: 100%;
    padding: 0 2rem;
    display: flex;
    flex-wrap: wrap;
  }

  #intro>.intro-container>.intro-txt {
    padding-left: 1em;
  }

  h3 {
    margin-left: 1em;
  }

  [class^="list-design"]>.contents-wrap {
    padding-left: 3em;
  }

 /* .list-design4.column4 .item {
    overflow: hidden;
    width: calc((100% - 3em) / 4 - 1rem);
  }*/

  .pick-up {
    margin-left: 3em;
  }
}


/*======3列を追記======*/

@media screen and (min-width:999.001px) and ( max-width:1024px) {
.list-design4.column4 .item{
      width: calc(100% / 3 - 2rem );
    }
}

@media (max-width:999px) {
.list-design4.column4 .item{
      overflow: hidden;
      width: calc(100% / 2 - 1rem);
      margin:1.5em auto;
    }
}
@media (max-width:575px) {
    .list-design4.column4 > .contents-wrap{
    display:block;
    }
    .list-design4.column4 .item{
      width: 90%;
      margin:2.0em auto;
    }
}