.sm,
.sm_menu,
#navTgl,
#hung_menu{
	display:none;
}
.wrap {
	width:80%;
	min-width:1500px;
	margin: 0px auto;
	padding: 0px;
}
#go2 {
	position:fixed;
	right: 10px;
	bottom:10px;
	line-height:130%;
	z-index:999;
}
#go2 a{
	text-decoration:none;
	display:block;
	background-color:#93ca6f;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	color:#fff;
	text-align:center;
	font-size:10px;
	padding: 5px;
}
#go2 a:hover{
	background-color:#5cb224;
}
#go2 a b{
	font-size:16px;
}

@media screen and (max-width: 1500px) {/*tablet*/
	body {min-width:1500px;}
}
@media screen and (min-width: 1501px) {/*PC*/
}

dl{
	display: table-row;
}
/*------*/

/*-------------------*/
.height100{
	height: 80px;
}
header{
    z-index: 9999;
    top: 0;
}
#gnav{
    position: fixed;
    z-index: 9999;
    top: 0;
    left: 0;
    width: 100%;
    background-color: rgba(255, 255, 255, 0.8);
    border-bottom: 1px solid #ddd;
    transition: background-color 0.4s ease;
}
#gnav > ul#gnav_table h1{
    margin: 0px;
    padding: 0px;
    line-height: 0;
}
#gnav > ul#gnav_table {
  display: table;
    margin: 0 auto;
    padding: 0;
	min-width:1140px;
	max-width: 1600px;
	width: 90%;
}
#gnav > ul#gnav_table > li.cell {
  display: table-cell;
    font-size: 13px;
    vertical-align: middle;
    text-align: center;
    border-bottom: 5px solid rgba(255, 255, 255, 0);
    box-sizing: border-box;
	width: 7%;
	min-width: 100px;
}
#gnav > ul#gnav_table > li.cell:hover > a {
  color: #587f01;
}
#gnav > ul#gnav_table > li.cell:hover .menu {
  max-height: 9999px;
  opacity: 1;
}
#gnav > ul#gnav_table > li.cell > a {
    color: black;
    text-decoration: none;
}
#gnav > ul#gnav_table > li.cell:hover,
#gnav > ul#gnav_table > li.fix{
    border-bottom: 5px solid #90c320;
}
#gnav:hover {
    background-color: rgba(255, 255, 255, 1);
}
/**/
#gnav > ul#gnav_table > li#logo:hover,
#gnav > ul#gnav_table > li#gnav_huku:hover,
#gnav > ul#gnav_table > li#gnav_con:hover,
#gnav > ul#gnav_table > li.space:hover,
#gnav > ul#gnav_table > li:last-child:hover{
    border-bottom: 5px solid white;
}
#gnav > ul .menu {
  transition: all .2s ease-in;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  width: 100%;
    top: 90px;
  left: 0;
  text-align: center;
  position: absolute;
  background-color: #90c320;
}
#gnav > ul#gnav_table > li.cell i{
    margin-left: 3px;
    font-size: 70%;
}
#gnav > ul#gnav_table > li.toggle i{
    color: #90c31f;
    font-size: 13px !important;
}
/*----------*/
#gnav_tachi{
    position: fixed;
    z-index: 9999;
    top: 0;
    left: 0;
    width: 100%;
    height: 90px;
    background-color: rgba(255, 255, 255, 0.8);
    border-bottom: 1px solid #ddd;
    transition: background-color 0.4s ease;
}
#gnav_tachi > ul#gnav_table h1{
    margin: 0px;
    padding: 0px;
    line-height: 0;
}
#gnav_tachi > ul#gnav_table {
  display: table;
    margin: 0 auto;
    padding: 0;
	min-width:1140px;
	max-width: 1600px;
	width: 90%;
}
#gnav_tachi > ul#gnav_table > li.cell {
  display: table-cell;
    font-size: 13px;
    vertical-align: middle;
    text-align: center;
    border-bottom: 5px solid rgba(255, 255, 255, 0);
    box-sizing: border-box;
	min-width: 100px;
	border-left: 1px solid #ddd;
}
#gnav_tachi > ul#gnav_table > li#logo{
    border-left: none;
}
#gnav_tachi > ul#gnav_table > li.cell:hover > a {
  color: #587f01;
}
#gnav_tachi > ul#gnav_table > li.cell:hover .menu {
  max-height: 9999px;
  opacity: 1;
}
#gnav_tachi > ul#gnav_table > li.cell > a {
    color: black;
    text-decoration: none;
}
#gnav_tachi > ul#gnav_table > li.cell:hover,
#gnav_tachi > ul#gnav_table > li.fix{
    border-bottom: 5px solid #90c320;
}
#gnav_tachi:hover {
    background-color: rgba(255, 255, 255, 1);
}
/**/
#gnav_tachi > ul#gnav_table > li#logo:hover,
#gnav_tachi > ul#gnav_table > li#gnav_huku:hover,
#gnav_tachi > ul#gnav_table > li#gnav_con:hover,
#gnav_tachi > ul#gnav_table > li.space:hover,
#gnav_tachi > ul#gnav_table > li:last-child:hover{
    border-bottom: 5px solid white;
}
#gnav_tachi > ul .menu {
  transition: all .2s ease-in;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  width: 100%;
    top: 90px;
  left: 0;
  text-align: center;
  position: absolute;
  background-color: #90c320;
}
#gnav_tachi > ul#gnav_table > li.cell i{
    margin-left: 3px;
    font-size: 70%;
    color: #90c31f;
    font-size: 13px !important;
}
#tachi_rightnav {
    border-left: none !important;
    width: 330px;
}
#tachi_rightnav p{
    margin: 0px 0 0 30px;
    padding: 0px;
    float: right;
}
#tachi_rightnav p:last-child{
    margin: 0;
}
#gnav_tachi > ul#gnav_table > li#tachi_comp a.main_navlink i,
#tachi_rightnav p i{
    margin: 0 5px 0 0;
    font-size: 16px !important;
    color: #90c31f;
}
#gnav_tachi > ul#gnav_table > li#tachi_comp a.main_navlink i.fa-chevron-down{
    font-size: 12px !important;
    margin-left: 5px;
}
/**/
#gnav_tachi > ul#gnav_table > li#tachi_comp{
    border: none;
    text-align: right;
}
#gnav_tachi > ul#gnav_table > li#tachi_comp a.main_navlink{
    margin: -5px -20px 0 0;
    display: block;
    float: right;
}
#tachi_rightnav p a{
    color: black;
    text-decoration: none;
}
#gnav_tachi > ul#gnav_table > li#tachi_comp:hover a.main_navlink,
#tachi_rightnav p a:hover{
    text-decoration: underline;
}

