@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Zen+Old+Mincho:wght@500;600&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Zen+Old+Mincho:wght@500;600&display=swap");
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
  display: block;
}

audio[controls],
canvas,
video {
  display: inline-block;
  *display: inline;
  zoom: 1;
}

html {
  font-size: 100%; /* 1 */
  overflow-y: scroll; /* 2 */
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); /* 3 */
  -webkit-text-size-adjust: 100%; /* 4 */
  -ms-text-size-adjust: 100%; /* 4 */
}

body {
  margin: 0;
}

body,
button,
input,
select,
textarea {
  font-family: sans-serif;
}

a:focus {
  outline: thin dotted;
}

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

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

b,
strong {
  font-weight: bold;
}

blockquote {
  margin: 1em 40px;
}

dfn {
  font-style: italic;
}

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

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

pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
}

q {
  quotes: none;
}

q:before,
q:after {
  content: "";
  content: none;
}

small {
  font-size: 75%;
}

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

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

ul,
ol {
  margin: 1em 0;
  padding: 0 0 0 40px;
}

dd {
  margin: 0 0 0 40px;
}

nav ul,
nav ol {
  /*list-style: none;*/
}

img {
  border: 0; /* 1 */
  -ms-interpolation-mode: bicubic; /* 2 */
}

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

figure {
  margin: 0;
}

form {
  margin: 0;
}

fieldset {
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0; /* 1 */
  *margin-left: -7px; /* 2 */
}

button,
input,
select,
textarea {
  font-size: 100%; /* 1 */
  margin: 0; /* 2 */
  vertical-align: baseline; /* 3 */
  *vertical-align: middle; /* 3 */
}

button,
input {
  line-height: normal; /* 1 */
  *overflow: visible; /* 2 */
}

button,
input[type=button],
input[type=reset],
input[type=submit] {
  cursor: pointer; /* 1 */
  -webkit-appearance: button; /* 2 */
}

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

input[type=search] {
  -webkit-appearance: textfield; /* 1 */
  -webkit-box-sizing: content-box; /* 2 */
  box-sizing: content-box;
}

input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

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

textarea {
  overflow: auto; /* 1 */
  vertical-align: top; /* 2 */
}

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

html, body {
  width: 100%;
  height: 100%;
}

body {
  margin: 0px;
  padding: 0px;
  font-family: "Zen Old Mincho", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "メイリオ", "Meiryo", sans-serif;
  font-size: 16px;
  text-align: left;
  font-weight: 500;
  font-style: normal;
  background: rgba(193, 176, 121, 0.1);
}
@media screen and (max-width: 1320px) {
  body {
    font-size: 1.21vw;
  }
}
@media screen and (max-width: 750px) {
  body {
    font-size: 3.73vw;
  }
}

h1, h2, h3, h4, h5, h6 {
  margin: 0px;
  padding: 0px;
  color: #000;
  font-size: 20px;
  line-height: 1.6em;
  letter-spacing: 0.02em;
  font-weight: 600;
}
@media screen and (max-width: 1320px) {
  h1, h2, h3, h4, h5, h6 {
    font-size: 1.52vw;
  }
}
@media screen and (max-width: 750px) {
  h1, h2, h3, h4, h5, h6 {
    font-size: 4.8vw;
  }
}

hr {
  display: none;
}

ul {
  margin: 0;
  padding: 0;
}
ul li {
  margin: 0;
  padding: 0;
}

p, li, dt, dd, th, td, figcaption, time, address {
  margin: 0px;
  padding: 0px;
  font-size: 16px;
  line-height: 2em;
  letter-spacing: 0.02em;
  color: #000;
  font-weight: 500;
}
@media screen and (max-width: 1320px) {
  p, li, dt, dd, th, td, figcaption, time, address {
    font-size: 1.21vw;
  }
}
@media screen and (max-width: 750px) {
  p, li, dt, dd, th, td, figcaption, time, address {
    font-size: 3.73vw;
  }
}

th p, td p {
  font-size: 100%;
}

p {
  margin-bottom: 2em;
}

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

a.outline:focus {
  outline: 1px dotted;
}

a:focus {
  outline: none;
}

a:hover {
  text-decoration: none;
}

a img {
  margin: 0px;
  padding: 0px;
  border: none;
}

ol li p,
ul li p,
ol li table tr th,
ol li table tr td,
table tr td p,
table tr td ol li,
table tr td ul li,
table tr td ol li p,
table tr td ul li p {
  font-size: 100%;
}

ol.lmnone,
ul.lmnone {
  margin: 0;
  padding: 0;
  list-style: none;
}

ol.fllist li,
ul.fllist li {
  float: left;
  list-style: none;
}

/* dl table */
dl.table1 dt,
dl.table2 dt {
  margin: 0;
  margin-right: -110px;
  float: left;
  clear: both;
  display: inline;
  width: 110px;
}

dl.table1 dd {
  margin-left: 110px;
}

dl.table1 {
  /*\*/
  min-height: 1px;
  _height: 1%;
  /* */
  /*\*/ /*/
overflow: hidden;
/**/
}

dl.table1::after {
  height: 0;
  visibility: hidden;
  content: ".";
  display: block;
  clear: both;
}

dl.table2 dt {
  width: 120px;
  margin-right: -120px;
}

dl.table2 dd {
  margin-left: 120px;
}

form {
  margin: 0;
  padding: 0;
}

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

.cf:after {
  clear: both;
}

.cf {
  zoom: 1;
}

#layout {
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
}

.dwrap {
  position: relative;
  clear: both;
}

.dleft {
  float: left;
}

.dright {
  float: right;
}

/* スペースの調整用 */
.pt-15 {
  padding-top: -15px;
}

.pt0 {
  padding-top: 0;
}

.pt1em {
  padding-top: 1em;
}

.pt2em {
  padding-top: 2em;
}

.pt3em {
  padding-top: 3em;
}

.pt5 {
  padding-top: 5px;
}

.pt10 {
  padding-top: 10px;
}

.pt15 {
  padding-top: 15px;
}

.pt20 {
  padding-top: 20px;
}

.pt25 {
  padding-top: 25px;
}

.pt30 {
  padding-top: 30px;
}

.pt35 {
  padding-top: 35px;
}

.pt40 {
  padding-top: 40px;
}

.pt45 {
  padding-top: 45px;
}

.pt50 {
  padding-top: 50px;
}

.pt55 {
  padding-top: 55px;
}

.pt60 {
  padding-top: 60px;
}

.pt65 {
  padding-top: 65px;
}

.pt70 {
  padding-top: 70px;
}

.pt75 {
  padding-top: 75px;
}

.pt80 {
  padding-top: 80px;
}

.pt85 {
  padding-top: 85px;
}

.pt124 {
  padding-top: 124px;
}

.pb0 {
  padding-bottom: 0 !important;
}

.pb1em {
  padding-bottom: 1em;
}

.pb2em {
  padding-bottom: 2em;
}

.pb3em {
  padding-bottom: 3em;
}

.pb4em {
  padding-bottom: 4em;
}

.pb5em {
  padding-bottom: 5em;
}

.pb6em {
  padding-bottom: 6em;
}

.pb5 {
  padding-bottom: 5px;
}

.pb10 {
  padding-bottom: 10px;
}

.pb15 {
  padding-bottom: 15px;
}

.pb20 {
  padding-bottom: 20px;
}

.pb25 {
  padding-bottom: 25px;
}

.pb30 {
  padding-bottom: 30px;
}

.pb35 {
  padding-bottom: 35px;
}

.pb40 {
  padding-bottom: 40px;
}

.pb45 {
  padding-bottom: 45px;
}

.pb50 {
  padding-bottom: 50px;
}

.pb55 {
  padding-bottom: 55px;
}

.pb60 {
  padding-bottom: 60px;
}

.pb65 {
  padding-bottom: 65px;
}

.pb70 {
  padding-bottom: 70px;
}

.pb75 {
  padding-bottom: 75px;
}

.pb80 {
  padding-bottom: 80px;
}

.pb85 {
  padding-bottom: 85px;
}

.pb120 {
  padding-bottom: 120px;
}

.mt0 {
  margin-top: 0;
}

.mt1em {
  margin-top: 1em;
}

.mt2em {
  margin-top: 2em;
}

.mt3em {
  margin-top: 3em;
}

.mt4em {
  margin-top: 4em;
}

.mt5em {
  margin-top: 5em;
}

.mt6em {
  margin-top: 6em;
}

.mt7em {
  margin-top: 7em;
}

.mt8em {
  margin-top: 8em;
}

.mt9em {
  margin-top: 9em;
}

.mt5 {
  margin-top: 5px;
}

.mt10 {
  margin-top: 10px;
}

.mt15 {
  margin-top: 15px;
}

.mt20 {
  margin-top: 20px;
}

.mt25 {
  margin-top: 25px;
}

.mt30 {
  margin-top: 30px;
}

.mt35 {
  margin-top: 35px;
}

.mt40 {
  margin-top: 40px;
}

.mt45 {
  margin-top: 45px;
}

.mt50 {
  margin-top: 50px;
}

.mt55 {
  margin-top: 55px;
}

.mt60 {
  margin-top: 60px;
}

.mt65 {
  margin-top: 65px;
}

.mt70 {
  margin-top: 70px;
}

.mt75 {
  margin-top: 75px;
}

.mt80 {
  margin-top: 80px;
}

.mt85 {
  margin-top: 85px;
}

