@charset "utf-8";
@import url("../share/css/classes.css");
@import url("module.css");
@import url("common2.css");
@import url("../share/css/colorbox.css");
@import url("contents.css");
@import url("comment2.css");

/**
 * common.css
 * updatedAt: 2016.03.25
 * createdAt: 2013.06.21
 */
/*--------------------------------------------------------------------------------
	#tmpl_main | override Sony HQ design template v5.0
--------------------------------------------------------------------------------*/
body {
    margin: 0;
}

/**ローカルサーバー用 */
#tmpl_main {
    width: 100% !important;
    margin: 0;
    padding: 0;
}

/*==================================================

  override Sony HQ design includeStyleCMS

==================================================*/
/***************************************
 * Content Menu
 **************************************/
#tmpl_contentMenu_bar {
    min-width: 1190px;
}

#tmpl_contentMenu_bar_base {
    width: 1190px;
    max-width: 1190px;
}

#tmpl_contentMenu_bar_base h1 {
    padding: 0 65px 10px 0px;
}

#tmpl_contentMenu_breadcrumbs {
    padding: 10px 5px 4px 0px;
}

#tmpl_pc_content_menu_inner {
    width: 1190px;
}

#tmpl_footerMenu .tmpl_footerMenuIn {
    width: 1190px;
}

/***************************************
 * SMALL SCREEN
 **************************************/
@media screen and (max-width: 640px) {
    #tmpl_contentMenu_bar_base h1 {
        padding: 0 65px 18px 20px;
    }

    #tmpl_contentMenu_breadcrumbs {
        padding: 10px 5px 15px 20px;
    }
}

/*--------------------------------------------------------------------------------
	#tmpl_contentMenu_bar
--------------------------------------------------------------------------------*/
#tmpl_contentMenu_bar {
    font-family: "Microsoft YaHei","Arial","Hiragino Sans GB",Sans-Serif;
    -webkit-font-smoothing: antialiased;
}

@media(max-width:640px) {
    #tmpl_contentMenu_bar {
        min-width: 320px;
    }

    #tmpl_contentMenu_bar_base {
        width: auto;
    }
}

#tmpl_contentMenu_bar h1 {
    font-family: "SST W15 Light", sans-serif;
    font-weight: lighter;
    -webkit-font-smoothing: antialiased;
}

#tmpl_contentMenu_bar h1 a:hover {
    text-decoration: none !important;
}

/*--------------------------------------------------------------------------------
	nav #tmpl_footerMenu
--------------------------------------------------------------------------------*/
nav #tmpl_footerMenu {
    min-width: 1190px;
}

@media(max-width:640px) {
    nav #tmpl_footerMenu {
        min-width: 320px;
    }
}

/*--------------------------------------------------------------------------------
	.sdContainer
--------------------------------------------------------------------------------*/
.sdContainer {
    position: relative;
    min-width: 1190px !important;
    line-height: 1.4;
    font-size: 100%;
    font-family: "Microsoft YaHei","Arial","Hiragino Sans GB",Sans-Serif;
    -webkit-font-smoothing: antialiased;
    text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    overflow: hidden;
}

.sdContainer a {
    color: #666;
    text-decoration: none;
    *cursor: pointer;
    *background-color: transparent;
    *zoom: 1;
}

.sdContainer .thickbox a {
    /*outline: none;*/
}

.sdContainer a:hover {
    text-decoration: none !important;
}

.sdContainer a.hover {
    display: inline-block;
    transition: opacity 0.5s;
    -o-transition: opacity 0.5s;
    -ms-transition: opacity 0.5s;
    -moz-transition: opacity 0.5s;
    -webkit-transition: opacity 0.5s;
}

.sdContainer a.hover:hover {
    opacity: 0.5;
}

.sdContainer img {
    border: 0;
    vertical-align: top;
}

