@charset "UTF-8";

@-webkit-keyframes show {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes show {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

a {
  text-decoration: none;
  color: #000;
  transition: all 0.3s;
}

a img {
  opacity: 1;
  transition: all 0.3s;
}

p {
  line-height: 1.6em;
}

ruby rt {
  font-size: 40%;
}

.pc {
  display: block;
}

.smp {
  display: none;
}

/*clearfix*/

.cf:before,
.cf:after {
  content: " ";
  display: table;
}

.cf:after {
  clear: both;
}

.cf {
  *zoom: 1;
}

/*　セクション　*/

.section_01 {
  margin: 30px 0;
}

.section_02 {
  margin: 40px 0 70px;
}

.small_section {
  margin-top: 10px;
  margin-bottom: 35px;
}

/* レイアウト */

.al_r {
  text-align: right;
}

.al_c {
  text-align: center;
}

.full {
  width: 100%;
}

.contents_center {
  max-width: 880px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

/* その他 */

.wakuYellow {
  padding: 15px;
  border: 1px solid #ffd087;
  border-radius: 10px;
  background: #fffef5;
}

/* CSS Document */

body {
  font-family: Meiryo, メイリオ, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, Ryumin Medium KL, "リュウミン M-KL", "ＭＳ Ｐゴシック", Verdana, Arial, sans-serif;
  -webkit-text-size-adjust: 100%;
  font-size: 0.9rem;
}

#contents {
  min-width: 960px;
  width: 100%;
  padding: 0 0 0 238px;
}

#top #contents {
  background: url(../img/top/bg_top_body.jpg);
  background-size: 373px;
}

.wrapper {
  z-index: 0;
  position: relative;
  margin: 0 auto;
  width: 100%;
}

.wrapper.moving {
  height: 100vh;
  overflow: hidden;
  position: fixed;
}

.wrapper.animation {
  top: 200px;
  -webkit-transform: translateY(-200px);
  transform: translateY(-200px);
  transition: -webkit-transform 1.5s;
  transition: transform 1.5s;
  transition: transform 1.5s, -webkit-transform 1.5s;
}

/*　下層共通　*/

.webfont {
  -webkit-transform: translateY(30px) !important;
  transform: translateY(30px) !important;
  transition: all .5s !important;
}

.wf-active .webfont {
  -webkit-transform: translateY(0) !important;
  transform: translateY(0) !important;
  opacity: 1 !important;
}

#loading {
  width: 100%;
  height: 100%;
  position: fixed;
  z-index: 1000;
  background: #fff;
}

.wf-active #loading.fadeout {
  height: 0;
  opacity: 0;
  overflow: hidden;
  transition: all 1s ease;
}

#loading img {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 300px;
}

.modal_main {
  display: none;
  position: fixed;
  z-index: 101;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

#modal_bg {
  display: none;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
}

h2.main_visual {
  height: 100%;
  position: relative;
}

h2.main_visual p {
  position: absolute;
  width: 880px;
  text-align: right;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

h2.main_visual p span {
  font-family: "tbchibirgothicplusk-pro",sans-serif;
  opacity: 0;
  display: block;
  color: #fff;
  font-size: 1.8rem;
  margin-right: 10px;
}

h2.main_visual img {
  width: 100%;
}

.inner_contents p,
.inner_contents figcaption {
  line-height: 1.6rem;
}

.inner_contents .title {
  width: 880px;
  margin: 0 auto 45px;
}

.inner_contents .title h3 {
  font-size: 1.7rem;
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  opacity: 0;
  text-align: center;
  margin: 0 0 45px;
}

.inner_contents .wid_wrap {
  max-width: 880px;
  margin: 0 auto;
  width: 100%;
}

.page404 {
  font-size: 1.1rem;
  text-align: center;
  margin: 50px 0;
}

em {
  color: #f77d87;
}

.pdf {
  padding-left: 2rem;
  background: url(../img/common/icon_pdf.png) 0 50% no-repeat;
  background-size: 1.3rem;
}

.pankuzu {
  overflow: hidden;
  margin: 10px 10px 60px 0;
}

.pankuzu ul {
  display: inline-block;
  float: right;
}

.pankuzu ul li {
  color: #999;
  float: left;
  font-size: 0.8rem;
}

.pankuzu ul li::after {
  content: '>';
  vertical-align: middle;
  padding: 0 10px;
}

.pankuzu ul li:last-child::after {
  content: '';
  padding: 0;
}

.pankuzu ul li a {
  color: #999;
}

.pankuzu ul li a:hover {
  color: #ec6d81;
}

.tokubetsukigan {
  position: relative;
  background: #000;
  overflow: hidden;
}

.tokubetsukigan a figure {
  background: url(../img/top/img_tokubetsukigan.jpg) no-repeat;
  background-size: cover;
  padding-bottom: 34%;
  display: block;
  box-sizing: border-box;
  -webkit-transform: scale(1.03);
  transform: scale(1.03);
  transition: opacity 1.5s ease-out , -webkit-transform 1.5s ease-out;
  transition: transform 1.5s ease-out , opacity 1.5s ease-out;
  transition: transform 1.5s ease-out , opacity 1.5s ease-out , -webkit-transform 1.5s ease-out;
}

.tokubetsukigan a .textbox {
  color: #fff;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 60px;
  margin: auto;
  width: 335px;
}

.tokubetsukigan a .textbox .subtext {
  display: block;
  padding: 0 0 0 50px;
  font-size: 1.375rem;
  background: url(../img/top/img_en.png) no-repeat;
  background-size: contain;
  height: 44px;
  display: flex;
  align-items: center;
  margin: 0 0 10px;
  font-weight: bold;
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.tokubetsukigan a .textbox h2 {
  font-weight: bold;
  font-size: 2.3rem;
  line-height: 1em;
  margin: 0 0 30px;
  font-family: "tbchibirgothicplusk-pro",sans-serif;
}

.tokubetsukigan a .textbox p {
  font-size: 0.875rem;
}

.individual_info {
  background: #f6f6ed;
  padding: 30px 30px;
}

.individual_info > section,
.individual_info > .wid_wrap > section {
  margin: 0 auto 90px;
  max-width: 880px;
  width: 100%;
}

.individual_info > section > h2,
.individual_info > .wid_wrap > section > h2 {
  font-size: 1.2rem;
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  opacity: 0;
  margin: 0 0 20px;
}

.individual_info > section:last-child,
.individual_info > .wid_wrap > section:last-child {
  margin-bottom: 30px;
}

.individual_info .wrap_center {
  display: block;
  width: 100%;
  text-align: center;
  margin: 0 0 30px;
}

.individual_info h1 {
  display: inline-block;
  text-align: center;
  padding: 0 15px;
  border-bottom: 3px solid #f77d87;
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  opacity: 0;
  color: #f77d87;
  font-size: 1.5rem;
}

.menu_link li {
  border-top: 1px dotted #000;
}

.menu_link li:first-child {
  border-top: 1px solid #848484;
}

.menu_link li:last-child {
  border-bottom: 1px solid #848484;
}

.menu_link li a {
  display: block;
  padding: 10px 30px 10px 10px;
  background: url(../img/common/icon_arrow_right.png) right 20px top 50% no-repeat;
  background-size: 7px;
}

.menu_link li.current {
  background: #f8f8f8;
}

.menu_link li.current a {
  cursor: default;
  color: inherit;
}

.wrap_flex {
  width: 880px;
  margin: 0 auto;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
}

.festival_list {
  width: 330px;
  margin-right: 10%;
}

.festival_list ul {
  border-bottom: 1px solid #848484;
  border-top: 1px solid #848484;
}

.festival_list ul li {
  border-bottom: 1px dotted #848484;
}

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

.festival_list ul li a {
  display: block;
  padding: 15px 20px;
  background-image: url(../img/common/icon_arrow.png);
  background-position: right 15px top 50%;
  background-repeat: no-repeat;
  background-size: 12px;
}

.festival_list ul li a:hover {
  background-color: white;
}

.note {
  font-size: 0.825rem;
  text-indent: -1.1rem;
  padding-left: 1.1rem;
}

.note_num {
  font-size: 0.825rem;
  text-indent: -1.65rem;
  padding-left: 1.65rem;
}

.note_box {
  margin: 36px 0 0;
  display: inline-block;
  border: 1px solid #cad4d8;
  padding: 13px 20px 10px 23px;
  position: relative;
  background: #fff;
  z-index: 1;
  margin-right: 4px;
  margin-bottom: 4px;
  /*タイトルがあるタイプのnote_box*/
  /*背景色があるタイプ afterに背景色を追加*/
}

.note_box::before {
  content: '';
  position: absolute;
  /*borderの中に入っていて小さいのでひろげる*/
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  border: 1px solid #cad4d8;
  top: 0;
  left: 0;
  -webkit-transform: translate(3px, 3px);
  transform: translate(3px, 3px);
  z-index: -1;
}

.note_box > div {
  background: #fff;
}

.note_box a {
  text-decoration: none;
}

.note_box.pattern2 {
  padding: 0;
  text-align: left;
}

.note_box.pattern2 h4 {
  background: #eff2f3;
  padding: 10px 10px 10px 30px;
  margin: 4px 0 0 4px;
}

.note_box.pattern2 > div {
  background: transparent;
  padding: 20px 30px;
}

.note_box.pattern3 {
  padding: 0;
  text-align: left;
}

.note_box.pattern3::after {
  content: '';
  position: absolute;
  /*borderの中に入っていて小さいのでひろげる*/
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  top: 0;
  left: 0;
  -webkit-transform: translate(4px, 4px);
  transform: translate(4px, 4px);
  z-index: -1;
  background: #fcfbf5;
}

.note_box.pattern3 > div {
  background: transparent;
  padding: 20px 30px;
}

.bold_title {
  border-bottom: 2px solid #000;
  margin: 0 0 30px;
  padding: 0 0 5px;
  font-size: 1rem;
  font-family: "tbchibirgothicplusk-pro",sans-serif;
  opacity: 0;
}

.nowrap {
  white-space: nowrap;
}

.ishihue {
  max-width: 333px;
  margin-left: 10%;
}

.ishihue .control {
  position: relative;
  margin: 0 0 10px;
}

.ishihue .control img {
  width: 100%;
  vertical-align: bottom;
}

.ishihue .control audio {
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  opacity: 0.7;
}

.ishihue h1 {
  font-size: 1rem;
  margin-bottom: 5px;
}

.ishihue p {
  font-size: 0.8rem;
}

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

.accordion .main_menu {
  cursor: pointer;
}

.accordion .main_menu img {
  -webkit-transform: rotate(0);
  transform: rotate(0);
  transition: all .3s;
}

.accordion .main_menu img.rotate {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  transition: all .3s;
}

.accordion .sub_menu li a {
  display: block;
}

.btn_area {
  margin-bottom: 60px;
}

.btn_area ul {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}

.btn_area ul li {
  width: 100%;
  border: 1px solid #cf0412;
  padding: 5px 0;
  text-align: center;
  margin-right: 10px;
  color: #000;
  transition: all .3s;
}

.btn_area ul li.select {
  background: #cf0412;
  color: #fff;
}

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

.howto {
  margin: 50px 0;
}

.howto > div {
  position: relative;
  margin: 0 0 36px;
}

.howto > div p {
  position: absolute;
  bottom: 0;
  color: #fff;
  background: #000;
  opacity: 0.8;
  width: 100%;
  padding: 0.8em 20px;
}

.howto > div img {
  width: 100%;
  vertical-align: bottom;
}

.mailmagazine h2 {
  text-align: center;
  height: auto;
  text-indent: 0;
}

.mailmagazine .form {
  overflow: hidden;
}

.mailmagazine .form input {
  border: 1px solid #ccc;
  display: inline-block;
  float: left;
  margin-bottom: 5px;
}

.mailmagazine .form input[type='text'] {
  width: 70%;
  padding-left: 3px;
}

.mailmagazine .form input[type='submit'] {
  width: 29%;
  display: inline-block;
  float: right;
  border-radius: 5px;
  background: #fff;
  height: 90%;
  outline: none;
  cursor: pointer;
  border: 1px solid #ccc;
}

.shirousagi_bn {
  width: 880px;
  margin: 0 auto;
}

.shirousagi_bn .image a {
  display: block;
}

.shirousagi_bn .image a img {
  width: 100%;
}

.tuduki_btn {
  text-align: center;
  color: #fff;
  background: #ec6d81;
  padding: 8px 13px;
  width: 70%;
  margin: 10px auto 0;
}

.bnOne {
  max-width: 415px;
}

.bnOne img {
  width: 100%;
}

.grovalNavi {
  width: 238px;
  height: 100%;
  position: fixed;
  background: #fcfbf0;
  border-right: 1px solid #ec6d81;
  z-index: 100;
  padding: 35px 0 0;
  overflow: hidden;
}

.grovalNavi .scroll_area {
  padding: 0 32px 0;
  overflow-y: scroll;
  width: calc(100% + 17px);
  height: 100%;
}

.grovalNavi .scroll_area .navlogo {
  text-align: center;
  margin: 0 0 30px;
}

.grovalNavi .scroll_area .navlogo img {
  width: 100%;
}

.grovalNavi .scroll_area > ul {
  text-align: center;
}

.grovalNavi .scroll_area > ul li a {
  display: block;
  line-height: 1em;
  padding: 17px 0 21px;
  border-bottom: 1px dotted #ec6d81;
  color: #000;
  transition: all .3s;
  font-family: "tbchibirgothicplusk-pro",sans-serif;
  opacity: 0;
}

.grovalNavi .scroll_area > ul li a.current {
  background: #e7e5cc;
  transition: all .3s;
}

.grovalNavi .scroll_area .nav_footer .topics_blog {
  margin: 32px auto;
  width: 80%;
}

.grovalNavi .scroll_area .nav_footer .topics_blog a {
  display: block;
}

.grovalNavi .scroll_area .nav_footer .topics_blog a img {
  width: 100%;
  vertical-align: bottom;
}

.grovalNavi .scroll_area .nav_footer .kamicocoro {
  background: url(../img/common/icon_square.png) no-repeat;
  background-size: 26px;
  padding: 0 0 0 28px;
  color: #2f487b;
  font-size: 0.6rem;
  font-family: Meiryo, メイリオ, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, Ryumin Medium KL, "リュウミン M-KL", "ＭＳ Ｐゴシック", Verdana, Arial, sans-serif;
}

.smp_menu {
  display: block;
  position: absolute;
  top: 50%;
  right: 10px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

@-webkit-keyframes menu-bar01 {
  0% {
    -webkit-transform: translateY(12px) rotate(45deg);
    transform: translateY(12px) rotate(45deg);
  }

  50% {
    -webkit-transform: translateY(12px) rotate(0);
    transform: translateY(12px) rotate(0);
  }

  100% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
}

@keyframes menu-bar01 {
  0% {
    -webkit-transform: translateY(12px) rotate(45deg);
    transform: translateY(12px) rotate(45deg);
  }

  50% {
    -webkit-transform: translateY(12px) rotate(0);
    transform: translateY(12px) rotate(0);
  }

  100% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
}

@-webkit-keyframes menu-bar02 {
  0% {
    -webkit-transform: translateY(-12px) rotate(-45deg);
    transform: translateY(-12px) rotate(-45deg);
  }

  50% {
    -webkit-transform: translateY(-12px) rotate(0);
    transform: translateY(-12px) rotate(0);
  }

  100% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
}

@keyframes menu-bar02 {
  0% {
    -webkit-transform: translateY(-12px) rotate(-45deg);
    transform: translateY(-12px) rotate(-45deg);
  }

  50% {
    -webkit-transform: translateY(-12px) rotate(0);
    transform: translateY(-12px) rotate(0);
  }

  100% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }
}

@-webkit-keyframes active-menu-bar01 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }

  50% {
    -webkit-transform: translateY(12px) rotate(0);
    transform: translateY(12px) rotate(0);
  }

  100% {
    -webkit-transform: translateY(12px) rotate(45deg);
    transform: translateY(12px) rotate(45deg);
  }
}

@keyframes active-menu-bar01 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }

  50% {
    -webkit-transform: translateY(12px) rotate(0);
    transform: translateY(12px) rotate(0);
  }

  100% {
    -webkit-transform: translateY(12px) rotate(45deg);
    transform: translateY(12px) rotate(45deg);
  }
}

@-webkit-keyframes active-menu-bar03 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }

  50% {
    -webkit-transform: translateY(-12px) rotate(0);
    transform: translateY(-12px) rotate(0);
  }

  100% {
    -webkit-transform: translateY(-12px) rotate(-45deg);
    transform: translateY(-12px) rotate(-45deg);
  }
}

@keyframes active-menu-bar03 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
    transform: translateY(0) rotate(0);
  }

  50% {
    -webkit-transform: translateY(-12px) rotate(0);
    transform: translateY(-12px) rotate(0);
  }

  100% {
    -webkit-transform: translateY(-12px) rotate(-45deg);
    transform: translateY(-12px) rotate(-45deg);
  }
}

.smp_menu .menu-trigger {
  position: relative;
  width: 31px;
  height: 24px;
  outline: none;
  background: none;
  border: none;
  cursor: pointer;
  display: block;
  padding: 0;
}

.smp_menu .menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
  position: absolute;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #000;
}

.smp_menu .menu-trigger span:nth-of-type(1) {
  top: 0;
  -webkit-animation: menu-bar01 .75s forwards;
  animation: menu-bar01 .75s forwards;
}

.smp_menu .menu-trigger span:nth-of-type(2) {
  top: 12px;
  transition: all .25s .25s;
  opacity: 1;
}

.smp_menu .menu-trigger span:nth-of-type(3) {
  bottom: 0;
  -webkit-animation: menu-bar02 .75s forwards;
  animation: menu-bar02 .75s forwards;
}

.st-menu-open .smp_menu .menu-trigger span:nth-of-type(1) {
  -webkit-animation: active-menu-bar01 .75s forwards;
  animation: active-menu-bar01 .75s forwards;
}

.st-menu-open .smp_menu .menu-trigger span:nth-of-type(2) {
  opacity: 0;
}

.st-menu-open .smp_menu .menu-trigger span:nth-of-type(3) {
  -webkit-animation: active-menu-bar03 .75s forwards;
  animation: active-menu-bar03 .75s forwards;
}

header.pc {
  background-color: #ec6d81;
  background-image: url(../img/top/bg_header_stripe.png);
  background-size: 7px;
  height: 50px;
  position: relative;
}

.tanabataVer header.pc {
  background-color: #5e6a9a;
}

header.pc .header {
  float: right;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

header.pc .header span {
  float: left;
  display: block;
  margin: 0 40px;
}

header.pc .header span a {
  color: #fff;
  font-size: 0.750rem;
}

header.pc .header .language {
  margin: 0 40px 0 0;
  overflow: hidden;
  float: left;
}

header.pc .header .language li {
  float: left;
  font-size: 0.750rem;
}

header.pc .header .language li:after {
  content: '|';
  margin: 0 10px;
  color: #ccc;
}

header.pc .header .language li:last-child::after {
  content: '';
}

header.pc .header .language li a {
  color: #fff;
}

header.pc .header .language li.japanese a {
  color: #999;
}

header.pc .header .sns {
  float: left;
  overflow: hidden;
  margin: 0 40px 0 0;
}

header.pc .header .sns a {
  display: block;
  float: left;
  margin: 0 10px 0 0;
  width: 32px;
}

header.pc .header .sns a img {
  width: 100%;
  vertical-align: bottom;
}

header.pc .smp_menu {
  display: none;
}

header.smp {
  position: fixed;
  top: 0;
  height: 65px;
  z-index: 2;
  width: 100%;
  padding: 5px 0 5px 10px;
  background: #fff;
}

header.smp a {
  display: block;
}

header.smp .logo_s {
  height: 100%;
}

header.smp .logo_s img {
  height: 100%;
  width: auto;
}

header.smp .sns {
  position: absolute;
  right: 50px;
  bottom: 13px;
  display: flex;
  flex-flow: row nowrap;
}

header.smp .sns a {
  height: 37px;
  margin: 0 10px 0 0;
}

header.smp .sns a img {
  width: auto;
  height: 100%;
  vertical-align: bottom;
}

footer {
  margin-top: 80px;
}

footer .pagetop {
  overflow: hidden;
  margin: 32px 0 0;
  padding: 0 63px 32px 0;
  border-bottom: 2px solid #ccc;
  z-index: 1;
}

footer .pagetop a {
  width: 46px;
  height: 46px;
  display: block;
  background: url(../img/common/pagetop.png) no-repeat;
  background-size: contain;
  float: right;
}

footer .footer_contents {
  overflow: hidden;
  padding: 35px 63px 40px 100px;
  background: #fff;
}

footer .footer_contents > div {
  overflow: hidden;
}

footer .footer_contents .footer_logo {
  width: 113px;
  float: left;
  display: block;
}

footer .footer_contents address {
  font-size: 0.750rem;
  float: left;
  font-weight: bold;
  margin: 0 0 0 30px;
  padding: 10px 0 0;
}

footer .footer_contents .footerlink {
  float: right;
  overflow: hidden;
}

footer .footer_contents .footerlink li {
  float: left;
}

footer .footer_contents .footerlink li a {
  font-size: 0.750rem;
  display: block;
  border-right: 1px solid #333;
  padding: 0 20px;
  line-height: 1em;
}

footer .footer_contents .footerlink li:last-child a {
  border-right: none;
}

footer small {
  display: block;
  margin: 40px 0 0;
  text-align: center;
  font-size: 0.750rem;
}

/* CSS Document */

.intro {
  width: 100vw;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #ec6d81;
  overflow: hidden;
  z-index: 101;
  height: 100%;
}

.intro.out {
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
  transition: -webkit-transform 1.5s;
  transition: transform 1.5s;
  transition: transform 1.5s, -webkit-transform 1.5s;
}

.intro .movie {
  opacity: 0;
  margin-top: -10%;
  -webkit-animation: show 1s 1s forwards;
  animation: show 1s 1s forwards;
  height: 100vh;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  margin: auto;
}

.intro .movie .inner {
  width: calc(100% + 30px);
  height: 100%;
  overflow-y: scroll;
  position: relative;
}

.intro .movie .inner .inner_movie {
  display: none;
  height: 101%;
  /*video{
					display:none;
					width:100%;
					position:absolute;
					left:0;
					right:0;
					bottom:0;
					top:0;
					margin:auto;
				}*/
}

.intro .movie .inner .inner_movie.img_slide {
  display: block;
}

.intro .movie .inner .inner_movie.img_slide img {
  display: none;
  width: 100%;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  margin: auto;
  transition: -webkit-transform 6s linear;
  transition: transform 6s linear;
  transition: transform 6s linear, -webkit-transform 6s linear;
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
  /*その後*/
  /*ロード後最初の画像の最初の状態*/
  /*ロード後最初の画像の最初の動き*/
}

.intro .movie .inner .inner_movie.img_slide img.current {
  -webkit-transform: scale(1);
  transform: scale(1);
}

.intro .movie .inner .inner_movie.img_slide img.current:nth-child(even) {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

.intro .movie .inner .inner_movie.img_slide img.first {
  display: block;
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}

.intro .movie .inner .inner_movie.img_slide img.first_scale {
  display: block;
  -webkit-transform: scale(1);
  transform: scale(1);
  transition: -webkit-transform 6s linear;
  transition: transform 6s linear;
  transition: transform 6s linear, -webkit-transform 6s linear;
}

.intro .movie .inner .logo_area {
  opacity: 0;
  width: 185px;
  position: absolute;
  top: 50%;
  /*親要素が30px足されてるので半分の15pxを引く*/
  left: calc(50% - 15px);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  color: #fff;
  text-align: center;
  -webkit-animation: show 1s .5s forwards;
  animation: show 1s .5s forwards;
}

.intro .movie .inner .logo_area h1 {
  width: 185px;
  margin: 0;
}

.intro .movie .inner .logo_area h1 img {
  width: 100%;
}

.intro .movie .inner .logo_area p {
  font-size: 0.68em;
  margin: 0 0 10px;
}

.intro .movie .inner .logo_area .illust {
  width: 105px;
}

.intro .movie .inner .logo_area .maincopy {
  font-size: 1.62em;
}

.intro .scrollBtn {
  opacity: 0;
  height: 60px;
  background: #ec6d81;
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 15px 0 0;
  -webkit-animation: show 1s 2s forwards;
  animation: show 1s 2s forwards;
  z-index: 1;
}

.intro .scrollBtn span {
  display: block;
  width: 196px;
  height: 31px;
  text-align: center;
  color: #fff;
  margin: 0 auto;
  border: 1px solid #fff;
  line-height: 1em;
  padding: 7px;
  box-sizing: border-box;
  cursor: pointer;
}

.top_visual {
  position: relative;
  margin: 20px 0 0;
  overflow: hidden;
  padding-bottom: 30px;
  z-index: 1;
}

.top_visual.smp {
  display: none;
}

.top_visual .slick-slide {
  padding: 0 25px;
}

.top_visual .slick-slide a {
  box-shadow: 0px 0px 0px 2px #fff inset,0px 0px 8px 3px #eee;
  display: block;
  border: 2px solid #fff;
  margin: 5px;
  border-radius: 5px;
}

.top_visual .slick-slide a img {
  width: auto;
  border-radius: 5px;
  max-height: 425px;
}

.top_visual .slick-arrow {
  position: absolute;
  top: 50%;
  background: url(../img/top/icon_slide_arrow.png) no-repeat;
  text-indent: -9999px;
  width: 20px;
  height: 35px;
  background-size: contain;
  z-index: 1;
}

.top_visual .slick-arrow.slick-next {
  right: calc(50% - 394px);
  -webkit-transform: rotate(180deg) translateY(50%);
  transform: rotate(180deg) translateY(50%);
}

.top_visual .slick-arrow.slick-prev {
  left: calc(50% - 394px);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.top_visual .slick-dots li button::before {
  color: #898989;
  opacity: 1;
}

.top_visual .slick-dots li.slick-active button:before {
  color: #ec6d81;
  opacity: 1;
}

.topReadMe {
  position: relative;
  margin: 40px 0;
  z-index: 1;
}

.contents_box {
  position: relative;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  margin: 0 0 30px;
  z-index: 1;
}

.contents_box > section {
  max-width: 300px;
  margin: 0 20px 35px;
  border: 3px solid #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0px 0px 8px 3px #eee;
  background-color: #fff;
}

.contents_box > section.is-empty {
  width: 300px;
  height: 0;
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
  margin-bottom: 0;
  border: none;
  box-shadow: 0 0 0 0;
}

.contents_box > section figure {
  background: #ec6d81;
  padding: 5px 0 0;
}

.contents_box > section figure img {
  width: 100%;
  vertical-align: bottom;
}

.contents_box > section .title {
  padding: 11px 0 7px;
  text-align: center;
}

.contents_box > section .title a {
  color: #f63957;
  font-size: 1.1rem;
  font-weight: bold;
}

.contents_box > section .main_text {
  color: #666;
  padding: 0 10px 10px;
}

.contents_box.top_column {
  flex-flow: row nowrap;
  margin: 100px 0 0;
}

.contents_box.top_column > section {
  max-width: 469px;
}

.note_box_wrap_top {
  text-align: center;
  margin: 40px 0 70px;
}

.note_box_wrap_top .note_box {
  margin: 0;
}

.bottom_links {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  margin: 0 0 50px;
  padding: 0 20px;
}

.bottom_links > div {
  overflow: hidden;
  width: calc(50% - 20px);
}

.bottom_links > div img {
  width: 100%;
  vertical-align: bottom;
}

.bottom_links > div.happy_friends {
  margin: 0 20px 0 0;
}

.bottom_links > div.happy_friends a {
  display: block;
  background-color: #fff;
  transition: background-color 1.5s ease-out;
}

.bottom_links > div.happy_friends a img {
  -webkit-transform: scale(1);
  transform: scale(1);
  transition: opacity 1.5s ease-out, -webkit-transform 1.5s ease-out;
  transition: transform 1.5s ease-out, opacity 1.5s ease-out;
  transition: transform 1.5s ease-out, opacity 1.5s ease-out, -webkit-transform 1.5s ease-out;
  opacity: 1;
}

.bottom_links > div.mail:not(.inner_contents) {
  margin: 0 0 0 20px;
}

.bottom_links > div.mail:not(.inner_contents) h2 {
  font-size: 1.25rem;
  color: #f63957;
  margin: 0 0 20px;
  background: url(../img/top/icon_mail.png) no-repeat;
  background-size: 32px;
  height: 46px;
  padding: 0 0 0 40px;
  font-weight: bold;
}

.bottom_links > div.mail:not(.inner_contents) .main_text {
  margin: -28px 0 0;
}

.bottom_links > div.mail:not(.inner_contents) .form {
  border-top: 1px solid #ec6d81;
  border-bottom: 1px solid #ec6d81;
  background: #fff9b9;
  margin: 20px 0 0;
  padding: 30px;
}

.bottom_links > div.mail:not(.inner_contents) .pc .form input {
  display: block;
  border: none;
  font-size: 0.750rem;
  padding: 2px 0;
  margin: 0 0 5px;
  text-align: left;
  -webkit-appearance: none;
}

.bottom_links > div.mail:not(.inner_contents) .pc .form input[type='text'] {
  height: 27px;
  padding: 5px 10px;
  width: 100%;
}

.bottom_links > div.mail:not(.inner_contents) .pc .form input[type='submit'] {
  float: right;
  width: 63px;
  height: 27px;
  text-align: center;
  color: #fff;
  margin: 0 0 0 5px;
}

.bottom_links > div.mail:not(.inner_contents) .pc .form .registration {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}

.bottom_links > div.mail:not(.inner_contents) .pc .form .registration input[type='text'] {
  border: 1px solid #ec6d81;
}

.bottom_links > div.mail:not(.inner_contents) .pc .form .registration input[type='submit'] {
  background: #ec6d81;
}

.bottom_links > div.mail:not(.inner_contents) .pc .form .release {
  margin: 15px 0 0;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}

.bottom_links > div.mail:not(.inner_contents) .pc .form .release input[type='text'] {
  border: 1px solid #a4a8a8;
}

.bottom_links > div.mail:not(.inner_contents) .pc .form .release input[type='submit'] {
  background: #a4a8a8;
}

.housyuku {
  text-align: center;
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.housyuku_inner {
  display: inline-block;
  background: #fff;
  padding: 0 30px;
}

.housyuku_title {
  color: #cd0102;
  font-size: 3rem;
}

.housyuku_text {
  padding: 10px 0;
  font-size: 1.5rem;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
}

#btn_uranai {
  width: 200px;
  height: 255px;
  position: absolute;
  z-index: 100;
  -webkit-transform: scale(0.7);
  transform: scale(0.7);
  top: 0;
  left: -216px;
  cursor: pointer;
}

#btn_uranai img {
  width: 100%;
}

#btn_uranai.uranai_move {
  transition: all 3s 1s;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  /*アニメーションのがたつきを直すためのハック*/
  -webkit-transform: scale(1);
  transform: scale(1);
  top: 440px;
  left: 250px;
}

#btn_uranai.out {
  transition: all 1.5s;
  -webkit-transform: translate3d(2000px, 0, 0);
  transform: translate3d(2000px, 0, 0);
}

