@charset "utf-8";
/* CSS Document */

/*
=========================================
    common
=========================================
*/

.pc {
  display: block;
}

.sp {
  display: none;
}

a {
  text-decoration: none;
  color: inherit;
  display: block;
}

a:hover {
  opacity: 0.6;
}

/*
=========================================
    layout
=========================================
*/

.wrap {
  text-align: center;
}

.wrap {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-feature-settings: "palt";
  background: #fffeed;
  color: #111;
  overflow-x: hidden;
}

/*#toppage {
    background: url(/images/main_visual.jpg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: top;
    position: absolute;
    width: 100%;
    margin: 0 auto;
}*/

li {
  list-style: none;
}

h2 {
  font-size: 32px;
  color: #834e26;
  line-height: 150%;
}

h2 span {
  padding-left: 10px;
  font-size: 20px;
}

.introduction h3 {
  color: #333;
  font-size: 20px;
  text-align: left;
  line-height: 180%;
}

.caution {
  font-size: 18px;
  color: #834e26;
}

.caution02 {
  font-size: 14px;
  color: #f00;
  margin-top: 1%;
}

/*
=========================================
    mainVisual
=========================================
*/

.mainVisual {
  position: relative;
  width: 100%;
  margin: 0 auto;
}

#toppage .mainVisual {
  background: url(/images/main_visual.jpg);
  background-repeat: no-repeat;
  background-position: top;
  height: 603px;
}

.mainVisual__inner {
  /*width: 1080px;*/
  /*width: 70%;*/
  width: 100%;
  margin: 0 auto;
  height: 603px;
  position: relative;
  /*background: url(/images/main_fog.png) repeat-x;*/
}

/*.mainVisual__inner p:first-child {
    position: absolute;
    bottom: 2%;
    left: 2%;
}*/

.mainVisual__inner p:nth-child(1) {
  position: relative;
  bottom: -520px;
  margin: 0 auto;
}

.main__text {
  /*text-align: right;*/
  /*padding: 1.5% 0 0 0;*/
  /*    padding: 1.5% 2% 0 0;*/
  text-align: right;
  position: absolute;
  right: 98px;
  top: 15px;
}

.main__emblem {
  text-align: right;
  position: absolute;
  right: 70px;
  top: 45px;
}

.main__emblem_2 {
  text-align: right;
  position: absolute;
  right: 70px;
  top: 145px;
}

/*h1{
position: absolute;
top: 45%;
left: 5%;
text-align: left;
padding: 0 0 0 5%;
}*/

/*h1 img{
    height: auto;
    max-width: 50%;
    min-width: 50%;

}
*/

.main__app {
  /*position: absolute;*/
  right: 5%;
  bottom: 10%;
  text-align: right;
  margin-bottom: 5%;
}

.main__app a {
  /*text-align: right;
    padding-bottom: 5%;*/
  /*text-align: right;*/
  padding-right: 5%;
  display: inline-block;
}

.main__note {
  position: absolute;
  bottom: 530px;
  width: 100%;
}

.main__note p {
  text-align: left;
  font-size: 12px;
  line-height: 140%;
  background-image: inherit;
  padding: 0 10% 1%;
}

.main__note h1 {
  /*text-align: center;*/
  text-align: left;
  font-size: 12px;
  line-height: 140%;
  background-image: inherit;
  padding: 1% 10% 0;
  font-weight: normal;
}

.ico_cloud {
  padding: 1% 1% 0;
  text-align: left;
}

.ico_cloud p {
  position: absolute;
  top: -30%;
  padding: 0;
}

.read {
  position: relative;
  bottom: 430px;
  width: 980px;
  margin: 0 auto;
}

.read img {
  max-width: 525px;
  width: 90%;
  margin: 0 auto;
  padding-right: 50px;
}

/*
=========================================
    bg-slider
=========================================
*/

.bg-slider {
  width: 100%;
  height: auto;
  width: 100vw;
  height: 100vh;
  background-position: center center;
  background-size: cover;
  /*display: flex;
        align-items: center;*/
  justify-content: center;
  /*background: url(/images/main_visual.jpg) no-repeat;
    position: absolute;
    z-index: -1;
    overflow: hidden;
    top: 0px;
    left: 0px;
    margin: 0px;*/
}

