* {
    margin: 0;
    padding: 0;
    border:  0;
    outline: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;

    /*font: inherit;*/
    font-family: sans-serif;
    font-size: 100%;
    font-style: inherit;
    font-weight: inherit;

    text-decoration: none;
    vertical-align: baseline;

}

html {
    font-size: 100%;
    width:100%;
    height:100%;
}

body {
    background-color: transparent;
    color: #444;
    font-family: sans-serif;
    margin: 0;
    min-width: 825px;
    -webkit-background-size: 100% 100%;
    -moz-background-size: 100% 100%;
    background-size: 100% 100%;
    width:100%;
    height:100%;

    -webkit-font-smoothing:antialiased;
    font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;

    /* スマートフォンの文字サイズの自動調整機能オフ */
    -webkit-text-size-adjust:100%;
    -moz-text-size-adjust:100%;
    -ms-text-size-adjust:100%;
    -o-text-size-adjust:100%;
    text-size-adjust:100%;
}

/*
body:lang(ja){
    font-family:"\30D2\30E9\30AE\30CE\89D2\30B4\20\50\72\6F\20\57\33","Hiragino Kaku Gothic Pro","\30E1\30A4\30EA\30AA",Meiryo,"\FF2D\FF33\20\FF30\30B4\30B7\30C3\30AF",sans-serif
}
body:lang(zh){
    font-family:"Microsoft YaHei",Arial,"Hiragino Sans GB",
}
*/

article, aside, dialog, figure, footer, header, main, menu, nav, section {
    display:block;
}
audio, canvas, video {
    display:inline-block;
}

br,
hr {
    display:block;
}

img {
    border: 0;
}
p {
    word-wrap: break-word;
}
*:focus {
    outline: 1px solid #a4c6fd;
}

#global-header {
    width: 100%;
    height: 70px;
    background-color: black;
    border-bottom: 1px solid #666;
}
#global-header > a:focus {
    outline: 0;
}
#global-header-sony-logo-img {
    margin-left: 40px;
    margin-top: 26px;
    width: 100px;
    height: auto;
}
#global-header-xdcam-air-img {
    margin-left: 60px;
    padding-bottom: 2px;
    width: 75px;
    height: auto;
}

#vertical-center-placeholder {
    width: 100vw;
    height: calc(100% - 135px);
}

#global-footer {
    width: 100%;
    height: 65px;
    min-width: 825px;
    background-color: black;
    color: #b3b3b3;
    font-size: 0.7em;
    line-height: 200%;
    padding: 10px 15px 10px 40px;
    border-top: 1px solid #666;
}
#global-footer a:not(:first-child) {
    border-left: 1px solid #b3b3b3;
    padding-left: 9px;
}
#global-footer a {
    color: #b3b3b3;
    text-decoration: none;
    padding-right: 10px;
}
#global-footer a:hover {
    color:#fff;
    text-decoration:underline;
}
#global-footer a:focus {
    outline: 0;
}
#global-copyright-sony {
    white-space: normal;
    word-wrap: break-word;
    -ms-word-wrap: break-word;
    text-align: center;
    margin-top: 12px;
}

#global-main {
    width: 100vw;
    height: calc(100% - 135px);
    overflow: auto;
    position: fixed;
    top: 70px;
}

.contents {
    width: 100%;
}
.contents-main {
    width: 90%;
    margin: auto;
    padding-top: 36px;
    padding-bottom: 36px;
}
.contents-main section {
    padding: 0 40px 40px 40px;
    margin: 0 auto;
    text-align: center;
}
.contents-main section h2 {
    font-size: 2em;
    line-height: 1.15789;
    margin-bottom: 24px;
    letter-spacing: -0.04em;
    font-weight: normal;
}
.contents-main section h3 {
    font-size: 1.2em;
    line-height: 1.18182;
    margin-bottom: 14px;
    letter-spacing: -0.04em;
    font-weight: normal;
}
.contents-main .read {
    padding-top: 80px;
    text-align: left;
}
.contents-main .read img {
    width: 100%;
    height: 100%;
}
.contents-main section .wrap {
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
    text-align: left;
    padding: 40px 16px;
}

.contents-main .sign-in {
    padding-top: 50px;
}
.contents-main .sign-in div {
    display: block !important;
}
.contents-main .sign-in div ul {
    margin: 0;
    padding: 0;
}
.contents-main .sign-in div ul li {
    margin: 0 10px 0 0;
    list-style: none;
    height: 36px;
}
.contents-main .sign-in div ul li {
    margin: 0 10px 0 0;
    list-style: none;
    height: 36px;
}
.contents-main .sign-in div ul li:last-child {
    margin: 0 0 0 0;
}
.contents-main .sign-in div ul li a {
    display: block;
    width: 140px;
    height: 36px;
    text-decoration: none;
    background: #1f2024;
    color: #FFF;
    line-height: 36px;
    text-align: center;
    vertical-align: middle;
}
.contents-main .sign-in div ul li a:hover {
    background: #000;
}

