main .section:first-of-type .columns:first-of-type {
  min-height: unset;
}

main .columns-container,
main .columns-dark-container,
main .columns-center-container,
main .columns-top-container,
main .columns-highlight-container {
  padding-left: 15px;
  padding-right: 15px;
  padding-bottom: 40px;
}

main .columns-container > div,
main .columns-fullsize-container > div,
main .columns-dark-container > div,
main .columns-center-container > div,
main .columns-top-container > div {
  padding: 0;
  max-width: 350px;
}

 

.section.columns-enterprise-container .default-content-wrapper h2 {
  margin-top: 0;
  padding-top: 80px;
}

.columns-enterprise-container .columns-wrapper {
  padding-left: 80px;
  padding-right: 80px;
  max-width: unset;
}

.columns.enterprise > div {
  gap: 40px;
}

main .columns-highlight-container,
main .columns-dark-container {
  padding-bottom: 120px;
  color: var(--color-white);
}

main .columns-highlight-container .legal {
  color: var(--color-black);
  font-size: var(--body-font-size-m);
}

main .columns-highlight-container .legal a:any-link {
  color: var(--color-black);
  text-decoration: underline;
}

main .columns-dark-container {
  background: var(--color-black);
}

main .columns-highlight-container {
  background: var(--gradient-highlight-vertical);
}

main .columns p {
  margin: 16px 0;
  font-size: var(--body-font-size-l);
  line-height: 1.33;
}

main .columns p.powered-by {
  font-size: var(--body-font-size-m);
  line-height: 1.2;
}

main .columns p.button-container {
  margin: 0;
  margin-top: 40px;
}

main .columns .button-container a {
  margin: 0;
}

main .columns:not(.highlight) .column-video .button-container a {
  border-radius: 24px;
  padding: 8px 20px;
}

main .columns:not(.highlight) .column-video .button-container a:hover,
main .columns:not(.highlight) .column-video .button-container a:active,
main .columns:not(.highlight) .column-video .button-container a,
main .columns:not(.highlight) .column-video .button-container a:focus {
  background-color: transparent;
  border-color: var(--color-black);
  color: var(--color-black);
  box-shadow: none;
}

main .columns:not(.highlight) .column-video .button-container a:before {
  display: inline-block;
  width: 18px;
  height: 20px;
  margin-right: 16px;
  vertical-align: sub;
  top: 1px;
  position: relative;
  content: url(/express/icons/play.svg);
}

main .columns .column-picture {
  margin: 15px 0;
}

main .columns h1{
  font-size: var(--heading-font-size-xxl);
  line-height: 1.06;
}

main .columns h1.columns-heading-long {
  font-size: var(--heading-font-size-xl);
}

main .columns h1.columns-heading-very-long {
  font-size: var(--heading-font-size-l);
}

main .columns h1.columns-heading-x-long {
  font-size: var(--heading-font-size-m);
}

main .columns h2 {
  font-size: var(--heading-font-size-xl);
  line-height: 1.08;
}

main .columns h2.columns-heading-very-long {
  font-size: var(--heading-font-size-l);
}

main .columns h3 {
  font-size: var(--heading-font-size-l);
  line-height: 1.11;
}

main .columns h4,
main .columns h5,
main .columns h6 {
  font-size: var(--heading-font-size-m);
  line-height: 1.14;
  margin-top: 32px;
}

main .columns h2 + h2,
main .columns h3 + h3,
main .columns h4 + h4,
main .columns h5 + h5,
main .columns h6 + h6 {
  margin-top: 0;
}

main .columns.width-2-columns .column-picture,
main .columns.width-2-columns .hero-animation-overlay {
  order: 2;
}

main .columns.width-3-columns h3 {
  font-size: var(--heading-font-size-m);
}

main .columns > div {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 40px 0;
}

main .columns.center .column,
main .columns.enterprise .column {
  text-align: center;
}

main .columns.center .column p.button-container,
main .columns.enterprise .column p.button-container {
  text-align: center;
}