.bg-slider__title {
  color: #fff;
  font-size: 48px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  text-shadow: 1px 1px 1px #000;
}

/*
=========================================
    contents
=========================================
*/

.contents {
  /*width: 1080px;
    margin: 0 auto;*/
  /*padding: 80px 0 0 0;*/
  background: #fffeed;

  padding: 80px 0 0 0;
  box-sizing: border-box;
}

#toppage .contents {
  padding: 290px 50px 0 0;
}

.news {
  width: 960px;
  margin: 0 auto;
}

.news h2 {
  margin-top: 20px;
}

.news__list {
  margin: 70px 0;
  overflow: hidden;
}

.news__list li {
  /*display: table-cell;*/
  float: left;
  padding-right: 30px;
  padding-bottom: 30px;
  width: 300px;
}

.news__list li:nth-child(3n) {
  padding-right: 0;
}

.news__list dt {
  padding-bottom: 10px;
}

.news__list dt img {
  width: 300px;
  height: 200px;
}

.news__list dd {
  font-size: 18px;
  color: #333;
  text-align: left;
  line-height: 150%;
  font-weight: bold;
}

.news__more {
  clear: both;
  padding: 25px 0 0;
}

.newsMore__button {
  font-size: 20px;
  color: #834e26;
  width: 130px;
  margin: 0 auto;
  font-weight: bold;
}

.newsMore__button a {
  background: url(/images/icon_rightArrow.png) no-repeat;
  background-position: right center;
}

/*=========================================
introduction
=========================================
*/

.message {
  background: url(/images/message_bg.jpg) repeat-y;
  background-size: 100% auto;
  /*margin: 125px 0 110px;*/
  margin: 30px 0 110px;
}

.message__inner {
  padding: 50px 0;
}

.message__box {
  width: 980px;
  margin: 0 auto;
  /*background-color: #fff;
    background-color: rgb(255,255,255,0.9);*/
  background: rgb(255, 255, 255);
  filter: alpha(opacity=50);
  background: rgba(255, 255, 255, 0.9);
  padding: 60px 40px 20px;
  overflow: hidden;
  box-sizing: border-box;
}

.message__box h2 {
  margin-bottom: 8%;
}

.message__box h3 {
  font-size: 20px;
  line-height: 180%;
  text-align: left;
  margin-bottom: 3%;
  color: #395925;
}

.message__box p {
  /*font-family: '游ゴシック体', YuGothic, '游ゴシック', Yu Gothic, 'メイリオ', sans-serif;*/
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-weight: bold;
}

.message__box p .name {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", Yu Gothic, "メイリオ", sans-serif;
}

.message__box .left_box {
  float: left;
  width: 50%;
  padding: 0 2% 0 0;
  box-sizing: border-box;
  clear: both;
}

.message__box .left_box p {
  text-align: left;
  line-height: 220%;
  font-size: 14px;
  margin-bottom: 30px;
  /*font-weight: bold;*/
}

.message__box .right_box {
  float: right;
  width: 50%;
}

.message__box .center_box {
  clear: both;
  width: 100%;
}

.message__box .center_box h3 {
  margin-bottom: 1.5%;
}

.message__box .center_box p {
  text-align: left;
  line-height: 220%;
  font-size: 14px;
  margin-bottom: 30px;
}

.message__box .left_box li,
.message__box .right_box li {
  margin-bottom: 20px;
}

.message__box .right_box li p {
  text-align: right;
  padding-right: 1%;
  margin-top: 2%;
}

.message__box .info_box {
  padding: 30px;
  clear: both;
  border: 1px solid #ddd;
  overflow: hidden;
}

.message__box .info_box p {
  text-align: left;
  padding: 10px 0 0;
  line-height: 220%;
  font-size: 14px;
}

.message__box .h3_area {
  padding: 50px 0;
}

.message__box .info_box .h3_area {
  padding: 0;
}

.message .floatL_box {
  float: left;
  width: 60%;
  box-sizing: border-box;
}

