@charset "UTF-8";
/***** Categories Icon Settings *****/
/*
Entypo Icon Fonts
http://fontello.github.io/entypo/demo.html
*/
a.blocks-item-link::before {/*カテゴリーブロック共通*/
  font-family: "Entypo";
  font-size: 26px;
  line-height: 41px;
  text-align: center;
  display: block;
  border: 2px solid rgba(3, 91, 144, 1);
  border-radius: 22px;
  width: 44px;
  height: 44px;
  margin-right: 10px;
  box-sizing: border-box;
}
@media (min-width: 768px) {
  a.blocks-item-link::before {/*カテゴリーブロック共通*/
    font-size: 30px;
    line-height: 50px;
    border-radius: 30px;
    width: 52px;
    height: 52px;
    margin-right: 15px;
  }
}
.subhead h1:before {
  display: none;
}
@media (min-width: 768px) {
  .subhead h1:before {
    display: inline-block;
    font-family: "Entypo";
    font-size: 26px;
    line-height: 41px;
    font-weight: normal;
    text-align: center;
    display: inline-block;
    border: 2px solid #fff;
    border-radius: 22px;
    width: 44px;
    height: 44px;
    min-width: 44px;
    min-height: 44px;
    margin-right: 10px;
    box-sizing: border-box;
  }
}
.category-nav li a::before {
  font-family: "Entypo";
  font-size: 18px;
  line-height: 27px;
  text-align: center;
  display: inline-block;
  border: 2px solid rgba(3, 91, 144, 1);
  color: rgba(3, 91, 144, 1);
  border-radius: 16px;
  width: 30px;
  height: 30px;
  box-sizing: border-box;
  position: absolute;
  left: 20px;
  top: 0;
  bottom: 0;
  margin: auto;
}
.blocks-item .blocks-item-link::before,
.subhead h1::before,
.category-nav li a::before {/*デフォルト*/
  content: "\2605";
}
.subhead h1.results::before {/*検索結果*/
  content: "\1f50d";
}
.subhead h1.newrequest::before {/*お問い合わせ*/
  content: "\2709";
}
.subhead h1.errorpage::before {/*エラー*/
  content: "\26a0";
  border: none;
  font-size: 30px;
}
.newstopics h4::before,
.subhead h1.cat-360001582951::before,
.category-nav li.cat-360001582951 a::before {/*お知らせ*/
  content: "\1f4e3";
}
/*カテゴリーアイコン設定*/
#blocks-cat-115000185131 .blocks-item-link::before,
.subhead h1.cat-115000185131::before,
.category-nav li.cat-115000185131 a::before {/*☆☆☆*/
  content: "\1f4d6";
}



/***** Noto Sans *****/
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 200;
  src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.woff2) format('woff2'),
       url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.woff) format('woff'),
       url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.otf) format('opentype');
}
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 300;
  src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-DemiLight.woff2) format('woff2'),
       url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-DemiLight.woff) format('woff'),
       url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-DemiLight.otf) format('opentype');
}
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 400;
  src: local('NotoSansJP-Regular.otf'),
       url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.woff2) format('woff2'),
       url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.woff) format('woff'),
       url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.otf) format('opentype');
}
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 500;
  src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.woff2) format('woff2'),
       url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.woff) format('woff'),
       url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.otf) format('opentype');
}
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 700;
  src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff2) format('woff2'),
       url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff) format('woff'),
       url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.otf) format('opentype');
}


/***** Base *****/
* {
  box-sizing: border-box;
}

body {
  background-color: #FFFFFF;
  color: #333333;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

@media (min-width: 1024px) {
  body > main {
    min-height: 65vh;
  }
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 400;
  margin-top: 0;
}

h1 {
  font-size: 30px;
}

h2 {
  font-size: 22px;
}

h3 {
  font-size: 18px;
  font-weight: 600;
}

h4 {
  font-size: 16px;
}

a {
  color: rgba(3, 91, 144, 1);
  text-decoration: none;
}

a:hover, a:active, a:focus {
  text-decoration: underline;
}

input,
textarea {
  color: #000;
  font-size: 14px;
}

input {
  font-weight: 300;
  max-width: 100%;
  box-sizing: border-box;
  outline: none;
  transition: border .12s ease-in-out;
}

input:focus {
  border: 1px solid rgba(3, 91, 144, 1);
}

input[disabled] {
  background-color: #ddd;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  background: url(/hc/theming_assets/01M4GA8SWFVX5ZE13FSB61XX56) no-repeat #fff;
  background-position: right 10px center;
  border: 1px solid #ddd;
  border-radius: 4px;
  padding: 8px 30px 8px 10px;
  outline: none;
  color: #555;
  width: 100%;
}

select:focus {
  border: 1px solid rgba(3, 91, 144, 1);
}

select::-ms-expand {
  display: none;
}

textarea {
  border: 1px solid #ddd;
  border-radius: 2px;
  resize: vertical;
  width: 100%;
  outline: none;
  padding: 10px;
}

textarea:focus {
  border: 1px solid rgba(3, 91, 144, 1);
}

.container {
  max-width: 1160px;
  margin: 0 auto;
  padding: 0 5%;
}

@media (min-width: 1160px) {
  .container {
    padding: 0;
    width: 90%;
  }
}

.container-divider {
  border-top: 1px solid #ddd;
  margin-bottom: 20px;
}

ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.error-page {
  max-width: 1160px;
  margin: 30px auto;
  padding: 0 5%;
}

@media (min-width: 1160px) {
  .error-page {
    padding: 0;
    width: 90%;
  }
}

.dropdown-toggle::after {
  color: inherit;
}

/***** Buttons *****/
.button, [role="button"] {
  border: 1px solid rgba(3, 91, 144, 1);
  border-radius: 4px;
  color: rgba(3, 91, 144, 1);
  cursor: pointer;
  display: inline-block;
  font-size: 12px;
  line-height: 2.34;
  margin: 0;
  padding: 0 20px;
  text-align: center;
  transition: background-color .12s ease-in-out, border-color .12s ease-in-out, color .15s ease-in-out;
  user-select: none;
  white-space: nowrap;
  width: 100%;
  -webkit-touch-callout: none;
}

@media (min-width: 768px) {
  .button, [role="button"] {
    width: auto;
  }
}

.button::after, [role="button"]::after {
  color: rgba(3, 91, 144, 1);
}

.button:hover, .button:active, .button:focus, .button[aria-selected="true"], [role="button"]:hover, [role="button"]:active, [role="button"]:focus, [role="button"][aria-selected="true"] {
  background-color: rgba(3, 91, 144, 1);
  color: #FFFFFF;
  text-decoration: none;
}

.button[aria-selected="true"]:hover, .button[aria-selected="true"]:focus, .button[aria-selected="true"]:active, [role="button"][aria-selected="true"]:hover, [role="button"][aria-selected="true"]:focus, [role="button"][aria-selected="true"]:active {
  background-color: #011c2c;
  border-color: #011c2c;
}

.button[data-disabled], [role="button"][data-disabled] {
  cursor: default;
}

.button-large, input[type="submit"] {
  background-color: rgba(3, 91, 144, 1);
  border: 0;
  border-radius: 4px;
  color: #FFFFFF;
  font-size: 14px;
  font-weight: 400;
  line-height: 2.72;
  min-width: 190px;
  padding: 0 1.9286em;
  width: 100%;
}

@media (min-width: 768px) {
  .button-large, input[type="submit"] {
    width: auto;
  }
}

.button-large:hover, .button-large:active, .button-large:focus, input[type="submit"]:hover, input[type="submit"]:active, input[type="submit"]:focus {
  background-color: #011c2c;
}

.button-large[disabled], input[type="submit"][disabled] {
  background-color: #ddd;
}

.button-secondary {
  color: #666;
  border: 1px solid #ddd;
  background-color: transparent;
}

.button-secondary:hover, .button-secondary:focus, .button-secondary:active {
  color: #333333;
  border: 1px solid #ddd;
  background-color: #f7f7f7;
}

/***** Tables *****/
.table {
  width: 100%;
  table-layout: fixed;
}

@media (min-width: 768px) {
  .table {
    table-layout: auto;
  }
}

.table th,
.table th a {
  color: #666;
  font-size: 13px;
  font-weight: 300;
  text-align: left;
}

[dir="rtl"] .table th, [dir="rtl"]
.table th a {
  text-align: right;
}

.table tr {
  border-bottom: 1px solid #ddd;
  display: block;
  padding: 20px 0;
}

@media (min-width: 768px) {
  .table tr {
    display: table-row;
  }
}

.table td {
  display: block;
}

@media (min-width: 768px) {
  .table td {
    display: table-cell;
  }
}

@media (min-width: 1024px) {
  .table td, .table th {
    padding: 20px 30px;
  }
}

@media (min-width: 768px) {
  .table td, .table th {
    padding: 10px 20px;
    height: 60px;
  }
}

/***** Forms *****/
.form {
  max-width: 650px;
  padding-bottom: 50px;
}

.form-field ~ .form-field {
  margin-top: 25px;
}

.form-field label {
  display: block;
  font-size: 13px;
  margin-bottom: 5px;
}

.form-field input {
  border: 1px solid #ddd;
  border-radius: 4px;
  padding: 10px;
  width: 100%;
}

.form-field input:focus {
  border: 1px solid rgba(3, 91, 144, 1);
}

.form-field input[type="text"] {
  border: 1px solid #ddd;
  border-radius: 4px;
}

.form-field input[type="text"]:focus {
  border: 1px solid rgba(3, 91, 144, 1);
}

.form-field input[type="checkbox"] {
  width: auto;
}

.form-field .nesty-input {
  border-radius: 4px;
  height: 40px;
  line-height: 40px;
  outline: none;
  vertical-align: middle;
}

.form-field .nesty-input:focus {
  border: 1px solid rgba(3, 91, 144, 1);
  text-decoration: none;
}

.form-field textarea {
  vertical-align: middle;
}

.form-field input[type="checkbox"] + label {
  margin: 0 0 0 10px;
}

.form-field.required > label::after {
  content: "*";
  color: #f00;
  margin-left: 2px;
}

.form-field p {
  color: #666;
  font-size: 12px;
  margin: 5px 0;
}

[data-loading="true"] input,
[data-loading="true"] textarea {
  background: transparent url(/hc/theming_assets/01M43CFK3WXRCXWT32V02ESJZ0) 99% 50% no-repeat;
  background-size: 16px 16px;
}

.form footer {
  margin-top: 40px;
  padding-top: 30px;
}

.form footer a {
  color: #666;
  cursor: pointer;
  margin-right: 15px;
}

.form .suggestion-list {
  font-size: 13px;
  margin-top: 30px;
}

.form .suggestion-list label {
  border-bottom: 1px solid #ddd;
  display: block;
  padding-bottom: 5px;
}

.form .suggestion-list li {
  padding: 10px 0;
}

.form .suggestion-list li a:visited {
  color: #011c2c;
}

h2.form-title {
  margin-top: 30px;
}
@media (min-width: 768px) {
  h2.form-title {
    margin-top: 0;
  }
}

.loader {
  width: 32px;
  height: 32px;
  position: absolute;
  top: 200px;
  left: 0;
  right: 0;
  margin: auto;
}

/***** Header *****/
.header {
  max-width: 1160px;
  margin: 0 auto;
  padding: 0 5%;
  position: relative;
  align-items: center;
  display: flex;
  height: 71px;
  justify-content: space-between;
}

@media (min-width: 1160px) {
  .header {
    padding: 0;
    width: 90%;
  }
}

.logo img {
  max-height: 36px;
}

.user-nav {
  display: inline-block;
  position: absolute;
  white-space: nowrap;
}

@media (min-width: 768px) {
  .user-nav {
    position: relative;
  }
}

.user-nav[aria-expanded="true"] {
  background-color: #fff;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.15), 0 4px 10px 0 rgba(0, 0, 0, 0.1);
  border: solid 1px #ddd;
  right: 0;
  left: 0;
  top: 71px;
  z-index: 1;
}

.user-nav[aria-expanded="true"] > a {
  display: block;
  margin: 20px;
}

.nav-wrapper a {
  border: 0;
  color: rgba(3, 91, 144, 1);
  display: none;
  font-size: 14px;
  padding: 0 20px 0 0;
  width: auto;
}

@media (min-width: 768px) {
  .nav-wrapper a {
    display: inline-block;
  }
}

[dir="rtl"] .nav-wrapper a {
  padding: 0 0 0 20px;
}

.nav-wrapper a:hover, .nav-wrapper a:focus, .nav-wrapper a:active {
  background-color: transparent;
  color: rgba(3, 91, 144, 1);
  text-decoration: underline;
}

.nav-wrapper a.login {
  display: inline-block;
  padding: 0 10px;
  border: 1px solid rgba(3, 91, 144, 1);

}
.nav-wrapper a.login:hover {
  text-decoration: none;
  background-color: rgba(3, 91, 144, 1);
  color: #fff;
}

.nav-wrapper .icon-menu {
  display: inline-block;
  margin-right: 10px;
  color: rgba(3, 91, 144, 1);
}

@media (min-width: 768px) {
  .nav-wrapper a.login {
    padding: 0 20px;
  }
  .nav-wrapper a.login::before {
    content: "\e740";
    font-family: "Entypo";
    margin-right: 5px;
  }
  .nav-wrapper .icon-menu {
    display: none;
  }
}

[dir="rtl"] .nav-wrapper .icon-menu {
  margin-left: 10px;
  margin-right: 0;
}

/***** User info in header *****/
.user-info {
  display: inline-block;
}

.user-info .dropdown-toggle::after {
  display: none;
}

@media (min-width: 768px) {
  .user-info .dropdown-toggle::after {
    display: inline-block;
  }
}

.user-info > [role="button"] {
  border: 0;
  color: rgba(3, 91, 144, 1);
  min-width: 0;
  padding: 0;
  white-space: nowrap;
}

.user-info > [role="button"]:hover {
  color: rgba(3, 91, 144, 1);
  background-color: transparent;
}

.user-info > [role="button"]::after {
  color: rgba(3, 91, 144, 1);
  padding-right: 15px;
}

[dir="rtl"] .user-info > [role="button"]::after {
  padding-left: 15px;
  padding-right: 0;
}

#user #user-name {
  display: none;
  font-size: 14px;
}

@media (min-width: 768px) {
  #user #user-name {
    display: inline-block;
  }
}

#user #user-name:hover {
  text-decoration: underline;
}

/***** User avatar *****/
.user-avatar {
  height: 25px;
  width: 25px;
  border-radius: 50%;
  display: inline-block;
  vertical-align: middle;
}

.avatar {
  display: inline-block;
  position: relative;
}

.avatar img {
  height: 40px;
  width: 40px;
}

.avatar .icon-agent::before {
  background-color: rgba(3, 91, 144, 1);
  border: 2px solid #fff;
  border-radius: 50%;
  bottom: -4px;
  color: #FFFFFF;
  content: "\1F464";
  font-size: 14px;
  height: 14px;
  line-height: 14px;
  position: absolute;
  right: -2px;
  text-align: center;
  width: 14px;
}

/***** Footer *****/
.footer {
  padding: 0 0 15px 0;
  background-color: rgba(3, 91, 144, 1);
}
.footer a {
  color: #666;
}
.footer-inner {
  max-width: 1160px;
  margin: 0 auto;
  padding: 0 5%;
}
.footer-upper {
  background-color: #f6f6f6;
  padding: 30px 0;
}
.footer-upper .footer-inner {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
}
.footer-upper .footer-inner ul {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  width: 100%;
}
.footer-upper .footer-inner ul li {
  text-align: center;
  line-height: 2.5em;
}
.footer-upper .footer-inner img {
  max-height: 34px;
  width: auto;
  margin: 10px;
}
.footer-bottom {
  border-top: 1px solid #ddd;
}
.footer-bottom .footer-inner {
  width: 100%;
  margin-top: 15px;
  display: flex;
  flex-flow: column-reverse nowrap;
  justify-content: center;
}
.footer-bottom .footer-inner > *{
  text-align: center;
}
.footer-bottom .footer-inner .copy {
  font-size: 11px;
  font-family: "Quicksand";
  margin: 0;
  color: #FFFFFF;
}
.footer img.footerLogo {
  width: 150px;
  height: auto;
}
.footer-language-selector {
  color: #666;
  display: inline-block;
  font-weight: 300;
  font-size: 13px;
}
.footer-language-selector .dropdown-toggle {
  display: inline-block;
  border: 1px solid #b3b3b3;
  border-radius: 4px;
  padding: 5px 10px;
}
.footer .dropdown-menu-end {
  left: 0 !important;
}
@media (min-width: 1160px) {
  .footer-inner {
    padding: 0;
    width: 90% !important;
  }
}

@media (min-width: 768px) {
  .footer {
    padding: 0 0 20px 0;
    margin-top: 50px;
  }
  .footer-upper {
    padding: 50px 0;
  }
  .footer-upper .footer-inner ul {
    flex-flow: row nowrap;
    justify-content: space-around;
  }
  .footer-upper .footer-inner ul li {
    text-align: center;
    line-height: 1.4em;
  }
  .footer-upper .footer-inner img {
    margin: 0;
  }
  .footer-bottom .footer-inner {
    align-items: center;
    margin-top: 20px;
    flex-flow: row nowrap;
  }
  .footer-language-selector {
    margin-left: 30px;
    margin-top: 0;
  }
  .footer-language-selector .dropdown-toggle {
    padding: 0 10px;
  }
}

/***** Breadcrumbs *****/
.breadcrumbs {
  margin: 0 0 15px 0;
  padding: 0;
}

@media (min-width: 768px) {
  .breadcrumbs {
    margin: 0;
  }
}

