@charset "UTF-8";
/*
* Theme Name: 常陸國總社宮
*/
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

a {
  background-color: transparent;
}

a:active,
a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/* ---- common ---- */
html {
  font-size: 62.5%;
}

html.no_contents {
  height: 100%;
}

body {
  color: #231815;
  background: #fffaec;
  margin: 0;
  padding: 0;
  font-family: '游明朝体', '游明朝', YuMincho, 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
  font-size: 15px;
  line-height: 2;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: justify;
  text-justify: inter-ideograph;
  font-weight: 400;
  word-break: normal;
  overflow-x: hidden;
  height: 100%;
}

.gothic {
  font-family: YuGothic, 'Yu Gothic', '游ゴシック体', '游ゴシック', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'MS ゴシック', 'MS Gothic', sans-serif;
  font-weight: 400;
}

body:not(.othr) a,
body:not(.othr) button,
body:not(.othr) .arw {
  opacity: 1.0;
  -webkit-transition: opacity .3s ease-out;
  -ms-transition: opacity .3s ease-out;
  transition: opacity .3s ease-out;
}

body:not(.othr) a:hover,
body:not(.othr) button:hover,
body:not(.othr) .arw:hover {
  opacity: .4;
}

body.android a,
body.android button,
body.android .arw {
  opacity: 1.0;
}

body.android a:hover,
body.android button:hover,
body.android .arw:hover {
  opacity: 1 !important;
}

a {
  color: #231815;
  text-decoration: none;
  outline: none;
}

a.underline {
  text-decoration: underline;
}

a.underline:hover {
  text-decoration: none;
}

a img {
  line-height: 0;
}

img {
  width: 100%;
  height: auto;
  vertical-align: top;
}

ul, p, figure {
  margin: 0;
}

ul {
  padding: 0;
  list-style: none;
}

.bold {
  font-weight: bold;
}

.nav:after,
#contents:after,
.clearfix:after {
  visibility: hidden;
  display: block;
  content: " ";
  clear: both;
  height: 0;
}

#loader_box {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  background: #fffaec;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
}

#loader {
  display: none;
  position: fixed;
  width: 280px;
  height: 87px;
  top: 50%;
  left: 50%;
  margin: -43px 0 0 -140px;
  text-align: center;
  z-index: 10000;
}

#loader_img {
  position: relative;
  width: 280px;
  height: 87px;
  text-align: center;
  opacity: .5;
  -webkit-animation: loading 6s infinite linear;
  -moz-animation: loading 6s infinite linear;
  -ms-animation: loading 6s infinite linear;
  animation: loading 6s infinite linear;
}

@-webkit-keyframes loading {
  0% {
    opacity: 0.5;
  }
  50% {
    opacity: 1.0;
  }
  100% {
    opacity: 0.5;
  }
}

@-moz-keyframes loading {
  0% {
    opacity: 0.5;
  }
  50% {
    opacity: 1.0;
  }
  100% {
    opacity: 0.5;
  }
}

@-ms-keyframes loading {
  0% {
    opacity: 0.5;
  }
  50% {
    opacity: 1.0;
  }
  100% {
    opacity: 0.5;
  }
}

@keyframes loading {
  0% {
    opacity: 0.5;
  }
  50% {
    opacity: 1.0;
  }
  100% {
    opacity: 0.5;
  }
}

#wrap {
  position: relative;
  height: auto !important;
  height: 100%;
  min-height: 100%;
}

#container {
  width: 100%;
  margin: 0 auto;
  padding-bottom: 600px;
  overflow: hidden;
}

#container.home {
  padding-bottom: 0;
}

#contents {
  width: 100%;
  margin: 100px auto -600px;
  box-sizing: border-box;
}

.information #contents {
  width: 100%;
  max-width: 830px;
  margin: 0 auto;
  padding: 130px 25px 0;
  position: relative;
}

#main {
  width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
}

.home #main {
  max-width: 100%;
}

.information #main {
  float: right;
  max-width: 500px;
}

#aside_area {
  float: left;
  width: 200px;
  margin-top: 245px;
}

.section {
  width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
}

@media screen and (max-width: 937px) {
  #container {
    padding-bottom: 480px;
  }
  #contents {
    margin-bottom: -480px;
  }
  .information #contents {
    padding-top: 105px;
  }
}

@media screen and (max-width: 775px) {
  .information #main {
    float: none;
  }
  #aside_area {
    float: none;
    width: 100%;
    max-width: 500px;
    margin: 60px auto 0;
  }
}

/* ---- header ---- */
#header {
  position: fixed;
  width: 100%;
  z-index: 1000;
  top: 0;
  left: 0;
}

.android #header {
  position: absolute;
  top: 0;
  left: 0;
}

.android #header:after {
  content: ".";
  color: transparent;
}

.header {
  background: #FFF;
  height: 80px;
}

.header_home {
  height: 130px;
  background: none;
  opacity: 0;
}

.header_logo {
  position: absolute;
  width: 216px;
  height: 34px;
  margin: 0 0 0 -110px;
  padding: 0;
  top: 20px;
  left: 50%;
  z-index: 1;
}

.header_logo a {
  display: block;
  line-height: 1;
}

.header_logo-home {
  top: 25px;
  left: 10px;
  margin-left: 0;
}

.header_nav-main {
  position: relative;
  width: 100%;
  max-width: 928px;
  height: 59px;
  margin: 0 auto;
  padding-top: 21px;
}

.header_nav-main li {
  position: relative;
  float: left;
  height: 39px;
  line-height: 1;
}

.header_nav-main li:before {
  position: absolute;
  content: '';
  height: 39px;
  top: 0;
  right: 0;
  border-right: 1px solid #595757;
}

.header_nav-main li.nav-active span:before,
.header_nav-main li span:hover:before {
  background: #3e3a39;
}

.header_nav-main li span {
  position: relative;
  display: block;
}

.header_nav-main li span:before {
  position: absolute;
  content: '';
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: #FFF;
  top: -8px;
  left: 50%;
  margin-left: -2px;
}

.header_nav-main li a {
  position: relative;
  display: block;
  margin-top: 2px;
  height: 34px;
  text-indent: -9999px;
}

.header_nav-main li a:before {
  position: absolute;
  display: block;
  content: '';
  background-image: url(img/bg.svg);
  background-repeat: no-repeat;
  background-size: 413px 299px;
  left: 0;
  top: 0;
}

.header_nav-main .nav1 {
  width: 88px;
  height: 32px;
  padding: 0 30px 0 2px;
}

.header_nav-main .nav1 a:before {
  width: 88px;
  height: 32px;
  background-position: -1px -119px;
}

.header_nav-main .nav2 {
  width: 43px;
  height: 34px;
  padding: 0 27px 0 26px;
}

.header_nav-main .nav2 a:before {
  width: 43px;
  height: 34px;
  background-position: -91px -119px;
}

.header_nav-main .nav3 {
  width: 59px;
  height: 34px;
  padding: 0 326px 0 27px;
}

.header_nav-main .nav3:before {
  display: none;
}

.header_nav-main .nav3 a:before {
  width: 59px;
  height: 34px;
  background-position: -138px -119px;
}

.header_nav-main .nav4 {
  width: 61px;
  height: 34px;
  padding: 0 21px 0 0;
}

.header_nav-main .nav4 a:before {
  width: 61px;
  height: 34px;
  background-position: -199px -119px;
}

.header_nav-main .nav5 {
  width: 88px;
  height: 34px;
  padding: 0 24px;
}

.header_nav-main .nav5 a:before {
  width: 88px;
  height: 34px;
  background-position: -262px -119px;
}

.header_nav-main .nav6 {
  width: 59px;
  padding: 0 0 0 19px;
}

.header_nav-main .nav6:before {
  display: none;
}

.header_nav-main .nav6 span:hover:before {
  display: none;
}

.header_nav-main .nav6 li {
  float: none;
  height: 12px;
  padding-right: 0;
  padding-left: 0;
}

.header_nav-main .nav6 li:before {
  display: none;
}

.header_nav-main .nav6 li a {
  margin-top: 0;
  height: 12px;
}

.header_nav-main .nav6 li a:before {
  height: 12px;
}

.header_nav-main .nav6 .sub_nav1 {
  width: 59px;
  height: 12px;
  padding-bottom: 6px;
  border-bottom: 1px solid #595757;
}

.header_nav-main .nav6 .sub_nav1 a:before {
  width: 47px;
  left: 50%;
  margin-left: -23px;
  background-position: -352px -119px;
}

.header_nav-main .nav6 .sub_nav1 span:before {
  top: 50%;
  left: -8px;
  margin-left: 0;
}

.header_nav-main .nav6 .sub_nav1.nav-active span:before,
.header_nav-main .nav6 .sub_nav1 span:hover:before {
  display: block;
  background: #3e3a39;
}

.header_nav-main .nav6 .sub_nav2 {
  padding-top: 5px;
  width: 59px;
  height: 12px;
}

.header_nav-main .nav6 .sub_nav2 a:before {
  width: 51px;
  left: 50%;
  margin-left: -25px;
  background-position: -352px -139px;
}

.header_nav-main .nav6 .sub_nav2 span:before {
  top: 50%;
  left: -8px;
  margin-left: 0;
}

.header_nav-main .nav6 .sub_nav2.nav-active span:before,
.header_nav-main .nav6 .sub_nav2 span:hover:before {
  display: block;
  background: #3e3a39;
}

.header_nav-home {
  position: relative;
  max-width: 1360px;
  height: 130px;
  margin: 0 auto;
  padding: 0 10px;
  box-sizing: border-box;
}

.header_nav-main-home {
  position: absolute;
  width: 376px;
  top: 25px;
  left: 50%;
  margin-left: -188px;
}

.header_nav-main-home li {
  position: relative;
  float: left;
}

.header_nav-main-home li:after {
  position: absolute;
  display: block;
  content: '';
  top: 0;
  right: 0;
  height: 105px;
  border-right: 1px solid #595757;
}

.header_nav-main-home li:first-child:before {
  position: absolute;
  display: block;
  content: '';
  top: 0;
  left: 0;
  height: 105px;
  border-right: 1px solid #595757;
}

.header_nav-main-home li a {
  position: relative;
  display: block;
  text-indent: -9999px;
  height: 106px;
}

.header_nav-main-home li a:before {
  position: absolute;
  display: block;
  content: '';
  height: 106px;
  background-image: url(img/bg.svg);
  background-repeat: no-repeat;
  background-size: 413px 299px;
  left: 0;
  top: 0;
}

.header_nav-main-home li.nav1 {
  width: 36px;
  padding: 0 21px;
}

.header_nav-main-home li.nav1 a:before {
  width: 36px;
  background-position: -218px -1px;
}

.header_nav-main-home li.nav2 {
  width: 17px;
  padding: 0 29px;
}

.header_nav-main-home li.nav2 a:before {
  width: 17px;
  background-position: -254px -1px;
}

.header_nav-main-home li.nav3 {
  width: 37px;
  padding: 0 19px;
}

.header_nav-main-home li.nav3 a:before {
  width: 37px;
  background-position: -271px -1px;
}

.header_nav-main-home li.nav4 {
  width: 37px;
  padding: 0 19px;
}

.header_nav-main-home li.nav4 a:before {
  width: 37px;
  background-position: -309px -1px;
}

.header_nav-main-home li.nav5 {
  width: 37px;
  padding: 0 18px;
}

.header_nav-main-home li.nav5 a:before {
  width: 37px;
  background-position: -346px -1px;
}

.header_nav-sub-home {
  position: absolute;
  width: 61px;
  height: 61px;
  top: 25px;
  right: 10px;
}

.header_nav-sub-home li {
  position: relative;
  float: left;
  width: 14px;
  padding-left: 16px;
}

.header_nav-sub-home li:first-child {
  padding-left: 0;
  padding-right: 16px;
}

.header_nav-sub-home li:first-child:after {
  position: absolute;
  display: block;
  content: '';
  top: 0;
  right: 0;
  height: 61px;
  border-right: 1px solid #595757;
}

.header_nav-sub-home li a {
  position: relative;
  display: block;
  width: 14px;
  height: 61px;
  text-indent: -9999px;
}

.header_nav-sub-home li a:before {
  position: absolute;
  display: block;
  content: '';
  width: 14px;
  height: 61px;
  background-image: url(img/bg.svg);
  background-repeat: no-repeat;
  background-size: 413px 299px;
  left: 0;
  top: 0;
}

.header_nav-sub-home li.sub_nav1 a:before {
  background-position: -383px -1px;
}

.header_nav-sub-home li.sub_nav2 a:before {
  background-position: -398px -1px;
}

.sp_btn {
  display: none;
  position: absolute;
  width: 35px;
  height: 25px;
  top: 15px;
  right: 25px;
  cursor: pointer;
  z-index: 1001;
  background-image: url(img/bg.svg);
  background-repeat: no-repeat;
  background-size: 413px 299px;
  background-position: -128px -2px;
}

.sp_btn.sp_btn-active {
  background-position: -166px 0px;
}

#sp_menu_area {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  background: #FFF url(img/bg_sp.png) 50% 100% no-repeat;
  background-size: auto 73px;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 998;
}

#sp_menu_area:before, #sp_menu_area:before {
  content: ".";
  color: transparent;
}

#sp_menu_inner {
  position: absolute;
  width: 100%;
  height: 100%;
}

.sp_nav {
  width: 100%;
  padding: 40px 25px 0;
  box-sizing: border-box;
}

.sp_nav li {
  position: relative;
  line-height: 1;
  border-bottom: 1px solid #595757;
}

.sp_nav li:after {
  position: absolute;
  display: block;
  content: '';
  width: 7px;
  height: 7px;
  top: 50%;
  right: 15px;
  margin-top: -3px;
  border-top: 1px solid #595757;
  border-right: 1px solid #595757;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  z-index: -1;
}

.sp_nav li:first-child {
  border-top: 1px solid #595757;
}

.sp_nav a {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 39px;
  text-indent: -9999px;
}

.sp_nav a:before {
  position: absolute;
  display: block;
  content: '';
  height: 15px;
  left: 10px;
  top: 50%;
  margin-top: -7px;
  background-image: url(img/bg_sp_nav.svg);
  background-repeat: no-repeat;
  background-size: 182px 162px;
}

.sp_nav1 a:before {
  width: 119px;
  background-position: -1px -1px;
}

.sp_nav2 a:before {
  width: 148px;
  background-position: -1px -17px;
}

.sp_nav3 a:before {
  width: 89px;
  background-position: -1px -33px;
}

.sp_nav4 a:before {
  width: 120px;
  background-position: -1px -49px;
}

.sp_nav5 a:before {
  width: 120px;
  background-position: -1px -66px;
}

.sp_nav6 a:before {
  width: 164px;
  background-position: -1px -98px;
}

.sp_nav7 a:before {
  width: 58px;
  background-position: -1px -115px;
}

.sp_nav8 a:before {
  width: 59px;
  background-position: -1px -129px;
}

.sp_nav9 a:before {
  width: 178px;
  background-position: -1px -146px;
}

.sp_nav13 a:before {
  width: 178px;
  background-position: -1px -82px;
}

.sp_nav_sns {
  width: 105px;
  margin: 0 auto;
  padding: 20px 0 105px;
  overflow: hidden;
}

.sp_nav_sns li {
  float: left;
  width: 25px;
  height: 25px;
  margin: 0 5px;
  border: none;
}

.sp_nav_sns li:after {
  display: none;
}

.sp_nav_sns li:first-child {
  border: none;
}

.sp_nav_sns li a {
  width: 25px;
  height: 25px;
  border: none;
}

.sp_nav_sns li a:before {
  width: 25px;
  height: 25px;
  top: 0;
  left: 0;
  margin-top: 0;
  background-image: url(img/bg.svg);
  background-repeat: no-repeat;
  background-size: 413px 299px;
}

.sp_nav10 a:before {
  background-position: -45px -1px;
}

.sp_nav11 a:before {
  background-position: -72px -1px;
}

.sp_nav12 a:before {
  background-position: -99px -1px;
}

.android .header_nav-main li a:before {
  background-image: url(img/bg.png);
  background-repeat: no-repeat;
  background-size: 413px 299px;
}

.android .header_nav-main .nav1 a:before {
  background-position: -1px -119px;
}

.android .header_nav-main .nav2 a:before {
  background-position: -91px -119px;
}

.android .header_nav-main .nav3:before {
  display: none;
}

.android .header_nav-main .nav3 a:before {
  background-position: -138px -119px;
}

.android .header_nav-main .nav4 a:before {
  background-position: -199px -119px;
}

.android .header_nav-main .nav5 a:before {
  background-position: -262px -119px;
}

.android .header_nav-main .nav6:before {
  display: none;
}

.android .header_nav-main .nav6 span:hover:before {
  display: none;
}

.android .header_nav-main .nav6 li:before {
  display: none;
}

.android .header_nav-main .nav6 li a:before {
  height: 12px;
}

.android .header_nav-main-home li a:before {
  background-image: url(img/bg.png);
  background-repeat: no-repeat;
  background-size: 413px 299px;
}

.android .header_nav-main-home li.nav1 a:before {
  background-position: -218px -1px;
}

.android .header_nav-main-home li.nav2 a:before {
  background-position: -254px -1px;
}

.android .header_nav-main-home li.nav3 a:before {
  background-position: -271px -1px;
}

.android .header_nav-main-home li.nav4 a:before {
  background-position: -309px -1px;
}

.android .header_nav-main-home li.nav5 a:before {
  background-position: -346px -1px;
}

.android .header_nav-sub-home li a:before {
  background-image: url(img/bg.png);
  background-repeat: no-repeat;
  background-size: 413px 299px;
}

.android .header_nav-sub-home li.sub_nav1 a:before {
  background-position: -383px -1px;
}

.android .header_nav-sub-home li.sub_nav2 a:before {
  background-position: -398px -1px;
}

.android .sp_btn {
  background-image: url(img/bg.png);
  background-repeat: no-repeat;
  background-size: 413px 299px;
  background-position: -128px -2px;
}

.android .sp_btn.sp_btn-active {
  background-position: -166px 0px;
}

.android .sp_nav a:before {
  background-image: url(img/bg_sp_nav.png);
  background-repeat: no-repeat;
  background-size: 182px 162px;
}

.android .sp_nav1 a:before {
  width: 119px;
  background-position: -1px -1px;
}

.android .sp_nav2 a:before {
  width: 148px;
  background-position: -1px -17px;
}

.android .sp_nav3 a:before {
  width: 89px;
  background-position: -1px -33px;
}

.android .sp_nav4 a:before {
  width: 120px;
  background-position: -1px -49px;
}

.android .sp_nav5 a:before {
  width: 120px;
  background-position: -1px -66px;
}

.android .sp_nav6 a:before {
  width: 164px;
  background-position: -1px -98px;
}

.android .sp_nav7 a:before {
  width: 58px;
  background-position: -1px -115px;
}

.android .sp_nav8 a:before {
  width: 59px;
  background-position: -1px -129px;
}

.android .sp_nav9 a:before {
  width: 178px;
  background-position: -1px -146px;
}

.android .sp_nav13 a:before {
  width: 178px;
  background-position: -1px -82px;
}

.android .sp_nav10 a:before {
  background-image: url(img/bg.png);
  background-repeat: no-repeat;
  background-size: 413px 299px;
  background-position: -45px -1px;
}

.android .sp_nav11 a:before {
  background-image: url(img/bg.png);
  background-repeat: no-repeat;
  background-size: 413px 299px;
  background-position: -72px -1px;
}

.android .sp_nav12 a:before {
  background-image: url(img/bg.png);
  background-repeat: no-repeat;
  background-size: 413px 299px;
  background-position: -99px -1px;
}

@media screen and (max-width: 937px) {
  .sp_btn {
    display: block;
  }
  .header {
    height: 55px;
  }
  .header_logo, .header_logo-home {
    width: 170px;
    height: 28px;
    top: 12px;
    left: 50%;
    margin-left: -85px;
  }
  .header_nav-main, .header_nav-main-home, .header_nav-sub-home {
    display: none;
  }
  .header_nav-home {
    height: 55px;
    background: #FFF;
  }
}

@media screen and (max-height: 650px) {
  #sp_menu_inner {
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
  }
}

/* ---- footer ---- */
#footer {
  clear: both;
  position: absolute;
  width: 100%;
  padding: 50px 0 139px;
  bottom: 0;
  border-top: 1px solid #595757;
  background: url(img/footer_bg.png) 50% 100% no-repeat;
  background-size: 100% auto;
}

.footer_outer {
  padding-top: 30px;
  border-top: 1px solid #595757;
}

.footer_outer .footer_inner {
  display: table;
}

.footer_inner {
  position: relative;
  width: 100%;
  max-width: 928px;
  margin: 0 auto;
  z-index: 11;
}

.footer_nav {
  width: 100%;
  padding-bottom: 35px;
  overflow: hidden;
}

.footer_nav .nav > li {
  float: left;
  width: 146px;
  margin-left: 49px;
}

.footer_nav .nav > li:first-child {
  margin-left: 0;
}

.footer_nav .nav > li > a {
  position: relative;
  display: inline-block;
  text-indent: -9999px;
  padding-left: 3px;
  height: 40px;
}

.footer_nav .nav > li > a:before {
  position: absolute;
  display: block;
  content: '';
  height: 40px;
  top: 0;
  left: 3px;
  background-image: url(img/bg.svg);
  background-repeat: no-repeat;
  background-size: 413px 299px;
}

.footer_nav .nav > li.nav1 > a:before {
  width: 109px;
  background-position: -189px -159px;
}

.footer_nav .nav > li.nav2 > a:before {
  width: 73px;
  background-position: -189px -201px;
}

.footer_nav .nav > li.nav3 > a:before {
  width: 74px;
  background-position: -189px -243px;
}