.message .floatR_box {
  float: right;
  padding: 0 0 0 10px;
  width: 40%;
  box-sizing: border-box;
}

.message .floatR_box p {
  margin-top: 10px;
  color: #38571a;
  font-size: 12px;
  line-height: 160%;
}

/*
=========================================
    introduction
=========================================
*/

.introduction {
  background: url(/introduction/images/introduction_bg.jpg) repeat-y;
  background-size: 100% auto;
  margin-bottom: 120px;
}

.introduction__inner {
  padding: 50px 0;
}

.subHeader {
  padding: 20px 0 0 0;
}

.subHeader span {
  font-size: 14px;
  color: #834f27;
  font-weight: bold;
}

.introduction__box {
  width: 980px;
  margin: 0 auto;
  /*background-color: #fff;
    background-color: rgb(255,255,255,0.9);*/
  background: rgb(255, 255, 255);
  filter: alpha(opacity=50);
  background: rgba(255, 255, 255, 0.9);
  padding: 60px 40px 35px;
  overflow: hidden;
  box-sizing: border-box;
}

.introduction__box .left_box {
  float: left;
  width: 50%;
  padding: 0 2% 0 0;
  box-sizing: border-box;
}

.introduction__box .left_box p {
  text-align: left;
  line-height: 220%;
  font-size: 14px;
  margin-bottom: 30px;
  /*font-weight: bold;*/
}

.introduction__box .right_box {
  float: right;
  width: 50%;
}

.introduction__box .right_box li {
  margin-bottom: 20px;
}

.introduction__box .info_box {
  padding: 30px;
  clear: both;
  border: 1px solid #ddd;
  overflow: hidden;
}

.introduction__box .info_box p {
  text-align: left;
  padding: 10px 0 0;
  line-height: 220%;
  font-size: 14px;
}

.introduction__box .h3_area {
  padding: 50px 0;
}

.introduction__box .info_box .h3_area {
  padding: 0;
}

.introduction .floatL_box {
  float: left;
  width: 60%;
  box-sizing: border-box;
}

.introduction .floatR_box {
  float: right;
  padding: 0 0 0 10px;
  width: 40%;
  box-sizing: border-box;
}

.introduction .floatR_box p {
  margin-top: 10px;
  color: #38571a;
  font-size: 12px;
  line-height: 160%;
}

/*
=========================================
cast
=========================================
*/

.movie__inner {
  width: 980px;
  margin: auto;
}

.movie__column_1 {
  margin: 30px 0 155px;
}

.movie__column_1 iframe {
  width: 100%;
}

/*
=========================================
    cast
=========================================
*/

.cast {
  padding: 55px 0 0;
  overflow: hidden;
}

.cast__inner {
  width: 980px;
  margin: 0 auto;
}

.cast .listBox_2column li {
  margin-bottom: 15px;
}

.click01 {
  margin-top: 40%;
  color: #f00;
}

.click02 {
  color: #f00;
}

.sponsor__box {
  border: 1px solid #d8c9b2;
  padding: 30px;
}

.sponsor__box h3 {
  font-size: 20px;
  font-weight: bold;
  color: #834f27;
  margin-bottom: 15px;
}

.sponsor__box h3 span img {
  vertical-align: middle;
  padding-left: 15px;
}

.sponsor__box p {
  font-size: 14px;
  text-align: left;
  line-height: 180%;
}

/*
=========================================
link
=========================================
*/

.link figure {
  padding-bottom: 100px;
}

/*
=========================================
    staff
=========================================
*/

.staff {
  /*padding: 20px 0;*/
  overflow: hidden;
}

.staff__inner {
  width: 980px;
  margin: 0 auto;
}

.staff .listBox_2column li {
  margin-bottom: 15px;
}

/*
=========================================
    music
=========================================
*/

.music {
  padding: 0;
  overflow: hidden;
}

.music__inner {
  width: 980px;
  margin: 0 auto;
}

.music .subText {
  text-align: left;
  font-size: 14px;
  line-height: 180%;
}

.music .listBox_area02 .subText {
  margin-top: 15px;
}

