@charset "UTF-8";
/* ============================================================
#home トップページ
============================================================ */
.loading { display: block; position: fixed; top: 0; left: 0; z-index: 999999; width: 100%; height: 100%; height: 100vh; background: #18aa7f; text-align: center; }
.loading .img { position: relative; height: 100%; line-height: 1; }
.loading .img img { position: absolute; top: 50%; left: 50%; width: 56px; height: 56px; margin: -28px 0 0 -28px; -webkit-animation: spin 3s; animation: spin 3s; }
@-webkit-keyframes spin { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }  100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }
@keyframes spin { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }  100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }
/* #feature
================================================ */
#feature .featureIn { padding: 50px 16px 28%; background: url(../img/home/bg_feature01_sp.png) no-repeat bottom center; background-size: 100%; }
#feature .leadTit { width: 243px; margin: 0 auto 10px; }
#feature .copy { line-height: 1.69; margin-bottom: 18px; font-weight: bold; font-size: 1.6rem; text-align: center; letter-spacing: .12em; }
#feature .copy span { background: -webkit-linear-gradient(top, #fff 0%, #fff 60%, #ffea78 61%, #ffea78 90%, #fff 91%, #fff 100%); background: linear-gradient(to bottom, #fff 0%, #fff 60%, #ffea78 61%, #ffea78 90%, #fff 91%, #fff 100%); }
#feature .txt { margin-bottom: 23px; }
#feature .btn { width: 290px; margin: 0 auto; }
#feature .btn a { display: block; position: relative; padding: 7px 20px; border: 3px solid #06a577; border-radius: 6px; font-weight: bold; font-size: 1.6rem; text-align: center; letter-spacing: .12em; }
#feature .btn a:before { position: absolute; top: 50%; right: 12px; width: 7px; height: 13px; margin-top: -6px; background: url(../img/common/ico_arw01.png) no-repeat; background-size: 100%; content: ""; }
@media all and (min-width: 600px) { #feature { background: url(../img/home/bg_feature02.png) no-repeat top 180px center; }  #feature .featureIn { overflow: hidden; padding: 104px 0 100px; background-image: url(../img/home/bg_feature01_pc.png); background-size: auto; }  #feature .leadTit { width: auto; margin-bottom: 40px; text-align: center; }  #feature .copy { margin-bottom: 43px; font-size: 2.2rem; }  #feature .txt { margin-bottom: 50px; text-align: center; }  #feature .btn { width: 350px; }  #feature .btn a { padding: 9px 20px; background: #fff; font-size: 1.7rem; -webkit-transition: all .5s ease-out; transition: all .5s ease-out; }  #feature .btn a:before { -webkit-transition: all .5s ease-out; transition: all .5s ease-out; }  #feature .btn a:hover { background: #06a577; color: #fff; }  #feature .btn a:hover:before { background-image: url(../img/common/ico_arw02.png); } }
/* #achieve
================================================ */
#achieve { background: url(../img/home/bg_achieve01_sp.png) no-repeat; background-size: cover; }
#achieve .achieveIn { padding: 33px 0 40px; }
#achieve .leadTit { width: 104px; margin: 0 auto 26px; }
#achieve .tabsWrap { overflow-x: scroll; }
#achieve .tabs { width: 950px; overflow: hidden; margin-bottom: 20px; }
#achieve .tabs .item { display: table; float: left; box-sizing: border-box; width: 145px; height: 50px; line-height: 1.17; margin: 0 10px 0 0; border: 3px solid #06a577; border-radius: 7px 7px 0 0; background: #fff; font-weight: bold; font-size: 1.2rem; text-align: center; letter-spacing: .06em; -webkit-transition: all .5s ease-out; transition: all .5s ease-out; }
#achieve .tabs .item.slick-current , #achieve .tabs .item.is_active { background: #06a577; color: #fff; }
#achieve .tabs .item span , #achieve .tabs .item a { display: table-cell; padding: 0 7px; vertical-align: middle; }
#achieve .tabs .item:first-child { margin-left: 15px; font-size: 1.4rem; }
#achieve .content { padding: 0 15px; }
#achieve .content .list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px 10px; }
/* #achieve .content .list .item { } */
/* #achieve .content .list .item:nth-child(even) { float: right; } */
#achieve .content .list .item a { display: block; }
#achieve .content .list .item .img { overflow: hidden; margin-bottom: -10px; border-radius: 6px; }
#achieve .content .list .item .img img { display: block; }
#achieve .content .list .item .img .more { display: none; }
#achieve .content .list .item .cat { display: inline-block; position: relative; line-height: 1.18; margin: 0 13px 8px 0; padding: 8px 7px 8px 7px; border-radius: 4px; background: #ffea78; font-size: 1.1rem; letter-spacing: .1em; }
#achieve .content .list .item .txt { line-height: 1.33; font-weight: bold; font-size: 1.5rem; }
#achieve .btn { width: 290px; margin: 10px auto 0; }
#achieve .btn a { display: block; position: relative; padding: 7px 20px; border: 3px solid #06a577; border-radius: 6px; background: #fff; font-weight: bold; font-size: 1.6rem; text-align: center; letter-spacing: .12em; }
#achieve .btn a:before { position: absolute; top: 50%; right: 12px; width: 7px; height: 13px; margin-top: -6px; background: url(../img/common/ico_arw01.png) no-repeat; background-size: 100%; content: ""; }
@media all and (min-width: 600px) { #achieve { background-image: url(../img/home/bg_achieve01_pc.png); }  #achieve .achieveIn { width: 1100px; margin: 0 auto; padding: 90px 0; }  #achieve .leadTit { width: auto; margin-bottom: 55px; text-align: center; }  #achieve .tabsWrap { overflow: hidden; }  #achieve .tabs { width: 100%; margin-bottom: 40px; }  #achieve .tabs .item { width: 175px; height: 55px; line-height: 1.14; margin-right: 10px; font-size: 1.4rem; cursor: pointer; }  #achieve .tabs .item:first-child { margin-left: 0; font-size: 1.7rem; }  #achieve .tabs .item:last-child { margin-right: 0; }  #achieve .tabs .item a { padding: 0 10px; -webkit-transition: all .5s; transition: all .5s; }  #achieve .tabs .item a:hover { background: #06a577; color: #fff; }  #achieve .tabs .item.is_active a { color: #fff; }  #achieve .content { padding: 0; } #achieve .content .list { grid-template-columns: repeat(3, 1fr); gap: 45px 40px;} #achieve .content .list .item:nth-child(3n) { margin-right: 0; }  #achieve .content .list .item .img { position: relative; margin-bottom: -15px; }  #achieve .content .list .item .img .more { display: block; position: absolute; top: 0; left: 0; box-sizing: border-box; width: 100%; height: 100%; line-height: 1; visibility: hidden; padding: 105px 0 0; background: rgba(6, 165, 119, .8); opacity: 0; color: #fff; font-size: 1.7rem; text-align: center; -webkit-transition: all .5s ease-out; transition: all .5s ease-out; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }  #achieve .content .list .item .img .more:before { position: absolute; top: 135px; left: 50%; width: 6px; height: 12px; background: url(../img/common/ico_arw02.png) no-repeat; background-size: 100%; content: ""; }  #achieve .content .list .item .cat { margin-bottom: 16px; font-weight: 500; font-size: 1.3rem; }  #achieve .content .list .item .txt { font-size: 1.8rem; }  #achieve .content .list .item a:hover .img .more { visibility: visible; opacity: 1; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }  #achieve .btn { width: 350px; margin-top: 20px; }  #achieve .btn a { padding: 9px 20px; font-size: 1.7rem; -webkit-transition: all .5s ease-out; transition: all .5s ease-out; }  #achieve .btn a:before { -webkit-transition: all .5s ease-out; transition: all .5s ease-out; }  #achieve .btn a:hover { background: #06a577; color: #fff; }  #achieve .btn a:hover:before { background-image: url(../img/common/ico_arw02.png); } }
/* .secWrap01
================================================ */
.secWrap01 { padding: 32px 15px 0 20px; }
@media all and (min-width: 600px) { .secWrap01 { padding: 98px 0 0; } }
/* #blog
================================================ */
#blog { margin-bottom: 14px; }
#blog .head { float: left; width: 43%; }
#blog .head img { display: block; }
#blog .head .tit { width: 100%; max-width: 145px; margin: 0 auto 17px; }
#blog .head .btn { width: 66%; max-width: 95px; margin: 0 auto; }
#blog .content { float: right; width: 49%; }
#blog .content .item { position: relative; margin: 0 0 12px; }
#blog .content .item a { display: block; }
#blog .content .item .img { overflow: hidden; margin-bottom: -15px; border-radius: 10px; }
#blog .content .item .img img { display: block; }
#blog .content .item .img .more { display: none; }
#blog .content .item .cat { display: inline-block; line-height: 1.3; margin: 0 5px 5px 0; padding: 5px 11px; border-radius: 3px; background: #d4efdf; font-size: 1.1rem; }
#blog .content .item .txt { line-height: 1.2; margin-bottom: 5px; font-weight: bold; font-size: 1.4rem; }
#blog .content .item .time { line-height: 1; font-size: 1.2rem; }
#blog .content .item.new:before { position: absolute; top: -10px; left: -10px; width: 49px; height: 42px; background: url(../img/home/ico_blog01.png) no-repeat; background-size: 100%; content: ""; }
#blog .content .item:nth-child(n+3) { display: none; }
@media all and (min-width: 600px) { #blog { width: 1100px; margin: 0 auto 85px; }  #blog .head { width: 154px; }  #blog .head .tit { max-width: 100%; margin-bottom: 18px; }  #blog .head .btn { width: 100px; }  #blog .content { width: 880px; }  #blog .content .list .item { float: left; width: 276px; margin: 0 26px 0 0; }  #blog .content .list .item:nth-child(n+3) { display: block; margin-right: 0; }  #blog .content .list .item .img { position: relative; margin-bottom: -16px; }  #blog .content .list .item .img .more { display: block; position: absolute; top: 0; left: 0; box-sizing: border-box; width: 100%; height: 100%; line-height: 1; visibility: hidden; padding: 78px 0 0; background: rgba(6, 165, 119, .8); opacity: 0; color: #fff; font-size: 1.5rem; text-align: center; -webkit-transition: all .5s ease-out; transition: all .5s ease-out; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }  #blog .content .list .item .img .more:before { position: absolute; top: 106px; left: 50%; width: 6px; height: 12px; background: url(../img/common/ico_arw02.png) no-repeat; background-size: 100%; content: ""; }  #blog .content .list .item .cat { position: relative; margin-bottom: 10px; padding: 4px 11px; font-size: 1.3rem; }  #blog .content .list .item .txt { margin-bottom: 8px; font-size: 1.6rem; }  #blog .content .list .item .time { font-size: 1.3rem; }  #blog .content .list .item.new:before { top: -11px; left: -14px; z-index: 1; width: 61px; height: 53px; }  #blog .content .list .item a:hover .img .more { visibility: visible; opacity: 1; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; } }
/* #topics
================================================ */
#topics .head { float: left; width: 43%; }
#topics .head img { display: block; }
#topics .head .tit { width: 100%; max-width: 145px; margin: 0 auto 17px; }
#topics .head .btn { width: 66%; max-width: 95px; margin: 0 auto; }
#topics .content { float: right; width: 49%; }
/* #topics .content .item { position: relative; border-bottom: 1px solid #e2e2e2; }
#topics .content .item a { display: block; }
#topics .content .item .cat { display: inline-block; line-height: 1.3; margin: 0 0 9px; padding: 5px 11px; border-radius: 3px; background: #dff5ca; font-size: 1.1rem; }
#topics .content .item .time { line-height: 1; margin-bottom: 4px; font-size: 1.2rem; }
#topics .content .item .txt { line-height: 1.43; margin-bottom: 7px; font-weight: bold; font-size: 1.4rem; }
#topics .content .item + .item { margin: 15px 0 0; }
#topics .content .item:nth-child(n+3) { display: none; } */
#topics .content .list.nocategory { border-top: 1px solid #e2e2e2; margin: 5px 0 0; }
#topics .content .list.nocategory .item { position: relative; padding: 12px 0; border-bottom: 1px solid #e2e2e2; }
#topics .content .list.nocategory .item a { display: block; padding: 5px 0; }
#topics .content .list.nocategory .item .time { line-height: 1; margin-bottom: 5px; font-size: 1.2rem; }
#topics .content .list.nocategory .item .txt { line-height: 1.43; font-weight: bold; font-size: 1.4rem; }
#topics .content .list.nocategory .item:nth-child(n+3) { display: none; }
@media all and (min-width: 600px) { #topics { width: 1100px; margin: 0 auto; }  #topics .head { width: 154px; }  #topics .head .tit { max-width: 100%; margin-bottom: 18px; }  #topics .head .btn { width: 100px; }  #topics .content { width: 880px; }  /* #topics .content .list .item { overflow: hidden; }  #topics .content .list .item:nth-child(n+3) { display: block; }  #topics .content .list .item + .item { margin: 20px 0 0; }  #topics .content .list .item a { position: relative; padding: 0 50px 22px 0; }  #topics .content .list .item a:before { position: absolute; top: 50%; right: 20px; width: 7px; height: 13px; margin-top: -7px; background: url(../img/common/ico_arw01.png) no-repeat; background-size: 100%; content: ""; }  #topics .content .list .item a:hover .txt { text-decoration: underline; }  #topics .content .list .item .cat { display: table; clear: both; margin-bottom: 20px; padding: 4px 11px; font-size: 1.3rem; }  #topics .content .list .item .time { float: left; margin-bottom: 0; font-size: 1.3rem; }  #topics .content .list .item .txt { margin: -5px 0 0; padding: 0 0 0 95px; font-size: 1.6rem; } */
	#topics .content .list.nocategory { margin: 5px 0 0; }
	#topics .content .list.nocategory .item { overflow: hidden; padding: 10px 0; }
	#topics .content .list.nocategory .item:nth-child(n+3) { display: block; }
	#topics .content .list.nocategory .item a { position: relative; padding: 10px 50px 10px 0; }
	#topics .content .list.nocategory .item a:before { position: absolute; top: 0; right: 20px; bottom: 0; width: 7px; height: 13px; margin: auto; background: url(../img/common/ico_arw01.png) no-repeat; background-size: 100%; content: ""; }
	#topics .content .list.nocategory .item a:hover .txt { text-decoration: underline; }
	#topics .content .list.nocategory .item .time { float: left; margin: 3px 0 0; line-height: 1.43; font-size: 1.3rem; }
	#topics .content .list.nocategory .item .txt { margin: 0 0 0 95px; font-size: 1.6rem; }
}