#btn_uranai.fadeout {
  opacity: 0;
  transition: opacity 1s;
}

body.uranai_open {
  height: 100%;
  overflow: hidden;
}

#uranai_result_page {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
  background: linear-gradient(-45deg, #ec6d81 48%, #f3a9b4 48%, #f3a9b4 52%, #ec6d81 52%, #ec6d81);
  background-size: 10px 10px;
  z-index: 101;
  transition: -webkit-transform 1s ease-out;
  transition: transform 1s ease-out;
  transition: transform 1s ease-out, -webkit-transform 1s ease-out;
  -webkit-overflow-scrolling: touch;
  overflow-y: scroll;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

#uranai_result_page.uranai_open {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

#uranai_result_page.uranai_open .uranai_result {
  opacity: 1;
  transition: opacity .3s 1.5s;
}

#uranai_result_page.removing {
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
}

#uranai_result_page.removing .uranai_result {
  opacity: 1;
}

#uranai_result_page .uranai_contents {
  max-width: 750px;
  width: 100%;
  margin: 30px auto 0;
  padding: 30px;
}

#uranai_result_page .read {
  color: #fff;
  overflow: hidden;
  margin: 0 0 30px;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}

#uranai_result_page .read > div,
#uranai_result_page .read p {
  display: flex;
  align-items: center;
  justify-content: center;
}

#uranai_result_page .read .header_img {
  width: 205px;
  margin: 0 30px 0 0;
}

#uranai_result_page .read .header_img img {
  width: 100%;
  height: auto;
}

#uranai_result_page .read p {
  margin: 0;
  font-size: 0.9rem;
  max-width: 465px;
  width: 100%;
}

#uranai_result_page .read .uranaipageClose {
  margin: 60px 0 0 10px;
}

#uranai_result_page .uranai_result {
  position: relative;
  opacity: 0;
}

#uranai_result_page .uranai_result .bg.note_box {
  margin: 0;
  background: #fff;
  width: 100%;
  height: 100%;
  border: 1px solid #999;
  position: absolute;
  z-index: -1;
  opacity: 0.2;
}

#uranai_result_page .uranai_result .bg.note_box::before {
  border: 1px solid #000;
  background: #fff;
  opacity: 0.4;
}

#uranai_result_page .uranai_result .main {
  padding: 30px 68px 68px;
  z-index: 2;
  margin: 0 0 30px;
}

#uranai_result_page .uranai_result .text_en {
  background: #fff;
  color: #ec6d81;
  border-radius: 22px;
  padding: 2px 20px;
  margin: 30px 30px 30px 0;
  float: left;
}

#uranai_result_page .uranai_result #uranai_en {
  overflow: hidden;
  margin: 0 0 25px;
}

#uranai_result_page .uranai_result #uranai_en img {
  width: 100%;
}

#uranai_result_page .uranai_result .about {
  padding: 0 0 12px;
  border-bottom: 1px solid #f7f8f8;
  clear: both;
}

#uranai_result_page .uranai_result .advice {
  margin: 30px 0 0;
  font-weight: bold;
  color: #f6ed00;
  font-size: 1rem;
}

#uranai_result_page .uranai_result .lucky {
  background: #fff;
  border: 1px solid #000;
  padding: 10px 20px;
  margin: 20px 0 0;
  overflow: hidden;
  position: relative;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}

#uranai_result_page .uranai_result .lucky > p {
  color: #ec6d81;
  font-size: 1.2rem;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
}

#uranai_result_page .uranai_result .lucky > p > span {
  font-size: 1rem;
}

#uranai_result_page .uranai_result .lucky .color {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}

#uranai_result_page .uranai_result .lucky .color .colorname {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 20px 0 0;
}

#uranai_result_page .uranai_result .lucky .color .color_tip {
  background: #6cb88f;
  border-radius: 40px;
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
}

#uranai_result_page .uranai_footer .logo {
  width: 126px;
  margin: 0 auto;
}

#uranai_result_page .uranai_footer .logo img {
  width: 100%;
}

#uranai_result_page .uranai_footer address {
  color: #fff;
  font-size: 0.5rem;
  text-align: center;
}

.uranaipageClose {
  background: #000;
  width: 47px;
  height: 47px;
  min-width: 47px;
  position: relative;
  border-radius: 23px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 1s 2s;
}

.uranai_open .uranaipageClose {
  opacity: 1;
}

.uranaipageClose span {
  background: #fff;
  position: absolute;
  z-index: 10;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  /*縦棒*/
  /*横棒*/
}

.uranaipageClose span.parts01 {
  top: 3px;
  left: 23px;
  width: 1px;
  height: 41px;
}

.uranaipageClose span.parts02 {
  top: 23px;
  left: 3px;
  width: 41px;
  height: 1px;
}

/* CSS Document */

/*　トップ＆下層 のeventスタイル　*/

.event {
  overflow: hidden;
  background: #f7f8f8;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  margin: 0 0 70px;
}

/*　*/

/*　季節のおまつりみのeventスタイル　*/

.festival {
  margin: 70px auto;
}

.festival > section {
  margin: 0 0 120px;
}

