/* グローバル項目 */
/* ---------------------------------- */
body,
div,
p,
ul,
ol,
li,
dl,
dt,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
table,
th,
td,
sup,
sub,
caption,
blockquote,
pre,
code,
form,
fieldset,
legend,
input,
button,
select,
optgroup,
textarea {
    margin: 0;
    padding: 0;
}
sub{
    line-height: 0;
}
html {
    font-size: 62.5%;
    scroll-behavior: smooth;
}

body {
    margin: 0;
    font-size: 1.6rem;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium",
        "游ゴシック", "Yu Gothic", sans-serif;
    color: #404040;
    padding-top: 107px;
    overflow-y: scroll;
}
@media screen and (max-width: 991px) {
    body {
        font-size: 1.5rem;
        padding-top: 60px;
    }
}
textarea,
input {
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium",
    "游ゴシック", "Yu Gothic", sans-serif;
    color: #404040;
    font-size:1.6rem;
}
h1 {
    font-size: 2.4rem;
    font-weight: bold;
}
h2 {
    font-size: 2.2rem;
    font-weight: bold;
}
h3 {
    font-size: 1.8rem;
    font-weight: bold;
}
h4 {
    font-size: 1.6rem;
    font-weight: bold;
}
h5 {
    font-weight: bold;
}
.f-1rem{
    font-size:1rem;
}
.f-size-7{
    font-size:0.7rem;
}
.f-size-10{
    font-size:1rem;
}
.f-size-11{
    font-size:1.1rem;
}
.f-size-12{
    font-size:1.2rem;
}
.f-size-13{
    font-size:1.3rem;
}
.f-size-14{
    font-size:1.4rem;
}
.f-size-15{
    font-size:1.5rem;
}
.f-size-16{
    font-size:1.6rem;
}
.f-size-18{
    font-size:1.8rem;
}
@media screen and (max-width: 991px) {
    h1 {
        font-size: 2.2rem;
    }
    h2 {
        font-size: 2.2rem;
    }
    h3 {
        font-size: 1.6rem;
    }
    h4 {
        font-size: 1.5rem;
    }
}
a {
    color: #326eaa;
    font-weight: bold;
    text-decoration: underline;
}
a:hover {
    color: #aa5500;
}
a.prev:before,
a.next:before {
    content: "";
    display: inline-block;
    width: 1.4rem;
    height: 1.4rem;
    background-image: url(../img/arrow-green.svg);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    transform: rotate(180deg);
    margin: 0 10px 1px 0;
}
a.next:before{
    transform: rotate(0deg);
}
a[target="_blank"]:after,
a[target="_blank"].large-blank:after {
    content: "";
    display: inline-block;
    width: 1.4rem;
    height: 1.4rem;
    background-image: url(../img/icon-blank.svg);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    margin: 0 3px 1px 5px;
}
a[target="_blank"].large-blank:after {
    width: 1.6rem;
    height: 1.6rem;
}
    
a.img-link[target="_blank"]:after {
    content: "";
    display: inline-block;
    margin: 0;
    background-image: none;
    width: 0;
    height: auto;
}
a[href$=".pdf"]:after,
a.icon-pdf-white[href$=".pdf"]:after {
    content:"";
    display: inline-block;
    width: 24px;
    height: 24px;
    margin-left:5px;
    position: relative;
    vertical-align: baseline;
    top:5px;
    background: url(../img/icon-pdf.svg) no-repeat;
}
a.z-top[href$=".pdf"]:after{
    z-index:9999;
    top:0;
}
a.icon-pdf-white[href$=".pdf"]:after {
    background: url(../img/icon-pdf-white.svg) no-repeat;
    width:20px;
    height:20px;
    z-index:9999;
}
a.window-open-pdf:after,
a.window-open-pdf-summary:after,
a.icon-pdf-white:after {
    content:"";
    display: inline-block;
    width: 24px;
    height: 24px;
    margin-left:5px;
    position: relative;
    top:5px;
    background: url(../img/icon-pdf.svg) no-repeat;
}
a.icon-pdf-white:after {
    background: url(../img/icon-pdf-white.svg) no-repeat;
    width:20px;
    height:20px;
}
a[href$=".xls"]:after,
a[href$=".xlsx"]:after {
    content:"";
    display: inline-block;
    width: 24px;
    height: 24px;
    margin-left:5px;
    position: relative;
    top:5px;
    background: url(../img/icon-xls.svg) no-repeat;
}
a[href$=".zip"]:after {
    content:"";
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-left:2px;
    position: relative;
    top:5px;
    background: url(../img/icon-zip.svg) no-repeat;
}
a.download[href$=".zip"]:after,
a.download2[href$=".zip"]:after,
.csvDL-kind-row-link a:after{
    content:"";
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-left:5px;
    position: relative;
    top:5px;
    background: url(../img/icon-download.svg) no-repeat;
}
a.download2[href$=".zip"]:after,
.csvDL-kind-row-link a:after{
top:2px;
margin-right:5px;
}
p {
    margin-top: 0;
    line-height: 2.5rem;
}
.indent-1{
    text-indent:-1em;
    padding-left:1em;
}
.indent-1-quarter{
    text-indent:-1.25em;
    padding-left:1.25em;
}
.indent-2{
    text-indent:-2em;
    padding-left:2em;
}
img {
    border: none;
    vertical-align: middle;
}
hr {
    height: 0;
    border:0;
    border-top: solid 1px #a2a2a2;
}

@media screen and (max-width: 991px) {
    .container {
        padding: 0 20px;
    }
    p {
        line-height: 2.5rem;
    }
}
.font-b {
    font-weight: bold !important;
}
.text-underline{
    text-decoration:underline;
}

/* colors ------------- */
.color-green {
    color: #008070;
}
.color-red{
    color:#d52d20;
}
.color-background {
    background-color: #f1f9f6;
}
.color-text {
    color: #404040;
}
/* 太陽光 */
.color-solarpower {
    color: #b12b1d;
}
/* 風力 */
.color-windpower {
    color: #30817d;
}
/* 中小水力 */
.color-waterpower {
    color: #276db2;
}
/* 地熱 */
.color-geothermal {
    color: #cd3d7f;
}
/* 地中熱 */
.color-undergroundheat {
    color: #98633c;
}
/* 太陽熱 */
.color-solarheat {
    color: #985ead;
}
/* 背景　白 */
.bg-white {
    background-color: #fff;
}
.bg-light-green{
    background-color:#F1F9F6;
}
.bg-light-gray{
    background-color: #F6F6F6;
}
.c-white{
    color:#fff;
}

@media screen and (min-width: 992px) {
    .container {
        width: 100%;
        max-width: 1170px;
        min-width: 992px;
        margin: auto;
    }
}

/* margin padding */
@media screen and (min-width: 991px) {
    .mb-PC60-SP40 {
        margin-bottom: 60px;
    }
}
.mb-PC60-SP40 {
    margin-bottom: 40px;
}
.z_10{
    z-index: 10 !important;
    /*z-index: 2147483647 !important;*/
}

/* 個別項目 */
/* ---------------------------------- */
/* 最上段リンク .toplink */
/* ---------------------------------- */
.fixed-top > div {
    background-color: #fff;
}
.cstm-toplink {
    /* cstm-toplink-container の row */
    font-size: 1.3rem;
    max-width: 1170px;
    min-width: 992px;
    margin: auto;
    padding-top: 18px;
    height: 65px;
    background-color: #fff;
}
.cstm-toplink a {
    color: #404040;
    text-decoration: none;
    font-weight: 100;
}
.cstm-toplink a:hover {
    text-decoration: underline !important;
}
.cstm-toplink .list-inline-item {
    /* 項目名表示の li */
    border-left: solid 1px #9eb4c8;
    text-align: center;
    margin: 0;
    padding: 0 1.25rem 0 1.5rem;
    height: 1.5rem;
}
.cstm-toplink .list-inline-item:first-child {
    /* 一番左は罫線非表示 */
    border: 0;
}
.cstm-toplink .list-inline-item:last-child {
    padding-right: 0;
}
.logo-repos {
    /* REPOSロゴ */
    height: 2.25em;
}
.logo-repos:hover {
    opacity: 0.6;
}
.logo-env {
    /* 環境省ロゴ */
    height: 1.7em;
    margin-top: -0.5rem;
}
.logo-env:hover {
    opacity: 0.6;
}
.icon-search:hover {
    opacity: 0.6;
}
@media screen and (max-width: 991px) {
    /* lg以下はハンバーガーメニューに移動するので非表示 */
    .cstm-toplink {
        display: none;
    }
}

/* ------------------------------------------------- */
/* ナビゲーションバー */
/* nav
        container-fluid
            cstm-navbar
                ul.navbar-nav / cstm-navbar-nav
                    li.nav-item / a.nav-link
                    ul.dropdown-menu
                        cstm-dropdown-menu
                            dropdown-menu-title1
                            dropdown-menu-titel2
                                li a.dropdown-item
*/
/* ------------------------------------------------- */
nav {
    /* ナビゲーション全体 */
    /* height 設定不可 */
    font-weight: bold;
    width: 100%;
    position: relative;
    margin: auto;
}
.cstm-navbar {
    /* ナビゲーション全体 */
    background-color: #fff;
    padding: 0 0 18px 0;
    border-bottom: solid 1px #9eb4c8;
}
.cstm-navbar-brand {
    width: 108px;
    margin: 15px 0 15px 10px;
}

/* ナビゲーション全体包括の ul */
.cstm-navbar-nav {
    width: 100%;
    max-width: 1170px;
}

/* 992px以上のとき区切り線を表示する */
@media screen and (min-width: 992px) {
    .nav-item {
        border-right: 1px solid #9eb4c8;
    }
    .cstm-nav-item8 {
        border-right: none;
    }
    .nav-link {
        margin: 0;
        padding: 0;
    }
}

/* ------------------------------------ */
/* ジャンボトロン */
/* ------------------------------------ */
.jumbotron {
    background: url(../img/jumbo-photo.jpg) top no-repeat;
    background-size: 100%;
    background-position: 50% 20%;
    top: 0px;
    height: 313px;
    min-height: 230px;
}
.jumbotron-container {
    max-width: 972px;
    position: relative;
    top: 25px;
}

.jumbotron h1 {
    font-size: 3.2rem;
    line-height: 5.5rem;
    font-weight: bold;
    padding: 0;
    margin: 0;
}
.jumbotron p {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 3.8rem;
    margin-top: 10px;
}
@media screen and (max-width: 700px) {
    .jumbotron {
        background-size: 320%;
        background-position: 28% 12%;
    }
    .jumbotron-container {
        width: 100%;
    }
    .cstm-jumbotron {
        height: 288px;
    }
    .jumbotron h1 {
        font-size: 2.4rem;
        line-height: 3.7rem;
    }
}
@media screen and (max-width: 800px) {
    .jumbotron p {
        width: 100%;
        font-size: 1.5rem;
        font-weight: normal;
        line-height: 2.7rem;
    }
}

/* ------------------------------------ */
/* メインボタン */
/* ジャンボトロン下「地域脱炭素化支援ツール」「自治体別集計データ」ボタン */
/* ------------------------------------ */
.main-btn-col {
    /*position: absolute;*/
    /*margin-top: -60px;*/
}
.main-btn-col .row {
    max-width: 972px;
    margin: auto;
}
.main-btn-left,
.main-btn-right {
    width: 100%;
    border: solid 1px #ddd;
    border-radius: 8px;
    background-color: #fff;
    padding: 18px;
    margin-bottom: 20px;
}
.main-btn-col1 img {
    width: 60px;
    margin-top:12px;
    margin-right:25px;
}
.main-btn-col3 img{
    width:10px;
    margin:35px 0 0 10px;
}
@media screen and (min-width: 992px) {
    .main-btn-left,
    .main-btn-right {
        width: 470px;
    }
    .main-btn-col1 {
        width: 90px;
        float: left;
    }
    .main-btn-col2 {
        width: 300px;
        float: left;
    }
    .main-btn-col3 {
        float: left;
    }
}
.main-btn-left {
    margin-right: auto;
}
.main-btn-right {
    margin-left: auto;
}
.main-btn-col2 h3 {
    margin: 0 0 5px 0 !important;
    text-decoration:underline;
}
.main-btn-col2 p {
    text-align: left !important;
    margin: 0 !important;
    color: #404040;
    line-height: 2.7rem;
    font-weight: normal;
}
/* SPサイズ */
@media screen and (max-width: 991px) {
  .main-btn-col h2 {
    margin-bottom: 1rem;
  }
  .main-btn-col p {
    text-align: start;
  }
    .main-btn-col1 {
        width: 65px;
        float: left;
    }
    .main-btn-col2 {
        width: 75%;
        float: left;
    }
    .main-btn-col3 {
        width: 20px;
        float: right;
    }
    .main-btn-col1 img {
        width: 44px;
        margin:15px 0 0 10px;
    }
    .main-btn-col3 img{
        width:10px;
        margin:32px 0 0 0;
    }
}

/* ------------------------------------ */
/* ポテンシャルメニュー　.poten */
/* ------------------------------------ */
.poten {
    margin-top: 50px;
    max-width: 972px;
    margin-bottom: 60px;
}
@media screen and (max-width: 991px) {
    .poten {
        /*margin-top: 250px;*/
        margin-bottom: 40px;
    }
    .poten h2 {
        font-size: 2.2rem;
        line-height: 3rem;
        margin: -1.5rem 0 1rem 0;
    }
    .poten p {
        text-align: start;
    }
}
.p-top-policy__mask {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0;
    background-color: #ffffff;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    visibility: hidden;
    z-index: -1;
}
.is-focused .p-top-policy__mask {
    opacity: 1;
    visibility: visible;
    z-index: 1;
}
/* ボタン　外枠 */
.p-top-policy {
    position: relative;
    display: block;
    overflow: hidden;
    height: 142px;
    border: solid 1px #ddd;
    border-radius: 5px;
    margin-bottom: 20px;
    box-shadow: 5px 5px 5px 0px rgba(0, 0, 0, 0.4);
}
.p-top-policy-main {
    height: 125px;
}
.p-top-policy-main .p-top-policy__link {
    background-color: #fff;
    width: 100%;
    position: absolute;
    top: 0;
}
.p-top-policy-main a {
    color: #008070;
}
.p-top-policy-main a:hover {
    color: #aa5500;
}