.sdContainer h2, .sdContainer h3, .sdContainer h4, .sdContainer h5 {
    margin: 0;
    font-weight: lighter;
    font-family: "Microsoft YaHei","Arial","Hiragino Sans GB",Sans-Serif;
}

.sdContainer p {
    font-family: "Microsoft YaHei","Arial","Hiragino Sans GB",Sans-Serif;
}

.sdContainer p, .sdContainer li {
    margin: 0;
}

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

.sdContainer table {
    border-collapse: collapse;
    border-spacing: 0;
}

.adjust {
    font-family: "SST W55 Light", sans-serif;
    -webkit-font-smoothing: antialiased;
}

.adjust a {
    display: inline-block;
    transition: none !important;
}

.adjust:hover {
    opacity: 1.0 !important;
}

.adjust a.hover:hover {
    opacity: 1.0;
}

/* Media Queries
--------------------------------------------------------------------------------*/
@media(max-width:640px) {
    .sdContainer {
        min-width: 320px !important;
        font-size: 90%;
        font-family: "Microsoft YaHei","Arial","Hiragino Sans GB",Sans-Serif;
        -webkit-font-smoothing: antialiased;
    }

    .sdContainer strong {
        font-weight: normal;
    }

    .sdContainer a {
        display: inline-block;
        transition: none !important;
    }

    .sdContainer a:hover {
        opacity: 1.0 !important;
    }

    .sdContainer a.hover:hover {
        opacity: 1.0;
    }
}

/*--------------------------------------------------------------------------------
	.sdMainVisual
--------------------------------------------------------------------------------*/
.sdMainVisual .item {
    background-color: #f7f7f7;
    background-size: cover;
}

.sdMainVisual {
    position: relative;
    margin: 0 auto;
    overflow: hidden;
}

.sdMainVisual .item {
    position: relative;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    overflow: hidden;
}

.sdMainVisual .item.expand {
    background-size: cover;
}

.sdMainVisual .item a {
    display: block;
}

.sdMainVisual .item .inner {
    position: relative;
    margin: 0 auto;
    width: 940px;
    height: 400px;
    /*overflow: hidden;*/
}

.sdMainVisual .item .inner.left {
    text-align: right;
}

.sdMainVisual .item img.main {
    position: absolute;
    z-index: 0;
    top: 0;
    left: -490px;
}

.sdMainVisual .item img.spacer {
    display: inline-block;
    width: 1px;
    height: 100%;
    font-size: 0;
    vertical-align: middle;
}

.sdMainVisual .item .heading {
    position: relative;
    display: inline-block;
    max-width: 95%;
    vertical-align: middle;
    z-index: 1;
    color: #666;
    text-align: left;
    *display: inline;
    *zoom: 1;
}

.no-script .sdMainVisual .item .heading {
    margin-top: 158px;
}

.sdMainVisual .item .heading strong {
    font-size: 117%;
    font-family: "SST W15 Light", sans-serif;
    font-weight: normal;
}

.sdMainVisual .item .heading h2 {
    font-size: 237.4%;
    font-family: "SST W15 Light", sans-serif;
    -webkit-font-smoothing: antialiased;
    line-height: 1.2;
}
@media(max-width:640px) {
	.sdMainVisual .item .heading h2 {
		margin-top: 4px;
		font-size: 225%;
	}
}
@media(max-width:375px) {
    .sdMainVisual .item .heading em {
        font-size: 105%;
    }

    .sdMainVisual .item .heading h2 {
        font-size: 185%;
    }
}

@media(max-width:360px) {
    .sdMainVisual .item .heading em {
        font-size: 125%;
    }

    .sdMainVisual .item .heading h2 {
        font-size: 225%;
    }
}
.sdMainVisual .item .heading p {
    margin-top: 20px;
    font-size: 93.8%;
    font-weight: lighter;
    font-family: "SST W55 Light", sans-serif;
    -webkit-font-smoothing: antialiased;
    line-height: 1.3;
}