/**/
#gnav_tachi > ul#gnav_table > li.toggle{
    width: 170px;
    height: 90px;
}
#gnav_tachi > ul#gnav_table > li.space{
    
	text-align: left;
}
.whborder{
    border: 1px solid white;
    box-sizing: border-box;
}
/*-----------*/
#logo{
    width: 200px;
	position: relative;
}
#logo img{
    width: 230px;
    height: auto;
	margin: 0 20px 0 0;
}
#logo b{
	position: absolute;
	top: 60px;
	left: 60px;
	width: 150px;
	display: block;
	font-weight: normal;
	background-color: #90c320;
	color: white;
	padding: 12px 10px 10px 10px;
	line-height: 0;
	clear: both;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	font-size: 12px;
}
/**/
#gnav > ul#gnav_table > li#about{
    width: 180px;
    padding: 0 !important;
}

.headnav-content{
    padding: 10px;
    color: white;
    font-size: 15px;
}
/**/
#gnav > ul#gnav_table > li.space{
	width: 10%;
	text-align: left;
}
#gnav_huku,
#gnav_con,
#gnav_tkc{
	width: 7%;
	border-left: 1px solid #ddd;
}

#gnav_huku i{
	color: #91c51a;
	font-size: 20px !important;
	margin-top: 7px;
}
#gnav_con i{
	color: #91c51a;
	font-size: 20px !important;
	margin-top: 7px;
}
#gnav_tkc{
	font-size: 12px !important;
	line-height: 150%;
	border-right: 1px solid #ddd;
}
#gnav_tkc img{
	width: 30px;
	height: auto;
	margin-top: 5px;
}
#gnav_tkc em{
	font-style: normal;
	color: blue;
}
#gnav > ul#gnav_table > li#gnav_huku:hover,
#gnav > ul#gnav_table > li#gnav_con:hover,
#gnav > ul#gnav_table > li:last-child:hover{
	background-color: #f5fff1;
	border-bottom: 5px solid #f5fff1;
}
/**/
.head_banars img{
	width: 100%;
	height: auto;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
}
.gnav_thum table{
	width: 1500px;
	margin: auto;
}
.gnav_thum table td{
	padding: 2%;
	text-align: center;
}
.gnav_thum table td p{
	margin: 0px auto;
	padding: 0px;
}
.gnav_thum table td a{
	color: white;
	text-decoration: none
}
.gnav_thum table td a:hover,
.gnav_thum table td a:hover img{
	text-decoration: underline;
	opacity:0.9;
}

    .swiper {
        width: 100%;
        margin: 90px 0 0 0;
    }
    .swiper-slide {
      text-align: center;
      font-size: 18px;
      background: #444;
      display: flex;
      justify-content: center;
      align-items: center;
        position: relative;
    }
    .mySwiper2 {/*メイン*/
    }
    .mySwiper {/*さむね*/
      height: 150px;
      box-sizing: border-box;
        width: 40%;
        margin: 40px auto;
        position: relative;
        z-index: 100;
    }
    .mySwiper .swiper-slide {
      width: 25%;
        background: none;
        text-align: center;
        
    }
    .mySwiper .swiper-slide img{
        width: 90px;
        height: auto;
        
	border-radius: 100px;
	-moz-border-radius: 100px;
	-webkit-border-radius: 100px;
        margin: auto;
        border: 2px solid white;
        box-sizing: border-box;
        transition: border 0.1s ease-in-out;
    }
    /**/
    .mySwiper .swiper-slide img:hover,
    .mySwiper .swiper-slide-thumb-active img{
        border: 10px solid white;
    }