/* p-top-policy
*************************************/
.p-top-policy__item {
    background-color: #ffffff;
    overflow: hidden;
    padding: 0;
}
.p-top-policy__link {
    text-decoration: none;
    padding: 30px 0;
    height: 100%;
}
@media (hover: hover) {
    .p-top-policy__link:hover .p-top-policy__mask {
        opacity: 1;
        visibility: visible;
        z-index: 1;
    }
}
.p-top-policy__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
}

.p-top-policy__link_02 {
    text-decoration: none;
    padding: 30px 0;
    height: 100%;
}
.p-top-policy__link_02 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
}
.p-top-policy__link_02 {
    background-color: #fff;
    width: 100%;
    position: absolute;
    top: 0;
}

.p-top-policy__link__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
}
.p-top-policy__heading{
    text-align: center;
}
.p-top-policy__heading p {
    margin-top: 5px;
}
.p-top-policy__mask_text {
    margin: auto;
    height: 70px;
    vertical-align: middle;
    font-weight: 100;
}
.p-top-policy__mask_text a {
    display: block;
    padding-top: 24px;
    width: 100%;
    height: 100%;
    color: #404040;
    text-decoration: underline;
}
.p-top-policy__mask_text a:hover {
    color: #aa5500;
}
.p-top-policy__mask_text a.map::before {
    background: url(../img/icon-map.svg) no-repeat;
}
.p-top-policy__mask_text a.graph::before {
    background: url(../img/icon-graph.svg) no-repeat;
}
.p-top-policy__mask_text a.target::before {
    background: url(../img/icon-target.svg) no-repeat;
}
.p-top-policy__mask_text a.map::before,
.p-top-policy__mask_text a.graph::before,
.p-top-policy__mask_text a.target::before {
    content: "";
    position: relative;
    top: 3px;
    left: -5px;
    width: 16px;
    height: 16px;
    display: inline-block;
}

.p-top-policy__mask_text_02 {
    margin: auto;
    height: 140px;
    vertical-align: middle;
    font-weight: 100;
}
.p-top-policy__mask_text_02 a {
    display: block;
    padding-top: 60px;
    width: 100%;
    height: 100%;
    color: #404040;
    text-decoration: underline;
}
.p-top-policy__mask_text_02 a:hover {
    color: #aa5500;
}
.p-top-policy__mask_text_02 a.map::before {
    background: url(../img/icon-map.svg) no-repeat;
}
.p-top-policy__mask_text_02 a.map::before {
    content: "";
    position: relative;
    top: 3px;
    left: -5px;
    width: 16px;
    height: 16px;
    display: inline-block;
}

/* top-policy-main */
.p-top-policy-main__mask_text {
    margin: auto;
    height: 125px;
    vertical-align: middle;
    font-weight: 100;
}
.p-top-policy-main__mask_text a {
    padding-top: 50px;
}

.p-top-policy ul {
    list-style-type: none;
}

/* potential */
.poten-1 {
    color: #b12b1d;
}
.poten-2 {
    color: #30817d;
}
.poten-3 {
    color: #276db2;
}
.poten-4 {
    color: #cd3d7f;
}
.poten-5 {
    color: #98633c;
}
.poten-6 {
    color: #985ead;
}
.poten-7 {
    color: #637e22;
}
.poten-1 h5,
.poten-2 h5,
.poten-3 h5,
.poten-4 h5,
.poten-5 h5,
.poten-6 h5,
.poten-7 h5 {
    text-align: center;
    font-size: 1.4rem;
    margin-top: 12px;
    padding-left:8px;
}
.poten-3 h5 {
    padding-top: 12px;
}
.poten-1 h5::after,
.poten-2 h5::after,
.poten-3 h5::after,
.poten-4 h5::after,
.poten-5 h5::after,
.poten-6 h5::after,
.poten-7 h5::after {
    content: "";
    display: inline-block;
    width: 1.1rem;
    height: 1.3rem;
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    margin: 0 0 4px 5px;
}
.poten-1 h5::after {
    background-image: url(../img/arrow-solar.svg);
}
.poten-2 h5::after {
    background-image: url(../img/arrow-wind.svg);
}
.poten-3 h5::after {
    background-image: url(../img/arrow-water.svg);
}
.poten-4 h5::after {
    background-image: url(../img/arrow-geo.svg);
}
.poten-5 h5::after {
    background-image: url(../img/arrow-underground.svg);
}
.poten-6 h5::after {
    background-image: url(../img/arrow-solarheat.svg);
}
.poten-7 h5::after {
    background-image: url(../img/arrow-biomass.svg);
}

/* ------------------------------------ */
/* ご意見パネル　.opinion-panel */
/* ------------------------------------ */
.opinion-panel {
    background: url(../img/top-panel.jpg) top no-repeat;
    background-size: cover;
    height: 387px;
}
@media screen and (max-width: 991px) {
    .opinion-panel {
        height: 587px;
    }
}
.opinion-panel .container {
    width: 100%;
    max-width: 972px;
}
.opinion-panel h3 {
    font-size: 2rem;
    margin-bottom: 10px;
    text-align: center;
}
.opinion-panel p {
    font-size: 1.5rem;
}
.opinion-panel-item1,
.opinion-panel-item2 {
    width: 100%;
    height: 241px;
    margin-top: 28px;
    padding: 28px;
    background-color: #fff;
    border-radius: 8px;
    box-sizing: border-box;
}
@media screen and (min-width: 992px) {
    .opinion-panel-item1 {
        width: 472px;
        height: 267px;
        padding: 40px;
        margin-top: 60px;
    }
    .opinion-panel-item2 {
        width: 472px;
        height: 267px;
        padding: 40px;
        margin-top: 60px;
        margin-left: auto;
    }
    .opinion-panel p {
        text-align: center;
    }
}
.opinion-panel .btn-action1 {
    display: block;
    text-align: center;
    margin-top: 10px;
}
.opinion-panel .btn-action6 {
    display: block;
    text-align: center;
    margin-top: 10px;
}
/* ------------------------------------ */
/* このサイトの目的と概要　.target-panel */
/* ------------------------------------ */
.target-panel {
    /*margin: bottom 0;*/
}
@media screen and (min-width: 992px) {
    .target-panel {
        margin-bottom: 60px;
    }
}

/* ------------------------------------ */
/* お知らせ　.info-panel */
/* ------------------------------------ */
.info-panel {
    padding: 40px 20px 1px 20px;
}
@media screen and (min-width: 992px) {
    .info-panel {
        padding: 40px 0 10px 0;
    }
}
.info-panel .row {
    max-width: 900px;
    padding: 22px 0 10px 0;
    border-top: solid 1px #ddd;
}
@media screen and (min-width: 992px) {
    .info-panel .row {
        max-width: 1170px;
        margin: auto;
    }
}
.info-panel-col-1 {
    width: 9em;
}
.info-panel-col-2 {
    margin-right: auto;
    width: 8em;
}
.info-panel-col-3 {
    width: 100%;
}
.info-panel-col-3 p {
    margin-top: 15px;
}
@media screen and (min-width: 992px) {
    .info-panel-col-1 {
        width: 9.5em;
    }
    .info-panel-col-2 {
        width: 9em;
        margin-top: 2px;
    }
    .info-panel-col-3 {
        width: 72%;
    }
    .info-panel-col-3 p {
        margin-top: 0;
    }
}
.info-panel-btn {
    padding: 40px 0;
    max-width: 972px;
    margin: auto;
    border-top: solid 1px #ddd;
}

/* ------------------------------------ */
/* 自治体の活用事例　.example-panel */
/* ------------------------------------ */
.example-panel {
    margin-top: 40px;
    margin-bottom: 60px;
}
@media screen and (min-width: 992px) {
    .example-panel {
        margin-top: 60px;
        margin-bottom: 80px;
        max-width: 1170px;
    }
}
.example-panel h2 {
    font-size: 2.2rem;
    line-height: 2.8rem;
    margin-bottom: 30px;
}
.example-panel h3 {
    font-size: 1.6rem;
    line-height: 2.8rem;
    margin: 0 0 8px 0;
}
.example-panel p {
    text-align: start;
    margin: 5px 0 10px 0;
}
.example-panel-img {
    height: 160px;
    width: 100%;
    object-fit: cover;
    margin-bottom: 20px;
}
.example-panel .label-green {
    margin-right: 15px;
    float: left;
}
@media screen and (min-width: 992px) {
    .example-panel h2 {
        font-size: 2.4rem;
        line-height: 3rem;
    }
    .example-panel h3 {
        font-size: 1.8rem;
    }
}

/* ------------------------------------ */
/* 関連リンク　.link-panel */
/* ------------------------------------ */
.link-panel {
    padding: 40px 15px 20px;
}
@media screen and (min-width: 992px) {
    .link-panel {
        padding: 40px 15px;
    }
}
.link-panel h2 {
    margin-bottom: 30px;
}
.link-panel h3 {
    font-size: 1.6rem;
    line-height: 3rem;
    margin:-20px auto 20px;
}
.link-panel-col > .link-main3{
    margin:-30px 0 50px 10px;
}
@media screen and (min-width:992px) {
    .link-panel h3{
        font-size:1.8rem;
    }
}
.link-panel-col-img {
    height: 142px;
    display: flex;
    align-items: center;
    object-fit: cover;
    background-color: #fff;
    border-bottom:solid 1px #c1c1c1;
}
.link-panel-btn {
    padding-bottom: 0px;
}
@media screen and (min-width: 992px) {
    .link-panel {
        padding: 60px 5px 20px 5px;
    }
    .link-panel-col {
    }
    .link-panel-col-img {
        height: 160px;
    }
    .link-panel-col-img img {
        width: 100%;
        margin: auto;
    }
}
/* 20230701 関連サイト ----------- */
/* 画像あり リンク ------------------- */
.link-main-item { /* 子 DIV */
    width:100%;
    margin-bottom:20px;
    border:solid 1px #c1c1c1;
}
.link-main-item-blank{
    border: none;
}
.link-main-text { /* 画像下のリンクテキスト画像下のリンクテキスト */
    margin:1rem 1rem -1rem;
    text-decoration:underline;
}
.link-main-text:after {
    content: "";
    display: inline-block;
    width: 1.4rem;
    height: 1.4rem;
    background-image: url(../img/icon-blank.svg);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    margin: 0 3px 1px 5px;
}
.link-main-item > a{
    text-decoration:none;
    width:100%;
    height:100%;
}
.link-sub-text { /* 画像下のリンクテキスト画像下のリンクテキスト */
    margin:1rem 1rem -1rem;
    font-weight:normal;
    color:#000;
}

/* 画像なし リンク------------------- */
.link-sub-item{ /* 子 DIV */
    width:100%;
    margin-bottom:4rem;
}
@media screen and (min-width:768px) {
    /* 画像ありリンク ----------------- */
    .link-main { /* 親 DIV */
        display:flex;
        justify-content: space-around;
    }
    .link-main-item { /* 子 DIV */
    width:32%;
    margin-bottom:1rem;
    }
    /* 画像なしリンク ---------------- */
    .link-sub { /* 親 DIV */
        display:flex;
        justify-content: space-around;
        align-items:flex-end;
        margin:2rem auto 0;
    }
    .link-sub-item{ /* 子 DIV */
        margin:1rem 1rem 5rem;
    }
}
/* ------------------------------------ */
/* footerカスタマイズ */
/* ------------------------------------ */
.footer-background {
    background-color: #414141;
}
.footer-nav {
    /* cstm-toplink-container の row */
    max-width: 1170px;
    margin: auto;
    font-size: 1.4rem;
    background-color: #414141;
}
@media screen and (min-width: 992px) {
    .footer-nav {
        font-size: 1.5rem;
    }
}
.footer-nav a {
    color: #fff;
    font-weight: normal;
    text-decoration: none;
}
.footer-nav a:hover {
    text-decoration: underline;
}
.footer-name {
    font-size: 1.5rem;
    color: white;
    margin-bottom: 0.5rem;
}
@media screen and (min-width: 992px) {
    .footer-logo {
        width: 134px;
    }
}
@media screen and (max-width: 991px) {
    .footer-logo {
        width: 134px;
        display: block;
        margin: auto;
        margin-bottom: 30px;
    }
    .footer-name {
        text-align: center;
    }
}
/* footerアコーディオンカスタマイズ========== */
.footer-ac {
    width: 100%;
}
.footer-ac-catch {
    padding-top: 1rem;
    font-size: 1.2rem;
    line-height: 1.4rem;
    border-top: solid 1px #6a6a6a;
}
.footer-ac-title {
    font-weight: bold;
    margin-bottom: 15px;
}
.footer-ac-title-sub {
    font-weight: bold;
    margin-bottom: 0;
}
@media screen and (min-width: 992px) {
    .footer-ac-title {
        margin-bottom: 0;
    }
    .footer-ac-child {
        border-bottom: solid 1px #6a6a6a;
    }
}
.footer-ac dt,
.footer-ac dd {
    font-weight: 100;
    color: white;
    margin: 0;
}
.footer-ac dt {
    position: relative;
    padding: 0.5rem 0 0.5rem 0rem;
    cursor: pointer;
    transition: 0.3s;
    border-top: solid 1px #6a6a6a;
}
@media screen and (max-width: 991px) {
    .footer-ac dt {
        padding: 20px 0 15px 15px;
    }
    .footer-ac dt.footer-ac-nomove {
        padding: 20px 0 5px 15px;
    }
}
.footer-ac dt:first-child {
    border: 0;
}
.footer-ac {
    border-bottom: solid 1px #6a6a6a;
}
.footer-ac .footer-ac-nomove {
    line-height: 1.5rem;
    padding-top: 15px;
}
.footer-ac-nomove::before {
    content: "";
    display: inline-block;
    width: 1.3rem;
    height: 1.3rem;
    background-image: url(../img/arrow.svg);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    margin: 0 3px 1px 2px;
}
.footer-ac-parent::before {
    content: "";
    display: inline-block;
    width: 1.2rem;
    height: 1.2rem;
    background-image: url(../img/icon-plus-white.svg);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    margin: 0 6px 1px 0px;
}
.footer-ac-parent.open::before {
    content: "";
    display: inline-block;
    width: 1.2rem;
    height: 1.2rem;
    background-image: url(../img/icon-minus-white.svg);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    margin: 9px 6px 0 0;
}
.footer-ac-child {
    margin-bottom: 10px;
}
@media screen and (max-width: 991px) {
    .footer-ac-child {
        padding-left: 15px;
    }
}
.footer-ac-child ul {
    margin: 0;
}
.footer-ac-child ul,
li {
    margin: 0 0 1rem 0;
    padding-left: 0.85rem;
}
.footer-ac-child ul:last-child {
    padding-bottom: 0.5rem;
    margin-bottom: 0;
}
/* PCサイズで罫線非表示 */
@media screen and (min-width: 992px) {
    .footer-ac dt {
        border-top: 0;
    }
    .footer-ac {
        border-bottom: 0;
    }
}
.footer-ac-noborder,
.footer-ac-noborder dt {
    border: 0;
}
.footer-spec {
    line-height: 1.7rem;
    color: white;
    text-align: center;
    margin-top: 13px;
}
@media screen and (max-width: 991px) {
    .footer-spec {
        margin-top: 60px;
    }
}
.footer-spec a[target="_blank"]:after {
    content: "";
    display: inline-block;
    width: 1.3rem;
    height: 1.3rem;
    background-image: url(../img/icon-blank-white.svg);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    margin: 0 3px 1px 6px;
}
.footer-spec a.imglink[target="_blank"]:after {
    content: "";
    background-image: none;
    margin: 0;
}
a.imglink[target="_blank"]:after {
    content: "";
    background-image: none;
    margin: 0;
}
dt.footer-ac-parent {
    /*padding: 15x 0 3px 15px;*/
}
@media screen and (min-width: 992px) {
    dt.footer-ac-parent {
        padding: 10px 0 3px;
    }
}
/* フッター ----------------- */
.footer-nav {
    padding: 30px 0 15px 0;
}
@media screen and (min-width: 992px) {
    .footer-nav {
        padding: 60px 0 15px 0;
    }
}
.footer .row {
    margin-top: 40px;
    margin-bottom: 20px;
}
/* 環境省ロゴ */
.footer .img-env {
    width: 137px;
    margin-bottom: 15px;
}
/* SNSロゴ */
.footer-sns {
    margin-bottom: 30px;
}
.footer-sns-icon {
    width: 2.5rem;
    margin-top: 10px;
    margin-left: 1rem;
    vertical-align: middle;
}
.footer-sns-icon:hover{
    opacity: 0.6;
}
@media screen and (min-width: 992px) {
    .footer-sns {
        margin-top: 20px;
    }
    .footer-sns-icon {
        margin-top: 0;
        margin-right:-20px;
    }
}
.footer p {
    text-align: center;
    font-size: 1.4rem;
    line-height: 20px;
    margin-bottom: 10px;
}
@media screen and (min-width: 992px) {
    .footer p {
        font-size: 1.5rem;
        text-align: end;
    }
}
@media screen and (max-width: 991px) {
    .footer-nav-sp-1st-line {
        margin-bottom: 15px;
    }
}
/* ------------------------------------ */
/* テキストコンテンツ */
/* ------------------------------------ */
@media screen and (min-width: 992px) {
    .text-contents {
        width: 782px;
        margin: auto;
    }
    .text-contents-middle {
        width: 970px;
        margin: auto;
    }
    .text-contents-wide {
        width:1170px;
        margin:auto;
    }
}
.text-contents h2 {
    margin-bottom: 10px;
}
.text-contents h4 {
    margin-bottom: 10px;
}
.text-contents p {
    line-height: 2.8rem;
    margin-bottom: 2.8rem;
}
.text-contents p.horizon-1em {
    padding-left: 1em;
}
.text-contents p.horizon-2em {
    padding-left: 2em;
}
.text-contents .mb-half {
    margin-bottom: 0.5rem !important;
}
.text-contents ul,
.text-contents ol {
    margin: 0;
}
.text-contents .list-katakana {
    list-style-type: katakana;
    margin-left: 4.25rem;
}
.text-contents .list-decimal {
    list-style-type: decimal;
    margin-left: 4.25rem;
}
.text-contents li {
    margin: 0 0 1rem 2rem;
    padding: 0;
    line-height: 2.8rem;
}