main .columns a > p:empty {
  display: none;
}

main .section.columns-container.steps-container div .steps.block div.step-description h2 {
  font-size: var(--heading-font-size-l);
  line-height: 1.11;
}

main .section.columns-container.steps-container div .steps.block div.step-description h3,
main .section.columns-container.steps-container div .steps.block div.step-description h4,
main .section.columns-container.steps-container div .steps.block div.step-description h6 {
  font-size: var(--heading-font-size-s);
  line-height: 1.18;
}

main .section.columns-container.steps-container div .steps.block div.step-description p {
  font-size: var(--body-font-size-s);
  line-height: 1.28;
}

main .columns > div span.num {
  position: relative;
  font-weight: 900;
  font-size: 36px;
  line-height: 39px;
  top: 0;
  margin-right: 12px;
}

main .columns > div span.num + * {
  display:inline;
}

main .columns .icon {
  height: 24px;
  margin-right: 12px;
  float: left;
}

main .columns .brand.icon {
  width: auto;
  margin-right: 0;
  float: none;
}

main .columns.center .icon {
  float: none;
}

main .columns .icon.icon-check {
  width: 22px;
}

main .section:first-of-type .columns:first-of-type .brand.icon {
  display: none;
}

main .section:first-of-type .columns:first-of-type .brand.icon {
  display: unset;
  height: 32px;
  width: auto;
  margin: 0 auto;
  position: absolute;
  top: 40px;
  left: 50%;
  transform: translateX(-50%);
}

main .columns .has-brand {
  padding-top: 72px;
  position: relative;
}

main .columns .social.icon {
  width: 32px;
  height: 32px;
  margin-right: 24px;
}

main .columns .column hr {
  margin-top: 32px;
}

main .columns .column .columns-iconlist {
  display: flex;
  flex-direction: column;
  margin-top: 8px;
  margin-bottom: 40px;
}

main .columns .column .columns-iconlist > div {
  display: flex;
  align-items: center;
  margin-top: 32px;
}

main .columns .column .columns-iconlist p {
  margin: 0;
}

main .columns .column .columns-iconlist .columns-iconlist-icon {
  display: flex;
}

main .columns .column .columns-iconlist .columns-iconlist-icon img.icon,
main .columns .column .columns-iconlist .columns-iconlist-icon svg.icon {
  height: 22px;
  width: 22px;
}

main .columns .column iframe{
  aspect-ratio: 1 / 0.56;
}

main .columns .column .columns-iconlist .columns-iconlist-description {
  display: flex;
  flex: 1;
  align-items: center;
  margin-left: 10px;
  text-align: left;
}

main .columns .column,
main .columns .column p.button-container,
main .columns .column h1,
main .columns .column h2,
main .columns .column h3,
main .columns .column h4,
main .columns .column h5,
main .columns .column h6 {
  text-align: left;
}

main .columns.center .column,
main .columns.center .column p.button-container,
main .columns.center .column h1,
main .columns.center .column h2,
main .columns.center .column h3,
main .columns.center .column h4,
main .columns.center .column h5,
main .columns.center .column h6,
main .columns.enterprise .column,
main .columns.enterprise .column p.button-container,
main .columns.enterprise .column h1,
main .columns.enterprise .column h2,
main .columns.enterprise .column h3,
main .columns.enterprise .column h4,
main .columns.enterprise .column h5,
main .columns.enterprise .column h6 {
  text-align: center;
}

main .columns.highlight > div {
  background: var(--color-white);
  color: var(--color-black);
  border-radius: 20px;
  overflow: hidden;
  margin: 20px 0;
}

main .columns.highlight > div:first-child {
  margin-top: 50px;
}

main .columns.highlight.width-2-columns .column-picture {
  order: -1
}

main .columns.highlight .columns-video {
  cursor: pointer;
}

main .columns-video .column-picture {
  position: relative;
}

main .columns-video .column-picture img {
  display: block;
}

main .columns-video .column-picture .column-video-overlay {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
}

