html {
  box-sizing: border-box;
}

*, *:before, *:after {
  box-sizing: inherit;
}

.me-toggle {
  position: fixed;
  z-index: 9999;
  top: 8px;
  left: 8px;
  display: none;
  width: 48px;
  height: 48px;
  cursor: pointer;
  outline: none;
  border: none;
  background: transparent;
  padding: 0;
  margin: 0;
  overflow: visible;
}
@media only screen and (max-width: 800px) {
  .me-toggle {
    display: none;
  }
}

.me-toggle__info {
  position: absolute;
  z-index: 2;
  top: 30px;
  left: 30px;
  margin: 0;
  color: white;
  text-transform: uppercase;
  font-size: 10px;
  opacity: 0;
  letter-spacing: 1px;
  font-weight: 300;
}

.me-logo__device--small {
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 1;
  width: 48px;
  height: 48px;
}

.me-close {
  visibility: hidden;
  opacity: 0;
}

.me-toggle__base {
  width: 100%;
  height: 48px;
  background: black;
  background-image: linear-gradient(205deg, #313346 0%, #15161D 76%);
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2);
  border-radius: 2px;
}

.me-panel {
  position: absolute;
  z-index: 9998;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  width: 50%;
  height: 100%;
  transform: translateX(-101%);
  color: white;
  margin: auto;
  background-image: linear-gradient(205deg, #313346 0%, #15161D 76%);
  box-shadow: 0 2px 48px 0 rgba(0, 0, 0, 0.3);
  font-family: noto-sans-condensed, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  line-height: 1.357;
  text-align: center;
  -webkit-font-kerning: normal;
          font-kerning: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-y: scroll;
  overflow: -moz-scrollbars-none;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.me-panel::-webkit-scrollbar {
  display: none;
}
@media only screen and (max-width: 800px) {
  .me-panel {
    display: none;
  }
}

.me-panel__content {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  width: 90%;
  max-width: 376px;
  height: 100%;
  min-height: 630px;
  visibility: hidden;
  opacity: 0;
}

.me-panel__content-top {
  flex-basis: 60%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
}

.me-panel__content-btm {
  flex-basis: 40%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
}

.me-logo {
  width: 76px;
  height: 66px;
}

.me-logo__device {
  opacity: 0;
}

.me-title {
  position: relative;
  top: auto;
  left: auto;
  margin: 26px 0 35px;
  font-family: noto-sans-extracondensed, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 5px;
}
.me-title span {
  display: block;
  margin-top: 5px;
  opacity: 0.5;
  font-family: noto-sans-condensed, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
}

.me-thanks {
  margin-bottom: 16px;
  overflow: hidden;
}

.me-thanks__title {
  margin: 0 0 2px;
  font-family: noto-sans-extracondensed, sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 104px;
  text-transform: uppercase;
  letter-spacing: 5px;
  line-height: 1;
}

.me-line {
  width: 100%;
  height: 1px;
  background: white;
  opacity: 0.16;
}

.me-intro {
  margin: 0;
  opacity: 0.5;
}

.me-profile {
  position: relative;
  display: flex;
  justify-content: center;
  width: 100%;
  height: 100%;
  margin-top: 18px;
  min-height: 20vh;
}

.me-profile__link {
  position: absolute;
  top: calc(50% - 54px);
  left: calc(50% - 132px);
  width: 262px;
  height: 108px;
  border-radius: 50%;
}
.me-profile__link.me-profile__link-disabled {
  pointer-events: none;
  cursor: default;
}

.me-line-vert {
  width: 1px;
  height: 100%;
  min-height: 20vh;
  background: white;
  opacity: 0.16;
}

.me-links {
  width: 100%;
}

.me-links__list {
  display: flex;
  justify-content: space-between;
  margin: 0;
  padding: 0;
  height: 92px;
  overflow: hidden;
}

.me-links__item {
  list-style-type: none;
}

.me-links__link {
  position: relative;
  display: flex;
  align-items: center;
  height: 100%;
  color: white;
  opacity: 0.5;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 2px;
  transition: scale 0.2s linear, color 0.2s linear;
}
.me-links__link:hover {
  color: #4A90E2;
  opacity: 1;
}
.me-links__link:hover .me-links__item-marker {
  transform: scale(1);
}

.me-links__item-marker {
  position: absolute;
  left: 50%;
  bottom: 0;
  z-index: 1;
  width: 1px;
  height: 30px;
  background-color: #4A90E2;
  transform: scale(0);
  transition: transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
  transform-origin: center bottom;
}

/*  ==========================================================================
 *     Variables etc
 *        ========================================================================== */
.results__dial-percent-text text, body {
  font-family: "proxima-nova", sans-serif;
  font-style: normal;
  font-weight: 400;
}

.results__dial-saving, .results__dial-perc, .results__dial-perc-text,
.results__dial-results {
  font-family: "proxima-nova", sans-serif;
  font-style: normal;
  font-weight: 700;
}

/*  ==========================================================================
 *      General
 *          ========================================================================== */
body {
/*  background-image: linear-gradient(340deg, #008996 0%, #092a30 100%);*/
  font-feature-settings: "kern" 1, "liga" 1, "lnum" 1;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  background-color: #064750;
}

body,
html {
  height: 100%;
  width: 100%;
  margin: 0;
  padding: 0;
}

.contents_box {
  position: relative;
  margin: auto;
  max-width: 520px;
}

.contents_box p>a{
  border-bottom: 3px solid #ff8cbc;
  font-size: 1em;
  font-weight: bold;
  color: #ffffff;
  transition: all 0.25s linear;
  position: relative;
  text-decoration :none;
}
.contents_box p>a:before{
  content: "";
  display: block;
  width: 100%;
  height: 3px;
  background-color: #61a3ff;
  position: absolute;
  left: 0;
  bottom: -3px; /* this is to match where the border is */
  transform-origin: left;
  transform: scale(0);
  transition: 0.25s linear;
}
.contents_box p>a:hover {
  text-decoration:none;
}
.contents_box p>a:hover:before {
  transform: scale(1);
}

.container {
  position: relative;
  margin: auto;
  max-width: 520px;
  height: 520px;
}

/*  ==========================================================================
 *      Dial
 *          ========================================================================== */
.results__dial {
  visibility: hidden;
}
.results__dial text,
.results__dial tspan {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

/*  Percentage Markers
 *      ========================================================================== */
.results__dial-percent-text text {
  -webkit-font-smoothing: subpixel-antialiased;
}

/*  Text
 *      ========================================================================== */
.results__dial-perc-text,
.results__dial-results {
  font-feature-settings: "tnum" 1;
  text-anchor: middle;
}

.results__dial-perc-text,
.results__dial-results {
  font-size: 24px;
}

.results__dial-perc {
  text-anchor: middle;
  font-size: 48px;
  -webkit-font-smoothing: subpixel-antialiased;
}

.results__dial-saving {
  font-size: 48px;
  -webkit-font-smoothing: subpixel-antialiased;
}

/*  Dragger
 *      ========================================================================== */
.results__dial-drag-arrows,
.results__dial-drag-pad {
  pointer-events: none;
}

.results__dial-drag-hit {
  cursor: pointer;
}


.menu{

    margin: 0;
    display: flex;
    /* Works well with 100% width  */
    width: 32.05em;
    font-size: 1.5em;
    padding: 0 2.85em;
    position: relative;
    align-items: center;
    justify-content: center;
    background-color: var(--bgColorMenu);
    
}

.menu__item{
    
    all: unset;
    flex-grow: 1;
    z-index: 100;
    display: flex;
    cursor: pointer;
    position: relative;
    border-radius: 50%;
    align-items: center;
    will-change: transform;
    justify-content: center;
    padding: 0.55em 0 0.85em;
    transition: transform var(--timeOut , var(--duration));
    
}

.menu__item::before{
    
    content: "";
    z-index: -1;
    width: 4.2em;
    height: 4.2em;
    border-radius: 50%;
    position: absolute;
    transform: scale(0);
    transition: background-color var(--duration), transform var(--duration);
    
}


.menu__item.active {

    transform: translate3d(0, -.8em , 0);

}

.menu__item.active::before{
    
    transform: scale(1);
    background-color: var(--bgColorItem);

}

.icon{
    
    width: 2.6em;
    height: 2.6em;
    stroke: white;
    fill: transparent;
    stroke-width: 1pt;
    stroke-miterlimit: 10;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-dasharray: 400;
    
}

.menu__item.active .icon {

    animation: strok 1.5s reverse;
    
}

@keyframes strok {

    100% {

        stroke-dashoffset: 400;

    }

}

.menu__border{

    left: 0;
    bottom: 99%;
    width: 10.9em;
    height: 2.4em;
    position: absolute;
    clip-path: url(#menu);
    will-change: transform;
    background-color: var(--bgColorMenu);
    transition: transform var(--timeOut , var(--duration));
    
}

.svg-container {

    width: 0;
    height: 0;
}


@media screen and (max-width: 50em) {
    .menu{
        font-size: .8em;
    }
}
nav {
	margin: 27px auto 0;
	position: relative;
	max-width: 600px;
	background-color: #055862;
	border-radius: 8px;
	font-size: 0;
}
nav a {
	line-height: 50px;
	height: 100%;
	font-size: 15px;
	display: inline-block;
	position: relative;
	z-index: 1;
	text-decoration: none;
	text-transform: uppercase;
	text-align: center;
	color: white;
	cursor: pointer;
}
nav .animation {
	position: absolute;
	height: 100%;
	top: 0;
	z-index: 0;
	transition: all .5s ease 0s;
	border-radius: 8px;
}
a:nth-child(1) {
	width: 100px;
}
a:nth-child(2) {
	width: 100px;
}
a:nth-child(3) {
	width: 100px;
}
a:nth-child(4) {
	width: 100px;
}
a:nth-child(5) {
	width: 100px;
}
a:nth-child(6) {
	width: 100px;
}
nav .menu-1, a:nth-child(1):hover~.animation {
	width: 100px;
	left: 0;
	background-color: #1abc9c;
}
nav .menu-2, a:nth-child(2):hover~.animation {
	width: 100px;
	left: 100px;
	background-color: #e74c3c;
}
nav .menu-3, a:nth-child(3):hover~.animation {
	width: 100px;
	left: 200px;
	background-color: #3498db;
}
nav .menu-4, a:nth-child(4):hover~.animation {
	width: 100px;
	left: 300px;
	background-color: #9b59b6;
}
nav .menu-5, a:nth-child(5):hover~.animation {
	width: 100px;
	left: 400px;
	background-color: #e67e22;
}
nav .menu-6, a:nth-child(6):hover~.animation {
	width: 100px;
	left: 500px;
	background-color: #8c180f;
}

h1 {
	text-align: center;
	margin: 40px 0 40px;
	text-align: center;
	font-size: 30px;
	color: #ecf0f1;
	font-family: 'Noto Sans KR';
}

h2 {
        text-align: center;
        margin: 20px 0 20px;
        text-align: center;
        font-size: 20px;
        color: #ecf0f1;
        font-family: 'Noto Sans KR';
}

p {
    bottom: 20px;
    width: 100%;
    text-align: center;
    color: #ecf0f1;
    font-family: 'Noto Sans KR';
    font-size: 16px;
}

span {
    color: #2BD6B4;
}

.button {
  margin: .4em;
  padding: 1em;
  cursor: pointer;
  background: #017b87;
  text-decoration: none;
  color: #FFFFFF;
}

.outline-outward {
  display: inline-block;
  position: relative;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.outline-outward:before {
  content: "";
  position: absolute;
  border: #64d3de solid 4px;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  transition-duration: 0.3s;
  transition-property: top right bottom left;
}
.outline-outward:hover:before {
  top: -8px;
  right: -8px;
  bottom: -8px;
  left: -8px;
}
.bokji_list {
  padding-bottom: 50px;
}
.bokji_list a {
  width: auto;
}
.footer {
  position: fixed;
  color: #ffffff;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 0.5rem;
  background-color: #055862;
  text-align: center;
}
.footer a{
  border-bottom: 3px solid #ff8cbc;
  font-size: 1em;
  font-weight: bold;
  color: #ffffff;
  transition: all 0.25s linear;
  position: relative;
  text-decoration :none;
}
.footer a:before{
  content: "";
  display: block;
  width: 100%;
  height: 3px;
  background-color: #61a3ff;
  position: absolute;
  left: 0;
  bottom: -3px; /* this is to match where the border is */
  transform-origin: left;
  transform: scale(0);
  transition: 0.25s linear;
}
.footer a:hover {
  text-decoration:none;
}
.footer a:hover:before {
  transform: scale(1);
}
