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

　ノーマライズ

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
/* html */
html {
  margin: 0;
  padding: 0;
  border: 0; }

/* ボディ */
body {
  line-height: 1;
  vertical-align: baseline;
  margin: 0;
  padding: 0;
  border: 0; }

/* 全体 */
section, nav, article, aside, h1, h2, h3, h4, h5, h6, hgroup, header, footer, main, address,
p, blockquote, ol, ul, li, dl, dt, dd, figure, figcaption, div,
a, em, strong, small, s, cite, q, dfn, abbr, time, kbd, i, b, mark, span,
ins, del,
img, iframe, embed, object, video, audio, canvas, map,
table, caption, tbody, thead, tfoot, tr, td, th,
form, fieldset, legend, label,
details, summary, command, menu {
  font: inherit;
  font-size: inherit;
  vertical-align: baseline;
  margin: 0;
  padding: 0;
  border: 0; }

/* 画像 (下部に余白ができるので) */
img {
  vertical-align: bottom; }

/* リスト (list-styleを復帰する場合はmargin-leftの設定が必須) */
ol, ul {
  list-style: none; }

/* 上付き、下付き文字 */
sub {
  font: inherit;
  vertical-align: baseline; }

sup {
  font: inherit; }

/* 引用 */
blockquote, q {
  quotes: none; }

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

/* テーブル */
table {
  border-collapse: collapse;
  border-spacing: 0; }

th {
  font-weight: normal; }

/* フォーム (paddingを0にすると面倒くさいことになるので分離) */
input, button, select, datalist, optgroup, option, textarea, keygen, output, progress, meter {
  font: inherit;
  font-size: inherit;
  vertical-align: baseline;
  margin: 0;
  outline: none; }