/* .adjust
--------------------------------------------------------------------------------*/
.adjust .sdMainVisual .item.expand {
    background-size: 1315px 600px;
}

.adjust .sdMainVisual .item .inner {
    font-size: 120%;
    margin: 0 30px 0 30px;
    width: auto;
}

/* Media Queries
--------------------------------------------------------------------------------*/
@media(min-width:1920px) {
    .sdMainVisual .item {
        background-size: cover;
    }

    .sdMainVisual .item.future-design {
        background-size: auto;
        /*background-size: auto;
		background-repeat:repeat-x;*/
        background-color: #fcfcfc;
    }

    .sdMainVisual .item.future-design2 {
        background-size: cover;
    }
}

@media(max-width:640px) {
    .sdMainVisual {
        min-width: 320px;
    }

    .sdMainVisual .item {
        font-size: 100%;
        background-size: auto 100%;
    }

    .sdMainVisual .item.sp2014 {
        background-size: 150% !important;
        background-position: 0% 50%;
    }

    .sdMainVisual .item .inner {
        margin: 0 20px 0 30px;
        width: auto;
        /*height: 380px !important;*/
        height: 340px !important;
    }
}

@media(max-width:540px) {
    .sdMainVisual .item .heading {
        font-size: 110% !important;
    }

    .sdMainVisual .item .inner {
        height: 340px !important;
    }
}

@media(max-width:480px) {
    .sdMainVisual .item {
        font-size: 90%;
    }

    .sdMainVisual .item .inner {
        margin: 0 15px;
        height: 300px !important;
    }
}

@media(max-width:400px) {
    .sdMainVisual .item .inner {
        height: 250px !important;
    }
}

@media(max-width:360px) {
    .sdMainVisual .item {
        font-size: 55%;
    }

    .sdMainVisual .item .inner {
        height: 230px !important;
    }

    .sdMainVisual .item .heading p {
        margin-top: 5px;
    }
}

@media(max-width:320px) {
    .sdMainVisual .item .inner {
        height: 200px !important;
    }
}

/*--------------------------------------------------
  .sd-content-menu2
--------------------------------------------------*/
.sd-content-menu2 {
    font-size: 75%;
    line-height: 1.0;
    border-top: 1px solid #dbdbe4;
    border-bottom: 1px solid #dbdbe4;
}

.sd-content-menu2 ul {
    display: table;
    table-layout: fixed;
    margin: 0 auto;
    max-width: 940px;
    width: 100%;
}

.sd-content-menu2 li {
    display: table-cell;
    text-align: center;
    background: url("../img/cnt_menu_spt.gif") no-repeat 0 center;
}

.sd-content-menu2 li:first-child {
    background-image: none;
}

.sd-content-menu2 li a {
    display: block;
    padding: 19px 0;
}

.sd-content-menu2 li a.current,
.sd-content-menu2 li a:hover {
    color: #3865e0;
}

.sd-content-menu2 li {
    font-family: "SST W15 Light", sans-serif;
}

.sd-content-menu2 li.jp {
    font-family: "SST W55 Light", sans-serif;
}

@media screen and (max-width:479px) {
    .sd-content-menu2:not(.no-break) {
        border-bottom: none;
    }

    .sd-content-menu2:not(.no-break) ul {
        display: block;
    }

    .sd-content-menu2:not(.no-break) li {
        display: block;
        width: auto;
        text-align: left;
        border-bottom: 1px solid #dbdbe4;
        background: none;
    }

    .sd-content-menu2:not(.no-break) li a {
        padding: 19px 20px;
    }
}

/*--------------------------------------------------------------------------------
	.sd-content-menu
--------------------------------------------------------------------------------*/
.sd-content-menu {
    min-width: 940px;
    font-size: 75%;
    font-family: "SST W15 Light", sans-serif;
    -webkit-font-smoothing: antialiased;
    color: #666;
    line-height: 1.0;
    border-top: 1px solid #dbdbe4;
    border-bottom: 1px solid #dbdbe4;
}