.mt120 {
  margin-top: 120px !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

.mb1em {
  margin-bottom: 1em;
}

.mb2em {
  margin-bottom: 2em;
}

.mb3em {
  margin-bottom: 3em;
}

.mb4em {
  margin-bottom: 4em;
}

.mb5em {
  margin-bottom: 5em;
}

.mb6em {
  margin-bottom: 6em;
}

.mb7em {
  margin-bottom: 7em;
}

.mb8em {
  margin-bottom: 8em;
}

.mb9em {
  margin-bottom: 9em;
}

.mb7 {
  margin-bottom: 7px;
}

.mb5 {
  margin-bottom: 5px;
}

.mb10 {
  margin-bottom: 10px;
}

.mb15 {
  margin-bottom: 15px;
}

.mb20 {
  margin-bottom: 20px;
}

.mb25 {
  margin-bottom: 25px;
}

.mb30 {
  margin-bottom: 30px;
}

.mb35 {
  margin-bottom: 35px;
}

.mb40 {
  margin-bottom: 40px;
}

.mb45 {
  margin-bottom: 45px;
}

.mb50 {
  margin-bottom: 50px;
}

.mb55 {
  margin-bottom: 55px;
}

.mb60 {
  margin-bottom: 60px;
}

.mb65 {
  margin-bottom: 65px;
}

.mb70 {
  margin-bottom: 70px;
}

.mb75 {
  margin-bottom: 75px;
}

.mb80 {
  margin-bottom: 80px;
}

.mb85 {
  margin-bottom: 85px;
}

.mb90 {
  margin-bottom: 90px;
}

.mb95 {
  margin-bottom: 95px;
}

.mb120 {
  margin-bottom: 120px;
}

.pl1em {
  padding-left: 1em;
}

.ml1em {
  margin-left: 1em;
}

.rp0 {
  padding-right: 0;
}

.rm0 {
  margin-right: 0;
}

.pr10 {
  padding-right: 10px;
}

.pr20 {
  padding-right: 20px;
}

.pr35 {
  padding-right: 35px;
}

.pr50 {
  padding-right: 50px;
}

.pl15 {
  padding-left: 15px;
}

.pl20 {
  padding-left: 20px;
}

.pl25 {
  padding-left: 25px;
}

.pl30 {
  padding-left: 30px;
}

.pl340 {
  padding-left: 340px;
}

.bb5 {
  border-bottom: 5px solid #78BE00;
}

.bt5 {
  border-top: 5px solid #78BE00;
  padding-top: 70px;
}

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

.f12 {
  font-size: 12px !important;
}

.red {
  color: red;
}

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

.text-rightb {
  font-weight: bold;
  text-align: right;
}

.tcenter {
  text-align: center;
}

body {
  _zoom: 0.7;
}

img {
  max-width: 100%;
  height: auto;
}

.pcv {
  display: block;
}
@media screen and (max-width: 750px) {
  .pcv {
    display: none;
  }
}

.pcv1160 {
  display: block;
}
@media screen and (max-width: 1320px) {
  .pcv1160 {
    display: none;
  }
}

.pcvin {
  display: inline-block;
}
@media screen and (max-width: 750px) {
  .pcvin {
    display: none;
  }
}

.spv {
  display: none;
}
@media screen and (max-width: 750px) {
  .spv {
    display: block;
  }
}

.detail img {
  max-width: 100%;
  height: auto;
}

.inview.fade {
  opacity: 0;
  -webkit-transform: translate(0, 30px);
          transform: translate(0, 30px);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.inview.fade.show {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

.inview.fade2 {
  opacity: 0;
  -webkit-transform: translate(0, 30px);
          transform: translate(0, 30px);
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.inview.fade2.show {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}

.inview.fade3 {
  opacity: 0;
  -webkit-transform: translate(0, 30px);
          transform: translate(0, 30px);
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.inview.fade3.show {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  -webkit-transition-delay: 0.7s;
          transition-delay: 0.7s;
}

.inview.left {
  opacity: 0;
  -webkit-transform: translateX(-30px);
          transform: translateX(-30px);
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.inview.left.show {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}

.inview.right {
  opacity: 0;
  -webkit-transform: translateX(30px);
          transform: translateX(30px);
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.inview.right.show {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}

.inview.d1.show {
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}

.inview.d2.show {
  -webkit-transition-delay: 0.8s;
          transition-delay: 0.8s;
}

.inview.d3.show {
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}

.inview.top::after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  background-color: #f2f2f2;
  z-index: 2;
  -webkit-transition: all 0.4s cubic-bezier(0, 0.48, 0.24, 0.96);
  transition: all 0.4s cubic-bezier(0, 0.48, 0.24, 0.96);
}

.inview.top::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  /* background-color: transparent; */
  z-index: 2;
  -webkit-transition: all 0.4s cubic-bezier(0, 0.48, 0.24, 0.96);
  transition: all 0.4s cubic-bezier(0, 0.48, 0.24, 0.96);
}

.inview.top.show::after, .inview.top.show::before {
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
}

.image.inview.top.show::after, .image.inview.top.show::before {
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}

/*
.overlay{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: #CCC;
    z-index: 9999;
    -webkit-transition: opacity .3s ease;
    -ms-transition: opacity .3s ease;
    -moz-transition: opacity .3s ease;
    transition: opacity .3s ease;
}
.fadeout{
    .overlay{
        -webkit-transition: opacity .3s ease;
        -ms-transition: opacity .3s ease;
        -moz-transition: opacity .3s ease;
        transition: opacity .3s ease;
        opacity: 1;
    }
}
*/
header,
.contents,
footer {
  position: relative;
  clear: both;
  width: 100%;
  margin: 0 auto;
  padding: 0;
  text-align: left;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

header {
  background: #FFF;
  z-index: 3;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
}
header .logo {
  width: 250px;
  margin-left: 60px;
}
header .logo a {
  display: block;
  text-decoration: none;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
}
header .logo h1 {
  width: 125px;
  line-height: 0;
}
header .logo h2 {
  font-size: 26px;
  line-height: 1em;
}
header .header_date {
  position: relative;
  padding-right: 5px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
}
header .header_date h3 {
  font-size: 40px;
  line-height: 1em;
  margin-right: 15px;
}
header .header_date time {
  display: inline-block;
  font-size: 25px;
}
header .header_date time strong {
  display: inline-block;
  font-size: 40px;
  line-height: 1em;
}
header .header_date time span {
  position: absolute;
  right: -35px;
  bottom: 12px;
  display: inline-block;
  width: 30px;
  height: 30px;
  border-radius: 30px;
  line-height: 1.2em;
  font-size: 22px;
  background: #B55A5A;
  color: #FFF;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
          justify-content: center;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
}
header .header_access {
  list-style: none;
  margin-right: 81px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
          justify-content: center;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
}
header .header_access li {
  width: 122px;
  text-align: center;
  margin-right: 1px;
  font-size: 12px;
}
header .header_access li a {
  display: block;
  color: #FFF;
  height: 80px;
  text-decoration: none;
  text-align: center;
  background: #B55A5A;
  padding: 0 0 7px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
          justify-content: center;
  -ms-flex-align: end;
  -webkit-box-align: end;
          align-items: flex-end;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
header .header_access li.header_place a {
  background: url(/common/images/kyousan/icon_head1.svg) no-repeat center top 10px #B55A5A;
  background-size: 41px;
}
header .header_access li.header_place a:hover {
  background: url(/common/images/kyousan/icon_head1.svg) no-repeat center top 10px #818181;
  background-size: 41px;
}
header .header_access li.header_acc a {
  background: url(/common/images/kyousan/icon_head2.svg) no-repeat center top 14px #B55A5A;
  background-size: 23px;
}
header .header_access li.header_acc a:hover {
  background: url(/common/images/kyousan/icon_head2.svg) no-repeat center top 14px #818181;
  background-size: 23px;
}
header .header_access li.header_contact a {
  background: url(/common/images/kyousan/icon_head3.svg) no-repeat center top 14px #B55A5A;
  background-size: 24px;
}
header .header_access li.header_contact a:hover {
  background: url(/common/images/kyousan/icon_head3.svg) no-repeat center top 14px #818181;
  background-size: 24px;
}
@media screen and (max-width: 1320px) {
  header .logo {
    width: 18.94vw;
    margin-left: 4.55vw;
  }
  header .logo h1 {
    width: 9.47vw;
  }
  header .logo h2 {
    font-size: 1.97vw;
  }
  header .header_date {
    padding-right: 0.38vw;
  }
  header .header_date h3 {
    font-size: 3.03vw;
    margin-right: 1.14vw;
  }
  header .header_date time {
    font-size: 1.89vw;
  }
  header .header_date time strong {
    font-size: 3.03vw;
  }
  header .header_date time span {
    right: -2.65vw;
    bottom: 0.91vw;
    width: 2.27vw;
    height: 2.27vw;
    border-radius: 2.27vw;
    font-size: 1.67vw;
  }
  header .header_access {
    margin-right: 6.14vw;
  }
  header .header_access li {
    width: 9.24vw;
    font-size: 0.91vw;
  }
  header .header_access li a {
    height: 6.06vw;
    padding: 0 0 0.53vw 0;
  }
  header .header_access li.header_place a {
    background: url(/common/images/kyousan/icon_head1.svg) no-repeat center top 0.76vw #B55A5A;
    background-size: 3.11vw;
  }
  header .header_access li.header_place a:hover {
    background: url(/common/images/kyousan/icon_head1.svg) no-repeat center top 0.76vw #818181;
    background-size: 3.11vw;
  }
  header .header_access li.header_acc a {
    background: url(/common/images/kyousan/icon_head2.svg) no-repeat center top 1.06vw #B55A5A;
    background-size: 1.74vw;
  }
  header .header_access li.header_acc a:hover {
    background: url(/common/images/kyousan/icon_head2.svg) no-repeat center top 1.06vw #818181;
    background-size: 1.74vw;
  }
  header .header_access li.header_contact a {
    background: url(/common/images/kyousan/icon_head3.svg) no-repeat center top 1.06vw #B55A5A;
    background-size: 1.82vw;
  }
  header .header_access li.header_contact a:hover {
    background: url(/common/images/kyousan/icon_head3.svg) no-repeat center top 1.06vw #818181;
    background-size: 1.82vw;
  }
}
@media screen and (max-width: 750px) {
  header .logo {
    width: 100%;
    margin-left: 0;
    height: 16vw;
  }
  header .logo a {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  header .logo h1 {
    width: 27.2vw;
    margin-left: 5.33vw;
    margin-right: 4.8vw;
  }
  header .logo h2 {
    font-size: 5.07vw;
  }
  header .header_date {
    display: none;
  }
  header .header_access {
    background: #FFF;
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    margin: 0;
    z-index: 35;
  }
  header .header_access li {
    width: 33.33%;
    height: 60px;
    font-size: 3.2vw;
  }
  header .header_access li a {
    height: 60px;
    line-height: 1.4em;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding-top: 6px;
    padding-left: 4em;
    text-align: left;
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    -ms-flex-pack: start;
    -webkit-box-pack: start;
            justify-content: flex-start;
    -ms-flex-align: center;
    -webkit-box-align: center;
            align-items: center;
  }
  header .header_access li.header_place a {
    background: url(/common/images/kyousan/icon_head1.svg) no-repeat left 0.7em center #B55A5A;
    background-size: 8.8vw;
  }
  header .header_access li.header_place a:hover {
    background: url(/common/images/kyousan/icon_head1.svg) no-repeat left 0.7em center #818181;
    background-size: 8.8vw;
  }
  header .header_access li.header_acc a {
    background: url(/common/images/kyousan/icon_head2.svg) no-repeat left 1.2em center #B55A5A;
    background-size: 5.07vw;
  }
  header .header_access li.header_acc a:hover {
    background: url(/common/images/kyousan/icon_head2.svg) no-repeat left 1.2em center #818181;
    background-size: 5.07vw;
  }
  header .header_access li.header_contact a {
    background: url(/common/images/kyousan/icon_head3.svg) no-repeat left 1.3em center #B55A5A;
    background-size: 5.33vw;
  }
  header .header_access li.header_contact a:hover {
    background: url(/common/images/kyousan/icon_head3.svg) no-repeat left 1.3em center #818181;
    background-size: 5.33vw;
  }
}

/* sp menu */
#menu {
  position: fixed;
  width: 80px;
  height: 80px;
  background: #000;
  right: 0;
  top: 0;
  cursor: pointer;
  margin: 0px;
  z-index: 40;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
#menu::before, #menu::after,
#menu .icon {
  position: absolute;
  top: 23px;
  left: 27px;
  width: 27px;
  height: 3px;
  border-radius: 3px;
  background: #FFF;
  text-indent: -9999px;
  display: inline-block;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
#menu::after {
  content: "";
  top: 32px;
}
#menu::before {
  content: "";
  top: 41px;
}
#menu .open {
  display: block;
}
#menu .close {
  display: none;
}
#menu.on::before {
  -webkit-transform: translateY(0) rotate(-45deg);
  transform: translateY(-9px) rotate(-45deg);
  background: #FFF;
}
#menu.on::after {
  filter: alpha(opacity=0);
  -moz-opacity: 0;
  opacity: 0;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
#menu.on .icon {
  -webkit-transform: translateY(0) rotate(45deg);
  transform: translateY(9px) rotate(45deg);
  background: #FFF;
}
#menu.on .close {
  display: block;
}
#menu p {
  position: absolute;
  left: 0;
  bottom: 13px;
  line-height: 1em;
  margin: 0;
  font-size: 12px;
  color: #FFF;
  width: 100%;
  text-align: center;
}
@media screen and (max-width: 1320px) {
  #menu {
    width: 6.06vw;
    height: 6.06vw;
  }
  #menu::before, #menu::after,
  #menu .icon {
    top: 1.74vw;
    left: 2.05vw;
    width: 2.05vw;
    height: 0.23vw;
    border-radius: 0.23vw;
  }
  #menu::after {
    top: 2.42vw;
  }
  #menu::before {
    top: 3.11vw;
  }
  #menu.on::before {
    -webkit-transform: translateY(0) rotate(-45deg);
    transform: translateY(-0.68vw) rotate(-45deg);
  }
  #menu.on .icon {
    -webkit-transform: translateY(0) rotate(45deg);
    transform: translateY(0.68vw) rotate(45deg);
  }
  #menu p {
    bottom: 0.53vw;
    font-size: 0.91vw;
  }
}
@media screen and (max-width: 750px) {
  #menu {
    width: 16vw;
    height: 16vw;
  }
  #menu::before, #menu::after,
  #menu .icon {
    top: 3.73vw;
    left: 4.27vw;
    width: 7.2vw;
    height: 0.8vw;
    border-radius: 0.8vw;
  }
  #menu::after {
    top: 6.13vw;
  }
  #menu::before {
    top: 8.53vw;
  }
  #menu.on::before {
    -webkit-transform: translateY(-2.4vw) rotate(-45deg);
            transform: translateY(-2.4vw) rotate(-45deg);
    background: #FFF;
  }
  #menu.on .icon {
    -webkit-transform: translateY(2.4vw) rotate(45deg);
            transform: translateY(2.4vw) rotate(45deg);
  }
  #menu p {
    bottom: 1.87vw;
    font-size: 3.2vw;
  }
}