.breadcrumbs li {
  color: #666;
  display: inline;
  font-weight: 300;
  font-size: 13px;
  max-width: 450px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.breadcrumbs li:first-of-type::before {
  content: "\2302";
  font-family: "Entypo";
  font-size: 13px;
  line-height: 1.5;
  margin-right: 3px;
  color: rgba(3, 91, 144, 1);
}
.breadcrumbs li + li::before {
  content: ">";
  margin: 0 4px;
}
.breadcrumbs li a:visited {
  color: rgba(3, 91, 144, 1);
}

/***** Search field *****/
.search {
  position: relative;
}
.search input[type="search"] {
  border: 1px solid #fff;
  border-radius: 30px;
  box-sizing: border-box;
  color: #999;
  height: 40px;
  padding-left: 40px;
  padding-right: 20px;
  -webkit-appearance: none;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.8);
}
[dir="rtl"] .search input[type="search"] {
  padding-right: 40px;
  padding-left: 20px;
}
.search input[type="search"]:focus {
  background-color: rgba(255, 255, 255, 1);
  color: #555;
}
.search::before {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  color: #999;
  content: "\1F50D";
  font-size: 18px;
  position: absolute;
  left: 15px;
}
[dir="rtl"] .search::before {
  right: 15px;
  left: auto;
}
.search-full input[type="search"] {
  border: 1px solid #fff;
}
.subhead {
  background-image: url(/hc/theming_assets/01M43CFN0BJZQA31CXF8RZ7CDQ);
  background-position: center;
  background-size: cover;
}
.subhead .wrapcolor {
  padding: 20px;
}
.subhead .container {
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  flex: 1 0 auto;
}
.subhead .container h1 {
  color: #fff;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 20px;
  font-size: 24px;
  line-height: 30px;
}
.subhead .search {
  width: 100%;
  max-width: 500px;
  height: 40px;
  /*margin-top: 20px;*/
}
.subhead .range {
  width: 130px;
  border: 1px solid #fff;
  border-radius: 30px 0 0 30px;
  box-sizing: border-box;
  color: #666;
  height: 40px;
  padding-left: 15px;
  padding-right: 15px;
  -webkit-appearance: none;
  font-size: 12px;
  letter-spacing: 0;
}
.subhead .search.all input[type="search"] {
  border-radius: 30px 30px 30px 30px;
  padding-left: 45px;
}
.subhead .search.all::before {
  content: "\1F50D";
}
.subhead .search_wrap {
  display: flex;
  align-items: center;
}
@media (min-width: 768px) {
  .subhead .container h1 {
    font-size: 30px;
    line-height: 44px;
    padding-right: 40px;
  }
}
@media (min-width: 1024px) {
  .subhead .container {
    flex-flow: row nowrap;
    justify-content: space-between;
  }
  .subhead .container h1 {
    margin-bottom: 0;
  }
  .subhead .search {
    width: 280px;
    margin-top: 0;
  }
}

/***** Hero component *****/
.hero {
  background-image: url(/hc/theming_assets/01M43CFN0BJZQA31CXF8RZ7CDQ);
  background-position: center;
  background-size: cover;
  height: auto;
  text-align: center;
  width: 100%;
  position: relative;
  margin-bottom: 0 !important;
}
.wrapcolor {
  padding: 0 20px;
  background-color: rgba(3, 91, 144, 1);
  opacity: 0.85;
}
.hero-inner {
  position: relative;
  max-width: 1160px;
  margin: 0 auto;
  padding: 30px 0;
}
.hero-inner h1 {
  color: #FFFFFF;
  font-size: 40px;
  font-family: "Quicksand";
  font-weight: 400;
  margin: 0;
  line-height: 1.3;
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  justify-content: center;
}
.hero-inner h1 img {
  height: 50px;
  width: auto;
  margin-right: 10px;
}
.hero-inner .faqtitle {
  margin-top: 60px;
  margin-bottom: 20px;
}
.hero-inner .faqtitle h2 {
  color: #FFFFFF;
  margin-top: 0;
  margin-bottom: 0;
  display: inline-block;
  width: 180px;
}
.hero-inner .faqtitle hr {
  height: 1px;
  border: none;
  border-bottom: 1px solid #fff;
  display: inline-block;
  width: calc(50% - 100px);
}
.hero-inner p {
  color: #FFFFFF;
}
.hero .search {
  max-width: 600px;
  margin: 0 auto;
}
.page-header {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 10px 0;
}

@media (min-width: 768px) {
  .hero {
    margin-bottom: 40px !important;
  }
  .hero-inner h1 {
    margin: 30px 0;
    font-size: 40px;
  }
  .hero-inner h1 img {
  	height: 45px;
  }
  .page-header {
    align-items: baseline;
    flex-direction: row;
    margin: 0;
  }
}

.page-header .section-subscribe {
  flex-shrink: 0;
  margin-bottom: 10px;
}

@media (min-width: 768px) {
  .page-header .section-subscribe {
    margin-bottom: 0;
  }
}

.page-header h1 {
  flex-grow: 1;
  margin-bottom: 10px;
}

.page-header-description {
  font-style: italic;
  font-weight: 300;
  margin: 0 0 30px 0;
  word-break: break-word;
  font-size: 24px;
}

@media (min-width: 1024px) {
  .page-header-description {
    flex-basis: 100%;
  }
}

.page-header .icon-lock::before {
  content: "\1F512";
  font-size: 20px;
  position: relative;
  left: -5px;
  vertical-align: baseline;
}

.sub-nav {
  display: none;
}

@media (min-width: 768px) {
  .sub-nav {
    display: flex;
    align-items: baseline;
    flex-direction: row;
    justify-content: space-between;
    padding: 10px 0 35px;
  }
}

@media (min-width: 768px) {
  .sub-nav input[type="search"] {
    min-width: 300px;
  }
}

.sub-nav input[type="search"]::after {
  font-size: 15px;
}

/***** News topics *****/
.newstopics {
  background-color: #fff;
  padding: 0;
  margin-bottom: 20px;
  position: relative;
  display: none;
}
.newstopics h4 {
  font-size: 20px;
  line-height: 1.2em;
  color: rgba(3, 91, 144, 1);
  margin-bottom: 18px;
  padding: 20px 20px 0 20px;
}
.newstopics h4::before {
  font-size: 24px;
  font-family: "Entypo";
  margin-right: 8px;
}
.newstopics ul {
  display: flex;
  justify-content: space-between;
  flex-flow: row wrap;
}
.newstopics ul li {
  display: block;
  padding: 6px 20px;
  border-top: 1px dotted #ddd;
  width: 100%;
}
.newstopics ul li:last-of-type {
  border-bottom: 1px dotted #ddd;
}
.newstopics ul li span {
  display: block;
}
.newstopics > a {
  position: absolute;
  top: 20px;
  right: 20px;
  display: inline-block;
  border: 1px solid gray;
  color: gray;
  font-size: 13px;
  border-radius: 15px;
  padding: 5px 10px;
  line-height: 1em;
  text-decoration: none;
}
.newstopics > a::before {
  content: "\e75e";
  font-family: "Entypo";
  margin-right: 5px;
}
.newstopics > a:hover {
  text-decoration: none;
  background-color: gray;
  color: #FFFFFF;
}
@media (min-width: 768px) {
  .newstopics {
    border: 1px solid rgba(3, 91, 144, 1);
    border-radius: 10px;
    padding: 20px 20px 12px 20px;
    margin: 0 20px 60px 20px;
  }
  .newstopics h4 {
    padding: 0;
  }
  .newstopics ul li:last-of-type {
    border-bottom: none;
  }
  .newstopics ul li span {
    display: inline;
    margin-right: 30px;
  }
  .newstopics > a {
    padding: 3px 10px;
  }
}
@media (min-width: 1160px) {
  .newstopics {
    margin: 0 auto 60px auto;
  }
}


/***** Blocks *****/
/* Used in Homepage#categories and Community#topics */
.blocks-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  list-style: none;
  padding: 0;
}
.blocks-item {
  color: rgba(3, 91, 144, 1);
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  margin-bottom: 0px;
  padding: 0 0 20px;
  width: 100%;
  text-align: center;
  border-bottom: 1px dotted #ddd;
  position: relative;
}
.blocks-item:last-of-type {
  margin-bottom: 0;
  border-bottom: none;
  padding: 0;
}
.blocks-item > ul {
  padding: 15px 0;
}
.blocks-item > ul li {
  display: block;
  list-style-type: none;
  text-align: left;
  line-height: 1.4em;
  position: relative;
}
.blocks-item > ul li::before {
  content: "\e75e";
  font-family: "Entypo";
  position: absolute;
  left: 5px;
  top: 8px;
}
.blocks-item > ul li:nth-of-type(n + 4) {
  display: none;
}
.blocks-item > ul li a {
  display: block;
  padding: 10px 0 10px 1.2em;
  color: #333333;
}
.blocks-list-more {
  display: block;
  border: 1px solid gray;
  color: gray;
  font-size: 13px;
  border-radius: 6px;
  padding: 10px;
  line-height: 1em;
  text-decoration: none;
}
.blocks-list-more:hover, .blocks-list-more:focus, .blocks-list-more:active {
  background-color: gray;
  color: #fff;
  text-decoration: none;
}
.blocks-list-more::before {
  content: "\e75e";
  font-family: "Entypo";
  margin-right: 5px;
}
.blocks-item > ul li a:hover *, .blocks-item > ul li a:focus *, .blocks-item > ul li a:active * {
  text-decoration: underline;
}
.blocks-item-internal {
  background-color: transparent;
  border: 1px solid #ddd;
}
.blocks-item-internal .icon-lock::before {
  content: "\1F512";
  font-size: 15px;
  bottom: 5px;
  position: relative;
}
.blocks-item-internal a {
  color: #333333;
}
.blocks-item-link {
  color: rgba(3, 91, 144, 1);
  display: flex;
  align-items: center;
  justify-content: flex-start;
  position: relative;
}
.blocks-item-link:hover, .blocks-item-link:focus, .blocks-item-link:active {
  text-decoration: none;
  opacity: 0.7;
}
.blocks-item-link h4:hover, .blocks-item-link h4:focus, .blocks-item-link h4:active {
  text-decoration: none;
}
.blocks-item-title {
  font-size: 18px;
  line-height: 1.3em;
  font-weight: 500;
  text-align: left;
  margin: 0;
  width: calc(100% - 54px);
}
.blocks-item-description {
  font-weight: 300;
  margin: 0;
  color: gray;
  font-size: 13px;
}
.blocks-item-description:not(:empty) {
  margin-top: 10px;
}

@media (min-width: 768px) {
  .blocks-list {
    margin: 0 -15px;
  }
  .blocks-item {
    width: 33.33%;
    margin-bottom: 60px;
    padding: 0 20px 1.5em;
    border-right: 1px dotted #ddd;
    border-bottom: none;
  }
  .blocks-item:last-of-type {
    margin-bottom: 60px;
    padding: 0 20px 1.5em;
  }
  .blocks-item > ul {
    padding: 15px 0 15px 15px;
  }
  .blocks-item > ul li {
    padding: 4px 0 4px 1.2em;
  }
  .blocks-item > ul li a {
    display: inline;
    padding: 0;
  }
  .blocks-item > ul li::before {
    top: 4px;
  }
  .blocks-item:nth-of-type(3n),
  .blocks-item:last-of-type {
    border-right: none;
  }
  .blocks-list-more {
    position: absolute;
    bottom: 0;
    right: 20px;
    border-radius: 15px;
    padding: 3px 10px;
  }
  .blocks-item-title {
    width: calc(100% - 67px);
  }
}
@media (min-width: 1024px) {
  .blocks-item {
    /*width: 25%;*/
  }
  .blocks-item:nth-of-type(3n) {
    border-right: 1px dotted #ddd;
  }
  .blocks-item:nth-of-type(4n),
  .blocks-item:last-of-type {
    border-right: none;
  }
}

/***** Homepage *****/
.section {
  margin-bottom: 40px;
}
.knowledge-base {
  padding-top: 25px;
}

@media (min-width: 768px) {
  .section {
    margin-bottom: 60px;
  }
  .knowledge-base {
  	padding-top: 0;
	}
}

.section h2 {
  margin-bottom: 10px;
  text-align: center;
}

/***** Promoted articles *****/
.promoted-articles {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
}
@media (min-width: 768px) {
  .promoted-articles {
    flex-direction: row;
  }
}
.promoted-articles-item {
  flex: 1 0 auto;
  text-align: left;
}
.promoted-articles-item:nth-child(2n) {
  padding-right: 0;
}
.promoted-articles-item a {
  color: #FFFFFF;
  display: block;
  padding: 10px 0 10px 1.3em;
  position: relative;
}
.promoted-articles-item:last-child a {
  border: 0;
}
.promoted-articles-item a::before {
  content: "\e75e";
  font-family: "Entypo";
  color: #FFFFFF;
  position: absolute;
  left: 5px;
}
.promoted-articles-item a .uvc {
  display: inline-block;
  margin-left: 1em;
  font-size: 12px;
  color: rgba(255, 255, 255, 0.4);
}
.promoted-articles-item a .uvc::before {
  content: "\1f44d";
  font-family: "Entypo";
  position: relative;
  bottom: 1px;
  margin-right: 2px;
}
@media (min-width: 768px) {
  .promoted-articles-item {
    align-items: flex-start;
    flex: 0 0 auto;
    padding-right: 30px;
    width: 50%;
  }
  [dir="rtl"] .promoted-articles-item {
    padding: 0 0 0 30px;
  }
}

/***** Community section in homepage *****/
.community {
  text-align: center;
}

.community-image {
  min-height: 300px;
  background-image: url(/hc/theming_assets/01M4GA8VQ6P4Y9CS0QHEBNWPEB);
  background-position: center;
  background-repeat: no-repeat;
  max-width: 100%;
}

.community,
.activity {
  border-top: 1px solid #ddd;
  padding: 30px 0;
}

/***** Recent activity *****/
.recent-activity-header {
  margin-bottom: 10px;
  text-align: center;
}

.recent-activity-list {
  padding: 0;
}

.recent-activity-item {
  border-bottom: 1px solid #ddd;
  overflow: auto;
  padding: 20px 0;
}

.recent-activity-item-parent {
  font-size: 16px;
}

.recent-activity-item-parent, .recent-activity-item-link {
  margin: 6px 0;
  color: #333333;
  display: inline-block;
  width: 100%;
}

@media (min-width: 768px) {
  .recent-activity-item-parent, .recent-activity-item-link {
    width: 70%;
    margin: 0;
  }
}

.recent-activity-item-link {
  font-size: 14px;
  font-weight: 300;
}

.recent-activity-item-meta {
  margin: 15px 0 0 0;
  float: none;
}

@media (min-width: 768px) {
  .recent-activity-item-meta {
    margin: 0;
    float: right;
  }
  [dir="rtl"] .recent-activity-item-meta {
    float: left;
  }
}

.recent-activity-item-time, .recent-activity-item-comment {
  color: #666;
  display: inline-block;
  font-size: 13px;
  font-weight: 300;
}

.recent-activity-item-comment {
  padding-left: 5px;
}

[dir="rtl"] .recent-activity-item-comment {
  padding: 0 5px 0 0;
}

.recent-activity-item-comment::before {
  display: inline-block;
}

.recent-activity-item-comment span::before {
  color: rgba(3, 91, 144, 1);
  content: "\1F4AC";
  display: inline-block;
  font-size: 15px;
  padding-right: 3px;
  vertical-align: middle;
}

[dir="rtl"] .recent-activity-item-comment span::before {
  padding-left: 3px;
}

.recent-activity-controls {
  padding-top: 15px;
}

/***** Category pages *****/
.category-container {
  display: flex;
  flex-flow: column-reverse nowrap;
  align-items: flex-start;
  margin-top: 30px;
}
.category-content {
  width: 100%;
}
.section-tree {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: space-between;
}
.section-tree .section {
  flex: initial;
  margin-bottom: 20px;
  padding-bottom: 20px;
}
.section-tree .section-tree-title {
  display: block;
}
.section-tree .section-tree-title a {
  display: block;
  background-color: #f3f3f3;
  padding: 10px;
}
.section-tree .icon-lock::before {
  vertical-align: baseline;
}
.section-tree-title {
  margin-bottom: 0;
}
.section-tree-title a {
  color: #333333;
}
.section-tree .see-all-articles {
  display: block;
  padding: 15px 0;
  text-align: right;
}
.article-list-item {
  border-bottom: 1px dotted #ddd;
  font-size: 16px;
  padding: 0;
  position: relative;
}
.article-list-item:last-of-type {
  border-bottom: none;
}
.article-list-item a {
  display: block;
  color: #333333;
  padding: 15px 0 15px 1.4em;
}
.article-list-item::before {
  content: "\e75e";
  font-family: "Entypo";
  position: absolute;
  left: 5px;
  top: 0;
  bottom: 0;
  margin: auto;
  height: 1em;
  line-height: 1em;
  color: rgba(3, 91, 144, 1);
}
.icon-star::before {
  color: rgba(3, 91, 144, 1);
  font-size: 18px;
}
.section-empty {
  margin-left: 30px;
}
.category-nav {
  width: 110%;
  position: relative;
  left: -5%;
}
.category-nav ul {
  display: block;
}
.category-nav li.active a {
  color: #fff;
  background-color: rgba(3, 91, 144, 1);
}
.category-nav li.active a::before {
  color: #fff;
  border-color: #fff;
}
.category-nav li a {
  display: block;
  text-decoration: none;
  color: rgba(3, 91, 144, 1);
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0;
  position: relative;
  padding: 10px 20px 10px 60px;
  border-top: 1px solid #ddd;
}
.category-nav li a:hover {
  opacity: 0.7;
}
.spback {
  display: block;
  border-top: 1px solid #ddd;
  padding: 12px 20px;
  text-align: right;
  background-color: #f6f6f6;
}
.spback::after {
  content: "\e75e";
  font-family: "Entypo";
  margin-left: 5px;
}
.spback:hover {
  text-decoration: none;
}