.footer_nav .nav > li.nav4 > a:before {
  width: 109px;
  background-position: -302px -159px;
}

.footer_nav .nav > li.nav5 > a:before {
  width: 65px;
  background-position: -302px -201px;
}

.footer_nav .nav ul {
  margin-top: 12px;
  padding: 12px 0 0 3px;
  border-top: 1px solid #595757;
}

.footer_nav .nav ul li {
  line-height: 1.3;
  margin-top: 7px;
}

.footer_nav .nav ul li:first-child {
  margin-top: 0;
}

.footer_nav .nav ul li a {
  font-size: 15px;
}

.footer_logo {
  display: table-cell;
  width: 260px;
  margin: 0;
  padding: 0;
  vertical-align: middle;
  border-right: 1px solid #595757;
}

.footer_logo a {
  display: inline-block;
  width: 216px;
  height: 36px;
}

.footer_copy {
  display: table-cell;
  padding-left: 39px;
  vertical-align: middle;
}

.footer_copy .address {
  font-size: 15px;
}

.footer_copy .address .sp_block {
  display: inline-block;
  margin-right: 16px;
}

.footer_copy .address .sp_block.tel {
  margin-right: 0;
  margin-left: 15px;
}

.footer_copy .copy small {
  font-size: 12px;
}

.pagetop_btn {
  clear: both;
  width: 100%;
  max-width: 980px;
  margin: 0 auto;
  padding: 0 25px 20px;
  text-align: right;
  font-size: 12px;
  box-sizing: border-box;
}

.pagetop_btn a {
  position: relative;
  display: inline-block;
  padding-right: 33px;
}

.pagetop_btn a:after {
  position: absolute;
  display: block;
  content: '';
  width: 14px;
  height: 14px;
  margin: -2px 0 0;
  top: 50%;
  right: 0;
  border-top: 1px solid #3e3a39;
  border-left: 1px solid #3e3a39;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  opacity: 1.0;
}

.pagetop_btn a:hover:after {
  opacity: .4;
}

@media screen and (max-width: 937px) {
  #footer {
    padding-right: 25px;
    padding-left: 25px;
    box-sizing: border-box;
  }
  .footer_outer {
    padding-top: 0;
    border-top: none;
  }
  .footer_outer .footer_inner {
    display: block;
  }
  .footer_nav {
    display: none;
  }
  .footer_logo {
    display: block;
    width: 100%;
    border-right: none;
    text-align: center;
  }
  .footer_copy {
    display: block;
    padding: 0;
    text-align: center;
    vertical-align: middle;
  }
  .footer_copy .address {
    padding: 30px 0;
  }
  .footer_copy .address .sp_block {
    display: block;
    margin-right: 0;
  }
  .footer_copy .address .sp_block.tel {
    margin: 0;
  }
  .footer_copy .copy .sp_block {
    display: block;
  }
}

@media screen and (max-width: 900px) {
  #footer {
    background-size: auto 105px;
  }
}

.column {
  width: 100%;
  max-width: 830px;
  padding-right: 25px;
  padding-left: 25px;
  margin-right: auto;
  margin-left: auto;
  overflow: hidden;
  box-sizing: border-box;
}

.column-3 {
  float: left;
  width: 100%;
  max-width: 240px;
}

.column-3:nth-child(3n+1) {
  clear: both;
}

.column-3:nth-child(3n-1) {
  margin-left: 30px;
  margin-right: 30px;
}

@media screen and (max-width: 829px) {
  .column-3:nth-child(3n-1) {
    margin-right: 0;
    margin-left: 0;
  }
  .column-3:nth-child(2n) {
    margin-left: 30px;
  }
  .column-3:nth-child(3n+1) {
    clear: none;
  }
  .column-3:nth-child(2n+1) {
    clear: both;
  }
}

@media screen and (max-width: 559px) {
  .column-3 {
    float: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

.figure_gallery {
  margin-top: 25px;
  margin-left: auto;
  margin-right: auto;
}

.figure_gallery_content {
  margin-bottom: 40px;
}

.figure_img {
  position: relative;
}

.figure_caption {
  position: relative;
}

.figure_ttl {
  position: relative;
  margin: 0;
  padding: 10px 0 20px;
  text-align: center;
  font-size: 15px;
}

.figure_ttl:after {
  position: absolute;
  display: block;
  content: '';
  line-height: 1;
  width: 70px;
  border-bottom: 1px solid #595757;
  left: 50%;
  bottom: 15px;
  margin-left: -35px;
}

.figure_ttl_bg {
  height: 25px;
  position: relative;
  margin: 0;
  padding: 15px 0 20px;
  text-align: center;
  font-size: 15px;
}

.figure_ttl_bg:after {
  position: absolute;
  display: block;
  content: '';
  line-height: 1;
  width: 70px;
  border-bottom: 1px solid #595757;
  left: 50%;
  bottom: 15px;
  margin-left: -35px;
}

.figure_ttl_bg:before {
  position: absolute;
  display: inline-block;
  content: '';
  width: 57px;
  height: 20px;
  margin-left: -28px;
  left: 50%;
  background-image: url(img/matsuri_no.svg);
  background-repeat: no-repeat;
  background-size: 179px 93px;
}

.figure_ttl_bg1:before {
  background-position: -1px -1px;
}

.figure_ttl_bg2:before {
  background-position: -60px -1px;
}

.figure_ttl_bg3:before {
  background-position: -120px -1px;
}

.figure_ttl_bg4:before {
  background-position: -1px -25px;
}

.figure_ttl_bg5:before {
  background-position: -60px -25px;
}

.figure_ttl_bg6:before {
  background-position: -120px -25px;
}

.figure_ttl_bg7:before {
  background-position: -1px -49px;
}

.figure_ttl_bg8:before {
  background-position: -60px -49px;
}

.figure_ttl_bg9:before {
  background-position: -60px -49px;
}

.figure_ttl_bg10:before {
  background-position: -120px -49px;
}

.figure_ttl_bg11:before {
  background-position: -1px -73px;
}

.figure_ttl_bg12:before {
  background-position: -60px -73px;
}

.figure_ttl_bg_othr:before {
  background-position: -120px -73px;
}

.figure_txt {
  font-size: 12px;
  line-height: 1.65;
}

.figure_txt p {
  margin-bottom: .5em;
}

@media screen and (max-width: 829px) {
  .figure_gallery {
    width: 100%;
    max-width: 560px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media screen and (max-width: 559px) {
  .figure_gallery {
    max-width: 310px;
  }
}

.list-number {
  padding-left: 0;
}

.list-number li {
  clear: both;
  list-style: none;
  counter-increment: chapter;
}

.list-number li:before {
  display: block;
  float: left;
  width: 2em;
  content: "" counter(chapter) ".　";
}

.list-contact li {
  margin-top: 1em;
}

.list_table {
  display: table;
  width: 100%;
  padding: 6px 40px;
  box-sizing: border-box;
  /*
    input[type=checkbox] {
        display: none;
    }
    input[type=checkbox] + label {
        position: relative;
        display: inline-block;
        line-height: 1.5px;
        cursor: pointer;
        padding-left: 20px;
    }
*/
}

.list_table li {
  display: table-cell;
  vertical-align: middle;
}

.list_table .label {
  width: 160px;
  padding-right: 10px;
  font-size: 13px;
  border-right: 1px solid #595757;
}

.list_table .label .must {
  display: inline-block;
  line-height: 1;
  padding: 2px 4px;
  color: #da3915;
  font-size: 11px;
  border: 1px solid #da3915;
  margin-left: 5px;
}

.list_table .input {
  padding: 5px 0 5px 25px;
}

.list_table .check_list {
  font-size: 13px;
}

.list_table .block_input {
  display: block;
}

.list_table .block_input:nth-child(2n) {
  margin-top: 10px;
}

.list_table .display,
.list_table .horizontal-item {
  display: inline-block;
  width: 50%;
  font-size: 13px;
  float: left;
  margin: 0 !important;
  padding: 3px 5px 3px 0;
  box-sizing: border-box;
}

.list_table .display:nth-child(2n),
.list_table .horizontal-item:nth-child(2n) {
  float: right;
  padding: 3px 0 3px 5px;
}

.list_table .display:nth-child(2n+1),
.list_table .horizontal-item:nth-child(2n+1) {
  clear: both;
}

.list_table .display label,
.list_table .horizontal-item label {
  padding-left: 5px;
  line-height: 1.5;
}

.list_table input[type="text"] {
  width: 100%;
  padding: 8px 20px;
  background: #efefef;
  border: none;
  border-radius: 0;
  box-sizing: border-box;
  font-size: 13px;
}

.list_table input[type="text"]#post {
  width: 118px;
}

.list_table textarea {
  width: 100%;
  padding: 8px 20px;
  min-height: 210px;
  background: #efefef;
  border: none;
  border-radius: 0;
  box-sizing: border-box;
  font-size: 13px;
  resize: vertical;
}

@media screen and (max-width: 760px) {
  .list_table {
    padding: 6px 25px 10px;
  }
  .list_table li {
    display: block;
  }
  .list_table .label {
    position: relative;
    width: 100%;
    padding: 0 0 10px;
    border-right: none;
    text-align: center;
  }
  .list_table .label:after {
    position: absolute;
    display: block;
    content: '';
    width: 60px;
    left: 50%;
    bottom: 5px;
    margin-left: -30px;
    border-bottom: 1px solid #595757;
  }
  .list_table .input {
    padding: 5px 0;
  }
  .list_table .display,
  .list_table .horizontal-item {
    display: inline-block;
    width: 50%;
    font-size: 13px;
    float: left;
    padding: 3px 5px 3px 0;
    box-sizing: border-box;
  }
  .list_table .display:nth-child(2n),
  .list_table .horizontal-item:nth-child(2n) {
    float: right;
    padding: 3px 0 3px 5px;
  }
  .list_table .display:nth-child(2n+1),
  .list_table .horizontal-item:nth-child(2n+1) {
    clear: both;
  }
  .list_table .display label,
  .list_table .horizontal-item label {
    padding-left: 5px;
    line-height: 1.5;
  }
  .list_table input[type="text"] {
    width: 100%;
    padding: 8px 20px;
    background: #efefef;
    border: none;
    box-sizing: border-box;
    font-size: 13px;
  }
  .list_table textarea {
    width: 100%;
    padding: 8px 20px;
    min-height: 210px;
    background: #efefef;
    border: none;
    box-sizing: border-box;
    font-size: 13px;
    resize: vertical;
  }
}

@media screen and (max-width: 567px) {
  .list_table .display,
  .list_table .horizontal-item {
    display: block;
    width: 100%;
    float: none;
    padding: 0 0 3px;
    box-sizing: border-box;
  }
  .list_table .display:nth-child(2n),
  .list_table .horizontal-item:nth-child(2n) {
    float: none;
    padding: 0 0 3px;
  }
  .list_table .display:nth-child(2n+1),
  .list_table .horizontal-item:nth-child(2n+1) {
    clear: both;
  }
}

.main_img {
  width: 100%;
  padding-top: 80px;
  background: #FFF;
}

.main_img-caption {
  position: absolute;
  display: block;
  width: 100%;
  font-size: 10px;
  left: 0;
  bottom: 3px;
  text-align: right;
  color: #FFF;
}

.main_img-about {
  position: relative;
  background-image: url(img/about_main.jpg);
}

.main_img-about img {
  padding-top: 120px;
}

.main_img-tezukaosamu {
  position: relative;
  background-image: url(img/tezukaosamu_main.jpg);
}

.main_img-tezukaosamu img {
  padding-top: 120px;
}

.main_img-matsuri {
  background-image: url(img/matsuri_main.jpg);
}

.main_img-matsuri img {
  padding-top: 120px;
}

.main_img-access {
  background-image: url(img/access_main.jpg);
}

.main_img-access img {
  padding-top: 120px;
}

.main_img-contact {
  background-image: url(img/contact_main.jpg);
}

.main_img-contact img {
  padding-top: 120px;
}

.main_img-information {
  position: absolute;
  width: 200px;
  margin: 0;
  top: 130px;
  left: 25px;
  text-align: center;
}

.main_img-information .large {
  display: inline-block;
  width: 200px;
  height: 200px;
}

.main_img-information .small {
  display: none;
  width: 74px;
  height: 17px;
  padding-bottom: 10px;
  border-bottom: 1px solid #595757;
}

.main_img-keidai {
  background-image: url(img/keidai_main.jpg);
}

.main_img-keidai img {
  padding-top: 120px;
}

.main_img-kekkon {
  background-image: url(img/kekkon_main.jpg);
}

.main_img-kekkon img {
  padding-top: 120px;
}

.main_img-gokitou {
  background-image: url(img/gokitou_main.jpg);
}

.main_img-gokitou img {
  padding-top: 120px;
}

.main_img h2 {
  width: 100%;
  height: 356px;
  margin: 0;
  padding: 0;
  background-repeat: no-repeat;
  background-position: 50%;
  background-size: cover;
  text-align: center;
}

.main_img h2 img {
  display: inline-block;
  width: 412px;
}

@media screen and (max-width: 937px) {
  .main_img {
    padding-top: 55px;
  }
  .main_img-about img {
    padding-top: 90px;
  }
  .main_img-access img {
    padding-top: 110px;
  }
  .main_img-tezukaosamu {
    position: relative;
    background-image: url(img/tezukaosamu_main.jpg);
  }
  .main_img-tezukaosamu img {
    padding-top: 90px;
  }
  .main_img-contact img {
    padding-top: 100px;
  }
  .main_img-matsuri img {
    padding-top: 90px;
  }
  .main_img-keidai img {
    padding-top: 90px;
  }
  .main_img-kekkon img {
    padding-top: 90px;
  }
  .main_img-gokitou img {
    padding-top: 90px;
  }
  .main_img-information {
    top: 105px;
  }
  .main_img h2 {
    width: 100%;
    height: 262px;
  }
  .main_img h2 img {
    width: 280px;
  }
}

@media screen and (max-width: 775px) {
  .main_img {
    padding-top: 55px;
  }
  .main_img-information {
    position: static;
    margin: 0 auto 20px;
  }
  .main_img-information .large {
    display: none;
  }
  .main_img-information .small {
    display: inline-block;
  }
}

.ttl {
  position: relative;
  line-height: 1.3;
  margin: 0 0 15px;
  padding: 0 0 10px 30px;
  font-size: 20px;
}

.ttl:before {
  position: absolute;
  display: block;
  content: '';
  width: 23px;
  height: 23px;
  top: 3px;
  left: 0;
  background-image: url(img/bg.svg);
  background-repeat: no-repeat;
  background-size: 413px 299px;
  background-position: -1px -44px;
}

.brd_ttl-type1 {
  position: relative;
  padding: 0 0 10px 30px;
  border-bottom: 1px solid #595757;
}

.brd_ttl-type1:before {
  position: absolute;
  display: block;
  content: '';
  width: 23px;
  height: 23px;
  top: 0;
  left: 0;
  background-image: url(img/bg.svg);
  background-repeat: no-repeat;
  background-size: 413px 299px;
  background-position: -1px -44px;
}

.brd_ttl-type2, .brd_ttl-type3 {
  position: relative;
  width: 247px;
  margin: 0 auto 35px;
  padding: 40px 0 10px;
  border-bottom: 1px solid #595757;
  text-align: center;
}

.brd_ttl-type2:before, .brd_ttl-type3:before {
  position: absolute;
  display: block;
  content: '';
  width: 25px;
  height: 25px;
  top: 0;
  left: 50%;
  margin-left: -12px;
  background-image: url(img/bg.svg);
  background-repeat: no-repeat;
  background-size: 413px 299px;
  background-position: -25px -44px;
}

.brd_ttl-type3:before {
  background-image: url(img/bg_othar.svg);
  background-repeat: no-repeat;
  background-size: 125px 48px;
  background-position: -1px -1px;
}

.sub_nav {
  position: relative;
  width: 100%;
  background: url(img/bg_sub_nav.png) 0 0 repeat;
  background-size: 40px;
  z-index: 3;
}

.sub_nav-red {
  background: #da3915;
}

.sub_nav ul {
  padding: 10px 15px 6px;
  letter-spacing: -.4em;
  text-align: center;
}

.sub_nav ul li {
  position: relative;
  display: inline-block;
  line-height: 1;
  letter-spacing: normal;
  padding: 0 25px;
  margin-bottom: 10px;
}

.sub_nav ul li:before {
  position: absolute;
  display: block;
  content: '';
  top: 0;
  bottom: 0;
  left: 0;
  border-right: 1px solid #FFF;
}

.sub_nav ul li:first-child:before {
  display: none;
}

.sub_nav ul li a {
  color: #FFF;
}

@media screen and (max-width: 767px) {
  .sub_nav ul li {
    padding: 0 10px;
  }
}

.tab_trigger {
  position: relative;
  width: 100%;
  z-index: 2;
  cursor: pointer;
}

.tab_trigger:after {
  position: absolute;
  display: block;
  content: '';
  width: 17px;
  height: 17px;
  margin: -15px 0 0;
  top: 50%;
  right: 35px;
  border-top: 1px solid #3e3a39;
  border-left: 1px solid #3e3a39;
  -webkit-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  transform: rotate(-135deg);
  z-index: 1;
}

.tab_trigger.is-tab-active:after {
  margin: -5px 0 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.is-content-active {
  display: block;
}

@media screen and (max-width: 639px) {
  .tab_trigger {
    position: relative;
    width: 100%;
    z-index: 2;
    cursor: pointer;
  }
  .tab_trigger:after {
    margin: 12px 0 0;
    top: 0;
    right: 25px;
  }
  .tab_trigger.is-tab-active:after {
    margin: 25px 0 0;
  }
}

.bg-white {
  width: 100%;
  max-width: 782px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  padding: 10px;
  background-image: url(img/bg_white1.png), url(img/bg_white2.png), url(img/bg_white3.png), url(img/bg_white4.png);
  background-position: 0 0, 100% 0, 100% 100%, 0 100%;
  background-repeat: no-repeat,no-repeat,no-repeat,no-repeat;
  background-size: 8px,8px,8px,8px;
  background-color: #FFF;
  box-sizing: border-box;
}

.bg-red {
  width: 100%;
  max-width: 782px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  padding: 10px;
  background-image: url(img/bg_red1.png), url(img/bg_red2.png), url(img/bg_red3.png), url(img/bg_red4.png), url(img/bg_red.png);
  background-position: 0 0, 100% 0, 100% 100%, 0 100%,0 0;
  background-repeat: no-repeat,no-repeat,no-repeat,no-repeat,repeat;
  background-size: 8px,8px,8px,8px,40px;
}

@media screen and (max-width: 760px) {
  .bg-white {
    padding: 10px 0;
    background: #FFF;
  }
  .bg-red {
    padding: 10px 0;
    background-image: url(img/bg_red.png);
    background-position: 0 0;
    background-repeat: repeat;
    background-size: 40px;
  }
}

.border {
  position: relative;
  margin-top: -3px;
  padding: 10px 0;
  box-sizing: border-box;
}

.border:first-child {
  margin-top: 0;
}

.border_inner {
  padding: 30px 0;
  display: table;
}

.border-black {
  background-image: url(img/brd_black1.png), url(img/brd_black2.png), url(img/brd_black3.png), url(img/brd_black4.png);
  background-position: 0 0, 100% 0, 0 100%, 0 100%;
  background-repeat: no-repeat,repeat-y,no-repeat,repeat-y;
  background-size: auto 3px, 3px auto,auto 3px, 3px auto;
}

.border-white {
  background-image: url(img/brd_white1.png), url(img/brd_white2.png), url(img/brd_white3.png), url(img/brd_white4.png);
  background-position: 0 0, 100% 0, 0 100%, 0 100%;
  background-repeat: no-repeat,repeat-y,no-repeat,repeat-y;
  background-size: auto 3px, 3px auto,auto 3px, 3px auto;
}

.border-red {
  background-image: url(img/brd_red1.png), url(img/brd_red2.png), url(img/brd_red3.png), url(img/brd_red4.png);
  background-position: 0 0, 100% 0, 0 100%, 0 100%;
  background-repeat: no-repeat,repeat-y,no-repeat,repeat-y;
  background-size: auto 3px, 3px auto,auto 3px, 3px auto;
}

.border_contents {
  max-width: 780px;
  margin: 0 auto;
  padding: 0 25px;
}

.border_list {
  display: table;
  width: 100%;
  margin: 0;
  border-bottom: 1px solid #595757;
}

.border_list:first-child {
  border-top: 1px solid #595757;
}

.border_list .block {
  display: block;
}

.border_list_ttl {
  position: relative;
  display: table-cell;
  width: 150px;
  padding: 15px 0;
  vertical-align: top;
  box-sizing: border-box;
}

.border_list_txt {
  position: relative;
  margin: 0;
  padding: 15px 0 15px 20px;
  box-sizing: border-box;
}

.border_list_txt:after {
  position: absolute;
  display: block;
  content: "";
  left: 0;
  top: 10px;
  bottom: 10px;
  border-right: 1px solid #595757;
}

.border_list_txt p:first-child {
  margin-top: 1em;
}

.border_list_txt a {
  text-decoration: underline;
}

.border_list_btn {
  display: block;
  margin: .5em 0 0;
}

.border_list_btn a {
  position: relative;
  display: block;
  width: 100%;
  height: 50px;
  background: #FFF;
  border: 1px solid #595757;
  font-size: 15px !important;
  text-align: center;
  line-height: 50px;
  text-decoration: none;
}

.border_list_btn a:after {
  position: absolute;
  display: inline-block;
  content: '';
  width: 9px;
  height: 9px;
  top: 50%;
  right: 23px;
  margin-top: -5px;
  border-top: 1px solid #595757;
  border-left: 1px solid #595757;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
}

@media screen and (max-width: 760px) {
  .border_inner {
    display: block;
    width: 100%;
    padding: 10px 0;
  }
  .border-black, .border-white, .border-red {
    background-position: 50% 0, 50% 100%;
    background-repeat: no-repeat,no-repeat;
    background-size: auto 3px, auto 3px;
  }
  .border-black {
    background-image: url(img/brd_black1.png), url(img/brd_black3.png);
  }
  .border-white {
    background-image: url(img/brd_white1.png), url(img/brd_white3.png);
  }
  .border-red {
    background-image: url(img/brd_red1.png), url(img/brd_red3.png);
  }
  .border_contents {
    padding: 0;
  }
  .border_list_ttl {
    position: relative;
    display: block;
    width: 100%;
    padding: 20px 20px 0;
    text-align: justify;
    text-justify: inter-ideograph;
    font-family: YuGothic, 'Yu Gothic', '游ゴシック体', '游ゴシック', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'MS ゴシック', 'MS Gothic', sans-serif;
    font-weight: bold;
  }
  .border_list_txt {
    padding: 0 20px 15px;
  }
  .border_list_txt:after {
    display: none;
  }
  .border_list_txt .block {
    display: inline;
  }
}

.contact_bg {
  position: relative;
  padding: 10px;
  margin: 20px auto 0;
}

.contact_bg_inner {
  display: table;
  width: 100%;
  max-width: 760px;
  padding: 23px 3px;
  background-image: url(img/brd_black1.png), url(img/brd_black2.png), url(img/brd_black3.png), url(img/brd_black4.png);
  background-position: 0 0, 100% 0, 0 100%, 0 100%;
  background-repeat: no-repeat,repeat-y,no-repeat,repeat-y;
  background-size: auto 3px, 3px auto,auto 3px, 3px auto;
  box-sizing: border-box;
}

.contact_bg_inner-red {
  background-image: url(img/brd_red1.png), url(img/brd_red2.png), url(img/brd_red3.png), url(img/brd_red4.png);
}

.contact_bg_left {
  display: table-cell;
  width: 353px;
  text-align: center;
  border-right: 1px solid #595757;
}

.contact_bg_left-red {
  border-right-color: #da3915;
}

.contact_bg_right {
  display: table-cell;
  width: 353px;
  text-align: center;
}

.contact_bg_ttl {
  position: relative;
  padding-bottom: 25px;
  line-height: 1;
}

.contact_bg_ttl:before {
  position: absolute;
  display: block;
  content: '';
  width: 140px;
  left: 50%;
  bottom: 15px;
  margin-left: -70px;
  border-bottom: 1px solid #595757;
}

.contact_bg_tel img {
  width: 264px;
  height: 24px;
}

.contact_bg_txt {
  font-size: 12px;
}

.contact_bg_btn a {
  display: inline-block;
  position: relative;
  width: 255px;
  height: 50px;
  line-height: 50px;
  border: 1px solid #595757;
  font-size: 15px !important;
}

.contact_bg_btn a:after {
  position: absolute;
  display: inline-block;
  content: '';
  width: 9px;
  height: 9px;
  top: 50%;
  right: 23px;
  margin-top: -5px;
  border-top: 1px solid #595757;
  border-left: 1px solid #595757;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
}

@media screen and (max-width: 760px) {
  .contact_bg {
    padding: 10px 0;
  }
  .contact_bg_inner {
    background-image: url(img/brd_black1.png), url(img/brd_black3.png);
    background-position: 50% 0, 50% 100%;
    background-repeat: no-repeat,no-repeat;
    background-size: auto 3px, auto 3px;
  }
  .contact_bg_inner-red {
    background-image: url(img/brd_red1.png), url(img/brd_red3.png);
  }
  .contact_bg_left {
    display: block;
    width: 100%;
    text-align: center;
    border-right: none;
    padding-bottom: 20px;
    margin-bottom: 20px;
  }
  .contact_bg_right {
    display: block;
    width: 100%;
    text-align: center;
  }
}

.arw {
  position: relative;
}

.arw:after {
  position: absolute;
  display: inline-block;
  content: '';
  width: 9px;
  height: 9px;
  top: 50%;
  right: 23px;
  margin-top: -4px;
  border-top: 1px solid #595757;
  border-left: 1px solid #595757;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
  z-index: 2;
  cursor: pointer;
}

.a-type1 {
  position: relative;
  display: inline-block;
  padding-left: 1em;
  text-decoration: underline;
}

.a-type1:before {
  position: absolute;
  display: inline-block;
  content: '＞';
  width: 1em;
  height: 1em;
  top: 0;
  left: 0;
  text-decoration: none;
}

.a-type1:hover {
  text-decoration: none;
}

.anchor_section {
  position: relative;
  margin-top: -100px;
  padding-top: 100px;
}

.popup {
  position: absolute;
  display: inline-block;
  width: 25px;
  height: 25px;
  background-image: url(img/bg.svg);
  background-repeat: no-repeat;
  background-size: 413px 299px;
  background-position: -52px -44px;
  right: 10px;
  bottom: 10px;
}

.block {
  display: block;
}

.fz13 {
  font-size: 13px;
}

.disc li {
  position: relative;
  padding-left: 1em;
}

.disc li:before {
  position: absolute;
  display: block;
  content: "・";
  width: 1em;
  height: 1em;
  font-size: 1em;
  left: 0;
}

@media screen and (max-width: 937px) {
  .anchor_section {
    margin-top: -75px;
    padding-top: 75px;
  }
}

.mfp-fade.mfp-bg {
  opacity: 0;
  -webkit-opacity: 0;
  -moz-opacity: 0;
  filter: alpha(opacity=0);
  -ms-filter: "alpha(opacity=0)";
  -webkit-transition: all 1s ease-out;
  transition: all 1s ease-out;
}

.mfp-fade.mfp-bg.mfp-ready {
  opacity: 0.9;
  -webkit-opacity: 0.9;
  -moz-opacity: 0.9;
  filter: alpha(opacity=90);
  -ms-filter: "alpha(opacity=90)";
}

.mfp-fade.mfp-wrap .mfp-content, .mfp-fade.mfp-wrap .mfp-arrow {
  opacity: 0;
  -webkit-opacity: 0;
  -moz-opacity: 0;
  filter: alpha(opacity=0);
  -ms-filter: "alpha(opacity=0)";
  -webkit-transition: all .5s ease-out;
  transition: all .5s ease-out;
}

.mfp-fade.mfp-wrap.mfp-ready .mfp-content, .mfp-fade.mfp-wrap.mfp-ready .mfp-arrow {
  opacity: 1;
  -webkit-opacity: 1;
  -moz-opacity: 1;
  filter: alpha(opacity=100);
  -ms-filter: "alpha(opacity=100)";
}

.mfp-fade.mfp-bg.mfp-removing {
  opacity: 0;
  -webkit-opacity: 0;
  -moz-opacity: 0;
  filter: alpha(opacity=0);
  -ms-filter: "alpha(opacity=0)";
}

.mfp-fade.mfp-wrap.mfp-removing .mfp-content, .mfp-fade.mfp-wrap.mfp-removing .mfp-arrow {
  opacity: 0;
  -webkit-opacity: 0;
  -moz-opacity: 0;
  filter: alpha(opacity=0);
  -ms-filter: "alpha(opacity=0)";
}

.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden !important;
  position: fixed;
  background: rgba(0, 0, 0, 0.9);
}

.mfp-wrap {
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden;
  overflow-y: hidden !important;
}

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  padding: 0;
  box-sizing: border-box;
  margin: 0 auto;
}

.mfp-container:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.mfp-align-top .mfp-container:before {
  display: none;
}

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045;
}

.mfp-inline-holder .mfp-content, .mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto;
}