main .columns.highlight .columns-video:hover .column-picture .column-video-overlay {
  background-image: linear-gradient(#ffffff00, #90909025, #000000a0);
}

main .columns-video .column-picture .column-video-overlay svg {
  position: absolute;
  top: 50%;
  left: 50%;
  fill: var(--color-white);
  transform: translate(-50%, -50%);
  width: 66px;
  height: 66px;
}

main .columns.highlight > div {
  padding: 0;
}

main .columns.highlight .column-picture {
  margin: 0;
}

main .columns-highlight-container h4 {
  margin: 16px 0;
  font-size: var(--heading-font-size-m);
}

main .columns-highlight-container h2 {
  font-size: var(--heading-font-size-xl);
}

main .columns.highlight .column:not(.column-picture):not(.hero-animation-overlay) {
  padding: 20px 16px;
}

main .columns.highlight .column h5 {
  color: var(--color-info-accent);
  letter-spacing: 2px;
  margin-bottom: 8px;
}

main .columns.highlight .column h5 + h2,
main .columns.highlight .column h5 + h3,
main .columns.highlight .column h5 + h4 {
  margin-top: 0;
}

main .columns.highlight h1,
main .columns.highlight h2,
main .columns.highlight h3 {
  font-size: var(--heading-font-size-l);
}

main .columns.highlight h4 {
  font-size: var(--heading-font-size-m);
}

main .columns.highlight h5,
main .columns.highlight h6 {
  font-size: var(--heading-font-size-s);
}

main .columns.highlight .column .columns-iconlist {
  margin-bottom: 0;
}

main .columns.highlight .column .columns-iconlist > div {
  margin-top: 8px;
}

main .columns.highlight .column p {
  font-size: var(--body-font-size-s);
}

main .columns.offer .column {
  width: 278px;
}

main .columns.offer .column:not(:first-child) {
  padding-top: 40px;
}

main .columns.offer > div p.button-container {
  margin-bottom: 40px;
}

/* sub title */
main .columns.offer h3:not(:first-of-type) {
  font-size: var(--body-font-size-xl);
  font-weight: 600;
  line-height: var(--body-line-height);
  margin: 80px 0 0;
}

main .columns.offer .columns-offer-icon .icon {
  margin-right: 0;
  float: unset;
  width: 26px;
}

main .columns.offer .column .columns-iconlist,
main .columns.offer .column .columns-iconlist .columns-iconlist-icon > div {
  width: 100%;
}

main .columns.offer .column .columns-iconlist .columns-iconlist-icon .icon {
  width: 44px;
  height: 44px;
}

main .columns.offer .column .columns-iconlist .columns-iconlist-description {
  flex: 1;
}

main .columns.offer .column .columns-iconlist .columns-iconlist-description p {
  font-size: var(--body-font-size-m);
}

main .columns .column {
  padding-left: 0;
  padding-right: 0;
}

main .columns.fullsize .column-picture,
main .columns.fullsize .hero-animation-overlay {
  order: -1;
}

main .columns.fullsize > div > div p {
  margin: 16px 0;
}

main .columns.fullsize > div > div .button-container {
  margin: 16px 0;
}

main .columns.fullsize > div > div .button-container a {
  margin: 16px 0 0 0;
}

main .columns.fullsize .has-brand > div p:first-child {
  margin: 0;
}

main .columns .column {
  padding-left: 32px;
  padding-right: 32px;
}

main .columns.fullsize .column {
  padding-left: 24px;
  padding-right: 24px;
}

main .columns .column.column-picture {
  padding-left: 8px;
  padding-right: 8px;
}

main .section:first-of-type .columns:first-of-type:not(.center):not(.fullsize) .brand.icon {
  transform: none;
  left: 0;
  padding-left: 32px;
}

main .columns.fullsize .hero-animation-overlay {
  padding-top: 4px;
  padding-bottom: 4px;
}

main .columns.fullsize .hero-animation-overlay video {
  max-height: 40vh;
  margin-bottom: 40px;
  max-width: 370px;
}

main .columns.fullsize .has-brand > div:not(.column-picture):not(.hero-animation-overlay) {
  padding-top: 16px;
}

main .columns.highlight .column.column-picture {
  padding-left: 0px;
  padding-right: 0px;
}

/* Custom color variant */

main .columns.color .img-wrapper {
  height: 345px;
  width: 345px;
}

main .columns.color .color-svg-img {
  height: 63%;
  width: 46%;
}

main .columns.color .img-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 20px;
}