/* ページタイトル　＆ アンカーリンク */
.page-ttl {
    min-height: 88px;
    padding:0.5rem 0;
    background-color: #f1f9f6;
    text-align: center;
    align-items: center;
}
.page-ttl-user{
    height: 88px;
    background-color: #fff;
    text-align: center;
    align-items: center;
}
@media screen and (min-width: 992px) {
    .page-ttl,
    .page-ttl-user {
        min-height: 52px;
        text-align: center;
    }
    .page-ttl h1{
        max-width:1170px;
        margin:auto;
    }
}
/* アンカーリンク */
.mark-list {
    z-index: 1;
}
.cstm-anchor-link {
    margin-bottom: 20px;
}
.cstm-anchor-link ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
@media screen and (max-width: 991px) {
    .cstm-anchor-link li {
        padding: 20px 0;
        border-bottom: solid 1px #ddd;
    }
}
@media screen and (min-width: 992px) {
    .cstm-anchor-link {
        height: 50px;
        border-bottom: solid 1px #ddd;
        position: relative;
    }
    .cstm-anchor-link ul {
        text-align: center;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        width: 100%;
        height: 20px;
    }
    .cstm-anchor-link-text {
        display: inline;
        align-items: center;
        padding: 0 1.5rem 0 1rem;
        border-right: solid 1px #ddd;
    }
    .cstm-anchor-link-text:last-child {
        border-right: none;
    }
}
/* 位置調整 */
h2.anchor {
    display: block;
    padding-top: 70px;
    margin-top: -50px;
    margin-bottom:20px;
    z-index: -1;
}
@media screen and (min-width: 992px) {
    h2.anchor {
        padding-top: 150px;
        margin-top: -130px;
        margin-bottom:20px;
        z-index: -1;
    }
}
/* table */
table {
    width: 100%;
    border-collapse: collapse;
}
th,
td {
    border: solid 1px #dbdbdb;
    padding: 5px;
    empty-cells: show;
}
th {
    text-align: center;
    background-color: #F6F6F6;
}
/* table 用語の解説 */
@media screen and (max-width: 991px) {
    .table-yougo table {
        width: 850px;
    }
}
.table-yougo td.kubun {
    width: 5em;
}
.table-yougo td.yougo {
    width: 11em;
}
.table-yougo td.wind {
    background-color: #30817d;
    color: #fff;
}
.table-yougo td.wind-sub {
    background-color: #ebf6f6;
}
.table-yougo td.water {
    background-color: #276DB2;
    color: #fff;
}
.table-yougo td.water-sub {
    background-color: #e9f0f7;
}
.table-yougo td.geo {
    background-color: #cd3d7f;
    color: #fff;
}
.table-yougo td.geo-sub {
    background-color: #faebf2;
}
@media screen and (max-width: 991px) {
    .table-yougo th.yougo {
        width: 7em;
    }
    .table-responsive {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}
.table-responsive-allsize {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
@media (max-width: 991.98px) {
    .table-responsive-lg {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

/* 活用事例 */
.example-select .col-lg-15 {
    /*position: relatibe;*/
    width: 50%;
}
@media screen and (min-width: 992px) {
    .col-lg-15 {
        width: 20%;
        flex: 0 0 20%;
    }
}
.styled-select,
.styled-select-mini {
    /* デフォルトのスタイルを解除 */
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    /* スタイル */
    display: inline-block;
    width: 100%; /* 幅 */
    /*margin: em 0;*/ /* 前後の余白 */
    padding: 0.75em 1.5em 0.75em 0.75em; /* 文字周りの余白 */
    cursor: pointer; /* カーソルを指に */
    font-size:1.6rem;
    line-height: 1.4; /* 行高 */
    border-radius: 3px; /* 角丸 */
    background-color: #fff; /* 背景色 */
    border: solid 1px #bbb; /* 枠線 */
    /* 三角マークを作る */
    background-image: url(../img/arrow-green-vertical.svg);
    background-size: 10px;
    background-position: right 12px top 15px;
    background-repeat: no-repeat;
}
.styled-select-mini{
    padding:0.5rem 0.5rem;
    background-position: right 12px top 50%;
    margin-bottom:7px;
}
/* フォーカス時 */
.styled-select:focus,
.styled-select-mini:focus {
    outline: 0;
    border-color: #008070; /* 枠線の色を変更 */
}
/* IEでデフォルトの矢印を消す */
.styled-select::-ms-expand,
.styled-select-mini::-ms-expand {
    display: none;
}

/* ラベル */
.example .label-green{
    float: left;
}
@media screen and (min-width:992px) {
    .example .label{
        display: flex;
        justify-content: flex-end;
    }
    .example .label-green {
        margin-left: 15px;
    }
}
.example .text-contents-block:first-child{
padding:20px 0 25px 0;
}
.example .text-contents-block{
    padding:25px 0 25px 0;
    border-bottom:solid 1px #ddd;
}
.example .text-contents-block p{
    margin-bottom:0;
}

/* REPOSとは =========== */
table.about-repos{
    margin:30px 0;
}
table.about-repos th.line-1{
width:9em;
}
@media screen and (min-width:992px) {
    table.about-repos th.line-1{
        width:11em;
        }
}

/* table 2 */
table.about-repos-2{
    margin:0 0 40px 0;
    z-index: 2;
}
@media screen and (max-width: 991px) {
    table.about-repos-2 {
        width: 700px;
    }
}
table.about-repos-2 th.line-1{
    width:5em;
}
table.about-repos-2 th.line-2{
    width:10em;
}
table.about-repos-2 th.line-3{
    width:11em;
}
table.about-repos-2 th.line-4{
    width:auto;
}
table.about-repos-2 th.line-5{
    width:8em;
}
table.about-repos-2 img{
    width:70%;
}

/* 分析ツール =========== */
table.month-data td{
    text-align: end;
}
table.month-data tr td:first-child{
    text-align: center;
}
table.water-reference{
    margin-bottom:20px;
}
.kakomi{
    border:solid 1px #999999;
    padding:0.5rem;
    margin-bottom:30px;
}
.kakomi p{
    margin:0.5rem 1rem;
}
@media screen and (max-width:991px){
    .table-responsive-680{
        width:680px;
    }
}

/* 再エネ導入目標設定　 ============== */
.tool-content h3{
    margin:0.5rem 0;
}
.tool-content input[type="text-box"],
.tool-content input[type="number"]{
    padding:0.82em 0.25em;
    border:solid 1px #BBBBBB;
    border-radius: 3px;
}
@media screen and (min-width:1180px) {
    .content-1-col{
        flex:0 0 auto;
        width:50%;
    }
}
.content-1-left {
    padding: 1em;
    border: solid 1px #DBDBDB;
}
img.etc-1 {
    height: 14px;
    margin-right: 3px;
}
img.etc-2 {
    height: 17px;
    margin-right: 6px;
    margin-bottom: 3px;
}
img.etc-3 {
    height: 17px;
    margin-left: 4px;
    margin-bottom: 3px;
}
img.etc-4 {
    height: 17px;
    margin: 5px 0 0 0;
}
img.etc-5 {
    width: 17px;
    margin: -3px 0 0 2px;
}
.content-1-right {
    width: 100%;
    padding: 1em;
    background-color: #f1f9f6;
}
.content-1-right h4 {
    line-height: 23px;
}
@media screen and (max-width: 700px) {
    .content-1-right {
        width: 640px;
    }
}
.content-1-right-table {
    font-size: 1.5rem;
    text-align: end;
}
.content-1-right-table tr,
.content-1-right-table td {
    border: none;
}
@media screen and (max-width:1179px){
    .content-1-right-table-td{
        width:20%;
    }
}
.border-bottom-db {
    border-bottom: solid 1px #dbdbdb !important;
}
.border-bottom-70 {
    border-bottom: solid 1px #707070 !important;
}
/*@media screen and (max-width: 991px) {
  .content-2 {
    width: 100%;
  }
  .content-2-inner {
    width: 310%;
  }
}*/
.content-2-inner{
    background-color: #f1f9f6;
    padding:10px;
    width:1155px;
}
@media screen and (max-width:991px) {
    .content-2-inner{
    }
}
.content-2-inner table td{
    height: 3em;
    border: none;
    text-align: center;
    border-bottom:solid 1px #707070;
}
.tool-content input[type="text-box"],
.tool-content input[type="number"]{
    width:90px;
    height:2.25em;
    text-align: end;
    font-size: 1.4rem;
    -moz-appearance:textfield; 
}
.tool-content input[type="number"]:focus {
    border-color: #008070;
    outline: none;
}
.tool-content input[type="number"]::-webkit-outer-spin-button, 
.tool-content input[type="number"]::-webkit-inner-spin-button { 
    -webkit-appearance: none;
    -moz-appearance:textfield;
}

.correction-coefficient-sub input[type="number"]{
    -moz-appearance:textfield; 
}

.correction-coefficient-sub input[type="number"]::-webkit-outer-spin-button, 
.correction-coefficient-sub input[type="number"]::-webkit-inner-spin-button { 
    -webkit-appearance: none;
    -moz-appearance:textfield;
}

.correction-coefficient-sub-body{
    /* min-width: 350px;
    height: 520px;
    min-height: 520px; */
    /* overflow-y:scroll;*/
    border-radius: 5px;
}

.t_popup_scroll{
    height:316px;
    overflow-y:scroll;
    scrollbar-width: thin;
    scrollbar-color: #008070 #F6F6F6;
}

.t_popup_scroll::-webkit-scrollbar {
    width: 6px;
    height: 6px;
    border-radius: 3px;
}
 
.t_popup_scroll::-webkit-scrollbar-thumb {
    width: 3px;
    border: 3px solid #008070;
    border-radius: 10px;
}
.correction-coefficient-sub{
    width:1000px;
    min-width: 350px;
    max-height: 540px;
}

/* 個別　線　色 */
.content-2-inner table td.border-none{
    border-bottom:none;
}
.content-2-inner table td.border-color{
    border-color:#DBDBDB;
}
.kakko-left,
.kakko-right{
    width:5px;
    height:90%;
    border:solid 1px #008070;
}
.kakko-left{
    border-right:none;
    margin:0 0 0 auto;
}
.kakko-right{
    border-left:none;
}
.kakko-straight{
    width:8px;
    height:0;
    border-top:solid 1px #008070;
}
.target-triangle{
    width:40px;
    display: flex;
    align-items:flex-end;
    justify-content: center;
    position:relative;
    bottom:18px;
}
.target-generation{
    height: 50%;
    width:8.5em;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
}
.color-plus{
    color:#276DB2;
}
.color-muinus{
    color:#D82E20;
}
.target-power-coefficient{
    width:17.5px;
    margin: 0px 4px 0px 0px;
}
.target-power{
    width:35px;
    margin-bottom:7px;
}
.legend-power p{
    font-size:1.4rem;
    line-height:2rem;
    margin-right:1.5rem;
}
.legend-power-00,
.legend-power-01,
.legend-power-02,
.legend-power-03,
.legend-power-04,
.legend-power-05,
.legend-power-06{
    width:16px;
    height:16px;
    margin:3px 3px 0 0;
    border:solid 1px #fff;
}
.legend-power-00 {
    background-color: #383838;
}
/* 太陽光 */
.legend-power-01 {
    background-color: #b12b1d;
}
/* 風力 */
.legend-power-02 {
    background-color: #30817d;
}
/* 中小水力 */
.legend-power-03 {
    background-color: #276db2;
}
/* 地熱 */
.legend-power-04 {
    background-color: #cd3d7f;
}
/* 地中熱 */
.legend-power-05 {
    background-color: #98633c;
}
/* 太陽熱 */
.legend-power-06 {
    background-color: #985ead;
}
/* ツールチップ　*/
.legend-tooltip{
    position:relative;
    cursor:pointer;
    display:block;
}
.legend-tooltip-text{
    display: none;
    position: absolute;
    padding: 3px 10px;
    font-size: 15px;
    line-height: 1.6em;
    color: #fff;
    background: #4d4d4d;
    width: 8.5em;
    white-space: nowrap;
    text-align: end;
    z-index: 1;
}
.legend-tooltip-text::after {
    content: "";
    position: absolute;
    top: 13px;
    right: -20px;
    border: 10px solid transparent;
    border-top: 15px solid #4d4d4d;
    margin-left: -10px;
    transform: rotateZ(270deg);
}
.legend-tooltip:hover .legend-tooltip-text {
    display: inline-block;
    top: -15px;
    left: -138px;
}

.target-modal {
    width: 39em !important;
}

/* グラフフォーカス時の中心線を消去 */
.c3-xgrid-focus {
    display: none;
}
/* WEBアクセシビリティ対応のため色合い変更 */
.c3-tooltip th {
    background-color: #939191;
}

/* 下部メニュー ==== */
.floating img{
    width:1.2em;
    position: relative;
    top:-2px;
    right:10px;
    margin-left:10px;
}

/* フッター手前でストップ */
.floating {
    position: fixed;
    width:100%;
    height:74px;
    background-color: #f1f9f6;
    filter: drop-shadow(0 0 2px rgba(0,0,0,0.3));
    z-index: 1;
}

/* 時空間ポテンシャル =========== */
table.space-table tr th{
    width:5em;
}

/* 太陽光AI =========== */

table.ai-table th:first-child{
    width:5em;
}
table.ai-table td{
    text-align: end;
}
table.ai-table tr td:first-child{
    text-align: center;
}
table.ai-table tr:last-child{
    border-top:3px double #bdbdbd;
}
@media screen and (max-width:991px) {
    table.ai-table{
        width:700px;
    }
}
/* 過年度報告書 =========== */
.past-report>h3{
    margin-bottom:1.5rem;
}
.past-report ul ul{
    list-style-type:none;
    margin:1rem 0 0 0;
}
.data-list li{
    padding-left:0;
}

/* 関連サイト ============== */
.links .col-12,
.links .col-lg-12{
    margin-bottom:60px;
}

/* ご意見・お問い合わせ ========= */
.caution-area{
    background-color:#FBFBF5;
    border: solid 1px #F7F2DF;
    border-radius: 5px;
    padding:12px;
}
p.caution{
    margin-left:0em;
    padding-left:1.3em;
    margin-bottom:10px;
}
p.caution::before{
    content: "";
    width: 20px;
    height: 20px;
    display: inline-block;
    background: url(../img/icon-caution.svg) no-repeat;
    margin:5px 10px 0 -20px;
    position: relative;
    top:3px;
}


/* ユーザー登録============================ */
.user .caution-area {width:660px;}
.user-index-form{
    width:100%;
    margin-bottom: 10px;
}
@media screen and (max-width: 991px){
    .user .caution-area{
        width:auto;
    }
}
@media screen and (min-width:992px) {
    .user-index-form{
        width:60%;
    }
}
.user .img01{
    width:40px;margin-bottom:20px;
}
.user .img02{
    width:40px;margin-bottom:28px;
}
.form-name-1{
    width:49%;display: inline;
}
.form-name-2{
    width:49%;display: inline;
}
/* エラー */
.warning-area{
    background-color:#FFF6F6;
    border: solid 1px #F8DEE0;
    color:#D01E2E;
    border-radius: 5px;
    padding:12px;
}
p.warning{
    margin-left:0em;
    padding-left:2em;
    margin-bottom:0;
}
p.warning::before{
    content: "";
    width: 30px;
    height: 20px;
    display: inline-block;
    background: url(../img/icon-warning.svg) no-repeat;
    margin:5px 0 0 -20px;
    position: relative;
    top:3px;
}

/* 促進区域設定の図形コピー */
/* 促進区域設定の頂点数上限超 */
p.copy-feature, p.simplify-feature{
    color:#ff0000;
}

/* マイページ =========== */
.table-1150{
    min-width:1150px;
}
@media screen and (max-width:991px) {
    .table-1150{
        width:1150px !important;
    }
}
.list-table td{
    height:4em;
}
.list-table th:nth-child(1){
    width:10em;
}
.list-table th:nth-child(2){
    width:10em;
}
.list-table th:nth-child(6){
    width:8em;
}
.list-table th:nth-child(7){
    width:6em;
}
.list-table th:nth-child(8){
    width:6em;
}

.tbl-r02{
    width:auto;
    margin-bottom:20px;
}
.tbl-r02 th {
    background-color: #fff;
    padding: 10px;
    text-align: right;
    border:none;
    width:auto;
}
.tbl-r02 td {
    padding: 10px;
    border:none;
    width:430px;
}
.tbl-r02-w-auto td{
    width:auto;
}

@media screen and (max-width: 991px) {
    .tbl-r02 {
        width: 100%;
    }
    .tbl-r02 th{
        text-align: left;
        margin:20px 0 0 0;
    }
    .tbl-r02 th,
    .tbl-r02 td {
        border-bottom: none;
        display: block;
        padding:0;
        width: 100%;
    }
}

/* upload data ---- */
.tb01 th,
.tb01 td{
height: 3em;
}


.tb02 th,
.tb02 td{
    height: 3em;
    padding: 5px;
    border: solid 1px #DBDBDB;
    /* text-align:center;
    box-sizing:border-box; */
}
.tb2 th {
    /* background: #ff7bac;
    color: #fff; */
}
.tb02 td:nth-child(1){
    width:14%;
}
.tb02 td:nth-child(2){
    width:15%;
}
.tb02 td:nth-child(3){
    width:auto;
}
.tb02 td:nth-child(4){
    width:14%;
}
.tb02 td:nth-child(5){
    width:14%;
}
.tb02 td:nth-child(6){
    width:10%;
}
.tb02 td:nth-child(7){
    width:8%;
}
.tb02 td:nth-child(8){
    width:11%;
}


/* submit =============== */
.submit-area {
    margin-bottom:50px;
}
.submit-area .prev-btn{
    margin-top:30px;
}
@media screen and (min-width:992px) {
        .submit-area{
            argin-bottom:60px;
        }
        .submit-area .prev-btn{
            margin:-40px auto 0 100px;
        }
}



/* サイトマップ　 ============== */
.sitemap-ttl{
display: flex;
margin-bottom:25px;
}
.sitemap-ttl-left{
    width:10px;
    border:solid 1px #bbb;
    border-right:none;
    border-radius:5px 0 0 5px ;
    background-color: #008070;
}
.sitemap-ttl-right,
.sitemap-ttl-right-arrow{
    width:100%;
    border:solid 1px #bbb;
    border-left:none;
    border-radius: 0 5px 5px 0;
    padding:20px 0 20px 10px;
    font-weight: bold;
}
.sitemap-ttl-right-arrow{
    padding:0 0 0 10px;
    background-image: url(../img/arrow-green.svg);
    background-repeat: no-repeat;
    background-size:8px;
    background-position: top 50% right 15px;
}
.sitemap-list a{
    margin:0.5em 0 0.5em 1em;
    display: block;
}
.sitemap-list a:last-child{
    margin-bottom:40px;
}
.sitemap-list a::before{
    content: "";
    display: inline-block;
    width: 1.4rem;
    height: 1.4rem;
    background-image: url(../img/arrow-green.svg);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    margin: 0 5px 1px 0;
}
.sitemap-ttl a{
    display: block;
    padding:20px 0;
    text-decoration: none;
    color:#404040;
}
.sitemap-ttl a:hover{
text-decoration: underline;
}

.text-indent1{
    padding-left: 1em;
    text-indent: -1em;
}
.text-indent2{
    padding-left: 2em;
    text-indent: -2em;
}
.text-indent3{
    padding-left: 3em;
    text-indent: -3em;
}
.text-indent4{
    padding-left: 4em;
    text-indent: -4em;
}
.text-indent5{
    padding-left: 5em;
    text-indent: -5em;
}
.text-indent6{
    padding-left: 6em;
    text-indent: -6em;
}
.text-indent7{
    padding-left: 7em;
    text-indent: -7em;
}
.text-indent12{
    padding-left: 12em;
    text-indent: -12em;
}
.text-indent13{
    padding-left: 13em;
    text-indent: -13em;
}
/* 推計値 ======== */
.estimate-table td{
    text-align:right;
    padding-right:1em;
}
.estimate-table .hidden-header{
    visibility: collapse;
}
.estimate-table .hidden-header th {
    border: 0;
}
@media (min-width: 992px) {
    .estimate-table .hidden-header{
        visibility: visible;
    }
    .estimate-table .hidden-header th {
        border: solid 1px #dbdbdb;
    }
}

/* 搭載データ ===========- */
.div-table-keisai{
    width: 1126px;
    height: 670px;
    overflow: hidden auto;
}
@media screen and (max-width: 991px){
    .div-table-keisai {
        overflow: auto;
    }
}

.table-keisai{
    width:1102px;
}
.table-keisai thead,
.table-keisai tbody{
    display:block;
}
.table-keisai thead{
    position: sticky;
    top: 0px;
    z-index: 1;
}
.keisai-c1{
    width:40px;
    line-height: 1.1em;
    vertical-align: top;
}
td.table-keisai-no{
    text-align: end !important;
}
/* 太陽光 */
.energy-color-01 {
    color: #b12b1d;
}
/* 風力 */
.energy-color-02 {
    color: #30817d;
}
/* WEBアクセシビリティ対応のため色合い変更(搭載データ) */
#mount-data-table .energy-color-02 {
    color: #2e7b77;
}
/* 中小水力 */
.energy-color-03 {
    color: #276db2;
}
/* 地熱 */
.energy-color-04 {
    color: #cd3d7f;
}
/* WEBアクセシビリティ対応のため色合い変更(搭載データ) */
#mount-data-table .energy-color-04 {
    color: #c43a79;
}
/* 地中熱 */
.energy-color-05 {
    color: #98633c;
}
/* 太陽熱 */
.energy-color-06 {
    color: #985ead;
}
/* WEBアクセシビリティ対応のため色合い変更(搭載データ) */
#mount-data-table .energy-color-06 {
    color: #925aa6;
}
/* バイオマス */
.energy-color-07 {
    color: #637E22;
}
/* WEBアクセシビリティ対応のため色合い変更(搭載データ) */
#mount-data-table .energy-color-07 {
    color: #5f7921;
}
.energy-color-a_thin{
    background-color:#F6F6F6 ;
}
.energy-color-01_thin{
    background-color:#f7e9e8 ;
}
.energy-color-02_thin{
    background-color:#ebf6f6 ;
}
.energy-color-03_thin{
    background-color:#e9f0f7 ;
}
.energy-color-04_thin{
    background-color:#faebf2 ;
}
.energy-color-05_thin{
    background-color:#f4efeb ;
}
.energy-color-06_thin{
    background-color:#f4eff7 ;
}
.energy-color-07_thin{
    background-color:#eaeee1 ;
}
.data-top-list{
    margin:1em 0 0 0.25em;
}
.data-top-list li {
    list-style-type: none;
    position: relative;
    padding-left: 0.75em;
    }
    .data-top-list li:before {
    border-radius: 50%;
    width: 7px;
    height: 7px;
    display: block;
    position: absolute;
    left: 0px;
    top: 8px;
    content: "";
    background: #008070;
    }

