@charset "utf-8";
/* ----------------------------------------------------------------
    Default Styles
----------------------------------------------------------------- */
:root {
  --dekiruGreen: #319b03;
  --estimateOrange: #ff7816;

  --defaultTxtColor: #222;
  --weakTxtColor: #777;

  --secondBgColor: #f4f4f4;
  --subBgGreen: #d6ebcd;

  --defaultBorder: 2px solid #ececec;

  --emphasisRed: #d70101;
  --emphasisYellow: #f0f000;
  --emphasisYellow-rgb: 240, 240, 0;
}

[class^="bl_"] + .el_hdg2 {
  margin-top: 40px;
}

[class^="bl_"] + .el_hdg3 {
  margin-top: 30px;
}

.el_hdg3 + [class^="bl_"] {
  margin-top: initial;
}

[class^="bl_"][class*="__padding"][class*="_wrapper"] + .el_hdg2 {
  margin-top: 20px;
}
[class^="bl_"][class*="__padding"][class*="_wrapper"] + .el_hdg3 {
  margin-top: 10px;
}
em {
  font-style: normal;
  font-weight: bold;
}

figure {
  margin: 0;
  padding: 0;
}

/* ----------------------------------------------------------------
    Layout Modules
    接頭辞: .ly_*
----------------------------------------------------------------- */
/* .ly_cont
----------------------------------------------- */
.ly_cont {
  width: 950px;
  margin: 0px auto 0px auto;
  font-size: 14px;
  color: var(--defaultTxtColor);
}

.ly_cont:after {
  content: "";
  display: block;
  clear: both;
}

/* .ly_cont_main
----------------------------------------------- */
.ly_cont_main {
  margin: 33px 0 40px 20px;
  width: 755px;
  max-width: 755px;
  text-align: left;
  float: right;
}

.ly_cont_main.ly_cont_main__categoryTop {
  margin: 33px 0 40px 20px;
  width: 755px;
  text-align: left;
  float: right;
}
.ly_cont_main.ly_cont_main__noneLeft{
  width:950px;
  max-width:950px;
}

/* .ly_cont_side
----------------------------------------------- */
.ly_cont #side.ly_cont_side {
  width: 175px;
  float: left;
  margin: 33px 0 0 0;
  text-align: left;
  font-size: 12px;
}

/* ----------------------------------------------------------------
    Block Modules
    接頭辞: .bl_*
----------------------------------------------------------------- */
/* .bl_panel
----------------------------------------------- */
.bl_panel_wrapper.bl_panel_wrapper__padding {
  padding: 20px;
}

.bl_panel_wrapper.bl_panel_wrapper__bgGray {
  background: var(--secondBgColor);
}

.bl_panel_wrapper.bl_panel_wrapper__bgGray .bl_panel {
  background: #fff;
}

.el_hdg2 + .bl_panel_wrapper {
  margin-top: 20px;
}

.bl_panel.bl_panel__noBorder + .bl_panel_wrapper.bl_panel_wrapper__padding {
  padding-top: 0;
  margin-top: 0;
}

.bl_mediaPanel.bl_mediaPanel__noBorder + .bl_panel.bl_panel__noBorder,
.el_checkList_wrapper + .bl_panel.bl_panel__noBorder {
  padding-top: 0;
}

.bl_panel {
  box-sizing: border-box;
  border: var(--defaultBorder);
  padding: 20px;
}

.bl_panel.bl_panel__noBorder {
  border: none;
}

.el_hdg4 + .bl_panel.bl_panel__noBorder {
  margin-top: initial;
}

.bl_panel.bl_panel__noPadding {
  padding: 0;
}

.bl_panel.bl_panel__center {
  text-align: center;
}

.bl_panel.bl_panel__banner {
  border: none;
  margin-top: 40px;
  padding: 0;
}

.bl_panel > p + p,
.bl_panel > p + figure,
.bl_panel > figure + p {
  margin-top: 1rem;
}

.bl_panel .el_hdg5 + p {
  margin-top: 0.5rem;
}

.bl_panel.bl_panel__banner img {
  width: 100%;
  height: auto;
}

.bl_panel.bl_panel__banner a:nth-of-type(n + 2),
.bl_panel.bl_panel__banner div:not(:first-child) {
  margin-top: 20px;
  display: block;
}

.bl_panel.bl_panel__banner a.hp_pcNone:nth-of-type(n + 2) {
  display: none;
}

.bl_panel.bl_panel__bgGray {
  background: var(--secondBgColor);
}
.el_checkList +.bl_panel {
margin-top: 20px;
}
.bl_panel + .bl_panel_wrapper,
.bl_panel_wrapper + .bl_panel_wrapper,
.bl_mediaPanel + .bl_panel_wrapper,
.bl_mediaPanel_wrapper + .bl_panel_wrapper,
.bl_tabUnit + .bl_panel_wrapper,
.el_btn2_wrapper + .bl_panel_wrapper,
.el_3colBanner + .bl_panel.bl_panel__banner {
  margin-top: 20px;
}

.bl_panel.bl_panel__noBorder + .bl_panel_wrapper {
  margin-top: 10px;
}

.bl_panel.bl_panel__noBorder + .bl_panel.bl_panel__noBorder,
.bl_mediaPanel_wrapper.bl_mediaPanel_wrapper__padding + .bl_panel.bl_panel__noBorder,
.bl_card2Unit_wrapper + .bl_panel.bl_panel__noBorder,
.bl_tipsPanel_wrapper.bl_tipsPanel_wrapper__padding + .bl_panel.bl_panel__noBorder,
.bl_tabUnit_wrapper + .bl_panel.bl_panel__noBorder {
  padding-top: 0;
}

.el_hdg4 + .bl_panel {
  border-top: 0;
}

.bl_cardUnit.bl_cardUnit__padding + .bl_panel.bl_panel__noBorder {
  padding-top: 0;
}

.el_hdg5 + p,
.el_hdg5 + .bl_panel.bl_panel__noBorder.bl_panel__noPadding {
  margin-top: 10px;
}

.bl_panel_wrapper.bl_panel_wrapper__padding + .bl_panel_wrapper.bl_panel_wrapper__padding{
  margin-top: 0;
  padding-top: 0;
}

.el_hdg2 + .bl_panel_wrapper.bl_panel_wrapper__padding {
  margin-top: 0;
}

/* .bl_mediaPanel
----------------------------------------------- */
.bl_mediaPanel {
  display: flex;
  box-sizing: border-box;
  border: var(--defaultBorder);
  padding: 20px;
}

.bl_mediaPanel.bl_mediaPanel__noPadding {
  padding: 0;
}

.bl_mediaPanel_wrapper.bl_mediaPanel_wrapper__padding .bl_mediaPanel.bl_mediaPanel__noBorder:last-child {
  padding-bottom: 0;
}

.bl_mediaPanel.bl_mediaPanel__noBorder {
  border: none;
}

.bl_mediaPanel.bl_mediaPanel__bgGray {
  background: var(--secondBgColor);
  border: none;
}

.bl_mediaPanel.bl_mediaPanel__col {
  flex-direction: column;
}

.bl_mediaPanel.bl_mediaPanel__banner {
  border: none;
  margin-top: 40px;
}

.bl_mediaPanel.bl_mediaPanel__banner img {
  width: 100%;
  height: auto;
}

.bl_mediaPanel.bl_mediaPanel__banner a:nth-of-type(n + 2) {
  margin-top: 20px;
  display: block;
}

.bl_mediaPanel .bl_mediaPanel_ttl {
  font-size: 20px;
  font-weight: bold;
}

.bl_mediaPanel .bl_mediaPanel_txt {
  flex-grow: 1;
}
.bl_mediaPanel .bl_mediaPanel_txt .el_hdg7{
  margin-bottom: 5px;
}


.bl_mediaPanel .bl_mediaPanel_img {
  flex-shrink: 0;
  max-width: 50%;
}

.bl_mediaPanel.bl_mediaPanel__col .bl_mediaPanel_img {
  text-align: center;
  max-width: 100%;
}

.bl_mediaPanel.bl_mediaPanel__col .bl_mediaPanel_img + .bl_mediaPanel_txt {
  margin-top: 10px;
}

.bl_mediaPanel .bl_mediaPanel_img img {
  display: block;
  height: auto;
  margin: 0 auto;
}

.bl_mediaPanel .bl_mediaPanel_img img + img {
  margin-top: 10px;
}

.bl_mediaPanel .bl_mediaPanel_img_caption {
  text-align: center;
  font-size: 12px;
}

.bl_mediaPanel .bl_mediaPanel_img img + .bl_mediaPanel_img_caption {
  margin-top: 5px;
}

.bl_mediaPanel .bl_mediaPanel_txt.bl_mediaPanel_txt__txtC {
  text-align: center;
}

.bl_mediaPanel .bl_mediaPanel_txt + .bl_mediaPanel_img,
.bl_mediaPanel .bl_mediaPanel_img + .bl_mediaPanel_txt {
  margin-left: 20px;
}

.bl_mediaPanel.bl_mediaPanel__col .bl_mediaPanel_txt + .bl_mediaPanel_img,
.bl_mediaPanel.bl_mediaPanel__col .bl_mediaPanel_img + .bl_mediaPanel_txt {
  margin-left: 0;
}

.bl_mediaPanel.bl_mediaPanel__col .bl_mediaPanel_txt + .bl_mediaPanel_img {
  margin-top: 10px;
}

.bl_mediaPanel .bl_mediaPanel_txt p + p:not(.bl_mediaPanel_txt_annotation) {
  margin-top: 1rem;
}

.bl_mediaPanel .bl_mediaPanel_txt_ttl {
  margin-bottom: 5px;
}

.bl_mediaPanel .bl_mediaPanel_txt_ttl > a {
  text-decoration: underline;
  color: var(--defaultTxtColor);
  font-weight: bold;
}

.bl_mediaPanel .bl_mediaPanel_txt_annotation {
  background: #f4f4f4;
  padding: 10px;
  font-size: 12px;
  margin-top: 5px;
}

.bl_mediaPanel .bl_mediaPanel_img.bl_mediaPanel_img__center {
  text-align: center;
  justify-content: center;
}

.bl_mediaPanel .bl_mediaPanel_img.bl_mediaPanel_img__alignItemC {
  display: flex;
  align-items: center;
}

.bl_mediaPanel .bl_mediaPanel_img.bl_mediaPanel_img__bottom {
  display: flex;
  align-items: flex-end;
}

.bl_mediaPanel .bl_mediaPanel_txt .bl_mediaPanel_txt_inner {
  padding: 10px;
}

.bl_mediaPanel .bl_mediaPanel_txt [class^="el_hdg"] + p,
.bl_mediaPanel .bl_mediaPanel_txt p + [class^="el_btn"] {
  margin-top: 10px;
}

.el_hdg4 + .bl_mediaPanel_txt_inner {
  margin-top: initial;
}



.bl_mediaPanel .bl_mediaPanel_txt .bl_mediaPanel_txt_inner.bl_mediaPanel_txt_inner__border {
  padding: 20px;
  border: solid 1px #eaeaea;
}

.bl_mediaPanel_wrapper.bl_mediaPanel_wrapper__padding {
  padding: 20px;
}

.bl_mediaPanel_wrapper.bl_mediaPanel_wrapper__border {
  border: var(--defaultBorder);
}

.bl_mediaPanel_wrapper.bl_mediaPanel_wrapper__separator .bl_mediaPanel + .bl_mediaPanel {
  border-top: 1px dashed #ccc;
}

.el_btn2_wrapper + .bl_mediaPanel_wrapper {
  margin-top: 40px;
}

.bl_panel_wrapper + .bl_mediaPanel_wrapper {
  margin-top: 20px;
}