main .columns.columns.color > div {
  padding: 80px 0 0 0;
  gap: 15px;
}

main .columns.color .column.text {
  padding: 0;
  max-width: 345px;
}

main .columns.color.shadow .img-wrapper {
  box-shadow: 0 3px 6px #00000029;
}

main .columns.color h2,
main .columns.color p {
  hyphens: manual;
  text-align: center;
}

main .columns.color h2 {
  font-size: var(--heading-font-size-l);
}

main .collapsible-card-wrapper + .columns-wrapper .columns > div {
  display: flex;
  flex-direction: column-reverse;
  font-size: 20px;
  line-height: 28px;
  text-align: center;
}

main .columns .button-container.free-plan-container.stacked .free-plan-widget {
  margin-top: 0;
  padding: 16px 0;
  background-color: transparent;
}

main .columns.center.button-container.free-plan-container.stacked .free-plan-widget {
  padding-left: 24px;
}

main .columns-fullsize-top-container .columns-wrapper {
  max-width: 1200px;
}

main .columns.fullsize.top > div {
  padding: 40px 0;
}

main .columns.fullsize.top .column {
  width: auto;
  padding: 0 20px;
}

main .columns.fullsize.top .column .columns-iconlist > div {
  margin-top: 12px;
}

main .columns.fullsize.top .column .columns-iconlist p {
  font-size: var(--body-font-size-s);
  line-height: 18px;
}

main .columns.fullsize.top .column .columns-iconlist .columns-iconlist-icon img.icon {
  margin-right: 8px;
}

main .columns.fullsize.top .column .columns-iconlist .columns-iconlist-description {
  margin-left: 8px;
}

/* Japanese font sizing styles */
:lang(ja) main .columns h2.columns-heading-long {
  font-size: var(--heading-font-size-l);
}

:lang(ja) main .columns h2.columns-heading-very-long {
  font-size: var(--heading-font-size-l);
}

:lang(ja) main .columns h2.columns-heading-x-long {
  font-size: var(--heading-font-size-m);
}

@media (max-width: 600px) {
  :lang(ja) main .columns h2 {
    font-size: var(--heading-font-size-l);
  }

  :lang(ja) main .columns h2.columns-heading-long {
    font-size: var(--heading-font-size-l);
  }

  :lang(ja) main .columns h2.columns-heading-very-long {
    font-size: var(--heading-font-size-m);
  }

  :lang(ja) main .columns h2.columns-heading-x-long {
    font-size: var(--heading-font-size-m);
  }

  .secion.columns-enterprise-container .columns-wrapper {
    padding-left: auto;
    padding-right: auto;

  }
  
  .section.columns-enterprise-container .default-content-wrapper h2 {
      padding-left: 20px;
      padding-right: 20px;
      word-break: auto-phrase;
  }

}

@media (min-width: 900px) and (max-width: 1200px) {
  :lang(ja) main .columns h1{
    font-size: var(--heading-font-size-xl);
  }

  :lang(ja) main .columns h1.columns-heading-long {
    font-size: var(--heading-font-size-xl);
  }

  :lang(ja) main .columns h1.columns-heading-very-long {
    font-size: var(--heading-font-size-l);
  }

  :lang(ja) main .columns h1.columns-heading-x-long {
    font-size: var(--heading-font-size-m);
  }
}

