@charset "utf-8";

/* ================================
   パソコン版ナビ（641px以上）
================================ */

@media (min-width:641px){

/* ========== contents ========== */
.contents{
	clear: both;
	width: 1000px;
	margin-top: 40px;
	margin-bottom: 40px;
	margin-left: auto;
	margin-right: auto;
}

.contents a img,
.contents a img:hover{
	-webkit-transition: all .2s ease;
	transition: all .2s ease;
}

.contents a img:hover{
	filter:alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}
/* ========== contents ========== */

.logo_80th {
	width: 1000px;
	margin-right: auto;
	margin-left: auto;
}
.logo_80th img{
	float: right;
	clear: both;
	width: 240px;
}
.w100{	width: 100%;}
.w90{	width: 90%;}
.w80{	width: 80%;}
.w70{	width: 70%;}
.w60{	width: 60%;}
.w50{	width: 50%;}
.color-g{
	color: #14a73c;
}
.color-g-bold{
	color: #14a73c;
	font-weight: bold;
	font-size: 24px;
}
.color-r{
	color: #FF0004;
}
.check {
  display: inline-block;
  width: 18px;
  height: 18px;
  border: 1px solid #000;
  margin-right: 6px;
  position: relative;
  vertical-align: middle;
}

.check::after {
  content: "";
  position: absolute;
  left: 4px;
  top: 0px;
  width: 6px;
  height: 10px;
  border-right: 3px solid red;
  border-bottom: 3px solid red;
  transform: rotate(45deg);
}
h1{
	color: #000000;
	margin-bottom: 20px;
}
h1 img{
	width: 120px;
  vertical-align: -10px;
}
h2{
	margin-top: 20px;
	margin-bottom: 20px;
	font-weight: bold;
	font-size: 24px;
}
h2 span{
	font-weight: bold;
}
.reform-bg{
	padding-top: 30px;
	padding-bottom: 30px;
	background-color: #eeeeee;
}
.kiken{
	width: 800px;
	margin-left: 70px;
	margin-bottom: 40px;
	border-radius: 10px;
	padding: 10px;
	border: 20px solid #efeee1;
	font-weight: bold;
}
.kiken p{
	font-weight: bold;
	text-align: center;
	font-size: 1.3em;
	margin-bottom: 10px;
}
.kiken p span{
	font-weight: bold;
}
.leed{
	width: 860px;
	margin-left: 70px;
	margin-bottom: 40px;
}
.leed a{
	font-weight: bold;
	color: #14A73C;
}
.reform03pc{
	width: 100%;
	margin-bottom: 40px;
}
.reform04{
	margin-bottom: 40px;
	width: 333px;
	padding: 10px;
	border-right: 1px solid #000000;
	margin-top: 20px;
	box-sizing: border-box;
}
.reform05,
.reform07{
	margin-top: 60px;
	margin-bottom: 40px;
}
.reform05 img,
.reform07 img{
	width: 400px;
	margin-right: 40px;
	float: left;
}
.reform09,
.reform10{
	width: 460px;
	margin-top: 20px;
	margin-bottom: 20px;
}
.reform09{
	float: left;
}
.reform10{
	float: right;
}
.reform11,
.reform12,
.reform13,
.reform14,
.reform15,
.reform16{
	width: 480px;
	margin-top: 20px;
	margin-bottom: 20px;
}
.reform11,
.reform13,
.reform15{
	float: left;
}
.reform12,
.reform14,
.reform16{
	float: right;
}
.reform17{
	display: flex;
}
.reform17 img{
	width: 300px;
	margin-left: 20px;
}
.reform18 table{
	border: 1px solid #14A73C;
	margin-top: 20px;
	margin-bottom: 20px;
}
.reform18 th{
	background-color: #14A73C;
	color: #FFFFFF;
	padding: 4px;
	text-align: center;
	font-size: 1.2em;
}
.reform18 td{
	padding: 8px;
}
.reform18 img{
	width: 300px;
	margin-right: 20px;
	float: left;
}

.reform_shop{
	display: flex;
flex-wrap: wrap; 
}
.reform_shop div{
	background-color: #FFFFFF;
	width: 283px;
	padding: 10px;
	margin: 15px;
}
.reform_shop div img{
	width: 100%;
	margin-bottom: 5px;
}
.reform_shop div a{
	color: #000000;
}
.nagare{
	margin-top: 10px;
	margin-bottom: 40px;
}
.nagare tr:nth-child(odd){
  background-color: #eeebcd;
}
.nagare tr:nth-child(even) td{
  color: #666666;
}
.nagare td{
	padding: 5px;
	text-align: center;
}
.reform_contact{
	display: flex;
flex-wrap: wrap; 
}


/* ========== お問い合わせはこちら ========== */
/* stickyエリア */
.cta-wrap{
  position:sticky;
  bottom:20px;
  display:flex;
  justify-content:flex-start;
  padding-left:20px;
  pointer-events:none;
}
/* ボタン */
.cta-btn{
  pointer-events:auto;
  background:#2ea44f;
  color:#fff;
  /* ボタンを大きく（上下20px、左右40px） */
  padding: 20px 40px; 
  /* 文字サイズも大きくするとバランスが良いです */
  font-size: 1.2rem;  border-radius:30px;
  text-decoration:none;
  font-weight:bold;
  box-shadow:0 4px 10px rgba(0,0,0,.2);
}
/* ========== お問い合わせはこちら ========== */


/* ========== stickyナビゲーション ========== */
/* ナビ本体 */

.sticky-nav{
  position:sticky;
  top:0;
  z-index:1000;
  background:rgba(255,255,255,0.9);
  margin-bottom:40px;   /* ←追加 */
  }


/* PCナビ */

.sticky-nav ul{
  width:1000px;
  margin:0 auto;
  padding:0;
  list-style:none;
  display:flex;
}

.sticky-nav li{
  flex-grow:1;
  flex-basis:auto;
  border-right:1px solid #2a8f5a;
}

.sticky-nav li:first-child{
  border-left:1px solid #2a8f5a;
}


/* ボタン */

.sticky-nav a{
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;

  min-height:56px;
  padding:10px 16px;

  color:#2a8f5a;
  text-decoration:none;
  line-height:1.4;
  font-size:13px;   /* ←ここを追加（または変更） */
  }


/* ========== stickyナビゲーション ========== */
}























