@charset "UTF-8";
.cnc_header {
  min-height: 161px;
}
@media screen and (min-width: 768px) {
  .cnc_header {
    min-height: 278px;
  }
}
@media screen and (min-width: 980px) {
  .cnc_header {
    min-height: 253px;
  }
}

.cnc_intro {
  padding-top: 35px;
}
@media screen and (min-width: 768px) {
  .cnc_intro {
    padding-top: 45px;
  }
}

.cnc_intro_contents {
  margin-top: 30px;
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .cnc_intro_contents {
    margin-top: 24px;
    flex-direction: row-reverse;
    column-gap: 50px;
  }
}

@media screen and (min-width: 768px) {
  .cnc_intro_image-area {
    padding-top: 15px;
    width: 50%;
  }
}

.cnc_intro_image {
  aspect-ratio: 335/187;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .cnc_intro_image {
    aspect-ratio: 309/174;
  }
}

@media screen and (min-width: 768px) {
  .cnc_intro_text-box {
    width: 50%;
  }
}

.cnc_intro_title {
  margin-top: 9px;
  margin-bottom: 4px;
  line-height: 1.6;
}
@media screen and (min-width: 980px) {
  .cnc_intro_title {
    letter-spacing: -0.03em;
  }
}

@media screen and (min-width: 768px) {
  .cnc_intro_text {
    margin-top: 20px;
  }
}

.cnc_feature_image {
  aspect-ratio: 335/187;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .cnc_feature_image {
    aspect-ratio: 309/174;
  }
}

.cnc_feature {
  padding-top: 50px;
}
@media screen and (min-width: 768px) {
  .cnc_feature {
    padding-top: 48px;
  }
}

.cnc_feature_items {
  margin-top: 25px;
  gap: 37px;
}
@media screen and (min-width: 768px) {
  .cnc_feature_items {
    margin-top: 47px;
    gap: 39px 53px;
  }
}
@media screen and (min-width: 980px) {
  .cnc_feature_items {
    gap: 39px 30px;
  }
}

.cnc_feature_item_title {
  margin-top: 10px;
  margin-bottom: 3px;
}
@media screen and (min-width: 768px) {
  .cnc_feature_item_title {
    margin-top: 24px;
    letter-spacing: 0.05em;
    line-height: 1.2em;
  }
}

@media screen and (min-width: 980px) {
  .cnc_feature_item_title span {
    display: block;
  }
}

.cnc_feature_item_text {
  letter-spacing: 0.05em;
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  .cnc_feature_item_text {
    margin-top: 12px;
    letter-spacing: 0.1em;
  }
}

.cnc_link {
  padding-top: 51px;
}
@media screen and (min-width: 768px) {
  .cnc_link {
    padding-top: 40px;
  }
}
@media screen and (min-width: 980px) {
  .cnc_link {
    padding-top: 55px;
  }
}

.cnc_link_lists {
  padding-top: 7px;
}
@media screen and (min-width: 768px) {
  .cnc_link_lists {
    padding-top: 11px;
  }
}

.cnc_link_list + .cnc_link_list {
  margin-top: 17px;
}
@media screen and (min-width: 768px) {
  .cnc_link_list + .cnc_link_list {
    margin-top: 12px;
  }
}

.cnc_link_list a {
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .cnc_link_list a {
    letter-spacing: 0.04em;
  }
}

.cnc_link_list .no-line-break {
  white-space: nowrap;
}

.cnc_products {
  margin-top: 55px;
}
@media screen and (min-width: 768px) {
  .cnc_products {
    margin-top: 80px;
  }
}

.cnc_products .section {
  padding-top: 47px;
  padding-bottom: 57px;
}
@media screen and (min-width: 768px) {
  .cnc_products .section {
    padding-top: 62px;
    padding-bottom: 107px;
  }
}

.cnc_products_lists {
  padding-top: 4px;
}
@media screen and (min-width: 768px) {
  .cnc_products_lists {
    padding-top: 11px;
    gap: 37px 50px;
  }
}

.cnc_products_lists li + li {
  margin-top: 5px;
}
@media screen and (min-width: 768px) {
  .cnc_products_lists li + li {
    margin-top: 0;
  }
}