.festival > section h1 {
  font-size: 1.5rem;
  text-align: center;
  margin: 0 0 30px;
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.festival > section .event {
  margin: 0 0 25px;
}

.festival > section .event figure {
  width: 50%;
}

.festival > section .event figure img {
  width: 100%;
  vertical-align: bottom;
}

.festival > section .event.lay_ajust figure {
  overflow: hidden;
  position: relative;
}

.festival > section .event.lay_ajust figure img {
  position: absolute;
  width: auto;
  height: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

/*　*/

/*　季節のお祭り　詳細テキスト部分*/

.festival_summary {
  width: 50%;
  padding: 30px 50px;
  box-sizing: border-box;
  text-align: center;
  position: relative;
}

.festival_summary h2 {
  font-size: 1.6rem;
  margin: 0 0 16px;
  line-height: 1em;
  font-weight: bold;
  color: #ec6d81;
  font-family: "a-otf-ud-reimin-pr6n",sans-serif;
}

.festival_summary p {
  font-size: 0.9rem;
  text-align: left;
  line-height: 1.5em;
}

.festival_summary p.date {
  border-bottom: 1px solid #000;
  font-family: Meiryo, メイリオ, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, Ryumin Medium KL, "リュウミン M-KL", "ＭＳ Ｐゴシック", Verdana, Arial, sans-serif;
  text-align: center;
  margin: 0 0 8px;
  padding: 0 0 4px;
}

.festival_summary p:not(.date) {
  padding-bottom: 50px;
}

.festival_summary .detail {
  position: absolute;
  bottom: 20px;
  left: 0;
  width: 100%;
  padding: 0 50px;
}

.festival_summary .detail a {
  display: block;
  width: 100%;
  background: #fff;
  border: 1px solid #ec6d81;
  margin: 10px 0 0;
  font-size: 0.9rem;
  font-family: Meiryo, メイリオ, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, Ryumin Medium KL, "リュウミン M-KL", "ＭＳ Ｐゴシック", Verdana, Arial, sans-serif;
  padding: 10px 0;
  color: #ec6d81;
  transition: all .3s;
}

.festival_summary .detail a:hover {
  background: #ec6d81;
  color: #fff;
  transition: all .3s;
}

/*　季節のお祭り　共通　*/

.gyouji.inner_contents .omamori_link {
  margin-left: 10px;
}

.gyouji.inner_contents p a {
  text-decoration: underline;
}

/*　季節のお祭り　下層　*/

.gyouji:not(.gyoji_top) > section h3 {
  font-size: 1.7rem;
  max-width: 880px;
  width: 100%;
  text-align: center;
  border-bottom: 1px solid #000;
  margin: 0 auto 25px;
  padding-bottom: 5px;
  font-weight: bold;
  font-family: "tbchibirgothicplusk-pro",sans-serif;
}

.gyouji:not(.gyoji_top) > section h3 span {
  font-size: 0.8rem;
  display: block;
  text-align: center;
  font-weight: normal;
  margin: 0 0 3px;
}

.gyouji:not(.gyoji_top) > section .read {
  max-width: 880px;
  width: 100%;
  overflow: hidden;
  margin: 0 auto 30px;
}

.gyouji:not(.gyoji_top) > section .read figure {
  width: 172px;
  float: right;
  margin: 0 0 0 50px;
}

.gyouji:not(.gyoji_top) > section .read figure figcaption {
  text-align: center;
}

.gyouji:not(.gyoji_top) > section .read figure img {
  width: 100%;
}

.gyouji:not(.gyoji_top) > section .read figure.fukumame {
  width: 130px;
}

.gyouji:not(.gyoji_top) > section .read .text p {
  margin-bottom: 0.3rem;
}

.gyouji:not(.gyoji_top) > section .read .text .note_box a {
  text-decoration: none;
}

.gyouji:not(.gyoji_top) > section .point {
  overflow: hidden;
  margin: 50px 0;
}

.gyouji:not(.gyoji_top) > section .point .image {
  float: right;
  width: 30%;
}

.gyouji:not(.gyoji_top) > section .point .image img {
  width: 100%;
}

.gyouji:not(.gyoji_top) > section .point > section {
  overflow: auto;
}

.gyouji:not(.gyoji_top) > section .point > section h4 {
  margin: 0 0 20px;
  border-bottom: 1px solid #999;
}

.gyouji:not(.gyoji_top) > section .photos {
  margin: 0 0 100px;
}

.gyouji:not(.gyoji_top) > section .photos ul {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}

.gyouji:not(.gyoji_top) > section .photos ul li {
  width: 50%;
  padding: 0 2px 4px 0;
}

.gyouji:not(.gyoji_top) > section .photos ul li:nth-child(even) {
  padding: 0 0 4px 2px;
}

.gyouji:not(.gyoji_top) > section .photos ul li img {
  width: 100%;
  vertical-align: bottom;
}

.gyouji:not(.gyoji_top) > section .bn {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  margin: 0 0 50px;
}

.gyouji:not(.gyoji_top) > section .bn a {
  display: block;
  margin: 0 50px 0 0;
}

.gyouji:not(.gyoji_top) > section .bn a img {
  width: 100%;
}

.gyouji:not(.gyoji_top) > section .bn a:last-child {
  margin-right: 0;
}

/*　季節のお祭り　七夕こけし　*/

.tanabata_kokeshi .yuusou {
  max-width: 880px;
  width: 100%;
  margin: 0 auto 50px;
}

.tanabata_kokeshi .yuusou h4 {
  font-size: 1.1rem;
  margin: 0 0 5px;
}

.tanabata_kokeshi .yuusou .detail {
  overflow: hidden;
  margin: 30px 0;
}

.tanabata_kokeshi .yuusou .detail table {
  float: left;
  width: 55%;
  border-collapse: collapse;
}

.tanabata_kokeshi .yuusou .detail table th,
.tanabata_kokeshi .yuusou .detail table td {
  border: 1px solid #ccc;
  padding: 10px 20px;
}

.tanabata_kokeshi .yuusou .detail table th {
  background: #ec6d81;
  color: #fff;
  text-align: center;
}

.tanabata_kokeshi .yuusou .readme {
  width: 40%;
  float: right;
}

.tanabata_kokeshi .yuusou .readme ul {
  padding-left: 20px;
  margin: 0 0 5px;
}

.tanabata_kokeshi .yuusou .readme ul li {
  list-style: circle;
}

.tanabata_kokeshi .yuusou .destination h5 {
  color: #ec6d81;
  font-weight: bold;
}

/*　お守りのご紹介 top　*/

.omamori_top ul.category {
  margin: 50px 0 65px;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}

.omamori_top ul.category li {
  width: 21%;
}

.omamori_top ul.category li a {
  width: 100%;
  display: block;
}

.omamori_top ul.category li a img {
  width: 100%;
}

.omamori_top .omamoriBtnImg {
  max-width: 313px;
  width: 100%;
  margin: 0 auto 15px;
}

.omamori_top .omamoriBtnImg img {
  max-width: 100%;
}

.omamori_top .omamori_contents > section {
  width: 880px;
}

.omamori_top .omamori_contents > section > .wrap_center {
  margin-bottom: 40px;
}

.omamori_top .omamori_contents > section > div img.imagephoto {
  float: right;
  width: 200px;
  margin: 0 0 0 20px;
}

.omamori_top .omamori_contents > section > div p {
  line-height: 1.7rem;
}

.omamori_top .omamori_contents > section > div p a {
  text-decoration: underline;
}

.omamori_top .omamori_contents > section > div p.note {
  line-height: 1.4rem;
}

.omamori_top .omamori_contents > section .note_box {
  width: calc(100% - 4px);
  padding: 15px 30px;
}

.omamori_top .omamori_contents > section .note_box::before {
  width: calc(100% + 2px);
  height: calc(100% + 2px);
}

.omamori_top .omamori_contents > section .note_box h2 {
  margin: 0 0 20px;
  font-size: 1rem;
}

.omamori_top .omamori_contents > section .note_box p {
  margin: 0 0 15px;
}

.omamori_top .omamori_contents > section .note_box p:last-child {
  margin-bottom: 0;
}

.omamori_top .omamori_contents > section .note_box .yubin_column h3 {
  float: left;
}

.omamori_top .omamori_contents > section .note_box .yubin_column h3::before {
  content: '●';
}

.omamori_top .omamori_contents > section .note_box .yubin_column h3::after {
  content: '／';
  margin: 0 10px;
}

.omamori_top .omamori_contents > section .note_box .yubin_column a {
  text-decoration: underline;
}

.omamori_top .omamori_contents > section .note_box .example {
  margin: 20px 0;
}

.omamori_top .omamori_contents > section .note_box .example > span {
  display: block;
  font-size: 1rem;
  margin: 0 0 5px;
}

.omamori_top .omamori_contents > section .note_box .example a {
  display: block;
  width: 100%;
}

.omamori_top .omamori_contents > section .note_box .example a img {
  width: 100%;
}

.omamori_top .omamori_contents > section .postage {
  width: 50%;
  margin: 50px 0 0;
}

.omamori_top .omamori_contents > section .postage h2 {
  font-weight: bold;
  float: left;
  margin: 0 0 20px;
  font-size: 1rem;
}

.omamori_top .omamori_contents > section .postage .note {
  float: right;
}

.omamori_top .omamori_contents > section .postage .price_list {
  clear: both;
}

.omamori_top .omamori_contents > section .postage .price_list table {
  width: 100%;
  border-bottom: 1px solid #ccc;
}

.omamori_top .omamori_contents > section .postage .price_list table th,
.omamori_top .omamori_contents > section .postage .price_list table td {
  border-top: 1px solid #ccc;
  padding: 10px 0;
}

.omamori_top .omamori_contents > section .postage .price_list table th {
  padding-left: 10px;
}

.omamori_top .omamori_contents > section .postage .price_list table th {
  padding-right: 10px;
}

/*　お守りのご紹介 下層　*/

.omamori:not(.omamori_top) .sub_visual {
  background-size: cover;
  height: 342px;
  position: relative;
  width: 100%;
  padding: 20px 0 0;
}

.omamori:not(.omamori_top) .sub_visual h4 {
  font-size: 2.1rem;
  margin: 0 1.5%;
  text-shadow: 2px 2px 2px #fff;
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.omamori:not(.omamori_top) .sub_visual .page_link {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
  position: absolute;
  bottom: 0;
  width: 100%;
}

.omamori:not(.omamori_top) .sub_visual .page_link li {
  border: 1px solid #d6d6d4;
  border-radius: 5px;
  box-flex: 1;
  width: 30%;
  margin: 0 0 20px;
  background: #fff;
  opacity: 0.8;
  padding: 15px 30px 15px 15px;
  background: url(../../assets/img/omamori/icon_love_page_link.png) right 10px top 50% no-repeat #fff;
  background-size: 14px;
  font-size: 1.1rem;
  cursor: pointer;
  font-family: "tbchibirgothicplusk-pro",sans-serif;
}

.omamori:not(.omamori_top) .sub_visual .page_link li:hover {
  background-color: #eee;
  transition: all .3s;
}

.omamori:not(.omamori_top) .sub_visual .page_link.is_col2 {
  justify-content: center;
}

.omamori:not(.omamori_top) .sub_visual .page_link.is_col2 li {
  width: 40%;
  margin-right: 2%;
  margin-left: 2%;
}

.omamori:not(.omamori_top).love .sub_visual {
  background-image: url(../../assets/img/omamori/sub_visual_love.png);
}

.omamori:not(.omamori_top).love .sub_visual .page_link li.select {
  background-color: #fce5e9;
  border: 1px solid #ea546b;
}

.omamori:not(.omamori_top).study .sub_visual {
  background-image: url(../../assets/img/omamori/sub_visual_study.png);
}

.omamori:not(.omamori_top).study .sub_visual .page_link li.select {
  background-color: #c4def6;
  border: 1px solid #378de0;
}

.omamori:not(.omamori_top).family .sub_visual {
  background-image: url(../../assets/img/omamori/sub_visual_family.png);
}

.omamori:not(.omamori_top).family .sub_visual .page_link li.select {
  background-color: #b5e68d;
  border: 1px solid #61ab25;
}

.omamori:not(.omamori_top).other .sub_visual {
  background-image: url(../../assets/img/omamori/sub_visual_other.png);
}

.omamori:not(.omamori_top).other .sub_visual .page_link li.select {
  background-color: #eddabe;
  border: 1px solid #c9933e;
}

.omamori:not(.omamori_top).allomamori .sub_visual .page_link li.select {
  background-color: #eee;
  border: 1px solid #d6d6d4;
}

.omamori:not(.omamori_top) .to_omamoritop {
  text-align: center;
  margin: 30px 0 0;
}

.omamori:not(.omamori_top) .to_omamoritop .note_box {
  margin: 0;
}

.omamori_in_contents {
  margin: 75px auto 0;
  max-width: 880px;
  width: 100%;
}

.omamori_in_contents > section {
  margin: 0 0 100px;
}

.omamori_in_contents > section > h1 {
  font-size: 1.5rem;
  color: #e9546b;
  text-align: center;
  margin: 0 0 30px;
  font-family: "tbchibirgothicplusk-pro",sans-serif;
}

.love .omamori_in_contents > section > h1 {
  color: #ea546b;
}

.study .omamori_in_contents > section > h1 {
  color: #378de0;
}

.family .omamori_in_contents > section > h1 {
  color: #61ab25;
}

.other .omamori_in_contents > section > h1 {
  color: #c9933e;
}

.omamori_in_contents > section > div {
  background-size: 6px 6px;
  padding: 10px 10px 0;
}

.love .omamori_in_contents > section > div {
  background-image: linear-gradient(-45deg, transparent 48%, #ea546b 48%, #ea546b 52%, transparent 52%, transparent);
}

.study .omamori_in_contents > section > div {
  background-image: linear-gradient(-45deg, transparent 48%, #378de0 48%, #378de0 52%, transparent 52%, transparent);
}

.family .omamori_in_contents > section > div {
  background-image: linear-gradient(-45deg, transparent 48%, #61ab25 48%, #61ab25 52%, transparent 52%, transparent);
}

.other .omamori_in_contents > section > div {
  background-image: linear-gradient(-45deg, transparent 48%, #c9933e 48%, #c9933e 52%, transparent 52%, transparent);
}

.allomamori .omamori_in_contents > section > div {
  margin-top: 50px;
}

.omamori_in_contents > section > div .read {
  padding: 20px;
  background: #fff;
  line-height: 1.6rem;
  margin-bottom: 10px;
}

.love .omamori_in_contents > section > div .read {
  border: 1px solid #ea546b;
}

.study .omamori_in_contents > section > div .read {
  border: 1px solid #378de0;
}

.family .omamori_in_contents > section > div .read {
  border: 1px solid #61ab25;
}

.other .omamori_in_contents > section > div .read {
  border: 1px solid #c9933e;
}

.omamori_in_contents > section > div .item {
  margin: 0;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}

.omamori_in_contents > section > div .item > section {
  width: 100%;
  background: #fff;
  position: relative;
  margin-right: 10px;
  margin-bottom: 10px;
}

.love .omamori_in_contents > section > div .item > section {
  border: 1px solid #ea546b;
}

.study .omamori_in_contents > section > div .item > section {
  border: 1px solid #378de0;
}

.family .omamori_in_contents > section > div .item > section {
  border: 1px solid #61ab25;
}

.other .omamori_in_contents > section > div .item > section {
  border: 1px solid #c9933e;
}

.allomamori .omamori_in_contents > section > div .item > section {
  width: 45%;
}

.omamori_in_contents > section > div .item > section:last-child {
  margin-right: 0;
}

.omamori_in_contents > section > div .item > section h1 {
  font-size: 1.4rem;
  font-family: "tbchibirgothicplusk-pro",sans-serif;
  text-align: center;
  margin: 10px 10px 15px;
}

.love .omamori_in_contents > section > div .item > section h1 {
  border-bottom: 1px solid #ea546b;
}

.study .omamori_in_contents > section > div .item > section h1 {
  border-bottom: 1px solid #378de0;
}

.family .omamori_in_contents > section > div .item > section h1 {
  border-bottom: 1px solid #61ab25;
}

.other .omamori_in_contents > section > div .item > section h1 {
  border-bottom: 1px solid #c9933e;
}

.omamori_in_contents > section > div .item > section .text {
  padding: 0 10px 10px;
}

.omamori_in_contents > section > div .item > section .text a {
  text-decoration: underline;
}

.omamori_in_contents > section > div .item > section .image {
  padding: 20px 10px;
  height: 365px;
  position: relative;
}

.omamori_in_contents > section > div .item > section .image img {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  max-width: 80%;
  max-height: 100%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.omamori_in_contents > section > div .item > section .image img.heightlimit {
  max-height: 70%;
}

.omamori_in_contents > section > div .item > section .bottom_info {
  width: 100%;
  display: flex;
  flex-flow: column nowrap;
  justify-content: flex-end;
}

.omamori_in_contents > section > div .item > section .bottom_info .price {
  display: block;
  text-align: center;
  margin: 10px 0;
  padding: 0 5px;
}

.omamori_in_contents > section > div .item > section .bottom_info .link_scene {
  display: block;
  background: #ea546b;
  color: #fff;
  text-align: center;
  padding: 10px 0;
}

.love .omamori_in_contents > section > div .item > section .bottom_info .link_scene {
  background: #ea546b;
}

.study .omamori_in_contents > section > div .item > section .bottom_info .link_scene {
  background: #378de0;
}

.family .omamori_in_contents > section > div .item > section .bottom_info .link_scene {
  background: #61ab25;
}

.other .omamori_in_contents > section > div .item > section .bottom_info .link_scene {
  background: #c9933e;
}

.omamori.faq .one_qa {
  margin: 0 0 30px;
}

.omamori.faq .one_qa p a {
  text-decoration: underline;
}

.omamori.faq .one_qa span {
  display: inline;
  float: left;
  text-align: center;
  padding: 0 3px;
  color: #fff;
  margin: 0 10px 0 0;
  border: 1px solid #ec6d81;
  width: 3rem;
}

.omamori.faq .one_qa .q {
  font-weight: bold;
  margin: 0 0 5px;
}

.omamori.faq .one_qa .q > span {
  background: #ec6d81;
}

.omamori.faq .one_qa .a > span {
  font-weight: bold;
  color: #ec6d81;
}

/*　赤い糸メッセージ　*/

.message .title {
  text-align: center;
}

.message .archive_title {
  text-align: center;
  font-size: 1.3rem;
  margin: 30px 0;
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.message .read_contents {
  margin: 80px auto 0;
  width: 610px;
}

.message .read_contents > div {
  padding: 80px 40px 0;
  position: relative;
  margin: 0 0 70px;
  background: url(../../assets/img/message/happy_message.png) no-repeat;
  background-size: contain;
}

.message .read_contents > div:first-child p {
  color: #e9546b;
}

.message .read_contents > div:first-child p a {
  text-decoration: underline;
}

.message .read_contents > div:first-child .name {
  color: #000;
}

.message .read_contents > div a {
  color: #ec6d81;
}

.message .read_contents > div p {
  line-height: 1.6rem;
}

.message .read_contents > div .name {
  display: block;
  text-align: right;
  margin: 20px 0 0;
  color: #000;
}

/* form 赤い糸メッセージと宮司の言葉　共通*/

.message .archive,
.guji .archive {
  text-align: center;
}

.message .archive span,
.guji .archive span {
  background: url(../../assets/img/message/icon_mail_heart.png) left 30% no-repeat;
  background-size: 39px;
  padding: 20px 0 20px 50px;
  display: inline-block;
  margin: 0 auto;
  font-weight: bold;
  font-size: 1rem;
}

.message .archive .archive_form .archive_select,
.guji .archive .archive_form .archive_select {
  padding: 3px 5px;
}

/*　ご社殿　*/

.shaden .title {
  overflow: hidden;
}

.shaden .title figure {
  float: right;
  width: 250px;
  margin: 0 0 0 20px;
}

.shaden .title figure img {
  width: 100%;
}

.shaden .wid_wrap .note_box_wrap {
  text-align: center;
}

.shaden .wid_wrap .shaden_contents {
  margin: 80px auto 0;
}

.shaden .wid_wrap .shaden_contents > section {
  margin: 0 0 75px;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}

.shaden .wid_wrap .shaden_contents > section:nth-child(even) .image {
  order: 2;
}

.shaden .wid_wrap .shaden_contents > section:nth-child(even) .text {
  order: 1;
}

.shaden .wid_wrap .shaden_contents > section .image {
  width: 48%;
}

.shaden .wid_wrap .shaden_contents > section .image img {
  width: 100%;
}

.shaden .wid_wrap .shaden_contents > section .text {
  width: 48%;
  margin-top: -8px;
}

.shaden .wid_wrap .shaden_contents > section .text h1 {
  font-size: 1.8rem;
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  letter-spacing: 0.5em;
  margin: 0 0 10px;
  display: flex;
  align-items: center;
}

.shaden .wid_wrap .shaden_contents > section .text h1 span {
  font-family: Meiryo, メイリオ, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, Ryumin Medium KL, "リュウミン M-KL", "ＭＳ Ｐゴシック", Verdana, Arial, sans-serif;
  letter-spacing: normal;
  font-size: 0.9rem;
  background: #ea2b66;
  color: #fff;
  border: 1px solid #fff;
  box-shadow: 0 0 0 1px #ea2b66;
  padding: 3px 10px;
  margin: 0 20px 0 0;
  vertical-align: middle;
}

.shaden .wid_wrap .shaden_contents > section .text p {
  margin: 0 0 10px;
}

.shaden .wid_wrap .shaden_contents > section .text .sub_image {
  width: 170px;
  float: right;
}

.shaden .wid_wrap .shaden_contents > section .text .sub_image.left {
  float: left;
}

.shaden .wid_wrap .shaden_contents > section .text .sub_image img {
  width: 100%;
}

.shaden .wid_wrap .shaden_contents > section .niramiryu {
  padding: 20px 36px 20px 40px;
  margin-bottom: 30px;
  order: 3;
}

.shaden .wid_wrap .shaden_contents > section .niramiryu h1 {
  font-weight: bold;
  margin: 0 0 10px;
}

.shaden .wid_wrap .shaden_contents > section .niramiryu .image {
  width: 100%;
  margin: 20px 0 0;
}

.shaden .map_keidai .map_img {
  min-width: 560px;
  max-width: 60%;
  margin: 0 auto;
}

.shaden .map_keidai .map_img img {
  width: 100%;
}

.shaden .map_keidai .note_box {
  padding: 15px 50px 10px;
}

.shaden .map_keidai .note_box a {
  font-size: 1.2rem;
}

/*　神様とご利益　*/

.kamisama_top .title {
  overflow: hidden;
}

.kamisama_top .title figure {
  float: right;
  width: 50%;
  margin: 0 0 0 30px;
}

.kamisama_top .title figure figcaption {
  font-size: 1.1rem;
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  text-align: center;
  margin: 0 0 5px;
}

.kamisama_top .title figure img {
  width: 100%;
}

.kamisama_top .shirousagi_bn {
  margin-bottom: 40px;
}

.kamisama_top .kamisama_contents {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}

.kamisama_top .kamisama_contents > section {
  width: 47%;
  margin: 0 0 40px;
}

.kamisama_top .kamisama_contents > section h1 {
  font-size: 1.5rem;
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  margin: 0 0 10px;
  text-align: center;
}

.kamisama_top .kamisama_contents > section h1 span {
  font-size: 1.1rem;
  margin-left: 20px;
}

.kamisama_top .kamisama_contents > section .image {
  margin: 0 0 12px;
}

.kamisama_top .kamisama_contents > section .image img {
  width: 100%;
}

.kamisama_top .kamisama_contents > section .map img {
  width: 100%;
}

.kamisama_top .kamisama_contents > section .text a {
  text-decoration: underline;
}

.kamisama_top .meguri .inner_wrap {
  max-width: 880px;
  width: 100%;
  margin: 0 auto;
}

.kamisama_top .meguri .inner_wrap .meguri_sec {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex_start;
}

.kamisama_top .meguri .inner_wrap .meguri_sec > section {
  width: 30.5%;
  margin: 0 4% 35px 0;
}

.kamisama_top .meguri .inner_wrap .meguri_sec > section:nth-child(3n) {
  margin-right: 0;
}

.kamisama_top .meguri .inner_wrap .meguri_sec > section .image img {
  width: 100%;
}

.kamisama_top .meguri .inner_wrap .meguri_sec > section h2 {
  font-weight: bold;
  margin: 7px 0;
}

/*　神様とご利益　下層　*/

.kamisama:not(.kamisama_top) .title {
  overflow: hidden;
  margin: 0 auto 60px;
}

.kamisama:not(.kamisama_top) .title > p {
  text-align: center;
  margin: 30px 0 40px;
}

.kamisama:not(.kamisama_top) .title + .wid_wrap section > div {
  margin-bottom: 40px;
}

.kamisama:not(.kamisama_top) .title + .wid_wrap section > div h4 {
  margin-bottom: 20px;
  font-family: "tbchibirgothicplusk-pro",sans-serif;
}

.kamisama:not(.kamisama_top) p a {
  color: #ec6d81;
}

.kamisama:not(.kamisama_top) .wid_wrap {
  margin-bottom: 40px;
}

.kamisama:not(.kamisama_top) .wid_wrap > section h4 {
  display: inline-block;
  width: 45%;
}

.kamisama:not(.kamisama_top) .wid_wrap > section p {
  text-indent: 1rem;
}

.kamisama:not(.kamisama_top) .wid_wrap > section figure {
  float: right;
  width: 50%;
  margin: 0 0 0 30px;
}

.kamisama:not(.kamisama_top) .wid_wrap > section figure figcaption {
  margin: 5px 0;
}

.kamisama:not(.kamisama_top) .wid_wrap > section figure img {
  width: 100%;
}

.kamisama:not(.kamisama_top) .introduce {
  margin-top: 80px;
}

.kamisama:not(.kamisama_top) .introduce .inner_wrap {
  max-width: 880px;
  width: 100%;
  margin: 0 auto;
}

.kamisama:not(.kamisama_top) .introduce .inner_wrap .introduce_sec {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex_start;
}

.kamisama:not(.kamisama_top) .introduce .inner_wrap .introduce_sec > section {
  width: 30.5%;
  margin: 30px 4% 35px 0;
}

.kamisama:not(.kamisama_top) .introduce .inner_wrap .introduce_sec > section:nth-child(3n) {
  margin-right: 0;
}

.kamisama:not(.kamisama_top) .introduce .inner_wrap .introduce_sec > section .image img {
  width: 100%;
}

.kamisama:not(.kamisama_top) .introduce .inner_wrap .introduce_sec > section h2 {
  font-weight: bold;
  margin: 7px 0;
}

.kamisama:not(.kamisama_top) .introduce .inner_wrap .wrap_center + .introduce_sec > section {
  margin-top: 0;
}

/*　資料庫　*/

.shiryou_top a {
  text-decoration: underline;
}

.shiryou_top .kodai > p {
  margin: 30px 0 40px;
}

.shiryou_top .kodai figure {
  margin: 0 0 30px;
}

.shiryou_top .kodai figure figcaption {
  margin: 0 0 5px;
  text-align: center;
}

.shiryou_top .kodai figure .image {
  position: relative;
}

.shiryou_top .kodai figure .image img {
  width: 100%;
}

.shiryou_top .kodai figure .image .zukai {
  position: absolute;
  top: 20px;
  right: 20px;
  border: 1px solid #000;
}

.shiryou_top .kodai figure .image .zukai a {
  padding: 10px 10px 10px 3rem;
  background-color: #fff;
  display: block;
  background-position: 1rem 50%;
}

.shiryou_top .wid_wrap {
  margin-bottom: 40px;
}

.shiryou_top .wid_wrap .data_list {
  margin: 0 0 40px;
}

.shiryou_top .wid_wrap .data_list table {
  width: 100%;
  border-top: 2px solid #000;
  border-bottom: 2px solid #000;
}

.shiryou_top .wid_wrap .data_list table tr {
  border-top: 1px dashed #000;
}

.shiryou_top .wid_wrap .data_list table tr:first-child {
  border-top: none;
}

.shiryou_top .wid_wrap .data_list table th,
.shiryou_top .wid_wrap .data_list table td {
  padding: 10px;
}

.shiryou_top .wid_wrap .data_list table th {
  font-weight: bold;
}

.shiryou_top .wid_wrap .data_list table .pdf_note {
  float: right;
  display: inline-block;
}

.shiryou_top .section_title {
  font-size: 1.7rem;
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  text-align: center;
  margin: 0 0 30px;
}

.shiryou_top .miyako {
  margin: 125px 0 0;
}

.shiryou_top .miyako .sub_title {
  text-align: center;
  margin: 0 0 30px;
}

.shiryou_top .miyako .miyako_contents {
  overflow: hidden;
  position: relative;
}

.shiryou_top .miyako .miyako_contents .main {
  float: left;
  width: 68%;
}

.shiryou_top .miyako .miyako_contents .main figure {
  position: absolute;
  bottom: 0;
  width: 68%;
}

.shiryou_top .miyako .miyako_contents .main figure img {
  width: 100%;
}

.shiryou_top .miyako .miyako_contents .main figure figcaption {
  margin: 10px 0 22px;
}

.shiryou_top .miyako .miyako_contents .chishu {
  float: right;
  width: 28%;
}

.shiryou_top .miyako .miyako_contents .chishu img {
  width: 100%;
}

.shiryou_top .miyako .miyako_contents .chishu figcaption {
  margin: 10px 0 0;
}

.shiryou_top .yurai {
  margin: 125px 0;
}

/*　資料庫　神社本教　季刊誌　「本教」昭和４３年９月１日第九号　*/

.shiryou01 .title {
  overflow: hidden;
}

.shiryou01 .sub_h3 {
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  margin: 0 0 10px;
  text-align: center;
}

.shiryou01 .committee {
  float: right;
}

.shiryou01 .honkyou > section {
  margin-bottom: 50px;
}

.shiryou01 .honkyou h4 {
  font-weight: bold;
  margin-bottom: 10px;
}

/*　由来と歴史 共通　*/

.history.inner_contents p a {
  text-decoration: underline;
}

/*　由来と歴史 TOP　*/

.history_top > section {
  margin: 0 0 125px;
}

.history_top > section:last-child {
  margin-bottom: 0;
}

.history_top > section .title {
  overflow: hidden;
  margin: 0 auto 60px;
  max-width: 880px;
  width: 100%;
}

.history_top > section .title > p {
  margin: 30px 0 0;
}

.history_top > section .menu_area {
  background: #ebf0f1;
}

.history_top > section .menu_area .menu_area_inner {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  margin: 0 auto 60px;
  max-width: 880px;
  width: 100%;
}

.history_top > section .menu_area .menu_area_inner .image {
  width: 50%;
}

.history_top > section .menu_area .menu_area_inner .image img {
  width: 100%;
  vertical-align: bottom;
}

.history_top > section .menu_area .menu_area_inner .menu_list {
  width: 50%;
  padding: 10px 0 10px 10px;
  position: relative;
}

.history_top > section .menu_area .menu_area_inner .menu_list .menu_list_inner {
  background: #fff;
  width: 100%;
  height: 100%;
}

.history_top > section .menu_area .menu_area_inner .menu_list .menu_list_inner .menu_link {
  width: 80%;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  margin: auto;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.history_top > section .en {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  max-width: 880px;
  width: 100%;
  margin: 0 auto 80px;
}

.history_top > section .en > section {
  width: 30%;
}

.history_top > section .en > section a {
  display: block;
}

.history_top > section .en > section a .image {
  overflow: hidden;
  background: #000;
}

.history_top > section .en > section a .image img {
  width: 100%;
  vertical-align: bottom;
  -webkit-transform: scale(1);
  transform: scale(1);
  transition: opacity 1.5s ease-out, -webkit-transform 1.5s ease-out;
  transition: transform 1.5s ease-out, opacity 1.5s ease-out;
  transition: transform 1.5s ease-out, opacity 1.5s ease-out, -webkit-transform 1.5s ease-out;
}

.history_top > section .en > section a h1 {
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  margin: 7px 0;
  font-size: 1.1rem;
}

.history_top > section .en > section:hover .image img {
  -webkit-transform: scale(1.03);
  transform: scale(1.03);
  transition: opacity 1.5s ease-out , -webkit-transform 1.5s ease-out;
  transition: transform 1.5s ease-out , opacity 1.5s ease-out;
  transition: transform 1.5s ease-out , opacity 1.5s ease-out , -webkit-transform 1.5s ease-out;
}

/*　由来と歴史 下層　*/

.history:not(.history_top) .individual_info {
  margin-bottom: 50px;
}

/*　由来と歴史 地主神社の由来　*/

.yurai:not(.tanabata) .image_area {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
  margin: 50px 0;
}

.yurai:not(.tanabata) .image_area figure img {
  height: 167px;
}

.yurai:not(.tanabata) .image_area figure figcaption {
  font-size: 0.9rem;
  text-align: center;
}

.yurai:not(.tanabata) .two_column {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  margin: 40px 0 0;
}

.yurai:not(.tanabata) .two_column > section {
  width: 48%;
  padding: 20px;
  border: 1px solid #848484;
}

.yurai:not(.tanabata) .two_column > section h1 {
  font-size: 1rem;
  margin-bottom: 20px;
  text-align: center;
}

.yurai:not(.tanabata) .menu_link {
  margin: 50px 0;
  padding: 0;
}

/* 戦国～江戸時代 / 明治～大正 / 昭和～平成 */

.edo .happou {
  text-align: center;
  margin: 20px 0 0;
}

/*　宮司の言葉　*/

.guji .title,
.guji.__top .title {
  padding-bottom: 10px;
}

.guji .title p,
.guji.__top .title p {
  margin: 0 0 30px;
  text-indent: 1em;
}

.guji .individual_info .this_month,
.guji.__top .individual_info .this_month {
  max-width: 880px;
  width: 100%;
  margin: 0 auto 50px;
}

.guji .individual_info .this_month .words > div,
.guji.__top .individual_info .this_month .words > div {
  margin: 0 0 100px;
}

.guji .individual_info .this_month .words > div p,
.guji.__top .individual_info .this_month .words > div p {
  word-wrap: break-word;
}

.guji .individual_info .this_month .words > div img,
.guji.__top .individual_info .this_month .words > div img {
  max-width: 100%;
}

.guji .archive,
.guji.__top .archive {
  border-top: 1px dashed #ccc;
  border-bottom: 1px dashed #ccc;
  background: #e9e9e1;
  padding: 10px 0;
}

.guji .archive > div,
.guji.__top .archive > div {
  text-align: center;
}

.guji .archive > div span,
.guji.__top .archive > div span {
  display: inline-block;
  background: url(../img/common/icon_book.png) 0 0 no-repeat;
  background-size: 22px;
  font-weight: bold;
  font-size: 1.1rem;
  padding: 2px 0 10px 33px;
}

.guji .archiveSelect,
.guji.__top .archiveSelect {
  background: #f6f6ed;
  padding-top: 30px;
  text-align: right;
  overflow: hidden;
}

.guji .archiveSelect .archive_select_month,
.guji.__top .archiveSelect .archive_select_month {
  float: left;
  padding: 3px 5px;
}

.guji .archiveSelect .gujibackbtn,
.guji.__top .archiveSelect .gujibackbtn {
  float: right;
}

.guji .archiveSelect .gujibackbtn a,
.guji.__top .archiveSelect .gujibackbtn a {
  background: #ec6d81;
  color: #fff;
  border-radius: 5px;
  padding: 5px 10px;
  font-size: 0.8rem;
}

.guji .archive_formWrap,
.guji.__top .archive_formWrap {
  position: relative;
}

.toKotoba {
  position: absolute;
  top: 20%;
  right: 0;
}

.toKotoba a {
  padding-left: 20px;
  background: url(../img/common/icon_up.png) left 40%/16px no-repeat;
  color: #ec6d81;
}

.read_contents .toKotoba {
  position: static;
  margin-top: 20px;
  text-align: right;
}

.guji_top .archiveSelect,
.guji.__top .archiveSelect {
  display: none;
}

.guji_top .toKotoba,
.guji.__top .toKotoba {
  display: none;
}

/*　お守り　シーン　*/

.scene .title {
  padding-bottom: 10px;
}

.scene .title p {
  margin: 0 0 30px;
}

.scene_contents {
  max-width: 880px;
  width: 100%;
  margin: 0 auto;
  background-size: 6px 6px;
  padding: 15px;
}

.love .scene_contents {
  background-image: linear-gradient(-45deg, transparent 48%, #ea546b 48%, #ea546b 52%, transparent 52%, transparent);
}

.study .scene_contents {
  background-image: linear-gradient(-45deg, transparent 48%, #378de0 48%, #378de0 52%, transparent 52%, transparent);
}

.family .scene_contents {
  background-image: linear-gradient(-45deg, transparent 48%, #61ab25 48%, #61ab25 52%, transparent 52%, transparent);
}

.other .scene_contents {
  background-image: linear-gradient(-45deg, transparent 48%, #c9933e 48%, #c9933e 52%, transparent 52%, transparent);
}

.scene_contents > section {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  margin: 0 0 15px;
}

.love .scene_contents > section {
  border: 1px solid #ea546b;
}

.study .scene_contents > section {
  border: 1px solid #378de0;
}

.family .scene_contents > section {
  border: 1px solid #61ab25;
}

.other .scene_contents > section {
  border: 1px solid #c9933e;
}

.scene_contents > section:last-child {
  margin-bottom: 0;
}

.scene_contents > section .text {
  order: 2;
  width: 50%;
  padding: 30px;
  background: #fff;
}

.scene_contents > section .text h1 {
  color: #e9546b;
  font-size: 1.4rem;
  font-weight: bold;
  background-size: 42px;
  background-position: 0 50%;
  background-repeat: no-repeat;
  padding-left: 40px;
  margin: 0 0 20px;
}

.love .scene_contents > section .text h1 {
  color: #ea546b;
  background-image: url(../img/omamori/icon_omamori_love.jpg);
}

.study .scene_contents > section .text h1 {
  color: #378de0;
  background-image: url(../img/omamori/icon_omamori_study.jpg);
}

.family .scene_contents > section .text h1 {
  color: #61ab25;
  background-image: url(../img/omamori/icon_omamori_family.jpg);
}

.other .scene_contents > section .text h1 {
  color: #c9933e;
  background-image: url(../img/omamori/icon_omamori_other.jpg);
}

.scene_contents > section .image {
  width: 50%;
}

.love .scene_contents > section .image {
  border-right: 1px solid #ea546b;
}

.study .scene_contents > section .image {
  border-right: 1px solid #378de0;
}

.family .scene_contents > section .image {
  border-right: 1px solid #61ab25;
}

.other .scene_contents > section .image {
  border-right: 1px solid #c9933e;
}

.scene_contents > section .image img {
  width: 100%;
  vertical-align: bottom;
}

.scene_contents > section:nth-child(even) .image {
  order: 2;
  border-right: none;
}

.love .scene_contents > section:nth-child(even) .image {
  border-left: 1px solid #ea546b;
}

.study .scene_contents > section:nth-child(even) .image {
  border-left: 1px solid #378de0;
}

.family .scene_contents > section:nth-child(even) .image {
  border-left: 1px solid #61ab25;
}

.other .scene_contents > section:nth-child(even) .image {
  border-left: 1px solid #c9933e;
}

/*　特別祈願　*/

.kigan .note_box_wrap {
  text-align: center;
}

.kigan .note_box_wrap .note_box {
  max-width: 700px;
  width: 100%;
  margin: 0 auto 70px;
}

.kigan .note_box_wrap .note_box h4 {
  font-size: 1.3rem;
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  text-align: center;
  padding: 3px 0;
}

.kigan .note_box_wrap .note_box > div {
  padding-bottom: 10px;
}

.kigan .note_box_wrap .note_box > div .kigan_list {
  overflow: hidden;
  padding: 0 0 15px;
}

.kigan .note_box_wrap .note_box > div .kigan_list li {
  float: left;
  width: 20%;
  padding: 3px 0;
}

.kigan .note_box_wrap .note_box > div .kigan_list li:before {
  content: '●';
  color: #cad4d8;
}

.kigan .note_box_wrap .note_box > div .note {
  border-top: 1px dashed #cad4d8;
  padding: 10px 0 10px 10px;
}

.kigan .individual_info .read {
  margin: 0 0 70px;
}

.kigan .individual_info .read .dairi {
  margin: 30px 0 0;
}

.kigan .individual_info .read .dairi span {
  background: #cad4d8;
  color: #fff;
  padding: 3px 10px;
  margin-right: 10px;
}

.kigan .individual_info > section p a {
  color: #ec6d81;
}

.kigan .individual_info > section > div .pdf {
  display: block;
  margin: 15px 0;
}

.kigan .individual_info > section > div address {
  margin: 15px 0;
}

.kigan .individual_info .h3_sec {
  margin: 20px 0;
}

.kigan .individual_info .h3_sec h3 {
  font-weight: bold;
}

.kigan .individual_info .aside {
  margin: 20px 0;
}

.kigan .individual_info .note_box h2 {
  margin: 30px 0 20px;
  font-size: 1.15rem;
}

.kigan .individual_info .note_box .image {
  width: 80%;
  margin: 30px auto 0;
}

.kigan .individual_info .note_box .image span {
  font-size: 1rem;
}

.kigan .individual_info .note_box .image img {
  width: 100%;
}

/*　正しい参拝の仕方　*/

.sanpai .menu_area {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}

.sanpai .menu_area p {
  width: 55%;
}

.sanpai .menu_area .menu_link {
  width: 40%;
}

.sanpai .individual_info .wid_wrap .movie_kiyomekata {
  margin: 0 auto 30px;
  max-width: 560px;
}

/*　地主神社の由来（縄文）　*/

.rekishi .individual_info .kamishiro {
  overflow: hidden;
}

.rekishi .individual_info .kamishiro > p {
  float: left;
  width: 57%;
}

.rekishi .individual_info .kamishiro .image {
  float: right;
  width: 40%;
}

.rekishi .individual_info .kamishiro .image img {
  width: 100%;
}

.rekishi .individual_info .chronology {
  margin: 35px 0;
}

.rekishi .individual_info .chronology > section {
  border-bottom: 1px dashed #7b7b76;
  padding: 20px 0 0;
  overflow: hidden;
}

.rekishi .individual_info .chronology > section h2 {
  font-size: 1.375rem;
  display: inline-block;
  text-align: right;
  width: 80px;
}

.rekishi .individual_info .chronology > section span {
  font-size: 0.9rem;
  margin-left: 10px;
  vertical-align: text-bottom;
  display: inline-block;
  width: 70px;
}

.rekishi .individual_info .chronology > section p {
  padding: 7px 0 0;
  float: right;
  max-width: 670px;
  width: 100%;
  padding-left: 18px;
}

.rekishi .individual_info .note_box {
  width: 100%;
  display: block;
}

/* 地主物語　共通　 */

.monogatari .monogatari_title {
  max-width: 880px;
  width: 100%;
  margin: 0 auto 80px;
}

.monogatari .monogatari_title h4 {
  font-size: 2rem;
  margin: 0 0 30px;
  text-align: center;
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.monogatari .monogatari_contents {
  max-width: 880px;
  width: 100%;
  margin: 0 auto;
}

.monogatari .monogatari_contents img {
  width: 100%;
}

.monogatari .monogatari_contents > section {
  margin: 0 0 80px;
}

.monogatari .monogatari_contents > section h2 {
  font-size: 1.3rem;
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  margin: 0 0 25px;
}

.monogatari .monogatari_contents > section > div {
  overflow: hidden;
}

.monogatari .monogatari_contents > section > div .image {
  width: calc(50% - 20px);
  float: right;
  margin: 0 0 10px 30px;
}

.monogatari .monogatari_contents .note_box:not(.normal) {
  padding: 20px 36px 20px 40px;
}

.monogatari .monogatari_contents .note_box:not(.normal) h1 {
  font-weight: bold;
  margin: 0 0 10px;
}

.monogatari .monogatari_contents .note_box:not(.normal) .image {
  width: 100%;
  margin: 20px 0 0;
}

.monogatari .image_area {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  margin: 50px 0 0;
}

.monogatari .image_area figure {
  margin-right: 40px;
}

.monogatari .image_area figure .image img {
  width: 100%;
}

.monogatari .image_area figure:last-child {
  margin-right: 0;
}

.monogatari .image_area figure figcaption {
  text-align: left;
}

/* 地主物語　プロローグ　 */

.monogatari_top .mikuruma {
  margin-bottom: 60px;
}

.monogatari_top .mikuruma figure img {
  width: 100%;
}

.monogatari_top .mikuruma section {
  margin: 40px 0;
}

.monogatari_top .mikuruma section h4 {
  text-align: center;
  margin: 0 0 40px;
}

.monogatari_top .mikuruma section h4 img {
  max-width: 314px;
  width: 100%;
}

.monogatari_top .mikuruma section .poetry {
  text-align: center;
}

.monogatari_top .mikuruma section .poetry p {
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  line-height: 2.2rem;
  font-size: 1.1rem;
}

.monogatari_top .individual_info h1 {
  width: 440px;
}

.monogatari_top .individual_info .note_box_wrap {
  margin: 0 0 80px;
}

.monogatari_top .individual_info .note_box_wrap .note_box {
  display: block;
}

.monogatari_top .individual_info .gunjin {
  overflow: hidden;
}

.monogatari_top .individual_info .gunjin > div .text {
  width: 69%;
  float: left;
}

.monogatari_top .individual_info .gunjin > div figure {
  width: 27%;
  float: right;
}

.monogatari_top .individual_info .gunjin > div figure .image img {
  width: 100%;
}

/* 地主物語　冬　 */

.winter .image_area_komainu {
  width: 410px;
  margin: 0 auto;
}

.winter .image_area_komainu img {
  width: 100%;
}

/* 地主物語　縁　共通　 */

.en_menu ul {
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  margin: 0 0 80px;
}

.en_menu ul li {
  position: relative;
}

.en_menu ul li:before {
  content: '●';
  color: #ff0000;
  position: absolute;
  top: -24%;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.en_menu ul li.current a {
  color: #ff0000;
}

.en_menu ul li.current:hover {
  cursor: default;
}

.en_menu ul li a {
  display: block;
  padding: 8px 30px 5px;
  font-size: 1.25rem;
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: bold;
}

.en_menu ul li a span {
  color: #ff0000;
}

.en .monogatari_title > p {
  text-align: center;
  line-height: 1.8rem;
  font-size: 1rem;
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.en .monogatari_title h4 {
  margin-bottom: 20px;
  font-size: 1.8rem;
}

.en .monogatari_title h4 .larger {
  font-size: 2.18rem;
}

.en .monogatari_title h4 span:not(.larger) {
  color: #ff0000;
}

.en .menu_link {
  margin: 0 0 50px;
}

/* 地主物語　縁のはじまり　 */

.en_top .monogatari_contents > section > div .image {
  width: 40%;
}

/* 地主物語　縁を詠む　 */

.yomu .monogatari_contents .note_box:not(.normal) {
  /*individual_info_noteがあるので>sectionにpadding*/
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0;
}

.yomu .monogatari_contents .note_box:not(.normal) > section {
  padding: 0 40px 40px;
}

.yomu .monogatari_contents .note_box:not(.normal) > section:first-child {
  border-bottom: 1px solid #cad4d8;
  margin-bottom: 3px;
  margin-left: 3px;
}

.yomu .monogatari_contents .note_box:not(.normal) p {
  margin: 0 0 10px;
}

.yomu .monogatari_contents .note_box:not(.normal) p:last-child {
  margin-bottom: 0;
}

.yomu .monogatari_contents .note_box:not(.normal) .poem {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-around;
  margin: 10px 0 30px;
}

.yomu .monogatari_contents .note_box:not(.normal) .poem:last-child {
  margin-bottom: 0;
}

.yomu .monogatari_contents .note_box:not(.normal) .poem .image {
  width: 192px;
}

.yomu .monogatari_contents .note_box:not(.normal) .poem .instruction {
  max-width: 430px;
  width: 100%;
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
}

.yomu .monogatari_contents .note_box:not(.normal) .poem .instruction .collection {
  font-size: 1.68rem;
  margin: 0 0 40px;
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  margin-left: -1rem;
}

.yomu .monogatari_contents .note_box:not(.normal) .poem .instruction .collection span {
  font-size: 1rem;
}

.yomu .monogatari_contents .note_box:not(.normal) .poem .instruction .translation {
  margin: 0 0 80px;
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  text-indent: -1.7rem;
  padding-left: 1.7rem;
}

.yomu .monogatari_contents .note_box:not(.normal) .individual_info_note {
  background: #fcfbf6;
  padding: 30px 36px 30px 40px;
  margin: 0 0 0 4px;
  border-top: 1px solid #cad4d8;
}

.yomu .monogatari_contents .note_box:not(.normal) .individual_info_note h4 {
  font-weight: bold;
  margin: 0 0 10px;
}

.yomu .monogatari_contents .note_box:not(.normal) .individual_info_note > section {
  margin-bottom: 30px;
}

.yomu .monogatari_contents .note_box:not(.normal) .individual_info_note > section:last-child {
  margin-bottom: 0;
}

.yomu .monogatari_contents .note_box:not(.normal).yuya > section figure {
  margin: 0 0 10px 30px;
  width: 25%;
  float: right;
}

.yomu .monogatari_contents .note_box:not(.normal).yuya > section figure .image {
  margin: 0;
}

.yomu .monogatari_contents .note_box:not(.normal).yuya > section figure figcaption {
  font-size: 0.8rem;
  line-height: 1.4rem;
}

/*　因幡の白ウサギ　*/

.shirousagi .read {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  position: relative;
}

.shirousagi .read .image {
  max-width: 200px;
  width: 50%;
  margin: -10% 0 0 50px;
  vertical-align: bottom;
}

.shirousagi .read .image img {
  width: 100%;
}

.shirousagi .read .text .note {
  margin: 20px 0;
}

.shirousagi .mukashibanashi {
  max-width: 880px;
  width: 100%;
  margin: -15px auto 0;
}

.shirousagi .mukashibanashi .image {
  margin: 0 0 40px;
}

.shirousagi .mukashibanashi .image img {
  width: 100%;
}

/*　Topics BLOG　*/

.blog.inner_contents {
  max-width: 1000px;
  width: 100%;
  margin: 50px auto 30px ;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}

.blog.inner_contents a {
  text-decoration: underline;
}

.blog.inner_contents .blog_wrapper {
  margin-right: 45px;
	margin-left:  45px;
}

.blog.inner_contents .blog_wrapper > h1 {
  font-family: "tbchibirgothicplusk-pro",sans-serif;
  border-left: 2px solid #ec6d81;
  padding: 7px 0 11px 10px;
  font-size: 1.25rem;
  margin: 0 0 50px;
  font-weight: bold;
  background: #f6f6ed;
}

.blog.inner_contents .blog_wrapper > h1 .s_title {
  background: #ec6d81;
  color: #fff;
  font-size: 0.7rem;
  display: inline-block;
  padding: 1px 5px 5px;
  margin: 0 15px 2px 0;
  border-radius: 3px;
  vertical-align: middle;
}

.blog.inner_contents .blog_wrapper > h1 .total_results {
  margin-left: 15px;
  font-size: 0.8rem;
}

.blog.inner_contents .topics_blog_sec > section {
  border-top: 2px solid #000;
  margin: 0 0 90px;
}

.blog.inner_contents .topics_blog_sec > section h1 {
  font-size: 1.25rem;
  padding: 6px 0 9px;
  font-family: "tbchibirgothicplusk-pro",sans-serif;
}

.blog.inner_contents .topics_blog_sec > section .data {
  border-top: 1px dotted #000;
  border-bottom: 1px solid #000;
  padding: 5px 0;
  font-family: "tbchibirgothicplusk-pro",sans-serif;
}

.blog.inner_contents .topics_blog_sec > section .data .date {
  float: left;
  margin: 0 50px 0 0;
}

.blog.inner_contents .topics_blog_sec > section .data .date span {
  font-weight: bold;
  margin: 0 30px 0 0;
}

.blog.inner_contents .topics_blog_sec > section .data .category {
  font-family: "tbchibirgothicplusk-pro",sans-serif;
}

.blog.inner_contents .topics_blog_sec > section .data .category span {
  font-weight: bold;
  margin: 0 30px 0 0;
}

.blog.inner_contents .topics_blog_sec > section .data .category .post-categories {
  display: inline-block;
}

.blog.inner_contents .topics_blog_sec > section .text {
  padding: 40px 0 0;
  overflow: hidden;
  /*ブログ記事内のスタイル*/
}

.blog.inner_contents .topics_blog_sec > section .text p {
  margin-bottom: 1em;
}

.blog.inner_contents .topics_blog_sec > section .text h3 {
  margin: 20px 0 10px;
}

.blog.inner_contents .topics_blog_sec > section .text .alignright {
  float: right;
  display: block;
  margin: 0 0 10px 30px;
}

.blog.inner_contents .topics_blog_sec > section .text .alignleft {
  float: left;
  display: block;
  margin: 0 30px 10px 0;
}

.blog.inner_contents .topics_blog_sec > section .text .aligncenter {
  display: block;
  margin: 10px auto;
}

.blog.inner_contents .topics_blog_sec > section .text .column_img {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  margin: 20px 0;
}

.blog.inner_contents .topics_blog_sec > section .text .column_img img,
.blog.inner_contents .topics_blog_sec > section .text .column_img a {
  display: block;
  height: auto;
  margin: 0;
}

.blog.inner_contents .topics_blog_sec > section .text .column_img.col2 a {
  width: 48%;
}

.blog.inner_contents .topics_blog_sec > section .text .column_img.col2 a img {
  width: 100%;
  height: 100%;
}

.blog.inner_contents .topics_blog_sec > section .text .column_img.col2 img {
  width: 48%;
  height: 48%;
}

.blog.inner_contents .topics_blog_sec > section .text .column_img.col3 a {
  width: 32%;
}

.blog.inner_contents .topics_blog_sec > section .text .column_img.col3 a img {
  width: 100%;
  height: 100%;
}

.blog.inner_contents .topics_blog_sec > section .text .column_img.col3 img {
  width: 32%;
  height: 32%;
}

.blog.inner_contents .topics_blog_sec > section .text .column_img.col4 a {
  width: 24%;
}

.blog.inner_contents .topics_blog_sec > section .text .column_img.col4 a img {
  width: 100%;
  height: 100%;
}

.blog.inner_contents .topics_blog_sec > section .text .column_img.col4 img {
  width: 24%;
  height: 24%;
}

.blog.inner_contents .topics_blog_sec > section .text .indent_1 {
  margin-left: 1em;
  text-indent: 0;
}

.blog.inner_contents .topics_blog_sec > section .text .indent_2 {
  margin-left: 2em;
  text-indent: 0;
}

.blog.inner_contents .topics_blog_sec > section .text .indent_3 {
  margin-left: 3em;
  text-indent: 0;
}

.blog.inner_contents .topics_blog_sec > section .text .indent_4 {
  margin-left: 4em;
  text-indent: 0;
}

.blog.inner_contents .topics_blog_sec > section .text .indent_5 {
  margin-left: 5em;
  text-indent: 0;
}

.blog.inner_contents .topics_blog_sec > section .text .indent_top {
  text-indent: 1em;
}

.blog.inner_contents .topics_blog_sec > section .text ul.list li {
  padding-left: 2rem;
}

.blog.inner_contents .topics_blog_sec > section .text ul.list li::before {
  content: '▼';
}

.blog.inner_contents .topics_blog_sec > section .text ul.list li ul li::before {
  content: '◇';
}

.blog.inner_contents .topics_blog_sec > section .text ul.list_disc li {
  padding-left: 2rem;
}

.blog.inner_contents .topics_blog_sec > section .text ul.list_disc li::before {
  content: '・';
}

.blog.inner_contents .topics_blog_sec > section .text ul.list_star li {
  text-indent: -1.5em;
  padding-left: 1.5em;
}

.blog.inner_contents .topics_blog_sec > section .text ul.list_star li::before {
  content: '☆';
}

.blog.inner_contents .topics_blog_sec > section .text .list_description {
  margin: 10px 0;
}

.blog.inner_contents .topics_blog_sec > section .text .list_description th,
.blog.inner_contents .topics_blog_sec > section .text .list_description td {
  border: none;
  vertical-align: top;
}

.blog.inner_contents .topics_blog_sec > section .text .list_description th {
  padding: 5px 20px 5px 0;
}

.blog.inner_contents .topics_blog_sec > section .text .list_description td {
  padding: 5px 0;
}

.blog.inner_contents .topics_blog_sec > section .text .star {
  text-indent: -1em;
  padding-left: 1em;
}

.blog.inner_contents .topics_blog_sec > section .text .star::before {
  content: '★';
}

.blog.inner_contents .topics_blog_sec > section .text .star_w {
  text-indent: -1em;
  padding-left: 1em;
}

.blog.inner_contents .topics_blog_sec > section .text .star_w::before {
  content: '☆';
}

.blog.inner_contents .topics_blog_sec > section .text .dia {
  text-indent: -1em;
  padding-left: 1em;
}

.blog.inner_contents .topics_blog_sec > section .text .dia::before {
  content: '◆';
}

.blog.inner_contents .topics_blog_sec > section .text .dia_w {
  text-indent: -1em;
  padding-left: 1em;
}

.blog.inner_contents .topics_blog_sec > section .text .dia_w::before {
  content: '◇';
}

.blog.inner_contents .topics_blog_sec > section .text .green {
  color: #339966;
}

.blog.inner_contents .topics_blog_sec > section .text .blue {
  color: #0e46ff;
}

.blog.inner_contents .topics_blog_sec > section .text .red {
  color: #ff0e42;
}

.blog.inner_contents .topics_blog_sec > section .text .pink {
  color: #ff0ec2;
}

.blog.inner_contents .topics_blog_sec > section .text .light_blue {
  color: #00bfff;
}

.blog.inner_contents .topics_blog_sec > section .gyouji_yotei {
  margin: 30px 0;
}

.blog.inner_contents .topics_blog_sec > section .gyouji_yotei p {
  margin-bottom: 1rem;
}

.blog.inner_contents .topics_blog_sec > section .kigan_link {
  background: #f2fafe;
  padding: 15px;
  margin: 20px 0;
}

.blog.inner_contents .topics_blog_sec > section .sns {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  margin: 20px;
}

.blog.inner_contents .topics_blog_sec > section .sns > div {
  width: 40px;
  margin: 0 10px;
}

.blog.inner_contents .topics_blog_sec > section .sns > div img {
  width: 100%;
}

.blog.inner_contents .widget {
  min-width: 200px;
}

.blog.inner_contents .widget .side_widet {
  margin-bottom: 50px;
}

.blog.inner_contents .widget .side_widet h2,
.blog.inner_contents .widget .side_widet .screen-reader-text {
  display: block;
  background: 50% 0 no-repeat;
  text-indent: -9999px;
  background-size: contain;
  height: 50px;
  margin-bottom: 10px;
  font-family: "tbchibirgothicplusk-pro",sans-serif;
}

.blog.inner_contents .widget .widget_calendar {
  background: url(../img/blog/bg_calender.png);
  background-size: 5px;
  padding: 10px;
}

.blog.inner_contents .widget .widget_calendar table {
  width: 100%;
}

.blog.inner_contents .widget .widget_calendar table caption {
  text-align: center;
  margin-bottom: 5px;
  font-family: "tbchibirgothicplusk-pro",sans-serif;
}

.blog.inner_contents .widget .widget_calendar table td,
.blog.inner_contents .widget .widget_calendar table th {
  text-align: center;
}

.blog.inner_contents .widget .widget_calendar table tfoot td {
  padding-top: 5px;
}

.blog.inner_contents .widget .widget_calendar table #prev {
  text-align: left;
}

.blog.inner_contents .widget .widget_calendar table #next {
  text-align: right;
}

.blog.inner_contents .widget .widget_calendar a {
  color: #ec6d81;
}

.blog.inner_contents .widget .widget_search .screen-reader-text {
  background-image: url(../img/blog/icon_search.png);
}

.blog.inner_contents .widget .widget_search input[type='text'] {
  width: 70%;
  display: inline-block;
  border: 1px solid #ccc;
  padding-left: 3px;
}

.blog.inner_contents .widget .widget_search input[type='submit'] {
  width: 29%;
  display: inline-block;
  float: right;
  border-radius: 5px;
  background: #fff;
  height: 90%;
  outline: none;
  border: 1px solid #ccc;
  cursor: pointer;
}

.blog.inner_contents .widget .widget_categories .screen-reader-text,
.blog.inner_contents .widget .widget_archive .screen-reader-text,
.blog.inner_contents .widget .link .screen-reader-text {
  display: none;
}

.blog.inner_contents .widget .widget_categories > ul,
.blog.inner_contents .widget .widget_archive > ul,
.blog.inner_contents .widget .link > ul {
  padding: 0 0 0 10px;
  margin: 20px 0 0;
}

.blog.inner_contents .widget .widget_categories > ul li,
.blog.inner_contents .widget .widget_archive > ul li,
.blog.inner_contents .widget .link > ul li {
  margin: 0 0 8px;
}

.blog.inner_contents .widget .widget_categories > ul li a,
.blog.inner_contents .widget .widget_archive > ul li a,
.blog.inner_contents .widget .link > ul li a {
  text-decoration: none;
  font-size: 0.8rem;
}

.blog.inner_contents .widget .widget_categories select,
.blog.inner_contents .widget .widget_archive select,
.blog.inner_contents .widget .link select {
  width: 100%;
}

.blog.inner_contents .widget .widget_categories h2 {
  background-image: url(../img/blog/icon_category.png);
}

.blog.inner_contents .widget .widget_archive h2 {
  background-image: url(../img/blog/icon_backnumber.png);
}

.blog.inner_contents .widget .link h2 {
  background-image: url(../img/blog/icon_link.png);
}

.blog_menu_btn {
  position: fixed;
  bottom: 20px;
  left: 10px;
  z-index: 1;
}

.blog_menu_btn a {
  display: block;
  width: 60px;
  height: 60px;
  background: url(../img/blog/blog_menu_btn.png) no-repeat;
  background-size: contain;
}

.sitetop_btn {
  position: fixed;
  bottom: 20px;
  left: 75px;
  z-index: 1;
}

.sitetop_btn a {
  display: block;
  width: 60px;
  height: 60px;
  background: url(../img/common/icon_sitetop.png) no-repeat;
  background-size: contain;
}

/*　Topics BLOGのページネーション　*/

.pagination {
  padding: 10px 0;
  position: relative;
  font-size: 0.8rem;
  text-align: center;
}

.pagination-box {
  display: inline-block;
}

.pagination span,
.pagination a {
  display: block;
  float: left;
  margin: 2px 2px 2px 0;
  padding: 10px 15px 10px 15px;
  text-decoration: none;
  width: auto;
  color: #fff;
  background: #ec6d81;
}

.pagination a:hover {
  color: #fff;
  background: #666;
}

.pagination .current {
  padding: 10px 15px 10px 15px;
  background: #666;
  color: #fff;
}

/* ハッピーフレンズ　*/

.kids_top .kids_contents {
  max-width: 880px;
  width: 100%;
  margin: 0 auto;
}

.kids_top .kids_contents a {
  color: #ec6d81;
}

.kids_top h3 {
  text-align: center;
  margin: 0 0 20px;
}

.kids_top h3::before {
  content: '';
  display: block;
  width: 100%;
  background-repeat: no-repeat;
  background-size: contain;
  margin: 0 0 20px;
}

.kids_top h3 img {
  width: 235px;
}

.kids_top .en h3::before {
  background-image: url(../img/kids/line_01.png);
  padding-bottom: 11.51%;
}

.kids_top .en h3 img {
  width: 235px;
}

.kids_top .en p {
  margin: 0 0 1.8rem;
}

.kids_top .bokunoichinichi h3::before {
  background-image: url(../img/kids/line_02.png);
  padding-bottom: 16.65%;
}

.kids_top .bokunoichinichi h3 img {
  width: 454px;
}

.kids_top .bokunoichinichi > section {
  margin: 0 0 50px;
}

.kids_top .bokunoichinichi > section:last-child {
  margin-bottom: 20px;
}

.kids_top .bokunoichinichi h4 {
  width: 98px;
  float: left;
  margin: 0 40px 0 0;
}

.kids_top .bokunoichinichi h4 img {
  width: 100%;
}

.kids_top .bokunoichinichi p {
  overflow: hidden;
}

.kids_top .oshiete h3::before {
  background-image: url(../img/kids/line_03.png);
  padding-bottom: 16.01%;
}

.kids_top .oshiete h3 img {
  width: 275px;
}

.kids_top .oshiete .qa > div {
  margin: 0 0 30px;
  background-image: linear-gradient(-45deg, #fff100 48%, #cce628 48%, #cce628 52%, #fff100 52%, #fff100);
  background-size: 8px 8px;
  padding: 5px;
  border-radius: 6px;
}

.kids_top .oshiete .qa .q {
  background: url(../img/kids/txt_q.png) 5px 10px no-repeat;
  background-size: 25px;
  padding: 15px 15px 15px 40px;
  text-decoration: underline;
  color: #0094cd;
}

.kids_top .oshiete .qa .a {
  background: url(../img/kids/txt_a.png) 5px 18px no-repeat #fff;
  background-size: 25px;
  padding: 15px 15px 15px 40px;
  border-radius: 6px;
}

.kids_top .bn {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  margin: 60px 0 0;
}

.kids_top .bn_sec {
  width: 100%;
}

.kids_top .bn_sec + .bn_sec {
  margin-left: 10px;
}

.kids_top .bn_sec img {
  width: 100%;
}

/* 花だより　*/

.hana p a {
  color: #ec6d81;
}

.hana .month_container {
  margin-bottom: 80px;
}

.hana .month_link li {
  float: left;
  margin: 0 20px 0 0;
}

.hana .month_link li a {
  color: #ec6d81;
}

.hana h4 {
  font-size: 1.4rem;
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  border-bottom: 1px solid #000;
  margin: 0 0 30px;
}

.hana h4 .kyureki {
  float: right;
  font-size: 1.2rem;
  line-height: 2.6rem;
}

.hana h4 .kyureki .kana {
  font-size: 1rem;
  margin-left: 10px;
}

.hana h4 + .note_box {
  margin: 0 0 30px;
  width: 100%;
}

.hana .flex_div {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
}

.hana .one_sec {
  width: 30%;
  margin: 0 43px 50px 0;
  margin-right: calc((100% - (30% * 3)) / 2);
}

.hana .one_sec:nth-child(3n) {
  margin-right: 0;
}

.hana .one_sec a {
  color: #ec6d81;
}

.hana .one_sec figure {
  height: 180px;
  overflow: hidden;
}

.hana .one_sec figure img {
  width: 100%;
}

.hana .one_sec figure img.yukiyanagi {
  width: 150%;
}

.hana .one_sec h5 {
  color: #c23838;
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 1.2rem;
  margin: 3px 0 0;
}

.hana .one_sec h5 .kana {
  font-size: 1rem;
  margin-left: 10px;
}

/* お守りのご紹介　厄年早見表 */

.yaku.omamori .yaku_hayami {
  border-collapse: collapse;
  margin: 0 auto 30px;
}

.yaku.omamori .yaku_hayami th,
.yaku.omamori .yaku_hayami td {
  border: 1px solid #666;
  padding: 5px 10px;
}

/* よくあるご質問 */

.faq_top p a {
  color: #ec6d81;
}

.faq_top .h4_sec {
  margin: 0 0 90px;
}

.faq_top .h4_sec .faq_title {
  font-size: 1.2rem;
  margin: 0 0 35px;
  font-family: "tbchibirgothicplusk-pro",sans-serif;
}

.faq_top .h4_sec .one_faq {
  margin: 0 0 25px;
}

.faq_top .h4_sec .question {
  border-bottom: 1px dashed #a1a1a1;
  padding: 10px 0 2px;
  overflow: hidden;
}

.faq_top .h4_sec .question .q {
  font-size: 1.2rem;
  display: block;
  float: left;
  margin: -5px 20px 0 0;
}

.faq_top .h4_sec .question p {
  overflow: hidden;
}

.faq_top .h4_sec .answer {
  padding: 0 0 0 47px;
  margin: 10px 0 0;
}

.faq_top .h4_sec.ippan .question .q {
  color: #6cbb5a;
}

.faq_top .h4_sec.ippan .answer {
  color: #6cbb5a;
}

.faq_top .h4_sec.omamori .question .q {
  color: #e95377;
}

.faq_top .h4_sec.omamori .answer {
  color: #e95377;
}

.faq_top .h4_sec.kigan .question .q {
  color: #ff7e00;
}

.faq_top .h4_sec.kigan .answer {
  color: #ff7e00;
}

.faq_top .h4_sec h5 {
  color: #666;
  margin: 20px 0 5px;
}

.faq_top .h4_sec h5:first-child {
  margin-top: 0;
}

.faq_top .h4_sec ol {
  padding: 0 0 0 1.3rem;
}

.faq_top .h4_sec ol li {
  list-style: decimal;
}

/* ご感想 */

.mail_top .required_mark {
  color: #de1916;
}

.mail_table {
  border-collapse: collapse;
  max-width: 850px;
  width: 100%;
}

.mail_table th,
.mail_table td {
  border: 1px solid #999999;
  padding: 7px 5px;
}

.mail_table th {
  background: #ecffd0;
  text-align: right;
}

.mail_table input {
  vertical-align: middle;
}

.mail_table input[type="radio"] {
  margin: 0 4px 0 0;
}

.mail_table input[type="text"],
.mail_table textarea {
  border: 1px solid #ccc;
}

.mail_table .man {
  margin: 0 20px 0 0;
}

.mail_table .submit_td {
  text-align: center;
}

.mail_table .submit_td input[type='submit'],
.mail_table .submit_td input[type='reset'] {
  border-radius: 5px;
  background: #fff;
  height: 90%;
  outline: none;
  cursor: pointer;
  border: 1px solid #ccc;
  padding: 1px 8px;
}

.inner_contents_mailform {
  padding: 30px;
  max-width: 600px;
  margin: 0 auto;
}

.inner_contents_mailform h2 {
  text-align: center;
}

.inner_contents_mailform p {
  text-align: center;
}

.inner_contents_mailform ul {
  padding-left: 20px;
}

.inner_contents_mailform .mail_table {
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
}

.inner_contents_mailform .mail_table th {
  min-width: 80px;
}

.inner_contents_mailform .btn {
  text-align: center;
}

.inner_contents_mailform .btn input {
  border-radius: 5px;
  background: #fff;
  height: 90%;
  outline: none;
  cursor: pointer;
  border: 1px solid #ccc;
}

/* アクセスマップ */

.access_top img {
  width: 100%;
}

.access_top .googlemap {
  margin: 0 0 100px;
}

.access_top .googlemap iframe {
  width: 100%;
  height: 410px;
}

.access_top .googlemap address {
  width: 880px;
  display: block;
  text-align: left;
  margin: 5px auto 0;
}

.access_top .map {
  text-align: center;
  margin: 0 auto 70px;
  width: 750px;
}

.access_top .pattern {
  margin: 0 0 70px;
  display: flex;
  flex-flow: nowrap;
}

.access_top .pattern .text {
  padding: 0 30px 0 0;
  width: 100%;
}

.access_top .pattern .text h4 {
  font-size: 1.2rem;
  margin: 0 0 30px;
  font-family: "tbchibirgothicplusk-pro",sans-serif;
}

.access_top .pattern .text ul {
  margin: 0 0 30px;
}

.access_top .pattern .text ul li {
  margin: 0 0 10px;
}

.access_top .pattern .text ul li::before {
  content: '■';
}

.access_top .pattern .text p:last-child {
  margin: 15px 0 0;
}

/* サイトマップ */

.sitemap .sitemap_contents {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}

.sitemap .sitemap_contents > section {
  width: 48%;
  margin: 0 0 70px;
  text-align: center;
}

.sitemap .sitemap_contents h4 {
  font-size: 1.4rem;
  margin: 0 0 30px;
  font-family: "tbchibirgothicplusk-pro",sans-serif;
  color: #f77d87;
}

.sitemap .sitemap_contents ul li {
  margin: 0 0 10px;
}

/* 英語サイト */

body#english header.pc .header .language li.japanese a {
  color: #fff;
}

body#english header.pc .header .language li.english a {
  color: #999;
}

.english.inner_contents .english_contents > section,
.english.inner_contents .english_contents > div {
  margin: 0 0 80px;
}

.english.inner_contents .title_sub {
  font-size: 1.3rem;
  margin: 0 0 25px;
  border-bottom: 1px solid #ec6d81;
  font-weight: bold;
}

.english.inner_contents p {
  margin: 0 0 1.5rem;
}

.english.inner_contents .shrine {
  display: flex;
  flex-flow: row nowrap;
}

.english.inner_contents .shrine_sec:not(:last-child) {
  margin: 0 10px 0 0;
}

.english.inner_contents .shrine_sec_title {
  font-size: 1.1rem;
}

.english.inner_contents .shrine_sec_img img {
  width: 100%;
}

.english.inner_contents .en_musubi figure {
  width: 35%;
  float: left;
  margin: 0 20px 20px 0;
}

.english.inner_contents .en_musubi figure img {
  width: 100%;
}

.english.inner_contents .imagearea {
  display: flex;
  flex-flow: row wrap;
}

.english.inner_contents .imagearea .image {
  width: calc((100% - 10px) / 2);
  margin: 0 10px 10px 0;
}

.english.inner_contents .imagearea .image img {
  width: 100%;
}

.english.inner_contents .imagearea .image:nth-child(2n) {
  margin-right: 0;
}

.english.inner_contents .visit_sec {
  overflow: hidden;
  margin: 0 0 30px;
}

.english.inner_contents .visit_sec h5 {
  font-weight: bold;
  margin: 0 0 10px;
}

.english.inner_contents .visit_sec h5 .number {
  background: #ec6d81;
  color: #fff;
  text-align: center;
  border-radius: 0.5rem;
  display: inline-block;
  margin: 0 10px 0 0;
  width: 1.5rem;
  height: 1.5rem;
  line-height: 1.6rem;
}

.english.inner_contents .visit_sec.secondary_shrines .imagearea .image {
  width: calc((100% - 20px) / 3);
}

.english.inner_contents .visit_sec.secondary_shrines .imagearea .image:nth-child(2n) {
  margin-right: 10px;
}

.english.inner_contents .visit_sec.secondary_shrines .imagearea .image:nth-child(3n) {
  margin-right: 0;
}

.english.inner_contents .picture_tablets .image {
  float: right;
  width: 35%;
  margin: -100px 0 0 20px;
}

.english.inner_contents .picture_tablets .image img {
  width: 100%;
}

.english.inner_contents .okuninushi {
  overflow: hidden;
}

.english.inner_contents .okuninushi .image {
  float: right;
  width: 35%;
  margin: 0 0 0 20px;
}

.english.inner_contents .okuninushi .image img {
  width: 100%;
}

.english.inner_contents .omamori .omamoribox {
  display: flex;
  flex-flow: row wrap;
}

.english.inner_contents .omamori .omamoribox_sec {
  width: calc((100% - 30px) / 4);
  margin: 0 10px 30px 0;
  border: 3px solid #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0px 0px 8px 3px #eee;
  background-color: #fff;
  display: flex;
  flex-flow: column wrap;
  justify-content: space-between;
}

.english.inner_contents .omamori .omamoribox_sec:nth-child(4n) {
  margin-right: 0;
}

.english.inner_contents .omamori .omamoribox_sec_title {
  font-weight: bold;
  text-align: center;
  margin: 10px 0;
}

.english.inner_contents .omamori .omamoribox_sec_img {
  width: 60%;
  margin: 0 auto;
  min-height: 0%;
  /*IE11でflexcolumnがおかしくなる対策*/
}

.english.inner_contents .omamori .omamoribox_sec_img img {
  width: 100%;
}

.english.inner_contents .omamori .omamoribox_sec_text {
  text-align: center;
  padding: 5px 10px;
  margin-bottom: 0;
}

/*　恋占いの石　*/

.koiuranai_top .individual_info .wid_wrap .movie_koiuranai {
  margin: 0 auto 30px;
  max-width: 560px;
}

.omikuji .title .image_area {
  display: flex;
  flex-flow: row nowrap;
}

.omikuji .title .image_area figure {
  max-width: 300px;
  width: 100%;
  margin-right: 20px;
}

.omikuji .title .image_area figure img {
  width: 100%;
}

/*　概要ページ about　*/

.about.inner_contents .illust {
  max-width: 237px;
  width: 100%;
  margin: 0 auto 30px;
}

.about.inner_contents .illust img {
  width: 100%;
}

.about.inner_contents .col_wrap {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}

.about.inner_contents .col {
  max-width: 407px;
  width: 48%;
  margin: 0 0 60px;
}

.about.inner_contents .col_img {
  margin-bottom: 10px;
}

.about.inner_contents .col_img img {
  width: 100%;
}

.about.inner_contents .col_title {
  margin-bottom: 15px;
  font-size: 1.4rem;
  font-family: "a-otf-ud-reimin-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  text-align: center;
}

.about.inner_contents .col_text {
  margin-bottom: 30px;
}

.about.inner_contents .enRist_wrap {
  margin: 30px 0 0;
}

.about.inner_contents .enRist {
  margin-bottom: 13px;
}

.about.inner_contents .enRist_title {
  background-image: url(../img/common/icon_en.png);
  background-size: 23px;
  background-repeat: no-repeat;
  padding-left: 30px;
  font-size: 1.1rem;
  font-weight: bold;
}

.about.inner_contents .about_contents > section {
  margin-bottom: 50px;
}

#top.shougatsuVer #contents {
  background: url(../img/top/shougatsu_version/bg_hoshizora.jpg) top left/100% repeat-y;
}

.shougatsuCountDown_wrap {
  position: relative;
  width: 100%;
}

.shougatsuCountDown_wrap .runwayLoad {
  position: absolute;
  bottom: 0;
  left: 50%;
  max-width: 463px;
  width: 100%;
  height: 98px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: url(../img/top/shougatsu_version/bg_load.png) top center/contain no-repeat;
}

.shougatsuCountDown {
  position: relative;
  max-width: 1000px;
  width: 100%;
  margin: 0 auto -50px;
}

.shougatsuCountDown img {
  width: 100%;
}

.shougatsuCountDown_maintext {
  position: relative;
  height: 85px;
  margin-bottom: 20px;
}

.shougatsuCountDown_maintext_bg {
  position: absolute;
  top: 0;
  left: 50%;
  width: auto;
  height: 100%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.shougatsuCountDown_maintext_bg img {
  width: auto;
  height: 100%;
}

.shougatsuCountDown_runway {
  display: flex;
  justify-content: space-between;
  height: 200px;
}

.shougatsuCountDown_runway_hikoboshi {
  position: relative;
  width: calc(50% - 186px);
}

.shougatsuCountDown_runway_hikoboshi_img {
  position: absolute;
  left: 0;
  top: 0;
  width: 186px;
  transition: all 2s 2s;
}

.shougatsuCountDown_runway_hikoboshi_img.is_move {
  left: 0;
}

.shougatsuCountDown_runway_orihime {
  position: relative;
  width: calc(50% - 186px);
}

.shougatsuCountDown_runway_orihime_img {
  position: absolute;
  right: 0;
  top: 0;
  width: 186px;
  transition: all 2s 2s;
}

.shougatsuCountDown_runway_orihime_img.is_move {
  right: 0;
}

.shougatsuCountDown_link {
  position: absolute;
  width: 121px;
  top: -20%;
  right: 110px;
}

.shougatsuVer .amanogawa {
  position: absolute;
  top: -50%;
  left: 50%;
  max-width: 689px;
  width: 100%;
  height: 905px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: url(../img/top/shougatsu_version/img_hoshi_amanogawa.png) top center/contain;
}

.shougatsuVer .CD_a {
  position: relative;
  padding-right: 90px;
  text-align: center;
  font-size: 2.2rem;
  font-family: "tbchibirgothicplusk-pro";
  color: #000;
}

.shougatsuVer .CD_a #countdownNumber {
  font-size: 3.4rem;
  margin: 0 5px;
}

.shougatsuVer .CD_b {
  position: relative;
  display: none;
  text-align: center;
  font-size: 2.2rem;
  font-family: "tbchibirgothicplusk-pro";
  color: #333;
}

.shougatsuVer .CD_b .shougatsuCountDown_tdtb {
  font-size: 3rem;
}

.yycountdown-box {
  display: inline-block;
}

.yyc-hou,
.yyc-min,
.yyc-sec {
  display: none;
}

/* お正月特集　共通 */

.shougatsu:not(.shougatsu_top) .shougatsu_contents > section,
.shougatsu:not(.shougatsu_top) .shougatsu_contents > div {
  margin: 0 auto 65px;
}

.shougatsu h4 {
  padding: 12px;
  border-top: 1px solid #ff0000;
  border-bottom: 1px solid #ff0000;
  box-shadow: 0 -2px 0 0 #fff, 0 -4px 0 0 #ff0000,0 2px 0 0 #fff, 0 4px 0 0 #ff0000;
  font-size: 1rem;
  font-family: "tbchibirgothicplusk-pro",sans-serif;
  margin: 4px 0 40px;
}

.shougatsu .aside_list {
  background: #fcfbf5;
  border-radius: 6px;
  border: 1px solid #dbd6c4;
  padding: 15px;
  overflow: hidden;
  margin: 25px 0;
}

.shougatsu .aside_list li {
  background: url(../img/shougatsu/icon_daruma.png) 0 50% no-repeat;
  background-size: 22px;
  padding-left: 30px;
  float: left;
  margin: 0 40px 0 0;
}

.shougatsu .aside_list li a {
  text-decoration: underline;
}

.shougatsu .aside_sec {
  background: #fcfbf5;
  border-radius: 6px;
  border: 1px solid #dbd6c4;
  padding: 15px;
  overflow: hidden;
  margin: 25px 0;
}

.shougatsu .aside_sec h1 {
  color: #ff0000;
  font-weight: bold;
  margin-bottom: 5px;
}

.shougatsu .aside_sec ol {
  padding: 0 0 0 2rem;
}

.shougatsu .aside_sec ol li {
  list-style: decimal;
  margin: 0 0 0.5rem;
}

.shougatsu .contents_link {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  margin: 0 0 60px;
}

.shougatsu .contents_link > section {
  width: 100%;
  margin-right: 3%;
}

.shougatsu .contents_link > section:last-child {
  margin-right: 0;
}

.shougatsu .contents_link > section a {
  display: block;
}

.shougatsu .contents_link > section a img {
  width: 100%;
}

.shougatsu .contents_link > section a h3 {
  background: url(../img/shougatsu/icon_flower.png) 0 0 no-repeat;
  background-size: 19px;
  padding-left: 23px;
  margin: 5px 0;
  font-weight: bold;
}

.shougatsu .contents_link > section a p {
  font-size: 0.8rem;
  line-height: 1.3rem;
}

.shougatsu .one_sec {
  overflow: hidden;
  margin-bottom: 65px;
}

.shougatsu .one_sec figure {
  width: 40%;
  margin: 0 0 0 35px;
  float: right;
}

.shougatsu .one_sec figure img {
  width: 100%;
}

.shougatsu .one_sec p a {
  color: #ec6d81;
}

.shougatsu.world .one_sec figure,
.shougatsu.region.after .one_sec figure,
.shougatsu.zouni .one_sec figure,
.shougatsu.daikaibou .one_sec figure {
  width: 160px;
  margin-left: 20px;
  margin-bottom: 15px;
}

.shougatsu .menu_list {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  margin: 0 0 80px;
}

.shougatsu .menu_list ul {
  width: 100%;
  margin-right: 40px;
}

.shougatsu .menu_list ul:last-child {
  margin-right: 0;
}

.shougatsu .daikaibou h2,
.shougatsu .daikaibou .title h3,
.shougatsu.daikaibou h2,
.shougatsu.daikaibou .title h3 {
  max-width: 470px;
  width: 100%;
  margin: 0 0 20px 19%;
}

.shougatsu .daikaibou h2 img,
.shougatsu .daikaibou .title h3 img,
.shougatsu.daikaibou h2 img,
.shougatsu.daikaibou .title h3 img {
  width: 100%;
}

.shougatsu .daikaibou .contents_link ul,
.shougatsu.daikaibou .contents_link ul {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}

.shougatsu .daikaibou .contents_link ul li a,
.shougatsu.daikaibou .contents_link ul li a {
  display: block;
  padding: 5px 10px 0;
  border-radius: 20px;
}

.shougatsu .daikaibou .contents_link ul li a img,
.shougatsu.daikaibou .contents_link ul li a img {
  width: 100%;
}

.shougatsu .daikaibou .contents_link ul li.current a,
.shougatsu.daikaibou .contents_link ul li.current a {
  background: #eee;
}

/*　お正月特集　TOP */

/*
.shougatsu_top{

	.shougatsu_contents{
		max-width:$w_inner;
		width:100%;
		margin:0 auto;

		@media all and (min-width:641px) and (max-width:1187px){
			padding:0 10px;
		}
		@media all and (max-width:640px){
			padding:0 10px;
		}
	}

	.shougatsu_love_uranai{
		max-width:560px;
		width:100%;
		margin:0 auto 80px;

		h1{
			margin:0 auto;
			max-width:464px;
			width:100%;
			img{
				width:100%;
			}
		}
		@extend .shougatsu_love_uranai;
	}

	.hatsumoude{
		h2{
			max-width:470px;
			width:100%;
			margin:0 auto 20px;

			img{
				width:100%;
			}
		}
		.contents_link > section{
			margin-right:17px;
		}
	}
	.bn_cal_nenga{
		display: flex;
		flex-flow:row nowrap;
		justify-content:space-between;
		@media all and (max-width:640px){
			display: block;
		}
		img{
			width:100%;
		}
		.bn_calendar{
			max-width:599px;
			margin-right:10px;
			width:100%;
		}
		.bn_nenga{
			max-width:245px;
			width:100%;
			@media all and (max-width:640px){
				max-width:100%;
			}
		}
	}
	.region_banner{
		display:flex;
		flex-flow:row nowrap;
		justify-content:space-between;
		margin:0 0 60px;
		@media all and (max-width:640px){
			display:block;
		}

		>a{
			display:block;
			margin-right:20px;
			@media all and (max-width:640px){
				margin:0 0 10px;
			}

			&:last-child{
				margin-right:0;
			}

			img{
				width:100%;
			}
		}
	}
}
*/

.shougatsu_top {
  background: url(../img/shougatsu/bg_shougatsu.jpg) center top/cover;
  margin-bottom: -110px;
  padding: 90px 0 150px;
  font-family: "ten-mincho", serif;
}

.shougatsu_top img {
  max-width: 100%;
}

.shougatsu_top .shougatsu_contents {
  max-width: 1120px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.shougatsu_top .shougatsuTitle {
  max-width: 770px;
  margin: 0 auto;
}

.shougatsu_top .shougatsuRead {
  margin: 50px 0;
  text-align: center;
}

.shougatsu_top .shougatsuRead p {
  font-size: 1rem;
  line-height: 2.8rem;
}

.shougatsu_top .hatsumoudeLinks {
  position: relative;
  margin-bottom: 60px;
  padding: 30px;
  background: rgba(255, 255, 255, 0.5);
  box-shadow: 0 0 10px 0 #ccc;
}

.shougatsu_top .hatsumoudeLinks h2 {
  max-width: 470px;
  width: 100%;
  margin: 0 auto 20px;
  background-blend-mode: multiply;
}

.shougatsu_top .hatsumoudeLinks h2 img {
  width: 100%;
}

.shougatsu_top .hatsumoudeLinks .contents_link {
  margin-bottom: 0;
}

.shougatsu_top .hatsumoudeLinks .contents_link > section:not(:last-child) {
  margin-right: 17px;
}

.shougatsu_top .hatsumoudeLinks .contents_link > section h3 {
  min-height: 42px;
  padding: 0;
  background: none;
  font-weight: normal;
  color: #ec6d81;
  text-align: center;
}

.shougatsu_top .hatsumoudeLinks .contents_link > section p {
  text-align: center;
}

.shougatsu_top .hatsumoudeLinks_illust {
  position: absolute;
  right: 10px;
  top: -40px;
  max-width: 229px;
  width: 100%;
}

.shougatsu_top .bn_cal_nenga {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  max-width: 880px;
  margin: 0 auto 30px;
}

.shougatsu_top .bn_cal_nenga img {
  width: 100%;
}

.shougatsu_top .bn_cal_nenga .bn_calendar {
  max-width: 599px;
  margin-right: 10px;
  width: 100%;
}

.shougatsu_top .bn_cal_nenga .bn_nenga {
  max-width: 245px;
  width: 100%;
}

.shougatsu_top .region_banner {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  max-width: 880px;
  margin: 0 auto 60px;
}

.shougatsu_top .region_banner > a {
  display: block;
  margin-right: 20px;
}

.shougatsu_top .region_banner > a:last-child {
  margin-right: 0;
}

.shougatsu_top .region_banner > a img {
  width: 100%;
}

/* お正月特集　初詣特集 共通 */

.hatsumoude {
  max-width: 880px;
  width: 100%;
  margin: 0 auto;
}

.hatsumoude .title h3 {
  max-width: 470px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.hatsumoude .title h3 img {
  width: 100%;
}

.hatsumoude .title p.ma {
  margin-bottom: 30px;
}

/* お正月特集　初詣特集 TOP */

.hatsumoude_top .yurai figure {
  float: right;
  max-width: 308px;
  width: 100%;
  margin: 0 0 10px 50px;
}

.hatsumoude_top .yurai figure img {
  width: 100%;
}

/* お正月特集　日本各地のお正月 共通 */

.region .title h3 {
  max-width: 470px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.region .title h3 img {
  width: 100%;
}

.region .contents_link section a h3 {
  background-image: none;
  padding-left: 0;
}

/* お正月特集　日本各地のお正月 行事・お祭り */

.region.gyoji .one_sec figure {
  width: 121px;
}

/* お正月特集　日本各地のお正月 お雑煮 */

.zouni .zouni_map {
  max-width: 743px;
  width: 100%;
}

.zouni .zouni_map img {
  width: 100%;
}

.zouni .sections {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}

.zouni .sections .one_sec {
  width: 47.5%;
  margin-bottom: 40px;
}

/* お正月特集　日本各地のお正月 その後 */

.region.after .calendar {
  max-width: 743px;
  width: 100%;
}

.region.after .calendar img {
  width: 100%;
}

.region.after .calendar_link a {
  text-decoration: underline;
}

.region.after .one_sec .question {
  margin-bottom: 1.7rem;
  color: #ff0000;
  font-weight: bold;
  font-size: 1.1rem;
}

.region.after .one_sec .question img {
  max-width: 64px;
  max-height: 84px;
  margin-right: 10px;
  margin-bottom: -1.7rem;
}

.region.after .one_sec .aside_list {
  clear: both;
  margin-top: 20px;
}

.region.after .one_sec .aside_sec {
  clear: both;
  margin-top: 20px;
}

/* お正月特集　世界各地のお正月　*/

.world .title h3 {
  width: 262px;
  margin-right: auto;
  margin-left: auto;
}

.world .title h3 img {
  width: 100%;
}

.world .title > div {
  overflow: hidden;
}

.world .title figure {
  float: right;
  width: 50%;
  margin-left: 30px;
}

.world .title figure img {
  width: 100%;
}

/* お正月特集　お正月大解剖　お正月大辞典　*/

.dec .daikaibou .btn_area {
  margin-bottom: 60px;
}

.dec .daikaibou .btn_area ul {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}

.dec .daikaibou .btn_area ul li {
  width: 100%;
  border: 1px solid #cf0412;
  padding: 5px 0;
  text-align: center;
  margin-right: 10px;
  color: #000;
  transition: all .3s;
}

.dec .daikaibou .btn_area ul li.select,
.dec .daikaibou .btn_area ul li:hover {
  background: #cf0412;
  color: #fff;
}

.dec .daikaibou .btn_area ul li:hover {
  cursor: pointer;
}

.dec .daikaibou .btn_area ul li:last-child {
  margin-right: 0;
}

.dec .daikaibou .one_sec figure {
  float: left;
  width: 90px;
  margin: 0 20px 0 0;
}

/*　お正月特集　カレンダー*/

.shougatsu.calendar img {
  width: 100%;
}

.shougatsu.calendar .title h3 {
  max-width: 707.5px;
  width: 100%;
}

.shougatsu.calendar .title .emtext {
  color: #ea3723;
  font-size: 1.1rem;
  margin: 20px 0 30px;
  font-weight: bold;
}

.shougatsu.calendar .calendarimg {
  margin-bottom: 40px;
}

.shougatsu.calendar .one_sec figure {
  max-width: 165px;
  width: 100%;
}

.shougatsu.calendar .one_sec_text p {
  margin-bottom: 5px;
}

.shougatsu.calendar .one_sec_text p a {
  color: #000;
  text-decoration: underline;
}

.shougatsu.calendar .small_sec {
  margin-bottom: 40px;
}

.shougatsu.calendar .small_sec_title {
  font-size: 1rem;
  color: #ea3723;
  font-family: "tbchibirgothicplusk-pro",sans-serif;
  margin-bottom: 3px;
}

.shougatsu.calendar img[usemap] {
  border: none;
  height: auto;
  max-width: 100%;
  width: auto;
}

.shougatsu.nengajo_top img {
  width: 100%;
}

.shougatsu.nengajo_top .nengajoImg_wrap {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}

.shougatsu.nengajo_top .nengajoImg_wrap > li {
  max-width: 384px;
  width: 48%;
  margin-bottom: 50px;
}

.shougatsu.nengajo_top .nengajoImg_wrap > li .nengajo_img {
  border: 1px solid #ccc;
}

.shougatsu.nengajo_top .nengajoImg_wrap > li .nengajo_img img {
  vertical-align: bottom;
}

.shougatsu.nengajo_top .btn_jissun {
  margin: 15px 0 0;
  text-align: center;
}

.shougatsu.nengajo_top .btn_jissun a {
  border: 1px solid #ccc;
  border-radius: 20px;
  display: inline-block;
  padding: 5px 60px;
  text-align: center;
}

#top.tanabataVer #contents {
  background: url(../img/top/tanabata_version_2019/bg_hoshizora.jpg) left 700px/100% repeat-y;
}

.tanabataCountDown_wrap {
  position: relative;
  width: 100%;
}

.tanabataCountDown_wrap .runwayLoad {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 100%;
  height: 83px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: url(../img/top/tanabata_version_2019/bg_load.png) top center/128% no-repeat;
}

.tanabataCountDown {
  position: relative;
  max-width: 1000px;
  width: 100%;
  margin: 0 auto -80px;
}

.tanabataCountDown img {
  width: 100%;
}

.tanabataCountDown_maintext_link {
  position: absolute;
  right: calc(50% - 370px);
  top: 0;
  display: inline-block;
  width: 111px;
  z-index: 5;
}

.tanabataCountDown_maintext_bg {
  position: absolute;
  top: 60px;
  left: 50%;
  width: 100%;
  height: 85px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

@supports (-ms-ime-align: auto) {
  .tanabataCountDown_maintext_bg {
    opacity: 0.2;
  }
}

.tanabataCountDown_maintext_bg img {
  width: auto;
  height: 100%;
}

.tanabataCountDown_runway {
  display: flex;
  justify-content: space-between;
  height: 248px;
}

.tanabataCountDown_runway_hikoboshi {
  position: relative;
  width: calc(50% - 122px + 11px);
}

.tanabataCountDown_runway_hikoboshi::before {
  content: '';
  position: absolute;
  bottom: -80px;
  left: 30px;
  width: 249px;
  height: 350px;
  background: url(../img/top/tanabata_version_2019/sasa_1.png) left bottom/contain no-repeat;
}

.tanabataCountDown_runway_hikoboshi_img {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 122px;
  transition: all 2s 2s;
}

.tanabataCountDown_runway_hikoboshi_img.is_move {
  left: 0;
}

.tanabataCountDown_runway_orihime {
  position: relative;
  width: calc(50% - 149px + 11px);
}

.tanabataCountDown_runway_orihime::before {
  content: '';
  position: absolute;
  bottom: -80px;
  right: 30px;
  width: 270px;
  height: 330px;
  background: url(../img/top/tanabata_version_2019/sasa_2.png) left bottom/contain no-repeat;
}

.tanabataCountDown_runway_orihime_img {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 149px;
  transition: all 2s 2s;
}

.tanabataCountDown_runway_orihime_img.is_move {
  right: 0;
}

.tanabataCountDown_link {
  position: absolute;
  width: 121px;
  top: -20%;
  right: 110px;
}

.tanabataVer .amanogawa {
  position: absolute;
  top: -50%;
  left: 50%;
  max-width: 689px;
  width: 100%;
  height: 905px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: url(../img/top/tanabata_version_2019/img_hoshi_amanogawa.png) top center/contain;
}

.tanabataVer .CD_a {
  position: relative;
  text-align: center;
  font-size: 2.2rem;
  font-family: "tbchibirgothicplusk-pro";
  color: #01033c;
  z-index: 1;
}

.tanabataVer .CD_a #countdownNumber {
  font-size: 3.4rem;
  margin: 0 5px;
}

.tanabataVer .CD_b {
  display: none;
  position: relative;
  text-align: center;
  font-size: 2.2rem;
  font-family: "tbchibirgothicplusk-pro";
  color: #01033c;
  z-index: 1;
}

.tanabataVer .CD_b .tanabataCountDown_tdtb {
  font-size: 3.4rem;
}

.yycountdown-box {
  display: inline-block;
}

.yyc-hou,
.yyc-min,
.yyc-sec {
  display: none;
}

/* 2019年七夕トップ */

header {
  z-index: 1;
}

.tanabataTopWrap {
  position: relative;
  padding: 60px 0 100px;
  background: url("../img/top/tanabata_version_2019/bg_hoshizora.jpg") center top/100% repeat-y #03111f;
}

.tanabataTopWrap::before {
  content: '';
  position: absolute;
  left: -100px;
  top: -50px;
  width: 500px;
  height: 620px;
  background: url(../img/tanabata/sasa_big_1.png) left top/contain no-repeat;
  z-index: 0;
}

.tanabataTopWrap::after {
  content: '';
  position: absolute;
  right: 0;
  top: -50px;
  width: 423px;
  height: 610px;
  background: url(../img/tanabata/sasa_big_2.png) left top/contain no-repeat;
  z-index: 0;
}

.tanabataTopWrap_inner {
  position: relative;
  z-index: 1;
}

.tanabataTopWrap img {
  width: 100%;
}

.tanabataTopWrap .tanabataMainVisual {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  max-width: 1280px;
  width: 95%;
  margin: 0 auto 40px;
}

.tanabataTopWrap .tanabataMainVisual_kokeshi {
  width: 200px;
}

.tanabataTopWrap .tanabataMainVisual_read {
  margin: 0 40px;
}

.tanabataTopWrap .tanabataMainVisual_read_title {
  max-width: 483px;
  width: 100%;
}

.tanabataTopWrap .tanabataMainVisual_stamp {
  width: 200px;
  margin-left: 20px;
}

.tanabataTopWrap .contentsBnWrap {
  max-width: 1280px;
  width: 95%;
  margin: 0 auto 40px;
}

.tanabataTopWrap .contentsBn_ul {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}

.tanabataTopWrap .contentsBn_ul li {
  width: 22%;
  margin-bottom: 30px;
  border: 2px solid #fff;
  border-radius: 5px;
  overflow: hidden;
}

.tanabataTopWrap .contentsBn_ul li a {
  display: block;
}

.tanabataTopWrap .contentsBn_ul li img {
  vertical-align: bottom;
}

.tanabataTopWrap .contentsBn.is_firstrow .contentsBn_ul li {
  width: 30%;
}

.tanabataTopWrap .tanabata_bn_area {
  margin: 60px auto 30px;
  width: 90%;
}

.tanabataTopWrap .tanabata_bn_area .bn_column {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  margin: 0 0 25px;
}

.tanabataTopWrap .tanabata_bn_area .bn_column > a {
  max-width: 415px;
  width: 100%;
}

.tanabataTopWrap .tanabata_bn_area .bn_column > a + a {
  margin-left: 100px;
}

.tanabataTopWrap .tanabata_bn_area .bn_column > a img {
  border: 1px solid #fff;
}

.tanabataTopWrap + footer {
  position: relative;
  margin-top: 0;
  border-top: 2px solid #ccc;
}

.tanabataTopWrap + footer .pagetop {
  position: absolute;
  right: 0;
  bottom: 100%;
  left: calc(50% - 440px);
  border-bottom: 0;
}

/* 七夕特集　*/

.tanabata:not(.gyouji) {
  /* 七夕特集　共通 */
  max-width: 880px;
  width: 100%;
  margin: 0 auto;
  /* 七夕特集　七夕の歴史・由来 */
  /* 七夕特集　七夕かざりと短冊 */
  /* 七夕ストーリー */
  /* 七夕講座 */
  /* 七夕講座 TOP*/
  /* 七夕講座　共通*/
  /* 七夕特集　七夕辞典 */
  /* 七夕特集　七夕料理 共通　*/
  /* 七夕特集　七夕料理 Top　*/
  /* 七夕特集　日本の七夕行事　*/
  /* 七夕特集　タイムトラベル Top　*/
  /* 七夕特集　タイムトラベル　下層　*/
  /* 七夕特集　オリジナルスタンプ　*/
  /* 七夕特集　オリジナルラジオドラマ　コイバナナ */
  /* 七夕特集　世界の七夕行事 */
  /* 七夕特集　こけしを贈ろう */
}

.tanabata:not(.gyouji) p a {
  color: #ec6d81;
}

.tanabata:not(.gyouji) img {
  width: 100%;
  vertical-align: bottom;
}

.tanabata:not(.gyouji) .tanabata_title {
  height: 50px;
  padding: 0 0 3px 25px;
  font-size: 1rem;
  margin: 0 0 25px 25px;
  position: relative;
  border-bottom: 3px solid #2da7ce;
  display: flex;
  align-items: flex-end;
}

.tanabata:not(.gyouji) .tanabata_title::before {
  content: '';
  background: url("../img/tanabata/icon_yurai.png") no-repeat;
  background-size: 43px;
  width: 43px;
  height: 65px;
  position: absolute;
  left: -25px;
  bottom: -13px;
}

.tanabata:not(.gyouji) .tanabata_title_02 {
  background: url("../img/tanabata/kokeshi_okurou/bt_title_kokeshi.png") left top/100% no-repeat;
  font-family: "tbchibirgothicplusk-pro";
  height: 71px;
  margin-bottom: 15px;
  padding: 5px 0 0 40px;
  font-size: 1.5rem;
  font-weight: bold;
}

.tanabata:not(.gyouji) .title_bg_blue {
  background: #5095d5;
  margin-bottom: 20px;
  padding: 6px 20px 3px;
  border-radius: 20px;
  color: #fff;
  font-weight: bold;
  font-size: 1rem;
}

.tanabata:not(.gyouji) .row_style tr {
  border-bottom: 1px dotted #848484;
}

.tanabata:not(.gyouji) .row_style tr:first-child {
  border-top: 1px solid #848484;
}

.tanabata:not(.gyouji) .row_style tr:last-child {
  border-bottom: 1px solid #848484;
}

.tanabata:not(.gyouji) .row_style th {
  background: #f7f7f7;
  padding: 10px 20px;
}

.tanabata:not(.gyouji) .row_style td {
  padding: 10px 20px;
}

.tanabata:not(.gyouji) .bn_area {
  margin: 80px 0 30px;
}

.tanabata:not(.gyouji) .bn_area > div {
  margin-bottom: 10px;
}

.tanabata:not(.gyouji) .bn_area > div:last-child {
  margin-bottom: 0;
}

.tanabata:not(.gyouji) .bn_area a {
  display: block;
}

.tanabata:not(.gyouji) .bn_area .bn_column {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  margin: 0 0 25px;
}

.tanabata:not(.gyouji) .bn_area .bn_column > div,
.tanabata:not(.gyouji) .bn_area .bn_column > a {
  width: 49%;
}

.tanabata:not(.gyouji) .column_2 {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}

.tanabata:not(.gyouji) .column_2 > div,
.tanabata:not(.gyouji) .column_2 section {
  width: 100%;
}

.tanabata:not(.gyouji) .img_right {
  float: right;
  width: 316px;
  margin: 0 0 0 30px;
}

.tanabata:not(.gyouji) .img_left {
  float: left;
  width: 316px;
  margin: 0 30px 0 0;
}

.tanabata:not(.gyouji) .img_center {
  margin: 0 auto;
}

.tanabata:not(.gyouji) figure.full {
  width: 100%;
}

.tanabata:not(.gyouji) .point {
  background: #f1f8fc;
  border: 1px solid #cad4d8;
  padding: 10px;
}

.tanabata:not(.gyouji) .one_sec {
  margin: 0 0 80px;
  overflow: hidden;
}

.tanabata:not(.gyouji) .one_sec:last-child {
  margin-bottom: 0;
}

.tanabata:not(.gyouji) .one_sec figure {
  width: 200px;
}

.tanabata:not(.gyouji) .one_sec figure.full {
  width: 100%;
}

.tanabata:not(.gyouji) .aside_box {
  border: 1px solid #2da7ce;
  background: #fcfbf5;
  padding: 20px;
  border-radius: 10px;
}

.tanabata:not(.gyouji) .aside_box .aside_box_title {
  font-size: 1rem;
  padding-bottom: 10px;
  color: #2da7ce;
}

.tanabata:not(.gyouji) .text p {
  margin: 0 0 1rem;
}

.tanabata:not(.gyouji) .text p:last-child {
  margin-bottom: 0;
}

.tanabata:not(.gyouji) .note_box.pattern3 {
  width: 100%;
  padding: 20px;
  width: auto;
}

.tanabata:not(.gyouji) .note_box.pattern3 figure {
  float: left;
  width: 186px;
  margin: 0 20px 0 0;
}

.tanabata:not(.gyouji) .note_box.pattern3 .note_box_contents {
  overflow: hidden;
  padding: 10px 0;
}

.tanabata:not(.gyouji) .note_box.pattern3 .note_box_title {
  color: #2da7ce;
  font-size: 1rem;
  margin: 0 0 20px;
}

.tanabata:not(.gyouji) .to_tanabatatop {
  text-align: center;
  margin: 30px 0 0;
}

.tanabata:not(.gyouji) .to_tanabatatop .note_box {
  margin: 0;
}

.tanabata:not(.gyouji).yurai .yurai_list {
  overflow: hidden;
  margin: 30px 0 40px;
}

.tanabata:not(.gyouji).yurai .yurai_list .note_box {
  padding: 25px;
  margin: 0 0 30px;
}

.tanabata:not(.gyouji).yurai .yurai_list .note_box li {
  margin: 0 0 10px;
}

.tanabata:not(.gyouji).yurai .yurai_list .note_box li:last-child {
  margin-bottom: 0;
}

.tanabata:not(.gyouji).yurai .orihimehikoboshi {
  padding: 30px;
}

.tanabata:not(.gyouji).yurai .orihimehikoboshi .text h5 {
  color: #2da7ce;
  font-size: 1rem;
  margin: 0 0 10px;
}

.tanabata:not(.gyouji).yurai .orihimehikoboshi figure {
  width: 175px;
}

.tanabata:not(.gyouji).kazari .hajimari {
  margin-right: 27px;
}

.tanabata:not(.gyouji).kazari .hajimari table {
  margin: 0 0 10px;
}

.tanabata:not(.gyouji).kazari .why_sasa {
  width: 100%;
  margin-left: 27px;
  padding: 10px 20px 20px;
}

.tanabata:not(.gyouji).kazari .why_sasa .aside_box_title {
  background: url("../img/tanabata/kazari/img_sasa.png") no-repeat;
  background-size: 42px;
  height: 70px;
  padding: 16px 0 0 50px;
}

.tanabata:not(.gyouji).kazari .tsukurikata {
  margin: 80px 0 0;
  text-align: center;
}

.tanabata:not(.gyouji).kazari .tsukurikata .title {
  font-size: 1.625rem;
  color: #2da7ce;
  margin: 0 0 10px;
}

.tanabata:not(.gyouji).kazari .tsukurikata_img {
  max-width: 650px;
  width: 100%;
  margin: 0 auto;
}

.tanabata:not(.gyouji).kazari .tsukurikata_procedure {
  margin: 30px 0 20px;
}

.tanabata:not(.gyouji).kazari .tsukurikata_procedure li {
  display: flex;
  align-items: center;
  margin: 0 0 0.5rem;
}

.tanabata:not(.gyouji).kazari .tsukurikata_procedure li .num {
  background: #f52b00;
  border-radius: 0.5rem;
  color: #fff;
  font-size: 0.8rem;
  width: 1rem;
  height: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  float: left;
  margin: 0 3px 0 0;
}

.tanabata:not(.gyouji).story .story_area {
  background-image: url(../img/tanabata/story/bg_makimono.png), url(../img/tanabata/story/bg_makimono_line.jpg), url("../img/tanabata/story/bg_makimono_line.jpg");
  background-size: contain,9px,9px;
  background-repeat: no-repeat,repeat-y,repeat-y;
  background-position: left top, 5px 0, right 5px top 0;
  padding: 50px 42px;
}

.tanabata:not(.gyouji).story .story_area .one_sec::after {
  content: '';
  display: block;
  width: 100%;
  height: 15px;
  background: url("../img/tanabata/story/line.png") no-repeat;
  background-size: contain;
  margin: 42px 0 0;
}

.tanabata:not(.gyouji).story .story_area .one_sec:last-child::after {
  background: none;
  height: 0;
}

.tanabata:not(.gyouji).story .story_area .one_sec figure {
  width: 80%;
  margin: 0 auto 40px;
}

.tanabata:not(.gyouji).story .story_area .one_sec .text {
  color: #906b22;
}

.tanabata:not(.gyouji).story .makimono_endo {
  width: calc(100% - 10px);
  height: 9px;
  margin: 0 auto;
  background: url("../img/tanabata/story/bg_makimono_line.jpg");
}

.tanabata:not(.gyouji).kouza_top .kouza_introduce {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}

.tanabata:not(.gyouji).kouza_top .one_sec {
  width: 48%;
}

.tanabata:not(.gyouji).kouza_top .one_sec a {
  display: block;
}

.tanabata:not(.gyouji).kouza_top .one_sec h4 {
  background: url("../img/tanabata/kouza/bg_kouza_title.png") no-repeat;
  background-size: 145px;
  padding: 4px 0 0 75px;
  height: 38px;
  font-size: 0.95rem;
  margin: 0 0 10px;
}

.tanabata:not(.gyouji).kouza_top .one_sec .read {
  font-size: 1rem;
  margin: 0 0 10px;
  padding: 0 0 7px;
  border-bottom: 3px solid #2da7ce;
}

.tanabata:not(.gyouji).kouza_top .one_sec .text {
  margin: 20px 0 0;
}

.tanabata:not(.gyouji).kouza .star {
  margin: 10px 0 0;
}

.tanabata:not(.gyouji).kouza .star > div {
  width: 48%;
  overflow: hidden;
}

.tanabata:not(.gyouji).kouza .star figure {
  float: right;
  max-width: 110px;
}

.tanabata:not(.gyouji).kouza .star h4 {
  margin: 0 0 30px;
}

.tanabata:not(.gyouji).kouza .star_bega figure {
  margin: 20px 0;
}

.tanabata:not(.gyouji).kouza .star_bega h4 {
  max-width: 205px;
}

.tanabata:not(.gyouji).kouza .star_altair h4 {
  max-width: 253.5px;
}

.tanabata:not(.gyouji).kouza .star_data {
  margin: 0 0 50px;
}

.tanabata:not(.gyouji).kouza .star_data table {
  width: 48%;
}

.tanabata:not(.gyouji).kouza .next_kouza {
  background: url("../img/tanabata/kouza/bg_next.png") no-repeat;
  width: 160px;
  height: 80px;
  background-size: contain;
  margin: 50px auto;
  text-align: center;
}

.tanabata:not(.gyouji).kouza .next_kouza a {
  color: #fff;
  font-size: 1rem;
  display: block;
  width: 100%;
  height: 100%;
  padding: 27px 0 0;
}

.tanabata:not(.gyouji).kouza .kouza_02 {
  margin: 70px 0 0;
  overflow: hidden;
}

.tanabata:not(.gyouji).kouza .kouza_03 .seiza {
  width: 70%;
  margin: 0 auto 70px;
}

.tanabata:not(.gyouji).kouza .kouza_03 .kaniza {
  overflow: hidden;
}

.tanabata:not(.gyouji).kouza .kouza_03 .kaniza_img {
  width: 174px;
}

.tanabata:not(.gyouji).kouza .kouza_03 .kaniza_img img {
  margin: 0 0 10px;
}

.tanabata:not(.gyouji).kouza .kouza_03 .usagi {
  position: relative;
}

.tanabata:not(.gyouji).kouza .kouza_03 .usagi::after {
  content: '';
  position: absolute;
  right: 0;
  width: 112px;
  height: 156px;
  background: url("../img/tanabata/kouza/img_usagi_hatena.png") no-repeat;
  background-size: contain;
  bottom: -12px;
}

.tanabata:not(.gyouji).dictionary .btn_area ul li {
  border: 1px solid #2da7ce;
}

.tanabata:not(.gyouji).dictionary .btn_area ul li.select,
.tanabata:not(.gyouji).dictionary .btn_area ul li:hover {
  background: #2da7ce;
}

.tanabata:not(.gyouji).dictionary .one_sec {
  border: 1px solid #2da7ce;
}

.tanabata:not(.gyouji).dictionary .one_sec h4 {
  background: url("../img/tanabata/icon_story.png") 15px 50% no-repeat;
  background-size: 17px;
  padding: 15px 0 15px 45px;
  border-bottom: 1px dotted #2da7ce;
  color: #2da7ce;
}

.tanabata:not(.gyouji).dictionary .one_sec .description {
  padding: 20px;
  overflow: hidden;
}

.tanabata:not(.gyouji).dictionary .one_sec .description figure {
  float: right;
  margin: 0 0 0 30px;
}

.tanabata:not(.gyouji).dictionary .one_sec .side_link {
  padding: 15px 20px;
  background: #fcfbf5;
  border-top: 1px solid #2da7ce;
  overflow: hidden;
}

.tanabata:not(.gyouji).dictionary .one_sec .side_link h5 {
  background: #2da7ce;
  width: 61px;
  height: 61px;
  border-radius: 31px;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  float: left;
  font-size: 0.8rem;
}

.tanabata:not(.gyouji).dictionary .one_sec .side_link ul {
  overflow: hidden;
  margin: 0 0 0 100px;
  padding: 3px 0 0;
}

.tanabata:not(.gyouji).dictionary .one_sec .side_link ul li {
  float: left;
  margin: 0 80px 8px 0;
}

.tanabata:not(.gyouji).dictionary .one_sec .side_link ul li a {
  background: url("../img/tanabata/dictionary/icon_star.png") 0 50% no-repeat;
  background-size: 15px;
  padding: 0 0 0 20px;
  text-decoration: underline;
}

.tanabata:not(.gyouji).p_recipe .recipe_list {
  margin: 60px 0 0;
}

.tanabata:not(.gyouji).p_recipe .recipe_list ul {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}

.tanabata:not(.gyouji).p_recipe .recipe_list ul li {
  width: 24%;
}

.tanabata:not(.gyouji).p_recipe .recipe_list ul li h4 {
  color: #fd6b95;
  font-size: 1.15rem;
  font-weight: bold;
}

.tanabata:not(.gyouji).p_recipe .summary .recipe_name {
  color: #fd6b95;
  font-size: 1.6rem;
  font-weight: bold;
  margin: 70px 0 25px;
}

.tanabata:not(.gyouji).p_recipe .summary .read {
  margin: 0 0 50px;
}

.tanabata:not(.gyouji).p_recipe .summary .ingredient {
  padding: 10px 20px;
  background: #fffcdb;
  border: 1px solid #fd6b95;
  overflow: hidden;
}

.tanabata:not(.gyouji).p_recipe .summary .ingredient .ingredieng_title {
  margin: 0 0 10px;
}

.tanabata:not(.gyouji).p_recipe .summary .ingredient .ingredieng_title span {
  background: #fd6b95;
  color: #fff;
  text-align: center;
  letter-spacing: 0.5rem;
  display: inline-block;
  padding: 2px 10px 0 18px;
}

.tanabata:not(.gyouji).p_recipe .summary .ingredient .ingredient_list {
  display: flex;
  flex-flow: row nowrap;
}

.tanabata:not(.gyouji).p_recipe .summary .ingredient .ingredient_list ul {
  float: left;
  flex-grow: 1;
}

.tanabata:not(.gyouji).p_recipe .summary .ingredient .ingredient_list ul li {
  margin: 0 20px 0 0;
}

.tanabata:not(.gyouji).p_recipe .summary .ingredient .ingredient_list ul li::before {
  content: '●';
  color: #fd6b95;
  font-size: 0.7rem;
  display: inline;
}

.tanabata:not(.gyouji).p_recipe .summary .howtomake {
  margin: 50px 0 0;
  overflow: hidden;
}

.tanabata:not(.gyouji).p_recipe .summary .howtomake_title {
  width: 96px;
  height: 96px;
  background: #fd6b95;
  color: #fff;
  border: 1px solid #fff;
  box-shadow: 0 0 0 1px #fd6b95;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 48px;
  float: left;
  margin: 1px 50px 0 1px;
}

.tanabata:not(.gyouji).p_recipe .summary .howtomake_tejun {
  overflow: hidden;
  padding-left: 20px;
}

.tanabata:not(.gyouji).p_recipe .summary .howtomake_tejun ol {
  padding: 0 0 60px 2.5rem;
}

.tanabata:not(.gyouji).p_recipe .summary .howtomake_tejun ol li {
  list-style: decimal;
}

.tanabata:not(.gyouji).p_recipe .mamechishiki_title {
  background: url("../img/tanabata/p_recipe/icon_mamechishiki.png") 0 50% no-repeat;
  height: 45px;
  display: flex;
  align-items: center;
  padding: 0 0 0 55px;
  background-size: 45px;
  color: #fac03d;
  font-weight: bold;
  font-size: 1.3rem;
  margin: 0 0 10px;
}

.tanabata:not(.gyouji).p_recipe .mamechishiki .one_sec {
  border: 1px solid #c7c7c7;
  padding: 10px 20px;
  margin: 0 0 20px;
}

.tanabata:not(.gyouji).p_recipe .mamechishiki h6 {
  font-weight: bold;
  margin: 0 0 10px;
  display: flex;
  align-items: center;
}

.tanabata:not(.gyouji).p_recipe .mamechishiki h6 .icon_img {
  width: 58px;
  float: left;
  margin: 0 10px 0 0;
}

.tanabata:not(.gyouji).p_recipe .mamechishiki .text {
  clear: both;
}

.tanabata:not(.gyouji).p_recipe_top .summary .read {
  margin: 10px 0 50px;
  overflow: hidden;
}

.tanabata:not(.gyouji).p_recipe_top .summary .read .image {
  width: 122px;
  float: left;
  margin: 0 30px 0 0;
}

.tanabata:not(.gyouji).p_recipe_top .summary .read p {
  padding: 40px 0 0;
}

.tanabata:not(.gyouji).tana_ja p a {
  color: #ec6d81;
}

.tanabata:not(.gyouji).tana_ja .one_sec figure {
  float: right;
  width: 270px;
  margin: 0 0 0 30px;
}

.tanabata:not(.gyouji).tana_ja .one_sec .japan_map {
  width: 70%;
  float: none;
  margin: 0 auto 30px;
}

.tanabata:not(.gyouji).tana_ja .tanabata_gyouji {
  margin: 0 0 80px;
}

.tanabata:not(.gyouji).tana_ja .tanabata_gyouji figcaption {
  text-align: right;
}

.tanabata:not(.gyouji).tana_ja .tanabata_gyouji_title {
  color: #2da7ce;
  font-size: 1rem;
  background: url("../img/tanabata/icon_chochin.png") 0 50% no-repeat;
  background-size: 25px;
  padding: 10px 0 10px 35px;
  margin: 0 0 10px;
}

.tanabata:not(.gyouji).timetravel_top .title {
  overflow: hidden;
}

.tanabata:not(.gyouji).timetravel_top .title figure {
  width: 260px;
  margin: -30px 0 0 20px;
}

.tanabata:not(.gyouji).timetravel_top .links {
  max-width: 780px;
  width: 100%;
  padding-bottom: 13%;
  background: url("../img/tanabata/timetravel/bg_link.jpg") no-repeat;
  background-size: contain;
  margin: 0 auto;
}

.tanabata:not(.gyouji).timetravel_top .links ul {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  width: 100%;
  padding: 30px 40px;
}

.tanabata:not(.gyouji).timetravel_top .links li {
  max-width: 215px;
  width: 100%;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.tanabata:not(.gyouji).timetravel_top .links li:hover {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

.tanabata:not(.gyouji).timetravel_top .links li:hover a img {
  opacity: 1;
}

.tanabata:not(.gyouji).timetravel:not(.timetravel_top) .links ul {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-around;
}

.tanabata:not(.gyouji).timetravel:not(.timetravel_top) .links ul li {
  width: 100%;
  margin: 10px;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.tanabata:not(.gyouji).timetravel:not(.timetravel_top) .links ul li:hover {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

.tanabata:not(.gyouji).timetravel:not(.timetravel_top) .links ul li:hover a img {
  opacity: 1;
}

.tanabata:not(.gyouji).timetravel:not(.timetravel_top) .travel_box p {
  color: #2da7ce;
}

.tanabata:not(.gyouji).timetravel:not(.timetravel_top) .travel_box p a {
  text-decoration: underline;
}

.tanabata:not(.gyouji).timetravel:not(.timetravel_top) .travel_box .one_sec {
  margin: 20px 0;
}

.tanabata:not(.gyouji).timetravel:not(.timetravel_top) .travel_box .conversation .serif_sec {
  display: flex;
  flex-flow: row nowrap;
  justify-content: flex-start;
  align-items: center;
  margin: 0 0 10px;
}

.tanabata:not(.gyouji).timetravel:not(.timetravel_top) .travel_box .conversation .serif_sec .face {
  min-width: 81px;
  width: 81px;
  margin: 0 30px 0 0;
}

.tanabata:not(.gyouji).timetravel:not(.timetravel_top) .note_box.pattern3 .note_box_contents p {
  color: #000;
}

.tanabata:not(.gyouji).stamp .smartphone {
  width: 100%;
  padding: 10px 30px;
  margin: 0 0 50px;
}

.tanabata:not(.gyouji).stamp .smartphone figure {
  width: 55px;
}

.tanabata:not(.gyouji).stamp .smartphone .note_box_contents {
  color: #ec6d81;
  font-weight: bold;
  padding: 0;
}

.tanabata:not(.gyouji).stamp .smartphone .qr {
  float: right;
  width: 110px;
  margin: 0 0 0 10px;
}

.tanabata:not(.gyouji).stamp .smartphone p {
  overflow: hidden;
  padding: 10px 0 0;
}

.tanabata:not(.gyouji).stamp .stamp_dl {
  overflow: hidden;
}

.tanabata:not(.gyouji).stamp .stamp_dl li {
  width: 166px;
  float: left;
  margin: 5px;
}

.tanabata:not(.gyouji).stamp .stamp_dl li.new {
  position: relative;
}

.tanabata:not(.gyouji).stamp .stamp_dl li.new::before {
  content: 'NEW';
  color: #fff;
  position: absolute;
  left: 5px;
  top: 5px;
  width: 2.2rem;
  height: 2.2rem;
  border-radius: 1.1rem;
  text-align: center;
  background: #ec6d81;
  opacity: 0.8;
  font-weight: bold;
  transition: opacity 1s;
  font-size: 0.7rem;
  padding-top: 0.7rem;
}

.tanabata:not(.gyouji).stamp .stamp_dl li.new:hover::before {
  opacity: 0;
}

.tanabata:not(.gyouji).drama_top .note_box .title_profile {
  background: #ec6d81;
  padding: 1px 10px;
  display: inline-block;
  color: #fff;
  margin: 20px 0 10px;
}

.tanabata:not(.gyouji).drama_top .note_box .introduce_text {
  color: #ec6d81;
}

.tanabata:not(.gyouji) .drama_area {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  max-width: 880px;
  margin: 0 auto;
}

.tanabata:not(.gyouji) .drama_area .drama_one_sec {
  width: 47%;
  max-width: 391px;
  margin: 90px 0 0;
}

.tanabata:not(.gyouji) .drama_area .drama_one_sec .drama_summary {
  background: linear-gradient(-45deg, transparent 48%, #ec6d81, #ec6d81 52%, transparent 52%, transparent);
  background-size: 10px 10px;
  border: 1px solid #ec6d81;
  padding: 0 12px 12px;
}

.tanabata:not(.gyouji) .drama_area .drama_one_sec .drama_num {
  background: #fff100;
  border-radius: 30px;
  width: 60px;
  height: 60px;
  border: 1px solid #ec6d81;
  color: #ec6d81;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: -30px auto 0;
}

.tanabata:not(.gyouji) .drama_area .drama_one_sec .drama_title {
  position: relative;
  background: #ec6d81;
  padding: 10px 10px 10px 45px;
  color: #fff100;
  font-size: 1rem;
  margin: 10px 0 0;
  font-weight: bold;
}

.tanabata:not(.gyouji) .drama_area .drama_one_sec .drama_title::before {
  content: '';
  position: absolute;
  bottom: 7px;
  left: 5px;
  background: url("../img/tanabata/drama/img_nana.png") 0 0 no-repeat;
  background-size: contain;
  width: 33px;
  height: 91px;
}

.tanabata:not(.gyouji) .drama_area .drama_one_sec .drama_contents {
  background: #fff;
  border: 1px solid #ec6d81;
  padding: 10px;
}

.tanabata:not(.gyouji) .drama_area .drama_one_sec .control {
  background: #000;
}

.tanabata:not(.gyouji) .drama_area .drama_one_sec .control audio {
  width: 100%;
  opacity: 0.7;
  display: block;
}

.tanabata:not(.gyouji).world .title {
  position: relative;
}

.tanabata:not(.gyouji).world .world_map {
  background: url("../img/tanabata/world/img_map_world.jpg") 0 0 no-repeat;
  background-size: contain;
  padding-bottom: 40%;
  position: relative;
  width: 80%;
  margin: 0 auto;
}

.tanabata:not(.gyouji).world .links {
  position: absolute;
  bottom: 0;
  width: 100%;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  text-align: center;
}

.tanabata:not(.gyouji).world .links li {
  width: 122px;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.tanabata:not(.gyouji).world .links li .country_name {
  display: block;
  margin: 5px 0;
  font-weight: bold;
}

.tanabata:not(.gyouji).world .links li .country_name .english {
  color: #000;
  font-weight: normal;
}

.tanabata:not(.gyouji).world .links li.con_greece .country_name {
  color: #7bd66f;
}

.tanabata:not(.gyouji).world .links li.con_finland .country_name {
  color: #d6b06f;
}

.tanabata:not(.gyouji).world .links li.con_china .country_name {
  color: #f85890;
}

.tanabata:not(.gyouji).world .links.world_links {
  position: absolute;
  top: 65px;
  bottom: auto;
  right: 0;
  width: auto;
}

.tanabata:not(.gyouji).world .links.world_links > li {
  margin: 0 15px;
  width: 77px;
}

.tanabata:not(.gyouji).world .links.world_links > li .country_name {
  font-size: 0.8rem;
}

.tanabata:not(.gyouji).world .read {
  padding: 50px 0 0 120px;
}

.tanabata:not(.gyouji).world .read .country_title {
  font-weight: bold;
  font-size: 1.7rem;
  margin: 0 0 30px;
}

.tanabata:not(.gyouji).world .read .country_title .english {
  font-weight: normal;
  margin: 0;
  font-size: 1.1rem;
  display: block;
  color: #000;
}

.tanabata:not(.gyouji).world .read .legend_summary {
  font-weight: bold;
  font-size: 1rem;
}

.tanabata:not(.gyouji).world.gre .read {
  background: url("../img/tanabata/world/img_gre_usagi.png") no-repeat;
  background-size: 90px;
}

.tanabata:not(.gyouji).world.gre .read .country_title {
  color: #7bd66f;
}

.tanabata:not(.gyouji).world.fin .read {
  background: url("../img/tanabata/world/img_fin_usagi.png") no-repeat;
  background-size: 99px;
}

.tanabata:not(.gyouji).world.fin .read .country_title {
  color: #d6b06f;
}

.tanabata:not(.gyouji).world.chi .read {
  background: url("../img/tanabata/world/img_chi_usagi.png") no-repeat;
  background-size: 89px;
}

.tanabata:not(.gyouji).world.chi .read .country_title {
  color: #f85890;
}

.tanabata:not(.gyouji).world.gre .legend_story .one_sec {
  margin: 40px 0;
}

.tanabata:not(.gyouji).world.gre .legend_story .one_sec.gre_01 figure {
  width: 70%;
}

.tanabata:not(.gyouji).world.gre .legend_story .one_sec.gr_02 .text {
  margin: 50px 0 0;
}

.tanabata:not(.gyouji).world.gre .legend_story .one_sec.gre_03 figure {
  width: 223px;
}

.tanabata:not(.gyouji).world.gre .legend_story .one_sec.gre_03 .text {
  margin: 35px 0 0;
}

.tanabata:not(.gyouji).world.fin .legend_story .one_sec.fin_01 {
  margin: 0 0 20px;
}

.tanabata:not(.gyouji).world.fin .legend_story .one_sec.fin_01 figure {
  width: 70%;
}

.tanabata:not(.gyouji).world.fin .legend_story .one_sec.fin_02 figure {
  width: 70%;
}

.tanabata:not(.gyouji).world.chi .legend_story .one_sec.chi_01 {
  margin-bottom: 20px;
}

.tanabata:not(.gyouji).world.chi .legend_story .one_sec.chi_01 figure {
  width: 50%;
}

.tanabata:not(.gyouji).world.chi .legend_story .one_sec.chi_02 figure {
  width: 90%;
}

.tanabata:not(.gyouji).world.chi .legend_story .one_sec.chi_03 figure {
  width: 80%;
}

.tanabata:not(.gyouji).world figure {
  margin: 0 30px 30px;
}

.tanabata:not(.gyouji).world figure.img_center {
  margin: 0 auto 30px;
}

.tanabata:not(.gyouji).kokeshi_okurou .mainVisualSub {
  margin-bottom: 30px;
}

.tanabata:not(.gyouji).kokeshi_okurou .howtoKokeshi {
  display: flex;
  justify-content: space-between;
}

.tanabata:not(.gyouji).kokeshi_okurou .howtoKokeshi_one {
  position: relative;
  width: 32%;
  padding: 10px 15px;
  border: 3px solid #508aff;
  border-radius: 10px;
  background: #fffef5;
}

.tanabata:not(.gyouji).kokeshi_okurou .howtoKokeshi_one_title {
  display: flex;
  font-weight: bold;
}

.tanabata:not(.gyouji).kokeshi_okurou .howtoKokeshi_one_title.is_tanabatasai {
  display: block;
  background: rgba(30, 92, 224, 0.7);
  padding: 7px 5px 7px;
  text-align: center;
  color: #fff;
  font-size: 1rem;
  font-weight: bold;
}

.tanabata:not(.gyouji).kokeshi_okurou .howtoKokeshi_one_title em {
  font-weight: bold;
  color: #ff0000;
}

.tanabata:not(.gyouji).kokeshi_okurou .howtoKokeshi_one_title_number {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 13px;
  min-width: 15px;
  height: 15px;
  margin: 4px 3px 0 0;
  color: #fff;
  z-index: 2;
  background: #000;
  border-radius: 20px;
  background: #000;
  float: left;
}

.tanabata:not(.gyouji).kokeshi_okurou .howtoKokeshi_one_img {
  width: 70%;
  margin: 0 auto;
  height: 280px;
  margin-top: 10px;
  text-align: center;
}

.tanabata:not(.gyouji).kokeshi_okurou .howtoKokeshi_one_img img {
  width: auto;
  height: 100%;
}

.tanabata:not(.gyouji).kokeshi_okurou .howtoKokeshi_one_arrow {
  position: absolute;
  right: -19px;
  top: 50%;
  width: 14px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.tanabata:not(.gyouji).kokeshi_okurou .howtoKokeshi_one_arrow.is_yusou {
  background: url(../img/tanabata/kokeshi_okurou/icon_ar_yusou.png) center center/contain no-repeat;
  width: 88px;
  height: 88px;
  right: -50px;
  z-index: 2;
  text-indent: -999px;
}

.tanabata:not(.gyouji).kokeshi_okurou .howtoKokeshi_one.is_tanabatasai {
  position: relative;
  padding: 0;
  background: url(../img/tanabata/kokeshi_okurou/howto_03.png) center center/cover transparent no-repeat;
}

.tanabata:not(.gyouji).kokeshi_okurou .voice {
  padding: 50px 40px;
  background-image: url(../img/tanabata/kokeshi_okurou/bg_voice_top.png), url(../img/tanabata/kokeshi_okurou/bg_voice_bt.png), url(../img/tanabata/kokeshi_okurou/bg_voice_mid.png);
  background-repeat: no-repeat,
 no-repeat,
 repeat-y;
  background-size: 100%;
  background-position: left top,
 left bottom,
 left top;
}

.tanabata:not(.gyouji).kokeshi_okurou .voice_line {
  margin: 20px 0;
}

.tanabata:not(.gyouji).kokeshi_okurou .moushikomi {
  display: flex;
  justify-content: center;
  margin: 10px 0 40px;
  padding: 50px 10px;
  border: 1px solid #000;
  background: #fffef5;
}

.tanabata:not(.gyouji).kokeshi_okurou .moushikomi_content_imgs {
  display: flex;
}

.tanabata:not(.gyouji).kokeshi_okurou .moushikomi_content_imgs_img {
  max-width: 92px;
  width: 100%;
}

.tanabata:not(.gyouji).kokeshi_okurou .moushikomi_content_imgs_img + .moushikomi_content_imgs_img {
  margin-left: 10px;
}

.tanabata:not(.gyouji).kokeshi_okurou .moushikomi_content_text {
  text-align: center;
  font-weight: bold;
  margin-top: 10px;
}

.tanabata:not(.gyouji).kokeshi_okurou .kokeshiYusou {
  width: 55%;
  border-collapse: collapse;
  margin: 10px 0 15px;
}

.tanabata:not(.gyouji).kokeshi_okurou .kokeshiYusou th,
.tanabata:not(.gyouji).kokeshi_okurou .kokeshiYusou td {
  border: 1px solid #ccc;
  padding: 10px 20px;
}

.tanabata:not(.gyouji).kokeshi_okurou .kokeshiYusou th {
  background: #ec6d81;
  color: #fff;
  text-align: center;
}

/*.tanabata end*/

@media all and (min-width: 641px) {
  a:hover {
    color: #ec6d81;
  }

  a:hover img {
    opacity: 0.8;
  }

  .tokubetsukigan a:hover {
    background: #000;
  }

  .tokubetsukigan a:hover figure {
    -webkit-transform: scale(1);
    transform: scale(1);
    transition: opacity 1.5s ease-out, -webkit-transform 1.5s ease-out;
    transition: transform 1.5s ease-out, opacity 1.5s ease-out;
    transition: transform 1.5s ease-out, opacity 1.5s ease-out, -webkit-transform 1.5s ease-out;
    opacity: 0.8;
  }

  .btn_area ul li:hover {
    background: #cf0412;
    color: #fff;
    cursor: pointer;
  }

  .grovalNavi .scroll_area > ul li a:hover {
    background: #e7e5cc;
    transition: all .3s;
  }

  .grovalNavi .scroll_area .nav_footer .topics_blog a:hover {
    opacity: 1;
  }

  .intro .scrollBtn span:hover {
    background: #ee7b8d;
  }

  .bottom_links > div.happy_friends a:hover {
    background-color: #000;
    transition: background-color 1.5s ease-out;
  }

  .bottom_links > div.happy_friends a:hover img {
    -webkit-transform: scale(1.03);
    transform: scale(1.03);
    transition: opacity 1.5s ease-out , -webkit-transform 1.5s ease-out;
    transition: transform 1.5s ease-out , opacity 1.5s ease-out;
    transition: transform 1.5s ease-out , opacity 1.5s ease-out , -webkit-transform 1.5s ease-out;
    opacity: 0.8;
  }

  .gyouji:not(.gyoji_top) > section .bn a:hover {
    opacity: 0.8;
  }

  .omamori_top ul.category li:hover a {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }

  .omamori_in_contents > section > div .item > section .bottom_info .link_scene:hover {
    opacity: 0.7;
  }

  .tanabata:not(.gyouji).world .links li:hover {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }

  .tanabata:not(.gyouji).world .links li:hover a img {
    opacity: 1;
  }

  .tanabata:not(.gyouji).kokeshi_okurou .moushikomi_content + .moushikomi_content {
    border-left: 1px solid #000;
    padding-left: 40px;
  }

  .tanabata:not(.gyouji).kokeshi_okurou .moushikomi_content:not(:last-child) {
    padding-right: 40px;
  }
}

@media all and (min-width: 1188px) {
  .sp_only {
    display: none !important;
  }

  .shougatsu.nengajo_top .btn_jissun a:hover {
    background-color: #ec6d81;
    border: 1px solid #ec6d81;
    color: #fff;
  }
}

@media all and (max-width: 1187px) {
  .st-container.st-menu-open {
    width: 100%;
    overflow: hidden;
    height: 100vh;
  }

  .gyouji:not(.gyoji_top) {
    padding: 0 10px;
  }

  .omamori_top .omamori_contents > section {
    width: 100%;
  }

  .monogatari .monogatari_title {
    max-width: 100%;
    padding: 0 10px;
  }

  .monogatari .monogatari_contents {
    max-width: 100%;
    padding: 0 10px;
  }

  .kids_top .kids_contents {
    padding: 0 10px;
  }

  .tanabata:not(.gyouji) .tanabata_contents {
    padding: 0 10px;
  }
}

@media screen and (max-width: 830px) {
  .top_visual {
    width: 100%;
  }

  .top_visual .slick-slide {
    padding: 0 10px;
  }

  .top_visual .slick-slide a img {
    width: 100%;
    height: auto;
  }

  .top_visual .slick-arrow.slick-next {
    right: 40px;
    -webkit-transform: rotate(180deg) translateY(calc(70%));
    transform: rotate(180deg) translateY(calc(70%));
  }

  .top_visual .slick-arrow.slick-prev {
    left: 40px;
    -webkit-transform: translateY(-70%);
    transform: translateY(-70%);
  }
}

@media all and (max-width: 640px) {
  a:active {
    color: #ec6d81;
  }

  a:active img {
    opacity: 0.8;
  }

  .pc {
    display: none;
  }

  .smp {
    display: block;
  }

  .no_smp {
    display: none;
  }

  html {
    height: 100%;
    font-size: 1.1rem;
  }

  body {
    height: 100%;
    font-size: 1.1rem;
  }

  #st-container.st-menu-open #st-container {
    height: 100vh;
  }

  #contents {
    min-width: 100%;
    width: 100%;
    padding: 65px 0 0;
  }

  .pc_only {
    display: none !important;
  }

  #loading img {
    width: 200px;
  }

  h2.main_visual {
    display: none;
  }

  h2.main_visual p {
    width: 100%;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    left: 0;
    text-align: right;
  }

  .inner_contents .title {
    width: 100%;
    padding: 0 10px;
  }

  .inner_contents .wid_wrap {
    width: 100%;
    padding: 0 10px;
  }

  .page404 {
    padding: 0 10px;
  }

  .pankuzu {
    margin: 0 10px 30px;
    text-align: right;
  }

  .tokubetsukigan {
    position: relative;
    text-align: left;
    background: #fff;
  }

  .tokubetsukigan a figure {
    background-image: url(../img/top/img_tokubetsukigan_smp.jpg);
    background-repeat: no-repeat;
    padding-bottom: 79%;
    -webkit-transform: scale(1.03);
    transform: scale(1.03);
    transition: none;
    opacity: 1;
  }

  .tokubetsukigan a:active figure {
    -webkit-transform: scale(1);
    transform: scale(1);
    transition: opacity 1.5s ease-out, -webkit-transform 1.5s ease-out;
    transition: transform 1.5s ease-out, opacity 1.5s ease-out;
    transition: transform 1.5s ease-out, opacity 1.5s ease-out, -webkit-transform 1.5s ease-out;
  }

  .tokubetsukigan a .textbox {
    position: static;
    width: 100%;
    padding: 15px 10px 0;
    color: #000;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  .gyouji .tokubetsukigan a .textbox {
    padding-left: 0;
    padding-right: 0;
  }

  .tokubetsukigan a .textbox .subtext {
    background: url(../img/top/img_en_smp.png) left 0 no-repeat;
    background-size: contain;
    overflow: hidden;
    white-space: nowrap;
    text-indent: 100%;
    padding: 0 0 0 40px;
    height: auto;
    display: block;
    margin: 0 0 12px;
  }

  .tokubetsukigan a .textbox h2 {
    margin: 0 0 20px;
  }

  .tokubetsukigan a .textbox p {
    font-size: 1rem;
  }

  .individual_info {
    padding: 40px 0 10px;
  }

  .individual_info > section,
  .individual_info > .wid_wrap > section {
    max-width: 100%;
    padding: 0 10px;
  }

  .wrap_flex {
    width: 100%;
    display: block;
  }

  .festival_list {
    max-width: 100%;
    width: 100%;
    margin: 0 0 20px 0;
  }

  .note {
    font-size: 0.9rem;
    text-indent: -1.2rem;
    padding-left: 1.2rem;
  }

  .ishihue {
    max-width: 100%;
    width: 100%;
    margin: 0;
  }

  .ishihue p {
    font-size: 1rem;
  }

  .btn_area {
    margin-bottom: 60px;
  }

  .btn_area ul {
    flex-flow: row wrap;
    justify-content: flex-start;
  }

  .btn_area ul li {
    width: auto;
    padding: 3px 5px;
    margin-bottom: 5px;
  }

  .btn_area ul li.select {
    background: #cf0412;
    color: #fff;
  }

  .btn_area ul li:active {
    background: #cf0412;
    color: #fff;
  }

  .howto > div {
    margin: 0 0 20px;
  }

  .howto > div p {
    position: static;
    color: #000;
    background: transparent;
    opacity: 1;
    padding: 0.8em 0;
    text-indent: -0.9rem;
    padding-left: 0.9rem;
  }

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

  .mailmagazine input[type=radio],
  .mailmagazine input[type=checkbox] {
    display: inline-block;
    margin-right: 6px;
  }

  .mailmagazine input[type=radio] + label,
  .mailmagazine input[type=checkbox] + label {
    position: relative;
    display: inline-block;
    margin-right: 12px;
    font-size: 14px;
    line-height: 30px;
    cursor: pointer;
  }

  .mailmagazine .out_maglink {
    margin: 10px 0;
    text-align: center;
    font-size: 0.8rem;
  }

  .mailmagazine .rdemail {
    margin: 10px 0;
  }

  .mailmagazine .rdemail input {
    width: 100%;
    border: 1px solid #ccc;
    float: none;
    padding-left: 3px;
  }

  .mailmagazine .either {
    position: relative;
    width: 130px;
    overflow: hidden;
    border: 2px solid #ccc;
    margin: 20px auto;
  }

  .mailmagazine .either input[type=radio] + label {
    position: static;
    float: left;
    display: block;
    width: 50%;
    margin-right: 0;
    padding: 0;
    overflow: hidden;
    text-align: center;
    background-color: #fff;
  }

  .mailmagazine .either input[type=radio] + label::before {
    content: attr(data-label);
    top: 0;
    bottom: 0;
    z-index: 1;
    display: block;
    width: 50%;
    height: auto;
    margin-top: 0;
    text-align: center;
    color: transparent;
    background: transparent;
    border: 0 none;
    border-radius: 0;
  }

  .mailmagazine .either input[type=radio] + label:last-child::before {
    left: 50%;
    right: 0;
  }

  .mailmagazine .either input[type=radio]:checked + label::before {
    color: #fff;
  }

  .mailmagazine .either input[type=radio] + label::after {
    border-radius: 0;
  }

  .mailmagazine .either input[type=radio]:first-child + label::after {
    content: none;
  }

  .mailmagazine .either input[type=radio] + label + input[type=radio] + label::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 0;
    display: block;
    width: auto;
    height: auto;
    margin: auto;
    background: #ff3600;
    border: 2px solid #fff;
    transition: all 200ms;
  }

  .mailmagazine .either input[type=radio]:checked + label + input[type=radio] + label::after {
    left: 0;
    right: 50%;
  }

  .mailmagazine .either input[type=radio] + label + input[type=radio]:checked + label::after {
    left: 50%;
    right: 0;
  }

  .mailmagazine .riyoukiyaku {
    text-align: center;
  }

  .mailmagazine .btn_submit {
    text-align: center;
    margin: 30px 0;
  }

  .mailmagazine .btn_submit input[type=submit] {
    float: none;
  }

  .mailmagazine .magumagu_ad {
    font-size: 0.7rem;
    float: right;
    margin-bottom: 10px;
  }

  .shirousagi_bn {
    width: 100%;
    padding: 0 10px;
  }

  .tuduki_frame {
    height: 200px;
    overflow: hidden;
  }

  .grovalNavi {
    position: fixed;
    width: 75%;
    height: 100%;
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
  }

  .grovalNavi .scroll_area {
    box-sizing: border-box;
    padding: 0 10px 20px;
    overflow: auto;
    height: auto;
    width: 100%;
  }

  .grovalNavi .scroll_area .navlogo {
    padding: 10px 10% 0;
  }

  .grovalNavi .scroll_area > ul li a:active {
    background: #e7e5cc;
    transition: all .3s;
  }

  .grovalNavi .scroll_area .nav_footer .topics_blog {
    width: 100%;
  }

  .grovalNavi .scroll_area .nav_footer .topics_blog a:active {
    opacity: 0.7;
  }

  .grovalNavi .scroll_area .nav_footer .kamicocoro {
    background-size: 40px;
    padding: 0 0 0 50px;
    font-size: 0.9rem;
  }

  footer {
    margin: 30px 0 0;
    border-top: 1px solid #CCC;
  }

  .intro .movie .inner .logo_area {
    width: auto;
  }

  .intro .movie .inner .logo_area .maincopy {
    font-size: 1.6em;
  }

  .intro .scrollBtn span:active {
    background: #ee7b8d;
  }

  .top_visual {
    width: 100%;
  }

  .top_visual.smp {
    display: block;
  }

  .top_visual.pc {
    display: none;
  }

  .top_visual .slick-slide {
    padding: 0;
  }

  .top_visual .slick-slide a img {
    width: 100%;
    height: auto;
    max-height: none;
  }

  .top_visual .slick-arrow.slick-next {
    right: 20px;
    -webkit-transform: rotate(180deg) translateY(calc(70%));
    transform: rotate(180deg) translateY(calc(70%));
  }

  .top_visual .slick-arrow.slick-prev {
    left: 20px;
    -webkit-transform: translateY(-70%);
    transform: translateY(-70%);
  }

  .top_visual .slick-dots li button::before {
    font-size: 12px;
  }

  .contents_box {
    display: block;
    padding: 0 15px;
  }

  .contents_box > section {
    max-width: none;
    margin: 0 0 35px;
  }

  .contents_box.top_column {
    margin-top: 50px;
  }

  .contents_box.top_column > section {
    max-width: 100%;
  }

  .bottom_links {
    display: block;
    padding: 0;
  }

  .bottom_links > div {
    width: 100%;
  }

  .bottom_links > div.happy_friends a {
    transition: none;
  }

  .bottom_links > div.happy_friends a:active {
    background-color: #000;
    transition: all 1.5s ease-out;
  }

  .bottom_links > div.happy_friends a:active img {
    -webkit-transform: scale(1.03);
    transform: scale(1.03);
    transition: none;
    opacity: 1;
    opacity: 0.7;
  }

  .bottom_links > div.mail:not(.inner_contents) {
    margin: 40px 0 20px;
    padding-right: 10px;
    padding-left: 10px;
  }

  .bottom_links > div.mail:not(.inner_contents) .form {
    padding: 20px;
  }

  #btn_uranai {
    width: 150px;
    position: fixed;
    z-index: 100;
    top: 0;
    left: calc(100% + 200px);
  }

  #btn_uranai.uranai_move {
    top: 43vh;
    height: 250px;
    /*100% - 幅　-コンテンツの右から20pxの位置に*/
    left: 20px;
  }

  #uranai_result_page .uranai_contents {
    max-width: 100%;
    padding: 10px;
    height: auto;
  }

  #uranai_result_page .read {
    display: block;
  }

  #uranai_result_page .read > div,
  #uranai_result_page .read p {
    display: block;
  }

  #uranai_result_page .read .header_img {
    width: 60%;
    margin: 0 auto 30px;
  }

  #uranai_result_page .read p {
    max-width: 100%;
  }

  #uranai_result_page .uranai_result .main {
    padding: 30px;
  }

  #uranai_result_page .uranai_result .text_en {
    margin: 30px auto 30px;
    float: none;
    display: block;
    text-align: center;
  }

  #uranai_result_page .uranai_result #uranai_en {
    margin: 0 auto 25px;
  }

  #uranai_result_page .uranai_result .lucky {
    display: block;
    padding: 20px;
  }

  #uranai_result_page .uranai_result .lucky > p {
    display: block;
    text-align: center;
  }

  #uranai_result_page .uranai_result .lucky > p > span {
    display: block;
  }

  #uranai_result_page .uranai_result .lucky .color {
    display: block;
    margin: 30px 0 0;
  }

  #uranai_result_page .uranai_result .lucky .color .colorname {
    display: block;
    margin: 0 auto 20px;
    text-align: center;
  }

  #uranai_result_page .uranai_result .lucky .color .color_tip {
    background: #6cb88f;
    border-radius: 90px;
    width: 90px;
    height: 90px;
    display: block;
    margin: 0 auto;
  }

  #uranai_result_page .uranai_footer {
    padding: 20px 0;
  }

  #uranai_result_page .uranai_footer .logo {
    width: 126px;
    margin: 0 auto;
  }

  .uranaipageClose {
    float: none;
    opacity: 0;
    position: absolute;
    top: 0;
    right: 10px;
    z-index: 105;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
  }

  .uranai_open .uranaipageClose {
    opacity: 1;
    transition: opacity, .2s 1.8s;
  }

  .removing .uranai_open .uranaipageClose {
    opacity: 0;
    transition: opacity, .5s;
  }

  .event {
    display: block;
  }

  .festival > section {
    margin: 0 0 80px;
  }

  .festival > section .event figure {
    width: 100%;
  }

  .festival_summary {
    width: 100%;
    padding-left: 10px;
    padding-right: 10px;
  }

  .festival_summary h2 {
    font-size: 1.4rem;
  }

  .festival_summary p {
    font-size: 1rem;
  }

  .festival_summary .detail {
    padding-left: 10px;
    padding-right: 10px;
  }

  .festival_summary .detail a {
    font-size: 1rem;
  }

  .gyouji:not(.gyoji_top) > section .read figure {
    float: none;
    margin: 0 auto;
    width: 80%;
  }

  .gyouji:not(.gyoji_top) > section .read figure figcaption {
    margin: 0 0 10px;
  }

  .gyouji:not(.gyoji_top) > section .read .text {
    margin: 0 0 10px;
    width: 100%;
  }

  .gyouji:not(.gyoji_top) > section .point .image {
    float: none;
    width: 100%;
  }

  .gyouji:not(.gyoji_top) > section .photos ul {
    display: block;
  }

  .gyouji:not(.gyoji_top) > section .photos ul li {
    width: 100%;
  }

  .gyouji:not(.gyoji_top) > section .bn {
    display: block;
  }

  .gyouji:not(.gyoji_top) > section .bn a {
    margin: 0;
  }

  .gyouji:not(.gyoji_top) > section .bn a:active {
    opacity: 0.8;
  }

  .tanabata_kokeshi .yuusou .detail table {
    float: none;
    width: 100%;
    margin: 0 0 10px;
  }

  .tanabata_kokeshi .yuusou .detail table th,
  .tanabata_kokeshi .yuusou .detail table td {
    padding: 10px;
  }

  .tanabata_kokeshi .yuusou .readme {
    width: 100%;
    float: none;
  }

  .omamori_top .wid_wrap {
    padding: 0 10px;
    width: 100%;
  }

  .omamori_top ul.category {
    flex-flow: row wrap;
  }

  .omamori_top ul.category li {
    width: 49%;
  }

  .omamori_top .omamori_contents {
    padding-left: 10px;
    padding-right: 10px;
  }

  .omamori_top .omamori_contents > section > h1 {
    width: 100%;
  }

  .omamori_top .omamori_contents > section > div img.imagephoto {
    float: none;
    width: 100%;
    margin: 0 0 20px;
  }

  .omamori_top .omamori_contents > section .note_box {
    width: calc(100% - 4px);
    padding: 15px;
  }

  .omamori_top .omamori_contents > section .postage {
    width: 100%;
  }

  .omamori_top .omamori_contents > section .postage h2 {
    float: none;
  }

  .omamori_top .omamori_contents > section .postage .note {
    float: none;
  }

  .omamori:not(.omamori_top) .sub_visual {
    background-repeat: no-repeat;
    height: auto;
    min-height: 100px;
  }

  .omamori:not(.omamori_top) .sub_visual h4 {
    font-size: 1.5rem;
    padding-left: 10px;
    padding-right: 10px;
    text-align: center;
  }

  .omamori:not(.omamori_top) .sub_visual .page_link {
    display: block;
    position: static;
    padding: 70px 10px 10px;
  }

  .omamori:not(.omamori_top) .sub_visual .page_link li {
    width: 100%;
    margin: 0 0 5px;
  }

  .omamori:not(.omamori_top) .sub_visual .page_link.is_col2 li {
    width: 100%;
    margin: 0 0 5px;
  }

  .omamori_in_contents > section {
    margin: 0 0 80px;
  }

  .allomamori .omamori_in_contents > section > div {
    margin-top: 0;
  }

  .omamori_in_contents > section > div .read {
    padding: 10px;
    margin-bottom: 15px;
  }

  .omamori_in_contents > section > div .item {
    margin: 10px 0 0;
    display: block;
  }

  .allomamori .omamori_in_contents > section > div .item > section {
    width: 100%;
  }

  .omamori_in_contents > section > div .item > section {
    margin: 0 0 15px;
    width: 100%;
  }

  .omamori_in_contents > section > div .item > section .image {
    padding-bottom: 40px;
    width: 80%;
    height: 330px;
    margin: 0 auto;
    text-align: center;
  }

  .omamori_in_contents > section > div .item > section .image.long {
    height: auto;
  }

  .omamori_in_contents > section > div .item > section .image.yokonaga {
    height: auto;
  }

  .omamori_in_contents > section > div .item > section .image img {
    display: inline;
    position: static;
    margin: 0 auto;
    -webkit-transform: none;
    transform: none;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
  }

  .omamori_in_contents > section > div .item > section .image img.heightlimit {
    max-height: 100%;
  }

  .omamori_in_contents > section > div .item > section .bottom_info {
    display: block;
  }

  .omamori_in_contents > section > div .item > section .bottom_info .link_scene:active {
    opacity: 0.7;
  }

  .message {
    padding: 0 10px;
  }

  .message .read_contents {
    width: 100%;
  }

  .message .archive .archive_form,
  .guji .archive .archive_form {
    font-size: 1.2rem;
  }

  .shaden .title figure {
    float: none;
    width: 100%;
    margin: 0 0 20px;
  }

  .shaden .wid_wrap .shaden_contents > section {
    display: block;
  }

  .shaden .wid_wrap .shaden_contents > section:nth-child(even) .image {
    width: 100%;
  }

  .shaden .wid_wrap .shaden_contents > section:nth-child(even) .text {
    width: 100%;
    margin-top: 0;
  }

  .shaden .wid_wrap .shaden_contents > section .image {
    width: 100%;
  }

  .shaden .wid_wrap .shaden_contents > section .text {
    width: 100%;
  }

  .shaden .wid_wrap .shaden_contents > section .text .sub_image {
    width: 100%;
    float: none;
  }

  .shaden .wid_wrap .shaden_contents > section .text .sub_image.left {
    float: none;
  }

  .shaden .map_keidai {
    padding-right: 10px;
    padding-left: 10px;
  }

  .shaden .map_keidai .map_img {
    min-width: 100%;
    max-width: 100%;
  }

  .kamisama_top .title figure {
    float: none;
    width: 100%;
    margin: 0 0 30px;
  }

  .kamisama_top .kamisama_contents {
    display: block;
  }

  .kamisama_top .kamisama_contents > section {
    width: 100%;
  }

  .kamisama_top .meguri {
    padding: 20px 10px;
  }

  .kamisama_top .meguri h1 {
    margin-bottom: 40px;
  }

  .kamisama_top .meguri .inner_wrap {
    width: 100%;
  }

  .kamisama_top .meguri .inner_wrap .meguri_sec {
    display: block;
  }

  .kamisama_top .meguri .inner_wrap .meguri_sec > section {
    width: 100%;
    margin: 0 0 50px;
  }

  .kamisama_top .meguri .inner_wrap .meguri_sec > section:last-child {
    margin-bottom: 0;
  }

  .kamisama:not(.kamisama_top) .title + .wid_wrap section > div h4 {
    width: 100%;
  }

  .kamisama:not(.kamisama_top) .wid_wrap > section figure {
    float: none;
    width: 100%;
    margin: 10px 0 30px;
  }

  .kamisama:not(.kamisama_top) .introduce {
    padding: 20px 10px;
  }

  .kamisama:not(.kamisama_top) .introduce h1 {
    margin-bottom: 40px;
  }

  .kamisama:not(.kamisama_top) .introduce .inner_wrap .introduce_sec {
    display: block;
  }

  .kamisama:not(.kamisama_top) .introduce .inner_wrap .introduce_sec > section {
    width: 100%;
    margin: 30px 0 70px;
  }

  .shiryou_top .kodai figure .image .zukai {
    position: static;
  }

  .shiryou_top .wid_wrap .data_list table .pdf_note {
    float: none;
    display: block;
  }

  .shiryou_top .miyako {
    margin: 70px 0 0;
  }

  .shiryou_top .miyako .miyako_contents .main {
    float: none;
    width: 100%;
    margin: 0 0 70px;
  }

  .shiryou_top .miyako .miyako_contents .main figure {
    position: static;
    width: 100%;
    margin: 10px 0;
  }

  .shiryou_top .miyako .miyako_contents .main figure figcaption {
    margin: 10px 0 0;
  }

  .shiryou_top .miyako .miyako_contents .chishu {
    float: none;
    width: 100%;
    text-align: center;
  }

  .shiryou_top .miyako .miyako_contents .chishu img {
    width: 70%;
  }

  .shiryou_top .yurai {
    margin: 70px 0;
  }

  .history_top > section {
    margin: 0 0 60px;
  }

  .history_top > section .menu_area .menu_area_inner {
    display: block;
  }

  .history_top > section .menu_area .menu_area_inner .image {
    width: 100%;
  }

  .history_top > section .menu_area .menu_area_inner .menu_list {
    width: 100%;
    padding: 20px 10px;
  }

  .history_top > section .menu_area .menu_area_inner .menu_list .menu_list_inner .menu_link {
    width: 100%;
    position: static;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  .history_top > section .en {
    display: block;
    width: 100%;
    padding: 0 10px;
    margin: 0 auto 40px;
  }

  .history_top > section .en > section {
    width: 100%;
    margin: 0 0 30px;
  }

  .history_top > section .shirousagi {
    width: 100%;
    padding: 0 10px;
    margin: 0 auto;
  }

  .yurai:not(.tanabata) .image_area {
    display: block;
  }

  .yurai:not(.tanabata) .image_area figure {
    width: 100%;
    margin: 0 0 30px;
  }

  .yurai:not(.tanabata) .image_area figure img {
    height: auto;
    width: 100%;
  }

  .yurai:not(.tanabata) .image_area figure figcaption {
    font-size: 1rem;
  }

  .yurai:not(.tanabata) .two_column {
    display: block;
  }

  .yurai:not(.tanabata) .two_column > section {
    width: 100%;
    margin: 0 0 20px;
  }

  .edo .happou img {
    width: 100%;
  }

  .guji .title,
  .guji.__top .title {
    position: relative;
  }

  .guji .individual_info,
  .guji.__top .individual_info {
    padding-left: 10px;
    padding-right: 10px;
  }

  .guji .archiveSelect .archive_select_month,
  .guji.__top .archiveSelect .archive_select_month {
    float: none;
  }

  .guji .archiveSelect .gujibackbtn,
  .guji.__top .archiveSelect .gujibackbtn {
    float: none;
    margin-top: 10px;
  }

  .toKotoba {
    display: none;
  }

  .scene_contents {
    width: 100%;
    padding: 10px;
  }

  .scene_contents > section {
    display: block;
    margin: 0 0 10px;
  }

  .scene_contents > section .text {
    order: 1;
    width: 100%;
    padding: 10px;
  }

  .scene_contents > section .image {
    width: 100%;
    border: none;
  }

  .scene_contents > section:nth-child(even) .image {
    border: none;
  }

  .kigan .note_box_wrap .note_box > div {
    padding: 10px;
  }

  .kigan .note_box_wrap .note_box > div .kigan_list li {
    width: 50%;
  }

  .kigan .note_box_wrap .note_box > div .note {
    padding: 10px 0 10px 20px;
  }

  .kigan .individual_info {
    padding-bottom: 20px;
  }

  .kigan .individual_info .read .dairi span {
    display: block;
    margin: 0 0 10px;
  }

  .kigan .individual_info .note_box .image {
    width: 100%;
  }

  .sanpai .menu_area {
    display: block;
  }

  .sanpai .menu_area p {
    width: 100%;
    margin-bottom: 20px;
  }

  .sanpai .menu_area .menu_link {
    width: 100%;
  }

  .sanpai .individual_info .wid_wrap .movie_kiyomekata {
    max-width: 100%;
  }

  .sanpai .individual_info .wid_wrap .movie_kiyomekata iframe {
    width: 100%;
  }

  .rekishi .individual_info .kamishiro > p {
    float: none;
    width: 100%;
    margin: 0 0 10px;
  }

  .rekishi .individual_info .kamishiro .image {
    float: none;
    width: 100%;
  }

  .rekishi .individual_info .chronology > section {
    padding: 20px 0;
  }

  .rekishi .individual_info .chronology > section h2 {
    text-align: left;
    width: auto;
  }

  .rekishi .individual_info .chronology > section span {
    width: auto;
  }

  .rekishi .individual_info .chronology > section p {
    max-width: 100%;
  }

  .rekishi .individual_info .note_box {
    padding-bottom: 15px;
  }

  .monogatari .monogatari_contents > section > div .image {
    width: 100%;
    float: none;
    margin: 0 0 30px;
  }

  .monogatari .monogatari_contents .note_box {
    padding: 10px 10px 10px 13px;
  }

  .monogatari .image_area {
    display: block;
  }

  .monogatari .image_area figure {
    width: 100%;
    margin-bottom: 20px;
  }

  .monogatari_top .individual_info h1 {
    width: 100%;
  }

  .monogatari_top .individual_info .gunjin > div .text {
    width: 100%;
    float: none;
    margin: 0 0 10px;
  }

  .monogatari_top .individual_info .gunjin > div figure {
    width: 100%;
    float: none;
  }

  .monogatari_top .individual_info .gunjin > div figure .image {
    width: 80%;
    margin: 0 auto;
  }

  .en_menu ul {
    justify-content: space-around;
  }

  .en_menu ul li:before {
    top: -29%;
  }

  .en_menu ul li a {
    padding: 8px 10px 5px;
    font-size: 1.1rem;
  }

  .en_top .monogatari_contents > section > div .image {
    width: 100%;
  }

  .yomu .monogatari_contents .note_box:not(.normal) {
    padding: 0;
  }

  .yomu .monogatari_contents .note_box:not(.normal) > section {
    padding: 30px 20px 40px;
  }

  .yomu .monogatari_contents .note_box:not(.normal) .poem {
    display: block;
  }

  .yomu .monogatari_contents .note_box:not(.normal) .poem .image {
    width: 80%;
    margin: 20px auto;
  }

  .yomu .monogatari_contents .note_box:not(.normal) .poem .instruction {
    max-width: 100%;
    display: block;
  }

  .yomu .monogatari_contents .note_box:not(.normal) .poem .instruction .translation {
    margin: 0 0 40px;
  }

  .yomu .monogatari_contents .note_box:not(.normal) .individual_info_note {
    padding: 30px 16px 30px 20px;
  }

  .yomu .monogatari_contents .note_box:not(.normal).yuya > section figure {
    margin: 0;
    width: 100%;
    float: none;
  }

  .yomu .monogatari_contents .note_box:not(.normal).yuya > section figure figcaption {
    margin: 0 0 10px;
  }

  .shirousagi .read {
    display: block;
    margin: 0 0 30px;
  }

  .shirousagi .read .text {
    width: 100%;
  }

  .shirousagi .mukashibanashi {
    padding: 0 10px;
  }

  .shirousagi .mukashibanashi .image {
    margin-bottom: 20px;
  }

  .blog.inner_contents {
    padding: 0 10px;
    display: block;
  }

  .blog.inner_contents p {
    margin-bottom: 0.5rem;
  }

  .blog.inner_contents .blog_wrapper {
    margin: 0 0 70px;
    width: 100%;
  }

  .blog.inner_contents .topics_blog_sec > section .data .date {
    float: none;
    margin: 0;
  }

  .blog.inner_contents .topics_blog_sec > section .text .alignright {
    float: none;
    margin: 10px auto;
    max-width: 100%;
  }

  .blog.inner_contents .topics_blog_sec > section .text .alignleft {
    float: none;
    margin: 10px auto;
    max-width: 100%;
  }

  .blog.inner_contents .topics_blog_sec > section .text .aligncenter {
    max-width: 100%;
  }

  .blog.inner_contents .topics_blog_sec > section .kigan_link a {
    display: block;
    margin-top: 5px;
  }

  .blog.inner_contents .widget {
    width: 100%;
  }

  #contents .blog.inner_contents .widget form input {
    height: 2rem;
  }

  .blog.inner_contents .widget .side_widet select {
    width: 90%;
    margin: 10px auto 0;
    display: block;
  }

  .blog.inner_contents .widget .widget_categories > ul li a,
  .blog.inner_contents .widget .widget_archive > ul li a,
  .blog.inner_contents .widget .link > ul li a {
    text-decoration: none;
    font-size: 1rem;
  }

  .kids_top .page_link {
    margin-bottom: 20px;
  }

  .kids_top .bokunoichinichi h3 img {
    width: 100%;
  }

  .kids_top .bokunoichinichi h4 {
    width: 50%;
    float: none;
    margin: 0 auto 10px;
  }

  .kids_top .bn {
    margin: 30px 0 0;
    display: block;
  }

  .kids_top .bn_sec + .bn_sec {
    margin-left: 0;
    padding: 0;
  }

  .hana .flex_div {
    display: block;
  }

  .hana .one_sec {
    width: 100%;
  }

  .hana .one_sec figure {
    height: 210px;
  }

  .yaku.omamori .yaku_hayami {
    width: 100%;
  }

  .mail_table th {
    display: block;
    text-align: left;
    border-bottom: 1px dotted #999999;
  }

  .mail_table td {
    display: block;
    border-top: none;
  }

  .mail_table input[type="text"],
  .mail_table textarea {
    width: 100%;
  }

  .mail_table input[type='text'] {
    width: 100%;
  }

  .access_top .googlemap iframe {
    height: 300px;
  }

  .access_top .googlemap address {
    width: 100%;
    padding-left: 10px;
    padding-right: 10px;
  }

  .access_top .map {
    max-width: 100%;
    margin: 20px 0 0;
  }

  .access_top .pattern {
    display: block;
    margin: 0 0 50px;
  }

  .access_top .pattern .text {
    padding: 0;
    margin-bottom: 50px;
  }

  .sitemap .sitemap_contents {
    display: block;
  }

  .sitemap .sitemap_contents > section {
    width: 100%;
  }

  .english.inner_contents .shrine {
    display: block;
  }

  .english.inner_contents .shrine_sec:not(:last-child) {
    margin: 0;
  }

  .english.inner_contents .en_musubi figure {
    width: 100%;
    float: none;
    margin: 0 0 20px;
  }

  .english.inner_contents .imagearea {
    display: block;
  }

  .english.inner_contents .imagearea .image {
    width: 100%;
    margin: 0 0 10px;
  }

  .english.inner_contents .visit_sec.secondary_shrines .imagearea .image {
    width: 100%;
  }

  .english.inner_contents .visit_sec.secondary_shrines .imagearea .image:nth-child(2n) {
    margin-right: 0;
  }

  .english.inner_contents .picture_tablets .image {
    float: none;
    width: 90%;
    margin: 0 auto 20px;
  }

  .english.inner_contents .okuninushi .image {
    float: none;
    width: 90%;
    margin: 0 auto 20px;
  }

  .english.inner_contents .omamori .omamoribox_sec {
    margin: 0 0 30px;
    width: calc((100% - 10px) / 2);
    margin: 0 10px 10px 0;
  }

  .english.inner_contents .omamori .omamoribox_sec:nth-child(4n) {
    margin-right: 10px;
  }

  .english.inner_contents .omamori .omamoribox_sec:nth-child(2n) {
    margin-right: 0;
  }

  .koiuranai_top .individual_info .wid_wrap .movie_koiuranai {
    max-width: 100%;
  }

  .koiuranai_top .individual_info .wid_wrap .movie_koiuranai iframe {
    width: 100%;
  }

  .omikuji .title .image_area {
    display: block;
  }

  .omikuji .title .image_area figure {
    max-width: none;
    width: 100%;
    margin: 0 0 10px;
  }

  .about.inner_contents .col_wrap {
    display: block;
  }

  .about.inner_contents .col {
    width: 100%;
  }

  .shougatsuCountDown_wrap .runwayLoad {
    bottom: 67px;
  }

  .shougatsuCountDown_maintext {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
  }

  .shougatsuCountDown_maintext_bg {
    width: 100%;
    overflow: hidden;
  }

  .shougatsuCountDown_maintext_bg img {
    width: 100%;
  }

  .shougatsuCountDown_runway_hikoboshi {
    width: calc(50% - 100px);
  }

  .shougatsuCountDown_runway_hikoboshi_img {
    width: 100px;
  }

  .shougatsuCountDown_runway_orihime {
    width: calc(50% - 100px);
  }

  .shougatsuCountDown_runway_orihime_img {
    width: 100px;
  }

  .shougatsuCountDown_link {
    top: -10%;
    width: 90px;
    right: 10px;
  }

  .shougatsuVer .CD_a {
    width: 100%;
    padding: 0 82px 0 30px;
    font-size: 1.2rem;
  }

  .shougatsuVer .CD_a #countdownNumber {
    font-size: 2.4rem;
    line-height: 2rem;
  }

  .shougatsuVer .CD_b {
    width: 100%;
    font-size: 1.9rem;
    padding: 0 82px 0 30px;
  }

  .shougatsuVer .CD_b .shougatsuCountDown_tdtb {
    font-size: 1.7rem;
  }

  .shougatsu .aside_list li {
    margin-bottom: 10px;
    float: none;
  }

  .shougatsu .aside_list li:last-child {
    margin-bottom: 0;
  }

  .shougatsu .contents_link {
    display: block;
  }

  .shougatsu .contents_link > section {
    margin: 0 0 50px;
  }

  .shougatsu .contents_link > section a {
    display: flex;
    flex-flow: column wrap;
  }

  .shougatsu .contents_link > section a img {
    order: 3;
  }

  .shougatsu .contents_link > section a h3 {
    order: 1;
    margin: 0 0 10px;
  }

  .shougatsu .contents_link > section a p {
    order: 2;
    font-size: 1rem;
    margin: 0 0 10px;
  }

  .shougatsu .one_sec {
    overflow: hidden;
  }

  .shougatsu .one_sec figure {
    width: 100%;
    margin: 0 0 10px;
    float: none;
  }

  .shougatsu.world .one_sec figure,
  .shougatsu.region.after .one_sec figure,
  .shougatsu.zouni .one_sec figure,
  .shougatsu.daikaibou .one_sec figure {
    width: auto;
    text-align: center;
  }

  .shougatsu.world .one_sec figure img,
  .shougatsu.region.after .one_sec figure img,
  .shougatsu.zouni .one_sec figure img,
  .shougatsu.daikaibou .one_sec figure img {
    max-width: 100%;
    width: auto;
  }

  .shougatsu .menu_list {
    display: block;
  }

  .shougatsu .menu_list ul {
    width: 100%;
    margin: 0 0 -1px;
  }

  .shougatsu .menu_list ul:first-child li:last-child {
    border-bottom: none;
  }

  .shougatsu .menu_list ul:last-child li:first-child {
    border-top: 1px dotted #000;
  }

  .shougatsu .daikaibou h2,
  .shougatsu .daikaibou .title h3,
  .shougatsu.daikaibou h2,
  .shougatsu.daikaibou .title h3 {
    margin: 0 0 20px;
  }

  .shougatsu .daikaibou .contents_link ul,
  .shougatsu.daikaibou .contents_link ul {
    flex-flow: row wrap;
    justify-content: space-between;
    margin: 0 0 60px;
  }

  .shougatsu .daikaibou .contents_link ul li,
  .shougatsu.daikaibou .contents_link ul li {
    width: 33%;
    margin: 0 0 20px;
  }

  .shougatsu_top {
    padding: 50px 0 30px;
    margin-bottom: -50px;
  }

  .shougatsu_top .shougatsu_contents {
    padding: 0 10px;
  }

  .shougatsu_top .shougatsuTitle {
    width: 80%;
  }

  .shougatsu_top .shougatsuRead {
    margin-bottom: 90px;
  }

  .shougatsu_top .shougatsuRead p {
    font-size: 1.2rem;
  }

  .shougatsu_top .hatsumoudeLinks_illust {
    max-width: 40%;
    top: auto;
    bottom: calc(100% - 40px);
  }

  .shougatsu_top .bn_cal_nenga {
    display: block;
  }

  .shougatsu_top .bn_cal_nenga .bn_nenga {
    max-width: 100%;
  }

  .shougatsu_top .region_banner {
    display: block;
  }

  .shougatsu_top .region_banner > a {
    margin: 0 0 10px;
  }

  .hatsumoude_top .yurai figure {
    float: none;
    margin: 20px 0;
  }

  .region.gyoji .one_sec figure {
    width: auto;
    text-align: center;
  }

  .region.gyoji .one_sec figure img {
    max-width: 100%;
    width: auto;
  }

  .zouni .sections {
    display: block;
  }

  .zouni .sections .one_sec {
    width: 100%;
    margin-bottom: 70px;
  }

  .world .title h3 {
    width: 80%;
  }

  .world .title figure {
    float: none;
    width: 100%;
    margin: 0 0 10px;
  }

  .dec .daikaibou .one_sec figure {
    float: none;
    width: auto;
    max-width: 100%;
    margin: 0;
  }

  .shougatsu.calendar .one_sec figure {
    margin-right: auto;
    margin-left: auto;
  }

  .shougatsu.calendar .small_sec_title {
    font-size: 1.2rem;
  }

  .shougatsu.nengajo_top .nengajoImg_wrap {
    display: block;
  }

  .shougatsu.nengajo_top .nengajoImg_wrap > li {
    width: 70%;
    margin-right: auto;
    margin-left: auto;
  }

  .shougatsu.nengajo_top .btn_jissun a:active {
    background-color: #ec6d81;
    border: 1px solid #ec6d81;
    color: #fff;
  }

  .tanabataCountDown_wrap .runwayLoad {
    bottom: 30px;
  }

  .tanabataCountDown {
    margin-bottom: -40px;
  }

  .tanabataCountDown_maintext {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
  }

  .tanabataCountDown_maintext_link {
    width: 15%;
    right: 30px;
  }

  .tanabataCountDown_maintext_bg {
    width: 100%;
    overflow: hidden;
  }

  .tanabataCountDown_maintext_bg img {
    width: 100%;
  }

  .tanabataCountDown_runway {
    height: 180px;
  }

  .tanabataCountDown_runway_hikoboshi {
    width: calc(50% - 100px + 11px);
  }

  .tanabataCountDown_runway_hikoboshi::before {
    bottom: 0;
    left: 0;
    width: 100px;
  }

  .tanabataCountDown_runway_hikoboshi_img {
    width: 80px;
  }

  .tanabataCountDown_runway_orihime {
    width: calc(50% - 100px + 11px);
  }

  .tanabataCountDown_runway_orihime::before {
    bottom: 0;
    width: 100px;
  }

  .tanabataCountDown_runway_orihime_img {
    width: 100px;
  }

  .tanabataCountDown_link {
    top: -10%;
    width: 90px;
    right: 10px;
  }

  .tanabataVer .CD_a {
    width: 100%;
    padding: 0 30px 0;
    font-size: 1.2rem;
  }

  .tanabataVer .CD_a #countdownNumber {
    font-size: 2.4rem;
    line-height: 2rem;
  }

  .tanabataVer .CD_b {
    width: 100%;
    font-size: 1.9rem;
    padding: 0 30px 0;
  }

  .tanabataVer .CD_b .tanabataCountDown_tdtb {
    font-size: 2.2rem;
  }

  .pankuzu.is_tanabata {
    margin-bottom: 10px;
  }

  .tanabataTopWrap {
    overflow: hidden;
  }

  .tanabataTopWrap::before {
    background-size: 65%;
  }

  .tanabataTopWrap::after {
    display: none;
  }

  .tanabataTopWrap .tanabataMainVisual {
    flex-flow: column nowrap;
    align-items: stretch;
  }

  .tanabataTopWrap .tanabataMainVisual_kokeshi {
    order: 1;
    margin: 50px auto 0;
  }

  .tanabataTopWrap .tanabataMainVisual_read {
    order: 0;
    width: 90%;
    margin: 0 auto 20px;
  }

  .tanabataTopWrap .tanabataMainVisual_stamp {
    order: 1;
    margin: 20px auto 0;
  }

  .tanabataTopWrap .contentsBnWrap {
    width: 92%;
    margin-bottom: 0;
  }

  .tanabataTopWrap .contentsBn_ul li {
    width: 48%;
    margin-bottom: 10px;
  }

  .tanabataTopWrap .contentsBn.is_firstrow .contentsBn_ul {
    display: block;
  }

  .tanabataTopWrap .contentsBn.is_firstrow .contentsBn_ul li {
    width: 100%;
  }

  .tanabataTopWrap .tanabata_bn_area {
    width: 92%;
    margin: 0 auto;
  }

  .tanabataTopWrap .tanabata_bn_area .bn_column {
    display: block;
    margin: 0;
  }

  .tanabataTopWrap .tanabata_bn_area .bn_column > a {
    width: 100%;
    margin: 0 0 10px;
  }

  .tanabataTopWrap .tanabata_bn_area .bn_column > a + a {
    margin: 0 0 10px;
  }

  .tanabataTopWrap + footer {
    margin-top: 0;
  }

  .tanabata:not(.gyouji) .tanabata_title_02 {
    background-size: cover;
    height: 60px;
    font-size: 1.3rem;
    margin-top: -3px;
    padding-top: 0;
  }

  .tanabata:not(.gyouji) .bn_area .bn_column {
    display: block;
    margin: 0;
  }

  .tanabata:not(.gyouji) .bn_area .bn_column > div,
  .tanabata:not(.gyouji) .bn_area .bn_column > a {
    width: 100%;
    margin: 0 0 10px;
  }

  .tanabata:not(.gyouji) .column_2 {
    display: block;
  }

  .tanabata:not(.gyouji) .img_right {
    float: none;
    width: 100%;
    margin: 0 0 30px;
  }

  .tanabata:not(.gyouji) .img_left {
    float: none;
    width: 100%;
    margin: 0 0 30px;
  }

  .tanabata:not(.gyouji) .one_sec figure {
    width: 100%;
  }

  .tanabata:not(.gyouji) .note_box.pattern3 figure {
    float: none;
    width: 100%;
    margin: 0 0 20px;
  }

  .tanabata:not(.gyouji).yurai .orihimehikoboshi figure {
    margin: 0 auto 10px;
  }

  .tanabata:not(.gyouji).kazari .hajimari {
    margin: 0 0 20px;
  }

  .tanabata:not(.gyouji).kazari .why_sasa {
    margin: 0 0 20px;
  }

  .tanabata:not(.gyouji).kazari .why_sasa h4 {
    background: url("../img/tanabata/kazari/img_sasa.png") no-repeat;
    background-size: 42px;
    height: 70px;
    padding: 16px 0 0 50px;
  }

  .tanabata:not(.gyouji).kazari .tsukurikata_img {
    max-width: 100%;
  }

  .tanabata:not(.gyouji).kazari .tsukurikata_procedure li {
    display: block;
  }

  .tanabata:not(.gyouji).kazari .tsukurikata_procedure li .num {
    margin: 2px 3px 0 0;
  }

  .tanabata:not(.gyouji).story .story_area {
    padding: 50px 30px;
  }

  .tanabata:not(.gyouji).story .story_area .one_sec {
    margin: 0 0 40px;
  }

  .tanabata:not(.gyouji).story .story_area .one_sec figure {
    width: 100%;
  }

  .tanabata:not(.gyouji).kouza_top .kouza_introduce {
    display: block;
  }

  .tanabata:not(.gyouji).kouza_top .one_sec {
    width: 100%;
  }

  .tanabata:not(.gyouji).kouza .star > div {
    width: 100%;
  }

  .tanabata:not(.gyouji).kouza .star > div > div {
    display: flex;
    flex-flow: column nowrap;
  }

  .tanabata:not(.gyouji).kouza .star figure {
    float: none;
    max-width: 100%;
    order: 2;
    width: 30%;
    margin: 0 auto 20px;
  }

  .tanabata:not(.gyouji).kouza .star h4 {
    order: 1;
    max-width: 100%;
    margin: 0 0 10px;
  }

  .tanabata:not(.gyouji).kouza .star p {
    order: 3;
  }

  .tanabata:not(.gyouji).kouza .star_bega {
    margin: 0 0 60px;
  }

  .tanabata:not(.gyouji).kouza .star_data {
    margin: 40px 0 0;
  }

  .tanabata:not(.gyouji).kouza .star_data table {
    width: 100%;
    margin: 0 0 20px;
  }

  .tanabata:not(.gyouji).kouza .star_data table caption {
    width: 100%;
  }

  .tanabata:not(.gyouji).kouza .kouza_03 .seiza {
    width: 100%;
  }

  .tanabata:not(.gyouji).kouza .kouza_03 .kaniza_img {
    width: 100%;
  }

  .tanabata:not(.gyouji).kouza .kouza_03 .usagi {
    padding-right: 70px;
  }

  .tanabata:not(.gyouji).kouza .kouza_03 .usagi::after {
    width: 60px;
    height: 156px;
    bottom: -79px;
  }

  .tanabata:not(.gyouji).dictionary .one_sec .description figure {
    float: none;
    margin: 0 0 30px;
    text-align: center;
  }

  .tanabata:not(.gyouji).dictionary .one_sec .description figure img {
    width: auto;
  }

  .tanabata:not(.gyouji).dictionary .one_sec .side_link h5 {
    margin: 0 20px 0 0;
  }

  .tanabata:not(.gyouji).dictionary .one_sec .side_link ul {
    margin: 0;
  }

  .tanabata:not(.gyouji).dictionary .one_sec .side_link ul li {
    float: none;
    margin: 0 0 10px;
  }

  .tanabata:not(.gyouji).p_recipe .recipe_list ul {
    display: block;
  }

  .tanabata:not(.gyouji).p_recipe .recipe_list ul li {
    width: 100%;
    margin: 0 0 30px;
  }

  .tanabata:not(.gyouji).p_recipe .recipe_list ul li h4 {
    margin: 0 0 5px;
  }

  .tanabata:not(.gyouji).p_recipe .summary .ingredient .ingredient_list {
    display: block;
  }

  .tanabata:not(.gyouji).p_recipe .summary .ingredient .ingredient_list ul {
    float: none;
    flex-grow: 1;
  }

  .tanabata:not(.gyouji).p_recipe .summary .howtomake_title {
    float: none;
    margin: 1px auto 20px;
  }

  .tanabata:not(.gyouji).p_recipe .summary .howtomake_tejun {
    padding-left: 0;
  }

  .tanabata:not(.gyouji).p_recipe .summary .howtomake_tejun ol li {
    margin: 0 0 10px;
  }

  .tanabata:not(.gyouji).p_recipe_top .summary .read {
    margin: 20px 0 0;
  }

  .tanabata:not(.gyouji).p_recipe_top .summary .read .image {
    margin-right: 20px;
  }

  .tanabata:not(.gyouji).p_recipe_top .summary .read p {
    padding: 0;
  }

  .tanabata:not(.gyouji).tana_ja .one_sec figure {
    width: 100%;
    margin: 0 0 30px;
    float: none;
  }

  .tanabata:not(.gyouji).tana_ja .tanabata_gyouji {
    display: flex;
    flex-flow: column nowrap;
    margin: 0 0 40px;
  }

  .tanabata:not(.gyouji).tana_ja .tanabata_gyouji figure {
    order: 2;
  }

  .tanabata:not(.gyouji).tana_ja .tanabata_gyouji .text {
    order: 1;
    margin: 0 0 10px;
  }

  .tanabata:not(.gyouji).timetravel_top .title figure {
    width: 70%;
    margin: 0 auto 20px;
  }

  .tanabata:not(.gyouji).timetravel_top .links {
    padding: 10px 0 18%;
  }

  .tanabata:not(.gyouji).timetravel_top .links ul {
    justify-content: space-around;
    padding: 10px;
  }

  .tanabata:not(.gyouji).timetravel_top .links li {
    max-width: auto;
    width: 30%;
  }

  .tanabata:not(.gyouji).stamp .smartphone {
    display: none;
  }

  .tanabata:not(.gyouji).stamp .smartphone figure {
    text-align: center;
    margin: 10px 0 5px;
  }

  .tanabata:not(.gyouji).stamp .smartphone figure img {
    width: 55px;
  }

  .tanabata:not(.gyouji).stamp .smartphone .note_box_contents {
    display: flex;
    flex-flow: column nowrap;
  }

  .tanabata:not(.gyouji).stamp .smartphone .qr {
    float: none;
    width: 100%;
    margin: 0 0 10px;
    order: 2;
  }

  .tanabata:not(.gyouji).stamp .smartphone p {
    order: 1;
    margin: 0 0 10px;
  }

  .tanabata:not(.gyouji).stamp .stamp_dl li {
    width: calc(50% - 10px);
  }

  .tanabata:not(.gyouji).drama_top .note_box .introduce_text {
    color: #ec6d81;
  }

  .tanabata:not(.gyouji) .drama_area {
    display: block;
    max-width: 100%;
  }

  .tanabata:not(.gyouji) .drama_area .drama_one_sec {
    width: 100%;
    max-width: 391px;
    margin: 90px auto 0;
  }

  .tanabata:not(.gyouji).world .world_map {
    width: 100%;
  }

  .tanabata:not(.gyouji).world .links {
    top: 0;
    bottom: auto;
  }

  .tanabata:not(.gyouji).world .links li {
    max-width: 122px;
    width: 30%;
  }

  .tanabata:not(.gyouji).world .links li:active {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }

  .tanabata:not(.gyouji).world .links li:active a img {
    opacity: 1;
  }

  .tanabata:not(.gyouji).world .links.world_links {
    padding-right: 0;
    position: static;
    justify-content: flex-end;
  }

  .tanabata:not(.gyouji).world .links.world_links > li {
    margin: 0 5px;
  }

  .tanabata:not(.gyouji).world .read {
    clear: both;
    padding-top: 0;
    margin: 30px 0;
  }

  .tanabata:not(.gyouji).world.gre .legend_story .one_sec.gr_02 figure {
    width: 60%;
    margin: 10px auto;
  }

  .tanabata:not(.gyouji).world.gre .legend_story .one_sec.gre_03 figure {
    margin: 10px auto;
    width: 70%;
  }

  .tanabata:not(.gyouji).world.fin .legend_story .one_sec.fin_02 figure {
    width: 100%;
  }

  .tanabata:not(.gyouji).world.chi .legend_story .one_sec.chi_01 figure {
    width: 80%;
  }

  .tanabata:not(.gyouji).world.chi .legend_story .one_sec.chi_02 figure {
    width: 90%;
  }

  .tanabata:not(.gyouji).kokeshi_okurou .mainVisualSub {
    padding: 0 10px;
  }

  .tanabata:not(.gyouji).kokeshi_okurou .howtoKokeshi {
    display: block;
    margin: 30px 0 0;
  }

  .tanabata:not(.gyouji).kokeshi_okurou .howtoKokeshi_one {
    width: 90%;
    margin: 0 auto;
  }

  .tanabata:not(.gyouji).kokeshi_okurou .howtoKokeshi_one + .howtoKokeshi_one {
    margin-top: 30px;
  }

  .tanabata:not(.gyouji).kokeshi_okurou .howtoKokeshi_one_title_number {
    min-width: 19px;
    height: 19px;
  }

  .tanabata:not(.gyouji).kokeshi_okurou .howtoKokeshi_one_arrow {
    top: auto;
    bottom: -33px;
    right: auto;
    left: 50%;
    -webkit-transform: translate(-50%, 0) rotate(90deg);
    transform: translate(-50%, 0) rotate(90deg);
  }

  .tanabata:not(.gyouji).kokeshi_okurou .howtoKokeshi_one_arrow.is_yusou {
    width: 150px;
    height: 60px;
    bottom: -70px;
    background: url(../img/tanabata/kokeshi_okurou/icon_ar_yusou_sp.png) center center/contain no-repeat;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
  }

  .tanabata:not(.gyouji).kokeshi_okurou .howtoKokeshi_one.is_tanabatasai {
    margin-top: 75px;
    padding-bottom: 100%;
  }

  .tanabata:not(.gyouji).kokeshi_okurou .moushikomi {
    display: block;
  }

  .tanabata:not(.gyouji).kokeshi_okurou .moushikomi_content + .moushikomi_content {
    border-top: 1px solid #000;
    padding-top: 40px;
  }

  .tanabata:not(.gyouji).kokeshi_okurou .moushikomi_content:not(:last-child) {
    padding-bottom: 30px;
  }

  .tanabata:not(.gyouji).kokeshi_okurou .moushikomi_content_imgs {
    justify-content: center;
  }

  .tanabata:not(.gyouji).kokeshi_okurou .kokeshiYusou {
    width: 100%;
  }

  .tanabata:not(.gyouji).kokeshi_okurou .kokeshiYusou th,
  .tanabata:not(.gyouji).kokeshi_okurou .kokeshiYusou td {
    padding: 10px;
  }
}

