/* General appearance */

* {
    font-family: 'San Francisco', 'Helvetica Neue', 'Lucida Grande',
        'Roboto', 'Droid Sans',
        Verdana, Helvetica, sans-serif;
    margin: 0;
    padding: 0;
    border: 0;
}

p, em, li, ul, blockquote {
    font-size: 14px;
    line-height: 22px;
}

footer {
    color: #6d6d6d;
    font-size: 14px;
    text-align: center;
    margin-top: -6px;
    padding-bottom: 20px;
    padding-left: 36px;
    padding-right: 36px;
}

ul.bullet-list {
    padding-bottom: 20px;
    font-size: 14px;
    display: block;
}

ul.bullet-list li {
    padding-bottom: 5px;
    margin-left: 17px;
}

h1, h2, h3, h4, h5, h6 {
    padding-bottom: 25px;
    margin-bottom: 0px;
    font-weight: normal;
}

h5 {
    font-weight: bold;
    padding-bottom: 12px;
}

a {
    text-decoration: none;
}
/*
html {
    background: #2c323d;
}*/

body {
    background: #2c323d;
    /*overscroll-behavior: contain;*/
}

a:hover {
    text-decoration: underline;
}

a.referenced {
    color: #000000;
    padding-top: 2px;
}

a.referenced:hover {
    text-decoration: none;
    color: #000000;
}

/* Common */

#main-container {
    margin: auto;
    max-width: 840px;
}

#site-wrapper {
    display: block;
    padding-left: 0px;
    padding-right: 0px;
    /*min-width: 688px;*/
    border-radius: 13px;

    margin: 25px 4px;

    background: #fbfbfb;
}

#logo-image {
    margin-top: 32px;
    margin-right: 15px;
    float: left;
}

#logo-text {
    margin-top: 44px;
    float: left;
}

.pure-g {
    padding-left: 18px;
    padding-right: 18px;
}

.pure-menu {
    margin-top: 48px;
}

.pure-menu-link,
.pure-menu-link:visited {
    font-size: 14px;
    padding: .75em .5em;
    color: #6d6d6d;
}

.pure-menu-selected .pure-menu-link,
.pure-menu-selected .pure-menu-link:visited {
    color: #6d6d6d;
}

.pure-menu-list {
    float: right;
}

.pure-menu-children {
    border: 1px solid #ece6e8;
}

.pure-menu-children .pure-menu-link {
    padding: .75em 1em;
}

.padded {
    padding-bottom: 25px;
}

li p.padded {
    padding-bottom: 0px;
}

.padded-sides {
    padding-left: 18px;
    padding-right: 18px;
    box-sizing: border-box;
}

.separator {
    border-top: 1px solid #e6e6e6;

    margin: 0 36px 25px 36px;
    display: block;
    clear: both;
}

.separator-noborder {
    border-top: 1px solid #e6e6e6;

    margin: 0 0 25px 0;
    display: block;
    clear: both;
}

.mobile-only {
    display: none;
}

/* Index page */

#index-logo-text {
    color: #6d6d6d;
    padding-top: 44px;
    padding-bottom: 33px;
    text-align: center;
}

a.index-more {
    background-image: url(/img/more.svg);
    background-size: 5px 9px;
    background-repeat: no-repeat;
    background-position: 100% 69%;
    padding-right: 10px;
    font-size: 15px;
    color: #0088CC;
}

img.index-icon {
    margin-right: 20px;
    float: left;
  }

.index-screenshot {
    background-color: #bbbbbb;
    margin-left:18px;
    margin-right:18px;
    margin-top: 8px;
    margin-bottom: 33px;
    border-radius: 13px;
    border: 1px solid #EEE;
}

.index-second-align {
    text-align: right;
}

/* App page */

.swiper {
    margin-bottom: 30px;
    margin-top: 5px;
    margin-left:18px;
    margin-right:18px;
    float: right;
    width: 320px;
    height: 320px;
    border-radius: 13px;
    border: 1px solid #EEE;
}

.swiper-slide {
    border-radius: 13px;
}

.slider-caption {
    position: absolute;
    bottom: 0;
    left:0;
    width: 300px;
    background:rgba(0,0,0,0.7);
    padding: 5px 10px 7px 10px;
    opacity: 1;
    border-bottom-left-radius: 13px;
    border-bottom-right-radius: 13px;
    text-align: center;
    color: #fff;
    font-size: 14px;
}

.app-video {
    display: block;
    text-align: center;
    margin-top: 30px;
    margin-bottom: 27px;
    clear: both;
}

.app-youtube {
    width: 570px;
    height: 320px;
  }

.app-media-container {
    margin-bottom: 18px;
    margin-top: 8px;
}

.app-appstore-link {
    text-align: center;
}

.app-appstore-link > a {
    font-size: 12px;
    color: #0088CC;
}

.app-appstore-table {
    display: inline;
    border-spacing: 2px;
    border-collapse: separate;
}

/* Help page */

img.help-image {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.fixed-size-image {
    width: 28px;
    height: 28px;
    overflow: hidden;
    margin-right: 15px;
    float: left;
}

.help-index {
    font-size: 19px;
    font-weight: normal;
    padding-top: 2px;
    padding-bottom: 25px;
    display: block;
}

/************************/


@media only screen and (max-width: 767px) {
    #main-container {
        max-width: 560px;
    }

    #site-wrapper {
        margin: 10px 4px;
        /*min-width: 320px;*/
        /*border: 0 solid;*/
    }

    #logo-text {
        width: 180px;
        margin-top: 25px;
        padding-bottom: 6px;
    }

    #index-logo-text {
        padding-top: 25px;
        margin-left: 20px;
        margin-right: 20px;
    }

    .separator {
        margin-left: 20px;
        margin-right: 20px;
    }

    .pure-g {
        padding-left: 10px;
        padding-right: 10px;
    }

    .padded-sides {
        padding-left: 10px;
        padding-right: 10px;
    }

    .index-second-align {
        text-align: center;
    }

    .index-screenshot {
        margin-left: auto;
        margin-right: auto;
        margin-left:0px;
        margin-right:0px;
    }

    .pure-menu {
        margin-top: 0px;
    }

    .pure-menu-list {
        float: left;
    }

    .pc-only {
        display: none;
    }

    .mobile-only {
        display: inline;
    }

    .swiper {
        float: none;
        display: block;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 28px;
    }

    .app-youtube {
        width: 320px;
        height: 240px;
    }

    .app-video {
        margin-left: 0;
    }
}


@media only screen and (max-width: 370px) {
    #main-container {
        min-width: 320px;
    }

    #site-wrapper {
        min-width: 320px;
        margin: 10px 0px;
    }

    .pure-g {
        padding-left: 0px;
        padding-right: 0px;
    }

    .index-screenshot {
        border: 0px;
    }

    .separator {
        margin-left: 10px;
        margin-right: 10px;
    }

    .swiper {
        border: none;
    }
}