@media (min-width: 900px) {
  body main .section:first-of-type .columns:first-of-type:not(.center):not(.fullsize) .brand.icon {
    padding-left: 0;
  }

  main .columns-fullsize-center-container .columns.fullsize .has-brand > div:not(.column-picture):not(.hero-animation-overlay) {
    padding-top: 0;
  }

  main .columns .column {
    padding-left: 32px;
    padding-right: 32px;
  }

  main .columns .column:first-child:not(.column-picture):not(.hero-animation-overlay):not(.text) {
    padding-right: 16px;
  }

  main .columns .column:nth-child(2):not(.column-picture):not(.hero-animation-overlay):not(.text) {
    padding-left: 16px;
  }

  main .columns .column:nth-child(2):not(.column-picture):not(.hero-animation-overlay):not(.text) {
    padding-left: 16px;
  }

  main .columns.highlight .column:nth-child(2):not(.column-picture):not(.hero-animation-overlay) {
    padding-left: 32px;
  }

  main .columns.color .column {
    padding-right: 15px;
    min-width: 388px;
  }

  main .columns.fullsize .column-picture,
  main .columns.fullsize .hero-animation-overlay {
    padding-top: 0;
    padding-bottom: 0;
    order: unset;
  }

  main .columns.fullsize .hero-animation-overlay video {
    max-height: unset;
    margin-bottom: unset;
  }

  main .columns.fullsize > div > div {
    display: block;
  }

  main .columns.fullsize > div > div p {
    margin: 16px 0;
  }

  main .columns.fullsize > div > div .button-container {
    margin: 0;
    margin-top: 40px;
  }

  main .columns.fullsize > div > div .button-container a {
    margin: 0;
  }

  main .columns.fullsize .has-brand > div p:first-child {
    margin: 16px 0;
  }

  main .columns .column {
    padding-left: 32px;
    padding-right: 32px;
  }

  main .columns .column.column-picture {
    padding-left: 8px;
    padding-right: 8px;
  }

  main .columns .column:nth-child(2):not(.column-picture):not(.hero-animation-overlay) {
    padding-left: 16px;
  }

  main .collapsible-card-wrapper + .columns-wrapper .columns > div {
    flex-direction: unset;
  }

  main .columns.color .img-wrapper {
    height: 418px;
    width: 418px;
  }

  main .columns.color h2, main .columns.color p {
    text-align: left;
  }

  main .section:first-of-type .columns:first-of-type .brand.icon {
    position: unset;
    top: unset;
    left: unset;
    transform: unset;
  }

  main .section:first-of-type .columns:first-of-type:not(.center):not(.fullsize) .brand.icon {
    padding-left: 0;
  }

  main .columns .has-brand {
    padding-top: 0;
  }

  main .columns.top > div,
  main .columns.offer > div {
      align-items: flex-start;
  }

  main .columns-container > div,
  main .columns-fullsize-container > div,
  main .columns-dark-container > div,
  main .columns-center-container > div,
  main .columns-top-container > div {
    max-width: 836px;
    padding-left: 32px;
    padding-right: 32px;
  }

  main .columns > div {
    flex-direction: row;
    text-align: left;
    align-items: center;
  }

  main .section div.columns > div {
    position: relative;
  }

  main .section div.columns > div > div {
    width: 50%;
    box-sizing: border-box;
  }

  main .section div.columns > div > div:only-child {
    width: 100%;
  }

  main .columns > div span.num {
    font-size: 22px;
    line-height: 29px;
    display: block;
  }

  main .columns .column {
    margin: 0;
  }

  main .columns.width-2-columns .column-picture,
  main .columns.width-2-columns .hero-animation-overlay,
  main .columns.highlight.width-2-columns .column-picture  {
    order: 0;
  }

  main .columns.highlight.width-2-columns .column-picture img {
    height: 100%;
    width: 50%;
    position: absolute;
    top: 0;
    object-fit: cover;
  }

  main .columns.offer > div {
    flex-direction: column;
    justify-content: center;
  }

  main .columns.offer .column {
    width: 600px;
    margin: 0 auto;
  }

  main .columns.offer > div:first-child {
    padding-bottom: 0;
  }

  main .columns-video .column-picture {
    position: initial;
  }

  main .columns-video .column-picture .column-video-overlay {
    width: 50%;
  }

  .section.columns-enterprise-container .column h2 {
    font-size: var(--heading-font-size-xxl);
  }
}

