body {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-feature-settings: "palt" 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-kerning: auto;
  font-kerning: auto;
  line-height: 1;
  letter-spacing: 0.02em;
  font-size: 16px;
  font-weight: 400;
  color: #333;
  background: #fff;
}

@media screen and (max-width: 769px) {
  body {
    font-size: 14px;
  }
}
.l-wrap {
  max-width: 680px;
  margin: 0 auto;
  box-shadow: 0 0 200px rgba(123, 197, 59, 0.12);
}

.inner {
  margin: 0 auto;
  max-width: 680px;
  padding: 0 1rem;
}
.inner:after {
  content: "";
  display: block;
  clear: both;
}

img {
  vertical-align: bottom;
  width: 100%;
  height: auto;
}

a {
  display: inline-block;
  color: #259f44;
  text-decoration: underline;
}

p {
  line-height: 1.4;
}
p.gray {
  color: #848484;
}
p.red {
  color: #ce0000;
}
p.green {
  display: block;
  font-weight: 700;
  border: 1px solid #189945;
  border-radius: 3px;
  color: #189945;
  text-align: center;
  padding: 0.3em;
  margin: 0.7em 0;
  background: #fff;
}
p.green.l {
  padding: 0.8em;
  margin-bottom: 0.3em;
  text-align: left;
}
p.green.l small {
  display: inline-block;
  line-height: 1.2;
  margin-top: 0.5em;
  margin-bottom: 0.8em;
}
p.green.l a {
  display: block;
  text-align: center;
  background: #189945;
  text-decoration: none;
  color: #fff;
  padding: 0.5rem;
  border-radius: 6px;
}

section {
  margin: 0 0 3rem 0;
}

.l-header {
  width: 100%;
  padding: 1rem 0;
}
.l-header .inner:after {
  content: "";
  display: block;
  clear: both;
}
.l-header .left {
  max-width: 160px;
  float: left;
}
.l-header .right {
  max-width: 88px;
  float: right;
}