.data-csv-dl{
}
.data-csv-dl-ttl01{
    font-weight: bold;
    width:19em;
}
@media screen and (min-width:992px) {
    .data-csv-dl-select{
        margin-top:-18px;
        margin-right:1em;
    }
}
.w-keisai-col01{width: 47px;}
.w-keisai-col02{width: 588px;}
.w-keisai-col02_2{width: 548px;}
.w-keisai-col03{width: 40px;}
.w-keisai-col04{width: 40px;}
.w-keisai-col05{width: 40px;}
.w-keisai-col06{width: 40px;}
.w-keisai-col07{width: 40px;}
.w-keisai-col08{width: 40px;}
.w-keisai-col09{width: 40px;}
.w-keisai-col10{width: 40px;}
.w-keisai-col11{width: 40px;}
.w-keisai-col12{width: 66px;}
.w-keisai-col13{width: 100px;}
/* ------------------------------------ */
/* コンポーネント */
/* ------------------------------------ */

/* ボタン（スタンダード白）======= */
.btn-standard,
.btn-standard2,
.btn-standard3,
.btn-standard4,
.btn-standard-prev {
    margin: 0;
}
.btn-standard a,
.btn-standard2 a,
.btn-standard3 a,
.btn-standard4 a,
.btn-standard-prev a {
    display: inline-block;
    margin:0 auto;
    justify-content: center;
    align-items: center;
    border:solid 1px #ddd;
    background-color: #fff;
    color:#404040;
    border-radius: 50vh;
    text-decoration: none;
}
.btn-standard a{
    padding: 1.25em 3em 1.25em 4em;
}
.btn-standard2 a{
    padding: 1em 3em 1em 4em;
}
.btn-standard3 a{
    padding: 1em 3em 1em 3em;
}
.btn-standard4 a{
    padding: 1em 3em 1em 3em;
}
.btn-standard-prev a{
    padding: 1.25em 3.5em 1.25em 3em;
}
@media screen and (max-width:991px){
    .btn-standard a,
    .btn-standard-prev a{
        width:100%;
        margin:0;
    }
}
.btn-standard a:hover,
.btn-standard2 a:hover,
.btn-standard3 a:hover,
.btn-standard4 a:hover,
.btn-standard-prev a:hover {
    border: solid 1px #008070;
}
.btn-standard a::after {
    content: "";
    width: 12px;
    height: 12px;
    display: inline-block;
    background: url(../img/arrow-green.svg) no-repeat;
    margin-left: 12px;
}
.btn-standard2 a::after {
    content: "";
    width: 12px;
    height: 12px;
    display: inline-block;
    background: url(../img/icon-cancel.svg) no-repeat;
    margin-left: 12px;
}
.btn-standard4 a::after {
    content: "";
    width: 12px;
    height: 12px;
    display: inline-block;
    background: url(../img/arrow-green.svg) no-repeat;
    margin-left: 12px;
}
.btn-standard-prev a::before{
    content: "";
    width: 12px;
    height: 12px;
    display: inline-block;
    background: url(../img/arrow-green.svg) no-repeat;
    transform: rotate(180deg);
    margin-right: 12px;
}
/* ボタン（アクション緑）========= */
.btn-action1,
.btn-action1-mini,
.btn-action2,
.btn-action3,
.btn-action3-mini,
.btn-action4,
.btn-action5,
.btn-action5-mini,
.btn-action6,
.btn-action7,
.btn-action7-mini,
.btn-action8,
.btn-action9 {
    margin:0;
}
.btn-action4,
.btn-action7,
.btn-action8 {
    margin:0 0 0 0;
}
.btn-action1 a,
.btn-action1-mini a,
.btn-action2 a,
.btn-action3 a,
.btn-action3-mini a,
.btn-action4 a,
.btn-action5 a,
.btn-action5-mini a,
.btn-action6 a,
.btn-action7 a,
.btn-action7-mini a,
.btn-action8 a,
.btn-action9 a{
    display: inline-block;
    margin:0 auto;
    justify-content: center;
    align-items: center;
    padding: 1.25em 3em 1.25em 4em;
    color: #fff !important;
    background-color: #008070;
    border-radius: 50vh;
    text-decoration: none;
}
.btn-action1-mini a{
    padding: 0.5em 0 0.5em 0.5em;
}
/* WEBアクセシビリティ対応 a→button変更 */
.btn-action1 button,
.btn-action1-mini button {
    display: inline-block;
    margin:0 auto;
    justify-content: center;
    align-items: center;
    padding: 1.25em 3em 1.25em 4em;
    color: #fff !important;
    background-color: #008070;
    border-radius: 50vh;
    text-decoration: none;
    border: 0;
    cursor: pointer;
    font-family: inherit;
    font-weight: bold;
}
.btn-action1-mini button{
    padding: 0.5em 0 0.5em 0.5em;
}
.btn-action3 a{
    padding:1em;
    width:100%;
    text-align: center;
}
.btn-action3-mini a{
    padding: 0.45em 1em;
    font-weight: 100;
    font-size:1.5rem;
    border:solid 1px #008070;
}
.btn-action4 a,
.btn-action5 a,
.btn-action9 a{
    padding:0.75em;
    padding-left:1.35em;
    margin-left:15px;
    text-align: center;
}
.btn-action7 a ,
.btn-action8 a{
    padding:0.75em;
    padding-left:1.35em;
    text-align: center;
}
.btn-action4 a,
.btn-action7 a {
    padding:0.35em 0 0.35em 0.7em;
    width:9em;
}
.btn-action8 a {
    padding:0.35em 0 0.35em 0.7em;
    width:13em;
}
.btn-action7-mini a {
    padding: 0.35em 1em;
}
.btn-action5 a,
.btn-action5-mini a,
.btn-action9 a{
    color:#404040 !important;
    background-color: #fff;
    border:solid 1px #ddd;
    padding: 0.70em 1.25em;
}
.btn-action5-mini a{
    padding:0.45em 1em;
    font-size:1.5rem;
    font-weight: 100;
}
.btn-action5-mini a:hover{
    text-decoration: underline;
}
@media screen and (max-width:991px){
    .btn-action1 a,
    .btn-action2 a,
    .btn-action6 a {
        width:100%;
        margin:0;
    }
    .btn-action1-mini a{
        width:50%;
        text-align: center;
        padding:0.75em 0 0.75em 0.5em;
    }
    .btn-action1-mini-auto a{
        width:auto;
        text-align: center;
        padding:0.5em;
    }
    /* WEBアクセシビリティ対応 a→button変更 */
    .btn-action1 button {
        width:100%;
        margin:0;
        font-size: inherit;
    }
    .btn-action1-mini button{
        width:50%;
        text-align: center;
        padding:0.75em 0 0.75em 0.5em;
    }
    .btn-action1-mini-auto button{
        width:auto;
        text-align: center;
        padding:0.5em;
    }
}
.btn-action1 a:hover,
.btn-action2 a:hover,
.btn-action3 a:hover,
.btn-action3-mini a:hover,
.btn-action4 a:hover,
.btn-action6 a:hover,
.btn-action7 a:hover,
.btn-action7-mini a:hover,
.btn-action8 a:hover {
    background-color: #155a46;
}
/* WEBアクセシビリティ対応 a→button変更 */
.btn-action1 button:hover {
    background-color: #155a46;
}
.btn-action5 a:hover{
    text-decoration: underline;
}
.btn-action9 a:hover#introduction-settings,
.btn-action9 a:hover#promotion-settings{
    text-decoration: underline;
}
.btn-action1 a::after {
    content: "";
    width: 12px;
    height: 12px;
    display: inline-block;
    background: url(../img/arrow.svg) no-repeat;
    margin-left: 12px;
}
.btn-action1-mini a::after {
    content: "";
    width: 12px;
    height: 12px;
    display: inline-block;
    background: url(../img/arrow.svg) no-repeat;
    margin-left: 7px;
}
/* WEBアクセシビリティ対応 a→button変更 */
.btn-action1 button::after {
    content: "";
    width: 12px;
    height: 12px;
    display: inline-block;
    background: url(../img/arrow.svg) no-repeat;
    margin-left: 12px;
}
.btn-action1-mini button::after {
    content: "";
    width: 12px;
    height: 12px;
    display: inline-block;
    background: url(../img/arrow.svg) no-repeat;
    margin-left: 7px;
}
.btn-action2 a::after {
    content: "";
    width: 12px;
    height: 12px;
    display: inline-block;
    background: url(../img/icon-blank-white.svg) no-repeat;
    margin-left: 12px;
}
.btn-action4 a::after,
.btn-action7 a::after,
.btn-action8 a::after {
    content: "";
    width: 12px;
    height: 12px;
    display: inline-block;
    background: url(../img/arrow.svg) no-repeat;
    margin-left: 8px;
}
.btn-action9 a::after {
    content: "";
    width: 12px;
    height: 12px;
    display: inline-block;
    background: url(../img/arrow-green.svg) no-repeat;
    margin-left: 12px;
}
.btn-action4 a,
.btn-action7 a,
.btn-action7-mini a,
.btn-action8 a {
    font-weight: bold !important;
}
.btn-action6 a::after {
    content: "";
    width: 12px;
    height: 12px;
    display: inline-block;
    background: url(../img/icon-blank-white.svg) no-repeat;
    margin-left: 12px;
}

