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

ブレイクpoint　1100px
font-size 320-560

--------------------------------------------------------------------*/	
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {box-sizing: border-box;
   margin: 0;
   padding: 0;
   border: 0;
   outline: 0;
   font-size: 100%;
   vertical-align: baseline;
   background: transparent;
   font-style: normal; list-style: none; font-weight: 500; 
  font-optical-sizing: auto;}

html {
    scroll-behavior: smooth;
}

a{text-decoration: none; color:#1d9f10 ; transition: 0.3s}
a:hover{ color:#a8cf3f; }
a.blink{background:#cebc8a; padding: 2px 10px 0 ; display: inline-block ; line-height: 1.1; border-radius: 5px}
img{max-width: 100%; height: auto ;vertical-align: bottom; }

body{color: #1d9f10;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-style: normal; background: #fff ;letter-spacing: 1px
}
.goshi{font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-style: normal; }

.en{ font-family: "Source Serif 4", serif;
  font-optical-sizing: auto;
  font-weight:500;
  font-style: normal;}
.imp{font-weight: 700}
.red{color: #f6213f}
.pink{color: #e29898}
.bggold{background:#afa68f !important }
.yellow{color:#fcff91}

.tate { -webkit-writing-mode: vertical-rl;
      writing-mode: vertical-rl;
      text-orientation: upright; }

.line{ display: inline ; background: linear-gradient(transparent 50%, rgba(255, 245, 165, 1) 50%); font-weight: 700}
.line2{ display: inline ; background: linear-gradient(transparent 50%, rgba(234, 238, 233, 1) 50%); }
.nolet{letter-spacing: normal}
.nokai{white-space: nowrap;}
.fuki{ position: relative; display: inline-block; 
      padding: 12px 0px; font-weight: 600;
      border-bottom: 2px solid #1d9f10;
}

.fuki::before {
        content: "";
        position: absolute;
        bottom: -5px;
        left: 50%;
        width: 15px;
        height: 15px;
        box-sizing: border-box;
        background-color: #ffffff; /* 背景色と同じ色を指定 */
        rotate: 135deg;
        translate: -50% 0; 
      }

.fuki::after {
     content: "";
        position: absolute;
        bottom: -8px;
        left: 50%;
        z-index: 1;
        width: 15px;
        height: 15px;
        box-sizing: border-box;
        border: 2px solid;
        border-color: #1d9f10 #1d9f10 transparent transparent;
        background-color: #ffffff;
        rotate: 135deg;
        translate: -50% 0; 
      }
.fuki2{ display: inline-block; background:#a8cf3f; color: #fff; padding: 10px 20px; border-radius: 6px; position: relative; text-align: center; font-size:clamp(1.375rem, 0.931rem + 2.22vw, 1.625rem)}/*22-26*/
.fuki2::before {
  content: "";
  position: absolute;
  bottom: -24px;
  left: 4%;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background-color: #a8cf3f;
}
.fuki3{ display: inline-block; background:#a8cf3f; color: #fff; padding: 10px 20px; border-radius: 6px; position: relative; text-align: center; font-size:clamp(0.938rem, 0.493rem + 2.22vw, 1.188rem)}/*15-19*/
.fuki3::before {
  content: "";
  position: absolute;
  width: 15px;
  height: 12px;
  background: #a8cf3f;
  bottom: -12px;
  right: 10%;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  margin: auto;
}

.kako{padding: 10px 0 ; position: relative; font-size:clamp(1rem, 5vw, 1.563rem)}/*16-25*/
.kako::before,
.kako::after {
    position: absolute;
    width: 30px;
    height: 30px;
    content: '';
}

.kako::before {
    border-left: solid 1px;
    border-top: solid 1px;
    top: 0;
    left: 0;
}

.kako::after {
    border-right: solid 1px;
    border-bottom: solid 1px;
    bottom: 0;
    right: 0;
}

.fade-right {
  opacity: 0;
  transform: translateX(40px); /* 右に40pxずらしておく */
  transition: opacity 0.8s ease, transform 0.8s ease;
}

/* 画面に入ったら付与するクラス */
.fade-right.is-visible {
  opacity: 1;
  transform: translateX(0);
}

body{ line-height:1.8; font-size:clamp(0.875rem, 0.764rem + 0.56vw, 0.938rem)}/*14-15*/

header{max-width: 500px; margin: 0 auto; }

/* ===== 全体ラッパー ===== */
.contBoxFlax {overflow-x: hidden;
	width: 100%;
	margin: 0 auto;
}
 
/* ===== header（メインメニュー） ===== */


 
/* グローバルナビ */
.gnav ul { display: flex; flex-direction: column; }
.gnav li { border-top: 1px solid #a8cf3f; }
.gnav li:first-child{border: none}
.gnav a {
	position: relative;
	display: block;
	padding: 14px 16px 14px 22px;
	letter-spacing: .04em;
	transition: background .3s ease, padding-left .3s ease, color .3s ease;
}
/* hoverで左から伸びるアクセントライン */
.gnav a::before {
	content: "";
	position: absolute;
	left: 0; top: 50%;
	width: 0; height: 2px;
	background: #c2a14d;
	transform: translateY(-50%);
	transition: width .3s ease;
}
.gnav a:hover { background: #209f10; padding-left: 28px; color: #f0e2bd; }
.gnav a:hover::before { width: 14px; }

 
/* スマホ時：ナビは開閉式（スライド＋段階表示でおしゃれに） */
.gnav {
	overflow: hidden;
	max-height: 0;
	opacity: 0;
	transition: max-height .5s cubic-bezier(.22,1,.36,1), opacity .4s ease;
}
.gnav.open {
	opacity: 1;
}
/* 各項目をふわっと順番に表示 */
.gnav li {
	transform: translateY(-14px);
	opacity: 0;
	transition: transform .45s cubic-bezier(.22,1,.36,1), opacity .45s ease;
}
.gnav.open li { transform: translateY(0); opacity: 1; }
.gnav.open li:nth-child(1) { transition-delay: .10s; }
.gnav.open li:nth-child(2) { transition-delay: .18s; }
.gnav.open li:nth-child(3) { transition-delay: .26s; }
.gnav.open li:nth-child(4) { transition-delay: .34s; }
 
/* 動きを減らす設定の人には配慮 */
@media (prefers-reduced-motion: reduce) {
	.gnav, .gnav li { transition: none; }
}

nav.gnav .htbtn {margin:0; flex-direction: row;
  display: flex; justify-content: space-between;
  padding: 0;
}
nav.gnav .htbtn li { text-align: center; width: 30% ; border: none !important}
nav.gnav .htbtn li a { text-align: center;  color: #fff;  display: block; padding: 0 }
nav.gnav .htbtn li a img {
  width: 30px; padding: 15px 0;
  margin: 0 auto;
  display: block;
}
.gnav ul a span{font-size: 12px}


.soudanBox{ text-align: center; padding: 30px 5%; position: relative}
.soudanBox section{ position:relative; z-index:5; background: url("../img/tou.png") repeat; padding: 50px 5%; border-radius: 6px }
.soudanBox .zei{position: absolute; top: -40px; right:0; width:121px  }
.soudanBox h2{line-height: 1.6; font-size:clamp(1.375rem, 0.486rem + 4.44vw, 1.875rem) }/*22-30*/
.soudanBox h2 span{font-display: 18px; display: block}
.soudanBox .text01{ text-align: left; margin: 20px 0}
.soudanBox .fuki{background: #fff; padding: 10px 20px}
.soudanBox .fuki::after {background: none}
.soudanBox .fuki::before{background: url("../img/tou.png") repeat}
  .scene{
    position:relative;
    overflow:hidden;
    /* フルスクリーンをやめ、上下パディングで高さを作る＝中身に合わせた帯。
       この padding の値が帯の厚みを決めます。 */
    padding:clamp(6rem,18vw,12rem) 5vw;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
  }

  /* 背景レイヤー：上下に余白(オーバーハング)を持たせてから動かす。
     こうしないと、ずらした時に端のスキマが見えてしまう。 */
  .layer{
    position:absolute;
    left:0; right:0;
    top:-35%; height:170%;
    background-size:cover;
    background-position:center;
    will-change:transform;   /* GPU 合成を促す */
    pointer-events:none;
  }

  /* 写真は下に薄い暗幕を重ねて文字を読みやすくしている。
     画像 URL（最後の url(...)）を差し替えて使ってください。 */
  .layer.bg1{
    background-color:#ccc;   /* 画像が読めない時の保険 */
    background-image:
      linear-gradient(180deg, rgba(20,28,30,.1), rgba(20,28,30,.1)),
      url("../img/footer.jpg"); background-size: 500px auto
  }
.soudanBox .cont{margin: 20px 0; display: flex; justify-content: space-between; flex-flow: wrap}
.soudanBox .cont li{width: 47%; margin-bottom: 15px }
.soudanBox .cont li a{ width: 100%; display: block; background:#1d9f10; border-radius: 6px; color: #fff; font-weight: 600; font-size:clamp(1.375rem, 0.486rem + 4.44vw, 1.875rem) }/*22-30*/
.soudanBox .cont li:last-child{width: 100%; margin-bottom: 0}

.soudanBox .att{text-align: left; font-size: 13px; margin-top: 20px; line-height: 1.4}
.soudanBox .att li{margin-bottom: 8px}
.soudanBox .att li:last-child{margin-bottom: 0px}


.iconBox{display: flex; justify-content: space-between; align-items: flex-start}
.iconBox .serifu{width:  75%; text-align: left; background:#f4ffd7; padding: 15px 20px; font-size: clamp(1rem, 0.778rem + 1.11vw, 1.125rem) }/*16-18*/
.iconBox img{width:  24%}

.iconBox2{display: flex; justify-content: space-between; align-items: flex-start; position: relative}
.iconBox2 .serifu{width:  75%; text-align: left; background:#f4ffd7; padding: 20px 0 20px 8%; font-size:clamp(1rem, 0.778rem + 1.11vw, 1.125rem)}/*16-18*/
.iconBox2 img{width:  28%;position: absolute; right: 3%}


footer{padding-top: 50px}
footer .okuduke{text-align: center; margin-bottom: 30px}
footer .okudukein{width: 180px; margin: 0 auto ;  position: relative;}
footer .tate{text-align: left; position: absolute; top: 0; right: 0; height: 150px;
        line-height: 1.4;
        font-weight: 600;
        background: linear-gradient(50deg, #008f23 0%, #92ba27 50%, #ffcc02 100%);
        -webkit-background-clip: text;
        background-clip: text;
        -webkit-text-fill-color: transparent;
        color: transparent;}
footer .okuduke .flogo {width:124px; margin: 0 auto 0 -20px}
footer .sub{font-size: 13px; margin-top: 20px}
footer .sub span{font-size: 11px}
.ftmenu a span{font-size: 12px}

/* アコーディオン本体：初期状態は閉じる */
.contBoxFlaxr .clummenu .kasou {
  overflow: hidden;
  max-height: 0;
  transition: max-height .35s ease; font-size: 13px; line-height: 1.5; 
}

/* odaiはクリックできると分かるように */
.contBoxFlaxr .clummenu .odai > a {
  position: relative;
  cursor: pointer ; margin-bottom: 8px; display: block
}
.contBoxFlaxr .clummenu .kasou li {margin-bottom: 8px}


/* odaiの頭に + */
.contBoxFlaxr .clummenu .odai > a::before {
  content: "+";
  margin-right: .4em;
  color: #fff;
  font-weight:800; 
}
.contBoxFlaxr .clummenu .kasou li > a::before {
  content: "-";
  margin-right: .4em;
  color: #fff; font-weight:800; 
}

.kijiBox{text-align: center;}
.kijiBox h2{ font-size:clamp(1.75rem, 0.972rem + 3.89vw, 2.188rem) }/*28-35*/
.kijiBox .listtit{margin: 0 8% 50px}
.kijiBox .listtit li{padding-top: 40px; text-align: left; list-style: none; margin-left: 0; border-bottom: 1px dashed #1e9f11}
.kijiBox .listtit li a{display: block; margin-bottom: 20px; padding-bottom: 10px; }
.kijiBox .listtit li a dl{display: flex; justify-content: space-between}
.kijiBox .listtit li a dt{width: 18%}
.kijiBox .listtit li a dt .images img{border-radius: 5px}
.kijiBox .listtit li a dd{width: 79%; margin-top: -8px}
.kijiBox .listtit li a:hover{color:#749070}

.kijiBox .cate{margin-bottom: 15px; letter-spacing: normal; font-size:13px}



.kijicont {margin: 0 8% 50px; font-size: clamp(0.875rem, 0.813rem + 0.31vw, 0.938rem)}
.kijicont .hh1{margin-bottom: 20px; position: relative;
 line-height: 1.3;color: #fff;
  padding: 20px 10px 20px;
  min-width: 120px;
  max-width: 100%;
  background:#1e9f11;
}

.kijicont .hh1:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #1e9f11;
}
.kijicont .hh2{margin-bottom: 15px; padding: .5em .7em; line-height: 1.3; 
    border: 2px solid #a8cf3f;
    box-shadow: 5px 5px #a8cf3f;
 background: #fff}
.kijicont .hh4{  padding:3px 0 3px 15px;
  background: transparent;/*背景透明に*/
  border-left: solid 5px #a8cf3f}


.kijicont .well2 {padding:1em 1.5em; line-height:2; border:1px dashed #a8cf3f; }
.kijicont .well3{
	padding:1em 1.5em;
background:#a8cf3f;
	position:relative;
}

.kijicont .well3{ color: #fff;}
.kijicont .well3:after{
	position: absolute;
	content: '';
	right: 0px;
	top: 0px;
	border-width: 0 15px 15px 0;
	border-style: solid;
	border-color: #fff #fff #73931d;
}
.kijicont a.q_button{display: block; box-shadow: 0 0 8px #ccc; padding:15px 20px; border-radius:10px; background:#ffa200; color:#fff !important} 
.kijicont a.q_button:hover{ box-shadow: none} 

.kijicont ul li{list-style: disc; margin-left: 20px; line-height: 1.7; margin-bottom: 10px}
.kijicont ol li{list-style-type: decimal; margin-left: 20px; line-height: 1.7; margin-bottom: 10px}
.kijicont table,.kijiBox td,.kijiBox th {
    border-collapse: collapse;
    border:1px solid #eae4e4;
    padding: 10px 
    }

.kijicont strong{font-weight: 800}




@media (max-width: 1099px) {
.smtno{display: none}

header{padding: 20px 0}

.header-inner {width: 100%; max-width: 500px; margin: 0 auto; position: relative; z-index: 1000;
padding: 0 0 0 5%; display: flex; justify-content: space-between; align-items: self-start;}
.header-inner .headh1{width: 50%; position: relative}
.header-inner .headh1 h1 img{width:124px }
.header-inner .headh1 .text01{position: absolute; 
  top: 0; 
  left: 130px; 
  font-size: 13px; 
  line-height: 1.4; font-weight: 600;
  
  /* グラデーションの指定 */
  background: linear-gradient(50deg, #008f23 0%, #92ba27 50%, #ffcc02 100%);
  
  /* 背景を文字の形にくり抜く */
  -webkit-background-clip: text;
  background-clip: text;
  
  /* 元の文字色を透明にして背景のグラデーションを見せる */
  -webkit-text-fill-color: transparent;
  color: transparent;}
.header-inner .headh1 .sub{font-size: 12px}
.header-inner .hanv{line-height: 1.6; box-sizing: border-box; width: 43%; max-width: 216px; right: 5%; background:#a8cf3f; display: flex; justify-content: space-between; padding: 10px 0 10px 5%; font-size: 14px; border-radius: 6px  0 0 6px}
.header-inner a{width: 49%; display: block ; border-radius: 6px 0 0 6px }
 .header-inner .hanv a{color: #fff ;padding-top: 2px;}
 
/* ハンバーガーボタン（1099pxまで表示） */
.hamburger {margin-top: -3px; background: #a8cf3f; position: fixed; border-radius: 6px;
	display: block;padding: 10px;
	width: 56px; height: 58px; right: max(3%, calc(50% - 235px));
	border: none;
	cursor: pointer;
}
.hamburger::after {
  content: "MENU"; font-size: 11px; position: absolute; bottom: 10px; left:9px; letter-spacing: 2px; color: #fff}
.hamburger span {
	display: block;
	position: absolute;
	left: 15%;
	width: 70%;
	height: 3px;
	background: #fff;
	transition: .35s cubic-bezier(.22,1,.36,1);
}
.hamburger span:nth-child(1) { top: 12px; }
.hamburger span:nth-child(2) { top: 20px; }
.hamburger span:nth-child(3) { top: 28px; }
.hamburger.open span:nth-child(1) { top: 16px; transform: rotate(45deg); }
.hamburger.open span:nth-child(2) { opacity: 0; }
.hamburger.open span:nth-child(3) { top: 16px; transform: rotate(-45deg); }

	/* メニューはバーの直下にレイヤーとして重ねる（position:fixedなので流れに影響しない） */
	.gnav {
		position: fixed;top: 0; 
		left: 0; right: 0;
		z-index: 999;              /* バー(1000)より下、コンテンツより上 */
		background: #fff;
	}
	.gnav.open {
		/* 中身が多くても画面内に収め、あふれたらスクロール */
		max-height: calc(100vh - var(--bar-h));
		max-height: calc(100dvh - var(--bar-h)); /* モバイルのアドレスバー対応 */
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		box-shadow: 0 12px 24px rgba(0,0,0,.25); /* レイヤーの浮き感 */
	}

.gnav ul{background:#a8cf3f; box-sizing: border-box ; margin: 150px 30px 30px; border-radius: 6px; }
.gnav.open li{border: 1px solid #fff}
.gnav ul a{color: #fff; line-height: 1.3 ; letter-spacing: normal;}
.gnav a{padding:14px 10px 14px 10px}

.bggreen{background:#a8cf3f; padding-top: 5px}

.ftmenu{background: #a8cf3f; padding: 30px 8% 40px}
.ftmenu a{color: #fff; display: block; padding: 5px 0; border-bottom: 1px dashed #fff ; margin-bottom: 5px}


/* ===== maincont（中央） ===== */
.maincont {
	max-width: 500px;   /* 最大幅 500px */
	width: 100%;
	margin: 0 auto;     /* スマホ時は中央寄せ */
}
 
/* ===== contBoxFlaxr（コラムメニュー・右） ===== */
.contBoxFlaxr {
	background: #a8cf3f;
	padding: 0px 5% ; max-width: 500px; margin: 0 auto
}
.contBoxFlaxrbg .fuki{margin-bottom: 20px}
.contBoxFlaxrbg .fuki::after{background-color: #a8cf3f;}
.contBoxFlaxrbg .fuki::before{background-color: #a8cf3f;}

.contBoxFlaxr .clummenu a{color: #fff; display: block}
.copy{font-size: 11px; color: #fff; padding:40px 0 120px}

.kotei {
  color: #a8cf3f;
  border-top: 4px solid #1d9f10;
  max-width: 500px;
  position: fixed;
  padding: 10px 0 0;
  
  /* --- 横中央配置のための設定 --- */
  left: 0;
  right: 0;       /* ★追加 */
  margin: 0 auto;  /* ★追加 */
  /* ------------------------------ */
  
  bottom: 0;
  width: 100%;
  z-index: 999;
  background: #a8cf3f; /* 背景は適宜調整 */
  
  /* 初期状態：画面下に隠しておく */
  transform: translateY(100%);
  transition: transform 0.4s ease;
  
  /* iPhoneのホームバー対策 */
  padding-bottom: env(safe-area-inset-bottom);
}

/* スクロール後に表示する状態 */
.kotei.is-show {
  transform: translateY(0);
}

.kotei .text {letter-spacing: 2px; color: #fff;
  margin: 0;
  text-align: center;
  padding: 8px 0;
  font-size: 14px;
}

.kotei .ftbtn {
  display: flex; align-items: flex-start;
  margin: 0;
  padding: 0;
  list-style: none;
}

.kotei .ftbtn li { text-align: center; width: 30%}
.kotei .ftbtn li:last-child{  width: 10%; color: #fff; font-size: 12px; position: relative; top: -20px; right: 10px}
.kotei .ftbtn li:last-child p{  transform:rotate(90deg); white-space: nowrap;}
.kotei .ftbtn li a {text-align: center;  color: #fff;  display: block;}

.kotei .ftbtn li a img {
  width: 30px; padding-bottom: 15px;
  margin: 0 auto;
  display: block;
}


}

@media (min-width: 500px) {
.scene{  padding: 60px 8%}
 }
/* =========================================================
   1100px 以上：3カラム（header 左 / maincont 中央 / contBoxFlaxr 右）
   比率 5 : 5 : 3
   → ブラウザ 1300px のとき maincont=500px / contBoxFlaxr=300px / header=500px
   → 1300px を越えると maincont は 500px のまま固定、
     余白を header と contBoxFlaxr が 500:300 の比率で伸ばし続ける
   ========================================================= */
@media (min-width: 1100px) {

.kotei, .ftmenu{display: none}
.pcno{display: none}
 body{background:#a8cf40 }
	.contBoxFlax {
		display: flex;
		justify-content: center;
		overflow: visible;   /* ← 追加。縦軸ごとリセットするのがポイント */
	}
 
	/* flex-grow を 500 : 500 : 300 にして比率配分（box-sizing:border-box なので padding込みで配分される） */
    .contBoxFlax { display: flex; justify-content: center; }
header {
  flex: 500 1 0;
  align-self: flex-start;   /* stretch解除 */
  position: sticky;
  top: 3%;                  /* ← 固定位置 */
  background: #fff;
  margin: 3%;
  min-height: 90vh;
  border-radius: 6px;
  display: flex;              /* 追加 */
  flex-direction: column;    /* 追加：header-inner と gnav を縦並びに */
  justify-content: center;   /* 追加：縦方向の中央に寄せる */
}

.maincont { flex: 500 1 0; max-width: 500px; margin: 0; background: #fff; padding-top: 40px }

.contBoxFlaxr {
    flex: 0 1 300px;     /* 伸びない設定に */
    max-width: 500px;    /* この幅で頭打ち */
    align-self: flex-start;
    position: sticky;
    top: 0; padding-top: 3%; background:#f4ffd8;
    padding: 3%;
}
.contBoxFlaxr .fuki{margin-bottom: 20px}
.contBoxFlaxr .fuki::after, .contBoxFlaxr .fuki::before{ background-color: #f4ffd8;}


.contBoxFlaxrbg{background:#f4ffd8; height: 100vh; box-sizing: border-box}
	/* PC時はハンバーガーを隠してナビを常時表示（アニメ状態をリセット） */
	.hamburger { display: none; }
	.gnav { max-height: none; opacity: 1; overflow: visible; margin-bottom: 110px }
	.gnav li { transform: none; opacity: 1; }
	.header-inner { display: block; padding: 0; margin-bottom: 20px }
	.logo {display: block; padding: 0 }
.headh1 {text-align: center; position: relative; width: 190px; margin: 30px auto 0px }
.headh1 h1{width:124px }
.headh1 .text01{font-weight: 700; position: absolute; right: 0; top: 0px; text-align: left; font-size: 13px; line-height: 1.4;
    background: linear-gradient(50deg, #008f23 0%, #92ba27 50%, #ffcc02 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}
.headh1 .sub{font-weight: 700; font-size: 13px; text-align: left}
header .hanv{display: none}
.gnav a{color:#1e9f11; margin: 8px 8%; padding: 0 0 0 8px; border-left: 3px solid #1e9f11}
.gnav li{border: none; line-height: 1.4; font-size: 14px}

nav.gnav .htbtn{display: none}

header .htbtn2 li { text-align: center; width: 30% ; border: none !important}
header .htbtn2 li a { text-align: center;  color: #fff;  display: block; padding: 0 }
header .htbtn2 li a img {
  width: 30px; padding: 15px 0;
  margin: 0 auto;
  display: block;
}
header .htbtn2{display: flex; flex-flow: wrap; background:#a8cf40 ; margin: 10px 0; border-radius: 6px; padding-top: 10px ; position: absolute; bottom: 0; width: 95% ;left: 50%; transform: translateX(-50%); }
header .htbtn2 li.smtno{width: 100%; color: #fff; padding-bottom: 5px}

.contBoxFlaxr .clummenu a{ color: #1d9f10}
.contBoxFlaxr .copy{color: #fff; font-size: 11px; margin-top: 30px; position: fixed; bottom: 20px;}
.contBoxFlaxr .clummenu{font-size: 13px;    height: 80vh; padding-right: 10px;
    overflow-y: scroll;   /* 常時スクロールバー */
    margin: 0;    }
.contBoxFlaxr .clummenu a:hover{color: #fff}
/* odaiの頭に + */
.contBoxFlaxr .clummenu .odai > a::before {
  content: "+";
  margin-right: .4em;
  color: #1d9f10;
  font-weight:800; 
}
.contBoxFlaxr .clummenu .kasou li > a::before {
  content: "-";
  margin-right: .4em;
  color: #1d9f10; font-weight:800; 
}
.contBoxFlaxr .clummenu .kasou{font-size: 12px; line-height: 1.3}
.contBoxFlaxr .clummenu .odai{font-size: 14px; font-weight: 700;}
.contBoxFlaxr .copy{color:#1d9f10 }

}
@media (min-width: 1500px) {
  .contBoxFlaxr {
    flex: 100 1 0;  min-width: 0
  }
}