.mySwiper .swiper-slide:hover span{
    text-decoration: underline;
}
    .swiper-slide img {
      display: block;
      width: 100%;
      height: auto;
      object-fit: cover;
    }
.mySwiper .swiper-slide span{
    font-size: 12px;
    color: white;
}
.mySwiper .swiper-slide span em{
    display: block;
    margin-top: -10px;
}
    #swip_line{
        clear: both;
        display: block;
        border-bottom: 3px dotted white;
        width: 550px;
        height: 3px;
        margin: -160px auto auto auto;
        position: relative;
        
    }
    .swiper-slide div.txt{
        position: absolute;
        width: 50%;
        right: 0;
        top: 0px;
        padding-top: 80px;
    }
    .swiper-slide div.txt p.em{
        color: #90c31f;
        font-size: 34px;
  font-family: "Lexend", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;

    }
    .swiper-slide div.txt p.em span{
        text-align: right;
        font-size: 20px;
    }
    .swiper-slide div.txt h1{
        font-size: 20px;
        
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;

    }
    .swiper-slide div.txt p.come{
        font-size: 14px;
        width: 52%;
        margin: auto;
        text-align: left;
    }
    .swiper-slide div.txt a{
        font-size: 14px;
        font-weight: bold;
        background-color: #9ad31d;
        display: block;
        color: white;
	border-radius: 100px;
	-moz-border-radius: 100px;
	-webkit-border-radius: 100px;
        width: 200px;
        margin: 30px auto auto auto;
        padding: 10px;
        text-decoration: none;
    }
    
/* SwiperのCSSトランジションを無効化（GSAPに一本化） */
.mySwiper2 .swiper-wrapper { transition: none !important; will-change: transform; }

