@charset "UTF-8";
/* Scss Document */
@import "reset.css";
@import "destyle.css";
@import "icon.css";
html {
  font-size: 62.5%;
}

body {
  color: #333;
  font-size: 1.4rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 100;
  line-height: 1.6;
}

/*トップページ固有設定*/
body#home header {
  background: none;
  box-shadow: none;
}
body#home header .logo img {
  display: none; /* ヘッダーロゴは下層のみ　*/
}
body#home header .menuBtn {
  background: rgba(0, 0, 0, 0.84);
  right: 9px;
  top: 9px;
}
body#home header .menuBtn span {
  background-color: #fff;
}
body#home header .menuBtn span::before, body#home header .menuBtn span::after {
  background-color: #fff;
}
body#home header .drawer > ul::before {
  content: "";
  width: 200px;
  height: 40px;
  position: absolute;
  top: 10px;
  left: 20px;
  background: url("../img/common/logo.svg") no-repeat center center;
}

.wrapper {
  overflow: hidden;
}

/*ヘッダー*/
header {
  height: 60px;
  width: 100%;
  position: fixed;
  display: flex;
  align-items: center;
  justify-content: space-between;
  z-index: 10;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.02);
}
header .logo {
  display: inline-block;
  margin-left: 20px;
  position: absolute;
  z-index: 5;
  top: 12px;
}
header .englishBtn_top {
  width: 60px;
  height: 60px;
  position: fixed;
  top: 9px;
  right: 87px;
  z-index: 15;
  background: rgba(0, 0, 0, 0.84);
}
header .englishBtn_top div {
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
}
header .englishBtn_top div i {
  color: #fff;
  font-size: 2.6rem;
}
header .englishBtn_top div span {
  display: block;
  color: #fff;
  font-size: 1.2rem;
  line-height: 1;
  font-family: Calibri, "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
header .englishBtn_under {
  width: 60px;
  height: 60px;
  position: fixed;
  top: 0px;
  right: 57px;
  z-index: 15;
}
header .englishBtn_under div {
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
}
header .englishBtn_under div i {
  font-size: 2.6rem;
}
header .englishBtn_under div span {
  display: block;
  color: #333;
  font-size: 1.1rem;
  line-height: 1;
  font-family: Calibri, "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
header .menuBtn {
  width: 60px;
  height: 60px;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 15;
  cursor: pointer;
}
header .menuBtn span {
  position: absolute;
  display: inline-block;
  width: 20px;
  height: 2px;
  background: #333;
  top: 50%;
  left: 20px;
}
header .menuBtn span::before, header .menuBtn span::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 20px;
  height: 2px;
  background: #333;
  transition: 0.3s;
}
header .menuBtn span::before {
  top: -7px;
}
header .menuBtn span::after {
  top: 8px;
}
header .menuBtn.on span {
  height: 0;
}
header .menuBtn.on span::before, header .menuBtn.on span::after {
  top: 0;
}
header .menuBtn.on span::before {
  transform: rotate(45deg);
}
header .menuBtn.on span::after {
  transform: rotate(-45deg);
}
header .menuBtn.menuBtn_top {
  top: 9px;
  right: 9px;
}

/*ドロワー*/
.drawer {
  position: fixed;
  top: 0;
  right: -100%;
  background: rgba(255, 255, 255, 0.95);
  z-index: 9;
  height: 100vh;
  width: 100%;
  text-align: center;
  box-shadow: -3px 0px 10px rgba(0, 0, 0, 0.05);
  padding: 80px 0;
  overflow-y: auto;
  transition: 0.7s ease-out;
}
.drawer.open {
  transition: 0.4s ease-out;
}
.drawer ul {
  height: 99%;
  text-align: left;
}
.drawer ul li {
  position: relative;
}
.drawer ul li a {
  font-size: 1.4rem;
  display: block;
  padding: 12px 0 12px 20px;
  width: 100%;
  transition: 0.3s;
  border-bottom: dashed 1px #ccc;
}
.drawer ul li a img {
  width: 90%;
  height: auto;
}
.drawer ul li a:hover {
  color: #1B6E8E;
}
.drawer ul li a:hover img {
  opacity: 0.7;
}
.drawer ul li .trigger {
  font-size: 1.1rem;
  display: inline-block;
  margin-left: 30px;
  width: 40px;
  height: 40px;
  background-color: #fff;
  border: solid 1px #ccc;
  color: #fff;
  position: absolute;
  top: 3px;
  right: 15px;
}
.drawer ul li .trigger:before {
  content: "\e91f";
  font-family: "icomoon";
  font-size: 2.8rem;
  display: inline-block;
  color: #aaa;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.drawer ul li .trigger.on::before {
  content: "\e920";
}
.drawer ul li .trigger + ul {
  display: none;
  padding: 0;
  background-color: rgba(0, 0, 0, 0.04);
}
.drawer ul li .trigger + ul li a {
  padding-left: 2.5em;
}
.drawer ul li .trigger + ul li:last-of-type a {
  border: none;
}
.drawer ul li.gionbnr {
  text-align: center;
}
.drawer ul li.gionbnr a {
  border: none;
  padding: 0 0 15px 0;
}
.drawer ul li.gionbnr a img {
  width: 85%;
}
.drawer ul li.sns {
  padding: 20px 30px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.drawer ul li.sns a {
  width: 32px;
  height: 32px;
  padding: 0;
  font-size: 3.2rem;
  margin-right: 20px;
  vertical-align: top;
  line-height: 1;
  border: none;
}
.drawer ul li.sns a.text {
  display: none;
  font-size: 1.2rem;
  width: auto;
  height: auto;
}
.drawer ul li.sns a.text.last {
  margin-right: 40px;
}
.drawer ul li.sns a.englishBtn_sp {
  background: #fff;
  border-radius: 5px;
  text-align: center;
  font-size: 1.6rem;
  border: 1px solid #707070;
  padding: 12px 5px 5px;
  height: 44px;
  width: 130px;
  margin: 0 25px 0 0;
  letter-spacing: 1px;
}
.drawer ul li.bnr {
  display: flex;
  flex-direction: column;
  text-align: center;
  padding: 0 0px 120px;
}
.drawer ul li.bnr a {
  border: none;
  padding-right: 0;
}
.drawer ul li.sp {
  padding: 0;
  margin-bottom: 10px;
}
.drawer ul li.sp a {
  padding: 22px;
  border: solid 1px #333;
  position: relative;
}
.drawer ul li.sp a::after {
  font-family: "icomoon";
  content: "\e91c";
  font-size: 3.2rem;
  color: #E9380E;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}

/*下層タイトル*/
.mainHeader .pageTitle {
  height: 600px;
  overflow: hidden;
  position: relative;
  background: #000;
}
.mainHeader .pageTitle.h100 {
  height: 100vh;
}
.mainHeader .pageTitle > img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.7;
}
.mainHeader h1 {
  /*font-family:"HGP行書体","HG行書体","游明朝", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝",serif;*/
  position: absolute;
  top: 52%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  font-size: 6rem;
  text-align: center;
  letter-spacing: 7px;
}
.mainHeader h1 span {
  font-family: Calibri, "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 1.4rem;
  display: block;
  letter-spacing: 4px;
}
.mainHeader h1 img {
  margin-bottom: 15px;
  max-width: 75vw;
}
.mainHeader h1 .cls-1 {
  fill: #fff;
}
.mainHeader h1.vertical {
  top: calc(50% + 20px);
}
.mainHeader h1.vertical img {
  max-width: 144px;
}
.mainHeader h1.en {
  font-size: 6vw;
  width: 100%;
}

/*パンくず*/
.breadCrumb {
  padding: 0 15px;
  background: #F9F6EF;
  font-size: 1.4rem;
}
.breadCrumb ul {
  max-width: 1200px;
  margin: 0 auto;
}
.breadCrumb ul li {
  display: inline-block;
  padding: 10px 0;
}
.breadCrumb ul li span,
.breadCrumb ul li a {
  display: inline-block;
}
.breadCrumb ul li a::after {
  content: ">";
  display: inline-block;
  margin: 0 10px;
}
.breadCrumb ul li a:hover {
  color: #1B6E8E;
}
.breadCrumb ul li a i {
  margin-right: 7px;
}

/*フッター*/
footer {
  background-image: url(../img/common/bg_footer.svg), linear-gradient(180deg, rgb(255, 255, 255) 0%, rgb(247, 243, 232) 100%);
  background-size: 210%, cover;
  background-repeat: repeat-x, no-repeat;
  background-position: center 92%, 0 0;
}
footer .footerInner {
  display: flex;
  flex-direction: column;
  width: 80%;
  margin: 0 auto;
  padding: 60px 0 100px 0;
}
footer .footerInner .footer-box:first-of-type {
  width: 100%;
  text-align: center;
}
footer .footerInner .footer-box:first-of-type .logo img {
  display: inline-block;
  width: 168px;
  margin-bottom: 20px;
}
footer .footerInner .footer-box:first-of-type address .address {
  line-height: 1.8;
}
footer .footerInner .footer-box:first-of-type address .tel {
  margin: 10px 0;
  font-size: 2rem;
}
footer .footerInner .footer-box:last-of-type {
  width: 100%;
  display: none;
}
footer .copy {
  display: block;
  border-top: solid 2px #D2A256;
  text-align: center;
  font-size: 1rem;
  line-height: 30px;
  background-color: #fff;
}
footer .copy span {
  font-size: 1.6rem;
  vertical-align: middle;
  display: inline-block;
  margin-right: 5px;
  padding-bottom: 2px;
}

/*ページ上部へ戻るボタン*/
.pageTop {
  position: fixed;
  right: 20px;
  bottom: 30px;
  text-align: center;
  transition: 0.3s;
  z-index: 1;
}
.pageTop a {
  width: 70px;
  height: 70px;
  display: inline-block;
  border-radius: 35px;
  transition: 0.3s;
  background: rgba(255, 255, 255, 0.8);
  box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.01);
}
.pageTop a::before, .pageTop a::after {
  content: "";
  display: inline-block;
  height: 2px;
  background: #E9380E;
  position: absolute;
  transform: translateX(-50%);
  transition: 0.3s;
}
.pageTop a::before {
  top: 16px;
  left: 50%;
  width: 32px;
}
.pageTop a::after {
  top: 24px;
  left: 50%;
  width: 28px;
}
.pageTop a:hover::before {
  width: 28px;
  transform: rotate(-45deg);
  left: 11px;
}
.pageTop a:hover::after {
  top: 16px;
  left: auto;
  right: 11px;
  transform: rotate(45deg);
}
.pageTop a span {
  position: absolute;
  bottom: 15px;
  width: 100%;
  left: 50%;
  transform: translateX(-50%);
  font-size: 1rem;
  font-family: Calibri, "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.pageTop a span::before, .pageTop a span::after {
  content: "";
  display: inline-block;
  width: 2px;
  height: 22px;
  background: #E9380E;
  position: absolute;
  top: -28px;
}
.pageTop a span::before {
  left: 24px;
}
.pageTop a span::after {
  right: 24px;
}

@media screen and (max-width: 768px) {
  /*ページ内リンクメニュー*/
  .nav-close {
    display: block;
    position: fixed;
    bottom: 0;
    right: 0;
    width: 40px;
    height: 50px;
    cursor: pointer;
    text-align: center;
    z-index: 3;
    border-radius: 10px 0 0 10px;
    background: url(../img/common/bg_innerNav.png) repeat 0 0;
  }
  .nav-close span {
    color: #fff;
    display: inline-block;
  }
  .nav-close span::before {
    content: "\e90f";
    font-family: "icomoon";
    font-size: 3rem;
  }
  .nav-close.off + #scrollSpy {
    right: 0;
  }
  .nav-close.off span {
    display: inline-block;
  }
  .nav-close.off span::before {
    content: "×";
    font-size: 3.5rem;
    font-family: Calibri, "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }
  #scrollSpy {
    display: block;
    position: fixed;
    right: -100%;
    bottom: 0;
    padding: 60px 0 15px 10px;
    background: url(../img/common/bg_innerNav.png) repeat 0 0;
    box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.01);
    width: 100%;
    z-index: 2;
    transition: 0.3s;
  }
  #scrollSpy > a {
    display: none;
  }
  #scrollSpy ul {
    background: #fff;
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid #E2D9BF;
    border-left: 1px solid #E2D9BF;
    position: relative;
  }
  #scrollSpy ul li {
    width: 50%;
    border-right: 1px solid #E2D9BF;
    border-bottom: 1px solid #E2D9BF;
  }
  #scrollSpy ul li a {
    position: relative;
    color: #333;
    display: inline-block;
    font-size: 1.6rem;
    padding: 15px;
    width: 100%;
    height: 100%;
    border-right: none;
    min-height: 55px;
  }
  #scrollSpy ul li a.disbind {
    pointer-events: none;
  }
  #scrollSpy ul li a.disbind::before {
    display: none;
  }
  #scrollSpy ul li a span {
    display: block;
    position: relative;
    top: 50%;
    transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
  }
  #scrollSpy ul li.active a {
    color: #333;
    background: #F7F3E8;
  }
  #scrollSpy ul::before {
    content: "";
    display: block;
    width: 1px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    background: #E2D9BF;
  }
  #scrollSpy ul:after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 0;
    background: #E2D9BF;
  }
}
/*ページ内リンクメニュー*/
#scrollSpy.scrollSpy_sp {
  visibility: visible;
  transition: 0.3s;
}

body.lock .englishBtn_top,
body.lock .englishBtn_under {
  display: none;
}

/*　---------------------------------------------------　*/
/*　-------------PCレイアウト----------------------------　*/
/*　---------------------------------------------------　*/
@media screen and (min-width: 769px) {
  body {
    font-size: 1.6rem;
  }
  body#home header .drawer ul::before {
    content: none;
  }
  .drawer {
    width: 45vw;
    padding: 0 0 20px 0;
    transition: 1.2s ease-out;
  }
  .drawer.open {
    transition: 0.6s ease-out;
  }
  .drawer ul {
    overflow-y: auto;
    scrollbar-width: none;
  }
  .drawer ul.en {
    margin-top: 60px;
  }
  .drawer ul li a {
    width: 74%;
    margin: 0 auto;
    padding: 16px 0 16px 20px;
    font-size: 1.6rem;
  }
  .drawer ul li .trigger {
    top: 9px;
    right: 15%;
  }
  .drawer ul li.sns {
    width: 70%;
    margin: 0 auto;
  }
  .drawer ul li.sns a {
    margin-right: 20px;
  }
  .drawer ul li.sns a.text {
    display: inline-flex;
  }
  .drawer ul li.sns a.englishBtn_sp {
    margin: 0 77px 0 0;
  }
  .drawer ul li.gionbnr a {
    padding: 22px 0;
  }
  .drawer ul li.gionbnr a img {
    width: 100%;
    max-width: 580px;
  }
  .drawer ul li.bnr {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 0 10%;
  }
  .drawer ul li.bnr a {
    width: 50%;
    display: inline-flex;
    margin: 0;
    padding: 0;
    margin-bottom: 20px;
  }
  .drawer ul li.bnr a picture {
    display: inline-flex;
  }
  .drawer ul li.li_sp {
    display: none;
  }
  /*ページ内リンクメニュー*/
  .nav-close {
    display: block;
    position: fixed;
    top: calc(10% + 5px);
    right: 5px;
    width: 30px;
    height: 30px;
    cursor: pointer;
    text-align: center;
    z-index: 3;
    border-radius: 4px;
    background: url("../img/common/bg_innerNav.png") repeat 0 0;
  }
  .nav-close span {
    color: #fff;
    display: inline-block;
  }
  .nav-close span::before {
    content: "×";
    font-size: 1.6rem;
    font-family: Calibri, "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }
  .nav-close.off + #scrollSpy {
    right: -100%;
  }
  .nav-close.off span::before {
    content: "\e90f";
    font-family: "icomoon";
    font-size: 1.8rem;
  }
  #scrollSpy {
    display: block;
    position: fixed;
    right: 0;
    top: 10%;
    bottom: auto;
    padding: 40px 0 15px 10px;
    background: url("../img/common/bg_innerNav.png") repeat 0 0;
    box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.01);
    width: 224px;
    z-index: 2;
    transition: 0.3s;
  }
  #scrollSpy > a {
    position: relative;
    display: inline-block;
    margin-bottom: 15px;
    width: 100%;
    pointer-events: none;
  }
  #scrollSpy > a::before {
    content: "";
    width: 3px;
    height: 14px;
    background: #D4B401;
    vertical-align: middle;
    display: inline-block;
    margin-right: 10px;
  }
  #scrollSpy > a:hover:after {
    right: 15px;
  }
  #scrollSpy ul {
    background: #fff;
  }
  #scrollSpy ul li {
    width: 100%;
    flex: auto;
    text-align: left;
  }
  #scrollSpy ul li a {
    background: #fff;
    color: #333;
    display: inline-block;
    font-size: 1.4rem;
    padding: 10px 8px 10px 15px;
    width: 100%;
    border-right: none;
  }
  #scrollSpy ul li a:hover {
    background: #F7F3E8;
  }
  #scrollSpy ul li a::before {
    content: "";
    display: inline-block;
    width: 6px;
    height: 2px;
    background: #777;
    vertical-align: middle;
    margin-right: 10px;
  }
  #scrollSpy ul li a::after {
    content: none;
  }
  #scrollSpy ul li a.linkPage::before {
    background: rgba(255, 255, 255, 0);
  }
  #scrollSpy ul li a.linkPage::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 2px;
    background: #777;
    position: absolute;
    left: auto;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    border: none;
  }
  #scrollSpy ul li a.indent {
    padding-left: 50px;
    text-indent: -17px;
  }
  #scrollSpy ul li a.indent::before {
    text-indent: 0;
  }
  #scrollSpy ul li a.disbind {
    pointer-events: none;
  }
  #scrollSpy ul li a.disbind::before {
    display: none;
  }
  #scrollSpy ul li.active a {
    color: #333;
    background: #F7F3E8;
  }
  #scrollSpy ul li.active a:hover {
    background: #F7F3E8;
  }
  footer {
    background-image: url(../img/common/bg_footer.svg), linear-gradient(180deg, rgb(255, 255, 255) 0%, rgb(247, 243, 232) 100%);
    background-size: 88%, cover;
    background-repeat: repeat-x, no-repeat;
    background-position: center 92%, 0 0;
  }
  footer .footerInner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    padding: 60px 0 160px 0;
  }
  footer .footerInner .footer-box:first-of-type {
    margin-bottom: 30px;
  }
  footer .footerInner .footer-box:first-of-type address .tel a {
    display: inline-block;
    pointer-events: none;
  }
  footer .footerInner .footer-box:last-of-type {
    display: block;
  }
  footer .footerInner .footer-box:last-of-type ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  footer .footerInner .footer-box:last-of-type ul li {
    width: 48%;
    margin-right: 2%;
  }
  footer .footerInner .footer-box:last-of-type ul li a {
    display: inline-block;
    padding: 10px 0;
  }
  footer .footerInner .footer-box:last-of-type ul li a span {
    display: inline-block;
    margin-left: 25px;
    font-size: 1.2rem;
  }
  footer .footerInner .footer-box:last-of-type ul li a:hover {
    color: #1B6E8E;
  }
  footer .footerInner .footer-box:last-of-type ul li.sns {
    width: 100%;
    margin: 15px 0 0;
  }
  footer .footerInner .footer-box:last-of-type ul li.sns a {
    display: inline-block;
    margin-right: 23px;
    padding: 0;
    vertical-align: middle;
    line-height: 1;
  }
  footer .footerInner .footer-box:last-of-type ul li.sns a i {
    font-size: 3.2rem;
  }
  footer .footerInner .footer-box:last-of-type ul li.sns a.englishBtn_sp {
    background: #fff;
    border-radius: 5px;
    text-align: center;
    font-size: 1.6rem;
    border: 1px solid #707070;
    padding: 10px 5px 5px;
    height: 38px;
    width: 130px;
    margin: 0 25px 0 0;
    letter-spacing: 1px;
  }
  footer .footerInner .footer-box:last-of-type ul li.bnr {
    width: 30.3%;
    margin-right: 3%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 30px;
  }
  footer .footerInner .footer-box:last-of-type ul li.bnr a {
    display: inline-flex;
  }
  footer .footerInner .footer-box:last-of-type ul li.bnr a img {
    height: auto;
    width: 100%;
  }
  footer .footerInner .footer-box:last-of-type ul li.bnr a:hover {
    opacity: 0.8;
  }
  footer .copy {
    border-top: none;
  }
  /*下層タイトル*/
  .mainHeader h1.vertical {
    top: calc(50% - 55px);
  }
  .mainHeader h1.vertical img {
    max-width: 75vw;
  }
  /* #scrollSpy.scrollSpy_sp{
          visibility: hidden;
      }*?
  }

  @media screen and (min-width: 960px) {
      /*下層タイトル*/
  .mainHeader h1.en {
    font-size: 5rem;
  }
  footer .footerInner {
    flex-direction: row;
  }
  footer .footerInner .footer-box:first-of-type {
    width: 25%;
    margin: 30px 0 0 0;
  }
  footer .footerInner .footer-box:first-of-type .logo img {
    max-width: 244px;
  }
  footer .footerInner .footer-box:last-of-type {
    width: 65%;
  }
}
@media screen and (min-width: 1600px) {
  /*下層タイトル*/
  .mainHeader h1.en {
    font-size: 7.2rem;
  }
  .drawer {
    transition: 1.6s ease-out;
  }
  .drawer.open {
    transition: 0.8s ease-out;
  }
}
/*フェードイントリガ（scroll）オン（show）*/
.scroll {
  opacity: 0;
}

.show {
  animation-name: show;
  animation-duration: 1s;
  animation-fill-mode: forwards;
}

@keyframes show {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: translate(0);
  }
}
.updown {
  transform: translateY(-100px);
}

.downup {
  transform: translateY(100px);
}

.slide-r {
  transform: translateX(200px);
}

.slide-l {
  transform: translateX(-200px);
}

main {
  padding: 0 0 80px 0;
}

.btnArea {
  text-align: center;
}
.btnArea .btn {
  position: relative;
  display: inline-block;
  padding: 15px 60px 15px 40px;
  border: 1px solid #aaa;
  background: #fff;
  text-align: center;
  vertical-align: middle;
  transition: 0.3s;
  min-width: 280px;
}
.btnArea .btn.blue {
  color: #fff;
  background: #222A3F;
}
.btnArea .btn.gray {
  color: #fff;
  background: #534C4C;
}
.btnArea .btn.sky {
  color: #fff;
  background: #1B6E8E;
}
.btnArea .btn i {
  font-size: 2.4rem;
  vertical-align: middle;
  position: absolute;
  display: inline-block;
  padding: 16px;
  right: 20px;
  bottom: 50%;
  transform: translateY(50%);
  transition: 0.3s;
}
.btnArea .btn i::before {
  position: absolute;
  display: inline-block;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.btnArea .btn:hover {
  color: #fff;
  background: #222A3F;
}
.btnArea .btn:hover i {
  right: 10px;
}
.btnArea .btn02 {
  position: relative;
  display: inline-block;
  width: 100%;
  max-width: 380px;
  padding: 21px 40px;
  border: 1px solid #aaa;
  background: #222A3F;
  color: #fff;
  text-align: center;
  vertical-align: middle;
  transition: 0.3s;
}
.btnArea .btn02 i {
  font-size: 2.4rem;
  vertical-align: middle;
  position: absolute;
  display: inline-block;
  padding: 16px;
  right: 20px;
  top: 50%;
  transform: translate(0%, -50%);
  -webkit-transform: translate(0%, -50%);
  -ms-transform: translate(0%, -50%);
  -moz-transform: translate(0%, -50%);
  transition: 0.3s;
}
.btnArea .btn02 i::before {
  position: absolute;
  display: inline-block;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
}
.btnArea .btn02:hover {
  color: #222A3F;
  background: #fff;
}
.btnArea .btn02:hover i {
  right: 10px;
}

.object-fit {
  object-fit: cover;
  font-family: "object-fit: cover;";
}

section {
  width: 100%;
  padding: 50px 20px;
}
section.wd-max {
  max-width: 100%;
  padding: 50px 0;
}
section .sec__inner {
  margin-bottom: 40px;
}
section .sec__ttl {
  text-align: center;
  font-size: 2.6rem;
  letter-spacing: 2px;
  margin: 0 0 30px 0;
  line-height: 1.3;
}
section .sec__ttl span {
  font-family: Calibri, "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 1.2rem;
  color: #fff;
  background-color: #D3A357;
  display: inline-block;
  padding: 2px 30px;
  font-weight: normal;
  margin: 15px 0 0 0;
  letter-spacing: 2px;
  line-height: 1.6rem;
}
section .blc-ttl {
  font-size: 2.2rem;
  position: relative;
  padding-bottom: 12px;
  margin: 10px 0 30px;
  line-height: 1.2;
}
section .blc-ttl:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 180px;
  height: 3px;
  background: #D3A357;
}
section .blc-ttl .yomi {
  display: block;
  font-size: 1.6rem;
}
section .par-ttl {
  font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 1em;
}

div .blc-ttl {
  font-size: 2.2rem;
  position: relative;
  padding-bottom: 12px;
  margin: 10px 0 30px;
  line-height: 1.2;
}
div .blc-ttl:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 180px;
  height: 3px;
  background: #D3A357;
}
div .blc-ttl .yomi {
  display: block;
  font-size: 1.6rem;
}

.commonList {
  padding-left: 2em;
}
.commonList li {
  list-style-type: disc;
  margin-bottom: 10px;
}

.itemList {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}
.itemList li {
  width: 44%;
  text-align: center;
  margin-bottom: 30px;
}
.itemList li img,
.itemList li span {
  display: inline-block;
  width: 100%;
  height: auto;
}
.itemList li img {
  max-width: 200px;
}

/*formタグ*/
input[type=text],
input[type=email],
input[type=tel],
textarea {
  width: 100%;
  padding: 9px 7px;
  background: #fff;
  line-height: 1.8;
  border: 1px solid #ccc;
}

textarea {
  resize: vertical;
}

/*送信ボタン*/
.form_btnArea {
  margin: 0 auto;
  max-width: 617px;
}
.form_btnArea .btn {
  padding: 0;
  margin: 0 auto 30px;
}
.form_btnArea .btn input {
  width: 100%;
  padding: 22px 40px;
}
.form_btnArea .btn02 {
  padding: 0;
  margin: 0 auto 30px;
}
.form_btnArea .btn02 input {
  width: 100%;
  padding: 22px 40px;
}

/*タブ切り替え*/
.tab_wrap .tab_btn:hover {
  cursor: pointer !important;
}
.tab_wrap .tab_contents {
  display: none;
}
.tab_wrap .tab_contents.active {
  display: block;
}

/*画像サイズ*/
.img_responsive {
  max-width: 100%;
  height: auto;
}

/*tel__inner　人生儀礼同様*/
.tel_inner .btn {
  width: 100%;
  position: relative;
  font-size: 1.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #F7F3E8;
  color: #000;
  padding: 20px;
  border: none;
}
.tel_inner .btn span {
  padding: 0 0 0 40px;
  position: relative;
  display: inline-block;
  margin-right: 20px;
}
.tel_inner .btn span::before {
  content: "\e918";
  font-family: "icomoon";
  position: absolute;
  top: 50%;
  left: -8px;
  font-size: 4rem;
  transform: translateY(-50%);
}

/*404ページ　not_found*/
.not_found {
  margin: 60px 0 0;
}
.not_found .no_page {
  padding: 60px 0 0;
  text-align: left;
}
.not_found .no_page .inner {
  max-width: 100%;
  padding: 0 20px;
}
.not_found .no_page .inner .no_page_ttl {
  font-size: 3.3rem;
  margin: 0 0 30px;
}
.not_found .no_page .inner .not_found_txt {
  padding: 0 0 40px;
}
.not_found .no_page .inner .btnArea a {
  min-width: 100%;
}

/*　---------------------------------------------------　*/
/*　-------------PCレイアウト----------------------------　*/
/*　---------------------------------------------------　*/
@media screen and (min-width: 769px) {
  .btnArea.changeAlign-left {
    text-align: left;
  }
  .btnArea .btn {
    min-width: 280px;
  }
  section {
    max-width: 1200px;
    margin: 0 auto;
    padding: 80px 20px;
  }
  section.wd-max {
    padding: 80px 0;
  }
  section .sec__inner {
    padding: 0 2em;
    margin-bottom: 60px;
  }
  section .sec__ttl {
    font-size: 4rem;
    margin: 0 0 40px 0;
    letter-spacing: 7px;
  }
  section .blc-ttl {
    font-size: 3rem;
  }
  section .blc-ttl .yomi {
    display: inline-block;
    font-size: 2.4rem;
    margin: 0 0 0 20px;
  }
  section .par-ttl {
    font-size: 1.8rem;
  }
  .itemList li {
    width: 23%;
  }
  div .blc-ttl {
    font-size: 3rem;
  }
  div .blc-ttl .yomi {
    display: inline-block;
    font-size: 2.4rem;
    margin: 0 0 0 20px;
  }
  .btnArea {
    text-align: center;
  }
  .btnArea.btnArea_2col {
    justify-content: space-between;
    display: flex;
  }
  .btnArea.btnArea_2col .btn:first-child {
    margin-right: 5px;
  }
  .btnArea.btnArea_2col .btn:last-child {
    margin-left: 5px;
  }
  .btnArea.btnArea_2col .btn02:first-child {
    margin-right: 5px;
  }
  .btnArea.btnArea_2col .btn02:last-child {
    margin-left: 5px;
  }
  /*送信ボタン*/
  .form_btnArea {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .form_btnArea .btn {
    min-width: auto;
    width: calc(50% - 28px);
    margin: 0 14px 30px;
  }
  .form_btnArea .btn02 {
    min-width: auto;
    width: calc(50% - 28px);
    margin: 0 14px 30px;
  }
  /*tel__inner　人生儀礼同様*/
  .tel_inner .btn {
    font-size: 2.4rem;
    width: auto;
    padding: 30px 0;
  }
  /*404ページ　not_found*/
  .not_found .no_page {
    padding: 100px 0 0;
    text-align: center;
  }
  .not_found .no_page .inner {
    max-width: 1000px;
    padding: 0;
    margin: 0 auto;
  }
  .not_found .no_page .inner .no_page_ttl {
    font-size: 3.3rem;
    margin: 0 0 50px;
  }
  .not_found .no_page .inner .not_found_txt {
    padding: 0 0 60px;
  }
  .not_found .no_page .inner .btnArea a {
    min-width: 250px;
  }
}
@keyframes ttlCall {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: translate(0);
  }
}
.hero {
  position: relative;
  width: 100%;
  height: 100vh;
  max-height: 668px;
  min-height: 668px;
  overflow: hidden;
  background-color: #000;
  /*TOPのロゴの位置を調整*/
}
.hero .txt-ja {
  position: absolute;
  z-index: 1;
  top: 20%;
  left: 50%;
  transform: translateX(-52%);
  display: flex;
  justify-content: center;
  flex-direction: row-reverse;
  width: 50vw;
}
.hero .txt-ja h1 {
  width: 70px;
  margin: 0 10px 0 15px;
  animation-name: ttlCall;
  animation-duration: 3s;
  animation-fill-mode: forwards;
}
.hero .txt-ja h1 img {
  width: 100%;
  height: auto;
  animation-duration: 3s;
}
.hero .txt-ja span {
  height: 500px;
  color: #fff;
  font-size: 1.6rem;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  letter-spacing: 2px;
  line-height: 3.6rem;
  margin-top: 100px;
}
.hero .txt-ja {
  text-align: center;
  flex-direction: column;
  align-items: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.hero .txt-ja h1 {
  width: 90px;
  /*margin-bottom: 140px;*/
  margin: 0 0 140px;
}
.hero .latest-news {
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  padding: 20px 0;
  background: rgba(255, 255, 255, 0.9);
}
.hero .latest-news .close {
  position: absolute;
  top: 0;
  right: 0;
  transform: rotate(45deg);
  padding: 10px;
  display: inline-block;
  cursor: pointer;
}
.hero .latest-news .close:hover {
  color: #B73800;
}
.hero .latest-news dl {
  padding-left: 50px;
  display: flex;
  align-items: center;
}
.hero .latest-news dl dt {
  margin-right: 1em;
  font-weight: normal;
  white-space: nowrap;
}
.hero .latest-news dl dd {
  padding-right: 30px;
}
.hero .latest-news dl dd a:hover {
  color: #B73800;
}
.hero .latest-news dl::before {
  font-family: "icomoon";
  content: "\e91d";
  position: absolute;
  display: inline-block;
  color: #E9380E;
  font-size: 2.6rem;
  top: 50%;
  left: 15px;
  transform: translate(0%, -50%);
}
.hero .videoArea {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  padding-top: 56.25%;
  height: 100%;
}
.hero .videoArea video {
  width: 100%;
  height: auto;
  position: absolute;
  top: 0;
  left: 0;
  min-width: 100%;
  min-height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  z-index: 10;
}

body#home .wrapper main {
  position: relative;
  overflow: hidden;
}
body#home .wrapper main::before {
  content: "";
  display: block;
  width: 100%;
  height: 90px;
  background: url("../img/top/bg_saku.png") repeat 0 0;
}

.secArea {
  padding: 60px 0;
}
.secArea h2 {
  text-align: center;
  font-size: 3.2rem;
  letter-spacing: 7px;
  margin-bottom: 30px;
}
.secArea h2 span {
  background: #D3A357;
  color: #fff;
  display: inline-block;
  padding: 2px 30px;
  font-size: 1.2rem;
  font-weight: normal;
  margin: 20px 0 0 0;
  letter-spacing: 2px;
  font-family: Calibri, "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.secArea .col .col-box {
  width: 100%;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 30px;
  align-self: flex-start;
}
.secArea .col .col-box:first-of-type {
  padding: 0 15px;
}
.secArea .col .col-box img {
  display: block;
  width: 100%;
  flex-shrink: 0;
  max-width: 100%;
}
.secArea .col .col-box:last-of-type {
  margin-bottom: 0;
}
.secArea.section01 {
  padding-top: 70px;
  padding-bottom: 0;
}
.secArea.section01 .col .col-box:first-of-type {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
}
.secArea.section01 .col .col-box:first-of-type .txt-ja {
  padding-bottom: 30px;
  text-align: center;
}
.secArea.section01 .col .col-box:first-of-type .txt-ja h2 {
  margin-bottom: 30px;
  position: relative;
}
.secArea.section01 .col .col-box:first-of-type .txt-ja h2::before {
  content: "";
  font-family: "icomoon";
  content: "\e90c";
  color: #E9380E;
  font-size: 8rem;
  display: block;
  position: absolute;
  top: -120px;
  left: 50%;
  width: 130px;
  height: 200px;
  transform: translateX(-50%);
}
.secArea.section01 .col .col-box:first-of-type .txt-ja p {
  line-height: 3.5rem;
  font-size: 1.6rem;
  margin-bottom: 30px;
}
.secArea.section01 .col .col-box:first-of-type .txt-ja .btnArea .btn {
  min-width: 280px;
}
.secArea.section01 .col .col-box:first-of-type .txt-en {
  width: 100%;
  -ms-writing-mode: lr-tb;
  writing-mode: horizontal-tb;
  -webkit-writing-mode: horizontal-tb;
  text-align: center;
  letter-spacing: 0px;
  padding: 20px 30px;
  border-top: solid 1px #D3A357;
}
.secArea.section01 .col .col-box:first-of-type .txt-en h3 {
  font-size: 1.6rem;
  margin: 30px 0 15px;
}
.secArea.section01 .col .col-box:first-of-type .txt-en P {
  font-size: 1.4rem;
  text-align: left;
  line-height: 2.2rem;
  margin-bottom: 20px;
}
.secArea.section01 .col .col-box:first-of-type .txt-en .btnArea .btn {
  min-width: 180px;
  padding: 6px 25px;
  font-size: 1.2rem;
}
.secArea.section02 {
  position: relative;
}
.secArea.section02 .col .col-box {
  margin-bottom: 0;
  width: 100%;
}
.secArea.section02 .col .col-box:nth-of-type(2) {
  padding: 0 15px;
}
.secArea.section02 .col .col-box:nth-of-type(2) ul {
  margin-bottom: 20px;
}
.secArea.section02 .col .col-box:nth-of-type(2) ul li a {
  display: inline-block;
  padding: 15px 40px 15px 0;
  border-bottom: dashed 1px #ccc;
  width: 100%;
}
.secArea.section02 .col .col-box:nth-of-type(2) ul li a span {
  display: block;
}
.secArea.section02 .col .col-box:nth-of-type(2) ul li a .date {
  display: block;
  font-size: 1.2rem;
  margin-bottom: 5px;
  letter-spacing: 1px;
}
.secArea.section02 .col .col-box:nth-of-type(2) ul li a:hover {
  color: #1B6E8E;
  text-decoration: underline;
}
.secArea.section02::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  width: 581px;
  height: 160px;
  background: url("../img/top/img_kumo02.png") no-repeat 0 0;
  background-size: contain;
  left: -230px;
  top: -40px;
  animation: cloudmove02 40s linear infinite;
  -webkit-animation: cloudmove02 40s linear infinite;
  -moz-animation: cloudmove02 40s linear infinite;
}
@keyframes cloudmove02 {
  0% {
    left: -230px;
  }
  100% {
    left: 100%;
  }
}
@-webkit-keyframes cloudmove02 {
  0% {
    left: -230px;
  }
  100% {
    left: 100%;
  }
}
@-moz-keyframes cloudmove02 {
  0% {
    left: -230px;
  }
  100% {
    left: 100%;
  }
}
.secArea.section03 {
  position: relative;
  background: #F7F3E8;
  overflow: hidden;
  /*margin-bottom:90px;*/
  /*&::after{
      content: "";
      display: block;
      position:absolute;
      bottom:-90px;
      width: 100%;
      height: 90px;
      background: url(../img/top/bg_saku.png) repeat 0 0;
  }*/
  /*20210705 がたつきをなくす*/
  /*20210705 がたつきをなくす*/
  /*TOPスライダーの画像高さそろえる*/
}
.secArea.section03 ul {
  margin-bottom: 40px;
}
.secArea.section03 ul li { /*ここには幅・高さの指定しない*/ }
.secArea.section03 ul li a {
  background: #fff;
  margin: 0 12px;
  display: block;
  height: 100%;
}
.secArea.section03 ul li a .img {
  max-width: 264px;
  margin-bottom: 30px;
}
.secArea.section03 ul li a .img img {
  width: 100%;
  height: auto;
}
.secArea.section03 ul li a .txt {
  text-align: center;
  padding-bottom: 20px;
}
.secArea.section03 ul li a .txt span {
  display: block;
}
.secArea.section03 ul li a .txt .canceled {
  color: #fff;
  font-size: 1.4rem;
  width: 10rem;
  margin: 10px auto;
  background-color: #E9380E;
}
.secArea.section03 ul li a .txt .ttl {
  font-size: 2rem;
  margin-bottom: 20px;
}
.secArea.section03 ul li a .txt .date {
  line-height: 1.6;
}
.secArea.section03 ul li a:hover {
  box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.1);
}
.secArea.section03 .btnArea {
  margin-bottom: 30px;
  /*20210705 がたつきをなくす*/
  /*20210705 がたつきをなくす*/
}
.secArea.section03 .btnArea:last-of-type {
  margin-bottom: 60px;
}
.secArea.section03 .btnArea .nextMonth,
.secArea.section03 .btnArea .prevMonth {
  display: none;
  width: 70px;
  text-align: center;
  color: #D3A357;
  font-size: 4rem;
  font-weight: bold;
  transition: 0.3s;
  border: solid 1px #F7F3E8;
  vertical-align: middle;
  cursor: pointer;
}
.secArea.section03 .btnArea .nextMonth:hover,
.secArea.section03 .btnArea .prevMonth:hover {
  border: solid 1px #D3A357;
}
.secArea.section03 .btnArea .month {
  width: 100px;
  display: inline-block;
  font-size: 3rem;
  vertical-align: middle;
}
.secArea.section03 .btnArea .month br {
  line-height: 0;
}
.secArea.section03 .btnArea .month {
  writing-mode: vertical-rl;
  min-height: 3em;
  width: auto;
}
.secArea.section03 .loopSlider ul li a {
  min-height: 410px;
}
.secArea.section03 .top_event-slider ul li a .img {
  position: relative;
  height: 180px;
  overflow: hidden;
}
.secArea.section03 .top_event-slider ul li a .img img {
  position: absolute;
  display: block;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  bottom: 0;
  right: 0;
  height: 100%;
}
.secArea.section04, .secArea.section05, .secArea.section06 {
  position: relative;
  padding: 60px 0 0 0;
}
.secArea.section04 .col, .secArea.section05 .col, .secArea.section06 .col {
  position: relative;
  display: block;
}
.secArea.section04 .col .col-box, .secArea.section05 .col .col-box, .secArea.section06 .col .col-box {
  width: 100%;
  align-items: center;
  margin-bottom: 0;
}
.secArea.section04 .col .col-box .txt-ja, .secArea.section05 .col .col-box .txt-ja, .secArea.section06 .col .col-box .txt-ja {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  padding-left: 48px;
  position: relative;
}
.secArea.section04 .col .col-box .txt-ja h2, .secArea.section05 .col .col-box .txt-ja h2, .secArea.section06 .col .col-box .txt-ja h2 {
  font-size: 2.4rem;
  display: flex;
  flex-direction: column-reverse;
  align-items: flex-start;
  margin: 0 50px 20px 50px;
}
.secArea.section04 .col .col-box .txt-ja h2 span, .secArea.section05 .col .col-box .txt-ja h2 span, .secArea.section06 .col .col-box .txt-ja h2 span {
  margin-left: 16px;
  padding: 30px 1px 30px 3px;
}
.secArea.section04 .col .col-box .txt-ja p, .secArea.section05 .col .col-box .txt-ja p, .secArea.section06 .col .col-box .txt-ja p {
  line-height: 3.6rem;
  font-size: 1.6rem;
  margin: 30px 0 0 30px;
}
.secArea.section04 .col .col-box .txt-ja .btnArea, .secArea.section05 .col .col-box .txt-ja .btnArea, .secArea.section06 .col .col-box .txt-ja .btnArea {
  display: flex;
  justify-content: flex-end;
  position: absolute;
  left: 0;
  z-index: 1;
}
.secArea.section04 .col .col-box .txt-ja .btnArea .btn, .secArea.section05 .col .col-box .txt-ja .btnArea .btn, .secArea.section06 .col .col-box .txt-ja .btnArea .btn {
  padding: 30px 12px 60px 12px;
  min-width: auto;
  transform: translateY(77%);
  white-space: nowrap;
}
.secArea.section04 .col .col-box .txt-ja .btnArea .btn i, .secArea.section05 .col .col-box .txt-ja .btnArea .btn i, .secArea.section06 .col .col-box .txt-ja .btnArea .btn i {
  right: 50%;
  bottom: 20px;
  transform: translateX(50%) rotate(90deg);
}
.secArea.section04 .col .col-box .txt-ja .btnArea .btn:hover i, .secArea.section05 .col .col-box .txt-ja .btnArea .btn:hover i, .secArea.section06 .col .col-box .txt-ja .btnArea .btn:hover i {
  bottom: 10px;
}
.secArea.section04 .col .col-box:first-of-type, .secArea.section05 .col .col-box:first-of-type, .secArea.section06 .col .col-box:first-of-type {
  padding-top: 40px;
}
.secArea.section04 .col .col-box:last-of-type, .secArea.section05 .col .col-box:last-of-type, .secArea.section06 .col .col-box:last-of-type {
  height: 320px;
  position: relative;
  overflow: hidden;
}
.secArea.section04 .col .col-box:last-of-type video, .secArea.section05 .col .col-box:last-of-type video, .secArea.section06 .col .col-box:last-of-type video {
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
}
.secArea.section04:before, .secArea.section04:after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
}
.secArea.section04:before {
  width: 381px;
  height: 81px;
  background: url("../img/top/img_kumo01.png") no-repeat 0 0;
  background-size: contain;
  right: -90px;
  top: 20px;
  animation: cloudmove01 40s linear infinite;
  -webkit-animation: cloudmove01 40s linear infinite;
  -moz-animation: cloudmove01 40s linear infinite;
}
@keyframes cloudmove01 {
  0% {
    right: -90px;
  }
  100% {
    right: 100%;
  }
}
@-webkit-keyframes cloudmove01 {
  0% {
    right: -90px;
  }
  100% {
    right: 100%;
  }
}
@-moz-keyframes cloudmove01 {
  0% {
    right: -90px;
  }
  100% {
    right: 100%;
  }
}
.secArea.section04:after {
  width: 581px;
  height: 160px;
  background: url("../img/top/img_kumo02.png") no-repeat 0 0;
  background-size: contain;
  left: -230px;
  bottom: -60px;
  animation: cloudmove02 40s linear infinite;
  -webkit-animation: cloudmove02 40s linear infinite;
  -moz-animation: cloudmove02 40s linear infinite;
}
@keyframes cloudmove02 {
  0% {
    left: -230px;
  }
  100% {
    left: 100%;
  }
}
@-webkit-keyframes cloudmove02 {
  0% {
    left: -230px;
  }
  100% {
    left: 100%;
  }
}
@-moz-keyframes cloudmove02 {
  0% {
    left: -230px;
  }
  100% {
    left: 100%;
  }
}
.secArea.section05 .col .col-box:last-of-type:before {
  content: "";
  display: block;
  position: absolute;
}
.secArea.section05 .col .col-box:last-of-type:before {
  width: 381px;
  height: 81px;
  background: url("../img/top/img_kumo01.png") no-repeat 0 0;
  background-size: contain;
  left: -340px;
  bottom: 20px;
  z-index: -1;
  animation: cloudmove03 40s linear infinite;
  -webkit-animation: cloudmove03 40s linear infinite;
  -moz-animation: cloudmove03 40s linear infinite;
}
@keyframes cloudmove03 {
  0% {
    left: -340px;
  }
  100% {
    left: 100%;
  }
}
@-webkit-keyframes cloudmove03 {
  0% {
    left: -340px;
  }
  100% {
    left: 100%;
  }
}
@-moz-keyframes cloudmove03 {
  0% {
    left: -340px;
  }
  100% {
    left: 100%;
  }
}
.secArea.section06 {
  margin-bottom: 60px;
}
.secArea.section06:before, .secArea.section06:after {
  content: "";
  display: block;
  position: absolute;
}
.secArea.section06:after {
  width: 581px;
  height: 160px;
  background: url("../img/top/img_kumo02.png") no-repeat 0 0;
  background-size: contain;
  right: 0px;
  top: 20px;
  z-index: -1;
  animation: cloudmove04 30s linear infinite;
  -webkit-animation: cloudmove04 30s linear infinite;
  -moz-animation: cloudmove04 30s linear infinite;
}
@keyframes cloudmove04 {
  0% {
    right: 0;
  }
  100% {
    right: 100%;
  }
}
@-webkit-keyframes cloudmove04 {
  0% {
    right: 0;
  }
  100% {
    right: 100%;
  }
}
@-moz-keyframes cloudmove04 {
  0% {
    right: 0;
  }
  100% {
    right: 100%;
  }
}
.secArea.section07, .secArea.section08, .secArea.section09 {
  height: 90vh;
  max-height: 646px;
}
.secArea.section07 .sec__inner, .secArea.section08 .sec__inner, .secArea.section09 .sec__inner {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  height: 100%;
}
.secArea.section07 .sec__inner h2, .secArea.section08 .sec__inner h2, .secArea.section09 .sec__inner h2 {
  font-size: 2.8rem;
  letter-spacing: 1px;
  margin-bottom: 40px;
}
.secArea.section07 .sec__inner h2 span, .secArea.section08 .sec__inner h2 span, .secArea.section09 .sec__inner h2 span {
  margin: 10px 0 0 0;
}
.secArea.section07 .sec__inner .img, .secArea.section08 .sec__inner .img, .secArea.section09 .sec__inner .img {
  display: none;
}
.secArea.section07 .sec__inner p, .secArea.section08 .sec__inner p, .secArea.section09 .sec__inner p {
  margin: 0 0 40px 0;
}
.secArea.section07 .sec__inner .btnArea .btn, .secArea.section08 .sec__inner .btnArea .btn, .secArea.section09 .sec__inner .btnArea .btn {
  color: #fff;
  background: rgba(0, 0, 0, 0.45);
}
.secArea.section07 {
  background: url("../img/top/bg_top_07@2x.jpg") no-repeat center center;
  background-size: cover;
}
.secArea.section08 {
  background: url("../img/top/bg_top_08@2x.jpg") no-repeat center center;
  background-size: cover;
}
.secArea.section09 {
  background: url(../img/top/bg_top_09@2x.jpg) no-repeat center center;
  background-position: center center;
  background-size: cover;
}
.secArea.section09 .gion_fes_read {
  display: block;
}

_:-ms-lang(x)::-ms-backdrop,
.secArea.section04 .col .col-box .txt-ja .btnArea .btn,
.secArea.section05 .col .col-box .txt-ja .btnArea .btn,
.secArea.section06 .col .col-box .txt-ja .btnArea .btn {
  transform: translateY(150%);
}

/* IE11 */
_:-ms-lang(x)::-ms-backdrop,
.secArea.section04 .col .col-box .txt-ja .btnArea .btn i,
.secArea.section05 .col .col-box .txt-ja .btnArea .btn i,
.secArea.section06 .col .col-box .txt-ja .btnArea .btn i {
  transform: translateX(25%) rotate(0deg);
}

/*　---------------------------------------------------　*/
/*　-------------PCレイアウト----------------------------　*/
/*　---------------------------------------------------　*/
@media screen and (min-width: 769px) {
  .hero {
    min-height: 800px;
    max-height: 100vh;
    height: 100vh;
  }
  .hero::after {
    content: "";
    position: absolute;
    display: inline-block;
    width: 18px;
    height: 18px;
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    bottom: 20px;
    left: 50%;
    transform: rotate(45deg);
  }
  .hero .txt-ja {
    text-align: center;
    flex-direction: column;
    align-items: center;
  }
  .hero .txt-ja h1 {
    width: 90px;
    margin-bottom: 140px;
  }
  .hero .txt-ja span {
    height: auto;
    margin-top: 0;
    -ms-writing-mode: lr-tb;
    writing-mode: lr-tb;
    font-size: 2rem;
  }
  .hero .latest-news {
    bottom: 50px;
    width: 660px;
    padding: 20px;
    color: #333;
    background: rgb(255, 255, 255);
    border: solid 2px #D3A357;
  }
  .hero .latest-news dl::before {
    left: 25px;
    transform: translate(0%, -50%);
  }
  .hero .latest-news dl::before dd {
    text-align: left;
  }
  .secArea {
    padding: 100px 0 60px;
  }
  .secArea .col {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .secArea .col.rev {
    flex-direction: row-reverse;
  }
  .secArea .col .col-box p {
    line-height: 3.5rem;
    font-size: 1.8rem;
    margin-left: 30px;
  }
  .secArea .col .col-box .btnArea {
    text-align: center;
  }
  .secArea .col .col-box img {
    display: block;
    width: 100%;
    height: auto;
    align-self: flex-start;
  }
  .secArea.section01 .col .col-box {
    width: 100%;
  }
  .secArea.section04, .secArea.section05, .secArea.section06 {
    padding: 60px 0;
  }
  .secArea.section04 .col, .secArea.section05 .col, .secArea.section06 .col {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    padding: 60px 0;
    max-height: 640px;
  }
  .secArea.section04 .col:hover, .secArea.section05 .col:hover, .secArea.section06 .col:hover {
    background: rgb(245, 245, 245);
    background: linear-gradient(0deg, rgb(245, 245, 245) 0%, rgb(255, 255, 255) 50%, rgb(245, 245, 245) 100%);
  }
  .secArea.section04 .col:hover .col-box .txt-ja .btnArea .btn, .secArea.section05 .col:hover .col-box .txt-ja .btnArea .btn, .secArea.section06 .col:hover .col-box .txt-ja .btnArea .btn {
    background: #222A3F;
    color: #fff;
  }
  .secArea.section04 .col .col-box, .secArea.section05 .col .col-box, .secArea.section06 .col .col-box {
    width: 50%;
  }
  .secArea.section04 .col .col-box .wrap_movie, .secArea.section05 .col .col-box .wrap_movie, .secArea.section06 .col .col-box .wrap_movie {
    margin-bottom: 0;
  }
  .secArea.section04 .col .col-box:first-of-type, .secArea.section05 .col .col-box:first-of-type, .secArea.section06 .col .col-box:first-of-type {
    /*padding-top:60px;*/
  }
  .secArea.section04 .col .col-box:last-of-type, .secArea.section05 .col .col-box:last-of-type, .secArea.section06 .col .col-box:last-of-type {
    position: relative;
    height: 27vw;
  }
  .secArea.section04 .col .col-box:last-of-type .txt-ja h2, .secArea.section05 .col .col-box:last-of-type .txt-ja h2, .secArea.section06 .col .col-box:last-of-type .txt-ja h2 {
    flex-direction: column;
    margin: 0 20px;
  }
  .secArea.section04 .col .col-box:last-of-type .txt-ja h2 span, .secArea.section05 .col .col-box:last-of-type .txt-ja h2 span, .secArea.section06 .col .col-box:last-of-type .txt-ja h2 span {
    margin-right: 20px;
  }
  .secArea.section04 .col .col-box:last-of-type .txt-ja p, .secArea.section05 .col .col-box:last-of-type .txt-ja p, .secArea.section06 .col .col-box:last-of-type .txt-ja p {
    margin: 70px 0 0 30px;
  }
  .secArea.section04 .col.rev, .secArea.section05 .col.rev, .secArea.section06 .col.rev {
    flex-direction: row-reverse;
  }
}
/*ボタンアニメ*/
@media screen and (min-width: 961px) {
  .secArea.section01 .col {
    flex-direction: row-reverse;
  }
  .secArea.section01 .col .col-box {
    width: 48%;
  }
  .secArea.section01 .col .col-box:first-of-type {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 0 10% 0 0;
  }
  .secArea.section01 .col .col-box:first-of-type .txt-ja {
    height: 500px;
    padding-bottom: 30px;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    letter-spacing: 2px;
    text-align: left;
  }
  .secArea.section01 .col .col-box:first-of-type .txt-ja h2 {
    margin-left: 40px;
    padding-right: 120px;
    position: relative;
    text-align: left;
    transform: none;
  }
  .secArea.section01 .col .col-box:first-of-type .txt-ja h2::before {
    top: 0;
    left: 100px;
  }
  .secArea.section01 .col .col-box:first-of-type .txt-ja p {
    line-height: 3.8rem;
    font-size: 1.8rem;
    margin: 30px 0 0 30px;
  }
  .secArea.section01 .col .col-box:first-of-type .txt-ja .btnArea {
    display: flex;
    justify-content: flex-end;
  }
  .secArea.section01 .col .col-box:first-of-type .txt-ja .btnArea .btn {
    min-width: auto;
    padding: 30px 10px;
    display: flex;
    align-items: center;
    height: 200px;
  }
  .secArea.section01 .col .col-box:first-of-type .txt-ja .btnArea .btn i {
    bottom: 20px;
    right: 50%;
    transform: translateX(50%) rotate(90deg);
  }
  .secArea.section01 .col .col-box:first-of-type .txt-ja .btnArea .btn:hover i {
    bottom: 10px;
  }
  .secArea.section01 .col .col-box:first-of-type .txt-en {
    width: 100%;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    -webkit-writing-mode: horizontal-tb;
    padding: 0 1.5vw;
  }
  .secArea.section01 .col .col-box:first-of-type .txt-en h3 {
    font-size: 1.6rem;
    margin: 30px 0;
  }
  .secArea.section01 .col .col-box:first-of-type .txt-en P {
    margin: 0 0 20px 0;
  }
  .secArea.section01 .col .col-box:first-of-type .txt-en .btnArea {
    text-align: center;
  }
  .secArea.section01 .col .col-box:first-of-type .txt-en .btnArea .btn i {
    font-size: 1.6rem;
  }
  .secArea.section01 .col .col-box:nth-of-type(2) {
    text-align: left;
  }
  .secArea.section01 .col .col-box:nth-of-type(2) img {
    max-width: 860px;
  }
  .secArea.section02 {
    margin-bottom: 60px;
  }
  .secArea.section02 .col {
    flex-wrap: wrap;
    position: relative;
    margin-bottom: 0;
  }
  .secArea.section02 .col .col-box:nth-of-type(1) {
    display: flex;
    align-items: center;
    width: 32%;
    padding: 0 0 0 10%;
  }
  .secArea.section02 .col .col-box:nth-of-type(1) h2 {
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-align: center;
    letter-spacing: 14px;
  }
  .secArea.section02 .col .col-box:nth-of-type(1) h2 span {
    padding: 30px 1px 30px 3px;
    margin-right: 16px;
  }
  .secArea.section02 .col .col-box:nth-of-type(2) {
    width: 68%;
    position: relative;
    padding-right: 20vw;
  }
  .secArea.section02 .col .col-box:nth-of-type(2) .btnArea {
    text-align: center;
  }
  .secArea.section02 .col .col-box:nth-of-type(2) ul {
    margin-bottom: 60px;
  }
  .secArea.section02 .col .col-box:nth-of-type(2) ul li a {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    border: none;
  }
  .secArea.section02 .col .col-box:nth-of-type(2) ul li a .date {
    margin: 0 3% 0 0;
    min-width: 120px;
    font-size: 1.4rem;
  }
  .secArea.section02 .col .col-box:nth-of-type(2) ul li a .txt {
    width: 70%;
  }
  .secArea.section02 .col:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 80%;
    transform: translateY(-50%);
    background: url("../img/top/img_top_02.jpg") no-repeat 0 0;
    background-size: cover;
    background-position: 85% 50%;
    width: 20vw;
    height: calc(100% + 120px);
  }
  .secArea.section02::before {
    top: -100px;
  }
  .secArea.section03 {
    /*20210705 がたつきをなくす*/
    /*20210705 がたつきをなくす*/
    /*TOPスライダーの画像高さそろえる*/
  }
  .secArea.section03 ul li { /*ここには幅・高さの指定しない*/ }
  .secArea.section03 ul li a {
    margin: 0 15px;
  }
  .secArea.section03 ul li a .img {
    max-width: 337px;
  }
  .secArea.section03 .btnArea {
    /*20210705 がたつきをなくす*/
    /*20210705 がたつきをなくす*/
  }
  .secArea.section03 .btnArea .nextMonth,
.secArea.section03 .btnArea .prevMonth {
    display: inline-block;
  }
  .secArea.section03 .btnArea .month {
    margin: 0 auto;
    line-height: 40px;
  }
  .secArea.section03 .btnArea .month br {
    line-height: 0;
  }
  .secArea.section03 .btnArea .month {
    writing-mode: vertical-rl;
    min-height: 3em;
    width: auto;
  }
  .secArea.section03 .loopSlider ul li a {
    min-height: 410px;
  }
  .secArea.section03 .top_event-slider ul li a .img {
    position: relative;
    height: 253px;
    overflow: hidden;
  }
  .secArea.section07, .secArea.section08, .secArea.section09 {
    padding: 120px 0;
    max-height: 100%;
    height: auto;
  }
  .secArea.section07 .sec__inner, .secArea.section08 .sec__inner, .secArea.section09 .sec__inner {
    position: relative;
    background-color: #fff;
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    flex-direction: row;
  }
  .secArea.section07 .sec__inner h2, .secArea.section08 .sec__inner h2, .secArea.section09 .sec__inner h2 {
    color: #333;
    font-size: 3.2rem;
    width: 38%;
    margin-bottom: 0;
  }
  .secArea.section07 .sec__inner h2 span, .secArea.section08 .sec__inner h2 span, .secArea.section09 .sec__inner h2 span {
    display: inline-block;
    padding: 4px 20px 6px 20px;
  }
  .secArea.section07 .sec__inner .img, .secArea.section08 .sec__inner .img, .secArea.section09 .sec__inner .img {
    display: block;
    width: 62%;
    transform: translate(0%, -15%);
    transition: 0.3s;
  }
  .secArea.section07 .sec__inner .img img, .secArea.section08 .sec__inner .img img, .secArea.section09 .sec__inner .img img {
    width: 60vw;
  }
  .secArea.section07 .sec__inner p, .secArea.section08 .sec__inner p, .secArea.section09 .sec__inner p {
    display: block;
    position: absolute;
    top: -15%;
    left: 110%;
    z-index: 1;
  }
  .secArea.section07 .sec__inner p span, .secArea.section08 .sec__inner p span, .secArea.section09 .sec__inner p span {
    position: absolute;
    display: inline-block;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    height: 255px;
    width: 36px;
    line-height: 34px;
    letter-spacing: 4px;
    font-size: 2.4rem;
    font-weight: 100;
    padding: 15px 2px;
  }
  .secArea.section07 .sec__inner p span:nth-of-type(1), .secArea.section08 .sec__inner p span:nth-of-type(1), .secArea.section09 .sec__inner p span:nth-of-type(1) {
    top: -20px;
    right: 0px;
  }
  .secArea.section07 .sec__inner p span:nth-of-type(2), .secArea.section08 .sec__inner p span:nth-of-type(2), .secArea.section09 .sec__inner p span:nth-of-type(2) {
    top: 20px;
    right: 45px;
  }
  .secArea.section07 .sec__inner p span:nth-of-type(3), .secArea.section08 .sec__inner p span:nth-of-type(3), .secArea.section09 .sec__inner p span:nth-of-type(3) {
    top: -10px;
    right: 90px;
  }
  .secArea.section07 .sec__inner p span.archi_txt, .secArea.section08 .sec__inner p span.archi_txt, .secArea.section09 .sec__inner p span.archi_txt {
    height: 230px;
  }
  .secArea.section07 .sec__inner p span.archi_lasttxt, .secArea.section08 .sec__inner p span.archi_lasttxt, .secArea.section09 .sec__inner p span.archi_lasttxt {
    min-height: 13em;
  }
  .secArea.section07 .sec__inner .btnArea, .secArea.section08 .sec__inner .btnArea, .secArea.section09 .sec__inner .btnArea {
    display: none;
  }
  .secArea.section07 .sec__inner:hover .img, .secArea.section08 .sec__inner:hover .img, .secArea.section09 .sec__inner:hover .img {
    box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.04);
  }
  .secArea.section07 .sec__inner .gionBtn, .secArea.section08 .sec__inner .gionBtn, .secArea.section09 .sec__inner .gionBtn {
    display: block;
    margin-top: 25px;
  }
  .secArea.section07 .sec__inner .gionBtn a, .secArea.section08 .sec__inner .gionBtn a, .secArea.section09 .sec__inner .gionBtn a {
    position: relative;
    display: inline-block;
    padding: 15px 60px 15px 40px;
    border: 1px solid #aaa;
    background: #fff;
    text-align: center;
    vertical-align: middle;
    transition: 0.3s;
    min-width: 280px;
    font-size: 20px;
  }
  .secArea.section07 .sec__inner .gionBtn a:hover, .secArea.section08 .sec__inner .gionBtn a:hover, .secArea.section09 .sec__inner .gionBtn a:hover {
    color: #fff;
    background: #222A3F;
  }
  .secArea.section07 .sec__inner .gionBtn a:hover i, .secArea.section08 .sec__inner .gionBtn a:hover i, .secArea.section09 .sec__inner .gionBtn a:hover i {
    right: 10px;
  }
  .secArea.section07 .sec__inner .gionBtn a i, .secArea.section08 .sec__inner .gionBtn a i, .secArea.section09 .sec__inner .gionBtn a i {
    font-size: 2.4rem;
    vertical-align: middle;
    position: absolute;
    display: inline-block;
    padding: 16px;
    right: 20px;
    bottom: 50%;
    transform: translateY(50%);
    transition: 0.3s;
  }
  .secArea.section07 .sec__inner .gionBtn a i::before, .secArea.section08 .sec__inner .gionBtn a i::before, .secArea.section09 .sec__inner .gionBtn a i::before {
    position: absolute;
    display: inline-block;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .secArea.section07 {
    background: url("../img/top/bg_washi_r.jpg") no-repeat 0 0;
  }
  .secArea.section07 p span {
    background: #F7F3E8;
    color: #333;
  }
  .secArea.section08 {
    background: url("../img/top/bg_washi_r.jpg") no-repeat 0 0;
  }
  .secArea.section08 p span {
    background-color: #E9380E;
    color: #fff;
  }
  .secArea.section09 {
    background: url(../img/top/bg_yasakamon.png), url(../img/top/bg_washi.jpg);
    background-repeat: no-repeat, repeat;
    background-position: 100%, 50%;
  }
  .secArea.section09 .sec__inner .img {
    writing-mode: tb-rl;
  }
  .secArea.section09 .sec__inner .gion_fes_read {
    display: none;
  }
  /* IE11 */
  _:-ms-lang(x)::-ms-backdrop,
.secArea.section01 .col .col-box:first-of-type .txt-ja .btnArea .btn i {
    transform: translateX(30%) rotate(0deg);
  }
  _:-ms-lang(x)::-ms-backdrop,
.secArea.section01 .col .col-box:first-of-type .txt-ja h2::before {
    -ms-writing-mode: lr-bt;
    writing-mode: vertical-lr;
  }
}
@media screen and (min-width: 961px) and (max-width: 1660px) {
  .secArea.section07 .sec__inner p {
    left: 100%;
  }
}
.gionBtn {
  display: none;
}

.sp_gionBtn {
  margin-top: 30px;
}

.yumin {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

.wf-hannari {
  font-family: "Hannari", serif;
}

.wf-sawarabimincho {
  font-family: "Sawarabi Mincho", sans-serif;
}

.col {
  display: block;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
.col.rev {
  flex-direction: row-reverse;
}
.col .col-box {
  width: 100%;
  margin: 0 0 30px 0;
}
.col .col-box img {
  width: 100%;
  height: auto;
}

.sec__read {
  font-size: 1.6rem;
  line-height: 2.2;
}
.sec__read .en {
  text-align: left;
  font-size: 1.2rem;
  line-height: 1.6;
  padding: 0 20px;
}

.section.sec02 {
  background: url("../img/worship _pray/ritual/img_yaku_sec02.png") no-repeat center center;
  background-size: cover;
}

.section.sec03 .sec__inner:last-of-type {
  margin-bottom: 0;
}
.section.sec03 .sec__inner:last-of-type .col {
  margin-bottom: 0;
}
.section.sec03 .sec__inner:last-of-type .col .col-box {
  margin-bottom: 0;
}

.yaku .mainHeader .pageTitle, .yakudoshi_bg .mainHeader .pageTitle {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 1;
}
.yaku .mainHeader .pageTitle::before, .yakudoshi_bg .mainHeader .pageTitle::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  display: block;
  background: rgba(0, 0, 0, 0.3);
}

/*人生儀礼_bg*/
.yaku_ritual_bg .mainHeader .pageTitle {
  background-image: url(/wp-content/themes/yasaka/img/worship_pray/ritual/img_ritual_main_sp.png);
}

/*厄年*/
.yakudoshi_bg .mainHeader .pageTitle {
  background-image: url(/wp-content/themes/yasaka/img/worship_pray/ritual/img_yaku_main.png);
}

/*七五三*/
.shichigosan_bg .mainHeader .pageTitle {
  background-image: url(/wp-content/themes/yasaka/img/worship_pray/ritual/shichigosan/img_shichigosan_main_sp.png);
}

.tblArea-yaku {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding: 0 20px;
}
.tblArea-yaku .tbl-yaku {
  width: 100%;
  border: solid 1px #ccc;
  margin-bottom: 15px;
  background: #fff;
}
.tblArea-yaku .tbl-yaku dt {
  text-align: center;
  color: #fff;
  padding: 12px 0;
}
.tblArea-yaku .tbl-yaku.men dt {
  background: #7E8E94;
}
.tblArea-yaku .tbl-yaku.women dt {
  background: #CF998C;
}
.tblArea-yaku .tbl-yaku dd ul {
  padding: 10px 15px;
}
.tblArea-yaku .tbl-yaku dd ul li {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  border-bottom: dashed 1px #ccc;
}
.tblArea-yaku .tbl-yaku dd ul li span {
  padding: 10px 0 10px 5%;
  width: 45%;
}
.tblArea-yaku .tbl-yaku dd ul li:last-child {
  border: none;
}

/*テーブルプレス*/
.tbl_column {
  display: block;
  width: 100%;
}
.tbl_column .tablepress {
  border-collapse: collapse;
  border-spacing: 0;
  border-top: solid 1px #ccc;
  border-bottom: solid 1px #ccc;
  margin-bottom: 15px;
  background: #fff;
  min-width: 100%;
  max-width: 100%;
  /*&:nth-child(even){
  	tbody{
  		tr{
  			border-right: none;
  		}
  	}
  }*/
}
.tbl_column .tablepress tr th {
  text-align: center;
  color: #fff;
  padding: 12px 0;
}
.tbl_column .tablepress:nth-child(even) tr th {
  background: #7e8e94;
}
.tbl_column .tablepress:nth-child(odd) tr th {
  background: #cf998c;
}
.tbl_column .tablepress tbody tr {
  display: flex;
  justify-content: center;
  padding: 0 5vw;
  border-right: solid 1px #ccc;
  border-left: solid 1px #ccc;
}
.tbl_column .tablepress tbody tr:hover td {
  background: #fff;
}
.tbl_column .tablepress tbody tr td {
  width: 45%;
  padding: 10px 0 10px 5%;
  display: block;
  border-bottom: dashed 1px #ccc;
  border-top: none;
}
.tbl_column .tablepress tbody tr:nth-last-child(1) td {
  border-bottom: none;
}

.yaku .btnArea {
  padding: 0;
}
.yaku .btnArea .btn.tel {
  width: 100%;
  position: relative;
  font-size: 1.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #F7F3E8;
  color: #000;
  padding: 20px;
  border: none;
}
.yaku .btnArea .btn.tel:hover {
  background: #222A3F;
  color: #fff;
}
.yaku .btnArea .btn.tel span {
  padding: 0 0 0 40px;
  position: relative;
  display: inline-block;
  margin-right: 20px;
}
.yaku .btnArea .btn.tel span::before {
  content: "\e918";
  font-family: "icomoon";
  position: absolute;
  top: 50%;
  left: -8px;
  font-size: 4rem;
  transform: translateY(-50%);
}
.yaku .btnArea .btn.tel i {
  font-size: 3.2rem;
}

.flowList .flowList-box {
  border: solid 1px #aaa;
  margin-bottom: 20px;
}
.flowList .flowList-box .flowList-ttl {
  font-size: 2.4rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 0 0 40px 0;
}
.flowList .flowList-box .flowList-ttl span:first-of-type {
  display: inline-block;
  width: 60px;
  height: 60px;
  text-align: center;
  line-height: 60px;
  color: #fff;
  background-color: #000;
  margin-right: 0.5em;
}
.flowList .flowList-box .flowList-ttl span:last-of-type {
  flex: 1;
  font-size: 2rem;
  line-height: 1.2;
  padding-right: 20px;
}
.flowList .flowList-box .flowList-box__inner {
  padding: 20px;
  background: #F7F3E8;
}
.flowList .flowList-box .flowList-box__inner h5 {
  font-weight: bold;
  font-size: 1.8rem;
  margin-bottom: 15px;
}
.flowList .flowList-box .flowList-box__inner .col {
  padding: 0;
}
.flowList .flowList-box .flowList-box__inner .col:first-of-type {
  border-bottom: solid 1px #ccc;
  margin-bottom: 30px;
}
.flowList .flowList-box .flowList-box__inner .col:last-of-type .col-box {
  margin-bottom: 0;
}
.flowList .col {
  margin-bottom: 0;
  padding: 0 20px;
}
.flowList .col .col-box:first-of-type {
  margin-bottom: 15px;
}
.flowList .col .col-box:last-of-type {
  text-align: right;
}

.ritualList {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  border: solid 1px #ccc;
}
.ritualList li {
  display: flex;
  align-items: center;
  justify-content: center;
  border: solid 1px #ccc;
  text-align: center;
  width: 33.3333333333%;
  height: auto;
  position: relative;
}
.ritualList li::before {
  content: "";
  display: block;
  padding-top: 100%;
}
.ritualList li a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  flex: 1;
}
.ritualList li a::before {
  content: "";
  vertical-align: middle;
  width: 0px;
  display: inline-block;
}
.ritualList li a > * {
  vertical-align: middle;
  display: inline-block;
}
.ritualList li i {
  font-size: 14vw;
}
.ritualList li span {
  font-size: 1.4rem;
  display: block;
}

*::-ms-backdrop, .ritualList li {
  width: 33.33%; /* IE11 */
}

/*　---------------------------------------------------　*/
/*　-------------PCレイアウト----------------------------　*/
/*　---------------------------------------------------　*/
@media screen and (min-width: 769px) {
  .col {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    flex-direction: row;
    margin-bottom: 40px;
  }
  .col .col-box {
    width: 47%;
  }
  .col .col-box img {
    width: 100%;
    height: auto;
    max-width: 433px;
  }
  .col .col-box .btnArea {
    margin: 0;
  }
  .sec__read {
    text-align: center;
    font-size: 2.2rem;
    line-height: 2.4;
  }
  .sec__read .en {
    font-size: 1.6rem;
    line-height: 1.8;
    max-width: 800px;
    margin: 0 auto;
  }
  .tblArea-yaku {
    font-size: 2.2rem;
    max-width: 1200px;
    margin: 0 auto;
  }
  .tblArea-yaku .tbl-yaku {
    width: 50%;
  }
  .tblArea-yaku .tbl-yaku.men {
    border-right: none;
  }
  .tblArea-yaku .tbl-yaku dd ul {
    padding: 10px 5vw;
  }
  .tblArea-yaku .tbl-yaku dd ul li span {
    width: 45%;
  }
  /*テーブルプレス*/
  .tbl_column {
    display: flex;
    align-items: flex-start;
  }
  .tbl_column .tablepress {
    min-width: 50%;
    max-width: 50%;
  }
  .tbl_column .tablepress:nth-child(even) tbody tr {
    border-right: none;
  }
  /*人生儀礼_bg*/
  .yaku_ritual_bg .mainHeader .pageTitle {
    background-image: url(/wp-content/themes/yasaka/img/worship_pray/ritual/img_ritual_main.png);
  }
  /*七五三*/
  .shichigosan_bg .mainHeader .pageTitle {
    background-image: url(/wp-content/themes/yasaka/img/worship_pray/ritual/shichigosan/img_shichigosan_main.png);
  }
  .yaku .btnArea .btn.tel {
    font-size: 2.4rem;
    width: auto;
    padding: 30px 0;
  }
  .yaku .btnArea .btn.tel:active {
    pointer-events: none;
  }
  .yaku .btnArea .btn.tel:hover {
    pointer-events: active;
  }
  .yaku .btnArea .btn.tel i {
    display: none;
  }
  .flowList {
    margin: 0 40px 80px;
  }
  .flowList .flowList-box {
    margin-bottom: 40px;
  }
  .flowList .flowList-box .col {
    padding: 0 50px;
  }
  .flowList .flowList-box .flowList-box__inner {
    margin: 0 40px 40px;
    padding: 40px;
  }
  .flowList .flowList-box .flowList-box__inner .col:last-of-type .col-box:last-of-type {
    margin-bottom: 0;
  }
  .flowList .flowList-box .flowList-ttl span:last-of-type {
    font-size: 2.4rem;
  }
  .ritualList li {
    width: 25%;
  }
  .ritualList li a {
    transition: 0.1s;
    background-color: #fff;
  }
  .ritualList li a i {
    transition: 0.1s;
    font-size: 9vw;
  }
  .ritualList li a span {
    font-size: 1.8rem;
  }
  .ritualList li a:hover {
    background: #F7F3E8;
  }
  .ritualList li a:hover i {
    color: #333F6F;
  }
}
.sec_shichigosan {
  position: relative;
}

.sec_shichigosan01 {
  background: #FFD5D5 url(../img/worship_pray/ritual/shichigosan/img_shichigosan_wave01.png);
  background-position: bottom left;
  background-repeat: repeat-x;
  position: relative;
}
.sec_shichigosan01 section {
  max-width: 1240px;
  position: relative;
  z-index: 1;
  padding: 50px 20px 230px;
}

.sec_shichigosan02 {
  background: #F7F3E8 url(../img/worship_pray/ritual/shichigosan/img_shichigosan_wave02.png);
  background-position: bottom left;
  background-repeat: repeat-x;
  position: relative;
  overflow: hidden;
}
.sec_shichigosan02 section {
  max-width: 1240px;
  position: relative;
  z-index: 1;
  padding: 80px 20px 100px;
}
.sec_shichigosan02::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 2380px;
  left: 0;
  width: 100%;
  height: 1443px;
  background: url(../img/worship_pray/ritual/shichigosan/img_shichigosan_pink.png);
  background-repeat: no-repeat;
}

.sec_shichigosan03 {
  background: #E2D9BF url(../img/worship_pray/ritual/shichigosan/img_shichigosan_wave03.png);
  background-position: bottom left;
  background-repeat: repeat-x;
  position: relative;
}
.sec_shichigosan03 section {
  max-width: 1240px;
  position: relative;
  z-index: 1;
  padding: 130px 20px 100px;
}
.sec_shichigosan03 .sec__read02 {
  text-align: center;
}

.sec_shichigosan04 {
  background: #F7F3E8;
  position: relative;
}
.sec_shichigosan04 section {
  max-width: 1240px;
  position: relative;
  z-index: 1;
  padding: 130px 20px 125px;
}

.area_shichigosan01 h3 {
  text-align: center;
  position: relative;
  font-size: 2.5rem;
  margin: 0 auto 30px;
  line-height: 1.5;
}
.area_shichigosan01 h3::after {
  content: "";
  display: block;
  background: #5C9398;
  height: 2px;
  width: 180px;
  margin: 20px auto 0;
}
.area_shichigosan01 .box_shichigosan01 {
  position: relative;
  background: #fff;
  border-radius: 10px;
  padding: 30px 23px 20px;
  margin: 110px 0 120px;
}
.area_shichigosan01 .box_shichigosan01::before {
  content: "";
  display: inline-block;
  width: 233px;
  height: 144px;
  background: #fff;
  border-radius: 100%;
  position: absolute;
  top: -42px;
  left: 50%;
  transform: translate(-50%, 0%);
  -webkit-transform: translate(-50%, 0%);
  -ms-transform: translate(-50%, 0%);
  -moz-transform: translate(-50%, 0%);
}
.area_shichigosan01 .box_shichigosan01 .img {
  text-align: center;
  margin: 0 auto 20px;
}
.area_shichigosan01 .box_shichigosan01 .age {
  font-size: 4.5rem;
  font-weight: normal;
  margin: 0 auto;
  text-align: center;
}
.area_shichigosan01 .box_shichigosan01 .age span {
  font-size: 3rem;
  margin: 0 0 0 7px;
  display: inline-block;
}
.area_shichigosan01 .box_shichigosan01 .text {
  padding: 0 0 20px;
}
.area_shichigosan01 .box_shichigosan01 .text p {
  margin: 0 auto 20px;
}
.area_shichigosan01 .box_shichigosan01 .text01 {
  font-size: 1.4rem;
  margin: 0 auto 10px;
  text-align: center;
}
.area_shichigosan01 .box_shichigosan01 .text01 span {
  text-align: left;
  display: inline-block;
}
.area_shichigosan01 .box_shichigosan01 h4 {
  font-size: 1.8rem;
  text-align: left;
  margin: 0 auto 15px;
  background: #F7F3E8;
  padding: 5px 10px;
}
.area_shichigosan01 .box_shichigosan01 h4 span {
  font-size: 1.8rem;
  display: inline-block;
  vertical-align: 5px;
}
.area_shichigosan01 .box_shichigosan01 .photograph_point {
  position: absolute;
  bottom: -220px;
  left: 0;
  width: 100%;
  text-align: center;
}
.area_shichigosan01 .box_shichigosan01 .photograph_point img {
  max-width: 100%;
  width: 320px;
}
.area_shichigosan01 .box_shichigosan01 .box_shichigosan01_inner h4 {
  font-size: 3.3rem;
  text-align: center;
  padding: 5px 13px;
}
.area_shichigosan01 .box_shichigosan01 .box_shichigosan01_inner .item {
  position: relative;
  padding: 0 0 40px;
  margin: 0 auto 25px;
}
.area_shichigosan01 .box_shichigosan01 .box_shichigosan01_inner .item::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background-image: linear-gradient(to right, #E2D9BF, #E2D9BF 3px, transparent 3px, transparent 3px);
  background-size: 9px 2px;
  background-repeat: repeat-x;
}
.area_shichigosan01 .box_shichigosan01 .box_shichigosan01_inner .item:last-child {
  margin: 0;
}
.area_shichigosan01 .box_shichigosan01 .box_shichigosan01_inner .item:last-child::after {
  display: none;
}

.head_shichigosan {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto 45px;
  max-width: 302px;
}
.head_shichigosan img {
  max-width: 51px;
  margin: 0 0 50px;
}
.head_shichigosan img:last-child {
  max-width: 45px;
  margin: 0 0 40px;
}
.head_shichigosan h3 {
  text-align: center;
  font-size: 11vw;
  font-weight: bold;
  color: #5C9398;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1;
  letter-spacing: 5px;
}
.head_shichigosan h3 > span {
  display: block;
  text-align: center;
  line-height: 1;
  letter-spacing: 1px;
}
.head_shichigosan h3 > span > span {
  display: inline-block;
  padding: 7px 7px 8px;
  background: #F7F3E8;
  font-size: 1.3rem;
}
.head_shichigosan h3 p {
  color: #d35757;
}

/*新型コロナウイルスの影響により七五三 中止*/
.shichigosan_cancel {
  margin: 0 auto 45px;
}
.shichigosan_cancel .calcel_txt {
  color: #E9380E;
  text-align: center;
  font-size: 2rem;
}

.plan_shichigosan {
  background: #fff;
  border-radius: 10px;
  padding: 40px 15px 15px;
  margin: 0 auto 20px;
}
.plan_shichigosan h4 {
  background: #CBA391;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  font-size: 3rem;
  padding: 0px 5px 5px 15px;
  position: relative;
  margin: 0 auto 25px;
}
.plan_shichigosan h4 img {
  position: absolute;
  top: -37px;
  left: -37px;
  display: none;
}
.plan_shichigosan h4 .mini {
  display: inline-block;
  margin: 0 10px 0 2px;
  font-size: 2.4rem;
  letter-spacing: 2px;
}
.plan_shichigosan h4 .type {
  background: #FFB2B2;
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 17px;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  padding: 5px;
  font-size: 1.4rem;
  vertical-align: 5px;
}
.plan_shichigosan h4 .type .topleft {
  position: absolute;
  top: 0;
  left: -6px;
  display: inline-block;
  border-top: 21px solid #ffb2b3;
  border-left: 6px solid transparent;
}
.plan_shichigosan h4 .type .topright {
  position: absolute;
  top: 0;
  right: -6px;
  display: inline-block;
  border-top: 21px solid #ffb2b3;
  border-right: 6px solid transparent;
}
.plan_shichigosan h4 .type .rightbottom {
  position: absolute;
  bottom: 0;
  right: -6px;
  display: inline-block;
  border-bottom: 21px solid #ffb2b3;
  border-right: 6px solid transparent;
}
.plan_shichigosan h4 .type .leftbottom {
  position: absolute;
  bottom: 0;
  left: -6px;
  display: inline-block;
  border-bottom: 21px solid #ffb2b3;
  border-left: 6px solid transparent;
}
.plan_shichigosan ul {
  margin: 0 0 20px;
}
.plan_shichigosan ul li {
  font-size: 1.8rem;
  margin: 0 0 10px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
}
.plan_shichigosan .text {
  font-size: 1.4rem;
  margin: 0 0 15px;
}
.plan_shichigosan .price {
  text-align: right;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  margin: 0 0 20px;
}
.plan_shichigosan .price .price_inner {
  display: inline-block;
  background: linear-gradient(rgba(255, 178, 178, 0) 85%, rgb(255, 178, 178) 85%, rgb(255, 178, 178));
}
.plan_shichigosan .price .price_inner .big {
  font-size: 3.6rem;
  line-height: 1.5;
}
.plan_shichigosan .price .price_inner .mini {
  font-size: 1.6rem;
}
.plan_shichigosan .price .price_inner .tax {
  font-size: 1.1rem;
}
.plan_shichigosan .plan_shichigosan_inner {
  padding: 0 0 40px;
}
.plan_shichigosan .plan_shichigosan_inner .item {
  width: 100%;
}
.plan_shichigosan .plan_shichigosan_inner .item.item_left {
  margin: 0 0 10px;
}
.plan_shichigosan .plan_shichigosan_inner .item.item_left .item_left_inner .price {
  text-align: right;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  margin: 0 0 30px;
}
.plan_shichigosan .plan_shichigosan_inner .item.item_left .item_left_inner .price .price_inner {
  display: inline-block;
  background: none;
}
.plan_shichigosan .plan_shichigosan_inner .item.item_left .item_left_inner .price .price_inner .big {
  font-size: 3.5rem;
}
.plan_shichigosan .plan_shichigosan_inner .item.item_left .item_left_inner .price .price_inner .mini {
  font-size: 1.6rem;
}
.plan_shichigosan .plan_shichigosan_inner .item.item_left .item_left_inner .price .price_inner .tax {
  font-size: 1.1rem;
}
.plan_shichigosan .plan_shichigosan_inner .item.item_right {
  margin: 0 0 10px;
}
.plan_shichigosan .plan_shichigosan_inner .item.item_right .img {
  position: relative;
  text-align: center;
}
.plan_shichigosan .plan_shichigosan_inner .item.item_right .item_right_inner {
  background: #F7F3E8;
  text-align: center;
  padding: 15px 0 20px;
}
.plan_shichigosan .plan_shichigosan_inner .item.item_right .item_right_inner .el_title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: normal;
  font-size: 2rem;
  border-bottom: 1px solid #E2D9BF;
  padding: 0 0 10px;
  margin: 0 0 13px;
}
.plan_shichigosan .plan_shichigosan_inner .item.item_right .item_right_inner .el_title span {
  display: inline-block;
  font-size: 1.6rem;
}
.plan_shichigosan .plan_shichigosan_inner .item.item_right .item_right_inner .text01 {
  font-size: 1.8rem;
}
.plan_shichigosan .plan_shichigosan_inner .item.item_right .item_right_inner .text02 {
  font-size: 3rem;
  line-height: 1;
  margin: 5px 0 10px;
}
.plan_shichigosan .plan_shichigosan_inner .item.item_right .item_right_inner .text03 {
  font-size: 1.6rem;
}
.plan_shichigosan .plan_shichigosan_inner h4 {
  font-size: 3.9rem;
}
.plan_shichigosan .plan_shichigosan_inner h4 .mini {
  font-size: 2.5rem;
}

.costume_shichigosan {
  margin: 60px 0;
  position: relative;
}
.costume_shichigosan::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url(../img/worship_pray/ritual/shichigosan/icon_shichigosan_nami_sp.svg);
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: top 60px center;
  position: absolute;
  top: 0;
  left: 0;
}
.costume_shichigosan h3 {
  display: block;
  margin: 0 auto 40px;
  text-align: center;
}
.costume_shichigosan h3 img {
  max-width: 32px;
}
.costume_shichigosan .img {
  position: relative;
  text-align: center;
  margin: 0 0 23px;
}
.costume_shichigosan .img img {
  margin: auto;
}
.costume_shichigosan .img p {
  color: #fff;
  text-align: left;
}

.product_shichigosan .item {
  margin: 0 0 35px;
}
.product_shichigosan .item .img {
  background: #fff;
  padding: 36px;
  border-radius: 10px;
  text-align: center;
  margin: 0 0 25px;
}
.product_shichigosan .item h4 {
  font-size: 2rem;
  margin: 0 0 20px;
}
.product_shichigosan .item h4 span {
  display: inline-block;
  margin: 0 0 0 40px;
  background: #5C9398;
  color: #fff;
  padding: 3px 17px;
  font-size: 1.3rem;
  border-radius: 20px;
}

.sec_shichigosan03 section .sec__ttl .mini {
  display: block;
  font-family: "Noto Serif JP", serif;
  background: none;
  color: #333;
  font-size: 2rem;
  padding: 0;
  margin: 10px 0 0 0;
  line-height: 1;
}
.sec_shichigosan03 > img {
  display: none;
}

.flow_shichigosan {
  margin: 60px 0 0;
}
.flow_shichigosan .item {
  position: relative;
  max-width: 323px;
  margin: 0 auto 30px;
}
.flow_shichigosan .item .text {
  text-align: center;
  padding: 30px 0 0;
}
.flow_shichigosan .item .text .num {
  color: #DE9898;
  font-size: 6.2rem;
  margin: 0 0 5px;
}
.flow_shichigosan .item .text p {
  font-size: 1.8rem;
  font-weight: bold;
}
.flow_shichigosan .item .text p > span {
  display: block;
  font-size: 1.2rem;
  margin: 5px 0 0;
  font-weight: normal;
}
.flow_shichigosan .item .img {
  position: absolute;
}
.flow_shichigosan .item .root {
  display: none;
}
.flow_shichigosan .item .deco {
  position: absolute;
}
.flow_shichigosan .item.item01 {
  margin: 0 auto 26px;
}
.flow_shichigosan .item.item01 .text {
  background: url(../img/worship_pray/ritual/shichigosan/img_shichigosan_flow01_bg.png);
  background-size: 100% auto;
  background-position: top center;
  background-repeat: no-repeat;
  min-height: 288px;
}
.flow_shichigosan .item.item01 .img {
  right: -15px;
  bottom: -30px;
}
.flow_shichigosan .item.item01 .deco {
  max-width: 88px;
  position: absolute;
  left: 0;
  bottom: -40px;
}
.flow_shichigosan .item.item02 {
  margin: 0 auto 86px;
}
.flow_shichigosan .item.item02 .text {
  background: url(../img/worship_pray/ritual/shichigosan/img_shichigosan_flow02_bg.png);
  background-size: 100% auto;
  background-position: top center;
  background-repeat: no-repeat;
  min-height: 305px;
}
.flow_shichigosan .item.item02 .img {
  left: 80px;
  bottom: -55px;
}
.flow_shichigosan .item.item02 .deco {
  max-width: 64px;
  position: absolute;
  right: -20px;
  bottom: -80px;
}
.flow_shichigosan .item.item03 .text {
  background: url(../img/worship_pray/ritual/shichigosan/img_shichigosan_flow03_bg.png);
  background-size: 100% auto;
  background-position: top center;
  background-repeat: no-repeat;
  min-height: 320px;
  padding: 40px 0 0;
}
.flow_shichigosan .item.item03 .img {
  right: -20px;
  top: 30px;
}
.flow_shichigosan .item.item03 .deco {
  max-width: 81px;
  position: absolute;
  left: 0px;
  bottom: -50px;
}
.flow_shichigosan .item.item04 {
  margin: 0 auto 66px;
}
.flow_shichigosan .item.item04 .text {
  background: url(../img/worship_pray/ritual/shichigosan/img_shichigosan_flow04_bg.png);
  background-size: 100% auto;
  background-position: top center;
  background-repeat: no-repeat;
  min-height: 329px;
}
.flow_shichigosan .item.item04 .img {
  left: 80px;
  bottom: -40px;
}
.flow_shichigosan .item.item04 .deco {
  max-width: 104px;
  position: absolute;
  right: -100px;
  bottom: -90px;
}
.flow_shichigosan .item.item05 {
  margin: 0 auto 100px;
}
.flow_shichigosan .item.item05 .text {
  background: url(../img/worship_pray/ritual/shichigosan/img_shichigosan_flow05_bg.png);
  background-size: 100% auto;
  background-position: top center;
  background-repeat: no-repeat;
  min-height: 304px;
  padding: 35px 0 0;
}
.flow_shichigosan .item.item05 .text p span {
  text-align: left;
  margin: 5px auto 0;
  max-width: 180px;
}
.flow_shichigosan .item.item05 .img {
  left: 100px;
  bottom: -74px;
}
.flow_shichigosan .item.item05 .deco {
  display: none;
}

.sec_shichigosan04 section {
  position: relative;
}
.sec_shichigosan04 section .bg_parts03 {
  display: block;
  margin: 50px auto 60px;
}

.faq_shichigosan {
  padding: 0 0 40px;
}
.faq_shichigosan dl {
  padding: 24px 35px;
  background: #fff;
  margin: 0 auto 14px;
}
.faq_shichigosan dl dt {
  position: relative;
  font-size: 1.4rem;
  font-weight: normal;
  color: #1B6E8E;
  border-bottom: 1px solid #DBDBDB;
  padding: 0 10px 15px 40px;
  margin: 0 0 15px;
}
.faq_shichigosan dl dt::before {
  content: "Q";
  display: inline-block;
  position: absolute;
  color: #1B6E8E;
  font-size: 3.2rem;
  line-height: 1;
  top: -7px;
  left: 7px;
}
.faq_shichigosan dl dd {
  position: relative;
  font-size: 1.4rem;
  font-weight: normal;
  padding: 0 10px 0 40px;
}
.faq_shichigosan dl dd::before {
  content: "A";
  display: inline-block;
  position: absolute;
  color: #AA5443;
  font-size: 3.2rem;
  line-height: 1;
  top: -7px;
  left: 7px;
}

.tel_shichigosan {
  display: block;
  background: #DC7676;
  max-width: 728px;
  text-align: center;
  color: #fff;
  margin: auto;
  padding: 32px 0 32px 15px;
  transition: 0.3s;
}
.tel_shichigosan p {
  font-size: 1.6rem;
}
.tel_shichigosan div {
  line-height: 1;
  font-size: 2.5rem;
  margin: 0;
  position: relative;
  display: inline-block;
}
.tel_shichigosan div::before {
  content: "\e918";
  font-family: "icomoon";
  position: absolute;
  top: 50%;
  left: -40px;
  font-size: 4rem;
  transform: translateY(-80%);
}
.tel_shichigosan div span {
  display: block;
  font-size: 1.4rem;
  margin: 11px 0 0;
}
.tel_shichigosan:hover {
  background: #222A3F;
}

/*　---------------------------------------------------　*/
/*　-------------PCレイアウト----------------------------　*/
/*　---------------------------------------------------　*/
@media screen and (min-width: 414px) {
  .head_shichigosan img {
    max-width: 61px;
    margin: 0 0 50px;
  }
  .head_shichigosan img:last-child {
    max-width: 55px;
    margin: 0 0 40px;
  }
  .head_shichigosan h3 {
    font-size: 4.3rem;
  }
  .head_shichigosan h3 > span > span {
    padding: 7px 15px 8px;
    font-size: 1.6rem;
  }
  .plan_shichigosan h4 {
    font-size: 3.9rem;
  }
  .plan_shichigosan h4 .mini {
    margin: 0 25px 0 2px;
    font-size: 2.4rem;
  }
  .plan_shichigosan h4 .type {
    background: #FFB2B2;
    display: inline-block;
    padding: 5px 25px;
    font-size: 1.4rem;
    vertical-align: 8px;
  }
  .plan_shichigosan h4 .type .topleft {
    top: 0;
    left: -6px;
    border-top: 21px solid #ffb2b3;
    border-left: 6px solid transparent;
  }
  .plan_shichigosan h4 .type .topright {
    top: 0;
    right: -6px;
    border-top: 21px solid #ffb2b3;
    border-right: 6px solid transparent;
  }
  .plan_shichigosan h4 .type .rightbottom {
    bottom: 0;
    right: -6px;
    border-bottom: 21px solid #ffb2b3;
    border-right: 6px solid transparent;
  }
  .plan_shichigosan h4 .type .leftbottom {
    bottom: 0;
    left: -6px;
    border-bottom: 21px solid #ffb2b3;
    border-left: 6px solid transparent;
  }
}
@media screen and (min-width: 769px) {
  .sec_shichigosan {
    position: relative;
  }
  .sec_shichigosan::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    background: url(../img/worship_pray/ritual/shichigosan/img_shichigosan_deco01.png);
    background-size: 100% auto;
  }
  .sec_shichigosan02 section {
    padding: 80px 20px 100px;
  }
  .sec_shichigosan02::after {
    top: auto;
    bottom: 400px;
  }
  .sec_shichigosan03 section {
    padding: 140px 20px 80px;
  }
  .sec_shichigosan04 section {
    padding: 160px 20px 175px;
    position: relative;
  }
  .sec_shichigosan04 section .sec__ttl {
    margin: 0 auto 77px;
  }
  .sec_shichigosan04 section .bg_parts03 {
    position: absolute;
    top: 80px;
    right: 50px;
    margin: 0;
  }
  .area_shichigosan01 h3 {
    font-size: 3rem;
  }
  .area_shichigosan01 .box_shichigosan01 {
    padding: 40px 24px 20px;
  }
  .area_shichigosan01 .box_shichigosan01 .text {
    padding: 0 30px 20px;
  }
  .area_shichigosan01 .box_shichigosan01 h4 {
    font-size: 2rem;
    font-weight: bold;
    padding: 5px 24px;
  }
  .area_shichigosan01 .box_shichigosan01 .photograph_point {
    position: absolute;
    bottom: -220px;
    left: 0;
    width: 100%;
    text-align: center;
  }
  .area_shichigosan01 .box_shichigosan01 .box_shichigosan01_inner {
    display: flex;
    justify-content: space-between;
  }
  .area_shichigosan01 .box_shichigosan01 .box_shichigosan01_inner .item {
    width: calc(33.3333333333% - 64px);
    margin: 0 32px 30px;
    padding: 0;
  }
  .area_shichigosan01 .box_shichigosan01 .box_shichigosan01_inner .item::after {
    top: 0;
    right: -32px;
    bottom: auto;
    left: auto;
    width: 2px;
    height: 100%;
    background-image: linear-gradient(to top, #E2D9BF, #E2D9BF 3px, transparent 3px, transparent 3px);
    background-size: 2px 9px;
    background-repeat: repeat-y;
  }
  .area_shichigosan01 .box_shichigosan01 .box_shichigosan01_inner .item .item_inner {
    display: flex;
    flex-wrap: wrap;
  }
  .area_shichigosan01 .box_shichigosan01 .box_shichigosan01_inner .item .item_inner > * {
    width: 100%;
  }
  .area_shichigosan01 .box_shichigosan01 .box_shichigosan01_inner .item .item_inner .img {
    order: 1;
    margin: 0;
  }
  .area_shichigosan01 .box_shichigosan01 .box_shichigosan01_inner .item .item_inner .age {
    order: 2;
  }
  .area_shichigosan01 .box_shichigosan01 .box_shichigosan01_inner .item .item_inner .text01 {
    order: 3;
    margin: 0 auto 20px;
  }
  .area_shichigosan01 .box_shichigosan01 .box_shichigosan01_inner .item .item_inner h4 {
    font-size: 3.3rem;
    order: 4;
  }
  .area_shichigosan01 .box_shichigosan01 .box_shichigosan01_inner .item .item_inner h4 span {
    vertical-align: 5px;
  }
  .area_shichigosan01 .box_shichigosan01 .box_shichigosan01_inner .item .item_inner .text02 {
    order: 5;
  }
  .area_shichigosan01 .box_shichigosan01 .box_shichigosan01_inner .item:last-child::after {
    display: none;
  }
  .area_shichigosan01 .box_shichigosan01 .box_shichigosan01_inner .item:last-child {
    margin: 0 32px 30px;
  }
  .area_shichigosan02 {
    padding: 70px 0 0;
  }
  .head_shichigosan {
    margin: 0 auto 70px;
    max-width: 688px;
  }
  .head_shichigosan img {
    max-width: 100%;
    margin: 0;
  }
  .head_shichigosan img:last-child {
    max-width: 100%;
    margin: 0;
  }
  .head_shichigosan h3 {
    font-size: 6rem;
    margin: 0 10px;
    line-height: 1;
    letter-spacing: 5px;
  }
  .head_shichigosan h3 > span > span {
    padding: 5px 10px;
    font-size: 2.2rem;
  }
  /*新型コロナウイルスの影響により七五三 中止*/
  .shichigosan_cancel {
    margin: 0 auto 70px;
  }
  .plan_shichigosan {
    padding: 50px 50px 15px;
    margin: 0 auto 20px;
  }
  .plan_shichigosan h4 {
    font-size: 5.4rem;
    padding: 0px 30px 5px;
    margin: 0 auto 25px;
  }
  .plan_shichigosan h4 img {
    display: inline-block;
  }
  .plan_shichigosan h4 .mini {
    margin: 0 30px 0 2px;
    font-size: 3.4rem;
    letter-spacing: 2px;
  }
  .plan_shichigosan h4 .type {
    padding: 5px 20px;
    font-size: 2rem;
    vertical-align: 12px;
    position: static;
    transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
  }
  .plan_shichigosan h4 .type .topleft {
    top: 0;
    left: -6px;
    border-top: 21px solid #ffb2b3;
    border-left: 6px solid transparent;
  }
  .plan_shichigosan h4 .type .topright {
    top: 0;
    right: -6px;
    border-top: 21px solid #ffb2b3;
    border-right: 6px solid transparent;
  }
  .plan_shichigosan h4 .type .rightbottom {
    bottom: 0;
    right: -6px;
    border-bottom: 21px solid #ffb2b3;
    border-right: 6px solid transparent;
  }
  .plan_shichigosan h4 .type .leftbottom {
    bottom: 0;
    left: -6px;
    border-bottom: 21px solid #ffb2b3;
    border-left: 6px solid transparent;
  }
  .plan_shichigosan ul {
    margin: 0 0 20px;
  }
  .plan_shichigosan ul li {
    font-size: 2rem;
    margin: 0 0 5px;
  }
  .plan_shichigosan .text {
    font-size: 1.4rem;
    margin: 0 0 15px;
  }
  .plan_shichigosan .price {
    text-align: right;
    margin: 0 0 20px;
  }
  .plan_shichigosan .price .price_inner {
    background: linear-gradient(rgba(255, 178, 178, 0) 85%, rgb(255, 178, 178) 85%, rgb(255, 178, 178));
  }
  .plan_shichigosan .price .price_inner .big {
    font-size: 6.2rem;
    line-height: 1.5;
  }
  .plan_shichigosan .price .price_inner .mini {
    font-size: 3.2rem;
  }
  .plan_shichigosan .price .price_inner .tax {
    font-size: 2.1rem;
  }
  .plan_shichigosan .plan_shichigosan_inner {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    padding: 0;
  }
  .plan_shichigosan .plan_shichigosan_inner .item {
    width: 100%;
  }
  .plan_shichigosan .plan_shichigosan_inner .item.item_left {
    margin: 0 0 10px;
    max-width: 639px;
  }
  .plan_shichigosan .plan_shichigosan_inner .item.item_left .item_left_inner .price {
    text-align: right;
    margin: 0 0 30px;
  }
  .plan_shichigosan .plan_shichigosan_inner .item.item_left .item_left_inner .price .price_inner .big {
    font-size: 4.2rem;
  }
  .plan_shichigosan .plan_shichigosan_inner .item.item_left .item_left_inner .price .price_inner .mini {
    font-size: 1.9rem;
  }
  .plan_shichigosan .plan_shichigosan_inner .item.item_left .item_left_inner .price .price_inner .tax {
    font-size: 1.2rem;
  }
  .plan_shichigosan .plan_shichigosan_inner .item.item_right {
    padding: 0 0 0 30px;
    margin: 0 0 10px;
    max-width: 441px;
  }
  .plan_shichigosan .plan_shichigosan_inner .item.item_right .img {
    text-align: right;
    margin-top: -135px;
  }
  .plan_shichigosan .plan_shichigosan_inner .item.item_right .item_right_inner {
    text-align: center;
    padding: 15px 0 20px;
  }
  .plan_shichigosan .plan_shichigosan_inner .item.item_right .item_right_inner .el_title {
    font-size: 2rem;
    border-bottom: 1px solid #E2D9BF;
    padding: 0 0 10px;
    margin: 0 0 13px;
  }
  .plan_shichigosan .plan_shichigosan_inner .item.item_right .item_right_inner .el_title span {
    font-size: 1.6rem;
  }
  .plan_shichigosan .plan_shichigosan_inner .item.item_right .item_right_inner .text01 {
    font-size: 1.8rem;
  }
  .plan_shichigosan .plan_shichigosan_inner .item.item_right .item_right_inner .text02 {
    font-size: 3rem;
    line-height: 1;
    margin: 5px 0 10px;
  }
  .plan_shichigosan .plan_shichigosan_inner .item.item_right .item_right_inner .text03 {
    font-size: 1.6rem;
  }
  .plan_shichigosan .plan_shichigosan_inner h4 {
    font-size: 3.8rem;
  }
  .plan_shichigosan .plan_shichigosan_inner h4 .mini {
    font-size: 2.8rem;
  }
  .product_shichigosan {
    display: flex;
    justify-content: space-between;
  }
  .product_shichigosan.item2 {
    justify-content: space-evenly;
  }
  .product_shichigosan .item {
    max-width: calc(33.3333333333% - 15px);
    margin: 0 0 35px;
  }
  .product_shichigosan .item .img {
    margin: 0 0 25px;
  }
  .product_shichigosan .item h4 {
    font-size: 2.3rem;
    margin: 0 0 20px;
  }
  .product_shichigosan .item h4 span {
    margin: 0px 0 0 14px;
    padding: 3px 12px;
    font-size: 1.3rem;
    vertical-align: 3px;
  }
  .costume_shichigosan {
    margin: 60px 0 80px;
  }
  .costume_shichigosan h3 {
    margin: auto;
    padding: 0;
    text-align: right;
    max-width: 32%;
    margin-left: 0;
  }
  .costume_shichigosan h3 img {
    max-width: 100%;
  }
  .costume_shichigosan .img {
    margin-top: -80px;
  }
  .sec_shichigosan03 {
    position: relative;
  }
  .sec_shichigosan03 section .sec__ttl .mini {
    display: inline-block;
    font-size: 2.8rem;
    margin: 0 0 0 5px;
    padding: 0;
  }
  .flow_shichigosan {
    margin: 60px 0 0;
  }
  .flow_shichigosan .item {
    position: relative;
    max-width: 919px;
    margin: 0 auto 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .flow_shichigosan .item .text {
    width: 50%;
    text-align: center;
    padding: 55px 0 0;
  }
  .flow_shichigosan .item .text .num {
    font-size: 8rem;
    margin: 0;
  }
  .flow_shichigosan .item .text p {
    font-size: 2.4rem;
  }
  .flow_shichigosan .item .text p > span {
    font-size: 1.6rem;
  }
  .flow_shichigosan .item .img {
    width: 50%;
    position: static;
  }
  .flow_shichigosan .item .img img {
    margin: auto;
  }
  .flow_shichigosan .item .root {
    display: inline-block;
    position: absolute;
    z-index: 1;
  }
  .flow_shichigosan .item .deco {
    position: absolute;
  }
  .flow_shichigosan .item.item01 {
    margin: 0 auto;
  }
  .flow_shichigosan .item.item01 .text {
    background-size: auto 100%;
    background-position: top center;
    background-repeat: no-repeat;
    min-height: 366px;
    padding-right: 25px;
  }
  .flow_shichigosan .item.item01 .deco {
    max-width: 100%;
    left: -228px;
    bottom: 10px;
  }
  .flow_shichigosan .item.item01 .root {
    bottom: -116px;
    right: 34%;
  }
  .flow_shichigosan .item.item02 {
    margin: 0 auto;
    align-items: flex-end;
  }
  .flow_shichigosan .item.item02 .text {
    background-size: auto 100%;
    background-position: top center;
    background-repeat: no-repeat;
    min-height: 396px;
  }
  .flow_shichigosan .item.item02 .img {
    padding: 0 0 20px;
  }
  .flow_shichigosan .item.item02 .deco {
    max-width: 100%;
    bottom: 140px;
    right: -20%;
  }
  .flow_shichigosan .item.item02 .root {
    bottom: -86px;
    right: 37%;
  }
  .flow_shichigosan .item.item03 {
    align-items: flex-start;
    margin: 0 auto;
  }
  .flow_shichigosan .item.item03 .text {
    background-size: auto 100%;
    background-position: top center;
    background-repeat: no-repeat;
    min-height: 378px;
    padding: 45px 0 0;
  }
  .flow_shichigosan .item.item03 .text p span {
    text-align: left;
    margin: 5px auto 0;
    max-width: 300px;
  }
  .flow_shichigosan .item.item03 .img img {
    margin: 0 0 0 auto;
  }
  .flow_shichigosan .item.item03 .deco {
    max-width: 81px;
    left: 0px;
    bottom: -50px;
    display: none;
  }
  .flow_shichigosan .item.item03 .root {
    bottom: -79px;
    right: 24%;
  }
  .flow_shichigosan .item.item04 {
    margin: 0 auto;
  }
  .flow_shichigosan .item.item04 .text {
    background-size: auto 100%;
    background-position: top center;
    background-repeat: no-repeat;
    min-height: 396px;
  }
  .flow_shichigosan .item.item04 .text p span {
    text-align: left;
    margin: 5px auto 0;
    max-width: 271px;
  }
  .flow_shichigosan .item.item04 .deco {
    max-width: 104px;
    right: -100px;
    bottom: -90px;
    display: none;
  }
  .flow_shichigosan .item.item04 .root {
    bottom: -119px;
    right: 30%;
  }
  .flow_shichigosan .item.item05 {
    margin: 0 auto 70px;
  }
  .flow_shichigosan .item.item05 .text {
    background-size: auto 100%;
    background-position: top center;
    background-repeat: no-repeat;
    min-height: 373px;
    padding: 35px 0 0;
  }
  .flow_shichigosan .item.item05 .text p span {
    text-align: left;
    margin: 5px auto 0;
    max-width: 240px;
  }
  .flow_shichigosan .item.item05 .deco {
    max-width: 134px;
    right: 35%;
    top: 0;
    display: block;
  }
  .flow_shichigosan .item.item_reverse .text {
    order: 2;
  }
  .flow_shichigosan .item.item_reverse .img {
    order: 1;
  }
  .tel_shichigosan {
    padding: 30px 15px 38px;
  }
  .tel_shichigosan p {
    font-size: 2.4rem;
    padding: 0 0 0 50px;
  }
  .tel_shichigosan div {
    font-size: 4.2rem;
    margin: 0;
  }
  .tel_shichigosan div img {
    vertical-align: -11px;
    margin: 0 20px 0 0;
    max-width: 100%;
  }
  .tel_shichigosan div span {
    font-size: 2.3rem;
    margin: 3px 0 0;
    padding: 0 0 0 50px;
  }
}
@media screen and (min-width: 961px) {
  .sec_shichigosan01 section {
    padding: 50px 20px 100px;
  }
  .area_shichigosan01 .box_shichigosan01 .photograph_point {
    bottom: -90px;
    right: 0;
    left: auto;
    width: 100%;
    text-align: right;
  }
  .plan_shichigosan .plan_shichigosan_inner .item.item_left {
    padding: 0 0 0 40px;
  }
  .plan_shichigosan .plan_shichigosan_inner .item.item_left h4 {
    width: calc(100% + 40px);
    margin-left: -40px;
  }
  .plan_shichigosan .plan_shichigosan_inner .item.item_left .item_left_inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
}
@media screen and (min-width: 1400px) {
  .area_shichigosan01 .box_shichigosan01 .photograph_point {
    bottom: -90px;
    right: -100px;
    left: auto;
    width: 100%;
  }
  .area_shichigosan01 .box_shichigosan01 .photograph_point img {
    width: auto;
  }
  .product_shichigosan .item {
    max-width: calc(33.3333333333% - 45px);
  }
  .product_shichigosan .item h4 {
    font-size: 3rem;
  }
  .product_shichigosan .item h4 span {
    margin: 0px 0 0 14px;
    padding: 3px 12px;
    font-size: 1.6rem;
    vertical-align: 3px;
  }
  .sec_shichigosan03 .deco01 {
    position: absolute;
    display: inline-block;
    bottom: 1070px;
    left: -120px;
  }
  .sec_shichigosan03 .deco02 {
    position: absolute;
    display: inline-block;
    bottom: 620px;
    right: -97px;
  }
  .flow_shichigosan .item.item01 .root {
    bottom: -76px;
    right: 34%;
  }
  .flow_shichigosan .item.item02 .root {
    bottom: -86px;
    right: 37%;
  }
  .flow_shichigosan .item.item03 .root {
    bottom: -39px;
    right: 24%;
  }
  .flow_shichigosan .item.item04 .root {
    bottom: -69px;
    right: 41%;
  }
  .flow_shichigosan .item.item05 .deco {
    max-width: 134px;
    right: 35%;
    top: 0;
    display: block;
  }
  .costume_shichigosan h3 {
    max-width: 38%;
  }
  .costume_shichigosan .img img {
    min-width: 1378px;
  }
}
@media screen and (min-width: 1800px) {
  .area_shichigosan01 .box_shichigosan01 .photograph_point {
    bottom: -54px;
    right: -290px;
  }
  .area_shichigosan01 .box_shichigosan01 .photograph_point img {
    width: auto;
  }
}
.visible-pc {
  display: none;
}

.visible-sp {
  display: block;
}

.sec_flow {
  display: none;
}

.secArea.ritual_contents_outer {
  position: relative;
  overflow: inherit;
  padding-top: 0;
  padding-bottom: 0;
}
.secArea.ritual_contents_outer section {
  position: relative;
  padding-top: 84px;
  padding-bottom: 0;
}
.secArea.ritual_contents_outer .deco {
  position: absolute;
  top: 0;
  left: 13px;
  margin: auto;
  width: 33px;
  height: 100%;
}
.secArea.ritual_contents_outer .deco .img_top {
  position: absolute;
  top: -15px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  width: 33px;
}
.secArea.ritual_contents_outer .deco .img_under {
  position: absolute;
  bottom: -20px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  width: 28px;
}
.secArea.ritual_contents_outer .deco::after {
  content: "";
  display: inline-block;
  width: 2px;
  height: calc(100% - 47px);
  background: #E9380E;
  position: absolute;
  top: 13px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
}

.ritual_contents {
  position: relative;
}
.ritual_contents .item {
  margin: 0 0 25px;
}
.ritual_contents .item.item01 {
  margin-bottom: 53px;
}
.ritual_contents .item.item02 {
  margin-bottom: 64px;
}
.ritual_contents .item.item03 {
  margin-bottom: 62px;
}
.ritual_contents .item.item04 {
  margin-bottom: 62px;
}
.ritual_contents .item.item05 {
  margin-bottom: 62px;
}
.ritual_contents .item.item06 {
  margin-bottom: 59px;
}
.ritual_contents .item.item07 {
  margin-bottom: 62px;
}
.ritual_contents .item.item08 {
  margin-bottom: 62px;
}
.ritual_contents .item.item09 {
  margin-bottom: 62px;
}
.ritual_contents .item.item10 {
  margin-bottom: 68px;
}
.ritual_contents .item.item11 {
  margin-bottom: 65px;
}
.ritual_contents .item.item12 {
  padding-bottom: 70px;
  margin-bottom: 0;
}
.ritual_contents .item .textArea {
  order: 1;
  width: 100%;
  min-width: auto;
  padding-left: 53px;
}
.ritual_contents .item .textArea .title {
  margin-bottom: 13px;
  position: relative;
  text-align: left;
}
.ritual_contents .item .textArea .title img {
  display: inline-block;
  margin-bottom: 25px;
  position: relative;
  z-index: 1;
}
.ritual_contents .item .textArea .title span {
  display: inline-block;
  font-size: 28px;
  letter-spacing: 3px;
  padding: 0 7px;
  background: #f7f3e8;
  position: relative;
  z-index: 1;
}
.ritual_contents .item .textArea .title::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 12px;
  left: -54px;
  width: 20px;
  height: 20px;
  border-radius: 100%;
  background: #D4B401;
}
.ritual_contents .item .textArea .title::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 23px;
  left: -30px;
  width: 15%;
  height: 2px;
  background-image: linear-gradient(to right, #D4B401, #D4B401 2px, transparent 2px, transparent 5px);
  background-size: 5px 2px;
  background-repeat: repeat-x;
  z-index: 0;
}
.ritual_contents .item .textArea .text {
  font-size: 14px;
  margin-bottom: 25px;
}
.ritual_contents .item .textArea .text p {
  margin-bottom: 25px;
}
.ritual_contents .item .textArea .table {
  margin-bottom: 25px;
  padding-top: 24px;
}
.ritual_contents .item .textArea .table > div {
  font-size: 20px;
  margin-bottom: 15px;
  text-align: center;
  font-weight: 500;
}
.ritual_contents .item .textArea .table table {
  width: 100%;
  max-width: 490px;
  margin: 0 auto 30px;
  border-top: 1px solid #9A9A9A;
  border-left: 1px solid #9A9A9A;
}
.ritual_contents .item .textArea .table table tr th {
  vertical-align: middle;
  text-align: center;
  background: #F5E5E1;
  border-right: 1px solid #9A9A9A;
  border-bottom: 1px solid #9A9A9A;
  font-size: 14px;
  font-weight: 500;
  width: 43%;
  padding: 8px 5px;
}
.ritual_contents .item .textArea .table table tr td {
  vertical-align: middle;
  text-align: center;
  background: #fff;
  border-right: 1px solid #9A9A9A;
  border-bottom: 1px solid #9A9A9A;
  font-size: 14px;
  padding: 8px 5px;
}
.ritual_contents .item .textArea .table table tr td.cell1 {
  width: 25%;
}
.ritual_contents .item .textArea .table table tr td.cell2 {
  width: 32%;
}
.ritual_contents .item .img {
  order: 2;
  width: 100%;
  text-align: center;
  margin-bottom: 25px;
  padding: 0 0 0 53px;
}
.ritual_contents .item .img img {
  margin: auto;
  max-width: 100%;
  height: auto;
}
.ritual_contents .item .btnArea {
  margin-top: 36px;
  margin-bottom: 25px;
  padding-left: 53px;
}
.ritual_contents .item .btnArea a {
  min-width: 220px;
}

.ritual_reservation {
  padding-top: 109px;
  padding-bottom: 6px;
}

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

■ご参拝・ご祈祷

=======================*/
.sanpai {
  padding-bottom: 0;
}
.sanpai .mainHeader .pageTitle {
  background-image: url(/wp-content/themes/yasaka/img/worship_pray/img_sanpai_main.png);
  background-size: cover;
  background-position: 8% center;
  background-repeat: no-repeat;
  z-index: -1;
  height: 600px;
  overflow: hidden;
  position: relative;
}
.sanpai .mainHeader .pageTitle::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  display: block;
  background: rgba(0, 0, 0, 0.3);
}

.area_sanpai_guide .box_sanpai_guide .inner h3 {
  font-size: 1.8rem;
  border-left: 7px solid #1B6E8E;
  padding: 5px 0 5px 15px;
  margin: 0 0 20px;
}
.area_sanpai_guide .box_sanpai_guide .inner .text {
  font-size: 1.4rem;
  margin: 0 0 30px;
}
.area_sanpai_guide .box_sanpai_guide .inner .text p {
  margin: 0 0 10px;
}
.area_sanpai_guide .box_sanpai_guide .inner .img {
  text-align: center;
  margin: 0 0 40px;
}
.area_sanpai_guide .box_sanpai_guide .inner .img ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.area_sanpai_guide .box_sanpai_guide .inner .img ul li {
  width: calc(33.3333333333% - 10px);
  margin: 0 5px 15px;
}
.area_sanpai_guide .box_sanpai_guide .inner .img ul li p {
  text-align: center;
  font-size: 1.4rem;
  margin: 5px 0 0;
}

/*ご参拝　ご案内20240314追記*/
.area_sanpai_guide .box_sanpai_guide .inner .img.img_sanpai_guide07 img{
max-width:76%;
height:auto;
}

.area_sanpai_manner {
  background: #F7F3E8;
  padding: 25px 17px 0;
  overflow: hidden;
  margin: 0 0 32px;
}
.area_sanpai_manner h3 {
  font-size: 2.4rem;
  font-weight: normal;
  margin: 0 auto 15px;
  text-align: center;
}
.area_sanpai_manner .text {
  margin: 0 0 25px;
}
.area_sanpai_manner ul li {
  background: #fff;
  padding: 25px 17px 20px;
  text-align: center;
  margin: 0 auto 22px;
}
.area_sanpai_manner ul li p {
  font-size: 1.4rem;
  margin: 7px 0 0;
}

.sec_sanpai_type {
  padding: 0 20px;
}

.area_sanpai_type .box_sanpai_type dl {
  margin: 0 auto 30px;
}
.area_sanpai_type .box_sanpai_type dl dt {
  text-align: center;
  font-size: 1.8rem;
  font-weight: normal;
  border: 1px solid #707070;
  padding: 8px 10px;
  margin: 0 auto 17px;
}
.area_sanpai_type .box_sanpai_type dl dd {
  text-align: center;
  font-size: 1.4rem;
  margin: 0 auto 12px;
}

.sec_bnr_ritual {
  padding-top: 0;
  padding-bottom: 0;
}

.bnr_ritual_sp {
  padding: 29px 28px;
  background: #F7F3E8;
  transition: 0.3s;
  display: block;
}
.bnr_ritual_sp:hover {
  opacity: 0.7;
}
.bnr_ritual_sp .bnr_ritual_inner {
  background: url(../img/worship_pray/img_sanpai_ritual_sp.jpg);
  background-size: cover;
  background-position: top center;
  height: 340px;
  overflow: hidden;
}
.bnr_ritual_sp .bnr_ritual_inner h3 {
  writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  color: #fff;
  max-width: 150px;
  max-height: 320px;
  margin: 0;
  letter-spacing: 4px;
  position: absolute;
  top: 45%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
}
.bnr_ritual_sp .bnr_ritual_inner h3 .mini {
  display: block;
  font-size: 1.8rem;
}
.bnr_ritual_sp .bnr_ritual_inner h3 .big {
  display: block;
  font-size: 2.8rem;
  padding: 23px 0 0;
  white-space: nowrap;
}
.bnr_ritual_sp .bnr_ritual_inner h3 .en {
  display: block;
  font-size: 1rem;
  letter-spacing: 0;
  text-align: right;
}
.bnr_ritual_sp .bnr_ritual_inner i {
  text-align: center;
  color: #fff;
  font-size: 4rem;
  margin: 290px auto 0;
  display: block;
}
.bnr_ritual_sp.bnr_ritual_sp_event .bnr_ritual_inner {
  background: url(../img/event/gion/img_gion_event_sp.jpg);
  background-size: cover;
  background-position: top center;
}

.bnr_ritual_pc {
  background: #F7F3E8;
  padding: 17px;
  transition: 0.3s;
}
.bnr_ritual_pc:hover {
  opacity: 0.7;
}
.bnr_ritual_pc .bnr_ritual_inner {
  background: #fff;
  display: flex;
  justify-content: space-between;
  position: relative;
}
.bnr_ritual_pc .bnr_ritual_inner .img {
  width: 100%;
  background: url(../img/worship_pray/img_sanpai_ritual.jpg);
  background-size: cover;
  background-position: top center;
}
.bnr_ritual_pc .bnr_ritual_inner .text {
  max-width: 384px;
  min-width: 384px;
  writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  max-height: 279px;
  padding: 15px 65px 15px 30px;
  margin-left: 30px;
}
.bnr_ritual_pc .bnr_ritual_inner .text h3 {
  color: #5C9398;
  margin: 23px auto 0;
  letter-spacing: 8px;
}
.bnr_ritual_pc .bnr_ritual_inner .text h3 .mini {
  display: block;
  font-size: 2rem;
}
.bnr_ritual_pc .bnr_ritual_inner .text h3 .big {
  display: block;
  font-size: 3rem;
  padding: 18px 0 0 0;
}
.bnr_ritual_pc .bnr_ritual_inner .text h3 .en {
  display: block;
  font-size: 1.4rem;
  letter-spacing: 0;
  text-align: center;
  padding: 0 0 0 20px;
}
.bnr_ritual_pc .bnr_ritual_inner .text p {
  margin: 1em auto auto auto;
  font-size: 1.5rem;
  letter-spacing: 5px;
  line-height: 2;
}
.bnr_ritual_pc .bnr_ritual_inner .text i {
  text-align: center;
  color: #5C9398;
  font-size: 3rem;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
}
.bnr_ritual_pc.bnr_ritual_pc_event .bnr_ritual_inner .img {
  background: url(../img/event/gion/img_gion_event.jpg);
  background-size: cover;
  background-position: top center;
}

.sec_sanpai_hatsuko dl dt {
  font-size: 3rem;
  font-weight: normal;
  text-align: center;
  margin: 0 auto 50px;
  padding: 0 0 0 10%;
}
.sec_sanpai_hatsuko dl dd {
  font-size: 1.8rem;
  line-height: 2;
  margin: 0;
}

.sec_sanpai_flow {
  padding: 0 20px;
}

.area_sanpai_flow .box_sanpai_flow {
  border: 1px solid #777;
  margin: 0 auto 21px;
  position: relative;
}
.area_sanpai_flow .box_sanpai_flow .num {
  position: absolute;
  top: 10px;
  left: 10px;
}
.area_sanpai_flow .box_sanpai_flow .num span {
  display: inline-block;
  color: #fff;
  background: #000;
  font-size: 2rem;
  padding: 11px 16px;
  line-height: 1;
}
.area_sanpai_flow .box_sanpai_flow p {
  padding: 10px 0 0 63px;
  font-size: 1.4rem;
  line-height: 2;
  margin: 0 0 15px;
}
.area_sanpai_flow .box_sanpai_flow .inner {
  padding: 10px 10px 20px;
}
.area_sanpai_flow .box_sanpai_flow .inner p {
  padding: 0 0 0 53px;
}
.area_sanpai_flow .box_sanpai_flow .text dl {
  margin: 30px auto 25px;
}
.area_sanpai_flow .box_sanpai_flow .text dl dt {
  font-weight: normal;
  font-size: 1.6rem;
  padding: 0 0 10px;
  margin: 0 0 21px;
  border-bottom: 1px solid #000;
}
.area_sanpai_flow .box_sanpai_flow .text dl dd {
  font-size: 1.6rem;
}
.area_sanpai_flow .box_sanpai_flow .text .inside_text {
  padding: 0 0 0 19px;
}
.area_sanpai_flow .box_sanpai_flow .text .inside_text ul {
  margin: 0 0 33px;
}
.area_sanpai_flow .box_sanpai_flow .text .inside_text ul li {
  font-size: 1.6rem;
  margin: 0 0 3px;
}
.area_sanpai_flow .box_sanpai_flow .img {
  text-align: center;
  padding: 0 7px;
}

.btn_pdf {
  display: inline-block;
  border: 1px solid #707070;
  padding: 16px 61px 16px 25px;
  text-align: left;
  font-size: 1.6rem;
  position: relative;
  transition: 0.3s;
}
.btn_pdf i {
  display: inline-block;
  margin: 0px 0 0 10px;
  color: #ff0000;
  font-size: 20px;
  position: absolute;
  top: 50%;
  right: 25px;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
}
.btn_pdf:hover {
  background: #222A3F;
  border: 1px solid #222A3F;
  color: #fff;
}
.btn_pdf:hover i {
  color: #fff;
}

.btn_page {
  transition: 0.3s;
}
.btn_page i {
  color: #000000;
  transition: 0.3s;
}
.btn_page:hover {
  background: #222A3F;
  border: 1px solid #222A3F;
  color: #fff;
}
.btn_page:hover i {
  color: #fff;
  right: 10px;
}

.btn_page + .btn_page {
  margin: 20px 0 0 0;
}

.center {
  text-align: center;
}

.sec_sanpai_request .col-box .btn.fax {
  background: #F7F3E8;
  border: none;
  font-size: 2.5rem;
  width: 100%;
  max-width: 450px;
  padding: 35px 10px;
}
.sec_sanpai_request .col-box .btn.fax span {
  font-size: 2rem;
  display: block;
  margin: 0 auto 5px;
}
.sec_sanpai_request .col-box .btn.fax:hover {
  background: #222A3F;
}

@media screen and (max-width: 768px) {
  .xs_center {
    text-align: center;
  }
  .sanpai .mainHeader .pageTitle > img {
    transform: translate(-16%, -50%);
    width: auto;
  }
}
/*　---------------------------------------------------　*/
/*　-------------PCレイアウト----------------------------　*/
/*　---------------------------------------------------　*/
@media screen and (min-width: 769px) {
  #scrollSpy.ptn02 ul li {
    flex: inherit;
    width: 100%;
    display: block;
  }
  .visible-pc {
    display: block;
  }
  .visible-sp {
    display: none;
  }
  .sec_flow-top {
    padding-bottom: 0;
    margin: 0 auto 117px;
  }
  .sec_flow {
    display: block;
    padding-top: 9px;
    padding-right: 55px;
    padding-left: 20px;
    max-width: 1200px;
    margin: 0 auto;
    display: none;
  }
  .sec_flow .sec_flow_area {
    display: flex;
    width: 100%;
    justify-content: space-between;
    position: relative;
  }
  .sec_flow .sec_flow_area > div {
    width: calc(8.3333333333% - 15px);
    background: #F5E5E1;
    position: relative;
    min-height: 304px;
    max-height: 304px;
    z-index: 0;
  }
  .sec_flow .sec_flow_area > div span {
    font-size: 19px;
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    display: block;
    margin: auto;
    text-align: center;
    width: 25px;
    min-height: 304px;
    max-height: 304px;
    letter-spacing: 10px;
    position: absolute;
    left: 50%;
    transform: translate(-50%, 0%);
  }
  .sec_flow .sec_flow_area > div span.small {
    font-size: 16px;
  }
  .sec_flow .arrow {
    position: absolute;
    top: 50%;
    left: 20px;
    z-index: -1;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    margin: auto;
    width: calc(100% - 33px);
    text-align: right;
  }
  .sec_flow .arrow::before {
    content: "";
    background: #A25040;
    display: block;
    width: calc(100% - 50px);
    height: 2px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
  }
  .secArea.ritual_contents_outer section {
    max-width: 1240px;
    padding-top: 97px;
    padding: 80px 40px;
  }
  .secArea.ritual_contents_outer .deco {
    width: 0;
    left: auto;
  }
  .secArea.ritual_contents_outer .deco .img_top {
    top: -33px;
    width: auto;
  }
  .secArea.ritual_contents_outer .deco .img_under {
    bottom: -48px;
    width: auto;
  }
  .secArea.ritual_contents_outer .deco::after {
    height: calc(100% - 57px);
    top: 25px;
  }
  .ritual_contents .item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 110px;
  }
  .ritual_contents .item .textArea {
    width: 470px;
    max-width: 470px;
    min-width: 470px;
    padding-left: 30px;
  }
  .ritual_contents .item .textArea .title {
    text-align: left;
    margin-bottom: 22px;
  }
  .ritual_contents .item .textArea .title img {
    display: inline-block;
    vertical-align: middle;
    margin-bottom: 0;
    margin-right: 30px;
  }
  .ritual_contents .item .textArea .title span {
    display: inline-block;
    vertical-align: middle;
    font-size: 32px;
    letter-spacing: 3px;
  }
  .ritual_contents .item .textArea .title::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    left: -40px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    width: 20px;
    height: 20px;
    border-radius: 100%;
    background: #D4B401;
  }
  .ritual_contents .item .textArea .title::after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    left: -16px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    width: 15px;
    height: 2px;
    background-image: linear-gradient(to right, #D4B401, #D4B401 2px, transparent 2px, transparent 5px);
    background-size: 5px 2px;
    background-repeat: repeat-x;
  }
  .ritual_contents .item .textArea .text {
    font-size: 18px;
    margin-bottom: 30px;
  }
  .ritual_contents .item .textArea .text p {
    margin-bottom: 30px;
  }
  .ritual_contents .item .textArea .table {
    padding-top: 38px;
  }
  .ritual_contents .item .textArea .table table {
    margin: 0 auto 30px;
  }
  .ritual_contents .item .textArea .table table tr th {
    text-align: left;
    font-size: 16px;
    width: 43%;
    padding: 10px 10px 10px 30px;
  }
  .ritual_contents .item .textArea .table table tr td {
    text-align: left;
    font-size: 14px;
    padding: 10px 10px 10px 25px;
  }
  .ritual_contents .item .textArea .table table tr td.cell1 {
    width: 25%;
  }
  .ritual_contents .item .textArea .table table tr td.cell2 {
    width: 32%;
  }
  .ritual_contents .item .img {
    width: 100%;
    max-width: 373px;
    margin-bottom: 0;
    padding-left: 53px;
  }
  .ritual_contents .item .img img {
    max-width: 100%;
    height: auto;
  }
  .ritual_contents .item .btnArea {
    margin-top: 0;
    margin-bottom: 30px;
    padding: 0;
  }
  .ritual_contents .item.item12 {
    padding-bottom: 88px;
    margin-bottom: 0;
    align-items: flex-start;
  }
  .ritual_contents .item.item12 .img {
    margin: 80px 0 0;
  }
  .ritual_contents .item .btnArea a {
    min-width: 280px;
  }
  .ritual_reservation {
    padding-top: 128px;
    padding-bottom: 39px;
  }
  .ritual_reservation .col_ritual_access {
    align-items: flex-start;
  }
  /*=======================

  ■ご参拝・ご祈祷

  =======================*/
  .area_sanpai_guide {
    display: flex;
    flex-wrap: wrap;
  }
  .area_sanpai_guide .box_sanpai_guide {
    width: 50%;
    position: relative;
  }
  .area_sanpai_guide .box_sanpai_guide::before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: auto;
    right: 0;
    width: 1px;
    height: 100%;
    background-image: linear-gradient(to top, #707070, #707070 3px, transparent 3px, transparent 3px);
    background-size: 1px 9px;
    background-repeat: repeat-y;
  }
  .area_sanpai_guide .box_sanpai_guide::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-image: linear-gradient(to left, #707070, #707070 3px, transparent 3px, transparent 3px);
    background-size: 9px 1px;
    background-repeat: repeat-x;
  }
  .area_sanpai_guide .box_sanpai_guide:nth-child(even)::before {
    display: none;
  }
  .area_sanpai_guide .box_sanpai_guide:last-child::after, .area_sanpai_guide .box_sanpai_guide:nth-child(7)::after {
    display: none;
  }
  .area_sanpai_guide .box_sanpai_guide .inner {
    padding: 40px 20px 0px 20px;
  }
  .area_sanpai_guide .box_sanpai_guide .inner h3 {
    font-size: 2.4rem;
  }
  .area_sanpai_guide .box_sanpai_guide .inner .flex {
    display: flex;
  }
  .area_sanpai_guide .box_sanpai_guide .inner .flex .text {
    width: 100%;
  }
  .area_sanpai_guide .box_sanpai_guide .inner .flex .img {
    width: 50%;
    max-width: 188px;
    margin: 0 0 0 30px;
  }
  .area_sanpai_guide .box_sanpai_guide .inner .text {
    width: 100%;
    line-height: 1.8;
  }
  .area_sanpai_guide .box_sanpai_guide .inner .img {
    width: 100%;
  }
  .area_sanpai_guide .box_sanpai_guide .inner .img img {
    max-width: 100%;
  }
  .area_sanpai_guide .box_sanpai_guide .inner .img ul {
    flex-wrap: nowrap;
    justify-content: space-between;
  }
  .area_sanpai_guide .box_sanpai_guide .inner .img ul li {
    width: calc(20% - 10px);
    margin: 0 5px;
  }
  /*ご参拝　20210826追加修正*/
  .sanpai .mainHeader .pageTitle {
    background-position: center center;
  }
/*ご参拝　ご案内20240314追記*/
.area_sanpai_guide .box_sanpai_guide .inner .img.img_sanpai_guide07 img{
max-width:100%;
}
  .area_sanpai_manner {
    background: none;
    padding: 0;
    overflow: hidden;
    margin: 0 0 64px;
  }
  .area_sanpai_manner h3 {
    font-size: 2.4rem;
    margin: 0 auto 15px;
    padding: 0 10px;
    text-align: left;
  }
  .area_sanpai_manner .text {
    margin: 0 0 28px;
    padding: 0 10px;
  }
  .area_sanpai_manner ul {
    display: flex;
    justify-content: space-between;
  }
  .area_sanpai_manner ul li {
    background: none;
    padding: 0 10px;
    text-align: center;
    margin: 0 auto;
    position: relative;
  }
  .area_sanpai_manner ul li::after {
    content: "";
    display: inline-block;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 10px solid #D3A357;
    position: absolute;
    top: 50%;
    right: -10px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
  }
  .area_sanpai_manner ul li:last-child::after {
    display: none;
  }
  .area_sanpai_type {
    display: flex;
    justify-content: space-between;
  }
  .area_sanpai_type .box_sanpai_type {
    width: calc(20% - 22px);
  }
  .area_sanpai_type .box_sanpai_type dl {
    margin: 0 auto 90px;
  }
  .area_sanpai_type .box_sanpai_type dl dt {
    font-size: 2rem;
    margin: 0 auto 19px;
  }
  .area_sanpai_type .box_sanpai_type dl dd {
    text-align: left;
    font-size: 1.6rem;
    margin: 0 auto 12px;
    padding: 0 0 0 10px;
  }
  .sec_sanpai_hatsuko dl {
    max-width: 600px;
    margin: auto;
    padding: 0;
  }
  .sec_sanpai_hatsuko dl dt {
    font-size: 3rem;
    margin: 0 auto 40px;
    padding: 0;
  }
  .sec_sanpai_hatsuko dl dd {
    font-size: 1.8rem;
    line-height: 2;
    margin: 0;
  }
  .area_sanpai_flow .box_sanpai_flow .num {
    top: 20px;
    left: 20px;
  }
  .area_sanpai_flow .box_sanpai_flow .num span {
    font-size: 3.2rem;
    padding: 14px 21px;
  }
  .area_sanpai_flow .box_sanpai_flow p {
    font-size: 2rem;
    margin: 0 0 30px;
    padding: 20px 0 0 110px;
  }
  .area_sanpai_flow .box_sanpai_flow p.ma {
    margin: 8px 0 30px;
  }
  .area_sanpai_flow .box_sanpai_flow .inner {
    display: flex;
    justify-content: space-between;
    padding: 20px 20px 0;
  }
  .area_sanpai_flow .box_sanpai_flow .inner p {
    padding: 0 0 0 90px;
  }
  .area_sanpai_flow .box_sanpai_flow .inner.inner_reverse {
    padding: 20px 20px 0;
  }
  .area_sanpai_flow .box_sanpai_flow .inner.inner_reverse:last-child {
    padding-bottom: 20px;
  }
  .area_sanpai_flow .box_sanpai_flow .inner.inner_reverse .text {
    order: 2;
  }
  .area_sanpai_flow .box_sanpai_flow .inner.inner_reverse .img {
    order: 1;
    margin: 0 30px 0 0;
  }
  .area_sanpai_flow .box_sanpai_flow .text {
    width: 100%;
  }
  .area_sanpai_flow .box_sanpai_flow .text dl dt {
    font-size: 2.3rem;
    margin: 0 0 45px;
  }
  .area_sanpai_flow .box_sanpai_flow .text dl dd {
    font-size: 1.6rem;
  }
  .area_sanpai_flow .box_sanpai_flow .text .inside_text {
    margin: 80px 0 0;
  }
  .area_sanpai_flow .box_sanpai_flow .text .inside_text span {
    display: block;
    font-size: 1.6rem;
    margin: 0 0 32px;
  }
  .area_sanpai_flow .box_sanpai_flow .text .inside_text ul li {
    padding: 0 0 17px 10px;
  }
  .area_sanpai_flow .box_sanpai_flow .img {
    min-width: 402px;
    max-width: 402px;
    padding: 0;
    margin: 0 0 30px;
    text-align: right;
  }
  .btn_page + .btn_page {
    margin: 0 0 0 20px;
  }
}
@media screen and (min-width: 961px) {
  .sec_flow {
    padding-right: 85px;
    padding-left: 47px;
  }
  .sec_flow .sec_flow_area > div {
    width: calc(8.3333333333% - 30px);
    max-width: 62px;
  }
  .sec_flow .arrow {
    left: 47px;
    z-index: -1;
    width: calc(100% - 90px);
  }
  .secArea.ritual_contents_outer .deco {
    position: absolute;
    top: 0;
    margin: auto;
    height: 100%;
  }
  .secArea.ritual_contents_outer .deco .img_top {
    position: absolute;
    top: -33px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
  }
  .secArea.ritual_contents_outer .deco .img_under {
    position: absolute;
    bottom: -48px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
  }
  .secArea.ritual_contents_outer .deco::after {
    content: "";
    display: inline-block;
    width: 2px;
    height: calc(100% - 57px);
    background: #E9380E;
    position: absolute;
    top: 25px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
  }
  .ritual_contents .item .textArea {
    min-width: 650px;
    max-width: 650px;
    padding-left: 83px;
  }
  .ritual_contents .item .textArea .title::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    left: -93px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    width: 20px;
    height: 20px;
    border-radius: 100%;
    background: #D4B401;
  }
  .ritual_contents .item .textArea .title::after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    left: -85px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    width: 85px;
    height: 2px;
    background-image: linear-gradient(to right, #D4B401, #D4B401 2px, transparent 2px, transparent 5px);
    background-size: 5px 2px;
    background-repeat: repeat-x;
  }
  .ritual_contents .item .img img {
    max-width: 100%;
    height: auto;
  }
  /*=======================

  ■ご参拝・ご祈祷

  =======================*/
  .sec_sanpai_guide {
    padding: 0 20px;
  }
  .sec_sanpai_guide .area_sanpai_guide .box_sanpai_guide .inner {
    padding: 70px 40px 50px 70px;
  }
  .bnr_ritual_pc {
    padding: 17px 51px;
  }
  .bnr_ritual_pc .bnr_ritual_inner {
    justify-content: space-between;
  }
  .bnr_ritual_pc .bnr_ritual_inner .img {
    max-width: 50%;
  }
  .bnr_ritual_pc .bnr_ritual_inner .text {
    max-width: 474px;
    min-width: 474px;
    padding: 15px 113px 15px 30px;
  }
  .bnr_ritual_pc .bnr_ritual_inner .text h3 {
    margin: 23px auto 0;
    transform: translate(0%, 0%);
    -webkit-transform: translate(0%, 0%);
    -ms-transform: translate(0%, 0%);
    -moz-transform: translate(0%, 0%);
  }
  .bnr_ritual_pc .bnr_ritual_inner .text h3 .big {
    padding: 18px 0 0 10px;
  }
  .bnr_ritual_pc .bnr_ritual_inner .text h3 .en {
    padding: 0 0 0 30px;
  }
  .bnr_ritual_pc .bnr_ritual_inner .text i {
    font-size: 4rem;
    right: 48px;
  }
  .sec_sanpai_flow {
    padding: 30px 20px 0;
  }
  .area_sanpai_flow .box_sanpai_flow .inner.inner_reverse {
    padding: 20px 86px 0;
  }
  .area_sanpai_flow .box_sanpai_flow .inner.inner_reverse:last-child {
    padding-bottom: 20px;
  }
  .area_sanpai_flow .box_sanpai_flow .inner.inner_reverse .img {
    margin: 0 115px 0 0;
  }
  .area_sanpai_flow .box_sanpai_flow .text dl dt {
    font-size: 2.3rem;
    margin: 0 0 45px;
  }
  .area_sanpai_flow .box_sanpai_flow .text dl dd {
    font-size: 1.6rem;
  }
  .area_sanpai_flow .box_sanpai_flow .img {
    min-width: 402px;
    max-width: 402px;
    padding: 0;
    margin: 0 0 30px;
    text-align: right;
  }
}
.sec__read_prize {
  background: #F7F3E8;
  position: relative;
  padding: 52px 13px 55px;
  margin-bottom: 25px;
}
.sec__read_prize .deco {
  position: absolute;
  top: -10px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
}
.sec__read_prize .deco img {
  max-width: 37px;
}
.sec__read_prize .text01 {
  background: #fff;
  font-size: 14px;
  padding: 31px 16px;
  margin-bottom: 25px;
  line-height: 1.8;
}
.sec__read_prize .text01 a {
  text-decoration: underline;
  color: #1B6E8E;
}
.sec__read_prize .text02 {
  max-width: 1000px;
  margin: 0 auto;
  line-height: 1.8;
}
.sec__read_prize .text02 dt {
  font-size: 20px;
  font-weight: normal;
  border-bottom: 1px solid #D3A357;
  padding: 0 0 10px 10px;
  margin: 0 0 15px;
}
.sec__read_prize .text02 dd {
  font-size: 14px;
  padding: 0 0 35px;
}
.sec__read_prize .text02 dd.indent {
  text-indent: -30px;
  padding-left: 30px;
}

.prize .mainHeader .page_prise {
  background-image: url(/wp-content/themes/yasaka/img/prize/img_prize_all_main.png);
}
.prize .mainHeader .page_prise_all {
  background-image: url(/wp-content/themes/yasaka/img/prize/img_prize_main.png);
}
.prize .mainHeader .pageTitle {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: -1;
}
.prize .mainHeader .pageTitle::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  display: block;
  background: rgba(0, 0, 0, 0.3);
}

.sec_prize {
  padding-top: 90px;
  padding-bottom: 0;
  overflow: hidden;
}
.sec_prize.sec_prize_head {
  padding-bottom: 53px;
}
.sec_prize .form_read {
  display: flex;
  justify-content: center;
}

.sec_prize_amulet {
  background: url(../img/prize/bg_prize_amulet01.jpg);
  background-size: cover;
  background-position: top right;
}

.sec_prize_ofuda {
  background: url(../img/prize/bg_prize_ofuda01.jpg);
  background-size: cover;
  background-position: top center;
}

.sec_prize_stamp {
  background: url(../img/prize/bg_prize_stamp01.jpg);
  background-size: cover;
  background-position: top center;
}

.sec_prize_ema {
  background: url(../img/prize/bg_prize_ema01.jpg);
  background-size: cover;
  background-position: top center;
}

.sec_prize_shato {
  background: #E2D9BF;
  background-size: cover;
  background-position: top center;
}

.sec_prize_item {
  padding: 61px 20px 124px;
}

.box_prize .ttl {
  width: 100%;
}
.box_prize .ttl h2 {
  display: block;
  width: calc(100% - 40px);
  background: #fff;
  margin: 0 auto;
  padding: 25px 0px 35px;
  text-align: center;
  letter-spacing: 10px;
  position: relative;
}
.box_prize .ttl h2 .jp {
  display: block;
  background: none;
  color: #333;
  padding: 0;
  font-size: 3rem;
  letter-spacing: 2px;
  margin: 0;
  font-family: "Noto Serif JP", serif;
}
.box_prize .ttl h2 .en {
  display: block;
  padding: 4px 0 0;
  background: none;
  color: #8E8E8E;
  margin: 0;
  font-size: 1.4rem;
  margin-right: 17px;
  letter-spacing: 0;
  font-family: "Noto Serif JP", serif;
}
.box_prize .ttl h2::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 20px;
  right: 20px;
  width: 67px;
  height: 1px;
  background: #000;
}
.box_prize .ttl h2::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 20px;
  right: 20px;
  width: 1px;
  height: 31px;
  background: #000;
}
.box_prize .img01 {
  padding: 0 15px 30px;
  width: 100%;
}
.box_prize .img01 img {
  max-width: 100%;
}
.box_prize .text01 {
  width: calc(100% - 40px);
  padding: 0 22px 40px;
  margin: 0 auto 40px;
  margin-bottom: 45px;
  background: #fff;
  font-size: 14px;
  line-height: 1.8;
  letter-spacing: 1px;
  z-index: 1;
  position: relative;
  right: 0;
}

.box_prize02 {
  background: #fff;
  width: 1000px;
  max-width: calc(100% - 30px);
  margin: 0 auto 52px;
}
.box_prize02 h3 {
  display: none;
  font-size: 20px;
  text-align: center;
  color: #333;
  background: #F7F3E8;
  padding: 23px 15px 21px;
  font-weight: normal;
  letter-spacing: 3px;
}
.box_prize02 dl {
  padding: 33px 15px 0;
  max-width: 788px;
  margin: 0 auto;
}
.box_prize02 dl dt {
  border-left: 6px solid #1B6E8E;
  font-size: 18px;
  font-weight: normal;
  padding: 0 0 0 11px;
  margin: 0 0 19px;
  color: #1B6E8E;
}
.box_prize02 dl dd {
  font-size: 14px;
  padding: 0 0 25px;
  margin: 0 0 25px;
  line-height: 1.8;
  border-bottom: 1px dashed #ccc;
}
.box_prize02 dl dd:last-child {
  border-bottom: none;
}
.box_prize02 .map_zoom {
  max-width: 345px;
  margin: 0 auto 40px;
}
.box_prize02 .map_zoom img {
  max-width: 100%;
}

.list_prize_tab {
  display: flex;
  flex-wrap: wrap;
  width: calc(100% + 7px);
  margin: 0 0 27px -3.5px;
}
.list_prize_tab li {
  width: calc(50% - 7px);
  margin: 0 3px 7px;
  text-align: center;
  font-size: 14px;
  line-height: 1.2;
  border: 1px solid #E2D9BF;
  background: #F7F3E8;
  position: relative;
  min-height: 56px;
  animation-duration: 0s;
  cursor: pointer;
}
.list_prize_tab li.active {
  background: #E2D9BF;
}
.list_prize_tab li span {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
}

.list_prize_item {
  flex-wrap: wrap;
  width: calc(100% + 18px);
  margin-left: -9px;
  display: flex;
}
.list_prize_item li {
  width: calc(50% - 18px);
  margin: 0 9px 36px;
}
.list_prize_item li .img {
  position: relative;
  height: auto;
  width: 100%;
  overflow: hidden;
  text-align: center;
  margin: 0 auto 10px;
  transition: 0.3s;
}
.list_prize_item li .img::before {
  content: "";
  padding-top: 100%;
  display: block;
}
.list_prize_item li .img::after {
  content: "";
  background: #fafafa;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
}
.list_prize_item li .img img {
  max-width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-height: 100%;
  width: auto;
}
.list_prize_item li .name {
  text-align: center;
  font-size: 16px;
  margin-bottom: 8px;
}
.list_prize_item li .limited {
  color: #fff;
  font-size: 1.2rem;
  background-color: #E9380E;
  padding: 1px 9px;
  margin: 0 0 0 5px;
  max-width: 100px;
  text-align: center;
  display: block;
  margin: 5px auto;
}
.list_prize_item li select {
  display: block;
  width: 100%;
  max-width: 111px;
  font-size: 16px;
  border: 1px solid #E2D9BF;
  margin: 0 auto 14px;
  padding: 5px 45px 5px 5px;
  background-image: url(../img/common/under_arrow.svg);
  background-repeat: no-repeat;
  background-position: center right;
  -webkit-appearance: none;
  appearance: none;
}
.list_prize_item li select::-ms-expand {
  display: none;
}
.list_prize_item li select.select_number {
  direction: rtl;
}
.list_prize_item li select option {
  text-align: right;
}
.list_prize_item li .price {
  text-align: center;
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.list_prize_item li .price p {
  width: 100%;
  margin-right: 5px;
}
.list_prize_item li .price input {
  border: 1px solid #333;
  border-radius: 5px;
  width: 34px;
  min-width: 34px;
  height: 34px;
  padding: 0 0 1px;
  line-height: 1;
  font-size: 13px;
  transition: 0.3s;
}
.list_prize_item li .price input:hover {
  background: #f1f1f1;
}
.list_prize_item li .price input:active {
  background: #ccc;
}

.open_modal li .img {
  transition: 0.3s;
  cursor: pointer;
}
.open_modal li .img:hover {
  opacity: 0.7;
}

.sec_modal {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
  background: rgba(0, 0, 0, 0.85);
  position: fixed;
  display: none;
}
.sec_modal.active {
  display: block;
}
.sec_modal .area_modal {
  position: absolute;
  top: 50%;
  width: 100%;
  padding: 0 20px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  /*20210706御朱印*/
  /*20210706御朱印*/
}
.sec_modal .area_modal .box_modal {
  position: relative;
  width: 100%;
  max-width: 1361px;
  background: #fff;
  margin: 0 auto;
  padding: 80px 30px 30px;
}
.sec_modal .area_modal .box_modal .btn_close {
  width: 100%;
  max-width: 45px;
  text-align: center;
  position: absolute;
  top: 22px;
  right: 24px;
  display: inline-block;
  background: #333;
  border: 1px solid #333;
  color: #fff;
  padding: 7px;
  z-index: 10;
  font-size: 1.8rem;
  transition: 0.3s;
  cursor: pointer;
}
.sec_modal .area_modal .box_modal .btn_close:hover {
  opacity: 1;
  background: #fff;
  color: #333;
}
.sec_modal .area_modal .box_modal .img_modal {
  width: 100%;
  margin: 0 auto 27px;
  max-width: 300px;
  text-align: center;
}
.sec_modal .area_modal .box_modal .img_modal img {
  max-width: 100%;
  height: auto;
}
.sec_modal .area_modal .box_modal .img_modal.mini {
  max-width: 138px;
}
.sec_modal .area_modal .box_modal .text_modal {
  width: 100%;
  line-height: 1.6;
  font-size: 14px;
}
.sec_modal .area_modal .box_modal .text_modal p {
  line-height: 1.4;
  font-size: 20px;
  margin-bottom: 15px;
  text-align: center;
}
.sec_modal .area_modal .prize_slide {
  width: 100%;
  margin: 0 auto 54px;
  max-width: 300px;
  text-align: center;
}
.sec_modal .area_modal .prize_slide .slick-dots {
  display: flex;
  justify-content: center;
  align-items: center;
}
.sec_modal .area_modal .prize_slide .slick-dots li {
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 5px;
  padding: 0;
}
.sec_modal .area_modal .prize_slide .slick-prev {
  left: -30px;
}
.sec_modal .area_modal .prize_slide .slick-prev, .sec_modal .area_modal .prize_slide .slick-next {
  top: 50%;
  transform: translate(0, -50%);
}
.sec_modal .area_modal .prize_slide .slick-slide img {
  margin: 0 auto;
}
.sec_modal .area_modal .prize_slide .slick-next {
  right: -30px;
}
.sec_modal .area_modal .prize_slide .slidebox_modal {
  display: block;
}
.sec_modal .area_modal .prize_slide .slick-initialized .slick-slide {
  display: flex;
  align-items: center;
}

.sec_prize_form {
  background: #F5F5F5;
  padding: 110px 0 93px;
}
.sec_prize_form section {
  padding: 0 20px;
}
.sec_prize_form .table_prize_form {
  width: 100%;
  display: block;
  max-width: 478px;
  margin: 0 auto;
}
.sec_prize_form .table_prize_form tr {
  display: block;
}
.sec_prize_form .table_prize_form tr th {
  display: block;
  font-size: 14px;
  font-weight: normal;
  width: 100%;
  padding: 0 0 7px;
  vertical-align: middle;
}
.sec_prize_form .table_prize_form tr td {
  display: block;
  width: 100%;
  padding: 0 0 41px;
  vertical-align: middle;
}
.sec_prize_form .table_prize_form tr td .separate_2col {
  display: flex;
  justify-content: space-between;
  max-width: 518px;
}
.sec_prize_form .table_prize_form tr td .separate_2col > div {
  width: calc(50% - 22px);
}
.sec_prize_form .table_prize_form tr td .separate_yubin {
  display: flex;
  justify-content: space-between;
  max-width: 314px;
}
.sec_prize_form .table_prize_form tr td .separate_yubin > div {
  width: calc(50% - 22px);
}
.sec_prize_form .table_prize_form tr td .separate_yubin > div.haifun {
  width: 46px;
  min-width: 46px;
  position: relative;
}
.sec_prize_form .table_prize_form tr td .separate_yubin > div.haifun::before {
  content: "";
  width: 23px;
  height: 1px;
  background: #000;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  margin: auto;
}
.sec_prize_form .table_prize_form tr td .separate_yubin.ptn02 {
  max-width: 478px;
}
.sec_prize_form .text01 {
  font-size: 14px;
  margin: 0 auto 70px;
  line-height: 2;
}
.sec_prize_form .text02 {
  margin: 0 auto 37px;
}
.sec_prize_form .text02 a {
  color: #1B6E8E;
}

.nav-close_cart {
  display: block;
  position: fixed;
  top: calc(10% + 5px);
  left: 5px;
  right: auto;
  width: 30px;
  height: 30px;
  cursor: pointer;
  text-align: center;
  z-index: 3;
  border-radius: 4px;
  background: #1B6E8E;
}
.nav-close_cart span {
  transform: scale(-1, 1);
  display: inline-block;
}

#scrollSpy.scrollSpy_cart {
  display: block;
  position: fixed;
  right: auto;
  left: 0;
  top: 10%;
  bottom: auto;
  padding: 40px 10px 15px 0px;
  background: #1B6E8E;
  box-shadow: none;
  width: 318px;
  z-index: 2;
  transition: 0.3s;
}
#scrollSpy.scrollSpy_cart > a {
  display: block;
  color: #fff;
  font-size: 20px;
  padding: 0 0 0 35px;
  margin-bottom: 15px;
  cursor: inherit;
  pointer-events: none;
}
#scrollSpy.scrollSpy_cart > a::before {
  display: none;
}
#scrollSpy.scrollSpy_cart > a::after {
  display: none;
}
#scrollSpy.scrollSpy_cart > a span {
  display: inline-block;
  padding: 0 0 0 10px;
}

.nav-close_cart span::before {
  content: "×";
  font-size: 1.6rem;
}
.nav-close_cart.off span::before {
  content: "\e90f";
  font-family: "icomoon";
  font-size: 1.8rem;
  color: #fff;
}
.nav-close_cart.off + #scrollSpy.scrollSpy_cart {
  left: -100%;
}

/*カート機能の閉じた体裁*/
.nav-close_cart_btn span #text {
  display: none;
  transition: 0.3s;
}
.nav-close_cart_btn span.open_txt {
  display: none;
}
.nav-close_cart_btn.off {
  width: auto;
  height: 70px;
  font-size: 1.4rem;
  text-align: center;
  padding: 20px 15px;
  line-height: 1.1;
  border-radius: 0 10% 10% 0;
  left: 0;
}
.nav-close_cart_btn.off span::before {
  content: none !important;
  transition: 0.3s;
}
.nav-close_cart_btn.off span.open_txt {
  display: block;
}

/*
.input_resize{
    display: inline-block;
    position: relative;
    max-width: 150px;
    line-height: 1;
    padding: 0;
    > div{
        width: auto;
        white-space: nowrap;
        overflow: hidden;
        max-width: 150px;
        line-height: 1;
        font-size: 19px;
        padding: 0;
    }
    input[type="text"]{
        position: absolute;
        top: -3px;
        left: 0;
        border: none;
        box-sizing: border-box;
        width: 100%;
        padding: 0;
        line-height: 1;
        font-size: 19px;
    }
}
*/
.list_purchase {
  background: #fff;
  padding: 0 10px 23px;
}
.list_purchase .item_scroll {
  max-height: 316px;
  overflow: auto;
}
.list_purchase .item {
  display: flex;
  align-items: center;
  position: relative;
  padding: 12px 9px 12px 0;
}
.list_purchase .item::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  border-top: 1px dotted #ccc;
}
.list_purchase .item:last-child::after {
  display: none;
}
.list_purchase .item .item_delete {
  min-width: 21px;
  width: 21px;
  height: 21px;
  background: #707070;
  color: #fff;
  font-size: 18px;
  padding: 0px 0px 0 0px;
  line-height: 1;
  margin: 0 12px 0 0;
  transition: 0.3s;
  cursor: pointer;
}
.list_purchase .item .item_delete:hover {
  opacity: 0.7;
}
.list_purchase .item .item_contents {
  width: 100%;
  display: flex;
  align-items: center;
}
.list_purchase .item .item_contents .img {
  width: 54px;
  height: auto;
  margin-right: 10px;
}
.list_purchase .item .item_contents .text {
  width: 100%;
  max-width: 126px;
  margin-right: 10px;
}
.list_purchase .item .item_contents .text .name {
  font-size: 14px;
  margin-bottom: 2px;
}
.list_purchase .item .item_contents .text .price {
  font-size: 12px;
}
.list_purchase .item .item_contents .text .price input[type=text] {
  width: 50px;
  padding: 0;
  line-height: 1;
  border: none;
  vertical-align: 0;
}
.list_purchase .item .item_contents .number {
  width: 100%;
  max-width: 70px;
  min-width: 70px;
  text-align: center;
  line-height: 1.2;
  font-size: 14px;
}
.list_purchase .item .item_contents .number p {
  margin-bottom: 10px;
}
.list_purchase .item .item_contents .number input[type=number] {
  display: inline-block;
  width: 24px;
  vertical-align: top;
  line-height: 1.4;
  padding: 0;
  border: none;
}
.list_purchase .item .item_contents .number .increase {
  border: 1px solid #333;
  border-radius: 5px;
  width: 24px;
  min-width: 24px;
  height: 24px;
  padding: 0 0 1px;
  line-height: 1;
  font-size: 17px;
  transition: 0.3s;
  margin-right: 4px;
}
.list_purchase .item .item_contents .number .increase:hover {
  background: #f1f1f1;
}
.list_purchase .item .item_contents .number .increase:active {
  background: #ccc;
}
.list_purchase .item .item_contents .number .lower {
  border: 1px solid #333;
  border-radius: 5px;
  width: 24px;
  min-width: 24px;
  height: 24px;
  padding: 0 0 1px;
  line-height: 1;
  font-size: 17px;
  transition: 0.3s;
  margin-left: 4px;
}
.list_purchase .item .item_contents .number .lower:hover {
  background: #f1f1f1;
}
.list_purchase .item .item_contents .number .lower:active {
  background: #ccc;
}
.list_purchase .result {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 10px auto 25px;
  padding: 10px 10px 0;
  border-top: 1px solid #707070;
}
.list_purchase .result .text01 {
  font-size: 16px;
}
.list_purchase .result .text01 input[type=number] {
  width: 100px;
}
.list_purchase .result .text02 > div {
  text-align: right;
  font-size: 19px;
}
.list_purchase .result .text02 > div:last-child {
  font-size: 16px;
  /*
  .input_resize{
  max-width: 150px;
  > div{
      max-width: 150px;
      font-size: 16px;
  }
  input[type="text"]{
      font-size: 16px;
      top: -2px;
  }
  */
}
.list_purchase .btnArea .btn {
  background: #F7F3E8;
}
.list_purchase .btnArea .btn i {
  --moz-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  top: 7px;
}
.list_purchase .btnArea .btn:hover {
  background: #222A3F;
}
.list_purchase .btnArea .btn:hover i {
  right: 20px;
  top: calc(50% - 7px);
}
.list_purchase .total_goods {
  width: 30%;
}
.list_purchase .col_pay {
  width: 70%;
}
.list_purchase .col_pay input[type=number] {
  width: 100%;
}
.list_purchase .total_pay {
  width: auto;
}

/*　---------------------------------------------------　*/
/*　-------------PCレイアウト----------------------------　*/
/*　---------------------------------------------------　*/
@media screen and (min-width: 769px) {
  .sec_prize.sec_prize_head {
    padding-bottom: 113px;
  }
  .sec_prize_item {
    padding: 80px 20px 102px;
  }
  .sec__read_prize {
    padding: 58px 50px 43px;
    margin-top: 70px;
    margin-bottom: 51px;
  }
  .sec__read_prize .deco {
    top: 75px;
  }
  .sec__read_prize .deco img {
    max-width: 46px;
  }
  .sec__read_prize .text01 {
    background: #fff;
    font-size: 1.8rem;
    padding: 80px 39px 42px;
    margin-bottom: 45px;
    text-align: center;
  }
  .sec__read_prize .text02 {
    line-height: 2;
  }
  .sec__read_prize .text02 dt {
    font-size: 2rem;
    padding: 0 0 5px 18px;
    margin: 0 0 15px;
  }
  .sec__read_prize .text02 dd {
    font-size: 1.6rem;
    padding: 0 0 32px 18px;
  }
  .sec__read_prize .text02 dd.indent {
    text-indent: -30px;
    padding-left: 60px;
  }
  .sec_prize {
    padding: 117px 0 19px;
  }
  .sec_prize .sec__read .en {
    max-width: 910px;
  }
  .sec_prize .area_prize {
    position: relative;
  }
  .box_prize {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    max-width: 1572px;
    margin: 0 auto 61px 0;
    position: relative;
  }
  .box_prize::before {
    content: "";
    display: block;
    background: #ffffff;
    height: 100%;
    max-height: 620px;
    width: 100%;
    max-width: 680px;
    position: absolute;
    right: 0;
    top: -20px;
  }
  .box_prize .ttl {
    width: 100%;
    max-width: 215px;
    order: 3;
    position: relative;
    z-index: 1;
  }
  .box_prize .ttl h2 {
    font-size: 19px;
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    display: block;
    width: 100%;
    margin: auto;
    padding: 30px 30px 115px 0;
    text-align: center;
    font-size: 16px;
    letter-spacing: 10px;
    background: none;
  }
  .box_prize .ttl h2 .jp {
    display: block;
    background: none;
    padding: 0;
    font-size: 4rem;
    letter-spacing: 7px;
    margin: 0;
    border-top: 2px solid #000;
    padding: 90px 50px 0px 0;
    text-align: left;
    word-break: keep-all;
  }
  .box_prize .ttl h2 .en {
    display: block;
    padding: 92px 0 0;
    background: none;
    margin: 0;
    font-size: 1.4rem;
    margin-right: 23px;
    text-align: left;
    color: #333;
  }
  .box_prize .ttl h2::before {
    display: none;
  }
  .box_prize .ttl h2::after {
    top: 30px;
    right: 30px;
    width: 2px;
    height: 240px;
    background: #000;
  }
  .box_prize .text01 {
    background: none;
    width: 100%;
    max-width: 176px;
    height: 390px;
    order: 2;
    padding: 0 14px;
    margin: 120px 0 0;
    font-size: 18px;
    position: relative;
    z-index: 1;
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
  }
  .box_prize .img01 {
    order: 1;
    padding-right: 0;
    position: relative;
    z-index: 1;
  }
  .box_prize02 {
    border: 1px solid #E2D9BF;
    margin: 0 auto 61px;
  }
  .box_prize02 h3 {
    display: block;
  }
  .box_prize02 dl dd {
    margin: 0;
    padding: 0 0 33px 20px;
    border-bottom: none;
  }
  .box_prize02 .map_zoom {
    max-width: 500px;
  }
  .list_prize_tab {
    width: calc(100% + 34px);
    margin: 0 0 24px -17px;
  }
  .list_prize_tab li {
    width: calc(33.3333333333% - 17px);
    margin: 0 8px 17px;
    font-size: 1.6rem;
    min-height: 84px;
  }
  .list_prize_tab.col2 {
    justify-content: center;
  }
  .list_prize_tab.col2 li {
    width: calc(25% - 17px);
  }
  .list_prize_tab.col4 {
    justify-content: center;
  }
  .list_prize_tab.col4 li {
    width: calc(25% - 17px);
  }
  .list_prize_item {
    padding-bottom: 59px;
    width: calc(100% + 28px);
    margin-left: -14px;
  }
  .list_prize_item li {
    width: calc(33.3333333333% - 28px);
    margin: 0 14px 50px;
  }
  .list_prize_item li .name {
    font-size: 20px;
    margin-bottom: 14px;
  }
  .list_prize_item li .price {
    font-size: 1.6rem;
  }
  .sec_modal .area_modal {
    /*20210706御朱印*/
    /*20210706御朱印*/
  }
  .sec_modal .area_modal .box_modal {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 50px;
  }
  .sec_modal .area_modal .box_modal .btn_close {
    max-width: 152px;
  }
  .sec_modal .area_modal .box_modal .img_modal {
    width: 100%;
    max-width: 314px;
    margin: 0;
  }
  .sec_modal .area_modal .box_modal .img_modal.wide {
    max-width: 100%;
  }
  .sec_modal .area_modal .box_modal .img_modal.mini {
    max-width: 314px;
  }
  .sec_modal .area_modal .box_modal .text_modal {
    width: 100%;
    max-width: 612px;
    margin-left: 71px;
    font-size: 16px;
  }
  .sec_modal .area_modal .box_modal .text_modal p {
    font-size: 36px;
    margin-bottom: 27px;
    text-align: left;
  }
  .sec_modal .area_modal .prize_slide {
    max-width: 632px;
    width: 100%;
  }
  .sec_modal .area_modal .prize_slide .slick-dots {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .sec_modal .area_modal .prize_slide .slick-dots li {
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0 5px;
    padding: 0;
  }
  .sec_modal .area_modal .prize_slide .slick-dots li button::before {
    font-size: 2rem;
  }
  .sec_modal .area_modal .prize_slide .slick-prev {
    left: -30px;
  }
  .sec_modal .area_modal .prize_slide .slick-prev, .sec_modal .area_modal .prize_slide .slick-next {
    top: 50%;
    transform: translate(0, -50%);
  }
  .sec_modal .area_modal .prize_slide .slick-slide img {
    margin: 0 auto;
  }
  .sec_modal .area_modal .prize_slide .slick-next {
    right: -30px;
  }
  .sec_modal .area_modal .prize_slide .slidebox_modal {
    display: flex;
    justify-content: space-between;
  }
  .sec_prize_form {
    padding-bottom: 108px;
  }
  .sec_prize_form h2 {
    margin-bottom: 47px;
  }
  .sec_prize_form .text01 {
    font-size: 18px;
    margin: 0 0 25px;
  }
  .sec_prize_form .text02 {
    text-align: center;
    margin: 17px auto 37px;
  }
  .sec_prize_form .table_prize_form {
    display: table;
    width: 100%;
    margin: 0 100px 0 auto;
    max-width: 874px;
  }
  .sec_prize_form .table_prize_form tr {
    display: table-row;
  }
  .sec_prize_form .table_prize_form tr th {
    display: table-cell;
    font-size: 18px;
    width: 25%;
    min-width: 208px;
    padding: 10px;
  }
  .sec_prize_form .table_prize_form tr td {
    display: table-cell;
    width: 75%;
    padding: 18px 0;
  }
  .sec_prize_form .table_prize_form tr td .separate_2col > div {
    width: calc(50% - 22px);
  }
  .sec_prize_form .table_prize_form tr td .separate_yubin > div {
    width: calc(50% - 22px);
  }
  .sec_prize_form .table_prize_form tr td .separate_yubin > div.haifun {
    width: 46px;
    min-width: 46px;
  }
  .sec_prize_form .table_prize_form tr td .separate_yubin > div.haifun::before {
    width: 23px;
  }
  #scrollSpy.scrollSpy_cart {
    width: 364px;
  }
  /*カート機能の閉じた体裁*/
  .nav-close_cart_btn {
    width: auto;
    height: auto;
    font-size: 1.4rem;
    text-align: center;
    padding: 20px 15px;
    line-height: 1.1;
    border-radius: 0 10% 10% 0;
    left: 0;
  }
  .nav-close_cart_btn span #text {
    display: none;
    transition: 0.3s;
  }
  .nav-close_cart_btn span.open_txt {
    display: none;
  }
  .nav-close_cart_btn.off span::before {
    content: none !important;
    transition: 0.3s;
  }
  .nav-close_cart_btn.off span.open_txt {
    display: block;
  }
  .list_purchase .item_scroll {
    max-height: 350px;
    overflow: auto;
  }
  .list_purchase .item .item_delete {
    min-width: 27px;
    width: 27px;
    height: 27px;
    padding: 3px 0 0 4px;
  }
  .list_purchase .item .item_contents .number {
    max-width: 90px;
    min-width: 90px;
  }
  .list_purchase .item .item_contents .number .increase {
    width: 34px;
    min-width: 34px;
    height: 34px;
    margin-right: 4px;
  }
  .list_purchase .item .item_contents .number .lower {
    width: 34px;
    min-width: 34px;
    height: 34px;
    margin-left: 4px;
  }
}
@media screen and (min-width: 961px) {
  .list_prize_tab li {
    font-size: 1.8rem;
    width: calc(16.6666666667% - 17px);
  }
  .list_prize_tab.col2 li {
    width: calc(25% - 17px);
  }
  .list_prize_item li {
    width: calc(20% - 28px);
  }
}
@media screen and (min-width: 1281px) {
  .sec_prize .area_prize::before {
    margin: 220px 0 0 auto;
    padding: 0 14px 0 34px;
  }
  .box_prize .ttl {
    max-width: 221px;
  }
  .box_prize .ttl h2 {
    font-size: 19px;
    padding: 60px 50px 126px 0;
  }
  .box_prize .ttl h2::after {
    top: 60px;
    right: 50px;
  }
  .box_prize .text01 {
    margin: 191px 0 0 auto;
    padding: 0 14px 0 34px;
  }
  .box_prize .img01 {
    padding: 53px 0 0;
    max-width: 960px;
  }
  .sec_modal .area_modal .box_modal {
    padding: 5% 180px;
  }
  .sec_modal .area_modal .box_modal .btn_close {
    padding: 15px 10px 17px;
    font-size: 1.8rem;
  }
  .sec_modal .area_modal .box_modal .text_modal {
    width: 100%;
    font-size: 18px;
    line-height: 2;
  }
  .sec_modal .area_modal .box_modal.box_modal_ptn02 {
    padding: 5% 80px;
  }
  .sec_modal .area_modal .box_modal.box_modal_ptn02 .img_modal {
    max-width: 632px;
  }
  .sec_modal .area_modal .box_modal.box_modal_ptn02 .text_modal {
    width: 100%;
    max-width: 412px;
  }
}
@media screen and (min-width: 1401px) {
  .box_prize .ttl {
    max-width: 291px;
  }
}
@media screen and (min-width: 1921px) {
  .box_prize {
    margin: 0 auto 61px;
  }
}
* {
  min-height: 0px;
}

.width100 {
  width: 100%;
}

main.shrine_enshrined-deity .sec {
  max-width: 100%;
  padding: 80px 0 0 0;
}

/*一覧ページ*/
.tab_shrine_enshrined-deity {
  max-width: 975px;
  padding: 0 6px;
  margin: 28px auto 24px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.tab_shrine_enshrined-deity li {
  width: calc(33.3333333333% - 8px);
  margin: 0 4px;
  font-size: 1.2rem;
  background: #F7F3E8;
  border-bottom: 2px solid #f7f3e8;
  text-align: center;
  padding: 20px 10px 10px;
  min-height: 94px;
  cursor: pointer;
}
.tab_shrine_enshrined-deity li.active {
  background: #E2D9BF;
  border-bottom: 3px solid #E9380E;
}
.tab_shrine_enshrined-deity li i {
  vertical-align: middle;
  font-size: 3.4rem;
}
.tab_shrine_enshrined-deity li img {
  margin: 0 auto 5px;
  display: block;
}
.tab_shrine_enshrined-deity li span {
  display: block;
  font-size: 1.4rem;
}

.shrine_enshrined-deity .mainHeader h1 span.title_text {
  font-size: 8.8vw;
  white-space: nowrap;
  font-family: "Noto Serif JP", serif;
}

.mainHeader .pageTitle {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 1;
}
.mainHeader .pageTitle::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  display: block;
  background: rgba(0, 0, 0, 0.3);
}

.shrine_enshrined-deity .mainHeader .pageTitle {
  background-image: url(/wp-content/themes/yasaka/img/shrine_enshrined-deity/img_shrine_enshrined-deity_main.png);
}

.sec_map01_pc {
  display: none;
}

.sec_map01_sp {
  display: block;
  padding: 0 10px;
}
.sec_map01_sp .area_map01 {
  margin: 0 auto 50px;
  width: 100%;
  overflow: hidden;
}
.sec_map01_sp .area_map01 img {
  width: 100%;
}
.sec_map01_sp ul {
  width: calc(100% - 25px);
  margin: 0 auto;
}
.sec_map01_sp ul li {
  border-bottom: 1px dashed #000;
}
.sec_map01_sp ul li:last-child {
  border-bottom: none;
}
.sec_map01_sp ul li a {
  font-size: 1.4rem;
  display: block;
  padding: 15px 10px 15px 45px;
  position: relative;
  transition: 0.3s;
}
.sec_map01_sp ul li a:hover {
  opacity: 0.7;
}
.sec_map01_sp ul li a span {
  display: inline-block;
  background: #AA5443;
  width: 28px;
  height: 28px;
  border-radius: 100%;
  color: #fff;
  font-size: 1.2rem;
  padding: 4px 0 0;
  text-align: center;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(0%, -50%);
}
.sec_map01_sp ul li a.inactive {
  cursor: inherit;
  pointer-events: none;
  opacity: 1;
}
.sec_map01_sp ul li a.inactive span {
  display: inline-block;
  background: #000000;
}
.sec_map01_sp ul li a i {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translate(0%, -50%);
  font-size: 2.4rem;
}

.sec_map02 section {
  padding: 0 9px;
}
.sec_map02 .area_map02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 30px 0 0;
}
.sec_map02 .area_map02 h2 {
  display: none;
}
.sec_map02 .area_map02 .box_map02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.sec_map02 .area_map02 .box_map02 .item {
  width: calc(50% - 22px);
  margin: 0 11px 50px;
  text-align: center;
}
.sec_map02 .area_map02 .box_map02 .item:nth-of-type(3), .sec_map02 .area_map02 .box_map02 .item:nth-of-type(4) {
  margin-bottom: 0;
}
.sec_map02 .area_map02 .box_map02 .item img {
  display: inline-block;
  max-width: 100%;
  height: auto;
}
.sec_map02 .area_map02 .box_map02 .item p {
  font-size: 1.4rem;
  margin: 14px 0 0;
}
.sec_map02 .area_map02 .box_map02 .item p span {
  display: block;
  font-size: 1.2rem;
}
.sec_map02 .area_map02 .box_map02 .item a {
  transition: 0.3s;
}
.sec_map02 .area_map02 .box_map02 .item a:hover {
  opacity: 0.7;
}

.midokoro_spot_btn {
  padding-top: 50px;
  padding-bottom: 80px;
  margin: 10px 0 0;
}
.midokoro_spot_btn p {
  font-size: 1.4rem;
  margin-bottom: 20px;
}
.midokoro_spot_btn .btn {
  background: #e1690d;
  border: 1px solid #e1690d;
  transition: 0.3s;
  color: #ffffff;
}
.midokoro_spot_btn .btn:hover {
  background: #ffffff;
  color: #e1690d;
}

.sec_profit section {
  padding-top: 0;
  padding-bottom: 0;
}

.sort_profit {
  margin: 58px auto 46px;
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
.sort_profit::before {
  content: "ご利益を選択してください。";
  display: block;
  font-size: 1.4rem;
  margin-bottom: 24px;
  position: absolute;
  top: -27px;
}
.sort_profit li {
  margin: 0px 4px 8px;
  width: calc(50% - 8px);
}
.sort_profit li input[type=checkbox] {
  display: none;
}
.sort_profit li .checkbox {
  box-sizing: border-box;
  cursor: pointer;
  display: inline-block;
  padding: 5px 30px;
  position: relative;
  width: auto;
  display: block;
  position: relative;
  width: 100%;
  padding: 16px 10px 16px 38px;
  background: #F7F3E8;
  font-size: 1.3rem;
  border-radius: 0;
  text-align: left;
}
.sort_profit li .checkbox::before {
  content: "";
  position: absolute;
  top: 50%;
  width: 16px;
  display: inline-block;
  width: 20px;
  height: 20px;
  background: #fff;
  border: 1px solid #E2D9BF;
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translate(0%, -50%);
}
.sort_profit li .checkbox::after {
  border-right: 3px solid #85ad60;
  border-bottom: 3px solid #78a54e;
  content: "";
  display: block;
  height: 13px;
  left: 17px;
  opacity: 0;
  position: absolute;
  top: 21px;
  transform: rotate(45deg);
  width: 7px;
}
.sort_profit li input[type=checkbox]:checked + .checkbox::before {
  border-color: #E2D9BF;
}
.sort_profit li input[type=checkbox]:checked + .checkbox::after {
  opacity: 1;
}

.ttl_profit {
  font-size: 2.4rem;
  margin-bottom: 50px;
}
.ttl_profit::after {
  content: "";
  display: block;
  width: 100%;
  max-width: 200px;
  height: 2px;
  background: #D3A357;
  margin-top: 15px;
}

.area_profit .box_profit {
  box-shadow: 0 3px 7px #eee;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  padding: 0 35px 0 0;
  margin: 0 auto 17px;
  transition: 0.3s;
}
.area_profit .box_profit.mb0 {
  margin: 0 auto;
}
.area_profit .box_profit:hover {
  opacity: 0.7;
}
.area_profit .box_profit .img {
  width: 100%;
  max-width: 130px;
  min-height: 166px;
  position: relative;
  margin-right: 17px;
  overflow: hidden;
}
.area_profit .box_profit .img img {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  height: 100%;
  width: auto;
}
.area_profit .box_profit .text {
  width: 100%;
}
.area_profit .box_profit .text h3 {
  font-size: 2rem;
  margin-bottom: 15px;
}
.area_profit .box_profit .text h3 span {
  display: block;
  font-size: 1.2rem;
}
.area_profit .box_profit .text ul li {
  display: inline-block;
  background: #F7F3E8;
  border-radius: 20px;
  font-size: 1rem;
  text-align: center;
  padding: 3px 10px;
  min-width: 67px;
  margin: 0 2px 7px 0;
}
.area_profit .box_profit .text i {
  position: absolute;
  right: 9px;
  top: 50%;
  transform: translate(0%, -50%);
  font-size: 2rem;
}

.sec_course section {
  padding: 0 20px;
}

.read_course {
  font-size: 1.4rem;
  margin: 0px auto 32px;
  line-height: 1.8;
}

.sort_course {
  padding: 0 0 12px;
}
.sort_course li {
  max-width: 280px;
  margin: 0 auto 10px;
  position: relative;
  text-align: center;
  font-size: 1.2rem;
  padding: 9px 50px 12px 50px;
  border-radius: 50px;
  line-height: 1.4;
  cursor: pointer;
  transition: 0.3s;
  border: 1px solid #AA5443;
}
.sort_course li span {
  display: block;
  font-size: 1.7rem;
}
.sort_course li::after {
  content: "";
  display: inline-block;
  border-top: 9px solid #AA5443;
  border-right: 5px solid transparent;
  border-left: 5px solid transparent;
  position: absolute;
  right: 27px;
  top: 50%;
  transform: translate(0%, -50%);
}
.sort_course li.active {
  border: 1px solid #AA5443;
  background: #AA5443;
  color: #fff;
}
.sort_course li.active::after {
  display: none;
}
.sort_course li:hover {
  border: 1px solid #AA5443;
  background: #AA5443;
  color: #fff;
}
.sort_course li:hover::after {
  border-top: 9px solid #fff;
}

.map_course {
  overflow: hidden;
  text-align: center;
  margin: 0 auto 44px;
}
.map_course img {
  width: 100%;
}

.table_course {
  border-collapse: separate;
  border-spacing: 0 10px;
  margin: -10px auto 34px;
  max-width: 1120px;
}
.table_course th {
  padding: 3px 0;
  text-align: center;
  background: #AA5443;
  color: #fff;
  width: 10%;
  min-width: 140px;
  font-size: 1.8rem;
  font-weight: normal;
  vertical-align: middle;
}
.table_course th.color {
  background: #E2D9BF;
  color: #000;
}
.table_course td {
  padding: 0px 0 0px 25px;
  vertical-align: middle;
  font-size: 1.8rem;
}
.table_course td i {
  vertical-align: middle;
  margin-right: 4px;
  font-size: 2.6rem;
}

.list_course {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 auto 54px;
  max-width: 1120px;
}
.list_course li {
  position: relative;
  border: 1px solid #707070;
  font-size: 1.3rem;
  width: calc(50% - 18px);
  margin: 0 18px 11px 0;
}
.list_course li a {
  display: block;
  padding: 18px 5px 18px 36px;
  font-size: 1rem;
  transition: 0.3s;
}
.list_course li a:hover {
  opacity: 0.5;
}
.list_course li span {
  display: inline-block;
  background: #000;
  color: #fff;
  border-radius: 100%;
  padding: 2px 0;
  width: 20px;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 9px;
  transform: translate(0, -50%);
}
.list_course li::after {
  content: "";
  display: inline-block;
  border-top: 5px solid transparent;
  border-left: 5px solid #E2D9BF;
  border-bottom: 5px solid transparent;
  position: absolute;
  top: 50%;
  right: -13px;
  transform: translate(0, -50%);
}
.list_course li:last-child::after {
  display: none;
}

.area_course .box_course {
  padding: 0 0 30px;
  margin: 0 0 24px;
  position: relative;
  border: none;
  /*お社・ご祭神　モデルコース*/
}
.area_course .box_course::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-image: linear-gradient(to right, #707070, #707070 3px, transparent 3px, transparent 3px);
  background-size: 9px 1px;
  background-repeat: repeat-x;
}
.area_course .box_course.mb0 {
  margin: 0 auto;
  padding: 0;
}
.area_course .box_course.mb0::after {
  display: none;
}
.area_course .box_course .img {
  text-align: center;
}
.area_course .box_course .img > img {
  display: inline-block;
  max-width: 100%;
  height: auto;
}
.area_course .box_course .text h3 {
  font-size: 2rem;
  font-weight: bold;
  margin: 0 0 18px;
}
.area_course .box_course .text h3 span {
  display: inline-block;
  border-radius: 100%;
  background: #000;
  color: #fff;
  margin-right: 4px;
  font-size: 1.8rem;
  width: 28px;
  height: 28px;
  text-align: center;
  padding: 4px 0 0px;
  line-height: 1;
  position: relative;
  top: -2px;
}
.area_course .box_course .text p {
  margin: 0 0 28px;
}
.area_course .box_course .text table {
  width: 100%;
  margin-bottom: 20px;
}
.area_course .box_course .text table th {
  padding: 3px 0;
  text-align: center;
  background: #a95443;
  color: #fff;
  width: 10%;
  min-width: 94px;
  font-size: 1.6rem;
  font-weight: normal;
  vertical-align: middle;
}
.area_course .box_course .text table td {
  font-size: 1.6rem;
  padding: 0 0 0 20px;
  vertical-align: middle;
}
.area_course .box_course .text .btn {
  margin-bottom: 16px;
}
.area_course .box_course .text .btn:last-child {
  margin-bottom: 35px;
}
.area_course .box_course .text .btnArea_2col .btn {
  width: 100%;
  max-width: 300px;
  min-width: auto;
  margin-bottom: 16px;
}
.area_course .box_course .text .btnArea_2col .btn:last-child {
  margin-bottom: 16px;
}
.area_course .box_course .img_2col {
  margin: 35px auto 0;
  text-align: center;
}
.area_course .box_course .img_2col img {
  display: inline-block;
  max-width: 100%;
  height: auto;
  margin: 0 auto 12px;
}
.area_course .box_course .model_couse_slider {
  margin: 0 0 40px 0;
}
.area_course .box_course .model_couse_slider .slick-next {
  -webkit-transform: translate(50%, -50%);
  transform: translate(50%, -50%);
  right: 0;
}
.area_course .box_course .model_couse_slider .slick-prev {
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  left: 0;
}
.area_course .box_course .model_couse_slider .slick-track {
  margin: 0;
}
.area_course .box_course .model_couse_slider .slick-slide img {
  display: inline-block;
  max-width: 100%;
}
.area_course .box_course .model_couse_slider .slick-dots li {
  width: 11px;
  height: 11px;
  margin: 0 7px;
}
.area_course .box_course .model_couse_slider .slick-dots li button {
  padding: 0;
  width: 11px;
  height: 11px;
}
.area_course .box_course .model_couse_slider .slick-dots li button::before {
  content: "";
  width: 11px;
  height: 11px;
  border-radius: 100px;
  background: #E2D9BF;
  opacity: 1;
}
.area_course .box_course .model_couse_slider .slick-dots li.slick-active button::before {
  background: #E9380E;
}

/*======================
======= 詳細ページ =======
======================*/
/*中見出し*/
.ttl_shinto_ritual01 h3 {
  display: block;
  width: 100%;
  margin: 0 auto 50px;
  padding: 23px 0 0;
  text-align: center;
  letter-spacing: 10px;
  position: relative;
}
.ttl_shinto_ritual01 h3 .jp {
  display: block;
  background: none;
  color: #333;
  padding: 0;
  font-size: 3rem;
  letter-spacing: 7px;
  margin: 0;
  word-break: keep-all;
}
.ttl_shinto_ritual01 h3 .jp::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  width: 67px;
  height: 1px;
  background: #333;
}
.ttl_shinto_ritual01 h3 .jp::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  width: 1px;
  height: 31px;
  background: #333;
}
.ttl_shinto_ritual01 h3 .en {
  display: block;
  padding: 5px 0 0;
  background: none;
  color: #333;
  margin: 0;
  font-size: 1.4rem;
  margin-right: 17px;
  letter-spacing: 0;
}
.ttl_shinto_ritual01.ttl_shinto_ritual01_white h3 .jp {
  color: #fff;
}
.ttl_shinto_ritual01.ttl_shinto_ritual01_white h3 .jp::before {
  background: #fff;
}
.ttl_shinto_ritual01.ttl_shinto_ritual01_white h3 .jp::after {
  background: #fff;
}
.ttl_shinto_ritual01.ttl_shinto_ritual01_white h3 .en {
  color: #fff;
}

/*小見出し*/
.ttl_shinto_ritual02 {
  margin: 2em auto;
  text-align: center;
  letter-spacing: 0.2em;
}
.ttl_shinto_ritual02 h4 {
  font-size: 2rem;
  font-weight: bold;
}
.ttl_shinto_ritual02 h4 .yomi {
  display: inline-block;
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0;
  margin-left: 1em;
}
.ttl_shinto_ritual02 .en {
  color: #707070;
  font-size: 1rem;
}
.ttl_shinto_ritual02 .jp .bg {
  background: #929292;
  font-size: 1.4rem;
  color: #fff;
  display: inline-block;
  padding: 1px 8px 3px;
  margin-right: 0.5em;
}
.ttl_shinto_ritual02 .list_benefits {
  margin: 0 0 32px;
}
.ttl_shinto_ritual02 .list_benefits li::before {
  width: 5px;
  margin-right: 10px;
}

/*リスト部分*/
.list_benefits {
  max-width: 290px;
  margin: 0 auto 60px;
}
.list_benefits li {
  font-size: 1.8rem;
  letter-spacing: 1px;
  margin: 0 0 12px;
}
.list_benefits li::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-right: 23px;
  background: #333;
}
.list_benefits li span {
  display: inline-block;
  font-size: 1.2rem;
  margin: 0 0 0 30px;
  letter-spacing: 0;
}
.list_benefits li.green::before {
  background: #75A34B;
}
.list_benefits li.red::before {
  background: #AA5443;
}
.list_benefits li.blue::before {
  background: #1B6E8E;
}
.list_benefits li.yellow::before {
  background: #D4B401;
}
.list_benefits li.chinablue::before {
  background: #2A5CAA;
}
.list_benefits li.kimidori::before {
  background: #ED6D3D;
}
.list_benefits li.wakakusa::before {
  background: #ABC900;
}
.list_benefits li.momonohana::before {
  background: #F58F98;
}
.list_benefits li.ki::before {
  background: #FFD400;
}
.list_benefits li.nakahanada::before {
  background: #267CA7;
}
.list_benefits li.imayou::before {
  background: #D0576B;
}
.list_benefits li.ainezumi::before {
  background: #5C9291;
}
.list_benefits li.tanjero::before {
  background: #F15A22;
}
.list_benefits li.benigara::before {
  background: #8F2E14;
}
.list_benefits li.himawari::before {
  background: #F8B400;
}
.list_benefits li.benikaba::before {
  background: #B13546;
}
.list_benefits li.ginnezu::before {
  background: #B5B5B5;
}
.list_benefits li.sumire::before {
  background: #7054a0;
}
.list_benefits li.tokiwa::before {
  background: #007c45;
}

/*大見出し(h2) padding調整*/
.sec_shrine_enshrined-deity {
  padding: 70px 20px 25px;
}

.sec_shrine_enshrined-deity02 {
  padding: 70px 20px 25px;
}
.sec_shrine_enshrined-deity02 .sec__ttl {
  margin: 0 auto 65px;
}

/*由緒・由縁*/
.sec_origin {
  background: url(../img/shrine_enshrined-deity/bg_origin.jpg);
  background-size: cover;
  background-position: top center;
}
.sec_origin .area_origin {
  padding: 0 20px;
}
.sec_origin .area_origin .box_origin .text {
  width: 100%;
  color: #fff;
  line-height: 1.8;
  order: 1;
  font-size: 1.8rem;
  text-align: justify;
  margin-bottom: 50px;
}
.sec_origin .area_origin .box_origin .text.text_pc {
  display: none;
}
.sec_origin .area_origin .box_origin .text.text_sp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  max-width: 280px;
  margin: 0 auto;
}
.sec_origin .area_origin .box_origin .text.text_sp p {
  writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  max-height: 273px;
  margin: 0 0 60px;
}
.sec_origin .area_origin .box_origin .text.text_sp p:nth-of-type(1) {
  width: 160px;
  margin-left: auto;
  order: 2;
}
.sec_origin .area_origin .box_origin .text.text_sp p:nth-of-type(2) {
  width: 89px;
  margin-right: auto;
  order: 1;
}
.sec_origin .area_origin .box_origin .text.text_sp p:nth-of-type(3) {
  width: 128px;
  margin-left: auto;
  order: 4;
}
.sec_origin .area_origin .box_origin .text.text_sp p:nth-of-type(4) {
  width: 122px;
  margin-right: auto;
  order: 3;
}
.sec_origin .area_origin .box_origin .cultural_label {
  font-size: 2.2rem;
  margin: 0 auto 27px;
  background: #000000;
  border: 1px solid #d4b401;
  color: #d4b401;
  padding: 0 12px;
  text-align: center;
  max-width: 280px;
}
.sec_origin .area_origin .box_origin .construction_year {
  font-size: 2rem;
  margin: 0 0 35px 0;
  text-align: center;
  color: #ffffff;
}

/*ご利益全体*/
.sec_benefits .area_benefits {
  padding: 0 20px;
}

/*ご利益上部分*/
.box_benefits {
  margin-bottom: 50px;
}
.box_benefits .img_benefits {
  text-align: center;
}
.box_benefits .img_benefits img {
  display: inline-block;
  max-width: 100%;
  height: auto;
}

/*ご利益部分　カルーセル　slickで制御*/
.box_benefitsslider {
  position: relative;
}
.box_benefitsslider .slick-list {
  overflow: hidden;
}
.box_benefitsslider .slick-list .slick-slide img {
  max-width: 100%;
  height: auto;
}
.box_benefitsslider .nextarrow {
  display: none;
}
.box_benefitsslider .prevarrow {
  display: none;
}
.box_benefitsslider .slick-dots {
  margin: 0;
  bottom: -35px;
}
.box_benefitsslider .slick-dots li {
  width: 11px;
  height: 11px;
  margin: 0 7px;
}
.box_benefitsslider .slick-dots li button {
  padding: 0;
  width: 11px;
  height: 11px;
}
.box_benefitsslider .slick-dots li button::before {
  content: "";
  width: 11px;
  height: 11px;
  border-radius: 100px;
  background: #E2D9BF;
  opacity: 1;
}
.box_benefitsslider .slick-dots li.slick-active button::before {
  background: #E9380E;
}

.sec_shinto_ritual {
  padding: 0 0 70px;
}
.sec_shinto_ritual.sec_shinto_ritual_nakagoza {
  background: url(../img/shrine_enshrined-deity/bg_nakagoza.jpg);
  background-size: cover;
  background-position: top center;
}
.sec_shinto_ritual.sec_shinto_ritual_higashigoza {
  background: url(../img/shrine_enshrined-deity/bg_higashigoza.jpg);
  background-size: cover;
  background-position: top center;
}
.sec_shinto_ritual.sec_shinto_ritual_nishigoza {
  background: url(../img/shrine_enshrined-deity/bg_nishigoza.jpg);
  background-size: cover;
  background-position: top center;
}
.sec_shinto_ritual .area_shinto_ritual {
  padding: 40px 20px;
  /*画像あり、本文ありのパターン*/
  /*タイトルだけ並ぶパターン*/
}
.sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 {
  width: 100%;
  background: #fff;
  margin: 0 auto;
  padding: 37px 10px 20px;
}
.sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .img_shinto_ritual {
  text-align: center;
}
.sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .img_shinto_ritual img {
  max-width: 100%;
  height: auto;
}
.sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .text_shinto_ritual .text p {
  margin: 0 0 20px;
}
.sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02 {
  background: #fff;
  padding: 10px;
  width: 100%;
  max-width: 916px;
  margin: auto;
  padding: 37px 10px 20px 22px;
}
.sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02 .ttl_shinto_ritual02 {
  margin: 0 auto 40px;
  padding: 0;
  position: relative;
}
.sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02 .ttl_shinto_ritual02 h4 .yomi {
  display: block;
  margin: 0 0 10px;
}
.sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02 .ttl_shinto_ritual02 .en {
  margin: 0 0 20px;
}
.sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02 .ttl_shinto_ritual02:last-child {
  margin: 0 auto 47px;
}

/*その他のお社など*/
.sec_other_shinto {
  padding: 0 20px;
  /*本殿以外のお社ページで使用*/
}
.sec_other_shinto .other_shinto_col {
  width: 100%;
}
.sec_other_shinto .other_shinto_col .ttl_other_shinto {
  margin: 0 auto;
  padding: 0 0 20px 0;
  letter-spacing: 4px;
}
.sec_other_shinto .other_shinto_col .ttl_other_shinto h4 {
  font-size: 2.6rem;
}
.sec_other_shinto .other_shinto_col .ttl_other_shinto h4 .yomi {
  display: block;
  font-size: 1.6rem;
  font-weight: normal;
}
.sec_other_shinto .other_shinto_col .ttl_other_shinto .en {
  font-size: 1.4rem;
  font-weight: normal;
}
.sec_other_shinto .other_shinto_col dd .other_shinto_txtbox {
  display: block;
  margin: 0 0 40px 0;
}
.sec_other_shinto .other_shinto_col dd .img_other_shinto {
  text-align: center;
  margin: 0 0 40px 0;
}
.sec_other_shinto .other_shinto_col dd .img_other_shinto img {
  max-width: 100%;
}
.sec_other_shinto .col_hide {
  display: none;
}

/*@media screen and (max-width: 768px) {

	.ttl_shinto_ritual01{
		height: auto !important;
	}

	.sec_shinto_ritual{
		.area_shinto_ritual{
			.box_shinto_ritual02{
				.ttl_shinto_ritual02{
					height: auto !important;
					.ttl_shinto_ritual02_inner{
						width: auto !important;
					}
				}
			}
		}
	}
}*/
/*　---------------------------------------------------　*/
/*　-------------PCレイアウト----------------------------　*/
/*　---------------------------------------------------　*/
@media screen and (min-width: 769px) {
  /*一覧ページ*/
  .tab_shrine_enshrined-deity {
    margin: 38px auto 39px;
  }
  .tab_shrine_enshrined-deity li {
    width: calc(33.3333333333% - 22px);
    margin: 0 11px;
    font-size: 1.4rem;
    padding: 20px 10px 10px;
    min-height: 72px;
    transition: 0.3s;
  }
  .tab_shrine_enshrined-deity li:hover {
    opacity: 0.7;
  }
  .tab_shrine_enshrined-deity li.active {
    border-bottom: 2px solid #E9380E;
  }
  .tab_shrine_enshrined-deity li img {
    display: inline-block;
    margin: 0 5px 0 0;
  }
  .tab_shrine_enshrined-deity li span {
    display: inline-block;
    font-size: 1.8rem;
  }
  /*神社h1 一行表示*/
  .shrine_enshrined-deity .mainHeader h1 span.title_text {
    font-size: 6.8rem;
    white-space: inherit;
  }
  .sec_map01_pc {
    display: block;
    overflow: auto;
    position: relative;
    padding: 120px 0 100px;
    overflow: hidden;
  }
  .sec_map01_pc::before {
    content: "";
    display: block;
    background: url(../img/shrine_enshrined-deity/img_shrine_enshrined-deity_deco01_right.svg);
    background-repeat: no-repeat;
    background-position: center right;
    width: calc(100% + 536px);
    height: 147px;
    position: absolute;
    top: 0;
    right: -536px;
    animation: loop-slideleft 40s infinite linear 1s both;
  }
  .sec_map01_pc::after {
    content: "";
    display: block;
    background: url(../img/shrine_enshrined-deity/img_shrine_enshrined-deity_deco01_left.svg);
    background-repeat: no-repeat;
    background-position: center right;
    width: calc(100% + 573px);
    height: 210px;
    position: absolute;
    bottom: 0;
    right: -573px;
    animation: loop-slideright 40s infinite linear 1s both;
  }
  .sec_map01_pc .area_map01 {
    width: 100%;
    max-width: 1700px;
    margin: 0 auto;
  }
  .sec_map01_pc .area_map01 img {
    width: 100%;
    height: auto;
  }
  .sec_map01_sp {
    display: none;
  }
  .sec_map02 {
    background: rgb(247, 243, 232);
    background: linear-gradient(0deg, rgb(247, 243, 232) 0%, rgb(255, 255, 255) 100%);
  }
  .sec_map02 .area_map02 {
    margin: auto;
    max-width: 945px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 0 0 55px;
  }
  .sec_map02 .area_map02 h2 {
    display: block;
    order: 4;
    width: 100%;
    background: #fff;
    position: relative;
    min-height: 205px;
    max-height: 205px;
    max-width: 57px;
    border: 1px solid #707070;
    font-size: 1.6rem;
    margin: 0 0 0 auto;
  }
  .sec_map02 .area_map02 h2 span {
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    display: block;
    height: 100%;
    margin: auto;
    text-align: center;
    letter-spacing: 3px;
    position: absolute;
    left: 50%;
    transform: translate(-50%, 0%);
  }
  .sec_map02 .area_map02 .box_map02 {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
  }
  .sec_map02 .area_map02 .box_map02 .item {
    max-width: 183px;
    width: calc(25% - 22px);
    margin: 20px 11px 50px;
  }
  .sec_map02 .area_map02 .box_map02 .item p {
    font-size: 1.4rem;
    margin: 14px 0 0;
  }
  .sec_map02 .area_map02 .box_map02 .item p span {
    font-size: 1.2rem;
  }
  .sort_profit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    max-width: 1145px;
    margin: 60px auto 124px;
  }
  .sort_profit::before {
    display: none;
  }
  .sort_profit li {
    width: calc(33.3333333333% - 10px);
    margin: 0 5px 10px;
  }
  .sort_profit li .checkbox {
    padding: 5px 30px;
    width: 100%;
    padding: 16px 10px 16px 58px;
    font-size: 1.6rem;
  }
  .sort_profit li .checkbox::before {
    width: 16px;
    width: 34px;
    height: 34px;
    left: 10px;
  }
  .sort_profit li .checkbox::after {
    border-right: 4px solid #85ad60;
    border-bottom: 4px solid #78a54e;
    height: 22px;
    left: 21px;
    top: 15px;
    width: 12px;
  }
  .ttl_profit {
    font-size: 3rem;
  }
  .area_profit .box_profit {
    padding: 0 90px 0 0;
    margin: 0 auto 30px;
  }
  .area_profit .box_profit .img {
    width: 100%;
    max-width: 550px;
    margin-right: 63px;
    min-width: 330px;
  }
  .area_profit .box_profit .img img {
    position: static;
    max-width: 100%;
    height: auto;
    transform: translate(0, 0);
  }
  .area_profit .box_profit .text {
    width: 100%;
  }
  .area_profit .box_profit .text h3 {
    font-size: 2.6rem;
    margin-bottom: 22px;
  }
  .area_profit .box_profit .text h3 span {
    margin: 5px 0 0;
    font-size: 1.2rem;
  }
  .area_profit .box_profit .text ul li {
    font-size: 1.4rem;
    padding: 6px 10px;
    min-width: 103px;
    margin: 0 2px 7px 0;
  }
  .area_profit .box_profit .text i {
    position: absolute;
    right: 32px;
    font-size: 3rem;
  }
  .read_course {
    font-size: 1.8rem;
    margin: 0 auto 53px;
    max-width: 921px;
  }
  .sort_course {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 0 50px;
  }
  .sort_course li {
    max-width: 100%;
    width: calc(33.3333333333% - 15px);
    margin: 0 7px 10px;
    font-size: 1.4rem;
    padding: 10px 50px 13px 50px;
  }
  .sort_course li span {
    font-size: 2rem;
  }
  .sort_course li::after {
    right: 27px;
    border-top: 12px solid #AA5443;
    border-right: 6px solid transparent;
    border-left: 6px solid transparent;
  }
  .map_course {
    text-align: center;
    margin: 0 auto 44px;
  }
  .map_course_shrine_enshrined-deity img {
    display: block;
    max-width: 50%;
    margin: auto;
  }
  .list_course {
    margin: 0 auto 76px;
    max-width: 1120px;
  }
  .list_course li {
    font-size: 1.6rem;
    width: calc(33.3333333333% - 40px);
    margin: 0 40px 13px 0;
  }
  .list_course li a {
    display: block;
    font-size: 1.4rem;
    padding: 18px 5px 18px 52px;
  }
  .list_course li span {
    display: inline-block;
    background: #000;
    color: #fff;
    border-radius: 100%;
    text-align: center;
    position: absolute;
    top: 50%;
    left: 15px;
    transform: translate(0, -50%);
    padding: 3px 0;
    width: 28px;
    left: 15px;
  }
  .list_course li::after {
    border-top: 7px solid transparent;
    border-left: 7px solid #E2D9BF;
    border-bottom: 7px solid transparent;
    right: -25px;
  }
  .area_course .box_course {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: 1120px;
    margin: 0 auto 26px;
  }
  .area_course .box_course.mb0 {
    padding: 0 0 30px;
  }
  .area_course .box_course.mb0::after {
    display: block;
  }
  .area_course .box_course .img {
    order: 1;
    width: 100%;
    max-width: 438px;
    margin-right: 40px;
  }
  .area_course .box_course .text {
    order: 2;
    width: 100%;
  }
  .area_course .box_course .text h3 {
    font-weight: normal;
    font-size: 2.4rem;
    margin: 7px auto 26px;
  }
  .area_course .box_course .text .btnArea {
    text-align: left;
    max-width: 573px;
  }
  .area_course .box_course .text .btnArea .btn {
    margin-bottom: 0;
    text-align: center;
  }
  .area_course .box_course .text .btnArea .btn:last-child {
    margin-bottom: 0;
    margin-left: 0;
  }
  .area_course .box_course .text .btnArea .btn.btn_up {
    z-index: 99;
  }
  .area_course .box_course .text .btnArea.btnArea_2col {
    display: block;
    max-width: 573px;
  }
  .area_course .box_course .text .btnArea.btnArea_2col .btn {
    margin-bottom: 16px;
  }
  .area_course .box_course .text .btnArea.btnArea_2col .btn:last-child {
    margin-bottom: 16px;
  }
  .area_course .box_course .text p {
    max-width: 580px;
  }
  .area_course .box_course .img_2col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 auto;
  }
  .area_course .box_course .img_2col img {
    width: calc(50% - 12px);
    margin: 0 0 28px;
  }
  .area_course .box_course .img_2col img:first-child {
    margin: 0 0 28px;
  }
  /*======================
  ======= 詳細ページ =======
  ======================*/
  .sec_shrine_enshrined-deity {
    padding: 80px 20px 42px;
  }
  .sec_shrine_enshrined-deity02 {
    padding: 147px 20px 0;
  }
  .sec_shrine_enshrined-deity02 .sec__ttl {
    margin: 0 auto 134px;
  }
  .sec_shrine_enshrined-deity02 .list_prize_item li {
    width: calc(25% - 28px);
  }
  .sec_origin .area_origin {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
  }
  .sec_origin .area_origin .box_origin {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .sec_origin .area_origin .box_origin .text {
    width: 100%;
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    color: #fff;
    line-height: 1.8;
    order: 1;
    font-size: 1.9rem;
    text-align: justify;
    margin: 100px 0 50px;
  }
  .sec_origin .area_origin .box_origin .text p {
    margin: 0 0 0 15px;
    max-height: 285px;
  }
  .sec_origin .area_origin .box_origin .text p:last-child {
    margin: 0;
  }
  .sec_origin .area_origin .box_origin .text.text_pc {
    display: block;
  }
  .sec_origin .area_origin .box_origin .text.text_sp {
    display: none;
  }
  .sec_origin .area_origin .box_origin .ttl_shinto_ritual01 {
    width: 100%;
    order: 2;
    max-width: 165px;
    margin: 0 0 30px 30px;
  }
  .sec_origin .area_origin .box_origin .cultural_label {
    font-size: 2.2rem;
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    margin: 0 0 0 15px;
    background: #000000;
    border: 1px solid #d4b401;
    color: #d4b401;
    padding: 0 12px;
    text-align: center;
    letter-spacing: 8px;
  }
  .sec_origin .area_origin .box_origin .construction_year {
    font-size: 2.2rem;
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    margin: 0 0 0 25px;
    letter-spacing: 6px;
    min-height: 300px;
  }
  .sec_origin .area_origin .box_origin .construction_year span {
    writing-mode: lr-tb;
    -ms-writing-mode: horizontal-tb;
    -webkit-writing-mode: horizontal-tb;
  }
  .sec_origin .area_origin .box_origin .construction_year span.year {
    font-size: 1.6rem;
    text-align: center;
    display: inline-block;
    vertical-align: middle;
  }
  .sec_origin .area_origin .box_origin .construction_year.sp {
    display: none;
  }
  .sec_origin .ttl_shinto_ritual01 .ttl_shinto_ritual01_inner {
    max-height: 377px;
  }
  .ttl_shinto_ritual01 {
    position: relative;
  }
  .ttl_shinto_ritual01 .ttl_shinto_ritual01_inner {
    position: absolute;
    display: block;
    /*max-height: 630px;*/
  }
  .ttl_shinto_ritual01 h3 {
    font-size: 19px;
    display: flex;
    width: 100%;
    margin: auto;
    padding: 0;
    text-align: center;
  }
  .ttl_shinto_ritual01 h3 .jp {
    order: 2;
    display: block;
    background: none;
    color: #333;
    padding: 0;
    font-size: 4rem;
    letter-spacing: 7px;
    margin: 0;
    border-top: 2px solid #333;
    padding: 100px 50px 0px 0;
    position: relative;
    letter-spacing: 15px;
    text-align: left;
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
  }
  .ttl_shinto_ritual01 h3 .jp::before {
    display: none;
  }
  .ttl_shinto_ritual01 h3 .jp::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 2px;
    height: 240px;
    background: #333;
  }
  .ttl_shinto_ritual01 h3 .en {
    order: 1;
    display: block;
    padding: 103px 0 0;
    background: none;
    margin: 0;
    font-size: 1.4rem;
    color: #333;
    margin-right: 10px;
    text-align: left;
    letter-spacing: 3px;
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
  }
  .ttl_shinto_ritual01.ttl_shinto_ritual01_white h3 .jp {
    color: #fff;
    border-top: 2px solid #fff;
  }
  .ttl_shinto_ritual01.ttl_shinto_ritual01_white h3 .jp::before {
    background: #fff;
  }
  .ttl_shinto_ritual01.ttl_shinto_ritual01_white h3 .jp::after {
    background: #fff;
  }
  .ttl_shinto_ritual01.ttl_shinto_ritual01_white h3 .en {
    color: #fff;
  }
  .sec_benefits .area_benefits {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
  }
  .box_benefits {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 auto 80px;
  }
  .box_benefits .ttl_shinto_ritual01 {
    width: 100%;
    order: 3;
    max-width: 165px;
    margin-left: 30px;
  }
  .box_benefits .list_benefits {
    width: 100%;
    margin: 80px 0 0 auto;
    order: 2;
  }
  .box_benefits .list_benefits span {
    margin: 25px 0 0;
  }
  .box_benefits .img_benefits {
    width: 100%;
    order: 1;
    margin-right: 30px;
    text-align: center;
  }
  .box_benefits .img_benefits img {
    display: inline-block;
    max-width: 100%;
    height: auto;
  }
  .list_benefits {
    max-width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    flex-direction: row-reverse;
  }
  .list_benefits li {
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    font-size: 18px;
    letter-spacing: 7px;
    border-top: 2px solid #333;
    padding: 15px 3px 0;
    margin: 0 7px;
    min-width: 30px;
    word-break: keep-all;
    /*一覧のlabelにcss*/
  }
  .list_benefits li::before {
    display: none !important;
  }
  .list_benefits li span {
    display: inline-block;
    font-size: 1.2rem;
    margin: 15px 0 0;
    letter-spacing: 0;
  }
  .list_benefits li.green {
    border-top: 2px solid #75A34B;
  }
  .list_benefits li.red {
    border-top: 2px solid #AA5443;
  }
  .list_benefits li.blue {
    border-top: 2px solid #1B6E8E;
  }
  .list_benefits li.yellow {
    border-top: 2px solid #D4B401;
  }
  .list_benefits li.chinablue {
    border-color: #2A5CAA;
  }
  .list_benefits li.kimidori {
    border-color: #ED6D3D;
  }
  .list_benefits li.wakakusa {
    border-color: #ABC900;
  }
  .list_benefits li.momonohana {
    border-color: #F58F98;
  }
  .list_benefits li.ki {
    border-color: #FFD400;
  }
  .list_benefits li.nakahanada {
    border-color: #267CA7;
  }
  .list_benefits li.imayou {
    border-color: #D0576B;
  }
  .list_benefits li.ainezumi {
    border-color: #5C9291;
  }
  .list_benefits li.tanjero {
    border-color: #F15A22;
  }
  .list_benefits li.benigara {
    border-color: #8F2E14;
  }
  .list_benefits li.himawari {
    border-color: #F8B400;
  }
  .list_benefits li.benikaba {
    border-color: #B13546;
  }
  .list_benefits li.chitose {
    border-color: #3F7735;
  }
  .list_benefits li.ginnezu {
    border-color: #B5B5B5;
  }
  .list_benefits li.sumire {
    border-color: #7054a0;
  }
  .list_benefits li.tokiwa {
    border-color: #007c45;
  }
  .box_benefitsslider {
    width: calc(100% - 300px);
    margin: 0 auto;
  }
  .box_benefitsslider .nextarrow {
    position: absolute;
    top: 50%;
    right: -140px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    width: 75px;
    height: 25px;
    background: url(../img/shrine_enshrined-deity/img_rightarrow.svg);
    background-repeat: no-repeat;
    background-position: center center;
    cursor: pointer;
  }
  .box_benefitsslider .prevarrow {
    position: absolute;
    top: 50%;
    left: -140px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    width: 75px;
    height: 25px;
    background: url(../img/shrine_enshrined-deity/img_leftarrow.svg);
    background-repeat: no-repeat;
    background-position: center center;
    cursor: pointer;
  }
  .ttl_shinto_ritual02 {
    width: 220px;
    padding: 0;
    margin: 0 0 0 auto;
    order: 2;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .ttl_shinto_ritual02 h4 {
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    min-width: 41px;
    order: 3;
    font-size: 2.6rem;
    font-weight: normal;
    letter-spacing: 10px;
  }
  .ttl_shinto_ritual02 h4 .yomi {
    display: inline-block;
    font-size: 1.8rem;
    margin: 20px 0 0;
    letter-spacing: 2px;
    white-space: nowrap;
  }
  .ttl_shinto_ritual02 h4 .yomi span {
    position: relative;
    right: -2px;
  }
  .ttl_shinto_ritual02 h4 .yomi.long span {
    right: -2px;
  }
  .ttl_shinto_ritual02 .en {
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    order: 2;
    color: #707070;
    font-size: 1.4rem;
    letter-spacing: 1px;
    margin: 0 5px 0 0;
    min-width: 22px;
  }
  .ttl_shinto_ritual02 .jp {
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    order: 4;
  }
  .ttl_shinto_ritual02 .list_benefits {
    width: 100%;
    max-width: 160px;
    order: 1;
    margin: 200px 0 0 auto;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }
  .sec_shinto_ritual {
    /*その他のお社など*/
  }
  .sec_shinto_ritual.sec_shinto_ritual01 {
    padding: 0 0 100px 0;
  }
  .sec_shinto_ritual.sec_shinto_ritual02, .sec_shinto_ritual.sec_shinto_ritual03 {
    padding: 100px 0;
  }
  .sec_shinto_ritual .area_shinto_ritual {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0 20px;
    max-width: 1600px;
    margin: auto;
  }
  .sec_shinto_ritual .area_shinto_ritual .ttl_shinto_ritual01 {
    width: 100%;
    order: 2;
    max-width: 116px;
    margin-left: 30px;
  }
  .sec_shinto_ritual .area_shinto_ritual .ttl_shinto_ritual01 h3 .jp {
    font-size: 4rem;
    padding: 100px 20px 0 0;
    letter-spacing: 35px;
  }
  .sec_shinto_ritual .area_shinto_ritual .ttl_shinto_ritual01 h3 .jp.short {
    letter-spacing: 10px;
  }
  .sec_shinto_ritual .area_shinto_ritual .ttl_shinto_ritual01 h3 .en {
    color: #8E8E8E;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 {
    width: 100%;
    max-width: 1600px;
    background: #fff;
    order: 1;
    margin: 0 auto;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .img_shinto_ritual {
    width: calc(100% - 220px);
    order: 1;
    padding: 0 20px 0 0;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .img_shinto_ritual img {
    max-width: 100%;
    height: auto;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .text_shinto_ritual {
    width: 100%;
    min-width: 518px;
    order: 3;
    margin: 50px auto 0;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .text_shinto_ritual .text {
    width: auto;
    max-height: 225px;
    margin: 0 0 27px;
    line-height: 1.7;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .text_shinto_ritual .text p {
    margin: 0 0 0 20px;
    width: 100%;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .text_shinto_ritual .text p span {
    display: inline-block;
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    max-height: 225px;
    width: 100%;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .text_shinto_ritual .text p .pc {
    display: inline-block;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .text_shinto_ritual .text.text01 p:nth-of-type(1) {
    order: 2;
    width: 216px;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .text_shinto_ritual .text.text01 p:nth-of-type(2) {
    order: 1;
    width: 84px;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .text_shinto_ritual .text.text01 p:nth-of-type(3) {
    width: 189px;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .text_shinto_ritual .text.text02 p:nth-of-type(1) {
    order: 2;
    width: 162px;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .text_shinto_ritual .text.text02 p:nth-of-type(2) {
    order: 1;
    width: 297px;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .ttl_shinto_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: row-reverse;
    margin: 0 auto 50px;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .ttl_shinto_box .ttl_shinto_ritual01,
.sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .ttl_shinto_box .ttl_shinto_ritual02 {
    order: inherit;
    margin: 0;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .ttl_shinto_box .ttl_shinto_ritual02 {
    margin: 0 100px 0 0;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .shinto_read {
    display: block;
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    box-sizing: border-box;
    column-count: 2;
    column-gap: 53px;
    max-width: 100%;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .txt_shinto_read:nth:last-child {
    padding: 0;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .shinto_read02 {
    width: 100vw;
    column-fill: auto;
    -webkit-column-fill: auto;
    -moz-column-fill: auto;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .shinto_read02 span {
    writing-mode: lr-tb;
    -ms-writing-mode: horizontal-tb;
    -webkit-writing-mode: horizontal-tb;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .ttl_shinto_ritual02 {
    padding: 0 0 0 60px;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .txt_shinto_read01 {
    max-height: 13em;
    min-height: 13em;
    height: 100%;
    /*font-size: 0.83vw;*/
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .shinto_read02 {
    width: 100vw;
    column-fill: auto;
    -webkit-column-fill: auto;
    -moz-column-fill: auto;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .img_shinto_ritual {
    max-width: 512px;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    padding: 67px 10px 10px;
    overflow: hidden;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02 .ttl_shinto_ritual02 {
    width: calc(33.3333333333% - 1px);
    margin: 0 auto;
    padding: 0 14px;
    height: 100%;
    max-height: 485px;
    min-height: 430px;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02 .ttl_shinto_ritual02 .ttl_shinto_ritual02_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    left: 50%;
    transform: translate(-50%, 0%);
    -webkit-transform: translate(-50%, 0%);
    -ms-transform: translate(-50%, 0%);
    -moz-transform: translate(-50%, 0%);
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02 .ttl_shinto_ritual02 .ttl_shinto_ritual02_inner h4.wide {
    min-width: 70px;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02 .ttl_shinto_ritual02 .ttl_shinto_ritual02_inner h4 .yomi {
    display: inline-block;
    font-size: 1.6rem;
    margin: 10px 0 0;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02 .ttl_shinto_ritual02 .ttl_shinto_ritual02_inner h4 .yomi.long {
    display: block;
    margin: 100px 15px 0 5px;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02 .ttl_shinto_ritual02 .ttl_shinto_ritual02_inner .jp {
    letter-spacing: 5px;
    margin: 0 auto 0 8px;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02 .ttl_shinto_ritual02 .ttl_shinto_ritual02_inner .jp .bg {
    background: #929292;
    font-size: 1.4rem;
    color: #fff;
    display: inline-block;
    padding: 14px 3px 10px;
    margin: 0 0 16px;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02 .ttl_shinto_ritual02 .ttl_shinto_ritual02_inner .en {
    margin: 0 5px 0 auto;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02 .ttl_shinto_ritual02 .ttl_shinto_ritual02_inner .list_benefits {
    width: auto;
    margin: 130px 10px 0 auto;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02 .ttl_shinto_ritual02.mini {
    margin: 60px 0 0;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02 .ttl_shinto_ritual02.mini .jp {
    font-size: 1.3rem;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02 .ttl_shinto_ritual02.mini h4 {
    font-size: 1.8rem;
    letter-spacing: 4px;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02 .ttl_shinto_ritual02.mini h4 .yomi {
    font-size: 1.2rem;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02 .ttl_shinto_ritual02.mini .en {
    font-size: 1.2rem;
    margin: 0 0 0 auto;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02 .ttl_shinto_ritual02:last-child {
    margin-bottom: 139px;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02.short {
    display: block;
    max-width: 1139px;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02.short .box_shinto_ritual02_inner {
    width: calc(100% - 80px);
    margin: 0 auto 71px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    padding: 67px 10px 0;
    overflow: hidden;
    background: #eee;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02.short .box_shinto_ritual02_inner .ttl_shinto_ritual02 {
    width: calc(25% - 1px);
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02.short .box_shinto_ritual02_inner .ttl_shinto_ritual02:nth-child(5), .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02.short .box_shinto_ritual02_inner .ttl_shinto_ritual02:nth-child(6), .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02.short .box_shinto_ritual02_inner .ttl_shinto_ritual02:nth-child(7), .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02.short .box_shinto_ritual02_inner .ttl_shinto_ritual02:nth-child(8) {
    margin-bottom: 30px;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02.short .box_shinto_ritual02_inner .ttl_shinto_ritual02 .jp {
    font-size: 1.3rem;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02.short .box_shinto_ritual02_inner .ttl_shinto_ritual02 h4 {
    font-size: 2rem;
    letter-spacing: 4px;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02.short .box_shinto_ritual02_inner .ttl_shinto_ritual02 h4 .yomi {
    font-size: 1.2rem;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02.short .box_shinto_ritual02_inner .ttl_shinto_ritual02 .en {
    font-size: 1.2rem;
    margin: 0 0 0 auto;
  }
  .sec_shinto_ritual .sec_other_shinto {
    max-width: 916px;
    margin: auto;
  }
  .sec_shinto_ritual .sec_other_shinto .other_shinto_col {
    text-align: center;
  }
  .sec_shinto_ritual .sec_other_shinto .other_shinto_col .ttl_other_shinto {
    margin-bottom: 1em;
  }
  .sec_shinto_ritual .sec_other_shinto .other_shinto_col .ttl_other_shinto h4 .yomi {
    display: inline-block;
    margin-left: 1em;
    font-size: 1.2rem;
  }
  .sec_shinto_ritual .sec_other_shinto .other_shinto_col .ttl_other_shinto .en {
    font-size: 1.4rem;
  }
  .sec_shinto_ritual .sec_other_shinto .other_shinto_col dd {
    display: flex;
    flex-wrap: wrap;
    /*justify-content: space-between;*/
    flex-direction: column;
  }
  .sec_shinto_ritual .sec_other_shinto .other_shinto_col dd .other_shinto_txtbox {
    /*width:65%;*/
  }
  .sec_shinto_ritual .sec_other_shinto .other_shinto_col dd .img_other_shinto {
    /*width:30%;*/
  }
  .sec_shinto_ritual .sec_other_shinto .other_shinto_col dd .img_other_shinto img {
    width: 100%;
    max-width: 400px;
  }
  .midokoro_spot_btn {
    margin: 0;
    padding-top: 80px;
    padding-bottom: 140px;
  }
  .midokoro_spot_btn p {
    font-size: 1.8rem;
  }
  .midokoro_spot_btn .btn {
    min-width: 400px;
  }
}
.other_shrines .sec_shinto_ritual .area_shinto_ritual {
  padding: 0 20px;
}
.other_shrines .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 {
  display: flex;
  justify-content: center;
}
.other_shrines .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01:nth-child(1) {
  order: 2;
  display: block;
}
.other_shrines .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01:nth-child(2) {
  order: 1;
}
.other_shrines .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .ttl_shinto_ritual02 {
  padding: 0;
  margin: auto;
}
.other_shrines .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .shinto_read {
  width: auto;
  column-count: 1;
  padding: 53px 0 0 0;
  text-align: justify;
}
.other_shrines .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .txt_shinto_read01 {
  max-height: 20em;
  min-height: 5em;
}
.other_shrines .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .txt_shinto_read02 {
  max-height: 20em;
  min-height: 5em;
}
.other_shrines .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .text_shinto_ritual {
  width: 100%;
  min-width: auto;
  margin: 0 auto;
  display: flex;
  justify-content: center;
}

/*本殿の右タイトル消した場合*/
.no_ttl_shinto .area_shinto_ritual {
  padding: 0;
  display: block;
}

@media screen and (min-width: 769px) and (max-width: 1600px) {
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .shinto_read {
    /*float: none;*/
    width: 100vw;
    column-count: 3;
    column-fill: auto;
    -webkit-column-fill: auto;
    -moz-column-fill: auto;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .ttl_shinto_ritual02 {
    padding: 0 0 0 40px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1060px) {
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .shinto_read {
    column-count: 4;
  }
}
@media screen and (min-width: 769px) and (max-width: 890px) {
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .shinto_read {
    column-count: 5;
  }
}
@media screen and (min-width: 961px) {
  /*一覧ページ*/
  .sort_profit li {
    width: calc(25% - 10px);
  }
  .list_course li {
    width: calc(25% - 40px);
    margin: 0 40px 13px 0;
  }
  .area_course .box_course .img {
    margin-right: 68px;
  }
  /*詳細*/
  .sec_origin .area_origin .box_origin .text p {
    margin: 0 0 0 50px;
  }
  .sec_origin .area_origin .box_origin .text p:last-child {
    margin: 0;
  }
  .sec_origin .area_origin .box_origin .text .cultural_label {
    margin: 0 0 0 35px;
  }
  .sec_origin .area_origin .box_origin .text .construction_year {
    margin: 0 0 0 46px;
  }
  .sec_origin .area_origin .box_origin .ttl_shinto_ritual01 {
    max-width: 165px;
    /*margin: 0 40px 70px 130px;*/
    margin: 0 40px 70px 80px;
  }
  .box_benefits .ttl_shinto_ritual01 {
    margin-left: 110px;
  }
  .area_course .box_course .text .btnArea .btn:first-child {
    margin-right: 5px;
  }
  .area_course .box_course .text .btnArea.btnArea_2col {
    display: flex;
  }
}
@media screen and (min-width: 1281px) {
  /*一覧ページ*/
  .sort_profit li {
    width: calc(20% - 10px);
  }
  .list_course li {
    width: calc(20% - 40px);
    margin: 0 40px 13px 0;
  }
  /*======================
  ======= 詳細ページ =======
  ======================*/
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual02.wide {
    max-width: 1139px;
    padding: 67px 111px 0;
  }
}
@media screen and (min-width: 1600px) {
  /*======================
  ======= 詳細ページ =======
  ======================*/
  .ttl_shinto_ritual01 h3 .en {
    margin-right: 20px;
  }
  .box_benefitsslider {
    width: 100%;
  }
  .sec_shinto_ritual .area_shinto_ritual .ttl_shinto_ritual01 {
    max-width: 223px;
  }
  .sec_shinto_ritual .area_shinto_ritual .ttl_shinto_ritual01 h3 .jp {
    padding: 70px 50px 0px 0;
    font-size: 4rem;
  }
  .sec_shinto_ritual .area_shinto_ritual .ttl_shinto_ritual01 h3 .en {
    margin: 0 30px 0 0;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .ttl_shinto_ritual02 {
    order: 3;
    width: 100%;
    max-width: 210px;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .img_shinto_ritual {
    order: 2;
    width: 100%;
  }
  .sec_shinto_ritual .area_shinto_ritual .box_shinto_ritual01 .text_shinto_ritual {
    order: 1;
    margin: 0 60px 0 0;
  }
  .sec_map01_pc {
    padding: 100px 0 0;
  }
}
@media screen and (min-width: 880px) {
  .tategaki {
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    box-sizing: border-box;
    column-count: 3;
    column-gap: 50px;
    max-width: 100%;
    width: 100vw;
    height: 47em;
    column-fill: auto;
    -webkit-column-fill: auto;
    -moz-column-fill: auto;
  }
}
@media screen and (min-width: 1200px) {
  .tategaki {
    column-count: 2;
    height: 40em;
    max-width: 80%;
    margin: 0 auto;
  }
}
@media screen and (min-width: 950px) {
  _:-ms-lang(x)::-ms-backdrop, .tategaki {
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    box-sizing: border-box;
    column-count: 3;
    column-gap: 50px;
    max-width: 100%;
    width: 100vw;
    column-fill: auto;
    -webkit-column-fill: auto;
    -moz-column-fill: auto;
  }
}
@media screen and (min-width: 1250px) {
  _:-ms-lang(x)::-ms-backdrop, .tategaki {
    column-count: 2;
    height: 36em;
  }
}
@media screen and (min-width: 1600px) {
  _:-ms-lang(x)::-ms-backdrop, .tategaki {
    padding: 0 100px;
  }
}
/*==================
主な神事・行事
==================*/
.sec_event01 {
  padding: 0 13px 35px;
}

.sec_event_title {
  display: block;
  background: url(../img/event/main_event/img_event_title.jpg);
  background-size: auto 200px;
  background-position: left -90px center;
  text-align: center;
  padding: 48px 0 52px;
  margin: 0 auto 37px;
  position: relative;
  cursor: pointer;
  transition: 0.3s;
}
.sec_event_title:hover {
  opacity: 0.7;
}
.sec_event_title h2 {
  font-size: 3.6rem;
  position: relative;
  z-index: 1;
}
.sec_event_title h2 img {
  margin: 0 0 10px;
}
.sec_event_title p {
  font-size: 1.4rem;
  font-weight: bold;
  position: relative;
  z-index: 1;
  padding: 0 15px 0 0;
}
.sec_event_title::before {
  content: "";
  display: inline-block;
  width: 60%;
  height: 100%;
  background: rgb(255, 255, 255);
  background: linear-gradient(-90deg, rgb(255, 255, 255) 50%, rgba(255, 255, 255, 0) 100%);
  position: absolute;
  top: 0;
  right: 0;
}
.sec_event_title::after {
  content: "";
  display: inline-block;
  width: 27px;
  height: 6px;
  background: url(../img/common/img_rightarrow.svg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  z-index: 2;
  top: 50%;
  right: 17px;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
}

main .event .mainHeader .pageTitle {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 1;
}
main .event .mainHeader .pageTitle::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  display: block;
  background: rgba(0, 0, 0, 0.3);
}

.main_event_bg .mainHeader .pageTitle {
  background-image: url(/wp-content/themes/yasaka/img/event/main_event/img_event_main.png);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 1;
}
.main_event_bg .mainHeader .pageTitle::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  display: block;
  background: rgba(0, 0, 0, 0.3);
}

.area_event01 {
  width: 100%;
  max-width: 1028px;
  margin: 0 auto;
}
.area_event01 .box_event {
  display: block;
  position: relative;
  cursor: pointer;
  transition: 0.3s;
}
.area_event01 .box_event:hover {
  opacity: 0.7;
}
.area_event01 .box_event::after {
  content: "";
  display: inline-block;
  width: 27px;
  height: 6px;
  background: url(../img/common/img_rightarrow.svg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  z-index: 2;
  top: 50%;
  right: 17px;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
}
.area_event01 .box_event.box_event01 {
  background: url(../img/event/main_event/img_event_shougatsu.jpg);
  background-repeat: no-repeat;
  background-position: top -76px left 0px;
  background-size: auto 160px;
  margin: 0 auto 30px;
}
.area_event01 .box_event.box_event02 {
  background: url(../img/event/main_event/img_event_gion.jpg);
  background-repeat: no-repeat;
  background-position: top -100px left -21px;
  background-size: auto 212px;
  margin: 0 auto 20px;
}
.area_event01 .box_event.box_event03 {
  background: url(../img/event/main_event/img_event_setsubun.jpg);
  background-repeat: no-repeat;
  background-position: top -27px left 19px;
  background-size: auto 120px;
  margin: 0 auto 20px;
}
.area_event01 .box_event h3 {
  padding: 34px 0 34px 165px;
}

.list_event_tab {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: calc(100% + 6px);
  margin: 0 0 70px -3px;
}
.list_event_tab li {
  width: calc(25% - 6px);
  margin: 0 3px 6px;
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.2;
  border: 1px solid #E2D9BF;
  background: #F7F3E8;
  position: relative;
  min-height: 63px;
  animation-duration: 0s;
  cursor: pointer;
}
.list_event_tab li.active {
  background: #E2D9BF;
}
.list_event_tab li span {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
}

/*==================
	祇園祭
==================*/
.sec_gion_about {
  background: url(../img/event/gion/bg_gion_about.jpg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;
}
.sec_gion_about .sec__read .en {
  max-width: 850px;
  padding: 0;
  margin: 45px auto 70px;
}
.sec_gion_about .sec__ttl {
  margin: 0 auto 70px;
}
.sec_gion_about .img {
  height: 350px;
  width: calc(100% + 40px);
  margin: 40px 0 0 -20px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.sec_gion_about .img img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
}

.sec_gion_origin {
  padding: 10px 20px 70px;
}
.sec_gion_origin .text_gion_origin .text p {
  margin: 0 auto 30px;
}
.sec_gion_origin .img_gion_origin {
  text-align: center;
  padding: 0 18px;
}
.sec_gion_origin .img_gion_origin img {
  display: inline-block;
  max-width: 100%;
  height: auto;
}

/*
.sec_gion_state{
	position: relative;
	margin: 0 auto;
	padding: 0 0 65px;
	section{
		padding: 0 20px;
	}
	.slider_gion_state_outer{
		position: relative;
		.slider_gion_state{
			margin: auto;
			position: relative;
			z-index: 1;
			padding: 0 0 55px;
			.item{
				width: 100%;
				img{
					display: block;
					width: calc(100% - 40px);
					margin: auto;
					max-width: 100%;
					height: auto;
				}
				p{
					opacity: 0;
					width: calc(100% - 40px);
					text-align: left;
					margin: 14px auto 0;
				}
				&.slick-active{
					p{
						opacity: 1;
					}
				}
			}
			.nextarrow{
				position: absolute;
		        bottom: 0;
		        right: 15%;
		        width: 75px;
		        height: 25px;
		        background: url(../img/event/gion/img_rightarrow.svg);
		        background-repeat: no-repeat;
		        background-position:center center;
		        z-index: 1;
		        cursor: pointer;
			}
			.prevarrow{
			    position: absolute;
			    bottom: 0;
			    left: 15%;
			    width: 75px;
			    height: 25px;
			    background: url(../img/event/gion/img_leftarrow.svg);
			    background-repeat: no-repeat;
			    background-position: center center;
			    z-index: 1;
			    cursor: pointer;
			}
			.slick-dots{
				margin: 0;
				bottom: 0;
				li{
				    width: 11px;
				    height: 11px;
				    margin: 0 7px;
					button{
						padding: 0;
						width: 11px;
						height: 11px;
						&::before{
							content: '';
							width: 11px;
							height: 11px;
							border-radius: 100px;
							background: #E2D9BF;
							opacity: 1;
						}
					}
					&.slick-active{
						button{
							&::before{
								background: #E9380E;
							}
						}
					}
				}
			}
		}
		.slick-counter{
			display: none;
		}
	}
}
*/
.slidearea {
  position: relative;
}

.sec_gion_state {
  background: #EDE8D8;
  position: relative;
  padding: 60px 0;
  margin: 0 auto 70px;
}
.sec_gion_state::before {
  content: "";
  display: block;
  width: 30%;
  height: 100%;
  background: #E2D9BF;
  position: absolute;
  top: 0;
  left: 0;
}
.sec_gion_state .sec__ttl01 {
  position: relative;
  z-index: 1;
  padding: 0 15px;
}
.sec_gion_state .readtext {
  position: relative;
  z-index: 1;
  font-size: 1.4rem;
  padding: 0 15px;
  text-align: center;
  margin: 0 auto 32px;
}
.sec_gion_state .slidearea {
  position: relative;
  z-index: 1;
}

.area_gion_state .item {
  text-align: center;
}
.area_gion_state .item img {
  width: calc(100% - 40px);
  margin: 0 auto;
  height: auto;
}
.area_gion_state .item a:hover {
  box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.1);
}

.area_gion_state_text {
  background: #fff;
  width: calc(100% - 40px);
  padding: 35px 20px 100px;
  margin: auto;
  overflow: hidden;
}
.area_gion_state_text.slick-dotted.slick-slider {
  margin: 36px auto 0;
}
.area_gion_state_text .item {
  text-align: center;
}
.area_gion_state_text .item .blc-ttl {
  padding: 0 0 25px;
  text-align: center;
}
.area_gion_state_text .item .blc-ttl:after {
  left: 50%;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -moz-transform: translate(-50%, 0);
}
.area_gion_state_text .item .blc-ttl02 {
  padding: 0;
  margin: 0 auto 20px;
}
.area_gion_state_text .item .blc-ttl02 span {
  font-size: 1.8rem;
}
.area_gion_state_text .item .blc-ttl02:after {
  display: none;
}
.area_gion_state_text .item .type {
  margin: 0 0 10px;
}
.area_gion_state_text .item .type span {
  display: inline-block;
  color: #fff;
  font-size: 1.4rem;
  background: #AA5443;
  padding: 2px 5px;
}
.area_gion_state_text .item dl dt {
  font-size: 1.6rem;
  font-weight: normal;
}
.area_gion_state_text .item dl dd {
  font-size: 1.8rem;
  margin: 7px 0;
}
.area_gion_state_text .item dl dd.dd02 {
  font-size: 1.6rem;
}
.area_gion_state_text .item p {
  text-align: left;
}
.area_gion_state_text .prevarrow {
  position: absolute;
  bottom: 40px;
  left: 12%;
  width: 33px;
  height: 15px;
  background: url(../img/about/img_leftarrow.svg);
  background-repeat: no-repeat;
  background-position: center center;
  z-index: 1;
  cursor: pointer;
}
.area_gion_state_text .nextarrow {
  position: absolute;
  bottom: 40px;
  right: 12%;
  width: 33px;
  height: 15px;
  background: url(../img/about/img_rightarrow.svg);
  background-repeat: no-repeat;
  background-position: center center;
  z-index: 1;
  cursor: pointer;
}
.area_gion_state_text .slick-dots {
  margin: 0;
  bottom: 33px;
  left: 0;
}
.area_gion_state_text .slick-dots li {
  width: 20px;
  height: 11px;
  margin: 0 7px;
  text-align: center;
}
.area_gion_state_text .slick-dots li button {
  padding: 0;
  width: 11px;
  height: 11px;
  margin: auto;
  display: block;
}
.area_gion_state_text .slick-dots li button::before {
  content: "";
  width: 11px;
  height: 11px;
  border-radius: 100px;
  background: #E2D9BF;
  opacity: 1;
  display: block;
  margin: auto;
  position: static;
}
.area_gion_state_text .slick-dots li.slick-active button::before {
  background: #E9380E;
}

.area_gion_state_text_gion .inner {
  overflow: hidden;
}

.sec_gion_somin {
  padding: 0;
}
.sec_gion_somin .area_gion_somin .text_gion_somin {
  margin: 0 auto 45px;
  padding: 0 30px;
}
.sec_gion_somin .area_gion_somin .text_gion_somin p {
  margin: 0 auto 30px;
}
.sec_gion_somin .area_gion_somin .img_gion_somin {
  margin: 0 0 60px;
  text-align: center;
}
.sec_gion_somin .area_gion_somin .img_gion_somin img {
  display: inline-block;
  max-width: 100%;
  height: auto;
}

.box_article_event {
  padding: 12px 0 0;
  margin: 0 auto 33px;
  position: relative;
  overflow: hidden;
}
.box_article_event::after {
  position: absolute;
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-image: linear-gradient(to right, #707070, #707070 3px, transparent 3px, transparent 3px);
  background-size: 9px 1px;
  background-repeat: repeat-x;
}
.box_article_event .text {
  margin: 0 auto 25px;
}
.box_article_event .text time {
  display: inline-block;
  background: #F7F3E8;
  font-size: 1.4rem;
  min-width: 145px;
  padding: 4px 10px 6px;
  margin: 0 0 22px;
  text-align: center;
}
.box_article_event .text h4 {
  font-size: 1.8rem;
  font-weight: bold;
  margin: 0 0 16px;
  display: flex;
  align-items: center;
}
.box_article_event .text h4 span.canceled {
  color: #fff;
  font-size: 1.4rem;
  background-color: #E9380E;
  padding: 1px 18px;
  margin: 0 0 0 5px;
  min-width: 100px;
  text-align: center;
}
.box_article_event .text p {
  margin: 0 0 19px;
}
.box_article_event .img {
  max-width: 438px;
  margin: 0 auto;
  text-align: center;
}
.box_article_event .img img {
  margin: 0 0 25px;
}
.box_article_event .img p {
  margin: 8px 0 25px;
}
.box_article_event .movie {
  width: 100%;
  padding-bottom: 56.25%;
  height: 0px;
  position: relative;
}
.box_article_event .movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*==================
正月祭事
==================*/
.sec_e-under section {
  padding: 0 20px;
  max-width: 1240px;
}
.sec_e-under section .blc-ttl {
  margin: 10px 0 40px;
}
.sec_e-under section .blc-ttl02 {
  text-align: center;
  font-size: 2.4rem;
  margin: 0 auto 30px;
}
.sec_e-under section .blc-ttl03 {
  font-size: 2.4rem;
  font-weight: normal;
  margin: 0 auto 10px;
}
.sec_e-under.sec_e-under03 .movie_e-under {
  margin: 0 auto;
}

.sec_inner {
  max-width: 995px;
  margin: auto;
}

.head_e-under {
  position: relative;
  color: #fff;
  overflow: hidden;
  margin: 0 auto 20px;
  background: #000;
}
.head_e-under::after {
  content: "";
  display: inline-block;
  width: 100%;
  max-width: 500px;
  min-width: 50%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: rgb(0, 0, 0);
  background: linear-gradient(90deg, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0.56) 22%, rgba(0, 0, 0, 0) 100%);
}
.head_e-under .head_e-under_row {
  max-width: 1240px;
  margin: 0 auto;
  padding: 72px 20px;
  position: relative;
  z-index: 1;
}
.head_e-under .head_e-under_row .time {
  display: block;
  font-size: 1.4rem;
  margin: 0 0 5px;
}
.head_e-under .head_e-under_row h2 {
  font-size: 2.6rem;
}
.head_e-under .head_e-under_row h2 span {
  margin: 0 0 0 5px;
  font-size: 2rem;
  display: inline-block;
}
.head_e-under .head_e-under_row h2 span.small {
  font-size: 1.2rem;
  display: block;
  margin: 5px 0 2px;
}
.head_e-under.head_e-under_shougatsu03 .head_e-under_row {
  padding: 59px 20px;
}
.head_e-under img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  z-index: -1;
  width: 100%;
  height: auto;
}

@media screen and (max-width: 380px) {
  .head_e-under img {
    width: auto;
    min-height: 213px;
  }
}
.img_e-under {
  text-align: center;
  margin: 0 0 28px;
}
.img_e-under .col2 {
  margin: 10px auto 0;
}
.img_e-under .col2 .img {
  margin: 0 auto 10px;
}
.img_e-under .col2 .img img {
  width: 100%;
}
.img_e-under p {
  margin: 10px 0 0;
  text-align: left;
}
.img_e-under p.e_under_txt {
  color: #000000;
}

.text_e-under {
  margin: 0 0 45px;
  line-height: 1.8;
}
.text_e-under p {
  max-width: 1120px;
  margin: 0 auto 37px;
}
.text_e-under p.red {
  color: #E9380E;
}
.text_e-under p.headline {
  margin: 0 auto 7px;
  font-size: 1.8rem;
}

.box_e-under_txt_only h3,
.box_e-under_img-and-text h3 {
  font-size: 2.4rem;
  margin: 0 0 30px;
  line-height: 1.6;
}

.text_e-under02 {
  border: 1px solid #777;
  margin: 0 auto 50px;
}
.text_e-under02 .text_e-under02_inner {
  padding: 20px 15px;
  max-width: 662px;
  margin: auto;
}
.text_e-under02 .text_e-under02_inner h3 {
  font-size: 2.5rem;
  margin: 0 auto 15px;
  text-align: center;
}
.text_e-under02 .text_e-under02_inner h4 {
  font-size: 2rem;
  margin: 0 0 15px;
}
.text_e-under02 .text_e-under02_inner p {
  margin: 0 auto 15px;
  font-size: 1.6rem;
}
.text_e-under02 .text_e-under02_inner table tr th {
  font-weight: normal;
  font-size: 1.6rem;
  width: 100px;
  min-width: 100px;
  padding: 35px 0 15px;
}
.text_e-under02 .text_e-under02_inner table tr td {
  font-size: 1.6rem;
  width: 100%;
}
.text_e-under02 .border {
  width: 100%;
  height: 1px;
  background: #707070;
  display: block;
  margin: 20px 0 50px;
}

@media screen and (max-width: 768px) {
  .text_e-under02 .text_e-under02_inner table tr th, .text_e-under02 .text_e-under02_inner table tr td {
    display: block;
  }
}
.box_e-under_goods {
  background: #F5F3EA;
  padding: 31px 0 0;
  margin: 0 auto 60px;
}
.box_e-under_goods h3 {
  font-size: 2.4rem;
  color: #EB6F51;
  font-weight: normal;
  margin: 0 0 10px;
  padding: 0 23px;
}
.box_e-under_goods .box_e-under_goods_inner {
  padding: 20px 23px 3px;
  margin: 0 auto 20px;
  overflow: hidden;
  position: relative;
}
.box_e-under_goods .box_e-under_goods_inner .ttl {
  font-size: 2.4rem;
  margin: 0 0 20px;
}
.box_e-under_goods .box_e-under_goods_inner .ttl span {
  display: block;
  font-size: 1.6rem;
}
.box_e-under_goods .box_e-under_goods_inner .btnArea .btn {
  width: 100%;
  max-width: 280px;
  min-width: auto;
}
.box_e-under_goods .box_e-under_goods_inner .text_e-under {
  margin: 0 0 20px;
}
.box_e-under_goods .box_e-under_goods_inner .text_e-under p {
  line-height: 1.8;
}
.box_e-under_goods .box_e-under_goods_inner .img_e-under {
  margin: 0 0 20px;
}
.box_e-under_goods .box_e-under_goods_inner::after {
  content: "";
  display: block;
  height: 1px;
  width: calc(100% - 50px);
  background: #707070;
  max-width: 1200px;
  margin: 0 auto;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0%);
  -webkit-transform: translate(-50%, 0%);
  -ms-transform: translate(-50%, 0%);
  -moz-transform: translate(-50%, 0%);
}
.box_e-under_goods .box_e-under_goods_inner:last-child::after {
  display: none;
}

.slider_e-under {
  margin: 0 0 60px -20px !important;
  width: calc(100% + 40px);
  position: relative;
}
.slider_e-under .slick-list {
  overflow: hidden;
}
.slider_e-under .slick-dots {
  margin: 0;
  bottom: -35px;
}
.slider_e-under .slick-dots li {
  width: 11px;
  height: 11px;
  margin: 0 7px;
}
.slider_e-under .slick-dots li button {
  padding: 0;
  width: 11px;
  height: 11px;
}
.slider_e-under .slick-dots li button::before {
  content: "";
  width: 11px;
  height: 11px;
  border-radius: 100px;
  background: #E2D9BF;
  opacity: 1;
}
.slider_e-under .slick-dots li.slick-active button::before {
  background: #E9380E;
}
.slider_e-under .img_e-under {
  overflow: hidden;
  margin: 0;
}
.slider_e-under .img_e-under img {
  width: calc(100% - 12px);
  margin: 0 auto;
}

.movie_e-under {
  max-width: 1000px;
  margin: 0 auto 100px;
}
.movie_e-under p {
  width: 100%;
  padding-bottom: 56.25%;
  height: 0px;
  position: relative;
}
.movie_e-under p iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*==================
祇園蛭子
==================*/
.ebisu .box_e-under_img-and-text {
  max-width: 100%;
}
.ebisu .text_e-under p {
  max-width: 100%;
}

.slider_e-under_ebisu01 {
  padding: 0;
}
.slider_e-under_ebisu01 .item {
  padding: 0;
}
.slider_e-under_ebisu01 .item img {
  width: calc(100% - 18px);
  margin: 0 auto;
}

/*==================
すいけいかい
==================*/
.sukeikai, .gion, .gion02, .gion_event {
  padding: 0;
}
.sukeikai .mainHeader .pageTitle, .gion .mainHeader .pageTitle, .gion02 .mainHeader .pageTitle, .gion_event .mainHeader .pageTitle {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 1;
}
.sukeikai .mainHeader .pageTitle::before, .gion .mainHeader .pageTitle::before, .gion02 .mainHeader .pageTitle::before, .gion_event .mainHeader .pageTitle::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  display: block;
  background: rgba(0, 0, 0, 0.3);
}

.gion_ebisu_bg .mainHeader .pageTitle {
  background-image: url(/wp-content/themes/yasaka/img/event/ebisu/img_event_ebisu_main.png);
}

.setsubun_bg .mainHeader .pageTitle {
  background-image: url(/wp-content/themes/yasaka/img/event/setsubun/img_event_setsubun_main.png);
}

.new_year_bg .mainHeader .pageTitle {
  background-image: url(/wp-content/themes/yasaka/img/event/shougatsu/img_event_shougatsu_main.png);
}

.gion_map_bg .mainHeader .pageTitle {
  background-image: url(/wp-content/themes/yasaka/img/event/gion/cruisemap/img_cruisemap_main_sp.jpg);
}

.event_gion_bg .mainHeader .pageTitle {
  background-image: url(/wp-content/themes/yasaka/img/event/gion/event/img_gion_event_main01_sp.jpg);
}

.gion02_event_bg .mainHeader .pageTitle {
  background-image: url(/wp-content/themes/yasaka/img/event/gion/event/img_gion_event_main_sp.jpg);
}

/*==================
お神輿・山鉾のご紹介、巡行図
==================*/
.gion_cruise {
  padding: 0 0 30px;
  border-bottom: 1px dashed #534C4C;
}
.gion_cruise .hoko_number {
  max-width: 700px;
  display: flex;
  justify-content: center;
  margin: 0 auto;
}
.gion_cruise .hoko_number .map_itemlist {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 0 -7px;
}
.gion_cruise .hoko_number .map_itemlist li {
  width: 33.3333333333%;
  margin: 0 0 14px;
  font-size: 1.4rem;
  position: relative;
  padding: 3px 0 3px 33px;
}
.gion_cruise .hoko_number .map_itemlist li span {
  display: inline-block;
  background: #000;
  color: #fff;
  border-radius: 100%;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
  padding: 3px 1px;
  width: 28px;
  height: 28px;
  font-size: 1.2rem;
}

.sec_gion_state_cruisemap {
  padding: 0 0 50px;
}
.sec_gion_state_cruisemap .sec__ttl {
  margin: 0 auto 64px;
  width: calc(100% - 40px);
  max-width: 1240px;
}
.sec_gion_state_cruisemap .sec__ttl.left {
  text-align: left;
}
.sec_gion_state_cruisemap .sec__ttl.left span {
  margin-right: auto;
  margin-left: auto;
  display: block;
  max-width: 280px;
  text-align: center;
}

.area_gion_state_cruisemap01_text,
.area_gion_state_cruisemap02_text {
  padding-bottom: 40px;
}
.area_gion_state_cruisemap01_text .inner,
.area_gion_state_cruisemap02_text .inner {
  overflow: hidden;
  padding: 0 0 50px;
}
.area_gion_state_cruisemap01_text .inner.slick-slider,
.area_gion_state_cruisemap02_text .inner.slick-slider {
  margin: 0;
}
.area_gion_state_cruisemap01_text .prevarrow,
.area_gion_state_cruisemap02_text .prevarrow {
  bottom: 0 !important;
}
.area_gion_state_cruisemap01_text .nextarrow,
.area_gion_state_cruisemap02_text .nextarrow {
  bottom: 0 !important;
}
.area_gion_state_cruisemap01_text .slick-dots,
.area_gion_state_cruisemap02_text .slick-dots {
  bottom: 0 !important;
}

.sec_gion_state_cruisemap_inner {
  overflow: hidden;
  background: #EDE8D8;
  position: relative;
  padding: 96px 0 40px;
  margin: 0 auto;
}
.sec_gion_state_cruisemap_inner::before {
  content: "";
  display: block;
  width: 30%;
  height: 100%;
  background: #E2D9BF;
  position: absolute;
  top: 0;
  left: 0;
}
.sec_gion_state_cruisemap_inner > .blc-ttl {
  font-size: 4rem;
  padding: 0 20px 15px;
  margin: 0 auto 66px;
  text-align: center;
}
.sec_gion_state_cruisemap_inner > .blc-ttl::after {
  left: 50%;
  transform: translate(-50%, 0%);
  -webkit-transform: translate(-50%, 0%);
  -ms-transform: translate(-50%, 0%);
  -moz-transform: translate(-50%, 0%);
}

.sec_cruisemap03 {
  margin: 0 auto 77px;
}
.sec_cruisemap03 .tab_shrine_enshrined-deity {
  max-width: 640px;
  margin-bottom: 38px;
}
.sec_cruisemap03 .tab_shrine_enshrined-deity li {
  width: calc(50% - 12px);
  min-height: 64px;
  padding-top: 11px;
}

.sec_cruisemap04 {
  padding: 0 0 50px;
}

.yamahoko_cruisemap .item .img {
  text-align: center;
  margin: 0 0 45px;
}
.yamahoko_cruisemap .item .text {
  margin: 0 0 16px;
}
.yamahoko_cruisemap .item .text h4 {
  color: #DEDEDE;
  font-size: 4rem;
  padding: 0 0 10px;
  margin: 0 0 25px;
  border-bottom: 1px solid #707070;
}
.yamahoko_cruisemap .item .text p {
  line-height: 2;
}

.slider_cruisemap_outer {
  overflow: hidden;
  padding: 50px 0 126px;
  margin: 0 auto 20px;
}
.slider_cruisemap_outer section .blc-ttl {
  font-size: 2.8rem;
  letter-spacing: 5px;
  margin-bottom: 68px;
}
.slider_cruisemap_outer section .blc-ttl .span01 {
  letter-spacing: 1px;
  display: inline-block;
  font-size: 1.6rem;
}
.slider_cruisemap_outer section .blc-ttl .span02 {
  letter-spacing: 1px;
  display: block;
  font-size: 2rem;
}
.slider_cruisemap_outer.slider_cruisemap_outer01 {
  background: #eee;
}
.slider_cruisemap_outer.slider_cruisemap_outer02 {
  background: #E2D9BF;
  margin: 0 auto 114px;
}
.slider_cruisemap_outer .slick-list {
  overflow: hidden;
}

.slider_cruisemap {
  margin: 0 auto 21px;
}
.slider_cruisemap .item {
  /*group01*/
  /*ここから追加*/
  /*group02*/
  /*ここから追加*/
}
.slider_cruisemap .item a {
  display: block;
  width: calc(100% - 20px);
  margin: auto;
  background: #ccc;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-position: top center !important;
  position: relative;
  text-align: center;
  color: #fff;
  padding: 53px 10px;
}
.slider_cruisemap .item a > * {
  position: relative;
  z-index: 1;
}
.slider_cruisemap .item a .img {
  text-align: center;
  min-height: 128px;
  margin: 0 auto 10px;
}
.slider_cruisemap .item a .img img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
}
.slider_cruisemap .item a h4 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2.4rem;
  margin: 0 auto 7px;
}
.slider_cruisemap .item a p {
  font-size: 1.4rem;
}
.slider_cruisemap .item a::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
}
.slider_cruisemap .item.item_shijokasa-hoko a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_shijokasa-hoko.jpg);
}
.slider_cruisemap .item.item_shijo-kasaihoko a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_shijo-kasaihoko.jpg);
}
.slider_cruisemap .item.item_hoka-hoko a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_hoka-hoko.jpg);
}
.slider_cruisemap .item.item_niwatori-hoko a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_niwatori-hoko.jpg);
}
.slider_cruisemap .item.item_naginata-hoko a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_naginata-hoko.jpg);
}
.slider_cruisemap .item.item_kanko-hoko a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_kanko-hoko.jpg);
}
.slider_cruisemap .item.item_kikusui-hoko a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_kikusui-hoko.jpg);
}
.slider_cruisemap .item.item_tsuki-hoko a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_tsuki-hoko.jpg);
}
.slider_cruisemap .item.item_fune-hoko a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_fune-hoko.jpg);
}
.slider_cruisemap .item.item_iwato-yama a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_iwato-yama.jpg);
}
.slider_cruisemap .item.item_hosho-yama a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_hosho-yama.jpg);
}
.slider_cruisemap .item.item_moso-yama a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_moso-yama.jpg);
}
.slider_cruisemap .item.item_urade-yama a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_urade-yama.jpg);
}
.slider_cruisemap .item.item_yamabushi-yama a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_yamabushi-yama.jpg);
}
.slider_cruisemap .item.item_araretenjin-yama a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_araretenjin-yama.jpg);
}
.slider_cruisemap .item.item_kakkyo-yama a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_kakkyo-yama.jpg);
}
.slider_cruisemap .item.item_hakuga-yama a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_hakuga-yama.jpg);
}
.slider_cruisemap .item.item_ashikari-yama a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_ashikari-yama.jpg);
}
.slider_cruisemap .item.item_aburatenjin-yama a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_aburatenjin-yama.jpg);
}
.slider_cruisemap .item.item_tokusa-yama a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_tokusa-yama.jpg);
}
.slider_cruisemap .item.item_taishi-yama a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_taishi-yama.jpg);
}
.slider_cruisemap .item.item_hakurakuten-yama a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_hakurakuten-yama.jpg);
}
.slider_cruisemap .item.item_ayagasa-hoko a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_ayagasa-hoko.jpg);
}
.slider_cruisemap .item.item_ohfune-hoko a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_ohfune-hoko.jpg);
}
.slider_cruisemap .item.item_ennogyosya-yama a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_ennogyosya-yama.jpg);
}
.slider_cruisemap .item.item_suzuka-yama a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_suzuka-yama.jpg);
}
.slider_cruisemap .item.item_hachiman-yama a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_hachiman-yama.jpg);
}
.slider_cruisemap .item.item_kuronushi-hoko a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_kuronushi-hoko.jpg);
}
.slider_cruisemap .item.item_jomyo-yama a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_jomyo-yama.jpg);
}
.slider_cruisemap .item.item_kitakannon-yama a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_kitakannon-yama.jpg);
}
.slider_cruisemap .item.item_koi-yama a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_koi-yama.jpg);
}
.slider_cruisemap .item.item_hashibenkei-yama a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_hashibenkei-yama.jpg);
}
.slider_cruisemap .item.item_minamikannon-yama a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_minamikannon-yama.jpg);
}
.slider_cruisemap .item.item_takayama a {
  background: url(../img/event/gion/cruisemap/img_cruisemap_takayama.jpg);
}
.slider_cruisemap .prevarrow {
  position: absolute;
  bottom: -130px;
  left: 5%;
  width: 33px;
  height: 15px;
  background: url(../img/about/img_leftarrow.svg);
  background-repeat: no-repeat;
  background-position: center center;
  z-index: 1;
  cursor: pointer;
}
.slider_cruisemap .nextarrow {
  position: absolute;
  bottom: -130px;
  right: 5%;
  width: 33px;
  height: 15px;
  background: url(../img/about/img_rightarrow.svg);
  background-repeat: no-repeat;
  background-position: center center;
  z-index: 1;
  cursor: pointer;
}
.slider_cruisemap .slick-dots {
  margin: 0;
  bottom: -100px;
  width: 75%;
  left: 50%;
  transform: translate(-50%, 0%);
  -webkit-transform: translate(-50%, 0%);
  -ms-transform: translate(-50%, 0%);
  -moz-transform: translate(-50%, 0%);
}
.slider_cruisemap .slick-dots li {
  width: 20px;
  height: 11px;
  margin: 0 4px;
  text-align: center;
}
.slider_cruisemap .slick-dots li button {
  padding: 0;
  width: 11px;
  height: 11px;
  margin: auto;
  display: block;
}
.slider_cruisemap .slick-dots li button::before {
  content: "";
  width: 11px;
  height: 11px;
  border-radius: 100px;
  background: #fff;
  opacity: 1;
  display: block;
  margin: auto;
  position: static;
}
.slider_cruisemap .slick-dots li.slick-active button::before {
  background: #E9380E;
}

.modal_cruisemap .modal_inner {
  padding: 0 10px 20px;
}
.modal_cruisemap .modal_inner .item.item_left {
  text-align: center;
  margin: 0 0 10px;
}
.modal_cruisemap .modal_inner .item.item_left img {
  margin: 0;
  width: 100%;
}
.modal_cruisemap .modal_inner h4 {
  font-size: 2rem;
  margin: 0 0 7px;
}
.modal_cruisemap .modal_inner h4 .yomi {
  font-size: 1.6rem;
  display: inline-block;
}
.modal_cruisemap .modal_inner h4 .en {
  display: block;
  font-size: 1.2rem;
  font-family: "Noto Sans JP", sans-serif;
}
.modal_cruisemap .modal_inner .date {
  margin: 0 0 25px;
}
.modal_cruisemap .modal_inner .date span {
  display: inline-block;
  background: #333F6F;
  color: #fff;
  padding: 2px 5px;
  font-size: 1.6rem;
}
.modal_cruisemap .modal_inner .date span.red {
  background: #E9380E;
}
.modal_cruisemap .modal_inner p {
  margin: 0 0 55px;
  font-size: 1.6rem;
}
.modal_cruisemap .modal_inner h5 {
  font-size: 1.8rem;
  margin: 0 0 13px;
}
.modal_cruisemap .modal_inner img {
  margin: 0 0 35px;
}
.modal_cruisemap .modal_inner iframe {
  width: 100%;
  height: 350px;
}

.yamabokolink {
  text-align: center;
  max-width: 70%;
  margin: 0 auto 150px;
}

.yamabokolink a {
  color: #0000FF;
  text-decoration: underline;
}

/*==================
祇園祭の主な行事
==================*/
.area_calendar {
  margin: 40px 0 0;
}

.table_calendar {
  margin: 0 0 47px;
}
.table_calendar table {
  width: 100%;
}
.table_calendar table tr th {
  border-right: 1px solid #707070;
  border-bottom: 1px solid #707070;
  background: #fff;
  transition: 0.3s;
  vertical-align: middle;
  text-align: center;
  font-size: 1.4rem;
  font-weight: normal;
  padding: 0 0 15px;
}
.table_calendar table tr th:first-child {
  color: #ff0000;
}
.table_calendar table tr th:last-child {
  color: #1B6E8E;
}
.table_calendar table tr th span {
  display: block;
  text-align: center;
  position: relative;
  padding: 10px 2px;
}
.table_calendar table tr td {
  border-right: 1px solid #707070;
  border-bottom: 1px solid #707070;
  background: #fff;
  transition: 0.3s;
  vertical-align: middle;
  text-align: center;
  font-size: 1.6rem;
}
.table_calendar table tr td:first-child {
  border-left: 1px solid #707070;
  color: #ff0000;
}
.table_calendar table tr td:last-child {
  color: #1B6E8E;
}
.table_calendar table tr td span {
  display: block;
  text-align: center;
  position: relative;
  padding: 10px 2px;
}
.table_calendar table tr td span.gray {
  color: #333;
  opacity: 0.33;
}
.table_calendar table tr td span.marker::after {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 100%;
  background: #ff0000;
  position: absolute;
  right: 5px;
  bottom: 5px;
}
.table_calendar table tr td a {
  display: block;
  transition: 0.3s;
  background: #fff;
}
.table_calendar table tr td a:hover {
  background: #FFDF50;
}
.table_calendar table tr.table_head th {
  border-right: none;
}
.table_calendar table tr.table_head td {
  border: none;
}

.list_calendar {
  margin: 0 0 44px;
  border: 1px solid #E2D9BF;
  padding: 21px 10px 10px;
}
.list_calendar .list_calendar_inner {
  max-width: 377px;
  margin: 0 auto;
}
.list_calendar .list_calendar_inner h4 {
  font-size: 1.8rem;
  font-weight: bold;
  margin: 0 0 10px;
  padding: 0 0 13px;
  border-bottom: 1px solid #E2D9BF;
  text-align: center;
}
.list_calendar .list_calendar_inner table {
  width: 100%;
  max-width: 290px;
  margin: auto;
}
.list_calendar .list_calendar_inner table th {
  font-size: 1.4rem;
  text-align: left;
  font-weight: normal;
  padding: 10px 0;
  width: 25%;
}
.list_calendar .list_calendar_inner table td {
  font-size: 1.4rem;
  text-align: left;
  padding: 10px 0 10px 10px;
  width: 75%;
}

.sec_heldevent {
  border-top: 2px solid #E2D9BF;
}

.sec_heldevent_inner {
  padding: 15px 15px 0;
}
.sec_heldevent_inner > .item.item_left {
  font-size: 4.6rem;
  margin: 0 0 30px;
  color: #AA5443;
  font-family: Georgia, serif;
}
.sec_heldevent_inner > .item.item_left .slanting {
  display: inline-block;
  vertical-align: 7px;
  margin: 0px 10px 0 -6px;
  transform: rotate(-40deg);
}
.sec_heldevent_inner > .item.item_left .slanting::before {
  content: "";
  width: 35px;
  height: 1px;
  background: #000;
  display: inline-block;
}
.sec_heldevent_inner > .item.item_left .mini {
  color: #000;
  font-size: 2.4rem;
  letter-spacing: -2px;
}
.area_heldevent {
  border-bottom: 1px dashed #707070;
  padding: 0 0 15px;
  margin: 0 0 30px;
}
.area_heldevent:last-child {
  border-bottom: none;
  margin: 0;
}
.area_heldevent .item.item_left .time {
  font-size: 1.4rem;
  background: #E2D9BF;
  margin: 0 0 10px;
  max-width: 124px;
  text-align: center;
  padding: 2px 10px;
}
.area_heldevent .item.item_left .yomi {
  font-size: 1.2rem;
}
.area_heldevent .item.item_left .kanji {
  font-size: 2.4rem;
  margin: 0 0 20px;
  line-height: 1.2;
}
.area_heldevent .item.item_right .text p {
  margin: 0 0 15px;
}
.area_heldevent .item.item_right .img {
  text-align: center;
  margin: 0 0 15px;
}

.head_e-under02 {
  position: relative;
  overflow: hidden;
  margin: 0 0 5px;
}
.head_e-under02::after {
  content: "";
  display: block;
  background: rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.head_e-under02 > img {
  position: absolute;
  z-index: 0;
  top: 0;
  width: auto;
  height: 300px;
  left: 50%;
  transform: translate(-50%, 0%);
  -webkit-transform: translate(-50%, 0%);
  -ms-transform: translate(-50%, 0%);
  -moz-transform: translate(-50%, 0%);
}

.head_e-under02_row {
  position: relative;
  z-index: 1;
}
.head_e-under02_row .day {
  text-align: center;
}
.head_e-under02_row .day .date {
  display: block;
  vertical-align: middle;
  font-size: 5rem;
  margin: 25px 0 15px;
  color: #fff;
  font-family: Georgia, serif;
  line-height: 1;
}
.head_e-under02_row .day .date .slanting {
  display: inline-block;
  vertical-align: 9px;
  margin: 0px 12px 0 -6px;
  transform: rotate(-45deg);
}
.head_e-under02_row .day .date .slanting::before {
  content: "";
  width: 25px;
  height: 1px;
  background: #fff;
  display: inline-block;
}
.head_e-under02_row .day .time {
  display: block;
  vertical-align: middle;
  text-align: center;
  margin: 0 0 25px;
}
.head_e-under02_row .day .time span {
  background: #E2D9BF;
  font-size: 1.4rem;
  padding: 5px 8px;
  display: inline-block;
  min-width: 176px;
}
.head_e-under02_row .yomi {
  text-align: center;
  color: #fff;
  fons-size: 1.4rem;
}
.head_e-under02_row .kanji {
  text-align: center;
  color: #fff;
  font-size: 2.8rem;
  line-height: 1.2;
  margin: 0 0 50px;
}
.head_e-under02_row .kanji span {
  font-size: 2rem;
}
.head_e-under02_row .inner {
  background: #fff;
  padding: 30px 28px 45px;
}
.head_e-under02_row .text p {
  margin: 0 0 30px;
}
.head_e-under02_row .text p.status {
  font-size: 1.6rem;
}
.gion_event_btn {
  border-top: 2px solid #E2D9BF;
  margin: 40px 0 0;
  padding: 40px 0 0;
}

/*　---------------------------------------------------　*/
/*　-------------PCレイアウト----------------------------　*/
/*　---------------------------------------------------　*/
@media screen and (min-width: 769px) {
  /*==================
  主な神事・行事
  ==================*/
  .sec_event01 {
    padding: 0;
  }
  .sec_event_title {
    background-size: cover;
    background-position: left center;
    text-align: center;
    padding: 40px 0 110px;
    margin: 0 auto 57px;
  }
  .sec_event_title h2 {
    font-size: 6.4rem;
  }
  .sec_event_title p {
    font-size: 1.8rem;
    padding: 0;
  }
  .sec_event_title::before, .sec_event_title::after {
    display: none;
  }
  .gion_map_bg .mainHeader .pageTitle {
    background-image: url(/wp-content/themes/yasaka/img/event/gion/cruisemap/img_cruisemap_main.jpg);
  }
  .event_gion_bg .mainHeader .pageTitle {
    background-image: url(/wp-content/themes/yasaka/img/event/gion/event/img_gion_event_main01.jpg);
  }
  .gion02_event_bg .mainHeader .pageTitle {
    background-image: url(/wp-content/themes/yasaka/img/event/gion/event/img_gion_event_main.jpg);
  }
  .area_event01 {
    display: flex;
    justify-content: space-between;
    width: 100%;
    max-width: 1028px;
    margin: 0 auto;
    padding: 0 0 68px;
  }
  .area_event01 .box_event {
    position: relative;
    width: calc(33.3333333333% - 28px);
    margin: 0 14px;
    height: 300px;
  }
  .area_event01 .box_event::after {
    display: none;
  }
  .area_event01 .box_event.box_event01 {
    background: url(../img/event/main_event/img_event_shougatsu.jpg);
    background-repeat: no-repeat;
    background-position: bottom center;
    background-size: 100%;
  }
  .area_event01 .box_event.box_event02 {
    background: url(../img/event/main_event/img_event_gion.jpg);
    background-repeat: no-repeat;
    background-position: bottom center;
    background-size: 100%;
  }
  .area_event01 .box_event.box_event03 {
    background: url(../img/event/main_event/img_event_setsubun.jpg);
    background-repeat: no-repeat;
    background-position: bottom center;
    background-size: 100%;
  }
  .area_event01 .box_event h3 {
    display: block;
    margin: 0 auto;
    padding: 18px 20px 0;
    width: 104px;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, 0%);
    -webkit-transform: translate(-50%, 0%);
    -ms-transform: translate(-50%, 0%);
    -moz-transform: translate(-50%, 0%);
  }
  .area_event01 .box_event h3::before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 1px;
    background: #333;
    position: absolute;
    top: 0;
    right: 0;
  }
  .area_event01 .box_event h3::after {
    content: "";
    display: inline-block;
    width: 1px;
    height: 50px;
    background: #333;
    position: absolute;
    top: 0;
    right: 0;
  }
  .sec_event02 {
    padding: 80px 20px 0;
  }
  .list_event_tab {
    width: calc(100% + 28px);
    margin: 0 0 83px -14px;
    padding: 34px 0 0;
  }
  .list_event_tab li {
    width: calc(16.6666666667% - 14px);
    margin: 0 6px 14px;
    font-size: 2rem;
    min-height: 70px;
  }
  .box_article_event {
    display: flex;
    align-items: center;
  }
  .box_article_event::after {
    display: none;
  }
  .box_article_event .text {
    width: 100%;
    margin: 0 0 25px;
  }
  .box_article_event .text time {
    margin: 0 0 11px;
  }
  .box_article_event .text h4 {
    font-size: 2.4rem;
    margin: 0 0 11px;
  }
  .box_article_event .text p {
    margin: 0 0 23px;
    line-height: 1.8;
  }
  .box_article_event .text .btnArea {
    text-align: left;
  }
  .box_article_event .img {
    width: 100%;
    max-width: 438px;
    min-width: 438px;
    margin: 0 0 0 63px;
    min-height: 170px;
  }
  .box_article_event .img p {
    margin: 16px 0 0;
  }
  /*==================
  祇園祭
  ==================*/
  .sec_gion_about {
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 60%;
    overflow: hidden;
  }
  .sec_gion_about section {
    max-width: 1440px;
  }
  .sec_gion_about .sec__read .en {
    margin: 80px auto 160px;
  }
  .sec_gion_about .img {
    height: auto;
    text-align: center;
    width: 100%;
    margin: 100px 0 0;
  }
  .sec_gion_about .img img {
    display: inline-block;
    position: static;
    max-width: 100%;
    height: auto;
    transform: translate(0%, 0%);
    -webkit-transform: translate(0%, 0%);
    -ms-transform: translate(0%, 0%);
    -moz-transform: translate(0%, 0%);
  }
  .sec_gion_origin {
    max-width: 1440px;
    padding: 95px 20px 70px;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .sec_gion_origin .blc-ttl {
    margin: 10px auto 60px;
  }
  .sec_gion_origin .text_gion_origin {
    width: 100%;
    margin: 0 40px 0 0;
  }
  .sec_gion_origin .text_gion_origin .text {
    font-size: 1.8rem;
    line-height: 2.2;
  }
  .sec_gion_origin .text_gion_origin .text p {
    margin: 0 auto 40px;
  }
  .sec_gion_origin .img_gion_origin {
    width: 100%;
    max-width: 513px;
    padding: 0;
    margin: 0 0 50px;
  }
  /*
  .sec_gion_state{
  	position: relative;
  	padding: 0 0 108px;
  	.blc-ttl{
  		margin: 10px auto 64px;
  		text-align: center;
  		&::after{
  			left: 50%;
  			transform: translate(-50%,0%);
  			-webkit-transform: translate(-50%,0%);
  			-ms-transform: translate(-50%,0%);
  			-moz-transform: translate(-50%,0%);
  		}
  	}
  	&::after{
  		content: '';
  		display: block;
  		background: #F7F3E8;
  		width: 100%;
  		height: 300px;
  		position: absolute;
  		bottom: 0;
  		left: 0;
  	}
  	.slider_gion_state_outer{
  		.slider_gion_state{
  			width: 100%;
  			position: relative;
  			z-index: 1;
  			.item{
  				img{
  					width: calc(100% - 80px);
  				}
  				p{
  					width: calc(100% - 80px);
  					text-align: center;
  				}
  			}
  			.nextarrow{
  				bottom: 0;
  				right: calc(50% - 130px);
  			}
  			.prevarrow{
  			    bottom: 0;
  			    left: calc(50% - 130px);
  			}
  		}
  		.slick-counter{
  			display: block;
  			text-align: center;
  			font-size: 1.4rem;
  			margin: 0 auto;
  			position: absolute;
  			bottom: 0;
  			left: 0;
  			width: 100%;
  			z-index: 1;
  		}
  	}
  }
  */
  .sec_gion_state {
    padding: 214px 0 79px;
    margin: 0 auto 254px;
  }
  .sec_gion_state::before {
    width: 30%;
    top: 90px;
  }
  .sec_gion_state .readtext {
    font-size: 1.6rem;
    margin: 0 auto 78px;
  }
  .sec_gion_state .slidearea {
    position: relative;
  }
  .area_gion_state {
    margin: 0 0 0 -190px;
  }
  .area_gion_state .item img {
    width: calc(100% - 55px);
    margin: 0 auto;
    height: auto;
  }
  .area_gion_state_text {
    width: 100%;
    max-width: 281px;
    background: #fff;
    z-index: 1;
    overflow: hidden;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translate(0%, -50%);
    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    -moz-transform: translate(0%, -50%);
    padding: 70px 15px 90px;
  }
  .area_gion_state_text.slick-dotted.slick-slider {
    margin: 0;
  }
  .area_gion_state_text .item {
    text-align: left;
    max-width: 300px;
    margin: auto;
  }
  .area_gion_state_text .item .blc-ttl02 {
    text-align: left;
    font-size: 2.4rem;
    padding: 0;
    margin: 0 auto 20px;
  }
  .area_gion_state_text .item .type {
    margin: 0 0 10px;
  }
  .area_gion_state_text .item .type span {
    display: inline-block;
    color: #fff;
    font-size: 1.4rem;
    background: #AA5443;
    padding: 2px 5px;
  }
  .area_gion_state_text .item dl dt {
    font-size: 1.6rem;
    margin: 0;
    font-weight: normal;
  }
  .area_gion_state_text .item dl dd {
    font-size: 2rem;
    margin: 10px 0;
  }
  .area_gion_state_text .item dl dd.dd02 {
    font-size: 1.6rem;
    margin: 0;
  }
  .area_gion_state_text .prevarrow {
    bottom: 40px;
    left: 12%;
  }
  .area_gion_state_text .nextarrow {
    bottom: 40px;
    right: 12%;
  }
  .area_gion_state_text .slick-dots {
    margin: 0;
    bottom: 40px;
    left: 0;
  }
  .sec_gion_somin {
    padding: 0;
    max-width: 100%;
  }
  .sec_gion_somin .area_gion_somin {
    display: flex;
    justify-content: space-between;
    max-width: 100%;
    margin: 0 auto 110px;
  }
  .sec_gion_somin .area_gion_somin .blc-ttl {
    margin: 10px 0 40px;
  }
  .sec_gion_somin .area_gion_somin .text_gion_somin {
    order: 2;
    width: 100%;
    max-width: 510px;
    min-width: 510px;
    margin: 0 auto 40px;
    font-size: 1.6rem;
    line-height: 2;
  }
  .sec_gion_somin .area_gion_somin .text_gion_somin p {
    margin: 0 auto 15px;
  }
  .sec_gion_somin .area_gion_somin .text_gion_somin p .pc {
    display: none;
  }
  .sec_gion_somin .area_gion_somin .img_gion_somin {
    order: 1;
    width: 100%;
    max-width: 868px;
    margin: 0 0 50px;
  }
  .sec_gion_somin .area_gion_somin.reverse .text_gion_somin {
    order: 1;
  }
  .sec_gion_somin .area_gion_somin.reverse .img_gion_somin {
    order: 2;
  }
  .sec_gion_somin .btnArea {
    max-width: 460px;
    margin: 60px 0 0 auto;
  }
  /*==================
  	正月祭事
  ==================*/
  .sec_e-under section .blc-ttl {
    margin: 10px 0 50px;
  }
  .sec_e-under section .blc-ttl.ma_pt01 {
    margin: 90px 0 90px;
  }
  .sec_e-under section .blc-ttl02 {
    font-size: 4rem;
  }
  .sec_e-under section .blc-ttl03 {
    font-size: 3rem;
    margin: 0 auto 25px;
  }
  .head_e-under {
    margin: 0 auto 88px;
  }
  .head_e-under img {
    max-height: auto;
    width: auto;
  }
  .head_e-under::after {
    content: "";
    display: inline-block;
    width: 100%;
    max-width: 500px;
    min-width: 50%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: rgb(0, 0, 0);
    background: linear-gradient(90deg, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0.56) 22%, rgba(0, 0, 0, 0) 100%);
  }
  .head_e-under.head_e-under_shougatsu02::after {
    display: none;
  }
  .head_e-under.head_e-under_shougatsu03::after {
    display: none;
  }
  .head_e-under.head_e-under_shougatsu03 .head_e-under_row {
    padding: 97px 20px;
  }
  .head_e-under .head_e-under_row {
    max-width: 1240px;
    margin: 0 auto;
    padding: 120px 20px;
  }
  .head_e-under .head_e-under_row .time {
    display: block;
    font-size: 2.6rem;
    margin: 0 0 5px;
  }
  .head_e-under .head_e-under_row h2 {
    font-size: 4rem;
  }
  .head_e-under .head_e-under_row h2 span {
    font-size: 2.8rem;
    display: inline-block;
    margin: 0 0 0 5px;
  }
  .head_e-under .head_e-under_row h2 span.small {
    font-size: 2.6rem;
    margin: 5px 0 0;
  }
  .text_e-under.big {
    font-size: 2.2rem;
  }
  .text_e-under p.ma_pt01 {
    margin-bottom: 20px;
  }
  .text_e-under p.ma_pt02 {
    max-width: 1000px;
    margin-bottom: 40px;
  }
  .text_e-under p.headline {
    font-size: 2.6rem;
    margin: 0 auto 10px;
  }
  .text_e-under02 {
    margin: 0 auto 100px;
  }
  .text_e-under02 .text_e-under02_inner {
    padding: 40px 15px;
    max-width: 662px;
  }
  .text_e-under02 .text_e-under02_inner h3 {
    font-size: 3.8rem;
    margin: 0 auto 25px;
  }
  .text_e-under02 .text_e-under02_inner h4 {
    font-size: 3rem;
    margin: 0 0 30px -50px;
  }
  .text_e-under02 .text_e-under02_inner p {
    margin: 0 auto 35px;
    font-size: 2.2rem;
  }
  .text_e-under02 .text_e-under02_inner table {
    display: flex;
    justify-content: center;
  }
  .text_e-under02 .text_e-under02_inner table tr th {
    font-size: 1.8rem;
    width: 120px;
    min-width: 120px;
    padding: 0 0 35px;
  }
  .text_e-under02 .text_e-under02_inner table tr td {
    font-size: 1.8rem;
    padding: 0 0.5rem 35px 0;
    width: 38%;
    white-space: nowrap;
  }
  .text_e-under02 .text_e-under02_inner table tr td :nth-last-child {
    padding: 0 0 35px;
  }
  .text_e-under02 .border {
    width: calc(100% + 60px);
    margin: 20px 0 50px -30px;
  }
  .img_e-under {
    text-align: center;
    margin: 0 0 50px;
  }
  .img_e-under.ma_ptn01 {
    margin-bottom: 20px;
  }
  .img_e-under.ma_ptn02 {
    margin-bottom: 126px;
  }
  .img_e-under.ma_pt03 {
    margin-bottom: 103px;
  }
  .img_e-under p {
    max-width: 991px;
    margin: 20px auto 0;
    text-align: left;
    color: #707070;
  }
  .img_e-under .col2 {
    margin: 10px auto 95px;
    display: flex;
    justify-content: space-between;
  }
  .img_e-under .col2 .img {
    width: calc(50% - 5px);
  }
  .box_e-under_img-and-text {
    display: flex;
    justify-content: space-between;
    padding: 0 0 10px;
    max-width: 1120px;
    margin: auto;
  }
  .box_e-under_img-and-text h3 {
    font-size: 2.8rem;
    margin: 0 0 37px;
  }
  .box_e-under_img-and-text .text_e-under {
    width: 100%;
    max-width: 560px;
    margin: 0 30px 0 0;
  }
  .box_e-under_img-and-text .text_e-under p {
    margin: 0 0 37px;
  }
  .box_e-under_img-and-text .text_e-under p.ma_pt01 {
    margin-bottom: 20px;
  }
  .box_e-under_img-and-text .img_e-under {
    width: 100%;
    max-width: 450px;
  }
  .box_e-under_img-and-text .img_e-under.ma_pt01 {
    margin-bottom: 20px;
  }
  .box_e-under_img-and-text.reverse .text_e-under {
    order: 1;
    margin: 0 0 0 30px;
  }
  .box_e-under_img-and-text.reverse .img_r-under {
    order: 2;
  }
  .box_e-under_img-and-text.ptn02 .img_e-under {
    max-width: 580px;
  }
  .box_e-under_goods {
    margin: 0 0 60px;
    padding: 31px 0 0;
  }
  .box_e-under_goods.ma_pt01 {
    margin: 0 auto 105px;
  }
  .box_e-under_goods h3 {
    font-size: 3rem;
    margin: 0 0 35px;
    padding: 0 30px;
  }
  .box_e-under_goods .box_e-under_goods_inner {
    display: flex;
    justify-content: space-between;
    padding: 0px 30px 30px;
    margin: 0 auto 50px;
  }
  .box_e-under_goods .box_e-under_goods_inner .ttl {
    margin: 0 0 53px;
  }
  .box_e-under_goods .box_e-under_goods_inner .text_e-under {
    width: 100%;
    max-width: 568px;
    margin: 10px 20px 20px 0;
    line-height: 1.8;
  }
  .box_e-under_goods .box_e-under_goods_inner .img_e-under {
    width: 100%;
    max-width: 450px;
  }
  .box_e-under_goods .box_e-under_goods_inner .btnArea {
    padding: 7px 0 0;
  }
  .slider_e-under {
    padding: 0;
    margin: 0 0 100px !important;
    width: 100%;
  }
  .slider_e-under .img_e-under {
    margin: 0;
  }
  .slider_e-under .img_e-under img {
    width: calc(100% - 20px);
    margin: 0 auto;
  }
  .movie_e-under.ma_ptn01 {
    margin-bottom: 208px;
  }
  /*==================
  祇園蛭子
  ==================*/
  .ebisu .head_e-under {
    margin: 0 auto 50px;
  }
  .slider_e-under_ebisu01 {
    margin: 0 auto 118px !important;
    padding: 0;
  }
  /*==================
  お神輿・山鉾のご紹介、巡行図
  ==================*/
  /*.map_itemlist{
  	display: none;
  }*/
  .sec_gion_state_cruisemap {
    padding: 0 0 90px;
  }
  .sec_gion_state_cruisemap .sec__ttl {
    margin: 0 auto;
  }
  .sec_gion_state_cruisemap .sec__ttl.left {
    text-align: center;
  }
  .sec_gion_state_cruisemap_inner {
    background: none;
    padding: 60px 0;
    margin: 0 auto;
  }
  .sec_gion_state_cruisemap_inner::before {
    content: "";
    width: 100%;
    height: 50%;
    background: #F7F3E8;
    top: 50%;
    left: 0;
  }
  .sec_gion_state_cruisemap_inner > .blc-ttl {
    font-size: 2.8rem;
    padding: 0 20px 15px;
    margin: 0 auto 51px;
    text-align: left;
    width: calc(100% - 40px);
    max-width: 1240px;
  }
  .sec_gion_state_cruisemap_inner > .blc-ttl::after {
    left: 0;
    transform: translate(0%, 0%);
    -webkit-transform: translate(0%, 0%);
    -ms-transform: translate(0%, 0%);
    -moz-transform: translate(0%, 0%);
  }
  .sec_cruisemap03 {
    margin: 0 auto 77px;
  }
  .sec_cruisemap03 .tab_shrine_enshrined-deity {
    margin-bottom: 42px;
    max-width: 640px;
  }
  .sec_cruisemap03 .tab_shrine_enshrined-deity li {
    width: calc(50% - 22px);
    min-height: 72px;
    padding-top: 20px;
  }
  .sec_cruisemap03 .tab_shrine_enshrined-deity li .pc {
    display: inline-block !important;
    width: 10px;
  }
  .yamahoko_cruisemap .item {
    display: flex;
    align-items: center;
  }
  .yamahoko_cruisemap .item .img {
    text-align: center;
    width: 60%;
    margin: 0 0 45px;
  }
  .yamahoko_cruisemap .item .text {
    width: 40%;
    max-width: 501px;
    margin: 0 0 16px 30px;
  }
  .yamahoko_cruisemap .item .text h4 {
    font-size: 6.5rem;
    padding: 0 0 10px 10px;
    margin: 0 0 35px;
    border-bottom: 1px solid #707070;
  }
  .yamahoko_cruisemap .item .text p {
    padding: 0 10px;
  }
  .yamahoko_cruisemap .item.item_reverse .img {
    order: 2;
  }
  .yamahoko_cruisemap .item.item_reverse .text {
    order: 1;
    margin: 0 30px 16px 0;
  }
  .sec_cruisemap04 {
    padding: 0 0 90px;
  }
  .slider_cruisemap_outer {
    padding: 100px 0 135px;
  }
  .slider_cruisemap_outer section .blc-ttl {
    font-size: 2.8rem;
  }
  .slider_cruisemap_outer section .blc-ttl .span01 {
    font-size: 1.6rem;
  }
  .slider_cruisemap_outer section .blc-ttl .span02 {
    font-size: 2rem;
    display: inline-block;
  }
  .slider_cruisemap .prevarrow {
    bottom: -120px;
    left: calc(50% - 100px);
  }
  .slider_cruisemap .nextarrow {
    bottom: -120px;
    right: calc(50% - 100px);
  }
  .slider_cruisemap .slick-dots {
    bottom: -70px;
  }
  .slider_cruisemap .slick-dots li {
    margin: 0 5px;
  }
  .modal_cruisemap .modal_inner {
    padding: 0 56px 50px;
    display: flex;
    justify-content: space-between;
  }
  .modal_cruisemap .modal_inner .item.item_left {
    width: calc(50% - 24px);
    text-align: center;
    margin: 0 0 10px;
  }
  .modal_cruisemap .modal_inner .item.item_left img {
    margin: 0;
  }
  .modal_cruisemap .modal_inner .item.item_right {
    width: calc(50% - 24px);
  }
  .modal_cruisemap .modal_inner h4 {
    font-size: 2.8rem;
    margin: 0 0 7px;
  }
  .modal_cruisemap .modal_inner h4 .yomi {
    font-size: 2rem;
    display: inline-block;
  }
  .modal_cruisemap .modal_inner h4 .en {
    display: block;
    font-size: 1.3rem;
    font-family: "Noto Sans JP", sans-serif;
  }
  .modal_cruisemap .modal_inner .date {
    margin: 0 0 25px;
  }
  .modal_cruisemap .modal_inner .date span {
    display: inline-block;
    background: #333F6F;
    color: #fff;
    padding: 2px 5px;
    font-size: 1.6rem;
  }
  .modal_cruisemap .modal_inner p {
    margin: 0 0 25px;
    font-size: 1.2rem;
  }
  .modal_cruisemap .modal_inner h5 {
    font-size: 1.8rem;
    margin: 0 0 13px;
  }
  .modal_cruisemap .modal_inner img {
    margin: 0 0 35px;
  }
  .modal_cruisemap .modal_inner iframe {
    width: 100%;
    height: 300px;
  }
  /*==================
  祇園祭の主な行事
  ==================*/
  .area_calendar {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin: 65px auto 0;
    max-width: 940px;
  }
  .area_calendar .table_calendar {
    width: calc(50% - 31px);
    max-width: 414px;
    margin: 0;
  }
  .area_calendar .list_calendar {
    width: calc(50% - 31px);
    margin: 0;
  }
  .list_calendar .list_calendar_inner h4 {
    font-size: 2rem;
  }
  .list_calendar .list_calendar_inner table td {
    font-size: 1.6rem;
  }
  .sec_heldevent {
    margin: 0;
    border-top: 2px solid #E2D9BF;
  }
  .sec_heldevent_inner {
    padding: 40px 15px 10px;
    display: flex;
    max-width: 942px;
    margin: auto;
  }
  .sec_heldevent_inner > .item.item_left {
    font-size: 6.5rem;
    margin: -23px 0 30px;
    width: 150px;
    min-width: 150px;
    line-height: 1;
  }
  .sec_heldevent_inner > .item.item_left .slanting {
    display: inline-block;
    vertical-align: 14px;
    margin: 0px 15px 0 -10px;
  }
  .sec_heldevent_inner > .item.item_left .slanting::before {
    width: 30px;
    height: 1px;
    background: #000;
  }
  .sec_heldevent_inner > .item.item_left .mini {
    font-size: 2.4rem;
  }
  .sec_heldevent_inner > .item.item_right {
    width: 100%;
  }
  .area_heldevent {
    border-bottom: 1px dashed #707070;
    padding: 0 25px 15px;
    margin: 0 0 30px;
    display: flex;
  }
  .area_heldevent:last-child {
    border-bottom: none;
    margin: 0;
    padding-bottom: 0;
  }
  .area_heldevent .item.item_left {
    width: 35%;
    min-width: 190px;
  }
  .area_heldevent .item.item_left .time {
    font-size: 1.4rem;
    background: #E2D9BF;
    margin: 0 0 15px;
    max-width: 124px;
    text-align: center;
    padding: 4px 10px;
  }
  .area_heldevent .item.item_left .yomi {
    font-size: 1.2rem;
  }
  .area_heldevent .item.item_left .kanji {
    font-size: 2.4rem;
    margin: 0 0 20px;
    line-height: 1.2;
  }
  .area_heldevent .item.item_right {
    width: 65%;
  }
  .area_heldevent .item.item_right .text {
    padding: 0 0 5px;
  }
  .area_heldevent .item.item_right .text p {
    margin: 0 0 15px;
  }
  .area_heldevent .item.item_right .img {
    text-align: center;
    margin: 0 0 20px;
  }
  .head_e-under02 {
    margin: 0 0 5px;
    padding: 70px 30px 50px;
    min-height: 650px;
  }
  .head_e-under02::after {
    background: rgb(0, 0, 0);
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 100%);
    position: absolute;
    top: 0;
    left: 0;
    width: 80%;
    min-width: 580px;
    height: 100%;
  }
  .head_e-under02 > img {
    width: auto;
    height: 100%;
  }
  .head_e-under02.reverse::after {
    background: rgb(0, 0, 0);
    background: linear-gradient(-90deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 100%);
    left: auto;
    right: 0;
  }
  .head_e-under02.reverse .reverse_inner {
    max-width: 580px;
    margin: 0 0 0 auto;
  }
  .head_e-under02.ma {
    margin-bottom: 32px;
  }
  .head_e-under02_row {
    max-width: 1600px;
    margin: auto;
  }
  .head_e-under02_row .day {
    text-align: left;
  }
  .head_e-under02_row .day .date {
    display: inline-block;
    font-size: 9.2rem;
    margin: 0 20px 25px 0;
  }
  .head_e-under02_row .day .date .slanting {
    vertical-align: 9px;
    margin: 0px 18px 0 -20px;
  }
  .head_e-under02_row .day .date .slanting::before {
    width: 55px;
    height: 2px;
  }
  .head_e-under02_row .day .time {
    display: inline-block;
    text-align: center;
    margin: 0;
  }
  .head_e-under02_row .day .time span {
    font-size: 1.4rem;
    padding: 3px 20px;
    min-width: auto;
  }
  .head_e-under02_row .yomi {
    text-align: left;
    fons-size: 1.4rem;
  }
  .head_e-under02_row .kanji {
    text-align: left;
    font-size: 4.2rem;
    line-height: 1.2;
    margin: 0 0 20px;
    letter-spacing: 5px;
  }
  .head_e-under02_row .kanji span {
    display: inline-block;
    font-size: 2.8rem;
  }
  .head_e-under02_row .inner {
    max-width: 580px;
    background: none;
    padding: 0;
  }
  .head_e-under02_row .text {
    padding: 0 0 10px;
  }
  .head_e-under02_row .text p {
    margin: 0 0 20px;
    color: #fff;
    letter-spacing: 1px;
  }
  .head_e-under02_row .text p.status {
    font-size: 1.8rem;
  }
  .head_e-under02_row .btnArea {
    text-align: left;
  }
  .head_e-under02_row .btnArea .btn {
    min-width: 410px;
  }
  .gion_event_btn {
    padding: 77px 0 20px;
  }
  .gion_event_btn .btnArea .btn {
    min-width: 410px;
  }
}
@media screen and (min-width: 961px) {
  /*==================
  祇園祭
  ==================*/
}
@media screen and (min-width: 1281px) {
  /*==================
  祇園祭
  ==================*/
  .sec_gion_origin .text_gion_origin {
    margin: 0 148px 0 0;
    max-width: 600px;
    min-width: 600px;
  }
  .sec_gion_origin .btnArea {
    max-width: 600px;
  }
  .box_e-under_goods {
    background: #F5F3EA;
    margin: 0 auto 60px;
  }
  .box_e-under_goods h3 {
    padding: 0 75px;
  }
  .box_e-under_goods .box_e-under_goods_inner {
    padding: 0px 39px 30px 75px;
  }
  .box_e-under_goods .box_e-under_goods_inner .text_e-under p {
    min-height: 84px;
  }
}
@media screen and (min-width: 1600px) {
  /*==================
  祇園祭
  ==================*/
  .area_gion_state_text {
    max-width: 591px;
    padding: 140px 15px 208px;
  }
  .area_gion_state_text .prevarrow {
    bottom: 129px;
    left: 22%;
  }
  .area_gion_state_text .nextarrow {
    bottom: 129px;
    right: 22%;
  }
  .area_gion_state_text .slick-dots {
    bottom: 129px;
  }
  .sec_gion_somin .area_gion_somin .blc-ttl {
    margin: 10px 0 110px;
  }
  .sec_gion_somin .area_gion_somin .text_gion_somin {
    max-width: 820px;
    min-width: 820px;
    margin: 0 auto;
    font-size: 1.8rem;
    line-height: 2.2;
  }
  .sec_gion_somin .area_gion_somin .text_gion_somin p {
    margin: 0 auto 45px;
  }
  .sec_gion_somin .area_gion_somin .text_gion_somin p .pc {
    display: block;
  }
  .sec_gion_somin .btnArea {
    max-width: 800px;
  }
}
.sort_news {
  display: flex;
  flex-wrap: wrap;
  width: calc(100% + 10px);
  margin: 0 0 0 -5px;
  padding: 0 0 30px;
}
.sort_news li {
  width: calc(50% - 10px);
  margin: 0 5px 10px;
  text-align: center;
}
.sort_news li a {
  display: block;
  line-height: 1;
  padding: 18px 10px;
  border: 1px solid #707070;
  transition: 0.3s;
}
.sort_news li a:hover {
  background: #222a3f;
  color: #fff;
  border: 1px solid #222a3f;
}
.sort_news li.active {
  background: #222a3f;
  color: #fff;
}

.shougatsu .mainHeader .pageTitle {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 1;
}
.shougatsu .mainHeader .pageTitle::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  display: block;
  background: rgba(0, 0, 0, 0.3);
}

.archive_news_bg .mainHeader .pageTitle {
  background-image: url(/wp-content/themes/yasaka/img/news/img_news_main.jpg);
}

.area_news .box_course {
  display: block;
  padding: 0 0 20px;
  margin: 0 0 50px;
  border-bottom: 1px solid #dbcfa2;
  transition: 0.3s;
}
.area_news .box_course:hover {
  opacity: 0.7;
}
.area_news .box_course.last {
  border-bottom: none;
}
.area_news .box_course .img {
  width: 100%;
  text-align: center;
  margin: 0 auto 30px;
}
.area_news .box_course .text {
  width: 100%;
  margin: 0 auto 30px;
}
.area_news .box_course .text time {
  display: block;
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 2px;
  margin: 0 0 10px;
}
.area_news .box_course .text time span {
  display: inline-block;
  background: #222a3f;
  font-size: 12px;
  font-weight: normal;
  color: #fff;
  padding: 4px 5px;
  margin: 0 0 0 14px;
  min-width: 140px;
  letter-spacing: 1px;
  text-align: center;
}
.area_news .box_course .text h2 {
  color: #5a5959;
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 1px;
}

.pagenav {
  display: block;
  text-align: center;
}
.pagenav li {
  display: inline-block;
  font-size: 1.6rem;
  margin: 0 2px 10px;
  line-height: 1;
  vertical-align: middle;
}
.pagenav li a {
  display: inline-block;
  padding: 10px 12px;
  transition: 0.3s;
  color: #222a3f;
}
.pagenav li a:hover {
  opacity: 0.7;
}
.pagenav li.active a {
  background: #222a3f;
  color: #fff;
  font-weight: bold;
}

@media screen and (min-width: 769px) {
  .pagenav li {
    font-size: 2rem;
    margin: 0 5px 10px;
  }
  .pagenav li a {
    padding: 20px 24px;
  }
  .sort_news {
    width: calc(100% + 24px);
    margin: 0 0 0 -12px;
    padding: 0 0 95px;
  }
  .sort_news li {
    width: calc(25% - 24px);
    margin: 0 12px 10px;
  }
  .area_news .box_course {
    display: flex;
    align-items: center;
    padding: 0 0 75px;
    margin: 0 0 75px;
  }
  .area_news .box_course .img {
    order: 1;
    max-width: 431px;
    margin: 0 80px 0 0;
  }
  .area_news .box_course .text {
    order: 2;
    margin: 0;
  }
  .area_news .box_course .text time {
    font-size: 20px;
    margin: 0 0 20px;
  }
  .area_news .box_course .text time span {
    font-size: 13px;
    margin: 0 0 0 35px;
  }
  .area_news .box_course .text h2 {
    font-size: 20px;
  }
}
@media screen and (min-width: 961px) {
  .sort_news {
    width: calc(100% + 50px);
    margin: 0 0 0 -25px;
    padding: 0 0 95px;
  }
  .sort_news li {
    width: calc(25% - 50px);
    margin: 0 25px 10px;
  }
}
.img-responsive {
  display: inline-block;
  max-width: 100%;
  height: auto;
}

/*==================
八阪神社について
==================*/
.sec_about_link {
  padding: 40px 0 0;
}
.sec_about_link .img {
  text-align: center;
  margin: 0 auto 10px;
}
.sec_about_link .img img {
  margin: auto;
  width: 100%;
}
.sec_about_link .text {
  padding: 0 20px;
}
.sec_about_link .text h2 {
  text-align: center;
  font-size: 3.9rem;
  margin: 0 0 15px;
  line-height: 1;
}
.sec_about_link .text p {
  margin: 0 0 35px;
  line-height: 2;
}
.sec_about_link.sec_about_link_reverse {
  padding: 0;
}
.sec_about_link.sec_about_link01 {
  margin: 0 0 60px;
}
.sec_about_link.sec_about_link02 {
  margin: 0 0 130px;
}

.about_yasaka_bg .mainHeader .pageTitle {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 1;
}
.about_yasaka_bg .mainHeader .pageTitle::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  display: block;
  background: rgba(0, 0, 0, 0.3);
}

.about_yasaka .mainHeader .pageTitle {
  background-image: url(/wp-content/themes/yasaka/img/about/img_about_main_sp.png);
}

.sec_about_shinmon {
  padding: 0 20px;
  margin: 0 auto 100px;
}
.sec_about_shinmon .img {
  text-align: center;
  margin: 40px 0 50px;
}
.sec_about_shinmon .img p {
  font-size: 1.6rem;
  margin: 25px auto 0;
}
.sec_about_shinmon .text {
  font-size: 1.4rem;
  line-height: 2;
}
.sec_about_shinmon .text p {
  margin: 0 0 30px;
}

/*ご挨拶*/
.sec_about_greeting {
  padding: 80px 20px 0;
  margin: 0 auto 100px;
}
.sec_about_greeting .text {
  font-size: 1.4rem;
  line-height: 2;
}
.sec_about_greeting .text p {
  margin: 0 0 30px;
}
.sec_about_greeting .chief_priest_img {
  text-align: center;
  margin: 0 auto 20px;
}
.sec_about_greeting .chief_priest_img img {
  max-width: 201px;
  height: auto;
}

.sec_about_highlights section {
  padding: 0 20px;
}
.sec_about_highlights .head_about_highlights {
  margin: 50px 0;
  text-align: center;
}
.sec_about_highlights .head_about_highlights h3 {
  font-size: 1.8rem;
  margin: 0 0 13px;
}
.sec_about_highlights .head_about_highlights p {
  margin: 0 0 30px;
}

.area_about_highlights {
  margin: 0 0 62px;
}
.area_about_highlights .img {
  text-align: center;
  margin: 0 0 40px;
}
.area_about_highlights .text {
  background: #F9F9F9;
  padding: 17px 0 1px 15px;
  width: calc(100% - 15px);
  position: relative;
}
.area_about_highlights .text::after {
  content: "";
  background: rgba(179, 139, 165, 0.4);
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -1;
  top: 15px;
  left: 15px;
}
.area_about_highlights .text h3 {
  font-size: 3rem;
  border-bottom: 1px solid #000;
  padding: 0 0 13px;
  margin: 0 0 15px;
}
.area_about_highlights .text h3 span {
  display: inline-block;
  margin: 0 0 0 16px;
  font-size: 2rem;
  vertical-align: 4px;
}
.area_about_highlights .text p {
  font-size: 1.4rem;
  line-height: 2.5;
  padding: 0 10px 0 0;
  margin: 0 0 35px;
}
.area_about_highlights.ptn_spring .text::after {
  background: rgba(179, 139, 165, 0.4);
}
.area_about_highlights.ptn_summer .text::after {
  background: rgba(117, 163, 75, 0.4);
}
.area_about_highlights.ptn_autumn .text::after {
  background: rgba(170, 84, 67, 0.4);
}
.area_about_highlights.ptn_winter .text::after {
  background: rgba(51, 63, 111, 0.4);
}

.spring_about_highlights {
  padding: 0 15px;
  margin: 0 0 66px;
  font-size: 0;
  letter-spacing: 0;
  /*.img{
  	&.img01{
  		margin: 0 0 40px;
  		img{
  			max-width: 70%;
  		}
  	}
  	&.img02{
  	    display: inline-block;
  	    width: 50%;
  	    vertical-align: -60px;
  	}
  	&.img03{
  		display: inline-block;
  		width: calc(50% - 13px);
  		margin: 0 0 0 13px;
  		text-align: right;
  	}
  }*/
}
.spring_about_highlights .img img {
  max-width: 100%;
  height: auto;
}
.spring_about_highlights .spring_about_miniphoto {
  width: 100%;
}
.spring_about_highlights .spring_about_miniphoto .img02 {
  max-width: 80%;
  margin: 0 auto 50px;
}
.spring_about_highlights .spring_about_miniphoto .spring_about_colflex {
  display: flex;
  justify-content: space-between;
}
.spring_about_highlights .spring_about_miniphoto .spring_about_colflex .img03, .spring_about_highlights .spring_about_miniphoto .spring_about_colflex .img04 {
  width: 48%;
}
.spring_about_highlights .spring_about_bigphoto {
  width: 100%;
  margin: 0 0 40px;
}
.spring_about_highlights .spring_about_bigphoto .img01 {
  text-align: right;
}

.summer_about_highlights {
  padding: 0 15px;
  margin: 0 0 109px;
  font-size: 0;
  letter-spacing: 0;
}
.summer_about_highlights .img.img01 {
  text-align: right;
  margin: 0 0 40px;
}
.summer_about_highlights .img.img01 img {
  max-width: 70%;
}
.summer_about_highlights .img.img02 {
  margin: 0 0 35px;
}
.summer_about_highlights .img.img02 img {
  max-width: 70%;
}
.summer_about_highlights .img.img03 {
  display: inline-block;
  width: 50%;
}
.summer_about_highlights .img.img04 {
  display: inline-block;
  width: calc(50% - 13px);
  margin: 0 0 0 13px;
  vertical-align: -43px;
  text-align: right;
}

.autumn_about_highlights {
  padding: 0 15px;
  margin: 0 0 107px;
  font-size: 0;
  letter-spacing: 0;
}
.autumn_about_highlights .img.img01 {
  margin: 0 0 40px;
}
.autumn_about_highlights .img.img01 img {
  max-width: 70%;
}
.autumn_about_highlights .img.img02 {
  text-align: right;
  margin: 0 0 35px;
}
.autumn_about_highlights .img.img02 img {
  max-width: 70%;
}
.autumn_about_highlights .img.img03 {
  display: inline-block;
  width: 57%;
  vertical-align: top;
}
.autumn_about_highlights .img.img04 {
  display: inline-block;
  width: calc(43% - 13px);
  margin: 0 0 0 13px;
  text-align: right;
}

.winter_about_highlights {
  padding: 0 15px;
  font-size: 0;
  letter-spacing: 0;
}
.winter_about_highlights .img.img01 {
  margin: 0 0 40px;
}
.winter_about_highlights .img.img01 img {
  max-width: 70%;
}
.winter_about_highlights .img.img02 {
  display: inline-block;
  width: 50%;
}
.winter_about_highlights .img.img03 {
  margin: 0 0 40px;
}
.winter_about_highlights .img.img04 {
  width: calc(100% - 26px);
  margin: 0 0 0 auto;
}
.winter_about_highlights .item {
  display: inline-block;
  width: calc(50% - 13px);
  margin: 0 0 0 13px;
  text-align: right;
  vertical-align: top;
}

/*==================
八阪神社の建築物
==================*/
/*令和2年（2020）12月
八坂神社本殿は国宝に指定されました*/
.sec_architecture-appeal {
  background: url(../img/about/img_about_architecture_bg01_sp.jpg);
  background-position: bottom center;
  background-size: cover;
  background-repeat: repeat-x;
  overflow: hidden;
  position: relative;
  padding: 33px 18px 120px;
}
.sec_architecture-appeal::before {
  content: "";
  display: block;
  background: url(../img/about/img_about_architecture_deco01_left.svg);
  background-repeat: no-repeat;
  background-position: center right;
  width: calc(100% + 622px);
  height: 160px;
  position: absolute;
  top: 135px;
  right: -622px;
  animation: loop-slideleft 40s infinite linear 1s both;
}
.sec_architecture-appeal::after {
  content: "";
  display: block;
  background: url(../img/about/img_about_architecture_deco01_right.svg);
  background-repeat: no-repeat;
  background-position: center right;
  width: calc(100% + 381px);
  height: 81px;
  position: absolute;
  bottom: 34px;
  right: -381px;
  animation: loop-slideright 40s infinite linear 1s both;
}

@keyframes loop-slideright {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes loop-slideleft {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0);
  }
}
.architecture_bg .mainHeader .pageTitle {
  background-image: url(/wp-content/themes/yasaka/img/about/img_architecture_main.png);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 1;
}
.architecture_bg .mainHeader .pageTitle::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  display: block;
  background: rgba(0, 0, 0, 0);
}

.area_architecture-appeal {
  border: 1px solid #E9380E;
  padding: 10px;
  background: #fff url(../img/about/img_about_architecture_bg01.jpg);
  position: relative;
  z-index: 1;
}
.area_architecture-appeal .box_architecture-appeal {
  background: #fff;
  border: 1px solid #E9380E;
  padding: 20px 17px;
}
.area_architecture-appeal .box_architecture-appeal .text h2 {
  text-align: center;
  margin: 0 auto 20px;
  color: #B73800;
  font-size: 20px;
  font-weight: 500;
}
.area_architecture-appeal .box_architecture-appeal .text h2 img {
  display: inline-block;
  margin: 0 auto 12px;
}
.area_architecture-appeal .box_architecture-appeal .text h2 span {
  display: block;
}
.area_architecture-appeal .box_architecture-appeal .text p {
  margin: 0 auto 25px;
}
/*本殿*/
div .sec__ttl01,
section .sec__ttl01 {
  text-align: center;
  margin: 0 auto 45px;
}
div .sec__ttl01 .sub_text,
section .sec__ttl01 .sub_text {
  display: block;
  background: none;
  font-size: 2.1rem;
  margin: 0 auto 7px;
  color: #333;
  padding: 0;
  font-family: inherit;
  line-height: 1;
}
div .sec__ttl01 .main_text,
section .sec__ttl01 .main_text {
  display: block;
  background: none;
  font-size: 2.8rem;
  padding: 0 0 16px;
  color: #333;
  font-family: inherit;
  margin: 0;
}
div .sec__ttl01::after,
section .sec__ttl01::after {
  content: "";
  display: block;
  background: #D3A357;
  height: 2px;
  width: 180px;
  margin: auto;
}
div .sec__ttl01.white .main_text,
section .sec__ttl01.white .main_text {
  color: #fff;
}
div .sec__ttl02,
section .sec__ttl02 {
  margin: 0 auto 60px;
  font-size: 2.8rem;
  color: #333;
  font-family: inherit;
  text-align: left;
  letter-spacing: 3px;
}
div .sec__ttl02::after,
section .sec__ttl02::after {
  content: "";
  display: block;
  background: #D3A357;
  height: 2px;
  width: 180px;
  margin: 9px 0 0;
}

/*五つの特色*/
.sec_architecture_featureshead {
  background: #F7F3E8;
}
.sec_architecture_featureshead .area_architecture_featureshead {
  max-width: 1397px;
  margin: auto;
  padding: 0 15px;
}

.pagelink_architecture a {
  display: block;
  position: relative;
  width: calc(100% - 20px);
  margin: 0 0 27px 20px;
}
.pagelink_architecture a .num {
  display: inline-block;
  border-radius: 100%;
  background: #5C9398;
  width: 57px;
  height: 57px;
  position: absolute;
  top: calc(50% + 0px);
  left: -20px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  padding: 11px 0 0 15px;
  transition: 0.3s;
}
.pagelink_architecture a .num.num01 {
  background: #5C9398 url(../img/about/pagelink_architecture01_sp.svg);
  background-position: center center;
  background-repeat: no-repeat;
}
.pagelink_architecture a .num.num02 {
  background: #5C9398 url(../img/about/pagelink_architecture02_sp.svg);
  background-position: center center;
  background-repeat: no-repeat;
}
.pagelink_architecture a .num.num03 {
  background: #5C9398 url(../img/about/pagelink_architecture03_sp.svg);
  background-position: center center;
  background-repeat: no-repeat;
}
.pagelink_architecture a .num.num04 {
  background: #5C9398 url(../img/about/pagelink_architecture04_sp.svg);
  background-position: center center;
  background-repeat: no-repeat;
}
.pagelink_architecture a .num.num05 {
  background: #5C9398 url(../img/about/pagelink_architecture05_sp.svg);
  background-position: center center;
  background-repeat: no-repeat;
}
.pagelink_architecture a .pagelink_architecture_text {
  display: block;
  background: #5C9398;
  font-size: 3.5vw;
  color: #fff;
  padding: 10px 35px 10px 46px;
  transition: 0.3s;
  width: calc(100% - 4px);
  margin-left: auto;
}
.pagelink_architecture a::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  width: 13px;
  height: 7px;
  background: url(../img/about/icon_underarrow_white.svg);
  background-repeat: no-repeat;
  background-position: bottom center;
  transition: 0.3s;
}
.pagelink_architecture a:hover .num {
  color: #5C9398;
  background: #fff;
}
.pagelink_architecture a:hover .num.num01 {
  background: #fff url(../img/about/pagelink_architecture01_sp_hover.svg);
  background-position: center center;
  background-repeat: no-repeat;
}
.pagelink_architecture a:hover .num.num02 {
  background: #fff url(../img/about/pagelink_architecture02_sp_hover.svg);
  background-position: center center;
  background-repeat: no-repeat;
}
.pagelink_architecture a:hover .num.num03 {
  background: #fff url(../img/about/pagelink_architecture03_sp_hover.svg);
  background-position: center center;
  background-repeat: no-repeat;
}
.pagelink_architecture a:hover .num.num04 {
  background: #fff url(../img/about/pagelink_architecture04_sp_hover.svg);
  background-position: center center;
  background-repeat: no-repeat;
}
.pagelink_architecture a:hover .num.num05 {
  background: #fff url(../img/about/pagelink_architecture05_sp_hover.svg);
  background-position: center center;
  background-repeat: no-repeat;
}
.pagelink_architecture a:hover .pagelink_architecture_text {
  color: #5C9398;
  background: #fff;
}
.pagelink_architecture a:hover::after {
  background: url(../img/about/icon_underarrow_green.svg);
  background-repeat: no-repeat;
  background-position: bottom center;
}

/*其の一*/
.sec_architecture_features {
  padding: 0;
}
.sec_architecture_features.sec_architecture_features02 {
  background: #E2D9BF;
}
.sec_architecture_features .area_architecture_features02_outer {
  padding: 0 15px;
  max-width: 1230px;
  margin: auto;
}
.sec_architecture_features .head_architecture_features {
  width: 100%;
}
.sec_architecture_features .head_architecture_features.head_architecture_features02 {
  background: #E2D9BF;
}
.sec_architecture_features .head_architecture_features.head_architecture_features03 {
  background: #F7F3E8;
}
.sec_architecture_features .head_architecture_features.head_architecture_features04 .head_text_architecture_features {
  padding-bottom: 52px;
}
.head_img_architecture_features {
  width: 100%;
  margin: 0 auto 38px;
}
.head_img_architecture_features img {
  width: 100%;
}

.head_text_architecture_features {
  padding: 0 15px 1px;
}
.head_text_architecture_features h4 {
  position: relative;
  border-bottom: 1px solid #333333;
  padding: 0 7px 13px;
  margin: 0 auto 20px;
}
.head_text_architecture_features h4 .sub_text {
  display: inline-block;
  font-size: 1.8rem;
}
.head_text_architecture_features h4 .main_text {
  display: inline-block;
  position: absolute;
  top: -14px;
  right: 5px;
  font-size: 3.1rem;
  line-height: 1;
}
.head_text_architecture_features h4 .main_text span {
  font-size: 5rem;
  line-height: 1;
  vertical-align: text-bottom;
}
.head_text_architecture_features h3 {
  font-size: 3rem;
  line-height: 1.4;
  letter-spacing: 2px;
  margin: 0 auto 30px;
  font-weight: 500;
}
.head_text_architecture_features h3 span {
  font-size: 4.2rem;
  display: block;
}
.head_text_architecture_features h3 .mini {
  display: inline-block;
  font-size: 3rem;
}
.head_text_architecture_features p {
  margin-bottom: 38px;
}
.head_text_architecture_features table {
  border: 1px solid #E2D9BF;
  margin: 0 auto 30px;
  width: 100%;
}
.head_text_architecture_features table th {
  background: rgba(0, 0, 0, 0.73);
  padding: 15px 5px 15px 38px;
  color: #fff;
  font-size: 1.6rem;
  font-weight: normal;
}
.head_text_architecture_features table td {
  background: rgba(0, 0, 0, 0.73);
  text-align: right;
  padding: 15px 32px 15px 5px;
  color: #fff;
  font-size: 1.6rem;
}
.head_text_architecture_features .btnArea {
  margin: 0 auto 79px;
}
.head_text_architecture_features .btnArea .btn i {
  display: inline-block;
  transition: 0.3s;
}
.head_text_architecture_features .btnArea .btn i svg path {
  stroke: #707070;
}
.head_text_architecture_features .btnArea .btn:hover i {
  right: 20px;
  bottom: 30%;
}
.head_text_architecture_features .btnArea .btn:hover i svg path {
  stroke: #fff;
}
.head_text_architecture_features .btnArea .btn02 i {
  display: inline-block;
  transition: 0.3s;
}
.head_text_architecture_features .btnArea .btn02 i svg path {
  stroke: #707070;
}
.head_text_architecture_features .btnArea .btn02:hover i {
  right: 20px;
  top: calc(50% + 10px);
}
.head_text_architecture_features .btnArea .btn02:hover i svg path {
  stroke: #fff;
}

/*其の一*/
.area_architecture_features01 {
  padding: 0 15px;
  max-width: 1230px;
  margin: 0 auto;
}

/*其の二*/
.area_architecture_features02 {
  padding: 0 0 83px;
}
.area_architecture_features02 .img {
  max-width: 414px;
  background: #fff;
  text-align: center;
  margin: 0 auto 50px;
  padding: 32px 16px 0;
  overflow: hidden;
}
.area_architecture_features02 .img li {
  padding: 0 0 16px;
  margin: 0 0 16px;
  position: relative;
}
.area_architecture_features02 .img li::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-image: linear-gradient(to right, #707070, #707070 3px, transparent 3px, transparent 3px);
  background-size: 9px 1px;
  background-repeat: repeat-x;
}
.area_architecture_features02 .img li:last-child::after {
  display: none;
}
.area_architecture_features02 .img li p {
  text-align: center;
  font-size: 2.4rem;
}

/*其の五*/
.area_architecture_features05_outer {
  position: relative;
}
.area_architecture_features05_outer .area_architecture_features05 {
  padding: 0 15px 76px;
  max-width: 1230px;
  margin: auto;
}
.area_architecture_features05_outer .area_architecture_features05 .text01 {
  margin: 0 auto 40px;
  font-size: 1.6rem;
  line-height: 1.8;
  padding: 0 8px;
}
.area_architecture_features05_outer .area_architecture_features05 .quote_txt {
  font-size: 1.2rem;
  text-align: right;
  margin: 40px auto 60px;
}
.area_architecture_features05_outer .area_architecture_features05 .text02 {
  margin: 0 0 30px;
}
.area_architecture_features05_outer .area_architecture_features05 .img {
  text-align: center;
  margin: 0 auto 16px;
}
.area_architecture_features05_outer .area_architecture_features05 .text03 {
  font-size: 1.4rem;
  margin: 0 0 30px;
}
.area_architecture_features05_outer .area_architecture_features05 .text04 {
  font-size: 1.4rem;
  margin: 0 0 30px;
}
.area_architecture_features05_outer .area_architecture_features05::before {
  content: "";
  background: url(../img/about/img_about_architecture_features05_img03_before.jpg);
  background-repeat: no-repeat;
  background-position: top center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: -43%;
  left: 0;
  z-index: -1;
}
.area_architecture_features05_outer .area_architecture_features05::after {
  content: "";
  background: url(../img/about/img_about_architecture_features05_img03_after.jpg);
  background-repeat: no-repeat;
  width: 477px;
  height: 141px;
  position: absolute;
  right: -100px;
  bottom: 0;
  z-index: -1;
}

/*図面*/
.area_architecture_features_list {
  display: block;
  padding: 0 15px 80px;
}
.area_architecture_features_list .item {
  width: 100%;
  margin: 0 auto 10px;
}
.area_architecture_features_list .item .img {
  text-align: center;
  margin: 0 auto 20px;
  cursor: pointer;
}
.area_architecture_features_list .item > a {
  text-align: center;
  margin: 0 auto 20px;
}
.area_architecture_features_list .text dt {
  font-size: 1.6rem;
  font-weight: normal;
  margin: 0 auto 2px;
}
.area_architecture_features_list .text dd {
  font-size: 1.2rem;
}

/*変遷など*/
.ttl_architecture {
  background: #E2D9BF;
  padding: 2px 5px;
  font-size: 2rem;
  max-width: 165px;
  text-align: center;
  margin: 0 0 28px;
}

/*平安時代*/
.area_architecture_features_heian .item_left {
  width: 100%;
  margin: 0 auto 38px;
}
.area_architecture_features_heian .item_left .text div {
  font-size: 1.6rem;
  margin: 23px 0;
  line-height: 1.8;
}
.area_architecture_features_heian .item_left .text div .num {
  font-size: 1.1rem;
  color: #D3A357;
  display: inline-block;
  position: relative;
  top: -5px;
  right: -4px;
}
.area_architecture_features_heian .item_right {
  width: 100%;
}
.area_architecture_features_heian .item_right .img {
  text-align: center;
  margin: 0 auto 20px;
}
.area_architecture_features_heian .item_right .img span {
  display: block;
  font-size: 1.2rem;
  margin: 20px auto 0;
}
.area_architecture_features_heian .item_right ul {
  background: #E9E9E9;
  padding: 15px 20px 15px 25px;
  margin: 0 auto 49px;
}
.area_architecture_features_heian .item_right ul li {
  font-size: 1.4rem;
  margin: 5px 0;
}
.area_architecture_features_heian .item_right ul li span {
  font-size: 1.1rem;
  color: #D3A357;
  display: inline-block;
  position: relative;
  top: -4px;
  right: 6px;
}

/*鎌倉時代*/
.area_architecture_features_kamakura .readtext {
  margin: 0 auto 52px;
}
.area_architecture_features_kamakura .flex_architecture_features_kamakura .item {
  width: 100%;
  margin: 0 auto 50px;
}
.area_architecture_features_kamakura .flex_architecture_features_kamakura .item .img {
  text-align: center;
  margin: 0 auto 18px;
}
.area_architecture_features_kamakura .flex_architecture_features_kamakura .item .text .cat {
  display: inline-block;
  background: #AA5443;
  font-size: 1.1rem;
  color: #fff;
  padding: 2px 2px;
  margin: 0 16px 0 11px;
  min-width: 67px;
  text-align: center;
}
.area_architecture_features_kamakura .flex_architecture_features_kamakura .item .text .mini {
  display: block;
  font-size: 1.2rem;
  padding: 0 0 0 6px;
}

/*南北朝時代*/
.area_architecture_features_nanboku .flex_architecture_features_nanboku .item_left {
  width: 100%;
  margin: 0 auto 53px;
}
.area_architecture_features_nanboku .flex_architecture_features_nanboku .item_left .img {
  text-align: center;
  margin: 0 auto 22px;
}
.area_architecture_features_nanboku .flex_architecture_features_nanboku .item_right {
  width: 100%;
}
.area_architecture_features_nanboku .flex_architecture_features_nanboku .item_right .text {
  margin: 0 auto 37px;
}
.area_architecture_features_nanboku > .text {
  margin: 0 auto 44px;
}

/*狛犬と獅子*/
.sec_architecture_shishi {
  background: #EDE8D8;
  position: relative;
  padding: 90px 0 63px;
  margin: 0 auto 123px;
}
.sec_architecture_shishi::before {
  content: "";
  display: block;
  width: 30%;
  height: 100%;
  background: #E2D9BF;
  position: absolute;
  top: 0;
  left: 0;
}
.sec_architecture_shishi .sec__ttl01 {
  position: relative;
  z-index: 1;
  padding: 0 15px;
}
.sec_architecture_shishi .readtext {
  position: relative;
  z-index: 1;
  font-size: 1.4rem;
  padding: 0 15px;
  text-align: center;
  margin: 0 auto 32px;
}
.sec_architecture_shishi .slidearea {
  position: relative;
  z-index: 1;
}

.area_rchitecture_shishi .item {
  text-align: center;
}
.area_rchitecture_shishi .item img {
  width: calc(100% - 40px);
  margin: 0 auto;
  height: auto;
}

.area_rchitecture_shishi_text {
  background: #fff;
  width: calc(100% - 40px);
  padding: 35px 0 70px;
  overflow: hidden;
}
.area_rchitecture_shishi_text.slick-dotted.slick-slider {
  margin: 36px auto 0;
}
.area_rchitecture_shishi_text .item {
  text-align: center;
  width: calc(100% - 30px);
}
.area_rchitecture_shishi_text .item .type {
  margin: 0 0 10px;
}
.area_rchitecture_shishi_text .item .type span {
  display: inline-block;
  color: #fff;
  font-size: 1.4rem;
  background: #AA5443;
  padding: 2px 5px;
}
.area_rchitecture_shishi_text .item dl dt {
  font-size: 1.6rem;
  font-weight: normal;
}
.area_rchitecture_shishi_text .item dl dd {
  font-size: 1.8rem;
  margin: 7px 0;
}
.area_rchitecture_shishi_text .item dl dd.dd02 {
  font-size: 1.6rem;
}
.area_rchitecture_shishi_text .prevarrow {
  position: absolute;
  bottom: 40px;
  left: 12%;
  width: 33px;
  height: 15px;
  background: url(../img/about/img_leftarrow.svg);
  background-repeat: no-repeat;
  background-position: center center;
  z-index: 1;
  cursor: pointer;
}
.area_rchitecture_shishi_text .nextarrow {
  position: absolute;
  bottom: 40px;
  right: 12%;
  width: 33px;
  height: 15px;
  background: url(../img/about/img_rightarrow.svg);
  background-repeat: no-repeat;
  background-position: center center;
  z-index: 1;
  cursor: pointer;
}
.area_rchitecture_shishi_text .slick-dots {
  margin: 0;
  bottom: 33px;
  left: 0;
}
.area_rchitecture_shishi_text .slick-dots li {
  width: 20px;
  height: 11px;
  margin: 0 7px;
  text-align: center;
}
.area_rchitecture_shishi_text .slick-dots li button {
  padding: 0;
  width: 11px;
  height: 11px;
  margin: auto;
  display: block;
}
.area_rchitecture_shishi_text .slick-dots li button::before {
  content: "";
  width: 11px;
  height: 11px;
  border-radius: 100px;
  background: #E2D9BF;
  opacity: 1;
  display: block;
  margin: auto;
  position: static;
}
.area_rchitecture_shishi_text .slick-dots li.slick-active button::before {
  background: #E9380E;
}

/*本殿*/
.sec_architecture_honden {
  padding: 0;
}
.sec_architecture_honden .head_architecture_honden {
  background: url(../img/about/img_about_architecture_honden_sp.jpg);
  background-position: top center;
  background-size: cover;
  color: #fff;
  width: 100%;
  min-height: 500px;
  padding: 85px 18px 148px;
}
.sec_architecture_honden .head_architecture_honden .head_architecture_honden_inner {
  writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  width: 100%;
  max-width: 175px;
  margin: auto;
  max-height: 280px;
}
.sec_architecture_honden .head_architecture_honden .head_architecture_honden_inner h2 {
  font-size: 5rem;
  text-align: left;
  margin: 23px 0 0 15px;
  position: relative;
}
.sec_architecture_honden .head_architecture_honden .head_architecture_honden_inner h2 .ttl {
  margin-top: -1.5em;
  position: absolute;
  top: -20px;
  right: -3em;
  padding: 20px 5px;
  font-size: 1.6rem;
}
.sec_architecture_honden .head_architecture_honden .head_architecture_honden_inner p {
  font-size: 2rem;
  letter-spacing: 7px;
}
.sec_architecture_honden .area_architecture_honden {
  font-size: 1.4rem;
  padding: 30px 15px 35px;
  max-width: 1040px;
  margin: auto;
}

/*境内・境外摂末社*/
.sec_architecture_keidai {
  padding: 0;
  margin: 0 auto 94px;
}
.sec_architecture_keidai .head_architecture_keidai {
  background: url(../img/about/img_about_architecture_keidai_sp.jpg);
  background-position: top center;
  background-size: cover;
  color: #fff;
  width: 100%;
  min-height: 500px;
  padding: 55px 18px 91px;
}
.sec_architecture_keidai .head_architecture_keidai .head_architecture_keidai_row {
  writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  width: 100%;
  max-width: 245px;
  margin: auto;
  max-height: 360px;
}
.sec_architecture_keidai .head_architecture_keidai .head_architecture_keidai_row h2 {
  font-size: 5rem;
  text-align: left;
  margin: 20px 0 0 15px;
  letter-spacing: 15px;
}
.sec_architecture_keidai .head_architecture_keidai .head_architecture_keidai_row p {
  font-size: 2rem;
  letter-spacing: 7px;
}
.sec_architecture_keidai .area_architecture_keidai01_outer {
  padding: 54px 15px 37px;
  max-width: 1230px;
  margin: auto;
}
.sec_architecture_keidai .text01 {
  margin: 0 auto 49px;
}
.sec_architecture_keidai .sec__ttl02 {
  margin: 0 auto 45px;
}
.sec_architecture_keidai .text02 {
  margin: 0 auto 40px;
}

/*ほかの境内・境外摂末社*/
.area_architecture_keidai02 {
  background: #AA5443;
  padding: 78px 20px 83px;
}
.area_architecture_keidai02 .text {
  font-size: 1.4rem;
  text-align: left;
  color: #fff;
  margin: 0 auto 14px;
}
.area_architecture_keidai02 .btnArea .btn {
  width: 100%;
  max-width: 568px;
  background: #AA5443;
  border: 1px solid #fff;
  color: #fff;
  font-size: 1.8rem;
  padding: 20px 10px;
}
.area_architecture_keidai02 .btnArea .btn:hover {
  background: #fff;
  border: 1px solid #fff;
  color: #AA5443;
}
.area_architecture_keidai02 .btnArea .btn02 {
  width: 100%;
  max-width: 568px;
  background: #AA5443;
  border: 1px solid #fff;
  color: #fff;
  font-size: 1.8rem;
  padding: 20px 10px;
}
.area_architecture_keidai02 .btnArea .btn02:hover {
  background: #fff;
  border: 1px solid #fff;
  color: #AA5443;
}

.slide_architecture_keidai_outer {
  overflow: hidden;
  margin: auto;
}
.slide_architecture_keidai_outer .slide_architecture_keidai {
  position: relative;
}
.slide_architecture_keidai_outer .slide_architecture_keidai .item .caption {
  text-align: center;
  font-size: 1.6rem;
  color: #fff;
}
.slide_architecture_keidai_outer .slide_architecture_keidai.slick-dotted.slick-slider {
  margin: 0 auto 110px;
}
.slide_architecture_keidai_outer .slide_architecture_keidai .item img {
  width: 100%;
  max-width: calc(100% - 20px);
  margin: auto;
}
.slide_architecture_keidai_outer .slide_architecture_keidai .prevarrow {
  position: absolute;
  bottom: -70px;
  left: 0;
  width: 33px;
  height: 15px;
  background: url(../img/about/img_leftarrow_white.svg);
  background-repeat: no-repeat;
  background-position: center center;
  z-index: 1;
  cursor: pointer;
}
.slide_architecture_keidai_outer .slide_architecture_keidai .nextarrow {
  position: absolute;
  bottom: -70px;
  right: 0;
  width: 33px;
  height: 15px;
  background: url(../img/about/img_rightarrow_white.svg);
  background-repeat: no-repeat;
  background-position: center center;
  z-index: 1;
  cursor: pointer;
}
.slide_architecture_keidai_outer .slide_architecture_keidai .slick-dots {
  margin: 0;
  bottom: -83px;
  left: 0;
  padding: 0 50px;
}
.slide_architecture_keidai_outer .slide_architecture_keidai .slick-dots li {
  width: 11px;
  height: 11px;
  margin: 0 7px;
  text-align: center;
}
.slide_architecture_keidai_outer .slide_architecture_keidai .slick-dots li button {
  padding: 0;
  width: 11px;
  height: 11px;
  margin: auto;
  display: block;
}
.slide_architecture_keidai_outer .slide_architecture_keidai .slick-dots li button::before {
  content: "";
  width: 11px;
  height: 11px;
  border-radius: 100px;
  background: #E2D9BF;
  opacity: 1;
  display: block;
  margin: auto;
  position: static;
}
.slide_architecture_keidai_outer .slide_architecture_keidai .slick-dots li.slick-active button::before {
  background: #D4B401;
}

/*その他*/
.sec_architecture_other {
  padding: 0;
}
.sec_architecture_other .head_architecture_other {
  background: url(../img/about/img_about_architecture_other_sp.jpg);
  background-position: top center;
  background-size: cover;
  color: #fff;
  width: 100%;
  min-height: 500px;
  padding: 60px 18px 44px;
}
.sec_architecture_other .head_architecture_other .head_architecture_other_inner {
  writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  width: 100%;
  max-width: 175px;
  margin: auto;
  max-height: 460px;
}
.sec_architecture_other .head_architecture_other .head_architecture_other_inner h2 {
  font-size: 5rem;
  text-align: left;
  margin: 0 0 0 15px;
}
.sec_architecture_other .head_architecture_other .head_architecture_other_inner p {
  padding: 60px 0 0;
  font-size: 2rem;
  letter-spacing: 7px;
}
.sec_architecture_other .readtext {
  padding: 42px 15px 95px;
}

.slide_architecture_other {
  width: calc(100% - 30px);
  margin: 0 auto 65px;
}
.slide_architecture_other.last {
  margin: 0 auto;
}
.slide_architecture_other .slide_architecture_other_img {
  overflow: hidden;
  text-align: center;
}
.slide_architecture_other .slide_architecture_other_img .slide_architecture_other_img_inner.slick-dotted.slick-slider {
  margin: 0;
}
.slide_architecture_other .slide_architecture_other_text_inner {
  position: relative;
  padding: 23px 0 0;
}
.slide_architecture_other .slide_architecture_other_text_inner.slick-dotted.slick-slider {
  margin: 0;
}
.slide_architecture_other .slide_architecture_other_text_inner .item h3 {
  font-size: 2.4rem;
  margin: 0 0 12px;
}
.slide_architecture_other .slide_architecture_other_text_inner .item h3 span.type {
  background: #AA5443;
  display: block;
  max-width: 87px;
  color: #fff;
  font-size: 1.2rem;
  padding: 4px 5px 5px;
  margin: 0 0 7px;
  text-align: center;
}
.slide_architecture_other .slide_architecture_other_text_inner .item .text01 {
  margin: 0 auto 10px;
}
.slide_architecture_other .caption {
  text-align: left;
  padding: 10px 10px 0;
  font-size: 1.3rem;
}
.slide_architecture_other .option {
  position: relative;
  margin: 0 auto 45px;
}
.slide_architecture_other .prevarrow {
  position: absolute;
  bottom: 5px;
  left: calc(50% - 140px);
  width: 33px;
  height: 15px;
  background: url(../img/about/img_leftarrow.svg);
  background-repeat: no-repeat;
  background-position: center center;
  z-index: 1;
  cursor: pointer;
}
.slide_architecture_other .nextarrow {
  position: absolute;
  bottom: 5px;
  right: calc(50% - 140px);
  width: 33px;
  height: 15px;
  background: url(../img/about/img_rightarrow.svg);
  background-repeat: no-repeat;
  background-position: center center;
  z-index: 1;
  cursor: pointer;
}
.slide_architecture_other .slick-dots {
  bottom: 0;
  position: static;
}
.slide_architecture_other .slick-dots li {
  width: 20px;
  height: 11px;
  margin: 0 7px;
  text-align: center;
}
.slide_architecture_other .slick-dots li button {
  padding: 0;
  width: 11px;
  height: 11px;
  margin: auto;
  display: block;
}
.slide_architecture_other .slick-dots li button::before {
  content: "";
  width: 11px;
  height: 11px;
  border-radius: 100px;
  background: #E2D9BF;
  opacity: 1;
  display: block;
  margin: auto;
  position: static;
}
.slide_architecture_other .slick-dots li.slick-active button::before {
  background: #E9380E;
}

@media screen and (max-width: 768px) {
  .area_architecture_keidai01 .item {
    display: flex;
    align-items: center;
    margin: 0 auto 21px;
    max-width: 414px;
  }
  .area_architecture_keidai01 .item .img {
    width: 100%;
    max-width: 150px;
    min-width: 150px;
    height: 150px;
    margin: 0 16px 0 0;
    position: relative;
    overflow: hidden;
  }
  .area_architecture_keidai01 .item .img img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: auto;
    max-width: none;
    height: 100%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
  }
  .area_architecture_keidai01 .item .text {
    width: 100%;
    font-size: 1.4rem;
  }
  .area_architecture_keidai01 .item .text span {
    background: #AA5443;
    display: block;
    max-width: 87px;
    color: #fff;
    font-size: 1.2rem;
    padding: 4px 5px 5px;
    margin: 0 0 7px;
    text-align: center;
  }
}
/*==================
八阪神社の歴史
==================*/
.history section {
  padding-bottom: 0;
}
.history .sec_e-under_read .text {
  font-size: 1.6rem;
  text-align: left;
  margin: 0 0 40px;
}
.sec_history_featureshead {
  padding: 0;
}

.sec_history_enshrinement {
  padding: 0 15px;
  background-image: url(../img/about/history/history_bg01.svg);
  background-size: 100% auto;
  background-repeat: repeat-y;
  background-position: top center;
}

.area_history_enshrinement01 {
  margin: 0 auto;
}
.area_history_enshrinement01 .img {
  text-align: center;
  margin: 0 auto 30px;
}
.area_history_enshrinement01 .text {
  padding: 25px 20px 25px;
  margin: 0 auto 30px;
  background: #F7F3E8;
  position: relative;
  box-shadow: 5px 5px 0 #D4B401;
}
.area_history_enshrinement01 .text .num {
  text-align: center;
  font-size: 1.6rem;
  vertical-align: middle;
  position: relative;
  margin: 0 0 20px;
}
.area_history_enshrinement01 .text .num span {
  display: inline-block;
  margin-left: 5px;
  font-size: 3.5rem;
  line-height: 1;
  vertical-align: -7px;
}
.area_history_enshrinement01 .text .num::after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  background: #D4B401;
  margin: 0 auto 7px;
}
.area_history_enshrinement01 .text h3 {
  text-align: center;
  font-size: 2.2rem;
  margin: 0 0 20px;
}
.area_history_enshrinement01 .text p {
  font-size: 1.6rem;
  line-height: 2;
}
.text_history_enshrinement {
  font-size: 1.6rem;
  margin: 0 auto 40px;
  padding: 0 15px;
  max-width: 1200px;
}

.area_history_enshrinement02 {
  max-width: 1200px;
  margin: 0 auto 80px;
}
.area_history_enshrinement02 h3 {
  font-size: 2.2rem;
  position: relative;
  margin: 0 0 20px;
  padding: 0 0 0 25px;
}
.area_history_enshrinement02 h3::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  width: 12px;
  height: 12px;
  background: #B73800;
}
.area_history_enshrinement02 .text {
  line-height: 1.8;
}
.area_history_enshrinement03 {
  margin: 0 0 80px;
}
.area_history_enshrinement03 .img {
  text-align: center;
  margin: 0 auto 30px;
}
.area_history_enshrinement03 .text h3 {
  margin: 0 0 25px;
}
.area_history_enshrinement03 .text h3 .mini_text {
  background: #AA5443;
  display: inline-block;
  width: 100%;
  max-width: 96px;
  color: #fff;
  font-size: 1.4rem;
  padding: 4px 3px 5px;
  margin: 0 0 7px;
  text-align: center;
}
.area_history_enshrinement03 .text h3 .main_text {
  display: block;
  font-size: 2.2rem;
}
.area_history_enshrinement03 .text h3 .sub_text {
  display: block;
  font-size: 1.6rem;
}
.area_history_enshrinement03 .text p {
  font-size: 1.6rem;
  line-height: 1.8;
  margin: 0 0 30px;
}
.area_history_enshrinement03 .btnArea .btn {
  padding: 15px 30px 15px 10px;
  min-width: none;
  width: 100%;
  max-width: 325px;
}
.area_history_enshrinement03 .btnArea .btn i {
  display: inline-block;
  transition: 0.3s;
}
.area_history_enshrinement03 .btnArea .btn:hover i {
  right: 20px;
  bottom: 30%;
}
.area_history_enshrinement03 .btnArea .btn:hover i svg path {
  stroke: #fff;
}

.sec_history_item {
  background-image: url(../img/about/history/bg_img03.jpg);
  background-repeat: repeat;
  background-position: top center;
  position: relative;
  margin: 0 0 80px;
}
.sec_history_item::before {
  content: "";
  display: block;
  background: url(../img/about/img_about_architecture_deco01_left.svg);
  background-repeat: no-repeat;
  background-position: center right;
  width: calc(100% + 622px);
  height: 160px;
  position: absolute;
  top: 50px;
  right: -622px;
  animation: loop-slideleft 40s infinite linear 1s both;
  opacity: 0.3;
}
.sec_history_item::after {
  content: "";
  display: block;
  background: url(../img/about/img_about_architecture_deco01_right.svg);
  background-repeat: no-repeat;
  background-position: center right;
  width: calc(100% + 381px);
  height: 81px;
  position: absolute;
  bottom: 50px;
  right: -381px;
  animation: loop-slideright 40s infinite linear 1s both;
  opacity: 0.3;
}
.sec_history_item .area_history_item {
  padding: 80px 15px;
  background-image: url(../img/about/history/history_bg02.svg);
  background-repeat: repeat;
  background-position: center center;
  background-size: 100% auto;
  position: relative;
}
.sec_history_item .area_history_item .box_history_item {
  background-image: url(../img/about/history/bg_img04.jpg);
  background-size: cover;
  background-position: top center;
  width: 100%;
  max-width: 1100px;
  margin: auto;
  padding: 32px 20px 2px;
  position: relative;
  z-index: 1;
}
.sec_history_item .area_history_item .box_history_item .text {
  margin: 0 0 30px;
}
.sec_history_item .area_history_item .box_history_item .text h3 {
  font-weight: bold;
  font-size: 2.2rem;
  margin: 0 auto 25px;
}
.sec_history_item .area_history_item .box_history_item .text h3 span {
  font-size: 1.8rem;
}
.sec_history_item .area_history_item .box_history_item .text p {
  line-height: 1.8;
}
.sec_history_item .area_history_item .box_history_item .img {
  text-align: center;
  margin: 0 0 30px;
}

.sec_history_featureshead {
  background: #fff;
  margin: 0 0 80px;
}
.sec_history_featureshead .area_architecture_featureshead {
  max-width: 1200px;
}
.sec_history_featureshead .area_architecture_featureshead .pagelink_architecture .kaigyo {
  display: none;
}
.sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a .num.num01 {
  background: #AA5443 url(../img/about/pagelink_architecture01_sp.svg);
  background-position: center center;
  background-repeat: no-repeat;
}
.sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a .num.num02 {
  background: #AA5443 url(../img/about/pagelink_architecture02_sp.svg);
  background-position: center center;
  background-repeat: no-repeat;
}
.sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a .num.num03 {
  background: #AA5443 url(../img/about/pagelink_architecture03_sp.svg);
  background-position: center center;
  background-repeat: no-repeat;
}
.sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a .num.num04 {
  background: #AA5443 url(../img/about/pagelink_architecture04_sp.svg);
  background-position: center center;
  background-repeat: no-repeat;
}
.sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a .pagelink_architecture_text {
  background: #AA5443;
}
.sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a:hover::after {
  background: url(../img/about/icon_underarrow_red.svg);
  background-repeat: no-repeat;
  background-position: bottom center;
}
.sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a:hover .num.num01 {
  background: #F7F3E8 url(../img/about/pagelink_architecture01_sp_hover_red.svg);
  background-position: center center;
  background-repeat: no-repeat;
}
.sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a:hover .num.num02 {
  background: #F7F3E8 url(../img/about/pagelink_architecture02_sp_hover_red.svg);
  background-position: center center;
  background-repeat: no-repeat;
}
.sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a:hover .num.num03 {
  background: #F7F3E8 url(../img/about/pagelink_architecture03_sp_hover_red.svg);
  background-position: center center;
  background-repeat: no-repeat;
}
.sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a:hover .num.num04 {
  background: #F7F3E8 url(../img/about/pagelink_architecture04_sp_hover_red.svg);
  background-position: center center;
  background-repeat: no-repeat;
}
.sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a:hover .pagelink_architecture_text {
  background: #F7F3E8;
  color: #AA5443;
}

.sec_history_head {
  position: relative;
  color: #fff;
  overflow: hidden;
  margin: 0 auto 60px;
  background: #000;
}
.sec_history_head::after {
  content: "";
  display: inline-block;
  width: 100%;
  max-width: 500px;
  min-width: 50%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: black;
  background: linear-gradient(90deg, black 0%, rgba(0, 0, 0, 0.56) 22%, rgba(0, 0, 0, 0) 100%);
}
.sec_history_head .area_history_head {
  max-width: 1240px;
  margin: 0 auto;
  padding: 72px 20px;
  position: relative;
  z-index: 1;
}
.sec_history_head .area_history_head .text {
  font-size: 1.8rem;
  margin: 0 0 25px;
}
.sec_history_head .area_history_head h2 .sub_text {
  display: block;
  font-size: 2.5rem;
  line-height: 1;
}
.sec_history_head .area_history_head h2 .sub_text span {
  display: inline-block;
  vertical-align: -7px;
  font-size: 5rem;
  line-height: 1;
}
.sec_history_head .area_history_head h2 .main_text {
  display: block;
  font-size: 3rem;
  line-height: 1.4;
}
.sec_history_head .area_history_head h2 .main_text span {
  font-size: 1.6rem;
  line-height: 1;
  vertical-align: 11px;
  display: inline-block;
  margin: 0 3px;
}
.sec_history_head .area_history_head p {
  margin: 35px 0 0;
}
.sec_history_head > img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  width: auto;
  height: auto;
}

#sec03 + .sec_history_head .area_history_head {
  padding: 40px 20px;
}
#sec03 + .sec_history_head > img.sp {
  width: 200%;
}

.sec_h-under {
  padding: 0;
}
.sec_h-under section {
  max-width: 1240px;
  padding-top: 0;
  padding-bottom: 0;
}
.sec_h-under p {
  margin: 0 0 25px;
  line-height: 1.8;
  font-size: 1.6rem;
}
.sec_h-under h3 {
  font-size: 2.8rem;
  margin: 0 auto 45px;
  position: relative;
  line-height: 1.6;
}
.sec_h-under h3 span {
  display: inline-block;
  color: #B73800;
  font-size: 1.3rem;
  font-weight: normal;
  vertical-align: 6px;
  margin: 0 1px;
}
.sec_h-under .box_h-under_img-and-text {
  margin: 0 0 20px;
}
.sec_h-under .box_h-under_img-and-text .text_h-under {
  margin: 0 0 30px;
}
.sec_h-under .box_h-under_img-and-text .text_h-under .bg {
  overflow: hidden;
  background: #F7F3E8;
  padding: 40px 15px 0px;
}
.sec_h-under .box_h-under_img-and-text .text_h-under .bg p {
  margin: 0 0 30px;
  font-size: 1.6rem;
}
.sec_h-under .box_h-under_img-and-text .img_h-under {
  margin: 0 0 30px;
  text-align: center;
}
.sec_h-under .img_h-under .img {
  text-align: center;
  margin: 0 0 30px;
}
.sec_h-under .img_h-under .img p {
  margin: 24px 0 0;
}
.sec_h-under .img_h-under .img p.left {
  text-align: left;
}
.sec_h-under .img_h-under .text span {
  background: #AA5443;
  display: inline-block;
  width: 100%;
  max-width: 96px;
  color: #fff;
  font-size: 1.4rem;
  padding: 4px 3px 5px;
  margin: 0 14px 0 0;
  text-align: center;
}
.sec_h-under .img_h-under .text p {
  margin: 15px 0 0;
}
.sec_h-under .img_h-under dl {
  text-align: left;
}
.sec_h-under .img_h-under dl dt {
  font-size: 1.8rem;
  margin: 25px 0 5px;
}
.sec_h-under .img_h-under dl dt span {
  display: inline-block;
  color: #B73800;
  font-size: 1.3rem;
  font-weight: normal;
  vertical-align: 6px;
  margin: 0 3px;
}
.sec_h-under .img_h-under dl dd {
  margin: 0 0 15px;
}
.sec_h-under .text_h-under {
  margin: 0 0 50px;
}
.sec_h-under .text_h-under ul {
  overflow: hidden;
  background: #F7F3E8;
  padding: 20px 15px 10px;
  margin: 50px 0 30px;
}
.sec_h-under .text_h-under ul li {
  margin: 0 0 10px;
  padding: 0 0 0 30px;
  text-indent: -30px;
}
.sec_h-under .text_h-under ul li span {
  color: #B73800;
  text-indent: 0;
  display: inline-block;
  margin: 0 5px 0 0;
}
.sec_h-under .text_h-under p span {
  color: #B73800;
  font-size: 1.3rem;
}
.sec_h-under .img_h-under02 .item {
  margin: 0 0 50px;
}
.sec_h-under .img_h-under02 .item .img {
  text-align: center;
  margin: 0 auto 9px;
}
.sec_h-under .img_h-under02 .text span {
  background: #AA5443;
  display: inline-block;
  width: 100%;
  max-width: 96px;
  color: #fff;
  font-size: 1.4rem;
  padding: 4px 3px 5px;
  margin: 0 14px 0 0;
  text-align: center;
}
.sec_h-under .img_h-under02 .text p {
  margin: 15px 0 0;
}
.sec_h-under.sec_h-under01 {
  margin: 0 0 80px;
}
.sec_h-under.sec_h-under02 {
  margin: 0 0 80px;
}
.sec_h-under.sec_h-under03 {
  margin: 0 0 80px;
}
.sec_h-under.sec_h-under04 .btnArea .btn {
  padding: 15px 40px 15px 10px;
  margin: 0 0 80px;
  width: 100%;
  max-width: 331px;
}
.sec_h-under.sec_h-under05 {
  margin: 0 0 80px;
}

.sec_history_present {
  padding: 0;
  margin: 0 0 70px;
}
.sec_history_present section {
  padding-top: 0;
  padding-bottom: 0;
}

.area_history_present {
  padding: 80px 20px;
  background-image: url(../img/about/history/bg_img03.jpg);
  position: relative;
}
.area_history_present .bg_img {
  margin: 0 0 30px;
}
.area_history_present .text {
  color: #fff;
}

.box_history_present01 {
  background: rgba(255, 255, 255, 0.9);
  padding: 30px 20px 0;
  margin: 0 0 40px;
  overflow: hidden;
}
.box_history_present01 p {
  margin: 0 0 30px;
  line-height: 1.8;
}

.box_history_present02 .img {
  text-align: center;
  margin: 0 0 30px;
}

.sec_history_abbreviated-chronology {
  padding: 0;
}
.sec_history_abbreviated-chronology section {
  padding: 0 20px;
}

.area_history_abbreviated-chronology table {
  margin: 68px auto 30px;
  width: 100%;
}
.area_history_abbreviated-chronology table thead tr th {
  text-align: center;
  background: #1B6E8E;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  color: #fff;
  font-size: 1.4rem;
  padding: 7px 0;
  font-weight: normal;
  width: 40px;
  vertical-align: middle;
}
.area_history_abbreviated-chronology table thead tr td {
  text-align: center;
  background: #1B6E8E;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  color: #fff;
  font-size: 1.4rem;
  padding: 7px 5px;
  font-weight: normal;
  vertical-align: middle;
}
.area_history_abbreviated-chronology table thead tr td.cell01 {
  width: 100px;
}
.area_history_abbreviated-chronology table tbody tr th {
  vertical-align: middle;
  text-align: center;
  padding: 0 10px;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.6;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  background: #FEF2EF;
}
.area_history_abbreviated-chronology table tbody tr th.bg01 {
  background: #F3DAD5;
}
.area_history_abbreviated-chronology table tbody tr th.bg02 {
  background: #E5CBC6;
}
.area_history_abbreviated-chronology table tbody tr th.bg03 {
  background: #D8B0A8;
}
.area_history_abbreviated-chronology table tbody tr th.bg04 {
  background: #C58D82;
}
.area_history_abbreviated-chronology table tbody tr th.bg05 {
  background: #C17869;
  color: #fff;
}
.area_history_abbreviated-chronology table tbody tr th.bg06 {
  background: #C26755;
  color: #fff;
}
.area_history_abbreviated-chronology table tbody tr th.bg07 {
  background: #BC442C;
  color: #fff;
}
.area_history_abbreviated-chronology table tbody tr th.bg08 {
  background: #8D240F;
  color: #fff;
}
.area_history_abbreviated-chronology table tbody tr td {
  vertical-align: middle;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  font-size: 1.4rem;
}
.area_history_abbreviated-chronology table tbody tr td.cell01 {
  text-align: center;
}
.area_history_abbreviated-chronology table tbody tr td.cell01 .inner {
  position: relative;
  padding: 2px 15px 2px 2px;
}
.area_history_abbreviated-chronology table tbody tr td.cell01 .inner.big {
  font-weight: bold;
}
.area_history_abbreviated-chronology table tbody tr td.cell02 .inner {
  padding: 25px 5px 25px 30px;
  position: relative;
}
.area_history_abbreviated-chronology table tbody tr td.cell02 .inner.td_first::after {
  content: "";
  display: inline-block;
  width: 3px;
  height: 50%;
  position: absolute;
  top: 0;
  left: -2px;
  background: #FBF9F5;
}
.area_history_abbreviated-chronology table tbody tr td.cell02 .inner.td_last::after {
  content: "";
  display: inline-block;
  width: 3px;
  height: 50%;
  position: absolute;
  bottom: 0;
  left: -2px;
  background: #F7F3E8;
}
.area_history_abbreviated-chronology table tbody tr td.cell02 .inner::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: -2px;
  width: 3px;
  height: calc(100% + 2px);
  background: #BE543F;
  z-index: 1;
}
.area_history_abbreviated-chronology table tbody tr td.cell02 .inner .maru {
  position: absolute;
  width: 50%;
  top: 50%;
  left: -6px;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  line-height: 1;
  z-index: 2;
}
.area_history_abbreviated-chronology table tbody tr td.cell02 .inner .maru::before {
  content: "";
  display: inline-block;
  background: #BE543F;
  width: 12px;
  height: 12px;
  border-radius: 100%;
}
.area_history_abbreviated-chronology table tbody tr td.cell02 .inner .maru.big {
  left: -10px;
}
.area_history_abbreviated-chronology table tbody tr td.cell02 .inner .maru.big::before {
  background: #821D02;
  width: 20px;
  height: 20px;
  position: relative;
  z-index: 1;
}
.area_history_abbreviated-chronology table tbody tr td.cell02 .inner .maru.big::after {
  content: "";
  display: block;
  border-bottom: 3px dotted #D4B401;
  width: 23px;
  margin-left: 10px;
  position: absolute;
  top: calc(50% - 0px);
  left: 0px;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
}
.area_history_abbreviated-chronology table tbody tr td.bg01 {
  background: #FBF9F5;
}
.area_history_abbreviated-chronology table tbody tr td.bg02 {
  background: #F7F3E8;
}
.area_history_abbreviated-chronology table tbody tr:first-child td.cell02 .inner::before {
  height: calc(50% + 2px);
  top: 50%;
}
.area_history_abbreviated-chronology table tbody tr:last-child td.cell02 .inner::before {
  height: 50%;
  top: 0;
}

.other-shrine_spot .column_area .map_spot {
  text-align: center;
}
.other-shrine_spot .column_area .other-enshrined_spot ul.map_list li a {
  width: 100%;
  padding: 0 5px 0 3.5em;
  height: 80px;
  display: flex;
  align-items: center;
}
.other-shrine_spot .column_area .col_item_ttl span {
  margin: 0;
}
.other-shrine_spot .column_area .sec__type02 p {
  font-size: 1.6rem;
}
.other-shrine_spot .sec__type01 .col_item_txt p {
  font-size: 1.6rem;
}
.other-shrine_spot .cap {
  font-size: 1.2rem;
}
.other-shrine_spot .shrine_slider_txt .slick-dots li.slick-active button::before {
  background: #E9380E;
}
.other-shrine_spot .shrine_slider_txt .slick-dots li button::before {
  content: "";
  width: 11px;
  height: 11px;
  border-radius: 100px;
  background: #E2D9BF;
  opacity: 1;
  display: block;
  margin: auto;
  position: static;
}
.other-shrine_spot .slick-prev, .other-shrine_spot .slick-next {
  top: inherit !important;
  bottom: -30px !important;
}
.other-shrine_spot .slick-dots {
  bottom: 0 !important;
  top: inherit !important;
}
.other-shrine_spot .shrine_slider_txt {
  padding-bottom: 30px !important;
}
.other-shrine_spot .slide_link {
  margin: 30px 0;
}
.other-shrine_spot .sp_col_swap {
  display: flex !important;
  flex-direction: column-reverse;
}

@media screen and (min-width: 769px) {
  /*==================
  八阪神社について
  ==================*/
  .sec_about_link {
    padding: 40px 0 0;
    position: relative;
  }
  .sec_about_link .img {
    text-align: center;
    margin: 0 auto;
  }
  .sec_about_link .img img {
    margin: 0 auto 0 0;
    width: auto;
    max-width: 60%;
  }
  .sec_about_link .text {
    padding: 0 20px;
    position: absolute;
    width: 50%;
    top: 50%;
    right: 0;
    transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
  }
  .sec_about_link .text h2 {
    text-align: left;
    font-size: 3rem;
    margin: 0 0 20px;
  }
  .sec_about_link .text p {
    line-height: 1.5;
  }
  .sec_about_link .text .btnArea {
    text-align: left;
  }
  .sec_about_link .text_inner {
    max-width: 555px;
    margin: 0 auto;
  }
  .sec_about_link.sec_about_link_reverse {
    padding: 0;
  }
  .sec_about_link.sec_about_link_reverse .img img {
    margin: 0 0 0 auto;
  }
  .sec_about_link.sec_about_link_reverse .text {
    left: 0;
    right: auto;
  }
  .sec_about_link.sec_about_link01 {
    margin: 0;
  }
  .sec_about_link.sec_about_link03 {
    margin: 0;
  }
  .about_yasaka .mainHeader .pageTitle {
    background-image: url(/wp-content/themes/yasaka/img/about/img_about_main.png);
  }
  .sec_about_shinmon {
    margin: 0 auto 190px;
  }
  .sec_about_shinmon .img {
    margin: 70px 0 80px;
  }
  .sec_about_shinmon .img p {
    font-size: 1.8rem;
  }
  .sec_about_shinmon .text {
    font-size: 1.8rem;
  }
  /*ご挨拶*/
  .sec_about_greeting .sec_about_flex {
    display: flex;
    justify-content: space-between;
  }
  .sec_about_greeting .chief_priest_img {
    width: 25%;
  }
  .sec_about_greeting .chief_priest_img img {
    max-width: 100%;
    height: auto;
  }
  .sec_about_greeting .text {
    font-size: 1.8rem;
    width: 70%;
  }
  .sec_about_highlights section .sec__ttl {
    font-size: 3.5rem;
  }
  .sec_about_highlights .head_about_highlights {
    margin: 106px 0 50px;
    text-align: center;
  }
  .sec_about_highlights .head_about_highlights h3 {
    font-size: 2.8rem;
    margin: 0 0 17px;
  }
  .sec_about_highlights .head_about_highlights p {
    font-size: 1.6rem;
  }
  .area_about_highlights {
    margin: 0 0 120px;
    display: flex;
    width: calc(100% - 40px);
    align-items: center;
  }
  .area_about_highlights .img {
    width: 100%;
    max-width: 949px;
    text-align: center;
    margin: 0;
    order: 1;
  }
  .area_about_highlights .text {
    order: 2;
    padding: 30px 20px 1px 31px;
    width: 100%;
    max-width: 320px;
    margin: 0 0 0 22px;
    position: relative;
    top: 40px;
  }
  .area_about_highlights .text::after {
    width: 100%;
    height: 100%;
    top: 35px;
    left: 40px;
  }
  .area_about_highlights .text h3 {
    font-size: 4rem;
    padding: 0 0 3px;
    margin: 0 0 15px;
    max-width: 400px;
  }
  .area_about_highlights .text h3 span {
    margin: 0 0 0 16px;
    font-size: 2rem;
    vertical-align: 7px;
  }
  .area_about_highlights .text p {
    font-size: 1.6rem;
    margin: 0 0 35px;
  }
  .area_about_highlights.area_about_highlights_reverse {
    margin: 0 0 120px auto;
  }
  .area_about_highlights.area_about_highlights_reverse .img {
    order: 2;
    margin: 0;
  }
  .area_about_highlights.area_about_highlights_reverse .text {
    order: 1;
    margin: 0 22px 0 0;
  }
  .spring_about_highlights {
    padding: 0;
    margin: 0 0 190px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row-reverse;
    /*.img{
    	&.img01{
    		width: 50%;
    		margin: 0 50px 0 0;
    		text-align: center;
    		img{
    			width: auto;
    			max-width: 100%;
    		}
    	}
    	&.img02{
    		width: 27%;
    		margin: 0 50px -60px 0;
    		text-align: center;
    		img{
    			width: auto;
    			max-width: 100%;
    		}
    	}
    	&.img03{
    	    width: 23%;
    	    margin: 0;
    	    margin:0 0 -30px 0;
    	    text-align: center;
    	    img{
    			width: auto;
    			max-width: 100%;
    		}
    	}
    }*/
  }
  .spring_about_highlights .spring_about_miniphoto {
    width: 41.5%;
  }
  .spring_about_highlights .spring_about_miniphoto .img02 {
    max-width: 80%;
    margin: 0 auto 50px;
  }
  .spring_about_highlights .spring_about_miniphoto .spring_about_colflex {
    display: flex;
    justify-content: space-between;
  }
  .spring_about_highlights .spring_about_miniphoto .spring_about_colflex .img03, .spring_about_highlights .spring_about_miniphoto .spring_about_colflex .img04 {
    width: 48%;
  }
  .spring_about_highlights .spring_about_bigphoto {
    width: 54.7%;
  }
  .spring_about_highlights .spring_about_bigphoto .img01 {
    text-align: right;
  }
  .summer_about_highlights {
    padding: 0 20px;
    max-width: 1480px;
    margin: 0 auto 192px;
    display: flex;
    justify-content: space-between;
  }
  .summer_about_highlights .img.img01 {
    margin: 0;
  }
  .summer_about_highlights .img.img01 img {
    max-width: 100%;
  }
  .summer_about_highlights .img.img02 {
    display: block;
    width: 100%;
    margin: 0 0 50px 0;
    text-align: right;
  }
  .summer_about_highlights .img.img02 img {
    max-width: 80%;
    margin: 0 0 0 auto;
  }
  .summer_about_highlights .img.img03 {
    display: inline-block;
    width: calc(50% - 25px);
    margin: 0 25px 0 0;
    text-align: center;
  }
  .summer_about_highlights .img.img04 {
    display: inline-block;
    width: calc(50% - 25px);
    margin: 0 0 0 25px;
    text-align: center;
    vertical-align: top;
  }
  .summer_about_highlights .item.item_left {
    width: 52%;
    margin: 50px 50px 0 0;
  }
  .summer_about_highlights .item.item_right {
    width: 48%;
  }
  .summer_about_highlights .item.item_right .item {
    text-align: right;
  }
  .autumn_about_highlights {
    padding: 0 20px;
    max-width: 1480px;
    margin: 0 auto 179px;
  }
  .autumn_about_highlights .img.img01 {
    display: inline-block;
    width: calc(50% - 25px);
    margin: 0 25px 60px 0;
  }
  .autumn_about_highlights .img.img01 img {
    max-width: 100%;
  }
  .autumn_about_highlights .img.img02 {
    display: inline-block;
    width: calc(50% - 25px);
    margin: 0 0 60px 25px;
  }
  .autumn_about_highlights .img.img02 img {
    max-width: 100%;
  }
  .autumn_about_highlights .img.img03 {
    display: inline-block;
    width: calc(50% - 25px);
    margin: 0 25px 0 0;
  }
  .autumn_about_highlights .img.img04 {
    display: inline-block;
    width: calc(50% - 25px);
    max-width: 395px;
    margin: 0 0 0 25px;
  }
  .autumn_about_highlights .item.item02 {
    text-align: right;
  }
  .winter_about_highlights {
    padding: 0 20px;
    max-width: 1480px;
    margin: 0 auto 159px;
  }
  .winter_about_highlights .img.img01 {
    display: inline-block;
    width: calc(50% - 25px);
    margin: 0 25px 0 0;
    vertical-align: middle;
  }
  .winter_about_highlights .img.img01 img {
    max-width: 100%;
  }
  .winter_about_highlights .img.img02 {
    display: inline-block;
    width: calc(50% - 25px);
    margin: 0 0 10px 25px;
    text-align: right;
    vertical-align: middle;
  }
  .winter_about_highlights .img.img02 img {
    max-width: 70%;
  }
  .winter_about_highlights .img.img03 {
    display: inline-block;
    width: calc(50% - 25px);
    max-width: 484px;
    margin: 0 25px 0 0;
    vertical-align: top;
  }
  .winter_about_highlights .img.img04 {
    display: inline-block;
    width: calc(50% - 25px);
    margin: 0 0 0 25px;
  }
  .winter_about_highlights .item {
    width: 100%;
    text-align: left;
    margin: 0;
  }
  /*==================
  八阪神社の建築物
  ==================*/
  .mainHeader-architecture {
    min-height: 100vh;
  }
  .mainHeader-architecture .pageTitle {
    min-height: 100vh;
  }
  div .sec__ttl02,
section .sec__ttl02 {
    font-size: 3.2rem;
  }
  /*令和2年（2020）12月
  八坂神社本殿は国宝に指定されました*/
  .sec_architecture-appeal {
    background: url(../img/about/img_about_architecture_bg01_pc.jpg);
    background-position: bottom left;
    background-size: auto 189px;
    background-repeat: repeat-x;
    overflow: inherit;
    position: relative;
    padding: 0 18px 61px;
  }
  .area_architecture-appeal {
    max-width: 1400px;
    margin: -110px auto 0;
  }
  .area_architecture-appeal .box_architecture-appeal {
    display: flex;
    align-items: center;
    padding: 20px;
  }
  .area_architecture-appeal .box_architecture-appeal .text {
    width: 100%;
    order: 2;
    margin: 0 0 0 45px;
  }
  .area_architecture-appeal .box_architecture-appeal .text h2 span {
    display: block;
    font-size: 2.7rem;
  }
  .area_architecture-appeal .box_architecture-appeal .text p {
    font-size: 1.6rem;
    letter-spacing: -1px;
    line-height: 1.8;
  }
  .area_architecture-appeal .box_architecture-appeal .img {
    width: 100%;
    order: 1;
  }
  /*本殿*/
  div .sec__ttl01,
section .sec__ttl01 {
    margin: 0 auto 72px;
  }
  div .sec__ttl01 .sub_text,
section .sec__ttl01 .sub_text {
    font-size: 2.8rem;
  }
  div .sec__ttl01 .main_text,
section .sec__ttl01 .main_text {
    font-size: 4.2rem;
    letter-spacing: 3px;
  }
  /*本殿*/
  .sec_architecture_honden .head_architecture_honden {
    background: url(../img/about/img_about_architecture_honden_pc.jpg);
    background-position: top center;
    background-size: cover;
    font-size: 1.8rem;
    padding: 80px 20px;
  }
  .sec_architecture_honden .head_architecture_honden .head_architecture_honden_inner {
    max-width: 1000px;
    margin: auto;
    max-height: 310px;
  }
  .sec_architecture_honden .head_architecture_honden .head_architecture_honden_inner h2 {
    margin: 23px 0 0 50px;
  }
  .sec_architecture_honden .head_architecture_honden .head_architecture_honden_inner p {
    letter-spacing: 3px;
  }
  .sec_architecture_honden .area_architecture_honden {
    padding: 90px 15px;
    font-size: 1.8rem;
  }
  /*五つの特色*/
  .sec_architecture_featureshead {
    background: #F7F3E8;
  }
  .sec_architecture_featureshead div .sec__ttl01,
.sec_architecture_featureshead section .sec__ttl01 {
    margin: 0 auto 100px;
  }
  .pagelink_architecture {
    display: flex;
    width: calc(100% + 12px);
    margin: 0 0 30px -6px;
  }
  .pagelink_architecture .kaigyo {
    display: block;
  }
  .pagelink_architecture a {
    width: calc(20% - 12px);
    margin: 0 6px;
  }
  .pagelink_architecture a .num {
    display: inline-block;
    border-radius: 100%;
    background: #5C9398;
    font-size: 1.6rem;
    width: 103px;
    height: 103px;
    color: #fff;
    position: absolute;
    top: auto;
    bottom: 60px;
    left: 50%;
    transform: translate(-50%, 0%);
    -webkit-transform: translate(-50%, 0%);
    -ms-transform: translate(-50%, 0%);
    -moz-transform: translate(-50%, 0%);
    padding: 8px 0 0;
    text-align: center;
    line-height: 1.2;
    z-index: 1;
  }
  .pagelink_architecture a .num.num01 {
    background: #5C9398 url(../img/about/pagelink_architecture01_pc.svg);
    background-position: top 8px center;
    background-repeat: no-repeat;
  }
  .pagelink_architecture a .num.num02 {
    background: #5C9398 url(../img/about/pagelink_architecture02_pc.svg);
    background-position: top 8px center;
    background-repeat: no-repeat;
  }
  .pagelink_architecture a .num.num03 {
    background: #5C9398 url(../img/about/pagelink_architecture03_pc.svg);
    background-position: top 8px center;
    background-repeat: no-repeat;
  }
  .pagelink_architecture a .num.num04 {
    background: #5C9398 url(../img/about/pagelink_architecture04_pc.svg);
    background-position: top 8px center;
    background-repeat: no-repeat;
  }
  .pagelink_architecture a .num.num05 {
    background: #5C9398 url(../img/about/pagelink_architecture05_pc.svg);
    background-position: top 8px center;
    background-repeat: no-repeat;
  }
  .pagelink_architecture a .pagelink_architecture_text {
    position: relative;
    min-height: 124px;
    font-size: 1.3rem;
    padding: 0;
    line-height: 1.4;
    width: 100%;
  }
  .pagelink_architecture a .pagelink_architecture_text > span {
    display: block;
    text-align: center;
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 0;
    transform: translate(0%, -50%);
    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    -moz-transform: translate(0%, -50%);
    width: 100%;
  }
  .pagelink_architecture a .pagelink_architecture_text > span span {
    display: block;
    font-size: 1.6rem;
    letter-spacing: -1px;
  }
  .pagelink_architecture a::after {
    content: "";
    display: inline-block;
    position: absolute;
    top: auto;
    bottom: 12px;
    left: 50%;
    transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    -moz-transform: translate(-50%, 0);
    z-index: 2;
    width: 23px;
    height: 12px;
  }
  .pagelink_architecture a:hover .num.num01 {
    background: #fff url(../img/about/pagelink_architecture01_pc_hover.svg);
    background-position: top 8px center;
    background-repeat: no-repeat;
  }
  .pagelink_architecture a:hover .num.num02 {
    background: #fff url(../img/about/pagelink_architecture02_pc_hover.svg);
    background-position: top 8px center;
    background-repeat: no-repeat;
  }
  .pagelink_architecture a:hover .num.num03 {
    background: #fff url(../img/about/pagelink_architecture03_pc_hover.svg);
    background-position: top 8px center;
    background-repeat: no-repeat;
  }
  .pagelink_architecture a:hover .num.num04 {
    background: #fff url(../img/about/pagelink_architecture04_pc_hover.svg);
    background-position: top 8px center;
    background-repeat: no-repeat;
  }
  .pagelink_architecture a:hover .num.num05 {
    background: #fff url(../img/about/pagelink_architecture05_pc_hover.svg);
    background-position: top 8px center;
    background-repeat: no-repeat;
  }
  /*其の一*/
  .sec_architecture_features {
    padding: 0;
  }
  .sec_architecture_features .head_architecture_features {
    width: 100%;
  }
  .sec_architecture_features .head_architecture_features .head_architecture_features_inner {
    width: 100%;
    max-width: 1230px;
    padding: 0 15px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .sec_architecture_features .head_architecture_features .head_architecture_features_inner.wide {
    max-width: 1575px;
    margin: 0;
    padding: 0 15px 0 0;
  }
  .sec_architecture_features .head_architecture_features .head_architecture_features_inner.wide02 {
    max-width: 1815px;
    margin: 0 auto;
    padding: 0 15px 0 0;
  }
  .sec_architecture_features .head_architecture_features .head_architecture_features_inner.wide02 .head_text_architecture_features {
    max-width: 720px;
    margin: 0 230px 0 auto;
    background: rgba(255, 255, 255, 0.95);
    padding: 82px 15px 64px;
  }
  .sec_architecture_features .head_architecture_features .head_architecture_features_inner.wide02 .head_text_architecture_features > * {
    max-width: 462px;
    margin-right: auto;
    margin-left: auto;
  }
  .sec_architecture_features .head_architecture_features .head_architecture_features_inner.reverse {
    padding: 0 0 0 15px;
    margin-left: auto;
  }
  .sec_architecture_features .head_architecture_features .head_architecture_features_inner.reverse .head_img_architecture_features {
    order: 2;
    margin: 0 0 38px 30px;
  }
  .sec_architecture_features .head_architecture_features .head_architecture_features_inner.reverse .head_text_architecture_features {
    order: 1;
  }
  .sec_architecture_features .head_architecture_features.head_architecture_features01 {
    background: url(../img/about/img_about_architecture_features01_bg.jpg);
    background-size: cover;
    background-position: top center;
    padding: 85px 0 65px;
  }
  .sec_architecture_features .head_architecture_features.head_architecture_features02 {
    background: #E2D9BF;
    padding: 129px 0 119px;
  }
  .sec_architecture_features .head_architecture_features.head_architecture_features03 {
    background: #F7F3E8;
    padding: 98px 0 104px;
  }
  .sec_architecture_features .head_architecture_features.head_architecture_features04 {
    background: url(../img/about/img_about_architecture_features04_img01.jpg);
    background-size: cover;
    background-position: top center;
    padding: 58px 0;
  }
  .sec_architecture_features .head_architecture_features.head_architecture_features04 .head_text_architecture_features {
    padding-bottom: 0;
  }
  .sec_architecture_features .head_architecture_features.head_architecture_features05 {
    background: url(../img/about/img_about_architecture_features05_img01.jpg);
    background-size: cover;
    background-position: top center;
    padding: 188px 0 138px;
  }
  .head_img_architecture_features {
    max-width: 960px;
    margin: 0 30px 38px 0;
  }
  .head_text_architecture_features {
    padding: 0;
    width: 100%;
    max-width: 462px;
  }
  .head_text_architecture_features h4 {
    margin: 0 auto 46px;
  }
  .head_text_architecture_features h3 {
    line-height: 1.5;
    margin: 0 auto 44px;
  }
  .head_text_architecture_features p {
    margin: 0 auto 38px;
  }
  .head_text_architecture_features table th {
    padding: 15px 5px 15px 77px;
  }
  .head_text_architecture_features table td {
    padding: 15px 119px 15px 5px;
  }
  .head_text_architecture_features .btnArea {
    margin: 0 auto 38px;
  }
  .head_text_architecture_features.head_text_architecture_features_white * {
    color: #fff;
  }
  .head_text_architecture_features.head_text_architecture_features_white h4 {
    border-bottom: 1px solid #fff;
  }
  /*其の二*/
  .area_architecture_features02 {
    padding: 0 0 101px;
  }
  .area_architecture_features02 .img {
    max-width: 100%;
    display: flex;
    justify-content: space-between;
    background: #fff;
    padding: 32px 0;
  }
  .area_architecture_features02 .img li {
    width: 33.3333333333%;
    position: relative;
    padding: 0 16px;
    margin: 0;
  }
  .area_architecture_features02 .img li::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: auto;
    right: 0;
    width: 1px;
    height: 100%;
    background-image: linear-gradient(to top, #707070, #707070 3px, transparent 3px, transparent 3px);
    background-size: 1px 9px;
    background-repeat: repeat-y;
  }
  .area_architecture_features02 .img li:last-child {
    border-right: none;
  }
  .area_architecture_features02 .img li:last-child::after {
    display: none;
  }
  .area_architecture_features02 .img li p {
    text-align: center;
    font-size: 2.4rem;
  }
  /*其の五*/
  .area_architecture_features05_outer {
    background: url(../img/about/img_about_architecture_features05_img03.jpg);
    background-size: cover;
    background-position: top center;
    padding: 71px 0 122px;
  }
  .area_architecture_features05_outer .area_architecture_features05 {
    padding: 0 15px;
    max-width: 1230px;
    margin: auto;
  }
  .area_architecture_features05_outer .area_architecture_features05 .text01 {
    max-width: 720px;
    margin: 0 auto 75px;
    font-size: 2rem;
    line-height: 2;
  }
  .area_architecture_features05_outer .area_architecture_features05 .text02 {
    margin: 0 auto 105px;
  }
  .area_architecture_features05_outer .area_architecture_features05 .img {
    margin: 0 auto 27px;
  }
  .area_architecture_features05_outer .area_architecture_features05 .text03 {
    font-size: 1.6rem;
    margin: 0 0 50px;
  }
  .area_architecture_features05_outer .area_architecture_features05 .text04 {
    margin: 0 0 50px;
    font-size: 1.6rem;
    text-align: center;
  }
  .area_architecture_features05_outer .area_architecture_features05::before, .area_architecture_features05_outer .area_architecture_features05::after {
    display: none;
  }
  .area_architecture_features05_outer .area_architecture_features05 .btnArea a {
    min-width: 360px;
  }
  /*図面*/
  .area_architecture_features_list {
    display: flex;
    padding: 60px 0 84px;
    width: calc(100% + 20px);
    margin: 0 0 0 -10px;
  }
  .area_architecture_features_list .item {
    width: calc(33.3333333333% - 20px);
    margin: 0 10px 10px;
  }
  .area_architecture_features_list .text dt {
    font-size: 1.6rem;
  }
  .area_architecture_features_list .text dd {
    font-size: 1.2rem;
  }
  /*平安時代*/
  .area_architecture_features_heian {
    display: flex;
    justify-content: space-between;
    margin: 0 auto 86px;
  }
  .area_architecture_features_heian .item_left {
    max-width: 730px;
    margin: 0 0 38px;
  }
  .area_architecture_features_heian .item_left .text div {
    font-size: 1.8rem;
    margin: 30px 0;
    line-height: 1.9;
    padding: 0 0 0 40px;
  }
  .area_architecture_features_heian .item_left .text div .num {
    font-size: 1.1rem;
    color: #D3A357;
    display: inline-block;
    position: relative;
    top: -15px;
    right: -1px;
  }
  .area_architecture_features_heian .item_right {
    max-width: 320px;
    margin: 0 0 38px 30px;
  }
  .area_architecture_features_heian .item_right .img {
    margin: 0 auto 91px;
  }
  .area_architecture_features_heian .item_right .img span {
    font-size: 1.2rem;
    margin: 20px auto 0;
  }
  .area_architecture_features_heian .item_right ul {
    padding: 25px 20px 25px 25px;
    margin: 0 auto;
  }
  .area_architecture_features_heian .item_right ul li {
    font-size: 1.6rem;
  }
  /*鎌倉時代*/
  .area_architecture_features_kamakura .readtext {
    margin: 0 auto 48px;
  }
  .area_architecture_features_kamakura .flex_architecture_features_kamakura {
    display: flex;
    justify-content: space-between;
    padding: 0 0 41px;
  }
  .area_architecture_features_kamakura .flex_architecture_features_kamakura .item {
    width: calc(50% - 31px);
    margin: 0 auto 50px;
  }
  .area_architecture_features_kamakura .flex_architecture_features_kamakura .item .img {
    text-align: center;
    margin: 0 auto 26px;
  }
  .area_architecture_features_kamakura .flex_architecture_features_kamakura .text .mini {
    padding: 0 0 0 30px;
  }
  /*南北朝時代*/
  .area_architecture_features_nanboku .flex_architecture_features_nanboku {
    display: flex;
    justify-content: space-between;
  }
  .area_architecture_features_nanboku .flex_architecture_features_nanboku .item_left {
    max-width: 503px;
    margin: 0 auto 60px;
  }
  .area_architecture_features_nanboku .flex_architecture_features_nanboku .item_right {
    max-width: 600px;
    margin: 0 0 0 71px;
  }
  .area_architecture_features_nanboku .flex_architecture_features_nanboku .item_right .text {
    line-height: 2;
  }
  .area_architecture_features_nanboku > .text {
    margin: 0 auto 90px;
    line-height: 2;
  }
  /*狛犬と獅子*/
  .sec_architecture_shishi {
    padding: 125px 0 162px;
    margin: 0 auto 143px;
  }
  .sec_architecture_shishi::before {
    width: 30%;
  }
  .sec_architecture_shishi .readtext {
    font-size: 1.6rem;
    margin: 0 auto 78px;
  }
  .sec_architecture_shishi .slidearea {
    position: relative;
  }
  .area_rchitecture_shishi {
    margin: 0 0 0 -190px;
  }
  .area_rchitecture_shishi .item img {
    width: calc(100% - 55px);
    margin: 0 auto;
    height: auto;
  }
  .area_rchitecture_shishi_text {
    width: 100%;
    max-width: 281px;
    background: #fff;
    z-index: 1;
    overflow: hidden;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translate(0%, -50%);
    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    -moz-transform: translate(0%, -50%);
    padding: 140px 0 208px 40px;
  }
  .area_rchitecture_shishi_text.slick-dotted.slick-slider {
    margin: 0;
  }
  .area_rchitecture_shishi_text .item {
    text-align: left;
  }
  .area_rchitecture_shishi_text .item .type {
    margin: 0 0 10px;
  }
  .area_rchitecture_shishi_text .item .type span {
    display: inline-block;
    color: #fff;
    font-size: 1.4rem;
    background: #AA5443;
    padding: 2px 5px;
  }
  .area_rchitecture_shishi_text .item dl dt {
    font-size: 1.6rem;
    margin: 0;
    font-weight: normal;
  }
  .area_rchitecture_shishi_text .item dl dd {
    font-size: 2rem;
    margin: 10px 0;
  }
  .area_rchitecture_shishi_text .item dl dd.dd02 {
    font-size: 1.6rem;
    margin: 0;
  }
  .area_rchitecture_shishi_text .prevarrow {
    bottom: 139px;
    left: 12%;
  }
  .area_rchitecture_shishi_text .nextarrow {
    bottom: 139px;
    right: 12%;
  }
  .area_rchitecture_shishi_text .slick-dots {
    margin: 0;
    bottom: 129px;
    left: 0;
  }
  /*境内・境外摂末社*/
  .sec_architecture_keidai .head_architecture_keidai {
    background: url(../img/about/img_about_architecture_keidai_pc.jpg);
    background-position: top center;
    background-size: cover;
    padding: 128px 18px;
  }
  .sec_architecture_keidai .head_architecture_keidai .head_architecture_keidai_inner {
    max-width: 1200px;
    margin: auto;
  }
  .sec_architecture_keidai .head_architecture_keidai .head_architecture_keidai_inner .head_architecture_keidai_row {
    max-width: 280px;
    margin: 0 auto 0 0;
    max-height: 360px;
  }
  .sec_architecture_keidai .head_architecture_keidai .head_architecture_keidai_inner h2 {
    margin: 0px 0 0 60px;
    line-height: 1.4;
    letter-spacing: 15px;
    word-break: keep-all;
  }
  .sec_architecture_keidai .head_architecture_keidai .head_architecture_keidai_inner p {
    letter-spacing: 3px;
  }
  .sec_architecture_keidai .area_architecture_keidai01_outer {
    padding: 103px 15px 96px;
  }
  .sec_architecture_keidai .text01 {
    margin: 0 0 113px;
  }
  /*境内・境外摂末社*/
  .area_architecture_keidai01 {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    width: calc(100% + 32px);
    margin: 0 0 0 -16px;
  }
  .area_architecture_keidai01 .item {
    width: 100%;
    max-width: calc(50% - 32px);
    margin: 0 16px 50px;
  }
  .area_architecture_keidai01 .item .img {
    text-align: center;
    margin: 0 auto 9px;
  }
  .area_architecture_keidai01 .item .text span {
    background: #AA5443;
    display: inline-block;
    width: 100%;
    max-width: 96px;
    color: #fff;
    font-size: 1.4rem;
    padding: 4px 3px 5px;
    margin: 0 14px 0 0;
    text-align: center;
  }
  /*ほかの境内・境外摂末社*/
  .area_architecture_keidai02 {
    padding: 82px 0 72px;
    margin: 0 auto 97px;
  }
  .area_architecture_keidai02 .text {
    text-align: center;
    font-size: 1.8rem;
    margin: 0 auto 21px;
  }
  .area_architecture_keidai02 .btnArea .btn {
    max-width: 568px;
    font-size: 2.4rem;
    padding: 30px 10px;
  }
  .area_architecture_keidai02 .btnArea .btn02 {
    max-width: 568px;
    font-size: 2.4rem;
    padding: 30px 10px;
  }
  .slide_architecture_keidai_outer .slide_architecture_keidai .item img {
    max-width: calc(100% - 39px);
  }
  .slide_architecture_keidai_outer .slide_architecture_keidai .item .caption {
    padding: 10px 10px 0;
    text-align: center;
    font-size: 2rem;
    color: #fff;
  }
  .slide_architecture_keidai_outer .slide_architecture_keidai .slick-dots {
    margin: 0;
    bottom: -77px;
  }
  .slide_architecture_keidai_outer .slide_architecture_keidai .prevarrow {
    left: calc(50% - 270px);
  }
  .slide_architecture_keidai_outer .slide_architecture_keidai .nextarrow {
    right: calc(50% - 270px);
  }
  /*その他の建造物*/
  .sec_architecture_other .head_architecture_other {
    background: url(../img/about/img_about_architecture_other_pc.jpg);
    background-position: top center;
    background-size: cover;
    padding: 45px 18px;
  }
  .sec_architecture_other .head_architecture_other .head_architecture_other_inner {
    max-width: 1350px;
    margin: auto;
    max-height: 402px;
  }
  .sec_architecture_other .head_architecture_other .head_architecture_other_inner h2 {
    margin: 0 0 0 46px;
  }
  .sec_architecture_other .head_architecture_other .head_architecture_other_inner p {
    letter-spacing: 3px;
    padding: 75px 0 0;
  }
  .sec_architecture_other .readtext {
    padding: 105px 15px 136px;
    max-width: 1230px;
    margin: auto;
  }
  .slide_architecture_other {
    width: 100%;
    margin: 0 auto 100px;
    clear: both;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .slide_architecture_other .slide_architecture_other_img {
    width: 100%;
    max-width: 1000px;
  }
  .slide_architecture_other .slide_architecture_other_img.swap {
    order: 2;
  }
  .slide_architecture_other .slide_architecture_other_text {
    width: 100%;
    max-width: 600px;
    padding: 0 30px 0 30px;
    margin: auto;
  }
  .slide_architecture_other .slide_architecture_other_text.swap {
    order: 1;
  }
  .slide_architecture_other .slide_architecture_other_text .slide_architecture_other_text_inner {
    overflow: hidden;
    padding: 0 0 80px;
  }
  .slide_architecture_other .slide_architecture_other_text .slide_architecture_other_text_inner.slick-dotted.slick-slider {
    margin: 0;
  }
  .slide_architecture_other .slide_architecture_other_text .slide_architecture_other_text_inner .item h3 {
    font-size: 3rem;
    margin: 0 0 7px;
  }
  .slide_architecture_other .slide_architecture_other_text .slide_architecture_other_text_inner .item h3 span.type {
    display: inline-block;
    max-width: 140px;
    font-size: 1.2rem;
    padding: 2px 5px 3px;
    margin: 0 10px 0 0;
  }
  .slide_architecture_other .slide_architecture_other_text .slide_architecture_other_text_inner .item h3 span.text {
    display: inline-block;
    vertical-align: middle;
    letter-spacing: 2px;
  }
  .slide_architecture_other .slide_architecture_other_text .slide_architecture_other_text_inner .item .text01 {
    font-size: 1.6rem;
    margin: 0 auto 17px;
  }
  .slide_architecture_other .slide_architecture_other_text .slide_architecture_other_text_inner .item .text02 {
    font-size: 1.6rem;
    max-width: 600px;
  }
  .slide_architecture_other .prevarrow {
    left: calc(50% - 170px);
  }
  .slide_architecture_other .nextarrow {
    right: calc(50% - 170px);
  }
  .slide_architecture_other .option {
    position: absolute;
    z-index: 1;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    -moz-transform: translate(-50%, 0);
    margin: 0;
  }
  /*==================
  八阪神社の歴史
  ==================*/
  .history .sec_e-under_read .text {
    font-size: 2.2rem;
    text-align: center;
  }
  .area_history_enshrinement01 {
    max-width: 1266px;
    margin: 0 auto 90px;
    position: relative;
    z-index: 1;
  }
  .area_history_enshrinement01 .img {
    margin: 0 auto 0 0;
    max-width: 50%;
  }
  .area_history_enshrinement01 .text {
    padding: 25px 20px;
    margin: 0 auto 30px;
    width: 100%;
    max-width: 50%;
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 0;
    transform: translate(0%, -50%);
    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    -moz-transform: translate(0%, -50%);
  }
  .area_history_enshrinement01 .text .num {
    font-size: 1.6rem;
    vertical-align: middle;
    margin: 0 0 20px;
  }
  .area_history_enshrinement01 .text .num span {
    margin-left: 5px;
    font-size: 3.5rem;
    line-height: 1;
    vertical-align: -7px;
  }
  .area_history_enshrinement01 .text h3 {
    font-size: 2.2rem;
    margin: 0 0 25px;
  }
  .area_history_enshrinement01 .text p {
    font-size: 1.6rem;
    line-height: 2.2;
  }
  .area_history_enshrinement01.reverse .img {
    margin: 0 0 0 auto;
  }
  .area_history_enshrinement01.reverse .text {
    top: 50%;
    right: auto;
    left: 0;
  }
  .text_history_enshrinement {
    font-size: 2.2rem;
    margin: 0 auto 110px;
    padding: 0;
  }
  .area_history_enshrinement02 h3 {
    font-size: 3.2rem;
    margin: 0 0 30px;
  }
  .area_history_enshrinement03 {
    max-width: 1150px;
    margin: 0 auto 90px;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .area_history_enshrinement03 .img {
    width: 100%;
    max-width: 590px;
    margin: 0 30px 30px 0;
  }
  .area_history_enshrinement03 .text {
    width: 100%;
    max-width: 510px;
  }
  .area_history_enshrinement03 .text .main_text {
    font-size: 2.8rem;
  }
  .area_history_enshrinement03 .text .sub_text {
    font-size: 2.2rem;
  }
  .area_history_enshrinement03 .text h3 .mini_text {
    background: #AA5443;
    display: inline-block;
    width: 100%;
    max-width: 96px;
    color: #fff;
    font-size: 1.4rem;
    padding: 4px 3px 5px;
    text-align: center;
  }
  .area_history_enshrinement03 .btnArea {
    text-align: left;
  }
  .sec_history_item {
    margin: 0 0 133px;
  }
  .sec_history_item .area_history_item {
    padding: 143px 15px;
  }
  .sec_history_item .area_history_item .box_history_item {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .sec_history_item .area_history_item .box_history_item .text {
    width: 100%;
    max-width: 596px;
  }
  .sec_history_item .area_history_item .box_history_item .img {
    width: 100%;
    max-width: 269px;
    margin: 0 0 30px 30px;
  }
  .sec_history_featureshead {
    background: #fff;
    margin: 0 0 114px;
  }
  .sec_history_featureshead h2 {
    margin-bottom: 130px;
  }
  .sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a {
    width: calc(25% - 12px);
  }
  .sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a .num.num01 {
    background: #AA5443 url(../img/about/pagelink_architecture01_pc.svg);
    background-position: top 8px center;
    background-repeat: no-repeat;
  }
  .sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a .num.num02 {
    background: #AA5443 url(../img/about/pagelink_architecture02_pc.svg);
    background-position: top 8px center;
    background-repeat: no-repeat;
  }
  .sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a .num.num03 {
    background: #AA5443 url(../img/about/pagelink_architecture03_pc.svg);
    background-position: top 8px center;
    background-repeat: no-repeat;
  }
  .sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a .num.num04 {
    background: #AA5443 url(../img/about/pagelink_architecture04_pc.svg);
    background-position: top 8px center;
    background-repeat: no-repeat;
  }
  .sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a .pagelink_architecture_text {
    background: #AA5443;
  }
  .sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a:hover .num.num01 {
    background: #F7F3E8 url(../img/about/pagelink_architecture01_pc_hover_red.svg);
    background-position: top 8px center;
    background-repeat: no-repeat;
  }
  .sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a:hover .num.num02 {
    background: #F7F3E8 url(../img/about/pagelink_architecture02_pc_hover_red.svg);
    background-position: top 8px center;
    background-repeat: no-repeat;
  }
  .sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a:hover .num.num03 {
    background: #F7F3E8 url(../img/about/pagelink_architecture03_pc_hover_red.svg);
    background-position: top 8px center;
    background-repeat: no-repeat;
  }
  .sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a:hover .num.num04 {
    background: #F7F3E8 url(../img/about/pagelink_architecture04_pc_hover_red.svg);
    background-position: top 8px center;
    background-repeat: no-repeat;
  }
  .sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a:hover .pagelink_architecture_text {
    background: #F7F3E8;
  }
  .sec_history_head {
    margin: 0 auto 60px;
  }
  .sec_history_head::after {
    background: linear-gradient(90deg, black 0%, rgba(0, 0, 0, 0.56) 0%, rgba(0, 0, 0, 0) 100%);
    max-width: 100%;
    min-width: 100%;
  }
  .sec_history_head .area_history_head {
    padding: 130px 15px;
    min-height: 560px;
  }
  .sec_history_head .area_history_head .text {
    font-size: 1.8rem;
    margin: 0 0 35px;
  }
  .sec_history_head .area_history_head h2 .sub_text {
    display: block;
    font-size: 2.5rem;
    line-height: 1;
    margin: 0 0 5px;
  }
  .sec_history_head .area_history_head h2 .sub_text span {
    display: inline-block;
    vertical-align: -7px;
    font-size: 5rem;
    line-height: 1;
  }
  .sec_history_head .area_history_head h2 .main_text {
    display: block;
    font-size: 5rem;
    line-height: 1.4;
  }
  .sec_history_head .area_history_head h2 .main_text span {
    font-size: 1.6rem;
    vertical-align: 28px;
  }
  .sec_history_head > img {
    max-height: none;
    width: auto;
  }
  #sec03 + .sec_history_head .area_history_head {
    padding: 130px 15px;
  }
  #sec03 + .sec_history_head > img.sp {
    width: 100%;
  }
  .sec_h-under h3 {
    font-size: 3.2rem;
  }
  .sec_h-under p {
    margin: 0 0 25px;
    line-height: 1.9;
    font-size: 1.6rem;
  }
  .sec_h-under p.pc_mb90 {
    margin: 0 0 90px;
  }
  .sec_h-under .box_h-under_img-and-text {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 0 50px;
  }
  .sec_h-under .box_h-under_img-and-text .text_h-under {
    width: 100%;
    max-width: 100%;
    margin: 0 0 30px;
  }
  .sec_h-under .box_h-under_img-and-text .text_h-under .bg {
    padding: 70px 25px 30px;
  }
  .sec_h-under .box_h-under_img-and-text .text_h-under .bg p {
    margin: 0 0 30px;
    font-size: 1.8rem;
  }
  .sec_h-under .box_h-under_img-and-text .img_h-under {
    width: 100%;
    max-width: 573px;
    margin: 0 0 30px 50px;
  }
  .sec_h-under .box_h-under_img-and-text.reverse .text_h-under {
    order: 2;
  }
  .sec_h-under .box_h-under_img-and-text.reverse .img_h-under {
    order: 1;
    margin: 0 50px 30px 0;
  }
  .sec_h-under .box_h-under_img-and-text.pc_mb0 {
    margin: 0;
  }
  .sec_h-under .img_h-under dl {
    text-align: left;
  }
  .sec_h-under .img_h-under dl dt {
    font-size: 2.2rem;
  }
  .sec_h-under .img_h-under.col2 {
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 50px;
  }
  .sec_h-under .img_h-under.col2 .img {
    width: 100%;
    max-width: calc(50% - 14px);
    margin: 0 0 9px;
  }
  .sec_h-under .img_h-under.col2 .img_vertical img {
    height: 100%;
    width: auto;
  }
  .sec_h-under .img_h-under.pc_mb90 {
    margin: 0 0 90px;
  }
  .sec_h-under .img_h-under02 {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .sec_h-under .img_h-under02 .item {
    width: calc(50% - 16px);
    margin: 0 0 40px;
  }
  .sec_h-under .img_h-under02 .item .img {
    text-align: center;
  }
  .sec_h-under .img_h-under02 .text span {
    max-width: 96px;
    font-size: 1.4rem;
    padding: 4px 3px 5px;
    margin: 0 14px 0 0;
  }
  .sec_h-under .img_h-under02 .text p {
    margin: 15px 0 0;
  }
  .sec_h-under .text_h-under ul {
    padding: 20px 50px 10px;
    margin: 90px 0 0;
  }
  .sec_h-under .text_h-under ul li {
    padding: 0 0 0 77px;
    text-indent: -77px;
    /*
    &.li04{
    	padding: 0 0 0 110px;
    	text-indent: -110px;
    }
    &.li05{
    	padding: 0 0 0 110px;
    	text-indent: -110px;
    }
    */
  }
  .sec_h-under .text_h-under.pc_mb90 {
    margin: 0 0 90px;
  }
  .sec_h-under.sec_h-under01 {
    margin: 0 0 195px;
  }
  .sec_h-under.sec_h-under02 {
    margin: 0 0 195px;
  }
  .sec_h-under.sec_h-under03 {
    margin: 100px 0 113px;
  }
  .sec_h-under.sec_h-under04 .btnArea .btn {
    margin: 0 0 153px;
  }
  .sec_h-under.sec_h-under04 .img_h-under02 + .btnArea .btn {
    margin: 50px 0 153px;
  }
  .sec_h-under.sec_h-under05 {
    margin: 123px 0 220px;
  }
  .sec_history_present {
    margin: 0 0 160px;
  }
  .sec_history_present .sec__ttl {
    margin: 0 0 214px;
  }
  .area_history_present {
    padding: 212px 20px 80px;
    position: relative;
  }
  .area_history_present .bg_img {
    position: absolute;
    top: -140px;
    left: 0;
  }
  .area_history_present .text {
    max-width: 1200px;
    margin: 0 auto;
    text-align: center;
  }
  .box_history_present01 {
    position: relative;
    z-index: 1;
    max-width: 1200px;
    padding: 73px 50px 43px;
    margin: 0 auto 30px;
  }
  .box_history_present02 {
    position: relative;
    z-index: 1;
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
  }
  .box_history_present02 .img {
    width: calc(50% - 20px);
    text-align: center;
    margin: 0 0 50px;
  }
  .area_history_abbreviated-chronology table thead tr th {
    font-size: 2rem;
    width: 60px;
  }
  .area_history_abbreviated-chronology table thead tr td {
    font-size: 2rem;
  }
  .area_history_abbreviated-chronology table thead tr td.cell01 {
    width: 241px;
  }
  .area_history_abbreviated-chronology table tbody tr th {
    padding: 0 10px;
    font-size: 2.2rem;
  }
  .area_history_abbreviated-chronology table tbody tr td {
    font-size: 1.6rem;
  }
  .area_history_abbreviated-chronology table tbody tr td.cell01 .inner {
    padding: 2px 15px 2px 2px;
  }
  .area_history_abbreviated-chronology table tbody tr td.cell02 .inner {
    padding: 25px 15px 25px 90px;
  }
  .area_history_abbreviated-chronology table tbody tr td.cell02 .inner .maru.big::after {
    border-bottom: 3px dotted #D4B401;
    width: 75px;
  }
  .other-shrine_spot .column_area .map_spot {
    padding: 0 0 120px;
  }
  .other-shrine_spot .column_area .other-enshrined_spot ul.map_list li {
    width: 32%;
  }
  .other-shrine_spot .column_area .col_item_ttl span {
    margin: 0 0 0 32px;
  }
  .other-shrine_spot .sp_col_swap {
    flex-direction: row;
  }
}
@media screen and (min-width: 961px) {
  /*==================
  八阪神社について
  ==================*/
  .sec_about_link .img img {
    max-width: 71%;
  }
  .sec_about_link .text h2 {
    font-size: 5rem;
  }
  .sec_about_link .text p {
    line-height: 2;
    font-size: 1.8rem;
  }
  .area_about_highlights {
    align-items: flex-end;
  }
  .area_about_highlights .sec_about_highlights section .sec__ttl {
    font-size: 4rem;
  }
  .area_about_highlights .text {
    max-width: 616px;
    margin: 0 0 0 72px;
  }
  .area_about_highlights .text::after {
    width: 100%;
    height: 100%;
    top: 35px;
    left: 40px;
  }
  .area_about_highlights .text h3 {
    font-size: 6rem;
    padding: 0 0 3px;
    margin: 0 0 15px;
  }
  .area_about_highlights .text h3 span {
    margin: 0 0 0 16px;
    font-size: 2rem;
    vertical-align: 13px;
  }
  .area_about_highlights .text p {
    font-size: 1.8rem;
    margin: 0 0 35px;
  }
  .area_about_highlights.area_about_highlights_reverse {
    margin: 0 0 120px auto;
  }
  .area_about_highlights.area_about_highlights_reverse .img {
    order: 2;
    margin: 0;
  }
  .area_about_highlights.area_about_highlights_reverse .text {
    order: 1;
    margin: 0 86px 0 auto;
  }
  /*==================
  八阪神社の歴史
  ==================*/
  .area_history_enshrinement01 {
    margin: 0 auto;
  }
  .area_history_enshrinement01 .text {
    max-width: 571px;
    padding: 45px 40px 45px;
  }
  .sec_history_item .box_history_item .img {
    margin: 0 0 30px 70px;
  }
  .sec_history_featureshead {
    background: #fff;
    margin: 0 0 114px;
  }
  .sec_history_featureshead h2 {
    margin-bottom: 130px;
  }
  .sec_history_featureshead .area_architecture_featureshead .pagelink_architecture a .pagelink_architecture_text {
    font-size: 2.2rem;
  }
}
@media screen and (min-width: 1281px) {
  /*==================
  八阪神社の建築物
  ==================*/
  /*令和2年（2020）12月
  八坂神社本殿は国宝に指定されました*/
  .area_architecture-appeal .box_architecture-appeal {
    padding: 26px 70px 21px 42px;
  }
  .area_architecture-appeal .box_architecture-appeal .img {
    min-width: 627px;
  }
  .area_architecture-appeal .box_architecture-appeal .text h2 span {
    display: block;
    font-size: 3.2rem;
  }
  /*五つの特色*/
  .pagelink_architecture {
    display: flex;
  }
  .pagelink_architecture a .num {
    width: 163px;
    height: 163px;
    bottom: 0;
  }
  .pagelink_architecture a .num span {
    font-size: 4rem;
  }
  .pagelink_architecture a .pagelink_architecture_text {
    position: relative;
    min-height: 124px;
    font-size: 1.8rem;
  }
  .pagelink_architecture a .pagelink_architecture_text > span {
    display: block;
    text-align: center;
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 0;
    transform: translate(0%, -50%);
    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    -moz-transform: translate(0%, -50%);
    width: 100%;
  }
  .pagelink_architecture a .pagelink_architecture_text > span span {
    display: block;
    font-size: 2.4rem;
    letter-spacing: 0;
  }
  .pagelink_architecture a .pagelink_architecture_text > span .pc {
    display: none !important;
  }
  .pagelink_architecture a::after {
    content: "";
    display: inline-block;
    position: absolute;
    top: auto;
    bottom: 15px;
    left: 50%;
    transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    -moz-transform: translate(-50%, 0);
    z-index: 2;
  }
  .pagelink_architecture a:hover {
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
  }
  .slide_architecture_other .slide_architecture_other_text .slide_architecture_other_text_inner .item h3 {
    font-size: 4rem;
  }
  .slide_architecture_other .slide_architecture_other_text .slide_architecture_other_text_inner .item h3 span.type {
    min-width: 150px;
    font-size: 2rem;
    padding: 4px 5px 5px;
    margin: 0 30px 0 0;
  }
  .slide_architecture_other .slide_architecture_other_text .slide_architecture_other_text_inner .item .text01 {
    font-size: 2rem;
    margin: 0 auto 47px;
  }
  /*==================
  八阪神社の歴史
  ==================*/
  .area_history_abbreviated-chronology table tbody tr td.cell02 .inner {
    padding: 25px 195px 25px 90px;
  }
}
@media screen and (min-width: 1600px) {
  .area_rchitecture_shishi_text {
    max-width: 591px;
    padding: 140px 0 208px 131px;
  }
  .area_rchitecture_shishi_text .prevarrow {
    left: 22%;
  }
  .area_rchitecture_shishi_text .nextarrow {
    right: 22%;
  }
}
/*==================
崇敬会
==================*/
.list_reception_tab {
  max-width: 796px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.list_reception_tab li {
  width: calc(33.3333333333% - 5px);
  text-align: center;
  font-size: 1.6rem;
  display: block;
  color: #989898;
  background: #eee;
  padding: 12px 0px;
}
.list_reception_tab li.active {
  background: #FCFBF8;
  color: #000;
}

.suikeikai .mainHeader .pageTitle {
  background-image: url(/wp-content/themes/yasaka/img/sukeikai/img_suikeikai_main.png);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: -1;
}
.suikeikai .mainHeader .pageTitle::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  display: block;
  background: rgba(0, 0, 0, 0.3);
}

.area_sukeikai02 {
  background: #FCFBF8;
  padding: 40px 30px 10px;
  overflow: hidden;
}
.area_sukeikai02 .text {
  padding: 0 0 20px;
}
.area_sukeikai02 .text p {
  margin: 0 0 20px;
}
.area_sukeikai02 .col2 p,
.area_sukeikai02 .col3 p {
  margin: 0 auto 30px;
  text-align: center;
}
.area_sukeikai02 .col2 p span,
.area_sukeikai02 .col3 p span {
  display: block;
  font-size: 1.6rem;
  margin: 10px 0 0;
}

/*.head_sukeikai02{
	position: relative;
	min-height: 400px;
	img{
		max-width: none;
		height: 400px;
		position: absolute;
	    top: 50%;
	    left: 50%;
	    transform: translate(-50%,-50%);
	    -webkit-transform: translate(-50%,-50%);
	    -ms-transform: translate(-50%,-50%);
	    -moz-transform: translate(-50%,-50%);
	}
}
*/
.head_sukeikai02,
.head_sukeikai03 {
  /*崇敬会 キャプションつき画像*/
}
.head_sukeikai02 img,
.head_sukeikai03 img {
  width: 100%;
}
.head_sukeikai02 .img_cap,
.head_sukeikai03 .img_cap {
  text-align: center;
}
.head_sukeikai02 .img_cap .cap,
.head_sukeikai03 .img_cap .cap {
  display: block;
  font-size: 1.6rem;
  margin: 10px 0 0;
}

.sec_sukeikai03 div .sec__ttl02,
.sec_sukeikai03 section .sec__ttl02 {
  margin: 0 auto 15px;
}
.sec_sukeikai03 table {
  margin: 20px 0 50px;
}
.sec_sukeikai03 table th {
  font-size: 1.6rem;
  font-weight: normal;
  padding: 10px 0;
  width: 250px;
  vertical-align: middle;
}
.sec_sukeikai03 table td {
  font-size: 1.6rem;
  font-weight: normal;
  vertical-align: middle;
  text-align: center;
  width: 100px;
}
.sec_sukeikai03 .text {
  margin: 0 0 50px;
}
.sec_sukeikai03 .btnArea.btnArea_2col {
  max-width: 1029px;
  margin-right: auto;
  margin-left: auto;
  display: block;
}
.sec_sukeikai03 .btnArea.btnArea_2col .btn {
  color: #fff;
  background: #534C4C;
  min-width: auto;
  padding: 26px 0;
  display: block;
  max-width: 380px;
  margin: auto;
}
.sec_sukeikai03 .btnArea.btnArea_2col .btn:first-child {
  margin: 0 auto 30px;
}
.sec_sukeikai03 .btnArea.btnArea_2col .btn:hover {
  background: #fff;
  color: #534C4C;
}

/*崇敬会のご案内　役職者*/
.txt_chairman {
  display: flex;
  justify-content: flex-end;
}

/*崇敬会挨拶*/
.sec_sukeikai_read {
  /*崇敬会　ご挨拶*/
}
.sec_sukeikai_read .sec__read {
  text-align: left;
}
.sec_sukeikai_read .sec__read .read_box {
  margin: 0 auto 25px;
}
.sec_sukeikai_read .sec__read .read_box p {
  margin: 0 0 30px;
}
.sec_sukeikai_read .sec__read .read_box .message_ttl {
  font-size: 2rem;
  font-weight: bold;
  margin: 0 auto 15px;
}
.sec_sukeikai_read .read_txt_sukeikai {
  font-size: 1.4rem;
  line-height: 2;
}
.sec_sukeikai_read .sukeikai_ceo {
  text-align: center;
  margin: 0 auto 20px;
}
.sec_sukeikai_read .sukeikai_ceo img {
  max-width: 201px;
  height: auto;
}

/*　---------------------------------------------------　*/
/*　-------------PCレイアウト----------------------------　*/
/*　---------------------------------------------------　*/
@media screen and (min-width: 769px) {
  /*==================
  崇敬会
  ==================*/
  .sec_sukeikai01 {
    padding-bottom: 80px;
  }
  .list_reception_tab li {
    font-size: 2.5rem;
    padding: 12px 5px;
  }
  .area_sukeikai02 {
    padding: 70px 50px;
  }
  .area_sukeikai02 .text {
    padding: 0 0 60px;
  }
  .area_sukeikai02 .text p {
    margin: 0 0 40px;
  }
  .area_sukeikai02 .col2 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 0 40px;
  }
  .area_sukeikai02 .col2 p {
    margin: 0;
    width: calc(50% - 48px);
  }
  .area_sukeikai02 .col3 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 0 40px;
  }
  .area_sukeikai02 .col3 p {
    margin: 0;
    width: calc(33.3333333333% - 24px);
  }
  .sec_sukeikai03 table {
    margin: 45px 0 80px;
  }
  .sec_sukeikai03 table th {
    font-size: 1.8rem;
    font-weight: normal;
    padding: 10px 0 10px 40px;
    width: 250px;
  }
  .sec_sukeikai03 table td {
    font-size: 1.8rem;
    font-weight: normal;
    width: 100px;
  }
  .sec_sukeikai03 .text {
    padding: 0 0 0 40px;
  }
  .sec_sukeikai03 .btnArea.btnArea_2col {
    display: flex;
    flex-wrap: nowrap;
  }
  .sec_sukeikai03 .btnArea.btnArea_2col .btn {
    width: calc(50% - 18px);
    max-width: 100%;
    padding: 26px 0;
  }
  .sec_sukeikai03 .btnArea.btnArea_2col .btn:first-child {
    margin: 0;
  }
  /*.head_sukeikai02{
  	img{
  		max-width: 100%;
  		width: auto;
  		height: auto;
  		margin: auto;
  		position: static;
  		transform: translate(0%,0%);
  		-webkit-transform: translate(0%,0%);
  		-ms-transform: translate(0%,0%);
  		-moz-transform: translate(0%,0%);
  	}
  }*/
  .head_sukeikai02,
.head_sukeikai03 {
    display: flex;
    justify-content: space-between;
  }
  .head_sukeikai02 .img,
.head_sukeikai03 .img {
    width: calc(50% - 6px);
  }
  /*崇敬会挨拶*/
  .sec_sukeikai_read {
    /*崇敬会　ご挨拶*/
  }
  .sec_sukeikai_read .sec__read {
    font-size: 1.8rem;
    line-height: 2;
  }
  .sec_sukeikai_read .sec__read .read_box {
    margin: 0 auto 40px;
  }
  .sec_sukeikai_read .sec_sukeikai_flex {
    display: flex;
    justify-content: space-between;
  }
  .sec_sukeikai_read .sukeikai_ceo {
    width: 25%;
  }
  .sec_sukeikai_read .sukeikai_ceo img {
    max-width: 100%;
    height: auto;
  }
  .sec_sukeikai_read .read_txt_sukeikai {
    font-size: 1.8rem;
    width: 70%;
  }
}
@media screen and (min-width: 961px) {
  /*==================
  崇敬会
  ==================*/
}
@media screen and (min-width: 1281px) {
  /*==================
  崇敬会
  ==================*/
}
@media screen and (min-width: 1600px) {
  /*==================
  崇敬会
  ==================*/
}
/*==================
崇敬会
==================*/
.sec_access01,
.sec_access02 {
  max-width: 1120px;
}

.sec_access01 .img {
  padding: 40px 0 0;
  text-align: center;
}

.access .mainHeader .pageTitle {
  background-image: url(/wp-content/themes/yasaka/img/access/img_access_main.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: -1;
  height: 600px;
  overflow: hidden;
  position: relative;
}
.access .mainHeader .pageTitle::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  display: block;
  background: rgba(0, 0, 0, 0.3);
}

.googlemap {
  width: 100%;
  height: 350px;
  margin: auto;
}

.mymap {
  width: 100%;
  height: 350px;
  margin: auto;
}

.accessmap {
  width: 100%;
  max-width: 800px;
  display: block;
  margin: auto;
}

.sec_access02 {
  padding-bottom: 0;
}
.sec_access02 h3 {
  font-size: 2.5rem;
  margin: 0 auto 35px;
}
.sec_access02 .img {
  text-align: center;
}
.sec_access02 .img.img01 {
  margin: 0 auto 44px;
}
.sec_access02 ul li {
  position: relative;
  margin: 0 0 10px;
  font-size: 1.6rem;
}
.sec_access02 ul li i {
  vertical-align: middle;
  font-size: 3rem;
  margin-right: 0.5em;
}
.sec_access02 ul li a {
  transition: 0.3s;
}
.sec_access02 ul li a:hover {
  opacity: 0.7;
}
.sec_access02 dl {
  padding: 30px 0;
}
.sec_access02 dl dt {
  margin: 0 0 14px;
}
.sec_access02 dl dt span {
  display: inline-block;
  color: #fff;
  font-size: 1.6rem;
  background: #D3A357;
  text-align: center;
  padding: 5px;
  width: 100%;
  max-width: 211px;
  font-weight: normal;
  letter-spacing: 2px;
}
.sec_access02 dl dd {
  margin: 0 0 45px;
  font-size: 1.6rem;
}
.sec_access02 .text {
  font-size: 1.6rem;
  margin: -20px 0 0;
  padding: 0 0 40px 0;
  line-height: 2;
}

/*　---------------------------------------------------　*/
/*　-------------PCレイアウト----------------------------　*/
/*　---------------------------------------------------　*/
@media screen and (min-width: 769px) {
  /*==================
  崇敬会
  ==================*/
  .sec_access02 h3 {
    font-size: 3.5rem;
  }
  .sec_access02 ul li {
    font-size: 2.5rem;
    margin: 0 0 30px;
  }
  .sec_access02 ul li.li01 img {
    top: 10px;
  }
  .sec_access02 ul li.li02 img {
    top: 10px;
  }
  .sec_access02 ul li.li03 img {
    top: 14px;
  }
  .sec_access02 dl {
    padding: 20px 0 50px;
  }
  .sec_access02 dl dt {
    margin: 0 0 14px;
  }
  .sec_access02 dl dt span {
    max-width: 281px;
    font-size: 2.2rem;
    padding: 5px;
  }
  .sec_access02 dl dd {
    margin: 0 0 45px;
    font-size: 2rem;
  }
  .sec_access02 .text {
    font-size: 2.5rem;
    padding: 0 0 40px 40px;
  }
  .googlemap {
    height: 583px;
  }
  .mymap {
    height: 583px;
  }
}
@media screen and (min-width: 961px) {
  /*==================
  崇敬会
  ==================*/
}
@media screen and (min-width: 1281px) {
  /*==================
  崇敬会
  ==================*/
}
@media screen and (min-width: 1600px) {
  /*==================
  崇敬会
  ==================*/
}
.main_en {
  padding: 0;
}
.main_en .mainHeader .pageTitle {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 1;
}
.main_en .mainHeader .pageTitle::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  display: block;
  background: rgba(0, 0, 0, 0.3);
}

/*history_en*/
.history_bg .mainHeader .pageTitle {
  background-image: url(/wp-content/themes/yasaka/img/en/history/img_history_main.png);
}

/*enshrined_deity_en*/
.enshrined_deity_bg .mainHeader .pageTitle {
  background-image: url(/wp-content/themes/yasaka/img/en/enshrined-deity/img_enshrined-deity_main.png);
}

/*gion_fes_en*/
.gion_fes_bg .mainHeader .pageTitle {
  background-image: url(/wp-content/themes/yasaka/img/en/gion-festival/img_gion-festival_main.png);
}

/*yearly-events_bg*/
.yearly-events_bg .mainHeader .pageTitle {
  background-image: url(/wp-content/themes/yasaka/img/en/yearly-events/img_yearly-events_main.png);
}

/*sccess_bg*/
.sccess_bg .mainHeader .pageTitle {
  background-image: url(/wp-content/themes/yasaka/img/en/access/img_access_main.png);
}

/*==================
History of Yasaka Shrine
==================*/
.sec__read.left {
  text-align: left;
}

.en_read {
  line-height: 2;
  margin: 0 0 30px;
}

.sec_en_read {
  position: relative;
  padding: 60px 0 30px;
}
.sec_en_read section {
  padding-top: 0;
  padding-bottom: 0;
}
.sec_en_read::before {
  content: "";
  display: block;
  background: url(../img/common/img_cloud_left.svg);
  background-repeat: no-repeat;
  background-position: center right;
  width: calc(100% + 622px);
  height: 160px;
  position: absolute;
  top: 0;
  right: -622px;
  z-index: -1;
  animation: loop-slideleft 40s infinite linear 1s both;
}
.sec_en_read::after {
  content: "";
  display: block;
  background: url(../img/common/img_cloud_right.svg);
  background-repeat: no-repeat;
  background-position: center right;
  width: calc(100% + 381px);
  height: 160px;
  position: absolute;
  bottom: 140px;
  right: -381px;
  z-index: -1;
  animation: loop-slideright 40s infinite linear 1s both;
}
.sec_en_read.sec_en_read_gion-festival::after {
  bottom: -70px;
}

.area_en_read {
  padding: 0 15px;
  position: relative;
}
.area_en_read .text {
  position: relative;
  z-index: 1;
}
.area_en_read .text .blc-ttl {
  text-align: center;
}
.area_en_read .text .blc-ttl::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -moz-transform: translate(-50%, 0);
}
.area_en_read .text p {
  margin: 0 0 30px;
}
.area_en_read .img {
  text-align: center;
  margin: 0 0 30px;
  position: relative;
  z-index: 1;
}

.sec_en_read02 {
  position: relative;
}
.sec_en_read02::before {
  content: "";
  display: block;
  background: url(../img/common/img_cloud_right.svg);
  background-repeat: no-repeat;
  background-position: center right;
  width: calc(100% + 622px);
  height: 160px;
  position: absolute;
  top: 35px;
  right: -622px;
  z-index: 2;
  animation: loop-slideleft 40s infinite linear 1s both;
}
.sec_en_read02 .area_en_read {
  margin: 0;
}

.sec_en_slider {
  position: relative;
}
.sec_en_slider .area_architecture_keidai02 {
  margin: 0 0 40px;
}
.sec_en_slider section {
  padding-top: 0;
  padding-bottom: 0;
}
.sec_en_slider::after {
  content: "";
  display: block;
  background: url(../img/common/img_cloud_right.svg);
  background-repeat: no-repeat;
  background-position: center right;
  width: calc(100% + 381px);
  height: 160px;
  position: absolute;
  bottom: 70px;
  right: -381px;
  z-index: -1;
  animation: loop-slideright 40s infinite linear 1s both;
}
.sec_en_slider .btnArea .btn {
  padding: 15px 40px 15px 30px;
  text-align: left;
  width: 100%;
  max-width: 338px;
}
.sec_en_slider.sec_en_slider_gion-festival {
  margin: 0;
}
.sec_en_slider.sec_en_slider_gion-festival .area_architecture_keidai02 {
  margin: 0;
}

.sec_en_wall {
  position: relative;
  padding: 0 0 60px;
}
.sec_en_wall p {
  text-align: left;
  padding: 10px 15px 0;
}
.sec_en_wall .img {
  text-align: center;
  position: relative;
}
.sec_en_wall .img img {
  width: 100%;
}
.sec_en_wall .name {
  position: absolute;
  right: 0;
  bottom: 88px;
  display: inline-block;
  text-align: right;
}
.sec_en_wall .name span {
  display: inline-block;
  color: #fff;
  background: #D3A357;
  font-size: 1.2em;
  padding: 6px 15px;
  margin: 0 0 10px;
  line-height: 1;
  white-space: nowrap;
}
.sec_en_wall.sec_en_wall_bg .img {
  height: 530px;
}
.sec_en_wall.sec_en_wall_bg .img.img_gion-festival {
  background: url(../img/en/gion-festival/img_gion-festival-1.jpg);
  background-position: top center;
  background-size: cover;
}

.sec_en_notes {
  padding: 0;
}
.sec_en_notes section {
  padding: 0 20px;
}
.sec_en_notes .area_en_notes {
  margin: 0 0 65px;
  position: relative;
}
.sec_en_notes .area_en_notes .img_en_notes {
  text-align: center;
  margin: 0 0 45px;
}
.sec_en_notes .area_en_notes .text_en_notes p {
  margin: 0 0 25px;
}
.sec_en_notes .area_en_notes .text_en_notes .img {
  text-align: center;
}
.sec_en_notes .area_en_notes::after {
  content: "";
  display: block;
  background: url(../img/common/img_cloud_right.svg);
  background-repeat: no-repeat;
  background-position: center right;
  width: calc(100% + 381px);
  height: 160px;
  position: absolute;
  bottom: 20px;
  right: -381px;
  z-index: -1;
  animation: loop-slideright 40s infinite linear 1s both;
}
.sec_en_notes .area_en_notes02 {
  margin: 0 0 65px;
  background: #F7F3E8;
  position: relative;
}
.sec_en_notes .area_en_notes02 .inner {
  padding: 20px 15px;
}
.sec_en_notes .area_en_notes02 .inner .title {
  font-size: 4.5rem;
  margin: 0 0 15px;
  color: #D3A357;
}
.sec_en_notes .area_en_notes02 .inner ul li {
  margin: 0 0 20px;
}
.sec_en_notes .area_en_notes02 .inner ul li span {
  color: #D3A357;
}
.sec_en_notes .area_en_notes02::before {
  content: "";
  display: block;
  background: url(../img/common/img_cloud_left.svg);
  background-repeat: no-repeat;
  background-position: center right;
  width: calc(100% + 622px);
  height: 160px;
  position: absolute;
  top: 45%;
  right: -622px;
  z-index: -1;
  animation: loop-slideleft 40s infinite linear 1s both;
}

.sec__map {
  margin: 60px auto 0;
}
.sec__map .inner_pc {
  display: none;
  text-align: center;
}
.sec__map .inner_sp {
  display: block;
  text-align: center;
  overflow: hidden;
}
.sec__map .inner_sp img {
  width: 100%;
}

/*==================
Yearly Events
==================*/
.year_title {
  font-size: 3rem;
  text-align: center;
  margin: 0 auto 30px;
  color: #D3A357;
}

.sort_yearly-events {
  display: flex;
  flex-wrap: wrap;
  padding: 0 12px;
  margin: 0 auto 40px;
}
.sort_yearly-events li {
  width: calc(25% - 6px);
  margin: 0 3px 6px;
  text-align: center;
}
.sort_yearly-events li a {
  display: block;
  background: #F7F3E8;
  border: 1px solid #E2D9BF;
  font-size: 1.6rem;
  padding: 15px 5px;
  transition: 0.3s;
}
.sort_yearly-events li a:hover {
  color: #000;
  background: #E2D9BF;
}
.sort_yearly-events li.active a {
  background: #E2D9BF;
}
.sort_yearly-events li.inactive a {
  background: #D5D5D5;
  color: #fff;
}

.yearly-events .blc-ttl {
  width: calc(100% - 30px);
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
}

.area_yearly-events {
  padding: 0 15px;
  max-width: 1150px;
  margin: auto;
}
.area_yearly-events .box_yearly-events {
  padding: 0 6px 24px;
  margin: 0 auto 28px;
  position: relative;
}
.area_yearly-events .box_yearly-events .img {
  margin: 0 0 20px;
  text-align: center;
}
.area_yearly-events .box_yearly-events .text {
  margin: 0 0 20px;
}
.area_yearly-events .box_yearly-events .text time {
  display: block;
  margin: 0 0 15px;
}
.area_yearly-events .box_yearly-events .text time span {
  display: inline-block;
  background: #F7F3E8;
  font-size: 1.4rem;
  text-align: center;
  min-width: 146px;
  line-height: 1;
  padding: 10px 5px;
  display: inline-block;
}
.area_yearly-events .box_yearly-events .text h4 {
  font-weight: bold;
  font-size: 1.8rem;
  margin: 0 0 10px;
}
.area_yearly-events .box_yearly-events .text h4 span {
  font-size: 1.4rem;
  font-weight: normal;
  display: inline-block;
  margin: 0 0 0 10px;
}
.area_yearly-events .box_yearly-events .text p {
  margin: 0 0 22px;
}
.area_yearly-events .box_yearly-events .text .btnArea .btn {
  padding: 15px 40px 15px 30px;
  text-align: left;
  width: 100%;
  max-width: 338px;
}
.area_yearly-events .box_yearly-events::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-image: linear-gradient(to right, #707070, #707070 3px, transparent 3px, transparent 3px);
  background-size: 9px 1px;
  background-repeat: repeat-x;
}

.not_text {
  width: calc(100% - 30px);
  max-width: 1120px;
  padding: 0 0 40px;
  margin: 0 auto 20px;
  position: relative;
}
.not_text::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-image: linear-gradient(to right, #707070, #707070 3px, transparent 3px, transparent 3px);
  background-size: 9px 1px;
  background-repeat: repeat-x;
}

.pickup_event {
  background: url(../img/en/yearly-events/img_yearly-events_july.jpg);
  background-position: top left 32%;
  background-size: cover;
  min-height: 667px;
  position: relative;
}
.pickup_event::after {
  display: block;
  content: "";
  background: rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.pickup_event .inner {
  padding: 50px 30px 20px;
  position: relative;
  z-index: 1;
}
.pickup_event .inner h4 {
  line-height: 1;
  font-size: 4.6rem;
  margin: 0 0 10px;
  color: #fff;
  font-family: Georgia, serif;
}
.pickup_event .inner h5 {
  text-align: center;
  font-size: 3.6rem;
  color: #fff;
  margin: 0 auto 40px;
}
.pickup_event .inner h5 span {
  display: block;
  font-size: 1.6rem;
}
.pickup_event .inner p {
  color: #fff;
  margin: 0 0 30px;
}
.pickup_event .inner .btnArea .btn {
  padding: 15px 40px 15px 30px;
  text-align: left;
  width: 100%;
  max-width: 338px;
}

.btnArea-en-pager {
  display: flex;
  padding: 20px;
}
.btnArea-en-pager.flex-end {
  justify-content: flex-end;
}
.btnArea-en-pager.flex-between {
  justify-content: space-between;
}
.btnArea-en-pager.flex-start {
  justify-content: flex-start;
}
.btnArea-en-pager a.btn {
  display: inline-block;
  padding: 14px;
  border: solid 1px #ccc;
  letter-spacing: 1px;
}
.btnArea-en-pager a.btn .fs10 {
  display: none;
}

@media screen and (max-width: 768px) {
  .sec_en_slider .area_architecture_keidai02 {
    padding: 70px 20px 30px;
  }
  .pc {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .btnArea_en {
    margin: 100px 0;
  }
  .btnArea-en-pager a.btn .fs10 {
    display: inline-block;
    margin: 0 10px;
  }
  /*==================
  History of Yasaka Shrine
  ==================*/
  .en_read {
    font-size: 1.8rem;
    margin: 0 0 50px;
  }
  .sec_en_read {
    padding: 130px 0 60px;
  }
  .area_en_read {
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    position: relative;
    padding: 0 0 80px;
    margin: 0 auto 110px;
  }
  .area_en_read .text {
    width: 100%;
    max-width: 768px;
    padding: 0 60px 0 30px;
  }
  .area_en_read .text .blc-ttl {
    text-align: left;
  }
  .area_en_read .text .blc-ttl::after {
    display: none;
  }
  .area_en_read .text .blc-ttl span {
    display: inline-block;
    padding: 0 0 10px;
    border-bottom: 2px solid #D3A357;
  }
  .area_en_read .text p {
    font-size: 1.8rem;
    line-height: 2.2;
  }
  .area_en_read .img {
    width: 100%;
    max-width: 960px;
    margin: 0;
  }
  .area_en_read::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    background: #F7F3E8;
    bottom: 0;
    left: 0;
    height: calc(100% - 80px);
    width: 100%;
  }
  .sec_en_read02 .area_en_read {
    align-items: flex-start;
    justify-content: left;
    padding: 80px 0 0;
  }
  .sec_en_read02 .area_en_read .text {
    order: 2;
    max-width: 760px;
    padding: 0 30px 0 60px;
  }
  .sec_en_read02 .area_en_read .text .blc-ttl {
    text-align: right;
  }
  .sec_en_read02 .area_en_read .img {
    order: 1;
  }
  .sec_en_read02 .area_en_read::after {
    top: 0;
    bottom: auto;
    height: 100%;
  }
  .sec_en_slider::after {
    display: none;
  }
  .sec_en_wall {
    padding: 0 0 120px;
  }
  .sec_en_wall p {
    text-align: right;
    font-size: 1.6rem;
    padding: 10px 30px 0;
  }
  .sec_en_wall .name {
    bottom: 88px;
  }
  .sec_en_wall .name span {
    font-size: 3rem;
    padding: 6px 15px;
  }
  .sec_en_notes {
    padding: 0 0 40px;
  }
  .sec_en_notes .area_en_notes {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin: 0 0 93px;
  }
  .sec_en_notes .area_en_notes .img_en_notes {
    text-align: center;
    margin: 0;
    width: calc(50% - 33px);
  }
  .sec_en_notes .area_en_notes .text_en_notes {
    width: calc(50% - 33px);
  }
  .sec_en_notes .area_en_notes .text_en_notes p {
    font-size: 1.8rem;
    margin: 0 0 30px;
    line-height: 2;
  }
  .sec_en_notes .area_en_notes02 {
    margin: 0 0 93px;
  }
  .sec_en_notes .area_en_notes02 .inner {
    padding: 30px 100px;
  }
  .sec_en_notes .area_en_notes02 .inner .title {
    margin: 0 0 5px;
  }
  .sec_en_notes .area_en_notes02 .inner ul li {
    line-height: 2.5;
    font-size: 1.8rem;
  }
  .sec__map {
    margin: 65px auto 0;
  }
  .sec__map .inner_pc {
    display: block;
  }
  .sec__map .inner_sp {
    display: none;
  }
  /*==================
  Yearly Events
  ==================*/
  .year_title {
    font-size: 3rem;
    text-align: center;
    margin: 0 auto 30px;
    color: #D3A357;
  }
  .sort_yearly-events {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto 50px;
    max-width: 1208px;
  }
  .sort_yearly-events li {
    width: calc(16.6666666667% - 8px);
    margin: 0 4px 8px;
    text-align: center;
  }
  .sort_yearly-events li a {
    border: none;
  }
  .yearly-events .blc-ttl {
    margin: 0 auto 60px;
  }
  .area_yearly-events {
    padding: 0 15px;
    max-width: 1150px;
    margin: auto;
  }
  .area_yearly-events .box_yearly-events {
    padding: 0 6px;
    margin: 0 auto 50px;
    display: flex;
    justify-content: space-between;
  }
  .area_yearly-events .box_yearly-events .img {
    margin: 0 0 20px;
    width: 100%;
    max-width: 438px;
  }
  .area_yearly-events .box_yearly-events .text {
    margin: 0 0 20px;
    width: 100%;
    max-width: 580px;
    padding: 0 30px 0 0;
  }
  .area_yearly-events .box_yearly-events .text time {
    margin: 0 0 15px;
  }
  .area_yearly-events .box_yearly-events .text time span {
    font-size: 1.6rem;
    padding: 10px 5px;
  }
  .area_yearly-events .box_yearly-events .text h4 {
    font-weight: bold;
    font-size: 2.2rem;
    margin: 0 0 10px;
  }
  .area_yearly-events .box_yearly-events .text h4 span {
    font-size: 2rem;
    font-weight: normal;
    display: inline-block;
    margin: 0 0 0 10px;
  }
  .area_yearly-events .box_yearly-events .text p {
    margin: 0 0 22px;
    line-height: 1.8;
  }
  .area_yearly-events .box_yearly-events .text .btnArea {
    text-align: left;
  }
  .area_yearly-events .box_yearly-events::after {
    display: none;
  }
  .pickup_event {
    background-position: top center;
    min-height: 700px;
    margin: 0 auto 75px;
  }
  .pickup_event::after {
    display: block;
    left: auto;
    right: 0;
    width: 70%;
    min-width: 700px;
    background: -moz-linear-gradient(left, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 100%);
    background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 100%);
    background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#00000000", endColorstr="#cc000000",GradientType=1 );
  }
  .pickup_event .inner {
    padding: 50px 30px 20px;
    position: relative;
    z-index: 1;
    width: 50%;
    min-width: 700px;
    margin: 0 0 0 auto;
  }
  .pickup_event .inner .row {
    max-width: 502px;
    margin: auto;
  }
  .pickup_event .inner h4 {
    font-size: 7.5rem;
    margin: 0 0 10px;
  }
  .pickup_event .inner h4 img {
    max-height: none;
  }
  .pickup_event .inner h5 {
    font-size: 4.2rem;
    letter-spacing: 5px;
    text-align: left;
  }
  .pickup_event .inner h5 span {
    display: inline-block;
    font-size: 1.4rem;
    letter-spacing: 2px;
  }
  .pickup_event .inner p {
    font-size: 2rem;
  }
  .pickup_event .inner .btnArea {
    text-align: left;
  }
  .not_text::after {
    display: none;
  }
  .in_onlyBtn {
    margin: 100px 0 60px;
  }
  .en_nextBtn {
    margin: 50px 9.8%;
  }
  .en_nextBtn.nextBtn_area {
    display: flex;
    justify-content: flex-end;
  }
  .en_nextBtn.nextBtn_area a {
    position: relative;
  }
  .en_nextBtn.nextBtn_area a.en_pre {
    padding: 0 0 0 57px;
  }
  .en_nextBtn.nextBtn_area a.en_next {
    padding: 0 57px 0 0;
  }
  .en_nextBtn.nextBtn_area a:hover i.en_pre_Btn {
    transition: 0.3s;
    left: -10px;
  }
  .en_nextBtn.nextBtn_area a:hover i.en_next_Btn {
    transition: 0.3s;
    right: -10px;
  }
  .en_nextBtn.nextBtn_area i {
    font-size: 3.2rem;
    vertical-align: middle;
    position: absolute;
    display: inline-block;
    padding: 16px;
    bottom: 50%;
    transform: translateY(50%);
    transition: 0.3s;
  }
  .en_nextBtn.nextBtn_area i.en_pre_Btn {
    left: 0;
  }
  .en_nextBtn.nextBtn_area i.en_next_Btn {
    right: 0;
  }
  .en_nextBtn.nextBtn_area.pre_next_Btn {
    justify-content: space-between;
  }
  .en_nextBtn.nextBtn_area.pre_Btn {
    justify-content: flex-start;
  }
  /*英語ページの最後にNext*/
}
@media screen and (min-width: 961px) {
  .area_en_read {
    align-items: flex-end;
  }
}
@media screen and (min-width: 1281px) {
  .sec_en_read02 .area_en_read .text {
    margin: 40px 0 0;
  }
  /*==================
  Yearly Events
  ==================*/
  .sort_yearly-events li {
    width: calc(8.3333333333% - 8px);
  }
}
@media screen and (min-width: 1600px) {
  .area_en_read .text {
    padding-right: 114px;
  }
  .sec_en_read02 .area_en_read .text {
    padding-left: 114px;
  }
  .sec_en_read02 .area_en_read .img::after {
    height: calc(100% - 80px);
  }
  .sec_en_read02 .area_en_read::after {
    height: calc(100% - 80px);
  }
}
/*----------------------------------------------*/
/*----------プライバシーポリシー--------------------------*/
/*----------------------------------------------*/
.privacy .pageTitle {
  height: 300px;
  background-image: url(/wp-content/themes/yasaka/img/privacy/img_privacy_main_sp.jpg);
}
.privacy .sec_privacy h2 {
  margin-top: 2em;
}
.privacy .sec_privacy p {
  margin-bottom: 15px;
  word-break: break-all;
  word-wrap: break-word;
}
.privacy .sec_privacy p.read {
  margin-top: 30px;
}
.privacy .sec_privacy p .outerLink {
  text-decoration: underline;
  color: #333F6F;
}
.privacy .sec_privacy p .outerLink::after {
  content: "\e917";
  font-family: "icomoon";
  margin-left: 0.5em;
}

@media screen and (min-width: 769px) {
  .privacy .pageTitle {
    background-image: url(/wp-content/themes/yasaka/img/privacy/img_privacy_main.jpg);
  }
  .privacy .sec_privacy {
    max-width: 1000px;
    padding: 0 15px;
  }
}
/*----------------------------------------------*/
/*----------フォント--------------------------*/
/*----------------------------------------------*/
.fs10 {
  font-size: 1rem;
}

.fs12 {
  font-size: 1.2rem;
}

.fs14 {
  font-size: 1.4rem;
}

.fs16 {
  font-size: 1.6rem;
}

.fs18 {
  font-size: 1.8rem;
}

.fs20 {
  font-size: 2rem;
}

.fs22 {
  font-size: 2.2rem;
}

.fs24 {
  font-size: 2.4rem;
}

.fs26 {
  font-size: 2.6rem;
}

.fs28 {
  font-size: 2.8rem;
}

.fs30 {
  font-size: 3rem;
}

.fs32 {
  font-size: 3.2rem;
}

.fs40 {
  font-size: 4rem;
}

/*----------------------------------------------*/
/*----------要素・表示--------------------------*/
/*----------------------------------------------*/
.elm-il {
  display: inline-block;
}

.elm-bl {
  display: block;
}

.pc {
  display: none;
}

@media screen and (min-width: 769px) {
  .pc {
    display: block;
  }
  .sp {
    display: none;
  }
}
/*----------------------------------------------*/
/*----------行揃え・ブロック中央揃え----------------*/
/*----------------------------------------------*/
.align-center {
  text-align: center;
}

.align-left {
  text-align: left;
}

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

.center {
  margin: 0 auto;
}

/*----------------------------------------------*/
/*----------余白--------------------------*/
/*----------------------------------------------*/
.mt10 {
  margin-top: 10px;
}

.mt15 {
  margin-top: 15px;
}

.mt20 {
  margin-top: 20px;
}

.mt25 {
  margin-top: 25px;
}

.mt30 {
  margin-top: 30px;
}

.mt35 {
  margin-top: 35px;
}

.mt40 {
  margin-top: 40px;
}

.mt45 {
  margin-top: 45px;
}

.mt50 {
  margin-top: 50px;
}

.mt55 {
  margin-top: 55px;
}

.mt60 {
  margin-top: 60px;
}

.mt70 {
  margin-top: 70px;
}

.mt80 {
  margin-top: 80px;
}

.mt90 {
  margin-top: 90px;
}

.mt100 {
  margin-top: 100px;
}

.mr10 {
  margin-right: 10px;
}

.mr15 {
  margin-right: 15px;
}

.mr20 {
  margin-right: 20px;
}

.mr25 {
  margin-right: 25px;
}

.mr30 {
  margin-right: 30px;
}

.mr35 {
  margin-right: 35px;
}

.mr40 {
  margin-right: 40px;
}

.mr45 {
  margin-right: 45px;
}

.mr50 {
  margin-right: 50px;
}

.mr55 {
  margin-right: 55px;
}

.mr60 {
  margin-right: 60px;
}

.mr70 {
  margin-right: 70px;
}

.mr80 {
  margin-right: 80px;
}

.mr90 {
  margin-right: 90px;
}

.mr100 {
  margin-right: 100px;
}

.mb10 {
  margin-bottom: 10px;
}

.mb15 {
  margin-bottom: 15px;
}

.mb20 {
  margin-bottom: 20px;
}

.mb25 {
  margin-bottom: 25px;
}

.mb30 {
  margin-bottom: 30px;
}

.mb35 {
  margin-bottom: 35px;
}

.mb40 {
  margin-bottom: 40px;
}

.mb45 {
  margin-bottom: 45px;
}

.mb50 {
  margin-bottom: 50px;
}

.mb55 {
  margin-bottom: 55px;
}

.mb60 {
  margin-bottom: 60px;
}

.mb70 {
  margin-bottom: 70px;
}

.mb80 {
  margin-bottom: 80px;
}

.mb90 {
  margin-bottom: 90px;
}

.mb100 {
  margin-bottom: 100px;
}

.ml10 {
  margin-left: 10px;
}

.ml15 {
  margin-left: 15px;
}

.ml20 {
  margin-left: 20px;
}

.ml25 {
  margin-left: 25px;
}

.ml30 {
  margin-left: 30px;
}

.ml35 {
  margin-left: 35px;
}

.ml40 {
  margin-left: 40px;
}

.ml45 {
  margin-left: 45px;
}

.ml50 {
  margin-left: 50px;
}

.ml55 {
  margin-left: 55px;
}

.ml60 {
  margin-left: 60px;
}

.ml70 {
  margin-left: 70px;
}

.ml80 {
  margin-left: 80px;
}

.ml90 {
  margin-left: 90px;
}

.ml100 {
  margin-left: 100px;
}

/*----------------------------------------------*/
/*----------幅設定--------------------------*/
/*----------------------------------------------*/
.w5p {
  width: 5%;
}

.w10p {
  width: 10%;
}

.w15p {
  width: 15%;
}

.w20p {
  width: 20%;
}

.w25p {
  width: 25%;
}

.w30p {
  width: 30%;
}

.w35p {
  width: 35%;
}

.w40p {
  width: 40%;
}

.w45p {
  width: 45%;
}

.w50p {
  width: 50%;
}

.w55p {
  width: 55%;
}

.w60p {
  width: 60%;
}

.w65p {
  width: 65%;
}

.w70p {
  width: 70%;
}

.w75p {
  width: 75%;
}

.w80p {
  width: 80%;
}

.w85p {
  width: 85%;
}

.w90p {
  width: 90%;
}

.w95p {
  width: 95%;
}

.w100p {
  width: 100%;
}

/* --px-- */
.w50 {
  width: 50px;
}

.w100 {
  width: 100px;
}

.w150 {
  width: 150px;
}

.w200 {
  width: 200px;
}

.w250 {
  width: 250px;
}

.w300 {
  width: 300px;
}

/*一番最後に読み込み*/