/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
/* HTML5 display-role reset for older browsers */
@font-face {
  font-family: 'icomoon';
  src: url("../fonts/icomoon.eot?2q1e3m");
  src: url("../fonts/icomoon.eot?2q1e3m#iefix") format("embedded-opentype"), url("../fonts/icomoon.ttf?2q1e3m") format("truetype"), url("../fonts/icomoon.woff?2q1e3m") format("woff"), url("../fonts/icomoon.svg?2q1e3m#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block; }

@font-face {
  font-family: 'arrow';
  src: url("../fonts/arrow.eot?2q1e3m");
  src: url("../fonts/arrow.eot?2q1e3m#iefix") format("embedded-opentype"), url("../fonts/arrow.ttf?2q1e3m") format("truetype"), url("../fonts/arrow.woff?2q1e3m") format("woff"), url("../fonts/arrow.svg?2q1e3m#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block; }

/* End of Utility Class */
/* End of Section heading */
/* End of Callout */
/* Mobile menu */
/* End of Navbar */
/* End of Main Menu */
/* Animation */
@-webkit-keyframes fadeUp {
  from {
    top: 200px;
    opacity: 0; }
  to {
    top: 0;
    opacity: 1; } }
@keyframes fadeUp {
  from {
    top: 200px;
    opacity: 0; }
  to {
    top: 0;
    opacity: 1; } }

html {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
  letter-spacing: 1px; }

body {
  font-family: 'Noto Sans JP', sans-serif;
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  letter-spacing: 1px;
  font-size: 14px;
  color: #404040;
  line-height: 1; }

div {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

span {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

applet {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

object {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

iframe {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

h1 {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

h2 {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

h3 {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

h4 {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

h5 {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

h6 {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

p {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

blockquote {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px;
  quotes: none; }
  blockquote:before {
    content: '';
    content: none; }
  blockquote:after {
    content: '';
    content: none; }

pre {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

a {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px;
  text-decoration: none; }

abbr {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

acronym {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

address {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

big {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

cite {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

code {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

del {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

dfn {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

em {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

img {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

ins {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

kbd {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

q {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px;
  quotes: none; }
  q:before {
    content: '';
    content: none; }
  q:after {
    content: '';
    content: none; }

s {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

samp {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

small {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

strike {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

strong {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

sub {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

sup {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

tt {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

var {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

b {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

u {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

i {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

center {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

dl {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

dt {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

dd {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

ol {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px;
  list-style: none; }

ul {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px;
  list-style: none; }

li {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

fieldset {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

form {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

label {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

legend {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

table {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px;
  border-collapse: collapse;
  border-spacing: 0; }

caption {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

tbody {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

tfoot {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

thead {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

tr {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

th {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

td {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

article {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px;
  display: block; }

aside {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px;
  display: block; }

canvas {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

details {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px;
  display: block; }

embed {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

figure {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px;
  display: block; }

figcaption {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px;
  display: block; }

footer {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px;
  display: block; }

header {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px;
  display: block; }

hgroup {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px;
  display: block; }

menu {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px;
  display: block; }

nav {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px;
  display: block; }

output {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

ruby {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

section {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px;
  display: block;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  outline: none; }

summary {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

time {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

mark {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

audio {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  letter-spacing: 1px; }

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-prodor:before {
  content: "\e90d"; }

.icon-staff3:before {
  content: "\e90c"; }

.icon-staff2:before {
  content: "\e90b"; }

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

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

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

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

.icon-mail:before {
  content: "\e90a"; }

.icon-micro:before {
  content: "\e904"; }

.icon-openqoute:before {
  content: "\e905"; }

.icon-profile:before {
  content: "\e906"; }

.icon-sheet:before {
  content: "\e907"; }

.icon-staff:before {
  content: "\e908"; }

.icon-user:before {
  content: "\e909"; }

.icon-arrow,
.icon-yes,
.icon-tick {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'arrow' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

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

.icon-yes:before {
  content: "\e901";
  color: #0d88a4; }

.icon-tick:before {
  content: "\e902";
  color: #0d88a4; }

.d__flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.d__flex__center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.img__fluid {
  display: block;
  max-width: 100%; }

.text-yellow {
  color: #AD8F2B; }

.text-underline {
  border-bottom: 1px solid;
  padding-bottom: 2px;
  text-decoration: none; }

.line__dash {
  height: 1px;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, transparent), color-stop(50%, #D2D2D2));
  background-image: linear-gradient(to right, transparent 50%, #D2D2D2 50%);
  background-size: 6px 100%; }

.mrt-80 {
  margin-top: 80px !important; }

.btn {
  background-color: #282828;
  color: white;
  height: 80px;
  line-height: 80px;
  letter-spacing: 1px;
  font-size: 18px;
  -webkit-transition: 0.4s background-color;
  transition: 0.4s background-color;
  padding-left: 26px;
  padding-right: 50px;
  -webkit-box-shadow: 0px 15px 15px 14px rgba(0, 0, 0, 0.05);
  box-shadow: 0px 15px 15px 14px rgba(0, 0, 0, 0.05);
  display: inline-block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left; }
  .btn [class^="icon-"] {
    padding-right: 22px;
    margin-right: 30px;
    border-right: 1px solid;
    display: inline-block;
    line-height: 26px; }
  .btn:hover {
    color: #404040;
    background-color: white; }
    .btn:hover [class^="icon-"]:before {
      color: #404040; }
  .btn.btn--medium {
    height: 70px;
    line-height: 70px;
    padding: 0 30px; }
    .btn.btn--medium [class^="icon-"] {
      border: none;
      padding-right: 0;
      margin-right: 15px; }
  .btn.btn--reverse {
    color: #282828;
    background-color: #fff; }
    .btn.btn--reverse:hover {
      color: #fff;
      background-color: #282828; }
      .btn.btn--reverse:hover [class^="icon-"]:before {
        color: #fff; }

.btn.btn--white {
  color: white;
  border: 1px solid white;
  background-color: transparent; }
  .btn.btn--white:hover {
    color: #404040;
    background-color: white; }
    .btn.btn--white:hover [class^="icon-"] {
      border-right-color: rgba(64, 64, 64, 0.3); }
  .btn.btn--white [class^="icon-"] {
    border-right-color: rgba(255, 255, 255, 0.3); }

.text-blue {
  color: #0D88A4; }

.text-center {
  text-align: center !important; }

.spVisible {
  display: none; }

.pcVisible {
  display: block; }

.section__heading {
  position: relative; }
  .section__heading::before {
    content: '';
    display: block;
    height: 1px;
    border-bottom: 1px solid;
    width: 77px;
    position: absolute;
    left: -101px;
    top: 13px; }
  .section__heading h2 {
    font-family: 'Cardo', serif;
    font-size: 32px;
    margin-bottom: 15px; }
  .section__heading h4 {
    font-size: 18px; }

.img__logo {
  font-weight: 900;
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 0 !important; }
  .img__logo .text__name {
    font-size: 26px !important;
    padding-left: 0 !important;
    padding-right: 0 !important; }
    .img__logo .text__name .icon-prodor {
      color: #404040;
      font-size: 26px; }
  .img__logo .text__by {
    font-weight: 500;
    font-size: 16px;
    color: #7A7A7A;
    padding-left: 18px !important;
    padding-right: 18px !important; }
  .img__logo img {
    height: 20px; }

#tbgcHeaderLogo .img__logo img {
  height: 36px; }

.callout {
  position: relative;
  top: 0;
  left: 0;
  display: inline-block; }
  .callout::before {
    position: absolute;
    top: calc(50% - 5px);
    left: -12px;
    width: 0;
    height: 0;
    margin-top: -10px;
    border-top: 15px solid transparent;
    border-bottom: 11px solid transparent;
    border-left: 13px solid #8D8D8D;
    content: '';
    -webkit-transform: rotate(310deg);
            transform: rotate(310deg);
    z-index: 0; }
  .callout::after {
    position: absolute;
    top: calc(50% - 5px);
    left: -9px;
    width: 0;
    height: 0;
    margin-top: -9px;
    border-top: 15px solid transparent;
    border-bottom: 11px solid transparent;
    border-left: 13px solid #fff;
    content: '';
    -webkit-transform: rotate(310deg);
            transform: rotate(310deg);
    z-index: 0; }
  .callout .callout__corner {
    position: absolute;
    display: block;
    width: 33px;
    height: 33px;
    background-color: transparent; }
    .callout .callout__corner [class^="icon-"] {
      font-size: 23px;
      display: block;
      color: #AD8F2B; }
  .callout .callout__corner.corner--topleft {
    top: 0;
    left: 0;
    border-top: 1px solid white;
    border-left: 1px solid white;
    border-radius: 4px 0 0 0; }
    .callout .callout__corner.corner--topleft .icon-openqoute {
      margin-left: -12px;
      margin-top: -11px; }
  .callout .callout__corner.corner--bottomright {
    bottom: 0;
    right: 0;
    border-bottom: 1px solid white;
    border-right: 1px solid white;
    border-radius: 0 0 4px 0; }
    .callout .callout__corner.corner--bottomright .icon-closeqoute {
      margin-top: 17px;
      margin-left: 15px; }

.callout.callout--blue .callout__corner [class^="icon-"] {
  color: #0D88A4; }

.callout__inner {
  width: 300px;
  overflow: hidden;
  border-radius: 4px;
  border: 1px solid #8D8D8D;
  background-color: white; }

.callout__content {
  padding: 20px;
  margin: 0;
  border-radius: 4px;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding-box;
  background-clip: padding-box;
  font-size: 14px;
  line-height: 28px; }

.section {
  margin: 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  outline: none; }

.container {
  margin: 0 auto;
  padding-left: 20px;
  padding-right: 20px; }
  .container .row {
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -20px;
    margin-right: -20px; }
    .container .row .col {
      -ms-flex-preferred-size: 0;
      flex-basis: 0;
      -webkit-box-flex: 1;
      -ms-flex-positive: 1;
      flex-grow: 1;
      max-width: 100%;
      padding-left: 20px;
      padding-right: 20px; }

.menu__main {
  position: absolute;
  right: 0;
  top: 30px;
  z-index: 1; }
  .menu__main ul {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 0; }
    .menu__main ul > li {
      display: inline-block;
      -webkit-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
      transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1); }
      .menu__main ul > li:not(.has-border):hover {
        opacity: 0.7; }
      .menu__main ul > li + li {
        border-left: 1px solid rgba(255, 255, 255, 0.2); }
      .menu__main ul > li > a {
        color: #fff;
        font-size: 14px;
        line-height: 25px;
        padding-left: 20px;
        padding-right: 20px;
        text-decoration: none; }
      .menu__main ul > li:first-child > a {
        padding-left: 0; }
    .menu__main ul .has-border {
      border: 1px solid #fff;
      -webkit-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
      transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1); }
      .menu__main ul .has-border:hover {
        background-color: #fff;
        cursor: pointer; }
        .menu__main ul .has-border:hover > a {
          color: #404040; }
      .menu__main ul .has-border > a {
        line-height: 34px;
        padding-left: 15px;
        padding-right: 15px;
        -webkit-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
        transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1); }
      .menu__main ul .has-border + .has-border {
        margin-left: 10px; }

#btn__close {
  position: absolute;
  right: 25px;
  width: 25px;
  height: 25px;
  color: white;
  background-color: transparent;
  border: none;
  text-indent: -999px;
  overflow: hidden;
  top: 30px;
  padding: 0;
  display: block; }
  #btn__close::after {
    content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 1px;
    top: 1px;
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
    background-color: white;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    left: 7px; }
  #btn__close::before {
    content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 1px;
    top: 1px;
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
    background-color: white;
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
    left: 25px; }

.navbar {
  color: white;
  background-color: rgba(0, 0, 0, 0.9);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: fixed;
  top: -48px;
  left: 0;
  right: 0;
  z-index: 10;
  -webkit-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
  opacity: 0; }
  .navbar .container {
    padding-left: 0;
    padding-right: 0; }
    .navbar .container::after {
      content: '';
      display: block;
      clear: both; }
  .navbar nav {
    float: right;
    padding: 9px 65px 0 0; }
    .navbar nav .has-border {
      border: 1px solid #fff; }
      .navbar nav .has-border > a {
        line-height: 33px;
        padding-left: 15px;
        padding-right: 15px; }
        .navbar nav .has-border > a > span {
          line-height: 33px; }
      .navbar nav .has-border + .has-border {
        margin-left: 10px; }
  .navbar ul {
    margin: 0;
    padding: 0;
    list-style: none; }
    .navbar ul > li {
      display: inline-block;
      -webkit-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
      transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1); }
      .navbar ul > li:not(.has-border):hover {
        opacity: 0.7; }
      .navbar ul > li > a {
        color: white;
        font-size: 9px;
        padding-left: 10px;
        padding-right: 10px; }
    .navbar ul > li.line {
      border-left: 1px solid rgba(255, 255, 255, 0.2); }
  .navbar h1 {
    font-weight: 900;
    font-size: 21px;
    line-height: 48px;
    float: left; }
    .navbar h1 i {
      color: #ffffff;
      margin-bottom: -2px;
      font-size: 16px; }
  .navbar .btn__contact {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    text-align: center;
    -webkit-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1); }
    .navbar .btn__contact .icon-mail {
      font-size: 11px;
      margin-bottom: 5px; }
    .navbar .btn__contact:hover {
      background-color: #fff;
      color: #404040; }

.navbar__show .navbar {
  top: 0;
  opacity: 1; }

.hamburger {
  width: 65px;
  height: 48px;
  text-align: center;
  background-color: black;
  border: none;
  outline: none;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 9; }
  .hamburger span {
    height: 1px;
    width: 25px;
    background-color: white;
    display: block;
    margin: 0 auto; }
    .hamburger span + span {
      margin-top: 6px; }

.nav-cover {
  background: #000;
  left: 0;
  top: 0;
  padding: 50px;
  color: white;
  position: fixed;
  z-index: -1;
  opacity: 0;
  -webkit-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
  width: 100%; }
  .nav-cover ul > li {
    display: block;
    -webkit-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1); }
    .nav-cover ul > li:hover {
      opacity: 0.7; }
    .nav-cover ul > li > a {
      padding: 17px 0;
      display: block;
      font-size: 16px;
      color: white; }
    .nav-cover ul > li:first-child > a {
      padding: 17px 0; }
    .nav-cover ul > li:last-child > a {
      padding: 17px 0; }
    .nav-cover ul > li + li {
      border-left: none;
      border-top: 1px solid rgba(255, 255, 255, 0.2); }
  .nav-cover .nav__buttons {
    margin-top: 40px; }
    .nav-cover .nav__buttons .btn {
      width: 100%; }
      .nav-cover .nav__buttons .btn + .btn {
        margin-top: 20px; }

.menu__open .nav-cover {
  z-index: 9999;
  opacity: 1; }

@media all and (max-width: 768px) {
  #tbgcHeaderLogo .img__logo {
    padding-left: 20px !important;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
    #tbgcHeaderLogo .img__logo img {
      height: 20px; }
  .section__logo .img__logo img {
    height: 17px; }
  .spVisible {
    display: block; }
  .pcVisible {
    display: none; }
  .mrt-80 {
    margin-top: 40px !important; }
  .btn {
    line-height: 58px !important;
    height: 58px !important;
    font-size: 15px;
    padding-left: 20px;
    padding-right: 20px;
    -webkit-transition: none !important;
    transition: none !important; }
    .btn:hover, .btn:focus, .btn:active {
      background-color: #282828;
      color: white; }
      .btn:hover [class^="icon"]:before, .btn:focus [class^="icon"]:before, .btn:active [class^="icon"]:before {
        color: white; }
  .section__contact .block__contact .block__contact__item .btn,
  .btn.btn--white {
    -webkit-transition: none !important;
    transition: none !important; }
    .section__contact .block__contact .block__contact__item .btn:hover, .section__contact .block__contact .block__contact__item .btn:focus, .section__contact .block__contact .block__contact__item .btn:active,
    .btn.btn--white:hover,
    .btn.btn--white:focus,
    .btn.btn--white:active {
      background-color: transparent !important;
      color: white; }
      .section__contact .block__contact .block__contact__item .btn:hover [class^="icon"], .section__contact .block__contact .block__contact__item .btn:focus [class^="icon"], .section__contact .block__contact .block__contact__item .btn:active [class^="icon"],
      .btn.btn--white:hover [class^="icon"],
      .btn.btn--white:focus [class^="icon"],
      .btn.btn--white:active [class^="icon"] {
        border-right-color: rgba(255, 255, 255, 0.3); }
        .section__contact .block__contact .block__contact__item .btn:hover [class^="icon"]:before, .section__contact .block__contact .block__contact__item .btn:focus [class^="icon"]:before, .section__contact .block__contact .block__contact__item .btn:active [class^="icon"]:before,
        .btn.btn--white:hover [class^="icon"]:before,
        .btn.btn--white:focus [class^="icon"]:before,
        .btn.btn--white:active [class^="icon"]:before {
          color: white; }
  .img__logo .text__name {
    font-size: 24px !important;
    padding-left: 0 !important; }
    .img__logo .text__name .icon-prodor {
      font-size: 18px; }
  .img__logo .text__by {
    font-size: 13px;
    padding-left: 10px !important;
    padding-right: 10px !important; }
  .img__logo img {
    height: 20px; }
  .callout::after {
    top: 25px; }
  .callout::before {
    top: 25px; }
  .callout .callout__corner {
    width: 16px;
    height: 16px; }
    .callout .callout__corner [class^="icon-"] {
      font-size: 12px; }
  .callout .callout__corner.corner--topleft .icon-openqoute {
    margin-left: -6px;
    margin-top: -6px; }
  .callout .callout__corner.corner--bottomright .icon-closeqoute {
    margin-top: 8px;
    margin-left: 8px; }
  .callout__content {
    line-height: 23px;
    padding: 15px; }
  .callout__inner {
    width: auto; }
  .section__heading {
    padding-left: 12px; }
    .section__heading::before {
      width: 22px;
      left: -20px;
      top: 10px; }
    .section__heading h2 {
      font-size: 23px; }
  .navbar {
    padding-left: 20px; }
    .navbar nav .has-border {
      border: none; }
      .navbar nav .has-border .icon-mail {
        line-height: 1; }
      .navbar nav .has-border a {
        padding-left: 5px;
        padding-right: 5px;
        line-height: 15px;
        -webkit-transition: none !important;
        transition: none !important; }
        .navbar nav .has-border a span {
          line-height: 15px; }
        .navbar nav .has-border a:hover {
          background-color: transparent !important;
          color: #fff !important; }
      .navbar nav .has-border + .has-border {
        margin-left: 0;
        border-left: 1px solid rgba(255, 255, 255, 0.2); }
        .navbar nav .has-border + .has-border a {
          padding-left: 10px;
          padding-right: 10px; } }

@media all and (max-width: 320px) {
  .img__logo .text__name svg {
    height: 16px; }
  .img__logo img {
    height: 16px; } }

@media all and (min-width: 769px) {
  .container {
    max-width: 1080px;
    min-width: 750px;
    padding: 0; }
  .navbar {
    min-width: 1160px; }
    .navbar h1 {
      font-size: 28px;
      line-height: 65px; }
      .navbar h1 i {
        font-size: 22px; }
    .navbar nav {
      padding: 15px 0 0; }
    .navbar ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
      .navbar ul > li > a {
        font-size: 14px;
        line-height: 25px;
        padding-left: 20px;
        padding-right: 20px; }
    .navbar .btn__contact {
      font-size: 12px; }
      .navbar .btn__contact > span {
        line-height: 1; }
      .navbar .btn__contact .icon-mail {
        font-size: 14px; } }

@media all and (min-width: 769px) and (max-width: 1160px) {
  body.rwd {
    min-width: 1160px; }
  .container {
    padding: 0 20px; } }