@media (min-width: 768px) {
  .category-container {
    flex-flow: row nowrap;
    justify-content: space-between;
    margin-top: 0;
  }
  .category-content {
    width: calc(100% - 260px);
  }
  .section-tree .section {
    display: flex;
    flex-flow: column nowrap;
    margin-bottom: 40px;
    padding-bottom: 40px;
    border-bottom: 1px dotted #ddd;
  }
  .section-tree .section:first-of-type {
    border-top: 1px dotted #ddd;
    padding-top: 40px;
  }
  .section-tree .section-tree-title {
    width: 250px;
    padding-right: 30px;
  }
  .section-tree .section-tree-title a {
    display: inline;
    padding: 0;
    background-color: transparent;
  }
  .section-tree .article-list {
    width: 100%;
    margin-left: 30px;
  }
  .article-list-item {
    border-bottom: 1px dotted #ddd;
    font-size: 16px;
    padding: 15px 0 15px 1.4em;
    position: relative;
  }
  .article-list-item a {
    display: inline;
    padding: 0;
  }
  .article-list-item::before {
    top: initial;
    bottom: initial;
    height: initial;
    line-height: inherit;
  }
  .category-nav {
    width: 220px;
    flex: 0 0 auto;
    left: 0;
  }
  .category-nav ul {
    display: none;
    border: 1px solid rgba(3, 91, 144, 1);
    border-radius: 6px;
    padding: 12px 0;
  }
  .category-nav li a {
    font-size: 16px;
    font-weight: 500;
    /*padding: 8px 20px 8px 60px;*/
    border: none;
  }
  .spback {
  	display: none;
	}
}

@media (min-width: 1024px) {
  .category-content {
    width: calc(100% - 320px);
  }
  .section-tree .section {
    flex-flow: row nowrap;
  }
  .section-tree .article-list {
    width: calc(100% - 280px);
  }
  .category-nav {
    width: 280px;
  }
}


/***** Section pages *****/
.section-container {
  display: flex;
  flex-flow: column-reverse nowrap;
  align-items: flex-start;
  margin-top: 30px;
}
.section-content {
  width: 100%;
  margin-bottom: 40px;
}
.section-subscribe .dropdown-toggle::after {
  display: none;
}

@media (min-width: 768px) {
  .section-container {
    flex-flow: row nowrap;
    justify-content: space-between;
    margin-top: 0;
  }
  .section-content {
    width: calc(100% - 260px);
    margin-bottom: 0;
  }
}

@media (min-width: 1024px) {
  .section-content {
    width: calc(100% - 320px);
  }
}


/***** Article *****/
.article-container {
  display: flex;
  flex-flow: column-reverse nowrap;
  align-items: flex-start;
  margin-top: 30px;
}
.article {
  width: 100%;
  margin-bottom: 40px;
}
.article-header {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 40px;
  margin-top: 20px;
}
.article-title {
  display: block;
  color: rgba(3, 91, 144, 1);
  border-left: 5px solid rgba(3, 91, 144, 1);
  padding: 10px 20px;
  background-color: #f6f6f6;
  font-size: 24px;
  width: 100%;
}
.article-author {
  margin-bottom: 10px;
}
.article-title .icon-lock::before {
  content: "\1F512";
  font-size: 20px;
  position: relative;
  left: -5px;
  vertical-align: baseline;
}
.article [role="button"] {
  flex-shrink: 0;
  /*Avoid collapsing elements in Safari (https://github.com/philipwalton/flexbugs#1-minimum-content-sizing-of-flex-items-not-honored)*/
  width: 100%;
}

@media (min-width: 768px) {
  .article-container {
    flex-flow: row nowrap;
    justify-content: space-between;
    margin-top: 0;
  }
  .article {
    width: calc(100% - 260px);
    margin-bottom: 0;
  }
  .article-header {
    flex-direction: row;
    margin-top: 0;
  }
  .article-title {
    flex-basis: 100%;
    font-size: 30px;
    /* Take entire row */
  }
  .article [role="button"] {
    width: auto;
  }
}

@media (min-width: 1024px) {
  .article {
    width: calc(100% - 320px);
  }
}

.article-body img {
  cursor: zoom-in;
}
@media all and (-ms-high-contrast:none) {
  .article-body img {
    cursor: pointer\0;
  }
}

.article-info {
  max-width: 100%;
}

.article-meta {
  display: inline-block;
  vertical-align: middle;
}

.article-body img {
  height: auto;
  max-width: 100%;
}

.article-body ul, .article-body ol {
  padding-left: 20px;
  list-style-position: outside;
  margin: 20px 0 20px 20px;
}

[dir="rtl"] .article-body ul, [dir="rtl"] .article-body ol {
  padding-right: 20px;
  padding-left: 0;
  margin-left: 0;
  margin-right: 20px;
}

.article-body ul > ul, .article-body ol > ol, .article-body ol > ul, .article-body ul > ol, .article-body li > ul, .article-body li > ol {
  margin: 0;
}

.article-body ul {
  list-style-type: disc;
}

.article-body a:visited {
  color: #011c2c;
}

.article-body code {
  background: #f7f7f7;
  border: 1px solid #ddd;
  border-radius: 3px;
  padding: 0 5px;
  margin: 0 2px;
}

.article-body pre {
  background: #f7f7f7;
  border: 1px solid #ddd;
  border-radius: 3px;
  padding: 10px 15px;
  overflow: auto;
  white-space: pre;
}

.article-body blockquote {
  border-left: 1px solid #ddd;
  color: #666;
  font-style: italic;
  padding: 0 15px;
}

.article-body > p:last-child {
  margin-bottom: 0;
}

.article-content {
  line-height: 1.6;
  margin: 40px 0;
  word-wrap: break-word;
}

.article-footer {
  align-items: center;
  display: flex;
  justify-content: space-between;
  padding-bottom: 20px;
}

.article-comment-count {
  color: #666;
  font-weight: 300;
}

.article-comment-count:hover {
  text-decoration: none;
}

.article-comment-count .icon-comments {
  color: rgba(3, 91, 144, 1);
  content: "\1F4AC";
  display: inline-block;
  font-size: 18px;
  padding: 5px;
}

.article-sidebar {
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #ddd;
  flex: 1 0 auto;
  margin-bottom: 20px;
  padding: 0;
}

@media (min-width: 1024px) {
  .article-sidebar {
    border: 0;
    flex: 0 0 17%;
    height: auto;
  }
}

.article-relatives {
  border-top: 1px solid #ddd;
  display: flex;
  flex-direction: column;
  padding: 20px 0;
}

@media (min-width: 768px) {
  .article-relatives {
    flex-direction: row;
  }
}

.article-relatives > * {
  margin-right: 0;
}

.article-relatives > *:last-child {
  margin: 0;
}

@media (min-width: 768px) {
  .article-relatives > * {
    padding-right: 20px;
    border-right: 1px dotted #ddd;
  }
  .article-relatives > *:last-child {
    padding-right: 0;
    border-right: none;
    padding-left: 20px;
  }
  .article-relatives > *:first-child {
    padding-left: 0;
  }
}

.article-votes {
  border-top: 1px solid #ddd;
  padding: 30px 0;
  text-align: center;
}

.article-vote {
  background: transparent;
  border: 1px solid rgba(3, 91, 144, 1);
  color: rgba(3, 91, 144, 1);
  margin: 10px 5px;
  min-width: 90px;
  width: auto;
}

.article-vote::before {
  font-size: 8px;
  margin-right: 10px;
}

[dir="rtl"] .article-vote::before {
  margin-right: 0;
  margin-left: 10px;
}

.article-vote::after {
  content: attr(title);
  /* Yes/No label*/
}

.article-vote:focus, .article-vote:active {
  background-color: transparent;
  color: rgba(3, 91, 144, 1);
}

.article-vote:hover {
  background-color: rgba(3, 91, 144, 1);
}

.article-vote:hover::before, .article-vote:hover::after, .article-vote[aria-selected="true"]::before, .article-vote[aria-selected="true"]::after {
  color: #FFFFFF;
}

.article-vote-up::before {
  content: "\2713";
}

.article-vote-down::before {
  content: "\2715";
}

.article-more-questions {
  margin: 10px 0 20px;
  text-align: center;
}

.article-return-to-top {
  border-top: 1px solid #ddd;
}

@media (min-width: 1024px) {
  .article-return-to-top {
    display: none;
  }
}

.article-return-to-top a {
  color: #333333;
  display: block;
  padding: 20px 0;
}

.article-return-to-top a:hover, .article-return-to-top a:focus {
  text-decoration: none;
}

.article-return-to-top .icon-arrow-up::before {
  font-size: 16px;
  margin-left: 5px;
}

[dir="rtl"] .article-return-to-top .icon-arrow-up::before {
  margin-right: 10px;
}

.article-unsubscribe {
  background-color: rgba(3, 91, 144, 1);
  color: #FFFFFF;
  text-decoration: none;
}

.article-unsubscribe:hover {
  background-color: #011c2c;
  border-color: #011c2c;
}

.vd-afterlink {
  display: none;
}
.vd-afterlink ul {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  padding: 50px 0 30px 0;
  position: relative;
}
.vd-afterlink ul::before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 16px 40px 0 40px;
  border-color: #dddddd transparent transparent transparent;
  position: absolute;
  top: 5px;
  left: 0;
  right: 0;
  margin: auto;
}
.vd-afterlink ul li {
  display: inline-block;
}
.vd-afterlink ul li a {
  display: inline-block;
  background-color: rgba(3, 91, 144, 1);
  color: #fff;
  border-radius: 4px;
  padding: 10px 30px;
}
.vd-afterlink ul li a:link,
.vd-afterlink ul li a:visited,
.vd-afterlink ul li a:hover,
.vd-afterlink ul li a:active {
  text-decoration: none;
}
.vd-afterlink ul li a:hover {
  opacity: 0.7;
}
.vd-afterlink ul li a.chatbtn {
  margin-right: 30px;
}
.vd-afterlink ul li a.chatbtn::before {
  content: "\e720";
  font-family: "Entypo";
  margin-right: 8px;
}
.vd-afterlink ul li a.formbtn::before {
  content: "\2709";
  font-family: "Entypo";
  margin-right: 8px;
}

.sidenav-title {
  font-size: 15px;
  position: relative;
}

.sidenav-item {
  border-radius: 4px;
  color: #333333;
  display: block;
  font-weight: 300;
  margin-bottom: 10px;
  padding: 10px;
}

.sidenav-item.current-article, .sidenav-item:hover {
  background-color: rgba(3, 91, 144, 1);
  color: #FFFFFF;
  text-decoration: none;
}

.recent-articles h3,
.related-articles h3 {
  font-size: 16px;
  margin: 20px 0;
}

.recent-articles li,
.related-articles li {
  margin-bottom: 15px;
}
.recent-articles li a,
.related-articles li a {
  display: block;
  padding: 5px 0 5px 1.2em;
  position: relative;
}
.recent-articles li a::before,
.related-articles li a::before {
  content: "\e75e";
  font-family: "Entypo";
  position: absolute;
  left: 5px;
}

@media (min-width: 768px) {
  .recent-articles li a,
  .related-articles li a {
    display: inline-block;
  }
}

/***** Attachments *****/
/* Styles attachments inside posts, articles and comments */
.attachments .attachment-item {
  padding-left: 20px;
  position: relative;
  margin-bottom: 10px;
}

.attachments .attachment-item:last-child {
  margin-bottom: 0;
}

.attachments .attachment-item::before {
  color: #333333;
  content: "\1F4CE";
  font-size: 15px;
  left: 0;
  position: absolute;
  top: 5px;
}

[dir="rtl"] .attachments .attachment-item {
  padding-left: 0;
  padding-right: 20px;
}

[dir="rtl"] .attachments .attachment-item::before {
  left: auto;
  right: 0;
}

.upload-dropzone span {
  color: #666;
}

/***** Social share links *****/
.share {
  padding: 0;
  white-space: nowrap;
}

.share li, .share a {
  display: inline-block;
}

.share a {
  border-radius: 50%;
  height: 25px;
  line-height: 25px;
  overflow: hidden;
  width: 25px;
}

.share a::before {
  color: #666;
  display: block;
  font-size: 23px;
  text-align: center;
  width: 100%;
}

.share a:hover {
  text-decoration: none;
}

.share a:hover::before {
  color: rgba(3, 91, 144, 1);
}

.share-twitter::before {
  content: "\e901";
}

.share-facebook::before {
  content: "\e903";
}

.share-linkedin::before {
  content: "\e900";
}

.share-googleplus::before {
  content: "\e902";
}

/***** Comments *****/
/* Styles comments inside articles, posts and requests */
.comment {
  border-bottom: 1px solid #ddd;
  padding: 20px 0;
}

.comment-heading {
  margin-bottom: 5px;
  margin-top: 0;
}

.comment-overview {
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #ddd;
  padding: 20px 0;
}

.comment-overview p {
  margin-top: 0;
}

.comment-callout {
  color: #666;
  display: inline-block;
  font-weight: 300;
  font-size: 13px;
  margin-bottom: 0;
}

.comment-callout a {
  color: rgba(3, 91, 144, 1);
}

.comment-sorter {
  display: inline-block;
  float: right;
}

.comment-sorter a {
  color: #666;
  font-weight: 300;
  font-size: 13px;
  text-decoration: none;
}

[dir="rtl"] .comment-sorter {
  float: left;
}

.comment-wrapper {
  display: flex;
  position: relative;
}

.comment-wrapper.comment-official {
  border: 1px solid rgba(3, 91, 144, 1);
  padding: 40px 20px 20px;
}

@media (min-width: 768px) {
  .comment-wrapper.comment-official {
    padding-top: 20px;
  }
}

.comment-info {
  min-width: 0;
  padding-right: 20px;
  width: 100%;
}

[dir="rtl"] .comment-info {
  padding-right: 0;
  padding-left: 20px;
}

.comment-author {
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px;
}

@media (min-width: 768px) {
  .comment-author {
    justify-content: space-between;
  }
}

.comment-avatar {
  margin-right: 10px;
}

[dir="rtl"] .comment-avatar {
  margin-left: 10px;
  margin-right: 0;
}

.comment-meta {
  flex: 1 0 auto;
}

.comment-labels {
  flex-basis: 100%;
}

@media (min-width: 768px) {
  .comment-labels {
    flex-basis: auto;
  }
}

.comment .status-label:not(.status-label-official) {
  margin-top: 10px;
}

@media (min-width: 768px) {
  .comment .status-label:not(.status-label-official) {
    margin-top: 0;
  }
}

.comment-form {
  display: flex;
  padding-top: 30px;
  word-wrap: break-word;
}

.comment-container {
  width: 100%;
}

.comment-form-controls {
  display: none;
  margin-top: 10px;
  text-align: left;
}

@media (min-width: 768px) {
  [dir="ltr"] .comment-form-controls {
    text-align: right;
  }
}

.comment-form-controls input[type="submit"] {
  margin-top: 15px;
}

@media (min-width: 1024px) {
  .comment-form-controls input[type="submit"] {
    margin-left: 15px;
  }
  [dir="rtl"] .comment-form-controls input[type="submit"] {
    margin-left: 0;
    margin-right: 15px;
  }
}

.comment-form-controls input[type="checkbox"] {
  margin-right: 5px;
}

.comment-form-controls input[type="checkbox"] [dir="rtl"] {
  margin-left: 5px;
}

.comment-ccs {
  display: none;
}

.comment-ccs + textarea {
  margin-top: 10px;
}

.comment-attachments {
  margin-top: 10px;
}

.comment-attachments a {
  color: rgba(3, 91, 144, 1);
}

.comment-body {
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  -webkit-hyphens: auto;
  word-break: break-word;
  font-family: 'Noto Sans Japanese', sans-serif;
  line-height: 1.6;
}

.comment-body img {
  height: auto;
  max-width: 100%;
}

.comment-body ul, .comment-body ol {
  padding-left: 20px;
  list-style-position: outside;
  margin: 20px 0 20px 20px;
}

[dir="rtl"] .comment-body ul, [dir="rtl"] .comment-body ol {
  padding-right: 20px;
  padding-left: 0;
  margin-left: 0;
  margin-right: 20px;
}

.comment-body ul > ul, .comment-body ol > ol, .comment-body ol > ul, .comment-body ul > ol, .comment-body li > ul, .comment-body li > ol {
  margin: 0;
}

.comment-body ul {
  list-style-type: disc;
}

.comment-body a:visited {
  color: #011c2c;
}

.comment-body code {
  background: #f7f7f7;
  border: 1px solid #ddd;
  border-radius: 3px;
  padding: 0 5px;
  margin: 0 2px;
}

.comment-body pre {
  background: #f7f7f7;
  border: 1px solid #ddd;
  border-radius: 3px;
  padding: 10px 15px;
  overflow: auto;
  white-space: pre;
}

.comment-body blockquote {
  border-left: 1px solid #ddd;
  color: #666;
  font-style: italic;
  padding: 0 15px;
}

.comment-mark-as-solved {
  display: inline-block;
}

/***** Vote *****/
/* Used in article comments, post comments and post */
.vote {
  display: inline-block;
  text-align: center;
  width: 35px;
}

.vote a {
  outline: none;
}

.vote a:active, .vote a:hover, .vote a:focus {
  text-decoration: none;
}

.vote-sum {
  color: #666;
  display: block;
  margin: 3px 0;
}

[dir="rtl"] .vote-sum {
  direction: ltr;
  unicode-bidi: bidi-override;
}

.vote-up:hover::before,
.vote-down:hover::before {
  color: rgba(3, 91, 144, 1);
}

.vote-up::before, .vote-down::before {
  color: #666;
  font-size: 24px;
}

.vote-up::before {
  content: "\2B06";
}

.vote-down::before {
  content: "\2B07";
}

.vote-voted::before {
  color: rgba(3, 91, 144, 1);
}

.vote-voted:hover::before {
  color: #011c2c;
}

/***** Actions *****/
/* Styles admin and en user actions(edit, delete, change status) in comments and posts */
.actions {
  text-align: center;
  flex-shrink: 0;
  /*Avoid collapsing elements in Safari*/
}

.actions .dropdown-toggle {
  font-size: 0;
  margin: 15px 0;
}

.actions .dropdown-toggle:hover::before, .actions .dropdown-toggle:focus::before, .actions .dropdown-toggle:active::before {
  background-color: #f7f7f7;
}

.actions .dropdown-toggle::before {
  background-color: transparent;
  border-radius: 50%;
  color: #666;
  content: "\2699";
  display: block;
  font-size: 13px;
  margin: auto;
  padding: 5px;
}

/***** Community *****/
.community-hero {
  background-image: url(/hc/theming_assets/01M43CFNJ4EE045226T4Y6BMXP);
  margin-bottom: 10px;
}

.community-footer {
  padding-top: 50px;
  text-align: center;
}