/* PAGE Prev next */
.btn-page-active,
.btn-page{
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 33px;
    height: 33px;
    background: #008070;
    color: #FFF;
    text-decoration: none;
    text-align: center;
    margin: 10px 0;
}
.btn-page-active:hover{
    background-color: #155a46;
}
.btn-page{
    background-color: #cecece;
}
.btn-action1 a.a-disabled,
.btn-action1-mini a.a-disabled,
.btn-action2 a.a-disabled,
.btn-action3 a.a-disabled,
.btn-action3-mini a.a-disabled,
.btn-action4 a.a-disabled,
.btn-action5 a.a-disabled,
.btn-action5-mini a.a-disabled,
.btn-action6 a.a-disabled,
.btn-action7 a.a-disabled,
.btn-action7-mini a.a-disabled,
.btn-action8 a.a-disabled,
.btn-action9 a.a-disabled {
    background-color: #cecece !important;
    cursor: default;
    pointer-events: none;
}


/* ボタン（検索）========= */
.btn-search {
    margin: 10px 0;
}
/* WEBアクセシビリティ対応 a→button変更 */
.btn-search button {
    border: 0;
    padding: 15px 30px 10px 30px;
    font-size: 1.6rem;
    font-family: inherit;
    font-weight: bold;
    color: #fff;
    text-decoration: none;
    background-color: #008070;
    border-radius: 30px;
    cursor: pointer;
}
.btn-search button:hover {
    background-color: #155a46;
    color:#fff;
}
.btn-search button::before {
    content: "";
    width: 15px;
    height: 15px;
    display: inline-block;
    background: url(../img/icon-search-white.svg) no-repeat;
    margin-right: 5px;
    margin-bottom: -2px;
}
@media screen and (min-width: 992px) {
    .btn-standard a,
    .btn-action1 a,
    .btn-action6 a,
    .btn-search a {
        font-size: 1.6rem;
    }
    /* WEBアクセシビリティ対応 a→button変更 */
    .btn-action1 button,
    .btn-search button {
        font-size: 1.6rem;
    }
}

/* ラベル */
.label-green,
.label-white {
    font-size: 1.3rem;
    border-radius: 10px;
    max-width: 8em;
    text-align: center;
    padding: 0.25rem 1rem;
}
.label-green {
    background-color: #f1f9f6;
}
.label-white {
    background-color: #fff;
}
@media screen and (min-width: 992px) {
    .label-green,
    .label-white {
        font-size: 1.4rem;
    }
}

/* ボーダー */
.cstm-border-top {
    border-top: solid #ddd 1px;
}
.cstm-border-left {
    border-left: solid #ddd 1px;
}

/* ページトップへ */
#page_top {
    width: 50px;
    height: 50px;
    position: fixed;
    right: 10px;
    bottom: -50px;
    background: #fff;
    border: solid 1px #d2d2d2;
    opacity: 1;
    border-radius: 50%;
    z-index: 3;
}
#page_top a {
    position: relative;
    display: block;
    width: 50px;
    height: 50px;
    text-decoration: none;
}
#page_top a::before {
    content: "";
    font-size: 25px;
    position: absolute;
    background: url(../img/arrow-green.svg);
    background-repeat: no-repeat;
    transform: rotateZ(-90deg);
    width: 20px;
    height: 20px;
    top: -13px;
    bottom: 0;
    right: 2px;
    left: 0;
    margin: auto;
    text-align: center;
}
.tag{
    font-size:1.4rem;
    background-color: #F1F9F6;
}



/* テキスト水平線 */

.text-divider {
    display: flex;
    align-items: center;
    --text-divider-gap: 1rem;
}
.text-divider::before,
.text-divider::after {
    content: '';
    height: 1px;
    background-color: #DDDDDD;
    flex-grow: 1;
}
.text-divider::before {
    margin-right: var(--text-divider-gap);
}
.text-divider::after {
    margin-left: var(--text-divider-gap);
}
.text-divider {
    display: flex;
    align-items: center;
    --text-divider-gap: 1rem;
}
.text-divider::before,
.text-divider::after {
    content: '';
    height: 1px;
    background-color: #DDDDDD;
    flex-grow: 1;
}
.text-divider::before {
    margin-right: var(--text-divider-gap);
}
.text-divider::after {
    margin-left: var(--text-divider-gap);
}

/* password hide show -------- */
.form-password{
    border:solid 1px #bbb;
    border-radius: 0.25rem;
}
.input-group-addon{
    width:50px;
    background-color:#fff;
}
.fa-eye-slash::before,
.fa-eye::before{
    content:"";
    width:20px;
    height:20px;
    display: inline-block;
    position: relative;
}
.fa-eye-slash::before{
    background: url(../img/icon-eye.svg) no-repeat;
    top:17px;
    left:15px;
}
.fa-eye::before{
    background: url(../img/icon-eye-off.svg) no-repeat;
    top:16px;
    left:15px;
}
@media screen and (max-width:991px) {
    .fa-eye-slash::before,
    .fa-eye::before{
        left:15px;
    }
}

/* list 三角 */
.list-arrow li{
    list-style-type:none;
    position: relative;
    padding-left: 10px;
    margin:0 0 0 1rem;
}
.list-arrow li:before {
    content: "";
    position: absolute;
    top: 0.75rem;
    left: 0;
    width: 0;
    height: 0;
    border-width: 5px;
    border-style: solid;
    border-color: transparent transparent transparent #333;
}

/* aタグアイコンなし用 */
a.noicon {
    padding-right: 0 !important;
}
a.noicon:after {
    background: none !important;
    width: 0 !important;
    height: 0 !important;
}

/* グラフスタイル */
#chart_groups {
    height: 380px;
}

.target-graph {
    height: 365px;
}

.modal_line {
    width: 20%;
}

/* list チェック */
ul.list-check li {
    list-style-type: none;
    position: relative;
    padding-left: 10px;
    margin: 0px 0px 0px 2rem;
}
ul.list-check li::before {
    content: "";
    display: block;
    position: absolute;
    top: 1rem;
    left: -0.5em;
    width: 10px;
    height: 5px;
    border-left: 2px solid #000;
    border-bottom: 2px solid #000;
    transform: rotate(-45deg);
}
/* list マークなし */
ul.no-mark{
    list-style-type: none;
}
ul.no-mark li{
    margin-left: 1rem;
}