.mfp-close, .mfp-arrow, .mfp-preloader, .mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.mfp-loading.mfp-figure {
  display: none;
}

.mfp-hide {
  display: none !important;
}

.mfp-preloader {
  color: #CCC;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044;
}

.mfp-preloader a {
  color: #CCC;
}

.mfp-preloader a:hover {
  color: #FFF;
}

.mfp-s-ready .mfp-preloader {
  display: none !important;
}

.mfp-s-error .mfp-content {
  display: none;
}

button.mfp-close, button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  box-shadow: none;
}

button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

button.mfp-close {
  position: absolute;
  width: 58px;
  height: 15px;
  padding: 0;
  right: 0;
  top: -30px;
  text-align: right;
  background-image: url(img/bg.svg);
  background-repeat: no-repeat;
  background-size: 413px 299px;
  background-position: -81px -44px;
  background-color: transparent;
}

.mfp-content .mfp-close {
  display: block;
}

.mfp-counter {
  display: none;
}

.mfp-arrow {
  position: absolute;
  margin: 0;
  top: 0;
  margin-top: 0;
  padding: 0;
  width: 70px;
  height: 100%;
  -webkit-tap-highlight-color: transparent;
  background-color: transparent;
}

.mfp-arrow:before, .mfp-arrow:after, .mfp-arrow .mfp-b, .mfp-arrow .mfp-a {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  margin-top: 35px;
  margin-left: 35px;
}

.mfp-arrow:after, .mfp-arrow .mfp-a {
  top: 0;
}

.mfp-arrow:before {
  top: 50%;
  margin-top: -7px;
  width: 15px;
  height: 15px;
  border-top: 1px solid #FFF;
  border-right: 1px solid #FFF;
  background-color: transparent;
}

.mfp-arrow-left {
  left: -70px;
}

.mfp-arrow-left:before {
  margin-left: 3px;
  left: 0;
  -webkit-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  transform: rotate(-135deg);
}

.mfp-arrow-right {
  right: -70px;
}

.mfp-arrow-right:before {
  right: 0;
  margin-right: 3px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px;
}

.mfp-iframe-holder .mfp-content {
  line-height: 0;
  width: 100%;
  max-width: 850px;
}

.mfp-iframe-holder .mfp-close {
  top: -40px;
}

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%;
}

.mfp-iframe-scaler iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000;
}

img.mfp-img {
  width: 100%;
  max-width: 740px;
  height: auto;
  display: block;
  line-height: 0;
  box-sizing: border-box;
  margin: 0 auto;
  border: 10px solid #FFF;
}

.mfp-figure {
  line-height: 0;
}

.mfp-figure:after {
  content: '';
  position: absolute;
  left: 0;
  top: 40px;
  bottom: 40px;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
}

.mfp-figure small {
  color: #BDBDBD;
  display: block;
  font-size: 12px;
  line-height: 14px;
}

.mfp-figure figure {
  margin: 0;
}

.mfp-bottom-bar {
  margin-top: 0;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto;
  line-height: 1.5;
}

.mfp-title {
  text-align: left;
  color: #FFF;
  font-size: 13px;
  font-size: 1.3rem;
  letter-spacing: 0.2em;
}

.mfp-image-holder .mfp-content {
  max-width: 100%;
}

.mfp-gallery {
  cursor: pointer;
}

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0;
  }
  .mfp-img-mobile img.mfp-img {
    padding: 0;
  }
  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0;
  }
  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px;
  }
  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    box-sizing: border-box;
  }
  .mfp-img-mobile .mfp-bottom-bar:empty {
    padding: 0;
  }
  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px;
  }
  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    position: fixed;
    text-align: center;
    padding: 0;
  }
}

@media all and (max-width: 880px) {
  .mfp-figure {
    padding: 0 40px;
  }
  img.mfp-img {
    padding: 0;
    width: 100%;
    height: auto;
  }
  button.mfp-close {
    right: 40px;
  }
  .mfp-title {
    padding: 0 0 0 40px;
    box-sizing: border-box;
  }
  .mfp-arrow-left {
    left: 0;
    width: 40px;
  }
  .mfp-arrow-left:before {
    margin-left: 17px;
  }
  .mfp-arrow-right {
    right: 0;
    width: 40px;
  }
  .mfp-arrow-right:before {
    margin-right: 17px;
  }
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
}

.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.carousel {
  position: relative;
  overflow: hidden;
  margin-bottom: 60px;
  height: 500px;
}

.carousel:before {
  position: absolute;
  display: block;
  content: "";
  width: 100%;
  height: 0;
  padding-top: 14.44%;
  top: -1px;
  left: 0;
  background-image: url(img/matsuri_cloud.png);
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-size: 100% auto;
  z-index: 110;
}

.carousel.kekkon_carousel {
  margin-top: 75px;
  background: url(img/kekkon_carousel.jpg) repeat-x 0 0;
  background-size: 3870px 500px;
  -webkit-animation: bgscroll 80s linear infinite;
  animation: bgscroll 80s linear infinite;
}

.carousel.gokitou_carousel {
  margin-top: 75px;
  background: url(img/gokitou_carousel.jpg) repeat-x 0 0;
  background-size: 3180px 500px;
  -webkit-animation: bgscroll2 65.5s linear infinite;
  animation: bgscroll2 65.5s linear infinite;
}

@media screen and (max-width: 767px) {
  .carousel {
    margin-bottom: 60px;
  }
  .carousel:before {
    background-size: 135% auto;
  }
  .carousel.kekkon_carousel {
    height: 250px;
    margin-top: 65px;
    background: url(img/kekkon_carousel.jpg) repeat-x 0 0;
    background-size: 1935px 250px;
    -webkit-animation: bgscrollsmall 40s linear infinite;
    animation: bgscrollsmall 40s linear infinite;
  }
  .carousel.gokitou_carousel {
    height: 250px;
    margin-top: 65px;
    background: url(img/gokitou_carousel.jpg) repeat-x 0 0;
    background-size: 1590px 250px;
    -webkit-animation: bgscrollsmall2 32.87s linear infinite;
    animation: bgscrollsmall2 32.87s linear infinite;
  }
}

@-webkit-keyframes bgscroll {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -3870px 0;
  }
}

@keyframes bgscroll {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -3870px 0;
  }
}

@-webkit-keyframes bgscroll2 {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -3180px 0;
  }
}

@keyframes bgscroll2 {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -3180px 0;
  }
}

@-webkit-keyframes bgscrollsmall {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1935px 0;
  }
}

@keyframes bgscrollsmall {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1935px 0;
  }
}

@-webkit-keyframes bgscrollsmall2 {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1590px 0;
  }
}

@keyframes bgscrollsmall2 {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1590px 0;
  }
}

.view_android {
  display: none;
}

.android .not_android {
  display: none;
}

.android .view_android {
  display: inline;
}

/* HOME */
body.home {
  height: auto;
}

.home .section {
  padding: 0;
}

.section-home {
  width: 100%;
  line-height: 0;
}

.section_inner-home {
  position: relative;
  width: 100%;
  height: 100%;
  background-position: 0 0;
  background-repeat: repeat-x;
  background-size: auto 100%;
}

.section_inner-home1 {
  background-image: url(img/top_section1_bg.png);
}

.section_inner-home2 {
  background-image: url(img/top_section2_bg.png);
}

.section_inner-home3 {
  background-image: url(img/top_section3_bg.png);
}

.section_inner-home4 {
  background-image: url(img/top_section4_bg.png);
}

.section_inner-home5 {
  background-image: url(img/top_section5_bg.png);
}

.section_inner-home6 {
  background-image: url(img/top_section6_bg.png);
}

.section_inner-home7 {
  background-image: url(img/top_section7_bg.png);
}

.section_inner-home8 {
  background-image: url(img/top_section8_bg.png);
}

.section_inner-home:after {
  position: absolute;
  display: block;
  content: '';
  width: 100%;
  height: 100%;
  z-index: 5;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.section_header-home {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 7;
  opacity: 0;
}

.section_header-home.inview {
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-duration: 5s;
  -moz-animation-duration: 5s;
  -ms-animation-duration: 5s;
  animation-duration: 5s;
  -webkit-animation-name: txt;
  -moz-animation-name: txt;
  -ms-animation-name: txt;
  animation-name: txt;
  -webkit-animation-delay: 1.5s;
  -moz-animation-delay: 1.5s;
  -ms-animation-delay: 1.5s;
  animation-delay: 1.5s;
}

.section_header-home.outview {
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-duration: 1s;
  -moz-animation-duration: 1s;
  -ms-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-name: txt_out;
  -moz-animation-name: txt_out;
  -ms-animation-name: txt_out;
  animation-name: txt_out;
}

.section_header-home h2 {
  margin: 0;
}

.section_header-home1 {
  width: 219px;
  height: 210px;
  margin: -105px 0 0 -110px;
}

.section_header-home2 {
  width: 219px;
  height: 184px;
  top: 37%;
  left: 59%;
}

.section_header-home3 {
  width: 258px;
  height: 219px;
  top: 42.5%;
  left: 54.59%;
}

.section_header-home4 {
  width: 258px;
  height: 146px;
  top: 45.5%;
  left: 25.28%;
}

.section_header-home5 {
  width: 58px;
  height: 165px;
  top: 44.5%;
  left: 25.97%;
}

.section_header-home6 {
  width: 258px;
  height: 240px;
  top: 28%;
  left: 26.53%;
}

.section_header-home7 {
  width: 259px;
  height: 199px;
  margin: -100px 0 0 -130px;
}

@-webkit-keyframes txt {
  0% {
    opacity: .0;
    -webkit-transform: translateY(0);
  }
  30% {
    opacity: .3;
    -webkit-transform: translateY(-20px);
  }
  100% {
    opacity: 1.0;
    -webkit-transform: translateY(0);
  }
}

@-moz-keyframes txt {
  0% {
    opacity: .0;
    -moz-transform: translateY(0);
  }
  30% {
    opacity: .3;
    -moz-transform: translateY(-20px);
  }
  100% {
    opacity: 1.0;
    -moz-transform: translateY(0);
  }
}

@-ms-keyframes txt {
  0% {
    opacity: .0;
    -ms-transform: translateY(0);
  }
  30% {
    opacity: .3;
    -ms-transform: translateY(-20px);
  }
  100% {
    opacity: 1.0;
    -ms-transform: translateY(0);
  }
}

@keyframes txt {
  0% {
    opacity: .0;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  30% {
    opacity: .3;
    -webkit-transform: translateY(-20px);
    -moz-transform: translateY(-20px);
    -ms-transform: translateY(-20px);
    transform: translateY(-20px);
  }
  100% {
    opacity: 1.0;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

@-webkit-keyframes txt_out {
  0% {
    opacity: 1.0;
  }
  100% {
    opacity: .0;
  }
}

@-moz-keyframes txt_out {
  0% {
    opacity: 1.0;
  }
  100% {
    opacity: .0;
  }
}

@-ms-keyframes txt_out {
  0% {
    opacity: 1.0;
  }
  100% {
    opacity: .0;
  }
}

@keyframes txt_out {
  0% {
    opacity: 1.0;
  }
  100% {
    opacity: .0;
  }
}

#footer-home {
  width: 100%;
  bottom: 100px;
  z-index: 6;
  position: fixed;
}

.android #footer-home {
  position: absolute;
  width: 100%;
  bottom: 50px;
  z-index: 6;
}

.android #footer-home:after {
  content: ".";
  color: transparent;
}

#footer_inner-home {
  position: relative;
}

.anchor {
  position: relative;
  width: 41px;
  height: 41px;
  margin-left: -20px;
  left: 50%;
  top: 0;
  opacity: 0;
}

.anchor li {
  position: absolute;
  width: 41px;
  height: 41px;
  top: 0;
  left: 0;
  visibility: hidden;
}

.anchor li.active {
  visibility: visible;
}

.anchor a {
  position: relative;
  display: block;
  width: 41px;
  height: 41px;
  text-indent: -9999px;
}

.anchor a:before {
  position: absolute;
  display: block;
  content: '';
  width: 41px;
  height: 41px;
  background-image: url(img/bg.svg);
  background-repeat: no-repeat;
  background-position: -1px -1px;
  background-size: 413px 299px;
  left: 0;
  top: 0;
}

.to_main {
  position: absolute;
  display: inline-block;
  text-align: right;
  z-index: 6;
  right: 50px;
  bottom: -50px;
  font-size: 12px;
  font-family: YuGothic, 'Yu Gothic', '游ゴシック体', '游ゴシック', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'MS ゴシック', 'MS Gothic', sans-serif;
  text-decoration: underline;
  opacity: 0;
}

.to_main:hover {
  text-decoration: none;
}

.ill {
  position: absolute;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: 50%;
  background-size: auto 100%;
  z-index: 2;
  opacity: 0;
}

.ill.inview {
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-duration: 1.5s;
  -moz-animation-duration: 1.5s;
  -ms-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-name: ill;
  -moz-animation-name: ill;
  -ms-animation-name: ill;
  animation-name: ill;
}

.ill1 {
  background-image: url(img/top_section1_ill.png);
}

.ill2 {
  background-image: url(img/top_section2_ill.png);
}

.ill3 {
  background-image: url(img/top_section3_ill.png);
}

.ill4 {
  background-image: url(img/top_section4_ill.png);
}

.ill5 {
  background-image: url(img/top_section5_ill.png);
}

.ill6 {
  background-image: url(img/top_section6_ill.png);
}

.ill7 {
  background-image: url(img/top_section7_ill.png);
}

@-webkit-keyframes ill {
  0% {
    opacity: .0;
  }
  100% {
    opacity: 1.0;
  }
}

@-moz-keyframes ill {
  0% {
    opacity: .0;
  }
  100% {
    opacity: 1.0;
  }
}

@-ms-keyframes ill {
  0% {
    opacity: .0;
  }
  100% {
    opacity: 1.0;
  }
}

@keyframes ill {
  0% {
    opacity: .0;
  }
  100% {
    opacity: 1.0;
  }
}

.cloud {
  position: absolute;
  width: 100%;
  height: 0;
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: 100% auto;
  left: 0;
  top: 0;
  z-index: 3;
  opacity: .0;
}

.cloud.down {
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-duration: 5s;
  -moz-animation-duration: 5s;
  -ms-animation-duration: 5s;
  animation-duration: 5s;
  -webkit-animation-name: down;
  -moz-animation-name: down;
  -ms-animation-name: down;
  animation-name: down;
}