.el_hdg2 + .bl_mediaPanel_wrapper,
.el_annotation + .bl_mediaPanel_wrapper,
.bl_mediaPanel.bl_mediaPanel__noPadding + .bl_mediaPanel.bl_mediaPanel__noPadding,
.bl_mediaPanel.bl_mediaPanel__noPadding + .bl_panel.bl_panel__noBorder,
.bl_panel.bl_panel__noBorder + .bl_mediaPanel.bl_mediaPanel__noPadding,
.bl_mediaPanel_wrapper + .bl_mediaPanel_wrapper,
.bl_tipsPanel_wrapper + .bl_mediaPanel_wrapper,
.bl_panel + .bl_mediaPanel_wrapper,
.bl_cardUnit_wrapper + .bl_mediaPanel_wrapper,
.bl_cardUnit + .bl_mediaPanel_wrapper,
.bl_card2Unit_wrapper + .bl_mediaPanel_wrapper,
.bl_card2Unit + .bl_mediaPanel_wrapper,
.bl_card3Unit_wrapper + .bl_mediaPanel_wrapper,
.bl_card3Unit + .bl_mediaPanel_wrapper {
  margin-top: 20px;
}

.el_hdg5_wrapper + .bl_mediaPanel {
  margin-top: 10px;
}

.el_hdg4 + .bl_mediaPanel {
  border-top: 0;
}

.el_hdg4 + .bl_mediaPanel.bl_mediaPanel__noPadding {
  margin-top: 10px;
}

.el_hdg5 + .bl_mediaPanel.bl_mediaPanel__noPadding {
  margin-top: 10px;
}

.bl_panel + .bl_mediaPanel_wrapper.bl_mediaPanel_wrapper__padding,
.bl_panel_wrapper + .bl_mediaPanel_wrapper.bl_mediaPanel_wrapper__padding {
  margin-top: 0;
  padding: auto;
}

.bl_mediaPanel.bl_mediaPanel__noBorder + .bl_panel_wrapper.bl_panel_wrapper__padding{
  margin-top:0;
  padding-top:0;
}

.bl_panel.bl_panel__noBorder + .bl_mediaPanel_wrapper.bl_mediaPanel_wrapper__padding {
  padding-top: 0;
}

.el_checkList + .bl_mediaPanel_txt,
.el_checkList + p {
  margin-top: 10px;
}

/* .bl_tipsPanel
----------------------------------------------- */
.bl_tipsPanel_wrapper.bl_tipsPanel_wrapper__padding {
  padding: 20px;
}

.bl_tipsPanel {
  background: #fff;
  padding: 0 20px 20px;
  margin-top: 17px;
  border: 4px solid #ececec;
}

.bl_tipsPanel .bl_tipsPanel_ttl {
  display: inline-block;
  position: relative;
  top: -20px;
  background: var(--secondBgColor);
  border: 1px solid #ddd;
  padding: 10px 15px;
  margin-bottom: -5px;
  color: var(--dekiruGreen);
  font-weight: bold;
  font-size: 16px;
}

.bl_tipsPanel .bl_tipsPanel_ttl_label {
  font-size: 14px;
  color: #fff;
  background: var(--dekiruGreen);
  padding: 2px 8px;
  border-radius: 5px;
  margin-right: 10px;
}

.bl_mediaPanel_wrapper + .bl_tips_panel_wrapper {
  margin-top: 40px;
}

.bl_mediaPanel_wrapper + .bl_tipsPanel_wrapper:not(.bl_tipsPanel_wrapper__padding),
.bl_card2Unit_wrapper + .bl_tipsPanel_wrapper:not(.bl_tipsPanel_wrapper__padding),
.bl_card3Unit_wrapper + .bl_tipsPanel_wrapper:not(.bl_tipsPanel_wrapper__padding),
.el_btn2_wrapper + .bl_tipsPanel_wrapper:not(.bl_tipsPanel_wrapper__padding),
.el_annotation + .bl_tipsPanel_wrapper:not(.bl_tipsPanel_wrapper__padding),
.bl_mediaPanel + .bl_tipsPanel_wrapper:not(.bl_tipsPanel_wrapper__padding),
.el_annotation + .bl_tipsPanel,
.bl_mediaPanel + .bl_tipsPanel {
  margin-top: 37px;
}

.bl_mediaPanel.bl_mediaPanel__noBorder:not(.bl_mediaPanel__noPadding) + .bl_tipsPanel {
  margin-top: 17px;
}

.bl_panel.bl_panel__noBorder + .bl_tipsPanel_wrapper.bl_tipsPanel_wrapper__padding,
.bl_mediaPanel.bl_mediaPanel__noBorder + .bl_tipsPanel_wrapper.bl_tipsPanel_wrapper__padding {
  padding-top: 0;
}

.el_hdg4 + .bl_mediaPanel.bl_mediaPanel__noBorder.bl_mediaPanel__noPadding {
  margin-top: 20px;  
}

/* .bl_costPanel
----------------------------------------------- */
.bl_costPanel .bl_costPanel_txt {
  font-weight: bold;
  font-size: 16px;
  text-align: center;
}

.bl_costPanel .bl_costPanel_subTxt {
  font-size: 16px;
  text-align: center;
}

.bl_costPanel .bl_costPanel_list {
  width: 642px;
  margin: 10px auto 0;
}

.bl_costPanel .bl_costPanel_list > ul {
  display: flex;
  flex-wrap: wrap;
  margin-top: -10px;
  margin-left: -10px;
}

.bl_costPanel .bl_costPanel_list > ul > li {
  margin-top: 10px;
  margin-left: 10px;
}

.bl_costPanel .bl_costPanel_list + .bl_costPanel_subTxt {
  margin-top: 20px;
}

.bl_costPanel .bl_costPanel_price,
.bl_costPanel .bl_costPanel_subPrice {
  font-weight: bold;
  text-align: center;
  line-height: 1;
}

.bl_costPanel .bl_costPanel_price {
  font-size: 22px;
  margin-top: 20px;
}

.bl_costPanel .bl_costPanel_subPrice {
  font-size: 16px;
  margin-top: 8px;
}

.bl_costPanel .bl_costPanel_price > div,
.bl_costPanel .bl_costPanel_price > span,
.bl_costPanel .bl_costPanel_subPrice > div,
.bl_costPanel .bl_costPanel_subPrice > span {
  color: #d70101;
  font-weight: bold;
}

.bl_costPanel .bl_costPanel_price > div {
  font-size: 40px;
}

.bl_costPanel .bl_costPanel_subPrice > div {
  font-size: 26px;
}

/* .bl_pointPanel
----------------------------------------------- */
.bl_pointPanel_wrapper {
  margin-left: 20px;
  margin-right: 20px;
}
.bl_pointPanel {
  border: 3px solid var(--dekiruGreen);
  display: flex;
  font-weight: bold;
  font-size: 16px;
}
.bl_pointPanel .bl_pointPanel_ttl {
  color: #fff;
  background: var(--dekiruGreen);
  position: relative;
  padding: 16px;
  display: flex;
  align-items: center;
}
.bl_pointPanel .bl_pointPanel_ttl::before {
  content: "";
  width: 0;
  height: 0;
  border: 10px solid transparent;
  border-left: 10px solid #319b03;
  position: absolute;
  top: 50%;
  right: -20px;
  margin-top: -10px;
}
.bl_pointPanel .bl_pointPanel_txt {
  font-weight: bold;
  flex: 1;
  padding: 16px;
}
.bl_pointPanel .bl_pointPanel_txt > p + p {
  margin-top: 10px;
}

.bl_mediaPanel.bl_mediaPanel__noPadding + .bl_pointPanel {
  margin-top: 20px;
}