@media all and (max-width:640px) {
  footer .pagetop {
    position: fixed;
    bottom: 20px;
    right: 10px;
    margin: 0;
    padding: 0;
    border-bottom: none;
  }

  footer .pagetop a {
    width: 60px;
    height: 60px;
    float: none;
  }

  footer .footer_contents {
    padding: 20px 0 0;
  }

  footer .footer_contents .footer_logo {
    width: 40%;
    float: none;
    display: block;
    margin: 0 auto;
  }

  footer .footer_contents address {
    font-size: inherit;
    float: none;
    font-weight: normal;
    text-align: center;
    margin: 0 0 30px;
  }

  footer .footer_contents .footerlink {
    float: none;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
  }

  footer .footer_contents .footerlink li {
    float: none;
    min-width: 33%;
    text-align: center;
    margin-bottom: 10px;
  }

  footer .footer_contents .footerlink li a {
    padding: 5px;
  }

  footer .footer_contents .footerlink li:nth-child(3n) a {
    border-right: none;
  }

  footer small {
    margin: 10px 0;
  }
}

@media all and (min-width: 641px) and (max-width: 1187px) {
  html {
    height: 100%;
  }

  body {
    height: 100%;
  }

  #contents {
    min-width: 100%;
    padding: 0;
  }

  .sp_only {
    display: none !important;
  }

  h2.main_visual p {
    width: 100%;
    padding-right: 10px;
  }

  .inner_contents .title {
    width: 100%;
    padding: 0 10px;
  }

  .inner_contents .wid_wrap {
    width: 100%;
    padding: 0 10px;
  }

  .pankuzu {
    margin-right: 10px;
  }

  .tokubetsukigan a figure {
    background-size: cover;
    padding-bottom: 0;
    min-height: 340px;
  }

  .tokubetsukigan a .textbox {
    padding: 0 10px;
  }

  .tokubetsukigan a .textbox h2 {
    font-size: 2rem;
  }

  .wrap_flex {
    width: 100%;
  }

  .festival_list {
    max-width: 330px;
    width: 47%;
    margin: 0 0 20px 0;
  }

  .ishihue {
    max-width: 333px;
    width: 47%;
    margin: 0;
  }

  header.pc .header {
    margin-right: 20px;
  }

  header.pc .smp_menu {
    display: block;
  }

  #btn_uranai {
    -webkit-transform: rotate(0) scale(0.7);
    transform: rotate(0) scale(0.7);
    top: 0;
    left: -200px;
  }

  #btn_uranai.uranai_move {
    -webkit-transform: rotate(-360deg) scale(1);
    transform: rotate(-360deg) scale(1);
    left: 40px;
  }

  .gyouji.inner_contents .omamori_link {
    margin-left: 0;
  }

  .tanabata_kokeshi .yuusou .detail table th,
  .tanabata_kokeshi .yuusou .detail table td {
    padding: 10px 5px;
  }

  .tanabata_kokeshi .yuusou .readme {
    width: 43%;
  }

  .omamori_top .wid_wrap {
    width: 100%;
    padding: 0 10px;
  }

  .omamori_top .omamori_contents > section .note_box {
    padding: 15px;
  }

  .omamori_top .omamori_contents > section .note_box .yubin_column h3 {
    float: none;
  }

  .shaden .map_keidai .map_img {
    min-width: auto;
    max-width: 560px;
    width: 100%;
  }

  .kamisama:not(.kamisama_top) .wid_wrap {
    width: 100%;
    padding: 0 10px;
  }

  .history_top > section .menu_area .menu_area_inner {
    padding: 0 10px;
  }

  .history_top > section .en {
    padding: 0 10px;
  }

  .yurai:not(.tanabata) .image_area figure img {
    margin: 0 5px;
  }

  .guji .individual_info .this_month,
  .guji.__top .individual_info .this_month {
    padding: 0 10px;
  }

  .scene_contents > section .image {
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .shirousagi .read .image {
    margin-top: -12%;
    min-width: 175px;
  }

  .blog.inner_contents {
    padding: 0 10px;
  }

  .shougatsuCountDown_link {
    right: 50px;
  }

  .shougatsu_top .shougatsu_contents {
    padding: 0 10px;
  }

  .shougatsu.nengajo_top .btn_jissun a:hover {
    background-color: #ec6d81;
    border: 1px solid #ec6d81;
    color: #fff;
  }

  .tanabataCountDown_link {
    right: 50px;
  }

  .tanabata:not(.gyouji).kokeshi_okurou .kokeshiYusou th,
  .tanabata:not(.gyouji).kokeshi_okurou .kokeshiYusou td {
    padding: 10px 5px;
  }
}

@media all and (max-width: 640px) and (min-width: 1px) {
  .mailmagazine input[type=radio],
  .mailmagazine input[type=checkbox] {
    display: none;
    margin: 0;
  }

  .mailmagazine input[type=radio] + label,
  .mailmagazine input[type=checkbox] + label {
    padding: 0 0 0 24px;
  }

  .mailmagazine input[type=radio] + label::before,
  .mailmagazine input[type=checkbox] + label::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    box-sizing: border-box;
    display: block;
    width: 18px;
    height: 18px;
    margin-top: -9px;
    background: #FFF;
  }
}

@media all and (min-width:641px) and (max-width:1187px) {
  footer .footer_contents .footer_logo {
    float: none;
  }

  footer .footer_contents address {
    float: none;
    margin: 0;
  }

  footer .footer_contents .footerlink {
    margin-top: 30px;
  }
}

@media all and (-ms-high-contrast: none) {
  .tanabataCountDown_maintext_bg {
    opacity: 0.2;
  }
}
/*# sourceMappingURL=../../../resource/maps/style.css.map */