#num_wrap{
    background-color: #90c31f;
    color: white;
    text-align: center;
    padding: 200px 0 0 0;
    margin:-80px 0 0 0;
}
#num_wrap h2{
    display: flex;
    align-items: center;
    font-size: 20px;
}
#num_wrap h2:before,
#num_wrap h2:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #fff;
}
#num_wrap h2:before {
    margin-right: 1rem;
}
#num_wrap h2:after {
    margin-left: 1rem;
}
/**/
#num_wrap h3{
    font-size: 18px;
}
#num_wrap h3 span{
    background-color: #9ad31d;
    padding: 5px;
}
.btn_w{
    padding-bottom: 50px;
}
.btn_w a{
    display: block;
    background-color: white;
	border-radius: 100px;
	-moz-border-radius: 100px;
	-webkit-border-radius: 100px;
    padding: 10px 20px;
    margin: 30px auto;
    text-decoration: none;
    width: 200px;
    text-align: center;
    color: #90c31f;
    font-weight: bold;
}
.btn_w2{
    position: relative;
    z-index: 50;
    margin: -250px auto 100px auto;
}
.btn_w2 a{
    display: block;
    background-color: white;
	border-radius: 100px;
	-moz-border-radius: 100px;
	-webkit-border-radius: 100px;
    padding: 10px 20px;
    margin: 30px auto;
    text-decoration: none;
    width: 200px;
    text-align: center;
    color: black;
}
/**/
#top2colom_news{
    display: table;
	min-width:1140px;
	max-width: 1600px;
	width: 90%;
    margin: 100px auto;
}
#top2colom_news dl dt,
#top2colom_news dl dd{
    display: table-cell;
    vertical-align: top;
    text-align: left;
}
#top2colom_news dl dt#left{
    width: 48%;
    padding-right:7%; 
}
#top2colom_news dl dt#left a{
    display: block;
    border: 1px solid #ddd;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
    padding: 7% 10%;
    text-decoration: none;
    color: black;
}
#top2colom_news dl dt#left a img{
    width: 100%;
    height: auto;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
}
#top2colom_news dl dt#left a p.day{
    margin: 0px;
    padding: 0px;
    font-size: 12px;
}
#top2colom_news dl dt#left a p.day span{
    color: white;
    background-color: orange;
    padding: 5px;
}
#top2colom_news dl dt#left a h2{
    margin: 0px;
    padding: 15px 0px;
    color: blue;
    font-weight: normal;
    line-height: 160%;
}
#top2colom_news dl dt#left a p.txt{
    margin: 0px;
    padding: 0px;
    font-size: 12px;
    color: gray;
    
}
#top2colom_news dl dd#right{
    
}
#top2colom_news dl dd#right table{
    border-top: 1px solid #ddd;
}
#top2colom_news dl dd#right table th,
#top2colom_news dl dd#right table td{
    border-bottom: 1px solid #ddd;
    padding: 25px 0;
    font-weight: normal;
    vertical-align: top;
    text-align: left;
}
#top2colom_news dl dd#right table th {
    padding-right: 20px;
    font-size: 80%;
    color:#565656;
}
.more {
    text-align: right;
}
.grback{
    background-color: #f7f7f7;
    clear: both;
}
/**/
#top_teamtxt{
    text-align: center;
    padding: 100px 0 0 0;
}
#top_teamtxt h3{
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
    font-size: 20px;
    
}
/**/
/* 半円エリアのサイズはお好みで調整 */
#top_zukai{
  position: relative;
  width: 90%;   /* 例：PC幅 */
  height: 1300px;  /* 例：半径の目安になる高さ */
  margin: 0 auto;
}
#top_zukai ul{
  position: relative;
  width: 100%;
  height: 100%;
    z-index: 10;
}
#top_zukai ul li{
  position: absolute; /* GSAPで座標移動させる */
  top: 50%;
  left: 50%;
    list-style: none;
  /* transformはGSAPに任せるのでここでは指定しない */
}

#top_zukai ul li a {
  display: block;
  background-color: white;
  border-radius: 200px;
  width: 140px;
  height: 100px;
  padding: 43px 0 0 0;
  text-align: center;
  color: black;
  text-decoration: none;
  line-height: 150%;
  box-shadow: 0 3px 10px #cdcdcd;
}
#top_zukai ul li.en_sozoku a{
  padding: 35px 0 8px 0;
}
#top_zukai ul li a i {
  color: gray;
}
/**/
#top_zukai ul li:nth-child(6) b,
#top_zukai ul li:nth-child(7) b,
#top_zukai ul li:nth-child(8) b
{display: block; height: 12px;}
/**/
#top_zukai ul li a span{
    font-size: 12px;
}
#top_zukai ul li a em{
    font-size: 12px;
    font-style: normal;
    color: dimgray;
}
/**/
#top3banars{
    display: table;
    width: 98%;
    margin: auto;
}
#top3banars dl dt{
    display: table-cell;
    vertical-align: top;
    text-align: center;
    width: 33%;
}
#top3banars dl dt a{
    display: block;
    background-color: white;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
    margin: 1%;
    color: black;
    text-decoration: none;
    height: 350px;
    position: relative;
}
#top3banars dl dt a h4{
    
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
    font-size: 20px;
    padding: 60px 0 0 0;
}
#top3banars dl dt a h4 span{
  font-family: "Poppins", sans-serif;
  font-weight: normal;
  font-style: normal;
    font-size: 14px;
    color: #90c31f;
}
#top3banars dl dt a p{
    margin: auto;
    text-align: left;
    font-size: 13px;
    position: absolute;
    bottom: 20px;
    left: 10%;
    right: 10%;
    line-height: 160%;
}
#top3banars dl dt a p span{
    background-color: white;
}
#top3banars dl dt:nth-child(1) a{
    background-image: url(../img/banar_miyake.jpg);
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: 160px auto;
}
#top3banars dl dt:nth-child(2) a img{
    width: 60%;
    height: auto;
    margin: -10px auto auto auto;
}
#top3banars dl dt:nth-child(3) a img{
    width: 80%;
    height: auto;
    margin: auto;
}
/**/