.cloud.downed {
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-duration: 2s;
  -moz-animation-duration: 2s;
  -ms-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-name: downed;
  -moz-animation-name: downed;
  -ms-animation-name: downed;
  animation-name: downed;
}

.cloud.up {
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-duration: 2s;
  -moz-animation-duration: 2s;
  -ms-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-name: up;
  -moz-animation-name: up;
  -ms-animation-name: up;
  animation-name: up;
}

.cloud.uped {
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-duration: 5s;
  -moz-animation-duration: 5s;
  -ms-animation-duration: 5s;
  animation-duration: 5s;
  -webkit-animation-name: uped;
  -moz-animation-name: uped;
  -ms-animation-name: uped;
  animation-name: uped;
}

.cloud1-1 {
  margin-top: -11.2%;
  padding-top: 57.917%;
  background-image: url(img/top_cloud1.png);
}

.cloud1-2 {
  top: auto;
  bottom: 0;
  margin-bottom: -36%;
  padding-top: 55.56%;
  background-image: url(img/top_cloud2.png);
}

.cloud2-1 {
  margin-top: -22.7%;
  padding-top: 55.556%;
  background-image: url(img/top_cloud2.png);
}

.cloud2-2 {
  top: auto;
  bottom: 0;
  margin-bottom: -26.2%;
  padding-top: 39.375%;
  background-image: url(img/top_cloud3.png);
}

.cloud3-1 {
  margin-top: -13.1%;
  padding-top: 39.5838%;
  background-image: url(img/top_cloud3.png);
}

.cloud3-2 {
  top: auto;
  bottom: 0;
  margin-bottom: -41.1%;
  padding-top: 53.75%;
  background-image: url(img/top_cloud4.png);
}

.cloud4-1 {
  margin-top: -12.55%;
  padding-top: 53.75%;
  background-image: url(img/top_cloud4.png);
}

.cloud4-2 {
  top: auto;
  bottom: 0;
  margin-bottom: -40.6%;
  padding-top: 60.972%;
  background-image: url(img/top_cloud5.png);
}

.cloud5-1 {
  margin-top: -20.3%;
  padding-top: 60.972%;
  background-image: url(img/top_cloud5.png);
}

.cloud5-2 {
  top: auto;
  bottom: 0;
  margin-bottom: -24.95%;
  padding-top: 43.125%;
  background-image: url(img/top_cloud6.png);
}

.cloud6-1 {
  margin-top: -18%;
  padding-top: 43.125%;
  background-image: url(img/top_cloud6.png);
}

.cloud6-2 {
  top: auto;
  bottom: 0;
  margin-bottom: -33.5%;
  padding-top: 53.472%;
  background-image: url(img/top_cloud7.png);
}

.cloud7-1 {
  margin-top: -20%;
  padding-top: 53.472%;
  background-image: url(img/top_cloud7.png);
}

.cloud7-2 {
  top: auto;
  bottom: 0;
  margin-bottom: -59.5%;
  padding-top: 78.89%;
  background-image: url(img/top_cloud8.png);
}

.cloud8 {
  display: none;
  top: 0;
  padding-top: 126.7%;
  background-image: url(img/top_cloud8.png);
}

@-webkit-keyframes down {
  0% {
    opacity: .0;
    -webkit-transform: translate3D(0, 13%, 0);
  }
  100% {
    opacity: 1.0;
    -webkit-transform: translate3D(0, 0, 0);
  }
}

@-moz-keyframes down {
  0% {
    opacity: .0;
    -moz-transform: translate3D(0, 13%, 0);
  }
  100% {
    opacity: 1.0;
    -moz-transform: translate3D(0, 0, 0);
  }
}

@-ms-keyframes down {
  0% {
    opacity: .0;
    -ms-transform: translate3D(0, 13%, 0);
  }
  100% {
    opacity: 1.0;
    -ms-transform: translate3D(0, 0, 0);
  }
}

@keyframes down {
  0% {
    opacity: .0;
    -webkit-transform: translate3D(0, 13%, 0);
    -moz-transform: translate3D(0, 13%, 0);
    -ms-transform: translate3D(0, 13%, 0);
    transform: translate3D(0, 13%, 0);
  }
  100% {
    opacity: 1.0;
    -webkit-transform: translate3D(0, 0, 0);
    -moz-transform: translate3D(0, 0, 0);
    -ms-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
  }
}

@-webkit-keyframes downed {
  0% {
    opacity: 1.0;
    -webkit-transform: translate3D(0, 0, 0);
  }
  100% {
    opacity: 0.0;
    -webkit-transform: translate3D(0, -13%, 0);
  }
}

@-moz-keyframes downed {
  0% {
    opacity: 1.0;
    -moz-transform: translate3D(0, 0, 0);
  }
  100% {
    opacity: 0.0;
    -moz-transform: translate3D(0, -13%, 0);
  }
}

@-ms-keyframes downed {
  0% {
    opacity: 1.0;
    -ms-transform: translate3D(0, 0, 0);
  }
  100% {
    opacity: 0.0;
    -ms-transform: translate3D(0, -13%, 0);
  }
}

@keyframes downed {
  0% {
    opacity: 1.0;
    -webkit-transform: translate3D(0, 0, 0);
    -moz-transform: translate3D(0, 0, 0);
    -ms-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
  }
  100% {
    opacity: 0.0;
    -webkit-transform: translate3D(0, -13%, 0);
    -moz-transform: translate3D(0, -13%, 0);
    -ms-transform: translate3D(0, -13%, 0);
    transform: translate3D(0, -13%, 0);
  }
}

@-webkit-keyframes up {
  0% {
    opacity: 1.0;
    -webkit-transform: translate3D(0, 0, 0);
  }
  100% {
    opacity: .0;
    -webkit-transform: translate3D(0, 13%, 0);
  }
}

@-moz-keyframes up {
  0% {
    opacity: 1.0;
    -moz-transform: translate3D(0, 0, 0);
  }
  100% {
    opacity: .0;
    -moz-transform: translate3D(0, 13%, 0);
  }
}

@-ms-keyframes up {
  0% {
    opacity: 1.0;
    -ms-transform: translate3D(0, 0, 0);
  }
  100% {
    opacity: .0;
    -ms-transform: translate3D(0, 13%, 0);
  }
}

@keyframes up {
  0% {
    opacity: 1.0;
    -webkit-transform: translate3D(0, 0, 0);
    -moz-transform: translate3D(0, 0, 0);
    -ms-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
  }
  100% {
    opacity: .0;
    -webkit-transform: translate3D(0, 13%, 0);
    -moz-transform: translate3D(0, 13%, 0);
    -ms-transform: translate3D(0, 13%, 0);
    transform: translate3D(0, 13%, 0);
  }
}

@-webkit-keyframes uped {
  0% {
    opacity: .0;
    -webkit-transform: translate3D(0, -13%, 0);
  }
  100% {
    opacity: 1.0;
    -webkit-transform: translate3D(0, 0, 0);
  }
}

@-moz-keyframes uped {
  0% {
    opacity: .0;
    -moz-transform: translate3D(0, -13%, 0);
  }
  100% {
    opacity: 1.0;
    -moz-transform: translate3D(0, 0, 0);
  }
}

@-ms-keyframes uped {
  0% {
    opacity: .0;
    -ms-transform: translate3D(0, -13%, 0);
  }
  100% {
    opacity: 1.0;
    -ms-transform: translate3D(0, 0, 0);
  }
}

@keyframes uped {
  0% {
    opacity: .0;
    -webkit-transform: translate3D(0, -13%, 0);
    -moz-transform: translate3D(0, -13%, 0);
    -ms-transform: translate3D(0, -13%, 0);
    transform: translate3D(0, -13%, 0);
  }
  100% {
    opacity: 1.0;
    -webkit-transform: translate3D(0, 0, 0);
    -moz-transform: translate3D(0, 0, 0);
    -ms-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
  }
}

/*!
 * fullPage 2.8.1
 * https://github.com/alvarotrigo/fullPage.js
 * MIT licensed
 *
 * Copyright (C) 2013 alvarotrigo.com - A project by Alvaro Trigo
 * Contribution by Jhony0311
 */
html.fp-enabled,
.fp-enabled body {
  margin: 0;
  padding: 0;
  overflow: hidden;
  /*Avoid flicker on slides transitions for mobile phones #336 */
  -webkit-tap-highlight-color: transparent;
}

#superContainer {
  height: 100%;
  position: relative;
  /* Touch detection for Windows 8 */
  -ms-touch-action: none;
  /* IE 11 on Windows Phone 8.1*/
  touch-action: none;
}

.fp-section {
  position: relative;
  -webkit-box-sizing: border-box;
  /* Safari<=5 Android<=3 */
  -moz-box-sizing: border-box;
  /* <=28 */
  box-sizing: border-box;
}

.fp-slide {
  float: left;
}

.fp-slide, .fp-slidesContainer {
  height: 100%;
  display: block;
}

.fp-slides {
  z-index: 1;
  height: 100%;
  overflow: hidden;
  position: relative;
  -webkit-transition: all 0.3s ease-out;
  /* Safari<=6 Android<=4.3 */
  transition: all 0.3s ease-out;
}

.fp-section.fp-table, .fp-slide.fp-table {
  display: table;
  table-layout: fixed;
  width: 100%;
}

.fp-tableCell {
  display: table-cell;
  vertical-align: middle;
  width: 100%;
  height: 100%;
}

.fp-slidesContainer {
  float: left;
  position: relative;
}

.fp-controlArrow {
  -webkit-user-select: none;
  /* webkit (safari, chrome) browsers */
  -moz-user-select: none;
  /* mozilla browsers */
  -khtml-user-select: none;
  /* webkit (konqueror) browsers */
  -ms-user-select: none;
  /* IE10+ */
  position: absolute;
  z-index: 4;
  top: 50%;
  cursor: pointer;
  width: 0;
  height: 0;
  border-style: solid;
  margin-top: -38px;
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.fp-controlArrow.fp-prev {
  left: 15px;
  width: 0;
  border-width: 38.5px 34px 38.5px 0;
  border-color: transparent #fff transparent transparent;
}

.fp-controlArrow.fp-next {
  right: 15px;
  border-width: 38.5px 0 38.5px 34px;
  border-color: transparent transparent transparent #fff;
}

.fp-scrollable {
  overflow: scroll;
}

.fp-notransition {
  -webkit-transition: none !important;
  transition: none !important;
}

.fp-slidesNav {
  position: absolute;
  z-index: 4;
  left: 50%;
  opacity: 1;
}

.fp-slidesNav.bottom {
  bottom: 17px;
}

.fp-slidesNav.top {
  top: 17px;
}

#fp-nav ul,
.fp-slidesNav ul {
  margin: 0;
  padding: 0;
}

#fp-nav ul li,
.fp-slidesNav ul li {
  display: block;
  width: 14px;
  height: 13px;
  margin: 7px;
  position: relative;
}

#fp-nav ul li a,
.fp-slidesNav ul li a {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  cursor: pointer;
  text-decoration: none;
}

#fp-nav ul li a.active span,
.fp-slidesNav ul li a.active span {
  height: 12px;
  width: 12px;
  margin: -6px 0 0 -6px;
  border-radius: 100%;
}

#fp-nav ul li:hover #fp-nav ul li a.active span,
#fp-slidesNav ul li:hover #fp-nav ul li a.active span, #fp-nav ul li:hover
.fp-slidesNav ul li a.active span,
#fp-slidesNav ul li:hover
.fp-slidesNav ul li a.active span {
  height: 12px;
  width: 12px;
  margin: -6px 0 0 -6px;
  border-radius: 100%;
}

#fp-nav ul li a span,
.fp-slidesNav ul li a span {
  border-radius: 50%;
  position: absolute;
  z-index: 1;
  height: 4px;
  width: 4px;
  border: 0;
  background: #333;
  left: 50%;
  top: 50%;
  margin: -2px 0 0 -2px;
  -webkit-transition: all 0.1s ease-in-out;
  -moz-transition: all 0.1s ease-in-out;
  -o-transition: all 0.1s ease-in-out;
  transition: all 0.1s ease-in-out;
}

#fp-nav ul li:hover a span,
.fp-slidesNav ul li:hover a span {
  width: 10px;
  height: 10px;
  margin: -5px 0px 0px -5px;
}

#fp-nav {
  position: fixed;
  z-index: 100;
  margin-top: -32px;
  top: 50%;
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
}

#fp-nav.right {
  right: 17px;
}

#fp-nav.left {
  left: 17px;
}

#fp-nav ul li .fp-tooltip {
  position: absolute;
  top: -2px;
  color: #fff;
  font-size: 14px;
  font-family: arial, helvetica, sans-serif;
  white-space: nowrap;
  max-width: 220px;
  overflow: hidden;
  display: block;
  opacity: 0;
  width: 0;
  cursor: pointer;
}

#fp-nav ul li .fp-tooltip.right {
  right: 20px;
}

#fp-nav ul li:hover .fp-tooltip {
  -webkit-transition: opacity 0.2s ease-in;
  transition: opacity 0.2s ease-in;
  width: auto;
  opacity: 1;
}

#fp-nav.fp-show-active a.active + .fp-tooltip {
  -webkit-transition: opacity 0.2s ease-in;
  transition: opacity 0.2s ease-in;
  width: auto;
  opacity: 1;
}

.fp-slidesNav ul li {
  display: inline-block;
}

.fp-auto-height.fp-section,
.fp-auto-height .fp-slide,
.fp-auto-height .fp-tableCell {
  height: auto !important;
}

.fp-responsive .fp-auto-height-responsive.fp-section,
.fp-responsive .fp-auto-height-responsive .fp-slide,
.fp-responsive .fp-auto-height-responsive .fp-tableCell {
  height: auto !important;
}

@media screen and (max-width: 767px) {
  .section_header-home2 {
    top: 50%;
    left: 50%;
    margin: -92px 0 0 -110px;
  }
  .section_header-home3 {
    top: 50%;
    left: 50%;
    margin: -110px 0 0 -129px;
  }
  .section_header-home4 {
    top: 50%;
    left: 50%;
    margin: -73px 0 0 -129px;
  }
  .section_header-home5 {
    top: 50%;
    left: 50%;
    margin: -83px 0 0 -29px;
  }
  .section_header-home6 {
    width: 258px;
    height: 240px;
    top: 50%;
    left: 50%;
    margin: -120px 0 0 -129px;
  }
  .cloud {
    background-size: 1024px auto;
  }
  .cloud1-1 {
    margin-top: -160px;
    padding-top: 476px;
  }
  .cloud1-2 {
    margin-bottom: -223px;
    padding-top: 454px;
  }
  .cloud2-1 {
    margin-top: -229px;
    padding-top: 454px;
  }
  .cloud2-2 {
    margin-bottom: -213px;
    padding-top: 336px;
  }
  .cloud3-1 {
    margin-top: -134px;
    padding-top: 336px;
  }
  .cloud3-2 {
    margin-bottom: -311px;
    padding-top: 443px;
  }
  .cloud4-1 {
    margin-top: -132px;
    padding-top: 443px;
  }
  .cloud4-2 {
    margin-bottom: -290px;
    padding-top: 499px;
  }
  .cloud5-1 {
    margin-top: -209px;
    padding-top: 509px;
  }
  .cloud5-2 {
    margin-bottom: -165px;
    padding-top: 355px;
  }
  .cloud6-1 {
    margin-top: -190px;
    padding-top: 355px;
  }
  .cloud6-2 {
    margin-bottom: -233px;
    padding-top: 457px;
  }
  .cloud7-1 {
    margin-top: -205px;
    padding-top: 457px;
  }
  .cloud7-2 {
    margin-bottom: -332px;
    padding-top: 524px;
  }
  .cloud8 {
    top: -24.2%;
    padding-top: 332px;
  }
  #footer-home {
    bottom: 50px;
  }
  .to_main {
    display: none;
  }
}

.ie .section_header-home {
  opacity: 1;
}

.ie .ill {
  opacity: 1;
}

.ie .cloud {
  opacity: 1;
}

/* TOP */
.slide_outer {
  position: relative;
  width: 100%;
  padding-top: 80px;
  background: #FFF;
  overflow: hidden;
  line-height: 0;
}

.slide_cloud {
  position: absolute;
  width: 100%;
  height: 0;
  padding-top: 11.6%;
  background-image: url(img/top_slide_cloud.png);
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: 100% auto;
  top: 80px;
  left: 0;
  z-index: 11;
}

#slide {
  position: relative;
  width: 100%;
  height: 730px;
}

#slide li {
  position: absolute;
  width: 100%;
  height: 100%;
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  opacity: 0;
}

#slide li.first, #slide li.active {
  z-index: 10;
  opacity: 1.0;
}

#slide li.last-active {
  z-index: 9;
}

#slide li.slide1 {
  background-image: url(img/top_slide1.jpg);
}

#slide li.slide2 {
  background-image: url(img/top_slide2.jpg);
}

#slide li.slide3 {
  background-image: url(img/top_slide3.jpg);
}

#slide li.slide4 {
  background-image: url(img/top_slide4.jpg);
}

#slide li.slide5 {
  background-image: url(img/top_slide5.jpg);
}

#slide li.slide6 {
  background-image: url(img/top_slide6.jpg);
}

.information_section {
  display: table;
  width: 100%;
  max-width: 980px;
  padding: 50px 25px;
  margin: 0 auto;
  box-sizing: border-box;
}

.information_list {
  display: table;
}

.information_list li {
  display: table-cell;
}

.information_list ul {
  display: table;
  width: 295px;
}

.information_list .category {
  width: 150px;
  font-size: 11px;
  color: #FFF;
}

.information_list .category span {
  display: inline-block;
  width: 140px;
  padding: 1px 5px;
  background: #3e3a39;
  text-align: center;
  border-radius: 3px;
}

.information_list .date {
  width: 145px;
  font-size: 13px;
  text-align: center;
}

.information_list .text {
  font-size: 15px;
  line-height: 1.75;
}

.information_list .text a {
  color: #3e3a39;
}

.information_list_cell {
  display: table-cell;
  vertical-align: middle;
}

.information_list_cell-left {
  width: 180px;
}

.information_list_cell-right > ul > li {
  padding-top: 8px;
}

.information_list_cell-right > ul > li:first-child {
  padding-top: 0;
}

.information_list_ttl {
  width: 90px;
  height: 20px;
  margin: 0 0 15px 5px;
  padding: 0;
}

.information_list_btn {
  display: inline-block;
  margin: 0;
  padding: 0;
  font-size: 11px !important;
}

.information_list_btn a {
  position: relative;
  display: inline-block;
  padding: 4px 15px 4px 10px;
  border: 1px solid #595757;
}

.information_list_btn a:after {
  position: relative;
  display: inline-block;
  content: '';
  width: 9px;
  height: 9px;
  top: 1px;
  right: -5px;
  border-top: 1px solid #595757;
  border-left: 1px solid #595757;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
}

.bnr_section {
  margin-bottom: 65px;
}

.bnr_list a {
  display: block;
  width: 100%;
  height: 290px;
  text-align: center;
  background-repeat: no-repeat;
  background-position: 50%;
  background-size: cover;
}

.bnr_list a img {
  display: inline-block;
  width: 412px;
  height: 110px;
  margin-top: 90px;
}

.bnr_list1 a {
  background-image: url(img/top_bnr1_bg.jpg);
}

.bnr_list2 a {
  background-image: url(img/top_bnr2_bg.jpg);
}

.bnr_list3 a {
  background-image: url(img/top_bnr3_bg.jpg);
}

.bnr_list4 a {
  background-image: url(img/top_bnr4_bg.jpg);
}

.aside_section {
  width: 100%;
  max-width: 830px;
  padding: 0 25px 105px;
  margin: 0 auto;
  box-sizing: border-box;
  overflow: hidden;
}

.aside_section_cell {
  width: 100%;
  max-width: 360px;
}

.aside_section_cell-left {
  float: left;
}

.aside_section_cell-right {
  float: right;
}

.aside_section .brd_ttl {
  height: 20px;
  margin: 0 0 16px;
}

.aside_section .brd_ttl img {
  width: auto;
  height: 20px;
}

.aside_section_list li {
  margin-top: 10px;
}

.aside_section_list li:first-child {
  margin-top: 0;
}

@media screen and (max-width: 937px) {
  .slide_outer {
    padding-top: 55px;
  }
  #slide {
    height: 512px;
  }
  .slide_cloud {
    top: 55px;
  }
}

@media screen and (max-width: 794px) {
  .aside_section {
    width: 100%;
    max-width: 360px;
    padding: 0 25px 50px;
  }
  .aside_section_cell-left {
    float: none;
  }
  .aside_section_cell-right {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .information_list {
    display: block;
  }
  .information_list > li {
    display: block;
  }
  .information_list ul {
    width: auto;
  }
  .information_list .category {
    width: auto;
    margin-bottom: -2px;
  }
  .information_list .category span {
    display: inline-block;
    width: auto;
    padding: 1px 10px;
  }
  .information_list .date {
    width: auto;
    margin-bottom: -2px;
    padding: 1px 0 0 10px;
  }
  .information_list_cell {
    display: block;
    vertical-align: middle;
  }
  .information_list_cell-left {
    width: 100%;
    text-align: center;
  }
  .information_list_cell-right > ul > li {
    padding-top: 15px;
  }
  .information_list_cell-right > ul > li:first-child {
    padding-top: 0;
  }
  .information_list_ttl {
    width: 90px;
    height: 20px;
    margin: 0 auto 15px;
    padding: 0;
  }
  .information_list_btn {
    display: inline-block;
    margin: 0 0 35px;
    padding: 0;
  }
  .bnr_section {
    margin-bottom: 45px;
  }
  .bnr_list a {
    height: 195px;
  }
  .bnr_list a img {
    display: inline-block;
    width: 276px;
    height: 74px;
    margin-top: 60px;
  }
}

@media screen and (max-height: 480px) {
  .slide_outer,
  #slide {
    height: 480px !important;
  }
}