/* .bl_CardUnit
----------------------------------------------- */
.bl_cardUnit {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.bl_cardUnit.bl_cardUnit__justifyStart {
  justify-content: flex-start;
}

.bl_cardUnit.bl_cardUnit__padding,
.bl_cardUnit_wrapper.bl_cardUnit_wrapper__padding {
  padding: 20px;
}

.bl_cardUnit.bl_cardUnit__padding .bl_card:nth-child(1),
.bl_cardUnit.bl_cardUnit__padding .bl_card:nth-child(2) {
  margin-top: 0;
}

.el_hdg2 + .bl_cardUnit,
.el_hdg2 + .bl_cardUnit_wrapper,
.el_hdg5 + .bl_cardUnit,
.el_hdg5 + .bl_cardUnit_wrapper {
  margin-top: 10px;
}

.el_hdg2 + .bl_cardUnit.bl_cardUnit__padding {
  margin-top: 0;
}

.bl_card.bl_card__center {
  text-align: center;
}

.bl_card .bl_card_ttl {
  margin-top: 5px;
  font-size: 16px;
}

.bl_card .bl_card_img + .bl_card_txt {
  margin-top: 5px;
}

/* 2カラム */
.bl_cardUnit__col2 > .bl_card {
  width: calc((100% + 10px) / 2 - 10px);
  margin-top: 20px;
}

.bl_cardUnit__col2 > .bl_card:not(:nth-child(n + 3)) {
  margin-top: 0;
}

.bl_panel .bl_cardUnit > .bl_card {
  margin-top: 0;
}

/* 2カラム 隙間狭 */
.bl_cardUnit.bl_cardUnit__col2Narrow > .bl_card {
  width: calc(50% - 5px);
  margin-right: 10px;
  margin-top: 10px;
}

.bl_cardUnit.bl_cardUnit__col2Narrow > .bl_card:nth-of-type(-n + 2) {
  margin-top: 0;
}

.bl_cardUnit.bl_cardUnit__col2Narrow > .bl_card:nth-of-type(2n) {
  margin-right: 0;
}

/* 3カラム */
.bl_cardUnit.bl_cardUnit__col3 {
  justify-content: space-between;
}

.bl_cardUnit.bl_cardUnit__col3.bl_cardUnit__justifyStart {
  justify-content: flex-start;
}

.bl_cardUnit__col3 > .bl_card {
  width: calc(33% - 16px);
  margin-right: 20px;
  margin-top: 20px;
}

.bl_cardUnit.bl_cardUnit__justifyStart > .bl_card {
  width: calc(33% - 10px);
  margin-right: 18px;
}

.bl_cardUnit.bl_cardUnit__col3 > .bl_card:nth-of-type(-n + 3) {
  margin-top: 0;
}

.bl_cardUnit.bl_cardUnit__col3 > .bl_card:nth-of-type(3n) {
  margin-right: 0;
}

/* 3カラム 隙間狭 */
.bl_cardUnit.bl_cardUnit__col3Narrow > .bl_card {
  width: calc(33% - 5px);
  margin-right: 10px;
  margin-top: 10px;
}

.bl_cardUnit.bl_cardUnit__col3Narrow > .bl_card:nth-of-type(-n + 3) {
  margin-top: 0;
}

.bl_cardUnit.bl_cardUnit__col3Narrow > .bl_card:nth-of-type(3n) {
  margin-right: 0;
}

/* 4カラム */
.bl_cardUnit.bl_cardUnit__col4 > .bl_card {
  width: calc(25% - 15px);
  margin-right: 20px;
  margin-top: 20px;
}

.bl_cardUnit.bl_cardUnit__col4 > .bl_card:nth-of-type(-n + 4) {
  margin-top: 0;
}

.bl_cardUnit.bl_cardUnit__col4 > .bl_card:nth-of-type(4n) {
  margin-right: 0;
}

/* 4カラム 隙間狭 */
.bl_cardUnit.bl_cardUnit__col4Narrow > .bl_card {
  width: calc(25% - 7.5px);
  margin-right: 10px;
  margin-top: 10px;
}

.bl_cardUnit.bl_cardUnit__col4Narrow > .bl_card:nth-of-type(-n + 4) {
  margin-top: 0;
}

.bl_cardUnit.bl_cardUnit__col4Narrow > .bl_card:nth-of-type(4n) {
  margin-right: 0;
}

.el_hdg3 + .bl_cardUnit,
.bl_card2Unit_wrapper + .bl_cardUnit {
  margin-top: 20px;
}

.bl_panel p + .bl_cardUnit {
  margin-top: 10px;
}

.bl_cardUnit + .bl_cardUnit,
.bl_cardUnit + p {
  margin-top: 10px;
}

.bl_panel.bl_panel__noBorder + .bl_cardUnit.bl_cardUnit__padding {
  padding-top: 0;
}

/* .bl_card2 & bl_card2Unit
----------------------------------------------- */
.bl_card2Unit_wrapper {
  width: 100%;
  box-sizing: border-box;
}

.bl_card2Unit_wrapper.bl_card2Unit_wrapper__padding {
  padding: 20px;
}

.el_hdg2 + .bl_card2Unit_wrapper:not(.bl_card2Unit_wrapper__padding) {
  margin-top: 20px;
}

.bl_cardUnit_wrapper + .bl_card2Unit_wrapper,
.el_btn_wrapper + .bl_card2Unit_wrapper {
  margin-top: 40px;
}

.bl_panel_wrapper + .bl_card2Unit_wrapper,
.bl_mediaPanel_wrapper + .bl_card2Unit_wrapper,
.bl_card2Unit_wrapper + .bl_card2Unit_wrapper {
  margin-top: 20px;
}

.el_hdg3 + .bl_card2Unit_wrapper,
p + .bl_card2Unit_wrapper {
  margin-top: 10px;
}

.el_hdg3 + .bl_card2Unit {
  margin-top: 20px;
}

.el_hdg3 + .bl_card2Unit.bl_card2Unit__padding {
  margin-top: 0;
}

.bl_tabUnit_wrapper + .bl_card2Unit.bl_card2Unit__padding {
  padding-top: 0;
}

.bl_card2Unit {
  display: flex;
  flex-wrap: wrap;
  box-sizing: border-box;
  justify-content: space-between;
}

.bl_card2Unit.bl_card2Unit__padding {
  padding: 20px;
}

.bl_card2Unit.bl_card2Unit__bgGray {
  border: var(--defaultBorder);
  background: var(--secondBgColor);
}

.bl_card2 {
  position: relative;
  box-sizing: border-box;
  border: solid 2px #ececec;
  padding: 10px;
  background-color: #fff;
}

.bl_card2.bl_card2__broad {
  padding: 15px;
}

.bl_card2.bl_card2__deepBorder {
  border: solid 2px #bfbfbf;
}

.bl_card2 .bl_card2_txt {
  font-size: 12px;
}

.bl_card2 .bl_card2_txt.bl_card2_txt__center {
  text-align: center;
}

.bl_card2 .bl_card2_txt.bl_card2_txt__fontNormal {
  font-size: 1em;
}

.bl_card2 .bl_card2_ttl {
  font-weight: bold;
  font-size: 14px;
}

.bl_card2 .bl_card2_txt + .bl_card2_img {
  margin-top: 10px;
}

.bl_card2 .bl_card2_img + .bl_card2_txt {
  margin-top: 10px;
}

.bl_card2 .bl_card2_img {
  text-align: center;
}

.bl_card2 .bl_card2_img img {
  height: auto;
  max-width: 100%;
}

.bl_card2 .bl_card2_img.bl_card2_img__100 img {
  width: 100%;
}

.bl_card2::after {
  content: "";
  width: 14px;
  height: 14px;
  position: absolute;
  right: 3px;
  bottom: 3px;
  background: linear-gradient(-45deg, var(--dekiruGreen) 0, var(--dekiruGreen) 50%, transparent 50%, transparent 100%);
}

.bl_card2 a:link,
.bl_card2 a:visited,
.bl_card2 a:hover,
a.bl_card2:link,
a.bl_card2:visited,
a.bl_card2:hover {
  text-decoration: none;
  color: var(--defaultTxtColor);
}

.bl_card2:hover {
  border: solid 2px var(--dekiruGreen);
  opacity: 1;
}

/* 2カラム */
.bl_card2Unit.bl_card2Unit__col2 .bl_card2 {
  width: calc((100% + 5px) / 2 - 5px);
}
.bl_card2Unit.bl_card2Unit__col2 .bl_card2:nth-child(n + 3) {
  margin-top: 5px;
}

/* 3カラム */
.bl_card2Unit.bl_card2Unit__col3 .bl_card2 {
  width: calc((100% + 5px) / 3 - 5px);
}

.bl_card2Unit.bl_card2Unit__col3 .bl_card2:nth-child(n + 4) {
  margin-top: 5px;
}

/* 4カラム */
.bl_card2Unit.bl_card2Unit__col4 .bl_card2 {
  width: calc((100% + 5px) / 4 - 5px);
}
.bl_card2Unit.bl_card2Unit__col4 .bl_card2:nth-child(n + 5) {
  margin-top: 5px;
}

.el_btn2_wrapper + .bl_card2Unit_wrapper {
  margin-top: 40px;
}

/* .bl_card3 & bl_card3Unit
----------------------------------------------- */
.bl_card3Unit_wrapper {
  width: 100%;
  box-sizing: border-box;
}

.el_hdg2 + .bl_card3Unit_wrapper {
  margin-top: 20px;
}

.bl_card3Unit_wrapper + .bl_card3Unit_wrapper {
  margin-top: 40px;
}

.bl_card3Unit.bl_card3Unit__bgGray {
  border: var(--defaultBorder);
  background: var(--secondBgColor);
}

.bl_card3Unit {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.bl_card3Unit.bl_card3Unit__padding {
  padding: 20px;
}

.bl_panel.bl_panel__noBorder + .bl_card3Unit.bl_card3Unit__padding {
  padding-top: 0;
}

.bl_card3 {
  position: relative;
  box-sizing: border-box;
  background-color: #fff;
  border: solid 2px #ececec;
}

.bl_card3 .bl_card3_img {
  padding: 15px;
  text-align: center;
}

.bl_card3 .bl_card3_img {
  max-width: 100%;
  height: auto;
}

.bl_card3 .bl_card3_txt {
  padding: 15px;
}

.bl_card3 .bl_card3_txt + .bl_card3_img {
  padding-top: 0;
}

.bl_card3 .bl_card3_img + .bl_card3_txt {
  padding-top: 0;
}

.bl_card3 .bl_card3_txt.bl_card3_txt__center {
  text-align: center;
}

.bl_card3 .bl_card3_txt.bl_card3_txt__bold {
  font-weight: bold;
}

.bl_card3 .bl_card3_ttl {
  background: repeating-linear-gradient(-45deg, var(--secondBgColor) 0, var(--secondBgColor) 2px, #f6f6f6 2px, #f6f6f6 4px);
  color: var(--dekiruGreen);
  padding: 11px 10px 10px 15px;
  border-bottom: var(--dekiruGreen) solid 2px;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.2;
}

.bl_card3 .bl_card3_ttl.bl_card3_ttl__center {
  text-align: center;
  padding: 10px 10px 6px;
}

.bl_card3 .bl_card3_ttl.bl_card3_ttl__gray {
  border-bottom: 1px solid transparent;
  color: #555;
  padding-top: 7px;
}

/* 2カラム */
.bl_card3Unit_wrapper.bl_card3Unit_wrapper__padding {
  padding: 20px;
}

.bl_card3Unit.bl_card3Unit__col2 .bl_card3 {
  width: calc((100% + 5px) / 2 - 5px);
}

.bl_card3Unit.bl_card3Unit__col2 .bl_card3:nth-child(n + 3) {
  margin-top: 5px;
}

/* 3カラム */
.bl_card3Unit.bl_card3Unit__col3 .bl_card3 {
  width: calc((100% + 5px) / 3 - 5px);
}

.bl_card3Unit.bl_card3Unit__col3 .bl_card3:nth-child(n + 4) {
  margin-top: 5px;
}

/* 4カラム */
.bl_card3Unit.bl_card3Unit__col4 .bl_card3 {
  width: calc((100% + 5px) / 4 - 5px);
}

.bl_card3Unit.bl_card3Unit__col4 .bl_card3:nth-child(n + 5) {
  margin-top: 5px;
}

.el_hdg2 + .bl_card3Unit_wrapper {
  margin-top: 20px;
}

/* .bl_relatedCard & .bl_relatedCardUnit
----------------------------------------------- */
.bl_relatedCardUnit_wrapper + .el_hdg2 {
  margin-top: 20px;
}
.bl_relatedCardUnit_wrapper + .el_hdg3 {
  margin-top: 10px;
}
.bl_relatedCardUnit_wrapper {
  width: 100%;
  box-sizing: border-box;
}
.bl_relatedCardUnit {
  display: flex;
  padding: 20px;
  flex-wrap: wrap;
  justify-content: space-between;
  box-sizing: border-box;
}
.bl_relatedCardUnit.bl_relatedCardUnit__bgGray {
  background: var(--secondBgColor);
}
.bl_relatedCardUnit.bl_relatedCardUnit__col3 .bl_relatedCard {
  width: calc((100% + 5px) / 3 - 5px);
}

.bl_relatedCardUnit.bl_relatedCardUnit__col3 .bl_relatedCard:nth-child(n + 4) {
  margin-top: 5px;
}

.bl_relatedCard {
  position: relative;
  box-sizing: border-box;
  border: solid 2px #ececec;
  padding: 10px;
  background-color: #fff;
}

a.bl_relatedCard:link,
a.bl_relatedCard:visited,
a.bl_relatedCard:hover,
.bl_relatedCard a:link,
.bl_relatedCard a:visited,
.bl_relatedCard a:hover {
  text-decoration: none;
  color: var(--defaultTxtColor);
}
.bl_relatedCard .bl_relatedCard_img {
  text-align: center;
}
.bl_relatedCard .bl_relatedCard_img img {
  height: auto;
  max-width: 100%;
}
.bl_relatedCard .bl_relatedCard_img .bl_relatedCard_img_inner {
  position: relative;
  max-width: 215px;
  margin: 0 auto;
}

.bl_relatedCard .bl_relatedCard_img .bl_relatedCard_img_price {
  font-size:14px;
  color:var(--emphasisRed);
  font-weight:bold;
  position: absolute;
  bottom: 5px;
  right: 10px;
  text-shadow: 2px 2px 0 rgba(255,255,255,8), -2px -2px 0 rgba(255,255,255,8), -2px 2px 0 rgba(255,255,255,8), 2px -2px 0 rgba(255,255,255,8), 0px 2px 0 rgba(255,255,255,8), 0-2px 0 rgba(255,255,255,8), -2px 0 0 rgba(255,255,255,8), 2px 0 0 rgba(255,255,255,8);
}
.bl_relatedCard .bl_relatedCard_img .bl_relatedCard_img_price  [data-item-id]{
  display:inline;
  font-size:20px;
}

.bl_relatedCard .bl_relatedCard_img + .bl_relatedCard_txt {
  margin-top: 10px;
}
.bl_relatedCard .bl_relatedCard_txt {
  font-size: 12px;
}
.bl_relatedCard .bl_relatedCard_ttl {
  font-weight: bold;
  font-size: 14px;
}
.bl_relatedCard::after {
  content: "";
  width: 14px;
  height: 14px;
  position: absolute;
  right: 3px;
  bottom: 3px;
  background: linear-gradient(-45deg, var(--dekiruGreen) 0, var(--dekiruGreen) 50%, transparent 50%, transparent 100%);
}

.el_hdg3 + .bl_relatedCardUnit {
  margin-top: 0;
}

.bl_panel.bl_panel__noBorder + .bl_relatedCardUnit_wrapper {
  margin-top: 0;
}

/* .bl_mainVpanel
----------------------------------------------- */
.bl_mainVpanel.bl_mainVpanel__price .el_hdg {
  text-align: center;
  font-size: 20px;
}

.bl_mainVpanel.bl_mainVpanel__price .el_hdg .el_hdg_num {
  display: inline-block;
  line-height: 1;
  margin-left: 2px;
}

.bl_mainVpanel.bl_mainVpanel__price .el_hdg .el_hdg_num::before,
.bl_mainVpanel.bl_mainVpanel__price .el_hdg .el_hdg_num::after {
  font-weight: normal;
  font-size: 30px;
}

.bl_mainVpanel.bl_mainVpanel__price .el_hdg .el_hdg_num::before {
  content: "\FF3C";
}

.bl_mainVpanel.bl_mainVpanel__price .el_hdg .el_hdg_num::after {
  content: "\FF0F";
}

.bl_mainVpanel.bl_mainVpanel__price .el_hdg .el_hdg_num div[data-item-id] {
  font-size: 40px;
}

/* .bl_productMainVpanel
----------------------------------------------- */
.bl_productMainVpanel .bl_productMainVpanel_txt {
  background: linear-gradient(var(--dekiruGreen), #31a600, var(--dekiruGreen));
  box-sizing: border-box;
  color: #fff;
  display: inline-block;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.2;
  padding: 13px 10px 10px 20px;
  text-align: center;
  text-shadow: #2e8e05 2px 2px 2px;
  width: 100%;
}

.bl_productMainVpanel .bl_productMainVpanel_txt .bl_productMainVpanel_txt_enhance {
  display: inline;
  font-weight: bold;
  font-size: 38px;
  line-height: 1;
  margin-left: 2px;
}

.bl_productMainVpanel.bl_productMainVpanel__price .el_hdg {
  text-align: center;
  font-size: 20px;
}

.bl_productMainVpanel.bl_productMainVpanel__price .el_hdg .el_hdg_num {
  display: inline-block;
  line-height: 1;
  margin-left: 2px;
}

.bl_productMainVpanel.bl_productMainVpanel__price .el_hdg .el_hdg_num::before,
.bl_productMainVpanel.bl_productMainVpanel__price .el_hdg .el_hdg_num::after {
  font-weight: normal;
  font-size: 30px;
}

.bl_productMainVpanel.bl_productMainVpanel__price .el_hdg .el_hdg_num::before {
  content: "\FF3C";
}

.bl_productMainVpanel.bl_productMainVpanel__price .el_hdg .el_hdg_num::after {
  content: "\FF0F";
}

.bl_productMainVpanel.bl_productMainVpanel__price .el_hdg .el_hdg_num div[data-item-id] {
  font-size: 40px;
}

/* .bl_tocList
----------------------------------------------- */
.bl_tocList {
  padding: 20px;
  background: #f9f9f9;
}

.bl_tocList .bl_tocList_inner {
  background: #fff;
  padding: 20px;
  border: 1px solid #ececec;
}

.bl_tocList .bl_tocList_ttl {
  border-left: 5px solid var(--dekiruGreen);
  margin: 0 0 10px;
  font-size: 18px;
  padding-left: 10px;
  background: #f4f4f4;
  color: #333;
  display: inline-block;
  padding: 2px 10px 0;
}

.bl_tocList .bl_tocList_item {
  padding-left: 20px;
  margin: 0;
}

.bl_tocList .bl_tocList_item a {
  color: #333;
  text-decoration: underline;
}

.bl_tocList .bl_tocList_item > li {
  list-style-type: decimal;
  display: list-item;
  font-weight: bold;
  line-height: 1.6;
  margin-top: 10px;
}

.bl_tocList .bl_tocList_item > li > a {
  font-weight: bold;
}

.bl_tocList .bl_tocList_item > li > ul {
  margin: 10px 0 15px;
}

.bl_tocList .bl_tocList_item > li > ul > li {
  font-weight: normal;
  font-size: 14px;
  line-height: 1.4;
  position: relative;
  padding-left: 38px;
}
.bl_tocList .bl_tocList_item > li > ul > li:nth-of-type(n + 2) {
  margin-top: 10px;
}

.bl_tocList .bl_tocList_item > li > ul > li > span {
  position: absolute;
  display: inline-block;
  padding: 0 8px;
  color: #309a03;
  font-size: 16px;
  background: #f4f4f4;
  margin-right: 10px;
  left: 0;
}

.bl_tocList .bl_tocList_item > li > ul > li > span::before {
  content: "";
  position: absolute;
  top: 100%;
  left: 100%;
  margin-top: -17px;
  border: 6px solid transparent;
  border-left: 6px solid #f4f4f4;
}

.bl_tocList .bl_tocList_item > li > ul > li > ul {
  margin: 5px 0;
  margin-left: 20px;
}

.bl_tocList .bl_tocList_item > li > ul > li > ul > li {
  list-style-type: "・ ";
  display: list-item;
  margin-top: 7px;
}

/* .bl_ancList
----------------------------------------------- */
.bl_ancList {
  display: flex;
  justify-content: center;
  margin: 20px 0 30px;
  max-width: 100%;
  flex-wrap: wrap;
}
.bl_ancList > li {
    width: calc((100% + 10px) / 4 - 10px);
    margin-left: 10px;
}
.bl_ancList > li:nth-child(4n + 1) {
  margin-left: 0;

}

.bl_ancList > li:nth-child(2n) {
  margin-left: 10px;
}
.bl_ancList.bl_ancList__noIcon > li > a  {
  padding:5px 25px 5px 5px;
}

.bl_ancList.bl_ancList__col2 > li {
  width:calc((100% + 13px ) / 2 - 13px);

}
.bl_ancList.bl_ancList__col2 > li > a {
  width:100%;

}

.bl_ancList > li > a {
  border: 1px solid var(--dekiruGreen);
  color: var(--dekiruGreen);
  line-height: 1.2;
  width: 100%;
  height: 100%;
  min-height: 40px;
  padding: 5px 40px;
  box-sizing: border-box;
  text-align: center;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.bl_ancList > li > a:hover {
  text-decoration: none;
  background: #eef8ea;
}

.bl_ancList > li > a::before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 5px;
  width: 30px;
  height: 30px;
}

.bl_ancList > li > a::after {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border: 2px solid transparent;
  border-bottom: 3px solid #aaa;
  border-right: 3px solid #aaa;
  position: absolute;
  top: calc(50% - 10px);
  right: 10px;
  transform: rotateZ(45deg);
}

/* .bl_tab & bl_tabLink
----------------------------------------------- */
.bl_tabUnit_wrapper {
  padding: 20px;
}

.bl_tabUnit_wrapper.bl_tabUnit_wrapper__noPadding {
  padding: 0;
}

.bl_tabUnit {
  display: flex;
  flex-wrap: wrap;
}

.bl_tabLinkList {
  display: flex;
  width: 100%;
}

.bl_tabLinkList > li {
  flex: 1;
  position: relative;
}

.bl_tabLabel,
.bl_tabLinkBtn {
  color: #3e692b;
  background: #dfeadc;
  text-align: center;
  padding: 16px 0.5em;
  order: -1;
  position: relative;
  z-index: 1;
  cursor: pointer;
  flex: 1;
  font-size: 18px;
  word-break: break-all;
  display: flex;
  box-sizing: border-box;
  justify-content: center;
  align-items: center;
}

.bl_tabLinkBtn {
  height: 100%;
  text-decoration: none;
}

.bl_tabLinkBtn:hover {
  text-decoration: none;
}

.bl_tabLabel > * {
  font-weight: normal;
}

.bl_tabLinkBtn:link,
.bl_tabLinkBtn:active,
.bl_tabLinkBtn:visited {
  color: #3e692b;
}

.bl_tabLabel:not(:last-of-type),
.bl_tabLinkList > li:not(:last-of-type) {
  margin-right: 5px;
}

.bl_tabLabel::after,
.bl_tabLinkList > li::after {
  content: "";
  width: calc(100% + 5px);
  height: 2px;
  background: var(--dekiruGreen);
  display: block;
  order: -1;
  left: 0;
  position: absolute;
  bottom: 0;
  z-index: 1;
}

.bl_tabLabel:last-of-type::after,
.bl_tabLinkList > li:last-of-type::after {
  width: 100%;
}

.bl_tabUnit.bl_tabUnit__sticky .bl_tabLabel {
  position: sticky;
  top: 61px;
}

.bl_tabContent {
  width: 100%;
  height: 0;
  overflow: hidden;
  opacity: 0;
}

.bl_tabUnit.bl_tabUnit__noBorder > .bl_tabSwitch:checked + .bl_tabLabel + .bl_tabContent {
  border: none;
}

.bl_tabUnit.bl_tabUnit__noPadding > .bl_tabSwitch:checked + .bl_tabLabel + .bl_tabContent {
  padding: 0;
}

.bl_tabSwitch:checked + .bl_tabLabel,
.bl_tabLinkBtn.bl_tabLinkBtn__active {
  background: var(--dekiruGreen);
  color: #fff;
  font-weight: bold;
}

.bl_tabLinkBtn.bl_tabLinkBtn__active {
  cursor: default;
}

.bl_tabLinkBtn.bl_tabLinkBtn.bl_tabLinkBtn__active:link,
.bl_tabLinkBtn.bl_tabLinkBtn.bl_tabLinkBtn__active:active,
.bl_tabLinkBtn.bl_tabLinkBtn.bl_tabLinkBtn__active:visited {
  color: #fff;
}

.bl_tabSwitch:checked + .bl_tabLabel > * {
  font-weight: bold;
}

.bl_tabSwitch:checked + .bl_tabLabel + .bl_tabContent {
  height: auto;
  overflow: auto;
  padding: 20px;
  opacity: 1;
  transition: 0.5s opacity;
  border: var(--defaultBorder);
  border-top: none;
}

.bl_tabLinkContent {
  border: var(--defaultBorder);
  border-top: none;
  padding: 20px;
}

.bl_tabLinkContent.bl_tabLinkContent__noBorder {
  border: none;
}

.bl_tabLinkContent.bl_tabLinkContent__noPadding {
  padding: 0;
}

.bl_tabSwitch {
  display: none;
}
.bl_tipsPanel + .bl_tabUnit{
  margin-top: 30px;
}
.bl_panel_wrapper + .bl_tabUnit,
.bl_panel:not(.bl_panel__noBorder) + .bl_tabUnit,
.el_hdg2 + .bl_tabUnit,
.el_hdg3 + .bl_tabUnit,
.el_hdg3 + .bl_tabUnit_wrapper.bl_tabUnit_wrapper__noPadding,
.bl_cardUnit + .bl_tabUnit,
.bl_cardUnit_wrapper + .bl_tabUnit,
.el_hdg2 + .bl_tabLinkUnit,
.bl_cardUnit + .bl_tabLinkUnit,
.bl_cardUnit_wrapper + .bl_tabLinkUnit {
  margin-top: 20px;
}

.bl_tabLinkUnit + .bl_tabLinkUnit,
.bl_panel_wrapper + .bl_tabLinkUnit {
  margin-top: 40px;
}

.bl_panel.bl_panel__noBorder + .bl_tabUnit_wrapper {
  padding-top: 0;
}

.bl_tabLinkContent + .bl_tabLinkList {
  margin-top: 30px;
}

.el_hdg5 + .bl_tabUnit {
  margin-top: 10px;
}

/* .bl_stripeList
----------------------------------------------- */
.bl_stripeList_wrapper.bl_stripeList_wrapper__padding {
  padding: 20px;
}

.bl_stripeList_wrapper.bl_stripeList_wrapper__border {
  border: var(--defaultBorder);
}

.bl_stripeList {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  margin-top: 0;
  margin-bottom: 0;
}

.bl_stripeList.bl_stripeList__dl .bl_stripeList_row {
  display: flex;
}

.bl_stripeList .bl_stripeList_row td {
  padding: 5px 5px 5px 20px;
}

.bl_stripeList .bl_stripeList_row:nth-child(even) {
  background-color: var(--secondBgColor);
}

.bl_stripeList .bl_stripeList_row .bl_stripeList_term {
  font-weight: bold;
  padding: 5px 40px 5px 20px;
  min-width: 2em;
}

.bl_stripeList .bl_stripeList_row .bl_stripeList_dis {
  padding: 5px;
  margin: 0;
  flex: 1;
}

.el_hdg5 + .bl_stripeList {
  margin-top: 5px;
}

.bl_modalFrame {
  box-sizing: border-box;
  height: fit-content;
  max-width: 950px;
  padding: 20px;
  background: #fff;
  z-index: 20000;
  text-align: left !important;
  max-height: calc(100% - 100px);
  padding: 30px;
  overflow: auto;
  box-sizing: border-box;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.bl_modalFrame ~ .lity-content::after {
  display: none;
}

/* .bl_linkCard
----------------------------------------------- */
.bl_linkCardUnit {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.bl_linkCardUnit .bl_linkCard {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  border: var(--defaultBorder);
  padding: 10px;
  width: 100%;
  box-sizing: border-box;
}

.bl_linkCardUnit.bl_linkCardUnit__col2 .bl_linkCard {
  width: calc((100% + 10px) / 2 - 10px);
}
.bl_linkCardUnit.bl_linkCardUnit__col2 .bl_linkCard:nth-child(n + 3) {
  margin-top: 10px;
}
.bl_linkCardUnit a.bl_linkCard:hover {
  border: solid 2px var(--dekiruGreen);
  text-decoration: none;
}
.bl_linkCardUnit .bl_linkCard .bl_linkCard_txt {
  padding-left: 20px;
  color: #555;
  font-size: 15px;
  font-weight: bold;
  display: flex;
  align-items: center;
  flex-grow: 1;
}
.bl_linkCardUnit .bl_linkCard .bl_linkCard_txt::after {
  content: "";
  width: 8px;
  min-width: 8px;
  height: 8px;
  border-right: 2px solid #319b03;
  border-top: 2px solid #319b03;
  margin-top: -4px;
  margin-right: 8px;
  margin-left: auto;
  z-index: 2;
  transform: rotate(45deg);
}

.bl_linkCardUnit_wrapper {
  padding: 20px;
}

.bl_linkCardUnit_wrapper + .el_hdg3 {
  margin-top: 10px;
}

/* .bl_questionPanel
----------------------------------------------- */
  .bl_questionPanel {
    position: relative;
    border-bottom: var(--defaultBorder);
  }

  .bl_questionPanel:first-child {
      border-top: var(--defaultBorder);
  }

  .bl_questionPanel input {
    display: none;
  }

  .bl_questionPanel .bl_questionPanel_ttl {
    font-size: 16px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    box-sizing: border-box;
    padding:10px 20px;
  }

  .bl_questionPanel .bl_questionPanel_ttl .bl_questionPanel_ttl_inner {
    max-width: calc(100% - 40px);
  }

  .bl_questionPanel .bl_questionPanel_ttl .bl_questionPanel_ttl_inner::before {
    content: "Q.";
    color: var(--dekiruGreen);
    font-size: 35px;
    font-weight: bold;
    margin-right: 20px;
  }

  .bl_questionPanel .bl_questionPanel_ttl:after {
    content: "";
    border: none;
    border-right: solid 4px #8b8b8b;
    border-bottom: solid 4px #9a9a9a;
    width: 20px;
    height: 20px;
    transform: rotate(45deg);
    box-sizing: border-box;
  }
  .bl_questionPanel input:checked ~ .bl_questionPanel_ttl {
    padding-right:18px;
  }

  .bl_questionPanel input:checked ~ .bl_questionPanel_ttl::after {
    border-right: none;
    border-bottom: solid 4px #9a9a9a;
    width: 25px;
    height: 0;
    transform: rotate(0deg);
  }

  .bl_questionPanel .bl_questionPanel_answer {
    display: flex;
    box-sizing: border-box;
    overflow: hidden;
    height: 0px;
    background-color: #FDFDFD;
    transition: padding-top 0.2s;
  }

  .bl_questionPanel input:checked ~ .bl_questionPanel_answer {
    height: auto;
    transition: padding-bottom 0.2s;
    padding: 20px 50px 20px 20px;
  }

  .bl_questionPanel .bl_questionPanel_answer::before {
    content: "A.";
    color: var(--emphasisRed);
    font-size: 35px;
    font-weight: bold;
    margin-right: 20px;
  }

.el_hdg2 + .bl_questionPanelUnit,
.el_hdg3 + .bl_questionPanelUnit{
  margin-top: 20px;  
}





/* ----------------------------------------------------------------
    Element Modules
    接頭辞: .el_*
----------------------------------------------------------------- */
/* .el_hdg
----------------------------------------------- */
.el_hdg {
  background: linear-gradient(var(--dekiruGreen), #31a600, var(--dekiruGreen));
  text-shadow: #2e8e05 2px 2px 2px;
  font-size: 24px;
  line-height: 1.2;
  color: #fff;
  padding: 13px 10px 10px 20px;
  font-weight: bold;
  width: 100%;
  display: inline-block;
  box-sizing: border-box;
}

/* .el_hdg2 （見出しレベル2）
----------------------------------------------- */
.el_hdg2 {
  font-size: 24px;
  text-align: left;
  line-height: 1.2;
  color: var(--dekiruGreen);
  padding: 19px 10px 14px 20px;
  font-weight: bold;
  background: #d6ebcd;
  background: repeating-linear-gradient(-45deg, #d6ebcd 0, #d6ebcd 2px, #d9eec0 2px, #d9eec0 4px);
}

.el_hdg2 sup {
  font-size: 14px;
}

.bl_tabLinkList + .bl_tabLinkContent.bl_tabLinkContent__noPadding .el_hdg2:first-child,
.bl_tocList + .el_hdg2,
.bl_panel.bl_panel__noBorder + .el_hdg2,
.bl_mediaPanel.bl_mediaPanel__noBorder + .el_hdg2,
.bl_cardUnit.bl_cardUnit__padding + .el_hdg2,
.bl_card3Unit.bl_card3Unit__padding + .el_hdg2,
.bl_tabUnit_wrapper:not(.bl_tabUnit_wrapper__noPadding) + .el_hdg2 {
  margin-top: 20px;
}

.bl_mainVpanel + .el_hdg2,
.bl_panel_wrapper + .el_hdg2,
.bl_mediaPanel_wrapper + .el_hdg2,
.bl_tipsPanel_wrapper + .el_hdg2,
.bl_card2Unit_wrapper + .el_hdg2,
.bl_card2Unit + .el_hdg2,
.bl_card3Unit_wrapper + .el_hdg2,
.bl_card3Unit + .el_hdg2,
.el_btn2_wrapper + .el_hdg2,
.bl_cardUnit_wrapper + .el_hdg2,
.bl_tabUnit + .el_hdg2,
.bl_tabLinkUnit + .el_hdg2,
.el_annotation_wrapper + .el_hdg2,
.bl_tabUnit.bl_tabUnit__noPadding .bl_tabContent > .el_hdg2:first-child,
.bl_questionPanelUnit + .el_hdg2,
.el_annotation + .el_hdg2{
  margin-top: 40px;  
}

/* .el_hdg3 （見出しレベル3）
----------------------------------------------- */
.el_hdg3 {
  font-size: 20px;
  background: repeating-linear-gradient(-45deg, var(--secondBgColor) 0, var(--secondBgColor) 2px, #f6f6f6 2px, #f6f6f6 4px);
  color: var(--dekiruGreen);
  line-height: 1.2;
  padding: 13px 10px 9px 20px;
  border: 1px #ddd solid;
  border-bottom: var(--dekiruGreen) solid 2px;
}

.el_hdg3.el_hdg3__withBadge {
  display: flex;
  align-items: center;
}

.el_hdg3_badge {
  color: #fff;
  background-color: #00b050;
  font-weight: bold;
  margin-right: 10px;
  padding: 1px 10px;
  border-radius: 3px;
  line-height: 2;
  font-size: 15px;
}

.el_hdg3.el_hdg3__withBadge .el_hdg3_inner{
  flex:1;
}




.bl_card2Unit + .el_hdg3,
.bl_card2Unit_wrapper + .el_hdg3,
.el_btn2_wrapper + .el_hdg3,
.bl_panel_wrapper + .el_hdg3,
.bl_panel + .el_hdg3,
.bl_card3Unit_wrapper + .el_hdg3 {
  margin-top: 30px;
}

.bl_costPanel + .el_hdg3,
.bl_mediaPanel + .el_hdg3,
.bl_questionPanelUnit + .el_hdg3{
  margin-top: 30px;  
}

.el_hdg2 + .el_hdg3 {
  margin-top: 20px;
}

.bl_tabUnit_wrapper + .el_hdg3,
.bl_panel.bl_panel__noBorder + .el_hdg3,
.bl_mediaPanel.bl_mediaPanel__noBorder + .el_hdg3,
.bl_tabUnit.bl_tabUnit__noBorder:not(.bl_tabUnit__noPadding) + .el_hdg3  {
  margin-top: 10px;
}

.bl_panel.bl_panel__noBorder + .bl_mediaPanel.bl_mediaPanel__noBorder {
  padding-top: 0;
}

/* .el_hdg4 （見出しレベル4）
----------------------------------------------- */
.el_hdg4 {
  font-weight: bold;
  font-size: 16px;
  line-height: 1.2;
  color: #555;
  background: var(--secondBgColor);
  background: repeating-linear-gradient(-45deg, var(--secondBgColor) 0, var(--secondBgColor) 2px, #f6f6f6 2px, #f6f6f6 4px);
  padding: 9px 10px 6px 15px;
  border: var(--defaultBorder);
  box-sizing: border-box;
}

.el_hdg4.el_hdg4__withBadge {
  display: flex;
  align-items: center;
}

.el_hdg4_badge {
  color: #fff;
  background-color: #00b050;
  font-weight: bold;
  margin-right: 10px;
  padding: 1px 10px;
  border-radius: 3px;
  line-height: 2;
  font-size: 15px;
}

.el_hdg4.el_hdg4__withBadge .el_hdg4_inner{
  flex:1;
}

.bl_mediaPanel.bl_mediaPanel__noBorder.bl_mediaPanel__noPadding +.el_hdg4,
.bl_panel_wrapper + .bl_panel_wrapper > .el_hdg3:first-child {
  margin-top: 30px;
}
.bl_tipsPanel + .el_hdg4,
.bl_panel + .el_hdg4,
.bl_mediaPanel + .el_hdg4,
.el_hdg3 + .el_hdg4,
.el_hdg5 + .el_hdg4,
.el_checkList + .el_hdg4,
.el_btn2_wrapper + .el_hdg4,
.bl_mediaPanel.bl_mediaPanel__noPadding + .el_hdg4,
.bl_tabLinkList + .bl_tabLinkContent.bl_tabLinkContent__noPadding .el_hdg4:first-child,
p + .el_hdg4 {
  margin-top: 20px;
}

.bl_mediaPanel_wrapper.bl_mediaPanel_wrapper__padding + .el_hdg4,
.el_hdg4 + p,
.el_hdg4 + figure {
  margin-top: 10px;
}

.bl_panel.bl_panel__noBorder + .el_hdg4 {
  margin-top: 0;
}


/* .el_hdg5 （見出しレベル5）
----------------------------------------------- */
.el_hdg5 {
  box-sizing: border-box;
  border-left: 8px solid var(--dekiruGreen);
  font-size: 16px;
  font-weight: bold;
  padding: 7px 10px 5px 10px;
  line-height: 1.2;
}

.el_hdg5.el_hdg5__noBorder {
  border-left: 0;
  padding-left: 0;
}

.el_hdg3 + .el_hdg5 {
  margin-top: 20px;
}

.bl_panel + .el_hdg5,
.bl_mediaPanel + .el_hdg5,
.bl_stripeList + .el_hdg5,
.bl_tabUnit_wrapper + .el_hdg5,
.bl_tabUnit:not(.bl_tabUnit.bl_tabUnit__noBorder) + .el_hdg5,
.bl_tipsPanel_wrapper + .el_hdg5,
.el_annotation + .el_hdg5,
.el_btn2_wrapper + .el_hdg5 {
  margin-top: 20px;
}

p + .el_hdg5,
img + .el_hdg5 {
  margin-top: 20px;
}


/* .el_hdg6 （見出しレベル6）
----------------------------------------------- */
.el_hdg6 {
  font-size: 15px;
  font-weight: bold;
}

p + .el_hdg6 {
  margin-top: 20px;
}

.el_hdg6 + .bl_panel_wrapper {
  margin-top: 10px;
}


/* .el_hdg7 （見出しレベル7）
----------------------------------------------- */
.el_hdg7 {
  position: relative;
  border-bottom: 3px solid #ececec;
  font-size: 15px;
  padding-bottom: 3px;
  font-weight: bold;
}

.el_hdg7.el_hdg7__pcNone{
display:none;
}

.el_hdg7::after {
  position: absolute;
  content: "";
  border-bottom: 3px solid #2ca559;
  bottom: -3px;
  left: 0;
  width: 6em;
}

p + .el_hdg7 {
  margin-top: 20px;
}

.el_hdg4 + .el_hdg7,
.el_hdg7 + .bl_mediaPanel {
  margin-top: 15px;
}

.el_hdg7 + .bl_panel.bl_panel.bl_panel__noPadding,
.el_hdg7 + .bl_panel_wrapper {
  margin-top: 10px;
}

/* 暫定 */
.el_hdg4.el_hdg4__withBadge + .el_hdg7.el_hdg7__pcNone + .bl_mediaPanel {
  margin-top: 20px;
}
/* 暫定 */
.bl_mediaPanel + .el_hdg7.el_hdg7__pcNone + .bl_mediaPanel {
  margin-top: 20px;
}
/* 暫定 */
.el_hdg7.el_hdg7__pcNone + .bl_mediaPanel + .el_hdg4.el_hdg4__withBadge{
  margin-top: 30px;
}

/*  */


/* .el_btn （ボタン タイプ1）
----------------------------------------------- */
.el_btn {
  display: inline-block;
  padding: 20px 5px;
  border-radius: 40px;
  text-decoration: none;
  color: #fff !important;
  background-image: linear-gradient(45deg, #f25c05 0%, #ff985c 100%);
  transition: 0.4s;
  text-align: center;
  font-size: 24px;
  box-shadow: 0 4px 0 0 rgba(0, 0, 0, 0.11);
  width: 100%;
  box-sizing: border-box;
  line-height: 1.75;
}

.el_btn:hover {
  background-image: linear-gradient(45deg, #ffc107 0%, #f76a35 100%);
}

.el_btn::after {
  content: "\020\03e\020";
  white-space: pre;
}

.el_btn_wrapper {
  padding: 0 20px;
}

.bl_panel + .el_btn_wrapper,
.bl_mediaPanel_wrapper + .el_btn_wrapper {
  margin-top: 20px;
}

.bl_panel.bl_panel__banner + .el_btn {
  margin-top: 20px;
}

/* .el_btn2 （ボタン タイプ2）
----------------------------------------------- */
.el_btn2_wrapper {
  padding: 0 20px;
}
.el_btn2_wrapper.hp_spNone {
  display: block;
}

.bl_tipsPanel_wrapper + .el_btn2_wrapper,
.bl_costPanel_list + .el_btn2_wrapper,
.bl_costPanel_subTxt + .el_btn2_wrapper,
.bl_costPanel_subTxt + .el_btn2_wrapper + .el_btn2_wrapper,
.bl_tabUnit + .el_btn2_wrapper,
.bl_tabUnit + .el_btn2,
.bl_tabUnit + .el_btn2_wrapper,
.el_annotation + .el_btn2_wrapper,
.bl_panel.bl_panel.bl_panel__noBorder + .el_btn2_wrapper {
  margin-top: 20px;
}

.el_btn2,
.el_btn2:link,
.el_btn2:visited {
  color: var(--dekiruGreen);
  border: solid 1px var(--dekiruGreen);
  display: block;
  background-color: #fff;
  border-radius: 50px;
  padding: 10px;
  text-align: center;
  font-size: 16px;
}

.el_btn2:hover {
  background-color: var(--dekiruGreen);
  color: #fff;
  text-decoration: none;
}

.el_btn2::after {
  content: "\020\03e\020";
  white-space: pre;
}





.el_btn2[target="_blank"]::after {
  content: "\020\03e\020" url(/common/img/icon/etc/target_blank.gif);
  display: inline-block;
  white-space: pre;
}

figure + .el_btn2 {
  margin-top: 20px;
}

p + .el_btn2,
.bl_mediaPanel.bl_mediaPanel__noPadding + .el_btn2 {
  margin-top: 10px;
}

/* .el_btn3 （ボタン タイプ3）
----------------------------------------------- */
.el_btn3_wrapper {
  padding: 0 20px;
}

.el_btn3 {
  background: #ffffff;
  padding: 16px;
  border: solid 1px #ccc;
  font-weight: bold;
  text-align: center;
  display: inline-block;
  box-sizing: border-box;
  width: 100%;
  color: var(--defaultTxtColor);
}

.el_btn3::after {
  content: "\020\03e\020";
  white-space: pre;
}

.el_btn3[target="_blank"]::after {
  content: "\020\03e\020" url(/common/img/icon/etc/target_blank.gif);
  display: inline-block;
  white-space: pre;
}

.el_btn3,
.el_btn3:link,
.el_btn3:visited {
  color: var(--defaultTxtColor);
}

.el_btn3:hover {
  background-color: #fff;
  color: var(--defaultTxtColor);
  text-decoration: none;
  background-image: radial-gradient(#f0f0f0 50%, transparent 50%), radial-gradient(#f0f0f0 50%, transparent 50%);
  background-size: 4px 4px;
  background-position: 0 0, 2px 2px;
}

/* .el_btn4 （ボタン タイプ4）
----------------------------------------------- */
.el_btn4_wrapper {
  padding: 0 20px;
}

.el_btn4,
.el_btn4:link,
.el_btn4:visited {
  color: var(--dekiruGreen);
  border: solid 1px var(--dekiruGreen);
  display: inline-block;
  background-color: #fff;
  border-radius: 3px;
  text-align: center;
  box-sizing: border-box;
  font-size: 14px;
  padding: 5px 20px;
}

.el_btn4.el_btn4__minW200 {
  min-width: 200px;
}

.el_btn4.el_btn4__w100per {
  width: 100%;
}

.el_btn4:hover {
  background-color: var(--dekiruGreen);
  color: #fff;
  text-decoration: none;
}

.el_btn4::after {
  content: "\020\03e\020";
  white-space: pre;
}

.el_btn4.el_btn4__anchor::after {
  content: "\020" url(/common/img/icon/etc/icon_anchor.png);
}
.el_btn4.el_btn4__anchor:hover::after {
  content: "\020" url(/common/img/icon/etc/icon_anchor__white.png);
}

.el_btn4[target="_blank"]::after {
  content: "\020\03e\020" url(/common/img/icon/etc/target_blank.gif);
  display: inline-block;
  white-space: pre;
}

/* .el_btn5 （ボタン タイプ5）
----------------------------------------------- */
.el_btn5,
.el_btn5:link,
.el_btn5:visited {
  box-sizing: border-box;
  text-align: center;
  background-color: var(--dekiruGreen);
  display: inline-block;
  color: #fff;
  text-decoration: none;
  font-weight: bold;
  border-radius: 3px;
  padding: 10px;
}

.el_btn5.el_btn5__minW140 {
  min-width: 140px;
}

.el_btn5.el_btn5__w100per {
  width: 100%;
}

.el_btn5:hover {
  opacity: 0.8;
}

.el_btn5::after {
  content: "\020\03e\020";
  white-space: pre;
}

.el_btn5[target="_blank"]::after {
  content: "\020\03e\020" url(/common/img/icon/etc/target_blank.gif);
  display: inline-block;
  white-space: pre;
}

/* .el_estimateBtn （見積りボタン）
----------------------------------------------- */
.el_estimateBtn {
  -webkit-appearance: none;
  box-sizing: border-box;
  background: var(--estimateOrange);
  height: initial;
  border: none;
  padding: 10px 5px;
  border-radius: 3px;
  text-indent: 0;
  color: #fff;
  font-weight: bold;
  font-size: 14px;
  box-shadow: none;
  display: block;
  text-align: center;
}

a.el_estimateBtn,
.el_estimateBtn:link,
.el_estimateBtn:visited,
.el_estimateBtn:active {
  color: #fff;
}
.el_estimateBtn:hover {
  opacity: .8;
  text-decoration: none;
}

.el_estimateBtn::after{
  content: "\020\03e\020";
  white-space: pre;
}
.el_estimateBtn.el_estimateBtn__w100per{
  width: 100%;
}

.el_estimateBtn.el_estimateBtn__withDataItem {
  -webkit-appearance: unset;
  background: unset;
  height: unset;
  border: none;
  padding: unset;
}
.el_estimateBtn.el_estimateBtn__withDataItem::after {
  display: none;
}

.el_estimateBtn.el_estimateBtn__withDataItem form.cart_type1 .estimate-button button.linkToEstimate {
  -webkit-appearance: none;
  box-sizing: border-box;
  background: var(--estimateOrange);
  height: initial;
  border: none;
  padding: 10px 5px;
  border-radius: 3px;
  text-indent: 0;
  color: #fff;
  font-weight: bold;
  font-size: 14px;
  box-shadow: none;
}
.el_estimateBtn.el_estimateBtn__withDataItem form.cart_type1 .estimate-button button.linkToEstimate:hover{
  opacity: .8;
}

.el_estimateBtn.el_estimateBtn__withDataItem form.cart_type1 .estimate-button button.linkToEstimate::after {
  content: "\020\03e\020";
  white-space: pre;
}

.el_estimateBtn.el_estimateBtn__w100per form.cart_type1 .estimate-button button.linkToEstimate {
  width: 100%;
}

[class^="el_btn"] + .el_estimateBtn {
  margin-top: 10px;
}


/* .el_pankuzu （パンくず）
----------------------------------------------- */
.el_pankuzu_wrapper {
  width: 100%;
  overflow: auto;
  padding: 0;
  height: 23px;
}

.el_pankuzu_wrapper::-webkit-scrollbar {
  display: none;
}

.el_pankuzu {
  font-size: 12px;
  white-space: nowrap;
}

.el_pankuzu li {
  display: inline;
}

.el_pankuzu li[itemprop="itemListElement"]:not(:last-child):after {
  content: "\020\03e\020";
  white-space: pre;
}

/* .el_annotation （注釈テキスト）
----------------------------------------------- */
.el_annotation_wrapper {
  padding-left: 20px;
  padding-right: 20px;
}

.el_annotation {
  display: inline-block;
  width: 100%;
  text-align: right;
  box-sizing: border-box;
}

.el_annotation.el_annotation__mT {
  margin-top: 1em;
}

.el_annotation.el_annotation__txtL {
  text-align: left;
}

.el_annotation.el_annotation__lGray {
  color: #999;
}

.el_annotation.el_annotation__small {
  font-size: smaller;
}

.el_annotation.el_annotation__black,
.el_annotation.el_annotation__black:link,
.el_annotation.el_annotation__black:visited,
.el_annotation.el_annotation__black:active {
  color: var(--defaultTxtColor);
  text-decoration: underline;
}

a.el_annotation::after {
  content: "\020\03e\020";
  white-space: pre;
}

a.el_annotation[target="_blank"]::after {
  content: "\020\03e\020" url(/common/img/icon/etc/target_blank.gif);
  display: inline-block;
  white-space: pre;
}

.bl_stripeList + .el_annotation {
  margin-top: 5px;
}
.bl_questionPanel .bl_questionPanel_answer .bl_questionPanel_answer_inner p + .el_annotation{
  margin-top:1em;
}
.bl_questionPanel .bl_questionPanel_answer .bl_questionPanel_answer_inner .el_annotation + .el_annotation{
  margin-top:0.5em;
}

.el_annotation + p {
  margin-top: 20px;
}

/* .el_youtube （youtube サムネイル画像用）
----------------------------------------------- */
.el_youtube {
  position: relative;
  width: 100%;
}

.el_youtube img {
  max-width: 100%;
}

.el_youtube::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-image: url(/common/img/thumbnail/youtube/thum_overlay.png);
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0.8;
  image-rendering: -webkit-optimize-contrast;
}

.el_youtube:hover::after {
  opacity: 0.7;
}

/* .el_mark （マーカーライン）
----------------------------------------------- */
.el_mark {
  background: linear-gradient(transparent 0%, transparent 50%, rgba(var(--emphasisYellow-rgb), 1) 50%, rgba(var(--emphasisYellow-rgb), 1) 100%);
}

.el_mark.el_mark__bold {
  font-weight: bold;
}

.el_mark.el_mark__f16 {
  font-size: 16px;
}

.el_mark.el_mark__f20 {
  font-size: 20px;
}

/* .el_emphasis
----------------------------------------------- */
.el_emphasis {
  color: var(--emphasisRed);
}

.el_emphasis.el_emphasis__bold {
  font-weight: bold;
}

/* .el_label
----------------------------------------------- */
.el_label {
  background: var(--dekiruGreen);
  color: #fff;
  padding: 5px 8px;
  margin-right: 10px;
  border-radius: 4px;
  margin-bottom: 3px;
  font-weight: bold;
  display: inline-block;
}

/* .el_checkList
----------------------------------------------- */
.el_checkList_wrapper {
  padding: 20px;
}

.el_checkList > li {
  font-size: 15px;
  font-weight: bold;
  position: relative;
  padding-left: 30px;
  margin-top: 8px;
  line-height: 1.5;
}

.el_checkList.el_checkList__small > li {
  font-weight: normal;
  font-size: 14px;
  padding-left: 28px;
  line-height: 1.45;
}

.el_checkList > li:first-child {
  margin-top: 0;
}

.el_checkList > li::before,
.el_checkList > li::after {
  display: block;
  content: "";
  position: absolute;
}

.el_checkList > li::before {
  background: #2d9c00;
  width: 22px;
  height: 22px;
  border-radius: 11px;
  top: -2px;
  left: 0;
}

.el_checkList.el_checkList__small > li::before {
  width: 20px;
  height: 20px;
  top: -1px;
}

.el_checkList > li::after {
  top: 4px;
  left: 5px;
  width: 9px;
  height: 4px;
  border-left: 3px solid #fff;
  border-bottom: 3px solid #fff;
  transform: rotate(-45deg);
}

.el_checkList.el_checkList__small > li::after {
  left: 4px;
  width: 8px;
  height: 4px;
}

.el_hdg5 + .el_checkList {
  margin-top: 10px;
}

/* .el_constAreaBnr （工事対応エリアバナー）
----------------------------------------------- */
.el_constAreaBnr > a,
.el_constAreaBnr .el_constAreaBnr_inner {
  display: flex;
  text-decoration: none;
  width: 333px;
  height: 100px;
  padding: 5px;
  box-sizing: border-box;
  background: var(--dekiruGreen);
}

.el_constAreaBnr.el_constAreaBnr__mid .el_constAreaBnr_inner {
  width: 370px;
}

.el_constAreaBnr.el_constAreaBnr__high .el_constAreaBnr_inner {
  height: 125px;
  padding: 17px 15px 17px 12px;
}

.el_constAreaBnr.el_constAreaBnr__w100per .el_constAreaBnr_inner {
  width: 100%;
}

.el_constAreaBnr > a:hover,
.el_constAreaBnr a.el_constAreaBnr_inner:hover {
  opacity: 0.8;
}

.el_constAreaBnr > a:hover img,
.el_constAreaBnr a.el_constAreaBnr_inner:hover img {
  opacity: 1;
}

.el_constAreaBnr .el_constAreaBnr_txt {
  width: 100%;
  padding: 5px;
  box-sizing: border-box;
  color: #fff;
  font-size: 13px;
  line-height: 17px;
}

.el_constAreaBnr .el_constAreaBnr_txt > p {
  margin-top: 16px;
  font-size: 15px;
  line-height: 20px;
}

.el_constAreaBnr.el_constAreaBnr__mid .el_constAreaBnr_txt > p {
  font-size: 17px;
}

.el_constAreaBnr .el_constAreaBnr_img > img {
  max-width: unset; /* header_sp.css対策 */
}

/* .el_accordionBox
----------------------------------------------- */
.el_accordionBox {
  position: relative;
}

.el_accordionBox label {
  height: 40px;
  max-width: 18.75rem;
  cursor: pointer;
  position: absolute;
  left: 20px;
  right: 20px;
  bottom: 40px;
  margin: auto;
  box-sizing: border-box;
  font-size: 12px;
}

.el_accordionBox label::before {
  content: "\2193"; /* ↓ */
  font-weight: bold;
  line-height: 20px;
  color: var(--dekiruGreen);
  background: #fff;
  border-radius: 100%;
  width: 20px;
  height: 20px;
  position: absolute;
  top: 50%;
  margin-top: -10px;
  left: 10px;
  text-align: center;
  z-index: 3;
}

.el_accordionBox label::after {
  content: "\7D9A\304D\3092\898B\308B"; /* 続きを見る */
  display: flex;
  align-items: center;
  justify-content: center;
  letter-spacing: 0.05em;
  color: #fff;
  background: var(--dekiruGreen);
  margin: auto;
  width: 100%;
  height: 100%;
  border-radius: 20px;
  position: absolute;
  z-index: 2;
}

.el_accordionBox input {
  display: none;
}

.el_accordionBox .el_accordionBox_inner {
  overflow: hidden;
  height: 200px;
  transition: all 0.1s;
}

.el_accordionBox .el_accordionBox_inner::after {
  content: "";
  height: 140px;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
}

.el_accordionBox input:checked + label::before {
  content: "\2191"; /* ↑ */
}

.el_accordionBox input:checked + label::after {
  content: "\9589\3058\308B"; /* 閉じる */
}

.el_accordionBox input:checked ~ .el_accordionBox_inner {
  height: auto;
  padding-bottom: 80px;
  transition: all 0.1s;
}
.el_accordionBox input:checked ~ .el_accordionBox_inner::after {
  display: none;
}

/* .el_3colBanner
----------------------------------------------- */
.el_3colBanner_wrapper + .bl_panel.bl_panel__banner,
.el_3colBanner_wrapper + .bl_panel.bl_panel__banner + .bl_panel.bl_panel__banner,
.el_3colBanner_wrapper + .bl_panel.bl_panel__banner + .bl_panel.bl_panel__banner + .bl_panel.bl_panel__banner {
  margin-top: 20px;
}

.el_3colBanner {
  display: flex;
  justify-content: space-between;
  border: none;
  padding: 0;
}
.el_3colBanner .el_3colBanner_inner {
  display: flex;
  justify-content: space-between;
}
.el_3colBanner .el_3colBanner_inner a {
  width: 100%;
}
.el_3colBanner .el_3colBanner_inner a:nth-child(2) {
  margin-left: 20px;
}

.bl_panel+.el_3colBanner_wrapper,
.el_btn2_wrapper + .el_3colBanner_wrapper {
  margin-top: 30px;
}

/* ----------------------------------------------------------------
    Helper Modules
    接頭辞: .hp_*
----------------------------------------------------------------- */
/* .hp_spNone & .hp_pcNone （画面サイズ出し分け）
----------------------------------------------- */
.hp_spNone {
  display: initial;
}

.hp_pcNone {
  display: none;
}

/* .hp_linkBk （リンク文字色）
----------------------------------------------- */
.hp_linkBk:link,
.hp_linkBk:visited,
.hp_linkBk:hover {
  text-decoration: underline;
  color: var(--defaultTxtColor);
}

.hp_linkBk.hp_linkBk__bold:link,
.hp_linkBk.hp_linkBk__bold:visited,
.hp_linkBk.hp_linkBk__bold:hover {
  font-weight: bold;
}

/* .hp_m* .hp_p* （余白の調整）
----------------------------------------------- */
.hp_mT0 {
  margin-top: 0 !important;
}

.hp_mT10 {
  margin-top: 10px !important;
}

.hp_mT20 {
  margin-top: 20px !important;
}

.hp_mT30 {
  margin-top: 30px !important;
}

.hp_mT40 {
  margin-top: 40px !important;
}

.hp_mB0 {
  margin-bottom: 0 !important;
}

.hp_mB10 {
  margin-bottom: 10px !important;
}

.hp_mB20 {
  margin-bottom: 20px !important;
}

.hp_mB40 {
  margin-bottom: 40px !important;
}

.hp_pT0 {
  padding-top: 0 !important;
}

.hp_pT10 {
  padding-top: 10px !important;
}

.hp_pB0 {
  padding-bottom: 0 !important;
}

.hp_img100per {
  width: 100%;
  max-width: 100%;
  height: auto;
}

/* ----------------------------------------------------------------

    以下、旧来の設計のため、読み込みページ無くなり次第、削除予定

----------------------------------------------------------------- */

/* ----------------------------------------------------------------
    Text Modules
----------------------------------------------------------------- */
/* .txt_bold
----------------------------------------------- */
.txt_bold {
  font-weight: bold;
}

/* .txt_red
----------------------------------------------- */
.txt_red {
  color: #f00;
}

/* ----------------------------------------------------------------
    Link Modules
----------------------------------------------------------------- */
/* .link_blank
----------------------------------------------- */
.link-arrow::after,
.link_blank-arrow::after {
  content: "\020\03e";
  display: inline;
}

.link_blank-icon::after {
  content: url(/common/img/icon/etc/target_blank.gif);
  display: inline-block;
}

/* .mod-link
----------------------------------------------- */
.mod-link {
  margin-top: 25px;
}

.mod-link_body + .mod-link_head {
  margin-top: 15px;
}

.mod-link_list > li {
  margin-top: 5px;
}

.mod-link_list > li > a {
  color: var(--defaultTxtColor) !important;
}

/* ----------------------------------------------------------------
    Grid Modules
----------------------------------------------------------------- */
/* .mod-grid
----------------------------------------------- */
.mod-grid {
  display: flex;
}

.mod-grid_col {
  flex: 1;
  display: flex;
}

.mod-grid_col + .mod-grid_col {
  margin-left: 10px;
}

/* ----------------------------------------------------------------
    Box Modules
----------------------------------------------------------------- */
/* .mod-box
----------------------------------------------- */
.mod-box {
  border: 1px solid #ccc;
  margin-top: 20px;
}

.mod-box_head {
  font-weight: bold;
  text-align: center;
  background: var(--secondBgColor);
  font-size: 16px;
  padding: 10px;
}

.mod-box_head + .mod-box_body {
  border-top: 1px solid #ccc;
}

.mod-box_body {
  padding: 10px;
}

.mod-box_img {
  text-align: center;
}

.mod-box_img > img {
  max-width: 100%;
}

.mod-box_img + .mod-box_txt {
  margin-top: 20px;
}

/* ----------------------------------------------------------------
    Tab Modules
----------------------------------------------------------------- */
/* .mod-tab
----------------------------------------------- */
.mod-tab_btn {
  display: flex;
  margin-top: 40px;
  border-bottom: var(--dekiruGreen) 5px solid;
}

.mod-tab_btn > li {
  box-sizing: border-box;
  width: 100%;
  font-size: 18px;
  text-align: center;
  margin-left: 10px;
  border-radius: 0;
}

.mod-tab_btn > li:first-child {
  margin-left: 0;
}

.mod-tab_btn > li > a {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  height: 100%;
  padding: 15px 15px 10px 15px;
}

.mod-tab_btn > li > a[href] {
  background: #dfeadc;
  color: #3e692b !important;
  font-weight: normal;
  border-bottom: 2px solid #fff;
}

.mod-tab_btn > li > a:not([href]) {
  background: var(--dekiruGreen);
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  border: var(--dekiruGreen) 2px solid;
}

.mod-tab_btn > li > a:hover {
  background: var(--dekiruGreen);
  color: #fff !important;
  text-decoration: none;
}

/* .mod-tab-02
----------------------------------------------- */
.mod-tab-02 {
  margin-top: 20px;
}

.mod-tab-02_switch {
  display: none;
}

.mod-tab-02_btn {
  display: flex;
  padding: 0 10px;
  border-bottom: 4px solid var(--dekiruGreen);
}

.mod-tab-02_btn_label {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
  margin-top: 10px;
  border-radius: 6px 6px 0 0;
  text-align: left;
  color: #3e692b;
  background: #dfeadc;
  border: #ccdcc7 1px solid;
  border-bottom: 0;
  padding: 15px;
  font-size: 16px;
  cursor: pointer;
  transition: ease 0.2s opacity;
  box-sizing: border-box;
}

.mod-tab-02_btn_label:hover {
  background: var(--dekiruGreen) !important;
  transition: 0.2s;
  color: #fff;
}

.mod-tab-02_btn_label + .mod-tab-02_btn_label {
  margin-left: 10px;
}

.mod-tab-02_content {
  box-sizing: border-box;
  width: 100%;
}

.mod-tab-02_content_area {
  display: none;
}

#tab1:checked ~ .mod-tab-02_btn .mod-tab-02_btn_label[for="tab1"],
#tab2:checked ~ .mod-tab-02_btn .mod-tab-02_btn_label[for="tab2"] {
  background: var(--dekiruGreen) !important;
  color: #fff !important;
  border: var(--dekiruGreen) 2px solid;
  font-size: 18px;
  font-weight: bold;
  margin-top: 0;
}

#tab1:checked ~ .mod-tab-02_content .mod-tab-02_content_area#content1,
#tab2:checked ~ .mod-tab-02_content .mod-tab-02_content_area#content2 {
  display: block;
}

/* ----------------------------------------------------------------
    Media Modules
----------------------------------------------------------------- */
/* .mod-media-lyt
----------------------------------------------- */
.mod-media-lyt {
  margin: 20px 0 0;
  border: 3px solid #ccc;
  padding: 20px;
}

.mod-media-lyt_hdg {
  font-weight: bold;
  font-size: 18px;
}

.mod-media-lyt_hdg .mark-01 {
  display: inline-block;
  background: var(--dekiruGreen);
  font-size: 14px;
  color: #fff;
  padding: 6px;
  border-radius: 4px;
  margin-right: 10px;
  font-weight: bold;
  vertical-align: middle;
}

.mod-media-lyt_body {
  display: flex;
  flex-direction: row;
  margin-top: 15px;
}

.mod-media-lyt_col {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 0 20px;
}

.mod-media-lyt_col + .mod-media-lyt_col {
  border-left: 1px dashed #ccc;
  margin-top: 0;
}

.mod-media-lyt_title {
  order: 2;
  margin: 10px 0 5px;
  font-weight: bold;
  text-decoration: underline;
}

.mod-media-lyt_title > a,
.mod-media-lyt_title > a:visited .mod-media-lyt_title > a:link,
.mod-media-lyt_title > a:active {
  color: var(--defaultTxtColor) !important;
}

.mod-media-lyt_txt {
  order: 3;
  margin-top: auto;
}

.mod-media-lyt_img {
  order: 1;
  text-align: center;
}

.mod-media-lyt_img img {
  border: 1px solid #ccc;
}

/* ----------------------------------------------------------------
    Helper Modules
----------------------------------------------------------------- */
/* .only_*
----------------------------------------------- */
.only_ls {
  display: initial;
}

.only_ss {
  display: none;
}

/* ----------------------------------------------------------------
    emergency 
----------------------------------------------------------------- */
.area_fifth + .area_sixth .el_hdg3 {
  margin-top: 20px;
}

.bl_panel_wrapper.bl_panel_wrapper__spPadding + .area_sixth .el_hdg2 {
  margin-top: 40px;
}

[data-lity-target]:hover {
  cursor: pointer;
}

.bl_card2Unit_wrapper + .un_sharedGas_bannerArea {
  margin-top: 20px;
}

.un_sharedGas_bannerArea a {
  display: block;
  padding: 0 20px 20px;
}
.un_sharedGas_bannerArea a img {
  width: 100%;
}
.un_sharedGas_bannerArea + .el_hdg2 {
  margin-top: 20px;
}
.un_sharedGas_bannerArea {
  margin-top: 20px;
}
.un_sharedGas_linkCardUnit {
  display: flex;
  justify-content: space-between;
}
.un_sharedGas_linkCard {
  box-sizing: border-box;
  padding: 10px;
  width: calc((100% + 5px) / 3 - 5px);
  border: solid 2px #ececec;
  background: #fff;
  position: relative;
}
.un_sharedGas_linkCard:after {
  content: "";
  width: 15px;
  height: 15px;
  position: absolute;
  right: 3px;
  bottom: 3px;
  background: linear-gradient(135deg, transparent 0%, transparent 50%, var(--dekiruGreen) 50%, var(--dekiruGreen) 100%);
}
.un_sharedGas_linkCard .un_sharedGas_linkCard_ttl {
  font-weight: bold;
  margin-top: 5px;
}

.un_sharedGas_linkCard:link,
.un_sharedGas_linkCard:visited,
.un_sharedGas_linkCard:hover {
  text-decoration: none;
  color: var(--defaultTextColor);
}

.bl_panel + .un_sharedGas_linkCardUnit,
.un_sharedGas_linkCardUnit + .bl_panel {
  margin-top: 40px;
}

.un_sharedAll_flowCardUnit_wrapper {
  /* background-color: #f4f4f4; */
  padding: 20px;
  padding-bottom: 20px;
}
.un_sharedAll_flowCardUnit_wrapper + .el_hdg2,
.un_sharedAll_flowCardUnit_wrapper + .el_hdg3 {
  margin-top: 10px;
}
.un_sharedAll_flowCardUnit {
  display: flex;
  justify-content: space-between;
}
.el_hdg3 + .un_sharedAll_flowCardUnit {
  margin-top: 10px;
}

.un_sharedAll_flowCardUnit.un_sharedAll_flowCardUnit__col4 .un_sharedAll_flowCard {
  width: calc((100% + 5px) / 4 - 5px);
}
.un_sharedAll_flowCard {
  position: relative;
  background: #ffffff;
  border: solid 1px #ececec;
  box-sizing: border-box;
  padding: 10px;
  display: flex;
  flex-direction: column;
}

.un_sharedAll_flowCard:not(:last-child):after {
  content: "";
  width: 0;
  height: 0;
  border: 15px solid transparent;
  border-left: 15px solid var(--dekiruGreen);
  position: absolute;
  right: -27px;
  bottom: calc(50% - 8px);
  transform: rotate(0deg);
  z-index: 100;
}

.un_sharedAll_flowCard .un_sharedAll_flowCard_ttl {
  font-weight: bold;
  font-size: 16px;
  text-align: center;
}
.un_sharedAll_flowCard .un_sharedAll_flowCard_ttl span {
  color: var(--defaultTextColor);
}
.un_sharedAll_flowCard .un_sharedAll_flowCard_inner {
  margin-top: 10px;
}
.un_sharedAll_flowCard .un_sharedAll_flowCard_img {
  text-align: center;
}

.un_sharedAll_flowCard .un_sharedAll_flowCard_img img {
  max-width: 100%;
}
.un_sharedAll_flowCard .un_sharedAll_flowCard_txt {
  margin-top: 10px;
  font-size: 12px;
}

/* ----------------------------------------------------------------
    emergency__ukomi
----------------------------------------------------------------- */
h2.h2-review-midashi {
  font-size: 24px;
  font-weight: bold;
  color: #319b03;
  line-height: 36px;
  padding: 10px 10px 5px 20px;
  background: #d6ebcd;
  margin: 0;
  text-align: left;
}

.singleReview_title {
  padding: 5px 0 3px !important;
  line-height: 1.2em !important;
}

.singleReview {
  margin-bottom: 10px !important;
  padding-bottom: 10px !important;
}

.reviewSortingSection {
  margin-bottom: 10px !important;
  padding-bottom: 5px;
  border-bottom: 2px solid #ccc;
}

.singleReview_name {
  margin-top: 5px !important;
}

.ratingOverview {
  margin-top: 0 !important;
  padding-top: 0 !important;
  line-height: 0.5em !important;
  position: relative !important;
  top: -5px !important;
}

.reviewProductName a {
  color: #03c;
}

.thumbsup {
  text-align: right !important;
}

.reviewWidget_title_container hr {
  display: none !important;
}

.review-container,
.review-summary-container,
.reviewPictureContentWrapper {
  font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif !important;
  font-size: 28px;
  -webkit-text-size-adjust: none;
  line-height: 0.5em !important;
}

.singleReview_header_date {
  float: none !important;
}

.singleReview_header.clearfix {
  display: inline-block;
}

.reviewWidget {
  text-align: left;
}

.reviewWidget_inner {
  padding: 0 !important;
}

.u-komi-sorting-btn-form-data {
  font-size: 14px !important;
  padding: 8px 10px !important;
}

.u-komi-sorting-btn-active {
  background-color: #339900 !important;
  text-decoration: none;
}

.u-komi-sorting-btn-active:link {
  color: #fff !important;
}

.u-komi-sorting-btn-active:visited {
  color: #fff !important;
}

.u-komi-sorting-btn-active:hover {
  color: #fff !important;
}

.u-komi-sorting-btn-active:active {
  color: #fff !important;
}

.review-widget-summary-container {
  font-size: 13px;
  vertical-align: bottom;
  line-height: 1em !important;
  cursor: pointer;
  text-align: left;
  margin-top: 5px !important;
  margin-bottom: 10px !important;
}

.ReviewWidget_pagination {
  padding: 0 0 10px !important;
  text-align: center;
}

.ReviewWidget_pagination span.active {
  background-color: #339900 !important;
  color: #fff !important;
  border: 1px solid #339900;
  cursor: default;
}

.ReviewWidget_pagination span.first {
  background-color: #eeeeee !important;
  color: #fff !important;
  border: 1px solid #eeeeee;
  cursor: default;
}

.ReviewWidget_pagination span.prev {
  background-color: #eeeeee !important;
  color: #fff !important;
  border: 1px solid #eeeeee;
  cursor: default;
}

.ReviewWidget_pagination span.next {
  background-color: #eeeeee !important;
  color: #fff !important;
  border: 1px solid #eeeeee;
  cursor: default;
}

.ReviewWidget_pagination span.last {
  background-color: #eeeeee !important;
  color: #fff !important;
  border: 1px solid #eeeeee;
  cursor: default;
}
.review-summary-container {
  text-align: center !important;
  background-color: #390;
}

.review-summary-container .starRating .reviewNumber {
  font-size: 14px !important;
  font-weight: bold;
  color: #fff;
}

.reviewNumber {
  font-weight: bold;
}

.starRating {
  padding: 10px 0 !important;
}

.productMain li img {
  margin-top: 0 !important;
}

.total_text a {
  color: #fff !important;
}

.fa-star,
.fa-star-o,
.fa-star-half-o {
  font-size: 14px !important;
  background: -webkit-linear-gradient(90deg, #ff8001, #ffff66);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke: 0.2px #663300;
}

.productImg .reviewNumber {
  color: #fff !important;
}

.review-summary-container .ukomistarRatingSummarySection {
  padding-top: 4px !important;
}

.review-summary-container .ukomistarRatingSummarySection .reviewNumber {
  position: relative !important;
  top: -2px !important;
}

.u-komi_table tr {
  border: none !important;
}

.u-komi_table td {
  border: none !important;
}

.thumb-item {
  margin-top: 20px !important;
  padding-top: 0 !important;
}

.thumb-item-nav {
  margin-top: 30px !important;
  margin-bottom: 30px !important;
  padding-top: 0 !important;
}
.reviewSortingDiv .u-komi-sorting-btn-form-data:nth-child(4) {
  display: none;
}

.uKomiNoReviewsTextContainer p {
  text-align: left !important;
  margin: 0 0 50px;
}

.productImg {
  margin: 0 auto !important;
  padding: 0 !important;
}

.productMain {
  text-align: center !important;
}

@media screen and (min-width: 641px) {
  .reviewWidget_inner {
    padding: 0 0 !important;
  }

  .reviewWidget_title {
    padding: 10px 0 10px 0 !important;
    margin: 0 0 10px 0 !important;
    line-height: 1.1em !important;
  }

  .singleReview_name {
    margin: 11px 0 0 10px !important;
  }

  .u-komi_sp {
    border-bottom: none !important;
    padding: 0 0 0 0 !important;
  }

  hr.u-komi_sp {
    border-bottom: none !important;
  }

  .productMain img {
    margin-top: 20px !important;
  }

  .uKomiNoReviewsTextContainer p {
    font-size: 16px !important;
  }

  .reviewWidget_title {
    font-size: 28px !important;
  }
}