/**/
#top2banars_tachi{
    display: table;
    width: 98%;
    margin: auto;
}
#top2banars_tachi dl dt,
#top2banars_tachi dl dd{
    display: table-cell;
    vertical-align: top;
    text-align: center;
    width: 50%;
}
#top2banars_tachi dl dt a{
    display: block;
    background-color: white;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
    margin: 1%;
    color: black;
    text-decoration: none;
    height: 350px;
    position: relative;
}
#top2banars_tachi dl dt a h4,
#top2banars_tachi dl dd h4{
    
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
    font-size: 20px;
    padding: 60px 0 0 0;
}
#top2banars_tachi dl dt a h4 span,
#top2banars_tachi dl dd h4 span{
  font-family: "Poppins", sans-serif;
  font-weight: normal;
  font-style: normal;
    font-size: 14px;
    color: #90c31f;
}
#top2banars_tachi dl dt a p{
    margin: auto;
    text-align: left;
    font-size: 18px;
    position: absolute;
    bottom: 20px;
    left: 10%;
    right: 10%;
    line-height: 160%;
}
#top2banars_tachi dl dt a p span{
    background-color: white;
}
#top2banars_tachi dl dt a{
    background-image: url(../img/banar_kojima.jpg);
    background-position: center bottom;
    background-repeat: repeat-x;
    background-size: auto 110%;
}
/**/
#top2banars_tachi dl dd div{
    display: block;
    background-color: white;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
    margin: 1%;
    color: black;
    text-decoration: none;
    height: 350px;
    position: relative;
}
#top2banars_tachi dl dd ul{
    display: table;
    width: 80%;
    margin: auto;
    padding: 0;
}
#top2banars_tachi dl dd ul li{
    display: table-cell;
    width: 33.3%;
    padding: 0;
    margin: 0;
    text-align: center;
}
#top2banars_tachi dl dd ul li a{
    display: block;
    background-color: #fb7e2c;
    color: white;
    text-decoration: none;
    width: 90%;
    padding: 40px 0;
    margin: auto;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
    font-weight: bold;
}
#top2banars_tachi dl dd p{
    font-size: 14px;
    margin-top: 20px;
}
/*----------*/
#toptitles_staff {
    display: table;
	min-width:1140px;
	max-width: 1600px;
	width: 90%;
    margin: 100px auto;
}
#toptitles_staff dl dt,
#toptitles_staff dl dd{
    display: table-cell;
    vertical-align: top;
    text-align: left;
}
#toptitles_staff dl dt{
    width: 480px;
}
#toptitles_staff dl dt h3{
    
}
#toptitles_staff dl dt h3 span{
    
}
#toptitles_staff dl dd{
    
}
/**/
ul#topstafflist{
    margin: auto;
    padding: 0px;
	min-width:1140px;
	max-width: 1600px;
	width: 90%;
}
ul#topstafflist li{
    list-style: none;
    margin: 0px;
    padding: 0px;
    float: left;
    width: 25%;
}
ul#topstafflist li a{
    color: black;
    text-decoration: none;
}
ul#topstafflist li a div{
    display: table;
    border-top: 1px solid #ddd;
    width: 90%;
}
ul#topstafflist li a div dl dt,
ul#topstafflist li a div dl dd{
    display: table-cell;
    vertical-align: top;
    text-align: left;
    padding: 25px 0;
}
ul#topstafflist li a div dl dt{
    width: 30%;
}
ul#topstafflist li a div dl dt img{
    width: 80%;
    height: auto;
	border-radius: 100px;
	-moz-border-radius: 100px;
	-webkit-border-radius: 100px;
    float: left;
}
/**/
ul#topstafflist li a div dl dd h4{
    margin: 0px;
    padding: 0px;
    font-weight: normal;
    font-size: 16px;
}
ul#topstafflist li a div dl dd h4 span{
    font-size: 80%;
}
ul#topstafflist li a div dl dd p{
    font-size: 11px;
}
ul#topstafflist li a div dl dd p span{
    display: block;
    background-color: #ececec;
    padding: 1px 5px;
    margin: 0 10px 5px 0;
    float: left;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}

