@charset "UTF-8";
/* CSS Document */
main { /* link_icon */ }

main body, main div, main dl, main dt, main dd, main ul, main ol, main li, main h1, main h2, main h3, main h4, main h5, main h6, main pre, main code, main form, main fieldset, main legend, main input, main textarea, main p, main blockquote, main th, main td { margin: 0; padding: 0; line-height: 1; font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo', 'メイリオ', Verdana, 'ＭＳ Ｐゴシック', sans-serif; -webkit-text-size-adjust: 100%; }

main .font_bold { font-weight: bold; }

main a, main a:link, main a:active, main a:visited { color: #333; text-decoration: none; }

main a:hover { text-decoration: underline; }

main .pc { display: block; }

main .sp { display: none; }

main span.pc, main img.pc, main br.pc { display: inline-block; }

main span.sp, main img.sp, main br.sp { display: none; }

main .contents_inner { width: 950px; margin: 0 auto; padding-top: 64px; overflow: hidden; }

@media screen and (max-width: 767px) { main .pc { display: none; }
  main span.pc, main img.pc, main br.pc { display: none; }
  main .sp { display: block; }
  main span.sp, main img.sp, main br.sp { display: inline-block; }
  main .contents_inner { width: auto; padding: 32px 10px 0; box-sizing: border-box; } }

main .mb_20 { margin-bottom: 20px !important; }

main .mb_25 { margin-bottom: 25px !important; }

main .mb_40 { margin-bottom: 40px !important; }

main .text_right { text-align: right; }

main .text_left { text-align: left; }

main .text_center { text-align: center; }

main .icon_link { line-height: 1.4em; }

main .icon_link span { display: inline; vertical-align: middle; }

main .icon_link:hover span { text-decoration: underline; }

main .icon_link:before, main .icon_link:after { content: ''; display: inline-block; margin-bottom: 2px; background-image: url(/common16/image/link_icon_sprite.png); background-size: 220px auto; background-repeat: no-repeat; vertical-align: middle; }

main .icon_link_basic:before { margin-bottom: 2px; margin-right: 4px; width: 7px; height: 8px; background-position: 0 0; }

main .icon_link_pdf:after, main .icon_link_xls:after, main .icon_link_doc:after { margin-left: 4px; width: 17px; height: 20px; background-size: 264px auto; }

main .icon_link_pdf:after { background-position: -48px 0; }

main .icon_link_xls:after { background-position: -72px 0; }

main .icon_link_doc:after { background-position: -96px 0; }

main .icon_link_mov:after, main .icon_link_voice:after, main .icon_link_blank:after, main .icon_link_rss:after { margin-left: 8px; }

main .icon_link_mov:after { width: 17px; height: 13px; background-position: -120px 0; background-size: 264px auto; }

main .icon_link_voice:after { width: 19px; height: 13px; background-position: -120px 0; }

main .icon_link_blank:after { width: 11px; height: 11px; background-position: -20px 0; }

main .icon_link_rss:after { width: 12px; height: 12px; background-position: -140px 0; }

main .icon_link_caution:before, main .icon_link_fb:before, main .icon_link_tw:before { margin-right: 8px; }

main .icon_link_caution:before { width: 16px; height: 16px; background-position: -160px 0; }

main .icon_link_fb:before, main .icon_link_tw:before { width: 20px; height: 20px; }

main .icon_link_fb:before { background-position: -200px 0; }

main .icon_link_tw:before { background-position: -180px 0; }

main .icon_link_anchor { position: relative; padding-right: 24px; }

main .icon_link_anchor:after { display: inline; width: 0; height: 0; border-top: 6px solid #023f98; border-right: 4px solid transparent; border-bottom: 6px solid transparent; border-left: 4px solid transparent; margin-top: -5px; position: absolute; right: 10px; top: 50%; background-image: none; }

#contents { max-width: 100%; }

#contents img { max-width: 100%; }

#contents .contents_inner { padding-top: 0; }

sub { font-size: 70%; vertical-align: baseline; }

sup { font-size: 70%; }

/* -------------------------------------------------------------
common
--------------------------------------------------------------*/
/* title
----------------------------*/
.h2 { width: 380px; font-size: 25px; color: #fff; text-align: center; background: #023f98; margin: 0 auto 40px; padding: 30px 0; border-radius: 0 0 15px 15px; }

.h4 { font-size: 19px; line-height: 1.5; font-weight: bold; text-align: center; margin: 45px 0 35px; }

.moreTitle { width: 100%; max-width: 950px; font-size: 18px; color: #023f98; font-weight: bold; padding: 10px 0 10px 40px; border-bottom: 1px solid #023f98; box-sizing: border-box; margin: 100px auto 20px; background: url("/IR/manage/image/digest_icon_02.gif") no-repeat top left/32px; }

/* iconTitle */
.iconTitle { display: flex; align-items: center; font-weight: bold; margin: 130px 0 40px; }

.iconTitle .iconBox { display: flex; align-items: center; justify-content: center; width: 270px; height: 68px; font-size: 18px; line-height: 1.3; color: #fff; text-align: center; padding-left: 30px; box-sizing: border-box; position: relative; }

.iconTitle .iconBox.bgBlue { background: #023f98; }

.iconTitle .iconBox.bgRed { background: #fd3347; }

.iconTitle .iconBox:before, .iconTitle .iconBox:after { display: block; content: ""; border-left: 30px solid #023f98; border-top: 34px solid transparent; border-bottom: 34px solid transparent; position: absolute; top: 0; }

.iconTitle .iconBox.bgRed:after { border-left-color: #fd3347; }

.iconTitle .iconBox:before { border-left-color: #fff2b8; left: 0; }

.iconTitle .iconBox:after { right: -30px; }

.iconTitle .iconBox .icon { display: block; width: 200px; height: 65px; background-image: url("/IR/manage/image/digest_titlelogo_01.gif"); background-repeat: no-repeat; background-size: contain; background-position: center bottom; position: absolute; top: -65px; left: 40px; }

.iconTitle .h3White { display: flex; align-items: center; width: calc(100% - 270px); height: 70px; font-size: 20px; padding-left: 45px; box-sizing: border-box; background: #fff; }

/* blueTitle */
.blueTitle { font-size: 20px; font-weight: bold; color: #023f98; text-align: center; padding-bottom: 10px; border-bottom: 2px dotted #023f98; margin: 90px 0 35px; }

.blueTitle span { font-size: 28px; }

/* icon */
.iconTitle .iconBox .icon.icon_02 { background-image: url("/IR/manage/image/digest_titlelogo_02.gif"); }

.iconTitle .iconBox .icon.icon_03 { background-image: url("/IR/manage/image/digest_titlelogo_03.gif"); }

.iconTitle .iconBox .icon.icon_04 { background-image: url("/IR/manage/image/digest_titlelogo_04.gif"); }

/* text
----------------------------*/
.lead { font-size: 26px; font-weight: bold; line-height: 1.5; text-align: center; margin-bottom: 40px; color: #023f98; }

.text { font-size: 14px; text-align: center; line-height: 2.0; margin-bottom: 45px; }

.blue { color: #023f98; }

.note { font-size: 12px; line-height: 1.3; font-weight: normal; margin-top: 20px; }

.note + .note { margin-top: 5px; }

/* list
-------------------------------------*/
.moreList { width: 100%; max-width: 950px; display: flex; flex-wrap: wrap; justify-content: flex-start; margin: 0 auto; }

.moreList li { width: 50%; }

.moreList li:nth-child(n + 3) { margin-top: 45px; }

.moreList li .link a { display: block; font-size: 16px; font-weight: bold; margin-bottom: 10px; padding-left: 25px; box-sizing: border-box; position: relative; }

.moreList li .link a:before { display: block; content: ""; width: 15px; height: 15px; background: url("/IR/manage/image/digest_icon_03.gif") no-repeat center/contain; position: absolute; top: 0; left: 0; }

.moreList li .text { line-height: 1.57; text-align: left; padding-left: 25px; box-sizing: border-box; margin-bottom: 0; }

/* img
-------------------------------*/
.img { text-align: center; }

figure { text-align: center; margin: 0; }

figcaption { margin-top: 25px; line-height: 1.8; }

/* columnBlock
----------------------------------------------------------*/
.columnBlock { background: #f1f3f5; padding: 30px 40px 40px; box-sizing: border-box; margin-bottom: 150px; border-radius: 15px; }

.columnInner { margin-bottom: 90px; }

.columnTitle { width: 100px; margin: 0 auto 30px; }

.btnClose { width: 170px; font-size: 16px; font-weight: bold; color: #fff; line-height: 46px; text-align: center; background: #023f98; border-radius: 8px; margin: 0 auto; position: relative; cursor: pointer; }

.btnClose:hover { opacity: .7 !important; }

.btnClose span.btnHum { display: block; width: 16px; height: 16px; border-radius: 50%; background: #fff; position: absolute; top: calc(50% - 8px); right: 20px; }

.btnClose span.btnHum:before, .btnClose span.btnHum:after { display: block; content: ""; width: 10px; height: 2px; background: #023f98; position: absolute; top: 0; left: 0; bottom: 0; right: 0; margin: auto; transition: .2s; }

.btnClose span.btnHum:after { transform: rotate(90deg); }

.btnClose.open span.btnHum:after { opacity: 0; }

/* baloon
----------------------------------------------------------*/
.baloonBox { text-align: center; margin: 50px auto 60px; }

.baloonRed { display: inline-block; background: #fd3347; font-size: 24px; line-height: 1.33; font-weight: bold; color: #fff; padding: 30px 120px 35px; border-radius: 15px; position: relative; }

.baloonRed:before { display: block; content: ""; border-bottom: 20px solid #fd3347; border-left: 13px solid transparent; border-right: 13px solid transparent; position: absolute; top: -20px; left: calc(50% - 7px); }

.baloonBottom .baloonRed:before { top: 100%; transform: rotate(180deg); }

.baloonRed:after { display: block; content: ""; width: 36px; height: 26px; background: url("/IR/manage/image/digest_icon_01.gif") no-repeat center/contain; position: absolute; top: -26px; right: -18px; }

/* -------------------------------------------------------------
mainTitleArea
--------------------------------------------------------------*/
.mainTitleArea { background: #d1f8ff; height: 616px; }

.bgInner { max-width: 1280px; padding: 50px 0 60px; background: url("/IR/manage/image/digest_bg_01.png") no-repeat center/100%; margin: 0 auto; }

.h1 { width: 600px; margin: 0 auto 30px; }

.mainTitleArea .lead { color: #000; margin-bottom: 25px; }

.mainTitleArea .text { font-size: 16px; margin-bottom: 35px; }

/* nav */
.mainTitleArea nav { width: 100%; }

.mainTitleArea nav ul { display: flex; justify-content: space-around; width: 950px; margin: 0 auto; }

.mainTitleArea nav ul li { width: 177px; }

.mainTitleArea nav ul li a { display: flex; align-items: center; height: 74px; background: #fff; font-size: 16px; font-weight: bold; line-height: 1.375; padding-left: 38px; box-sizing: border-box; position: relative; }

.mainTitleArea nav ul li a:before { display: block; content: ""; width: 15px; height: 15px; background: url("/IR/manage/image/digest_icon_03.gif") no-repeat center/100%; transform: rotate(90deg); position: absolute; top: 28px; left: 15px; }

/* nav.fixed */
.navFixed .mainTitleArea nav { position: fixed; top: 0; left: 0; width: 100vw; background: #fff; z-index: 100; border-bottom: 1px solid #023f98; }

/* ---------------------------------------------------------
businessArea
----------------------------------------------------------*/
/* businessList
----------------------------*/
.businessList { display: flex; justify-content: space-around; margin: 70px 0 40px; }

.businessList li { width: 410px; background: url("/IR/manage/image/digest_bg_02.gif") no-repeat top center/254px auto; text-align: center; font-weight: bold; padding: 20px 0; }

.businessList .listTitle { font-size: 19px; margin-bottom: 25px; }

.businessList .listLead { font-size: 30px; color: #023f98; margin-bottom: 25px; }

.businessList .listPoint { font-size: 90px; color: #023f98; margin-bottom: 0px; }

.businessList .listPoint span { font-size: 40px; }

.businessList .listNo1 { font-size: 35px; color: #fc0019; }

.businessList .listNo1 span { font-size: 47px; }

/* gas */
.businessList .gas .listPoint span:nth-child(1) { font-size: 40px; }

/* electrical */
.businessList li.electrical { background: url("/IR/manage/image/digest_bg_03.gif") no-repeat top center/263px auto; }

/* ---------------------------------------------------------------
strengthArea
----------------------------------------------------------------*/
.strengthArea { background: #fff2b8; padding-bottom: 150px; }

.strengthArea .iconTitle:first-of-type .iconBox:before { border-left-color: #023f98; }

/* columnBlock
--------------------------------*/
.strengthArea .columnBlock { background: #fff; }

/* column
-----------------------------------*/
.strengthArea .columnBlock figcaption { max-width: 795px; margin-left: auto; margin-right: auto; }

/* ---------------------------------------------------------------
environmentArea
----------------------------------------------------------------*/
.environmentArea { padding-bottom: 100px; }

/* environmentList
---------------------------------*/
.environmentList { width: 950px; height: 350px; margin: 0 auto; position: relative; }

.environmentList li { width: 230px; position: absolute; }

.environmentList li:nth-child(1) { top: 115px; left: 0; }

.environmentList li:nth-child(2) { top: 0; left: 230px; }

.environmentList li:nth-child(3) { top: 0; right: 230px; }

.environmentList li:nth-child(4) { top: 115px; right: 0; }

.environmentArea .moreList .icon_link:hover span { text-decoration: none; }

/* baloonBox
--------------------------------*/
.environmentList + .baloonBox { margin-top: -80px; }

.environmentList + .baloonBox .baloonRed { padding-left: 42px; padding-right: 42px; }

.environmentArea .imgBlock { width: 100%; text-align: center; border-bottom: 3px solid #f96a00; margin-bottom: 120px; }

/* columnBlock
-----------------------------------*/
.environmentArea .columnBlock { width: 950px; margin-left: auto; margin-right: auto; }

/* tableWrap
---------------------------*/
.environmentArea .tableWrap { max-width: 690px; margin: 0 auto; }

.environmentArea .tableWrap table { width: 100%; background: #fff; }

.environmentArea .tableWrap table th, .environmentArea .tableWrap table td { font-size: 18px; font-weight: bold; text-align: center; width: 165px; box-sizing: border-box; }

.environmentArea .tableWrap table th { padding: 15px 0; border-right: 1px solid #e1e3e6; }

.environmentArea .tableWrap table th.text_left { text-align: left; padding-left: 25px; }

.environmentArea .tableWrap table td { padding: 25px 0; border-right: 1px solid #fff; border-top: 1px dotted #fff; }

.environmentArea .tableWrap table td span { font-size: 22px; }

.environmentArea .tableWrap table tr:nth-child(1) th:nth-child(1), .environmentArea .tableWrap table tr:nth-child(2) th, .environmentArea .tableWrap table tr:nth-child(4) th { width: 130px; }

.environmentArea .tableWrap table tr th:last-child, .environmentArea .tableWrap table tr td:last-child { border-right: none; }

.environmentArea .tableWrap table .bg_pink { background: #ffe5e8; }

.environmentArea .tableWrap table .bg_red { background: #fd3347; }

.environmentArea .tableWrap table .color_red { color: #fc0019; }

.environmentArea .tableWrap table .color_white { color: #fff; }

/* ---------------------------------------------------------------
workonArea
----------------------------------------------------------------*/
.workonArea { background: #fff2b8; padding-bottom: 170px; }

.workonArea .img1 img { width: 580px; }

/* energyBlock
----------------------------*/
.energyBlock { width: 850px; margin: 100px auto 0; display: flex; justify-content: space-between; align-items: center; position: relative; text-align: center; }

.energyBlock .before { width: 230px; height: 263px; background: url("/IR/manage/image/digest_bg_05.gif") no-repeat left 35% top 75%/130px 170px; }

.energyBlock .after { width: 460px; height: 263px; background: url("/IR/manage/image/digest_bg_05.gif") no-repeat center/205px 263px; margin-left: auto; }

.energyBlock .year { font-size: 35px; color: #fc0019; font-weight: bold; margin-bottom: 40px; }

.energyBlock .before .year { margin-bottom: 65px; }

.energyBlock .year span { font-size: 28px; }

.energyBlock .amount { font-size: 100px; color: #023f98; font-weight: bold; }

.energyBlock .amount span { font-size: 30px; }

.energyBlock .after .amount { font-size: 110px; }

.energyBlock .after .amount span { font-size: 40px; }

.energyBlock .baloonRed { padding-left: 45px; padding-right: 45px; position: absolute; top: -20px; left: calc(50% - 200px); }

.energyBlock .baloonRed:before { transform: rotate(180deg); top: 100%; }

.energyBlock .arrow { display: block; width: 90px; height: 64px; background: #023f98; position: absolute; left: calc(50% - 160px); bottom: 82px; }

.energyBlock .arrow:after { display: block; content: ""; border-left: 35px solid #023f98; border-top: 50px solid transparent; border-bottom: 50px solid transparent; position: absolute; right: -35px; top: -17px; }

/* whiteBlock */
.whiteBlock { padding: 60px 65px; box-sizing: border-box; background: #fff; }

.whiteBlock .h4 { margin: 0 0 35px; }

.whiteBlock ul { margin-bottom: 40px; }

.whiteBlock ul li { line-height: 2.0; padding-left: 1.8em; text-indent: -1.8em; }

.whiteBlock ul li + li { margin-top: 10px; }

/* bg_white */
.bg_white { background: #fff; padding: 30px 0 45px; margin-bottom: 80px; }

.bg_white .h4 { margin-top: 0; }

.redDotList { width: 570px; margin: 0 auto; }

.redDotList li { font-size: 16px; font-weight: bold; line-height: 2.0; padding-left: 15px; box-sizing: border-box; position: relative; }

.redDotList li:before { display: block; content: ""; width: 8px; height: 8px; border-radius: 50%; background: #fc0019; position: absolute; left: 0; top: 11px; }

/* towards2030
-------------------------------------------------*/
.towards2030 { width: 780px; height: 780px; text-align: center; background: url("/IR/manage/image/digest_bg_06.png") no-repeat center/cover; margin: 0 auto 100px; padding-top: 130px; box-sizing: border-box; }

.towards2030 p { font-size: 28px; line-height: 1.8; font-weight: bold; }

.towards2030 p + p { margin-top: 50px; }

.towards2030 p .border { display: inline-block; border-bottom: 4px dotted #fc0019; }

.towards2030 p .fontBig { font-size: 36px; color: #023f98; }

/* --------------------------------------------------------------------
returnArea
----------------------------------------------------------------------*/
.returnArea { padding-bottom: 130px; }

.returnArea .img + .h4 { margin-top: 120px; }

.returnArea .moreTitle { margin-top: 150px; }

/* formulaBlock
--------------------------------------------------------------------*/
.formulaBlock { display: flex; justify-content: center; align-items: center; background: #d1f8ff; margin-bottom: 80px; font-size: 16px; font-weight: bold; padding: 45px 0; box-sizing: border-box; }

.formulaBlock .left { width: 150px; text-align: right; margin-right: 10px; }

.formulaBlock .right { width: 480px; text-align: center; }

.formulaBlock .right p:nth-child(1) { padding-bottom: 15px; border-bottom: 1px solid #000; }

.formulaBlock .right p:nth-child(2) { padding-top: 15px; }

/* --------------------------------------------------------------------
linkArea
-----------------------------------------------------------------------*/
.linkArea { padding: 45px 0 100px; background: #d1f8ff; }

.linkArea .contents_inner { width: 950px; margin: 0 auto; }

.linkArea .contents_inner ul { display: flex; justify-content: space-around; align-items: center; }

.linkArea .contents_inner ul li { width: calc(100% / 3 - (32px / 3)); overflow: hidden; }

.linkArea .contents_inner ul li a { display: block; }

.linkArea .contents_inner ul li .title { display: flex; align-items: center; height: calc(2em + 20px); font-size: 16px; line-height: 1.4; font-weight: bold; background: #fff; padding: 10px 0 10px 40px; box-sizing: border-box; position: relative; }

.linkArea .contents_inner ul li .title:before { display: block; content: ""; border-left: 6px solid #023f98; border-top: 4px solid transparent; border-bottom: 4px solid transparent; position: absolute; top: calc(50% - 4px); left: 24px; }

.linkArea .contents_inner ul li a img { width: 100%; transition: all 0.2s ease-out; }

.linkArea .contents_inner ul li a:hover img { transform: scale(1.026, 1.025); opacity: .9; }

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Tablets
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Smartphones
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media screen and (max-width: 767px) { #contents { padding: 0 10px 80px; box-sizing: border-box; }
  /* ------------------------------------------------------------- common --------------------------------------------------------------*/
  /* title ----------------------------*/
  .h2 { width: 320px; font-size: 16px; margin: 0 auto 25px; padding: 20px 0; }
  .h4 { font-size: 14px; margin: 35px 0 15px; }
  /* iconTitle */
  .iconTitle { display: block; margin: 100px 0 20px; position: relative; }
  .iconTitle .iconBox { width: 200px; height: 50px; font-size: 14px; padding-left: 30px; position: absolute; top: -25px; left: 0; }
  .iconTitle .iconBox:before, .iconTitle .iconBox:after { border-left: 25px solid #023f98; border-top: 25px solid transparent; border-bottom: 25px solid transparent; }
  .iconTitle .iconBox:before { border-left-color: #fff2b8; }
  .iconTitle .iconBox:after { right: -25px; }
  .iconTitle .iconBox .icon { width: 115px; height: 50px; top: -50px; left: calc(50% - 57px); }
  .iconTitle .h3White { display: block; width: 100%; height: inherit; font-size: 15px; line-height: 1.5; padding-left: 0; padding: 45px 20px 20px; }
  /* blueTitle */
  .blueTitle { font-size: 14px; line-height: 1.5; margin: 50px 0 20px; }
  .blueTitle span { font-size: 18px; }
  /* text ----------------------------*/
  .lead { font-size: 18px; margin-bottom: 20px; }
  .text { text-align: left; line-height: 2.0; margin-bottom: 20px; }
  .note.text_center, .note.text_right { text-align: left; }
  /* list -------------------------------------*/
  .moreList { display: block; }
  .moreList li { width: 100%; }
  .moreList li:nth-child(n + 3) { margin-top: 25px; }
  .moreList li + li { margin-top: 25px; }
  /* img -------------------------------*/
  figure { text-align: center; }
  figcaption { margin-top: 15px; }
  /* columnBlock ----------------------------------------------------------*/
  .columnBlock { background: #f1f3f5; padding: 30px 15px; margin-bottom: 30px; }
  .columnInner { margin-bottom: 35px; }
  .columnTitle { margin: 0 auto 25px; }
  .btnClose { width: 150px; font-size: 14px; line-height: 40px; }
  /* baloon ----------------------------------------------------------*/
  .baloonBox { margin: 40px auto 60px; }
  .baloonRed { font-size: 16px; padding: 25px 10px; line-height: 1.4; border-radius: 10px; }
  .baloonRed:before { border-bottom: 13px solid #fd3347; border-left: 8px solid transparent; border-right: 8px solid transparent; top: -13px; left: calc(50% - 4px); }
  .baloonRed:after { display: block; content: ""; width: 30px; height: 13px; top: -20px; right: -15px; }
  /* ------------------------------------------------------------- mainTitleArea --------------------------------------------------------------*/
  .mainTitleArea { margin-left: -10px; margin-right: -10px; height: inherit; min-height: 615px; }
  .bgInner { padding: 30px 10px 20px; background: url(/IR/manage/image/digest_bg_01_sp.gif) no-repeat center top/contain; }
  .h1 { width: 100%; max-width: 340px; margin: 0 auto 30px; }
  /* nav */
  .mainTitleArea nav { width: 100%; }
  .mainTitleArea nav ul { width: 100%; }
  .mainTitleArea nav ul li { width: calc(20% - 5px); }
  .navFixed .mainTitleArea nav ul li { width: 20%; }
  .mainTitleArea nav ul li + li { margin-top: 0; }
  .navFixed .mainTitleArea nav ul li + li { border-left: 1px solid #023f98; }
  .mainTitleArea nav ul li a { display: flex; justify-content: center; align-items: center; height: 65px; line-height: 1.3; padding-left: 0; padding: 5px 5px 30px 5px; font-size: 11px; text-align: center; }
  .mainTitleArea nav ul li a:before { top: calc(100% - 25px); left: calc(50% - 8px); }
  /* --------------------------------------------------------- businessArea ----------------------------------------------------------*/
  #contents .businessArea .contents_inner { padding-left: 0; padding-right: 0; }
  /* businessList ----------------------------*/
  .businessList { margin: 35px 0; }
  .businessList li { width: 50%; height: 52.237vw; background-size: 36vw auto; padding: 6vw 0; }
  .businessList .listTitle { font-size: 3.77vw; margin-bottom: 2.66vw; }
  .businessList .listLead { font-size: 4.8vw; margin-bottom: 3.466vw; }
  .businessList .listPoint { font-size: 9vw; }
  .businessList .listPoint span { font-size: 5vw; }
  .businessList .listNo1 { font-size: 4.8vw; }
  .businessList .listNo1 span { font-size: 6.4vw; }
  /* gas */
  .businessList .gas .listPoint span:nth-child(1) { font-size: 4vw; }
  /* electrical */
  .businessList li.electrical { background-size: 37.33vw auto; }
  /* --------------------------------------------------------------- strengthArea ----------------------------------------------------------------*/
  .strengthArea { padding-bottom: 100px; margin-left: -10px; margin-right: -10px; }
  .strengthAreaImg01 { margin-left: -10px; margin-right: -10px; }
  /* --------------------------------------------------------------- environmentArea ----------------------------------------------------------------*/
  .environmentArea { margin-left: -10px; margin-right: -10px; }
  .environmentArea .lead, .environmentArea .lead + .text { width: calc(100% - 20px); margin-left: auto; margin-right: auto; }
  /* environmentList ---------------------------------*/
  .environmentList { display: flex; justify-content: center; flex-wrap: wrap; width: calc(100% - 20px); height: inherit; position: static; }
  .environmentList li { width: 50%; padding: 10px; box-sizing: border-box; position: static; }
  /* baloonBox --------------------------------*/
  .environmentList + .baloonBox { margin-top: 40px; margin-bottom: 20px; }
  .environmentList + .baloonBox .baloonRed { padding: 25px 40px; }
  /* imgBlock */
  .environmentArea .imgBlock { margin-bottom: 60px; }
  /* columnBlock -----------------------------------*/
  .environmentArea .columnBlock { width: calc(100% - 20px); }
  /* moreList */
  .environmentArea .moreTitle, .environmentArea .moreList { width: calc(100% - 20px); margin-left: auto; margin-right: auto; }
  /* tableWrap ---------------------------*/
  .environmentArea .tableWrap { max-width: 100%; }
  .environmentArea .tableWrap table th, .environmentArea .tableWrap table td { font-size: 14px; width: 26.8%; }
  .environmentArea .tableWrap table th { padding: 15px 0; }
  .environmentArea .tableWrap table th.text_left { padding-left: 15px; }
  .environmentArea .tableWrap table td { padding: 15px 0; line-height: 1.3; }
  .environmentArea .tableWrap table td span { font-size: 16px; }
  .environmentArea .tableWrap table tr:nth-child(1) th:nth-child(1), .environmentArea .tableWrap table tr:nth-child(2) th, .environmentArea .tableWrap table tr:nth-child(4) th { text-align: center; padding-left: 0; }
  /* --------------------------------------------------------------- workonArea ----------------------------------------------------------------*/
  .workonArea { padding-bottom: 100px; margin-left: -10px; margin-right: -10px; }
  .workonArea .img1 img { width: 100%; }
  .workonArea .text_center { text-align: left; }
  /* energyBlock ----------------------------*/
  .energyBlock { width: 100%; margin: 60px auto 0; justify-content: space-between; }
  .energyBlock .before { width: 27vw; height: 30.67vw; background-size: 16vw 18.6vw; background-position: center; }
  .energyBlock .after { width: 50vw; height: 30.67vw; background-size: 23.6vw 30.6vw; background-position: center; }
  .energyBlock .year { font-size: 4vw; margin-bottom: 10px; }
  .energyBlock .before .year { margin-bottom: 20px; }
  .energyBlock .year span { font-size: 12px; }
  .energyBlock .amount { font-size: 11.3vw; }
  .energyBlock .amount span { font-size: 3.2vw; }
  .energyBlock .after .amount { font-size: 12.0vw; }
  .energyBlock .after .amount span { font-size: 4.5vw; }
  .energyBlock .baloonRed { padding: 10px 20px; top: -25px; left: 23vw; }
  .energyBlock .baloonRed { font-size: 2vw; }
  .energyBlock .baloonRed span { font-size: 4vw; }
  .energyBlock .arrow { display: block; width: 11.3vw; height: 7.2vw; left: 30vw; bottom: inherit; top: 12vw; }
  .energyBlock .arrow:after { border-left: 4vw solid #023f98; border-top: 5.33vw solid transparent; border-bottom: 5.33vw solid transparent; right: -4vw; top: -1.866vw; }
  /* whiteBlock */
  .whiteBlock { padding: 25px 15px 40px; }
  .whiteBlock .h4 { margin: 0 0 20px; }
  .whiteBlock ul { margin-bottom: 30px; }
  .whiteBlock ul li { line-height: 1.6; }
  /* bg_white */
  .bg_white { padding: 15px 15px 25px; margin-bottom: 20px; }
  .redDotList { width: 100%; }
  .redDotList li { font-size: 14px; line-height: 1.5; }
  .redDotList li + li { margin-top: 10px; }
  .redDotList li:before { top: 6px; }
  /* towards2030 -------------------------------------------------*/
  .towards2030 { width: 100%; height: calc(100vw - 20px); margin: 0 auto 75px; padding-top: 13vw; background-size: contain; }
  .towards2030 p { font-size: 3.5vw; }
  .towards2030 p + p { margin-top: 8vw; }
  .towards2030 p:last-child { font-size: 3.48vw; }
  .towards2030 p .fontBig { font-size: 4.2vw; }
  /* -------------------------------------------------------------------- returnArea ----------------------------------------------------------------------*/
  .returnArea { padding-bottom: 50px; }
  #contents .returnArea .contents_inner { padding-left: 0; padding-right: 0; }
  .returnArea .img + .h4 { margin-top: 50px; }
  .returnArea .moreTitle { margin-top: 80px; }
  /* formulaBlock --------------------------------------------------------------------*/
  .formulaBlock { display: block; margin-bottom: 35px; font-size: 3.2vw; padding: 30px 10px 35px; }
  .formulaBlock .left { width: 100%; text-align: left; margin-right: 0; margin-bottom: 25px; }
  .formulaBlock .right { width: 100%; }
  /* -------------------------------------------------------------------- linkArea -----------------------------------------------------------------------*/
  .linkArea { padding: 25px 0 35px; margin-left: -10px; margin-right: -10px; }
  .linkArea .contents_inner { width: 100%; }
  .linkArea .contents_inner ul { display: block; }
  .linkArea .contents_inner ul li { max-width: 355px; width: 100%; margin: 0 auto; }
  .linkArea .contents_inner ul li + li { margin-top: 10px; }
  .linkArea .contents_inner ul li a { display: flex; justify-content: flex-start; align-items: center; border: 1px solid #b3b3b3; background: #fff; }
  .linkArea .contents_inner ul li .img { width: 145px; }
  .linkArea .contents_inner ul li .title { display: block; width: calc(100% - 145px); height: inherit; text-align: left; padding: 10px 0 10px 25px; }
  .linkArea .contents_inner ul li .title:before { left: 10px; } }