/*
=========================================
    book
=========================================
*/

.book {
  padding: 0;
  overflow: hidden;
}

.book__inner {
  width: 980px;
  margin: 30px auto 0;
}

.book .listBox_area {
  padding: 80px 0 55px;
}

.book .message {
  font-size: 14px;
  margin-bottom: 40px;
}

/*
=========================================
    footer
=========================================
*/

footer {
  background: #f2ecd9;
  padding: 45px 0;
  clear: both;
}

footer p {
  font-size: 14px;
  line-height: 180%;
}

footer figure {
  margin-bottom: 3%;
}

footer figure img {
  max-width: 200px;
  width: 100%;
}

footer figure + p {
  margin-bottom: 3%;
  margin-right: 3%;
  margin-left: 3%;
}

/*
=========================================
   listBox_area
=========================================
*/

.listBox_area {
  overflow: hidden;
}

.cast .listBox_area {
  padding: 55px 0 45px;
}

.staff .listBox_area {
  padding: 55px 0 45px;
}

.music .listBox_area01 {
  padding: 50px 0 0;
}

.music .listBox_area04 {
  padding: 30 0 70px;
  margin-bottom: 100px;
}

/*
=========================================
   listBox_2column
=========================================
*/

.listBox_2column {
  padding: 0 0 30px;
}

.listBox_2column .subHeader {
  font-size: 32px;
  color: #834c26;
  font-weight: bold;
  padding: 0 0 50px 0;
  line-height: 150%;
}

.listBox_2column ul {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;

  /*margin-bottom: 35px;*/
}

.listBox_2column li {
  float: left;
  width: 50%;
  /*margin-bottom: 15px;*/
}

.listBox_2column li:last-shild {
  margin-bottom: 0;
}

.listBox_2column li dl {
  display: table;
  text-align: left;
  color: #834c26;
  font-weight: bold;
  width: 100%;
}

.listBox_2column li dt {
  display: table-cell;
  width: 230px;
}

.listBox_2column li dt span {
  display: block;
  font-size: 8px;
  padding-top: 5px;
}

.listBox_2column li dt img {
  border: 1px solid #d3b89b;
}

.listBox_2column li dd {
  font-size: 20px;
  display: table-cell;
  vertical-align: top;
  /*padding-left: 20px;*/
  line-height: 150%;
  padding: 0 10px 0 20px;
}

.listBox_2column li dd span {
  font-size: 14px;
  display: block;
  line-height: 150%;
  /*padding-top: 10px;*/
}

/*
=========================================
   listBox_4column
=========================================
*/

.listBox_4column {
  width: 980px;
  margin: 0 auto;
}