/* =================================
   スマホ版ナビ（640px以下）
================================= */

@media (max-width:640px){

/* ========== contents ========== */
.contents{
	clear: both;
	margin-top: 40px;
	width: 96%;
	margin-right: 2%;
	margin-left: 2%;
}
/* ========== contents ========== */

.logo_80th {
	margin-right: auto;
	margin-left: auto;
}
.logo_80th img{
	float: right;
	clear: both;
	width: 20%;
}
.w100{	width: 100%;}
.w90{	width: 90%;}
.w80{	width: 80%;}
.w70{	width: 70%;}
.w60{	width: 60%;}
.w50{	width: 50%;}
.color-g{
	color: #14a73c;
}
.color-g-bold{
	color: #14a73c;
	font-weight: bold;
	font-size: 1.2em;
	line-height: 1.4em;
}
.color-r{
	color: #FF0004;
}
.check {
  display: inline-block;
  width: 18px;
  height: 18px;
  border: 1px solid #000;
  margin-right: 6px;
  position: relative;
  vertical-align: middle;
}

.check::after {
  content: "";
  position: absolute;
  left: 4px;
  top: 0px;
  width: 6px;
  height: 10px;
  border-right: 3px solid red;
  border-bottom: 3px solid red;
  transform: rotate(45deg);
}
h1{
	color: #000000;
	margin-bottom: 1em;
	font-size: 0.9em;
	line-height: 1.3em;
}
h1 img{
	width: 5em;
  vertical-align: -4px;
}
h2{
	margin-top: 1em;
	margin-bottom: 1em;
	font-weight: bold;
	font-size: 1em;
}
h2 span{
	font-weight: bold;
}
.reform-bg{
	padding-bottom: 1em;
	background-color: #eeeeee;
}
.kiken{
	width: 100%;
	margin-bottom: 2em;
	border-radius: 2em;
	padding: 1em;
	border: 1em solid #efeee1;
	font-weight: bold;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.kiken p{
	font-weight: bold;
	text-align: center;
	font-size: 1em;
	margin-bottom: 10px;
}
.kiken p span{
	font-weight: bold;
}
.leed{
	margin-bottom: 2em;
}
.leed a{
	font-weight: bold;
	color: #14A73C;
}
.reform03pc{
	width: 100%;
	margin-bottom: 2em;
}
.reform04{
	margin-bottom: 2em;
	width: 96%;
	padding: 2%;
	border-right: 1px solid #000000;
	margin-top: 1em;
	box-sizing: border-box;
	font-size: 0.9em;
}
.reform05,
.reform07{
	margin-top: 3em;
	margin-bottom: 2em;
	font-size: 0.9em;
}
.reform05 img,
.reform07 img{
	width: 100%;
	margin-right: 0px;
	margin-bottom: 0.5em;
}
.reform09,
.reform10{
	width: 100%;
	margin-top: 1em;
	margin-bottom: 1em;
}
.reform11,
.reform12,
.reform13,
.reform14,
.reform15,
.reform16{
	width: 46%;
	margin-top: 1em;
}
.reform15,
.reform16{
	margin-bottom: 1em;
}
.reform11,
.reform13,
.reform15{
	float: left;
}
.reform12,
.reform14,
.reform16{
	float: right;
}
.reform17{
	display: flex;
	margin-bottom: 4em;
}
.reform17 img{
	width: 40%;
	margin-left: 1em;
}
.reform18 table{
	border: 1px solid #14A73C;
	margin-top: 20px;
	margin-bottom: 20px;
	width: 80%;
	margin-left: 10%;
}
.reform18 th{
	background-color: #14A73C;
	color: #FFFFFF;
	padding: 4px;
	text-align: center;
	font-size: 1.2em;
}
.reform18 td{
	padding: 4%;
}
.reform18 img{
	width: 100%;
}


.reform_shop{
	display: flex;
flex-wrap: wrap; 
}
.reform_shop div{
	background-color: #FFFFFF;
	width: 42%;
	padding: 2%;
	margin: 2%;
	font-size: 0.8em;
	line-height: 1.2em;
}
.reform_shop div img{
	width: 100%;
	margin-bottom: 5px;
}
.reform_shop div a{
	color: #000000;
}
.nagare{
	margin-top: 1em;
	margin-bottom: 4em;
	font-size: 0.8em;
}
.nagare tr:nth-child(odd){
  background-color: #eeebcd;
}
.nagare tr:nth-child(even) td{
  color: #666666;
}
.nagare td{
	padding: 5px;
	text-align: center;
}
.reform_contact{
	display: flex;
flex-wrap: wrap; 
}


/* ========== お問い合わせはこちら ========== */
/* stickyエリア */
.cta-wrap{
  position:fixed;
  bottom:1em;
  left:1em;

  display:flex;

  pointer-events:none;

  z-index:99999;
}
/* ボタン */
.cta-btn{
  pointer-events:auto;
  background:#2ea44f;
  color:#fff;
  /* ボタンを大きく（上下20px、左右40px） */
  padding: 0.5em 1em; 
  /* 文字サイズも大きくするとバランスが良いです */
  font-size: 1em;  border-radius:30px;
  text-decoration:none;
  font-weight:bold;
  box-shadow:0 4px 10px rgba(0,0,0,.2);
}
/* ========== お問い合わせはこちら ========== */


/* ========== stickyナビゲーション ========== */


.sticky-nav{
  position:sticky;
  top:0;
  z-index:10;
  background:rgba(255,255,255,0.9);
}

.sticky-nav ul{
  width:100%;
  margin:0;
  padding:0;
  list-style:none;

  display:grid;
  grid-template-columns:repeat(4,1fr);

  border-top:1px solid #2a8f5a;
  border-left:1px solid #2a8f5a;
}

.sticky-nav li{
  border-right:1px solid #2a8f5a;
  border-bottom:1px solid #2a8f5a;
}

.sticky-nav li:nth-child(7){
  grid-column:span 2;
}

.sticky-nav a{
  display:flex;
  align-items:center;
  justify-content:center;

  min-height:44px;
  padding:6px;

  font-size:11px;
  line-height:1.3;
  text-align:center;

  color:#2a8f5a;
  text-decoration:none;
}

/* ========== stickyナビゲーション ========== */



  }