.contents-main .link-nav {
    padding-top: 250px;
}
.contents-main .link-nav div {
    display: block !important;
    text-align: left;
}
.contents-main .link-nav div a:link,
.contents-main .link-nav div a:visited,
.contents-main .link-nav div a:hover,
.contents-main .link-nav div a:active { color: #fff; }


.grid {
    text-align: left;
    margin: 0 0 20px 0;
}
.grid:after {
    display: block;
    visibility: hidden;
    clear: both;
    content: "";
    height :0;
}
.grid-1,
.grid-2,
.grid-3,
.grid-4,
.grid-5,
.grid-6,
.grid-7,
.grid-8,
.grid-9,
.grid-10,
.grid-11 {
    float: left;
    overflow: hidden;
    padding: 0 0 0.1em 0;
    margin: 0 2% 0 0;
}
.grid-1 {
    width:6.5%;
}
.grid-2 {
    width:15%;
}
.grid-3 {
    width:23.5%;
}
.grid-4 {
    width:32%;
}
.grid-5 {
    width:40.5%;
}
.grid-6 {
    width:49%;
}
.grid-7 {
    width:57.5%;
}
.grid-8 {
    width:66%;
}
.grid-9 {
    width:74.5%;
}
.grid-10 {
    width:83%;
}
.grid-11 {
    width:91.5%;
}
.grid-12 {
    width:100%;
}
.grid-1:nth-last-child(2),
.grid-2:nth-last-child(2),
.grid-3:nth-last-child(2),
.grid-4:nth-last-child(2),
.grid-5:nth-last-child(2),
.grid-6:nth-last-child(2),
.grid-7:nth-last-child(2),
.grid-8:nth-last-child(2),
.grid-9:nth-last-child(2),
.grid-10:nth-last-child(2),
.grid-11:nth-last-child(2) {
    margin:0;
}
.grid-1:last-child,
.grid-2:last-child,
.grid-3:last-child,
.grid-4:last-child,
.grid-5:last-child,
.grid-6:last-child,
.grid-7:last-child,
.grid-8:last-child,
.grid-9:last-child,
.grid-10:last-child,
.grid-11:last-child {
    float: right;
    margin: 0;
}


.modal input[type='checkbox'] {
    display: block;
    position: absolute;
    left: -9999px;
}
.modal .modal-overlay {
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:120%;
    background-color:rgba(0,0,0,0.75);
}
.modal .modal-content {
    position:fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin:1.5em auto 0;
    padding:10px 10px 20px 10px;
    border:2px solid #aaa;
    background:#fff;
    z-index:999;
}
.modal .modal-close {
    margin-left: auto;
    text-align: left;
    width: 1em;
    cursor: pointer;
    margin-bottom: 0.5em;
}
.modal .modal-close span:before {
    content: '×';
    cursor: pointer;
}
.modal input[type='checkbox'] ~ .modal-overlay {
    /*display: none;*/
    z-index: -999;

    opacity: 0;
    -webkit-transform: scale(0.3);
    -moz-transform: scale(0.3);
    -ms-transform: scale(0.3);
    -o-transform: scale(0.3);
    transform: scale(0.3);
    -webkit-transition: all 1.00s cubic-bezier(0.65, -0.55, 0.265, 1.55);
    -moz-transition: all 1.00s cubic-bezier(0.65, -0.55, 0.265, 1.55);
    -ms-transition: all 1.00s cubic-bezier(0.65, -0.55, 0.265, 1.55);
    -o-transition: all 1.00s cubic-bezier(0.65, -0.55, 0.265, 1.55);
    transition: all 1.00s cubic-bezier(0.65, -0.55, 0.265, 1.55);
}
.modal input[type='checkbox']:checked ~ .modal-overlay {
    /*display: block;*/
    z-index:998;

    opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
}
.modal input[type='checkbox']:focus:checked ~ .modal-overlay label {
    outline: 1px solid #a4c6fd;
}




/**********************************************************************************************************************/
/* Chrome だけに適用される CSS */
@media screen and (-webkit-min-device-pixel-ratio:0) {
    /*
    #service-wrapper input[type='checkbox']:focus + label {
        outline: 1px solid #a4c6fd;
    }
    */
}

/* IE だけに適用される CSS */
@media all and (-ms-high-contrast:none) {
    #header-logo-link {
        position: absolute;
        top: 12px;
        left: calc(100% - 100px);
        bottom: 6px;
    }
    .contents-main:focus {
        outline: none;
    }
}

/* Safari だけに適用される CSS */
@media screen and (-webkit-min-device-pixel-ratio:0) {
    /*
    ::i-block-chrome, #service-wrapper input[type='checkbox']:focus + label {
        outline: 1px solid #a4c6fd;
    }
    */
}

/* Firefox だけに適用される CSS */
@-moz-document url-prefix() {
    /*
    #service-wrapper input[type='checkbox']:focus + label {
        outline: 1px solid #a4c6fd;
    }
    */
}

/**********************************************************************************************************************/
/* 画面サイズが 640 px までのものに適用される CSS */
@media screen and (max-width: 640px) {
/*@media (max-width: 640px) {*/

    .grid-1,
    .grid-2,
    .grid-3,
    .grid-4,
    .grid-5,
    .grid-6,
    .grid-7,
    .grid-8,
    .grid-9,
    .grid-10,
    .grid-11 {
        float:none;
        margin:0 0 1.2em 0;
        width:100%;
    }
    .grid-1:nth-last-child(2),
    .grid-2:nth-last-child(2),
    .grid-3:nth-last-child(2),
    .grid-4:nth-last-child(2),
    .grid-5:nth-last-child(2),
    .grid-6:nth-last-child(2),
    .grid-7:nth-last-child(2),
    .grid-8:nth-last-child(2),
    .grid-9:nth-last-child(2),
    .grid-10:nth-last-child(2),
    .grid-11:nth-last-child(2) {
        margin:0 0 1.2em 0;
    }
    .grid-1:last-child,
    .grid-2:last-child,
    .grid-3:last-child,
    .grid-4:last-child,
    .grid-5:last-child,
    .grid-6:last-child,
    .grid-7:last-child,
    .grid-8:last-child,
    .grid-9:last-child,
    .grid-10:last-child,
    .grid-11:last-child {
        float:none;
        margin:0 0 1.2em 0;
    }
}
