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

/* 目次 
リセット
*/
/**************************************************
リセット
**************************************************/
* {
  margin: 0;
  padding: 0;
  line-height: 1.0;
}
article, aside, details, figcaption, figure, footer, pc-header, main, menu, nav, section, summary {display: block;}
html { font-size: 62.5%;  }/*  // overscroll-behavior: none;ビヨヨン効果を無効化する*/
html { scroll-behavior: smooth;}
body { font: normal 1.4rem/1.6 "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
  color: #212020;
/*	overflow: auto;*/
	-webkit-overflow-scrolling: touch;}
html, body { margin: 0; padding: 0;
	overflow: hidden;
}
table, thead, tbody, tr, th, td { border-collapse: collapse; border-spacing: 0;}
td, th { padding: 0;}
ul, ol {  list-style: none;}
a { text-decoration: none;}
/*a:hover, a:active, a:focus {color: #33383f;}*/
img { vertical-align: bottom; border: 0;}
i, cite, em, var, address, dfn { font-style: normal;}
*, *:before, *:after { box-sizing: border-box;}
button, select { text-transform: none;}
/* IE用 */
a { background-color: transparent;}
a:active, a:hover { outline: 0;}
button { overflow: visible;}
textarea { overflow: auto;}
/* firefox用リンクをクリックした後に表示される「枠線」を消す */
a, a:focus { outline: none;}

/* iOSでTEL link無効 */
a[href^="tel"] { color: inherit; text-decoration: none;}
/* iOSでのデフォルトスタイルをリセット */
input[type="submit"], input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
/*スクロールバーの領域表示確保*/
html { overflow-y: scroll;}
/* body */
body { width: 100%;}
/*スライダーの画像の右にできる余白を隠す*/
/*#container { overflow: hidden;}*/


/*タブ切り替え*/
.ChangeElem_Panel { display: none;}
/* clearfix */
.cf {
  clear: both;
}
.cf:after {
  content: "";
  height: 0;
  display: block;
  clear: both;
}
/* float */
.float-l {
  float: left;
}
.float-r {
  float: right;
}
/*リンク*/
/*画像*/
img {
  width: 100%;
  height: auto;
}
a:hover img, a:active img {
  opacity: 0.8;
}
a:link, a:visited, a:hover, a:active {
  color: var(--color--bk);
}
a:hover, a:active {
  opacity: 0.8;
}
iframe {
  width: 100%;
}


/*=================== TBここから ==================*/
@media screen and (min-width: 600px) {
  html, body {
    overflow: visible;
  }
}
/*=================== TBここまで ==================*/


/*------------------------------
ふわっと表示 ※変更不可
------------------------------*/
/*　function.js 91行目とセット
body {
    -webkit-animation: fadeIn 1.5s ease 0s 1 normal;
    animation: fadeIn 1.5s ease 0s 1 normal;
  }

  @keyframes fadeIn {
    0% {
      opacity: 0
    }

    100% {
      opacity: 1
    }
  }

  @-webkit-keyframes fadeIn {
    0% {
      opacity: 0
    }

    100% {
      opacity: 1
    }
  }

*/



/*表示されたらふわっとのスタイル*/
.fadein{
	opacity : 0;
	visibility: hidden;
	transition: 1s;
	transform: translateY(30px);
}
/*アニメーション要素までスクロールした時のスタイル*/
.active{
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}





/*------------------------------
　フェードイン ※変更不可
------------------------------*/

/*
.fadein {
    animation-name: fadein;
    animation-duration: 2s;
    animation-iteration-count: infinite;
}
@keyframes fadein {
from {
    opacity: 0;
    transform: translateY(20px);
}
to {
    opacity: 1;
    transform: translateY(0);
}
}

*/

/*------------------------------
　画像hoverアニメ ※変更不可
------------------------------*/

.zoom-in-img {
  margin: 0;
  padding: 0;
/*  background: #fff;*/
  overflow: hidden;
  cursor: pointer;
}
.zoom-in-img img {
  width: 100%;
  height: 100%;
}
/*ホバーエフェクト*/
.zoom-in-img img {
  transform: scale(1);
  transition: .3s ease-in-out;
}
.zoom-in-img:hover img {
  transform: scale(1.2);
}