.sd-content-menu.jp {
    font-family: "SST W55 Light", sans-serif;
}

.sd-content-menu ul {
    margin: 0 auto;
    width: 940px;
    *zoom: 1;
}

.sd-content-menu ul:after {
    clear: both;
    display: block;
    content: "";
}

.sd-content-menu li {
    float: left;
    width: 33.3%;
    background: url("../img/cnt_menu_spt.gif") no-repeat right center;
    text-align: center;
}

.sd-content-menu.two li {
    width: 50%;
}

.sd-content-menu li:last-child {
    background: none;
}

.sd-content-menu li a {
    display: block;
    padding: 19px 0;
}

.sd-content-menu li a.current,
.sd-content-menu li a:hover {
    color: #3865e0;
}

.sd-content-menu li span {
    margin-right: 4px;
}

.adjust .sd-content-menu {
    font-size: 93.8%;
}

/* Media Queries
--------------------------------------------------------------------------------*/
@media(max-width:640px) {
    .sd-content-menu {
        min-width: 320px;
    }

    .sd-content-menu ul {
        width: auto;
    }
}

@media(max-width:400px) {
    .sd-content-menu {
        font-size: 87.5%;
        border-bottom: none;
    }

    .sd-content-menu li {
        float: none;
        width: auto;
        text-align: left;
        border-bottom: 1px solid #dbdbe4;
        background: none;
    }

    .sd-content-menu.two li {
        width: auto;
    }

    .sd-content-menu li a {
        padding: 19px 20px;
    }
}

/*--------------------------------------------------------------------------------
	.sd-content
--------------------------------------------------------------------------------*/
.sd-content {
    position: relative;
    margin: 75px auto 0 !important;
    width: 940px;
    max-width: 940px !important;
    color: #666;
    _overflow: hidden;
}

.sd-content h3 {
    /*font-family: "SST W15 Light", sans-serif;
    -webkit-font-smoothing: antialiased;*/
}

.sd-content p {
    font-size: 130%;
    line-height: 1.75;
}

.sd-content p span.eng {
    font-family: "SST W15 Light", sans-serif !important;
    -webkit-font-smoothing: antialiased;
    font-size: 150%;
    line-height: 1;
}

.sd-content p span.english {
    font-family: "SST W15 Light", sans-serif !important;
    -webkit-font-smoothing: antialiased;
}

.sd-content p.small {
    font-size: 77.5%;
    line-height: 1.75;
}

.sd-content p.small strong {
    font-weight: normal !important;
}

.sd-content .section {
    position: relative;
    margin-top: 95px;
    *zoom: 1;
}

.sd-content .section.close {
    margin-top: 75px;
}

.sd-content .section:after {
    clear: both;
    display: block;
    content: "";
}

/* .adjust
--------------------------------------------------------------------------------*/
.adjust .sd-content {
    font-size: 120%;
    /*padding-left: 30px;
	padding-right: 30px;*/
    width: auto;
    max-height: 999999px;
}

/* Media Queries
--------------------------------------------------------------------------------*/
@media(max-width:640px) {
    .sd-content {
        margin-top: 50px;
        margin-left: 30px;
        margin-right: 30px;
        margin: 50px 30px 0 !important;
        width: auto;
        max-height: 999999px;
    }
}

@media(max-width:480px) {
    .sd-content {
        margin-left: 15px;
        margin-right: 15px;
        margin: 50px 15px 0 !important;
    }
}

/*--------------------------------------------------------------------------------
	#sdFooter
--------------------------------------------------------------------------------*/
.sdFooter {
    margin: 90px auto 0;
    padding-bottom: 0;
    min-width: 940px;
    font-family: "SST W15 Roman", sans-serif;
    -webkit-font-smoothing: antialiased;
    line-height: 1.0;
    color: #666;
}