/* 追記
-------------------------*/
/* 共通 */
@media screen and (min-width: 980px) {
  .block_pc {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  .block_tbpc {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  .block_tb {
    display: block;
  }
}
@media screen and (min-width: 980px) {
  .block_tb {
    display: inline-block;
  }
}

.block_sp {
  display: block;
}
@media screen and (min-width: 768px) {
  .block_sp {
    display: inline;
  }
}

.block_sptb {
  display: block;
}
@media screen and (min-width: 980px) {
  .block_sptb {
    display: inline;
  }
}

@media screen and (min-width: 768px) {
  .cnc-contents {
    margin-top: 40px;
  }
}

.cnc-small-header {
  font-size: 1.2em;
  letter-spacing: 0.02em;
  font-weight: bold;
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  .cnc-small-header {
    font-size: 1.65em;
  }
}

.cnc-text {
  letter-spacing: 0.1em;
  line-height: 1.5;
}

/* セクションごとの記述 */
.cnc_intro_button-area {
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .cnc_intro_button-area {
    margin-top: 35px;
    flex-direction: row;
    justify-content: center;
    gap: 25px;
  }
}

@media screen and (min-width: 768px) {
  .cnc_intro_button-area .md_button_b a {
    min-width: 212px;
  }
}

@media screen and (min-width: 768px) {
  .cnc_intro_button-area .md_button_b a .icon_blank {
    right: -30px;
  }
}

@media screen and (min-width: 768px) {
  .cnc_intro_button-area .md_button_a a {
    min-width: 292px;
  }
}

.cnc_feature_item + .cnc_feature_item {
  padding-top: 40px;
}
@media screen and (min-width: 768px) {
  .cnc_feature_item + .cnc_feature_item {
    margin-top: 10px;
  }
}

@media screen and (min-width: 768px) {
  .cnc_feature_item-header {
    line-height: 1.1785714286;
    letter-spacing: 0.05em;
  }
}

@media screen and (min-width: 768px) {
  .cnc_feature_item .grid_container {
    flex-wrap: nowrap;
  }
}

@media screen and (min-width: 768px) {
  .cnc_feature_item .grid_container::after {
    display: none;
    flex-wrap: nowrap;
    -webkit-flex-wrap: nowrap;
  }
}

@media screen and (min-width: 768px) {
  .cnc_feature_item .grid_container .order1 {
    flex-basis: 30%;
    padding-right: 23px;
    padding-left: 23px;
  }
}

.cnc_feature_item .grid_container .order1 img {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 768px) {
  .cnc_feature_item .grid_container .order2 {
    flex-basis: 63%;
    padding-right: 0;
    padding-left: 0;
  }
}

@media screen and (min-width: 768px) {
  .cnc_feature_item-text {
    margin-top: 15px;
  }
}

.cnc-strength {
  margin-top: 25px;
}
@media screen and (min-width: 768px) {
  .cnc-strength {
    margin-top: 100px;
  }
}

.cnc-strength__lists {
  margin-top: 20px;
}
@media screen and (min-width: 768px) {
  .cnc-strength__lists {
    margin-top: 30px;
  }
}

.cnc-strength__list {
  list-style: none;
}

.cnc-strength__list + .cnc-strength__list {
  margin-top: 20px;
}
@media screen and (min-width: 768px) {
  .cnc-strength__list + .cnc-strength__list {
    margin-top: 31px;
  }
}

.cnc-strength__list .cnc-strength__text {
  margin-top: 10px;
}
@media screen and (min-width: 768px) {
  .cnc-strength__list .cnc-strength__text {
    margin-top: 13px;
  }
}

.cnc-strength__list-header {
  text-align: center;
}

.cnc-support__contents .grid {
  margin-top: 20px;
}
@media screen and (min-width: 768px) {
  .cnc-support__contents .grid {
    margin-top: 40px;
  }
}

@media screen and (min-width: 768px) {
  .cnc-support__contents .grid .grid_container {
    align-items: center;
  }
}

.cnc-support__item + .cnc-support__item {
  margin-top: 20px;
}
@media screen and (min-width: 768px) {
  .cnc-support__item + .cnc-support__item {
    margin-top: 35px;
  }
}

.cnc-support__item-text {
  margin-top: 10px;
}
@media screen and (min-width: 768px) {
  .cnc-support__item-text {
    margin-top: 20px;
  }
}

@media screen and (min-width: 768px) {
  .cnc-works {
    padding-top: 15px;
  }
}

@media screen and (min-width: 768px) {
  .cnc-works__lists {
    margin-top: 40px;
  }
}

.cnc-works__list {
  list-style: none;
}

.cnc-works__list + .cnc-works__list {
  margin-top: 30px;
}
@media screen and (min-width: 768px) {
  .cnc-works__list + .cnc-works__list {
    margin-top: 55px;
  }
}

@media screen and (min-width: 768px) {
  .cnc-works__list-header {
    margin-bottom: 0;
  }
}

.cnc-contact__button {
  text-align: center;
  margin-top: 10px;
}
@media screen and (min-width: 768px) {
  .cnc-contact__button {
    margin-top: 20px;
  }
}