.elm_h2, .mod_news {
  background: rgb(21, 152, 70);
  background: -moz-linear-gradient(90deg, rgb(21, 152, 70) 0%, rgb(127, 198, 59) 100%);
  background: -webkit-linear-gradient(90deg, rgb(21, 152, 70) 0%, rgb(127, 198, 59) 100%);
  background: linear-gradient(90deg, rgb(21, 152, 70) 0%, rgb(127, 198, 59) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#159846", endColorstr="#7fc63b", GradientType=1);
  color: #fff;
  font-weight: 700;
  text-align: center;
  padding: 0.75em;
  font-size: 17px;
  margin: 0 -1rem;
  margin-bottom: 1em;
}
.elm_h2 + p, .mod_news + p {
  letter-spacing: 0.1em;
  font-weight: 500;
}

.elm_h3 {
  font-weight: 700;
  text-align: center;
  padding: 0.75em;
  font-size: 16px;
  margin-bottom: 1em;
}

.elm_h4 {
  font-weight: 700;
  margin-bottom: 0.8em;
}

.elm_chui {
  font-size: 12px;
  color: #848484;
  display: block;
  margin: 0.5em 0;
  font-weight: 500;
}

.elm_hr--obake {
  border: none;
  border-top: 1px solid rgba(255, 255, 255, 0);
  margin: 1rem 0;
}

.elm_hr--line {
  border: none;
  border-top: 1px solid #179946;
  margin: 1rem 0;
}

.elm_hr--slim {
  border: none;
  border-top: 1px dashed rgba(6, 6, 6, 0.1);
  margin: 1rem 0;
}

.elm_imgMax {
  display: block;
  max-width: 450px;
  margin: 0 auto;
}

.elm_imgMax_s {
  display: block;
  max-width: 350px;
  margin: 0 auto;
}

.elm_imgMax_mv {
  display: block;
  max-width: 680px;
  margin: 0 auto;
}

.mod_faq dt {
  line-height: 1.3;
  font-weight: 400;
  padding: 0.7em 1.5em;
  position: relative;
}
.mod_faq dt:before {
  content: "Q";
  font-weight: 800;
  color: #179946;
  display: block;
  position: absolute;
  top: 0.5em;
  left: 0;
  font-size: 16px;
}
.mod_faq dt:after {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  background-image: url(/energy/denki/pr/setsuden/cmn/images/icon/faq_arrow-d.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100%;
  position: absolute;
  right: 0;
  top: 1em;
}
.mod_faq dt.active {
  color: #179946;
}
.mod_faq dt.active:after {
  background-image: url(/energy/denki/pr/setsuden/cmn/images/icon/faq_arrow-u.png);
}
.mod_faq dd {
  background: rgba(108, 209, 111, 0.09);
  padding: 1.8em 1.3em;
  font-size: 90%;
  margin-bottom: 1.2em;
}

.mod_chui {
  font-size: 88%;
  line-height: 1.2;
}
.mod_chui p {
  margin-bottom: 0.5em;
  line-height: 1.2;
}

.mod_osusume dl {
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.08);
  border-radius: 6px;
  background: #fff;
  padding: 1.6rem;
  margin-top: 4rem;
  position: relative;
}
.mod_osusume dl:before {
  content: "";
  display: block;
  width: 96px;
  height: 96px;
  position: absolute;
  top: -48px;
  right: 1rem;
  border-radius: 100%;
  background: rgb(205, 233, 215);
  background: -moz-linear-gradient(90deg, rgb(205, 233, 215) 0%, rgb(226, 242, 212) 100%);
  background: -webkit-linear-gradient(90deg, rgb(205, 233, 215) 0%, rgb(226, 242, 212) 100%);
  background: linear-gradient(90deg, rgb(205, 233, 215) 0%, rgb(226, 242, 212) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#cde9d7", endColorstr="#e2f2d4", GradientType=1);
}
.mod_osusume dl:after {
  content: "";
  display: block;
  width: 84px;
  height: 84px;
  border-radius: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  position: absolute;
  top: -42px;
  right: calc(1rem + 6px);
}
.mod_osusume dl:nth-child(1):after {
  background-image: url(/energy/denki/pr/setsuden/cmn/images/s_ossm/01.jpg);
}
.mod_osusume dl:nth-child(2):after {
  background-image: url(/energy/denki/pr/setsuden/cmn/images/s_ossm/02.jpg);
}
.mod_osusume dl:nth-child(3):after {
  background-image: url(/energy/denki/pr/setsuden/cmn/images/s_ossm/03.jpg);
}
.mod_osusume dl:nth-child(4):after {
  background-image: url(/energy/denki/pr/setsuden/cmn/images/s_ossm/04.jpg);
}
.mod_osusume dt {
  font-size: 15px;
  color: #65a33e;
  font-weight: 700;
}
.mod_osusume dd {
  margin-top: 1rem;
  letter-spacing: 0.1em;
}

.mod_acd {
  margin-top: 1em;
}
.mod_acd dt {
  color: #189945;
  text-decoration: underline;
  font-weight: 400;
  margin-bottom: 0.5em;
}
.mod_acd dt:after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  vertical-align: middle;
  margin-left: 0.5em;
  background-image: url(/energy/denki/pr/setsuden/cmn/images/icon/faq_arrow-d.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100%;
}
.mod_acd dt.active:after {
  background-image: url(/energy/denki/pr/setsuden/cmn/images/icon/faq_arrow-u.png);
}
.mod_acd dd {
  background: #fafafa;
  padding: 1rem;
  border-radius: 6px;
  line-height: 1.3;
}

.mod_tokuten {
  margin-top: 1.5rem;
  padding: 3rem 0 1.5rem;
  position: relative;
}
.mod_tokuten:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  height: 61%;
  width: 100%;
  background: rgb(205, 233, 215);
  background: -moz-linear-gradient(90deg, rgb(205, 233, 215) 0%, rgb(226, 242, 212) 100%);
  background: -webkit-linear-gradient(90deg, rgb(205, 233, 215) 0%, rgb(226, 242, 212) 100%);
  background: linear-gradient(90deg, rgb(205, 233, 215) 0%, rgb(226, 242, 212) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#cde9d7", endColorstr="#e2f2d4", GradientType=1);
}
.mod_tokuten .tokutenwrap {
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.08);
  border-radius: 6px;
  background: #fff;
  padding: 1.6rem;
  position: relative;
  z-index: 1;
  margin-bottom: 1rem;
}
.mod_tokuten .tokutenwrap.ending .end {
  text-align: center;
  border-radius: 6px;
  content: "";
  color: #fff;
  background: rgba(0, 0, 0, 0.516);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 120%;
  line-height: 1.4;
}
.mod_tokuten .tokutenwrap.ending .image:before {
  border-radius: 6px;
  content: "";
  color: #fff;
  background: rgba(255, 255, 255, 0.7);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
}
.mod_tokuten .tokutenwrap.ending .image:after {
  border-radius: 6px;
  content: "";
  background: rgb(0, 0, 0);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  mix-blend-mode: saturation;
}
.mod_tokuten .titile {
  color: #169946;
  font-weight: 700;
  text-align: center;
}
.mod_tokuten .titile .image {
  margin: 1em 0;
}
.mod_tokuten .titile small {
  font-size: 15px;
  display: block;
  margin-bottom: 0.5em;
  font-weight: 800;
  letter-spacing: 0.05em;
}
.mod_tokuten .titile small.motto {
  color: #000;
  font-size: 85%;
  margin-bottom: 1rem;
  font-weight: 600;
}
.mod_tokuten .titile span {
  font-weight: 800;
  font-size: 22px;
  display: block;
  margin-bottom: 0.5em;
  letter-spacing: 0.05em;
}
.mod_tokuten .titile i {
  position: relative;
  display: block;
  width: 72px;
  margin: -3.5rem auto 1.5rem;
  z-index: 100;
}
.mod_tokuten .labels {
  text-align: center;
  margin: 1rem 0;
}
.mod_tokuten .labels li {
  font-weight: 500;
  border: 1px solid #ccc;
  border-radius: 50px;
  padding: 4px 0.7em;
  display: inline-block;
  font-size: 11px;
  margin: 0.3rem 0;
}
.mod_tokuten .labels li small {
  font-size: 10px;
}
.mod_tokuten .lead {
  margin: 1rem 0;
  text-align: center;
  color: #848484;
  font-weight: 500;
}
.mod_tokuten .lead.red {
  color: #ce0000;
}
.mod_tokuten .detail {
  font-size: 95%;
}
.mod_tokuten .detail h3 {
  margin-top: 1.2rem;
  font-weight: 700;
  margin-bottom: 0.5em;
}

.link {
  margin-bottom: 3rem;
  text-align: center;
}
.link a,
.link span {
  color: #199a46;
  font-weight: 500;
  text-decoration: underline;
  cursor: pointer;
}

.mod_entry {
  background: url(/energy/denki/pr/setsuden/cmn/images/s_entry/bg.png) no-repeat center center;
  background-size: cover;
  padding: 1rem;
}
.mod_entry .txt {
  margin: 2rem auto;
  width: 80%;
  max-width: 550px;
  font-weight: 700;
  font-size: 130%;
  text-align: center;
  color: #c10000;
}
.mod_entry .txt small {
  font-size: 70%;
  display: block;
  margin-top: 1em;
  font-weight: 500;
}
.mod_entry .btn {
  margin-bottom: 1rem;
}
.mod_entry .btn + .btn {
  margin-top: -0.5rem;
}

.mod_app {
  position: relative;
}
.mod_app:before {
  content: "";
  display: block;
  position: absolute;
  top: -1.1rem;
  left: 0;
  height: 30%;
  width: 100%;
  background: rgb(205, 233, 215);
  background: -moz-linear-gradient(90deg, rgb(205, 233, 215) 0%, rgb(226, 242, 212) 100%);
  background: -webkit-linear-gradient(90deg, rgb(205, 233, 215) 0%, rgb(226, 242, 212) 100%);
  background: linear-gradient(90deg, rgb(205, 233, 215) 0%, rgb(226, 242, 212) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#cde9d7", endColorstr="#e2f2d4", GradientType=1);
}
.mod_app .inner {
  position: relative;
}
.mod_app .card {
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.08);
  border-radius: 6px;
  background: #fff;
  padding: 1.6rem;
}
.mod_app .slider {
  margin: 2rem auto;
  max-width: 300px;
  position: relative;
}
.mod_app .slider .slick-arrow {
  position: absolute;
  top: 55%;
  width: 35px;
  height: 35px;
  text-indent: -9999px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  z-index: 10;
}
.mod_app .slider .slick-arrow.slick-next {
  background-image: url(/energy/denki/pr/setsuden/cmn/images/icon/r.png);
  right: -1.5rem;
}
.mod_app .slider .slick-arrow.slick-prev {
  background-image: url(/energy/denki/pr/setsuden/cmn/images/icon/l.png);
  left: -1.5rem;
}
.mod_app .slider .slick-dots {
  margin-top: 1rem;
  text-align: center;
}
.mod_app .slider .slick-dots li {
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 100px;
  text-indent: -9999px;
  background: #b8e0c6;
  margin: 0 5px;
}
.mod_app .slider .slick-dots li.slick-active {
  background: #179946;
}
.mod_app .links {
  display: flex;
}
.mod_app .links .elm {
  padding: 0 0.5rem;
  flex: 1;
}
.mod_app .links .elm:first-child {
  border-right: 1px solid #eee;
  padding-right: 1rem;
}
.mod_app .links .elm:last-child {
  padding-left: 1rem;
}
.mod_app .links a {
  display: block;
  margin-top: 0.7rem;
}

.btn {
  margin: 1.5rem 0 0;
}
.btn a,
.btn span {
  cursor: pointer;
  transition: all 0.3s ease-in-out;
  background: rgb(21, 152, 70);
  background: -moz-linear-gradient(90deg, rgb(21, 152, 70) 0%, rgb(127, 198, 59) 100%);
  background: -webkit-linear-gradient(90deg, rgb(21, 152, 70) 0%, rgb(127, 198, 59) 100%);
  background: linear-gradient(90deg, rgb(21, 152, 70) 0%, rgb(127, 198, 59) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#159846", endColorstr="#7fc63b", GradientType=1);
  color: #fff;
  font-weight: 800;
  display: block;
  font-size: 17px;
  padding: 1.1em 0;
  text-decoration: none;
  text-align: center;
  border-radius: 100px;
  border: 2px solid #fff;
}
.btn a:hover,
.btn span:hover {
  color: #159846;
  background: rgb(21, 152, 70);
  background: -moz-linear-gradient(90deg, rgba(21, 152, 70, 0) 0%, rgba(127, 198, 59, 0) 100%);
  background: -webkit-linear-gradient(90deg, rgba(21, 152, 70, 0) 0%, rgba(127, 198, 59, 0) 100%);
  background: linear-gradient(90deg, rgba(21, 152, 70, 0) 0%, rgba(127, 198, 59, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#159846", endColorstr="#7fc63b", GradientType=1);
  border: 2px solid #159846;
}
.btn a.disabled,
.btn span.disabled {
  cursor: default;
  background: rgb(129, 129, 129);
  color: rgb(165, 165, 165);
  border: 1px solid rgb(129, 129, 129);
}
.btn.hkd a,
.btn.hkd span {
  font-size: 115%;
  font-weight: 700;
  padding: 0.8em 0;
  background: rgb(12, 186, 227);
  background: -moz-linear-gradient(270deg, rgb(12, 186, 227) 0%, rgb(63, 219, 178) 100%);
  background: -webkit-linear-gradient(270deg, rgb(12, 186, 227) 0%, rgb(63, 219, 178) 100%);
  background: linear-gradient(270deg, rgb(12, 186, 227) 0%, rgb(63, 219, 178) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#0cbae3", endColorstr="#3fdbb2", GradientType=1);
}
.btn.hkd a:hover,
.btn.hkd span:hover {
  color: #007ecc;
  background: rgb(21, 152, 70);
  background: -moz-linear-gradient(90deg, rgba(21, 152, 70, 0) 0%, rgba(127, 198, 59, 0) 100%);
  background: -webkit-linear-gradient(90deg, rgba(21, 152, 70, 0) 0%, rgba(127, 198, 59, 0) 100%);
  background: linear-gradient(90deg, rgba(21, 152, 70, 0) 0%, rgba(127, 198, 59, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#159846", endColorstr="#7fc63b", GradientType=1);
  border: 2px solid #007ecc;
}

#mv .why {
  background: rgb(147, 202, 83);
  background: -moz-linear-gradient(180deg, rgb(147, 202, 83) 0%, rgb(242, 250, 249) 100%);
  background: -webkit-linear-gradient(180deg, rgb(147, 202, 83) 0%, rgb(242, 250, 249) 100%);
  background: linear-gradient(180deg, rgb(147, 202, 83) 0%, rgb(242, 250, 249) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#93ca53", endColorstr="#f2faf9", GradientType=1);
  padding-bottom: 1rem;
}
#mv .why_box {
  background: #fff;
  padding: 1.5rem;
  border: 2px solid #91db62;
  border-radius: 6px;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.08);
}
#mv .why_box h1 {
  font-weight: 700;
  color: #189946;
  text-align: center;
  font-size: 18px;
  margin-bottom: 0.5em;
}

#mod_modal--hokkaido {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
}
#mod_modal--hokkaido .ttl {
  font-weight: 700;
  font-size: 110%;
  margin-bottom: 0.5em;
  color: #189945;
}
#mod_modal--hokkaido .inner {
  background: rgba(12, 186, 227, 0.9);
  background: -moz-linear-gradient(270deg, rgba(12, 186, 227, 0.9) 0%, rgba(63, 219, 178, 0.9) 100%);
  background: -webkit-linear-gradient(270deg, rgba(12, 186, 227, 0.9) 0%, rgba(63, 219, 178, 0.9) 100%);
  background: linear-gradient(270deg, rgba(12, 186, 227, 0.9) 0%, rgba(63, 219, 178, 0.9) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#0cbae3", endColorstr="#3fdbb2", GradientType=1);
  padding: 1.2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
#mod_modal--hokkaido .box {
  background: #fff;
  border-radius: 10px;
  padding: 1.2rem;
  position: relative;
}
#mod_modal--hokkaido .close {
  display: block;
  width: 20px;
  height: 20px;
  background: url("../images/icon/close.png") no-repeat center center;
  background-size: cover;
  position: absolute;
  top: -30px;
  right: 0;
  cursor: pointer;
}

.mod_news {
  margin: 0;
  background: rgb(255, 192, 13);
  background: -moz-radial-gradient(circle, rgb(255, 192, 13) 0%, rgb(255, 138, 24) 100%);
  background: -webkit-radial-gradient(circle, rgb(255, 192, 13) 0%, rgb(255, 138, 24) 100%);
  background: radial-gradient(circle, rgb(255, 192, 13) 0%, rgb(255, 138, 24) 100%);
}
.mod_news small {
  display: inline-block;
  color: #cc0000;
  font-size: 12px;
  font-weight: 400;
  margin-top: 0.5em;
  background: #fff2d6;
  padding: 0.5em 1em;
  border-radius: 50px;
  line-height: 1;
}

.mod_oldTokutenAcd--link, .mod_oldTokutenAcd dt {
  margin: 1rem 0;
  border: 1px solid #159846;
  display: block;
  padding: 0.9em 1em 0.7em;
  text-align: center;
  color: #159846;
  font-size: 110%;
  border-radius: 6px;
  text-decoration: none;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
}
.mod_oldTokutenAcd--link small, .mod_oldTokutenAcd dt small {
  display: inline-block;
  background: #159846;
  color: #fff;
  font-weight: 700;
  font-size: 70%;
  padding: 3px 5px;
  border-radius: 3px;
  transform: translateY(-2px);
}
.mod_oldTokutenAcd--link:hover, .mod_oldTokutenAcd dt:hover {
  background: #f1fff6;
}

.mod_oldTokutenAcd dl {
  border: 1px solid #159846;
  border-radius: 6px;
  overflow: hidden;
}
.mod_oldTokutenAcd dt {
  margin: 0;
  border-radius: 6px 6px 0 0;
  border: none;
}
.mod_oldTokutenAcd dd {
  display: none;
  border-top: 1px solid #159846;
  padding: 1rem 0;
}
.mod_oldTokutenAcd dd .mod_tokuten {
  margin-top: 0;
}

.mod_offseason {
  color: #b50000;
  background: #ffd9d9;
  text-align: center;
  padding: 1em;
  font-size: 90%;
  border-top: 1px solid #b50000;
  border-bottom: 1px solid #b50000;
}
.mod_offseason p {
  line-height: 1.2;
}
.mod_offseason .ttl {
  font-weight: 700;
  font-size: 130%;
  margin-bottom: 0.2em;
}

.forSp {
  display: none;
}
@media screen and (max-width: 769px) {
  .forSp {
    display: inline;
  }
}

.forPc {
  display: inline;
}
@media screen and (max-width: 769px) {
  .forPc {
    display: none;
  }
}