.sdFooter.compati {
    padding-bottom: 22px;
}

.sdFooter .external-link {
    position: relative;
    margin: 0 auto !important;
    width: 740px !important;
}

.sdFooter .external-link .sns {
    position: absolute;
    float: none;
    top: -20px;
    margin: 0;
}

@media(max-width:640px) {
    .sdFooter .external-link .sns {
        position: static;
    }
}

.sdFooter .external-link time.update {
    float: right;
    margin-top: -20px;
    font-size: 125%;
}

@media(max-width:640px) {
    .sdFooter .external-link {
        width: auto !important;
    }

    .sdFooter .external-link .sns {
        position: relative;
        top: 0px;
    }

    .sdFooter .external-link time.update {
        float: none;
        margin-top: 40px;
        margin-bottom: -70px;
        width: 100%;
    	text-align: center;
        display: block;
    }
}

.sdFooter .pagetop {
    display: none !important;
    /*margin: 0 auto 19px;
	width: 940px;
	font-size: 68.8%;
	text-align: right;*/
}

.sdFooter .pagetop a {
    display: inline-block;
    padding-left: 21px;
    background: url("../img/pagetop.png") no-repeat 0 2px;
}

.sdFooter .pagetop a:hover {
    color: #3865e0;
    background-position: 0 -10px;
}

.sdFooter .heading {
    border-top: 1px solid #dbdbe4;
    border-bottom: 1px solid #dbdbe4;
}

.sdFooter .heading h2 {
    margin: 0 auto;
    padding: 13px 0 18px;
    width: 940px;
    font-size: 118.8%;
    font-family: "SST W15 Light", sans-serif !important;
    *line-height: 1.2;
    -webkit-font-smoothing: antialiased;
}

.sdFooter .heading h2 a:hover {
    color: #3865e0;
}

.sdFooter .heading ul {
    margin: -35px auto 20px auto;
    text-align: right;
    width: 940px;
    font-size: 125%;
}

.sdFooter .heading ul li {
    float: right;
}

.sdFooter .heading ul li.first {
    color: #767676;
    padding-right: 10px;
    border-right: 1px solid #dbdbe4;
    margin-right: 9px;
}

.sdFooter .heading ul:after {
    clear: both;
    display: block;
    content: "";
}

.sdFooter .heading ul li a:hover {
    color: #3865e0;
}

.sdFooter .menu {
    margin: 0 auto;
    width: 940px;
    *zoom: 1;
}

.sdFooter .menu:after {
    clear: both;
    display: block;
    content: "";
}

.sdFooter .menu .item {
    float: left;
    width: 240px;
}

.sdFooter .menu .item.last-child {
    width: 220px;
}

.sdFooter .menu h3 {
    margin: 18px 0 0;
    padding-bottom: 3px;
    font-size: 118.8%;
    color: #767676;
    font-family: "SST W15 Light", sans-serif !important;
    -webkit-font-smoothing: antialiased !important;
}

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

.sdFooter .menu li {
    margin: 10px 0 0;
    font-size: 125%;
}

.sdFooter .menu .item.last-child li {
    font-size: 70%;
    font-family: "SST W55 Light", sans-serif;
    -webkit-font-smoothing: antialiased;
    font-weight: lighter;
    line-height: 1.8em;
}

.sdFooter .menu .item.last-child li a {
    color: #767676;
}

.sdFooter .menu li a:hover,
.sdFooter .menu .item.last-child li a:hover {
    color: #3865e0;
}

.adjust .sdFooter {
    min-width: auto;
    font-size: 110%;
}

.adjust .sdFooter .pagetop {
    margin: 0 30px 19px;
    width: auto;
}

.adjust .sdFooter .heading h2 {
    margin: 0 30px;
    padding: 13px 0 18px;
    width: auto;
}