/* about */
.about_section {
  clear: both;
  position: relative;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 115px;
  box-sizing: border-box;
  z-index: 2;
}

.about_section:after {
  position: absolute;
  display: block;
  content: '';
  left: 0;
  z-index: -1;
}

.about_section1 {
  margin-top: -50px;
  padding-top: 100px;
}

.about_section1:after {
  width: 100%;
  height: 520px;
  bottom: -205px;
  background-image: url(img/about_bg1.png);
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: auto 100%;
}

.about_section2:after {
  width: 100%;
  max-width: 1440px;
  height: 406px;
  left: auto;
  right: 0;
  bottom: 45px;
  background-image: url(img/about_bg2.png);
  background-repeat: no-repeat;
  background-position: 100% 0;
  background-size: auto 100%;
}

.about_section3 {
  padding-bottom: 90px;
}

.about_section3:after {
  width: 100%;
  max-width: 1440px;
  height: 500px;
  left: 0;
  bottom: -190px;
  background-image: url(img/tezukaosamu_bg2.png);
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: auto 100%;
}

.about_section_inner {
  width: 100%;
  max-width: 830px;
  margin: 0 auto;
  padding: 0 25px;
  box-sizing: border-box;
}

.about_section_inner p {
  margin: 0 0 1em;
}

.about_section .pagetop_btn {
  clear: both;
  margin-top: 45px;
}

.about_ttl1 {
  height: 22px;
}

.about_ttl1 img {
  width: 184px;
}

.about_ttl2 {
  height: 24px;
}

.about_ttl2 img {
  width: 132px;
}

.about_ttl3 {
  height: 20px;
}

.about_ttl3 img {
  width: 44px;
}

.about_ttl4 {
  height: 23px;
}

.about_ttl4 img {
  width: 161px;
}

.about_read {
  overflow: hidden;
  padding-bottom: 25px;
}

.about_text {
  float: left;
  width: 100%;
  max-width: 360px;
}

.about_img {
  float: right;
  width: 100%;
  max-width: 358px;
}

.about_bg {
  margin: 0 auto;
}

.about_article {
  position: relative;
  margin-top: -3px;
  padding: 10px 0;
  background-image: url(img/brd_black1.png), url(img/brd_black2.png), url(img/brd_black3.png), url(img/brd_black4.png);
  background-position: 0 0, 100% 0, 0 100%, 0 100%;
  background-repeat: no-repeat,repeat-y,no-repeat,repeat-y;
  background-size: auto 3px, 3px auto,auto 3px, 3px auto;
  box-sizing: border-box;
}

.about_article:first-child {
  margin-top: 0;
}

.about_article_header {
  position: relative;
  display: table;
  width: 100%;
}

.about_article_ttl {
  display: table-cell;
  width: 310px;
  height: 62px;
  margin: 0;
  text-align: center;
  vertical-align: middle;
}

.about_article_ttl img {
  vertical-align: middle;
}

.about_article_ttl2-1 img {
  width: 107px;
}

.about_article_ttl2-2 img {
  width: 104px;
}

.about_article_ttl2-3 img {
  width: 86px;
}

.about_article_ttl2-4 img {
  width: 93px;
}

.about_article_ttl2-5 img {
  width: 105px;
}

.about_article_ttl2-6 img {
  width: 83px;
}

.about_article_ttl2-7 img {
  width: 102px;
}

.about_article_ttl3-1 img {
  width: 170px;
}

.about_article_ttl3-2 img {
  width: 188px;
}

.about_article_ttl3-3 img {
  width: 244px;
}

.about_article_ttl3-4 img {
  width: 247px;
}

.about_article_ttl3-5 img {
  width: 61px;
}

.about_article_ttl3-6 img {
  width: 61px;
}

.about_article_ttl3-7 img {
  width: 100px;
}

.about_article_ttl_sub {
  display: table-cell;
  margin: 0;
  padding: 0 70px 0 25px;
  border-left: 1px solid #595757;
  font-size: 13px;
  font-weight: normal;
  vertical-align: middle;
}

.about_article_content {
  display: none;
  width: 100%;
  margin: 0 auto 38px;
  padding: 0 3px;
  box-sizing: border-box;
}

.about_article_content.is-content-active {
  display: block;
}

.about_article_content p {
  margin: 0 30px;
}

.about_article_content p:first-child {
  margin-top: 50px;
}

.about_article_content p:last-child {
  margin-bottom: 0;
}

.about_article_figure {
  position: relative;
  width: 100%;
  max-width: 756px;
  height: auto;
  margin: 10px auto 35px;
  padding: 0;
  line-height: 0;
  vertical-align: top;
  text-align: center;
}

.about_article_figure img {
  margin: 0;
  padding: 0;
}

@media screen and (max-width: 829px) {
  .about_section {
    padding-bottom: 95px;
  }
  .about_section4 {
    padding-bottom: 0;
  }
  .about_section1:after {
    margin-top: -15px;
    padding-top: 75px;
    bottom: -45px;
    height: 206px;
  }
  .about_section2:after {
    height: 167px;
    bottom: -75px;
  }
  .about_section3:after {
    height: 175px;
    bottom: -80px;
  }
  .about_read {
    padding-bottom: 50px;
  }
  .about_text {
    float: none;
    max-width: 100%;
  }
  .about_img {
    float: none;
    margin: 40px auto 0;
  }
}

@media screen and (max-width: 760px) {
  .about_section .pagetop_btn {
    display: none;
  }
  .about_bg {
    padding-left: 0;
    padding-right: 0;
  }
  .about_article {
    position: relative;
    margin-top: -3px;
    padding: 3px 0;
    background-image: url(img/brd_black1.png), url(img/brd_black3.png);
    background-position: 50% 0, 50% 100%;
    background-repeat: no-repeat,no-repeat;
    background-size: auto 3px, auto 3px;
  }
  .about_article:first-child {
    margin-top: 0;
  }
  .about_article_header {
    padding: 20px 0;
  }
  .about_article_ttl {
    display: block;
    width: 100%;
    height: auto;
    text-align: center;
  }
  .about_article_ttl_sub {
    position: relative;
    display: block;
    margin: 0;
    padding: 20px 0 0;
    border-left: none;
    font-size: 15px;
    text-align: center;
  }
  .about_article_ttl_sub:before {
    position: absolute;
    display: block;
    content: '';
    width: 60px;
    border-top: 1px solid #595757;
    margin-left: -30px;
    top: 9px;
    left: 50%;
  }
  .about_article_content {
    display: none;
    width: 100%;
    margin: 0 auto 30px;
    padding: 0;
    box-sizing: border-box;
  }
  .about_article_content.is-content-active {
    display: block;
  }
  .about_article_content p {
    margin: 0 22px;
  }
  .about_article_content p:first-child {
    margin-top: 5px;
  }
  .about_article_content p:last-child {
    margin-bottom: 0;
  }
  .about_article_figure {
    position: relative;
    width: 100%;
    max-width: 756px;
    height: auto;
    margin: 5px auto 30px;
  }
}

.ie .about_article_ttl2-1 img {
  height: 40px;
}

.ie .about_article_ttl2-2 img {
  height: 40px;
}

.ie .about_article_ttl2-3 img {
  height: 41px;
}

.ie .about_article_ttl2-4 img {
  height: 40px;
}

.ie .about_article_ttl2-5 img {
  height: 40px;
}

.ie .about_article_ttl2-6 img {
  height: 40px;
}

.ie .about_article_ttl2-7 img {
  height: 21px;
}

.ie .about_article_ttl3-1 img {
  height: 43px;
}

.ie .about_article_ttl3-2 img {
  height: 43px;
}

.ie .about_article_ttl3-3 img {
  height: 43px;
}

.ie .about_article_ttl3-4 img {
  height: 43px;
}

.ie .about_article_ttl3-5 img {
  height: 21px;
}

.ie .about_article_ttl3-6 img {
  height: 20px;
}

.ie .about_article_ttl3-7 img {
  height: 19px;
}

/* access */
#map_container {
  position: relative;
  padding-top: 350px;
}

#map {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
}

.access_section {
  padding: 60px 25px 0;
  margin: -60px 0 0;
  box-sizing: border-box;
}

.access_section_inner {
  overflow: hidden;
  width: 100%;
  max-width: 780px;
  margin: 0 auto;
  padding: 50px 0 40px;
  box-sizing: border-box;
  border-top: 1px solid #595757;
}

.access_section_inner p {
  margin: 0 0 1em;
}

.access_section_inner p:last-child {
  margin-bottom: 0;
}

.access_section_inner a {
  position: relative;
  text-decoration: underline;
  z-index: 2;
}

.access_section_inner a:hover {
  text-decoration: none;
}

.access_section0 .access_section_inner {
  border-top: none;
  padding: 0 0 60px;
}

.access_section4 {
  padding-bottom: 50px;
}

.access_summary {
  position: relative;
  display: table;
  width: 100%;
  z-index: 2;
}

.access_summary li {
  display: table-cell;
  vertical-align: middle;
  padding-top: 15px;
}

.access_summary li.btn {
  text-align: right;
  padding-top: 13px;
  padding-right: 1px;
}

.access_summary li.btn a {
  position: relative;
  display: inline-block;
  padding: 0 30px 0 20px;
  border: 1px solid #595757;
  font-size: 11px !important;
  text-decoration: none;
}

.access_summary li.btn a:after {
  position: absolute;
  display: inline-block;
  content: '';
  width: 9px;
  height: 9px;
  top: 6px;
  right: 10px;
  border-top: 1px solid #595757;
  border-left: 1px solid #595757;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
}

.access_txt {
  float: left;
  width: 365px;
}

.access_mark-type1:first-letter {
  color: #da3915;
}

.access_mark-type2:first-letter {
  color: #0069ac;
}

.access_mark-type3:first-letter {
  color: #c59965;
}

.access_mark-type4:first-letter {
  color: #0d955a;
}

.access_map {
  float: right;
  width: 100%;
  max-width: 371px;
}

.access_figure {
  float: left;
  width: 240px;
  margin: 20px 15px 0;
}

.access_figcaption {
  margin: 15px 0 0;
  font-size: 12px;
  line-height: 1.75;
}

.access_figcaption-no {
  position: relative;
  margin-top: 60px;
}

.access_figcaption-no:before {
  position: absolute;
  display: block;
  content: '';
  width: 10px;
  height: 13px;
  top: -45px;
  left: 50%;
  margin-left: -5px;
  background-image: url(img/bg.svg);
  background-repeat: no-repeat;
  background-size: 413px 299px;
}

.access_figcaption-no:after {
  position: absolute;
  display: block;
  content: '';
  width: 30px;
  border-top: 1px solid #595757;
  top: -18px;
  left: 50%;
  margin-left: -15px;
}

.access_figcaption-no1:before {
  background-position: -45px -29px;
}

.access_figcaption-no2:before {
  background-position: -55px -29px;
}

.access_figcaption-no3:before {
  background-position: -65px -29px;
}

.access_figcaption-no4:before {
  background-position: -75px -29px;
}

.access_figcaption-no5:before {
  width: 9px;
  background-position: -85px -29px;
}

.access_figcaption-no6:before {
  background-position: -95px -29px;
}

.access_figcaption-no7:before {
  background-position: -105px -29px;
}

.access_figcaption-no8:before {
  background-position: -115px -29px;
}

.access_figure_area {
  clear: both;
  margin: 0 -15px;
  overflow: hidden;
}

.access_figure_area2 {
  padding-top: 20px;
}

@media screen and (max-width: 937px) {
  .access_section {
    padding-top: 25px;
    margin-top: -25px;
    box-sizing: border-box;
  }
}

@media screen and (max-width: 829px) {
  .access_section_inner {
    padding: 50px 0 40px;
  }
  .access_section0 .access_section_inner {
    padding: 0 0 30px;
  }
  .access_section4 {
    padding-bottom: 50px;
  }
  .access_summary {
    display: block;
    width: 100%;
    z-index: 2;
    padding-top: 15px;
  }
  .access_summary li {
    display: block;
    width: 100%;
    padding-top: 0;
    text-align: center;
  }
  .access_summary li.btn {
    text-align: center;
    padding-top: 13px;
  }
  .access_txt {
    float: none;
    width: 100%;
  }
  .access_map {
    float: none;
    margin: 20px auto;
  }
  .access_figure {
    margin: 30px 30px 0 0;
  }
  .access_figure:nth-child(2n) {
    margin-right: 0;
  }
  .access_figcaption {
    margin: 15px 0 0;
    font-size: 12px;
    line-height: 1.75;
  }
  .access_figcaption-no {
    position: relative;
    margin-top: 60px;
  }
  .access_figcaption-no:before {
    position: absolute;
    display: block;
    content: '';
    width: 10px;
    height: 13px;
    top: -45px;
    left: 50%;
    margin-left: -5px;
    background-image: url(img/bg.svg);
    background-repeat: no-repeat;
    background-size: 413px 299px;
  }
  .access_figcaption-no:after {
    position: absolute;
    display: block;
    content: '';
    width: 30px;
    border-top: 1px solid #595757;
    top: -18px;
    left: 50%;
    margin-left: -15px;
  }
  .access_figcaption-no1:before {
    background-position: -45px -29px;
  }
  .access_figcaption-no2:before {
    background-position: -55px -29px;
  }
  .access_figcaption-no3:before {
    background-position: -65px -29px;
  }
  .access_figcaption-no4:before {
    background-position: -75px -29px;
  }
  .access_figcaption-no5:before {
    background-position: -85px -29px;
  }
  .access_figcaption-no6:before {
    background-position: -95px -29px;
  }
  .access_figcaption-no7:before {
    background-position: -105px -29px;
  }
  .access_figcaption-no8:before {
    background-position: -115px -29px;
  }
  .access_figure_area {
    clear: both;
    width: 100%;
    max-width: 510px;
    margin: 0 auto;
    overflow: hidden;
    padding-top: 0;
  }
}

@media screen and (max-width: 559px) {
  .access_figure {
    margin: 30px 0 0;
  }
  .access_figure_area {
    max-width: 240px;
  }
}

/* contact */
.section_contact1 {
  padding-top: 50px;
  padding-bottom: 20px;
}

.section_contact1 .read {
  padding-bottom: 45px;
}

.section_contact2 {
  padding-bottom: 40px;
}

.section_contact3 {
  padding-bottom: 100px;
}

.section_contact3 p {
  margin-bottom: 1em;
}

.bg_ttl-contact {
  position: relative;
  font-size: 15px;
  line-height: 1;
  padding: 10px 0 25px;
  text-align: center;
}

.bg_ttl-contact:after {
  position: absolute;
  display: block;
  content: '';
  width: 140px;
  margin-left: -70px;
  left: 50%;
  bottom: 13px;
  border-bottom: 1px solid #595757;
}

.bg_tel-contact {
  text-align: center;
  line-height: 0;
  padding: 0 0 10px;
}

.bg_tel-contact img {
  width: 265px;
}

.bg_txt-contact {
  font-size: 13px;
  text-align: center;
  padding: 0 0 10px;
}

.contact_btn {
  padding: 35px 0 30px;
  text-align: center;
}

.contact_btn input[type=submit] {
  position: relative;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
  display: inline-block;
  width: 275px;
  height: 50px;
  line-height: 48px;
  border: 1px solid #595757;
  background: none;
  font-size: 15px;
  text-align: center;
  outline: none;
  outline-offset: -2px;
}

.mw_wp_form .error {
  font-size: 11px !important;
}

.send_time,
.input_time {
  display: inline-block;
  margin: 0 5px 5px;
}

.mw_wp_form_input .send_time,
.mw_wp_form_input .send_time .arw {
  display: none;
}

.mw_wp_form_preview .input_time,
.mw_wp_form_preview .input_time .arw {
  display: none;
}

.complete {
  padding: 30px 25px 15px;
  text-align: center;
}

.complete_txt {
  padding: 0 0 15px;
}

@media screen and (max-width: 760px) {
  .section_contact3 {
    padding-bottom: 50px;
  }
  .contact_btn {
    padding: 5px 0 20px;
  }
}

/* information */
.information_section_list {
  border-top: 1px solid #595757;
  padding-bottom: 100px;
}

.information_article {
  width: 100%;
  margin: 0 auto;
  padding: 15px 0;
  border-bottom: 1px solid #595757;
}

.information_article_single {
  padding: 0 0 60px;
  border-bottom: none;
}

.information_article:first-child {
  border-top: 1px solid #595757;
}

.information_article_header {
  padding-bottom: 15px;
}

.information_article_ttl {
  margin: 0;
  padding: 5px 0;
  font-size: 20px;
  line-height: 1.75;
}

.information_article_ttl a {
  color: #231815;
}

.information_article_summary {
  display: table;
  width: 100%;
}

.information_article_category {
  display: table-cell;
  width: 150px;
  font-size: 11px;
  color: #FFF;
}

.information_article_category span {
  display: inline-block;
  width: 140px;
  padding: 1px 5px;
  background: #3e3a39;
  text-align: center;
  border-radius: 3px;
}

.information_article_date {
  display: table-cell;
  padding-left: 12px;
  color: #595757;
  font-size: 12px;
}

.information_article_content {
  padding-bottom: 20px;
}

.information_article_content p {
  margin: 0 0 2em;
}

.information_article_content p:last-child {
  margin-bottom: 0;
}

.information_article_content img {
  display: block;
  width: auto;
}

.information_article_content a {
  text-decoration: underline;
}

.information_article_content a:hover {
  text-decoration: none;
}

.information_article_more {
  text-align: right;
}

.information_article_more a {
  position: relative;
  display: inline-block;
  padding: 4px 15px 4px 10px;
  border: 1px solid #595757;
  font-size: 11px !important;
}

.information_article_more a:after {
  position: relative;
  display: inline-block;
  content: '';
  width: 9px;
  height: 9px;
  top: 1px;
  right: -5px;
  border-top: 1px solid #595757;
  border-left: 1px solid #595757;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
}

.information_footer {
  padding-bottom: 100px;
  border-top: 1px solid #595757;
}

.information_footer_btn {
  padding-top: 50px;
  text-align: center;
}

.information_footer_btn a {
  position: relative;
  display: inline-block;
  width: 273px;
  height: 52px;
  line-height: 52px;
  font-size: 15px !important;
  border: 1px solid #595757;
}

.information_footer_btn a:after {
  position: absolute;
  display: inline-block;
  content: '';
  width: 9px;
  height: 9px;
  top: 50%;
  right: 32px;
  margin-top: -5px;
  border-top: 1px solid #595757;
  border-left: 1px solid #595757;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
}

.information_article_footer {
  display: table;
  width: 100%;
  padding: 10px 0;
  border-bottom: 1px solid #595757;
}

.information_article_footer_label {
  display: table-cell;
  width: 92px;
  font-size: 13px;
  vertical-align: middle;
}

.information_article_footer_list {
  display: table-cell;
  vertical-align: middle;
  padding: 5px 15px;
  border-left: 1px solid #595757;
}

.information_article_footer_list ul {
  display: table;
}

.information_article_footer_list ul li {
  display: table-cell;
  vertical-align: middle;
}

.information_article_footer_list .category {
  width: auto;
  font-size: 11px;
  color: #FFF;
}

.information_article_footer_list .category span {
  display: inline-block;
  width: 140px;
  padding: 1px 10px;
  background: #3e3a39;
  text-align: center;
  border-radius: 3px;
}

.information_article_footer_list .date {
  width: auto;
  padding: 0 0 0 10px;
  font-size: 12px;
  color: #3e3a39;
}

.information_article_footer_list .text {
  clear: both;
  padding: 5px 0 0;
  font-size: 15px;
  line-height: 1.75;
  font-weight: bold;
}

.information_article_footer_list .text a {
  color: #231815;
}

.aside_ttl {
  line-height: 0;
  margin: 0 0 15px;
  padding: 0 0 10px;
  border-bottom: 1px solid #595757;
}

.aside_ttl-list img {
  width: 127px;
}

.aside_ttl-category img {
  width: 78px;
}

.aside_ttl-archive img {
  width: 81px;
}

.aside_list {
  padding-bottom: 60px;
  font-size: 13px;
}

.aside_archive_list {
  padding-bottom: 60px;
  font-size: 13px;
}

.wp-pagenavi {
  overflow: hidden;
  margin: 30px -5px 0;
}

.wp-pagenavi a, .wp-pagenavi span {
  position: relative;
  display: inline-block;
  width: 40px;
  height: 40px;
  line-height: 40px;
  margin: 0 5px;
  border: 1px solid #595757;
  text-align: center;
  font-family: YuGothic, 'Yu Gothic', '游ゴシック体', '游ゴシック', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'MS ゴシック', 'MS Gothic', sans-serif;
  font-weight: 400;
}

.wp-pagenavi a:hover {
  color: #FFF;
  background-color: #3e3a39;
  opacity: 1 !important;
}

.wp-pagenavi span.current {
  color: #FFF;
  background-color: #3e3a39;
}

.wp-pagenavi span.extend {
  border: none;
  width: 20px;
  margin: 0;
}

.wp-pagenavi a.previouspostslink,
.wp-pagenavi a.nextpostslink {
  width: 20px;
  margin: 0;
  border: none !important;
  text-indent: -9999px;
}

.wp-pagenavi a.previouspostslink:hover,
.wp-pagenavi a.nextpostslink:hover {
  background: none;
  opacity: 0.4 !important;
}

.wp-pagenavi a.previouspostslink {
  margin-right: 5px;
}

.wp-pagenavi a.nextpostslink {
  margin-left: 5px;
}