/**/
#top2banars{
    display: table;
    width: 98%;
    margin: 100px auto;
}
#top2banars dl dt,
#top2banars dl dd{
    display: table-cell;
    vertical-align: top;
    text-align: center;
    width: 50%;
}
#top2banars dl dt#sozo a{
    width: 95%;
    display: block;
    height: 310px;
    margin: auto;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
    background-color: #dacfbb;
    position: relative;
    text-decoration: none;
}
#top2banars dl dt a img{
    width: 200px;
    height: auto;
    margin: 50px auto auto auto;
    
}
#top2banars dl dt a b{
    display: block;
    background-color: white;
    padding: 10px 20px;
    margin: 15px auto auto auto;
	border-radius: 100px;
	-moz-border-radius: 100px;
	-webkit-border-radius: 100px;
    color: black;
    width: 150px;
}
/**/
#top2banars dl dd a{
    display: block;
    background-color: #90c31f;
    position: relative;
    height: 310px;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
}
#top2banars dl dd a div#logo_w{
    position: absolute;
    left: 10%;
    top: 20%;
    color: white;
    font-weight: bold;
}
#top2banars dl dd a div#logo_w img{
    width: 120px;
    height: auto;
}
#top2banars dl dd a div#logo_w b{
    display: block;
    background-color: white;
    padding: 10px 0;
    margin: 15px auto auto auto;
	border-radius: 100px;
	-moz-border-radius: 100px;
	-webkit-border-radius: 100px;
    color: #90c31f;
    width: 150px;
}
#top2banars dl dd a img#photo{
    width: 60%;
    height: auto;
    float: right;
    margin: 5%;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
}
.space100{
    clear: both;
    height: 100px;
}

/*-------*/
#toptopics{
    margin: 100px auto;
    padding: 0px;
	min-width:1140px;
	max-width: 1600px;
	width: 90%;
	display: table;
}
.topicswrap{
	min-width: 1260px !important;
	margin-left: -30px !important;
}
#toptopics dt{
	display: table-cell;
	vertical-align: top;
	width: 20%;
}
#toptopics dt h4{
	font-size: 22px;
    color: #ee772a;
    margin: 0px;
    padding: 35px 0 0 0px;
}
#toptopics dt h5{
	font-size: 14px;
    margin: 0px;
    padding: 15px 0px;
    font-weight: normal;
}
#toptopics dt a{
	display: block;
    background-color: #ece4d7;
    color: black;
    text-decoration: none;
    padding: 10px 0;
    margin: 0px;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
    width: 130px;
    text-align: center;
    font-size: 13px;
}
/**/
#toptopics dd{
	display: table-cell;
	vertical-align: top;
}
#toptopics dd ul{
	margin: 0px;
	padding: 0px;
}
#toptopics dd ul li{
	margin: 2.5%;
	padding: 0px;
	list-style: none;
	float: left;
	width: 20%;
}
#toptopics dd ul li img{
	width: 100%;
	height: auto;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
    border: 1px solid #ddd;
}
#toptopics dd ul li p{
	margin: 0px;
	padding: 0px;
	font-size: 12px;
	color: orangered;
}
#toptopics dd ul li h3{
	margin: 0px;
	padding: 0px 0 10px 0;
	font-size: 16px;
}
#toptopics dd ul li h3 a{
	color: black;
}
#toptopics dd ul li h4{
	margin: 0px;
	padding: 0px;
	font-size: 13px;
	font-weight: normal;
	line-height: 160%;
	color: gray;
}

#f_txt1 {
	background-color: #faf7f2;
	clear: both;
	width: 100%;
	padding: 50px 0;
	text-align: center;
	font-size: 20px;
	line-height: 200%;
}
#f_txt1 b{
	color: #b26f20;
	font-size: 18px;
	font-weight: normal;
}