/*------------------------------
googlemapのレスポンシブ対応 ※変更不可
------------------------------*/
.gmap {
  height: 0;
  overflow: hidden;
  padding-bottom: 56.25%;
  position: relative;
}
.gmap iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}
/*------------------------------
レイアウト ※変更不可
------------------------------*/
/* margin */
.ma-b05em {
  margin-bottom: 0.5em;
}
.ma-b1em {
  margin-bottom: 1em;
}

/* background */
.bg-01{
  background: #f9f7f3;
}
/*------------------------------
テキスト ※変更不可
------------------------------*/
.font14{
  font-size: 14px;
  font-size: 1.4rem;
}
.bold {font-weight: bold;}
.text-l{text-align:left;}
.text-r{text-align:right;}
.text-c{text-align:center!important;}
/* 色 */
.white{color: #fff;}
.red{color: #dc6363;}
.gold-c { color: #c69d45;}
/*下線*/
.marker-gold {
  background: linear-gradient(transparent 60%, #F4EBDA 0%);
}
/* 1行目以降インデント */
.indentback{
  text-indent: -1em;
  padding-left: 1em;
}
/*------------------------------
テキストカラー ※変更不可
------------------------------*/
.red-c {
  color: #9D324F;
}
.white-c {
  color: #fff;
}
.green-c {
  color: #006935;
}
.gold-c{
  color: #CC9425;
}
.orange-c {
  color: #f2791f;
}
/*------------------------------
背景色 ※変更不可
------------------------------*/
/*グレー*/
.bg-gr {
  background: #EEEEEE;
}
/*白*/
.bg-w {
  background: #fff;
}
/*ライトグリーン*/
.bg-lg {
  background: #F6FBF2;
}
/*ゴールド*/
.bg-gold {
  background: #CC9425;
}
/*ライトゴールド*/
.bg-light-gold {
  background: #FBF6ED;
}
/*------------------------------
ボーダー ※変更不可
------------------------------*/
/*グリーン*/
.bd-box-g {
  border: 1px solid #006835;
  padding: 12px;
}
/*------------------------------
マーカー ※変更不可
------------------------------*/
.marker-green {
  background: linear-gradient(transparent 60%, #5bed3b 0%);
}
.marker-yellow {
  background: linear-gradient(transparent 50%, #FCF432 0%);
}
.marker-blue {
  background: linear-gradient(transparent 60%, #99ccff 0%);
}
.marker-orange {
  background: linear-gradient(transparent 60%, #ffa500 0%);
}
.marker-Purple {
  background: linear-gradient(transparent 60%, #cc99ff 0%);
}
.marker-pink {
  background: linear-gradient(transparent 60%, #ff99cc 0%);
}
/*------------------------------
テキストリンク ※変更不可
------------------------------*/
a.text-link:link, a.text-link:visited, a.text-link:hover, a.text-link:active {
  color: #333;
  text-decoration: underline;
}
a.text-link2:link, a.text-link2:visited, a.text-link2:hover, a.text-link2:active {
  color: #fff;
  opacity: 0.8;
  text-decoration: underline;
}
/*------------------------------
クリック範囲の拡大
------------------------------*/
.range {
  position: relative;
}
.range a::before {
  position: absolute;
  top: -1px;
  left: -1px;
  right: -1px;
  bottom: -1px;
  content: "";
}
.range:hover, .range:active {
  opacity: 0.9;
}
/*------------------------------
▶ ※変更不可
------------------------------*/
.arrow-link{
  color: #111;
  position: relative;
}
.arrow-link:after{
  content: "▶";
  vertical-align: text-bottom;
  position: absolute;
  top: 0;
  right: -25px;
  display: inline-block;
  width: 18px;
  height: 18px;
  line-height: 18px;
  font-size: 12px;
  text-align: center;
  margin: 0;
  border: 1px solid #333;
}
/*------------------------------
▶ ※変更不可
------------------------------*/
.diagonal-stripe {
  background-image: repeating-linear-gradient(-45deg, #E6F0E3 0px, #E6F0E3 5px, #ffffff 5px, #ffffff 10px);
}
/*------------------------------
リスト表示 ※変更不可
------------------------------*/
/*・*/
ul.disc {
  margin-left: 2em;
}
ul.disc > li {
  list-style: disc;
  margin-bottom: 1em;
}
/*123*/
ol.decimal {
  margin-left: 2em;
}
ol.decimal > li {
  list-style: decimal;
  margin-bottom: 1em;
}
/*abc*/
ol.lower-latin {
  margin-left: 2em;
}
ol.lower-latin > li {
  list-style: lower-latin;
  margin-bottom: 1em;
}

/*--------------------------------------------------
画像スクロール共通 .sp-scroll
----------------------------------------------------*/
@media screen and (max-width: 699px) {
.sp-scroll p {
  margin: 0 auto;
  width: 600px;
  height: auto;
}
/*スクロール*/
.sp-scroll {
  overflow: auto;
  margin-bottom: 10px;
}
/*スクロールバーの横幅指定*/
.sp-scroll::-webkit-scrollbar {
  height: 10px;
}
/*スクロールバーの背景色・角丸指定*/
.sp-scroll::-webkit-scrollbar-track {
  border-radius: 5px;
  background: #eee;
}
/*スクロールバーの色・角丸指定*/
.sp-scroll::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #aaa;
}
}
/*--------------------------------------------------
テーブルスクロール共通 .sp-scroll-t
----------------------------------------------------*/
.sp-scroll-t table {
  margin: 0 0 10px;
}
/*スクロール*/
.sp-scroll-t {
  width: 100%;
  overflow: auto;
  margin-bottom: 10px;
}
/*スクロールバーの横幅指定*/
.sp-scroll-t::-webkit-scrollbar {
  height: 10px;
}
/*スクロールバーの背景色・角丸指定*/
.sp-scroll-t::-webkit-scrollbar-track {
  border-radius: 5px;
  background: #eee;
}
/*スクロールバーの色・角丸指定*/
.sp-scroll-t::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #aaa;
}
/*---------------------------------
アコーディオンボックス
--------------------------------*/
/* アコーディオンメニュー */
.ac-menu {
  margin: 20px 0;
}
.ac-menu input {
  display: none;
}
.ac-menu label {
  color: #fff; /* 文字色 */
  background: #358f35; /* グラデーションの背景色 */
  padding: 10px 0; /* 内側の余白 */
  cursor: pointer;
  position: relative;
  display: block;
  border-radius: 5px;
}
.ac-menu label:after {
  position: absolute;
  right: 10px; /* 左からの距離 */
  top: 50%; /* 上下中央配置 */
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  content: "＋";
    transition: all 0.5s;
}
.ac-menu input:checked ~ label::after {
  content: "−";
    transition: all 0.5s;
}
.ac-menu .ac-list {
  height: 0;
  overflow: hidden;
  opacity: 0;
      -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
}
.ac-menu input:checked ~ .ac-list {
  height: 100px;
  opacity: 1;
  margin-top: 10px;
}

@media screen and (max-width: 374px) {

.small {
    font-size: 1.0rem;
}
.font13 {
  font-size: 1.1rem;
}

} /*================== SP(min-width: 374pxpx)ここまで ==================*/

/*=================== PCここから==================*/
@media screen and (max-width: 1023px) and (min-width: 700px) {
.ac-menu input:checked ~ .ac-list {
  height: 50px;
  opacity: 1;
  margin-top: 10px;
}
} /*================== PC(min-width: 1024pxpx)ここまで ==================*/
/*=================== PCここから==================*/
@media screen and (min-width: 1024px) {
  .ac-menu .ac-list {
    height: auto;
    opacity: 1;
    margin-top: 10px;
  }
  .ac-menu input:checked ~ label::after {
    display: none;
  }
  .ac-menu label:after {
    display: none;
  }
  .ac-menu label {
    cursor: unset;
  }
} /*================== PC(min-width: 1024pxpx)ここまで ==================*/