.wp-pagenavi a.previouspostslink:before {
  position: absolute;
  display: block;
  content: '';
  width: 17px;
  height: 17px;
  margin: -8px 0 0;
  top: 50%;
  left: 8px;
  border-top: 1px solid #3e3a39;
  border-left: 1px solid #3e3a39;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  z-index: 1;
}

.wp-pagenavi a.nextpostslink {
  float: right;
}

.wp-pagenavi a.nextpostslink:before {
  position: absolute;
  display: block;
  content: '';
  width: 17px;
  height: 17px;
  margin: -8px 0 0 0;
  top: 50%;
  right: 8px;
  border-top: 1px solid #3e3a39;
  border-left: 1px solid #3e3a39;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
  z-index: 1;
}

#tinymce p {
  font-size: 15px;
  margin: 0 10px 2em;
}

#tinymce img {
  display: block;
  width: auto;
}

.mce-content-body {
  display: block;
  width: auto;
}

@media screen and (max-width: 775px) {
  .information_section_list {
    border-top: none;
  }
  .information_article {
    padding: 15px 0 25px;
  }
  .information_article_header {
    padding-bottom: 15px;
  }
  .information_article_ttl {
    font-size: 15px;
  }
  .information_article_summary {
    width: auto;
  }
  .information_article_category {
    width: auto;
  }
  .information_article_category span {
    display: inline-block;
    width: auto;
    padding: 1px 10px;
  }
  .information_article_date {
    width: auto;
    padding: 1px 0 0 10px;
  }
  .information_article_content {
    padding-bottom: 10px;
  }
  .information_article_more {
    text-align: center;
  }
  .information_article_footer_label {
    display: block;
    width: 100%;
    text-align: center;
  }
  .information_article_footer_list {
    display: block;
    padding: 5px 0;
    border-left: none;
  }
  .information_article_footer_list .category span {
    width: auto;
  }
  .aside_list {
    padding-bottom: 50px;
  }
  .aside_archive_list {
    padding-bottom: 50px;
  }
}

/* matsuri */
.matsuri_ttl1 {
  height: 22px;
}

.matsuri_ttl1 img {
  width: 158px;
}

.matsuri_ttl2 {
  height: 21px;
}

.matsuri_ttl2 img {
  width: 80px;
}

.matsuri_ttl3 {
  height: 22px;
}

.matsuri_ttl3 img {
  width: 232px;
}

.matsuri_ttl4 {
  height: 24px;
}

.matsuri_ttl4 img {
  width: 91px;
}

.section_matsuri {
  clear: both;
  position: relative;
  width: 100%;
  padding-bottom: 120px;
  z-index: 2;
}

.section_matsuri:after {
  position: absolute;
  display: block;
  content: '';
  z-index: -1;
}

.section_matsuri1 {
  margin-top: -50px;
  padding-top: 100px;
  padding-bottom: 100px;
}

.section_matsuri1 .bg-red {
  margin-top: 25px;
  margin-bottom: 10px;
}

.section_matsuri3 {
  padding-bottom: 300px;
}

.section_matsuri3:after {
  width: 100%;
  height: 299px;
  left: 0;
  bottom: -80px;
  background-image: url(img/matsuri_bg.png);
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-size: auto 100%;
}

.section_matsuri3 a {
  text-decoration: underline;
}

.section_matsuri3 a:hover {
  text-decoration: none;
}

.section_matsuri4 {
  padding-bottom: 90px;
}

.section_matsuri .pagetop_btn {
  margin-top: 45px;
}

.section_matsuri .pagetop_btn a {
  text-decoration: none;
}

.section_matsuri .pagetop_btn a:hover {
  text-decoration: none;
}

@media screen and (max-width: 829px) {
  .section_matsuri {
    padding-bottom: 120px;
  }
  .section_matsuri2 {
    padding-bottom: 80px;
  }
  .section_matsuri3 {
    padding-bottom: 150px;
  }
  .section_matsuri3:after {
    height: 220px;
    bottom: -160px;
  }
  .section_matsuri4 {
    margin-top: -120px !important;
    padding-top: 200px !important;
    padding-bottom: 50px;
  }
}

.gallery_img_list .slick-prev,
.gallery_img_list .slick-next {
  position: absolute;
  top: 62%;
  width: 32px;
  height: 32px;
  margin-top: -16px;
  padding: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: transparent;
  border: none;
  box-shadow: none;
  text-indent: -9999px;
  cursor: pointer;
  outline: none;
  z-index: 111;
}

.gallery_img_list .slick-prev {
  left: -50px;
  border-top: 1px solid #FFF;
  border-left: 1px solid #FFF;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.gallery_img_list .slick-next {
  right: -50px;
  border-top: 1px solid #FFF;
  border-right: 1px solid #FFF;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.gallery_img_list .slick-dots {
  position: absolute;
  width: 100%;
  height: 5px;
  left: 0;
  bottom: 18px;
  letter-spacing: -.4em;
  text-align: center;
}

.gallery_img_list .slick-dots li {
  display: inline-block;
  letter-spacing: normal;
  text-indent: -9999px;
  width: 5px;
  height: 5px;
  margin: 0 5px;
  background: #3e3a39;
  border-radius: 50%;
}

.gallery_img_list .slick-dots li.slick-active {
  background: #fff;
}

@media screen and (max-width: 1164px) {
  .gallery_img_list .slick-prev {
    left: -30px;
  }
  .gallery_img_list .slick-next {
    right: -30px;
  }
}

@media screen and (max-width: 1118px) {
  .gallery_img_list .slick-prev {
    left: 30px;
  }
  .gallery_img_list .slick-next {
    right: 30px;
  }
}

@media screen and (max-width: 1024px) {
  .gallery_img_list .slick-prev,
  .gallery_img_list .slick-next {
    right: 30px;
  }
}

@media screen and (max-width: 760px) {
  .section_matsuri .pagetop_btn {
    display: none;
  }
  .gallery_img_list .slick-prev,
  .gallery_img_list .slick-next {
    display: none;
  }
}

.gallery_area {
  padding-top: 90px;
}

.gallery_contenar {
  padding-top: 100px;
  margin-top: -90px;
  position: relative;
}

.gallery_ttl {
  position: absolute;
  width: 100%;
  margin: 0;
  left: 0;
  top: 100px;
  z-index: 111;
}