.listBox_4column ul {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.listBox_4column li {
  float: left;
  width: 25%;
  margin-bottom: 50px;
}

.listBox_4column li dd {
  font-size: 11px;
  color: #333;
  line-height: 150%;
}

.listBox_4column li:last-shild {
  margin-bottom: 0;
}

.title {
  font-size: 14px;
  color: #111;
  margin: 10px 0;
  line-height: 150%;
}

/*
=========================================
   modal（pop up）
=========================================
*/

.lock {
  overflow: hidden;
}

.modal-content {
  position: relative;
  display: none;
  width: 50%;
  margin: 30px;
  padding: 10px 20px;
  /*border: 2px solid #aaa;*/
  /*background: #fff;*/
}

.modal-content p {
  margin: 0;
  padding: 0;
}

.modal-overlay {
  z-index: 1;
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 120%;
  background-color: rgba(0, 0, 0, 0.75);
}

.modal-wrap {
  z-index: 2;
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
}

.modal-open:hover {
  cursor: pointer;
  color: #f00;
}

.modal-close {
  /*color: #00f;
    text-decoration: underline;*/
  color: #fff;
  text-align: right;
  font-size: 80px;
}

.modal-close:hover {
  cursor: pointer;
  /*color: #f00;*/
}

.profile {
  overflow: hidden;
  background: #fff;
  padding: 45px 30px;

  width: 100%;
  box-sizing: border-box;
}

.profile__img {
  /*width: 230px;*/
  /*width: 26%;
    float: left;*/
  display: table-cell;
  width: 30%;
}

.profile__img img {
  width: 100%;
}

.profile__text {
  /*width: 74%;
    float: right;
    /*width: 650px;*/
  text-align: left;
  padding-left: 20px;
  box-sizing: border-box;
  display: table-cell;
  vertical-align: top;
  width: 70%;
}

.profile__text dt {
  font-size: 30px;
  color: #834c26;
}

.profile__text dt span {
  font-size: 14px;
  display: block;
  line-height: 150%;
  margin: 5px 0 25px;
}

.profile__text dd p {
  font-size: 14px;
  color: #111;
  line-height: 150%;
  margin-bottom: 20px;
}

/*.closeArea {
    color: #FFFFFF;
}
.close {
    font-size: 80px;
    text-align: right;
}*/

.profileBox {
  border: 1px solid #dacabe;
  font-size: 13px;
  color: #333333;
  padding: 20px;
  line-height: 150%;
}

/*モーダルとの相性合わせ*/

.modal-wrap {
  z-index: 100;
}

.modal-overlay {
  z-index: 50;
}

.large_img img {
  width: 100%;
  height: auto;
}

.pop_text {
  font-size: 14px;
  color: #111;
  line-height: 150%;
  margin-bottom: 20px;
}

.pop_img {
  width: 50%;
  margin: 0 auto 20px;
}

.pop_img img {
  width: 100%;
  height: auto;
}

.news__list .arrow a {
  background: url(/images/icon_rightArrow_2.png) no-repeat;

  background-position-x: 0%;
  background-position-y: 0%;

  background-position: left center;

  text-decoration: underline;

  display: block;

  padding-left: 30px;
}

/*
=========================================
  color
=========================================
*/

.tColor_pink {
  color: #bc4e8b !important;
}

.tColor_orange {
  color: #ef7f41 !important;
}

.tColor_brown {
  color: #834e26 !important;
}

.tColor_purple {
  color: #0000ff !important;
}

.tColor_red {
  color: #ff0000 !important;
}

.tColor_green {
  color: #1c9806 !important;
}

.tColor_blue {
  color: blue !important;
}

/*
=========================================
   module
=========================================
*/

.fontB {
  font-weight: bold;
}

.ver_middle {
  vertical-align: middle;
}

.w980 {
  width: 980px;
}

.mtm30 {
  margin-top: -30px !important;
}

.mtm25 {
  margin-top: -25px !important;
}

.mtm20 {
  margin-top: -20px !important;
}

.mtm15 {
  margin-top: -15px !important;
}

.mtm10 {
  margin-top: -10px !important;
}

.mtm5 {
  margin-top: -5px !important;
}

.mtm3 {
  margin-top: -3px !important;
}

.mt0 {
  margin-top: 0 !important;
}

.mt3 {
  margin-top: 3px !important;
}

.mt5 {
  margin-top: 5px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mt15 {
  margin-top: 15px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mt25 {
  margin-top: 25px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mt35 {
  margin-top: 35px !important;
}

.mt40 {
  margin-top: 40px !important;
}

.mt50 {
  margin-top: 50px !important;
}

.mt60 {
  margin-top: 60px !important;
}

.mt70 {
  margin-top: 70px !important;
}

.mt80 {
  margin-top: 80px !important;
}

.mt90 {
  margin-top: 90px !important;
}

.mt100 {
  margin-top: 100px !important;
}

.mt110 {
  margin-top: 110px !important;
}

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

.mr5 {
  margin-right: 5px !important;
}

.mr10 {
  margin-right: 10px !important;
}

.mr15 {
  margin-right: 15px !important;
}

.mr20 {
  margin-right: 20px !important;
}

.mr25 {
  margin-right: 25px !important;
}

.mr30 {
  margin-right: 30px !important;
}

.mb1 {
  margin-bottom: 1px !important;
}

.mb3 {
  margin-bottom: 3px !important;
}

.mb5 {
  margin-bottom: 5px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.mb60 {
  margin-bottom: 60px !important;
}

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

.ml5 {
  margin-left: 5px !important;
}

.ml10 {
  margin-left: 10px !important;
}

.ml15 {
  margin-left: 15px !important;
}

.ml20 {
  margin-left: 20px !important;
}

.ml25 {
  margin-left: 25px !important;
}

.ml30 {
  margin-left: 30px !important;
}

.ml40 {
  margin-left: 40px !important;
}

.ml50 {
  margin-left: 50px !important;
}

.ml60 {
  margin-left: 60px !important;
}

.ml70 {
  margin-left: 70px !important;
}

.ml80 {
  margin-left: 80px !important;
}

.ml90 {
  margin-left: 90px !important;
}

.ml100 {
  margin-left: 100px !important;
}

.ml110 {
  margin-left: 120px !important;
}

.ml120 {
  margin-left: 130px !important;
}

/* padding
---------------------------------------------------------*/

.p0 {
  padding: 0 !important;
}

.pt0 {
  padding-top: 0 !important;
}

.pt3 {
  padding-top: 3px !important;
}

.pt5 {
  padding-top: 5px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pt15 {
  padding-top: 15px !important;
}

.pt20 {
  padding-top: 20px !important;
}

.pr5 {
  padding-right: 5px !important;
}

.pr10 {
  padding-right: 10px !important;
}

.pr15 {
  padding-right: 15px !important;
}

.pr20 {
  padding-right: 20px !important;
}

.pb5 {
  padding-bottom: 5px !important;
}

.pb10 {
  padding-bottom: 10px !important;
}

.pb15 {
  padding-bottom: 15px !important;
}

.pb20 {
  padding-bottom: 20px !important;
}

.pb30 {
  padding-bottom: 30px !important;
}

.pl5 {
  padding-left: 5px !important;
}

.pl10 {
  padding-left: 10px !important;
}

.pl15 {
  padding-left: 15px !important;
}

.pl20 {
  padding-left: 20px !important;
}

.pl30 {
  padding-left: 30px !important;
}

.pl50 {
  padding-left: 50px !important;
}

/* font-size
---------------------------------------------------------*/

.f_small {
  font-size: 22px;
}

.f60 {
  font-size: 60%;
}

.f65 {
  font-size: 65%;
}

.f70 {
  font-size: 70%;
}

.f75 {
  font-size: 75%;
}

.f80 {
  font-size: 80%;
}

.f85 {
  font-size: 85%;
}

.f90 {
  font-size: 90%;
}

.f95 {
  font-size: 95%;
}

.f100 {
  font-size: 100%;
}

.f110 {
  font-size: 110% !important;
}

.f120 {
  font-size: 120% !important;
}

.f130 {
  font-size: 130% !important;
}

.f140 {
  font-size: 140% !important;
}

/* text-align
---------------------------------------------------------*/

.tLeft {
  text-align: left !important;
}

.tRight {
  text-align: right !important;
}

.tCenter {
  text-align: center !important;
}

/* float
---------------------------------------------------------*/

.floatL {
  display: inline;
  float: left;
}

.floatR {
  display: inline;
  float: right;
}

/* display
---------------------------------------------------------*/

.disNon_pc {
  /*    display: none;*/
  display: table-column;
}

.disIn {
  display: inline !important;
}

.disBl {
  display: block !important;
}

/* flexBox
---------------------------------------------------------*/

.flexBox {
  margin: 20px auto;
  display: flex;
  justify-content: space-around;
}

/* clear
---------------------------------------------------------*/

.clear {
  clear: both;
}

/* font
---------------------------------------------------------*/

.f120 {
  font-size: 120% !important;
}

/* line-height
---------------------------------------------------------*/

.lh180 {
  line-height: 180% !important;
}

/*--20191224--*/

.one_button {
  position: relative;
  bottom: -230px;
  margin: 0 auto 10px;
  width: 95%;
  max-width: 450px;
}

.one_button div {
  width: 100%;
  max-width: 450px;
}

.one_button p {
  font-size: 16px;
  text-align: center;
  color: #fff;
  height: 40px;
  line-height: 40px;
  font-weight: bold;
}

.one_button p a {
  border-radius: 10px;
  background-color: #90b721;
  display: block;
}

.two_button {
  position: relative;
  bottom: -175px;
  margin: 0 auto;
  width: 95%;
  max-width: 500px;
  display: flex;
  justify-content: space-between;
  /*height: 56px;*/
}

.button01,
.button02 {
  width: 100%;
  max-width: 246px;
}

.button01 p,
.button02 p {
  font-size: 16px;
  text-align: center;
  color: #fff;
  height: 56px;
  line-height: 56px;
}

.button01 p a,
.button02 p a {
  border-radius: 50px;
  background-color: #90b721;
  padding: 0 25px;
}

.arrow2 {
  background-image: url(../../images/arrow.png);
  background-repeat: no-repeat;
  background-position: right 12px top 23px;
  text-align: center;
}

/*--20200116--*/

.bnr {
  padding: 5px 10px 10px;
}

.bnr__inner {
  width: 100%;
  max-width: 1013px;
  margin: 0 auto;
}

.bnr__inner img {
  width: 100%;
}

.timeline {
  padding-left: 50px;
}

.timeline iframe {
  width: 100%;
  max-width: 500px;
}

/*--20200413--*/

.linkArea {
  padding: 3%;
}

.linkArea .linkArea__inner {
  max-width: 900px;
  margin: 0 auto;
  border: 3px solid #000;
  border-radius: 20px;
  padding: 20px 40px 0;
  margin-bottom: 110px;
}

.linkArea .linkArea__inner img {
  width: 100%;
}

.linkArea .linkArea__inner h3 {
  color: #834e26;
  font-size: 22px;
  margin-bottom: 50px;
  line-height: 1.4;
}

.linkArea .linkArea__inner p {
  text-align: left;
  line-height: 1.3;
  font-size: 16px;
  font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", Verdana, "メイリオ", Meiryo, sans-serif;
}

.linkArea .linkArea__inner p span {
  font-size: 16px;
  font-weight: bold;
}

.linkArea .linkArea__inner .linkArea__flex {
  display: flex;
  justify-content: space-between;
  max-width: 600px;
  margin: 0 auto;
}

.linkArea .linkArea__inner .linkArea__flex .linkArea__box {
  max-width: 280px;
  width: 100%;
  padding: 5px;
}

.linkArea .linkArea__inner .linkArea__flex02 {
  display: flex;
  justify-content: space-around;
  margin-top: 50px;
  margin-bottom: 40px;
}

.linkArea .linkArea__inner .linkArea__flex02 .linkArea__box {
  max-width: 420px;
  width: 100%;
  text-align: left;
  padding: 5px;
}

.linkArea .linkArea__inner .linkArea__flex02 .linkArea__box h4 {
  text-align: left;
  font-size: 22px;
  margin-bottom: 20px;
  line-height: 1.4;
}

.linkArea .linkArea__inner .linkArea__flex02 .linkArea__box p {
  margin-bottom: 20px;
}
/* 20211206 */

.footerFlex {
  margin-top: 60px;
  padding: 0 20px;
  margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
  .footerFlex {
    margin-top: 20px;
    padding: 0 15px;
  }
}

.footerFlex__inner {
  width: 100%;
  max-width: 860px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.footerFlex__inner > a {
  width: calc(200 / 860 * 100%);
}

@media screen and (max-width: 768px) {
  .footerFlex__inner > a {
    width: 100%;
  }
  .footerFlex__inner > a:nth-of-type(n + 2) {
    margin-top: 20px;
  }
}

.footerFlex__inner > a p {
  margin-top: 10px;
  font-size: 12px;
  font-size: 0.75rem;
  padding-left: 10px;
  position: relative;
  line-height: 1;
  text-align: left;
}

@media screen and (max-width: 768px) {
  .footerFlex__inner > a p {
    font-size: 10px;
    font-size: 0.625rem;
  }
}

.footerFlex__inner > a p::before {
  content: "\f0da";
  font-weight: 700;
  font-family: "Font Awesome 5 Free";
  position: absolute;
  font-size: 15px;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.wrap br {
  display: initial;
}
.wrap .spOnly {
  display: none !important;
}