/*----------------*/
#f_link3row {
	display: table;
	width: 100%;
	height: 150px;
	overflow: hidden;
}
#f_link3row dl dt{
	display: table-cell;
	width: 50%;
	background-color: #8dc21f;
	color: #fff;
	text-align: center;
	font-size: 16px;
	vertical-align: top;
}
#f_link3row dl dt p{
	font-size: 15px;
	margin:55px auto 5px auto;
}
#f_link3row dl dt a{
	color: #fff;
	text-decoration: none;
	font-size: 30px;
	font-weight: bold;
}
#f_link3row dl dt span{
	display: block;
	clear: both;
	margin: auto;
	font-size: 12px;
}
#f_link3row dl dt b{
	font-weight: normal;
	font-size: 13px;
}
#f_link3row dl dd{
	display: table-cell;
	text-align: center;
}
#f_link3row dl dd a{
	display: block;
	width: 100%;
	padding: 60px 0;
	background-color: #d1df1e;
	text-decoration: none;
	font-size: 18px;
	color: #000000;
	line-height: 200%;
}
#f_link3row dl dd span{
	display: block;
	clear: both;
	margin: auto;
	font-size: 12px;
}
#f_link3row dl dd#mailmag a{
	background-color: #b8c31d;
    color: #fff;
}
#f_link3row dl dd br{
    display: none;
}
#f_gr_back td p a{
    color: white;
}
/*------------*/
.grid{
    display: table;
    margin: auto;
    width: 80%;
}
.grid div.card{
    display: table-cell;
    width: 20%;
}
.grid div.card div.label{
    padding: 50px 0 0 0;
    position: relative;
}
.grid div.card div.label::after{
    
  content: '';
  width: 20px;
  height: 1px;
  display: inline-block;
  background-color: white;
  position: absolute;
  bottom: -15px;
  left: calc(50% - 10px)
}
.grid div.card div.meter{
        font-size: 70px;
  font-family: "Lexend", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
    padding-top: 50px;
}
.grid div.card div.meter span.percent{
    font-size: 24px;
}
.grid div.card p{
    font-size: 12px;
}
#today{
    clear: both;
    text-align: center;
    color: #fff6a6;
}
/*------*/
#top_zukai ol,
#top_zukai ol li{
    margin: 0px;
    padding: 0px;
}
#top_zukai ol{
  position: absolute;
  width: 100%;
  height: 100%;
    top: 350px;
    background-image: url(../img/zukai_back.png);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 1000px auto;   
}
#top_zukai ol li{
    list-style: none;
    position: absolute;
}
#top_zukai ol li img{
    height: auto;
    position: relative;
}
#top_zukai ol li a{
    position: absolute;
    z-index: 20;
}
#top_zukai ol li a span{
    color: black;
    font-size: 11px;
    display: block;
    float: left;
    line-height: 150%;
    position: relative;
}
/*--------------------*/
#top_zukai ol li#taxinquiry{top: 240px;left: calc(50%)}
#top_zukai ol li#taxinquiry a{width: 100px;left: -370px;}
#top_zukai ol li#taxinquiry img{width: 100px}
#top_zukai ol li#taxinquiry span{margin: -30px 0 0 -30px;}
/*--------------------*/
#top_zukai ol li#altitude{top: 130px;left: calc(50%)}
#top_zukai ol li#altitude a{width: 70px;left: -350px;}
#top_zukai ol li#altitude img{width: 70px;}
#top_zukai ol li#altitude span{margin: -20px 0 0 -30px;}
/*--------------------*/
#top_zukai ol li#innovation{top: 200px;left: calc(50%)}
#top_zukai ol li#innovation a{width: 150px;left: -250px;}
#top_zukai ol li#innovation img{width: 150px;}
#top_zukai ol li#innovation span{margin: -40px 0 0 20px;}
/*--------------------*/
#top_zukai ol li#komon{top: 20px;left: calc(50%)}
#top_zukai ol li#komon a{width: 120px;left: -160px;}
#top_zukai ol li#komon img{width: 120px;}
#top_zukai ol li#komon span{margin: -70px 0 0 -50px;}
/*--------------------*/
#top_zukai ol li#star{top: -160px;left: calc(50%)}
#top_zukai ol li#star a{width: 150px;left: -50px;}
#top_zukai ol li#star img{width: 150px;}
#top_zukai ol li#star span{margin: -120px 0 0 120px; width: 150px;}
/*--------------------*/
#top_zukai ol li#management{top: 50px;left: calc(50%)}
#top_zukai ol li#management a{width: 120px;left: 40px;}
#top_zukai ol li#management img{width: 120px;}
#top_zukai ol li#management span{margin: -70px 0 0 110px;width: 100px;}
/*--------------------*/
#top_zukai ol li#succession{top: 200px;left: calc(50%)}
#top_zukai ol li#succession a{width: 170px;left: 150px;}
#top_zukai ol li#succession img{width: 170px;}
#top_zukai ol li#succession span{margin: -50px 0 0 -40px;}
/*--------------------*/
#top_zukai ol li#sozoku{top: 270px;left: calc(50%)}
#top_zukai ol li#sozoku a{width: 120px;left: 300px;}
#top_zukai ol li#sozoku img{width: 120px;}
#top_zukai ol li#sozoku span{margin: -20px 0 0 -40px;}
/*--------------------*/
#top_zukai ol li#attorney{top: 300px;left: calc(50%)}
#top_zukai ol li#attorney a{width: 310px;left: -130px;}
#top_zukai ol li#attorney img{width: 310px;}
/*-------------------
立川-*/
#top_zukai ol li#star2{top: 50px;left: calc(50%)}
#top_zukai ol li#star2 a{width: 70px;left: -350px;}
#top_zukai ol li#star2 img{width: 130px;}
#top_zukai ol li#star2 span{margin: -60px 0 0 -40px; width: 130px;}
/*--------------------*/
#top_zukai ol li#succession2{top: -50px;left: calc(50%)}
#top_zukai ol li#succession2 a{width: 170px;left: -65px;}
#top_zukai ol li#succession2 img{width: 170px;}
#top_zukai ol li#succession2 span{margin: -150px 0 0 50px;}
/*--------------------*/
#top_zukai ol li#sozoku2{top: 70px;left: calc(50%)}
#top_zukai ol li#sozoku2 a{width: 170px;left: 0px;}
#top_zukai ol li#sozoku2 img{width: 170px;}
#top_zukai ol li#sozoku2 span{margin: -50px 0 0 150px;width: 100px;}
/*--------------------*/
#top_zukai ol li#sozoku_gift{top: 180px;left: calc(50%)}
#top_zukai ol li#sozoku_gift a{width: 170px;left: 200px;}
#top_zukai ol li#sozoku_gift img{width: 170px;}
#top_zukai ol li#sozoku_gift span{margin: -130px 0 0 90px;width: 150px;}
/*--------------------*/
#top_zukai ol li#sozoku_insurance{top: 260px;left: calc(50%)}
#top_zukai ol li#sozoku_insurance a{width: 170px;left: 150px;}
#top_zukai ol li#sozoku_insurance img{width: 140px;}
#top_zukai ol li#sozoku_insurance span{margin: -50px 0 0 90px;width: 150px;}
/*--------------------*/
#top_zukai ol li#sozoku_tokurei{top: 290px;left: calc(50%)}
#top_zukai ol li#sozoku_tokurei a{width: 170px;left: 300px;}
#top_zukai ol li#sozoku_tokurei img{width: 110px;}
#top_zukai ol li#sozoku_tokurei span{margin: -10px 0 0 -10px;width: 150px;}
/*--------------------*/
#top_zukai ol li#sozoku_tokurei2{top: 370px;left: calc(50%)}
#top_zukai ol li#sozoku_tokurei2 img{width: 400px; margin-left: -190px}
#top_zukai ol li#sozoku_tokurei2 span{position: absolute;width: 200px; font-size: 12px; top: 170px; left: -150px;line-height: 150%;}
   .hero-panels {
      display: flex;
      width: 100%;
      height: 600px;
      overflow: hidden;
       margin: 90px 0 0 0;
    }
    .panel {
      /* flex-grow を GSAP でアニメートするので、basis は 0 に */
      flex: 1 1 0%;
      position: relative;
      background-size: cover;
      background-position: center;
      cursor: pointer;
        text-align: center;
      height: 600px;
    }
    .panel div.main_txt {
      position: absolute;
      pointer-events: none;
      width: 100%;
        top: 50%; 
        left: 50%;  
        transform: translate(-50%, -70%);
    }