/* トースト表示 */
.iziToast.toast_success {
    background-color: #008070 !important;
}
/*.iziToast.toast_success>.iziToast-body .iziToast-title,*/
/*.iziToast.toast_success>.iziToast-body .iziToast-message{*/
/*    color: #ffffff;*/
/*    font-weight: bold;*/
/*}*/
/* ヘッダーロゴ　ツールチップ */
/* tooltip====================- */
.tooltip-header-logo {
    position: relative;
    cursor: pointer;
    width: 50px;
    display: block;
}
/* テキスト部分 */
.tooltip-header-logo-text {
    display: none;
    position: absolute;
    padding: 3px;
    font-size: 11px;
    line-height: 1.4em;
    color: #fff;
    background: #4d4d4d;
    width: auto;
    white-space: nowrap;
}
/* 表示位置 */
.tooltip-header-logo:hover .tooltip-header-logo-text {
    display: inline-block;
    top: 30px;
    left: 15px;
}
/* 風配図テーブル
-------------------------------------- */
.table-wind{
    width:100%;
    min-width:991px;
}
.table-wind td{
    text-align: end;
}
.table-wind-all{
    background-color: #fdffce;
}
.table-wind-speed{
    background-color: #e2fed5;
}
/* 中小水力分析テーブル
-------------------------------------- */
.table-water{
    width:100%;
}
.table-water th{
    padding:5px 0 5px 0;
}
.table-water td{
    text-align: end;
}
.table-water-tdsize{
    min-width: 6.5em;
}
/* 地熱テーブル
-------------------------------------- */
.table-geothermal{
    width:100%;
}
.table-geothermal td{
    width: 16.6666666667%;
}
/* 地下温度グラフ
-------------------------------------- */
.report-geo-graph-contents
{
    height: 700px;
    max-height: 700px;
}
.chartjs-tooltip-container{
	opacity: 0.95;
}
.chartjs-tooltip tr {
	border: 1px solid #CCC;
}
.chartjs-tooltip th {
	background-color: #aaa;
	font-size: 12px;
	padding: 2px 5px;
	text-align: left;
	color: #FFF;
}
.chartjs-tooltip td {
	font-size: 12px;
	padding: 3px 6px;
	background-color: #fff;
	border-left: 1px dotted #999;
}
.chartjs-tooltip td > span {
	display: inline-block;
	width: 10px;
	height: 10px;
	margin-right: 6px;
}
.chartjs-tooltip td.value {
	text-align: right;
}
/* CSVダウンロード */
.csvDL_1,
.csvDL_2{
    display: flex;
    width:100%;
    margin-bottom:20px;
    align-items: center;
}
.csvDL_2{
    margin-bottom:40px;
}
.csvDL-kind{
    width:5.25em;
}
.csvDL-kind-row{
    display: flex;
    width: auto;
}
.csvDL-kind-row-ttl{
    font-weight: bold;
    width: 17em;
    display: flex;
    align-items: center;
}
.csvDL-kind-drop{
    display: flex;
    align-items: center;
}
.csvDL-kind-drop-ttl{
    align-items: center;
}
.csvDL-kind-drop-btn{
    margin-right:20px;
}
.csvDL-kind-drop-btn-pref{
    width:6em;
}
.csvDL-kind-drop-btn-city{
    width:10em;
}
.csvDL-kind-row-link{
}

@media screen and (max-width: 991px) {
    .csvDL_1,
    .csvDL_2{
        align-items: baseline;
    }
    .csvDL_2 .csvDL-kind-row{
        display: inline;
    }
    .csvDL_1 .csvDL-kind-drop{
        display: inline;
    }
    .csvDL_2 .csvDL-kind-drop{
        display: flex;
    }
    .csvDL-kind-row-ttl{
        margin-bottom:0.5em;
    }
    .csvDL-kind-drop-btn{
        margin:-6px 15px 0 0;
    }
}
@media screen and (max-width: 679px) {
    .csvDL_1 .csvDL-kind-row{
        display: inline;
    }
    .csvDL_2 .csvDL-kind-row{
        display: inline;
    }
    .csvDL_2 .csvDL-kind-drop{
        display: inline;
    }
    .csvDL-kind-drop-btn{
        margin:-6px 0 0 -10px;
        width:100%;
    }
    .csvDL-kind-drop-btn-pref,
    .csvDL-kind-drop-btn-city{
        width:100%;
    }
    .csvDL-kind-row-link{
        margin-top:0.75em;
    }
}