.gallery_ttl_inner {
  width: 100%;
  max-width: 830px;
  padding-left: 25px;
  padding-right: 25px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.gallery_ttl_inner img {
  width: 222px;
  height: 222px;
}

.gallery_ttl2, .gallery_ttl4 {
  text-align: right;
}

.gallery_cloud {
  position: absolute;
  width: 100%;
  height: 0;
  padding-top: 14.44%;
  top: 100px;
  left: 0;
  background-image: url(img/matsuri_cloud.png);
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 100% auto;
  z-index: 110;
}

.gallery_img {
  background: #c59965;
}

.gallery_img_list {
  position: relative;
  width: 100%;
  max-width: 1024px;
  margin: 0 auto;
}

.gallery_img_list div {
  width: 100%;
  outline: none;
  outline-offset: -2px;
}

.gallery_img_list div img {
  display: block;
  width: 100%;
  outline: none;
  outline-offset: -2px;
}

.gallery_content {
  position: relative;
  width: 100%;
  max-width: 940px;
  margin: 0 auto 45px;
  padding: 45px 80px;
  outline: none;
  z-index: 1;
}

.gallery_inner {
  width: 100%;
  max-width: 780px;
  margin: 0 auto;
  outline: none;
}

.gallery_inner_sp {
  position: relative;
}

.gallery_inner_sp:last-child {
  margin-bottom: -30px;
}

.gallery_inner_ttl {
  position: relative;
  display: table-cell;
  width: 215px;
  vertical-align: middle;
  text-align: center;
  margin: 0;
  z-index: 1;
}

.gallery_inner_ttl img {
  display: inline;
}

.gallery_inner_ttl1-1 img {
  width: 61px;
}

.gallery_inner_ttl1-2 img {
  width: 93px;
}

.gallery_inner_ttl2-1 img {
  width: 71px;
}

.gallery_inner_ttl2-2 img {
  width: 159px;
}

.gallery_inner_ttl2-3 img {
  width: 163px;
}

.gallery_inner_ttl2-4 img {
  width: 153px;
}

.gallery_inner_ttl2-5 img {
  width: 177px;
}

.gallery_inner_ttl2-6 img {
  width: 131px;
}

.gallery_inner_ttl2-7 img {
  width: 124px;
}

.gallery_inner_ttl2-8 img {
  width: 132px;
}

.gallery_inner_ttl3-1 img {
  width: 94px;
}

.gallery_inner_ttl3-2 img {
  width: 136px;
}

.gallery_inner_ttl3-3 img {
  width: 161px;
}

.gallery_inner_ttl3-4 img {
  width: 152px;
}

.gallery_inner_ttl3-5 img {
  width: 119px;
}

.gallery_inner_ttl3-6 img {
  width: 129px;
}

.gallery_inner_ttl4-1 img {
  width: 119px;
}

.gallery_inner_ttl4-2 img {
  width: 137px;
}

.gallery_inner_txt {
  display: table-cell;
  padding-left: 30px;
  border-left: 1px solid #595757;
  vertical-align: middle;
}

.gallery_sp {
  display: none;
  padding-top: 250px;
}

@media screen and (max-width: 760px) {
  .slick-prev,
  .slick-next {
    display: block;
  }
  .gallery_area {
    padding-top: 30px;
  }
  .gallery_pc {
    visibility: hidden;
    height: 0;
  }
  .gallery_sp {
    display: block;
  }
  .gallery_contenar {
    padding-top: 80px;
    margin-top: -10px;
  }
  .gallery_ttl {
    text-align: center;
    margin-top: -30px;
  }
  .gallery_ttl_inner {
    padding: 0;
  }
  .gallery_cloud {
    top: 0;
  }
  .gallery_img_list:before, .gallery_img_list:after {
    display: none;
  }
  .gallery_inner_ttl, .gallery_inner_txt {
    display: block;
  }
  .gallery_inner_ttl {
    width: 100%;
    text-align: center;
    margin: 25px 0;
  }
  .gallery_inner_txt {
    width: 100%;
    padding: 0 25px 30px;
    box-sizing: border-box;
    border-left: none;
  }
}

.bg_ttl-matsuri {
  display: table-cell;
  width: 175px;
  text-align: center;
  vertical-align: middle;
}

.bg_ttl-matsuri1 img {
  width: 62px;
}

.bg_ttl-matsuri2 img {
  width: 72px;
}

.bg_ttl-matsuri3 img {
  width: 74px;
}

.bg_ttl-matsuri4 img {
  width: 70px;
}

.bg_txt-matsuri {
  display: table-cell;
  border-left: 1px solid #FFF;
  padding: 0 0 0 30px;
  vertical-align: middle;
}

.border-red .bg_txt-matsuri {
  border-left: 1px solid #da3915;
}

.bg_txt-white {
  color: #FFF;
}

.bg_btn {
  display: table-cell;
  width: 100px;
  padding: 0 30px;
  line-height: 1;
  text-align: center;
  vertical-align: middle;
}

.bg_btn a {
  position: relative;
  display: inline-block;
  font-size: 11px;
  border: 1px solid #FFF;
  color: #FFF;
  padding: 7px 28px 7px 10px;
}

.bg_btn a:after {
  position: absolute;
  display: inline-block;
  content: '';
  width: 9px;
  height: 9px;
  top: 50%;
  right: 9px;
  margin-top: -8px;
  border-bottom: 1px solid #FFF;
  border-right: 1px solid #FFF;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  z-index: 2;
  cursor: pointer;
}

.bg_btn-red a {
  border: 1px solid #da3915;
  color: #da3915;
}

.bg_btn-red a:after {
  border-bottom: 1px solid #da3915;
  border-right: 1px solid #da3915;
}

@media screen and (max-width: 760px) {
  .bg_ttl-matsuri {
    display: block;
    width: 100%;
  }
  .bg_txt-matsuri {
    display: block;
    width: 100%;
    padding: 25px;
    border-left: none;
    box-sizing: border-box;
  }
  .border-red .bg_txt-matsuri {
    border-left: none;
  }
  .bg_btn {
    display: block;
    width: 100%;
    padding: 0 0 10px;
  }
}

.ie .gallery_inner_ttl1-1 img {
  height: 84px;
}

.ie .gallery_inner_ttl1-2 img {
  height: 84px;
}

.ie .gallery_inner_ttl2-1 img {
  height: 85px;
}

.ie .gallery_inner_ttl2-2 img {
  height: 114px;
}

.ie .gallery_inner_ttl2-3 img {
  height: 114px;
}

.ie .gallery_inner_ttl2-4 img {
  height: 85px;
}

.ie .gallery_inner_ttl2-5 img {
  height: 84px;
}

.ie .gallery_inner_ttl2-6 img {
  height: 85px;
}

.ie .gallery_inner_ttl2-7 img {
  height: 115px;
}

.ie .gallery_inner_ttl2-8 img {
  height: 84px;
}

.ie .gallery_inner_ttl3-1 img {
  height: 115px;
}

.ie .gallery_inner_ttl3-2 img {
  height: 84px;
}

.ie .gallery_inner_ttl3-3 img {
  height: 114px;
}

.ie .gallery_inner_ttl3-4 img {
  height: 85px;
}

.ie .gallery_inner_ttl3-5 img {
  height: 85px;
}

.ie .gallery_inner_ttl3-6 img {
  height: 115px;
}

.ie .gallery_inner_ttl4-1 img {
  height: 83px;
}

.ie .gallery_inner_ttl4-2 img {
  height: 84px;
}

.ie .bg_ttl-matsuri1 img {
  height: 83px;
}

.ie .bg_ttl-matsuri2 img {
  height: 83px;
}

.ie .bg_ttl-matsuri3 img {
  height: 83px;
}

.ie .bg_ttl-matsuri4 img {
  height: 83px;
}

/* tezukaosamu */
.tezukaosamu_section {
  clear: both;
  position: relative;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 120px;
  padding-right: 25px;
  padding-left: 25px;
  box-sizing: border-box;
  z-index: 2;
}

.tezukaosamu_section:after {
  position: absolute;
  display: block;
  content: '';
  z-index: -1;
}

.tezukaosamu_section1 {
  margin-top: -50px;
  padding-top: 100px;
  padding-bottom: 100px;
}

.tezukaosamu_section1:after {
  width: 100%;
  height: 511px;
  right: 0;
  bottom: -270px;
  background-image: url(img/tezukaosamu_bg1.png);
  background-repeat: no-repeat;
  background-position: 100% 0;
  background-size: auto 100%;
}

.tezukaosamu_section1 .tezukaosamu_section_inner {
  margin-top: 20px;
  padding: 50px 0 10px;
  border-top: 1px solid #595757;
}

.tezukaosamu_section2 {
  padding-bottom: 90px;
}

.tezukaosamu_section2:after {
  width: 100%;
  max-width: 1440px;
  height: 500px;
  left: 0;
  bottom: -190px;
  background-image: url(img/tezukaosamu_bg2.png);
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: auto 100%;
}

.tezukaosamu_section3 {
  padding-left: 0;
  padding-right: 0;
}

.tezukaosamu_section3 .tezukaosamu_read {
  max-width: 830px;
  padding-left: 25px;
  padding-right: 25px;
}

.tezukaosamu_section_inner {
  width: 100%;
  max-width: 780px;
  margin: 0 auto;
  box-sizing: border-box;
  overflow: hidden;
}

.tezukaosamu_section_inner p {
  margin: 0 0 1em;
}

.tezukaosamu_section_figure {
  width: 100%;
  max-width: 780px;
  margin: 0 auto;
  padding: 40px 0 0;
  box-sizing: border-box;
}

.tezukaosamu_section_figure .tezukaosamu_figure_article {
  margin-bottom: 40px;
}

.tezukaosamu_section_figure .tezukaosamu_figure_article-large {
  clear: both;
  float: none;
  width: 100%;
}

.tezukaosamu_section_figure .tezukaosamu_figure_article:nth-child(1n) {
  float: left;
}

.tezukaosamu_section_figure .tezukaosamu_figure_article:nth-child(2n) {
  float: right;
}

.tezukaosamu_section .pagetop_btn {
  clear: both;
  margin-top: 45px;
  padding-bottom: 0;
}

.tezukaosamu_ttl1 {
  height: 24px;
}

.tezukaosamu_ttl1 img {
  width: 252px;
  display: block;
  margin-left: -3px;
}

.tezukaosamu_ttl1-1 {
  height: 44px;
}

.tezukaosamu_ttl1-1 img {
  width: 249px;
}

.tezukaosamu_ttl1-2 {
  height: 19px;
}

.tezukaosamu_ttl1-2 img {
  width: 312px;
}

.tezukaosamu_ttl2 {
  height: 23px;
}

.tezukaosamu_ttl2 img {
  width: 151px;
}

.tezukaosamu_ttl3 {
  height: 23px;
}

.tezukaosamu_ttl3 img {
  width: 254px;
  display: block;
  margin-left: -4px;
}

.tezukaosamu_read {
  width: 100%;
  max-width: 780px;
  margin: 0 auto;
  padding: 0 0 25px;
  box-sizing: border-box;
}

.tezukaosamu_text {
  float: left;
  width: 100%;
  max-width: 360px;
}

.tezukaosamu_text p:last-child {
  margin-bottom: 0;
}

.tezukaosamu_text .ttl-type1 {
  padding-bottom: 0;
}

.tezukaosamu_img {
  position: relative;
}

.tezukaosamu_figure {
  float: right;
  width: 100%;
  max-width: 358px;
}

.tezukaosamu_figure-large {
  float: none;
  max-width: 780px;
}

.tezukaosamu_figure p {
  margin: 0;
}

.tezukaosamu_figure_caption {
  margin: 0;
  text-align: center;
}

.tezukaosamu_figure_caption-large {
  display: table;
  width: 100%;
  margin-top: 18px;
}

.tezukaosamu_figure_caption_ttl {
  position: relative;
  margin: 0 0 10px;
  padding: 15px 0;
  line-height: 1.5;
  font-size: 15px;
}

.tezukaosamu_figure_caption_ttl:after {
  position: absolute;
  display: block;
  content: '';
  width: 140px;
  margin-left: -70px;
  left: 50%;
  bottom: 0;
  border-bottom: 1px solid #595757;
}

.tezukaosamu_figure_caption_ttl-large {
  display: table-cell;
  width: 215px;
  text-align: center;
  vertical-align: middle;
}

.tezukaosamu_figure_caption_ttl-large:after {
  display: none;
}

.tezukaosamu_figure_caption_txt {
  font-size: 12px;
  line-height: 1.75;
}

.tezukaosamu_figure_caption_txt-large {
  display: table-cell;
  vertical-align: middle;
  padding-left: 29px;
  font-size: 15px;
  text-align: left;
  border-left: 1px solid #595757;
}

.tezukaosamu_bg {
  position: relative;
  padding: 10px;
  margin: 10px auto 0;
}

.tezukaosamu_bg_inner {
  display: table;
  width: 100%;
  max-width: 760px;
  padding: 23px 3px;
  background-image: url(img/brd_black1.png), url(img/brd_black2.png), url(img/brd_black3.png), url(img/brd_black4.png);
  background-position: 0 0, 100% 0, 0 100%, 0 100%;
  background-repeat: no-repeat,repeat-y,no-repeat,repeat-y;
  background-size: auto 3px, 3px auto,auto 3px, 3px auto;
  box-sizing: border-box;
}

.tezukaosamu_bg_left {
  display: table-cell;
  width: 353px;
  text-align: center;
  border-right: 1px solid #595757;
}

.tezukaosamu_bg_right {
  display: table-cell;
  width: 353px;
  text-align: center;
}

.tezukaosamu_bg_ttl {
  position: relative;
  padding-bottom: 25px;
  line-height: 1;
}

.tezukaosamu_bg_ttl:before {
  position: absolute;
  display: block;
  content: '';
  width: 140px;
  left: 50%;
  bottom: 15px;
  margin-left: -70px;
  border-bottom: 1px solid #595757;
}

.tezukaosamu_bg_tel img {
  width: 264px;
  height: 24px;
}

.tezukaosamu_bg_txt {
  font-size: 12px;
}

.tezukaosamu_bg_btn a {
  display: inline-block;
  position: relative;
  width: 255px;
  height: 50px;
  line-height: 50px;
  border: 1px solid #595757;
  font-size: 15px !important;
}

.tezukaosamu_bg_btn a:after {
  position: absolute;
  display: inline-block;
  content: '';
  width: 9px;
  height: 9px;
  top: 50%;
  right: 23px;
  margin-top: -4px;
  border-top: 1px solid #595757;
  border-left: 1px solid #595757;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
}

@media screen and (max-width: 829px) {
  .tezukaosamu_section {
    padding-bottom: 95px;
  }
  .tezukaosamu_section1 {
    margin-top: -15px;
    padding-top: 75px;
  }
  .tezukaosamu_section1:after {
    height: 206px;
    bottom: -60px;
  }
  .tezukaosamu_section1 .tezukaosamu_figure {
    margin-top: 20px;
  }
  .tezukaosamu_section2:after {
    height: 167px;
    bottom: -20px;
  }
  .tezukaosamu_section2 .tezukaosamu_figure {
    margin-top: 20px;
  }
  .tezukaosamu_section3 {
    padding-bottom: 55px;
  }
  .tezukaosamu_section_figure {
    padding-top: 0;
  }
  .tezukaosamu_section_figure .tezukaosamu_figure_article:nth-child(1n) {
    float: none;
  }
  .tezukaosamu_section_figure .tezukaosamu_figure_article:nth-child(2n) {
    float: none;
  }
  .tezukaosamu_text {
    float: none;
    max-width: 100%;
    margin: 0 auto;
    box-sizing: border-box;
  }
  .tezukaosamu_text .ttl .block {
    display: inline;
    padding-bottom: 10px;
  }
  .tezukaosamu_figure {
    float: none;
    margin: 0 auto;
  }
  .tezukaosamu_figure-large {
    max-width: 360px;
    margin: 0 auto;
  }
  .tezukaosamu_figure_caption-large {
    display: block;
    width: 100%;
    max-width: 360px;
    margin-top: 0;
  }
  .tezukaosamu_figure_caption_ttl-large {
    position: relative;
    display: block;
    width: 100%;
    margin: 0 0 10px;
    padding: 15px 0;
    line-height: 1.5;
    font-size: 15px;
  }
  .tezukaosamu_figure_caption_ttl-large:after {
    display: block;
  }
  .tezukaosamu_figure_caption_txt-large {
    display: block;
    padding: 0;
    text-align: center;
    border-left: none;
    font-size: 12px;
    line-height: 1.5;
    font-family: YuGothic, 'Yu Gothic', '游ゴシック体', '游ゴシック', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'MS ゴシック', 'MS Gothic', sans-serif;
    font-weight: 400;
  }
}

@media screen and (max-width: 760px) {
  .tezukaosamu_section .pagetop_btn {
    display: none;
  }
  .tezukaosamu_bg {
    position: relative;
    padding: 10px 0;
    margin: 10px auto 0;
  }
  .tezukaosamu_bg_inner {
    background-image: url(img/brd_black1.png), url(img/brd_black3.png);
    background-position: 50% 0, 50% 100%;
    background-repeat: no-repeat,no-repeat;
    background-size: auto 3px, auto 3px;
  }
  .tezukaosamu_bg_left {
    display: block;
    width: 100%;
    text-align: center;
    border-right: none;
    padding-bottom: 20px;
    margin-bottom: 20px;
  }
  .tezukaosamu_bg_right {
    display: block;
    width: 100%;
    text-align: center;
  }
}

/* keidai */
.keidai_section {
  clear: both;
  position: relative;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 115px;
  box-sizing: border-box;
  z-index: 2;
}

.keidai_section1 {
  margin-top: -50px;
  padding-top: 100px;
}

.keidai_ttl1 {
  height: 24px;
}

.keidai_ttl1 img {
  width: 233px;
}

.keidai_map_pc {
  width: 100%;
  max-width: 1160px;
  margin: 80px auto 0;
  background: url(img/keidai_map_pc.png) 50% 0 no-repeat;
  background-size: 1160px auto;
}

.keidai_map_pc_img {
  position: absolute;
  width: 1160px;
  top: 0;
  left: 50%;
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

.keidai_map_nav {
  position: relative;
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  padding-top: 678px;
}

.keidai_map_nav li {
  position: absolute;
  display: block;
}

.keidai_map_nav a {
  position: relative;
  display: block;
  opacity: 1 !important;
  text-indent: -9999px;
  height: 0;
}

.keidai_map_nav a:before, .keidai_map_nav a:after {
  position: absolute;
  display: block;
  content: "";
  background-repeat: no-repeat;
  background-size: auto 100%;
  background-position: 50% 0;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-transition: opacity .3s ease-out;
  -ms-transition: opacity .3s ease-out;
  transition: opacity .3s ease-out;
}

.keidai_map_nav a:before {
  z-index: 2;
}

.keidai_map_nav a:after {
  z-index: 3;
}

.pc .keidai_map_nav a:hover:before {
  opacity: 1.0;
}

.pc .keidai_map_nav a:hover:after {
  opacity: 0;
}

.keidai_map_nav1 {
  top: 23%;
  left: 13.5%;
  width: 64px;
}

.keidai_map_nav1 a {
  padding-top: 152px;
}

.keidai_map_nav1 a:before {
  background-image: url(img/keidai_map_btn1_be.png);
}

.keidai_map_nav1 a:after {
  background-image: url(img/keidai_map_btn1_af.png);
}

.keidai_map_nav2 {
  top: 12.1%;
  left: 20%;
  width: 34px;
}

.keidai_map_nav2 a {
  padding-top: 100px;
}

.keidai_map_nav2 a:before {
  background-image: url(img/keidai_map_btn2_be.png);
}

.keidai_map_nav2 a:after {
  background-image: url(img/keidai_map_btn2_af.png);
}

.keidai_map_nav3 {
  top: 6.5%;
  left: 30%;
  width: 34px;
}

.keidai_map_nav3 a {
  padding-top: 203px;
}

.keidai_map_nav3 a:before {
  background-image: url(img/keidai_map_btn3_be.png);
}

.keidai_map_nav3 a:after {
  background-image: url(img/keidai_map_btn3_af.png);
}

.keidai_map_nav4 {
  top: 10.4%;
  left: 37.4%;
  width: 34px;
}

.keidai_map_nav4 a {
  padding-top: 139px;
}

.keidai_map_nav4 a:before {
  background-image: url(img/keidai_map_btn4_be.png);
}

.keidai_map_nav4 a:after {
  background-image: url(img/keidai_map_btn4_af.png);
}

.keidai_map_nav5 {
  top: 15.4%;
  left: 45.9%;
  width: 34px;
}

.keidai_map_nav5 a {
  padding-top: 108px;
}

.keidai_map_nav5 a:before {
  background-image: url(img/keidai_map_btn5_be.png);
}

.keidai_map_nav5 a:after {
  background-image: url(img/keidai_map_btn5_af.png);
}

.keidai_map_nav6 {
  top: 8.5%;
  left: 61.5%;
  width: 34px;
}

.keidai_map_nav6 a {
  padding-top: 75px;
}

.keidai_map_nav6 a:before {
  background-image: url(img/keidai_map_btn6_be.png);
}

.keidai_map_nav6 a:after {
  background-image: url(img/keidai_map_btn6_af.png);
}

.keidai_map_nav7 {
  top: 25.6%;
  left: 61.2%;
  width: 72px;
}

.keidai_map_nav7 a {
  padding-top: 54px;
}

.keidai_map_nav7 a:before {
  background-image: url(img/keidai_map_btn7_be.png);
}

.keidai_map_nav7 a:after {
  background-image: url(img/keidai_map_btn7_af.png);
}

.keidai_map_nav8 {
  top: 41.8%;
  left: 64.8%;
  width: 67px;
}

.keidai_map_nav8 a {
  padding-top: 76px;
}

.keidai_map_nav8 a:before {
  background-image: url(img/keidai_map_btn8_be.png);
}

.keidai_map_nav8 a:after {
  background-image: url(img/keidai_map_btn8_af.png);
}

.keidai_map_nav9 {
  top: 38%;
  left: 41.9%;
  width: 34px;
}

.keidai_map_nav9 a {
  padding-top: 68px;
}

.keidai_map_nav9 a:before {
  background-image: url(img/keidai_map_btn9_be.png);
}

.keidai_map_nav9 a:after {
  background-image: url(img/keidai_map_btn9_af.png);
}

.keidai_map_nav10 {
  top: 40%;
  left: 31%;
  width: 70px;
}

.keidai_map_nav10 a {
  padding-top: 54px;
}

.keidai_map_nav10 a:before {
  background-image: url(img/keidai_map_btn10_be.png);
}

.keidai_map_nav10 a:after {
  background-image: url(img/keidai_map_btn10_af.png);
}

.keidai_map_nav11 {
  top: 51.5%;
  left: 11.4%;
  width: 34px;
}

.keidai_map_nav11 a {
  padding-top: 142px;
}

.keidai_map_nav11 a:before {
  background-image: url(img/keidai_map_btn11_be.png);
}

.keidai_map_nav11 a:after {
  background-image: url(img/keidai_map_btn11_af.png);
}

.keidai_map_nav12 {
  top: 62%;
  left: 23.5%;
  width: 34px;
}

.keidai_map_nav12 a {
  padding-top: 111px;
}

.keidai_map_nav12 a:before {
  background-image: url(img/keidai_map_btn12_be.png);
}

.keidai_map_nav12 a:after {
  background-image: url(img/keidai_map_btn12_af.png);
}

.keidai_map_nav13 {
  top: 43.5%;
  left: 55%;
  width: 34px;
}

.keidai_map_nav13 a {
  padding-top: 114px;
}

.keidai_map_nav13 a:before {
  background-image: url(img/keidai_map_btn13_be.png);
}

.keidai_map_nav13 a:after {
  background-image: url(img/keidai_map_btn13_af.png);
}

.keidai_map_nav14 {
  top: 60%;
  left: 33.1%;
  width: 34px;
}

.keidai_map_nav14 a {
  padding-top: 108px;
}

.keidai_map_nav14 a:before {
  background-image: url(img/keidai_map_btn14_be.png);
}

.keidai_map_nav14 a:after {
  background-image: url(img/keidai_map_btn14_af.png);
}

.keidai_map_nav15 {
  top: 63.5%;
  left: 39.8%;
  width: 34px;
}

.keidai_map_nav15 a {
  padding-top: 185px;
}

.keidai_map_nav15 a:before {
  background-image: url(img/keidai_map_btn15_be.png);
}

.keidai_map_nav15 a:after {
  background-image: url(img/keidai_map_btn15_af.png);
}

.keidai_map_nav16 {
  top: 59%;
  right: 3.9%;
  width: 34px;
}

.keidai_map_nav16 a {
  padding-top: 109px;
}

.keidai_map_nav16 a:before {
  background-image: url(img/keidai_map_btn16_be.png);
}

.keidai_map_nav16 a:after {
  background-image: url(img/keidai_map_btn16_af.png);
}

.keidai_map_nav17 {
  top: 81.5%;
  left: 45.9%;
  width: 43px;
}

.keidai_map_nav17 a {
  padding-top: 75px;
}

.keidai_map_nav17 a:before {
  opacity: 0;
  background-image: url(img/keidai_map_btn17_be.png);
}

.keidai_map_nav17 a:after {
  background-image: url(img/keidai_map_btn17_af.png);
}

.pc .keidai_map_nav17 a:hover:before {
  opacity: 1.0;
}

.pc .keidai_map_nav17 a:hover:after {
  opacity: 0;
}

.keidai_map_sp {
  display: none;
  width: 100%;
  margin: 60px auto 80px;
}

.keidai_figure {
  position: relative;
  overflow: hidden;
}

.keidai_anchor {
  position: absolute;
  width: 0;
  height: 0;
  top: -100px;
  left: 0;
}

@media screen and (max-width: 900px) {
  .keidai_map_pc {
    background-size: auto 100%;
  }
  .keidai_map_nav {
    padding-top: 75.33%;
  }
  .keidai_map_nav1 {
    top: 23%;
    left: 13.5%;
    width: 7.2%;
  }
  .keidai_map_nav1 a {
    padding-top: 233%;
  }
  .keidai_map_nav2 {
    top: 12.1%;
    left: 20%;
    width: 3.78%;
  }
  .keidai_map_nav2 a {
    padding-top: 295%;
  }
  .keidai_map_nav3 {
    top: 6.5%;
    left: 30%;
    width: 3.78%;
  }
  .keidai_map_nav3 a {
    padding-top: 590%;
  }
  .keidai_map_nav4 {
    top: 10.4%;
    left: 37.4%;
    width: 3.78%;
  }
  .keidai_map_nav4 a {
    padding-top: 410%;
  }
  .keidai_map_nav5 {
    top: 15.4%;
    left: 45.9%;
    width: 3.78%;
  }
  .keidai_map_nav5 a {
    padding-top: 318%;
  }
  .keidai_map_nav6 {
    top: 8.5%;
    left: 61.5%;
    width: 3.78%;
  }
  .keidai_map_nav6 a {
    padding-top: 222%;
  }
  .keidai_map_nav7 {
    top: 25.6%;
    left: 61.2%;
    width: 8%;
  }
  .keidai_map_nav7 a {
    padding-top: 75%;
  }
  .keidai_map_nav8 {
    top: 41.8%;
    left: 64.8%;
    width: 7.44%;
  }
  .keidai_map_nav8 a {
    padding-top: 114%;
  }
  .keidai_map_nav9 {
    top: 38%;
    left: 41.9%;
    width: 3.78%;
  }
  .keidai_map_nav9 a {
    padding-top: 208%;
  }
  .keidai_map_nav10 {
    top: 40%;
    left: 31%;
    width: 7.8%;
  }
  .keidai_map_nav10 a {
    padding-top: 75%;
  }
  .keidai_map_nav11 {
    top: 51.5%;
    left: 11.4%;
    width: 3.78%;
  }
  .keidai_map_nav11 a {
    padding-top: 420%;
  }
  .keidai_map_nav12 {
    top: 62%;
    left: 23.5%;
    width: 3.78%;
  }
  .keidai_map_nav12 a {
    padding-top: 330%;
  }
  .keidai_map_nav13 {
    top: 43.5%;
    left: 55%;
    width: 3.78%;
  }
  .keidai_map_nav13 a {
    padding-top: 340%;
  }
  .keidai_map_nav14 {
    top: 60%;
    left: 33.1%;
    width: 3.78%;
  }
  .keidai_map_nav14 a {
    padding-top: 320%;
  }
  .keidai_map_nav15 {
    top: 63.5%;
    left: 39.8%;
    width: 3.78%;
  }
  .keidai_map_nav15 a {
    padding-top: 550%;
  }
  .keidai_map_nav16 {
    top: 59%;
    right: 3.9%;
    width: 3.78%;
  }
  .keidai_map_nav16 a {
    padding-top: 322%;
  }
  .keidai_map_nav17 {
    top: 81.5%;
    left: 45.9%;
    width: 4.56%;
  }
  .keidai_map_nav17 a {
    padding-top: 182%;
  }
}

@media screen and (max-width: 829px) {
  .keidai_section {
    padding-bottom: 95px;
  }
  .keidai_anchor {
    top: -70px;
  }
}

@media screen and (max-width: 650px) {
  .keidai_map_pc, .keidai_map_anchor {
    display: none;
  }
  .keidai_map_sp {
    display: block;
  }
}

/* kekkon */
.kekkon_section {
  clear: both;
  position: relative;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 115px;
  box-sizing: border-box;
  z-index: 2;
}

.kekkon_section:after {
  position: absolute;
  display: block;
  content: '';
  left: 0;
  z-index: -1;
}

.kekkon_section1 {
  margin-top: -50px;
  padding-top: 100px;
}

.kekkon_section1:after {
  width: 100%;
  height: 520px;
  bottom: -290px;
  background-image: url(img/about_bg1.png);
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: auto 100%;
}

.kekkon_section2:after {
  width: 100%;
  height: 511px;
  right: 0;
  bottom: -270px;
  background-image: url(img/tezukaosamu_bg1.png);
  background-repeat: no-repeat;
  background-position: 100% 0;
  background-size: auto 100%;
}

.kekkon_section .pagetop_btn {
  clear: both;
  margin-top: 45px;
}

.kekkon_ttl1 {
  height: 23px;
}

.kekkon_ttl1 img {
  width: 141px;
}

.kekkon_ttl2 {
  height: 23px;
}

.kekkon_ttl2 img {
  width: 67px;
}

.kekkon_ttl3 {
  height: 23px;
}

.kekkon_ttl3 img {
  width: 178px;
}

.kekkon_figure_ttl {
  padding-top: 38px;
}

.kekkon_figure_ttl .kanji {
  display: block;
  line-height: 1;
}

.kekkon_figure_ttl .yomi {
  font-size: 12px;
}

.kekkon_figure_ttl br {
  display: none;
}

.kekkon_figcaption-no:before {
  position: absolute;
  display: block;
  content: "";
  height: 14px;
  background: url(img/bg_othar.svg);
  background-repeat: no-repeat;
  background-size: 125px 48px;
  top: 16px;
  left: 50%;
}

.kekkon_figcaption-no1:before {
  width: 7px;
  margin-left: -3px;
  background-position: -50px 0;
}

.kekkon_figcaption-no2:before {
  width: 9px;
  margin-left: -4px;
  background-position: -60px 0;
}

.kekkon_figcaption-no3:before {
  width: 9px;
  margin-left: -4px;
  background-position: -72px 0;
}

.kekkon_figcaption-no4:before {
  width: 9px;
  margin-left: -4px;
  background-position: -83px 0;
}

.kekkon_figcaption-no5:before {
  width: 9px;
  margin-left: -4px;
  background-position: -94px 0;
}

.kekkon_figcaption-no6:before {
  width: 9px;
  margin-left: -4px;
  background-position: -104px 0;
}

.kekkon_figcaption-no7:before {
  width: 9px;
  margin-left: -4px;
  background-position: -115px 0;
}

.kekkon_figcaption-no8:before {
  width: 9px;
  margin-left: -4px;
  background-position: -50px -18px;
}

.kekkon_figcaption-no9:before {
  width: 9px;
  margin-left: -4px;
  background-position: -60px -18px;
}

.kekkon_figcaption-no10:before {
  width: 17px;
  margin-left: -8px;
  background-position: -69px -18px;
}

.kekkon_figcaption-no11:before {
  width: 16px;
  margin-left: -8px;
  background-position: -87px -18px;
}

.kekkon_figcaption-no12:before {
  width: 17px;
  margin-left: -8px;
  background-position: -104px -18px;
}

@media screen and (max-width: 829px) {
  .kekkon_section {
    padding-bottom: 95px;
  }
  .kekkon_section4 {
    padding-bottom: 0;
  }
  .kekkon_section1:after {
    margin: 0;
    padding: 0;
    bottom: -125px;
    height: 202px;
  }
  .kekkon_section2:after {
    height: 206px;
    bottom: -170px;
  }
}

.bg_ttl-kekkon {
  display: table-cell;
  width: 175px;
  text-align: center;
  vertical-align: middle;
}

.bg_ttl-kekkon1 img {
  width: 68px;
}

.bg_ttl-kekkon2 img {
  width: 63px;
}

.bg_ttl-kekkon3 img {
  width: 94px;
}

.bg_ttl-kekkon4 img {
  width: 130px;
}

.bg_txt-kekkon {
  display: table-cell;
  padding: 0 30px;
  border-left: 1px solid #da3915;
  vertical-align: middle;
}

@media screen and (max-width: 760px) {
  .kekkon_section .pagetop_btn {
    display: none;
  }
  .bg_ttl-kekkon {
    display: block;
    width: 100%;
  }
  .bg_txt-kekkon {
    display: block;
    width: 100%;
    padding: 25px;
    border-left: none;
    box-sizing: border-box;
  }
}

/* gokitou */
.gokitou_section {
  clear: both;
  position: relative;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 115px;
  box-sizing: border-box;
  z-index: 2;
}

.gokitou_section:after {
  position: absolute;
  display: block;
  content: '';
  left: 0;
  z-index: -1;
}

.gokitou_section1 {
  margin-top: -50px;
  padding-top: 100px;
}

.gokitou_section1:after {
  width: 100%;
  height: 520px;
  bottom: -210px;
  background-image: url(img/about_bg1.png);
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: auto 100%;
}

.gokitou_section1 .border_contents {
  margin: 55px auto 51px;
}

.gokitou_section2:after {
  width: 100%;
  max-width: 1440px;
  height: 406px;
  left: auto;
  right: 0;
  bottom: -130px;
  background-image: url(img/about_bg2.png);
  background-repeat: no-repeat;
  background-position: 100% 0;
  background-size: auto 100%;
}

.gokitou_section2 .border_contents {
  margin: 25px auto 45px;
}

.gokitou_section3:after {
  width: 100%;
  max-width: 1440px;
  height: 500px;
  left: 0;
  bottom: -270px;
  background-image: url(img/tezukaosamu_bg2.png);
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: auto 100%;
}

.gokitou_section3 .bg-white {
  margin: 20px auto 0;
}

.gokitou_section3 .border_contents {
  margin: 35px auto 60px;
}

.gokitou_section3 .disc {
  margin-bottom: 1em;
}

.gokitou_section3 .disc:last-child {
  margin: 0;
}

.gokitou_section4 .border_contents {
  margin: 25px auto 50px;
}

.gokitou_section4 .border_contents p:first-child {
  margin: 0 0 1em;
}

.gokitou_section .pagetop_btn {
  clear: both;
  margin-top: 45px;
}

.gokitou_ttl1 {
  height: 23px;
}

.gokitou_ttl1 img {
  width: 162px;
}

.gokitou_ttl1-1 {
  position: absolute;
  width: 110px;
  margin: 0;
  border-right: 1px solid #da3915;
  border-left: 1px solid #da3915;
  text-align: center;
  top: 12px;
  right: 0;
}

.gokitou_ttl1-1 .pc {
  width: 89px;
}

.gokitou_ttl1-1 .sp {
  display: none;
  width: 15px;
}

.gokitou_ttl2 {
  height: 23px;
}

.gokitou_ttl2 img {
  width: 212px;
}

.gokitou_ttl2-1 {
  position: absolute;
  width: 35px;
  height: 318px;
  margin: 0;
  border-right: 1px solid #da3915;
  border-left: 1px solid #da3915;
  text-align: center;
  top: 0;
  right: 0;
}

.gokitou_ttl2-1 img {
  width: 16px;
}

.gokitou_ttl2-2 {
  position: absolute;
  width: 35px;
  height: 318px;
  margin: 0;
  border-right: 1px solid #da3915;
  border-left: 1px solid #da3915;
  text-align: center;
  top: 0;
  right: 0;
}

.gokitou_ttl2-2 img {
  width: 15px;
}

.gokitou_ttl2-3 {
  position: absolute;
  width: 35px;
  height: 318px;
  margin: 0;
  border-right: 1px solid #da3915;
  border-left: 1px solid #da3915;
  text-align: center;
  top: 0;
  right: 0;
}

.gokitou_ttl2-3 img {
  width: 15px;
}

.gokitou_ttl3 {
  height: 23px;
}

.gokitou_ttl3 img {
  width: 205px;
}

.gokitou_ttl3-1 {
  position: absolute;
  width: 35px;
  height: 288px;
  margin: 0;
  border-right: 1px solid #da3915;
  border-left: 1px solid #da3915;
  text-align: center;
  top: 0;
  right: 0;
}

.gokitou_ttl3-1 .pc {
  width: 14px;
}

.gokitou_ttl3-1 .sp {
  display: none;
  width: 41px;
}

.gokitou_ttl3-2 {
  position: absolute;
  width: 35px;
  height: 288px;
  margin: 0;
  border-right: 1px solid #da3915;
  border-left: 1px solid #da3915;
  text-align: center;
  top: 0;
  right: 0;
}

.gokitou_ttl3-2 img {
  width: 14px;
}

.gokitou_ttl3-3 {
  position: absolute;
  width: 63px;
  height: 288px;
  margin: 0;
  border-right: 1px solid #da3915;
  border-left: 1px solid #da3915;
  text-align: center;
  top: 0;
  right: 0;
}

.gokitou_ttl3-3 img {
  width: 38px;
}

.gokitou_ttl4 {
  height: 24px;
}

.gokitou_ttl4 img {
  width: 137px;
}

.gokitou_sub_ttl {
  margin: 0 0 20px;
  padding: 15px 0;
  text-align: center;
  border-bottom: 1px solid #da3915;
}

.gokitou_sub_ttl1 img {
  height: 20px;
}

.gokitou_sub_ttl2 img {
  height: 20px;
}

.gokitou_sub_ttl3 img {
  height: 20px;
}

.gokitou_outer {
  padding: 0 30px;
}

.gokitou_outer p {
  margin: 0 0 1em;
}

.gokitou_outer p + p {
  margin: 0;
}

.gokitou_outer2 {
  padding: 0 30px 35px;
}

.gokitou_outer3 {
  padding: 0 30px 30px;
}

.gokitou_inner {
  position: relative;
  width: 100%;
  max-width: 512px;
  margin: 0 auto;
}

.gokitou_inner2 {
  position: relative;
  max-width: 618px;
  margin: 0 auto;
  padding: 0 0 50px;
  overflow: hidden;
}

.gokitou_inner2-1 {
  position: relative;
  float: right;
  width: 176px;
  margin-left: 50px;
}

.gokitou_inner2-2 {
  position: relative;
  float: right;
  width: 171px;
  margin-left: 50px;
}

.gokitou_inner2-3 {
  position: relative;
  float: right;
  width: 171px;
}

.gokitou_inner3 {
  position: relative;
  max-width: 605px;
  height: 288px;
  margin: 0 auto;
  padding: 0 0 10px;
  overflow: hidden;
}

.gokitou_inner3-1 {
  position: relative;
  float: right;
  width: 131px;
  margin-left: 50px;
}

.gokitou_inner3-2 {
  position: relative;
  float: right;
  width: 171px;
  margin-left: 50px;
}

.gokitou_inner3-3 {
  position: relative;
  float: right;
  width: 201px;
}

.gokitou_list1-1 {
  position: relative;
  margin-right: 112px;
  width: 400px;
  height: 148px;
}

.gokitou_list1-1 li {
  position: absolute;
}

.gokitou_list1-1 li img {
  width: auto;
}

.gokitou_list1-1-1 {
  width: 21px;
  top: 12px;
  right: 32px;
}

.gokitou_list1-1-1 img {
  width: 21px;
  height: 87px;
}

.gokitou_list1-1-2 {
  width: 19px;
  top: 12px;
  right: 75px;
}

.gokitou_list1-1-2 img {
  width: 19px;
  height: 64px;
}

.gokitou_list1-1-3 {
  width: 21px;
  top: 12px;
  right: 118px;
}

.gokitou_list1-1-3 img {
  width: 21px;
  height: 66px;
}

.gokitou_list1-1-4 {
  width: 21px;
  top: 12px;
  right: 162px;
}

.gokitou_list1-1-4 img {
  width: 21px;
  height: 86px;
}

.gokitou_list1-1-5 {
  width: 20px;
  top: 12px;
  right: 208px;
}

.gokitou_list1-1-5 img {
  width: 20px;
  height: 65px;
}

.gokitou_list1-1-6 {
  width: 21px;
  top: 12px;
  right: 250px;
}

.gokitou_list1-1-6 img {
  width: 21px;
  height: 88px;
}

.gokitou_list1-1-7 {
  width: 20px;
  top: 12px;
  right: 294px;
}

.gokitou_list1-1-7 img {
  width: 20px;
  height: 65px;
}

.gokitou_list1-1-8 {
  width: 21px;
  top: 12px;
  right: 338px;
}

.gokitou_list1-1-8 img {
  width: 21px;
  height: 88px;
}

.gokitou_list1-1-9 {
  width: 20px;
  top: 12px;
  right: 383px;
}

.gokitou_list1-1-9 img {
  width: 20px;
  height: 88px;
}

.gokitou_list2-1 {
  position: relative;
  width: 109px;
  height: 338px;
}

.gokitou_list2-1 li {
  position: absolute;
  height: 110px;
}

.gokitou_list2-1 li img {
  width: auto;
}

.gokitou_list2-1-1 {
  top: 0;
  right: 0px;
}

.gokitou_list2-1-1 img {
  height: 86px;
}

.gokitou_list2-1-2 {
  top: 115px;
  right: 0;
}

.gokitou_list2-1-2 img {
  height: 86px;
}

.gokitou_list2-1-3 {
  top: 229px;
  right: 0;
}

.gokitou_list2-1-3 img {
  height: 86px;
}

.gokitou_list2-1-4 {
  top: 0;
  right: 44px;
}

.gokitou_list2-1-4 img {
  height: 86px;
}

.gokitou_list2-1-5 {
  top: 115px;
  right: 44px;
}

.gokitou_list2-1-5 img {
  height: 85px;
}

.gokitou_list2-1-6 {
  top: 230px;
  right: 44px;
}

.gokitou_list2-1-6 img {
  height: 85px;
}

.gokitou_list2-1-7 {
  top: 4px;
  right: 88px;
}

.gokitou_list2-1-7 img {
  height: 82px;
}

.gokitou_list2-1-8 {
  top: 115px;
  right: 88px;
}

.gokitou_list2-1-8 img {
  height: 86px;
}

.gokitou_list2-2 {
  position: relative;
  width: 109px;
  height: 338px;
}

.gokitou_list2-2 li {
  position: absolute;
  height: 110px;
}

.gokitou_list2-2 li img {
  width: auto;
}

.gokitou_list2-2-1 {
  height: 187px;
  top: 0;
  right: 0px;
}

.gokitou_list2-2-1 img {
  height: 187px;
}

.gokitou_list2-2-2 {
  top: 0;
  right: 44px;
}

.gokitou_list2-2-2 img {
  height: 63px;
}

.gokitou_list2-2-3 {
  top: 117px;
  right: 44px;
}

.gokitou_list2-2-3 img {
  height: 61px;
}

.gokitou_list2-2-4 {
  top: 229px;
  right: 44px;
}

.gokitou_list2-2-4 img {
  height: 86px;
}

.gokitou_list2-2-5 {
  top: 0;
  right: 88px;
}

.gokitou_list2-2-5 img {
  height: 85px;
}

.gokitou_list2-2-6 {
  top: 115px;
  right: 88px;
}

.gokitou_list2-2-6 img {
  height: 85px;
}

.gokitou_list2-3 {
  position: relative;
  width: 109px;
  height: 338px;
}

.gokitou_list2-3 li {
  position: absolute;
  height: 110px;
}

.gokitou_list2-3 li img {
  width: auto;
}

.gokitou_list2-3-1 {
  top: 0;
  right: 0px;
}

.gokitou_list2-3-1 img {
  height: 87px;
}

.gokitou_list2-3-2 {
  top: 115px;
  right: 0;
}

.gokitou_list2-3-2 img {
  height: 86px;
}

.gokitou_list2-3-3 {
  top: 230px;
  right: 0;
}

.gokitou_list2-3-3 img {
  height: 87px;
}

.gokitou_list2-3-4 {
  top: 0;
  right: 44px;
}

.gokitou_list2-3-4 img {
  height: 86px;
}

.gokitou_list2-3-5 {
  top: 115px;
  right: 44px;
}

.gokitou_list2-3-5 img {
  height: 85px;
}

.gokitou_list2-3-6 {
  top: 230px;
  right: 44px;
}

.gokitou_list2-3-6 img {
  height: 87px;
}

.gokitou_list2-3-7 {
  top: 0;
  right: 88px;
}

.gokitou_list2-3-7 img {
  height: 85px;
}

.gokitou_list2-3-8 {
  top: 115px;
  right: 88px;
}

.gokitou_list2-3-8 img {
  height: 86px;
}

.gokitou_list2-3-9 {
  top: 230px;
  right: 88px;
}

.gokitou_list2-3-9 img {
  height: 86px;
}

.gokitou_list3-1 {
  position: relative;
  width: 100%;
  height: 130px;
}

.gokitou_list3-1 li {
  position: absolute;
}

.gokitou_list3-1 li img {
  width: auto;
}

.gokitou_list3-1-1 {
  width: 21px;
  top: 0;
  right: 67px;
}

.gokitou_list3-1-1 img {
  height: 64px;
}

.gokitou_list3-1-2 {
  width: 21px;
  top: 131px;
  right: 67px;
}

.gokitou_list3-1-2 img {
  height: 146px;
}

.gokitou_list3-1-3 {
  width: 20px;
  top: 0;
  right: 112px;
}

.gokitou_list3-1-3 img {
  height: 64px;
}

.gokitou_list3-2 {
  position: relative;
  width: 100%;
  height: 130px;
}

.gokitou_list3-2 li {
  position: absolute;
}

.gokitou_list3-2 li img {
  width: auto;
}

.gokitou_list3-2-1 {
  width: 20px;
  top: 0;
  right: 67px;
}

.gokitou_list3-2-1 img {
  height: 85px;
}

.gokitou_list3-2-2 {
  width: 20px;
  top: 131px;
  right: 67px;
}

.gokitou_list3-2-2 img {
  height: 64px;
}

.gokitou_list3-2-3 {
  width: 19px;
  top: 0;
  right: 111px;
}

.gokitou_list3-2-3 img {
  height: 63px;
}

.gokitou_list3-2-4 {
  width: 21px;
  top: 131px;
  right: 111px;
}

.gokitou_list3-2-4 img {
  height: 85px;
}

.gokitou_list3-2-5 {
  width: 21px;
  top: 0;
  right: 151px;
}

.gokitou_list3-2-5 img {
  height: 110px;
}

.gokitou_list3-2-6 {
  width: 21px;
  top: 131px;
  right: 151px;
}

.gokitou_list3-2-6 img {
  height: 109px;
}

.gokitou_list3-3 {
  position: relative;
  width: 100%;
  height: 130px;
}

.gokitou_list3-3 li {
  position: absolute;
}

.gokitou_list3-3 li img {
  width: auto;
}

.gokitou_list3-3-1 {
  width: 21px;
  top: 0;
  right: 95px;
}

.gokitou_list3-3-1 img {
  height: 85px;
}

.gokitou_list3-3-2 {
  width: 21px;
  top: 131px;
  right: 95px;
}

.gokitou_list3-3-2 img {
  height: 85px;
}

.gokitou_list3-3-3 {
  width: 21px;
  top: 0;
  right: 137px;
}

.gokitou_list3-3-3 img {
  height: 64px;
}

.gokitou_list3-3-4 {
  width: 20px;
  top: 131px;
  right: 137px;
}

.gokitou_list3-3-4 img {
  height: 109px;
}

.gokitou_list3-3-5 {
  width: 21px;
  top: 0;
  right: 178px;
}

.gokitou_list3-3-5 img {
  height: 110px;
}

.gokitou_flow {
  overflow: hidden;
  list-style: none;
  margin: 0;
  padding: 10px 0 10px;
}

.gokitou_flow li {
  position: relative;
  float: left;
  width: 100%;
  max-width: 117px;
  height: 133px;
  margin-left: 44px;
  border: 1px solid #595757;
  text-align: center;
}

.gokitou_flow li:first-child {
  margin: 0;
}

.gokitou_flow li:last-child:after {
  display: none;
}

.gokitou_flow li:after {
  position: absolute;
  display: block;
  content: "";
  width: 18px;
  height: 19px;
  background: url(img/bg_othar.svg) -28px -27px no-repeat;
  background-size: 125px 48px;
  top: 50%;
  right: -33px;
  margin-top: -10px;
}

.gokitou_flow .sp {
  display: none;
}

.gokitou_flow_img1 .pc {
  display: inline-block;
  padding-top: 48px;
}

.gokitou_flow_img1 .pc img {
  width: auto;
  height: 35px;
}

.gokitou_flow_img2 .pc {
  display: inline-block;
  padding-top: 35px;
}

.gokitou_flow_img2 .pc img {
  width: 34px;
  height: 63px;
}

.gokitou_flow_img3 .pc {
  display: inline-block;
  padding-top: 35px;
}

.gokitou_flow_img3 .pc img {
  width: 33px;
  height: 63px;
}

.gokitou_flow_img4 .pc {
  display: inline-block;
  padding-top: 35px;
}

.gokitou_flow_img4 .pc img {
  width: 54px;
  height: 69px;
}

.gokitou_flow_txt {
  overflow: hidden;
  list-style: none;
  margin: 10px 0;
  padding: 0;
}

.gokitou_flow_txt li {
  position: relative;
  margin: 0 0 40px;
  padding: 10px 15px;
  border: 1px solid #595757;
}

.gokitou_flow_txt li:after {
  position: absolute;
  display: block;
  content: "";
  width: 19px;
  height: 18px;
  background: url(img/bg_othar.svg) -28px -1px no-repeat;
  background-size: 125px 48px;
  bottom: -28px;
  left: 50%;
  margin-left: -10px;
}

.gokitou_flow_txt li:last-child {
  margin: 0;
}

.gokitou_flow_txt li:last-child:after {
  display: none;
}

@media screen and (max-width: 829px) {
  .gokitou_section {
    padding-bottom: 95px;
  }
  .gokitou_section1:after {
    margin: 0;
    padding: 0;
    bottom: -125px;
    height: 202px;
  }
  .gokitou_section2:after {
    height: 172px;
    bottom: -80px;
  }
  .gokitou_section3:after {
    height: 175px;
    bottom: -80px;
  }
  .gokitou_section4 {
    padding-bottom: 0;
  }
  .gokitou_section .pagetop_btn {
    display: none;
  }
  .gokitou_outer {
    padding: 0 20px;
  }
  .gokitou_outer2 {
    padding: 0 20px 35px;
  }
  .gokitou_outer3 {
    padding: 0 20px 30px;
  }
  .gokitou_flow {
    padding: 10px 0 10px;
  }
  .gokitou_flow li {
    position: relative;
    float: none;
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0 0 38px;
    padding: 10px 0;
    border: 1px solid #595757;
    text-align: center;
    box-sizing: border-box;
  }
  .gokitou_flow li:first-child {
    margin: 0 0 38px;
  }
  .gokitou_flow li:last-child {
    margin: 0;
  }
  .gokitou_flow li:last-child:after {
    display: none;
  }
  .gokitou_flow li:after {
    position: absolute;
    display: block;
    content: "";
    width: 19px;
    height: 18px;
    background: url(img/bg_othar.svg) -28px -1px no-repeat;
    background-size: 125px 48px;
    bottom: -28px;
    left: 50%;
    margin-left: -10px;
    top: auto;
    right: auto;
    margin-top: 0;
  }
  .gokitou_flow .pc {
    display: none;
  }
  .gokitou_flow .sp {
    display: block;
  }
  .gokitou_flow_img1 .pc {
    display: none;
  }
  .gokitou_flow_img2 .pc {
    display: none;
  }
  .gokitou_flow_img3 .pc {
    display: none;
  }
  .gokitou_flow_img4 .pc {
    display: none;
  }
  .gokitou_flow_txt {
    overflow: hidden;
    list-style: none;
    margin: 10px 0;
    padding: 0;
  }
  .gokitou_flow_txt li {
    position: relative;
    margin: 0 0 40px;
    padding: 10px 15px;
    border: 1px solid #595757;
  }
  .gokitou_flow_txt li:after {
    position: absolute;
    display: block;
    content: "";
    width: 19px;
    height: 18px;
    background: url(img/bg_othar.svg) -28px -1px no-repeat;
    background-size: 125px 48px;
    bottom: -28px;
    left: 50%;
    margin-left: -10px;
  }
  .gokitou_flow_txt li:last-child {
    margin: 0;
  }
  .gokitou_flow_txt li:last-child:after {
    display: none;
  }
}

@media screen and (max-width: 760px) {
  .gokitou_section .pagetop_btn {
    display: none;
  }
}

@media screen and (max-width: 660px) {
  .gokitou_ttl1-1 {
    width: 35px;
    height: 318px;
    top: 0;
    right: 0;
    text-align: center;
  }
  .gokitou_ttl1-1 .pc {
    display: none;
  }
  .gokitou_ttl1-1 .sp {
    display: inline-block;
  }
  .gokitou_ttl3-1 {
    width: 62px;
    height: 146px;
  }
  .gokitou_ttl3-1 .pc {
    display: none;
  }
  .gokitou_ttl3-1 .sp {
    display: inline-block;
  }
  .gokitou_ttl3-2 {
    height: 257px;
  }
  .gokitou_ttl3-3 {
    height: 245px;
  }
  .gokitou_outer {
    padding: 0 20px;
  }
  .gokitou_outer p {
    margin: 0 0 1em;
  }
  .gokitou_outer p + p {
    margin: 0;
  }
  .gokitou_outer2 {
    padding: 0 20px 20px;
  }
  .gokitou_outer3 {
    padding: 0 20px 20px;
  }
  .gokitou_inner {
    max-width: 176px;
  }
  .gokitou_inner2 {
    max-width: 100%;
    padding: 0;
    overflow: hidden;
  }
  .gokitou_inner2-1 {
    position: relative;
    float: none;
    width: 176px;
    margin: 0 auto 30px;
  }
  .gokitou_inner2-1:after {
    position: absolute;
    display: block;
    content: "";
    left: -200%;
    right: -200%;
    bottom: 0;
    border-bottom: 1px solid #da3915;
  }
  .gokitou_inner2-2 {
    position: relative;
    float: none;
    width: 176px;
    margin: 0 auto 30px;
  }
  .gokitou_inner2-2:after {
    position: absolute;
    display: block;
    content: "";
    left: -200%;
    right: -200%;
    bottom: 0;
    border-bottom: 1px solid #da3915;
  }
  .gokitou_inner2-3 {
    position: relative;
    float: none;
    width: 176px;
    margin: 0 auto 20px;
  }
  .gokitou_inner2-3:after {
    position: absolute;
    display: block;
    content: "";
    left: -200%;
    right: -200%;
    bottom: 0;
    border-bottom: 1px solid #da3915;
  }
  .gokitou_inner3 {
    position: relative;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0 0 10px;
    overflow: hidden;
  }
  .gokitou_inner3-1 {
    position: relative;
    float: none;
    width: 200px;
    height: 176px;
    margin: 0 auto 30px;
  }
  .gokitou_inner3-1:after {
    position: absolute;
    display: block;
    content: "";
    left: -200%;
    right: -200%;
    bottom: 0;
    border-bottom: 1px solid #da3915;
  }
  .gokitou_inner3-2 {
    position: relative;
    float: none;
    width: 176px;
    height: 290px;
    margin: 0 auto 30px;
  }
  .gokitou_inner3-2:after {
    position: absolute;
    display: block;
    content: "";
    left: -200%;
    right: -200%;
    bottom: 0;
    border-bottom: 1px solid #da3915;
  }
  .gokitou_inner3-3 {
    position: relative;
    float: none;
    width: 200px;
    height: 246px;
    margin: 0 auto;
  }
  .gokitou_list1-1 {
    position: relative;
    margin: 0 auto;
    width: 176px;
    height: 338px;
  }
  .gokitou_list1-1-1 {
    top: 0;
    right: 65px;
  }
  .gokitou_list1-1-2 {
    top: 115px;
    right: 65px;
  }
  .gokitou_list1-1-3 {
    top: 229px;
    right: 65px;
  }
  .gokitou_list1-1-4 {
    top: 0;
    right: 111px;
  }
  .gokitou_list1-1-5 {
    top: 115px;
    right: 111px;
  }
  .gokitou_list1-1-6 {
    top: 229px;
    right: 111px;
  }
  .gokitou_list1-1-7 {
    top: 0;
    right: 156px;
  }
  .gokitou_list1-1-8 {
    top: 115px;
    right: 156px;
  }
  .gokitou_list1-1-9 {
    top: 229px;
    right: 156px;
  }
  .gokitou_list3-1-1 {
    top: 0;
    right: 95px;
  }
  .gokitou_list3-1-2 {
    top: 0;
    right: 137px;
  }
  .gokitou_list3-1-3 {
    top: 0;
    right: 178px;
  }
}

@page {
  size: A4;
  margin: 0 !important;
}

@media print {
  html {
    width: 100% !important;
    height: auto !important;
  }
  body {
    width: 1200px;
    height: auto !important;
    margin: 0 auto !important;
    padding: 0 !important;
    -webkit-transform: scale(0.9);
    -moz-transform: scale(0.9);
    -ms-transform: scale(0.9);
    transform: scale(0.9);
    transform-origin: 0 0;
  }
  h1, h2, h3, h4, h5, h6 {
    page-break-after: avoid;
  }
  p, h2, h3, h4, h5, h6 {
    orphans: 3;
    widows: 3;
  }
  #container {
    width: 100%;
    padding: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  #footer {
    position: static !important;
  }
  #sp_menu_area {
    display: none !important;
  }
}