/* 区切り */
hr {
  display: block;
  margin: 0;
  padding: 0;
  border-top: solid 1px #000; }

/* リセット除外 */
/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　ミックスイン

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
/* クリアフィックス */
/* テキスト非表示ブロック */
/* フォントファミリー */
/* Webフォント指定 */
/* フォントサイズのREM指定 */
/* リンク文字色 */
/* ブロック要素の中央配置 */
/* 要素の天地左右中央配置 */
/* テキスト省略 */
/* ベンダープレフィックス追加 */
/* グラデーション(縦) */
/* グラデーション(横) */
/* グラデーション(放射) */
/* プレースホルダーのカラー */
/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　関数

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
/* フォントサイズの%変換 */
/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　全体設定

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
@font-face {
  font-family: "icon";
  src: url("../font/icon/font.woff") format("woff2"), url("../font/icon/font.woff") format("woff");
  font-weight: normal;
  font-style: normal; }
@font-face {
  font-family: "sawarabi";
  src: url("../font/sawarabi/font.woff") format("woff2"), url("../font/sawarabi/font.woff") format("woff");
  font-weight: normal;
  font-style: normal; }
html {
  font-family: 'sawarabi', Georgia, "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;;
  font-size: 62.5%; }

a {
  text-decoration: none; }
  a img {
    opacity: 1; }
  a:hover {
    color: #e05d45 !important; }
    a:hover:before {
      color: #e05d45 !important; }
    a:hover:after {
      color: #e05d45 !important; }
    a:hover span {
      color: #e05d45 !important; }
      a:hover span:before {
        color: #e05d45 !important; }
      a:hover span:after {
        color: #e05d45 !important; }
    a:hover img {
      opacity: .6; }

form input, form select, form textarea {
  line-height: 1;
  border: solid 1px #ccc;
  border-radius: 5px; }
form em {
  display: none; }
form .error {
  color: #fff;
  background: #e05d45;
  border-color: #e05d45; }
  form .error:placeholder-shown {
    color: #fff; }
  form .error::-webkit-input-placeholder {
    color: #fff; }
  form .error:-moz-placeholder {
    color: #fff;
    opacity: 1; }
  form .error::-moz-placeholder {
    color: #fff;
    opacity: 1; }
  form .error:-ms-input-placeholder {
    color: #fff; }
form .error + em {
  display: block !important; }
form select {
  padding: 20px; }
form input + em, form select + em, form textarea + em {
  color: #e05d45;
  margin: 10px 0 0; }
form label {
  margin: 0 20px 0 0; }
form table th {
  width: 200px;
  padding: 38px 15px 38px 0;
  text-align: right;
  vertical-align: top;
  border-bottom: solid 1px #dedede; }
  form table th span {
    display: inline-block;
    color: #fff;
    background: #e05d45;
    font-size: 1.3rem;
    text-align: center;
    width: 62px;
    line-height: 28px;
    border-radius: 5px;
    margin: 0 0 0 5px; }
form table td {
  vertical-align: middle;
  padding: 20px;
  border-bottom: solid 1px #dedede;
  line-height: 1.4; }
form section {
  margin: 40px 0 0;
  text-align: center; }
  form section button {
    width: 340px;
    line-height: 60px;
    background: #fff;
    border: solid 1px #ccc;
    cursor: pointer; }
    form section button img {
      opacity: 1; }
    form section button span {
      color: #000;
      font-size: 1.5rem; }
      form section button span:after {
        content: 'r';
        font-family: 'icon';
        margin: 0 0 0 8px; }
    form section button:hover {
      color: #fff !important;
      background: #e05d45 !important; }
      form section button:hover span {
        color: #fff !important; }
      form section button:hover img {
        opacity: .6; }

.form_finish {
  text-align: center;
  margin: 100px 0 0; }
  .form_finish h3 {
    font-size: 2.4rem; }
  .form_finish p {
    font-size: 1.5rem;
    line-height: 1.8;
    margin: 40px 0 0; }
  .form_finish small {
    display: block;
    font-size: 1.8rem;
    line-height: 1.8;
    margin: 60px 0 0; }
  .form_finish a {
    display: inline-block;
    color: #000;
    text-decoration: none;
    width: 340px;
    line-height: 60px;
    background: #fff;
    border: solid 1px #ccc;
    margin: 50px 0 0; }
    .form_finish a:hover {
      color: #fff !important;
      background: #e05d45 !important; }
      .form_finish a:hover span {
        color: #fff !important; }
        .form_finish a:hover span:after {
          color: #fff !important; }
    .form_finish a span {
      font-size: 1.5rem; }
      .form_finish a span:after {
        content: 'r';
        font-family: 'icon';
        margin: 0 0 0 8px; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　ヘッダ

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
header {
  display: flex;
  position: fixed;
  background: #fff;
  top: 0;
  z-index: 10;
  width: 100%;
  min-width: 1200px; }
  header hgroup {
    *zoom: 1;
    width: calc((100vw - 1200px) / 2 + 360px - 60px);
    min-width: calc(360px - 60px);
    padding: 25px 30px; }
    header hgroup::after {
      content: '';
      display: table;
      clear: both; }
    header hgroup h1 {
      float: right; }
      header hgroup h1 a {
        display: block;
        *zoom: 1;
        line-height: 30px; }
        header hgroup h1 a::after {
          content: '';
          display: table;
          clear: both; }
        header hgroup h1 a small {
          float: left;
          font-size: 1.4rem; }
        header hgroup h1 a strong {
          float: left;
          font-size: 2.2rem;
          margin-left: 10px; }
  header .hamburger {
    display: none; }
  header nav {
    width: calc((100vw - 1200px) / 2 + 840px - 15px);
    min-width: calc(840px - 15px);
    border-right: solid 15px #ffffff; }
    header nav ul {
      *zoom: 1;
      padding: 0 20px; }
      header nav ul::after {
        content: '';
        display: table;
        clear: both; }
      header nav ul li {
        float: left; }
        header nav ul li a {
          display: block;
          font-size: 1.3rem;
          line-height: 80px;
          padding: 0 20px;
          position: relative; }
          header nav ul li a:after {
            content: '';
            background: #e05d45;
            width: 2px;
            height: 25px;
            position: absolute;
            left: 50%;
            transform: translate(-50%, 0);
            top: 0;
            opacity: 0; }
          header nav ul li a:hover:after {
            opacity: 1; }
        header nav ul li .current:after {
          opacity: 1; }
    header nav .sub01, header nav .sub02 {
      display: none; }

.white hgroup {
  background: #fff; }
  .white hgroup h1 a {
    color: #000; }
    .white hgroup h1 a:hover {
      color: #e05d45 !important; }
.white a {
  color: #000; }
  .white a:hover {
    color: #000 !important; }

.black hgroup {
  background: #ffffff; }
  .black hgroup h1 a {
    color: #000; }
    .black hgroup h1 a:hover {
      color: #e05d45 !important; }
.black a {
  color: #000; }
  .black a:hover {
    color: #000 !important; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　フッタ

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
footer {
  background: #525252;
  margin: 110px 0 0;
  padding: 55px 0;
  position: relative; }
  footer .pagetop {
    position: absolute;
    left: 50%;
    transform: translate(-50%, 0);
    top: -40px;
    width: 250px;
    font-family: 'icon';
    font-size: 2.5rem;
    text-align: center;
	line-height:1.5em;
    color: #d55f4b; }
    footer .pagetop:after {
      content: '';
      background: #d55f4b;
      width: 100%;
      height: 5px;
      position: absolute;
      left: 50%;
      transform: translate(-50%, 0);
      top: 40px; }
  footer .pt-txt {
    font-size: 0.5rem;
    text-align: center;
    color: #F3F3F3; }
  footer div {
    display: block;
    width: 980px;
    margin-right: auto;
    margin-left: auto;
    display: flex;
    color: #fff; }
    footer div .link {
      width: 350px;
      font-size: 1.2rem;
      line-height: 1.6; }
      footer div .link .instagram {
        font-family: 'icon';
        font-size: 4rem;
        color: #fff;
        line-height: 1; }
      footer div .link nav {
        margin: 30px 0 0; }
        footer div .link nav li {
          margin: 10px 0 0; }
          footer div .link nav li a {
            display: inline-block;
            color: #fff; }
    footer div .site {
      width: 330px;
      margin: 0 0 0 300px; }
      footer div .site nav {
        margin: 10px 0 0; }
        footer div .site nav ul {
          text-align: right; }
          footer div .site nav ul li {
            display: inline-block; }
            footer div .site nav ul li a {
              display: block;
              color: #fff;
              background: #525252;
              font-size: 1.8rem;
              text-align: center;
              width: 46px;
              line-height: 25px;
              border: solid 1px #fff; }
              footer div .site nav ul li a:hover {
                color: #525252 !important;
                background: #e05d45;
                border: solid 1px #e05d45; }
            footer div .site nav ul li .current {
              color: #525252;
              background: #fff; }
      footer div .site dl {
        text-align: center;
        line-height: 1.5;
        margin: 40px 0 0; }
        footer div .site dl dt {
          font-size: 2.5rem; }
        footer div .site dl dd {
          font-size: 1.5rem;
          margin: 10px 0 0; }
          footer div .site dl dd small {
            display: block;
            margin: 10px 0 0; }
          footer div .site dl dd .tel {
		  	width:164px;
			text-align:right;
			margin:0 auto;
		  }
          footer div .site dl dd a {
            color: #fff; }
  footer .copyright {
    display: block;
    color: #fff;
    font-size: 1.1rem;
    text-align: center;
    margin: 30px 0 0; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　下層ページ共通

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
main .underlayer_visual {
  background: #f1f1f1 url(../images/common/visual_dummy.png) center;
  height: 420px;
  position: relative; }
  main .underlayer_visual span {
    font-size: 3.2rem;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
/* 青年衆のみ */
main .seinensyu .underlayer_visual {
  background: #f1f1f1 url(../images/common/visual_dummy.png) center;
  height: 420px;
  position: relative; }
  main .seinensyu .underlayer_visual span {
    font-size: 3.2rem;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　index - メインビジュアル

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.index_visual {
  position: relative; }
  .index_visual .slick-dots {
    position: absolute;
    left: 50%;
    transform: translate(-50%, 0);
    bottom: 35px; }
    .index_visual .slick-dots li {
      display: inline-block;
      margin: 0 6px; }
      .index_visual .slick-dots li button {
        color: #fff;
        background: transparent;
        font-size: 1.8rem;
        border: none;
        position: relative;
        text-indent: -9999px;
        cursor: pointer; }
        .index_visual .slick-dots li button:before {
          content: '◆';
          text-indent: 0px;
          position: absolute;
          top: 0;
          left: 0; }
        .index_visual .slick-dots li button:hover {
          color: #e05d45; }
    .index_visual .slick-dots .slick-active button {
      color: #e05d45; }
  .index_visual .slide01 {
    background: #718db2; }
    .index_visual .slide01 figure {
      position: relative;
      max-width: 2000px;
      min-width: 1200px;
      height: 700px;
      background: url(../images/index/slide01a.jpg) center no-repeat;
      margin: 0 auto; }
      .index_visual .slide01 figure figcaption {
        position: absolute;
        right: 25%;
        transform: translate(-50%, 0);
        top: 150px;
        margin-left: ;
        color: #fff;
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl; }
        .index_visual .slide01 figure figcaption dl dt {
          font-size: 3.5rem; }
        .index_visual .slide01 figure figcaption dl dd {
          font-size: 3rem;
          line-height: 1.3;
          margin: 4em 20px 0 0; }
          .index_visual .slide01 figure figcaption dl dd small {
            font-size: 2rem; }
  .index_visual .slide02 {
    background: #1c1c17; }
    .index_visual .slide02 figure {
      position: relative;
      max-width: 2000px;
      min-width: 1200px;
      height: 700px;
      background: url(../images/index/slide02a.jpg) center no-repeat;
      margin: 0 auto; }
      .index_visual .slide02 figure figcaption {
        position: absolute;
        left: 50%;
        transform: translate(-50%, 0);
        top: 200px;
        margin-left: -200px;
        color: #fff;
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl; }
        .index_visual .slide02 figure figcaption dl dt {
          font-size: 4.2rem; }
        .index_visual .slide02 figure figcaption dl dd {
          font-size: 3rem;
          margin: 2em 20px 0 0; }

  .index_visual .slide03 {
    background: #718db2; }
    .index_visual .slide03 figure {
      position: relative;
      max-width: 2000px;
      min-width: 1200px;
      height: 700px;
      background: url(../images/index/slide03a.jpg) center no-repeat;
      margin: 0 auto; }
      .index_visual .slide03 figure figcaption {
        position: absolute;
        right: 25%;
        transform: translate(-50%, 0);
        top: 150px;
        margin-left:;
        color: #fff;
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl; }
        .index_visual .slide03 figure figcaption dl dt {
          font-size: 3.5rem; }
        .index_visual .slide03 figure figcaption dl dd {
          font-size: 3rem;
          line-height: 1.3;
          margin: 4em 20px 0 0; }
          .index_visual .slide03 figure figcaption dl dd small {
            font-size: 2rem; }
/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　index - 法話会

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.index_houwa {
  background: #f1f1f1 url(../images/common/bg_ichimatsu.png) center;
  padding: 25px 0 30px; }
  .index_houwa section {
    display: flex;
    width: 920px;
    margin: 0 auto; }
    .index_houwa section h2 {
      font-size: 2.4rem;
      -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
      border-top: solid 2px #000;
      line-height: 27px;
      padding: 20px 0 0; }
    .index_houwa section article {
      width: 872px;
      margin: 0 0 0 21px; }
      .index_houwa section article ul {
        *zoom: 1;
        font-size: 1.5rem; }
        .index_houwa section article ul::after {
          content: '';
          display: table;
          clear: both; }
        .index_houwa section article ul li {
          float: left;
          width: 400px;
          margin: 0 18px;
          border-bottom: solid 2px #b7b7b7; }
          .index_houwa section article ul li dl {
            line-height: 23px;
            padding: 15px 8px; }
            .index_houwa section article ul li dl dt span {
              display: inline-block;
              color: #fff;
              background: #d55f4b;
              font-size: 1.4rem;
              padding: 0 10px;
              margin: 0 5px 0 0; }
            .index_houwa section article ul li dl dt em {
              font-weight: bold; }
            .index_houwa section article ul li dl dd {
              margin: 10px 0 0; }
      .index_houwa section article aside {
        text-align: center;
        margin: 25px 0 0; }
        .index_houwa section article aside a {
          color: #000;
          font-size: 1.5rem; }
          .index_houwa section article aside a:after {
            content: 'r';
            font-family: 'icon';
            margin: 0 0 0 8px; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　index - 薬師寺からのお知らせ

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.index_news {
  width: 1014px;
  margin: 0 auto;
  padding: 60px 0 0;
  position: relative; }
  .index_news:after {
    content: '';
    background: #000;
    width: 2px;
    height: 38px;
    position: absolute;
    top: 0;
    left: 50%;
    margin: 0 0 0 -1px; }
  .index_news h2 {
    font-size: 2.6rem;
    text-align: center; }
  .index_news ul {
    *zoom: 1;
    font-size: 1.3rem;
    margin: 50px 0 0; }
    .index_news ul::after {
      content: '';
      display: table;
      clear: both; }
    .index_news ul li {
      float: left;
      width: 318px;
      margin: 0 10px;
      border-bottom: solid 1px #ccc; }
      .index_news ul li a {
        display: block;
        color: #000; }
        .index_news ul li a:after {
          content: 'r';
          display: block;
          color: #999;
          font-family: 'icon';
          font-size: 1.5rem;
          text-align: right;
          padding: 5px 0; }
        .index_news ul li a figure {
          *zoom: 1; }
          .index_news ul li a figure::after {
            content: '';
            display: table;
            clear: both; }
          .index_news ul li a figure img {
            float: left; }
          .index_news ul li a figure figcaption {
            float: left;
            width: 180px;
            line-height: 1.6;
            margin: 0 10px; }
            .index_news ul li a figure figcaption small {
              display: block; }
            .index_news ul li a figure figcaption p {
              margin: 5px 0 0; }
  .index_news aside {
    text-align: center;
    margin: 25px 0 0; }
    .index_news aside a {
      color: #000;
      font-size: 1.5rem; }
      .index_news aside a:after {
        content: 'r';
        font-family: 'icon';
        margin: 0 0 0 8px; }
		
/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　index - 特定のイベント開催時に導線をおく。

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
    .eventlink aside {
	  background:#fff;
      margin: 50px 0 0;
      padding: 100px 0;
      text-align: center; }
    .eventlink aside h2{
		font-size:25px;
		margin:50px 0;
	}
    .eventlink aside p{
		font-size:15px;
		margin:20px 0;
		}
      .eventlink aside a {
        display: inline-block;
        color: #000;
        text-decoration: none;
        text-align: center;
        width: 220px;
        line-height: 60px;
        background: #fff;
        border: solid 1px #ccc; }
        .eventlink aside a:hover {
          color: #fff !important;
          background: #e05d45 !important; }
          .eventlink aside a:hover span {
            color: #fff !important; }
            .eventlink aside a:hover span:after {
              color: #fff !important; }
        .eventlink aside a span {
          font-size: 1.5rem; }
          .eventlink aside a span:after {
            content: 'r';
            font-family: 'icon';
            margin: 0 0 0 8px; }

    .eventlink2 aside {
	  background:#F1F1F1;
      margin: 50px 0 0;
      padding: 35px 0;
      text-align: center; }
      .eventlink2 aside a {
        display: inline-block;
        text-decoration: none;
        text-align: center;
        width: 487px;
        line-height: 128px;
        background: #fff;
         }
        .eventlink2 aside a:hover {
          color: #fff !important;
          background: #e05d45 !important; }
          .eventlink2 aside a:hover span {
            color: #fff !important; }
            .eventlink2 aside a:hover span:after {
              color: #fff !important; }
        .eventlink2 aside a span {
          font-size: 1.5rem; }
          .eventlink2 aside a span:after {
            content: 'r';
            font-family: 'icon';
            margin: 0 0 0 8px; }


/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　404 notFoundページ用

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
    .404nf aside {
      margin: 200px 0;
      padding: 30px 0 30px 0;
      text-align: center; }
    .404nf aside h2{
		font-size:25px;
	}
    .404nf aside p{
		font-size:15px;
		}
      .404nf aside a {
        display: block;
        color: #000;
        text-decoration: none;
        text-align: center;
        width: 220px;
        line-height: 60px;
        background: #fff;
        border: solid 1px #ccc; }
        .404nf aside a:hover {
          color: #fff !important;
          background: #e05d45 !important; }
          .404nf aside a:hover span {
            color: #fff !important; }
            .404nf aside a:hover span:after {
              color: #fff !important; }
        .404nf aside a span {
          font-size: 1.5rem; }
          .404nf aside a span:after {
            content: 'r';
            font-family: 'icon';
            margin: 0 0 0 8px; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　index - 年中行事

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.index_event {
  /*margin: 90px 0 0;*/
  margin:0;
   }
  .index_event h2 {
    color: #fff;
    background: url(../images/index/event_visual.jpg) center no-repeat;
    background-size: cover;
    height: 270px;
    position: relative; }
    .index_event h2 span {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      font-size: 2.8rem;
      text-align: center;
      -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
      height: 270px; }
  .index_event article {
    width: 1200px;
    margin: 25px auto 0;
    position: relative;
    overflow: hidden; }
    .index_event article:after {
      content: '';
      background: #dedede;
      width: 995px;
      height: 1px;
      position: absolute;
      left: 50%;
      transform: translate(-50%, 0);
      top: 40px; }
    .index_event article ol {
      width: 1440px;
      margin: 0 0 0 -120px; }
      .index_event article ol li {
        width: 400px;
        margin: 0 40px; }
        .index_event article ol li strong {
          display: block;
          font-size: 1.6rem;
          font-weight: bold;
          text-align: center;
          margin: 0 0 50px; }
        .index_event article ol li p {
          font-size: 1.5rem;
          line-height: 1.4;
          margin: 10px 0 0; }
          .index_event article ol li p a {
            display: block;
            color: #000;
            position: relative; }
            .index_event article ol li p a:after {
              content: 'r';
              font-family: 'icon';
              color: #ccc;
              position: absolute;
              right: 0; }
          .index_event article ol li p small {
            display: inline-block;
            width: 115px;
            vertical-align: top; }
          .index_event article ol li p em {
            display: inline-block;
            width: 270px;
            vertical-align: top; }
      .index_event article ol .slick-slide {
        opacity: .2; }
        .index_event article ol .slick-slide a {
          pointer-events: none; }
      .index_event article ol .slick-current {
        opacity: 1; }
        .index_event article ol .slick-current a {
          pointer-events: auto; }
    .index_event article .prev {
      font-family: 'icon';
      font-size: 3rem;
      color: #ccc;
      position: absolute;
      top: 50%;
      transform: translate(0, -50%);
      left: 270px; }
    .index_event article .next {
      font-family: 'icon';
      font-size: 3rem;
      color: #ccc;
      position: absolute;
      top: 50%;
      transform: translate(0, -50%);
      right: 270px; }
    .index_event article aside {
      text-align: center;
      margin: 70px 0 0; }
      .index_event article aside a {
        color: #000;
        font-size: 1.5rem; }
        .index_event article aside a:after {
          content: 'r';
          font-family: 'icon';
          margin: 0 0 0 8px; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　index - お写経

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.index_syakyo {
  margin: 120px 0 0; }
  .index_syakyo h2 {
    color: #fff;
    background: url(../images/index/syakyo_visual.jpg) center no-repeat;
    background-size: cover;
    height: 270px;
    position: relative; }
    .index_syakyo h2 span {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      font-size: 2.8rem;
      text-align: center;
      -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
      height: 270px; }
  .index_syakyo article {
    display: flex;
    width: 970px;
    margin: 50px auto 0; }
    .index_syakyo article section {
      width: 470px;
      line-height: 2; }
      .index_syakyo article section p {
        font-size: 1.5rem; }
      .index_syakyo article section dl {
        margin: 30px 0 0; }
        .index_syakyo article section dl dt {
          font-size: 2.5rem; }
        .index_syakyo article section dl dd {
          font-size: 1.5rem;
          margin: 10px 0 0; }
      .index_syakyo article section aside {
        margin: 20px 0 0; }
        .index_syakyo article section aside a {
          color: #000;
          font-size: 1.5rem; }
          .index_syakyo article section aside a:after {
            content: 'r';
            font-family: 'icon';
            margin: 0 0 0 8px; }
    .index_syakyo article ul {
      *zoom: 1;
      width: 446px;
      margin: 0 0 0 54px; }
      .index_syakyo article ul::after {
        content: '';
        display: table;
        clear: both; }
      .index_syakyo article ul li {
        float: left;
        width: 193px;
        margin: 0 0 0 30px; }
        .index_syakyo article ul li a {
          color: #000; }
          .index_syakyo article ul li a figure {
            text-align: center; }
            .index_syakyo article ul li a figure figcaption {
              margin: 20px 0 0; }
              .index_syakyo article ul li a figure figcaption span {
                color: #000;
                font-size: 1.5rem; }
                .index_syakyo article ul li a figure figcaption span:after {
                  content: 'r';
                  font-family: 'icon';
                  margin: 0 0 0 8px;
                  color: #999; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　index - 薬師寺について

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.index_about {
  margin: 160px 0 0; }
  .index_about h2 {
    color: #fff;
    background: url(../images/index/about_visual.jpg) center no-repeat;
    background-size: cover;
    height: 735px;
    position: relative; }
    .index_about h2 strong {
      position: absolute;
      left: 50%;
      transform: translate(-50%, 0);
      top: 100px;
      font-size: 2.8rem;
      text-align: center;
      -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl; }
    .index_about h2 dl {
      position: absolute;
      left: 50%;
      transform: translate(-50%, 0);
      bottom: 60px;
      width: 510px;
      text-shadow: 0px 0px 7px #000;
      text-align: center;
      line-height: 2; }
      .index_about h2 dl dt {
        font-size: 2.5rem; }
      .index_about h2 dl dd {
        font-size: 2rem;
        margin: 40px 0 0; }
  .index_about aside {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-size: 1.5rem;
    line-height: 30px;
    width: 30px;
    margin: 20px auto 0; }
  .index_about p {
    font-size: 1.5rem;
    line-height: 2;
    text-align: center;
    margin: 20px 0 0; }
  .index_about ul {
    *zoom: 1;
    width: 999px;
    margin: 50px auto 0; }
    .index_about ul::after {
      content: '';
      display: table;
      clear: both; }
    .index_about ul li {
      float: left;
      width: 303px;
      margin: 0 15px; }
      .index_about ul li a {
        color: #000; }
        .index_about ul li a figure {
          text-align: center; }
          .index_about ul li a figure figcaption {
            margin: 10px 0 0; }
            .index_about ul li a figure figcaption span {
              color: #000;
              font-size: 1.5rem; }
              .index_about ul li a figure figcaption span:after {
                content: 'r';
                font-family: 'icon';
                margin: 0 0 0 8px;
                color: #999; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　index - Instagram

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.index_instagram {
  background: #f1f1f1;
  margin: 120px 0 0; }
  .index_instagram h2 {
    color: #fff;
    background: #1c1c17;
    font-size: 1.8rem;
    text-align: center;
    line-height: 120px; }
  .index_instagram ul {
    *zoom: 1;
    width: 1030px;
    margin: 0 auto;
    padding: 30px 0; }
    .index_instagram ul::after {
      content: '';
      display: table;
      clear: both; }
    .index_instagram ul li {
      float: left;
      width: 186px;
      margin: 10px; }
      .index_instagram ul li img {
        width: 100%; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　薬師寺について

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.guide .underlayer_visual {
  background: url(../images/guide/visual.jpg) center no-repeat;
  background-size: cover; }
.guide .content01 {
  width: 1000px;
  margin: 70px auto 0; }
  .guide .content01 dt {
    font-size: 3.2rem;
    line-height: 1.7;
    text-align: center; }
    .guide .content01 dt small {
      display: block;
      font-size: 1.7rem;
      text-align: center; }
  .guide .content01 dd {
    font-size: 1.5rem;
    line-height: 2;
    margin: 40px 0 0; }
    .guide .content01 dd p {
      margin: 2em 100px 0; }
  .guide .content01 figure {
    text-align: center; }
    .guide .content01 figure figcaption {
      text-align: left; }
.guide .content02 {
  width: 1000px;
  margin: 70px auto 0; }
  .guide .content02 dt {
    font-size: 2.3rem;
    text-align: center; }
  .guide .content02 dd {
    font-size: 1.5rem;
    line-height: 2;
    margin: 20px 0 0; }
    .guide .content02 dd p {
      text-indent: 1em;
      margin: 2em 100px 0; }
.guide .content03 {
  width: 1000px;
  margin: 120px auto 0; }
  .guide .content03 small {
    display: block;
    font-size: 1.8rem;
    text-align: center;
    margin: 0 0 20px; }
  .guide .content03 strong {
    display: block;
    font-size: 3.2rem;
    text-align: center; }
  .guide .content03 figure {
    display: flex;
    align-items: center;
    margin: 70px 0 0; }
    .guide .content03 figure figcaption {
      width: 475px;
      font-size: 1.5rem;
      line-height: 1.8;
      margin: 0 0 0 25px; }
      .guide .content03 figure figcaption p {
        margin: 2em 0 0; }
        .guide .content03 figure figcaption p:first-child {
          margin: 0; }
      .guide .content03 figure figcaption aside {
        font-weight: bold;
        text-align: center;
        margin: 2em 0 0; }
        .guide .content03 figure figcaption aside span {
          display: inline-block;
          width: 8em; }
      .guide .content03 figure figcaption dl {
        background: #dedede;
        padding: 15px 20px;
        margin: 30px 0 0; }
        .guide .content03 figure figcaption dl dt {
          font-weight: bold; }
        .guide .content03 figure figcaption dl dd {
          margin: 10px 0 0; }
.guide .content04 {
  margin: 120px 20px 0; }
  .guide .content04 strong {
    display: block;
    font-size: 3.2rem;
    text-align: center; }
  .guide .content04 ul {
    *zoom: 1;
    margin: 30px 0 0; }
    .guide .content04 ul::after {
      content: '';
      display: table;
      clear: both; }
    .guide .content04 ul li {
      float: left;
      width: 45%;
      margin: 20px 2.5% 0; }
      .guide .content04 ul li figure {
        text-align: center; }
        .guide .content04 ul li figure figcaption {
          font-size: 1.5rem;
          margin: 10px 0 0; }
.guide .main_nav {
  width: 840px;
  margin: 140px auto 0; }
  .guide .main_nav ul {
    text-align: center; }
    .guide .main_nav ul li {
      display: inline-block;
      vertical-align: top;
      font-size: 2.5rem;
      width: 40px;
      position: relative;
      padding: 50px 0 0;
      margin: 0 50px; }
      .guide .main_nav ul li:after {
        content: '';
        background: #000;
        width: 2px;
        height: 39px;
        position: absolute;
        left: 50%;
        transform: translate(-50%, 0);
        top: 0; }
      .guide .main_nav ul li:hover:after {
        background: #e05d45; }
      .guide .main_nav ul li a {
        display: block;
        color: #000;
        line-height: 40px;
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl; }
    .guide .main_nav ul .current:after {
      background: #e05d45; }
    .guide .main_nav ul .current a {
      color: #e05d45; }
.guide .sub_nav {
  border-top: solid 1px #dedede;
  border-bottom: solid 1px #dedede;
  width: 980px;
  padding: 25px 0;
  margin: 80px auto 0; }
  .guide .sub_nav ul {
    *zoom: 1; }
    .guide .sub_nav ul::after {
      content: '';
      display: table;
      clear: both; }
    .guide .sub_nav ul li {
      float: left;
      width: 140px;
      margin: 15px 0 15px 60px; }
      .guide .sub_nav ul li:nth-child(5n + 1) {
        margin: 15px 0 15px 20px; }
      .guide .sub_nav ul li a {
        display: block;
        color: #000;
        font-size: 1.5rem;
        position: relative; }
        .guide .sub_nav ul li a:after {
          content: 'r';
          font-family: 'icon';
          position: absolute;
          right: 0; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　薬師寺の歴史

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.history .underlayer_visual {
  background: url(../images/guide/history/visual.jpg) center no-repeat;
  background-size: cover; }
.history h3 {
  font-size: 3.2rem;
  text-align: center;
  margin: 110px 0 0; }
.history strong {
  display: block;
  font-size: 2.8rem;
  text-align: center; }
.history .content01 {
  width: 850px;
  margin: 70px auto 0; }
  .history .content01 p {
    font-size: 1.5rem;
    line-height: 2;
    margin: 50px 0 0; }
  .history .content01 figure {
    text-align: center;
    margin: 30px 0 0; }
    .history .content01 figure figcaption {
      color: #666;
      font-size: 1.3rem;
      line-height: 2;
      margin: 10px 0 0; }
.history .content02 {
  *zoom: 1;
  width: 850px;
  margin: 30px auto 0; }
  .history .content02::after {
    content: '';
    display: table;
    clear: both; }
  .history .content02 figure {
    float: left;
    width: 440px;
    text-align: center; }
    .history .content02 figure figcaption {
      color: #666;
      font-size: 1.3rem;
      line-height: 2;
      margin: 10px 0 0; }
  .history .content02 p {
    float: right;
    width: 380px;
    font-size: 1.5rem;
    line-height: 2; }
.history .content03 {
  width: 1200px;
  margin: 80px auto 0;
  position: relative; }
  .history .content03 div {
    width: 100%;
    margin: 80px 0 0;
    overflow: hidden; }
    .history .content03 div section {
      display: flex;
      flex-flow: row-reverse;
      padding: 0 200px; }
      .history .content03 div section dl {
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        padding: 0 0 0 20px;
        margin: 0 20px 0 0;
        position: relative; }
        .history .content03 div section dl:after {
          content: '';
          background: #ccc;
          height: 3px;
          width: calc(100% - 40px);
          position: absolute;
          top: 45px;
          left: 0; }
        .history .content03 div section dl dt {
          font-size: 1.8rem; }
        .history .content03 div section dl dd {
          height: 350px;
          margin: 140px 40px 0 0;
          position: relative; }
          .history .content03 div section dl dd:before {
            content: '';
            background: #ccc;
            width: 15px;
            height: 15px;
            border-radius: 50%;
            position: absolute;
            top: -101px; }
          .history .content03 div section dl dd:after {
            content: '';
            background: #ccc;
            width: 3px;
            height: 65px;
            position: absolute;
            right: 6px;
            top: -90px; }
          .history .content03 div section dl dd em {
            display: block;
            font-size: 1.6rem; }
          .history .content03 div section dl dd p {
            font-size: 1.3rem;
            line-height: 1.7;
            margin: 0 10px 0 0; }
  .history .content03:before {
    content: '';
    background: -moz-linear-gradient(left, white 0%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-linear-gradient(left, white 0%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(to right, white 0%, rgba(255, 255, 255, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=1);
    width: 200px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1; }
  .history .content03:after {
    content: '';
    background: -moz-linear-gradient(left, rgba(255, 255, 255, 0) 0%, white 100%);
    background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, white 100%);
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, white 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=1);
    width: 200px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1; }
  .history .content03 .prev {
    font-family: 'icon';
    font-size: 6rem;
    color: #ccc;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    left: 100px;
    z-index: 2; }
  .history .content03 .next {
    font-family: 'icon';
    font-size: 6rem;
    color: #ccc;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    right: 100px;
    z-index: 2; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　薬師寺の伽藍、仏様

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.guide_hotoke {
  padding: 170px 0 0; }
  .guide_hotoke > ul {
    *zoom: 1;
    margin: 0 auto; }
    .guide_hotoke > ul::after {
      content: '';
      display: table;
      clear: both; }
    .guide_hotoke > ul li {
      float: left; }
      .guide_hotoke > ul li strong {
        display: block;
        font-size: 1.8rem;
        text-align: center; }
      .guide_hotoke > ul li a {
        color: #000; }
        .guide_hotoke > ul li a:hover img {
          opacity: 1 !important; }
      .guide_hotoke > ul li .large {
        margin: 15px 0 0;
        position: relative; }
        .guide_hotoke > ul li .large img:first-child {
          position: absolute;
          opacity: 0; }
        .guide_hotoke > ul li .large:hover img:first-child {
          opacity: 1; }
        .guide_hotoke > ul li .large figcaption {
          font-size: 1.3rem;
          line-height: 1.4;
          margin: 15px 0 0; }
      .guide_hotoke > ul li .small {
        *zoom: 1;
        margin: 20px 0 0; }
        .guide_hotoke > ul li .small::after {
          content: '';
          display: table;
          clear: both; }
        .guide_hotoke > ul li .small img {
          float: left; }
        .guide_hotoke > ul li .small figcaption {
          float: left;
          font-size: 1.3rem;
          line-height: 1.4;
          margin: 0 0 0 10px; }
  .guide_hotoke .list01 {
    width: 1002px; }
    .guide_hotoke .list01 li {
      width: 467px;
      margin: 90px 17px 0; }
  .guide_hotoke .list02 {
    width: 1032px; }
    .guide_hotoke .list02 li {
      width: 290px;
      margin: 90px 27px 0; }
  .guide_hotoke aside {
    text-align: center;
    margin: 40px 0 0; }
    .guide_hotoke aside a {
      display: inline-block;
      color: #000;
      text-decoration: none;
      width: 340px;
      line-height: 60px;
      background: #fff;
      border: solid 1px #ccc;
      margin: 0 5px; }
      .guide_hotoke aside a:hover {
        color: #fff !important;
        background: #e05d45 !important; }
        .guide_hotoke aside a:hover span {
          color: #fff !important; }
          .guide_hotoke aside a:hover span:after {
            color: #fff !important; }
      .guide_hotoke aside a span {
        font-size: 1.5rem; }
        .guide_hotoke aside a span:after {
          content: 'r';
          font-family: 'icon';
          margin: 0 0 0 8px; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　本山　僧侶紹介

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.guide_soryo {
  padding: 170px 0 0; }
  .guide_soryo .list01 {
    width: 1000px;
    margin: 120px auto 0; }
    .guide_soryo .list01 li article {
      display: flex;
      align-items: center;
      border-left: solid 7px #e05e45; }
      .guide_soryo .list01 li article figure {
        display: flex;
        align-items: center;
        flex-flow: row-reverse; }
        .guide_soryo .list01 li article figure figcaption {
          -webkit-writing-mode: vertical-rl;
          -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
          line-height: 30px;
          padding: 0 110px; }
          .guide_soryo .list01 li article figure figcaption small {
            font-size: 1.5rem; }
          .guide_soryo .list01 li article figure figcaption strong {
            font-size: 2rem;
            margin: 20px 0 0; }
      .guide_soryo .list01 li article dl {
        width: 410px;
        font-size: 1.5rem;
        margin: 0 0 0 50px; }
        .guide_soryo .list01 li article dl dd {
          line-height: 2;
          margin: 20px 0 0; }
    .guide_soryo .list01 li aside {
      text-align: center;
      margin: 70px 0 0; }
      .guide_soryo .list01 li aside a {
        display: inline-block;
        color: #000;
        text-decoration: none;
        width: 320px;
        line-height: 60px;
        background: #fff;
        border: solid 1px #ccc;
        margin: 0 5px; }
        .guide_soryo .list01 li aside a:hover {
          color: #fff !important;
          background: #e05d45 !important; }
          .guide_soryo .list01 li aside a:hover span {
            color: #fff !important; }
            .guide_soryo .list01 li aside a:hover span:after {
              color: #fff !important; }
        .guide_soryo .list01 li aside a span {
          font-size: 1.5rem; }
          .guide_soryo .list01 li aside a span:after {
            content: 'r';
            font-family: 'icon';
            margin: 0 0 0 8px; }
    .guide_soryo .list01 li:nth-child(even) {
      margin: 120px 0 0; }
      .guide_soryo .list01 li:nth-child(even) article {
        flex-flow: row-reverse;
        border-left: none;
        border-right: solid 7px #000; }
        .guide_soryo .list01 li:nth-child(even) article figure {
          flex-flow: row; }
        .guide_soryo .list01 li:nth-child(even) article dl {
          margin: 0 50px 0 0; }
  .guide_soryo .list02 {
    *zoom: 1;
    width: 1000px;
    margin: 120px auto 0; }
    .guide_soryo .list02::after {
      content: '';
      display: table;
      clear: both; }
    .guide_soryo .list02 li {
      float: left;
      width: 200px;
      margin: 60px 25px 0; }
      .guide_soryo .list02 li figure figcaption {
        font-size: 1.2rem;
        line-height: 2;
        text-align: center;
        margin: 20px 0 0; }
        .guide_soryo .list02 li figure figcaption strong {
          display: block;
          font-size: 1.5rem; }
      .guide_soryo .list02 li aside {
        text-align: center;
        margin: 20px 0 0; }
        .guide_soryo .list02 li aside a {
          display: block;
          color: #000;
          text-decoration: none;
          line-height: 50px;
          background: #fff;
          border: solid 1px #ccc; }
          .guide_soryo .list02 li aside a:hover {
            color: #fff !important;
            background: #e05d45 !important; }
            .guide_soryo .list02 li aside a:hover span {
              color: #fff !important; }
              .guide_soryo .list02 li aside a:hover span:after {
                color: #fff !important; }
          .guide_soryo .list02 li aside a span {
            font-size: 1.3rem; }
            .guide_soryo .list02 li aside a span:after {
              content: 'r';
              font-family: 'icon';
              margin: 0 0 0 8px; }
  .guide_soryo .image {
    display: flex;
    align-items: center;
    margin: 120px 0 0; }
    .guide_soryo .image figure {
      width: 43.83vw;
      min-width: 526px; }
    .guide_soryo .image aside {
      width: 56.17vw;
      min-width: 674px;
      font-size: 1.6rem;
      line-height: 2;
      padding: 30px 0;
      border-bottom: solid 1px #dedede; }
      .guide_soryo .image aside p {
        display: inline-block;
        width: 530px; }
  .guide_soryo .right {
    flex-flow: row-reverse; }
    .guide_soryo .right figure {
      text-align: left; }
    .guide_soryo .right aside {
      text-align: right; }
      .guide_soryo .right aside p {
        margin: 0 40px 0 0;
        text-align: left; }
  .guide_soryo .left figure {
    text-align: right; }
  .guide_soryo .left aside p {
    margin: 0 0 0 40px; }
  .guide_soryo .soryo_detail01 {
    margin: 120px 0 0; }
    .guide_soryo .soryo_detail01 dt {
      text-align: center; }
      .guide_soryo .soryo_detail01 dt h2 {
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        line-height: 40px;
        margin: 0 auto; }
        .guide_soryo .soryo_detail01 dt h2 small {
          font-size: 1.8rem; }
        .guide_soryo .soryo_detail01 dt h2 strong {
          font-size: 3rem;
          margin: 10px 0 0; }
      .guide_soryo .soryo_detail01 dt aside {
        font-size: 1.5rem;
        margin: 50px 0 0; }
        .guide_soryo .soryo_detail01 dt aside a {
          color: #000; }
    .guide_soryo .soryo_detail01 dd {
      background: #f1f1f1 url(../images/common/bg_ichimatsu.png) center;
      font-size: 1.8rem;
      line-height: 2.5;
      text-align: center;
      padding: 30px 0;
      margin: 30px 0 0; }
  .guide_soryo .soryo_detail02 {
    width: 850px;
    font-size: 1.5rem;
    line-height: 2;
    margin: 60px auto 0; }
  .guide_soryo .soryo_detail03 {
    width: 650px;
    margin: 50px auto 0;
    text-align: center; }
    .guide_soryo .soryo_detail03 dl {
      margin: 30px 0 0; }
      .guide_soryo .soryo_detail03 dl dt {
        font-size: 2.2rem; }
      .guide_soryo .soryo_detail03 dl dd {
        font-size: 1.5rem;
        line-height: 1.7;
        margin: 40px 0 0;
        text-align: left !important; }
    .guide_soryo .soryo_detail03 table {
      font-size: 1.3rem;
      line-height: 1.7;
      margin: 30px 0 0;
      width: 100%; }
      .guide_soryo .soryo_detail03 table th, .guide_soryo .soryo_detail03 table td {
        padding: 20px 30px;
        border: solid 1px #dedede; }
      .guide_soryo .soryo_detail03 table th {
        background: #f1f1f1;
        text-align: center;
        width: 60px; }
      .guide_soryo .soryo_detail03 table td {
        text-align: left; }
  .guide_soryo .soryo_detail04 {
    *zoom: 1;
    width: 1000px;
    margin: 0 auto; }
    .guide_soryo .soryo_detail04::after {
      content: '';
      display: table;
      clear: both; }
    .guide_soryo .soryo_detail04 strong {
      display: block;
      font-size: 2.2rem;
      text-align: center;
      margin: 70px 0 0; }
    .guide_soryo .soryo_detail04 .history {
      float: left;
      width: 450px; }
      .guide_soryo .soryo_detail04 .history ol {
        font-size: 1.3rem;
        border-left: solid 3px #ccc;
        margin: 40px 0 0;
        padding: 10px 0 0 100px; }
        .guide_soryo .soryo_detail04 .history ol li {
          line-height: 15px;
          margin: 30px 0;
          position: relative; }
          .guide_soryo .soryo_detail04 .history ol li:before {
            content: '';
            background: #ccc;
            width: 15px;
            height: 15px;
            border-radius: 50%;
            position: absolute;
            left: -109px; }
          .guide_soryo .soryo_detail04 .history ol li:after {
            content: '';
            background: #ccc;
            width: 65px;
            height: 3px;
            position: absolute;
            left: -100px;
            top: 6px; }
          .guide_soryo .soryo_detail04 .history ol li figure {
            margin: 30px 0 0; }
        .guide_soryo .soryo_detail04 .history ol .current:before {
          background: #e05d45; }
        .guide_soryo .soryo_detail04 .history ol .current:after {
          background: #e05d45; }
    .guide_soryo .soryo_detail04 .book {
      float: right;
      width: 480px; }
      .guide_soryo .soryo_detail04 .book ul {
        font-size: 1.3rem;
        margin: 40px 0 0;
        padding: 10px 0 0; }
        .guide_soryo .soryo_detail04 .book ul li {
          line-height: 15px;
          margin: 30px 0; }
          .guide_soryo .soryo_detail04 .book ul li small {
            color: #666; }
  .guide_soryo .soryo_detail05 {
    margin: 90px 0 0; }
    .guide_soryo .soryo_detail05 strong {
      display: block;
      font-size: 2.2rem;
      text-align: center; }
    .guide_soryo .soryo_detail05 article {
      width: 1200px;
      margin: 50px auto 0;
      position: relative;
      overflow: hidden; }
      .guide_soryo .soryo_detail05 article ul {
        width: 1758px;
        margin: 0 0 0 -279px; }
        .guide_soryo .soryo_detail05 article ul li {
          width: 566px;
          margin: 0 10px; }
          .guide_soryo .soryo_detail05 article ul li figure figcaption {
            font-size: 1.3rem;
            line-height: 2.5;
            text-align: center;
            margin: 15px 0 0; }
        .guide_soryo .soryo_detail05 article ul .slick-slide {
          opacity: .2; }
          .guide_soryo .soryo_detail05 article ul .slick-slide figure figcaption {
            display: none; }
        .guide_soryo .soryo_detail05 article ul .slick-current {
          opacity: 1; }
          .guide_soryo .soryo_detail05 article ul .slick-current figure figcaption {
            display: block; }
      .guide_soryo .soryo_detail05 article .prev {
        font-family: 'icon';
        font-size: 3rem;
        color: #ccc;
        position: absolute;
        top: 50%;
        transform: translate(0, -50%);
        left: 270px; }
      .guide_soryo .soryo_detail05 article .next {
        font-family: 'icon';
        font-size: 3rem;
        color: #ccc;
        position: absolute;
        top: 50%;
        transform: translate(0, -50%);
        right: 270px; }
  .guide_soryo .soryo_return {
    text-align: center;
    margin: 100px 0 0; }
    .guide_soryo .soryo_return a {
      display: inline-block;
      color: #000;
      text-decoration: none;
      width: 320px;
      line-height: 60px;
      background: #fff;
      border: solid 1px #ccc;
      margin: 0 5px; }
      .guide_soryo .soryo_return a:hover {
        color: #fff !important;
        background: #e05d45 !important; }
        .guide_soryo .soryo_return a:hover span {
          color: #fff !important; }
          .guide_soryo .soryo_return a:hover span:after {
            color: #fff !important; }
      .guide_soryo .soryo_return a span {
        font-size: 1.5rem; }
        .guide_soryo .soryo_return a span:after {
          content: 'r';
          font-family: 'icon';
          margin: 0 0 0 8px; }
  .guide_soryo .kansyu_list {
    margin: 90px 0 0; }
    .guide_soryo .kansyu_list > li {
      padding: 30px 0;
      border-bottom: solid 1px #dedede; }
      .guide_soryo .kansyu_list > li article {
        display: flex;
        align-items: center;
        width: 1000px;
        margin: 0 auto;
        border-left: solid 7px #40413c; }
        .guide_soryo .kansyu_list > li article figure {
          display: flex;
          align-items: center;
          flex-flow: row-reverse; }
          .guide_soryo .kansyu_list > li article figure figcaption {
            -webkit-writing-mode: vertical-rl;
            -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
            font-size: 2rem;
            line-height: 30px;
            padding: 0 110px; }
        .guide_soryo .kansyu_list > li article dl {
          width: 410px;
          font-size: 1.5rem;
          margin: 0 0 0 50px; }
          .guide_soryo .kansyu_list > li article dl dd {
            line-height: 2;
            margin: 20px 0 0; }
      .guide_soryo .kansyu_list > li aside {
        display: flex;
        width: 800px;
        margin: 40px auto 0; }
        .guide_soryo .kansyu_list > li aside li {
          font-size: 1.3rem;
          line-height: 2; }
        .guide_soryo .kansyu_list > li aside ol {
          width: calc(45% - 40px);
          padding: 0 40px 0 0; }
        .guide_soryo .kansyu_list > li aside ul {
          width: calc(55% - 40px - 1px);
          padding: 0 0 0 40px;
          border-left: solid 1px #dedede; }
      .guide_soryo .kansyu_list > li:nth-child(even) article {
        flex-flow: row-reverse;
        border-left: none;
        border-right: solid 7px #40413c; }
        .guide_soryo .kansyu_list > li:nth-child(even) article figure {
          flex-flow: row; }
        .guide_soryo .kansyu_list > li:nth-child(even) article dl {
          margin: 0 50px 0 0; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　年中・定期行事

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.event .underlayer_visual {
  background: url(../images/event/visual.jpg) center no-repeat;
  background-size: cover; }
.event .event_list {
  margin: 70px 0 0; }
  .event .event_list h2 {
    font-size: 3.2rem;
    text-align: center; }
  .event .event_list article {
    width: 1200px;
    margin: 70px auto 0;
    position: relative;
    overflow: hidden; }
    .event .event_list article:after {
      content: '';
      background: #dedede;
      width: 995px;
      height: 1px;
      position: absolute;
      left: 50%;
      transform: translate(-50%, 0);
      top: 40px; }
    .event .event_list article ol {
      width: 1440px;
      margin: 0 0 0 -120px; }
      .event .event_list article ol li {
        width: 400px;
        margin: 0 40px; }
        .event .event_list article ol li strong {
          display: block;
          font-size: 1.6rem;
          font-weight: bold;
          text-align: center;
          margin: 0 0 50px; }
        .event .event_list article ol li p {
          font-size: 1.5rem;
          line-height: 1.4;
          margin: 10px 0 0; }
          .event .event_list article ol li p a {
            display: block;
            color: #000;
            position: relative; }
            .event .event_list article ol li p a:after {
              content: 'r';
              font-family: 'icon';
              color: #ccc;
              position: absolute;
              right: 0; }
          .event .event_list article ol li p small {
            display: inline-block;
            width: 115px;
            vertical-align: top; }
          .event .event_list article ol li p em {
            display: inline-block;
            width: 270px;
            vertical-align: top; }
      .event .event_list article ol .slick-slide {
        opacity: .2; }
        .event .event_list article ol .slick-slide a {
          pointer-events: none; }
      .event .event_list article ol .slick-current {
        opacity: 1; }
        .event .event_list article ol .slick-current a {
          pointer-events: auto; }
    .event .event_list article .prev {
      font-family: 'icon';
      font-size: 3rem;
      color: #ccc;
      position: absolute;
      top: 50%;
      transform: translate(0, -50%);
      left: 270px; }
    .event .event_list article .next {
      font-family: 'icon';
      font-size: 3rem;
      color: #ccc;
      position: absolute;
      top: 50%;
      transform: translate(0, -50%);
      right: 270px; }
.event .list01 {
  margin: 120px 0 0; }
  .event .list01 h2 {
    font-size: 3.2rem;
    text-align: center; }
  .event .list01 ul {
    *zoom: 1;
    width: 1050px;
    margin: 0 auto; }
    .event .list01 ul::after {
      content: '';
      display: table;
      clear: both; }
    .event .list01 ul li {
      float: left;
      width: 465px;
      margin: 100px 30px 0;
      text-align: center; }
      .event .list01 ul li figure figcaption dl {
        margin: 20px 0 0; }
        .event .list01 ul li figure figcaption dl dt {
          font-size: 2.4rem; }
        .event .list01 ul li figure figcaption dl dd {
          font-size: 1.3rem;
          text-align: left;
          line-height: 2;
          margin: 20px 0 0; }
      .event .list01 ul li a {
        display: inline-block;
        color: #000;
        text-decoration: none;
        width: 320px;
        line-height: 60px;
        background: #fff;
        border: solid 1px #ccc;
        margin: 30px 0 0; }
        .event .list01 ul li a:hover {
          color: #fff !important;
          background: #e05d45 !important; }
          .event .list01 ul li a:hover span {
            color: #fff !important; }
            .event .list01 ul li a:hover span:after {
              color: #fff !important; }
        .event .list01 ul li a span {
          font-size: 1.5rem; }
          .event .list01 ul li a span:after {
            content: 'r';
            font-family: 'icon';
            margin: 0 0 0 8px; }
.event .list02 {
  margin: 130px 0 0; }
  .event .list02 ul {
    *zoom: 1;
    width: 1050px;
    margin: 0 auto; }
    .event .list02 ul::after {
      content: '';
      display: table;
      clear: both; }
    .event .list02 ul li {
      float: left;
      width: 290px;
      margin: 0 30px;
      text-align: center; }
      .event .list02 ul li figure figcaption dl {
        margin: 20px 0 0; }
        .event .list02 ul li figure figcaption dl dt {
          font-size: 2.1rem; }
        .event .list02 ul li figure figcaption dl dd {
          font-size: 1.3rem;
          text-align: left;
          line-height: 2;
          margin: 20px 0 0; }
      .event .list02 ul li a {
        display: block;
        color: #000;
        text-decoration: none;
        line-height: 60px;
        background: #fff;
        border: solid 1px #ccc;
        margin: 30px 0 0; }
        .event .list02 ul li a:hover {
          color: #fff !important;
          background: #e05d45 !important; }
          .event .list02 ul li a:hover span {
            color: #fff !important; }
            .event .list02 ul li a:hover span:after {
              color: #fff !important; }
        .event .list02 ul li a span {
          font-size: 1.5rem; }
          .event .list02 ul li a span:after {
            content: 'r';
            font-family: 'icon';
            margin: 0 0 0 8px; }
.event .event_place {
  width: 750px;
  margin: 130px auto 0; }
  .event .event_place h2 {
    font-size: 2.8rem;
    text-align: center; }
  .event .event_place table {
    width: 100%;
    margin: 70px 0 0; }
    .event .event_place table th, .event .event_place table td {
      font-size: 1.3rem;
      line-height: 1.7;
      vertical-align: middle;
      padding: 35px 40px;
      border: solid 1px #dedede; }
    .event .event_place table th {
      background: #f1f1f1;
      text-align: center; }
    .event .event_place table .col01 {
      width: 160px; }
    .event .event_place table .col02 {
      width: 200px; }
  .event .event_place aside {
    font-size: 1.4rem;
    line-height: 1.7;
    text-align: center;
    margin: 30px 0 0; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　年中・定期行事 - 詳細

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.event_detail {
  margin: 240px 0 0; }
  .event_detail h2 {
    font-size: 3.2rem;
    text-align: center; }
  .event_detail h2.m-top {
    margin-top:60px; }
  .event_detail .event_continuation01, .event_detail .event_continuation02 {
    opacity: 0;
    margin: 20px auto 0;
    transition: all 1s; }
  .event_detail .event_continuation01.view {
    opacity: 1;
    margin: 70px auto 0; }
  .event_detail .event_continuation02.view {
    opacity: 1;
    margin: 110px auto 0; }

  .event_detail .box_border {
  	padding-bottom:20px;
	border-bottom:1px solid #DEDEDE;}
  .event_detail .event_start {
    width: 900px;
    margin: 80px auto 0; }
    .event_detail .event_start figure {
      text-align: center; }
    .event_detail .event_start dl {
      display: flex;
      align-items: center;
      margin: 40px 0 0; }
      .event_detail .event_start dl dt {
        width: 120px;
        text-align: center; }
        .event_detail .event_start dl dt small {
          display: block;
          font-size: 1.8rem; }
        .event_detail .event_start dl dt strong {
          display: inline-block;
          -webkit-writing-mode: vertical-rl;
          -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
          font-size: 2.2rem;
          text-align: left;
          line-height: 30px;
          width: 30px;
          margin: 20px 0 0; }
      .event_detail .event_start dl dd {
        width: 700px;
        font-size: 1.3rem;
        line-height: 2;
        margin: 0 0 0 80px; }
    .event_detail .event_start p {
      font-size: 1.5rem;
      line-height: 2;
      margin: 30px 35px 0; }
  .event_detail .event_continuation01 {
    width: 1000px; }
    .event_detail .event_continuation01 dl {
      display: flex; }
    .event_detail .event_continuation01 dl.nocontents {
		 }
      .event_detail .event_continuation01 dl dt {
        width: 300px;
        text-align: center;
        padding: 60px 0 0;
        position: relative; }
      .event_detail .event_continuation01 dl.nocontents dt {
        width: 1000px;
        text-align: center;
        padding: 60px 0 0;
        position: relative; }
        .event_detail .event_continuation01 dl dt:before {
          content: '';
          background: #ccc;
          width: 3px;
          height: 45px;
          position: absolute;
          left: 50%;
          transform: translate(-50%, 0);
          top: 0; }
        .event_detail .event_continuation01 dl dt small {
          display: block;
          font-size: 1.8rem; }
        .event_detail .event_continuation01 dl dt strong {
          display: inline-block;
          -webkit-writing-mode: vertical-rl;
          -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
          font-size: 2.2rem;
          line-height: 30px;
          width: 30px;
          text-align: left;
          margin: 20px 0 0; }
        .event_detail .event_continuation01 dl dt strong span {
		font-size:1.5rem;}
      .event_detail .event_continuation01 dl dd {
        width: 650px;
        margin: 50px 0 0 50px; }
        .event_detail .event_continuation01 dl dd .vertical {
          margin: 10px 0 0; }
          .event_detail .event_continuation01 dl dd .vertical figcaption {
            font-size: 1.3rem;
            line-height: 2;
            margin: 10px 0 0; }
        .event_detail .event_continuation01 dl dd .horizontal {
          display: flex;
          margin: 10px 0 0; }
          .event_detail .event_continuation01 dl dd .horizontal figcaption {
            font-size: 1.3rem;
            line-height: 2;
            margin: 0 0 0 20px; }
        .event_detail .event_continuation01 dl dd .multiple {
          text-align: center;
          margin: 30px 0 0; }
          .event_detail .event_continuation01 dl dd .multiple img {
            margin: 0 3px; }
          .event_detail .event_continuation01 dl dd .multiple figcaption {
            font-size: 1.3rem;
            line-height: 2;
            text-align: left;
            margin: 30px 0 0; }
        .event_detail .event_continuation01 dl dd p {
          font-size: 1.3rem;
          line-height: 2;
          margin: 10px 0 0; }
        .event_detail .event_continuation01 dl dd table {
          width: 100%;
          margin: 30px 0 0; }
          .event_detail .event_continuation01 dl dd table th, .event_detail .event_continuation01 dl dd table td {
            font-size: 1.3rem;
            line-height: 1.7;
            vertical-align: middle;
            padding: 20px 0;
            border: solid 1px #dedede; }
          .event_detail .event_continuation01 dl dd table th {
            background: #f1f1f1;
            width: 150px; }
          .event_detail .event_continuation01 dl dd table td {
            padding: 20px 30px; }
        .event_detail .event_continuation01 dl dd small {
          display: block;
          font-size: 1.1rem;
          line-height: 2;
          margin: 30px 0 0; }
        .event_detail .event_continuation01 dl dd em {
          display: block;
          font-size: 1.8rem;
          line-height: 2;
          text-align: center;
          margin: 30px 0; }
    .event_detail .event_continuation01:nth-child(odd) dl {
      flex-flow: row-reverse; }
      .event_detail .event_continuation01:nth-child(odd) dl dd {
        margin: 50px 50px 0 0; }
  .event_detail .event_continuation02 {
    width: 1000px; }
    .event_detail .event_continuation02 strong {
      display: block;
      font-size: 3.2rem;
      text-align: center; }
    .event_detail .event_continuation02 .text {
      margin: 100px 95px 0; }
      .event_detail .event_continuation02 .text p {
        font-size: 1.5rem;
        line-height: 2;
        margin: 30px 0 0; }
      .event_detail .event_continuation02 .text figure {
        text-align: center;
        margin: 30px 0 0; }
      .event_detail .event_continuation02 .text dl {
        text-align: center;
        margin: 30px 0 0; }
        .event_detail .event_continuation02 .text dl dt {
          font-size: 2.2rem; }
        .event_detail .event_continuation02 .text dl dd {
          font-size: 1.8rem;
          margin: 30px 0 0; }
    .event_detail .event_continuation02 .schedule_single {
      *zoom: 1;
      margin: 100px 0 0; }
      .event_detail .event_continuation02 .schedule_single::after {
        content: '';
        display: table;
        clear: both; }
      .event_detail .event_continuation02 .schedule_single p {
        font-size: 1.5rem;
        line-height: 2;
        text-align: center; }
      .event_detail .event_continuation02 .schedule_single table {
        width: 100%;
        margin: 30px 0 0; }
        .event_detail .event_continuation02 .schedule_single table thead th {
          color: #fff;
          background: #e05d45;
          font-size: 1.3rem;
          line-height: 1.7;
          vertical-align: middle;
          padding: 15px;
          border: solid 1px #dedede; }
        .event_detail .event_continuation02 .schedule_single table tbody th, .event_detail .event_continuation02 .schedule_single table tbody td {
          font-size: 1.3rem;
          line-height: 1.7;
          vertical-align: middle;
          padding: 15px;
          border: solid 1px #dedede;
          white-space: nowrap; }
        .event_detail .event_continuation02 .schedule_single table tbody th {
          background: #f1f1f1; }
      .event_detail .event_continuation02 .schedule_single .center tbody td {
        text-align: center; }
    .event_detail .event_continuation02 .schedule_doubule {
      *zoom: 1;
      margin: 100px 0 0; }
      .event_detail .event_continuation02 .schedule_doubule::after {
        content: '';
        display: table;
        clear: both; }
      .event_detail .event_continuation02 .schedule_doubule table {
        width: 485px; }
        .event_detail .event_continuation02 .schedule_doubule table caption {
          font-size: 1.7rem;
          text-align: center;
          padding: 0 0 20px; }
        .event_detail .event_continuation02 .schedule_doubule table tbody th, .event_detail .event_continuation02 .schedule_doubule table tbody td {
          font-size: 1.3rem;
          line-height: 1.7;
          vertical-align: middle;
          padding: 20px 0;
          border: solid 1px #dedede; }
        .event_detail .event_continuation02 .schedule_doubule table tbody th {
          background: #f1f1f1;
          width: 150px; }
        .event_detail .event_continuation02 .schedule_doubule table tbody td {
          padding: 20px 30px; }
        .event_detail .event_continuation02 .schedule_doubule table tfoot td {
          font-size: 1.3rem;
          line-height: 1.7;
          padding: 20px 0; }
          .event_detail .event_continuation02 .schedule_doubule table tfoot td a {
            color: #000;
            text-decoration: underline; }
        .event_detail .event_continuation02 .schedule_doubule table:first-child {
          float: left; }
        .event_detail .event_continuation02 .schedule_doubule table:last-child {
          float: right; }
    .event_detail .event_continuation02 .image {
      display: flex;
      margin: 100px 95px 0; }
      .event_detail .event_continuation02 .image p {
        font-size: 1.5rem;
        line-height: 2; }
      .event_detail .event_continuation02 .image figure {
        margin: 0 0 0 20px; }
        .event_detail .event_continuation02 .image figure figcaption {
          font-size: 1.5rem;
          line-height: 1.7;
          text-align: center;
          margin: 10px 0 0; }
    .event_detail .event_continuation02 .images figure {
      text-align: center; }
      .event_detail .event_continuation02 .images figure img {
        margin: 10px 5px 0; }
      .event_detail .event_continuation02 .images figure figcaption {
        font-size: 1.1rem;
        line-height: 1.5;
        text-align: center;
        margin: 10px 0 0; }
    .event_detail .event_continuation02 .list {
      margin: 100px 55px 0; }
      .event_detail .event_continuation02 .list ul {
        font-size: 1.5rem;
        line-height: 1.7;
        list-style: disc;
        padding: 0 20px 0 40px;
        margin: 30px 0 0; }
        .event_detail .event_continuation02 .list ul li {
          margin: 5px 0; }
      .event_detail .event_continuation02 .list .gray {
        background: #f1f1f1;
        padding: 20px 20px 20px 40px; }
      .event_detail .event_continuation02 .list p {
        font-size: 2rem;
        line-height: 1.7;
        text-align: center;
        margin: 30px 0 0; }
      .event_detail .event_continuation02 .list dl {
        margin: 80px 20px 0; }
        .event_detail .event_continuation02 .list dl dt {
          font-size: 2rem;
          line-height: 1.7;
          text-align: center; }
        .event_detail .event_continuation02 .list dl dd {
          font-size: 1.6rem;
          line-height: 2;
          margin: 50px 0 0; }
    .event_detail .event_continuation02 .contact {
      margin: 50px 175px 0; }
      .event_detail .event_continuation02 .contact dl {
        text-align: center; }
        .event_detail .event_continuation02 .contact dl dt {
          font-size: 1.7rem; }
        .event_detail .event_continuation02 .contact dl dd {
          background: #f1f1f1;
          font-size: 1.5rem;
          line-height: 1.7;
          border-top: solid 1px #dedede;
          border-bottom: solid 1px #dedede;
          padding: 30px;
          margin: 30px 0 0; }
    .event_detail .event_continuation02 .sanzo {
      background: #f1f1f1;
      margin: 0 84px;
      padding: 28px; }
      .event_detail .event_continuation02 .sanzo ul {
        *zoom: 1; }
        .event_detail .event_continuation02 .sanzo ul::after {
          content: '';
          display: table;
          clear: both; }
        .event_detail .event_continuation02 .sanzo ul li {
          float: left;
          margin: 1px;
          position: relative; }
          .event_detail .event_continuation02 .sanzo ul li:after {
            content: '';
            background: rgba(224, 93, 69, 0.6);
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            display: none; }
      .event_detail .event_continuation02 .sanzo dl {
        display: none;
        margin: 30px 30px 0; }
        .event_detail .event_continuation02 .sanzo dl dt {
          font-size: 2.2rem; }
        .event_detail .event_continuation02 .sanzo dl dd {
          font-size: 1.6rem;
          line-height: 2;
          margin: 10px 0 0; }
    .event_detail .event_continuation02 .sanzo.event01_show li.event01:after {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event01_show dl.event01 {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event02_show li.event02:after {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event02_show dl.event02 {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event03_show li.event03:after {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event03_show dl.event03 {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event04_show li.event04:after {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event04_show dl.event04 {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event05_show li.event05:after {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event05_show dl.event05 {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event06_show li.event06:after {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event06_show dl.event06 {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event07_show li.event07:after {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event07_show dl.event07 {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event08_show li.event08:after {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event08_show dl.event08 {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event09_show li.event09:after {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event09_show dl.event09 {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event10_show li.event10:after {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event10_show dl.event10 {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event11_show li.event11:after {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event11_show dl.event11 {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event12_show li.event12:after {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event12_show dl.event12 {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event13_show li.event13:after {
      display: block; }
    .event_detail .event_continuation02 .sanzo.event13_show dl.event13 {
      display: block; }
    .event_detail .event_continuation02 .timeline {
      margin: 0 100px; }
      .event_detail .event_continuation02 .timeline em {
        display: block;
        font-size: 2.2rem;
        margin: 50px 0 0; }
      .event_detail .event_continuation02 .timeline ol {
        font-size: 1.6rem;
        line-height: 1.7;
        border-left: solid 3px #ccc;
        margin: 30px 0 0 2em;
        padding: 10px 0 10px 100px; }
        .event_detail .event_continuation02 .timeline ol li {
          margin: 30px 0;
          position: relative; }
          .event_detail .event_continuation02 .timeline ol li:before {
            content: '';
            background: #ccc;
            width: 15px;
            height: 15px;
            border-radius: 50%;
            position: absolute;
            top: 5px;
            left: -109px; }
          .event_detail .event_continuation02 .timeline ol li:after {
            content: '';
            background: #ccc;
            width: 65px;
            height: 3px;
            position: absolute;
            left: -100px;
            top: 11px; }
          .event_detail .event_continuation02 .timeline ol li figure {
            margin: 30px 0 0; }
      .event_detail .event_continuation02 .timeline aside {
        font-size: 1.5rem;
        line-height: 1.7;
        text-align: center;
        margin: 50px 0 0; }
    .event_detail .event_continuation02 .houi {
      margin: 0 70px; }
      .event_detail .event_continuation02 .houi p {
        font-size: 1.5rem;
        line-height: 2;
        margin: 30px 0 0; }
      .event_detail .event_continuation02 .houi dl {
        display: flex;
        width: 100%;
        margin: 80px 0 0; }
        .event_detail .event_continuation02 .houi dl dt {
          color: #999;
          font-size: 8.7rem;
          -webkit-writing-mode: vertical-rl;
          -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
          width: 90px; }
          .event_detail .event_continuation02 .houi dl dt small {
            font-size: 5rem; }
        .event_detail .event_continuation02 .houi dl dd {
          font-size: 2.2rem;
          line-height: 2;
          margin: 10px 0 0 40px;
          -webkit-flex: 1;
          flex: 1; }
          .event_detail .event_continuation02 .houi dl dd figure {
            text-align: center;
            margin: 20px 0; }
      .event_detail .event_continuation02 .houi article {
        text-align: center; }
        .event_detail .event_continuation02 .houi article figure {
          display: inline-block;
          margin: 50px 20px 0; }
          .event_detail .event_continuation02 .houi article figure figcaption {
            font-size: 1.5rem;
            margin: 10px 0 0; }
    .event_detail .event_continuation02 .program {
      margin: 0 70px; }
      .event_detail .event_continuation02 .program table {
        width: 100%;
        margin: 40px 0 0; }
        .event_detail .event_continuation02 .program table th, .event_detail .event_continuation02 .program table td {
          font-size: 1.5rem;
          line-height: 2;
          vertical-align: middle;
          padding: 20px;
          border: solid 1px #dedede; }
        .event_detail .event_continuation02 .program table th {
          background: #f1f1f1;
          width: 180px; }
        .event_detail .event_continuation02 .program table td span {
          color: #999; }
  .event_detail .event_continuation03 {
    width: 1200px;
    margin: 40px auto 0; }
    .event_detail .event_continuation03 strong {
      display: block;
      font-size: 3.2rem;
      text-align: center;
      margin: 100px 0 0; }
    .event_detail .event_continuation03 .images figure {
      text-align: center; }
      .event_detail .event_continuation03 .images figure img {
        margin: 10px 5px 0; }
    .event_detail .event_continuation03 .images p {
      font-size: 1.5rem;
      line-height: 2;
      width: 830px;
      margin: 40px auto 0; }
    .event_detail .event_continuation03 .schedule_doubule {
      *zoom: 1;
      margin: 70px 100px 0; }
      .event_detail .event_continuation03 .schedule_doubule::after {
        content: '';
        display: table;
        clear: both; }
      .event_detail .event_continuation03 .schedule_doubule section {
        width: 470px; }
        .event_detail .event_continuation03 .schedule_doubule section .intro {
          margin: 40px 10px 0; }
          .event_detail .event_continuation03 .schedule_doubule section .intro dt {
            font-size: 1.8rem;
            text-align: center;
            line-height: 70px; }
            .event_detail .event_continuation03 .schedule_doubule section .intro dt small {
              font-size: 1.6rem; }
          .event_detail .event_continuation03 .schedule_doubule section .intro dd {
            font-size: 1.3rem;
            line-height: 2;
            margin: 20px 0 0; }
        .event_detail .event_continuation03 .schedule_doubule section table {
          margin: 20px 0 0; }
          .event_detail .event_continuation03 .schedule_doubule section table th, .event_detail .event_continuation03 .schedule_doubule section table td {
            font-size: 1.3rem;
            line-height: 1.7;
            vertical-align: middle;
            padding: 20px 0;
            border: solid 1px #dedede; }
          .event_detail .event_continuation03 .schedule_doubule section table th {
            background: #f1f1f1;
            width: 120px; }
          .event_detail .event_continuation03 .schedule_doubule section table td {
            padding: 20px; }
        .event_detail .event_continuation03 .schedule_doubule section aside {
          background: #f1f1f1;
          margin: 30px 0 40px;
          padding: 20px; }
          .event_detail .event_continuation03 .schedule_doubule section aside dl dt {
            font-size: 1.5rem;
            text-align: center; }
          .event_detail .event_continuation03 .schedule_doubule section aside dl dd {
            font-size: 1.3rem;
            line-height: 1.7;
            text-align: left; }
            .event_detail .event_continuation03 .schedule_doubule section aside dl dd p {
              margin: 20px 0 0; }
              .event_detail .event_continuation03 .schedule_doubule section aside dl dd p em {
                font-weight: bold; }
        .event_detail .event_continuation03 .schedule_doubule section a {
          display: block;
          color: #fff;
          text-decoration: none;
          line-height: 60px;
          text-align: center;
          background: #fff;
          border: solid 1px #ccc;
          margin: 10px 50px 0; }
          .event_detail .event_continuation03 .schedule_doubule section a:hover {
            color: #fff !important;
            background: #e05d45 !important; }
            .event_detail .event_continuation03 .schedule_doubule section a:hover span {
              color: #fff !important; }
              .event_detail .event_continuation03 .schedule_doubule section a:hover span:after {
                color: #fff !important; }
          .event_detail .event_continuation03 .schedule_doubule section a span {
            font-size: 1.5rem; }
            .event_detail .event_continuation03 .schedule_doubule section a span:after {
              content: 'r';
              font-family: 'icon';
              margin: 0 0 0 8px; }
        .event_detail .event_continuation03 .schedule_doubule section:first-child {
          float: left;
          border-top: solid 3px #690; }
          .event_detail .event_continuation03 .schedule_doubule section:first-child aside dl dd p span {
            color: #690; }
          .event_detail .event_continuation03 .schedule_doubule section:first-child a {
            background: #690; }
        .event_detail .event_continuation03 .schedule_doubule section:last-child {
          float: right;
          border-top: solid 3px #369; }
          .event_detail .event_continuation03 .schedule_doubule section:last-child aside dl dd p span {
            color: #369; }
          .event_detail .event_continuation03 .schedule_doubule section:last-child a {
            background: #369; }
    .event_detail .event_continuation03 .contact {
      width: 480px;
      text-align: center;
      margin: 70px auto 0; }
      .event_detail .event_continuation03 .contact dt {
        font-size: 2rem; }
      .event_detail .event_continuation03 .contact dd {
        background: #f1f1f1;
        font-size: 1.3rem;
        line-height: 2;
        margin: 15px 0 0;
        border-top: solid 1px #dedede;
        border-bottom: solid 1px #dedede;
        padding: 0 0 20px; }
        .event_detail .event_continuation03 .contact dd p {
          margin: 20px 0 0; }
  .event_detail nav {
    border-top: solid 1px #dedede;
    border-bottom: solid 1px #dedede;
    width: 980px;
    padding: 25px 0;
    margin: 80px auto 0; }
    .event_detail nav ul {
      *zoom: 1; }
      .event_detail nav ul::after {
        content: '';
        display: table;
        clear: both; }
      .event_detail nav ul li {
        float: left;
        width: 160px;
        margin: 15px 0 15px 100px; }
        .event_detail nav ul li:nth-child(4n + 1) {
          margin: 15px 0 15px 20px; }
        .event_detail nav ul li a {
          display: block;
          color: #000;
          font-size: 1.5rem;
          position: relative; }
          .event_detail nav ul li a:after {
            content: 'r';
            font-family: 'icon';
            position: absolute;
            right: 0; }
  .event_detail aside {
    text-align: center;
    margin: 40px 0 0; }
    .event_detail aside a {
      display: inline-block;
      color: #000;
      text-decoration: none;
      width: 340px;
      line-height: 60px;
      background: #fff;
      border: solid 1px #ccc;
      margin: 0 5px; }
      .event_detail aside a:hover {
        color: #fff !important;
        background: #e05d45 !important; }
        .event_detail aside a:hover span {
          color: #fff !important; }
          .event_detail aside a:hover span:after {
            color: #fff !important; }
      .event_detail aside a span {
        font-size: 1.5rem; }
        .event_detail aside a span:after {
          content: 'r';
          font-family: 'icon';
          margin: 0 0 0 8px; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　寺子屋青年の部参加お申込

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.terakoya_form form table {
  width: 760px;
  margin: 20px auto 0;
  font-size: 1.5rem; }
  .terakoya_form form table input[type=text], .terakoya_form form table input[type=tel], .terakoya_form form table input[type=email] {
    width: 485px;
    padding: 20px; }
  .terakoya_form form table input[type=date] {
    padding: 20px; }
  .terakoya_form form table textarea {
    width: 485px;
    height: 120px;
    padding: 20px; }
  .terakoya_form form table select[name=con_gyouji] {
    width: 525px; }
  .terakoya_form form table input[name=guardian_name], .terakoya_form form table input[name=guardian_tel] {
    width: 385px; }
  .terakoya_form form table li {
    margin: 10px 0; }
  .terakoya_form form table aside {
    padding: 10px 0;
    border-bottom: solid 1px #999;
    margin: 20px 0 0; }
.terakoya_form form p {
  font-size: 1.5rem;
  text-align: center;
  line-height: 1.7;
  margin: 50px 0 0; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　お写経

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.osyakyo .underlayer_visual {
  background: url(../images/osyakyo/visual.jpg) center no-repeat;
  background-size: cover; }
.osyakyo h3 {
  font-size: 3.2rem;
  text-align: center;
  margin: 110px 0 0; }
.osyakyo .content01 {
  width: 1000px;
  margin: 70px auto 0; }
  .osyakyo .content01 strong {
    display: block;
    font-size: 1.8rem;
    line-height: 2;
    text-align: center; }
  .osyakyo .content01 p {
    font-size: 1.5rem;
    line-height: 2;
    margin: 50px 125px 0; }
  .osyakyo .content01 figure {
    text-align: center;
    margin: 40px 125px 0; }
    .osyakyo .content01 figure figcaption {
      color: #666;
      font-size: 1.3rem;
      line-height: 2;
      margin: 10px 0 0; }
  .osyakyo .content01 aside {
    font-size: 1.5rem;
    text-align: center;
    line-height: 2;
    margin: 50px 0 0; }
  .osyakyo .content01 section {
    text-align: center;
    margin: 100px 0 0; }
    .osyakyo .content01 section dl {
      display: inline-block;
      width: 475px;
      margin: 0 10px; }
      .osyakyo .content01 section dl dt {
        font-size: 1.8rem; }
      .osyakyo .content01 section dl dd {
        background: #f1f1f1;
        font-size: 1.3rem;
        line-height: 1.7;
        text-align: left;
        border-top: solid 1px #dedede;
        border-bottom: solid 1px #dedede;
        margin: 20px 0 0;
        padding: 50px 20px; }
  .osyakyo .content01 ul {
    font-size: 1.5rem;
    line-height: 1.7;
    list-style: disc;
    margin: 70px 125px 0; }
  .osyakyo .content01 table {
    width: 650px;
    margin: 40px auto 0;
    font-size: 1.3rem;
    line-height: 1.7; }
    .osyakyo .content01 table th, .osyakyo .content01 table td {
      text-align: center;
      padding: 20px 0;
      border: solid 1px #dedede; }
    .osyakyo .content01 table th {
      background: #f1f1f1;
      width: 50%; }
.osyakyo .content02 {
  width: 1000px;
  margin: 70px auto 0; }
  .osyakyo .content02 strong {
    display: block;
    font-size: 2.1rem;
    line-height: 2;
    text-align: center; }
  .osyakyo .content02 ul {
    *zoom: 1;
    width: 880px;
    margin: 0 auto; }
    .osyakyo .content02 ul::after {
      content: '';
      display: table;
      clear: both; }
    .osyakyo .content02 ul li figure {
      display: flex;
      flex-flow: row-reverse;
      align-items: center; }
      .osyakyo .content02 ul li figure figcaption {
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        font-size: 1.8rem;
        margin: 0 10px 0 0; }
    .osyakyo .content02 ul li:first-child {
      float: left; }
    .osyakyo .content02 ul li:last-child {
      float: right; }
  .osyakyo .content02 > figure {
    display: flex;
    flex-flow: row-reverse;
    width: 760px;
    margin: 60px auto 0; }
    .osyakyo .content02 > figure figcaption {
      width: 450px;
      font-size: 1.5rem;
      line-height: 2;
      margin: 0 30px 0 0; }
  .osyakyo .content02 p {
    font-size: 1.5rem;
    line-height: 2;
    margin: 50px 125px 0; }
.osyakyo .content03 {
  width: 1000px;
  margin: 70px auto 0; }
  .osyakyo .content03 strong {
    display: block;
    font-size: 2.1rem;
    line-height: 2;
    text-align: center; }
  .osyakyo .content03 ul {
    *zoom: 1;
    margin: 0 auto; }
    .osyakyo .content03 ul::after {
      content: '';
      display: table;
      clear: both; }
    .osyakyo .content03 ul li {
      float: left;
      width: 180px;
      margin: 50px 10px 0; }
      .osyakyo .content03 ul li figure figcaption dl {
        margin: 25px 0 0; }
        .osyakyo .content03 ul li figure figcaption dl dt {
          font-size: 1.5rem;
          text-align: center; }
        .osyakyo .content03 ul li figure figcaption dl dd {
          font-size: 1.3rem;
          line-height: 2;
          margin: 20px 0 0; }
  .osyakyo .content03 p {
    font-size: 1.5rem;
    line-height: 2;
    margin: 50px 125px 0; }
.osyakyo .go_form {
  display: block;
  color: #fff;
  text-decoration: none;
  text-align: center;
  width: 475px;
  line-height: 60px;
  background: #e05d45;
  border: solid 1px #ccc;
  margin: 90px auto 0; }
  .osyakyo .go_form:hover {
    color: #e05d45 !important;
    background: #fff !important; }
    .osyakyo .go_form:hover span {
      color: #e05d45 !important; }
      .osyakyo .go_form:hover span:after {
        color: #e05d45 !important; }
  .osyakyo .go_form span {
    font-size: 1.5rem; }
    .osyakyo .go_form span:after {
      content: 'r';
      font-family: 'icon';
      margin: 0 0 0 8px; }
.osyakyo nav {
  margin: 100px 0 0;
  padding: 60px 0 0;
  border-top: solid 1px #ccc; }
  .osyakyo nav ul {
    *zoom: 1;
    width: 960px;
    margin: 0 auto; }
    .osyakyo nav ul::after {
      content: '';
      display: table;
      clear: both; }
    .osyakyo nav ul li {
      float: left;
      width: 450px;
      margin: 0 15px; }
      .osyakyo nav ul li figure figcaption {
        font-size: 1.3rem;
        line-height: 2;
        margin: 10px 0 0; }
      .osyakyo nav ul li a {
        display: block;
        color: #000;
        text-decoration: none;
        text-align: center;
        width: 400px;
        line-height: 60px;
        background: #fff;
        border: solid 1px #ccc;
        margin: 20px auto 0; }
        .osyakyo nav ul li a:hover {
          color: #fff !important;
          background: #e05d45 !important; }
          .osyakyo nav ul li a:hover span {
            color: #fff !important; }
            .osyakyo nav ul li a:hover span:after {
              color: #fff !important; }
        .osyakyo nav ul li a span {
          font-size: 1.5rem; }
          .osyakyo nav ul li a span:after {
            content: 'r';
            font-family: 'icon';
            margin: 0 0 0 8px; }

.osyakyo.home .underlayer_visual {
  background: url(../images/osyakyo/home/visual.jpg) center no-repeat;
  background-size: cover; }
.osyakyo.home .content01 ul {
  margin: 70px 280px 0; }

.osyakyo.toto .underlayer_visual {
  background: #293f68 url(../images/osyakyo/toto/visual.jpg) calc(50% + 200px) bottom no-repeat;
  height: 680px; }
  .osyakyo.toto .underlayer_visual dl {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    color: #fff;
    position: absolute;
    left: 50%;
    transform: translate(-50%, 0);
    bottom: 130px; }
    .osyakyo.toto .underlayer_visual dl dt {
      font-size: 2.9rem; }
    .osyakyo.toto .underlayer_visual dl dd {
      font-size: 3.9rem;
      margin: 150px 30px 0 0; }
.osyakyo.toto .content01 ul {
  margin: 30px 125px 0; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　「ご自宅お写経」お申込

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.osyakyo_form .osyakyo_form_text {
  font-size: 1.5rem;
  line-height: 1.7;
  width: 780px;
  margin: 50px auto 0; }
.osyakyo_form form h3 {
  font-size: 2.8rem;
  text-align: center;
  margin: 70px 0 0; }
.osyakyo_form form h4 {
  font-size: 1.8rem;
  text-align: center;
  margin: 60px 0 0; }
.osyakyo_form form table {
  width: 760px;
  margin: 20px auto 0;
  font-size: 1.5rem; }
  .osyakyo_form form table input[type=text], .osyakyo_form form table input[type=tel], .osyakyo_form form table input[type=email] {
    width: 485px;
    padding: 20px; }
.osyakyo_form form .normal {
  text-align: center;
  margin: 50px 0 0; }
  .osyakyo_form form .normal li {
    display: inline-block;
    border: solid 1px #ccc;
    padding: 25px;
    margin: 0 18px; }
    .osyakyo_form form .normal li dl {
      text-align: center; }
      .osyakyo_form form .normal li dl dt {
        font-size: 2rem; }
      .osyakyo_form form .normal li dl dd {
        font-size: 1.5rem;
        margin: 15px 0 0; }
    .osyakyo_form form .normal li section {
      margin: 30px 0 0;
      position: relative; }
      .osyakyo_form form .normal li section:after {
        content: '円';
        font-size: 1.5rem;
        position: absolute;
        bottom: 10px;
        right: 0; }
      .osyakyo_form form .normal li section input[type=text] {
        font-size: 2rem;
        text-align: right;
        width: 140px;
        padding: 5px 20px 5px 0;
        margin: 0 0 0 10px;
        border: none;
        border-bottom: solid 1px #999;
        border-radius: 0;
        vertical-align: bottom; }
      .osyakyo_form form .normal li section select {
        background: #f1f1f1;
        border: solid 1px #ccc;
        border-radius: 5px;
        font-size: 1.5rem; }
    .osyakyo_form form .normal li p {
      font-size: 2rem;
      border-top: solid 1px #dedede;
      padding: 10px 0 0;
      margin: 10px 0 0; }
.osyakyo_form form .special {
  width: 1050px;
  text-align: center;
  margin: 50px auto 0; }
  .osyakyo_form form .special li {
    display: inline-block;
    width: 180px;
    margin: 0 8px 90px; }
    .osyakyo_form form .special li figure figcaption {
      margin: 15px 0 0; }
      .osyakyo_form form .special li figure figcaption dl {
        text-align: center; }
        .osyakyo_form form .special li figure figcaption dl dt {
          font-size: 1.5rem; }
        .osyakyo_form form .special li figure figcaption dl dd {
          font-size: 1.3rem;
          margin: 10px 0 0; }
    .osyakyo_form form .special li section {
      margin: 20px 0 0;
      position: relative; }
      .osyakyo_form form .special li section:after {
        content: '円';
        font-size: 1.5rem;
        position: absolute;
        bottom: 10px;
        right: 0; }
      .osyakyo_form form .special li section input[type=text] {
        font-size: 2rem;
        text-align: right;
        width: 160px;
        padding: 5px 20px 5px 0;
        margin: 10px 0 0;
        border: none;
        border-bottom: solid 1px #999;
        border-radius: 0; }
      .osyakyo_form form .special li section select {
        background: #f1f1f1;
        border: solid 1px #ccc;
        border-radius: 5px;
        font-size: 1.5rem; }
    .osyakyo_form form .special li p {
      font-size: 2rem;
      border-top: solid 1px #dedede;
      padding: 10px 0 0;
      margin: 10px 0 0; }
.osyakyo_form form p {
  font-size: 1.5rem;
  text-align: center;
  line-height: 1.7;
  margin: 10px 0 0; }
.osyakyo_form form aside {
  background: #f1f1f1;
  font-size: 1.5rem;
  text-align: center;
  margin: 30px 0 0;
  padding: 30px 0 40px; }
  .osyakyo_form form aside dl {
    *zoom: 1;
    display: inline-block;
    margin: 30px 0 0; }
    .osyakyo_form form aside dl::after {
      content: '';
      display: table;
      clear: both; }
    .osyakyo_form form aside dl dt {
      float: left;
      font-size: 2rem;
      margin: .8em 0 0; }
    .osyakyo_form form aside dl dd {
      float: left;
      margin: 0 0 0 20px;
      position: relative; }
      .osyakyo_form form aside dl dd:after {
        content: '円';
        font-size: 1.5rem;
        position: absolute;
        bottom: 10px;
        right: 0; }
      .osyakyo_form form aside dl dd input[type=text] {
        font-size: 2.5rem;
        text-align: right;
        width: 160px;
        padding: 0 20px 3px 0;
        background: transparent;
        border: none;
        border-bottom: solid 1px #999;
        border-radius: 0; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　拝観情報

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.forvisitors .underlayer_visual {
  background: url(../images/forvisitors/visual.jpg) center no-repeat;
  background-size: cover; }
.forvisitors h3 {
  font-size: 3.2rem;
  text-align: center;
  margin: 70px 0 0; }
.forvisitors h4 {
  font-size: 2.82rem;
  text-align: center;
  margin: 70px 0 0; }
.forvisitors nav {
  background: #f1f1f1;
  margin: 60px 0 0; }
  .forvisitors nav ul {
    text-align: center;
    padding: 30px 0; }
    .forvisitors nav ul li {
      display: inline-block;
      font-size: 1.6rem;
      margin: 0 40px; }
      .forvisitors nav ul li a {
        display: block;
        color: #000; }
        .forvisitors nav ul li a:after {
          content: 'b';
          display: block;
          font-family: 'icon';
          font-size: 1rem;
          margin: 10px 0 0; }
.forvisitors #price {
  border-bottom: solid 1px #dedede;
  padding: 0 0 60px; }
  .forvisitors #price p {
    font-size: 1.5rem;
    line-height: 2;
    text-align: center;
    margin: 50px 0 0; }
  .forvisitors #price .price01 {
    width: 1017px;
    margin: 80px auto 0; }
    .forvisitors #price .price01 ul {
      *zoom: 1;
	  margin:0 auto; }
      .forvisitors #price .price01 ul::after {
        content: '';
        display: table;
        clear: both; }
      .forvisitors #price .price01 ul li {
        float: left;
        width: 491px;
        margin: 0 8px; }
        .forvisitors #price .price01 ul li dl {
          margin: 0 10px; }
          .forvisitors #price .price01 ul li dl dt {
            font-size: 1.7rem;
            text-align: center;
			line-height:1.5em; }
          .forvisitors #price .price01 ul li dl dd {
            font-size: 1.2rem;
			text-align:center;
            line-height: 1.7;
            margin: 20px 0 0; }
        .forvisitors #price .price01 ul li table {
          width: 100%;
          margin: 10px 0 0;
          font-size: 1.3rem; }
          .forvisitors #price .price01 ul li table tr:nth-child(3n + 1) th {
            background: #f1b2a8; }
          .forvisitors #price .price01 ul li table tr:nth-child(3n + 2) th {
            background: #f6cec7; }
          .forvisitors #price .price01 ul li table tr:nth-child(3n + 3) th {
            background: #fbe8e5; }
          .forvisitors #price .price01 ul li table th, .forvisitors #price .price01 ul li table td {
            text-align: center;
            padding: 25px 0;
            border: solid 1px #dedede; }
          .forvisitors #price .price01 ul li table th {
            width: 158px; }
          .forvisitors #price .price01 ul li table small {
            font-size: 1.1rem; }
    .forvisitors #price .price01 aside {
      font-size: 1.2rem;
      text-align: center;
      margin: 20px 0 0; }
  .forvisitors #price .price02 {
    width: 1022px;
    margin: 80px auto 0; }
    .forvisitors #price .price02 ul {
      *zoom: 1; }
      .forvisitors #price .price02 ul::after {
        content: '';
        display: table;
        clear: both; }
      .forvisitors #price .price02 ul li {
        float: left;
        width: 491px;
        margin: 0 10px; }
        .forvisitors #price .price02 ul li strong {
          display: block;
          font-size: 1.7rem;
          text-align: center; }
        .forvisitors #price .price02 ul li table {
          width: 100%;
          margin: 10px 0 0;
          font-size: 1.3rem;
          line-height: 15px; }
          .forvisitors #price .price02 ul li table th, .forvisitors #price .price02 ul li table td {
            text-align: center;
            padding: 20px;
            border: solid 1px #dedede; }
          .forvisitors #price .price02 ul li table th {
            background: #f1f1f1; }
        .forvisitors #price .price02 ul li em {
          display: block;
          font-size: 1.3rem;
          line-height: 15px;
          text-align: center;
          padding: 48px 0;
          border: solid 1px #dedede;
          margin: 10px 0 0; }
  .forvisitors #price .price03 {
    *zoom: 1;
    width: 1000px;
    margin: 110px auto 0; }
    .forvisitors #price .price03::after {
      content: '';
      display: table;
      clear: both; }
    .forvisitors #price .price03 strong {
      display: block;
      font-size: 1.7rem;
      text-align: center; }
    .forvisitors #price .price03 article {
      float: left;
      width: 500px;
      margin: 30px 0 0; }
      .forvisitors #price .price03 article table {
        width: 100%;
        font-size: 1.3rem;
        line-height: 1.7; }
        .forvisitors #price .price03 article table th, .forvisitors #price .price03 article table td {
          text-align: center;
          padding: 20px;
          border: solid 1px #dedede; }
        .forvisitors #price .price03 article table th {
          background: #f1f1f1; }
      .forvisitors #price .price03 article aside {
        font-size: 1.1rem;
        text-align: center;
        margin: 20px 0 0; }
    .forvisitors #price .price03 ul {
      float: right;
      width: 450px;
      list-style: disc;
      font-size: 1.3rem;
      line-height: 1.7; }
      .forvisitors #price .price03 ul li {
        margin: 30px 0 0; }
  .forvisitors #price .price04 {
    text-align: center;
    margin: 80px auto 0; }
    .forvisitors #price .price04 strong {
      display: block;
      font-size: 1.7rem;
      text-align: center; }
    .forvisitors #price .price04 article {
      width: 650px;
      font-size: 1.5rem;
      text-align: center;
      padding: 30px 0;
      border: solid 1px #dedede;
      margin: 15px auto 0; }
    .forvisitors #price .price04 aside {
      font-size: 1.3rem;
      text-align: center;
      margin: 20px 0 0; }
.forvisitors #shcedule {
  border-bottom: solid 1px #dedede;
  padding: 0 0 60px; }
  .forvisitors #shcedule p {
    width: 650px;
    font-size: 1.5rem;
    line-height: 2;
    margin: 50px auto 0; }
  .forvisitors #shcedule table {
    width: 650px;
    font-size: 1.5rem;
    line-height: 1.7;
    margin: 10px auto 0; }
    .forvisitors #shcedule table th, .forvisitors #shcedule table td {
      text-align: center;
      padding: 20px 0;
      border: solid 1px #dedede;
      vertical-align: middle; }
    .forvisitors #shcedule table th {
      background: #f1f1f1;
      width: 33.3%; }
.forvisitors #parking {
  border-bottom: solid 1px #dedede;
  padding: 0 0 60px; }
  .forvisitors #parking table {
    width: 650px;
    font-size: 1.5rem;
    line-height: 1.7;
    margin: 50px auto 0; }
    .forvisitors #parking table th, .forvisitors #parking table td {
      text-align: center;
      padding: 20px 0;
      border: solid 1px #dedede;
      vertical-align: middle; }
    .forvisitors #parking table th {
      background: #f1f1f1;
      width: 50%; }
  .forvisitors #parking aside {
    font-size: 1.5rem;
    text-align: center;
    line-height: 2;
    margin: 20px 0 0; }
.forvisitors #excursion > p {
  width: 800px;
  font-size: 1.5rem;
  line-height: 2;
  margin: 50px auto 0; }
.forvisitors #excursion sectoin {
  display: flex;
  width: 1040px;
  margin: 60px auto 0; }
  .forvisitors #excursion sectoin dl {
    width: 480px;
    margin: 0 20px; }
    .forvisitors #excursion sectoin dl dt {
      font-size: 1.8rem;
      text-align: center; }
    .forvisitors #excursion sectoin dl dd {
      background: #f1f1f1;
      border-top: solid 1px #dedede;
      border-bottom: solid 1px #dedede;
      padding: 0 20px 20px;
      margin: 20px 0 0;
      height: calc(100% - 55px); }
      .forvisitors #excursion sectoin dl dd p {
        font-size: 1.3rem;
        line-height: 1.7;
        margin: 20px 0 0; }
.forvisitors #excursion a {
  display: block;
  color: #000;
  text-decoration: none;
  text-align: center;
  width: 270px;
  line-height: 50px;
  background: #fff;
  border: solid 1px #ccc;
  margin: 20px auto 0; }
  .forvisitors #excursion a:hover {
    color: #fff !important;
    background: #e05d45 !important; }
    .forvisitors #excursion a:hover span {
      color: #fff !important; }
      .forvisitors #excursion a:hover span:after {
        color: #fff !important; }
  .forvisitors #excursion a span {
    font-size: 1.3rem; }
    .forvisitors #excursion a span:after {
      content: 'r';
      font-family: 'icon';
      margin: 0 0 0 8px; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　法話会一覧

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.houwakai form {
  text-align: center;
  margin: 50px 0 0; }
  .houwakai form p {
    font-size: 1.5rem; }
  .houwakai form select {
    font-size: 1.8rem;
    margin: 30px 0 0; }
.houwakai ul {
  width: 880px;
  margin: 80px auto 0; }
  .houwakai ul li {
    margin: 45px 0 0; }
    .houwakai ul li section {
      display: flex;
      align-items: center; }
      .houwakai ul li section dl {
        width: 690px; }
        .houwakai ul li section dl dt {
          font-size: 1.8rem;
          font-weight: bold; }
        .houwakai ul li section dl dd {
          font-size: 1.5rem;
          margin: 10px 0 0; }
      .houwakai ul li section a {
        display: block;
        color: #000;
        text-decoration: none;
        text-align: center;
        width: 163px;
        line-height: 60px;
        background: #fff;
        border: solid 1px #ccc;
        margin: 0 0 0 25px; }
        .houwakai ul li section a:hover {
          color: #fff !important;
          background: #e05d45 !important; }
          .houwakai ul li section a:hover span {
            color: #fff !important; }
            .houwakai ul li section a:hover span:after {
              color: #fff !important; }
        .houwakai ul li section a span {
          font-size: 1.5rem; }
          .houwakai ul li section a span:after {
            content: 'r';
            font-family: 'icon';
            margin: 0 0 0 8px; }
    .houwakai ul li article {
      background: #f1f1f1;
      margin: 47px 0 0;
      padding: 30px 40px 60px;
      border-bottom: solid 3px #b7b7b7;
      position: relative;
      transition: all .5s; }
      .houwakai ul li article p {
        display: none;
        font-size: 1.5rem;
        line-height: 1.9; }
      .houwakai ul li article a {
        color: #000;
        text-decoration: none;
        text-align: center;
        width: 118px;
        line-height: 35px;
        background: #fff;
        border: solid 1px #ccc;
        position: absolute;
        left: 0;
        bottom: 0; }
        .houwakai ul li article a:hover {
          color: #fff !important;
          background: #e05d45 !important; }
          .houwakai ul li article a:hover span {
            color: #fff !important; }
            .houwakai ul li article a:hover span:before {
              color: #fff !important; }
            .houwakai ul li article a:hover span:after {
              color: #fff !important; }
        .houwakai ul li article a span {
          font-size: 1.3rem; }
          .houwakai ul li article a span:before {
            content: 'b';
            font-family: 'icon';
            margin: 0 8px 0 0; }
          .houwakai ul li article a span:after {
            content: '詳細'; }
    .houwakai ul li .open {
      margin: 10px 0 0; }
      .houwakai ul li .open a span:before {
        content: 'C'; }
      .houwakai ul li .open a span:after {
        content: '閉じる'; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　法話会参加お申込

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.houwakai_form dl {
  width: 870px;
  margin: 60px auto 0; }
  .houwakai_form dl dt {
    line-height: 2; }
    .houwakai_form dl dt strong {
      display: block;
      font-size: 1.8rem;
      font-weight: bold; }
    .houwakai_form dl dt small {
      display: block;
      font-size: 1.5rem; }
  .houwakai_form dl dd {
    background: #f1f1f1;
    font-size: 1.5rem;
    line-height: 1.9;
    padding: 25px 30px;
    margin: 10px 0 0; }
    .houwakai_form dl dd span {
      text-decoration: underline; }
.houwakai_form form table {
  width: 760px;
  margin: 40px auto 0;
  font-size: 1.5rem; }
  .houwakai_form form table input[type=text], .houwakai_form form table input[type=tel], .houwakai_form form table input[type=email] {
    width: 485px;
    padding: 20px; }
  .houwakai_form form table input[type=date] {
    padding: 20px; }
  .houwakai_form form table textarea {
    width: 485px;
    height: 120px;
    padding: 20px; }
.houwakai_form form p {
  font-size: 1.5rem;
  text-align: center;
  line-height: 1.7;
  margin: 50px 0 0; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　青年衆

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.seinensyu .underlayer_visual {
  background: url(../images/seinensyu/visual.jpg) center no-repeat;
  height: 700px;
  background-size: ;
  margin-top:80px; }
.seinensyu strong {
  display: block;
  font-size: 3.2rem;
  text-align: center;
  margin: 100px 0 0; }
.seinensyu small {
  display: block;
  font-size: 2.8rem;
  text-align: center;
  margin: 10px 0 0; }
.seinensyu article, .seinensyu ul {
  width: 800px;
  margin: 0 auto; }
  .seinensyu article p, .seinensyu ul p {
    font-size: 1.5rem;
    line-height: 2;
    margin: 30px 0 0; }
  .seinensyu article figure, .seinensyu ul figure {
    margin: 30px 0 0;
    text-align: center; }
.seinensyu ul li figure {
  display: flex; }
  .seinensyu ul li figure figcaption {
    font-size: 1.5rem;
    line-height: 2;
	text-align:left;
    margin: 0 0 0 20px; }
.seinensyu ul li:nth-child(odd) figure {
  flex-flow: row-reverse; }
  .seinensyu ul li:nth-child(odd) figure figcaption {
    margin: 0 20px 0 0; }
.seinensyu .head {
  background: url(../images/seinensyu/back_gray.png) center no-repeat;
  padding: 0 0 100px; }
  .seinensyu .head strong {
    padding: 100px 0 0;
    margin: 0; }
.seinensyu .head + article strong {
  margin: 0; }
.seinensyu .facebook {
  background: url(../images/seinensyu/back_blue.png) center no-repeat;
  width: 800px;
  margin: 0 auto;
  padding: 200px 0;
  text-align: center; }
  .seinensyu .facebook p {
    font-size: 2.3rem; }
  .seinensyu .facebook a {
    display: inline-block;
    color: #fff;
    text-decoration: none;
    text-align: center;
    line-height: 60px;
    background: #103556;
    border: solid 1px #ccc;
    padding: 0 50px;
    margin: 40px 0 0; }
    .seinensyu .facebook a:hover {
      color: #fff !important;
      background: #e05d45 !important; }
      .seinensyu .facebook a:hover span {
        color: #fff !important; }
        .seinensyu .facebook a:hover span:after {
          color: #fff !important; }
    .seinensyu .facebook a span {
      font-size: 1.5rem; }
      .seinensyu .facebook a span:after {
        content: 'r';
        font-family: 'icon';
        margin: 0 0 0 8px; }
.seinensyu .join {
  width: 800px;
  margin: 0 auto; }
  .seinensyu .join strong {
    margin: 0; }
  .seinensyu .join ul {
    *zoom: 1; }
    .seinensyu .join ul::after {
      content: '';
      display: table;
      clear: both; }
    .seinensyu .join ul li {
      width: 380px;
      margin: 70px 0 0; }
      .seinensyu .join ul li em {
        display: block;
        color: #369;
        font-size: 2.8rem;
        line-height: 50px;
        text-align: center;
        position: relative; }
        .seinensyu .join ul li em:before, .seinensyu .join ul li em:after {
          content: '';
          background: #369;
          width: 25px;
          height: 1px;
          position: absolute;
          top: 50%;
          transform: translate(0, -50%); }
        .seinensyu .join ul li em:before {
          left: 0; }
        .seinensyu .join ul li em:after {
          right: 0; }
        .seinensyu .join ul li em img {
          height: 100%; }
      .seinensyu .join ul li p {
        font-size: 1.54rem;
        line-height: 1.7;
        margin: 40px 0 0; }
    .seinensyu .join ul .internet {
      float: left; }
      .seinensyu .join ul .internet a {
        display: block;
        color: #000;
        text-decoration: none;
        text-align: center;
        line-height: 60px;
        background: #fff;
        border: solid 1px #ccc;
        margin: 30px 30px 0; }
        .seinensyu .join ul .internet a:hover {
          color: #fff !important;
          background: #e05d45 !important; }
          .seinensyu .join ul .internet a:hover span {
            color: #fff !important; }
            .seinensyu .join ul .internet a:hover span:after {
              color: #fff !important; }
        .seinensyu .join ul .internet a span {
          font-size: 1.5rem; }
          .seinensyu .join ul .internet a span:after {
            content: 'r';
            font-family: 'icon';
            margin: 0 0 0 8px; }
    .seinensyu .join ul .letter {
      float: right; }
      .seinensyu .join ul .letter dl {
        font-size: 1.5rem;
        text-align: center;
        line-height: 1.7;
        margin: 30px 0 0; }
        .seinensyu .join ul .letter dl dd {
          background: #f1f1f1;
          border-top: solid 1px #dedede;
          border-bottom: solid 1px #dedede;
          margin: 20px 0 0;
          padding: 20px; }
          .seinensyu .join ul .letter dl dd span {
            display: inline-block;
            margin: 0 10px 0 0; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　青年衆参加お申込

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.seinensyu_form .underlayer_visual {
  background-color: #f1f1f1;
  background-image: url(../images/seinensyu/form/visual.png), url(../images/common/visual_dummy.png);
  background-position: center, center;
  background-repeat: no-repeat, repeat; }
.seinensyu_form form table {
  width: 760px;
  margin: 20px auto 0;
  font-size: 1.5rem; }
  .seinensyu_form form table input[type=text], .seinensyu_form form table input[type=tel], .seinensyu_form form table input[type=email] {
    width: 485px;
    padding: 20px; }
  .seinensyu_form form table input[type=date] {
    padding: 20px; }
  .seinensyu_form form table input[name=time01], .seinensyu_form form table input[name=time02] {
    width: 20px;
    margin: 0 5px 0 0; }
  .seinensyu_form form table textarea {
    width: 485px;
    height: 120px;
    padding: 20px; }
  .seinensyu_form form table select[name=con_gyouji] {
    width: 525px; }
  .seinensyu_form form table input[name=guardian_name], .seinensyu_form form table input[name=guardian_tel] {
    width: 385px; }
  .seinensyu_form form table li {
    margin: 10px 0; }
  .seinensyu_form form table aside {
    width: 527px;
    padding: 10px 0;
    border-bottom: solid 1px #999;
    margin: 20px 0 0; }
.seinensyu_form form p {
  font-size: 1.5rem;
  text-align: center;
  line-height: 1.7;
  margin: 50px 0 0; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　所在地・交通

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.access .underlayer_visual {
  background: url(../images/access/visual.jpg) center no-repeat;
  background-size: cover; }
.access h3 {
  font-size: 3.2rem;
  text-align: center;
  margin: 70px 0 0; }
.access article {
  line-height: 1.7;
  text-align: center;
  padding: 0 0 80px;
  border-bottom: solid 1px #dedede;
  margin: 100px 0 0; }
  .access article iframe {
    width: 100%;
    height: 380px;
    margin: 40px 0 0;
    border: none; }
  .access article dl {
    width: 650px;
    margin: 60px auto 0; }
    .access article dl dt {
      font-size: 2.8rem; }
      .access article dl dt small {
        display: block;
        font-size: 1.5rem;
        margin: 30px 0 0; }
    .access article dl dd {
      font-size: 1.5rem;
      margin: 30px 0 0; }
      .access article dl dd p {
        background: #f1f1f1;
        border-top: solid 1px #dedede;
        border-bottom: solid 1px #dedede;
        padding: 30px 20px; }
        .access article dl dd p small {
          display: block;
          font-size: 1.3rem;
          margin: 40px 0 0; }
      .access article dl dd a {
        display: block;
        color: #000;
        text-decoration: none;
        text-align: center;
        width: 340px;
        line-height: 60px;
        background: #fff;
        border: solid 1px #ccc;
        margin: 50px auto 0; }
        .access article dl dd a:hover {
          color: #fff !important;
          background: #e05d45 !important; }
          .access article dl dd a:hover span {
            color: #fff !important; }
            .access article dl dd a:hover span:after {
              color: #fff !important; }
        .access article dl dd a span {
          font-size: 1.5rem; }
          .access article dl dd a span:after {
            content: 'r';
            font-family: 'icon';
            margin: 0 0 0 8px; }
      .access article dl dd a.textlink {
        display: block;
        color: #000;
        text-decoration:underline;
        text-align: center;
        width: 500px;
        background: #fff;
        border: none;
        margin: 10px auto 0; }
      .access article dl dd a.textlink:hover {
	  	background:#fff !important;
		color:#999999f !important;
	  }
      .access article dl dd > span {
        display: inline-block;
        margin: 0 10px; }
  .access article section {
    display: flex;
    width: 1020px;
    margin: 50px auto 0; }
    .access article section dl {
      width: 480px;
      margin: 0 15px; }
      .access article section dl dd {
        *zoom: 1; }
        .access article section dl dd::after {
          content: '';
          display: table;
          clear: both; }
        .access article section dl dd p {
          display: table-cell;
          width: 460px;
          vertical-align: middle; }
      .access article section dl:first-child dd a {
        float: right; }
      .access article section dl:last-child dd a {
        float: left; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　個人情報保護方針

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.privacy {
  width: 800px;
  margin: 240px auto 0; }
  .privacy h3 {
    font-size: 3.2rem;
    text-align: center; }
  .privacy p {
    font-size: 1.5rem;
    line-height: 2;
    margin: 180px 0 0; }
  .privacy dl {
    line-height: 2;
    margin: 100px 0 0; }
    .privacy dl dt {
      font-size: 1.8rem;
      border-bottom: solid 1px #999;
      padding: 5px 10px; }
    .privacy dl dd {
      font-size: 1.5rem;
      padding: 10px 20px 0 40px; }
  .privacy aside {
    font-size: 1.3rem;
    line-height: 2;
    text-align: right;
    margin: 140px 0 0; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　サイトマップ

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.sitemap {
  width: 800px;
  margin: 240px auto 0; }
  .sitemap h3 {
    font-size: 3.2rem;
    text-align: center; }
  .sitemap nav {
    *zoom: 1;
    margin: 60px 0 0; }
    .sitemap nav::after {
      content: '';
      display: table;
      clear: both; }
    .sitemap nav a {
      display: inline-block;
      color: #000; }
    .sitemap nav ul {
      border-bottom: solid 1px #dedede;
      padding: 20px 10px; }
      .sitemap nav ul li {
        padding: 10px 0; }
      .sitemap nav ul .level03 {
        font-size: 1.8rem; }
      .sitemap nav ul .level02 {
        font-size: 1.5rem;
        margin: 0 0 0 50px; }
      .sitemap nav ul .level01 {
        font-size: 1.3rem;
        margin: 0 0 0 90px; }
    .sitemap nav .home {
      font-size: 1.8rem;
      border-bottom: solid 1px #dedede;
      padding: 30px 10px; }
    .sitemap nav .left {
      float: left;
      width: 390px; }
    .sitemap nav .right {
      float: right;
      width: 390px; }

/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

　新着情報

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */
.news {
  margin: 240px 0 0; }
  .news h2 {
    font-size: 3.2rem;
    text-align: center; }
  .news nav {
    margin: 100px 0 0; }
    .news nav ul {
      text-align: center; }
      .news nav ul li {
        display: inline-block;
        margin: 0 5px; }
        .news nav ul li a {
          display: block;
          color: #000;
          font-size: 1.3rem;
          text-decoration: none;
          padding: 20px;
          border: solid 1px #ccc; }
          .news nav ul li a:hover {
            color: #fff !important;
            background: #333; }
        .news nav ul li .current {
          color: #fff;
          background: #333; }
  .news .list {
    width: 800px;
    margin: 100px auto 0; }
    .news .list ul li {
      display: flex;
      align-items: center;
      padding: 20px 0 15px;
      border-bottom: solid 1px #dedede; }
      .news .list ul li section {
        flex-grow: 1; }
        .news .list ul li section small {
          display: block;
          font-size: 1.3rem; }
        .news .list ul li section p {
          font-size: 1.5rem;
          line-height: 1.5;
          margin: 10px 0 0; }
      .news .list ul li a {
        display: block;
        color: #000;
        text-decoration: none;
        text-align: center;
        width: 158px;
        line-height: 60px;
        background: #fff;
        border: solid 1px #ccc; }
        .news .list ul li a:hover {
          color: #fff !important;
          background: #e05d45 !important; }
          .news .list ul li a:hover span {
            color: #fff !important; }
            .news .list ul li a:hover span:after {
              color: #fff !important; }
        .news .list ul li a span {
          font-size: 1.5rem; }
          .news .list ul li a span:after {
            content: 'r';
            font-family: 'icon';
            margin: 0 0 0 8px; }
  .news .detail {
    width: 800px;
    margin: 100px auto 0; }
    .news .detail section {
      padding: 0 0 10px;
      border-bottom: solid 1px #dedede; }
      .news .detail section small {
        display: block;
        font-size: 1.3rem; }
      .news .detail section p {
        font-size: 1.8rem;
        line-height: 1.5;
        margin: 10px 0 0; }
    .news .detail div {
      margin: 40px 0 0; }
      .news .detail div p {
        font-size: 1.5rem;
        line-height: 1.7;
        margin: 20px 0 0; }
      .news .detail div figure {
        text-align: center;
        margin: 20px 0 0; }
        .news .detail div figure img {
          max-width: 100%; }
        .news .detail div figure figcaption {
          color: #333;
          font-size: 1.3rem;
          margin: 15px 0 0; }
    .news .detail aside {
      border-top: solid 1px #dedede;
      margin: 50px 0 0;
      padding: 50px 0 0;
      text-align: center; }
      .news .detail aside a {
        display: inline-block;
        color: #000;
        text-decoration: none;
        text-align: center;
        width: 220px;
        line-height: 60px;
        background: #fff;
        border: solid 1px #ccc; }
        .news .detail aside a:hover {
          color: #fff !important;
          background: #e05d45 !important; }
          .news .detail aside a:hover span {
            color: #fff !important; }
            .news .detail aside a:hover span:after {
              color: #fff !important; }
        .news .detail aside a span {
          font-size: 1.5rem; }
          .news .detail aside a span:after {
            content: 'r';
            font-family: 'icon';
            margin: 0 0 0 8px; }
			
p.genjo_kokai{
	font-size:18px;
	}
.access a{
	color:#333333;
	text-decoration:underline;
	}
.access .font1{
      font-size: 1.5rem;}
	  
.forvisitors #price .kikan{
	font-size:15px;
}	  
  .forvisitors #price .price01-2 {
  border-top:1px solid #DEDEDE;
  border-bottom:1px solid #DEDEDE;
  padding:15px 0;
    width: 500px;
    margin: 80px auto 0; }
    .forvisitors #price .price01-2 ul {
      *zoom: 1;
	  margin:0 auto; }
      .forvisitors #price .price01-2 ul::after {
        content: '';
        display: table;
        clear: both; }
      .forvisitors #price .price01-2 ul li {
        float: left;
        width: 491px;
        margin: 0 8px; }
        .forvisitors #price .price01-2 ul li dl {
          margin: 0 10px; }
          .forvisitors #price .price01-2 ul li dl dt {
            font-size: 1.7rem;
            text-align: center;
			line-height:1.5em; }
          .forvisitors #price .price01-2 ul li dl dd {
            font-size: 1.2rem;
			text-align:center;
            line-height: 1.7;
            margin: 20px 0 0; }
        .forvisitors #price .price01-2 ul li table {
          width: 100%;
          margin: 10px 0 0;
          font-size: 1.3rem; }
          .forvisitors #price .price01-2 ul li table tr:nth-child(3n + 1) th {
            background: #f1b2a8; }
          .forvisitors #price .price01-2 ul li table tr:nth-child(3n + 2) th {
            background: #f6cec7; }
          .forvisitors #price .price01-2 ul li table tr:nth-child(3n + 3) th {
            background: #fbe8e5; }
          .forvisitors #price .price01-2 ul li table th, .forvisitors #price .price01-2 ul li table td {
            text-align: center;
            padding: 25px 0;
            border: solid 1px #dedede; }
          .forvisitors #price .price01-2 ul li table th {
            width: 158px; }
          .forvisitors #price .price01-2 ul li table small {
            font-size: 1.1rem; }
    .forvisitors #price .price01-2 aside {
      font-size: 1.2rem;
      text-align: center;
      margin: 20px 0 0; }