.panel div.main_txt h2{
    line-height: 150%;
    margin: 0px;
    padding: 0px;
}
.panel div.main_txt h2 span{
    font-size: 14px;
    color: #90c31f;
}
.panel div.white{
    color: white;
}
.panel div.main_txt b{
    display: block;
	border-radius: 100px;
	-moz-border-radius: 100px;
	-webkit-border-radius: 100px;
    padding: 10px 20px;
    margin: 30px auto;
    text-decoration: none;
    width: 200px;
    text-align: center;
    background-color: #9ad31d;
    width: 105px;
    color: white;
}

.panel--1{
    background-image: url(../img/tachikawa_02.jpg)
}
.panel--2{
    background-image: url(../img/tachikawa_03.jpg)
}
.panel--3{
    background-image: url(../img/tachikawa_04.jpg)
}

#lottie-container {
      width: 100%;
      height: 200px;
      margin: auto;
        position: absolute;
        top: 520px;
     z-index: 10;          /* パネルより前面に */
  pointer-events: none;
    }
#lottie-container * {
  pointer-events: none !important; /* 念のため中のSVGにも適用 */
}
#tachi_green{
    background-color: #90c31f;
    clear: both;
    margin: 0px;
    padding: 0px;
    border-bottom: 1px solid #b7d86d;
}
#tachi_green div{
    display: table;
}
#tachi_green div dl dt{
    display: table-cell;
    vertical-align: top;
    text-align: center;
    width: 33%;
}
#tachi_green div dl dt p{
    width: 80%;
    text-align: left;
    margin: 30px auto;
    font-size: 14px;
    color: white;
}