@media (min-width: 1200px) {
  main .columns-container > div,
  main .columns-dark-container > div,
  main .columns-center-container > div,
  main .columns-top-container > div {
    max-width: 1024px;
  }

  main .columns-fullsize-container > div,
  main .columns-fullsize-center-container > div {
    max-width: 1122px;
  }

  main .columns:not(.fullsize) .column:not(.column-picture):not(.hero-animation-overlay):not(.text) {
    padding: 40px;
  }

  main .columns.fullsize .column.hero-animation-overlay {
    position: relative;
    height: 610px;
  }

  main .columns.fullsize .column.columns-picture > p,
  main .columns.fullsize .column.hero-animation-overlay > p {
    margin: 0;
  }

  main .columns.fullsize .column video {
    position: absolute;
    left: 0;
    max-width: 600px;
  }

  main .columns.fullsize + h2 {
    margin-top: 0;
  }

  main .columns-offer-container > div {
    max-width: 1100px;
  }

  main .columns.offer > div {
    width: 1100px;
    margin: 0 auto;
    flex-direction: row;
    justify-content: space-between;
  }

  main .columns.offer .column {
    width: 490px;
    padding: 40px 0;
  }

  main .columns.offer .column:not(:first-child) {
    padding-top: 0;
  }

  main .columns.color .column.text {
    max-width: unset;
  }

  main .columns.color .img-wrapper {
    height: 500px;
    width: 500px;
  }

  main .columns.columns.color > div {
    gap: 25px;
  }

  main .columns.fullsize.top > div {
    padding: 80px 0;
  }

  :lang(ja) main .columns h1{
    font-size: var(--heading-font-size-xxl);
  }

  :lang(ja) main .columns h1.columns-heading-long {
    font-size: var(--heading-font-size-xl);
  }

  :lang(ja) main .columns h1.columns-heading-very-long {
    font-size: var(--heading-font-size-xl);
  }

  :lang(ja) main .columns h1.columns-heading-x-long {
    font-size: var(--heading-font-size-l);
  }

  :lang(ja) main .columns h2.columns-heading-long {
    font-size: var(--heading-font-size-xl);
  }

  :lang(ja) main .columns h2.columns-heading-very-long {
    font-size: var(--heading-font-size-l);
  }

  :lang(ja) main .columns h2.columns-heading-x-long {
    font-size: var(--heading-font-size-m);
  }

  main .columns h2.columns-heading-very-long {
    font-size: var(--heading-font-size-xl);
  }

  main .columns h1.columns-heading-long {
    font-size: var(--heading-font-size-xxl);
  }
  main .columns h1.columns-heading-very-long {
    font-size: var(--heading-font-size-xl);
  }

  main .columns h1.columns-heading-x-long {
    font-size: var(--heading-font-size-l);
  }
 
  main .columns.extra-wide > div {
    align-items: flex-start;
   }

  main .section > div:has( .columns.extra-wide ) {
    max-width: 1440px;
    margin-top: -60px;
  } 
  main .columns.extra-wide .button-container{
    margin-top: 0;
  } 


}

main .columns.extra-wide {
  text-align: center;
}

main .columns.extra-wide .column {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 250px;
}

main .columns.extra-wide > div {
 align-items: flex-start;
}

main .columns.extra-wide .column:has(a:only-of-type) {
  text-align: center;
}

main .columns.extra-wide .column > div{
  text-align: center;
}

main .columns.slim-button  a.button {
  padding: 5px 19.5px;
}

main .columns.slim-padding > div {
  padding: 0px;
}

main .columns.slim-padding .column {
  padding: 20px;
}

main .extra-wide .column {
  width: fit-content;
  margin: auto;
}