.community-featured-posts, .community-activity {
  padding-top: 40px;
  width: 100%;
}

.community-header {
  margin-bottom: 30px;
}

.community-header h4 {
  margin-bottom: 0;
}

.post-to-community {
  margin-top: 10px;
}

@media (min-width: 768px) {
  .post-to-community {
    margin: 0;
  }
}

/* Community topics grid */
.topics {
  max-width: none;
  width: 100%;
}

.topics-item .meta-group {
  justify-content: center;
  margin-top: 20px;
}

/* Community topic page */
.topic-header {
  border-bottom: 1px solid #ddd;
  font-size: 13px;
}

@media (min-width: 768px) {
  .topic-header {
    padding-bottom: 10px;
  }
}

.topic-header .dropdown {
  display: block;
  border-top: 1px solid #ddd;
  padding: 10px 0;
}

@media (min-width: 768px) {
  .topic-header .dropdown {
    border-top: 0;
    display: inline-block;
    margin-right: 20px;
    padding: 0;
  }
}

.no-posts-with-filter {
  margin-top: 20px;
  margin-bottom: 20px;
}

/* Topic, post and user follow button */
.community-follow {
  margin-bottom: 10px;
  width: 100%;
}

@media (min-width: 768px) {
  .community-follow {
    margin-bottom: 0;
    width: auto;
  }
}

.community-follow .dropdown {
  width: 100%;
}

.community-follow [role="button"] {
  line-height: 30px;
  padding: 0 10px 0 15px;
  position: relative;
  width: 100%;
}

@media (min-width: 768px) {
  .community-follow [role="button"] {
    width: auto;
  }
}

.community-follow [role="button"]:hover {
  background-color: rgba(3, 91, 144, 1);
}

.community-follow [role="button"]:hover::after, .community-follow [role="button"]:focus::after {
  border-color: #FFFFFF;
  color: #FFFFFF;
}

.community-follow [role="button"][aria-selected="true"] {
  background-color: rgba(3, 91, 144, 1);
  color: #FFFFFF;
}

.community-follow [role="button"][aria-selected="true"]::after {
  border-left: 1px solid #FFFFFF;
  color: #FFFFFF;
}

.community-follow [role="button"][aria-selected="true"]:hover {
  background-color: #011c2c;
  border-color: #011c2c;
}

.community-follow [role="button"]::after {
  border-left: 1px solid rgba(3, 91, 144, 1);
  content: attr(data-follower-count);
  color: rgba(3, 91, 144, 1);
  display: inline-block;
  font-family: 'Noto Sans Japanese', sans-serif;
  margin-left: 15px;
  padding-left: 10px;
  position: absolute;
  right: 10px;
}

@media (min-width: 768px) {
  .community-follow [role="button"]::after {
    position: static;
  }
}

[dir="rtl"] .community-follow [role="button"]::after {
  border-left: 0;
  border-right: 1px solid rgba(3, 91, 144, 1);
  margin: 0 10px 0 0;
  padding: 0 10px 0 0;
}

/***** Striped list *****/
/* Used in community posts list and requests list */
.striped-list {
  padding: 0;
}

.striped-list-item {
  align-items: flex-start;
  border-bottom: 1px solid #ddd;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 20px 0;
}

@media (min-width: 768px) {
  .striped-list-item {
    align-items: center;
    flex-direction: row;
  }
}

.striped-list-info {
  flex: 2;
}

.striped-list-title {
  color: rgba(3, 91, 144, 1);
  margin-bottom: 10px;
  margin-right: 5px;
}

.striped-list-title:hover, .striped-list-title:focus, .striped-list-title:active {
  text-decoration: underline;
}

.striped-list-title:visited {
  color: #011c2c;
}

.striped-list .meta-group {
  margin: 5px 0;
}

.striped-list-count {
  color: #666;
  font-weight: 300;
  font-size: 13px;
  justify-content: flex-start;
  text-transform: capitalize;
}

@media (min-width: 768px) {
  .striped-list-count {
    display: flex;
    flex: 1;
    justify-content: space-around;
  }
}

.striped-list-count-item::after {
  content: "·";
  display: inline-block;
  padding: 0 5px;
}

@media (min-width: 768px) {
  .striped-list-count-item::after {
    display: none;
  }
}

.striped-list-count-item:last-child::after {
  display: none;
}

.striped-list-number {
  font-weight: 300;
  text-align: center;
}

@media (min-width: 768px) {
  .striped-list-number {
    color: #333333;
    display: block;
    font-weight: 400;
  }
}

/***** Status labels *****/
/* Styles labels used in posts, articles and requests */
.status-label {
  background-color: #1eb848;
  border-radius: 4px;
  color: #fff;
  font-size: 12px;
  margin-right: 2px;
  padding: 3px 10px;
  vertical-align: middle;
  white-space: nowrap;
  display: inline-block;
}

.status-label:hover, .status-label:active, .status-label:focus {
  text-decoration: none;
}

.status-label-pinned, .status-label-featured, .status-label-official {
  background-color: rgba(3, 91, 144, 1);
}

.status-label-official {
  border-radius: 0;
  margin-right: 0;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
  width: 100%;
}

@media (min-width: 768px) {
  .status-label-official {
    border-radius: 0 0 4px 4px;
    right: 30px;
    width: auto;
  }
}

[dir="rtl"] .status-label-official {
  left: 30px;
  right: auto;
}

.status-label-pending, .status-label-not-planned {
  background-color: #eee;
  color: #666;
}

.status-label-pending {
  text-align: center;
}

.status-label-open {
  background-color: #e03b30;
}

.status-label-closed {
  background-color: #ddd;
}

.status-label-solved {
  background-color: #999;
}

.status-label-new {
  background-color: #ffd12a;
}

.status-label-hold {
  background-color: #000;
}

.status-label-open, .status-label-closed, .status-label-solved, .status-label-new, .status-label-hold, .status-label-answered {
  text-transform: lowercase;
}

/***** Post *****/
/*
* The post grid is defined this way:
* Content | Sidebar
* 70%     | 30%
*/
.post {
  flex: 1;
  margin-bottom: 10px;
}

@media (min-width: 1024px) {
  .post {
    flex: 1 0 70%;
    max-width: 70%;
  }
}

.post-container {
  display: flex;
  flex-direction: column;
}

@media (min-width: 1024px) {
  .post-container {
    flex-direction: row;
  }
}

.post-header {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin-bottom: 10px;
}

@media (min-width: 768px) {
  .post-header {
    align-items: baseline;
    flex-direction: row;
  }
}

.post-header .status-label {
  vertical-align: super;
}

.post-title {
  margin-bottom: 20px;
  width: 100%;
}

@media (min-width: 768px) {
  .post-title {
    margin-bottom: 0;
    padding-right: 10px;
  }
}

.post-title h1 {
  display: inline;
  vertical-align: middle;
}

@media (min-width: 768px) {
  .post-title h1 {
    margin-right: 5px;
  }
}

.post-author {
  align-items: flex-start;
  display: flex;
  justify-content: space-between;
}

.post-avatar {
  margin-bottom: 30px;
}

.post-content {
  font-family: 'Noto Sans Japanese', sans-serif;
  line-height: 1.6;
  word-break: break-word;
}

.post-info-container {
  display: flex;
  margin-bottom: 40px;
}

.post-info {
  min-width: 0;
  padding-right: 20px;
  width: 100%;
}

[dir="rtl"] .post-info {
  padding-right: 0;
  padding-left: 20px;
}

.post-meta {
  display: inline-block;
  flex: 1;
  margin-left: 10px;
  vertical-align: middle;
}

[dir="rtl"] .post-meta {
  margin-left: 0;
  margin-right: 10px;
}

.post-body img {
  height: auto;
  max-width: 100%;
}

.post-body ul, .post-body ol {
  padding-left: 20px;
  list-style-position: outside;
  margin: 20px 0 20px 20px;
}

[dir="rtl"] .post-body ul, [dir="rtl"] .post-body ol {
  padding-right: 20px;
  padding-left: 0;
  margin-left: 0;
  margin-right: 20px;
}

.post-body ul > ul, .post-body ol > ol, .post-body ol > ul, .post-body ul > ol, .post-body li > ul, .post-body li > ol {
  margin: 0;
}

.post-body ul {
  list-style-type: disc;
}

.post-body a:visited {
  color: #011c2c;
}

.post-body code {
  background: #f7f7f7;
  border: 1px solid #ddd;
  border-radius: 3px;
  padding: 0 5px;
  margin: 0 2px;
}

.post-body pre {
  background: #f7f7f7;
  border: 1px solid #ddd;
  border-radius: 3px;
  padding: 10px 15px;
  overflow: auto;
  white-space: pre;
}

.post-body blockquote {
  border-left: 1px solid #ddd;
  color: #666;
  font-style: italic;
  padding: 0 15px;
}

.post-footer {
  align-items: center;
  display: flex;
  justify-content: space-between;
  padding-bottom: 20px;
}

.post-comment-count {
  color: #666;
  font-weight: 300;
}

.post-comment-count:hover {
  text-decoration: none;
}

.post-comment-count .icon-comments {
  color: rgba(3, 91, 144, 1);
  content: "\1F4AC";
  display: inline-block;
  font-size: 18px;
  padding: 5px;
}

.post-sidebar {
  border-top: 1px solid #ddd;
  flex: 1;
  padding: 30px 0;
  text-align: center;
}

@media (min-width: 1024px) {
  .post-sidebar {
    border: 0;
    flex: 1 0 30%;
    padding: 0 0 0 50px;
    text-align: initial;
  }
  [dir="rtl"] .post-sidebar {
    padding: 0 50px 0 0;
  }
}

.post-sidebar h5 {
  font-weight: 600;
}

@media (min-width: 1024px) {
  .post-sidebar h5 {
    border-bottom: 1px solid #ddd;
    padding-bottom: 20px;
  }
}

.post-comments {
  margin-bottom: 20px;
}

@media (min-width: 1024px) {
  .post-comments {
    margin-bottom: 0;
  }
}

/* Navigation element that collapses on mobile */
.collapsible-nav {
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #ddd;
  flex-direction: column;
  max-height: 45px;
  overflow: hidden;
  font-size: 14px;
}

@media (min-width: 768px) {
  .collapsible-nav {
    border: 0;
    height: auto;
    flex-direction: row;
    max-height: none;
  }
}

.collapsible-nav-list {
  display: flex;
  flex-direction: column;
}

@media (min-width: 768px) {
  .collapsible-nav-list {
    flex-direction: row;
  }
}

.collapsible-nav-list li {
  color: #333333;
  line-height: 45px;
  order: 1;
}

@media (min-width: 768px) {
  .collapsible-nav-list li {
    line-height: normal;
    margin-right: 30px;
  }
  [dir="rtl"] .collapsible-nav-list li {
    margin-left: 30px;
    margin-right: 0;
  }
  .collapsible-nav-list li a {
    text-decoration: none;
    padding: 15px 0;
  }
}

.collapsible-nav-list li a {
  color: #333333;
  display: block;
}

@media (min-width: 768px) {
  .collapsible-nav-list li:hover {
    border-bottom: 4px solid #ddd;
  }
  .collapsible-nav-list li:hover a {
    padding: 15px 0 11px 0;
    text-decoration: none;
  }
}

.collapsible-nav-list li[aria-selected="true"] {
  order: 0;
  position: relative;
}

@media (min-width: 768px) {
  .collapsible-nav-list li[aria-selected="true"] {
    border-bottom: 4px solid rgba(3, 91, 144, 1);
    order: 1;
    padding: 15px 0 11px 0;
  }
}

.collapsible-nav-list li[aria-selected="true"] a {
  color: #333333;
}

.collapsible-nav-list li[aria-selected="true"]::after {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  content: "\25BE";
  position: absolute;
  right: 0;
}

@media (min-width: 768px) {
  .collapsible-nav-list li[aria-selected="true"]::after {
    display: none;
  }
}

[dir="rtl"] .collapsible-nav-list li[aria-selected="true"]::after {
  left: 0;
  right: auto;
}

.collapsible-nav[aria-expanded="true"] {
  max-height: none;
}

.collapsible-nav[aria-expanded="true"] li[aria-selected="true"]::after {
  content: "\2715";
}

/* Sidebar navigation that collapses on mobile */
.collapsible-sidebar {
  flex: 1;
  max-height: 45px;
  overflow: hidden;
  padding: 10px 0;
  position: relative;
}

@media (min-width: 1024px) {
  .collapsible-sidebar {
    max-height: none;
    padding: 0;
  }
}

.collapsible-sidebar[aria-expanded="true"] {
  max-height: none;
}

.collapsible-sidebar[aria-expanded="true"] .collapsible-sidebar-title::after {
  content: "\2715";
}

@media (min-width: 1024px) {
  .collapsible-sidebar[aria-expanded="true"] .collapsible-sidebar-title::after {
    display: none;
  }
}

.collapsible-sidebar-title {
  margin-top: 0;
}

.collapsible-sidebar-title::after {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  content: "\25BE";
  position: absolute;
  right: 10px;
}

@media (min-width: 1024px) {
  .collapsible-sidebar-title::after {
    display: none;
  }
}

[dir="rtl"] .collapsible-sidebar-title::after {
  left: 10px;
  right: auto;
}

/***** My activities *****/
.my-activities-nav {
  background-color: #f2f2f2;
  border: 0;
  margin-bottom: 20px;
}

.my-activities-sub-nav {
  background-color: transparent;
  border-bottom: 1px solid #ddd;
  margin-bottom: 30px;
}

@media (min-width: 768px) {
  .my-activities-sub-nav li:hover {
    border-bottom: 4px solid #ddd;
  }
}

.my-activities-sub-nav li[aria-selected="true"] {
  border-color: rgba(3, 91, 144, 1);
}

.my-activities-table .striped-list-title {
  /* My activities tables */
  display: block;
  margin-bottom: 10px;
  max-width: 350px;
  white-space: normal;
}