.adjust .sdFooter .heading ul {
    margin: -32px 30px 15px 30px;
    width: auto;
}

.adjust .sdFooter .menu {
    margin: 0 30px 0;
    width: auto;
}

.adjust .sdFooter .menu .item {
    width: 25%;
}

.adjust .sdFooter .menu .line .item:last-child {
    width: 25%;
}

/* Media Queries
--------------------------------------------------------------------------------*/
@media(max-width:640px) {
    .sdFooter {
        min-width: 320px;
        font-size: 120%;
    }

    .sdFooter .pagetop {
        margin: 0 30px 19px;
        width: auto;
    }

    .sdFooter .pagetop a {
        background: url("../img/pagetopl.png") no-repeat 0 2px;
        background-size: 15px auto;
    }

    .sdFooter .heading h2 {
        margin: 0 30px;
        padding: 13px 0 18px;
        width: auto;
    }

    .sdFooter .heading ul {
        margin: -35px 30px 20px;
        width: auto;
    }

    .sdFooter .menu {
        margin: 0 30px 0;
        width: auto;
    }

    .sdFooter .menu .line:after {
        clear: both;
        display: block;
        content: "";
    }

    .sdFooter .menu .item {
        width: 55%;
    }

    .sdFooter .menu .line .item:last-child {
        width: 45%;
    }

    .sdFooter .menu h3 {
        margin-top: 30px;
    }
}

@media(max-width:480px) {
    .sdFooter .pagetop {
        margin: 0 15px 19px;
    }

    .sdFooter .heading h2 {
        margin: 0 15px;
    }

    .sdFooter .heading ul {
        margin: -35px 15px 20px;
        width: auto;
    }

    .sdFooter .menu {
        margin: 0 15px 0;
    }

    .sdFooter .menu h3 {
        margin-top: 35px;
    }

    .sdFooter .menu li {
        margin: 15px 0 0;
        font-size: 125%;
    }
}

@media(max-width:320px) {
    .sdFooter {
        font-size: 130%;
    }

    .sdFooter .menu .item {
        width: 100%;
    }

    .sdFooter .menu .line .item:last-child {
        width: 100%;
    }

    .sdFooter .menu h3 {
        margin-top: 40px;
    }

    .sdFooter .menu li {
        margin: 20px 0 0;
    }
}

/*--------------------------------------------------------------------------------
	#tmpl_footerMenu
--------------------------------------------------------------------------------*/
.compati #tmpl_footerMenu {
    margin: 0;
}

/* 2018-06-26 */
.sdContainer, .sd2-container {
    padding-bottom: 0;
}

.sd2-pagetop {
    margin-top: 52px;
}

.sd2-pagetop-btn {
    margin-top: -52px;
}

#dmyimg {
    display: none;
}

#loader {
    /*	width: 100%;	*/
    min-width: 1190px;
    height: 130px;
    background-color: #efefef;
    display: none;
    position: relative;
}

.loading {
    width: 50px;
    height: 50px;
    position: absolute;
    right: 0;
    left: 0;
    margin: 38px auto;
}

.circular {
    position: relative;
    margin: 0;
    width: 50px;
    height: 50px;
    border: 2px solid #002666;
    border-radius: 50%;
    opacity: 0;
    -webkit-animation: spin 1s infinite linear;
    animation: spin 1s infinite linear;
}

.circular::before {
    left: -2px;
    top: -2px;
    position: absolute;
    content: '';
    width: inherit;
    height: inherit;
    border: inherit;
    border-radius: inherit;
}

.circular, .circular::before {
    display: inline-block;
    border-color: transparent;
    border-top-color: #002666;
}

.circular::before {
    animation: spin 1.5s infinite ease;
}

@-webkit-keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

@media screen and (max-width: 640px) {
    #loader {
        /*		width: 100%;	*/
        min-width: auto;
        height: 75px;
    }

    .loading {
        margin: 18px auto 3px;
    }
}