/* ======================================== */
/* 目標設定 ================================ */
/* ======================================== */
.t_step-inner{height:100%;padding:1em;background-color: #f1f9f6;}
@media screen and (max-width:1180px){
    .t_step-inner{height:auto}
}
/* step0 =================================== */
.t_step0{display: flex;margin-bottom:5rem;}
.t_step0-col1{width:50%;}
.t_step0-col1-block{height:92%;padding:1em;border:solid 1px #dbdbdb;}
.t_step0-col1-block-attention{
    height:92%;width:100%;
    padding:1em;
    background-color:#FFF6F6;
    border: solid 1px #F8DEE0;
    color:#D01E2E;
    display:flex;
    justify-content:center;
    align-items: center;
}
.t_step0-col2{width:50%;padding:0 0.5px;margin-left:10px}
.t_step0-col2-area{padding:1em;background-color: #f1f9f6;}
@media screen and (max-width:1180px){
    .t_step0{display:block;margin-bottom:0}
    .t_step0-col1{width:100%}
    .t_step0-col2{width:100%;margin-left:0}
}
.t_step0-col2 h5{font-size: 1.6rem;}
/* エネ種切替ボタン */
.t_step0-col2-block{
    width:100%;
    margin:40px 0;
    display:flex;
    justify-content: center;
    position: relative;
    .buttonR,.buttonL {
        width:40%;
        height:4em;
        background-color: #fff;
        border:solid 1px #bbb;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
    }
    .buttonL{
        border-radius:6px 0 0 6px;
    }
    .buttonR{
        border-radius:0 6px 6px 0;
        border-left:none;
    }
    .active {background-color: #008070;}
    .inactive { background-color: #fff;}
    .active a {color: #fff;
        text-decoration: none;
        display:block;
        width:100%;
        height:100%;
        padding-top:1.25em;
    }
    .active a:hover{text-decoration: none}
    .inactive a{color:#404040;text-decoration: none}
    .inactive:hover {text-decoration: underline;}
}
.t_step0-col2-block-btn_A,
.t_step0-col2-block-btn_B{
    width:40%;
    height: 4em;
    background-color: #fff;
    border:solid 1px #bbb;
    display: flex;
    align-items: center;
    justify-content: center;
}
.t_step0-col2-block-btn_A{
    border-radius:6px 0 0 6px;
}
.t_step0-col2-block-btn_B{
    border-radius:0 5px 5px 0;
}
.t_step0-col2-block-btn_active {
    background-color: #008070;
}
.t_step0-col2-block-btn_active a {
    color: #fff;
    text-decoration: none;
    display:block;width:100%;height:100%;padding-top:1.25em;padding-left:25%;
}
.t_step0-col2-block-btn_inactive a {
    color: #404040;
    text-decoration: none;
    display:block;width:100%;height:100%;padding-top:1.25em;padding-left:25%;
}
.t_step0-col2-block-btn_inactive a:hover {
    text-decoration: underline;
}
.t_step0-col2-block > .t_step0-col2-block-btn_A{width:40%}
.t_step0-col2-block1{width:33%;}
@media screen and (max-width:1180px){
    .t_step0-col2 {margin:30px 0 30px 0}
}
/* step1 =================================== */
.t_step1{margin-bottom:5rem;}
.t_step1-title{display: flex;align-items: center;}
.t_step1-title h3{margin-right:1em}
.t_step1-line1{width: 100%;display: flex;}
.t_step1-line1-col1{width:47%;}
.t_step1-line1-col2{width:6%}
.t_step1-line1-col3{width:47%;}
@media screen and (max-width:1180px) {
    .t_step1-line1{display: block;}
    .t_step1-line1-col1{width:100%;}
    .t_step1-line1-col2{width:100%;}
    .t_step1-line1-col3{width:100%;}
}
.t_step1-line2{width:100%;height: 3.5em;display: flex;align-items: center;border-top: solid 1px #bbb;}
.t_step1-line2-2lines{width:100%;height:5em;display: flex;align-items: center;border-top: solid 1px #bbb;}
.t_step1-line2-col1{width:50%;height: 100%;display: flex;align-items:center;}
.t_step1-line2-col2{width:50%;height: 100%;display: flex;align-items:center;padding-left:20px}
.t_step1-line2-col2-2lines{width:50%;height: 100%;display: flex;align-items:center;padding:7px 0 0 20px}
@media screen and (max-width:1180px) {
    .t_step1-line2-2lines{height:auto}
    .t_step1-line2-col2-2lines{display: block;}
}
.t_step1-line2-col2-data{width:150px;text-align: end;}
.t_step1-line2-col2-data-comment{margin-left:1em}
@media screen and (max-width:1180px) {
    .t_step1-line2-col2-data-comment{margin-left:0}
}
.t_step1-line2_underline{border-bottom:solid 1px #bbb}
.t_step1-triangle{width:25px;}
@media screen and (max-width:1180px) {
    .t_step1-triangle{transform:rotate(90deg);}
}

/* step2 =================================== */
.t_step2 {
    /* t_step2 > GRIDコンテナ（タイトル部） ======== */
    .target-title {
        display: grid;
        grid-template-columns: 80px 85px 80px 90px 95px 75px 100px 125px 80px 90px 110px 125px;
        grid-template-rows: 5em;
        gap: 0px 0px;
        grid-auto-flow: row;
        width:100%;
        border-top:solid 1px #707070;
        font-size: 1.4rem;
    }
    .title-power { grid-area: 1 / 1 / 2 / 3; background-color: #fff}
    .title-potential { grid-area: 1 / 3 / 2 / 5; }
    .title-actual { grid-area: 1 / 5 / 2 / 6; }
    .title-capacity { grid-area: 1 / 6 / 2 / 8; }
    .title-use { grid-area: 1 / 8 / 2 / 10; }
    .title-generation { grid-area: 1 / 10 / 2 / 12; }
    .title-co2 { grid-area: 1 / 12 / 2 / 13; }

    .title-power,
    .title-potential,
    .title-actual,
    .title-capacity,
    .title-use,
    .title-generation,
    .title-co2 { 
        display:flex;
        justify-content:center;
        text-align:center;
        align-items: center;
        border-bottom: solid 1px #707070;
        line-height: 1.25em;
    }

    /* t_step2 > GRIDコンテナ（データ表示部） ======= */
    .target-container-1line,
    .target-container-2line,
    .target-container-3line,
    .target-container-total,
    .target-container-differential {
        display: grid;
        grid-template-columns: 80px 85px 80px 15px 75px 95px 75px 15px 85px 125px 80px 90px 15px 95px 125px;
        grid-template-rows: 0; /* 後述で指定 */
        gap: 0px 0px;
        grid-auto-flow: row;
        width:100%;
        border-bottom: solid 1px #707070;
    }
    .target-container-1line { grid-template-rows: 7em; }
    .target-container-2line { grid-template-rows: 3.5em 3.5em; }
    .target-container-3line { grid-template-rows: 3.5em 3.5em 3.5em; }
    .target-container-total { grid-template-rows: 3.5em 1.5em; }
    .target-container-differential { grid-template-rows: 3.3em; }

    /* t_step2 > GRIDセル ======= */
    .power-type1 { grid-area: 1 / 2 / 2 / 3; border-bottom: solid 1px #707070}
    .power-type2 { grid-area: 2 / 2 / 3 / 3; }
    .potential-type1 { grid-area: 1 / 3 / 2 / 4; }
    .potential-type2 { grid-area: 2 / 3 / 3 / 4; }
    .potential-line { grid-area: 1 / 4 / 3 / 5;}
    .potential-total { grid-area: 1 / 5 / 3 / 6; padding-right: 10px; justify-content: end;}
    .actual { grid-area: 1 / 6 / 3 / 7; padding-right: 10px;}
    .capacity-type1 { grid-area: 1 / 7 / 2 / 8; }
    .capacity-type2 { grid-area: 2 / 7 / 3 / 8; }
    .capacity-line { grid-area: 1 / 8 / 3 / 9; }
    .capacity-total { grid-area: 1 / 9 / 3 / 10; padding-right:10px; justify-content: end;}
    .use-type1-default { grid-area: 1 / 10 / 2 / 11; }
    .use-type2-default { grid-area: 2 / 10 / 3 / 11; }
    .use-type1 { grid-area: 1 / 11 / 2 / 12; padding-right:10px }
    .use-type2 { grid-area: 2 / 11 / 3 / 12; padding-right:10px }
    .generation-type1 { grid-area: 1 / 12 / 2 / 13; }
    .generation-type2 { grid-area: 2 / 12 / 3 / 13; }
    .generation-line { grid-area: 1 / 13 / 3 / 14; }
    .generation-total { grid-area: 1 / 14 / 3 / 15; padding-right: 10px; justify-content: end;}
    .co2 { grid-area: 1 / 15 / 3 / 16; padding-right:10px}
    /* t_step2 > GRIDセル > 1line */
    .target-container-1line .power-type1 {border-bottom: none}
    /* t_step2 > GRIDセル > 2line */
    .target-container-2line .power { grid-area: 1 / 1 / 3 / 2; }
    /* t_step2 > GRIDセル > 3line */
    .target-container-3line {
        .power { grid-area: 1 / 1 / 4 / 2; }
        .power-type3 { grid-area: 3 / 2 / 4 / 3; border-top:solid 1px #707070}
        .potential-type3{ grid-area: 3 / 3 / 4 / 4; }
        .potential-line{ grid-area: 1 / 4 / 4 / 5; }
        .potential-total{ grid-area: 1 / 5 / 4 / 6; }
        .actual{ grid-area: 1 / 6 / 4 / 7; }
        .capacity-type3{ grid-area: 3 / 7 / 4 / 8; }
        .capacity-line { grid-area: 1 / 8 / 4 / 9; }
        .capacity-total { grid-area: 1 / 9 / 4 / 10; }
        .use-type3-default{ grid-area: 3 / 10 / 4 / 11; }
        .use-type3 { grid-area: 3 / 11 / 4 / 12; padding-right:10px }
        .generation-type3{ grid-area: 3 / 12 / 4 / 13; }
        .generation-line{ grid-area: 1 / 13 / 4 / 14; }
        .generation-total{ grid-area: 1 / 14 / 4 / 15; }
        .co2{ grid-area: 1 / 15 / 4 / 16; }
    }
    /* t_step2 > GRIDセル > 合計 */
    .target-container-total{
        .power-type1 {border-bottom: none;}
        .power,.power-type1 {background-color:#f1f9f6;}
        .power {grid-area: 1 / 1 / 3 / 2;}
        .co2-memo {grid-area: 2 / 14 / 3 / 17; text-align: end;}
    }
    /* t_step2 > GRIDセル > STEP1との差分 */
    .target-container-differential {
        .coment1 { grid-area: 1 / 1 / 2 / 3;}
        .coment2 { grid-area: 1 / 3 / 2 / 11;}
        .coment3 { grid-area: 1 / 11 / 2 / 15;}
        .coment4 { grid-area: 1 / 15 / 2 / 16;padding-right: 10px;}
        .coment1,
        .coment2,
        .coment3 {
            display: flex;
            justify-content: start;
            align-items: center;
        }
        .coment4 {
            display: flex;
            justify-content: end;
            align-items: center;
        }
    }
} /* end t_step2 */

/* step2-generation =================================== */
.t_step2-generation {
    /* t_step2-generation > GRIDコンテナ（タイトル部） ======== */
    .target-title {
        display: grid;
        grid-template-columns: 70px 80px 65px 90px 82px 115px 65px 90px 125px 75px 75px 90px 120px;
        grid-template-rows: 5em;
        gap: 0px 0px;
        grid-auto-flow: row;
        width:100%;
        border-top:solid 1px #707070;
        font-size: 1.4rem;
    }
    .title-power { grid-area: 1 / 1 / 2 / 3; background-color: #fff}
    .title-potential { grid-area: 1 / 3 / 2 / 5; }
    .title-actual { grid-area: 1 / 5 / 2 / 6; }
    .title-ratio { grid-area: 1 / 6 / 2 / 7; }
    .title-capacity { grid-area: 1 / 7 / 2 / 9; }
    .title-use { grid-area: 1 / 9 / 2 / 11; }
    .title-generation { grid-area: 1 / 11 / 2 / 13; }
    .title-co2 { grid-area: 1 / 13 / 2 / 14; }

    .title-power,
    .title-potential,
    .title-actual,
    .title-ratio,
    .title-capacity,
    .title-use,
    .title-generation,
    .title-co2 {
        display:flex;
        justify-content:center;
        text-align:center;
        align-items: center;
        border-bottom: solid 1px #707070;
        line-height: 1.25em;
    }

    /* t_step2 > GRIDコンテナ（データ表示部） ======= */
    .target-container-1line,
    .target-container-2line,
    .target-container-3line,
    .target-container-total,
    .target-container-differential {
        display: grid;
        grid-template-columns: 70px 80px 65px 15px 75px 82px 115px 65px 15px 75px 125px 75px 75px 15px 75px 120px;
        grid-template-rows: 0; /* 後述で指定 */
        gap: 0px 0px;
        grid-auto-flow: row;
        width:100%;
        border-bottom: solid 1px #707070;
    }
    .target-container-1line { grid-template-rows: 7em; }
    .target-container-2line { grid-template-rows: 3.5em 3.5em; }
    .target-container-3line { grid-template-rows: 3.5em 3.5em 3.5em; }
    .target-container-total { grid-template-rows: 3.5em 1.5em; }
    .target-container-differential { grid-template-rows: 3.3em; }

    /* t_step2 > GRIDセル ======= */
    .power-type1 { grid-area: 1 / 2 / 2 / 3; border-bottom: solid 1px #707070}
    .power-type2 { grid-area: 2 / 2 / 3 / 3; }
    .potential-type1 { grid-area: 1 / 3 / 2 / 4; }
    .potential-type2 { grid-area: 2 / 3 / 3 / 4; }
    .potential-line { grid-area: 1 / 4 / 3 / 5; }
    .potential-total { grid-area: 1 / 5 / 3 / 6; padding-right: 10px; justify-content: end;}
    .actual { grid-area: 1 / 6 / 3 / 7; padding-right: 10px;}
    .ratio1 { grid-area: 1 / 7 / 2 / 8; padding-right:10px }
    .ratio2 { grid-area: 2 / 7 / 3 / 8; padding-right:10px }
    .ratio-total { grid-area: 1 / 7 / 3 / 8; padding-right:10px;}
    .capacity-type1 { grid-area: 1 / 8 / 2 / 9; }
    .capacity-type2 { grid-area: 2 / 8 / 3 / 9; }
    .capacity-line { grid-area: 1 / 9 / 3 / 10; }
    .capacity-total { grid-area: 1 / 10 / 3 / 11; padding-right:10px; justify-content: end;}
    .use-type1-default { grid-area: 1 / 11 / 2 / 12; }
    .use-type2-default { grid-area: 2 / 11 / 3 / 12; }
    .use-type1 { grid-area: 1 / 12 / 2 / 13; padding-right:5px }
    .use-type2 { grid-area: 2 / 12 / 3 / 13; padding-right:5px }
    .generation-type1 { grid-area: 1 / 13 / 2 / 14; }
    .generation-type2 { grid-area: 2 / 13 / 3 / 14; }
    .generation-line { grid-area: 1 / 14 / 3 / 15; }
    .generation-total { grid-area: 1 / 15 / 3 / 16; padding-right: 10px; justify-content: end;}
    .co2 { grid-area: 1 / 16 / 3 / 17; padding-right:10px}
    /* t_step2 > GRIDセル > 1line */
    .target-container-1line .power-type1 {border-bottom: none}
    /* t_step2 > GRIDセル > 2line */
    .target-container-2line .power { grid-area: 1 / 1 / 3 / 2; }
    /* t_step2 > GRIDセル > 3line */
    .target-container-3line {
        .power { grid-area: 1 / 1 / 4 / 2; }
        .power-type3 { grid-area: 3 / 2 / 4 / 3; border-top:solid 1px #707070}
        .potential-type3{ grid-area: 3 / 3 / 4 / 4; }
        .potential-line{ grid-area: 1 / 4 / 4 / 5; }
        .potential-total{ grid-area: 1 / 5 / 4 / 6; }
        .actual{ grid-area: 1 / 6 / 4 / 7; }
        .ratio3{ grid-area: 3 / 7 / 4 / 8; padding-right:10px }
        .capacity-type3{ grid-area: 3 / 8 / 4 / 9; }
        .capacity-line { grid-area: 1 / 9 / 4 / 10; }
        .capacity-total { grid-area: 1 / 10 / 4 / 11; }
        .use-type3-default{ grid-area: 3 / 11 / 4 / 12; }
        .use-type3 { grid-area: 3 / 12 / 4 / 13; padding-right:5px }
        .generation-type3{ grid-area: 3 / 13 / 4 / 14; }
        .generation-line{ grid-area: 1 / 14 / 4 / 15; }
        .generation-total{ grid-area: 1 / 15 / 4 / 16; }
        .co2{ grid-area: 1 / 16 / 4 / 17; }
    }
    /* t_step2 > GRIDセル > 合計 */
    .target-container-total{
        .power-type1 {border-bottom: none;}
        .power,.power-type1 {background-color:#f1f9f6;}
        .power {grid-area: 1 / 1 / 3 / 2;}
        .co2-memo {grid-area: 2 / 13 / 3 / 17; text-align: end;padding-right: 10px;}
    }
    /* t_step2 > GRIDセル > STEP1との差分 */
    .target-container-differential {
        .coment1 { grid-area: 1 / 1 / 2 / 3;}
        .coment2 { grid-area: 1 / 3 / 2 / 12;}
        .coment3 { grid-area: 1 / 12 / 2 / 16;}
        .coment4 { grid-area: 1 / 16 / 2 / 17;padding-right: 10px;}
        .coment1,
        .coment2,
        .coment3 {
            display: flex;
            justify-content: start;
            align-items: center;
        }
        .coment4 {
            display: flex;
            justify-content: end;
            align-items: center;
        }
    }
} /* end t_step2-generation */

/* step3 =================================== */
.t_step3 {
    /* t_step3 > GRIDコンテナ（タイトル部） ======== */
    .target-title {
        display: grid;
        grid-template-columns: 80px 85px 80px 85px 70px 100px 70px 90px 90px 105px 135px 1fr;
        grid-template-rows: 2em 3em;
        gap: 0px 0px;
        grid-auto-flow: row;
        width:100%;
        border-top:solid 1px #707070;
        font-size: 1.4rem;
    }
    .title-power { grid-area: 1 / 1 / 3 / 3; } /* エネ種 */
    .title-potential { grid-area: 1 / 3 / 3 / 5;}/* ポテンシャル */
    .title-capacity { grid-area: 1 / 5 / 3 / 7; } /* 目標の設備容量 */
    .title-result { grid-area: 1 / 7 / 2 / 10; } /* 導入実績 */
    .title-result_fit { grid-area: 2 / 7 / 3 / 8; } /* 導入実績 > FIT */
    .title-result_fit_ex { grid-area: 2 / 8 / 3 / 9; } /* 導入実績 > FIT以外 */
    .title-result_fit_total { grid-area: 2 / 9 / 3 / 10; } /* 導入実績 > 合計 */
    .title-addition { grid-area: 1 / 10 / 3 / 11; } /* 追加導入目標量 */
    .title-setting { grid-area: 1 / 11 / 3 / 12; } /* 設定済みの促進区域 */
    .title-total { grid-area: 1 / 12 / 3 / 13;} /* 目標との差分 */

    .title-power,
    .title-potential,
    .title-capacity,
    .title-result,
    .title-result_type1,
    .title-result_type2,
    .title-result_total,
    .title-addition,
    .title-setting,
    .title-total { 
        display:flex;
        justify-content:center;
        text-align:center;
        align-items: center;
        border-bottom: solid 1px #707070;
        line-height: 1.25em;
    }

    /* t_step3 > GRIDコンテナ（データ表示部） ======= */
    .target-container-1line,
    .target-container-2line,
    .target-container-3line,
    .target-container-total,
    .target-container-differential {
        display: grid;
        grid-template-columns: 80px 85px 80px 15px 70px 85px 15px 70px 70px 90px 15px 75px 105px 135px 1fr;
        grid-template-rows: 0; /* 後述で指定 */
        gap: 0px 0px;
        grid-auto-flow: row;
        width:100%;
        border-bottom: solid 1px #707070;
    }
    .target-container-1line { grid-template-rows: 7em; }
    .target-container-2line { grid-template-rows: 3.5em 3.5em; }
    .target-container-3line { grid-template-rows: 3.5em 3.5em 3.5em; }
    .target-container-total { grid-template-rows: 3.5em; }
    .target-container-differential { grid-template-rows: 3.3em; }

    /* t_step3 > GRIDセル ======= */
    .power-type1 { grid-area: 1 / 2 / 2 / 3; border-bottom: solid 1px #707070}
    .power-type2 { grid-area: 2 / 2 / 3 / 3; }
    .potential-type1 { grid-area: 1 / 3 / 2 / 4; }
    .potential-type2 { grid-area: 2 / 3 / 3 / 4; }
    .potential-line { grid-area: 1 / 4 / 3 / 5; }
    .potential-total { grid-area: 1 / 5 / 3 / 6; padding-right: 10px; justify-content: end;}
    .capacity-type1 { grid-area: 1 / 6 / 2 / 7; }
    .capacity-type2 { grid-area: 2 / 6 / 3 / 7; }
    .capacity-line { grid-area: 1 / 7 / 3 / 8;}
    .capacity-total { grid-area: 1 / 8 / 3 / 9; padding-right:10px; justify-content: end;}
    .result { grid-area: 1 / 9 / 3 / 10; }
    .result-type1 { grid-area: 1 / 10 / 2 / 11; padding-right:10px }
    .result-type2 { grid-area: 2 / 10 / 3 / 11; padding-right:10px }
    .result-type9 { grid-area: 1 / 10 / 4 / 11; padding-right:10px }
    .result-line { grid-area: 1 / 11 / 3 / 12;}
    .result-total { grid-area: 1 / 12 / 3 / 13; padding-right:10px; justify-content: end; }
    .addition { grid-area: 1 / 13 / 3 / 14; padding-right:10px }
    .setting { grid-area: 1 / 14 / 3 / 15; padding-right:10px }
    .differential { grid-area: 1 / 15 / 3 / 16; padding-right:10px}
    /* t_step3 > GRIDセル > 1line */
    .target-container-1line .power-type1 {border-bottom: none}
    /* t_step3 > GRIDセル > 2line */
    .target-container-2line .power { grid-area: 1 / 1 / 3 / 2; }
    /* t_step3 > GRIDセル > 3line */
    .target-container-3line {
        .power { grid-area: 1 / 1 / 4 / 2; }
        .power-type3 { grid-area: 3 / 2 / 4 / 3; border-top:solid 1px #707070}
        .potential-type3 { grid-area: 3 / 3 / 4 / 4; }
        .potential-line { grid-area: 1 / 4 / 4 / 5; }
        .potential-total { grid-area: 1 / 5 / 4 / 6; }
        .capacity-type3 { grid-area: 3 / 6 / 4 / 7; }
        .capacity-line { grid-area: 1 / 7 / 4 / 8; }
        .capacity-total { grid-area: 1 / 8 / 4 / 9; }
        .result { grid-area: 1 / 9 / 4 / 10; }
        .result-type1 { grid-area: 1 / 10 / 4 / 11; }
        .result-line { grid-area: 1 / 11 / 4 / 12; }
        .result-total { grid-area: 1 / 12 / 4 / 13; }
        .addition{ grid-area: 1 / 13 / 4 / 14; padding-right:10px}
        .setting{ grid-area: 1 / 14 / 4 / 15; padding-right:10px}
        .differential { grid-area: 1 / 15 / 4 / 16; padding-right:10px}
    }
    /* t_step3 > GRIDセル > 合計 */
    .target-container-total{
        .power-type1 {border-bottom: none;}
        .power,.power-type1 {background-color:#f1f9f6;}
        .power {grid-area: 1 / 1 / 2 / 2;}
    }
} /* end t_step3 */

/* GRIDセル > 書式 */
.power{
    display: flex;flex-direction: column;align-items: center;justify-content: center;
    line-height: 1.25em;
    background-color: #fff;
}
.power-type1,
.power-type2,
.power-type3{
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1.25em;
    background-color: #fff;
    text-align: center;
    font-size: 1.3rem;
}
.potential-type1,
.potential-type2,
.potential-type3,
.actual,
.ratio1,
.ratio2,
.ratio3,
.ratio-total,
.capacity-type1,
.capacity-type2,
.capacity-type3,
.use-type1-default,
.use-type2-default,
.use-type3-default,
.use-type1,
.use-type2,
.use-type3,
.generation-type1,
.generation-type2,
.generation-type3,
.co2,
.result,
.result-type1,
.result-type2,
.result-type9,
.addition,
.setting,
.differential{
    display: flex;
    justify-content: end;
    align-items: center;
}
.potential-total,
.capacity-total,
.result-total,
.generation-total{
    display: flex;
    justify-content: start;
    align-items: center;
}
.capacity-type1 input.capacity-input,
.capacity-type2 input.capacity-input,
.capacity-type3 input.capacity-input,
.result-type1 input.result-input,
.result-type2 input.result-input,
.result-type9 input.result-input{
    width:70px;
}
.use-type1-default .styled-select,
.use-type2-default .styled-select,
.use-type3-default .styled-select{
    width:120px;padding-right: 2em;margin-bottom:0;height: 40px;
    font-size: 1.4rem;
}
.ratio1 input.ratio-input,
.ratio2 input.ratio-input,
.ratio3 input.ratio-input,
.use-type1 input.use-input,
.use-type2 input.use-input,
.use-type3 input.use-input{
    width:50px;
}
/* form 非アクティブ背景色 */
.input-inactive{
background-color: #eee;
color:#999;
}

/* GRIDセル > 背景色 */
.background-color-ex{
    background-color: #d3ede3;
}

/* t_popup */
/* .t_popup{z-index: 90; position: fixed; left: 100px; top: 187px;} */
.t_popup-batsu{
        height:15px;position:relative;top:10px;left:935px;
}
.t_popup-text{
    text-align: center;margin-bottom:1.5em;margin-top:1em;
}
.t_popup-text-bold{
    font-size:1.7rem;font-weight:bold;
}
.t_popup-value{
    display: flex;
    align-items: center;
}
.t_popup-value-left{width:20%}
.t_popup-value-right{
    width:80%;
    display: flex;
    justify-content: end;
    align-items: center;
}
.t_popup-total-value{
    display: flex;
    align-items: center;
    font-size:1.6rem;
    font-weight:bold;
}
.t_popup-inner{
    width:100%;
    min-height:370px;
    .t_popup-title{
        display: grid;
        grid-template-columns: 140px 80px 140px 120px 150px 100px 1fr 1fr;
        grid-template-rows: 0; /* 後述で指定 */
        gap: 0px 0px;
        grid-auto-flow: row;
        width:100%;
        align-items: center;
        line-height: 1.25em;
        border-top:solid 1px #707070;
    }
    .t_popup-title,
    .t_popup-line,
    .t_popup-line-8l,
    .t_popup-line-7l,
    .t_popup-line-6l,
    .t_popup-line-5l,
    .t_popup-line-4l,
    .t_popup-line-3l,
    .t_popup-line-2l,
    .t_popup-line-1l {
        display: grid;
        grid-template-columns: 140px 80px 100px 120px 150px 130px 125px 120px;
        grid-template-rows: 0; /* 後述で指定 */
        gap: 0px 0px;
        grid-auto-flow: row;
        width:100%;
        align-items: center;
        line-height: 1.25em;
        font-size: 1.4rem;
    }
     /* 表　タイトル行 */
    .t_popup-title{
        grid-template-rows: 3.5em;
        text-align: center;
        border-bottom: solid 1px #707070;
        padding: .3em 0;
    }
    .t_popup-title1{grid-area: 1 / 1 / 2 / 2;}
    .t_popup-title2{grid-area: 1 / 2 / 2 / 3;}
    .t_popup-title3{grid-area: 1 / 3 / 2 / 4;}
    .t_popup-title4{grid-area: 1 / 4 / 2 / 5;}
    .t_popup-title5{grid-area: 1 / 5 / 2 / 6;}
    .t_popup-title6{grid-area: 1 / 6 / 2 / 7;}
    .t_popup-title7{grid-area: 1 / 7 / 2 / 8;}
    .t_popup-title8{grid-area: 1 / 8 / 2 / 9;}
    /* 表　内容 */
    .t_popup-line{
        grid-template-rows: 2.5em 2.5em 2.5em 2.5em 2.5em 2.5em 2.5em 2.5em 2.5em;
        text-align: end;
        border-bottom: solid 1px #707070;
    }
    /* 表　内容 */
    .t_popup-line-8l{
        grid-template-rows: 2.5em 2.5em 2.5em 2.5em 2.5em 2.5em 2.5em 2.5em;
        text-align: end;
        border-bottom: solid 1px #707070;
    }
    /* 表　内容 */
    .t_popup-line-7l{
        grid-template-rows: 2.5em 2.5em 2.5em 2.5em 2.5em 2.5em 2.5em;
        text-align: end;
        border-bottom: solid 1px #707070;
    }    
    /* 表　内容 */
    .t_popup-line-6l{
        grid-template-rows: 2.5em 2.5em 2.5em 2.5em 2.5em 2.5em;
        text-align: end;
        border-bottom: solid 1px #707070;
    }
    /* 表　内容 */
    .t_popup-line-5l{
        grid-template-rows: 2.5em 2.5em 2.5em 2.5em 2.5em;
        text-align: end;
        border-bottom: solid 1px #707070;
    }
    /* 表　内容 */
    .t_popup-line-4l{
        grid-template-rows: 2.5em 2.5em 2.5em 2.5em;
        text-align: end;
        border-bottom: solid 1px #707070;
    }
    /* 表　内容 */
    .t_popup-line-3l{
        grid-template-rows: 2.5em 2.5em 2.5em;
        text-align: end;
        border-bottom: solid 1px #707070;
    }
    /* 表　内容 */
    .t_popup-line-2l{
        grid-template-rows: 2.5em 2.5em;
        text-align: end;
        border-bottom: solid 1px #707070;
    }
    /* 表　内容 */
    .t_popup-line-1l{
        grid-template-rows: 2.5em;
        text-align: end;
        border-bottom: solid 1px #707070;
    }    
    .t_popup-cell1{grid-area: 1 / 1 / 11 / 2;text-align: center;}
    .t_popup-cell2{grid-area: 1 / 2 / 11 / 3;text-align: center;display: flex;align-items: center;justify-content: center;}}
    .t_popup-cell3{grid-area: 1 / 3 / 11 / 4;text-align: center;}
    .t_popup-cell3-line1-1,
    .t_popup-cell3-line2-1,
    .t_popup-cell3-line3-1,
    .t_popup-cell3-line4-1,
    .t_popup-cell3-line5-1,
    .t_popup-cell3-line6-1,
    .t_popup-cell3-line7-1,
    .t_popup-cell3-line8-1,
    .t_popup-cell3-line9-1{
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        border-bottom:solid 1px #dbdbdb;
        font-size: 1.4rem;
        text-align: center;
    }

    .t_popup-cell3-line1-2,
    .t_popup-cell3-line1-3,
    .t_popup-cell3-line2-2,
    .t_popup-cell3-line2-3,
    .t_popup-cell3-line3-2,
    .t_popup-cell3-line3-3,
    .t_popup-cell3-line4-2,
    .t_popup-cell3-line4-3,
    .t_popup-cell3-line5-2,
    .t_popup-cell3-line5-3,
    .t_popup-cell3-line6-2,
    .t_popup-cell3-line6-3,
    .t_popup-cell3-line7-2,
    .t_popup-cell3-line7-3,
    .t_popup-cell3-line8-2,
    .t_popup-cell3-line8-3,
    .t_popup-cell3-line9-2,
    .t_popup-cell3-line9-3{
        background-color:#f1f9f6;
        height: 100%;
        padding-right:10px;
        display: flex;
        align-items: center;
        justify-content: end;
        border-bottom:solid 1px #dbdbdb;
        font-size: 1.4rem;
    }

    .t_popup-cell3-line1-4,
    .t_popup-cell3-line1-5,
    .t_popup-cell3-line2-4,
    .t_popup-cell3-line2-5,
    .t_popup-cell3-line3-4,
    .t_popup-cell3-line3-5,
    .t_popup-cell3-line4-4,
    .t_popup-cell3-line4-5,
    .t_popup-cell3-line5-4,
    .t_popup-cell3-line5-5,
    .t_popup-cell3-line6-4,
    .t_popup-cell3-line6-5,
    .t_popup-cell3-line7-4,
    .t_popup-cell3-line7-5,
    .t_popup-cell3-line8-4,
    .t_popup-cell3-line8-5,
    .t_popup-cell3-line9-4,
    .t_popup-cell3-line9-5{
        background-color:#d3ede3;
        height: 100%;
        padding-right:10px;
        display: flex;
        align-items: center;
        justify-content: end;
        border-bottom:solid 1px #dbdbdb;
        font-size: 1.4rem;
    }

    /* ドロップダウン/入力値列のテキストの右ずれ防止(合計値のテキストに適用) */
    [id$="_total"].t_popup-cell3-line1-4:not([data-energy-type]),
    [id$="_total"].t_popup-cell3-line1-5:not([data-energy-type]),
    [id$="_total"].t_popup-cell3-line2-4:not([data-energy-type]),
    [id$="_total"].t_popup-cell3-line2-5:not([data-energy-type]),
    [id$="_total"].t_popup-cell3-line3-4:not([data-energy-type]),
    [id$="_total"].t_popup-cell3-line3-5:not([data-energy-type]),
    [id$="_total"].t_popup-cell3-line4-4:not([data-energy-type]),
    [id$="_total"].t_popup-cell3-line4-5:not([data-energy-type]),
    [id$="_total"].t_popup-cell3-line5-4:not([data-energy-type]),
    [id$="_total"].t_popup-cell3-line5-5:not([data-energy-type]),
    [id$="_total"].t_popup-cell3-line6-4:not([data-energy-type]),
    [id$="_total"].t_popup-cell3-line6-5:not([data-energy-type]),
    [id$="_total"].t_popup-cell3-line7-4:not([data-energy-type]),
    [id$="_total"].t_popup-cell3-line7-5:not([data-energy-type]),
    [id$="_total"].t_popup-cell3-line8-4:not([data-energy-type]),
    [id$="_total"].t_popup-cell3-line8-5:not([data-energy-type]),
    [id$="_total"].t_popup-cell3-line9-4:not([data-energy-type]),
    [id$="_total"].t_popup-cell3-line9-5:not([data-energy-type]){
        padding-right:15px;
    }
    /* 補正係数入力ドロップダウンリスト */
    .correction-factor-select.styled-select{
        width: 100px;
        height: 2.25em;
        font-size: 1.4rem;
    }
}
/* 202408 UPDATE ------------------------------ */
.example-select{
    width:100%;
    z-index: 2;
}
@media screen and (max-width:991px) {
    .example-select{
        height: 280px;;
    }
}
.example-dropdown{
    padding:0;
    position: absolute;
    background-color: #fff;
    width:17%;
    max-width: 220px;
    .example-dropdown-block-summary-list{
        background-color: #fff;
        border:solid #bbb;
        border-width:0 1px 1px 1px;
        height:auto;
        max-height:310px;
        overflow-y:auto;
    }
    .example-dropdown{width:25%;}
    .example-dropdown-block-summary-list .item{
        padding:1.5rem 1rem;
    }
    .example-dropdown-block-summary-list a {
        font-weight: normal;
        color:#333;
        text-decoration: none;
    }
    .example-dropdown-block-summary-list a:hover{
        text-decoration:underline;
        .item{background-color: #f1f9f6;}
    }
    .power-icon{
        width:22px;margin-right:10px;
    }
}

@media screen and (max-width:991px) {
        .example-dropdown{
            width:45%;
        }
}
summary {
    /* display: list-item;以外を指定してデフォルトの三角形アイコンを消す */
    display: block;
}
summary::-webkit-details-marker {
    /* Safariで表示されるデフォルトの三角形アイコンを消す */
    display: none;
}

/* アコーディオンが開いているときのCSS */
details[open] .example-dropdown-block-summary {
    border-radius: 3px 3px 0 0;
    border-width:1px 1px 0 1px;
}

.example-dropdown-block-summary {
    padding: 0.7em 0.5em;
    border-radius: 3px;
    border: solid 1px #bbb;
    background-color: #fff;
    font-size: 1.6rem;
    display: flex;
    justify-content:space-between;
    .arrow {width:17px;height:17px}
}

@media (hover: hover) {
    .button-good-hover:where(
    :any-link, :enabled, summary
    ):hover {
    background-color: #f99;
    }
}
/* summary 以外をクリックでも閉じる */
details[open] > summary:before {
    content: " ";
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    background: transparent;
}

.upload-data_select{
    display: flex;
    justify-content: start;
    align-items: center;
    margin:5px auto 5px 10px;
    height: 4em;
    .example-dropdown{
        margin-top:-1.65em;
    }
}

.mounted_data-dropdown{
    display:flex;
    width:100%;
}
.mounted_data-dropdown-col1{
    width:7%;font-weight: bold;
}
.mounted_data-dropdown-col2{
    width:20%;height:4em;margin-top:-0.8em;z-index: 2;
}
.mounted_data-dropdown-col3{
    height:2em;width:1em;margin-top:-0.25em;border-left: solid 1px #bbb;
}
@media screen and (max-width:991px) {
    .mounted_data-dropdown{display:block;z-index:9;margin-bottom:1.5em}
    .mounted_data-dropdown-col1{width:100%}
    .mounted_data-dropdown-col2{width:100%;margin-top:0.5em;}
    .mounted_data-dropdown-col3{display: none;}
}
.tooltip-mounted-bottom {
    position: relative;
    cursor: pointer;
    display: block;
}
.tooltip-mounted-bottom-text {
    display: none;
    position: absolute;
    padding: 0.5em;
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.6em;
    color: #ffff;
    background: #4d4d4d;
    border: solid 1px #dbdbdb;
    width: auto;
    white-space: pre-wrap;
    margin-right: -0.5em;
}
.tooltip-mounted-bottom:hover .tooltip-mounted-bottom-text {
    display: inline-block;
    z-index: 9999;
    top: 30px;
    left: -100px;
    -webkit-filter: drop-shadow(0px 6px 6px rgba(0, 0, 0, 0.16));
    filter: drop-shadow(0px 6px 6px rgba(0, 0, 0, 0.16));
}
.tooltip-mounted-bottom-text::after {
    content: "";
    position: absolute;
    top: -20px;
    right: 5px;
    border: 10px solid transparent;
    border-top: 13px solid #4d4d4d;
    margin-left: 0px;
    transform: rotateZ(180deg);
}
/* 20241123 update */
.table-header,
.table-header-5em,
.table-header-7em {
    font-weight:bold;
    text-align:center;
    background-color:#f6f6f6;
}
.table-header-5em{width:5em;}
.table-header-7em{width:7em;}
.tbl-r02 .tbl-midashi {
    background-color: #fff;
    padding: 10px;
    text-align: right;
    border: none;
    width: auto;
    font-weight: bold;
}
.tbl-r02 .tbl-midashi.tbl-midashi-input {
    align-content: flex-start;
    padding-top: 23px;
    display:block;
}
@media screen and (max-width:991px){
    .tbl-r02 .tbl-midashi{
        border-bottom:none;
        display:block;
        padding:0;
        width:100%;
        text-align:left;
        margin:20px 0 0 0;
    }
    .tbl-r02 .tbl-midashi.tbl-midashi-input {
        align-content: center;
        padding-top: 0;
        display:block;
    }
}