@media (min-width: 1024px) {
  .my-activities-table .striped-list-title {
    margin-bottom: 0;
    max-width: 500px;
    min-width: 350px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

.my-activities-table thead {
  display: none;
}

@media (min-width: 768px) {
  .my-activities-table thead {
    display: table-header-group;
  }
}

.my-activities-table th:first-child,
.my-activities-table td:first-child {
  padding-left: 0;
}

@media (min-width: 1024px) {
  .my-activities-table th:first-child,
  .my-activities-table td:first-child {
    width: 500px;
  }
}

.my-activities-table th:last-child,
.my-activities-table td:last-child {
  padding-right: 0;
}

.my-activities-table td:not(:first-child) {
  display: none;
}

@media (min-width: 768px) {
  .my-activities-table td:not(:first-child) {
    display: table-cell;
  }
}

/* Requests table */
.requests-search {
  width: 100%;
  border: 1px solid #ddd !important;
}
.requests-search:focus {
  border-color: rgba(3, 91, 144, 1) !important;
}

.requests-table-toolbar {
  align-items: flex-end;
  display: flex;
  flex-direction: column;
}

@media (min-width: 768px) {
  .requests-table-toolbar {
    flex-direction: row;
  }
}

.requests-table-toolbar .search {
  flex: 1;
  width: 100%;
}

.requests-table-toolbar .request-table-filter {
  width: 100%;
}

@media (min-width: 768px) {
  .requests-table-toolbar .request-table-filter {
    width: auto;
  }
}

.requests-table-toolbar .request-filter {
  display: block;
}

@media (min-width: 768px) {
  .requests-table-toolbar .request-filter {
    margin: 0 0 0 30px;
  }
  [dir="rtl"] .requests-table-toolbar .request-filter {
    margin: 0 30px 0 0;
  }
}

.requests-table-toolbar .request-filter-label {
  font-size: 13px;
  margin-top: 30px;
}

@media (min-width: 768px) {
  .requests-table-toolbar .request-filter-label {
    margin-top: 0;
  }
}

.requests-table-toolbar select {
  max-height: 40px;
  margin-bottom: 30px;
  width: 100%;
}

@media (min-width: 768px) {
  .requests-table-toolbar select {
    margin-bottom: 0;
    max-width: 300px;
    width: auto;
  }
}

.requests-table-toolbar .organization-subscribe,
.requests-table-toolbar .organization-unsubscribe {
  line-height: 40px;
  max-height: 40px;
  padding: 0 20px;
}

@media (min-width: 768px) {
  .requests-table-toolbar .organization-subscribe,
  .requests-table-toolbar .organization-unsubscribe {
    margin-left: 10px;
  }
  [dir="rtl"] .requests-table-toolbar .organization-subscribe, [dir="rtl"]
  .requests-table-toolbar .organization-unsubscribe {
    margin: 0 10px 0 0;
  }
}

.requests-table-toolbar .organization-unsubscribe {
  background-color: rgba(3, 91, 144, 1);
  color: #FFFFFF;
}

.requests-table-toolbar + .requests-search-info {
  margin-top: 15px;
}

.requests-table-toolbar + .requests-search-info.meta-data::after {
  content: "";
  margin: 0;
}

.requests-table-toolbar + .requests-search-info + .requests {
  margin-top: 20px;
}

.requests-table-toolbar + .requests {
  margin-top: 40px;
}

.requests .requests-table-meta {
  display: block;
}

@media (min-width: 768px) {
  .requests .requests-table-meta {
    display: none;
  }
}

.requests .requests-table thead {
  display: none;
}

@media (min-width: 768px) {
  .requests .requests-table thead {
    display: table-header-group;
  }
}

.requests .requests-table-info {
  display: block;
}

@media (min-width: 768px) {
  .requests .requests-table-info {
    display: table-cell;
    vertical-align: middle;
    width: auto;
  }
}

.requests .requests-table .requests-link {
  position: relative;
}

.requests .requests-table .requests-sort-symbol {
  position: absolute;
  left: calc(100% + 3px);
  bottom: 0;
  font-size: 10px;
}

/* Following table */
.subscriptions-unsubscribe a {
  background: rgba(3, 91, 144, 1);
  border-radius: 4px;
  color: #FFFFFF;
  display: inline-block;
  font-size: 12px;
  line-height: 2.34;
  padding: 0 20px;
  text-align: center;
  width: 100%;
}

@media (min-width: 768px) {
  .subscriptions-unsubscribe a {
    width: auto;
  }
}

.subscriptions-unsubscribe a:hover {
  background-color: #011c2c;
  text-decoration: none;
}

.subscriptions-table td:last-child {
  display: block;
}

@media (min-width: 768px) {
  .subscriptions-table td:last-child {
    display: table-cell;
  }
}

.subscriptions-table td:first-child {
  display: flex;
  align-items: center;
}

.subscriptions-table .user-avatar {
  margin-right: 10px;
}

.subscriptions .striped-list-title {
  display: inline-block;
  vertical-align: middle;
}

/* Contributions table */
.contributions-table td:last-child {
  color: #666;
  font-size: 13px;
  font-weight: 300;
}

@media (min-width: 768px) {
  .contributions-table td:last-child {
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
  }
}

.no-activities {
  color: #666;
}

/***** Request *****/
.request-container {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media (min-width: 1024px) {
  .request-container {
    align-items: flex-start;
    flex-direction: row;
  }
}

.request-container .comment-container {
  min-width: 0;
}

.request-breadcrumbs {
  margin-bottom: 40px;
}

@media (min-width: 1024px) {
  .request-breadcrumbs {
    margin-bottom: 60px;
  }
}

.request-main {
  flex: 1 0 auto;
  order: 1;
}

.request-main .comment-fields, .request-main .request-submit-comment {
  display: none;
}

.request-main .comment-fields.shown {
  display: block;
}

.request-main .request-submit-comment.shown {
  display: inline;
}

@media (min-width: 1024px) {
  .request-main {
    flex: 0 0 66%;
    order: 0;
    min-width: 0;
  }
}

.request-main .comment-form-controls {
  display: block;
}

.request-main .comment-ccs {
  display: block;
}

.request-main .comment-show-container {
  border-radius: 2px;
  border: 1px solid #ddd;
  cursor: pointer;
  display: flex;
  padding: 8px 15px;
  width: 100%;
}

.request-main .comment-show-container.hidden {
  display: none;
}

.request-main .comment-show-container-content {
  align-self: center;
  color: #666;
  margin-left: 10px;
}

.request-main .form-field.comment-ccs > ul {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  border-bottom: 0;
}

.request-main .form-field.comment-ccs > ul[data-hc-focus="true"] {
  border: 1px solid rgba(3, 91, 144, 1);
}

.request-main .form-field.comment-ccs > input[type="text"] {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  border-bottom: 0;
}

.request-main .comment-ccs + textarea {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  margin-top: 0;
}

.request-main .comment-ccs + textarea:focus {
  border-top: 1px solid rgba(3, 91, 144, 1);
}

.request-main input#mark_as_solved {
  display: none;
}

.request-title {
  width: 100%;
}

@media (min-width: 1024px) {
  .request-title {
    border-bottom: 1px solid #ddd;
    margin-bottom: 0;
    max-width: 66%;
    padding-bottom: 20px;
  }
}

.request-sidebar {
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #ddd;
  flex: 1 0 auto;
  order: 0;
}

@media (min-width: 1024px) {
  .request-sidebar {
    background-color: #f7f7f7;
    border: 0;
    font-size: 13px;
    flex: 0 0 auto;
    padding: 0 20px;
    width: 30%;
  }
}

.request-sidebar h5 {
  font-size: 15px;
  font-weight: 600;
  position: relative;
}

@media (min-width: 1024px) {
  .request-sidebar h5 {
    display: none;
  }
}

.request-details {
  border-bottom: 1px solid #ddd;
  font-size: 0;
  margin: 0;
  padding-bottom: 20px;
}

.request-details:last-child {
  border: 0;
}

.request-details dt, .request-details dd {
  display: inline-block;
  vertical-align: top;
  font-size: 13px;
  margin: 20px 0 0 0;
}

.request-details dd {
  padding: 0 10px;
  width: 60%;
}

.request-details dd::after {
  content: "\A";
  white-space: pre;
}

.request-details dt {
  color: #666;
  font-weight: 300;
  width: 40%;
}

.request-details .request-collaborators {
  display: inline-block;
}

.request-attachments dt, .request-attachments dd {
  width: 100%;
}

.request-attachments dd {
  margin: 10px 0 0 0;
}

.request-form textarea {
  min-height: 120px;
}

.request-follow-up {
  padding-top: 20px;
}

/***** Pagination *****/
.pagination {
  margin: 20px 0;
  text-align: center;
}

.pagination * {
  display: inline-block;
}

.pagination li {
  border-radius: 50%;
  height: 40px;
  float: left;
  margin-left: 5px;
  width: 40px;
}

@media (min-width: 768px) {
  .pagination li {
    height: 30px;
    width: 30px;
  }
}

[dir="rtl"] .pagination li {
  float: right;
}

.pagination li:hover:not(.pagination-current) {
  background-color: #f3f3f3;
}

.pagination li:hover:not(.pagination-current) span, .pagination li:hover:not(.pagination-current) a {
  color: #333333;
  text-decoration: none;
}

.pagination a, .pagination span {
  font-size: 15px;
  color: #666;
  padding: 10px 12px;
}

@media (min-width: 768px) {
  .pagination a, .pagination span {
    font-size: 13px;
    padding: 5px 12px;
  }
}

.pagination-current {
  background-color: rgba(3, 91, 144, 1);
}

.pagination-current a, .pagination-current span {
  color: #FFFFFF;
}

.pagination-first {
  border-radius: 3px 0 0 3px;
}

[dir="rtl"] .pagination-first {
  border-radius: 0 3px 3px 0;
}

.pagination-last {
  border-radius: 0 3px 3px 0;
}

[dir="rtl"] .pagination-last {
  border-radius: 3px 0 0 3px;
}

/***** Metadata *****/
.meta-group {
  display: block;
}

.meta-group * {
  display: inline;
}

.meta-data {
  color: #666;
  font-size: 13px;
  font-weight: 300;
}

.meta-data:not(:last-child)::after {
  content: "\00B7";
  margin: 0 5px;
}

/***** Icons *****/
[class^="icon-"]::before,
[class*=" icon-"]::before,
.icon,
.search::before,
.recent-activity-item-comment span::before,
.article-vote::before,
.attachments .attachment-item::before,
.share a::before,
.vote-up::before,
.vote-down::before,
.actions .dropdown-toggle::before,
.collapsible-nav-list li[aria-selected="true"]::after,
.collapsible-sidebar-title::after,
.search-result-votes::before,
.search-result-meta-count::before {
  font-family: "copenhagen-icons";
  font-style: normal;
  font-weight: normal;
  speak: none;
  line-height: 1em;
  vertical-align: middle;
  -webkit-font-smoothing: antialiased;
}

.icon-lock::before {
  content: "\1F512";
}

.icon-star::before {
  content: "\2605";
}

.icon-linkedin::before {
  content: "\e900";
}

.icon-twitter::before {
  content: "\e901";
}

.icon-googleplus-::before {
  content: "\e902";
}

.icon-facebook::before {
  content: "\e903";
}

.icon-agent::before {
  content: "\1F464";
}

.icon-close::before {
  content: "\2715";
}

.icon-arrow-up::before {
  content: "\2B06";
}

.icon-arrow-down::before {
  content: "\2B07";
}

.icon-attachments::before {
  content: "\1F4CE";
}

.icon-comments::before {
  content: "\1F4AC";
}

.icon-search::before {
  content: "\1F50D";
}

.icon-vote::before {
  content: "\1F44D";
}

.icon-handle::before {
  content: "\25BE";
}

.icon-check::before {
  content: "\2713";
}

.icon-gear::before {
  content: "\2699";
}

.icon-menu::before {
  content: "\2630";
  font-size: 24px;
}

.icon-article::before {
  content: "\1F4C4";
}

.icon-post::before {
  content: "\1F4D4";
}

.icon-notification-alert::before {
  content: "\26A0";
}

.icon-notification-error::before {
  content: "\00D7";
}

.icon-notification-info::before {
  content: "\2139";
}

.icon-notification-success::before {
  content: "\2714";
}

/* User Profiles */
.profile-header {
  padding: 30px 0;
  background-color: #f7f7f7;
}

.profile-header .container {
  display: flex;
  flex-wrap: wrap;
}

@media (min-width: 768px) {
  .profile-header .container {
    flex-wrap: nowrap;
  }
}

.profile-header .profile-info {
  flex-basis: 100%;
  display: flex;
  flex-wrap: wrap;
  min-width: 0;
}

.profile-avatar {
  position: relative;
  line-height: 0;
  align-self: center;
  margin-right: 10px;
}

[dir="rtl"] .profile-avatar {
  margin-left: 10px;
  margin-right: 0;
}

.profile-avatar .user-avatar {
  width: 65px;
  height: 65px;
}

.profile-avatar .icon-agent::before {
  bottom: 0;
  right: 0;
}

.profile-header .basic-info {
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  -webkit-hyphens: auto;
  word-break: break-word;
  display: flex;
  flex-direction: column;
  justify-content: center;
  flex-grow: 1;
  flex-basis: 0;
  min-width: 0;
}

.profile-header .basic-info .name {
  margin: 0;
}

.profile-header .options {
  display: flex;
  flex-basis: 100%;
  margin-top: 12px;
  align-items: flex-start;
  flex-wrap: wrap;
}

@media (min-width: 768px) {
  .profile-header .options {
    flex-wrap: nowrap;
    flex-basis: auto;
    margin-top: 0;
    margin-left: 10px;
  }
  [dir="rtl"] .profile-header .options {
    margin-left: 0;
    margin-right: 10px;
  }
  .profile-header .options > :not(:last-child) {
    margin-bottom: 0;
    margin-right: 10px;
  }
  [dir="rtl"] .profile-header .options > :not(:last-child) {
    margin-left: 10px;
    margin-right: 0;
  }
}

.profile-header .options [data-action="edit-profile"] {
  background-color: rgba(3, 91, 144, 1);
  border: 0;
  color: #FFFFFF;
  line-height: normal;
  padding: 8px 20px;
}

.profile-header .description {
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  -webkit-hyphens: auto;
  word-break: break-word;
  margin: 15px 0;
  flex-basis: 100%;
}

.profile-stats {
  font-size: 13px;
  display: flex;
  flex-direction: column;
  flex-basis: 100%;
}

.profile-stats .stat {
  display: flex;
  margin-bottom: 10px;
}

.profile-stats .stat-label {
  color: #666;
  font-weight: 300;
  flex: 0 0 100px;
  margin-right: 10px;
}

[dir="rtl"] .profile-stats .stat-label {
  margin-left: 10px;
  margin-right: 0;
}

.profile-stats-activity {
  border-top: solid 1px #ddd;
  margin-top: 15px;
}

@media (min-width: 768px) {
  .profile-stats-activity {
    border-top: 0;
    flex-direction: row;
  }
}

@media (min-width: 768px) {
  .profile-stats-activity .stat {
    flex-direction: column;
  }
}

.profile-stats-activity .stat:first-child {
  margin-top: 10px;
}

@media (min-width: 768px) {
  .profile-stats-activity .stat:first-child {
    margin-top: 0;
  }
}

@media (min-width: 768px) {
  .profile-stats-activity .stat:not(:last-child) {
    margin-right: 40px;
  }
  [dir="rtl"] .profile-stats-activity .stat:not(:last-child) {
    margin-left: 40px;
    margin-right: 0;
  }
}

@media (min-width: 768px) {
  .profile-stats-activity .stat-label {
    flex: 0 1 auto;
  }
}

.profile-stats-counters {
  border-bottom: solid 1px #ddd;
}

@media (min-width: 768px) {
  .profile-stats-counters {
    flex: 0 0 200px;
    border-bottom: 0;
    margin-left: 40px;
  }
  [dir="rtl"] .profile-stats-counters {
    margin-left: 0;
    margin-right: 40px;
  }
}

@media (min-width: 1024px) {
  .profile-stats-counters {
    flex: 0 0 270px;
    margin-left: 60px;
  }
  [dir="rtl"] .profile-stats-counters {
    margin-right: 60px;
    margin-left: 0;
  }
}

@media (min-width: 768px) {
  .profile-stats-counters .stat {
    flex-direction: column;
  }
}

@media (min-width: 1024px) {
  .profile-stats-counters .stat {
    flex-direction: row;
  }
}

@media (min-width: 768px) {
  .profile-stats-counters .stat:not(:last-child) {
    margin-bottom: 15px;
  }
}

@media (min-width: 768px) {
  .profile-stats-counters .stat-label {
    flex: 0 1 auto;
  }
}

@media (min-width: 1024px) {
  .profile-stats-counters .stat-label {
    flex: 0 0 100px;
  }
}

.profile-private-badge {
  flex-basis: 100%;
  border: solid 1px rgba(3, 91, 144, 1);
  border-radius: 4px;
  color: rgba(3, 91, 144, 1);
  padding: 7px 20px;
  font-size: 12px;
  text-align: center;
  margin-bottom: 5px;
}

.profile-private-badge::after {
  content: "\1f512";
  margin-left: 5px;
  font-family: "copenhagen-icons";
  vertical-align: middle;
  line-height: 15px;
}

@media (min-width: 768px) {
  .profile-private-badge {
    flex-basis: auto;
  }
}

.profile-nav {
  background-color: #f2f2f2;
  border: 0;
  margin-bottom: 37px;
}

.profile-section {
  width: 100%;
}

@media (min-width: 1024px) {
  .profile-section {
    width: calc(100% - 330px);
  }
}

.profile-section-header {
  display: flex;
  flex-wrap: wrap;
}

.profile-section-title {
  flex-basis: 100%;
  margin-bottom: 0;
}

.profile-section-description {
  flex-basis: 100%;
  padding: 10px 0;
  color: #666;
  font-weight: 300;
  font-size: 13px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media (min-width: 768px) {
  .profile-section-description {
    flex: 1 0 50%;
    padding-bottom: 0;
  }
}

.profile-section-sorter {
  flex-basis: 100%;
  border-top: solid 1px #eee;
  font-size: 13px;
}

.profile-section-sorter .dropdown-toggle {
  padding: 10px 0;
  width: 100%;
}

.profile-section-sorter .dropdown-toggle::after {
  position: absolute;
  right: 0;
}

[dir="rtl"] .profile-section-sorter .dropdown-toggle::after {
  left: 0;
  right: initial;
}

@media (min-width: 768px) {
  .profile-section-sorter .dropdown-toggle::after {
    position: relative;
  }
}

@media (min-width: 768px) {
  .profile-section-sorter {
    flex: 0 1 auto;
    padding-top: 0;
    border-top: 0;
    margin-left: 20px;
  }
  [dir="rtl"] .profile-section-sorter {
    margin-left: 0;
    margin-right: 20px;
  }
}

.profile-contribution {
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  -webkit-hyphens: auto;
  word-break: break-word;
  padding: 20px 0;
  position: relative;
}

.profile-contribution-header {
  margin-bottom: 5px;
}

.profile-contribution-title {
  margin: 0 0 5px 0;
  display: inline;
  line-height: 21px;
  font-size: 15px;
  vertical-align: middle;
}

.profile-contribution-body {
  margin: 10px 0;
}

.profile-contribution-list > .profile-contribution {
  border-top: 1px solid #eee;
}

@media (min-width: 768px) {
  .profile-contribution-list > .profile-contribution {
    padding-left: 30px;
  }
  [dir="rtl"] .profile-contribution-list > .profile-contribution {
    padding-right: 30px;
    padding-left: 0;
  }
}

.profile-contribution-list > .profile-contribution:last-child {
  border-bottom: 1px solid #eee;
}

.profile-contribution-list > .profile-contribution::before {
  left: 0;
  position: absolute;
  font-size: 16px;
  color: #ccc;
  font-family: "copenhagen-icons";
  line-height: 25px;
}

[dir="rtl"] .profile-contribution-list > .profile-contribution::before {
  right: 0;
}

.profile-contribution-list .profile-contribution-header {
  margin-left: 30px;
}

[dir="rtl"] .profile-contribution-list .profile-contribution-header {
  padding-right: 30px;
  padding-left: 0;
}

@media (min-width: 768px) {
  .profile-contribution-list .profile-contribution-header {
    margin-left: 0;
  }
  [dir="rtl"] .profile-contribution-list .profile-contribution-header {
    padding-right: 0;
  }
}

.profile-comments .profile-contribution-breadcrumbs {
  margin-left: 30px;
}

[dir="rtl"] .profile-comments .profile-contribution-breadcrumbs {
  padding-right: 30px;
  padding-left: 0;
}

@media (min-width: 768px) {
  .profile-comments .profile-contribution-breadcrumbs {
    margin-left: 0;
  }
  [dir="rtl"] .profile-comments .profile-contribution-breadcrumbs {
    padding-right: 0;
  }
}

.profile-section .no-activity,
.profile-section .private-activity {
  display: block;
  margin-top: 40px;
  color: #999;
}

.profile-section .private-activity::before {
  content: "\1f512";
  font-family: "copenhagen-icons";
  font-style: normal;
  font-size: 12px;
  font-weight: normal;
  vertical-align: middle;
  margin-right: 10px;
}

[dir="rtl"] .profile-section .private-activity::before {
  margin-right: 0;
  margin-left: 10px;
}

.profile-activity-list {
  margin-top: 25px;
}

.profile-activity {
  position: relative;
  padding-bottom: 30px;
}

@media (min-width: 768px) {
  .profile-activity {
    padding-left: 20px;
  }
  [dir="rtl"] .profile-activity {
    padding-right: 20px;
    padding-left: 0;
  }
}

@media (min-width: 768px) {
  .profile-activity:not(:last-child) {
    border-left: 1px solid #ddd;
  }
  [dir="rtl"] .profile-activity:not(:last-child) {
    border-left: 0;
    border-right: 1px solid #ddd;
  }
}

.profile-activity-header {
  display: flex;
  align-items: center;
  margin-left: 35px;
}

[dir="rtl"] .profile-activity-header {
  margin-left: 0;
  margin-right: 35px;
}

@media (min-width: 768px) {
  .profile-activity-header {
    margin-left: 0;
  }
  [dir="rtl"] .profile-activity-header {
    margin-right: 0;
  }
}

.profile-activity-header .user-avatar {
  width: 40px;
  height: 40px;
  margin-right: 10px;
  min-width: 40px;
  align-self: flex-start;
}

[dir="rtl"] .profile-activity-header .user-avatar {
  margin-left: 10px;
  margin-right: 0;
}

.profile-activity-description {
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  -webkit-hyphens: auto;
  word-break: break-word;
  margin: 0;
  min-width: 0;
  width: 100%;
}

.profile-activity-description span:first-child {
  font-weight: 600;
  display: inline;
}

.profile-activity-contribution {
  padding: 20px;
  margin-top: 10px;
  border-radius: 8px;
  background-color: #f7f7f7;
}

@media (min-width: 768px) {
  .profile-activity-contribution {
    margin-top: 0;
    margin-left: 50px;
  }
  [dir="rtl"] .profile-activity-contribution {
    margin-left: 0;
    margin-right: 50px;
  }
}

.profile-activity::before {
  position: absolute;
  left: 0;
  width: 28px;
  border-radius: 50%;
  content: "";
  background-size: 14px 14px;
  background-repeat: no-repeat;
  background-color: #FFFFFF;
  background-position: 50% 50%;
  text-align: center;
  line-height: 40px;
  font-size: 16px;
  color: #ccc;
  font-family: "copenhagen-icons";
}

[dir="rtl"] .profile-activity::before {
  right: 0;
}

@media (min-width: 768px) {
  .profile-activity::before {
    left: -14px;
  }
  [dir="rtl"] .profile-activity::before {
    right: -14px;
  }
}

.profile-articles > .profile-contribution::before,
.profile-activity-list > li[class$="-article"]::before {
  content: "\1f4c4";
}

.profile-posts > .profile-contribution::before,
.profile-activity-list > li[class$="-post"]::before {
  content: "\1f4d4";
}

.profile-comments > .profile-contribution::before,
.profile-activity-list > li[class$="-comment"]::before {
  content: "\1f4ac";
  line-height: 35px;
}

/***** Search results *****/
.search-results {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media (min-width: 1024px) {
  .search-results {
    flex-direction: row;
  }
}

.search-results-column {
  flex: 1;
}

@media (min-width: 1024px) {
  .search-results-column {
    /*flex: 0 0 45%;*/
  }
}

.search-results-list {
  margin-bottom: 25px;
}

.search-results-list > li {
  border-bottom: 1px solid #ddd;
  padding: 20px 0;
}

.search-results-list > li:first-child {
  border-top: 1px solid #ddd;
}

.search-result-description {
  margin-top: 15px;
}

.search-result-votes, .search-result-meta-count {
  color: #666;
  display: inline-block;
  font-size: 13px;
  font-weight: 300;
  padding: 4px 5px;
  position: relative;
}

.search-result-votes::before, .search-result-meta-count::before {
  color: rgba(3, 91, 144, 1);
}

[dir="ltr"] .search-result-votes, [dir="ltr"] .search-result-meta-count {
  margin-left: 5px;
}

[dir="ltr"] .search-result-votes::before, [dir="ltr"] .search-result-meta-count::before {
  margin-right: 3px;
}

[dir="rtl"] .search-result-votes, [dir="rtl"] .search-result-meta-count {
  margin-right: 5px;
}

[dir="rtl"] .search-result-votes::before, [dir="rtl"] .search-result-meta-count::before {
  margin-left: 3px;
}

.search-result-votes::before {
  content: "\1F44D";
}

.search-result-meta-count::before {
  content: "\1F4AC";
}

.search-result .meta-group {
  align-items: center;
}
.search-result > a {
  font-size: 18px;
}
.search-result-breadcrumbs {
  margin: 0;
}
.search-result-breadcrumbs li:first-of-type::before,
.profile-contribution-breadcrumbs li:first-of-type::before {
  content: none;
}
.search-act {
  margin-left: 20px;
  padding-bottom: 50px;
}
.search-act li {
  padding: 20px 0;
  position: relative;
  line-height: 20px;
}
.search-act li::before {
  content: "\27a1";
  font-family: "Entypo";
  margin-right: 10px;
}
.search-act li.chatbtn a::before {
  content: "\e720";
  font-family: "Entypo";
  margin-right: 5px;
  font-size: 20px;
  line-height: 20px;
  color: rgba(3, 91, 144, 1);
  display: inline-block;
}
.search-act li.formbtn a::before {
  content: "\2709";
  font-family: "Entypo";
  margin-right: 5px;
  font-size: 20px;
  line-height: 20px;
  color: rgba(3, 91, 144, 1);
  display: inline-block;
}
.search-act .search {
  display: inline-block;
  margin-left: 10px;
}
.search-act .search input[type="search"] {
  max-width: 100%;
  border: 1px solid #ddd;
  height: 30px;
  margin-top: 5px;
}
@media (min-width: 768px) {
  .search-act .search input[type="search"] {
    margin-top: 0;
  }
}

/***** 電話の受付時間で、電話番号とフォームへの案内を切り替える（business-hours.js） *****/
.nav-wrapper a.rl-tel[hidden],
.nav-wrapper a.rl-afterhours[hidden] {
  display: none !important;
}
.nav-wrapper a.rl-tel,
.nav-wrapper a.rl-afterhours {
  line-height: 1.3;
  text-decoration: none;
  vertical-align: middle;
}
.rl-tel > span,
.rl-afterhours > span {
  display: block;
}
.rl-tel-number {
  color: #2457a6;
  font-size: 26px;
  font-weight: 700;
  letter-spacing: 0.02em;
}
.rl-tel-hours,
.rl-afterhours-note {
  color: #555;
  font-size: 12px;
}
.rl-afterhours-main {
  color: #fff;
  background: #2457a6;
  border-radius: 4px;
  font-size: 15px;
  font-weight: 700;
  margin-bottom: 3px;
  padding: 5px 12px;
}
.nav-wrapper a.rl-afterhours:hover .rl-afterhours-main {
  background: #1b4380;
}
.user-nav[aria-expanded="true"] .rl-afterhours-note,
.user-nav[aria-expanded="true"] .rl-tel-hours {
  white-space: normal;
}

/***** トップの最初の画面：急ぎの症状のボタン・時間外の一文・導入のご相談（2026-10） *****/
.rl-urgent {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  list-style: none;
  margin: 16px auto 0;
  max-width: 600px;
  padding: 0;
}
.rl-urgent a {
  align-items: center;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
  box-sizing: border-box;
  color: #0b5a8a;
  display: flex;
  font-size: 16px;
  font-weight: 700;
  gap: 8px;
  height: 100%;
  justify-content: center;
  line-height: 1.3;
  min-height: 56px;
  padding: 10px 8px;
  text-decoration: none;
}
.rl-urgent a:hover,
.rl-urgent a:focus {
  background: #eaf3fa;
  text-decoration: none;
}
.rl-urgent svg {
  fill: #0b5a8a;
  flex: none;
  height: 22px;
  width: 22px;
}
.rl-afterhours-box[hidden] {
  display: none !important;
}
.rl-afterhours-box {
  background: rgba(0, 0, 0, 0.25);
  border: 1px solid rgba(255, 255, 255, 0.6);
  border-radius: 10px;
  box-sizing: border-box;
  margin: 14px auto 0;
  max-width: 600px;
  padding: 12px 14px;
}
.hero-inner .rl-afterhours-box p {
  font-size: 14px;
  line-height: 1.6;
  margin: 0 0 10px;
}
.rl-afterhours-form {
  background: #fff;
  border-radius: 30px;
  color: #0b5a8a;
  display: inline-block;
  font-size: 16px;
  font-weight: 700;
  padding: 8px 24px;
  text-decoration: none;
}
.rl-afterhours-form:hover,
.rl-afterhours-form:focus {
  background: #eaf3fa;
  text-decoration: none;
}
.hero-inner p.rl-intro {
  margin: 14px 0 0;
}
.rl-intro a {
  border: 1px solid rgba(255, 255, 255, 0.8);
  border-radius: 30px;
  color: #fff;
  display: inline-block;
  font-size: 14px;
  padding: 6px 20px;
  text-decoration: none;
}
.rl-intro a:hover,
.rl-intro a:focus {
  background: rgba(255, 255, 255, 0.15);
  color: #fff;
  text-decoration: none;
}
@media (min-width: 768px) {
  .rl-urgent {
    grid-template-columns: repeat(4, 1fr);
    max-width: 860px;
  }
}
.rl-afterhours-box .rl-nw {
  display: inline-block;
}

/***** 記事の下の「お問い合わせフォーム」をいつも出す（2026-10） *****/
.vd-afterlink {
  display: block;
}
.vd-afterlink .rl-form-lead {
  color: #555;
  font-size: 13px;
  line-height: 1.6;
  margin: -14px 0 30px;
  text-align: center;
}

/***** トップ 案1（2026-10 デザイン刷新）。色は公式サイト（remotelock.kke.co.jp）に合わせる *****/
/* 青 #036197（公式サイトの基調の色）、濃い青 #023e60、黄色 #ffc600（ロゴと公式サイトの差し色）。
   黄色の上の文字は濃い青にする（白だと読めない） */
.rl-top {
  color: #16263a;
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Yu Gothic", Meiryo, sans-serif;
  font-size: 15px;
  line-height: 1.7;
}
.rl-top a { text-decoration: none; }
.rl-top svg { display: block; }
.rl-top ul, .rl-top ol { list-style: none; margin: 0; padding: 0; }
.rl-top h1, .rl-top h2 { font-family: inherit; }

/* ヒーロー */
.rl-top-hero {
  position: relative;
  overflow: hidden;
  color: #fff;
  text-align: center;
  background:
    radial-gradient(45% 60% at 100% 0%, rgba(62, 169, 229, .28) 0%, rgba(62, 169, 229, 0) 100%),
    linear-gradient(120deg, #024f7c 0%, #036197 55%, #0a6fae 100%);
  padding: 28px 16px 26px;
}
/* 背景の点と線（公式サイトのヒーローの模様に合わせた飾り。画像ファイルを使わず CSS の中の SVG で描く） */
.rl-top-hero::before {
  content: "";
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='520' height='320' viewBox='0 0 520 320'%3E%3Cg stroke='%23ffffff' stroke-opacity='.16' stroke-width='1' fill='none'%3E%3Cpath d='M20 40 L150 110 L300 20 L470 90 L520 60 M150 110 L120 250 L260 300 L300 20 M260 300 L410 230 L470 90 M410 230 L520 280 M0 190 L120 250 M300 20 L410 230 M20 40 L0 120'/%3E%3C/g%3E%3Cg fill='%23ffffff' fill-opacity='.45'%3E%3Ccircle cx='20' cy='40' r='3'/%3E%3Ccircle cx='150' cy='110' r='3.5'/%3E%3Ccircle cx='300' cy='20' r='3'/%3E%3Ccircle cx='470' cy='90' r='4'/%3E%3Ccircle cx='120' cy='250' r='3'/%3E%3Ccircle cx='260' cy='300' r='3.5'/%3E%3Ccircle cx='410' cy='230' r='3'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 520px 320px;
  pointer-events: none;
}
.rl-top-hero-in { position: relative; max-width: 760px; margin: 0 auto; }
.rl-top-hero p { color: #fff; }
.rl-top-eyebrow { margin: 0; font-size: 12px; letter-spacing: .14em; color: #cfe6f5 !important; font-weight: 700; }
.rl-top-title { margin: 4px 0 14px; color: #fff; font-size: 24px; white-space: nowrap; line-height: 1.35; font-weight: 700; letter-spacing: .02em; }

/* 検索窓（Zendesk の {{search}} の出力を上書き） */
.rl-top-hero .search { max-width: none; margin: 0; }
.rl-top-hero .search::before { color: #036197; left: 18px; font-size: 17px; }
.rl-top-hero .search input[type="search"] {
  height: 54px;
  border: 0;
  border-radius: 14px;
  background: #fff;
  color: #16263a;
  font-size: 16px;
  padding-left: 48px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .25);
}
.rl-top-hero .search input[type="search"]::placeholder { color: #6b7b8e; }

/* 急ぎの症状のボタン */
.rl-top-hero p.rl-top-urgent-label { margin: 18px 0 8px; font-size: 13px; color: #e3f1fa; font-weight: 700; text-align: left; }
.rl-top-urgent { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
.rl-top-urgent a {
  display: flex; align-items: center; gap: 8px;
  min-height: 56px; height: 100%; box-sizing: border-box;
  padding: 10px 10px;
  border-radius: 12px;
  background: rgba(255, 255, 255, .1);
  border: 1px solid rgba(255, 255, 255, .28);
  color: #fff;
  font-weight: 700; font-size: 15px; line-height: 1.3; text-align: left;
}
.rl-top-urgent a:hover, .rl-top-urgent a:focus { background: rgba(255, 255, 255, .2); color: #fff; }
.rl-top-ic { flex: none; width: 32px; height: 32px; border-radius: 9px; background: #fff; display: grid; place-items: center; }
.rl-top-ic svg { width: 18px; height: 18px; fill: #036197; }
.rl-top-urgent a.rl-top-alert .rl-top-ic { background: #ffc600; }
.rl-top-urgent a.rl-top-alert .rl-top-ic svg { fill: #023e60; }

/* 時間外の欄 */
.rl-top-after[hidden] { display: none !important; }
.rl-top-after { margin-top: 14px; padding: 14px; border-radius: 12px; background: #fff; color: #16263a; text-align: left; }
.rl-top-after-row { display: flex; gap: 10px; align-items: flex-start; }
.rl-top-moon { flex: none; width: 28px; height: 28px; border-radius: 50%; background: #e8eef5; display: grid; place-items: center; margin-top: 2px; }
.rl-top-moon svg { width: 16px; height: 16px; fill: #036197; }
.rl-top-hero .rl-top-after p { margin: 0; font-size: 14px; line-height: 1.65; color: #16263a; }
.rl-top-after b { color: #036197; }
.rl-top-after .rl-nw { display: inline-block; }
.rl-top-form-btn {
  display: flex; justify-content: center; align-items: center;
  margin-top: 12px; min-height: 48px; border-radius: 999px;
  background: #ffc600; color: #023e60;
  box-shadow: 0 4px 12px rgba(0, 0, 0, .15);
  font-weight: 700; font-size: 16px;
}
.rl-top-form-btn:hover, .rl-top-form-btn:focus { background: #ffd23f; color: #023e60; }

/* 導入の欄へ移るボタン */
.rl-top-to-intro {
  display: inline-flex; align-items: center; gap: 6px;
  margin-top: 16px; padding: 8px 16px;
  border-radius: 999px; border: 1px solid rgba(255, 255, 255, .55);
  color: #fff; font-size: 14px; font-weight: 700;
}
.rl-top-to-intro:hover, .rl-top-to-intro:focus { background: rgba(255, 255, 255, .12); color: #fff; }
.rl-top-to-intro svg { width: 14px; height: 14px; fill: currentColor; }

/* 本文 */
.rl-top-wrap { max-width: 1080px; margin: 0 auto; padding: 0 16px; }
.rl-top-sec { padding: 28px 0 8px; }
.rl-top .rl-top-h2 { margin: 0 0 14px; padding-bottom: 10px; color: #111; font-size: 20px; line-height: 1.4; font-weight: 700; position: relative; }
/* 公式サイトのメニューの下にある黄色い点5つを、見出しの下に置く */
.rl-top .rl-top-h2::after {
  content: ""; position: absolute; left: 0; bottom: 0; width: 50px; height: 6px;
  background: radial-gradient(circle, #ffc600 2.6px, transparent 3px) 0 0 / 10px 6px repeat-x;
}
.rl-top .rl-top-h2::before { content: none; }

.rl-top-chev { width: 24px; height: 24px; flex: none; }
.rl-top-chev circle { fill: none; stroke: #036197; stroke-width: 1.4; }
.rl-top-chev path { fill: #036197; }

/* カテゴリのカード（お使いの方） */
.rl-top-cards { display: grid; grid-template-columns: 1fr; gap: 10px; }
.rl-top-card { border: 1px solid #dde5ee; border-radius: 14px; background: #fff; padding: 14px; }
.rl-top-card-head { display: flex; align-items: center; gap: 12px; color: #111; }
.rl-top-card-head b { font-size: 16px; line-height: 1.4; }
.rl-top-card-head:hover b, .rl-top-card-head:focus b { color: #036197; }
.rl-top-cic { flex: none; width: 44px; height: 44px; border-radius: 12px; background: #e8f0f8; display: grid; place-items: center; }
.rl-top-cic svg { width: 22px; height: 22px; fill: #036197; }
.rl-top-secs { margin: 10px 0 0 !important; border-top: 1px solid #eef2f6; }
.rl-top-secs li { border-bottom: 1px solid #eef2f6; }
.rl-top-secs li:nth-of-type(n + 7) { display: none; }
.rl-top-secs a { display: block; padding: 9px 2px; font-size: 14px; line-height: 1.5; color: #16263a; }
.rl-top-secs a:hover, .rl-top-secs a:focus { color: #036197; }
.rl-top-more { display: flex; justify-content: flex-end; align-items: center; gap: 8px; margin-top: 10px; color: #036197; font-size: 13.5px; font-weight: 700; }

/* カテゴリのカード（連携・開発） */
.rl-top-cards-s .rl-top-card { padding: 0; }
.rl-top-card-row { display: grid; grid-template-columns: 36px 1fr 24px; gap: 12px; align-items: center; padding: 12px 14px; color: #111; height: 100%; box-sizing: border-box; }
.rl-top-card-row b { display: block; font-size: 15px; line-height: 1.4; }
.rl-top-card-row:hover b, .rl-top-card-row:focus b { color: #036197; }
/* 説明は Zendesk のカテゴリの説明をそのまま出す（2026-10-09 川村「説明が不足」を受けて追加） */
.rl-top-card-txt small { display: block; margin-top: 2px; font-size: 12.5px; line-height: 1.6; color: #4a5b70; font-weight: 400; }
.rl-top-cards-s .rl-top-cic { width: 36px; height: 36px; border-radius: 10px; background: #f4f7fa; }
.rl-top-cards-s .rl-top-cic svg { width: 18px; height: 18px; }

/* 導入をご検討の方 */
.rl-top-intro { margin-top: 28px; background: #f4f7fa; border-top: 1px solid #dde5ee; border-bottom: 1px solid #dde5ee; }
.rl-top-intro .rl-top-wrap { padding-top: 26px; padding-bottom: 26px; }
.rl-top-lead { margin: -4px 0 14px; color: #4a5b70; font-size: 13.5px; }
.rl-top-steps { display: grid; grid-template-columns: 1fr; gap: 10px; counter-reset: rlstep; }
.rl-top-steps a {
  display: grid; grid-template-columns: 30px 1fr 24px; gap: 12px; align-items: center;
  padding: 14px; border-radius: 14px; background: #fff; border: 1px solid #dde5ee; color: #111;
}
.rl-top-steps a::before {
  counter-increment: rlstep; content: counter(rlstep);
  width: 30px; height: 30px; border-radius: 50%; background: #036197; color: #fff;
  display: grid; place-items: center; font-weight: 700; font-size: 14px;
}
.rl-top-steps b { display: block; font-size: 15.5px; line-height: 1.4; }
.rl-top-steps small { display: block; font-size: 12.5px; color: #4a5b70; line-height: 1.6; }
.rl-top-steps a:hover b, .rl-top-steps a:focus b { color: #036197; }
.rl-top-fac-label { margin: 18px 0 8px; font-size: 13px; font-weight: 700; color: #4a5b70; }
.rl-top-fac { display: flex; flex-wrap: wrap; gap: 8px; }
.rl-top-fac a { display: inline-block; padding: 7px 14px; border-radius: 999px; background: #fff; border: 1px solid #b9d3e6; color: #036197; font-size: 13.5px; font-weight: 700; }
.rl-top-fac a:hover, .rl-top-fac a:focus { background: #e8f0f8; }
.rl-top-link { display: inline-block; margin-top: 14px; font-size: 13.5px; font-weight: 700; color: #036197; text-decoration: underline !important; }

/* お知らせ（中身は script.js が入れる。今の .newstopics の見た目を上書き） */
.rl-top .newstopics.rl-top-news { background: none; border: 0; border-radius: 0; margin: 0; padding: 28px 0 8px; }
.rl-top .newstopics.rl-top-news ul { display: block; border-top: 1px solid #dde5ee; }
.rl-top .newstopics.rl-top-news ul li { padding: 12px 2px; border-top: 0; border-bottom: 1px solid #dde5ee; font-size: 14px; line-height: 1.55; }
.rl-top .newstopics.rl-top-news ul li:last-of-type { border-bottom: 1px solid #dde5ee; }
.rl-top .newstopics.rl-top-news ul li span { display: block; font-size: 12px; color: #036197; letter-spacing: .04em; }
.rl-top .newstopics.rl-top-news ul li a { color: #16263a; }
.rl-top .newstopics.rl-top-news ul li a:hover { color: #036197; }
.rl-top .newstopics.rl-top-news > a { top: 28px; right: 0; border-color: #036197; color: #036197; }
.rl-top-others { margin: 18px 0 0; font-size: 13.5px; line-height: 2; }
.rl-top-others a { display: inline-block; margin-right: 16px; color: #036197; font-weight: 700; text-decoration: underline !important; }
.rl-top-privacy { margin: 28px 0 36px; padding-top: 16px; border-top: 1px solid #eef2f6; color: #4a5b70; font-size: 12.5px; line-height: 1.7; }
.rl-top-privacy p { margin: 0 0 6px; }
.rl-top-privacy a { color: #036197; text-decoration: underline; }

/* パソコン */
@media (min-width: 900px) {
  .rl-top-hero { padding: 52px 24px 44px; }
  .rl-top-eyebrow { font-size: 13px; }
  .rl-top-title { font-size: 36px; margin-bottom: 20px; }
  .rl-top-hero .search input[type="search"] { height: 60px; }
  .rl-top-hero p.rl-top-urgent-label { text-align: center; }
  .rl-top-urgent { grid-template-columns: repeat(4, 1fr); }
  .rl-top-urgent a { justify-content: center; padding: 10px 14px; gap: 10px; }
  .rl-top-after { max-width: 640px; margin-left: auto; margin-right: auto; padding: 16px 18px; display: flex; gap: 16px; align-items: center; }
  .rl-top-after .rl-top-after-row { flex: 1; }
  .rl-top-form-btn { margin-top: 0; padding: 0 22px; white-space: nowrap; }
  .rl-top-sec, .rl-top .newstopics.rl-top-news { padding-top: 40px; }
  .rl-top-cards { grid-template-columns: repeat(4, 1fr); gap: 14px; }
  .rl-top-card { padding: 18px; display: flex; flex-direction: column; }
  .rl-top-card .rl-top-more { margin-top: auto; padding-top: 10px; }
  .rl-top-cards-s { grid-template-columns: repeat(3, 1fr); }
  .rl-top-cards-s .rl-top-card { padding: 0; }
  .rl-top-intro { margin-top: 40px; }
  .rl-top-intro .rl-top-wrap { padding-top: 32px; padding-bottom: 32px; }
  .rl-top-steps { grid-template-columns: repeat(4, 1fr); gap: 14px; }
  .rl-top-steps a { grid-template-columns: 1fr; align-content: start; height: 100%; box-sizing: border-box; padding: 18px 18px 46px; position: relative; }
  .rl-top-steps .rl-top-chev { position: absolute; right: 16px; bottom: 14px; }
}

/***** 障害のお知らせの帯（2026-10）。案1のトップと同じ色。黄色 #ffc600 の上に濃い青 #023e60 の文字（7.2:1） *****/
.rl-notice[hidden], .rl-notice-preview[hidden] { display: none !important; }
.rl-notice { background: #ffc600; border-bottom: 1px solid #e0ad00; font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Yu Gothic", Meiryo, sans-serif; }
.rl-notice-link {
  display: flex; align-items: center; gap: 10px;
  max-width: 1080px; margin: 0 auto; padding: 10px 16px;
  color: #023e60; text-decoration: none; line-height: 1.5;
}
.rl-notice-link:hover, .rl-notice-link:focus { color: #023e60; text-decoration: none; }
.rl-notice-link:hover .rl-notice-more, .rl-notice-link:focus .rl-notice-more { text-decoration: underline; }
.rl-notice-ic { flex: none; width: 28px; height: 28px; border-radius: 50%; background: #023e60; display: grid; place-items: center; }
.rl-notice-ic svg { width: 16px; height: 16px; fill: #ffc600; display: block; }
.rl-notice-body { flex: 1; min-width: 0; }
.rl-notice-title { font-size: 14.5px; font-weight: 700; }
.rl-notice-time { display: block; font-size: 12px; }
.rl-notice-preview { display: inline-block; margin-right: 6px; padding: 1px 6px; border: 1px solid #023e60; border-radius: 4px; font-size: 11px; font-weight: 700; vertical-align: 1px; }
.rl-notice-more { flex: none; font-size: 18px; font-weight: 700; white-space: nowrap; }
.rl-notice-more-t { display: none; }
@media (min-width: 900px) {
  .rl-notice-link { padding: 10px 24px; }
  .rl-notice-body { display: flex; align-items: baseline; gap: 14px; }
  .rl-notice-title { font-size: 15px; }
  .rl-notice-time { display: inline; }
  .rl-notice-more { font-size: 13px; }
  .rl-notice-more-t { display: inline; }
}

/***** 記事・セクション・カテゴリ・検索結果・問い合わせフォーム・エラーのページ（2026-10 トップの案1に合わせて作り直し） *****/
/* 色・書体・角の丸み・黄色の点の下線はトップと同じ。クラス名は、共通の部品が rl-pg-、記事が rl-art-、
   カテゴリが rl-cat-、検索結果が rl-sr-、問い合わせフォームが rl-req- で始まる。トップ（rl-top-）には効かない */
/* 記事の本文（.rl-art-body）は、インラインの装飾がある要素には手を出さない。
   装飾のない h2・h3・画像・リンクだけ、トップと同じ調子に整える */
.rl-pg {
  color: #16263a;
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Yu Gothic", Meiryo, sans-serif;
  font-size: 15px;
  line-height: 1.7;
}
.rl-pg h1, .rl-pg h2, .rl-pg h3 { font-family: inherit; }
.rl-pg svg { display: block; }

/* 上の帯：トップのヒーローと同じ色と模様を、低く */
.rl-pg-hero {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(45% 90% at 100% 0%, rgba(62, 169, 229, .28) 0%, rgba(62, 169, 229, 0) 100%),
    linear-gradient(120deg, #024f7c 0%, #036197 55%, #0a6fae 100%);
  padding: 16px 0;
}
.rl-pg-hero::before {
  content: "";
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='520' height='320' viewBox='0 0 520 320'%3E%3Cg stroke='%23ffffff' stroke-opacity='.16' stroke-width='1' fill='none'%3E%3Cpath d='M20 40 L150 110 L300 20 L470 90 L520 60 M150 110 L120 250 L260 300 L300 20 M260 300 L410 230 L470 90 M410 230 L520 280 M0 190 L120 250 M300 20 L410 230 M20 40 L0 120'/%3E%3C/g%3E%3Cg fill='%23ffffff' fill-opacity='.45'%3E%3Ccircle cx='20' cy='40' r='3'/%3E%3Ccircle cx='150' cy='110' r='3.5'/%3E%3Ccircle cx='300' cy='20' r='3'/%3E%3Ccircle cx='470' cy='90' r='4'/%3E%3Ccircle cx='120' cy='250' r='3'/%3E%3Ccircle cx='260' cy='300' r='3.5'/%3E%3Ccircle cx='410' cy='230' r='3'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 520px 320px;
  pointer-events: none;
}
.rl-pg-hero-in {
  position: relative;
  max-width: 1160px;
  margin: 0 auto;
  padding: 0 16px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.rl-pg-crumbs .breadcrumbs { margin: 0; padding: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 2px 0; }
.rl-pg-crumbs .breadcrumbs li { display: inline-flex; align-items: center; font-size: 13px; line-height: 1.6; color: #e3f1fa; }
.rl-pg-crumbs .breadcrumbs li::before { content: none !important; }
.rl-pg-crumbs .breadcrumbs li + li::before {
  content: "" !important;
  display: inline-block;
  width: 6px; height: 6px;
  margin: 0 10px 0 8px;
  border-top: 1.5px solid #9fcbe6;
  border-right: 1.5px solid #9fcbe6;
  transform: rotate(45deg);
}
.rl-pg-crumbs .breadcrumbs a, .rl-pg-crumbs .breadcrumbs a:visited { color: #fff; text-decoration: none; }
.rl-pg-crumbs .breadcrumbs a:hover, .rl-pg-crumbs .breadcrumbs a:focus { text-decoration: underline; }
.rl-pg-hero .search { width: 100%; max-width: none; margin: 0; height: auto; }
.rl-pg-hero .search::before { color: #036197; left: 16px; font-size: 15px; }
.rl-pg-hero .search input[type="search"] {
  width: 100%;
  height: 44px;
  border: 0;
  border-radius: 999px;
  background: #fff;
  color: #16263a;
  font-size: 15px;
  padding: 0 18px 0 42px;
  box-shadow: 0 6px 18px rgba(2, 40, 66, .22);
}
.rl-pg-hero .search input[type="search"]::placeholder { color: #6b7b8e; }

/* 本文の列と右の列 */
.rl-art-wrap {
  max-width: 1160px;
  margin: 0 auto;
  padding: 24px 16px 48px;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 32px;
}
.rl-art-main { min-width: 0; }

/* 題名のまわり */
.rl-art-head { margin: 0 0 24px; }
.rl-art-sec {
  display: inline-block;
  margin-bottom: 10px;
  padding: 3px 12px;
  border-radius: 999px;
  background: #e8f1f8;
  color: #036197;
  font-size: 12.5px;
  font-weight: 700;
  line-height: 1.6;
  text-decoration: none;
}
.rl-art-sec:hover, .rl-art-sec:focus { background: #d6e8f5; color: #023e60; text-decoration: none; }
.rl-art .rl-art-title {
  margin: 0;
  padding: 0 0 14px;
  border: 0;
  background: none;
  color: #06405a;
  font-size: 23px;
  line-height: 1.5;
  font-weight: 700;
  letter-spacing: .01em;
  position: relative;
}
.rl-art .rl-art-title::after {
  content: "";
  position: absolute;
  left: 0; bottom: 0;
  width: 50px; height: 6px;
  background: radial-gradient(circle, #ffc600 2.6px, transparent 3px) 0 0 / 10px 6px repeat-x;
}
.rl-art-subscribe { margin-top: 12px; }

/* 本文：装飾のない要素だけ整える */
.rl-art-body { font-size: 15.5px; line-height: 1.9; color: #1c232b; overflow-wrap: anywhere; }
.rl-art-body h2:not([style]) {
  margin: 44px 0 16px;
  padding: 0 0 10px;
  color: #06405a;
  font-size: 21px;
  line-height: 1.5;
  font-weight: 700;
  border-bottom: 1px solid #dbe4ec;
  position: relative;
}
.rl-art-body h2:not([style])::after {
  content: "";
  position: absolute;
  left: 0; bottom: -4px;
  width: 50px; height: 6px;
  background: radial-gradient(circle, #ffc600 2.6px, transparent 3px) 0 0 / 10px 6px repeat-x;
}
.rl-art-body h3:not([style]) {
  margin: 32px 0 12px;
  padding: 2px 0 2px 12px;
  border-left: 4px solid #036197;
  color: #06405a;
  font-size: 18px;
  line-height: 1.55;
  font-weight: 700;
}
.rl-art-body h2, .rl-art-body h3 { scroll-margin-top: 16px; }
.rl-art-body img:not([style]) { border-radius: 8px; }
.rl-art-body a:not([style]) { color: #036197; text-decoration: underline; text-underline-offset: 3px; }
.rl-art-body a:not([style]):hover { color: #023e60; }

/* 添付ファイル */
.rl-art-files { list-style: none; margin: 28px 0 0; padding: 0; display: grid; gap: 8px; }
.rl-art-files li { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border: 1px solid #dbe4ec; border-radius: 12px; }
.rl-art-files a { font-weight: 700; color: #036197; }
.rl-art-files small { margin-left: auto; color: #5b6b7d; }

/* 最終更新：目立たせず、本文の終わりの右に小さく */
.rl-art-updated { margin: 36px 0 0; text-align: right; color: #6b7b8e; font-size: 12px; line-height: 1.5; }

/* 役に立ったか */
.rl-art-vote {
  margin: 12px 0 0;
  padding: 22px 16px 18px;
  border-radius: 16px;
  background: #f3f7fb;
  text-align: center;
}
.rl-art-vote-q { margin: 0 0 12px; font-weight: 700; font-size: 16px; color: #06405a; }
.rl-art-vote-btns { display: flex; justify-content: center; gap: 12px; }
.rl-art .article-vote {
  margin: 0;
  min-width: 120px;
  height: 44px;
  padding: 0 22px;
  border: 1.5px solid #036197;
  border-radius: 999px;
  background: #fff;
  color: #036197;
  font-size: 15px;
  font-weight: 700;
  line-height: 41px;
}
.rl-art .article-vote::before { content: none; }
.rl-art .article-vote::after { color: inherit; }
.rl-art .article-vote:hover, .rl-art .article-vote:focus, .rl-art .article-vote[aria-selected="true"] { background: #036197; color: #fff; }
.rl-art-vote-count { display: block; margin-top: 10px; color: #5b6b7d; font-size: 12.5px; }

/* 解決しないとき：トップのヒーローと同じ青。フォームのボタンは黄色（黄色の上の文字は濃い青） */
.rl-pg-help {
  margin: 16px 0 0;
  padding: 22px 20px;
  border-radius: 16px;
  color: #fff;
  background:
    radial-gradient(60% 120% at 100% 0%, rgba(62, 169, 229, .28) 0%, rgba(62, 169, 229, 0) 100%),
    linear-gradient(120deg, #024f7c 0%, #036197 60%, #0a6fae 100%);
  display: grid;
  gap: 16px;
}
.rl-pg-help[hidden], .rl-pg-help [hidden] { display: none !important; }
.rl-pg-help p { margin: 0; color: #fff; }
.rl-pg-help .rl-pg-help-h { font-size: 18px; font-weight: 700; line-height: 1.5; }
.rl-pg-help .rl-pg-help-p { margin-top: 4px; font-size: 14px; line-height: 1.7; color: #e3f1fa; }
.rl-pg-help-act { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; }
.rl-pg-form-btn {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 48px; padding: 0 26px;
  border-radius: 999px;
  background: #ffc600; color: #023e60;
  font-weight: 700; font-size: 16px;
  text-decoration: none;
  box-shadow: 0 6px 16px rgba(2, 40, 66, .25);
}
.rl-pg-form-btn:hover, .rl-pg-form-btn:focus { background: #ffd23f; color: #023e60; text-decoration: none; }
.rl-pg-tel { color: #fff; text-decoration: none; line-height: 1.35; }
.rl-pg-tel b { display: block; font-size: 20px; letter-spacing: .03em; }
.rl-pg-tel small { display: block; font-size: 12px; color: #e3f1fa; }
.rl-pg-tel:hover, .rl-pg-tel:focus { color: #fff; text-decoration: none; }

/* 関連記事・最近見た記事：カードの並び */
.rl-art-related { margin-top: 44px; display: grid; gap: 28px; }
.rl-art-related > section > h2, .rl-art-related > section > h3 {
  margin: 0 0 14px; padding-bottom: 10px;
  color: #111; font-size: 18px; font-weight: 700; line-height: 1.4;
  position: relative;
}
.rl-art-related > section > h2::after, .rl-art-related > section > h3::after {
  content: ""; position: absolute; left: 0; bottom: 0; width: 50px; height: 6px;
  background: radial-gradient(circle, #ffc600 2.6px, transparent 3px) 0 0 / 10px 6px repeat-x;
}
.rl-art-related ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.rl-art-related li { margin: 0; padding: 0; }
.rl-art-related li a {
  display: flex; align-items: center; gap: 12px;
  padding: 14px 16px;
  border: 1px solid #dbe4ec; border-radius: 12px;
  background: #fff;
  color: #16263a; font-size: 14.5px; font-weight: 700; line-height: 1.55;
  text-decoration: none;
  transition: border-color .15s, box-shadow .15s;
}
.rl-art-related li a::before { content: none; }
.rl-art-related li a::after {
  content: "›"; margin-left: auto; flex: none;
  width: 26px; height: 26px; border-radius: 50%;
  border: 1.5px solid #036197; color: #036197;
  display: grid; place-items: center; font-size: 17px; line-height: 1;
}
.rl-art-related li a:hover, .rl-art-related li a:focus { border-color: #036197; box-shadow: 0 4px 14px rgba(3, 97, 151, .12); color: #036197; }

/* 右の列 */
.rl-art-side { min-width: 0; display: grid; gap: 20px; align-content: start; }
.rl-art-side-h { margin: 0 0 8px; color: #06405a; font-size: 14px; font-weight: 700; line-height: 1.5; }
.rl-art-toc[hidden] { display: none !important; }
.rl-art-toc, .rl-art-insec {
  padding: 16px 16px 14px;
  border: 1px solid #dbe4ec;
  border-radius: 16px;
  background: #fff;
}
.rl-art-toc ol, .rl-art-insec ul { list-style: none; margin: 0; padding: 0; }
.rl-art-toc a {
  display: block;
  padding: 6px 0 6px 14px;
  border-left: 2px solid #e2e9ef;
  color: #4a5b70; font-size: 13.5px; line-height: 1.55;
  text-decoration: none;
}
.rl-art-toc a:hover, .rl-art-toc a:focus { color: #036197; }
.rl-art-toc a.is-current { border-left-color: #ffc600; color: #036197; font-weight: 700; }
.rl-art-insec li + li { border-top: 1px solid #edf2f6; }
.rl-art-insec a {
  display: block; padding: 9px 2px;
  color: #16263a; font-size: 13.5px; line-height: 1.55;
  text-decoration: none;
}
.rl-art-insec a:hover, .rl-art-insec a:focus { color: #036197; }
.rl-art-insec a[aria-current="page"] { color: #036197; font-weight: 700; }
.rl-art-insec a[aria-current="page"]::before {
  content: ""; display: inline-block; width: 7px; height: 7px; margin: 0 7px 1px 0;
  border-radius: 50%; background: #ffc600;
}
.rl-art-insec-more { display: block; margin-top: 8px; color: #036197; font-size: 13px; font-weight: 700; text-decoration: none; }

@media (min-width: 768px) {
  .rl-pg-hero { padding: 18px 0; }
  .rl-pg-hero-in { padding: 0 24px; flex-direction: row; align-items: center; justify-content: space-between; gap: 24px; }
  .rl-pg-crumbs { flex: 1 1 auto; min-width: 0; }
  .rl-pg-hero .search { flex: 0 0 360px; }
  .rl-art-wrap { padding: 32px 24px 64px; }
  .rl-art .rl-art-title { font-size: 28px; }
  .rl-pg-help { padding: 24px 28px; }
}
@media (min-width: 1024px) {
  .rl-art-wrap { grid-template-columns: minmax(0, 1fr) 280px; gap: 48px; }
  .rl-art-side { position: sticky; top: 16px; max-height: calc(100vh - 32px); overflow: auto; }
}
/* 目次は、本文の横に並ぶ広い画面だけ。スマホでは本文の下に回ってしまい役に立たないので出さない */
@media (max-width: 1023px) {
  .rl-art-toc { display: none !important; }
}

/***** 記事以外のページの共通部品 *****/
/* 高い帯：パンくずの下に、題名・説明と検索を並べる（セクション・カテゴリ・検索結果・フォーム・エラー） */
.rl-pg-hero-tall { padding: 20px 0 26px; }
.rl-pg-hero-row { display: flex; flex-direction: column; gap: 16px; }
.rl-pg-hero-txt { min-width: 0; }
.rl-pg .rl-pg-title {
  margin: 4px 0 0;
  color: #fff;
  font-size: 24px;
  line-height: 1.45;
  font-weight: 700;
  letter-spacing: .02em;
}
.rl-pg .rl-pg-title::after {
  content: ""; display: block; width: 50px; height: 6px; margin-top: 10px;
  background: radial-gradient(circle, #ffc600 2.6px, transparent 3px) 0 0 / 10px 6px repeat-x;
}
.rl-pg-hero .rl-pg-desc { margin: 10px 0 0; color: #e3f1fa; font-size: 14px; line-height: 1.75; max-width: 680px; }

.rl-pg-wrap { max-width: 880px; margin: 0 auto; padding: 24px 16px 48px; }
.rl-pg-wrap-wide { max-width: 1160px; }
/* 記事の並びが1列のページ（セクション・検索結果・エラー）は、帯の中身も同じ幅に揃える */
.rl-pg-narrow .rl-pg-hero-in { max-width: 880px; }
.rl-pg-subscribe { margin-bottom: 16px; }
.rl-pg .rl-pg-h2 {
  margin: 0 0 14px; padding-bottom: 10px;
  color: #111; font-size: 18px; font-weight: 700; line-height: 1.45;
  position: relative;
}
.rl-pg .rl-pg-h2::after {
  content: ""; position: absolute; left: 0; bottom: 0; width: 50px; height: 6px;
  background: radial-gradient(circle, #ffc600 2.6px, transparent 3px) 0 0 / 10px 6px repeat-x;
}
.rl-pg-empty { color: #5b6b7d; }

/* 記事の並び：1行1枚のカード。左に記事の印、右に矢印 */
.rl-pg-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.rl-pg-list li { margin: 0; padding: 0; border: 0; }
.rl-pg-list li::before { content: none; }
.rl-pg-list a {
  display: flex; align-items: center; gap: 14px;
  padding: 14px 16px;
  border: 1px solid #dbe4ec; border-radius: 12px;
  background: #fff;
  color: #16263a; font-size: 15px; font-weight: 700; line-height: 1.55;
  text-decoration: none;
  transition: border-color .15s, box-shadow .15s, transform .15s;
}
.rl-pg-list a::after {
  content: "›"; margin-left: auto; flex: none;
  width: 26px; height: 26px; border-radius: 50%;
  border: 1.5px solid #036197; color: #036197;
  display: grid; place-items: center; font-size: 17px; line-height: 1;
}
.rl-pg-list a:hover, .rl-pg-list a:focus { border-color: #036197; box-shadow: 0 4px 14px rgba(3, 97, 151, .12); color: #036197; text-decoration: none; }
.rl-pg-list-t { min-width: 0; }
/* 記事の印（紙）とセクションの印（フォルダ）。CSS の中の SVG で描く */
.rl-pg-list-ic {
  flex: none; width: 34px; height: 34px; border-radius: 9px; background: #e8f1f8;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23036197' d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8l-6-6zm-1 7V3.5L18.5 9H13zM8 13h8v2H8v-2zm0 4h8v2H8v-2z'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: center; background-size: 18px 18px;
}
.rl-pg-list-ic-folder {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23036197' d='M10 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-8l-2-2z'/%3E%3C/svg%3E");
}
.rl-pg-also { margin-top: 36px; }
.rl-pg-pagination { margin-top: 20px; }
.rl-pg-pagination:empty { display: none; }

/* 先に見てほしい1本（施工資料の一覧など）：黄色の札つきのカード */
.rl-pg-pick {
  display: block; margin: 0 0 20px; padding: 16px 18px;
  border: 1px solid #036197; border-left: 5px solid #ffc600; border-radius: 12px;
  background: #f3f7fb; text-decoration: none;
}
.rl-pg-pick-tag { display: inline-block; margin-bottom: 6px; padding: 1px 10px; border-radius: 999px; background: #ffc600; color: #023e60; font-size: 12px; font-weight: 700; }
.rl-pg-pick b { display: block; color: #036197; font-size: 16px; line-height: 1.55; }
.rl-pg-pick small { display: block; margin-top: 4px; color: #4a5b70; font-size: 14px; line-height: 1.75; }
.rl-pg-pick:hover, .rl-pg-pick:focus { box-shadow: 0 4px 14px rgba(3, 97, 151, .14); text-decoration: none; }

.rl-list-pg .rl-pg-help { margin-top: 40px; }

/***** カテゴリのページ：セクションのカード（トップのカテゴリのカードと同じ形） *****/
.rl-cat-grid { display: grid; gap: 16px; grid-template-columns: minmax(0, 1fr); }
.rl-cat-card {
  display: flex; flex-direction: column;
  padding: 18px 18px 14px;
  border: 1px solid #dbe4ec; border-radius: 16px; background: #fff;
  box-shadow: 0 2px 10px rgba(2, 40, 66, .04);
}
.rl-pg .rl-cat-card-h { margin: 0 0 6px; padding: 0 0 10px; border-bottom: 1px solid #edf2f6; font-size: 16.5px; line-height: 1.5; font-weight: 700; }
.rl-cat-card-h a { color: #06405a; text-decoration: none; }
.rl-cat-card-h a:hover, .rl-cat-card-h a:focus { color: #036197; }
.rl-cat-card-list { list-style: none; margin: 0 0 6px; padding: 0; }
.rl-cat-card-list li { margin: 0; padding: 0; border: 0; }
.rl-cat-card-list li::before { content: none; }
.rl-cat-card-list li + li { border-top: 1px solid #f0f4f7; }
.rl-cat-card-list a { display: block; padding: 9px 2px; color: #16263a; font-size: 14px; line-height: 1.55; text-decoration: none; }
.rl-cat-card-list a:hover, .rl-cat-card-list a:focus { color: #036197; }
.rl-cat-card-more { margin-top: auto; padding-top: 8px; display: flex; justify-content: flex-end; align-items: center; gap: 8px; color: #036197; font-size: 13.5px; font-weight: 700; text-decoration: none; }
.rl-cat-card-arrow { width: 24px; height: 24px; border-radius: 50%; border: 1.5px solid #036197; display: grid; place-items: center; font-size: 16px; line-height: 1; }
.rl-cat-card-more:hover, .rl-cat-card-more:focus { color: #023e60; text-decoration: none; }

/***** 検索結果のページ *****/
.rl-sr-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.rl-sr-item {
  position: relative;
  padding: 16px 18px;
  border: 1px solid #dbe4ec; border-radius: 14px; background: #fff;
  transition: border-color .15s, box-shadow .15s;
}
.rl-sr-item:hover { border-color: #036197; box-shadow: 0 4px 14px rgba(3, 97, 151, .12); }
.rl-sr-path { list-style: none; margin: 0 0 4px; padding: 0; display: flex; flex-wrap: wrap; gap: 0; }
.rl-sr-path li { margin: 0; padding: 0; color: #5b6b7d; font-size: 12.5px; line-height: 1.6; }
.rl-sr-path li + li::before { content: "›"; margin: 0 6px; color: #9aaabb; }
.rl-sr-title { display: block; color: #036197; font-size: 16.5px; font-weight: 700; line-height: 1.55; text-decoration: none; }
.rl-sr-title::after { content: ""; position: absolute; top: 0; right: 0; bottom: 0; left: 0; border-radius: 14px; }
.rl-sr-title:hover, .rl-sr-title:focus { text-decoration: underline; }
.rl-sr-text { margin: 6px 0 0; color: #4a5b70; font-size: 14px; line-height: 1.8; }
.rl-sr-text em { font-style: normal; font-weight: 700; color: #16263a; background: linear-gradient(transparent 62%, rgba(255, 198, 0, .45) 62%); }

/* 見つからないとき・エラーのとき */
.rl-sr-none {
  padding: 28px 22px 24px;
  border: 1px solid #dbe4ec; border-radius: 16px; background: #fff;
  text-align: center;
}
.rl-sr-none-ic { display: grid; place-items: center; width: 56px; height: 56px; margin: 0 auto 12px; border-radius: 50%; background: #e8f1f8; }
.rl-sr-none-ic svg { width: 28px; height: 28px; fill: #036197; }
.rl-pg .rl-sr-none-h { margin: 0; color: #06405a; font-size: 18px; font-weight: 700; line-height: 1.5; }
.rl-sr-none-p { margin: 6px 0 0; color: #4a5b70; }
.rl-sr-none-tips { display: inline-block; margin: 14px 0 0; padding: 0 0 0 1.2em; text-align: left; color: #4a5b70; font-size: 14px; line-height: 1.85; list-style: disc; }
.rl-sr-none-home, a.rl-sr-none-home {
  display: inline-flex; align-items: center; justify-content: center; margin-top: 18px;
  min-height: 44px; padding: 0 22px; border: 1.5px solid #036197; border-radius: 999px;
  color: #036197; font-weight: 700; text-decoration: none; background: #fff;
}
.rl-sr-none-home:hover, .rl-sr-none-home:focus { background: #036197; color: #fff; text-decoration: none; }

/***** 問い合わせフォームのページ *****/
.rl-req-grid { display: grid; gap: 24px; grid-template-columns: minmax(0, 1fr); align-items: start; }
.rl-req-before {
  padding: 20px 20px 18px;
  border-radius: 16px;
  background: #f3f7fb;
  border: 1px solid #dbe4ec;
  font-size: 14px; line-height: 1.8; color: #1c232b;
}
.rl-req-before p { margin: 0 0 10px; }
.rl-req-before .rl-req-before-h { margin-bottom: 10px; color: #06405a; font-size: 17px; font-weight: 700; display: flex; align-items: center; gap: 8px; }
.rl-req-before .rl-req-before-h::before { content: ""; width: 6px; height: 20px; border-radius: 3px; background: #ffc600; }
.rl-req-before .rl-req-before-warn { padding: 10px 12px; border-radius: 10px; background: #fff4e5; color: #8a3b00; font-weight: 700; }
.rl-req-links { list-style: none; margin: 12px 0 0; padding: 0; display: grid; gap: 8px; }
.rl-req-links li { margin: 0; }
.rl-req-links a {
  display: block; position: relative;
  padding: 10px 40px 10px 14px;
  border: 1px solid #dbe4ec; border-radius: 12px; background: #fff;
  text-decoration: none;
}
.rl-req-links a::after {
  content: "›"; position: absolute; right: 12px; top: 50%; transform: translateY(-50%);
  width: 22px; height: 22px; border-radius: 50%; border: 1.5px solid #036197; color: #036197;
  display: grid; place-items: center; font-size: 15px; line-height: 1;
}
.rl-req-links small { display: block; color: #4a5b70; font-size: 12.5px; line-height: 1.6; }
.rl-req-links b { display: block; color: #036197; font-size: 14px; line-height: 1.6; }
.rl-req-links a:hover, .rl-req-links a:focus { border-color: #036197; text-decoration: none; }
.rl-req-main {
  min-width: 0;
  padding: 22px 20px 8px;
  border: 1px solid #dbe4ec; border-radius: 16px; background: #fff;
  box-shadow: 0 2px 10px rgba(2, 40, 66, .04);
}
.rl-req-follow { margin: 0 0 12px; padding: 10px 12px; border-radius: 10px; background: #f3f7fb; font-size: 14px; }
.rl-req-privacy { margin: 0 0 18px; padding-bottom: 14px; border-bottom: 1px solid #edf2f6; color: #5b6b7d; font-size: 13px; line-height: 1.75; }
.rl-req-privacy a { color: #036197; text-decoration: underline; }
.rl-req .form { max-width: none; padding-bottom: 24px; }
.rl-req .form-field ~ .form-field { margin-top: 20px; }
.rl-req .form-field label { font-size: 14px; font-weight: 700; color: #06405a; margin-bottom: 6px; }
.rl-req .form-field.required > label::after { content: "必須"; margin-left: 8px; padding: 1px 8px; border-radius: 999px; background: #ffe9ee; color: #c0002a; font-size: 11px; font-weight: 700; vertical-align: 1px; }
.rl-req .form-field input[type="text"], .rl-req .form-field input[type="email"], .rl-req .form-field input[type="tel"], .rl-req .form-field input[type="number"],
.rl-req .form-field textarea, .rl-req .form-field .nesty-input, .rl-req select {
  border: 1px solid #c5d3df; border-radius: 10px; background: #fff;
}
.rl-req .form-field input[type="text"], .rl-req .form-field input[type="email"], .rl-req .form-field input[type="tel"], .rl-req .form-field input[type="number"] { height: 44px; padding: 0 12px; font-size: 15px; }
.rl-req .form-field .nesty-input { display: block; height: 44px; line-height: 44px; padding: 0 36px 0 12px; }
.rl-req .form-field input:focus, .rl-req .form-field textarea:focus, .rl-req .form-field .nesty-input:focus, .rl-req select:focus { border-color: #036197; box-shadow: 0 0 0 3px rgba(3, 97, 151, .15); }
.rl-req .form-field p { color: #5b6b7d; font-size: 12.5px; line-height: 1.7; }
.rl-req .form footer { margin-top: 24px; padding-top: 0; border: 0; }
.rl-req .form input[type="submit"] {
  min-height: 52px; padding: 0 40px; border: 0; border-radius: 999px;
  background: #ffc600; color: #023e60; font-size: 16px; font-weight: 700;
  box-shadow: 0 6px 16px rgba(2, 40, 66, .18); cursor: pointer;
}
.rl-req .form input[type="submit"]:hover, .rl-req .form input[type="submit"]:focus { background: #ffd23f; color: #023e60; }

@media (min-width: 768px) {
  .rl-pg-hero-tall { padding: 26px 0 34px; }
  .rl-pg-hero-tall .rl-pg-hero-in { flex-direction: column; align-items: stretch; gap: 14px; }
  .rl-pg-hero-row { flex-direction: row; align-items: flex-end; justify-content: space-between; gap: 32px; }
  .rl-pg-hero-tall .search { flex: 0 0 360px; }
  .rl-pg-narrow .rl-pg-hero-tall .search { flex-basis: 340px; }
  .rl-pg .rl-pg-title { font-size: 30px; }
  .rl-pg-wrap { padding: 32px 24px 64px; }
  .rl-cat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
  .rl-req-main { padding: 26px 28px 8px; }
}
@media (min-width: 1024px) {
  .rl-cat-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .rl-req-grid { grid-template-columns: minmax(0, 1fr) 340px; gap: 32px; }
  .rl-req-before { grid-column: 2; grid-row: 1; position: sticky; top: 16px; }
  .rl-req-main { grid-column: 1; grid-row: 1; }
}