#spnav {
  opacity: 0;
  position: fixed;
  top: 0;
  right: 0;
  width: 440px;
  height: 100vh;
  overflow-y: auto;
  margin: 0;
  background: #000;
  z-index: 38;
  text-align: center;
  -webkit-transform: translate(460px);
  transform: translate(460px);
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
#spnav .spnav_inner {
  text-align: left;
  width: 70%;
  margin: 0 auto;
  padding: 150px 0 60px 0;
}
#spnav .spnav_inner a {
  display: block;
  color: #FFF;
  text-decoration: none;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
#spnav .spnav_inner a:hover {
  opacity: 0.5;
}
#spnav .spnav_inner aside {
  width: 47px;
  margin: 0 auto 30px auto;
  line-height: 0;
}
#spnav .spnav_inner ul li {
  font-size: 20px;
  padding: 20px 0;
  text-align: center;
  border-bottom: 1px dashed #FFF;
}
#spnav .spnav_inner ul li:last-of-type {
  border-bottom: none;
}
#spnav.view {
  opacity: 1;
  -webkit-transform: translate(0);
  transform: translate(0);
}
@media screen and (max-width: 750px) {
  #spnav {
    width: 100%;
    height: 100vh;
    -webkit-transform: 110%;
    transform: 110%;
  }
  #spnav .spnav_inner {
    width: 86%;
    padding: 26.67vw 0 16vw 0;
  }
  #spnav .spnav_inner aside {
    width: 12.53vw;
    margin: 0 auto 8vw auto;
    line-height: 0;
  }
  #spnav .spnav_inner ul li {
    font-size: 4.8vw;
    padding: 5.33vw 0;
  }
}

.footer_logo_nav {
  background: #FFF;
}

.footer_logo_nav_inner {
  width: 1250px;
  margin: 0 auto;
  padding: 40px 0 45px 0;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media screen and (max-width: 1320px) {
  .footer_logo_nav_inner {
    width: 94.7vw;
    padding: 3.03vw 0 3.41vw 0;
  }
}
@media screen and (max-width: 750px) {
  .footer_logo_nav_inner {
    width: 92vw;
    padding: 13.33vw 0 9.33vw 0;
  }
  .footer_logo_nav_inner .copyright {
    text-align: center;
    width: 100%;
    font-size: 3.73vw;
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}

.footer_logo {
  width: 390px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.footer_logo .logo {
  margin: 0 0 15px 0;
}
.footer_logo .logo a {
  display: block;
  text-decoration: none;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
}
.footer_logo h2 {
  width: 196px;
  line-height: 0;
}
.footer_logo h3 {
  font-size: 38px;
  line-height: 1em;
}
.footer_logo address {
  width: 100%;
  font-size: 16px;
  font-style: normal;
  margin: 0 0 10px 0;
}
.footer_logo .official {
  font-size: 16px;
  width: 100%;
  margin: 0;
  text-align: center;
}
.footer_logo .official a {
  padding: 15px 0;
  display: block;
  background: #000;
  color: #FFF;
  text-decoration: none;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.footer_logo .official a span {
  display: inline-block;
  padding-right: 45px;
  background: url(/common/images/kyousan/icon_home.svg) no-repeat right top 4px;
  background-size: 24px;
}
.footer_logo .official a:hover {
  background: #C1B079;
}
@media screen and (max-width: 1320px) {
  .footer_logo {
    width: 29.55vw;
  }
  .footer_logo .logo {
    margin: 0 0 1.14vw 0;
  }
  .footer_logo h2 {
    width: 14.85vw;
  }
  .footer_logo h3 {
    font-size: 2.88vw;
  }
  .footer_logo address {
    font-size: 1.21vw;
    margin: 0 0 0.76vw 0;
  }
  .footer_logo .official {
    font-size: 1.21vw;
  }
  .footer_logo .official a {
    padding: 1.14vw 0;
  }
  .footer_logo .official a span {
    padding-right: 3.41vw;
    background: url(/common/images/kyousan/icon_home.svg) no-repeat right top 0.3vw;
    background-size: 1.82vw;
  }
}
@media screen and (max-width: 750px) {
  .footer_logo {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    width: 92vw;
    margin: 0 auto;
  }
  .footer_logo .logo {
    margin: 0 0 5.33vw 0;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    width: 100%;
    display: block;
    text-align: center;
  }
  .footer_logo .logo h2 {
    width: 42.67vw;
    margin: 0 auto 4vw auto;
  }
  .footer_logo .logo h3 {
    font-size: 6.67vw;
    margin-bottom: 4.53vw;
  }
  .footer_logo address {
    width: 100%;
    font-size: 3.73vw;
    margin: 0 0 4vw 0;
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
  .footer_logo .official {
    font-size: 3.73vw;
    margin: 0 auto 10.67vw auto;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    width: 74.67vw;
  }
  .footer_logo .official a {
    padding: 4vw 0;
  }
  .footer_logo .official a span {
    padding-right: 12vw;
    background: url(/common/images/kyousan/icon_home.svg) no-repeat right top 1.07vw;
    background-size: 6.4vw;
  }
}

.footer_nav {
  width: 685px;
  padding: 40px 0 0 0;
}
.footer_nav h2 {
  font-size: 22px;
  line-height: 1.2em;
  margin-bottom: 20px;
}
.footer_nav ul {
  margin-bottom: 40px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.footer_nav ul li {
  display: inline-block;
  list-style: none;
  font-size: 16px;
  margin-right: 25px;
  margin-bottom: 0.7em;
}
.footer_nav ul li a {
  padding-left: 19px;
  text-decoration: none;
  background: url(/common/images/kyousan/icon_footer_hishi.svg) no-repeat left center;
  background-size: 13px;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.footer_nav ul li a:hover {
  color: #C1B079;
}
.footer_nav p {
  text-align: right;
  font-size: 14px;
  margin: 0;
}
@media screen and (max-width: 1320px) {
  .footer_nav {
    width: 51.89vw;
  }
  .footer_nav h2 {
    font-size: 1.67vw;
    margin-bottom: 1.52vw;
  }
  .footer_nav ul {
    margin-bottom: 3.03vw;
  }
  .footer_nav ul li {
    font-size: 1.21vw;
    margin-right: 1.89vw;
  }
  .footer_nav ul li a {
    padding-left: 1.44vw;
    background-size: 0.98vw;
  }
  .footer_nav p {
    font-size: 1.06vw;
  }
}
@media screen and (max-width: 750px) {
  .footer_nav {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    width: 74.67vw;
    margin: 0 auto;
    text-align: center;
  }
  .footer_nav h2 {
    font-size: 5.33vw;
    line-height: 1.5em;
    margin-bottom: 5.33vw;
  }
  .footer_nav ul {
    margin-bottom: 9.33vw;
    width: 16.5em;
    margin: 0 auto 9.33vw auto;
    display: block;
  }
  .footer_nav ul li {
    width: 100%;
    font-size: 4.27vw;
    margin-right: 6.67vw;
    text-align: left;
  }
  .footer_nav ul li a {
    padding-left: 5.07vw;
    background-size: 3.47vw;
  }
  .footer_nav p {
    display: none;
  }
}

.pagetop {
  position: fixed;
  right: 30px;
  bottom: 30px;
  width: 50px;
  cursor: pointer;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  z-index: 3;
}
.pagetop:hover {
  opacity: 0.5;
}
.pagetop img {
  width: 100%;
}
.pagetop span {
  font-size: 16px;
  text-align: center;
  display: block;
}
@media screen and (max-width: 750px) {
  .pagetop {
    right: 4vw;
    bottom: 14.93vw;
  }
  .pagetop span {
    display: none;
  }
}

main {
  z-index: 1;
}
.home_kv {
  position: relative;
  height: 905px;
  padding-top: 180px;
  margin-bottom: -100px;
  overflow: hidden;
}
.home_kv aside {
  position: absolute;
  z-index: 1;
}
.home_kv aside.kv_en1 {
  width: 1040px;
  top: -150px;
  left: calc(50% - 520px);
}
.home_kv aside.kv_en2 {
  width: 327px;
  bottom: 45px;
  left: calc(50% - 879px);
}
.home_kv aside.kv_en3 {
  width: 220px;
  top: 100px;
  left: calc(50% - 695px);
}
.home_kv aside.kv_en4 {
  width: 327px;
  top: 260px;
  right: calc(50% - 992px);
}
.home_kv aside.kv_en5 {
  width: 220px;
  bottom: 0;
  right: calc(50% - 660px);
}
.home_kv figure {
  z-index: 2;
  position: absolute;
  width: 280px;
  bottom: 110px;
  right: calc(50% - 660px);
}
.home_kv h2 {
  position: relative;
  z-index: 2;
  font-size: 34px;
  margin-bottom: 20px;
  line-height: 1.2em;
  text-align: center;
}
.home_kv h1 {
  position: relative;
  z-index: 2;
  margin-bottom: 40px;
  font-size: 145px;
  line-height: 1em;
  text-align: center;
}
.home_kv time {
  position: relative;
  display: block;
  z-index: 2;
  text-align: center;
  font-size: 56px;
  line-height: 1em;
  margin-bottom: 20px;
}
.home_kv time strong {
  font-size: 74px;
}
.home_kv time span {
  position: relative;
  top: -0.1em;
  display: inline-block;
  font-size: 45px;
  width: 55px;
  height: 55px;
  border-radius: 30px;
  line-height: 1em;
  background: #B55A5A;
  color: #FFF;
}
.home_kv p {
  position: relative;
  text-align: center;
  z-index: 2;
  font-size: 31px;
  width: 500px;
  margin: 0 auto 25px auto;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
}
.home_kv p.sankahi {
  border: 1px solid #B55A5A;
  background: #C1272D;
  font-weight: bold;
  font-size: 25px;
  color: #FFF;
  width: 360px;
  margin: 0 auto;
}
@media screen and (max-width: 1320px) {
  .home_kv {
    height: 68.56vw;
    padding-top: 13.64vw;
    margin-bottom: -7.58vw;
  }
  .home_kv aside.kv_en1 {
    width: 78.79vw;
    top: -11.36vw;
    left: calc(50% - 39.39vw);
  }
  .home_kv aside.kv_en2 {
    width: 24.77vw;
    bottom: 3.41vw;
    left: calc(50% - 66.59vw);
  }
  .home_kv aside.kv_en3 {
    width: 16.67vw;
    top: 7.58vw;
    left: calc(50% - 52.65vw);
  }
  .home_kv aside.kv_en4 {
    width: 24.77vw;
    top: 19.7vw;
    right: calc(50% - 75.15vw);
  }
  .home_kv aside.kv_en5 {
    width: 16.67vw;
    right: calc(50% - 50vw);
  }
  .home_kv figure {
    width: 21.21vw;
    bottom: 8.33vw;
    right: calc(50% - 50vw);
  }
  .home_kv h2 {
    font-size: 2.58vw;
    margin-bottom: 1.52vw;
  }
  .home_kv h1 {
    margin-bottom: 3.03vw;
    font-size: 10.98vw;
  }
  .home_kv time {
    font-size: 4.24vw;
    margin-bottom: 1.52vw;
  }
  .home_kv time strong {
    font-size: 5.61vw;
  }
  .home_kv time span {
    font-size: 3.41vw;
    width: 4.17vw;
    height: 4.17vw;
    border-radius: 2.27vw;
  }
  .home_kv p {
    font-size: 2.35vw;
    width: 37.88vw;
    margin: 0 auto 1.89vw auto;
  }
  .home_kv p.sankahi {
    font-size: 1.89vw;
    width: 27.27vw;
  }
}
@media screen and (max-width: 750px) {
  .home_kv {
    height: 201.33vw;
    padding-top: 16vw;
    margin-bottom: 0;
  }
  .home_kv aside.kv_en1 {
    width: 176vw;
    top: 0;
    left: -36vw;
  }
  .home_kv aside.kv_en2 {
    width: 24.77vw;
    bottom: 3.41vw;
    left: calc(50% - 66.59vw);
  }
  .home_kv aside.kv_en3 {
    width: 16.67vw;
    top: 7.58vw;
    left: calc(50% - 52.65vw);
  }
  .home_kv aside.kv_en4 {
    width: 24.77vw;
    top: 19.7vw;
    right: calc(50% - 75.15vw);
  }
  .home_kv aside.kv_en5 {
    width: 16.67vw;
    right: calc(50% - 50vw);
  }
  .home_kv figure {
    width: 33.33vw;
    bottom: 0;
    right: calc(50% - 17.33vw);
  }
  .home_kv figure img {
    width: 100%;
  }
  .home_kv h2 {
    font-size: 4.8vw;
    line-height: 1.2em;
    margin-bottom: 0;
    margin: 10.67vw 0 0 0;
  }
  .home_kv h1 {
    margin-bottom: 5.33vw;
    font-size: 26.67vw;
    line-height: 1.1em;
  }
  .home_kv time {
    font-size: 7.73vw;
    margin-bottom: 2.67vw;
  }
  .home_kv time strong {
    font-size: 10.93vw;
  }
  .home_kv time span {
    font-size: 6.13vw;
    width: 7.73vw;
    height: 7.73vw;
    line-height: 1.2em;
    border-radius: 7.73vw;
  }
  .home_kv p {
    font-size: 4.53vw;
    width: 71.2vw;
    margin: 0 auto 3.2vw auto;
  }
  .home_kv p.sankahi {
    font-size: 4.8vw;
    width: 65.33vw;
  }
}

.home_kv_inner {
  width: 1250px;
  margin: 0 auto;
}
@media screen and (max-width: 1320px) {
  .home_kv_inner {
    width: 94.7vw;
  }
}

.detail_contents_outer {
  position: relative;
}

.dcontents_ens {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  overflow: hidden;
}
.dcontents_ens aside {
  position: absolute;
  line-height: 0;
}
.dcontents_ens .back_en01 {
  width: 327px;
  right: calc(50% - 1005px);
  top: 415px;
}
.dcontents_ens .back_en02 {
  width: 180px;
  left: calc(50% - 905px);
  top: 630px;
}
.dcontents_ens .back_en03 {
  width: 180px;
  right: calc(50% - 725px);
  top: 700px;
}
.dcontents_ens .back_en04 {
  width: 327px;
  left: calc(50% - 455px);
  top: 965px;
}
.dcontents_ens .back_en05 {
  width: 180px;
  left: calc(50% - 505px);
  top: 2030px;
}
.dcontents_ens .back_en06 {
  width: 327px;
  right: calc(50% - 875px);
  top: 2180px;
}
.dcontents_ens .back_en07 {
  width: 327px;
  left: calc(50% - 875px);
  top: 2580px;
}
.dcontents_ens .back_en08 {
  width: 180px;
  left: calc(50% - 375px);
  top: 2980px;
}
.dcontents_ens .back_en09 {
  width: 180px;
  right: calc(50% - 905px);
  top: 3220px;
}
.dcontents_ens .back_en10 {
  width: 327px;
  left: calc(50% - 505px);
  top: 3820px;
}
.dcontents_ens .back_en11 {
  width: 180px;
  left: calc(50% - 575px);
  top: 5160px;
}
.dcontents_ens .back_en12 {
  width: 327px;
  left: calc(50% - 845px);
  top: 5260px;
}
.dcontents_ens .back_en13 {
  width: 327px;
  right: calc(50% - 965px);
  top: 5200px;
}
.dcontents_ens .back_en14 {
  width: 180px;
  right: calc(50% - 705px);
  top: 5600px;
}

.detail_contents_inner {
  position: relative;
  width: 1250px;
  margin: 0 auto;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
  align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media screen and (max-width: 1320px) {
  .detail_contents_inner {
    width: 94.7vw;
  }
}
@media screen and (max-width: 750px) {
  .detail_contents_inner {
    width: 100%;
  }
}

.detail_inner {
  position: relative;
  width: 920px;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
@media screen and (max-width: 1320px) {
  .detail_inner {
    width: 69.7vw;
  }
}
@media screen and (max-width: 750px) {
  .detail_inner {
    width: 100%;
    margin: 0 auto;
  }
}

.icon_title {
  font-size: 35px;
  text-align: center;
  margin-bottom: 1em;
}
.icon_title span {
  display: inline-block;
  padding-left: 60px;
  background: url(/common/images/kyousan/icon_title.webp) no-repeat left center;
  background-size: 47px;
}
@media screen and (max-width: 1320px) {
  .icon_title {
    font-size: 2.65vw;
  }
  .icon_title span {
    padding-left: 4.55vw;
    background-size: 3.56vw;
  }
}
@media screen and (max-width: 750px) {
  .icon_title {
    font-size: 8vw;
  }
  .icon_title span {
    padding-left: 13.33vw;
    background-size: 10.67vw;
  }
}

.keisan_copy {
  padding-top: 100px;
  margin-bottom: 100px;
}
.keisan_copy p {
  font-size: 22px;
  text-align: justify;
}
@media screen and (max-width: 1320px) {
  .keisan_copy {
    padding-top: 7.58vw;
    margin-bottom: 7.58vw;
  }
  .keisan_copy p {
    font-size: 1.67vw;
  }
}
@media screen and (max-width: 750px) {
  .keisan_copy {
    width: 92%;
    margin: 0 auto;
    padding-top: 18.67vw;
  }
  .keisan_copy p {
    font-size: 4.8vw;
  }
}

.event_date {
  position: relative;
  margin: 0 auto;
  width: 100%;
  border-radius: 30px;
  background: #FFF;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 45px 0;
  -webkit-box-shadow: 3px 3px 5px 0px rgba(0, 0, 0, 0.16);
          box-shadow: 3px 3px 5px 0px rgba(0, 0, 0, 0.16);
}
.event_date dl {
  width: 700px;
  margin: 0 auto 20px auto;
  padding: 0;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
}
.event_date dl dt {
  width: 160px;
  color: #FFF;
  background: #C1B079;
  font-size: 18px;
  text-align: center;
  padding: 3px 0 2px 0;
}
.event_date dl dd {
  width: 515px;
  text-align: left;
  font-size: 30px;
  line-height: 1.4em;
}
.event_date dl dd.date {
  position: relative;
  top: -6px;
  font-size: 35px;
  line-height: 1em;
}
.event_date dl dd.date strong {
  font-size: 60px;
}
.event_date dl dd address {
  font-style: normal;
  font-size: 18px;
  white-space: nowrap;
}
.event_date .event_caution {
  font-size: 16px;
  width: 700px;
  margin: 0 auto 1.5em auto;
  white-space: nowrap;
}
.event_date .event_place {
  width: 700px;
  margin: 0 auto;
  text-align: center;
  border: 5px solid #C1B079;
  padding: 20px 0;
}
.event_date .event_place h3 {
  font-size: 35px;
  line-height: 1.2em;
  margin-bottom: 15px;
}
.event_date .event_place h3 span {
  display: inline-block;
  padding-right: 65px;
  background: url(/common/images/kyousan/icon_kaijo_camera.svg) no-repeat right center;
  background-size: 45px;
}
.event_date .event_place p {
  font-size: 16px;
  text-align: center;
  margin-bottom: 1em;
}
.event_date .event_place .place_btn {
  color: #FFF;
  width: 300px;
  margin: 0 auto;
}
.event_date .event_place .place_btn a {
  display: block;
  padding: 0.8em 0;
  background: #B55A5A;
  text-decoration: none;
  color: #FFF;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.event_date .event_place .place_btn a:hover {
  background: #C1B079;
}
.event_date figure {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 193px;
}
@media screen and (max-width: 1320px) {
  .event_date {
    border-radius: 2.27vw;
    padding: 3.41vw 0;
  }
  .event_date dl {
    width: 53.03vw;
    margin: 0 auto 1.52vw auto;
  }
  .event_date dl dt {
    width: 12.12vw;
    font-size: 1.36vw;
  }
  .event_date dl dd {
    width: 39.02vw;
    font-size: 2.27vw;
  }
  .event_date dl dd.date {
    top: -0.45vw;
    font-size: 2.65vw;
  }
  .event_date dl dd.date strong {
    font-size: 4.55vw;
  }
  .event_date dl dd address {
    font-size: 1.36vw;
  }
  .event_date .event_caution {
    font-size: 1.21vw;
    width: 53.03vw;
  }
  .event_date .event_place {
    width: 53.03vw;
    border: 0.38vw solid #C1B079;
    padding: 1.52vw 0;
  }
  .event_date .event_place h3 {
    font-size: 2.65vw;
    margin-bottom: 1.14vw;
  }
  .event_date .event_place h3 span {
    padding-right: 4.92vw;
    background-size: 3.41vw;
  }
  .event_date .event_place p {
    font-size: 1.21vw;
  }
  .event_date .event_place .place_btn {
    width: 22.73vw;
  }
  .event_date figure {
    width: 14.62vw;
  }
}
@media screen and (max-width: 750px) {
  .event_date {
    border-radius: 5.33vw;
    padding: 9.33vw 5.87vw;
  }
  .event_date dl {
    width: 100%;
    margin: 0 auto 6.67vw auto;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .event_date dl.kouen {
    margin-bottom: 0;
  }
  .event_date dl dt {
    width: 42.13vw;
    font-size: 4.8vw;
    margin-bottom: 2.67vw;
  }
  .event_date dl dd {
    width: 100%;
    font-size: 8vw;
    padding-top: 0;
  }
  .event_date dl dd.date {
    top: -1.6vw;
    font-size: 8vw;
    line-height: 1.2em;
  }
  .event_date dl dd.date strong {
    font-size: 13.33vw;
  }
  .event_date dl dd.place {
    font-size: 7.2vw;
  }
  .event_date dl dd address {
    font-size: 4.27vw;
  }
  .event_date .event_caution {
    font-size: 3.73vw;
    width: 100%;
  }
  .event_date .event_place {
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border: 1.33vw solid #C1B079;
    padding: 6.13vw;
  }
  .event_date .event_place h3 {
    font-size: 7.47vw;
    margin-bottom: 2.4vw;
    letter-spacing: -0.05em;
  }
  .event_date .event_place h3 span {
    padding-right: 12vw;
    background-size: 10.4vw;
  }
  .event_date .event_place p {
    font-size: 3.73vw;
  }
  .event_date .event_place .place_btn {
    width: 100%;
  }
  .event_date figure {
    position: relative;
    margin: 0 auto;
    width: 32.27vw;
    margin-top: 2.93vw;
  }
}

.main_event {
  position: relative;
  padding-top: 100px;
  margin-bottom: 0;
}
@media screen and (max-width: 1320px) {
  .main_event {
    padding-top: 7.58vw;
  }
}
@media screen and (max-width: 750px) {
  .main_event {
    padding-top: 26.67vw;
    width: 100%;
  }
}

.mainevent_inner {
  position: relative;
  width: calc(100vw - 25px);
  height: 460px;
  left: 33.1%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 50px 0;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  background: url(/common/images/kyousan/mainevent_back.webp) no-repeat center center;
  background-size: cover;
}
@media screen and (max-width: 1320px) {
  .mainevent_inner {
    height: 34.85vw;
    padding: 3.79vw 0;
  }
}
@media screen and (max-width: 750px) {
  .mainevent_inner {
    height: auto;
    width: 100%;
    padding: 0;
    left: auto;
    right: auto;
    margin: 0;
    padding: 9.07vw 0 8vw 0;
  }
}

.mainevent_text {
  position: relative;
  width: 920px;
  height: 360px;
  margin: 0 auto;
  left: 160px;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
}
.mainevent_text p {
  font-size: 20px;
  line-height: 1.6em;
  margin: 0 0 0 1.5em;
}
.mainevent_text .event_title {
  margin-left: 50px;
  border-left: 1px solid #FFF;
  border-right: 1px solid #FFF;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
}
.mainevent_text .event_title h2 {
  font-size: 30px;
  margin-bottom: 1.5em;
}
.mainevent_text .event_title p {
  font-size: 18px;
  margin: 0;
}
.mainevent_text dl {
  padding: 0;
  margin: 15px 0 0 0.5em;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
}
.mainevent_text dl dt {
  font-size: 18px;
  height: 150px;
  background: url(/common/images/kyousan/icon_footer_hishi.svg) no-repeat top center;
  background-size: 16px;
  padding-top: 22px;
}
.mainevent_text dl dd {
  font-size: 18px;
  height: 210px;
}
.mainevent_text .event_rest {
  display: inline-block;
  position: relative;
  margin: 40px 0 0 0.5em;
  padding: 35px 0;
}
.mainevent_text .event_rest::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  width: 1px;
  height: 26px;
  border-left: 1px solid #000;
}
.mainevent_text .event_rest::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 1px;
  height: 26px;
  border-left: 1px solid #000;
}
@media screen and (max-width: 1320px) {
  .mainevent_text {
    width: 69.7vw;
    height: 27.27vw;
    left: 12.12vw;
  }
  .mainevent_text p {
    font-size: 1.52vw;
  }
  .mainevent_text .event_title {
    margin-left: 3.79vw;
  }
  .mainevent_text .event_title h2 {
    font-size: 2.27vw;
  }
  .mainevent_text .event_title p {
    font-size: 1.36vw;
  }
  .mainevent_text dl {
    margin: 1.14vw 0 0 0.5em;
  }
  .mainevent_text dl dt {
    font-size: 1.36vw;
    height: 11.36vw;
    background-size: 1.21vw;
    padding-top: 1.67vw;
  }
  .mainevent_text dl dd {
    font-size: 1.36vw;
    height: 15.91vw;
  }
  .mainevent_text .event_rest {
    margin: 3.03vw 0 0 0.5em;
    padding: 2.65vw 0;
  }
  .mainevent_text .event_rest::before {
    height: 1.97vw;
  }
  .mainevent_text .event_rest::after {
    height: 1.97vw;
  }
}
@media screen and (max-width: 750px) {
  .mainevent_text {
    -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
            writing-mode: horizontal-tb;
    width: 86.93vw;
    height: auto;
    left: auto;
  }
  .mainevent_text p {
    font-size: 4.53vw;
    margin-bottom: 6.67vw;
  }
  .mainevent_text .event_title {
    margin-left: 0;
    border: none;
    padding: 0.7em 0;
    margin-bottom: 6.67vw;
    border-top: 1px solid #FFF;
    border-bottom: 1px solid #FFF;
  }
  .mainevent_text .event_title h2 {
    font-size: 7.47vw;
    margin: 0;
    border: none;
  }
  .mainevent_text .event_title p {
    font-size: 5.87vw;
  }
  .mainevent_text dl {
    margin: 0;
  }
  .mainevent_text dl dt {
    font-size: 4.8vw;
    height: auto;
    width: 5em;
    background-size: 4.27vw;
    padding-top: 0;
    padding-left: 1.1em;
    background: url(/common/images/kyousan/icon_footer_hishi.svg) no-repeat left top 0.65em;
  }
  .mainevent_text dl dd {
    font-size: 4.8vw;
    height: auto;
  }
  .mainevent_text .event_rest {
    margin: 1em 0 1em 2em;
    padding: 0 9.33vw;
  }
  .mainevent_text .event_rest::before {
    width: 4.8vw;
    height: 1px;
    border-top: 1px solid #000;
    border-left: none;
    left: 0;
    top: 50%;
  }
  .mainevent_text .event_rest::after {
    width: 4.8vw;
    height: 1px;
    border-top: 1px solid #000;
    border-left: none;
    right: 0;
    left: auto;
    top: 50%;
    bottom: auto;
  }
}

.event_detail {
  position: relative;
  width: 920px;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  padding-top: 60px;
  margin-bottom: 60px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: stretch;
  -webkit-box-align: stretch;
          align-items: stretch;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.event_detail article {
  width: 100%;
  background: #FFF;
  padding: 20px 26px;
  border-radius: 26px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 0 30px 0;
  -webkit-box-shadow: 3px 3px 5px 0px rgba(0, 0, 0, 0.16);
          box-shadow: 3px 3px 5px 0px rgba(0, 0, 0, 0.16);
}
.event_detail article.ed_harf {
  width: 48.3%;
}
.event_detail article .edetail_title {
  padding-bottom: 10px;
  margin-bottom: 14px;
  border-bottom: 1px solid #C1B079;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
          justify-content: center;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
}
.event_detail article .edetail_title time {
  display: inline-block;
  margin-right: 1em;
  font-size: 18px;
  color: #B55A5A;
}
.event_detail article .edetail_title time strong {
  font-size: 25px;
}
.event_detail article .edetail_title h3 {
  font-size: 25px;
  font-weight: 600;
}
.event_detail article p {
  font-size: 15px;
  margin-bottom: 1em;
}
.event_detail article p:last-of-type {
  margin-bottom: 0;
}
.event_detail article p.sizes {
  font-size: 14px;
  line-height: 1.6em;
}
@media screen and (max-width: 1320px) {
  .event_detail {
    width: 69.7vw;
    padding-top: 4.55vw;
    margin-bottom: 4.55vw;
  }
  .event_detail article {
    padding: 1.52vw 1.97vw;
    border-radius: 1.97vw;
    margin: 0 0 2.27vw 0;
  }
  .event_detail article .edetail_title {
    padding-bottom: 0.76vw;
    margin-bottom: 1.06vw;
  }
  .event_detail article .edetail_title time {
    font-size: 1.36vw;
  }
  .event_detail article .edetail_title time strong {
    font-size: 1.89vw;
  }
  .event_detail article .edetail_title h3 {
    font-size: 1.89vw;
  }
  .event_detail article p {
    font-size: 1.14vw;
  }
  .event_detail article p.sizes {
    font-size: 1.06vw;
  }
}
@media screen and (max-width: 750px) {
  .event_detail {
    width: 92%;
    margin: 0 auto;
    padding-top: 13.33vw;
    margin-bottom: 0;
  }
  .event_detail article {
    width: 100%;
    padding: 5.33vw 6.4vw;
    border-radius: 6.93vw;
    margin: 0 0 4vw 0;
  }
  .event_detail article.ed_harf {
    width: 100%;
  }
  .event_detail article .edetail_title {
    padding-bottom: 1.87vw;
    margin-bottom: 4.53vw;
  }
  .event_detail article .edetail_title time {
    font-size: 4vw;
  }
  .event_detail article .edetail_title time strong {
    font-size: 5.33vw;
  }
  .event_detail article .edetail_title h3 {
    font-size: 5.33vw;
  }
  .event_detail article p {
    font-size: 3.73vw;
  }
  .event_detail article p.sizes {
    font-size: 3.47vw;
  }
}

.edetail_imgtext {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.edetail_imgtext .edetail_text {
  width: 515px;
}
.edetail_imgtext figure {
  width: 330px;
}
@media screen and (max-width: 1320px) {
  .edetail_imgtext .edetail_text {
    width: 39.02vw;
  }
  .edetail_imgtext figure {
    width: 25vw;
  }
}
@media screen and (max-width: 750px) {
  .edetail_imgtext .edetail_text {
    width: 100%;
  }
  .edetail_imgtext figure {
    width: 100%;
    margin-top: 4vw;
  }
}

.pdf_btn {
  text-align: center;
  width: 100%;
  padding-top: 1.5em;
  margin: 0;
}
.pdf_btn a {
  display: inline-block;
  text-decoration: none;
  color: #FFF;
  padding: 0.7em 5em 0.6em 5em;
  background: url(/common/images/kyousan/icon_pdf.svg) no-repeat right 1em center #B55A5A;
  background-size: 27px;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.pdf_btn a:hover {
  background: url(/common/images/kyousan/icon_pdf.svg) no-repeat right 1em center #C1B079;
  background-size: 27px;
}
@media screen and (max-width: 1320px) {
  .pdf_btn a {
    background-size: 2.05vw;
  }
  .pdf_btn a:hover {
    background-size: 2.05vw;
  }
}
@media screen and (max-width: 750px) {
  .pdf_btn {
    font-size: 3.73vw;
  }
  .pdf_btn a {
    background: url(/common/images/kyousan/icon_pdf.svg) no-repeat right 2em center #B55A5A;
    background-size: 6.13vw;
  }
  .pdf_btn a:hover {
    background: url(/common/images/kyousan/icon_pdf.svg) no-repeat right 2em center #C1B079;
    background-size: 6.13vw;
  }
}

.project_wrap {
  padding-top: 100px;
  margin-bottom: 20px;
}
.project_wrap figure {
  position: relative;
  width: 630px;
  left: -25px;
  margin: 0 auto;
}
@media screen and (max-width: 1320px) {
  .project_wrap {
    padding-top: 7.58vw;
    margin-bottom: 1.52vw;
  }
  .project_wrap figure {
    width: 47.73vw;
    left: -1.89vw;
  }
}
@media screen and (max-width: 750px) {
  .project_wrap {
    padding-top: 26.67vw;
    padding-top: 26.67vw;
    margin-bottom: 0;
  }
  .project_wrap figure {
    width: 68.8vw;
    left: auto;
    margin: 8vw auto 0 auto;
  }
}

.project_inner {
  position: relative;
  background: #FFF;
  padding: 33px 50px;
  border-radius: 26px;
  margin-bottom: 55px;
  -webkit-box-shadow: 3px 3px 5px 0px rgba(0, 0, 0, 0.16);
          box-shadow: 3px 3px 5px 0px rgba(0, 0, 0, 0.16);
}
.project_inner article {
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #C1B079;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
}
.project_inner article:last-of-type {
  margin-bottom: 0;
  padding-bottom: 0;
  border: none;
}
.project_inner article h3 {
  font-size: 23px;
  color: #B55A5A;
  line-height: 1.5em;
  width: 157px;
}
.project_inner article div {
  width: 630px;
  padding-left: 32px;
  border-left: 5px solid #C1B079;
}
.project_inner article div p {
  margin: 0;
}
@media screen and (max-width: 1320px) {
  .project_inner {
    padding: 2.5vw 3.79vw;
    border-radius: 1.97vw;
    margin-bottom: 4.17vw;
  }
  .project_inner article {
    margin-bottom: 2.27vw;
    padding-bottom: 2.27vw;
  }
  .project_inner article h3 {
    font-size: 1.74vw;
    width: 11.89vw;
  }
  .project_inner article div {
    width: 47.73vw;
    padding-left: 2.42vw;
  }
}
@media screen and (max-width: 750px) {
  .project_inner {
    width: 92%;
    margin: 0 auto;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 6.67vw;
    border-radius: 6.93vw;
  }
  .project_inner article {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: 8vw;
    padding-bottom: 8vw;
    text-align: center;
  }
  .project_inner article h3 {
    display: inline-block;
    font-size: 5.87vw;
    text-align: center;
    width: auto;
    border-bottom: 4px solid #C1B079;
    margin: 0 auto 3.2vw auto;
    padding-bottom: 1.33vw;
  }
  .project_inner article h3 br {
    display: none;
  }
  .project_inner article div {
    width: 100%;
    padding-left: 0;
    border-left: none;
    text-align: justify;
  }
}

.poster_wrap {
  position: relative;
  padding-top: 100px;
  margin-bottom: 100px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.poster_wrap .icon_title {
  width: 100%;
}
.poster_wrap .poster_text {
  width: 500px;
}
.poster_wrap .poster_text p {
  font-size: 18px;
}
.poster_wrap .poster_text ul {
  position: absolute;
  left: 0;
  bottom: 0;
  list-style: none;
}
.poster_wrap .poster_text ul li {
  width: 300px;
  margin-bottom: 30px;
  text-align: center;
}
.poster_wrap .poster_text ul li:last-of-type {
  margin-bottom: 0;
}
.poster_wrap .poster_text ul li a {
  padding: 0.9em 0 0.8em 0;
  display: block;
  text-decoration: none;
  color: #FFF;
  background: #B55A5A;
  background-size: 27px;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.poster_wrap .poster_text ul li a:hover {
  background: #C1B079;
  background-size: 27px;
}
.poster_wrap figure {
  width: 355px;
}
@media screen and (max-width: 1320px) {
  .poster_wrap {
    padding-top: 7.58vw;
    margin-bottom: 7.58vw;
  }
  .poster_wrap .poster_text {
    width: 37.88vw;
  }
  .poster_wrap .poster_text p {
    font-size: 1.36vw;
  }
  .poster_wrap .poster_text ul li {
    width: 22.73vw;
    margin-bottom: 2.27vw;
  }
  .poster_wrap .poster_text ul li a {
    background-size: 2.05vw;
  }
  .poster_wrap .poster_text ul li a:hover {
    background-size: 2.05vw;
  }
  .poster_wrap figure {
    width: 26.89vw;
  }
}
@media screen and (max-width: 750px) {
  .poster_wrap {
    padding-top: 26.67vw;
    margin-bottom: 16vw;
  }
  .poster_wrap .icon_title {
    text-align: center;
    line-height: 1.33em;
  }
  .poster_wrap .icon_title span {
    text-align: left;
    background: url(/common/images/kyousan/icon_title.webp) no-repeat left top;
    background-size: 10.67vw;
  }
  .poster_wrap {
    padding-top: 26.67vw;
    margin-bottom: 0;
  }
  .poster_wrap .poster_text {
    width: 92%;
    margin: 0 auto;
  }
  .poster_wrap .poster_text p {
    font-size: 4.27vw;
  }
  .poster_wrap .poster_text figure {
    margin-bottom: 8vw;
  }
  .poster_wrap .poster_text ul {
    position: relative;
  }
  .poster_wrap .poster_text ul li {
    width: 69.33vw;
    margin: 0 auto;
    margin-bottom: 4vw;
  }
  .poster_wrap .poster_text ul li a {
    background-size: 6.13vw;
  }
  .poster_wrap .poster_text ul li a:hover {
    background-size: 6.13vw;
  }
  .poster_wrap figure {
    width: 57.87vw;
    margin: 0 auto;
  }
}

.prayer_wrap {
  position: relative;
  padding-top: 100px;
  margin-bottom: 150px;
}
.prayer_wrap p {
  font-size: 18px;
}
.prayer_wrap p:last-of-type {
  margin-bottom: 0;
}
.prayer_wrap .home_btn {
  text-align: center;
  font-size: 16px;
}
.prayer_wrap .home_btn a {
  display: inline-block;
  width: 390px;
  margin: 0 auto;
  padding: 0.9em 0 0.8em 0;
  background: url(/common/images/kyousan/icon_home.svg) no-repeat right 2em center #000;
  color: #FFF;
  text-decoration: none;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.prayer_wrap .home_btn a:hover {
  background: url(/common/images/kyousan/icon_home.svg) no-repeat right 2em center #C1B079;
}
@media screen and (max-width: 1320px) {
  .prayer_wrap {
    padding-top: 7.58vw;
    margin-bottom: 11.36vw;
  }
  .prayer_wrap p {
    font-size: 1.36vw;
  }
  .prayer_wrap .home_btn {
    font-size: 1.21vw;
  }
  .prayer_wrap .home_btn a {
    width: 29.55vw;
  }
}
@media screen and (max-width: 750px) {
  .prayer_wrap {
    padding-top: 26.67vw;
    padding-top: 26.67vw;
    width: 92%;
    margin: 0 auto 13.33vw auto;
  }
  .prayer_wrap p {
    font-size: 4.27vw;
  }
  .prayer_wrap .home_btn {
    font-size: 3.73vw;
  }
  .prayer_wrap .home_btn a {
    width: 74.67vw;
    background: url(/common/images/kyousan/icon_home.svg) no-repeat right 0.6em center #000;
  }
  .prayer_wrap .home_btn a:hover {
    background: url(/common/images/kyousan/icon_home.svg) no-repeat right 0.6em center #C1B079;
  }
}

.prayer_image {
  position: relative;
  width: calc(100vw - 25px);
  height: 1000px;
  left: 33.1%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 50px 0;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  background: url(/common/images/kyousan/negai_image.webp) no-repeat center center;
  background-size: cover;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
          justify-content: center;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
}
.prayer_image div h2 {
  font-size: 30px;
  margin: 0 0 20px 0;
  color: #FFF;
  text-align: center;
  text-shadow: 0px 0px 15px rgba(0, 0, 0, 0.9);
}
.prayer_image div p {
  font-size: 35px;
  color: #FFF;
  margin: 0;
  line-height: 1.7em;
  text-align: center;
  text-shadow: 0px 0px 15px rgba(0, 0, 0, 0.9);
}
@media screen and (max-width: 1320px) {
  .prayer_image {
    height: 75.76vw;
    padding: 3.79vw 0;
  }
  .prayer_image div h2 {
    font-size: 2.27vw;
    margin: 0 0 1.52vw 0;
  }
  .prayer_image div p {
    font-size: 2.65vw;
  }
}
@media screen and (max-width: 750px) {
  .prayer_image {
    width: 100%;
    padding: 24vw 0;
    left: auto;
    right: auto;
    margin-left: 0;
    margin-right: 0;
  }
  .prayer_image div h2 {
    font-size: 5.33vw;
    margin: 0 0 4.53vw 0;
  }
  .prayer_image div p {
    font-size: 6.67vw;
  }
}

.access_outer {
  position: relative;
  width: calc(100vw - 25px);
  left: 33.1%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 100px 0 150px 0;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  background: #FFF;
  background-size: cover;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
          justify-content: center;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
}
@media screen and (max-width: 1320px) {
  .access_outer {
    padding: 7.58vw 0 11.36vw 0;
  }
}
@media screen and (max-width: 750px) {
  .access_outer {
    width: 100%;
    left: auto;
    padding: 26.67vw 0 13.33vw 0;
    right: auto;
    margin-left: 0;
    margin-right: 0;
  }
}

.access_wrap {
  position: relative;
  padding-top: 100px;
  left: 155px;
}
.access_wrap ul {
  list-style: none;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: stretch;
  -webkit-box-align: stretch;
          align-items: stretch;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.access_wrap ul li {
  width: 31.4%;
  padding: 20px 20px 20px 68px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  line-height: 1.5em;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
}
.access_wrap ul li.taxi {
  background: url(/common/images/kyousan/icon_access_taxi.svg) no-repeat left 20px center rgba(193, 176, 121, 0.25);
  background-size: 26px;
  border-radius: 20px;
}
.access_wrap ul li.bus {
  background: url(/common/images/kyousan/icon_access_bus.svg) no-repeat left 20px center rgba(193, 176, 121, 0.25);
  background-size: 26px;
  border-radius: 20px;
}
.access_wrap ul li.parking {
  background: url(/common/images/kyousan/icon_access_parking.svg) no-repeat left 20px center rgba(193, 176, 121, 0.25);
  background-size: 26px;
  border-radius: 20px;
}
@media screen and (max-width: 1320px) {
  .access_wrap {
    padding-top: 7.58vw;
    left: 11.74vw;
  }
  .access_wrap ul li {
    padding: 1.52vw 1.52vw 1.52vw 5.15vw;
  }
  .access_wrap ul li.taxi {
    background: url(/common/images/kyousan/icon_access_taxi.svg) no-repeat left 1.52vw center rgba(193, 176, 121, 0.25);
    background-size: 1.97vw;
    border-radius: 1.52vw;
  }
  .access_wrap ul li.bus {
    background: url(/common/images/kyousan/icon_access_bus.svg) no-repeat left 1.52vw center rgba(193, 176, 121, 0.25);
    background-size: 1.97vw;
    border-radius: 1.52vw;
  }
  .access_wrap ul li.parking {
    background: url(/common/images/kyousan/icon_access_parking.svg) no-repeat left 1.52vw center rgba(193, 176, 121, 0.25);
    background-size: 1.97vw;
    border-radius: 1.52vw;
  }
}
@media screen and (max-width: 750px) {
  .access_wrap {
    width: 92%;
    margin: 0 auto;
    padding-top: 26.67vw;
    left: auto;
  }
  .access_wrap ul {
    width: 77.33vw;
    margin: 0 auto;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .access_wrap ul li {
    width: 100%;
    padding: 9.07vw 3.73vw 9.07vw 18.13vw;
    margin-bottom: 3.2vw;
  }
  .access_wrap ul li.taxi {
    background: url(/common/images/kyousan/icon_access_taxi.svg) no-repeat left 5.33vw center rgba(193, 176, 121, 0.25);
    background-size: 7.2vw;
    border-radius: 5.33vw;
  }
  .access_wrap ul li.bus {
    background: url(/common/images/kyousan/icon_access_bus.svg) no-repeat left 6.67vw center rgba(193, 176, 121, 0.25);
    background-size: 6.27vw;
    border-radius: 5.33vw;
  }
  .access_wrap ul li.parking {
    background: url(/common/images/kyousan/icon_access_parking.svg) no-repeat left 6.67vw center rgba(193, 176, 121, 0.25);
    background-size: 7.2vw;
    border-radius: 5.33vw;
  }
}

.access_map {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid #707070;
  margin-bottom: 30px;
  width: 920px;
  line-height: 0;
}
.access_map iframe {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: calc(100% - 1px);
}
@media screen and (max-width: 1320px) {
  .access_map {
    margin-bottom: 2.27vw;
    width: 69.7vw;
  }
}
@media screen and (max-width: 750px) {
  .access_map {
    width: 100%;
    margin-bottom: 5.33vw;
  }
  .access_map iframe {
    height: 60vw;
  }
}

.access_nameaddress {
  margin-bottom: 30px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.access_nameaddress h3 {
  font-size: 23px;
  margin-right: 2em;
}
.access_nameaddress address {
  font-size: 18px;
  font-style: normal;
  line-height: 1.6em;
}
@media screen and (max-width: 1320px) {
  .access_nameaddress {
    margin-bottom: 2.27vw;
  }
  .access_nameaddress h3 {
    font-size: 1.74vw;
  }
  .access_nameaddress address {
    font-size: 1.36vw;
  }
}
@media screen and (max-width: 750px) {
  .access_nameaddress {
    margin-bottom: 8vw;
  }
  .access_nameaddress h3 {
    font-size: 5.33vw;
    margin-bottom: 5.33vw;
    white-space: nowrap;
    width: 100%;
  }
  .access_nameaddress address {
    font-size: 4.27vw;
    width: 100%;
  }
}

.contact_outer {
  position: relative;
  width: calc(100vw - 25px);
  left: 33.1%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 50px 0;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  background: #B55A5A;
}
@media screen and (max-width: 1320px) {
  .contact_outer {
    padding: 3.79vw 0;
  }
}
@media screen and (max-width: 750px) {
  .contact_outer {
    width: 100%;
    left: auto;
    padding: 7.2vw 0;
    right: auto;
    margin-left: 0;
    margin-right: 0;
  }
}

.footer_contact_inner {
  position: relative;
  width: 920px;
  margin: 0 auto;
  left: 155px;
}
.footer_contact_inner h2 {
  color: #FFF;
  line-height: 1.6em;
  font-size: 30px;
  margin: 0 0 11px 0;
  text-align: center;
}
.footer_contact_inner h3 {
  width: 740px;
  margin: 0 auto 20px auto;
  color: #FFF;
  font-size: 25px;
  padding: 4px 0 6px 0;
  line-height: 1.6em;
  text-align: center;
  border-top: 1px solid #FFF;
  border-bottom: 1px solid #FFF;
}
.footer_contact_inner .tel_time {
  width: 740px;
  margin: 0 auto 15px auto;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
}
.footer_contact_inner .tel_time .tel {
  font-size: 49px;
  line-height: 1em;
  color: #FFF;
  padding-left: 42px;
  margin: 0;
  background: url(/common/images/kyousan/icon_contact_tel.svg) no-repeat left top 12px;
  background-size: 28px;
}
.footer_contact_inner .tel_time .tel a {
  text-decoration: none;
  color: #FFF;
}
.footer_contact_inner .tel_time time {
  color: #FFF;
  font-size: 22px;
}
.footer_contact_inner .fax_mail {
  width: 740px;
  margin: 0 auto 15px auto;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
          justify-content: center;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
}
.footer_contact_inner .fax_mail p {
  font-size: 20px;
  margin: 0 24px;
}
.footer_contact_inner .fax_mail p a {
  color: #FFF;
  text-decoration: none;
}
.footer_contact_inner .fax_mail p.fax a {
  padding-left: 36px;
  background: url(/common/images/kyousan/icon_contact_fax.svg) no-repeat left top 3px;
  background-size: 26px;
}
.footer_contact_inner .fax_mail p.mail a {
  padding-left: 32px;
  background: url(/common/images/kyousan/icon_contact_mail.svg) no-repeat left top 9px;
  background-size: 22px;
}
@media screen and (max-width: 1320px) {
  .footer_contact_inner {
    width: 69.7vw;
    left: 11.74vw;
  }
  .footer_contact_inner h2 {
    font-size: 2.27vw;
    margin: 0 0 0.83vw 0;
  }
  .footer_contact_inner h3 {
    width: 56.06vw;
    margin: 0 auto 1.52vw auto;
    font-size: 1.89vw;
  }
  .footer_contact_inner .tel_time {
    width: 56.06vw;
    margin: 0 auto 1.14vw auto;
  }
  .footer_contact_inner .tel_time .tel {
    font-size: 3.71vw;
    padding-left: 3.18vw;
    background: url(/common/images/kyousan/icon_contact_tel.svg) no-repeat left top 0.91vw;
    background-size: 2.12vw;
  }
  .footer_contact_inner .tel_time time {
    font-size: 1.67vw;
  }
  .footer_contact_inner .fax_mail {
    width: 56.06vw;
    margin: 0 auto 1.14vw auto;
  }
  .footer_contact_inner .fax_mail p {
    font-size: 1.52vw;
    margin: 0 1.82vw;
  }
  .footer_contact_inner .fax_mail p.fax a {
    padding-left: 2.73vw;
    background-size: 1.97vw;
  }
  .footer_contact_inner .fax_mail p.mail a {
    padding-left: 2.42vw;
    background-size: 1.67vw;
  }
}
@media screen and (max-width: 750px) {
  .footer_contact_inner {
    width: 92%;
    left: auto;
  }
  .footer_contact_inner h2 {
    font-size: 6.67vw;
    margin: 0 0 4.8vw 0;
  }
  .footer_contact_inner h3 {
    width: 100%;
    margin: 0 auto 3.2vw auto;
    font-size: 5.87vw;
    line-height: 1.36em;
    text-align: center;
  }
  .footer_contact_inner .tel_time {
    width: 100%;
    margin: 0 auto 4vw auto;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .footer_contact_inner .tel_time .tel {
    width: 100%;
    text-align: center;
    line-height: 1.1em;
    font-size: 11.2vw;
    padding-left: 8.8vw;
    background: url(/common/images/kyousan/icon_contact_tel.svg) no-repeat left top 0.2em;
    background-size: 6.93vw;
    margin-bottom: 0.1em;
  }
  .footer_contact_inner .tel_time time {
    font-size: 5.33vw;
    text-align: center;
    display: block;
    width: 100%;
  }
  .footer_contact_inner .fax_mail {
    width: 100%;
    margin: 0 auto;
    display: block;
  }
  .footer_contact_inner .fax_mail p {
    font-size: 5.33vw;
    margin: 0 0 0 1em;
  }
  .footer_contact_inner .fax_mail p.fax a {
    padding-left: 8.53vw;
    background-size: 6.93vw;
  }
  .footer_contact_inner .fax_mail p.mail a {
    padding-left: 8.53vw;
    background-size: 5.87vw;
  }
}

.detail_nav {
  position: sticky;
  top: 130px;
  z-index: 10;
  padding-top: 100px;
}
@media screen and (max-width: 1320px) {
  .detail_nav {
    padding-top: 7.58vw;
    top: 9.85vw;
  }
}
@media screen and (max-width: 750px) {
  .detail_nav {
    display: none;
  }
}

.detail_nav ul {
  position: relative;
}
.detail_nav ul li {
  list-style: none;
  margin-bottom: 15px;
}
.detail_nav ul li a {
  color: #818181;
  text-decoration: none;
}
.detail_nav ul li a.active {
  color: #000;
  position: relative;
  display: inline-block;
}
.detail_nav ul li a.active::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  border-bottom: 1px solid #B55A5A;
}
@media screen and (max-width: 1320px) {
  .detail_nav ul li {
    margin-bottom: 1.14vw;
  }
}

.detail main {
  padding-top: 230px;
}
.detail .contact_outer {
  width: 100%;
  left: auto;
  right: auto;
  margin-left: 0;
  margin-right: 0;
}
.detail .footer_contact_inner {
  left: auto;
}
@media screen and (max-width: 1320px) {
  .detail main {
    padding-top: 17.42vw;
  }
}
@media screen and (max-width: 750px) {
  .detail main {
    padding-top: 29.33vw;
  }
  .detail .icon_title {
    text-align: center;
    line-height: 1.33em;
  }
  .detail .icon_title span {
    text-align: left;
    background: url(/common/images/kyousan/icon_title.webp) no-repeat left top;
    background-size: 10.67vw;
  }
}

.page_title {
  margin-bottom: 77px;
}
.page_title .icon_title {
  margin-bottom: 50px;
}
.page_title h3 {
  text-align: center;
  font-size: 22px;
  margin-bottom: 0.9em;
  line-height: 2em;
}
.page_title p {
  text-align: center;
  font-size: 18px;
  margin-bottom: 0;
}
@media screen and (max-width: 1320px) {
  .page_title {
    margin-bottom: 5.83vw;
  }
  .page_title .icon_title {
    margin-bottom: 3.79vw;
  }
  .page_title h3 {
    font-size: 1.67vw;
  }
  .page_title p {
    font-size: 1.36vw;
  }
}
@media screen and (max-width: 750px) {
  .page_title {
    margin-bottom: 12vw;
  }
  .page_title .icon_title {
    margin-bottom: 5.33vw;
  }
  .page_title h3 {
    font-size: 4.8vw;
  }
  .page_title p {
    font-size: 3.73vw;
  }
}

.satellite_wrap {
  padding-bottom: 130px;
}
@media screen and (max-width: 1320px) {
  .satellite_wrap {
    padding-bottom: 9.85vw;
  }
}
@media screen and (max-width: 750px) {
  .satellite_wrap {
    padding-bottom: 26.67vw;
  }
}

.satellite_detail {
  position: relative;
  width: 800px;
  margin: 0 auto 45px auto;
}
.satellite_detail article {
  position: relative;
  padding: 30px 0;
  border-top: 1px solid #707070;
}
.satellite_detail article:last-of-type {
  border-bottom: 1px solid #707070;
}
.satellite_detail article {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.satellite_detail article .icon_wrap {
  width: 104px;
}
.satellite_detail article .icon_wrap span {
  display: block;
  color: #FFF;
  width: 74px;
  height: 74px;
  font-size: 18px;
  background: #B55A5A;
  border-radius: 37px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
          justify-content: center;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
}
.satellite_detail article .sate_title {
  width: 645px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.satellite_detail article .sate_title .sate_cat {
  display: inline-block;
  width: 140px;
  font-size: 18px;
  margin-right: 15px;
  line-height: 1.2em;
  padding: 0.5em 0 0.4em 0;
  text-align: center;
  background: #C1B079;
  color: #FFF;
  margin-bottom: 15px;
}
.satellite_detail article .sate_title h4 {
  font-size: 30px;
  margin-bottom: 15px;
  line-height: 1.2em;
}
.satellite_detail article .sate_title address {
  font-size: 18px;
  line-height: 1.4em;
  font-style: normal;
  display: inline-block;
  width: 100%;
}
@media screen and (max-width: 1320px) {
  .satellite_detail {
    width: 60.61vw;
    margin: 0 auto 3.41vw auto;
  }
  .satellite_detail article {
    padding: 2.27vw 0;
  }
  .satellite_detail article .icon_wrap {
    width: 7.88vw;
  }
  .satellite_detail article .icon_wrap span {
    width: 5.61vw;
    height: 5.61vw;
    font-size: 1.36vw;
    border-radius: 2.8vw;
  }
  .satellite_detail article .sate_title {
    width: 48.86vw;
  }
  .satellite_detail article .sate_title .sate_cat {
    width: 10.61vw;
    font-size: 1.36vw;
    margin-right: 1.14vw;
    margin-bottom: 1.14vw;
  }
  .satellite_detail article .sate_title h4 {
    font-size: 2.27vw;
    margin-bottom: 1.14vw;
  }
  .satellite_detail article .sate_title address {
    font-size: 1.36vw;
  }
}
@media screen and (max-width: 750px) {
  .satellite_detail {
    width: 91.47vw;
    margin: 0 auto 12vw auto;
  }
  .satellite_detail article {
    padding: 5.33vw 0;
  }
  .satellite_detail article .icon_wrap {
    width: 36.53vw;
    margin-right: 4vw;
  }
  .satellite_detail article .icon_wrap span {
    width: 36.53vw;
    height: auto;
    text-align: center;
    background: #B55A5A;
    font-size: 4.8vw;
    margin-right: 4vw;
    margin-bottom: 4vw;
    line-height: 1.2em;
    padding: 0.5em 0 0.4em 0;
    border-radius: 0;
    display: block;
  }
  .satellite_detail article .sate_title {
    width: 100%;
  }
  .satellite_detail article .sate_title .sate_cat {
    width: 36.53vw;
    font-size: 4.8vw;
    margin-right: 4vw;
    margin-bottom: 4vw;
  }
  .satellite_detail article .sate_title h4 {
    width: 100%;
    font-size: 6.67vw;
    margin-bottom: 1.33vw;
  }
  .satellite_detail article .sate_title address {
    width: 100%;
    font-size: 4.27vw;
  }
}

/* font */
.pagetop,
.sankahi,
.home_btn,
.poster_text ul,
.pdf_btn,
.place_btn,
.copyright,
.official,
.header_access,
#menu,
.goth {
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "Noto Sans", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-weight: 500;
}