@charset "UTF-8";
.font1 {
    font-family: 'Roboto Condensed', sans-serif;
}

.font2 {
    font-family: 'Roboto', sans-serif;
}

* {
 }

article, aside, details, figcaption, figure, footer, header, nav, section,
summary {
    display: block;
}

audio, canvas, video {
    display: inline-block;
}

.ie audio, canvas, video {
    display: inline-block;
}

audio:not([controls]) {
    display: none;
    height: 0;
}

[hidden] {
    display: none;
}

html {
    font-size: 100%;
    overflow-y: scroll;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

html, body, button, input, select, textarea {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "メイリオ", "Meiryo", Meiryo, sans-serif;
}
html,body,#body-inner{
}
body {
    color: #ddd;
    line-height: 1;
    margin: 0;
    padding: 0;
    font-size: 100%;
}

a {
    text-decoration: none;
    font-size: inherit;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
    -webkit-font-smoothing: subpixel-antialiased;
}

a:visited {}

a:focus {
    outline: none;
}

a:active, a:hover {
    outline: 0;
    -webkit-font-smoothing: subpixel-antialiased;
}

a:hover {
    text-decoration: none;
}

h1, h2, h3, h4, h5, h6, p {
    margin: 0;
    padding: 0;
}

h1, h2, h3, h4, h5, h6 {
    clear: both;
    line-height: 1.5;
}

h1 {}

h2 {}

h3 {}

h4 {}

h5 {}

h6 {}

address {
    font-style: normal;
}

abbr[title] {}

b, strong {
    font-weight: bold;
}

dfn {
    font-style: italic;
}

mark {
    background: #ff0;
    color: #000;
}

p {
    line-height: 2
}

code, kbd, pre, samp {
    font-family: monospace, serif;
    -webkit-hyphens: none;
    -moz-hyphens: none;
    -ms-hyphens: none;
    hyphens: none;
}

pre {
    overflow: auto;
    padding: 0;
    white-space: pre;
    white-space: pre-wrap;
    word-wrap: break-word;
}

blockquote, q {
    -webkit-hyphens: none;
    -moz-hyphens: none;
    -ms-hyphens: none;
    hyphens: none;
    quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
    content: "";
    content: none;
}

blockquote {
    margin: 0;
}

blockquote blockquote {
    margin: 0;
}

blockquote cite, blockquote small {
    font-weight: normal;
    text-transform: uppercase;
}

blockquote em, blockquote i {}

blockquote strong, blockquote b {}

small {
    font-size: smaller;
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

dl {
    margin: 0;
    border-top: #444 1px solid;
}

dt, dd {
    font-weight: normal;
    border-bottom: #444 1px solid;
    margin: 0;
    display: block;
    font-size: 80%;
    padding: 15px 5px;
    line-height: 1.4;
}

dt {}

dd {}

menu, ol, ul {
    margin: 0;
    padding: 0;
}

ul {
    list-style-type: square;
}

nav ul, nav ol {
    list-style: none;
    list-style-image: none;
}

li > ul, li > ol {
    margin: 0;
}

li {
    list-style: none;
    font-size: 100%;
}

img {
    -ms-interpolation-mode: bicubic;
    border: 0;
    vertical-align: top;
}

svg:not(:root) {
    overflow: hidden;
}

figure {
    margin: 0;
}

form {
    margin: 0;
}

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

legend {
    border: 0;
    padding: 0;
    white-space: normal;
}

button, input, select, textarea {
    margin: 0 12px;
    max-width: 100%;
    vertical-align: baseline;
}

button, input {
    line-height: normal;
}

button, html input[type="button"], input[type="reset"], input[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer;
}

button[disabled], input[disabled] {
    cursor: default;
}

input[type="checkbox"], input[type="radio"] {
    padding: 0;
    margin-right: 5px;
}

input[type="search"] {
    -webkit-appearance: textfield;
    padding-right: 2px; /* Don't cut off the webkit search cancel button */
    width: 270px;
}

input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

button::-moz-focus-inner, input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

textarea {
    overflow: auto;
    vertical-align: top;
}

caption, th, td {
    font-weight: normal;
    text-align: left;
}

caption {
    margin: 0;
}

table, table.table {
    margin: 0;
    background: #fff;
    border-collapse: collapse;
    border-spacing: 0;
    line-height: 1;
    width: auto;
    /* overflow: hidden; */
    border-radius: 0;
    border: none;
    padding-bottom: 1px;
    width: 100%;
    border-top: #eee 1px solid;
    /* border-bottom:#ddd 1px dotted; */

}

th, td, table.table th, table.table td {
    border-bottom: #eee 1px solid;
    border-right: none;
    border-left: none;
    margin: 0;
    font-size: 13px;
    padding: 22px;
    line-height: 1.7;
    color: #525252;
}

th, table.table th {
    font-weight: normal;
    background: #fff;
    color: #555;
    min-width: 120px;

    font-weight: bold;
}

.th2 {
    font-weight: normal;
    background: #f3f3f3;
    background: rgba(0, 0, 0, 0.05);
    color: #555;
}

.th3 {
    font-weight: normal;
    background: #eee;
    background: rgba(0, 0, 0, 0.1);
    color: #444;
}

.th4 {
    font-weight: normal;
    background: #999;
    background: rgba(0, 0, 0, 0.4);
    color: #fff;
}

td {}

del {
    color: #333;
}

ins {
    background: #fff9c0;
    text-decoration: none;
}

hr {
    background: #ddd;
    border: 0;
    height: 1px;
    margin: 0 0 36px;
}

/*-----------------------------------------------------------------------------* common */
body {
    background: #1f1c1f;
    background: #090909;
    overflow-x: hidden;
    font-size:14px;
}

a {
    color: #cead02;
    cursor: pointer;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}

/*CHECK*/

a:hover {
    opacity: 0.8;
    -webkit-font-smoothing: subpixel-antialiased;
}

.ie8 a:hover {
    -ms-filter: "alpha(opacity=75)";
}

p {
    /* color:#222; */
    font-size: 13px;
    line-height: 2.2;
    text-align: left;
    text-align: justify;
}

h1, h2, h3, h4, h5, h6 {
    /* color:#181528; */
}

@media screen and (min-width: 768px) {
    body {
        min-width: 1024px;
    }

    .forSP {
        display: none;
    }
}

@media screen and (max-width:767px) {
    .forPC {
        display: none !important;
    }
}

.dn {
    display: none;
}
.hidden{
	visibility: hidden;
}
.wh100 {
    display: block;
    height: 100%;
    width: 100%;
}

@media print {
    html .no_print {
        display: none !important;
    }
}

/*-----------------------------------------------------------------------------* ヘッダー #header  */
#header {
    position: fixed;
    width: auto;
    z-index: 9999;
    background: #111;
    background: rgba(0,0,0,0.6);
    box-shadow: 0 0px 20px rgba(0, 0, 0, 0.6);
    left: 0;
    top: 0;
    right: 0;
    /* border-bottom: rgba(243, 220, 127, 0.2) 1px solid; */
}

#header_f {
    position: relative;
    height: 78px;
    /* max-width: 1024px; */
    max-width: 1100px;
    margin: 0 auto;
    /* position: fixed; */
}

#header_logo {
    position: absolute;
    left: 10px;
    top: 15px;
}

#header_nav {
    float: right;
    text-align: right;
    overflow: hidden;
}

.nav_block {
    float: left;
}

.nav_title {
    position: relative;
    display: block;
    font-size: 14px;
    height: 78px;
    line-height: 78px;
    font-weight: bold;
    color: #f1f1f1;
    text-align: center;
    padding: 0 15px;
    letter-spacing: 1px;
    /*border-left:#d1ccc6 1px solid;*/
    /*border-left:rgba(10,9,7,0.07) 1px solid;*/
    -webkit-font-smoothing: antialiased;
}

.nav_title a {
    -webkit-font-smoothing: antialiased;
    position: relative;
    z-index: 10000;
}

.ie .nav_title:hover, .ie .nav_title.on {
    background: #b7b4b0;
}

.nav_title:hover {
    opacity: 1;
}

.nav_title.visit {
    background-color: #fff;
    background-color: rgba(255, 255, 255, 0.3);
}

.nav_title .over {
    opacity: 0.4;
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    padding: 0;
    background: rgba(223, 203, 49, 0.6);
    background-size: 100% 100%;
    -webkit-transform: translate3d(0px, -100%, 0px);
    -moz-transform: translate3d(0px, -100%, 0px);
    -o-transform: translate3d(0px, -100%, 0px);
    -ms-transform: translate3d(0px, -100%, 0px);
    transform: translate3d(0px, -100%, 0px);
    -webkit-transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
    -moz-transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
    -ms-transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
    -o-transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
    transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
}

.nav_title:hover .over {
    -webkit-transform: translate3d(0px, 0px, 0px);
    -moz-transform: translate3d(0px, 0px, 0px);
    -o-transform: translate3d(0px, 0px, 0px);
    -ms-transform: translate3d(0px, 0px, 0px);
    transform: translate3d(0px, 0px, 0px);
}

.nav_title.visit .over {
    -webkit-transform: translate3d(0px, -100%, 0px);
    -moz-transform: translate3d(0px, -100%, 0px);
    -o-transform: translate3d(0px, -100%, 0px);
    -ms-transform: translate3d(0px, -100%, 0px);
    transform: translate3d(0px, -100%, 0px);
}

.nav_title.visit {
    background: rgba(223, 203, 49, 0.97);
       background-size: 100% 100%;
    color: #000;
    opacity: 0.8;
}

.ie .nav_title .over {
    display: none;
}

.nav_title span {
    white-space: nowrap;
    display: inline-block;
}

.nav_title span.l1 {
    padding-top: 8px;
}

.nav_title .nav_gym_i {
    padding-left: 16px;
    margin-left: -2px;
}

#sec_nav {
    z-index: 1002;
    overflow: hidden;
}

.nav_con {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    padding: 98px 0 27px;
    background: #433f3d;
    background: rgba(67, 63, 61, 0.94);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    text-align: center;

    -webkit-transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
    -moz-transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
    -ms-transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
    -o-transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
    transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
    -webkit-transform: translate3d(0px, -100%, 0px);
    -moz-transform: translate3d(0px, -100%, 0px);
    -o-transform: translate3d(0px, -100%, 0px);
    -ms-transform: translate3d(0px, -100%, 0px);
    transform: translate3d(0px, -100%, 0px);
}

.nav_con_t {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    padding: 54px 0 0;
    margin: -1px 0 0;
    background: #433f3d;
    background: rgba(67, 63, 61, 0.94);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    text-align: center;
}

.nav_con.on {
    -webkit-transform: translate3d(0px, 0px, 0px);
    -moz-transform: translate3d(0px, 0px, 0px);
    -o-transform: translate3d(0px, 0px, 0px);
    -ms-transform: translate3d(0px, 0px, 0px);
    transform: translate3d(0px, 0px, 0px);
}

.ie .nav_con {
    display: none;
}

.ie .nav_con.on {
    display: block;
}

.nav_con a {
    display: inline-block;
    margin: 0 12px 20px;
    vertical-align: top;
}

.nav_con_t a {
    display: inline-block;
    margin: 1px 1px 0 0;
    vertical-align: top;
}

.ie .nav_con a {
    zoom: 1
}

.nav_con a span {
    display: block;
}

#nav_gym.nav_con a span {
    text-align: center;
    display: inline-block;

}

#nav_gym.nav_con a span.snum {
    margin: -1px 0 0 5px;
    background: rgba(0, 0, 0, 0.3);
    display: inline-block;
    padding: 4px 6px;
    font-size: 11px;
    border-radius: 3px;
    color: #aa9;
}

.nav_thumb {
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.4);
    margin: 0 auto 9px;
    max-width: 180px;
}

.nav_t {
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: bold;
    color: #fff;
    font-size: 23px;
    margin-bottom: 6px;
    letter-spacing: 1px;
    -webkit-font-smoothing: antialiased;
}

#itchokusen_bnr .nav_t {
    letter-spacing: 0;
}

.nav_t2 {
    color: #dad6a9;
    opacity: 0.7;
    font-weight: bold;
    font-size: 11px;
    line-height: 1.3;
}

.nav_text {
    color: #dad6a9;
    background: #333;
    background: rgba(0, 0, 0, 0.2);
    padding: 60px 20px;
    font-size: 13px;
    letter-spacing: 0;
    margin: 0;

}

.nav_block.contact .nav_title {
    background: #dbc310;
    line-height: 1.3;
    font-weight: bold;
    padding: 0 20px;
    font-size: 14px;
    border-left: rgba(10, 9, 7, 0.16) 1px solid;
    letter-spacing: 1px;
    width: auto;
    -webkit-font-smoothing: antialiased;
}

#nav_course {
    text-align: center;
}

#nav_gym {
    text-align: right;
}

#nav_contact {
    background: #7c6305;
    background: rgba(98, 85, 44, 0.92);
    padding: 72px 0 0px;
    text-align: right;
}

#nav_contact a {
    height: 64px;
    line-height: 64px;
}

#nav_contact a.nav_wf {
    margin-right: 20px;
    margin-left: 0px;
}

#nav_contact a.nav_tel {}

#nav_contact .nav_text {
    padding: 0 20px;
    background: #fff;
    color: #a08600;
    font-weight: bold;
    opacity: 0.9;
    box-shadow: 0 1px 8px rgba(0, 0, 0, 0.4);
}

#nav_contact .nav_tel .nav_text {
    font-size: 24px;
    font-family: 'Roboto Condensed', sans-serif;
    -webkit-font-smoothing: antialiased;
}

#nav_contact .nav_tel .nav_text.note, #nav_contact .nav_tel .note {
    font-size: 12px;
    display: inline;
    line-height: 1;
    padding-left: 0.5em;
}

#nav_contact .nav_wf .nav_text {
    font-size: 15px;
}

#nav_sp-contact_btns {
    display: none;
}

.nav_title {
    padding: 0 20px;
    letter-spacing: 1px;
    /* min-width:100px; */
}

.nav_block.contact {
    width: 240px;
}

.nav_block.contact .nav_title {
    /* padding:0 30px; */
    /* font-size:13px; */
}

.nav_title span.l1 {
    padding-top: 10px;
}

.badge, #header .badge, .list_text h2 span.badge {
    background: #a08600;
    color: #efebd9;
    display: inline-block;
    padding: 3px;
    font-size: 80%;
    font-weight: bold;
    font-family: 'Roboto Condensed', sans-serif;
    height: auto;
    line-height: 1.1;
    vertical-align: middle;
    margin: -2px -2px 0 2px;
    border-radius: 2px;
    letter-spacing: 1px;
}

@media screen and (min-width: 768px) {
    body .list_text h2 span.badge, body.tab .list_text h2 span.badge {
        position: absolute;
        left: -10px;
        top: 10px;
        font-size: 12px;
        padding: 3px 6px;
    }
  }

#header .badge {
    padding-left: 4px;
}

#header #sec_nav .badge {
    letter-spacing: 1px;
    margin: -5px -2px -2px 2px;

}

#header #sec_nav .nav_t .badge {
    font-size: 12px;
    margin-left: 6px
}

#contents .badge {
    letter-spacing: 2px;
    font-size: 60%;
    margin: -5px -2px 0 8px;
    padding: 5px 8px 5px 10px;

}

/*
body.index #header{
	position:absolute;
	width:100%;
	top: 690px;
	left:0;
	box-shadow: none;
}
body.index #header_nav{
	float:none;
	text-align: center;
	overflow:hidden;
}
body.index .nav_block{
	float:none;
	display:inline-block;
}
body.index.ie .nav_block{
	zoom:1;
}
body.index #header_logo{
	display:none;
}
#top_h_logo{
	position:absolute;
	left:10px;
	top:5px;
}
*/
#top_h_logo {
    display: none;
}

@media screen and (max-width:767px) {
    #header, body.index #header {
        position: fixed;
        width: 100%;
        height: 44px;
        top: 0;
        left: 0;
        box-shadow: none;
        background: rgba(0, 0, 0, 0.8);
    }

    #sec_nav {
        /* display:none; */
    }

    #second_header {
        font-size: 24px;
        padding: 48px 0 4px 12px;
    }

    #header_f {
        height: 44px;
    }
    
    #header_logo {
        position: absolute;
        left: 0;
        top: 0;
    }

    #header_logo img {
        display: none;
    }

    #header_logo a {
        display: block;
        width: 250px;
        height: 44px;
        background: url(/grandprix/2018/images/header_logo.png) 0 center no-repeat;
        background-size: auto 80%;
    }

    #sp_nav {
        float: right;
        overflow: hidden;
    }

    #sp_nav a {
        float: left;
        display: block;
        height: 44px;
        width: 44px;
        /* border-left: rgba(0, 0, 0, 0.3) 1px solid; */
        /* background:#fff; */
    }

    #sp_nav a#nav_sp-contact {
        width: 142px;
        background-image: url(/grandprix/2018/images/header_nav_sp_contact.png);
    }

    #nav_sp-contact_btns {
        display: block;
        position: absolute;
        top: 44px;
        left: 0;
        right: 0;
        overflow: hidden;
    }

    #nav_sp-contact_btns-inner {
        background: rgba(47, 43, 41, 0.95);
        -webkit-transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
        -moz-transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
        -ms-transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
        -o-transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
        transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
        -webkit-transform: translate3d( 0px, -100%, 0px);
        -moz-transform: translate3d( 0px, -100%, 0px);
        -o-transform: translate3d( 0px, -100%, 0px);
        -ms-transform: translate3d( 0px, -100%, 0px);
        transform: translate3d( 0px, -100%, 0px);
    }

    #nav_sp-contact_btns.on #nav_sp-contact_btns-inner {
        -webkit-transform: translate3d(0px, 0px, 0px);
        -moz-transform: translate3d(0px, 0px, 0px);
        -o-transform: translate3d(0px, 0px, 0px);
        -ms-transform: translate3d(0px, 0px, 0px);
        transform: translate3d(0px, 0px, 0px);
    }

    #nav_sp-contact_btns-inner img {
        width: 100%;
        height: auto;
    }


	#sp_nav #nav_sp_4{
	  display: block;
		width:50px;
		height: 43px;
		background-size:100% 100%;
		position:absolute;
		top:0px;
		right:2px;
		background: none;
  }
	#nav_sp_4 span,#nav_sp_4:after,#nav_sp_4:before{
		content:" ";
		display:block;
		position: absolute;
		left: 12px;
		right:12px;
		height: 1px;
		background:rgba(226, 229, 189, 0.67); 
		-webkit-transition: all 0.2s ease-out;
		-moz-transition: all 0.2s ease-out;
		-o-transition: all 0.2s ease-out;
		-ms-transition: all 0.2s ease-out;
		transition: all 0.2s ease-out;
	}
	#nav_sp_4:before{
		top:12px;
		-webkit-transform-origin: 0 0;
		-moz-transform-origin: 0 0;
		-o-transform-origin: 0 0;
		transform-origin: 0 0;

	}
	#nav_sp_4 span{
		top:50%;
		margin-top:-1px
	}
	#nav_sp_4:after{
		top:auto;
		bottom:12px;
		-webkit-transform-origin: 0 100%;
		-moz-transform-origin: 0 100%;
		-o-transform-origin: 0 100%;
		transform-origin: 0 100%;

  }
  #nav_sp_4.on {
	z-index: 10002;
	
	 }
	
	#nav_sp_4.on span,#nav_sp_4.on:after,#nav_sp_4.on:before{
		/* background:rgba(0,0,0,0.3); */
	}
	#nav_sp_4.on:before{
		transform: rotate(45deg);
}
	#nav_sp_4.on span{
		left:50%;
		right:50%;
	}
	#nav_sp_4.on:after{
		transform: rotate(-45deg);
  }

    #header_nav {
        float: none;
        text-align: left;
        overflow: hidden;
        position: absolute;
        width: 100%;
        top: 44px;
        left: 50px;
        z-index: 9999;
        background: rgba(47, 43, 41, 0.95);
        -webkit-transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
        -moz-transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
        -ms-transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
        -o-transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
        transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
        -webkit-transform: translate3d(100%, 0px, 0px);
        -moz-transform: translate3d(100%, 0px, 0px);
        -o-transform: translate3d(100%, 0px, 0px);
        -ms-transform: translate3d(100%, 0px, 0px);
        transform: translate3d(100%, 0px, 0px);
    }

    #header_nav.on {
        -webkit-transform: translate3d(0px, 0px, 0px);
        -moz-transform: translate3d(0px, 0px, 0px);
        -o-transform: translate3d(0px, 0px, 0px);
        -ms-transform: translate3d(0px, 0px, 0px);
        transform: translate3d(0px, 0px, 0px);
    }

    /*
    	#header_nav.on:after{
    		content:" ";
    		display:block;
    		width:44px;
    		height:44px;
    		background:url(/images/icon_menu_close.png) #999;
    		border-left:rgba(0,0,0,0.2) 1px solid;
    		background-size:44px auto;
    		position:absolute;
    		top:-44px;
    		right:90px;
    		z-index:10000000;

    	}
    	*/
    #header_nav.sc {
        overflow-y: scroll;
    }

    .nav_block, .nav_block.contact {
        float: none;
        display: block;
        width: auto;
    }

    .nav_title, .nav_block.contact .nav_title, .nav_title#n8 {
        position: relative;
        display: block;
        font-size: 14px;
        height: auto;
        width: auto;
        max-width: none;
        line-height: 1;
        color: #f6f6f6;
        text-align: center;
        padding: 20px 15px 21px 40px;
        letter-spacing: 1px;
        border: none;
        border-bottom: rgba(10, 9, 7, 0.1) 1px solid;
        background: 14px center no-repeat rgba(255, 255, 255, 0.1);
        background-size: auto 100%;
        text-align: left;
        -webkit-font-smoothing: antialiased;
    }

    .nav_title:hover {
        opacity: 1;
    }

    .nav_title.visit {
        opacity: 0.6;

        background-color: #a94;
        background-size: auto 100%;
    }

    .nav_title .over {
        display: none;
    }

    .nav_title:hover .over, .nav_title.on .over {}

    .ie .nav_title .over {}

    .nav_title span {
        display: block;
        white-space: normal;
    }

    .nav_title span.l1 {
        padding: 0 0 4px;
    }

    .nav_title .nav_gym_i {
        padding-left: 0;
        background: none;
        margin-left: 0;
        -webkit-font-smoothing: antialiased;
    }


    .nav_block.contact .nav_title {
        font-size: 13px;
        font-weight: normal;
        letter-spacing: 1px;
    }

    #sec_nav {}

    .nav_con {
        z-index: 1004;
        margin: 0;
        padding: 0;
        float: none;
        text-align: left;
        overflow: hidden;
        position: absolute;
        width: 100%;
        top: 44px;
        left: 0;
        background: rgba(47, 43, 41, 0.96);
        -webkit-transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
        -moz-transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
        -ms-transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
        -o-transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
        transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
        -webkit-transform: translate3d(100%, 0px, 0px);
        -moz-transform: translate3d(100%, 0px, 0px);
        -o-transform: translate3d(100%, 0px, 0px);
        -ms-transform: translate3d(100%, 0px, 0px);
        transform: translate3d(100%, 0px, 0px);
    }

    .nav_con.on {
        -webkit-transform: translate3d(0px, 0px, 0px);
        -moz-transform: translate3d(0px, 0px, 0px);
        -o-transform: translate3d(0px, 0px, 0px);
        -ms-transform: translate3d(0px, 0px, 0px);
        transform: translate3d(0px, 0px, 0px);
    }

    .nav_con_t {}

    .ie .nav_con {
        display: none;
    }

    .ie .nav_con.on {
        display: block;
    }

    .nav_con a {
        position: relative;
        display: block;
        font-size: 17px;
        height: 60px;
        width: auto;
        line-height: 1;
        color: #f6f6f6;
        text-align: center;
        padding: 0;
        margin: 0;
        font-weight: normal;
        letter-spacing: 2px;
        border: none;
        border-bottom: rgba(0, 0, 0, 0.1) 1px solid;
        background: rgba(255, 255, 255, 0.1);
        background-size: 36px;
        text-align: left;
        -webkit-font-smoothing: antialiased;
        overflow: hidden;
    }

    .nav_con_t a {}

    .ie .nav_con a {}

    .nav_con a span {}

    .nav_con a .nav_thumb {
        float: left;
        margin: 0 10px 0 0;
        box-shadow: none;
    }

    .nav_con a .nav_thumb img {
        width: auto;
        height: 60px;
    }

    .nav_t {
        font-size: inherit;
        padding-top: 11px;
        white-space: nowrap;
    }

    .nav_t2 {
        font-weight: normal;
        letter-spacing: 1px;
    }

    .nav_text {}
}

.anotation {
    font-weight: bold;
    background: #f1ebdd;
    padding: 12px;
    font-size: 13px;
    color: #cc0000;
}

/*-----------------------------------------------------------------------------* フッター #footer  */

#next_bnr {
    background: #2a2514;
    background-size: 90% 1px;
    margin: 0;
    padding: 40px 0 40px;
    position:relative;
}
#next_bnr:before{
    display:block;
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:1px;
    content:"";
    background: rgba(223, 203, 49, 0.22);
    box-shadow: 0 0 10px 0 rgba(226, 236, 60, 0.2);
}


#next_bnr .next_btn {
    display: block;
    margin: 0 auto;
    height: 144px;
    width: 600px;
    text-align: center;
    background: url(/grandprix/2018/images/next_btn_bg.png);
}

.btn_should {
    display: block;
    font-family: 'Roboto Condensed', sans-serif;
    color: #594403;
    letter-spacing: 2px;
    font-size: 23px;
    padding: 40px 0 10px;
    text-shadow: 0 1px 8px rgba(255, 255, 255, 0.3);
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 10px rgba(255, 255, 255, 0.2);
}

.btn_title {
    display: block;
    color: #fff;
    letter-spacing: 1px;
    font-size: 20px;
    font-weight: normal;
    text-shadow: 0 1px 8px rgba(0, 0, 0, 0.3);
}

#footer_bnrs {
    background: url(..//grandprix/2018/images/line_shadow.png) 0 0 repeat-x #e8e6e4;
    background-size: 100% 3px;
    padding: 45px 0;
    /* 	box-shadow: 0 0 3px rgba(0,0,0,0.1) inset; */
    overflow: hidden;
}

#footer_bnrs_inner {
    /* max-width:1200px; */
    margin: 0 -10px;
    position: relative;
    text-align: center;
}

#footer_bnrs_inner a {
    display: inline-block;
    margin: 20px;
}

.ie #footer_bnrs_inner a {
    zoom: 1;
}

#footer {
    background: #1f1c1f;
    background-size: 100% 3px;
    padding: 70px 15px 65px;
    position: relative;
}
#footer:before{
    display:block;
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:1px;
    content:"";
    background: rgba(255, 255, 255, 0.2);
    box-shadow: 0 0 10px 0 rgba(255, 255, 255, 0.1);
}


#footer_inner {
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
}

#footer_links {}

.f_links {
    text-align: left;
    font-size: 13px;
    color: #dad6a9;
    padding: 0;
    margin: 0;
    text-align: center;
    /* line-height: 2.3; */
}

#footer_bnr{
    text-align:center;
    padding:40px 0 0;
}
#footer_bnr a{
    box-shadow:0 5px 10px rgba(0,0,0,0);
}

#movie_link {
    text-align: center;
    margin: 10px auto 40px;
}

#movie_link a {
    cursor: pointer;
}

.f_links a {
    padding: 7px 0;
    opacity: 0.8;
    font-size: inherit;
    color: inherit;
    line-height: inherit;
}

.f_links a:hover {
    opacity: 1;
    text-decoration: underline;
}

.f_links p {
    font-size: inherit;
    color: inherit;
    text-align: center;
    line-height: inherit;
    /* white-space: nowrap; */
}

.f_links p a {
    display: inline-block;
    margin: 0;
    padding:0 8px;
}

.ie .f_links p a {
    zoom: 1;
}

#copyright {
    padding-top: 40px;
}

#footer_logo {
    display: block;
    margin: 0 auto 15px;
}

#footer_k_logo {
    display: block;
    margin: 0 auto 7px;
}

#copyright p {
    text-align: center;
    line-height: 1.5;
    color: #666;
    font-size: 11px;
}

#copyright p.cr {
    margin-top: 8px;
}

#noscript {
    position: fixed;
    left: 0;
    bottom: 0;
    background: #E54D50;
    background: rgba(224, 16, 16, 0.88);
    color: #FFF;
    padding: 10px;
    max-width: 500px;
    font-size: 11px;
    line-height: 1.4;
}

@media screen and (max-width:767px) {
    #movie_link {
        text-align: center;
        margin: 0;
        border-bottom: #333 1px solid
    }

    #movie_link a {
        cursor: pointer;
    }

    #movie_link a img {
        width: 100%;
        height: auto;
    }

    .f_links p a {
        display: block;
        padding: 20px 0;
        opacity: 0.8;
        font-size: inherit;
        color: inherit;
        line-height: inherit;
        border-bottom: #333 1px solid;
    }

    .f_links span {
        display: none;
    }

    #next_bnr {
        /* background: url(/grandprix/2018/images/line.png) center 0 no-repeat; */
        background-size: 90% 1px;
        margin: 0;
        padding: 30px 0;
    }

    #next_bnr .next_btn {
        display: block;
        margin: 0 auto;
        height: 100px;
        width: 320px;
        text-align: center;
        background-size: 346px 100px;
        background-repeat: no-repeat;

        background-position: center center;
    }

    .btn_should {
        display: block;
        font-family: 'Roboto Condensed', sans-serif;
        color: #594403;
        letter-spacing: 1px;
        font-size: 15px;
        padding: 28px 0 8px;
        text-shadow: 0 1px 8px rgba(255, 255, 255, 0.3);
        text-shadow: 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 10px rgba(255, 255, 255, 0.2);
    }

    .btn_title {
        display: block;
        color: #fff;
        letter-spacing: 1px;
        font-size: 16px;
        font-weight: normal;
        text-shadow: 0 1px 8px rgba(0, 0, 0, 0.3);
    }

    #footer {
        padding: 0;
    }

    #footer_bnrs {
        background: url(/images/line_shadow.png) 0 0 repeat-x #e8e6e4;
        background-size: 100% 3px;
        padding: 10px 15px;
        overflow: hidden;
    }
    #footer_bnr{
        text-align:center;
        padding:20px 0 0;
    }
    #footer_bnr img{
        width:90%;
        max-width:310px;
        height:auto;
    }

    #footer_bnrs_inner {
        margin: 0;
        position: relative;
        text-align: center;
    }

    #footer_bnrs_inner a {
        display: block;
        margin: 4px 0;
        background: #fff;
    }

    #footer_bnrs_inner a img {
        width: 100%;
        height: auto;
    }

    #fbnrs_bottom {
        width: auto;
    }

    #fbnrs_bottom .bnr {
        max-width: 100%;
        margin: 0 0 4px;
    }

    #footer_links {
        padding: 0;
        margin: 0;
    }

    #gym_links {
        display: none;
    }

    #content_links #main_contents {
        display: none;
    }

    #content_links #sp_contents {
        display: none;
    }

    #content_links {
        margin: 0;

        padding: 15px;
    }

    #content_links #sub_contents {
        margin: 0;
        padding: 10px 0 0;
        height: auto;
        min-height: 0;
        max-width: none;
        display: block;
        width: auto;
        float: none;
    }

    #content_links #sub_contents a {
        display: block;
        margin: 0;
        padding: 12px;
        height: auto;
        min-height: 0;
        width: auto;
        max-width: none;
        text-align: center;
        letter-spacing: 1px;
        border-bottom: rgba(0, 0, 0, 0.3) 1px solid;
    }

    #content_links #sub_contents a:first-child {
        border-top: rgba(0, 0, 0, 0.3) 1px solid;
    }

    #copyright {
        position: static;
        padding: 36px 0 30px;
    }

    #footer_logo {
        display: block;
        margin: 0 auto 14px;
    }

    #footer_k_logo {
        display: block;
        margin: 0 auto 8px;
    }

    #copyright p {
        text-align: center;
        line-height: 1.5;
        color: #666;
        font-size: 11px;
    }

    #copyright p.cr {
        margin-top: 12px;
    }
}

/*-----------------------------------------------------------------------------* ベース #container  */
#container {
    /* background:#f6f4f2; */
}

#container-inner {
}

#visual {
    height:600px;
}

.area_detail_1 #visual, .area_detail_2 #visual, .area_detail_3 #visual, .area_detail_4 #visual, .area_detail_5 #visual, .area_detail_6 #visual, .area_detail_7 #visual, .area_detail_8 #visual, .area_detail_9 #visual, .area_detail_10 #visual {
    height:444px;
}

.outline #visual {
    height:700px;
}

#visual-inner {
    position:fixed;
    left:0;
    right:0;
    top:0;
    height: 600px;
    /* min-height: 700px; */
    background-size: cover;
    /* background-color: #000; */
    background-repeat: no-repeat;
    background-position: center center;
    box-sizing: border-box;
}

.outline #visual-inner {
    height:700px;
}

.visual_title {
    position: absolute;
    left: 20%;
    top: 170px;
    display: none;
}

.area .v_title{
	padding:40px 0 0 290px;
}

.area_detail_ttl.visual_title {
	display:block;
	top:100px;
}

.v_read {
    font-size: 13px;
    text-align: center;
    letter-spacing: 1px;
    line-height: 2.8;
    -webkit-font-smoothing: subpixel-antialiased;
}

.outline .v_read {
    text-align:left;
    position:absolute;
    top:50%;
    padding: 30px 0 0 0;
    left:50%;
    opacity: 1;
    text-shadow: 0 0 0 rgba(0, 0, 0, 0.8);
    /* max-width: 45%; */
    margin: -10px 0 0-15px;
	line-height: 2.6;
}

.visual_title_s {
    color: #fff;
    font-weight: normal;
    font-size: 15px;
    opacity: 0.7;
    letter-spacing: 3px;
    text-align: center;
}

.area_detail_ttl .visual_title_s {
	color: #f0e596;
	font-size: 34px;
	text-align: left;
}

.visual_title_m {
    font-family: 'Roboto Condensed', sans-serif;
    color: #fff;
    font-size: 60px;
    letter-spacing: 1px;
    font-weight: normal;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
}

.area_detail_ttl .visual_title_m {
	color: #f0e596;
	font-size: 21px;
}

.winner1 #visual {
    height: 570px;
    background: url(/grandprix/2018/images/winner1_main.jpg) center 0 no-repeat #000;
}

.winner1 #visual, .winner2 #visual, .winner3 #visual, .finalists #visual {
    position: relative;
}

.finalists #visual-inner {
    opacity: 0;
    background-color: #dcc411;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
    cursor: pointer;
}

.ie.winner1 #visual-inner, .ie.winner2 #visual-inner, .ie.winner3 #visual-inner,
.ie.finalists #visual-inner {
    -ms-filter: "alpha(opacity=0)";
}

.winner1 #visual-inner:hover, .winner2 #visual-inner:hover, .winner3 #visual-inner:hover,
.finalists #visual-inner:hover {
    opacity: 0.2;
}

.ie.winner1 #visual-inner:hover, .ie.winner2 #visual-inner:hover,
.ie.winner3 #visual-inner:hover, .ie.finalists #visual-inner:hover {
    -ms-filter: "alpha(opacity=20)";
}

.winner2 #visual {
    height: 570px;
    background: url(/grandprix/2018/images/winner2_main.jpg) center 0 no-repeat #000;
}

.winner3 #visual {
    height: 570px;
    background: url(/grandprix/2018/images/winner3_main.jpg) center 0 no-repeat #000;
}

.outline #visual-inner {
    /* height: 90%; */
    background: url(/grandprix/2018/images/concept_bg.jpg) center 0 no-repeat;
}

.area #visual-inner {
    background: url(/grandprix/2018/images/area_bg.jpg) center 0 no-repeat;

}

.area_detail_1 #visual-inner {
    background: url(/grandprix/2018/images/area_d1_bg.jpg) center 0 no-repeat;

}
.area_detail_2 #visual-inner {
    background: url(/grandprix/2018/images/area_d2_bg.jpg) center 0 no-repeat;

}
.area_detail_3 #visual-inner {
    background: url(/grandprix/2018/images/area_d3_bg.jpg) center 0 no-repeat;

}
.area_detail_4 #visual-inner {
    background: url(/grandprix/2018/images/area_d4_bg.jpg) center 0 no-repeat;

}
.area_detail_5 #visual-inner {
    background: url(/grandprix/2018/images/area_d5_bg.jpg) center 0 no-repeat;

}
.area_detail_6 #visual-inner {
    background: url(/grandprix/2018/images/area_d6_bg.jpg) center 0 no-repeat;

}
.area_detail_7 #visual-inner {
    background: url(/grandprix/2018/images/area_d7_bg.jpg) center 0 no-repeat;

}
.area_detail_8 #visual-inner {
    background: url(/grandprix/2018/images/area_d8_bg.jpg) center 0 no-repeat;

}
.area_detail_9 #visual-inner {
    background: url(/grandprix/2018/images/area_d9_bg.jpg) center 0 no-repeat;

}
.area_detail_10 #visual-inner {
    background: url(/grandprix/2018/images/area_d10_bg.jpg) center 0 no-repeat;

}

.final #visual-inner {
    background: url(/grandprix/2018/images/final_bg.jpg) center 0 no-repeat;
}

.finalists #visual {
    height: 565px;
    background: url(/grandprix/2018/images/finalists_main.jpg) center 0 no-repeat #000;
}

.trainers #visual {
    height: 442px;
    background: url(/grandprix/2018/images/trainers_main.jpg) center 0 no-repeat #000;
}

div#movie_box {
    font-family: 'Roboto Condensed', sans-serif;
    color: #fff;
    font-size: 60px;
    letter-spacing: 1px;
    font-weight: normal;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
}

#contents {
    padding: 0 45px 80px;
    overflow: hidden;
    background: #1f1c1f;
    position: relative;
    box-shadow: 0 0 20px rgba(0,0,0,0.6);
}
#contents.area_contents {
	overflow:initial;
	/* background: url(/grandprix/2018/images/area_decision_bg.jpg) center 0 no-repeat; */
	/* width:1260px; */
}
.area_detail_1 #contents, .area_detail_2 #contents, .area_detail_3 #contents, .area_detail_4 #contents, .area_detail_5 #contents, .area_detail_6 #contents, .area_detail_7 #contents, .area_detail_8 #contents, .area_detail_9 #contents, .area_detail_10 #contents {
	overflow:initial;
}

#contents-inner {
    position: relative;
}

#contents.c1wide {}

#contents.c2wide {}

#contents.c2 {
    max-width: 1046px;
    margin: 0 auto;
}

#contents.c1 {
    /* max-width: 1024px; */
    margin: 0 auto;
    padding: 0;
}

body.ie #contents.c1 {
    width: 1024px;
}

#main {
    padding-top: 0;
    overflow: hidden;
    margin-right: 286px;
    text-align: center;
}

.c1wide #main {}

.c2wide #main {}

.c2 #main {}

.c1 #main {
    margin-right: 0;
}

.c1 img {
    max-width: 100%;
    height: auto;
}

#bottom_bnr_wrapper{
	height: 130px;
	position: relative;
	background: #111;
}
#bottom_bnr{
    background: rgba(0, 0, 0, 0.8);
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}

#bottom_bnr.fixed{
	position: fixed;
	bottom: 0;
    left: 0;
    right: 0;
	top: auto;
}
#bottom_bnr a, .wide_bnr{
	display: block;
	height: 130px;
	width: 740px;
	margin: 0 auto;
	background: center 0 no-repeat;
	box-shadow: 0 22px 30px rgba(0, 0, 0, 0.5);
}
#bottom_bnr #bnr_kanran, .wide_bnr#bnr_kanran{
	background-image: url(/grandprix/2018/images/bnr_visitors.jpg);
}
#bottom_bnr #bnr_entry, .wide_bnr#bnr_entry{
	background-image: url(/grandprix/2018/images/bnr_entry.jpg);
}

#bottom_bnr_wrapper.area_bb{
	height: 60px;
	background: #1f1c1f;
}
.area_bb #bottom_bnr{
}
.area_bb #bottom_bnr a{
	box-shadow: none;
	display: inline-block;
	height: 35px;
	width: 35px;
	background-size: 100% auto;
	margin: 0 5px;
}
.area_bb #bottom_bnr_inner.close{
	display:none ;
}
.area_bb #bottom_bnr_inner{
	display:block;
	height: 47px;
	/* position:absolute; */
	width:100%;
	margin: 0;
	top:0;
	left:0;
	background: #f8eb27;
	text-align: center;
	padding-top: 13px;
	box-shadow: 0 0 10px rgba(103, 95, 0, 0.72);
}
.area_bb a#sns_btn{
		display:block;
		background: #f8eb27;
		width:80px;
		height: 60px;
		position:absolute;
		bottom: 0;
		left: 50%;
		margin-left: -150px;
		color: #000;
		font-weight: bold;
		line-height: 60px;
		text-align: center;
		font-size:12px;
		opacity:0.6;
}
.area_bb a#sns_btn.opened{
		bottom: 0;
}
#bottom_bnr #fb{
	background-image: url(/grandprix/2018/images/icon_fb.png);
}
#bottom_bnr #twitter{
	background-image: url(/grandprix/2018/images/icon_twitter.png);
}
#bottom_bnr #line{
	background-image: url(/grandprix/2018/images/icon_line.png);
}
#bottom_bnr #insta{
	background-image: url(/grandprix/2018/images/icon_insta.png);
}


@media screen and (max-height:599px) {
    #bottom_bnr_wrapper,#bottom_bnr a{
        height: 110px;
        height: calc(100vh - 455px);
        background-size:auto 100%;
        min-height: 80px;
    }
}



@media screen and (max-width:767px) {
    #container {
        /* margin-top:44px; */
    }

    #main {
        padding-top: 0;
        overflow: hidden;
        margin: 0;
        text-align: center;
    }

    body.index #main {
        padding-top: 0;
        border-top: #000 1px solid;
        position: relative;
    }

    #visual {
        height:auto;
        padding:100% 0 0;
        /* background-color: #000; */
    }
    #visual {
        height:auto;
        padding:130% 0 0;
        background-color: none;
    }
    #visual-inner {
        height: auto;
        padding:100% 0 0;
    }
    .outline #visual-inner {
        padding:0;
    }

	.area_detail_1 #visual, .area_detail_2 #visual, .area_detail_3 #visual, .area_detail_4 #visual, .area_detail_5 #visual, .area_detail_6 #visual, .area_detail_7 #visual, .area_detail_8 #visual, .area_detail_9 #visual, .area_detail_10 #visual {
        height:auto;
        padding:108% 0 0;
	}
	
    .final #visual {
        height:auto;
        padding:116.5% 0 0;
    }
	
    .visual_title {
    /* position: static; */
    /* padding: 100% 0 0; */
    }

	.area .v_title{
		padding:30px 0 0 30px;
	}

	.area_detail_ttl.visual_title {
		top:45px;
		left:35px;
	}

	.area_detail_ttl .visual_title_m {
		font-size: 13px;
		text-shadow: 0 0 5px #000;
	}

	.area_detail_ttl .visual_title_s {
		font-size: 21px;
		text-shadow: 0 0 8px #000;
	}

    .v_read {
        font-size: 13px;
        text-align: center;
        letter-spacing: 1px;
    }

    .outline .v_read {
        /* padding-top: 370px; */
        opacity: 0.8;
        text-shadow: 0 0 0 rgba(0, 0, 0, 0.8);
        padding: 26px 30px 30px;
        line-height: 2;
        text-align: justify;
        top: auto;
        left: auto;
        bottom: 0;
        position: static;
    }

	.area .v_read {
		font-size: 13px;
		padding:15px 0 0 30px;
		line-height:1.9;
		opacity: 1;
		text-shadow: 0 0 0 rgba(0, 0, 0, 0.8);
	}


    .visual_title_s {
        color: #fff;
        font-weight: normal;
        font-size: 15px;
        opacity: 0.7;
        letter-spacing: 3px;
        text-align: center;
    }

    .visual_title_m {
        font-family: 'Roboto Condensed', sans-serif;
        color: #fff;
        font-size: 60px;
        letter-spacing: 1px;
        font-weight: normal;
        line-height: 1;
        -webkit-font-smoothing: antialiased;
    }

    .winner1 #visual {
        height: 400px;
        background: url(/grandprix/2018/images/winner1_main_sp.jpg) center 0 no-repeat #000;
        background-size: auto 400px;
    }

    .winner2 #visual {
        height: 400px;
        background: url(/grandprix/2018/images/winner2_main_sp.jpg) center 0 no-repeat #000;
        background-size: auto 400px;
    }

    .winner3 #visual {
        height: 400px;
        background: url(/grandprix/2018/images/winner3_main_sp.jpg) center 0 no-repeat #000;
        background-size: auto 400px;
    }

    .index #visual {
        height: 0;
		padding:51% 0;
		width:auto;
        background: url(/grandprix/2018/images/top_img_gp2_sp.jpg) center 0 no-repeat;
        background-size: 100% auto;
        background-color: #000;
    }

    .outline #visual {
        background:none;
        height: auto;
        padding: 100% 0 0;
    }
    .outline #visual-inner {
        position: static;
        background:none;
        /* padding: 100% 0 30px; */
        height: auto;
    }
    .outline .visual_title{
        display:block;
        background: url(/grandprix/2018/images/concept_bg_sp.jpg) center 0 no-repeat;
        position:absolute;
        position:fixed;
        top:0;
        left:0;
        right:0;
        padding:100% 0 0;
        background-size:100% auto;
    }
    .outline .visual_title .visual_title_m,.outline .visual_title .visual_title_s{
        display:none;

    }
    .outline .v_read {
        padding: 30px 26px;
        /* position: absolute; */
        background: rgba(0,0,0,0.95);
        margin: 0;
    }

	.area #visual-inner{
		background: url(/grandprix/2018/images/area_bg_sp.jpg) center 0 no-repeat;
		background-size: 100% auto;
		padding: 130% 0 0;
	}
	.area_detail_1 #visual-inner{
		background: url(/grandprix/2018/images/area_d1_bg_sp.jpg) center 0 no-repeat;
		background-size: 100% auto;
		padding: 130% 0 0;
	}
	.area_detail_2 #visual-inner{
		background: url(/grandprix/2018/images/area_d2_bg_sp.jpg) center 0 no-repeat;
		background-size: 100% auto;
		padding: 130% 0 0;
	}
	.area_detail_3 #visual-inner{
		background: url(/grandprix/2018/images/area_d3_bg_sp.jpg) center 0 no-repeat;
		background-size: 100% auto;
		padding: 130% 0 0;
	}
	.area_detail_4 #visual-inner{
		background: url(/grandprix/2018/images/area_d4_bg_sp.jpg) center 0 no-repeat;
		background-size: 100% auto;
		padding: 130% 0 0;
	}
	.area_detail_5 #visual-inner{
		background: url(/grandprix/2018/images/area_d5_bg_sp.jpg) center 0 no-repeat;
		background-size: 100% auto;
		padding: 130% 0 0;
	}
	.area_detail_6 #visual-inner{
		background: url(/grandprix/2018/images/area_d6_bg_sp.jpg) center 0 no-repeat;
		background-size: 100% auto;
		padding: 130% 0 0;
	}
	.area_detail_7 #visual-inner{
		background: url(/grandprix/2018/images/area_d7_bg_sp.jpg) center 0 no-repeat;
		background-size: 100% auto;
		padding: 130% 0 0;
	}
	.area_detail_8 #visual-inner{
		background: url(/grandprix/2018/images/area_d8_bg_sp.jpg) center 0 no-repeat;
		background-size: 100% auto;
		padding: 130% 0 0;
	}
	.area_detail_9 #visual-inner{
		background: url(/grandprix/2018/images/area_d9_bg_sp.jpg) center 0 no-repeat;
		background-size: 100% auto;
		padding: 130% 0 0;
	}
	.area_detail_10 #visual-inner{
		background: url(/grandprix/2018/images/area_d10_bg_sp.jpg) center 0 no-repeat;
		background-size: 100% auto;
		padding: 130% 0 0;
	}

	.final #visual-inner{
		background: url(/grandprix/2018/images/final_bg_sp.jpg) center 0 no-repeat;
		background-size: 100% auto;
		padding: 116.5% 0 0;
	}

    .finalists #visual {
        height: 380px;
        background: url(/grandprix/2018/images/finalists_main_sp.jpg) center 0 no-repeat #000;
        background-size: auto 380px;
    }

    .trainers #visual {
        height: 300px;
        background: url(/grandprix/2018/images/trainers_main_sp.jpg) center 0 no-repeat #000;
        background-size: auto 300px;
    }

	#contents.area_contents {
		/* background: url(/grandprix/2018/images/area_decision_bg_sp.jpg) center 0 no-repeat; */
		/* background-size:100% auto; */
		/* width:100%; */
		/* max-width: 420px; */
	}
	
	
    #bottom_bnr_wrapper{
		height: auto;
		padding-top: 23.16%;
		min-height: 0;
	}
    
	#bottom_bnr a, .wide_bnr{
		height: auto;
		min-height:0;
		background: center 0 no-repeat;
		background-size: 100% 100%;
		width: auto;
		padding-top: 23.16%;
	}
	#bottom_bnr #bnr_kanran, .wide_bnr#bnr_kanran{
		background-image: url(/grandprix/2018/images/bnr_visitors_sp.jpg);
	}
	#bottom_bnr #bnr_entry, .wide_bnr#bnr_entry{
		background-image: url(/grandprix/2018/images/bnr_entry_sp.jpg);
	}
	
	
	#bottom_bnr_wrapper.area_bb{
		padding-top: 0;
		height: 46px;
	}
	.area_bb #bottom_bnr_inner{
	    height: 40px;
	    padding-top: 6px;
	}
	.area_bb #bottom_bnr a{
		padding-top: 0;
		height: 46px;
		line-height:46px;
	}
	.area_bb a#sns_btn{
	}
	
}




/*-----------------------------------------------------------------------------* サイド #side */

#side {
    position: absolute;
    right: 0;
    top: 0;
    width: 256px;
    padding-top: 60px;
}

.side_content {
    margin: 0 0 30px 0;
}

.side_content h2 {
    color: #806868;
    font-size: 14px;
    margin-bottom: 10px;
}

.side_bnrs {
    margin: 0 0 15px 0;
}

.side_bnrs .bnr {
    margin: 0 0 20px 0;
    display: block;
}

.side_bnrs .txt_bnr {
    background: #fff;
    text-align: center;
    padding: 15px 8px;
}

.side_bnrs .txt_bnr span {
    display: block;
}

body.recipe.index #side {
    top: 74px;
}

.shoulder {
    font-size: 13px;
    display: block;
    text-align: inherit;
    padding: 5px;
}

.en_title {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 26px;
    letter-spacing: 1px;
    font-weight: normal;
    line-height: 1.1;
    -webkit-font-smoothing: antialiased;
    padding: 2px;
}

.sec_title {
    font-size: 13px;
    font-weight: bold;
    color: #806868;
    line-height: 1.4;
    padding: 5px;
}

/*-----------------------------------------------------------------------------* 1カラム c1wide */
.w_content {
    background-size: cover;
    background-position: center center;
    padding: 0;
    max-width: none;
    margin: 0 auto;
}

.wc_inner {
    position: relative;
    overflow: hidden;
}

.wc_title {
    font-family: 'Roboto Condensed', sans-serif;
    letter-spacing: 0;
    font-weight: bold;
    -webkit-font-smoothing: antialiased;
    font-size: 40px;
    padding: 0 0 20px;
    line-height: 0.9;
}

.content_title {
    height: auto;
    line-height: auto;
    color: #413e05;
    font-size: 16px;
    letter-spacing: 4px;
    font-weight: bold;
    margin-top: 0;
    background: #dfcb31;
    padding: 10px;
    box-shadow: 0 0 18px 0 rgba(226, 236, 60, 0.2);
    /* text-shadow: 0 4px 8px rgba(128, 129, 32, 0.6); */
}

.read {
    text-align: center;
    padding: 20px 0 0;
    font-weight: bold;
    letter-spacing: 1px;
    font-size: 15px;
}

.wc_title.jp {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.wc_read {
    /* color:#999; */
    font-size: 16px;
    padding: 0 0 26px;
    margin-top: -10px;
    line-height: 1.4;
    opacity: 0.5;
}

.ie .wc_read {
    -ms-filter: "alpha(opacity=45)";
}

.wc_body {
    /* max-width: 1024px; */
    width: auto;
    padding: 100px 30px;
    text-align: left;
    margin: 0;
    overflow: hidden;
}
.wc_body>*:first-child{
    margin-top:0;
    
}
.wc_body>*:last-child {
    margin-bottom:0;
    
}

.wc_center .wc_title, .wc_center .wc_read, .wc_center .wc_body {
    width: auto;
    max-width: none;
    margin: 0 auto;
    text-align: left;
    padding-bottom: 30px;
}

.wc_body {
}

.wc_body p {
    font-size: 100%;
    margin: 20px 0 20px;
    line-height: 2;
    color: rgba(255,255,255,0.8);
}
.wc_body a {
    text-decoration:underline;
}

.wc_body p.t_c {
    text-align: center;
}

.wc_img {
    float: right;
    margin: 0 0 20px 50px;
    box-shadow: 0 1px 20px#000;
}

.wc_body .con_column p {
    font-size: 13px;
    margin: 0 0 10px;
    line-height: 1.8
}

.wc_body .con_column h3 {
    font-size: 16px;
    margin: 20px 0 10px;
    line-height: 1.5
}

.wc_center p {
    text-align: center;
}

.wc_body strong {
    font-size: 1.1em;
    font-weight: bold;
}

.wc_body strong span {}

.wc_body h3 {
    color: #FFF;
    /* font-size: 21px; */
    /* margin: 0 0 30px; */
    /* display: inline-block; */
    /* text-align: left; */
    line-height: 1.8;
}

.con_column {
    border: #a08600 1px solid;
    margin-bottom: 40px;
    margin-top: 40px;
    padding: 36px 50px;
    position: relative;
}

.bottom_img {
    background: #F0eacf;
    box-shadow: 0 0 3px rgba(30, 25, 0, 0.2) inset;
    text-align: center;
    border-radius: 4px;
    margin: 15px 0 40px
}

.wc_body .con_column strong {
    background: none;
    font-size: 1em;
}

.bottom_img img {
    max-width: 100%;
}

.evidence1 .con_column, .evidence2 .con_column {
    padding-right: 46%;
}

.con_column h3.column_title {
    font-size: 115%;
    border-bottom: #c0a630 1px dotted;
    padding-bottom: 15px;
    color: #806600;
    letter-spacing: 1px;
    margin-top: 0;
    vertical-align: middle;
    padding-left: 4.7em;
    text-indent: -4.7em;
}

.con_column h3.column_title .column_icon {
    background: #a08600;
    color: #fff;
    padding: 10px;
    margin-right: 0.7em;
    font-size: 14px;
    border-radius: 20px;
    width: 4em;
    display: inline-block;
    text-align: center;
    vertical-align: middle;
    text-indent: 0;
}

.wc_body .btn {
    margin: 0 0 30px;
}

@media screen and (max-width:767px) {
    .w_content {
        background-size: auto 110px;
        background-repeat: no-repeat;
        background-position: center top;
        padding: 0;
    }

    .content_title {
        height: auto;
        line-height: auto;
        margin-top: 0;
        background-size: 150% 58px;
        margin: 0;
        letter-spacing: 2px;
    }

    .read {
        text-align: center;
        padding: 12px 5px 0;
        font-weight: bold;
        letter-spacing: 1px;
        font-size: 14px;

        line-height: 1.6;
    }

    .wc_title {
        font-size: 34px;
        padding: 0 0 15px;
    }

    .wc_read {
        /*color:#999;*/
        font-size: 14px;
        padding: 0 0 18px;
    }

    .wc_body {
        width: auto;
        padding: 0 0 18px;

        margin: 0;
    }

    body.outline .wc_body {
        margin-left: auto;
        margin-right: auto;
    }

    .wc_body p {
        /* font-size: 12px; */
        margin-bottom: 10px;
    }

    .evidence .wc_body p, .evidence .wc_body h3 {
        margin-right: 0;
    }

    .evidence .wc_body h3 {
        margin-right: 0;
        font-size: 20px;
    }

    .evidence .wc_body .con_column h3 {
        font-size: 15px;
    }

    .evidence .wc_body .con_column h3.column_title {
        padding: 0;
        font-size: 18px;
        white-space: normal;
        word-break: break-all;
        text-indent: 0;
        text-align: justify;
        padding-bottom: 10px;
    }

    .con_column h3.column_title .column_icon {
        background: #a08600;
        color: #fff;
        padding: 5px 10px;
        margin: -15px 0 0;
        font-size: 11px;
        border-radius: 20px;
        margin-bottom: 6px;
        width: 40px;
        display: block;
        text-align: center;
        vertical-align: middle;
        text-indent: 0;
        border-radius: 0 0 10px 10px
    }

    .wc_body p img {
        height: auto;
    }

    .wc_body .btn {
        margin: 0 0 15px;
    }

    .wc_body h3 {
        margin: 10px 0 0;
        /* font-size: 18px; */
    }

    .wc_img {
        float: none;
        display: block;
        margin: 5px auto 10px;
    }
}

/*-----------------------------------------------------------------------------* 一覧表示ワイド c2wide */
.list_contents {}

.list_contents-inner {
    margin: -20px;
}

.list_content {
    display: inline-block;
    width: 294px;
    padding: 20px 10px;
    cursor: pointer;
    vertical-align: top;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}

.list_img {
    text-align: center;
}

.list_img img {
    /* border-radius:100%; */
    overflow: hidden;
}

.list_text {
    /* padding:10px 5px 0; */
}

.recipe .list_img, #top_recipe .list_img {
    text-align: center;
    width: 160px;
    height: 160px;
    margin: 0 auto;
    border-radius: 100%;
    overflow: hidden;
}

#top_report .list_img {
    text-align: center;
    width: 240px;
    height: 180px;
    margin: 0 auto;
    overflow: hidden;
}

.recipe .list_img img, #top_recipe .list_img img, #top_report .list_img img {
    max-width: 100%;
    max-width: auto;
    border-radius: 0;
}

.list_text h1 {
    text-align: center;
    font-size: 20px;
    color: #fff;
}

.list_text h1 .min {
    text-align: center;
    font-size: 16px;
    color: #fff;
}

.list_text h2 {
    text-align: center;
    font-size: 11px;
    color: #8E8A7D;
    letter-spacing: 2px;
    font-weight: normal;
    padding-top: 5px;
}

.list_text h3 {
    text-align: center;
    font-size: 14px;
    color: #efd762;
    white-space: nowrap;
    font-weight: normal;
    margin: -20px 0 8px;
}

.list_text h2 span {
    padding: 0 4px;
}

.list_text h2 span.san {
    padding-left: 0;
}

.list_text a {
    color: inherit;
}

.list_content:hover a {
    color: #a08600;
}

body.trainer .list_content:hover a {
    cursor: default;
}

body.trainer .list_content:hover a {
    color: inherit;
    opacity: 1;
}

@media screen and (max-width:767px) {
    .list_contents {
        /* margin-top:44px; */
    }

    .list_contents-inner {
        margin: 0;
    }

    .list_content {
        display: block;
        width: auto;
        padding: 10px;
        border-bottom: rgba(0, 0, 0, 0.2) 1px solid;
        min-height: 80px;

    }

    .list_img {
        text-align: center;
        position: static;
        /* top:10px; */
        /* width:10px; */
    }

    .list_img img {
        /* border-radius:100%; */
        /* overflow:hidden; */
        /* width:80px; */
        /* height:80px; */
    }

    .recipe .list_img {
        text-align: center;
        width: 80px;
        height: 80px;
        margin: 0 auto;
        border-radius: 100%;
        overflow: hidden;
    }

    .recipe .list_img img {
        max-width: 80px;
        max-height: 80px;
        border-radius: 100%;
    }

    .list_text {
        padding: 0;
    }

    .list_text h1 {
        /* text-align:left; */
        /* font-size:14px; */
        /* color:#332f30; */

        white-space: normal;
        line-height: 1.3;
    }

    .list_text h2 {
        /* text-align:left; */
        /* font-size:12px; */
        /* color:#806868; */
    }

    .list_text h2 span {
        padding: 0 4px;
    }

    .list_text h2 span.san {
        padding-left: 0;
    }

    .list_text a {
        color: inherit;

        text-overflow: ellipsis;
    }

    .list_content:hover a {
        color: #a08600;
    }
}

/*-----------------------------------------------------------------------------* 詳細表示 c2 */
#contents.c2 #main {}

#contents.c2 #side {}

#contents.c2 .content {
    background: #fff;
    min-height: 500px;
    text-align: left;
}

body.course #contents.c2 .content {
    min-height: 0;
    margin-bottom: 10px;
    padding-bottom: 20px;
}

.content img {
    max-width: 100%;
    height: auto;
}

.side_lists {}

.side_lists-inner {}

.side_lists .list_content {
    display: block;
    width: auto;
    padding: 0;
    position: relative;
    margin-bottom: 8px;
}

.side_lists .list_img {
    width: 70px;
    height: 70px;
    position: absolute;
    left: 0;
    top: 0;
}

.side_lists .list_img img {}

.side_lists .list_text {
    margin-left: 80px;
    height: 70px;
    vertical-align: middle;
}

.side_lists .list_text h1 {
    text-align: left;
    white-space: nowrap;
}

.side_lists .list_text h1 a {
    text-align: left;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    width: 200px;
    display: block;
}

.side_lists .list_text h2 {
    text-align: left;
}

.side_search h2 {
    color: #a08600;
    font-weight: normal;
    font-size: 17px;
}

.side_search h3 {
    color: #181528;
    font-weight: normal;
    display: block;
    font-size: 14px;
    padding: 15px 10px 14px 5px;
    text-align: left;
    line-height: 1.3;
}

@media screen and (max-width:767px) {
    .side_lists .list_text h1 a {
        width: auto;
        text-overflow: none;
    }
}

/*-----------------------------------------------------------------------------* 一覧 c2 */
#contents.c2 .list_contents {}

#contents.c2 .list_content {}

/*-----------------------------------------------------------------------------* オブジェクト */
.btn, .input[type="submit"] {
    background: #a08600;
    color: #fff;
    padding: 12px;
    font-size: 13px;
    display: block;
    text-align: center;
    border: none;
}

.btn_negative {
    background: #555;
}

.btn2 {
    font-family: 'Roboto Condensed', sans-serif;
    background: none;
    background: rgba(160, 134, 0, 0);
    border: #a08600 1px solid;
    color: #a08600;
    padding: 20px 50px 23px;
    font-size: 20px;
    display: block;
    text-align: center;
    max-width: 340px;
    margin: 0 auto;
    letter-spacing: 1px;
    line-height: 1;
}

.btn2:hover {
    background: rgba(160, 134, 0, 0.2);
}

.btn3 {
    background: none;
    background: rgba(160, 134, 0, 0);
    border: #a08600 1px solid;
    color: #a08600;
    padding: 15px 50px 18px;
    font-size: 15px;
    display: block;
    text-align: center;
    letter-spacing: 1px;
    line-height: 1;
}

.ie .btn3 {
    zoom: 1;
}

.btn3:hover {
    background: rgba(160, 134, 0, 0.1);
    border: #a08600 1px solid;
    color: #a08600;
}

.bnr {
    background: #fff;
    box-shadow: 0px 1px 6px rgba(0, 0, 0, 0.07);
}

.bnr:hover {
    box-shadow: 0px 1px 10px rgba(100, 80, 3, 0.3);
}

@media screen and (max-width:767px) {
    .btn2 {
        font-size: 22px;
    }
}

p.note {
    color: #888;
    line-height: 1.4;
    font-size: 12px;
}

.up_txt {
    font-size: 0.6em;
    vertical-align: top;
    opacity: 0.7;
}


.gimg{
	filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale");
	-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	-ms-filter: grayscale(100%);
	-o-filter: grayscale(100%);
	filter: grayscale(100%);

	filter: gray;
	-webkit-transition:all 1s ease-out;
	-moz-transition:all 1s ease-out;
	-o-transition:all 1s ease-out;
	-ms-transition:all 1s ease-out;
	transition:all 1s ease-out;
}
.gimg:hover,.gimg.on{
	filter: none;
	-webkit-filter: grayscale(0%);
	-moz-filter: grayscale(0%);
	-ms-filter: grayscale(0%);
	-o-filter: grayscale(0%);
	filter: grayscale(0%);
}
.bimg{
	-webkit-filter: blur(5px);
    filter: blur(5px);
	-webkit-transition:all 1s ease-out;
	-moz-transition:all 1s ease-out;
	-o-transition:all 1s ease-out;
	-ms-transition:all 1s ease-out;
	transition:all 1s ease-out;
}
.bimg:hover,.bimg.on{
	-webkit-filter: blur(0px);
    filter: blur(0px);

}


/*-----------------------------------------------------------------------------* 概要 */

.wc_body h2 {
    font-size: 130%;
    text-align: center;
    display:block;
    padding: 10px 24px 10px;
    color: #bc9f0a;
    margin: 70px auto 0px;
    letter-spacing: 2px;
    background: none;
    border: #a08600 2px solid;
    border-width: 2px 0 2px 0;
    line-height: 1.4;
}

.outline h3, .outline h4{
	color: rgb(220, 198, 79);
}
p.annotation{
	width: 700px;
    margin: 0 auto;
    font-size: 80%;
	text-align: right;
}
.content_list {
    border-top: #444 1px solid;
    border-top: rgba(255,255,255,0.12) 1px solid;
    /* width: 700px; */
    margin: 0px;
}

.content_list li {
    border-bottom: #444 1px solid;
    border-bottom: rgba(255,255,255,0.12) 1px solid;
    padding: 0 10px;
    line-height: 1.8;
    overflow:hidden;
}
.content_list li ul{
    margin:-1px 0;
    border-top: rgba(255,255,255,0.08) 1px dotted;
	
}
.content_list li ul li{
    border-bottom: rgba(255,255,255,0.08) 1px dotted;
	
}
.content_list h3 {
 	font-size: 110%;
 	min-width: 13em;
 	/* display: inline-block; */
 	/* padding-right: 1em; */
 	vertical-align: top;
 	margin: 20px 0 0;
 	line-height: 1.4;
}
.content_list h4 {
 	font-size: 100%;
 	min-width: 13em;
 	display: block;
 	/* padding-right: 1em; */
 	vertical-align: top;
 	color: #ffa;
 	margin: 20px 0 0;
 	line-height: 1.4;
}
.content_list p{
 	margin: 12px 0;
 	line-height: 1.8;
}
.content_list p.date{
	display: inline-block;
	margin: 0;
}
.content_list p.note{
    color: #ddd;
    line-height: 1.7;
    /* font-size:80%; */
    margin: 0;
    text-align: left;
 }
 .content_list>li>*:first-child{
     margin-top:25px;
 }
 .content_list>li>*:last-child:not(.list_body){
     margin-bottom:25px;
 }
 .list_body>*:first-child:not(.content_list){
     margin-top:25px;
 }
 .list_body>*:last-child:not(.content_list){
     margin-bottom:25px;
 }
.content_list li .tsuika{
    font-size:110%;
    background: #927100;
    margin-top:8px;
    display:inline-block;
    border-radius: 4px;
    color: #FFB;
    text-shadow: 0 1px 7px rgba(0,0,0,0.3);
    padding:8px 20px;
    /* font-weight:bold; */
    box-shadow: 0 1px 5px rgba(0,0,0,0.3);
 }

body.outline .wc_img {
    margin-top: 10px
}

#shinsain p {
    margin-top: 5px;
}

body.outline .wc_body {
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0;
}

#kijyuns {
    /* border-top: #444 1px solid; */
    /* width: 700px; */
    /* margin: 0px auto 10px; */
}
/*
#kijyuns li {
    border-bottom: #444 1px solid;
    padding: 25px 0px 28px 90px;
    text-align: left;
    line-height: 1;
    background: url(/grandprix/2018/images/check.png) 50px center no-repeat;
}
*/


.item_title{
    width: 120px;
    display: inline-block;
    font-weight: bold;
}
.item_note{
	display: inline-block;
    vertical-align: top;
}

.t_a {
    text-align: center;
}

.bumons {
}

.bumon {
}

.bumon_catch{
	font-weight: normal;
	/* margin-left: 30px; */
	font-size: 86%;
	color:#9b9471;
    letter-spacing:1px;
}

.min {
    font-size: 86%;
}


@media screen and (max-width:767px) {
    .content_list {
        border-top: #444 1px solid;
        width: auto;
        margin: 0px auto 10px;
    }

    .content_list li {
        border-bottom: #444 1px solid;
        padding: 0;
        text-align: center;
        line-height: 1.6;
        font-size: 13px;
    }

    .content_list li h4 {
        display: block;
        text-align:center;
    }
    .content_list li h4.item_title {
        display:inline-block;
        max-width: 30%;
        box-sizing:border-box;
        min-width: 0;
        margin:24px 0 20px;
        text-align:right;
        padding:0 1em 0 0;
        width: auto;
    }
    .content_list li p.item_note {
        display:inline-block;
        max-width: 68%;
        box-sizing:border-box;
        margin:20px 0;
        text-align:left;
    }
    .content_list p{
        text-align:center;
    }

    body.outline .wc_body {
        max-width: 910px;
        margin-left: auto;
        margin-right: auto;
        margin: 0px auto 0;
        padding: 50px 7% 50px;
    }

    #shinsain p img {
        width: 104%;
        height: auto;

        max-width: none;
        margin: 0 -2%;
    }

    #kijyuns {
         width: auto;
        margin: 0;
        text-align: center;
    }


    .wc_body h2 {
        text-align: center;
        padding: 15px 0 15px;
        /* color: rgb(220, 198, 79); */
        font-size: 120%;
        margin: 60px 0 -1px;
        position: relative;
        /* border-width: 1px 0 1px 0; */
    }
     .content_list>li>*:first-child{
         margin-top:20px;
     }
     .content_list>li>*:last-child:not(.list_body){
         margin-bottom:20px;
     }
     .list_body>*:first-child:not(.content_list){
         margin-top:20px;
     }
     .list_body>*:last-child:not(.content_list){
         margin-bottom:20px;
     }
}

/*-----------------------------------------------------------------------------* ファイナリスト */
.list_data {
    margin: 16px auto 10px;
    overflow: hidden;
    width: 220px;
}

.list_data dd, .list_data dt {
    padding: 10px 15px;
    font-size: 13px;
    text-align: left;
}

.list_data dt {
    float: left;
    clear: both;
    width: 5em;
    color: #888;
}

.list_link {
    border: #a18700 1px solid;
    display: block;
    width: 220px;
    margin: 14px auto 0;
    line-height: 40px;
    font-size: 14px;
    letter-spacing: 2px;
}

.list_content:hover .list_link {
    background: #a18700;
    color: #222;
}

#fl_1 {
    float: left;
}

#fl_2 {
    float: right;
}

#winners_list .list_articles {
    width: 980px;
    margin: -30px auto 0;
    overflow: hidden;
}

#finalist_list .list_content {
    cursor: default;
    padding: 16px 20px;
}

#finalist_list .list_content .list_text h3 {
    margin: -18px -20px 7px;
}

.finalists #main, .finalists #contents {
    max-width: 1200px;

}

@media screen and (max-width:767px) {
    #winners_list .list_articles {
        width: auto;
        /* margin: 0 auto 0; */
        /* overflow: hidden; */
        margin: 0 0 25px;
    }

    #winners_list .list_img {
        margin: 0 -10px;
    }

    #winners_list .list_img img {
        width: 92%;
        height: auto;
    }

    #winners_list .list_text {
        margin-top: 0px;
        /* margin-top: -150px; */
    }

    #winners_list .list_text h3 {
        margin-top: 10px;
    }

    .list_data {
        margin: 10px auto 10px;
        overflow: hidden;
        width: auto;

        border-bottom: #2a2a2a 1px solid;
        border-top: #2a2a2a 1px solid;
    }

    .list_data dd, .list_data dt {
        padding: 10px 4px;
        font-size: 13px;
        text-align: left;

        float: none;
        border: none;
        display: inline-block;
    }

    .list_data dt {
        /* float:left; */
        clear: none;
        width: auto;
        /* color:#888; */
    }

    .list_link {
        border: #a18700 1px solid;
        display: block;
        width: auto;
        margin: 14px auto 0;
        line-height: 40px;
        font-size: 14px;
        letter-spacing: 2px;
    }

    .list_content:hover .list_link {
        display: block;
        width: auto;
        padding: 5px 0;
    }

    #fl_1 {
        float: none;
    }

    #fl_2 {
        float: none;
    }

    #finalist_list {
        margin-bottom: 20px;
    }

    #finalist_list .list_content {
        cursor: default;
        padding: 5px 20px;
    }

    #finalist_list .list_img img {
        width: 194px;
    }

    #finalist_list .list_content .list_text h3 {
        margin: -5px -15px 7px;
    }

    .finalists #main, .finalists #contents {
        max-width: 1200px;
    }
}

#winner_content {}

#winner_content .wc_body {}

#winner_content .wc_body p {
    margin-right: 410px;
}

#winner_trainer {
    border: #ccc 1px solid;
    margin-bottom: 40px;
    margin-top: 40px;
    padding: 86px 120px 40px;
    position: relative;
    overflow: hidden;
    background: url(/grandprix/2018/images/win_trainer_message.jpg) 15px 15px no-repeat;
}

#wt_profile {
    float: right;
    margin: 0 0 0 40px;
}

#wt_profile img {
    border-radius: 100px;
    margin-top: -50px;
}

#winner_content #winner_trainer.wc_body p {
    margin: 0;
}

#winner_content #winner_trainer.wc_body #wt_profile p {
    margin: 0 ;
    line-height: 1.6;
}

#winner_content #winner_trainer.wc_body #wt_profile .tr_should {
    color: #bba;
    text-align: center;
    margin-top: 6px;
}

#winner_content #winner_trainer.wc_body #wt_profile .tr_name {
    text-align: center;
    font-weight: bold;
    font-size: 18px;
    margin-bottom: -10px
}

@media screen and (max-width:767px) {
    #winner_content {}

    #winner_content .wc_body {}

    #winner_content .wc_body p {
        margin-right: 0;
    }

    #winner_trainer {
        margin-bottom: 20px;
        margin-top: 20px;
        padding: 49px 14px 18px;
        position: relative;
        overflow: hidden;
        background: url(/grandprix/2018/images/win_trainer_message.jpg) center 15px no-repeat;
        background-size: 240px
    }

    #wt_profile {
        float: none;
        margin: 0 auto 15px;
    }

    #wt_profile img {
        width: 150px;
        height: auto;
        display: block;
        margin: 0 auto;
        border-radius: 100px;
    }

    #winner_content #winner_trainer.wc_body p {
        margin: 0;
        line-height: 2;
    }

    #winner_content #winner_trainer.wc_body #wt_profile p {
        margin: 0;
        line-height: 1.6;
    }

    #winner_content #winner_trainer.wc_body #wt_profile .tr_should {
        color: #bba;
        text-align: center;
        margin-top: 6px;
    }

    #winner_content #winner_trainer.wc_body #wt_profile .tr_name {
        text-align: center;
        font-weight: bold;
        font-size: 18px;
    }
}

/*-----------------------------------------------------------------------------* トレーナー紹介 */
.wc_body .t_shoulder {
    color: #a18700;
    font-size: 18px;
    margin: 0;
    letter-spacing: 1px;
}

.store_name {
    color: #eee;
    font-size: 19px;
    padding-right: 12px;
    letter-spacing: 2px;
}

.t_name {
    color: #fff;
    font-size: 30px;
    letter-spacing: 2px;
}

.wc_body .t_kana {
    color: #999;
    font-size: 16px;
    margin: 0;
    letter-spacing: 3px;
}

.icon {
    background: #a18700;
    border-radius: 3px;
    padding: 5px 8px;
    color: #000;
    font-size: 13px;
    vertical-align: top;
    margin-right: 10px;
    line-height: inherit;
}

#t_winners .wc_body {
    background: url(/grandprix/2018/images/line.png) center bottom no-repeat;
    padding: 0 50px 45px;
    margin: 70px auto;
}

#t_winners .wc_body:last-child {
    background: none;
}

#t_ap .wc_body {
    background: url(/grandprix/2018/images/line.png) center 0 no-repeat;
    padding: 55px 20px 0;
    margin: 40px auto;
}

#t_ap h2 {
    display: inline;
    display: inline-block;
}

#t_ap .store_name {
    display: block;
    color: #a18700;
    font-size: 16px
}

#t_ap .t_name {
    display: block;
    color: #dcc411;

}

#t_ap .wc_body h3 {
    line-height: 28px;
    margin-top: 20px;
}

#t_ap #tap_1 h2 {
    padding: 30px 0 30px 130px;
    margin-left: -20px;
    background: url(/grandprix/2018/images/trainers_medal.png) 0 0 no-repeat;

}

@media screen and (max-width:767px) {
    #t_winners .wc_body h3 {
        letter-spacing: 0;
        text-align: center;

        display: block;
        margin: 0;
    }

    .wc_body .t_shoulder {
        font-size: 14px;
        margin: 10px 0 0;
        letter-spacing: 0;

        text-align: center;
    }

    .store_name {
        color: #eee;
        font-size: 14px;
        padding-right: 12px;
        letter-spacing: 2px;
    }

    .t_name {
        color: #fff;
        font-size: 18px;
        letter-spacing: 2px;

        line-height: 1;
    }

    .wc_body .t_kana {
        color: #999;
        font-size: 13px;
        margin: 0;
        letter-spacing: 3px;

        padding: 6px 0 0;
        text-align: center;
        line-height: 1;
    }

    .icon {
        background: #a18700;
        border-radius: 3px;
        padding: 5px 8px;
        color: #000;
        font-size: 13px;
        vertical-align: top;
        margin-right: 10px;
        line-height: inherit;
    }

    #t_winners .wc_body {
        background: url(/grandprix/2018/images/line.png) center bottom no-repeat;
        padding: 30px 0 10px;
        margin: 0 auto;
        background-size: 90% 1px;
    }

    #t_winners .wc_body .wc_img {
        width: 179px;
        margin: 0 auto;
        box-shadow: 0 0 16px rgba(255, 250, 230, 0.5);
        border-radius: 5px;
    }

    #t_winners .wc_body:last-child {
        background: none;
    }

    #t_ap .wc_body {
        background: url(/grandprix/2018/images/line.png) center 0 no-repeat;
        padding: 25px 0 0;
        margin: 15px auto;
        background-size: 90% 1px;
    }

    #t_ap h2 {
        display: inline;
        display: inline-block;
        padding-top: 5px;
        display: block;
        text-align: center;
    }

    #t_ap .store_name {
        display: block;
        color: #a18700;
        font-size: 14px;
        letter-spacing: 0;
        padding: 0 0 6px;
        text-align: center;
    }

    #t_ap .t_name {
        display: block;
        color: #dcc411;
        text-align: center;
        margin: 0 auto;
    }

    #t_ap .wc_body h3 {
        line-height: 28px;
        margin-top: 20px;
        display: block;
        text-align: center;
        margin: 0 auto;
    }

    #t_ap #tap_1 h3 {
        margin-top: 0;

    }

    #t_ap #tap_1 h2 {
        padding: 50px 0 0 0;
        margin-left: 0;
        /* background:url(/grandprix/2018/images/trainers_medal.png) 0 0 no-repeat; */
        background-size: 70px;
        position: relative;
        margin-top: -50px
    }
}

/*-----------------------------------------------------------------------------* トップ */
#thanks_body {
    width: 800px;
    margin: 50px auto;
}

#thanks_body.wc_body h3 {
    text-align: center;
    display: block;
    letter-spacing: 3px;
}

#yokoku {
    background: #886b00;
    width: auto;
    padding-bottom: 40px;
}

#yokoku .wc_inner {
    background: #1f1c1f;
    margin: 0 auto;
    width: 1024px;
}

#yokoku .wc_inner img {
    margin: 0 -88px;
}

#report {
    background: url(/grandprix/2018/images/finale_1.jpg) right 150px no-repeat;
    padding: 0 20px;
    /* margin-right:-20px
     */
}

#report .wc_body {
    width: 380px;
    min-height: 510px;
    padding: 30px 0;
    overflow: visible;
}

#content_inner {
    overflow: visible;
}

@media screen and (max-width:767px) {
    #thanks_body {
        width: auto;
        margin: 0 auto;
    }

    #thanks_body.wc_body h3 {
        text-align: center;
        display: block;
        letter-spacing: 3px;
    }

    #yokoku {
        width: auto;
        padding: 0px;

        overflow: hidden;
        margin: 20px 0 0;
    }

    #yokoku .wc_inner {
        margin: 0 -10px;
        width: auto;
    }

    #yokoku .wc_inner img {
        max-width: 100%;
        height: auto;
        margin: 0;
    }

    #report {
        background: url(/grandprix/2018/images/finale_1.jpg) center 150px no-repeat;
        padding: 0 20px;
        background-size: 360px
        /* margin-right:-20px
        	 */
    }

    #report .wc_body {
        width: auto;
        min-height: 0;
        padding: 330px 0 0;
        overflow: visible;
    }

    #content_inner {
        overflow: visible;
    }
}

/*-----------------------------------------------------------------------------* トップ */
#main_images {
    width: 100%;
}

.slide_images {
    position: relative;
    overflow: hidden;
}

.slide_images, .s_imgs, .s_img, .s_imgs_inner, .s_img {
    width: 100%;
    height: 640px;
}

.s_imgs {
    overflow: hidden;
    background: #000;
}

.s_imgs_inner {
    white-space: nowrap;
    position: relative;
}

.s_img {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

@media screen and (min-width: 1441px) {
    .s_img {
        background-size: 1440px auto;
    }
}

.s_img a {
    display: block;
}

.slide_images .thumbs {
    position: absolute;
    right: 10px;
    bottom: 10px;
    text-align: right;
}

.slide_images .thumbs span {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 5px;
    background: #666;
    margin: 0 3px;
}

.slide_images .thumbs span.on {
    background: #dcc612;
}

.ie .slide_images .thumbs span {
    zoom: 1;
}

#gpm_1 {
    background-image: url(/grandprix/2018/images/gpm_1.jpg);
    background-size: auto 100%;
}

#gpm_2 {
    background-image: url(/grandprix/2018/images/gpm_2.jpg);
}

#gpm_3 {
    background-image: url(/grandprix/2018/images/gpm_3.jpg);
}

#gpm_4 {
    background-image: url(/grandprix/2018/images/gpm_4.jpg);
}

#gpm_5 {
    background-image: url(/grandprix/2018/images/gpm_5.jpg);
}

#gpm_6 {
    background-image: url(/grandprix/2018/images/gpm_13.jpg);
}

#gpm_7 {
    background-image: url(/grandprix/2018/images/gpm_8.jpg);
}

#gpm_8 {
    background-image: url(/grandprix/2018/images/gpm_12.jpg);

}

#gpm_9 {
    background-image: url(/grandprix/2018/images/gpm_10.jpg);

}

#gpm_10 {
    background-image: url(/grandprix/2018/images/gpm_11.jpg);

}

#gpm_11 {
    background-image: url(/grandprix/2018/images/gpm_14.jpg);
}

.r_nav, .l_nav {
    position: absolute;
    top: 50%;
    width: 54px;
    height: 88px;
    margin-top: -44px;
    cursor: pointer;
    opacity: 0.5;
    display: block;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}

.r_nav:hover, .l_nav:hover {
    opacity: 1;
}

.r_nav {
    background: url(/grandprix/2018/images/ar_R.png) 0 0 no-repeat;
    right: 20px;
}

.l_nav {
    background: url(/grandprix/2018/images/ar_L.png) 0 0 no-repeat;
    left: 20px;
}


@media screen and (max-width:767px) {
    .slide_images, .s_imgs, .s_img, .s_imgs_inner, .s_img {
        height: 400px;
    }

    .r_nav, .l_nav {
        position: absolute;
        top: 50%;
        width: 27px;
        height: 44px;
        margin-top: -22px;
        cursor: pointer;
        opacity: 0.5;
        background-size: 100%;
    }

    .r_nav:hover, .l_nav:hover {
        opacity: 1;
    }

    .r_nav {
        background: url(/grandprix/2018/images/ar_R.png) 0 0 no-repeat;
        background-size: 100%;
        right: 5px;
    }

    .l_nav {
        background: url(/grandprix/2018/images/ar_L.png) 0 0 no-repeat;
        left: 5px;
        background-size: 100%;
    }

    #gpm_1 {
        background-image: url(/grandprix/2018/images/gpm_1_sp.jpg);
    }

    #gpm_2 {
        background-image: url(/grandprix/2018/images/gpm_2.jpg);
    }

    #gpm_3 {
        background-image: url(/grandprix/2018/images/gpm_3.jpg);
    }

    #gpm_4 {
        background-image: url(/grandprix/2018/images/gpm_4.jpg);
    }

    #gpm_5 {
        background-image: url(/grandprix/2018/images/gpm_5.jpg);
    }

    #gpm_6 {
        background-image: url(/grandprix/2018/images/gpm_6.jpg);
    }

    #gpm_7 {
        background-image: url(/grandprix/2018/images/gpm_7.jpg);
    }
}

#top_contact_btns {
    padding: 34px 18px;
    border-bottom: #333 1px solid;
    background: #111;
}

#top_contact_btns-inner {}

#top_contact_btns h3 {
    font-size: 16px;
    color: #f1f1f1;
    text-align: center;
    padding: 0 0 14px;
    line-height: 1;
}

#top_contact_btns .btns {
    text-align: center;
}

#top_contact_btns .btns a, #top_contact_btns .btns img {
    display: inline-block;
    margin: 0 3px;
}

.ie #top_contact_btns .btns a, .ie #top_contact_btns .btns img {
    zoom: 1;
}

#top_contact_btns .btns a img {
    margin: 0;
}

#top_contact_btns_sp {
    max-width: 100%;
    height: auto;
}

#top_info {
    height: 64px;
    background: #e5e0da;
    font-size: 13px;
    overflow: hidden;
}

#top_info-inner {
    position: relative;
}

#top_info-title {
    font-family: 'Roboto', sans-serif;
    font-weight: 100;
    background: #b1a79e;
    color: #fff;
    line-height: 64px;
    width: 110px;
    padding-left: 40px;
    position: absolute;
    left: 0;
    top: 0;
    letter-spacing: 1px;
    font-size: 15px;
}

#top_info-title a {
    color: inherit;
}

.arrowR {
    background: inherit;
    position: absolute;
    right: -30px;
    top: 0;
    width: 64px;
    height: 64px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

#top_info-body {
    position: absolute;
    left: 240px;
    top: 0;
}

#top_info-body a {
    color: #333;
    line-height: 64px;
    display: block;
    padding: 0 30px;
    font-size: 14px;
}

#top_info-body a .date {
    padding-right: 15px;
    color: inherit;
}

#top_info-body a .read {
    color: inherit;
    font-weight: normal;
}

#top_info-body a:hover {
    color: #a08600;
}

.toInfo {
    position: absolute;
    right: 15px;
    top: 25px;
}

#top_crown {
    text-align: center;
    padding: 0;
    background: #bba03f;
}

#top_crown_title {
    font-weight: normal;
    text-align: center;
    padding: 20px 0 0;
    color: #fff;
    letter-spacing: 1px;
}

#top_crown img {
    max-width: 100%;
    height: auto;
}

#top_ba {
    text-align: center;
    padding: 25px;
    background: #5b5457;
}

#top_ba img {
    max-width: 100%;
    height: auto;
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.4);
}

#top_sympo {
    text-align: center;
    padding: 25px;
    background: #e0d9d0;
}

#top_sympo img {
    max-width: 100%;
    height: auto;
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.2);

}

#top_concept {}

#top_concept h2 {
    font-family: 'Roboto', sans-serif;
    font-weight: 100;
    text-align: center;
    font-size: 50px;
    padding: 0 0 4px;
    letter-spacing: 5px;
}

#top_concept h3 {
    text-align: center;
    font-size: 16px;
    padding: 0 0 40px;
    letter-spacing: 3px;
    opacity: 0.7;
}

#top_concept-body {
    padding: 0 0 30px;
}

.tc_panels {
    text-align: center;
    padding-bottom: 50px;
}

.tc_panel {
    display: inline-block;
    padding: 14px 28px 26px;
    text-align: center;
    vertical-align: top;
}

.ie .tc_panel {
    zoom: 1;
}

.tc_panel img {}

.tc_panel .tc_title {
    display: block;
    color: #221929;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 19px;
    font-weight: bold;
    padding: 16px 0 12px;
    -webkit-font-smoothing: antialiased;
    line-height: 1.4;
}

.tc_panel .tc_read {
    display: block;
    color: #999;
    font-weight: bold;
    font-size: 13px;
}

#top_concept-body .tc_panel {
    width: 24%;
    padding: 0 0.2%;
    max-width: 320px;
}

#top_concept-body .tc_panel img {
    width: 100%;
    height: auto;
}

#top_concept-body .tc_panel .tc_title {
    font-size: 15px;
    padding: 10px 0 0;
}

#top_trainer {
    padding: 60px;
    background: url(/grandprix/2018/images/top-trainers.jpg) center 0 no-repeat #333;
    border-top: #ddd 1px solid;
    border-top: rgba(0, 0, 0, 0.2) 1px solid;
    background-size: cover;
    height: 500px;
}

#top_trainer-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding-top: 45px;
}

#top_trainer-inner h2 {
    color: #f1f1f1;
    font-size: 56px;
}

#top_trainer-inner p {
    color: #f1f1f1;
}

#top_trainer-inner .btn {
    color: #f1f1f1;
    border-color: #f1f1f1;
}

#top_trainer-inner .btn:hover {
    background: rgba(255, 255, 255, 0.05);
}

.bnr_title {
    display: none;
}

.ws_content {
    padding: 30px 0 30px 50px;
}

.wsc_inner {
    position: relative;

}

.wsc_title {
    position: absolute;
    left: 0;
    top: 0;
}

.wsc_body {
    overflow: hidden;
    margin-left: 400px;
    padding: 50px 40px;
    height: 200px;
}

.wsc_body .list_contents {
    white-space: nowrap;
}

.wsc_body .list_content {
    width: auto;
    margin-right: 25px;
    padding: 20px 0;
}

#rr_content {
    padding: 0 0 60px;
    /* background: url(/images/line_shadow.png) 0 0 repeat-x #F5F1D9; */
    background-size: 100% 3px;
}

#top_bnrs {
    margin: 20px auto 20px;
    width: 1010px;
}

#top_bnrs .top_bnr {
    display: inline-block;
    border: #000 8px solid;
    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.6);
    margin: 10px;
    background: #dcc411;
}

#top_bnrs .top_bnr img {
    cursor: pointer;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}

#top_bnrs .top_bnr:hover {
    opacity: 1
}

#top_bnrs .top_bnr:hover img {
    opacity: 0.8
}

.ie #top_bnrs .top_bnr {
    zoom: 1;
}

#top_bnrs #top_bnr3 {
    float: left;
}

.text_link_content {
    background: url(/images/line_shadow.png) 0 0 repeat-x;
    background-size: 100% 3px;
    padding: 70px 30px;
}

.tlc_inner {
    max-width: 1200px;
    margin: 0 auto;
}

.tlc_title {
    border: #cdcdcf 1px solid;
    border-top: 0;
    border-bottom: 0;
    font-family: 'Roboto Condensed', sans-serif;
    -webkit-font-smoothing: antialiased;
    font-weight: bold;
    text-align: center;
    width: 300px;

    font-size: 36px;
    height: 200px;
    line-height: 200px;
    position: absolute;
    letter-spacing: 2px;
    color: #44424a;
}

.tlc_title a {
    color: inherit;
}

.tlc_body {
    text-align: left;
    margin-left: 300px;
    min-height: 200px;
    padding-left: 50px;
}

.tlc_links {
    padding: 10px 0;
}

.tlc_links a {
    display: block;
    padding: 6px 0;
    /* color:#666; */
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.tlc_links a.ll_more {
    display: block;
    padding-top: 8px;
    color: #666;
}

.tlc_links span {
    color: #333;
    font-size: 14px;
    padding: 0 15px 0 0;
    font-weight: normal;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
    -webkit-font-smoothing: subpixel-antialiased;
}

.tlc_links .date {
    color: inherit;
}

.tlc_links .read {
    color: #888;
}

.tlc_links a:hover span {
    color: inherit;
}

#over_bg {
    display: none;
    background: rgba(0, 0, 0, 0.6);
    position: absolute;
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: rgba(50, 45, 40, 0.9);
    z-index: 10000;
}

#over_movie {
    display: none;
    margin: 5% 0 0;
    position: absolute;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10001;
    height: 95%;
}

over_movie_inner {
    height: auto;

}

#over_movie_inner iframe {
    /* height:auto; */
    width: 960px;
    max-width: 100%;
    margin: 0 auto;
    display: block;
    height: 540px;
    box-shadow: 0 0 50px rgba(220, 196, 17, 0.5);
    box-shadow: 0 5px 50px rgba(0, 0, 0, 0.5);
}

#over_movie .btn_close {
    width: 60px;
    height: 60px;
    background: url(/grandprix/2018/images/btn_close.png) center center no-repeat;
    position: absolute;
    position: fixed;
    right: 10px;
    top: 10px;
    background-size: 36px;
    border: #fff 0 solid;
    box-sizing: border-box;
    opacity: 0.8;
}

html.movie #over_bg {
    display: block;
}

html.movie #over_movie {
    display: block;
}

html.movie #movie_logo {
    display: block;
    float: right;
    margin: 0 auto 10px;
}

#movie_info {
    position: relative;
    width: 960px;
    margin: 0 auto;
}

#movie_title {
    text-align: left;
    font-size: 24px;
    font-weight: bold;
    line-height: 46px;
    letter-spacing: 2px;
}

html.movie {
    height: 100%;
    overflow: hidden;
}

html.movie body {
    height: 100%;
}

@media screen and (min-width: 768px) and (max-height: 680px) {
    #over_movie {
        margin: 2% auto 0;
    }

    #over_movie_inner iframe {
        /* width: 896px; */
        height: 504px;
    }

    #movie_info {
        width: 896px;
    }
}

@media screen and (min-width: 768px) and (max-height: 600px) {
    #over_movie {
        margin: 1% auto 0;
    }

    #over_movie_inner {
        height: 90%;
        height: calc(92% - 58px);
    }

    #over_movie_inner iframe {
        /* width: 800px; */
        height: 450px;
        max-height: 100%;
    }

    #movie_info {
        width: 800px;
    }
}

@media screen and (max-width: 767px) {
    #over_movie {
        margin: 0;
        -webkit-transform: translate(0px, 50%);
        -moz-transform: translate(0px, 50%);
        -o-transform: translate(0px, 50%);
        -ms-transform: translate(0px, 50%);
        transform: translate(0px, 50%);
    }

    #over_movie_inner {
        height: auto;
    }

    #over_movie_inner iframe {
        width: 400px;
        display: block;
        height: 225px;
        box-shadow: 0 0 50px rgba(220, 196, 17, 0.5);
        box-shadow: 0 5px 50px rgba(0, 0, 0, 0.5);
    }

    #over_movie .btn_close {
        width: 40px;
        height: 40px;
        background-size: 30px;
        top: -4px;

        right: 5px;
    }

    #movie_info {
        width: auto;
    }

    html.movie #movie_logo {
        display: block;
        width: 220px;
        height: auto;
        margin: 0 auto;
        float: none;
    }

    #movie_title {
        text-align: center;
        font-size: 16px;
        letter-spacing: 1px;
    }

    #top_bnrs {
        margin: 0 auto 20px;
        width: auto;

        padding: 0;
    }

    #top_bnrs .top_bnr {
        display: block;
        border: 0;
        box-shadow: none;
        margin: 0;
        background: #dcc411;
    }

    #top_bnrs .top_bnr img {
        width: 100%;
        cursor: pointer;
        -webkit-transition: all 0.3s ease-out;
        -moz-transition: all 0.3s ease-out;
        -o-transition: all 0.3s ease-out;
        -ms-transition: all 0.3s ease-out;
        transition: all 0.3s ease-out;
    }

    #top_bnrs .top_bnr:hover {
        opacity: 1
    }

    #top_bnrs .top_bnr:hover img {
        opacity: 0.8
    }

    .ie #top_bnrs .top_bnr {
        zoom: 1;
    }

    #top_bnrs #top_bnr3 {
        float: left;
    }

    #top_crown {
        padding: 0 0 5px;
    }

    #top_crown_title {
        padding: 10px 0 2px;
        letter-spacing: 0;
        font-size: 16px;
    }

    #top_crown img {
        max-width: 100%;
        height: auto;
    }

    #top_ba {
        text-align: center;
        padding: 10px;
        background: #5b5457;
    }

    #top_ba img {}

    #top_sympo {
        padding: 10px;
    }

    #top_sympo img {}

    #top_contact_btns {
        padding: 15px 12px;
        border-top: #000 1px solid;
        border-bottom: #333 1px solid;
        background: #111;
    }

    #top_contact_btns-inner {}

    #top_contact_btns h3 {
        font-size: 14px;
        color: #eed;
        text-align: center;
        padding: 6px 0 4px;
        line-height: 1.5;
    }

    #top_contact_btns .btns {
        text-align: center;
    }

    #top_contact_btns .btns a, #top_contact_btns .btns img {
        display: block;
        margin: 8px 0;

        width: 100%;
        height: auto;
    }

    .ie #top_contact_btns .btns a, .ie #top_contact_btns .btns img {
        zoom: 1;
    }

    #top_contact_btns .btns a img {
        margin: 0;
    }

    #top_contact_btns_sp {
        max-width: 100%;
        height: auto;
    }

    #top_sp_bnrs {
}

    #top_sp_bnrs img {
        width: 100%;
        height: auto;
    }

    #top_special {
        padding: 10px 0 0;
    }

    #top_special-inner {}

    #top_special-body {
        padding: 0;
    }

    #top_special-inner h2 {
        text-align: center;
        font-size: 20px;
        padding: 0 0 5px;
    }

    #top_special .tc_panels {
        padding: 0;

        margin: 0;
    }

    .text_link_content {
        padding: 10px 0 0;
    }

    .tlc_inner {}

    .tlc_title {
        border: none;
        border-top: 0;
        border-bottom: 0;
        width: auto;
        font-size: 24px;
        height: auto;
        line-height: 1.2;
        position: static;
        padding: 5px 0 8px;
    }

    .tlc_title a {}

    .tlc_body {
        text-align: left;
        margin: 0;
        min-height: 0;
        padding: 0;
    }

    .tlc_links {
        padding: 0;
    }

    .tlc_links a {
        display: block;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        border-top: rgba(0, 0, 0, 0.1) 1px solid;
        padding: 10px 6px 10px 12px;
        margin: 0;
    }

    .tlc_links a.ll_more {
        text-align: right;
        padding-right: 12px;
    }

    .tlc_links span {
        font-size: 12px;
        padding: 3px;
    }

    .tlc_links .date {}

    .tlc_links .read {}

    .tlc_links a:hover span {}
}


/*-----------------------------------------------------------------------------* グランプリ概要 */

#schedule .wc_body{
    text-align:center;
}
#schedule .wc_body p{
    text-align:center;
}
.content_arrow{
    border:rgba(255, 255, 255, 0.64) 3px solid;
    border-width:0 3px 3px 0;
    width:20px;
    height: 20px;
    margin: 26px auto -20px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    display: inline-block;
}
#schedule .date{
    font-size:115%;
}
#schedule .date span{
    color:#fff;
}
#schedule .date span:after{
    content:":";
    padding:0.5em;
}

#schedule .flow_area_entry{
	color: #fff;
}
#schedule .content_list li:first-child .date:nth-child(2), #schedule .content_list li:first-child .date:nth-child(3){
	margin-top: 10px;
}

#kanran_kokuchi{
    background:#3e3816;
    margin:30px -18px 0;
    text-align:center;
    padding: 10px;
    border-radius:5px;
}
#kanran_kokuchi p{
    text-align:center;
    margin:0;
}

#kijyun h3{
    float:left;
    min-width: 0;
    width: 32%;
    text-align: left;
    /* line-height: 1.3; */
}
#kijyun .list_body{
 float:right;
 width: 68%;
}
#kijyun .list_body p{
    text-align:center;
}
#kijyun #total h3{
    float:none;
    min-width: 0;
    width: auto;
    text-align:center;
}
#kijyun #total p{
    text-align:center;
}

#total,#koumokus,#katen{
    /* width:520px; */
    margin:0 auto;
}

#kijyun .bumons .content_list{
    /* width:520px; */
    margin:0 auto;
	text-align: center;
}
#kijyun .bumons .content_list h3{
	float: none;
	text-align: center;
	width: 100%;
}
#kijyun .bumons .content_list .list_body{
	float: none;
	width: 100%;
}
#kijyun .bumons .content_list p{
	text-align: center;
}
#kijyun .bumons .list_body p .label{
	color: #ffa;
}
#kijyun .bumons .list_body p .label:after{
	content: ":";
	padding: 0.5em;
}

#koumokus h3, #koumokus .list_body{
	float: none;
	text-align: center;
	width: 100%;
}
#koumokus h4{
	text-align: center;
	margin: 25px auto 0;
	width: 100%;
}
#koumokus.content_list li ul{
	border-top: none;
}

#prize h3{
    float:left;
    min-width: 0;
    width: 45%;
    text-align: left;
}
#prize .list_body{
 float:right;
 width: 55%;
}

@media screen and (max-width:767px) {
    #schedule .wc_body p{
    text-align: center;
    }
   .content_arrow{
        border:rgb(160, 134, 0) 3px solid;
        border-width:0 3px 3px 0;
        width:16px;
        height: 16px;
        margin: 20px auto -20px;
    }
    #schedule .date{
        font-size:115%;;
    }
    #schedule .date span{
        color:#fff;
        display:block;
        margin-bottom:5px;
    }
    #schedule .date span:after{
        display:none;

    }
    #kijyun h3,#prize h3{
        float:none;
        width: auto;
        text-align:center;
     }
    #kijyun .list_body,#prize .list_body{
     float:none;
     width: auto;
     margin-top: 15px;
    }
    #kijyun #total h3{
    }
    #kijyun #total p{
        text-align:center;
    }

    #total,#koumokus,#katen{
        /* width:520px; */
        margin:0 auto;
    }
    #koumokus.content_list li h4.item_title{
		max-width: 100%;
		margin: 15px auto 0;
		padding: 0;
    }

    #kijyun .bumons .content_list{
        /* width:520px; */
        margin:0 auto;
    }
    #kijyun .list_body p{
		max-width: 100%;
    }
    #kijyun .bumons .list_body p{
        text-align: center;
    }

}


/*-----------------------------------------------------------------------------* グランプリファイナル */


.final #f_date {
    background: url(/grandprix/2018/images/final_date_bg.jpg) center bottom no-repeat;
}
.final #f_program {
    background: url(/grandprix/2018/images/final_program_bg.jpg) center bottom no-repeat;
}
body.final .wc_body {
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0;
}
.final .content_list{
    margin:0 auto;
}
.final .content_list h3{
    float:left;
    min-width: 0;
    width: 28%;
    text-align: left;
	color:rgb(220, 198, 79);
}
.final .list_body{
	float:right;
	width: 72%;
}
.final .list_body p{
    text-align:left;
}
#f_program h3{
	color: #ffa;
}
#f_photo img{
	margin: 40px 0;
}
#f_map{
    width: 600px;
    height: 450px;
    margin-bottom: 20px;
    border: 0px;
}
	
@media screen and (max-width:767px) {

    body.final .wc_body {
        max-width: 910px;
        margin-left: auto;
        margin-right: auto;
        margin: 0px auto 0;
        padding: 50px 7% 50px;
    }
	.final #f_date, .final #f_program {
		background: url(/grandprix/2018/images/final_date_bg_sp.jpg) center bottom no-repeat;
		background-size: 100% auto;
	}
    .final .content_list h3{
		display: inline-block;
		max-width: 30%;
		box-sizing: border-box;
		min-width: 0;
		margin: 24px 0 20px;
		text-align: right;
		padding: 0 1em 0 0;
     }
    .final .list_body{
     	float:none;
     	width: auto;
     	margin-top: 15px;
    }
	#f_map{
		width: 100%;
		height: 300px;
	}
	#f_photo img{
		width: 114%;
		max-width: none;
		margin-left: -7%;
		margin-right: -7%;
		margin-bottom: 20px;
	}

}
@media screen and (max-width:359px) {

	.forSP5{
		display: block;
		margin-left: 26%;
	}

}


/*-----------------------------------------------------------------------------* グランプリ2016　エリア */

#area_points{
	position: absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
}
.area_p{
	position: absolute;
    left: 50%;
}
.area_p a,.area_p:before,.area_p:after{
	content:"";
	display: block;
	position: absolute;
	left:0;
	top:0;
	width:16px;
	height: 16px;
	margin: -8px 0 0 -8px;
	border-radius: 8px;
	background: rgba(176, 119, 197, 0.9);
}
.area_p.open a,.area_p.open:before,.area_p.open:after{
	background: rgba(142, 119, 197, 0.9);
}
.area_p{
	-webkit-transform: scale(3);
	-moz-transform: scale(3);
	-o-transform: scale(3);
	-ms-transform: scale(3);
	transform: scale(3);
	opacity: 0;
    -webkit-transition: all 0.4s ease-out;
    -moz-transition: all 0.4s ease-out;
    -o-transition: all 0.4s ease-out;
    -ms-transition: all 0.4s ease-out;
    transition: all 0.4s ease-out;
}
.area_p.on{
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-o-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
	opacity: 1;
}
.area_p a{
    z-index:1;
}
.area_p:before,.area_p:after{
	width:160px;
	height: 160px;
	margin: -80px 0 0 -80px;
	border-radius: 80px;
	background: rgba(176, 119, 197, 0.4);
	opacity: 0;
	z-index: -1;
	pointer-events: none;
}
.area_p.open:before,.area_p.open:after{
 	background: rgba(142, 119, 197, 0.4);
   
}
#ap1{
	top: 288px;
	margin-left: 142px;
}
#ap2{
	top: 421px;
	margin-left: 93px;
}
#ap3{
	top: 423px;
	margin-left: 81px;
}
#ap4{
	top: 423px;
	margin-left: 91px;
}
#ap5{
	top: 444px;
	margin-left: -9px;
}
#ap6{
	top: 463px;
	margin-left: -75px;
}
#ap7{
	top: 463px;
	margin-left: -65px;
}
#ap8{
    top:523px;
    margin-left:-267px;
}
#ap9{
	top: 433px;
	margin-left: 86px;
}
#ap10{
	top: 473px;
	margin-left: -70px;
}
.area_p.on:before{
  animation: area_p_anim2 linear 2.6s;
  animation-iteration-count: infinite;
  transform-origin: 50% 50%;
  -webkit-animation: area_p_anim2 linear 2.6s;
  -webkit-animation-iteration-count: infinite;
  -webkit-transform-origin: 50% 50%;
  -moz-animation: area_p_anim2 linear 2.6s;
  -moz-animation-iteration-count: infinite;
  -moz-transform-origin: 50% 50%;
  -o-animation: area_p_anim2 linear 2.6s;
  -o-animation-iteration-count: infinite;
  -o-transform-origin: 50% 50%;
  -ms-animation: area_p_anim2 linear 2.6s;
  -ms-animation-iteration-count: infinite;
  -ms-transform-origin: 50% 50%;
}
.area_p.on:after{
  animation: area_p_anim1 linear 2.6s;
  animation-iteration-count: infinite;
  transform-origin: 50% 50%;
  -webkit-animation: area_p_anim1 linear 2.6s;
  -webkit-animation-iteration-count: infinite;
  -webkit-transform-origin: 50% 50%;
  -moz-animation: area_p_anim1 linear 2.6s;
  -moz-animation-iteration-count: infinite;
  -moz-transform-origin: 50% 50%;
  -o-animation: area_p_anim1 linear 2.6s;
  -o-animation-iteration-count: infinite;
  -o-transform-origin: 50% 50%;
  -ms-animation: area_p_anim1 linear 2.6s;
  -ms-animation-iteration-count: infinite;
  -ms-transform-origin: 50% 50%;
}

.area_detail_1 #ap1{
	top: 182px;
	margin-left: 86px;
}
.area_detail_2 #ap8{
	top: 319px;
	margin-left: -230px;
}
.area_detail_3 #ap2{
	top: 257px;
	margin-left: 74px;
}
.area_detail_4 #ap5{
	top: 239px;
	margin-left: 30px;
}
.area_detail_5 #ap3{
	top: 254px;
	margin-left: 79px;
}
.area_detail_6 #ap4{
	top: 254px;
	margin-left: 79.5px;
}
.area_detail_7 #ap6{
	top: 258px;
	margin-left: -27px;
}
.area_detail_8 #ap7{
	top: 258px;
	margin-left: -27px;
}
.area_detail_9 #ap9{
	top: 254px;
	margin-left: 80px;
}
.area_detail_10 #ap10{
	top: 258px;
	margin-left: -27px;
}


@keyframes area_p_anim1{
  0% {
    opacity:1;
    transform:  scaleX(0.01) scaleY(0.01) ;
  }
  75% {
    opacity:0;
    transform:  scaleX(0.70) scaleY(0.70) ;
  }
  100% {
    opacity:0;
    transform:  scaleX(0.70) scaleY(0.70) ;
  }
}

@-moz-keyframes area_p_anim1{
  0% {
    opacity:1;
    -moz-transform:  scaleX(0.01) scaleY(0.01) ;
  }
  75% {
    opacity:0;
    -moz-transform:  scaleX(0.70) scaleY(0.70) ;
  }
  100% {
    opacity:0;
    -moz-transform:  scaleX(0.70) scaleY(0.70) ;
  }
}

@-webkit-keyframes area_p_anim1 {
  0% {
    opacity:1;
    -webkit-transform:  scaleX(0.01) scaleY(0.01) ;
  }
  75% {
    opacity:0;
    -webkit-transform:  scaleX(0.70) scaleY(0.70) ;
  }
  100% {
    opacity:0;
    -webkit-transform:  scaleX(0.70) scaleY(0.70) ;
  }
}

@-o-keyframes area_p_anim1 {
  0% {
    opacity:1;
    -o-transform:  scaleX(0.01) scaleY(0.01) ;
  }
  75% {
    opacity:0;
    -o-transform:  scaleX(0.70) scaleY(0.70) ;
  }
  100% {
    opacity:0;
    -o-transform:  scaleX(0.70) scaleY(0.70) ;
  }
}

@-ms-keyframes area_p_anim1 {
  0% {
    opacity:1;
    -ms-transform:  scaleX(0.01) scaleY(0.01) ;
  }
  75% {
    opacity:0;
    -ms-transform:  scaleX(0.70) scaleY(0.70) ;
  }
  100% {
    opacity:0;
    -ms-transform:  scaleX(0.70) scaleY(0.70) ;
  }
}
@keyframes area_p_anim2{
  0% {
    opacity:1;
    transform:  scaleX(0.01) scaleY(0.01) ;
  }
  25% {
    opacity:1;
    transform:  scaleX(0.01) scaleY(0.01) ;
  }
  100% {
    opacity:0;
    transform:  scaleX(0.70) scaleY(0.70) ;
  }
}

@-moz-keyframes area_p_anim2{
  0% {
    opacity:1;
    -moz-transform:  scaleX(0.01) scaleY(0.01) ;
  }
  25% {
    opacity:1;
    -moz-transform:  scaleX(0.01) scaleY(0.01) ;
  }
  100% {
    opacity:0;
    -moz-transform:  scaleX(0.70) scaleY(0.70) ;
  }
}

@-webkit-keyframes area_p_anim2 {
  0% {
    opacity:1;
    -webkit-transform:  scaleX(0.01) scaleY(0.01) ;
  }
  25% {
    opacity:1;
    -webkit-transform:  scaleX(0.01) scaleY(0.01) ;
  }
  100% {
    opacity:0;
    -webkit-transform:  scaleX(0.70) scaleY(0.70) ;
  }
}

@-o-keyframes area_p_anim2 {
  0% {
    opacity:1;
    -o-transform:  scaleX(0.01) scaleY(0.01) ;
  }
  25% {
    opacity:1;
    -o-transform:  scaleX(0.01) scaleY(0.01) ;
  }
  100% {
    opacity:0;
    -o-transform:  scaleX(0.70) scaleY(0.70) ;
  }
}

@-ms-keyframes area_p_anim2 {
  0% {
    opacity:1;
    -ms-transform:  scaleX(0.01) scaleY(0.01) ;
  }
  25% {
    opacity:1;
    -ms-transform:  scaleX(0.01) scaleY(0.01) ;
  }
  100% {
    opacity:0;
    -ms-transform:  scaleX(0.70) scaleY(0.70) ;
  }
}


#area_place{
	margin: 0 auto;
	overflow: hidden;
}
.area_place_content{
	max-width:1000px;
	margin: 0 auto;
	padding: 60px 0;
	overflow: hidden;
}
.area_place_body{
	position: relative;
	display:block;
	margin: 2%;
	width: 46%;
	float:left;
	box-sizing:border-box;
	/* border-bottom:#212121 1px solid; */
	/* border-right:#212121 1px solid; */
	box-shadow: 0 5px 24px rgba(0,0,0,0.6);
	background-color: rgba(48, 40, 40, 0.89);
	padding: 20px;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
	align-items: center; /* 縦方向中央揃え */
	overflow: hidden;
}
.area_place_body:before{
    position:absolute;
    left:0;
    top:0;
    right:0;
    bottom:0;
    pointer-events:none;
    background:rgba(213, 194, 48, 0.25);
    content:"";
    opacity:0;
}
.area_place_body.on:before{
}

.area_img{
    width:34%;
    height:auto;
    display:block;
    box-shadow: 0 5px 24px rgba(0,0,0,0.6);
    border-radius: 200px;
    float: left;
    position:relative;
}
.finished{
	position:absolute;
	top:-20px;
	right:-15px;
}
.area_place_txt{
    position:relative;
    float:right;
    width:60%;
    right:0;
    bottom:0;
    padding:0 20px 5px 20px;
    text-align: left;
    box-sizing: border-box;
}
.area_place_txt h2{
	text-align:left;
	font-size:18px;
	color:#dfcb31;
	margin-bottom:5px;
}
.area_place_txt p{
	line-height:1.8;
	color:rgba(255,255,255,0.7);
	font-weight:bold;
	display:inline-block;
	/* margin-right:14px; */
}
.area_place_txt span{
	margin-right:8px;
}
/*
.area_place_txt p.time:before{
	display:inline-block;
	content:"";
	background:url(/grandprix/2018/images/area_icon_time.png) center 0 no-repeat;
	background-size:14px;
	width:14px;
	height:14px;
	vertical-align:middle;
	padding-left:5px;
	padding-top:2px;
 }
.area_place_txt p.place:before{
	display:inline-block;
	content:"";
	background:url(/grandprix/2018/images/area_icon_place.png) center 0 no-repeat;
	background-size:11px 15px;
	width:11px;
	height:15px;
	vertical-align:middle;
	padding-left:8px;
	padding-top:4px;
 }
.area_place_txt p.number:before{
	display:inline-block;
	content:"";
	background:url(/grandprix/2018/images/area_icon_number.png) center 0 no-repeat;
	background-size:15px 14px;
	width:15px;
	height:14px;
	vertical-align:middle;
	padding-left:4px;
	padding-top:4px;
 }
 */
.area_place_txt p.more{
	text-align:right;
	font-size:11px;
	margin-top: 12px;
    margin-right: 4px;
}
.area_place_txt p.more:before{
	display:inline-block;
	content:"";
	width:0;
	height:0;
	border:3px solid transparent;
	border-left:5px solid #343031;
	padding-right:4px;
}


@media screen and (max-width:767px) {
	.area_p{
		position: absolute;
		left: 0;
	}
    .area_p a,.area_p:before,.area_p:after{
        width:14px;
        height: 14px;
        margin: -7px 0 0 -7px;
    }
	.area_p:before,.area_p:after{
		width:120px;
		height: 120px;
		margin: -60px 0 0 -60px;
		border-radius: 60px;
	}
	#ap1{
		top: 51.7%;
		margin-left: 70.7%;
	}
	#ap2{
		top: 67%;
		margin-left: 64.5%;
	}
	#ap3{
		top:68%;
		margin-left: 62%;
	}
	#ap4{
		top:68%;
		margin-left:64%;
	}
	#ap5{
		top: 70.5%;
		margin-left: 49.5%;
	}
	#ap6{
		top: 73%;
		margin-left: 40%;
	}
	#ap7{
		top: 73%;
		margin-left: 42%;
	}
	#ap8{
		top: 81%;
		margin-left: 12%;
	}
	#ap9{
		top: 69%;
		margin-left: 63%;
	}
	#ap10{
		top: 74%;
		margin-left: 41%;
	}

	.area_detail_1 #ap1{
		top: 39%;
		margin-left: 74%;
	}
	.area_detail_2 #ap8{
		top: 54%;
		margin-left: 20%;
	}
	.area_detail_3 #ap2{
		top: 51%;
		margin-left: 72%;
	}
	.area_detail_4 #ap5{
		top: 41%;
		margin-left: 76%;
	}
	.area_detail_5 #ap3{
		top: 49%;
		margin-left: 68%;
	}
	.area_detail_6 #ap4{
		top: 49%;
		margin-left: 68%;
	}
	.area_detail_7 #ap6{
		top: 44%;
		margin-left: 64%;
	}
	.area_detail_8 #ap7{
		top: 44%;
		margin-left: 64%;
	}
	.area_detail_9 #ap9{
		top: 49%;
		margin-left: 68%;
	}
	.area_detail_10 #ap10{
		top: 44%;
		margin-left: 64%;
	}
	
	.area_txt_place{
		margin-top:10px;
		margin-left:30px;
	}
	#area_place{
		margin-top:0;
		padding: 0;
		max-width: none;
	}
	.area_place_content{
		width:auto;
		padding: 0;
	}
	.area_place_body{
		position: relative;
		/* display:block; */
		text-align:left;
		margin:0;
		margin-bottom:1px;
		width:auto;
		float: none;
		padding: 15px;
		overflow: hidden;
	}
	.area_place_body img.finished{
		z-index: 9999;
		top:-10px;
		right:0;
	}
	.area_img{
		width:30%;
		/* margin: 20px 0; */
	}

	.area_place_txt{
		width: 70%;
		padding: 10px 0 12px 15px;
	}

	.area_place_txt h2{
		font-size: 110%;
	}
	.area_place_txt p{
		display:block;
		line-height:1.6;
		font-size:13px;
	}
	.area_place_txt p.more{
		margin:0;
		position: absolute;
		bottom: 5px;
		right: 7px;
	}
	.area_place_txt span{
		display:none;
	}
	.area_place_txt .place span.lines{
		display:inline-block;
	}

}
@media screen and (max-width:360px) {
.area_place_txt .place span.lines{
	display:block;
	padding-left:12px;
}

}


/*-----------------------------------------------------------------------------* エリア詳細 */

.area_finished{
    height:0;
    width:196px;
    padding:100px 0 0;
    background:url(/grandprix/2018/images/area_finished.png) right center no-repeat;
    position:absolute;
    left:50%;
    top:40%;
    margin:0 0 0 -434px;
    background-size:auto 100%;
    overflow:hidden;

    -webkit-animation: left_in ease-out 0.5s;
    -webkit-animation-iteration-count: 1;
    -webkit-transform-origin: 50% 50%;
    -webkit-animation-fill-mode:forwards; /*Chrome 16+, Safari 4+*/ 
    -moz-animation: left_in ease-out 0.5s;
    -moz-animation-iteration-count: 1;
    -moz-transform-origin: 50% 50%;
    -moz-animation-fill-mode:forwards; /*FF 5+*/
    -o-animation: left_in ease-out 0.5s;
    -o-animation-iteration-count: 1;
    -o-transform-origin: 50% 50%;
    -o-animation-fill-mode:forwards; /*Not implemented yet*/
    -ms-animation: left_in ease-out 0.5s;
    -ms-animation-iteration-count: 1;
    -ms-transform-origin: 50% 50%;
    -ms-animation-fill-mode:forwards; /*IE 10+*/

    animation: left_in ease-out 0.5s;
    animation-iteration-count: 1;
    transform-origin: 50% 50%;
    animation-fill-mode:forwards; /*when the spec is finished*/	

	-webkit-animation-delay: 2s;
	-moz-animation-delay: 2s;
	-o-animation-delay: 2s;
	-ms-animation-delay: 2s;
	animation-delay: 2s;
	opacity: 0;
}
.area_finished span{
	display: none;
}
.area_place_body .area_finished{
    top:-10px;
    left:0;
    margin:0;
    padding:80px 0 0;
    width:156px;
}

#area_movie{
	padding: 30px 0 70px;
}
#area_movie .tc_inner{
	padding: 0;
}

#area_chenge_m{
	margin-top: 60px;
}
.area_win{
	background: #000;
	min-width: 1024px;
	margin-bottom: 60px;
	max-width: 1140px;
}
.area_win .wc_body{
	padding: 0;
}
.bumon_ttl{
	display: block;
	margin: 0 auto;
}
.winner_content{

}
.winner_content .winner_body:not(:first-child) {
    margin-left: -5px;
}
.winner_body{
	display: inline-block;
	vertical-align: top;
	width: 33.333%;
}
.profile_box{
	padding: 10%;
	position: relative;
}
.icon_gp{
	position: absolute;
	right: 0;
	top: -60px;
	width: 42%;
}
.wc_body p.shop{
	margin: 0;
}
.wc_body h3.name{
	font-size: 22px;
	letter-spacing: 2px;
	margin-top: 0;
	margin-bottom: 10px;
}
.age{
	font-size: 18px;
}
.wc_body p.winner_text{
	margin: 0;
}
#area_special.area_win{
	margin-bottom: 100px;
}
#area_special .winner_body{
	width: auto;
}
#area_special .profile_box{
    width: 54%;
    padding: 4%;
    display: inline-block;
}

#area_detail .content_list{
    min-width: 600px;
	margin: 0 auto;
}
#area_detail .content_list h3 {
    text-align:center;
	color: rgb(220, 198, 79);
}
#area_detail .content_list p{
	text-align: center;
}
.area_map{
	margin-top: 60px;
}
#area_detail .more_map{
	width: 860px;
	display:block;
    text-align: right;
    font-size: 13px;
	margin: 10px auto 0;
}

/* 大会スケジュール予定 */
.area_sche{
	position: relative;
	margin: 12px auto !important;
	text-align: left;
	width: 265px;
	border-top: rgba(255,255,255,0.2) 1px dotted !important;
}
.area_sche li{
	padding: 5px 7px;
	border-bottom: rgba(255,255,255,0.2) 1px dotted !important;
}
.area_sche span{
}
.as_time{
	position: absolute;
}
.as_ttl{
	display: block;
	margin-left: 75px;
}


@media screen and (max-width:767px) {
    .area_finished{
        margin:0;
        height:0;
        width:40%;
        padding:20% 0 0;
        left:0;
        top:38%;
        background-size:auto 100%;
    }
    .area_place_body .area_finished{
        top:-8px;
        left:0;
        margin:0;
        padding:60px 0 0;
        width:116px;
    }
	
	#area_movie{
		padding: 20px 0 50px;
	}
	
	#area_chenge_m{
		margin-top: 0;
	}
	.area_win{
		width: 100%;
		min-width: 100%;
		margin-bottom: 0;
		max-width: 100%;
	}
	.winner_img{
		width: 100%;
	}
	.winner_body{
		width: auto;
	}
	.profile_box{
		max-width: 100%;
		width: auto;
	}
	.icon_gp{
		width: 153px;
	}
	#area_special.area_win{
		margin-bottom: 80px;
	}
	#area_special .profile_box{
		min-width: 270px;
		padding: 10%;
		max-width: 100%;
		width: auto;
		display: block;
	}
	#area_detail .content_list{
		min-width: auto;
	}
	#area_detail ul {
		border-top:none;
	}
	.area_map{
		margin:20px 0;
	}
	#area_detail iframe{
		width:90%;
	}
	#area_detail .more_map{
		width:90%;
	}
	
	/* 大会スケジュール予定 */
	.area_sche{
		width: 245px;
	}
	.area_sche li{
		text-align: left;
	}
	.area_sche span{
	}
	.as_time{
	}
	.as_ttl{
	}
	
}

@media screen and (max-width:360px) {
	.icon_gp{
		width: 130px;
	}
}


/*--------------------------------- トップ */
body.top #contents, body.index #contents{
	background: url(/grandprix/2018/images/top_contents_bg.png) 0 bottom repeat-x;
	box-shadow:none;
}
body.top #header,body.index #header{
    background:none;
    box-shadow: none;
	display:none;
}
body.top #header_logo,body.index #header_logo{
    display:none;
}

#top_update{
    position:relative;
    border-top:1px #333 solid;
    padding:0;
    border-bottom:1px #181818 solid;
    background: #1b191b;
    max-width: 1200px;
    margin: 0 auto;
    /* background: #222; */
}
#top_update .wc_inner{
    position:relative;
    max-width:768px;
    margin:0 auto;
    display:inline-block;
    padding:0.6em;
}
.minlist_title{
	letter-spacing: 3px;
	position:absolute;
	font-size:12px;
	top:50%;
	margin:-6px 0 0;
	line-height:1;
	font-weight: normal;
	opacity: 0.8;
}
.minlist_item{
    margin: 0 0 0 6em;
    display: block;
    text-align: left;
    font-size: 13px;
    padding: 0.5em 1.8em 0.5em 0.8em;
    line-height:1.3;
    position:relative;
    letter-spacing:1px;
    line-height: 1.4;
    color:#ddd;
}
a.minlist_item:hover{
    background:#3f3b15;
}
a.minlist_item:after{
	content:"";
	width:4px;
	height:4px;
	border:#fff 1px solid;
	border-width:1px 1px 0 0;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	position:absolute;
	right:0;
	top:50%;
	margin: -2px 1em 0 0;
	opacity:0.6;
}
.minlist_item .date{
	position: absolute;
	opacity:0.5;
}
.minlist_item .value{
	display: block;
	margin-left: 4em;
}
.minlist_item .value_2{
	display: block;
	margin-left: 0;
}



.top_contents{
	max-width: 1200px;
	margin:0 auto 120px;
	overflow: hidden;
	box-shadow:0 6px 40px rgba(0,0,0,0.8);
	z-index:10;
	background: #000;
}
.top_content{
	background: #000;
	position:relative;
	width: 33.333%;
	margin:0;
	float: left;
	overflow: hidden;
}
.tc_inner{
	display: block;
	padding-top: 110%;
}
.tc_img, .tc_title, .tc_mark, .tc_read, .tc_line, .tc_corner, .tc_corner_t{
	position: absolute;
	left: 0;
	right: 0;
}
.tc_img{
	left:0;right:0;top:0;bottom:0;    
	background:#dcd883;
}
.tc_title{
    top:8%;
    left:0;
	}
.tc_mark{
    top:50%;
    left:0;
    margin:-9%;
}
.tc_read{
    top: 40%;
    left:0;
}
.tc_img, .tc_title img, .tc_mark　img, .tc_read　img{
	display: block;
	width:100%;
	height: auto;
}
.tc_line{
	bottom:0;
	height: 1px;
	background:#f8eb26;
	opacity:0.5;
}
.tc_line.commingsoon{
	background:#806868;
}
.tc_corner,.tc_corner_t{
	right:0;
	bottom:0;
	left: auto;
	top: initial;
	width:25%;
	padding: 25% 0 0;
}
#container .tc_corner_img{
	margin-right: -100%;
	max-width: none;
	width: 200%;
	height: auto;
	position: absolute;
	left: 0;
	top: 0;
}
.tc_corner_t img{
    position:absolute;
    bottom:0;
    right:0;
    width:56%;
    height:auto;
}
#top_performance .tc_read{
    top:47%
}
#top_area .tc_read{
    top:38%
}
#top_final .tc_read{
    top:42.5%
}
#top_visitor .tc_read{
    top:42%
}
#top_2017 .tc_title{
    top:42%
}

#over_video_bg{
	display: none;
	opacity:0;
	position: absolute;
	position: fixed;
	left:0;top:0;right:0;bottom:0;
	z-index: 10000000;
}
#over_video_bg{
	background: rgba(0,0,0,0.8);
}
#over_video_wrap{
	width: 700px;
	left: 50%;
	top: 50%;
	position: absolute;
	position: fixed;
	display: none;
	opacity: 0;
	margin: 0 0 0 -350px;
	z-index: 10000001;
}
#over_video, #over_video2, #over_video3{
	width: 100%;
	/*height: 394px;*/
	margin: 0 0 0 0;
	padding: 56.25% 0 0;
	height: 0;
	position: relative;
	top: -182px;
}

.btn_close{
	width:60px;
	height:60px;
	background:url(/grandprix/2018/images/btn_close.png) center center no-repeat;
	position:absolute;
	right:0px;
	top:-70px;
	background-size:36px;
	border:#fff 0 solid;
	box-sizing:border-box;
	opacity:0.8;
	z-index: 10005;
}

@media screen and (max-width: 767px) {
	#over_video_wrap{
		width:100%;
		margin: 0 0 0 0;
		left:0
	}
	#over_video, #over_video2, #over_video3{
		margin: -24% 0 0 0;
		top:0;
	}

	.btn_close{
		width: 46px;
		height: 46px;
		background-size: 28px;
		top: -50px;
	}
}
#over_video iframe, #over_video2 iframe, #over_video3 iframe{
	position: absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
	display: block;
	height: 100%;
	width: 100%;
}
#over_video_wrap.on,#over_video_bg.on{
	display: block;
 -webkit-animation: image_in ease-out 0.4s;
  -webkit-animation-iteration-count: 1;
  -webkit-transform-origin: 50% 50%;
  -webkit-animation-fill-mode:forwards; /*Chrome 16+, Safari 4+*/ 
  -moz-animation: image_in ease-out 0.4s;
  -moz-animation-iteration-count: 1;
  -moz-transform-origin: 50% 50%;
  -moz-animation-fill-mode:forwards; /*FF 5+*/
  -o-animation: image_in ease-out 0.4s;
  -o-animation-iteration-count: 1;
  -o-transform-origin: 50% 50%;
  -o-animation-fill-mode:forwards; /*Not implemented yet*/
  -ms-animation: image_in ease-out 0.4s;
  -ms-animation-iteration-count: 1;
  -ms-transform-origin: 50% 50%;
  -ms-animation-fill-mode:forwards; /*IE 10+*/
  animation: image_in ease-out 0.4s;
  animation-iteration-count: 1;
  transform-origin: 50% 50%;
  animation-fill-mode:forwards; /*when the spec is finished*/
	animation-delay: 0s;
}
#bottom_bnr{
	display: none;
	-webkit-transform: translate(0px, 100%);
	-moz-transform: translate(0px, 100%);
	-o-transform: translate(0px, 100%);
	-ms-transform: translate(0px, 100%);
	transform: translate(0px, 100%);
	-webkit-transition:all 0.7s ease-out;
	-moz-transition:all 0.7s ease-out;
	-o-transition:all 0.7s ease-out;
	-ms-transition:all 0.7s ease-out;
	transition:all 0.7s ease-out;
}
#bottom_bnr.on{
	-webkit-transform: translate(0px, 0%);
	-moz-transform: translate(0px, 0%);
	-o-transform: translate(0px, 0%);
	-ms-transform: translate(0px, 0%);
	transform: translate(0px, 0%);
}

@media screen and (max-width:767px) {
	body.top #contents, body.index #contents{
		background: #1f1c1f;
		box-shadow: 0 0 20px rgba(0,0,0,0.6);
	}
    body.top #header,body.index #header{
        display:block;
    }

	.top_contents{
		max-width: none;
		margin: 0;
	}
	.top_content{
	    float:none;
		width:auto;
	}
	.top_inner{

	}
	#top_update{
	}
	#top_update .wc_inner{
	    display: block;
	    height: auto;
	    padding:0;
	}
	.minlist_title{
	position: relative;
	top: 0;
	margin: 0;
	text-align: left;
	padding: 0.5em 4%;
	font-weight: normal;
	font-size: 10px;
	}
	.minlist_item{
	margin: 0;
	padding: 0.7em 4%;
	border-top: rgba(255, 255, 255, 0.10) 1px solid;
	height: auto;
	line-height: 1.4;
	font-size: 12px;
	}
	.minlist_item .date{	
	}
	.minlist_item .value{	
	}
}


/*ファイナル後追加*/
#top_ttl{
	margin-bottom: -1px;
	background-color: #000;
}

#top_change_m.top_content, #top_change_w.top_content, #top_style_m.top_content, #top_style_w.top_content, #top_art_m.top_content, #top_art_w.top_content, #top_model_w.top_content, #top_all_finalist.top_content{
	width: 25%;
}

#top_change_m .tc_inner, #top_change_w .tc_inner, #top_style_m .tc_inner, #top_style_w .tc_inner, #top_art_m .tc_inner, #top_art_w .tc_inner, #top_model_w .tc_inner, #top_all_finalist .tc_inner{
    padding-top: 149%;
}

@media screen and (max-width:767px) {
	#top_ttl{
		margin-bottom: 0;
		width: 150%;
		max-width: 150%;
		margin-left: -25%;
	}
	#top_change_m.top_content, #top_change_w.top_content, #top_style_m.top_content, #top_style_w.top_content, #top_art_m.top_content, #top_art_w.top_content, #top_model_w.top_content, #top_all_finalist.top_content{
		width: 50%;
		display: inline-block;
	}
    .top_content:nth-child(odd) {
        margin-left: -6px;
    }
}


/*-----------------------------------------------------------------------------* ファイナリスト各ページ ベストチェンジ スタイルデザイン */

.change_m #header, .change_w #header, .style_m #header, .style_w #header, .art_m #header, .art_w #header, .model_w #header{
	border-bottom: 1px solid #333;
}
.btns_finalists{
	text-align: center;
	background: rgba(0,0,0,0.6);
	border-bottom: 1px solid #333;
	padding-top: 78px;
}
.btns_finalists a{
	position:relative;
	display: inline-block;
	text-align: center;
	width: 13%;
	padding:23px 0 20px;
	line-height: 1.4;
	font-size:15px;
    color: #fff;
    font-weight: bold;
}
a.now_display{
	color:#F8EB27;
}
.now_display:after{
	content: "";
    display: inline-block;
    width: 80%;
    height: 4px;
    position: absolute;
    bottom: 0;
    left: 10%;
    background: #F8EB27;
}

#winners ul{
	margin: 0 auto 110px;
	min-width: 1140px;
}

.finalists_list{
	width: 1140px;
	margin: 0 auto;
}
#finalists ul{
	margin: 10px auto 60px;
	text-align: left;
}
#finalists li{
	display: inline-block;
}

/* ベストチェンジ男性 */
.change_m{
}
.change_m #main{
	padding: 0;
}
.change_m #change_m_ttl{
	height:220px;
	min-width: 1140px;
    background: url(/grandprix/2018/images/gp/gp_ttl_change_m.jpg) center 0 no-repeat #1f1c1f;
	margin-top: 50px;
}
.change_m #change_m_ttl span{
	display: none;
}
.change_m #change_m_1st{
	height:500px;
    background: url(/grandprix/2018/images/gp/gp_change_m_1.jpg) center 0 no-repeat;
}
.change_m #change_m_2nd{
	display: inline-block;
	width:570px;
	height:398px;
    background: url(/grandprix/2018/images/gp/gp_change_m_2.jpg) center 0 no-repeat;
	background-size: 570px auto;
}
.change_m #change_m_3rd{
	display: inline-block;
	width:570px;
	height:398px;
    background: url(/grandprix/2018/images/gp/gp_change_m_3.jpg) center 0 no-repeat;
	background-size: 570px auto;
}

/* ベストチェンジ女性 */
.change_w{
}
.change_w #main{
	padding: 0;
}
.change_w #change_w_ttl{
	height:220px;
	min-width: 1140px;
    background: url(/grandprix/2018/images/gp/gp_ttl_change_w.jpg) center 0 no-repeat #1f1c1f;
	margin-top: 50px;
}
.change_w #change_w_ttl span{
	display: none;
}
.change_w #change_w_1st{
	height:500px;
    background: url(/grandprix/2018/images/gp/gp_change_w_1.jpg) center 0 no-repeat;
}
.change_w #change_w_2nd{
	display: inline-block;
	width:570px;
	height:398px;
    background: url(/grandprix/2018/images/gp/gp_change_w_2.jpg) center 0 no-repeat;
	background-size: 570px auto;
}
.change_w #change_w_3rd{
	display: inline-block;
	width:570px;
	height:398px;
    background: url(/grandprix/2018/images/gp/gp_change_w_3.jpg) center 0 no-repeat;
	background-size: 570px auto;
}

/* スタイルデザイン男性 */
.style_m{
}
.style_m #main{
	padding: 0;
}
.style_m #style_m_ttl{
	height:220px;
	min-width: 1140px;
    background: url(/grandprix/2018/images/gp/gp_ttl_style_m.jpg) center 0 no-repeat #1f1c1f;
	margin-top: 50px;
}
.style_m #style_m_ttl span{
	display: none;
}
.style_m #style_m_1st{
	height:500px;
    background: url(/grandprix/2018/images/gp/gp_style_m_1.jpg) center 0 no-repeat;
}
.style_m #style_m_2nd{
	display: inline-block;
	width:570px;
	height:398px;
    background: url(/grandprix/2018/images/gp/gp_style_m_2.jpg) center 0 no-repeat;
	background-size: 570px auto;
}
.style_m #style_m_3rd{
	display: inline-block;
	width:570px;
	height:398px;
    background: url(/grandprix/2018/images/gp/gp_style_m_3.jpg) center 0 no-repeat;
	background-size: 570px auto;
}
.style_m #style_m_sa{
	height:579px;
    background: url(/grandprix/2018/images/gp/gp_style_m_sa.jpg) center 0 no-repeat;
	margin-top: 50px;
}

/* スタイルデザイン女性 */
.style_w{
}
.style_w #main{
	padding: 0;
}
.style_w #style_w_ttl{
	height:220px;
	min-width: 1140px;
    background: url(/grandprix/2018/images/gp/gp_ttl_style_w.jpg) center 0 no-repeat #1f1c1f;
	margin-top: 50px;
}
.style_w #style_w_ttl span{
	display: none;
}
.style_w #style_w_1st{
	height:500px;
    background: url(/grandprix/2018/images/gp/gp_style_w_1.jpg) center 0 no-repeat;
}
.style_w #style_w_2nd{
	display: inline-block;
	width:570px;
	height:398px;
    background: url(/grandprix/2018/images/gp/gp_style_w_2.jpg) center 0 no-repeat;
	background-size: 570px auto;
}
.style_w #style_w_3rd{
	display: inline-block;
	width:570px;
	height:398px;
    background: url(/grandprix/2018/images/gp/gp_style_w_3.jpg) center 0 no-repeat;
	background-size: 570px auto;
}

/* アート男性 */
.art_m{
}
.art_m #main{
	padding: 0;
}
.art_m #art_m_ttl{
	height:220px;
	min-width: 1140px;
    background: url(/grandprix/2018/images/gp/gp_ttl_art_m.jpg) center 0 no-repeat #1f1c1f;
	margin-top: 50px;
}
.art_m #art_m_ttl span{
	display: none;
}
.art_m #art_m_1st{
	height:500px;
    background: url(/grandprix/2018/images/gp/gp_art_m_1.jpg) center 0 no-repeat;
}
.art_m #art_m_2nd{
	display: inline-block;
	width:570px;
	height:398px;
    background: url(/grandprix/2018/images/gp/gp_art_m_2.jpg) center 0 no-repeat;
	background-size: 570px auto;
}
.art_m #art_m_3rd{
	display: inline-block;
	width:570px;
	height:398px;
    background: url(/grandprix/2018/images/gp/gp_art_m_3.jpg) center 0 no-repeat;
	background-size: 570px auto;
}

/* アート女性 */
.art_w{
}
.art_w #main{
	padding: 0;
}
.art_w #art_w_ttl{
	height:220px;
	min-width: 1140px;
    background: url(/grandprix/2018/images/gp/gp_ttl_art_w.jpg) center 0 no-repeat #1f1c1f;
	margin-top: 50px;
}
.art_w #art_w_ttl span{
	display: none;
}
.art_w #art_w_1st{
	height:500px;
    background: url(/grandprix/2018/images/gp/gp_art_w_1.jpg) center 0 no-repeat;
}
.art_w #art_w_2nd{
	display: inline-block;
	width:570px;
	height:398px;
    background: url(/grandprix/2018/images/gp/gp_art_w_2.jpg) center 0 no-repeat;
	background-size: 570px auto;
}
.art_w #art_w_3rd{
	display: inline-block;
	width:570px;
	height:398px;
    background: url(/grandprix/2018/images/gp/gp_art_w_3.jpg) center 0 no-repeat;
	background-size: 570px auto;
}

/* モデル女性 */
.model_w{
}
.model_w #main{
	padding: 0;
}
.model_w #model_w_ttl{
	height:220px;
	min-width: 1140px;
    background: url(/grandprix/2018/images/gp/gp_ttl_model_w.jpg) center 0 no-repeat #1f1c1f;
	margin-top: 50px;
}
.model_w #model_w_ttl span{
	display: none;
}
.model_w #model_w_1st{
	height:500px;
    background: url(/grandprix/2018/images/gp/gp_model_w_1.jpg) center 0 no-repeat;
}
.model_w #model_w_2nd{
	display: inline-block;
	width:570px;
	height:398px;
    background: url(/grandprix/2018/images/gp/gp_model_w_2.jpg) center 0 no-repeat;
	background-size: 570px auto;
}
.model_w #model_w_3rd{
	display: inline-block;
	width:570px;
	height:398px;
    background: url(/grandprix/2018/images/gp/gp_model_w_3.jpg) center 0 no-repeat;
	background-size: 570px auto;
}
@media screen and (min-width:768px) {
    .change_w #change_w_3rd,
    .change_m #change_m_3rd,
    .model_w #model_w_3rd,
    .model_m #model_m_3rd,
    .w_inner #style_w_3rd,
    .w_inner #style_m_3rd,
    .art_w #art_w_3rd,
    .art_m #art_m_3rd {
        margin-left: -5px;
    }
    .finalists_list li:not(:nth-of-type(3n + 1)){
        margin-left: -5px;
    }
}


@media screen and (max-width:767px) {


	.btns_finalists{
		padding-top: 45px;
	}
	.btns_finalists a{
		width: 25%;
		font-size:12px;
		line-height: 1.3;
		font-weight:normal;
		padding-bottom:18px;
	}
	.btn_s{
		display: block;
		margin-top: 5px;
	}
	a.now_display{
	}
	.now_display:after{
		content: "";
		height: 2px;
	}

	#winners ul{
		min-width: 320px;
		margin-bottom: 10px;
	}
	
	#finalists .read{
		text-align: left;
		padding: 18px;
    	margin: 0 auto;
		line-height: 2;
	}
	.finalists_list{
		width: 100%;
	}
	#finalists ul{
		width: 100%;
		margin: 0 auto 40px;
	}
	#finalists li{
		display: block;
	}
	#finalists li img{
		width: 100%;
	}

	/* ベストチェンジ男性 */
	.change_m #change_m_ttl{
		height:auto;
		padding-top: 30.9%;
		min-width: 320px;
		background-size: 160%;
		margin-top: 0;
	}
	.change_m #change_m_1st{
		height: auto;
		padding-bottom: 160%;
		background: url(/grandprix/2018/images/gp/gp_change_m_1_sp.jpg?ver=3) center 0 no-repeat;
		background-size: 100%;
	}
	.change_m #change_m_2nd{
		display: block;
		width: 100%;
		height: auto;
		padding-bottom: 120%;
		background: url(/grandprix/2018/images/gp/gp_change_m_2_sp.jpg) center 0 no-repeat;
		background-size: 100%;
	}
	.change_m #change_m_3rd{
		display: block;
		width: 100%;
		height: auto;
		padding-bottom: 120%;
		background: url(/grandprix/2018/images/gp/gp_change_m_3_sp.jpg) center 0 no-repeat;
		background-size: 100%;
	}

	/* ベストチェンジ女性 */
	.change_w #change_w_ttl{
		height:auto;
		padding-top: 30.9%;
		min-width: 320px;
		background-size: 160%;
		margin-top: 0;
	}
	.change_w #change_w_1st{
		height: auto;
		padding-bottom: 160%;
		background: url(/grandprix/2018/images/gp/gp_change_w_1_sp.jpg) center 0 no-repeat;
		background-size: 100%;
	}
	.change_w #change_w_2nd{
		display: block;
		width: 100%;
		height: auto;
		padding-bottom: 120%;
		background: url(/grandprix/2018/images/gp/gp_change_w_2_sp.jpg) center 0 no-repeat;
		background-size: 100%;
	}
	.change_w #change_w_3rd{
		display: block;
		width: 100%;
		height: auto;
		padding-bottom: 120%;
		background: url(/grandprix/2018/images/gp/gp_change_w_3_sp.jpg) center 0 no-repeat;
		background-size: 100%;
	}

	/* スタイルデザイン男性 */
	.style_m #style_m_ttl{
		height:auto;
		padding-top: 30.9%;
		min-width: 320px;
		background-size: 160%;
		margin-top: 0;
	}
	.style_m #style_m_1st{
		height: auto;
		padding-bottom: 160%;
		background: url(/grandprix/2018/images/gp/gp_style_m_1_sp.jpg) center 0 no-repeat;
		background-size: 100%;
	}
	.style_m #style_m_2nd{
		display: block;
		width: 100%;
		height: auto;
		padding-bottom: 120%;
		background: url(/grandprix/2018/images/gp/gp_style_m_2_sp.jpg) center 0 no-repeat;
		background-size: 100%;
	}
	.style_m #style_m_3rd{
		display: block;
		width: 100%;
		height: auto;
		padding-bottom: 120%;
		background: url(/grandprix/2018/images/gp/gp_style_m_3_sp.jpg) center 0 no-repeat;
		background-size: 100%;
	}
	.style_m #style_m_sa{
		height: auto;
		padding-bottom: 165%;
		background: url(/grandprix/2018/images/gp/gp_style_m_sa_sp.jpg) center 0 no-repeat;
		background-size: 100%;
		margin-top: 0;
	}

	/* スタイルデザイン女性 */
	.style_w #style_w_ttl{
		height:auto;
		padding-top: 30.9%;
		min-width: 320px;
		background-size: 160%;
		margin-top: 0;
	}
	.style_w #style_w_1st{
		height: auto;
		padding-bottom: 160%;
		background: url(/grandprix/2018/images/gp/gp_style_w_1_sp.jpg) center 0 no-repeat;
		background-size: 100%;
	}
	.style_w #style_w_2nd{
		display: block;
		width: 100%;
		height: auto;
		padding-bottom: 120%;
		background: url(/grandprix/2018/images/gp/gp_style_w_2_sp.jpg) center 0 no-repeat;
		background-size: 100%;
	}
	.style_w #style_w_3rd{
		display: block;
		width: 100%;
		height: auto;
		padding-bottom: 120%;
		background: url(/grandprix/2018/images/gp/gp_style_w_3_sp.jpg) center 0 no-repeat;
		background-size: 100%;
	}

	/* アート男性 */
	.art_m #art_m_ttl{
		height:auto;
		padding-top: 30.9%;
		min-width: 320px;
		background-size: 160%;
		margin-top: 0;
	}
	.art_m #art_m_1st{
		height: auto;
		padding-bottom: 160%;
		background: url(/grandprix/2018/images/gp/gp_art_m_1_sp.jpg) center 0 no-repeat;
		background-size: 100%;
	}
	.art_m #art_m_2nd{
		display: block;
		width: 100%;
		height: auto;
		padding-bottom: 120%;
		background: url(/grandprix/2018/images/gp/gp_art_m_2_sp.jpg) center 0 no-repeat;
		background-size: 100%;
	}
	.art_m #art_m_3rd{
		display: block;
		width: 100%;
		height: auto;
		padding-bottom: 120%;
		background: url(/grandprix/2018/images/gp/gp_art_m_3_sp.jpg) center 0 no-repeat;
		background-size: 100%;
	}

	/* アート女性 */
	.art_w #art_w_ttl{
		height:auto;
		padding-top: 30.9%;
		min-width: 320px;
		background-size: 160%;
		margin-top: 0;
	}
	.art_w #art_w_1st{
		height: auto;
		padding-bottom: 160%;
		background: url(/grandprix/2018/images/gp/gp_art_w_1_sp.jpg) center 0 no-repeat;
		background-size: 100%;
	}
	.art_w #art_w_2nd{
		display: block;
		width: 100%;
		height: auto;
		padding-bottom: 120%;
		background: url(/grandprix/2018/images/gp/gp_art_w_2_sp.jpg) center 0 no-repeat;
		background-size: 100%;
	}
	.art_w #art_w_3rd{
		display: block;
		width: 100%;
		height: auto;
		padding-bottom: 120%;
		background: url(/grandprix/2018/images/gp/gp_art_w_3_sp.jpg) center 0 no-repeat;
		background-size: 100%;
	}

	/* モデル女性 */
	.model_w #model_w_ttl{
		height:auto;
		padding-top: 30.9%;
		min-width: 320px;
		background-size: 160%;
		margin-top: 0;
	}
	.model_w #model_w_1st{
		height: auto;
		padding-bottom: 160%;
		background: url(/grandprix/2018/images/gp/gp_model_w_1_sp.jpg) center 0 no-repeat;
		background-size: 100%;
	}
	.model_w #model_w_2nd{
		display: block;
		width: 100%;
		height: auto;
		padding-bottom: 120%;
		background: url(/grandprix/2018/images/gp/gp_model_w_2_sp.jpg) center 0 no-repeat;
		background-size: 100%;
	}
	.model_w #model_w_3rd{
		display: block;
		width: 100%;
		height: auto;
		padding-bottom: 120%;
		background: url(/grandprix/2018/images/gp/gp_model_w_3_sp.jpg) center 0 no-repeat;
		background-size: 100%;
	}



}




/*---------------------------------アニメーション */

#visual-inner:not(.outline_vi) {
  animation: visual_in ease-out 2s;
  animation-iteration-count: 1;
  transform-origin: 50% 50%;
  animation-fill-mode:forwards; /*when the spec is finished*/
  -webkit-animation: visual_in ease-out 2s;
  -webkit-animation-iteration-count: 1;
  -webkit-transform-origin: 50% 50%;
  -webkit-animation-fill-mode:forwards; /*Chrome 16+, Safari 4+*/ 
  -moz-animation: visual_in ease-out 2s;
  -moz-animation-iteration-count: 1;
  -moz-transform-origin: 50% 50%;
  -moz-animation-fill-mode:forwards; /*FF 5+*/
  -o-animation: visual_in ease-out 2s;
  -o-animation-iteration-count: 1;
  -o-transform-origin: 50% 50%;
  -o-animation-fill-mode:forwards; /*Not implemented yet*/
  -ms-animation: visual_in ease-out 2s;
  -ms-animation-iteration-count: 1;
  -ms-transform-origin: 50% 50%;
  -ms-animation-fill-mode:forwards; /*IE 10+*/
}
@media screen and (min-width: 768px) {
  .outline #visual-inner {
    animation: visual_in ease-out 2s;
    animation-iteration-count: 1;
    transform-origin: 50% 50%;
    animation-fill-mode:forwards; /*when the spec is finished*/
    -webkit-animation: visual_in ease-out 2s;
    -webkit-animation-iteration-count: 1;
    -webkit-transform-origin: 50% 50%;
    -webkit-animation-fill-mode:forwards; /*Chrome 16+, Safari 4+*/ 
    -moz-animation: visual_in ease-out 2s;
    -moz-animation-iteration-count: 1;
    -moz-transform-origin: 50% 50%;
    -moz-animation-fill-mode:forwards; /*FF 5+*/
    -o-animation: visual_in ease-out 2s;
    -o-animation-iteration-count: 1;
    -o-transform-origin: 50% 50%;
    -o-animation-fill-mode:forwards; /*Not implemented yet*/
    -ms-animation: visual_in ease-out 2s;
    -ms-animation-iteration-count: 1;
    -ms-transform-origin: 50% 50%;
    -ms-animation-fill-mode:forwards; /*IE 10+*/
  }
}
@media screen and (max-width: 767px) {
  .outline .visual_title {
    animation: visual_in ease-out 2s;
    animation-iteration-count: 1;
    transform-origin: 50% 50%;
    animation-fill-mode:forwards; /*when the spec is finished*/
    -webkit-animation: visual_in ease-out 2s;
    -webkit-animation-iteration-count: 1;
    -webkit-transform-origin: 50% 50%;
    -webkit-animation-fill-mode:forwards; /*Chrome 16+, Safari 4+*/ 
    -moz-animation: visual_in ease-out 2s;
    -moz-animation-iteration-count: 1;
    -moz-transform-origin: 50% 50%;
    -moz-animation-fill-mode:forwards; /*FF 5+*/
    -o-animation: visual_in ease-out 2s;
    -o-animation-iteration-count: 1;
    -o-transform-origin: 50% 50%;
    -o-animation-fill-mode:forwards; /*Not implemented yet*/
    -ms-animation: visual_in ease-out 2s;
    -ms-animation-iteration-count: 1;
    -ms-transform-origin: 50% 50%;
    -ms-animation-fill-mode:forwards; /*IE 10+*/
  }
}

@keyframes visual_in{
  0% {
    opacity:0;
    transform:  scaleX(1.15) scaleY(1.15) ;
  }
  20% {
    opacity:0;
    transform:  scaleX(1.15) scaleY(1.15) ;
  }
  100% {
    opacity:1;
    transform:  scaleX(1.00) scaleY(1.00) ;
  }
}

@-moz-keyframes visual_in{
  0% {
    opacity:0;
    -moz-transform:  scaleX(1.15) scaleY(1.15) ;
  }
  20% {
    opacity:0;
    -moz-transform:  scaleX(1.15) scaleY(1.15) ;
  }
  100% {
    opacity:1;
    -moz-transform:  scaleX(1.00) scaleY(1.00) ;
  }
}

@-webkit-keyframes visual_in {
  0% {
    opacity:0;
    -webkit-transform:  scaleX(1.15) scaleY(1.15) ;
  }
  20% {
    opacity:0;
    -webkit-transform:  scaleX(1.15) scaleY(1.15) ;
  }
  100% {
    opacity:1;
    -webkit-transform:  scaleX(1.00) scaleY(1.00) ;
  }
}

@-o-keyframes visual_in {
  0% {
    opacity:0;
    -o-transform:  scaleX(1.15) scaleY(1.15) ;
  }
  20% {
    opacity:0;
    -o-transform:  scaleX(1.15) scaleY(1.15) ;
  }
  100% {
    opacity:1;
    -o-transform:  scaleX(1.00) scaleY(1.00) ;
  }
}

@-ms-keyframes visual_in {
  0% {
    opacity:0;
    -ms-transform:  scaleX(1.15) scaleY(1.15) ;
  }
  20% {
    opacity:0;
    -ms-transform:  scaleX(1.15) scaleY(1.15) ;
  }
  100% {
    opacity:1;
    -ms-transform:  scaleX(1.00) scaleY(1.00) ;
  }
}


body:not(.top) #contents {
  animation: contents_in ease-out 2s;
  animation-iteration-count: 1;
  transform-origin: 50% 50%;
  animation-fill-mode:forwards; /*when the spec is finished*/
  -webkit-animation: contents_in ease-out 2s;
  -webkit-animation-iteration-count: 1;
  -webkit-transform-origin: 50% 50%;
  -webkit-animation-fill-mode:forwards; /*Chrome 16+, Safari 4+*/ 
  -moz-animation: contents_in ease-out 2s;
  -moz-animation-iteration-count: 1;
  -moz-transform-origin: 50% 50%;
  -moz-animation-fill-mode:forwards; /*FF 5+*/
  -o-animation: contents_in ease-out 2s;
  -o-animation-iteration-count: 1;
  -o-transform-origin: 50% 50%;
  -o-animation-fill-mode:forwards; /*Not implemented yet*/
  -ms-animation: contents_in ease-out 2s;
  -ms-animation-iteration-count: 1;
  -ms-transform-origin: 50% 50%;
  -ms-animation-fill-mode:forwards; /*IE 10+*/
}
@media screen and (max-width: 767px) {
  .outline .v_read{
    animation: contents_in ease-out 2s;
    animation-iteration-count: 1;
    transform-origin: 50% 50%;
    animation-fill-mode:forwards; /*when the spec is finished*/
    -webkit-animation: contents_in ease-out 2s;
    -webkit-animation-iteration-count: 1;
    -webkit-transform-origin: 50% 50%;
    -webkit-animation-fill-mode:forwards; /*Chrome 16+, Safari 4+*/ 
    -moz-animation: contents_in ease-out 2s;
    -moz-animation-iteration-count: 1;
    -moz-transform-origin: 50% 50%;
    -moz-animation-fill-mode:forwards; /*FF 5+*/
    -o-animation: contents_in ease-out 2s;
    -o-animation-iteration-count: 1;
    -o-transform-origin: 50% 50%;
    -o-animation-fill-mode:forwards; /*Not implemented yet*/
    -ms-animation: contents_in ease-out 2s;
    -ms-animation-iteration-count: 1;
    -ms-transform-origin: 50% 50%;
    -ms-animation-fill-mode:forwards; /*IE 10+*/
  }
}

@keyframes contents_in{
  0% {
    opacity:0;
    transform:  translate(0px,30px)  ;
  }
  20% {
    opacity:1;
    transform:  translate(0px,24px)  ;
  }
  100% {
    opacity:1;
    transform:  translate(0px,0px)  ;
  }
}

@-moz-keyframes contents_in{
  0% {
    opacity:0;
    -moz-transform:  translate(0px,30px)  ;
  }
  20% {
    opacity:1;
    -moz-transform:  translate(0px,24px)  ;
  }
  100% {
    opacity:1;
    -moz-transform:  translate(0px,0px)  ;
  }
}

@-webkit-keyframes contents_in {
  0% {
    opacity:0;
    -webkit-transform:  translate(0px,30px)  ;
  }
  20% {
    opacity:1;
    -webkit-transform:  translate(0px,24px)  ;
  }
  100% {
    opacity:1;
    -webkit-transform:  translate(0px,0px)  ;
  }
}

@-o-keyframes contents_in {
  0% {
    opacity:0;
    -o-transform:  translate(0px,30px)  ;
  }
  20% {
    opacity:1;
    -o-transform:  translate(0px,24px)  ;
  }
  100% {
    opacity:1;
    -o-transform:  translate(0px,0px)  ;
  }
}

@-ms-keyframes contents_in {
  0% {
    opacity:0;
    -ms-transform:  translate(0px,30px)  ;
  }
  20% {
    opacity:0;
    -ms-transform:  translate(0px,24px)  ;
  }
  100% {
    opacity:1;
    -ms-transform:  translate(0px,0px)  ;
  }
}


.area_place_body.on:before{
  animation: over_anim ease-in-out 2.5s;
  animation-iteration-count: 1;
  transform-origin: 50% 50%;
  -webkit-animation: over_anim ease-in-out 2.5s;
  -webkit-animation-iteration-count: 1;
  -webkit-transform-origin: 50% 50%;
}

@keyframes over_anim{
  0% {
    opacity:0;
    transform:  translate(-120%,0px)  scaleX(1.20) skewX(-20deg) ;
  }
  25% {
    opacity:0;
    transform:  translate(-120%,0px)  scaleX(1.20) skewX(-20deg) ;
  }
  45% {
    opacity:1;
    transform:  translate(0%,0px)  scaleX(1.20) skewX(-20deg);
  }
  60% {
    opacity:1;
    transform:  translate(0%,0px)  scaleX(1.20) skewX(-20deg);
  }
  100% {
    opacity:0;
    transform:  translate(0%,0px)  scaleX(1.20) skewX(-20deg);
  }
}

@-webkit-keyframes over_anim{
  0% {
    opacity:0;
    -webkit-transform:  translate(-120%,0px)  scaleX(1.20) skewX(-20deg) ;
  }
  25% {
    opacity:0;
    -webkit-transform:  translate(-120%,0px)  scaleX(1.20) skewX(-20deg) ;
  }
  45% {
    opacity:1;
    -webkit-transform:  translate(0%,0px)  scaleX(1.20) skewX(-20deg);
  }
  60% {
    opacity:1;
    -webkit-transform:  translate(0%,0px)   scaleX(1.20) skewX(-20deg);
  }
  100% {
    opacity:0;
    -webkit-transform:  translate(0%,0px)   scaleX(1.20) skewX(-20deg);
  }
}




/*--------------------------------------------------- .top_content トップコンテンツ*/
.top_content .tc_img,
.top_content .tc_mark,
.top_content .tc_title img,
.top_content .tc_read,
.top_content .tc_line,
.top_content .tc_corner,
.top_content .tc_corner_t
{
	opacity: 0;
}
.top_content .inview{
	position: absolute;
	top:40%;
	left:20%;
	bottom:20%;
	right:20%;
	display: block;
}

.top_content.on .tc_img, .top_content.on .tc_mark{
  -webkit-animation: image_in ease-out 0.6s;
  -webkit-animation-iteration-count: 1;
  -webkit-transform-origin: 50% 50%;
  -webkit-animation-fill-mode:forwards; /*Chrome 16+, Safari 4+*/ 
  -moz-animation: image_in ease-out 0.6s;
  -moz-animation-iteration-count: 1;
  -moz-transform-origin: 50% 50%;
  -moz-animation-fill-mode:forwards; /*FF 5+*/
  -o-animation: image_in ease-out 0.6s;
  -o-animation-iteration-count: 1;
  -o-transform-origin: 50% 50%;
  -o-animation-fill-mode:forwards; /*Not implemented yet*/
  -ms-animation: image_in ease-out 0.6s;
  -ms-animation-iteration-count: 1;
  -ms-transform-origin: 50% 50%;
  -ms-animation-fill-mode:forwards; /*IE 10+*/
  animation: image_in ease-out 1s;
  animation-iteration-count: 1;
  transform-origin: 50% 50%;
  animation-fill-mode:forwards; /*when the spec is finished*/
	animation-delay: 0s;
}
.top_content.on .tc_mark{
	animation-delay: 1.3s;
}

@keyframes image_in{
  0% {
    opacity:0;
    transform:  scaleX(1.15) scaleY(1.15) ;
  }
  100% {
    opacity:1;
    transform:  scaleX(1.00) scaleY(1.00) ;
  }
}

@-moz-keyframes image_in{
  0% {
    opacity:0;
    -moz-transform:  scaleX(1.15) scaleY(1.15) ;
  }
  100% {
    opacity:1;
    -moz-transform:  scaleX(1.00) scaleY(1.00) ;
  }
}

@-webkit-keyframes image_in {
  0% {
    opacity:0;
    -webkit-transform:  scaleX(1.15) scaleY(1.15) ;
  }
  100% {
    opacity:1;
    -webkit-transform:  scaleX(1.00) scaleY(1.00) ;
  }
}

@-o-keyframes image_in {
  0% {
    opacity:0;
    -o-transform:  scaleX(1.15) scaleY(1.15) ;
  }
  100% {
    opacity:1;
    -o-transform:  scaleX(1.00) scaleY(1.00) ;
  }
}

@-ms-keyframes image_in {
  0% {
    opacity:0;
    -ms-transform:  scaleX(1.15) scaleY(1.15) ;
  }
  100% {
    opacity:1;
    -ms-transform:  scaleX(1.00) scaleY(1.00) ;
  }
}



.top_content.on .tc_title img{
  -webkit-animation: left_in ease-out 0.5s;
  -webkit-animation-iteration-count: 1;
  -webkit-transform-origin: 50% 50%;
  -webkit-animation-fill-mode:forwards; /*Chrome 16+, Safari 4+*/ 
  -moz-animation: left_in ease-out 0.5s;
  -moz-animation-iteration-count: 1;
  -moz-transform-origin: 50% 50%;
  -moz-animation-fill-mode:forwards; /*FF 5+*/
  -o-animation: left_in ease-out 0.5s;
  -o-animation-iteration-count: 1;
  -o-transform-origin: 50% 50%;
  -o-animation-fill-mode:forwards; /*Not implemented yet*/
  -ms-animation: left_in ease-out 0.5s;
  -ms-animation-iteration-count: 1;
  -ms-transform-origin: 50% 50%;
  -ms-animation-fill-mode:forwards; /*IE 10+*/
	
  animation: left_in ease-out 0.5s;
  animation-iteration-count: 1;
  transform-origin: 50% 50%;
  animation-fill-mode:forwards; /*when the spec is finished*/	
	animation-delay: 0.8s;
	opacity: 0;
}
.top_content.on .tc_title img:nth-child(2){
	animation-delay: 1s;
}
.top_content.on .tc_title img:nth-child(3){
	animation-delay: 1.2s;
}
.top_content.on #top_outline .tc_title img, .top_content.on #top_final .tc_title img{
  -webkit-animation: right_in ease-out 0.5s;
  -webkit-animation-iteration-count: 1;
  -webkit-transform-origin: 50% 50%;
  -webkit-animation-fill-mode:forwards; /*Chrome 16+, Safari 4+*/ 
  -moz-animation: right_in ease-out 0.5s;
  -moz-animation-iteration-count: 1;
  -moz-transform-origin: 50% 50%;
  -moz-animation-fill-mode:forwards; /*FF 5+*/
  -o-animation: right_in ease-out 0.5s;
  -o-animation-iteration-count: 1;
  -o-transform-origin: 50% 50%;
  -o-animation-fill-mode:forwards; /*Not implemented yet*/
  -ms-animation: right_in ease-out 0.5s;
  -ms-animation-iteration-count: 1;
  -ms-transform-origin: 50% 50%;
  -ms-animation-fill-mode:forwards; /*IE 10+*/
	
  animation: right_in ease-out 0.5s;
  animation-iteration-count: 1;
  transform-origin: 50% 50%;
  animation-fill-mode:forwards; /*when the spec is finished*/	
	animation-delay: 0.8s;
	opacity: 0;
}
.top_content.on #top_outline .tc_title img:nth-child(2), .top_content.on #top_final .tc_title img:nth-child(2){
	animation-delay: 1s;
}
.top_content.on #top_outline .tc_title img:nth-child(3), .top_content.on #top_final .tc_title img:nth-child(3){
	animation-delay: 1.2s;
}

@keyframes left_in{
  0% {
    opacity:0;
    transform:  translate(-20px,0px)  ;
  }
  100% {
    opacity:1;
    transform:  translate(0px,0px)  ;
  }
}

@-moz-keyframes left_in{
  0% {
    opacity:0;
    -moz-transform:  translate(-20px,0px)  ;
  }
  100% {
    opacity:1;
    -moz-transform:  translate(0px,0px)  ;
  }
}

@-webkit-keyframes left_in {
  0% {
    opacity:0;
    -webkit-transform:  translate(-20px,0px)  ;
  }
  100% {
    opacity:1;
    -webkit-transform:  translate(0px,0px)  ;
  }
}

@-o-keyframes left_in {
  0% {
    opacity:0;
    -o-transform:  translate(-20px,0px)  ;
  }
  100% {
    opacity:1;
    -o-transform:  translate(0px,0px)  ;
  }
}

@-ms-keyframes left_in {
  0% {
    opacity:0;
    -ms-transform:  translate(-20px,0px)  ;
  }
  100% {
    opacity:1;
    -ms-transform:  translate(0px,0px)  ;
  }
}
/**/
@keyframes left_in2{
  0% {
    opacity:0;
    transform:  translate(-10%,0px)  ;
  }
  100% {
    opacity:1;
    transform:  translate(0px,0px)  ;
  }
}

@-moz-keyframes left_in2{
  0% {
    opacity:0;
    -moz-transform:  translate(-10%,0px)  ;
  }
  100% {
    opacity:1;
    -moz-transform:  translate(0px,0px)  ;
  }
}

@-webkit-keyframes left_in2 {
  0% {
    opacity:0;
    -webkit-transform:  translate(-10%,0px)  ;
  }
  100% {
    opacity:1;
    -webkit-transform:  translate(0px,0px)  ;
  }
}

@-o-keyframes left_in2 {
  0% {
    opacity:0;
    -o-transform:  translate(-10%,0px)  ;
  }
  100% {
    opacity:1;
    -o-transform:  translate(0px,0px)  ;
  }
}

@-ms-keyframes left_in2 {
  0% {
    opacity:0;
    -ms-transform:  translate(-10%,0px)  ;
  }
  100% {
    opacity:1;
    -ms-transform:  translate(0px,0px)  ;
  }
}


.top_content.on .tc_read{
  -webkit-animation: right_in ease-out 0.5s;
  -webkit-animation-iteration-count: 1;
  -webkit-transform-origin: 50% 50%;
  -webkit-animation-fill-mode:forwards; /*Chrome 16+, Safari 4+*/ 
  -moz-animation: right_in ease-out 0.5s;
  -moz-animation-iteration-count: 1;
  -moz-transform-origin: 50% 50%;
  -moz-animation-fill-mode:forwards; /*FF 5+*/
  -o-animation: right_in ease-out 0.5s;
  -o-animation-iteration-count: 1;
  -o-transform-origin: 50% 50%;
  -o-animation-fill-mode:forwards; /*Not implemented yet*/
  -ms-animation: right_in ease-out 0.5s;
  -ms-animation-iteration-count: 1;
  -ms-transform-origin: 50% 50%;
  -ms-animation-fill-mode:forwards; /*IE 10+*/
	
  animation: right_in ease-out 0.5s;
  animation-iteration-count: 1;
  transform-origin: 50% 50%;
  animation-fill-mode:forwards; /*when the spec is finished*/	
	animation-delay: 1.6s;
	opacity: 0;
}
.top_content.on #top_outline .tc_read, .top_content.on #top_outline .tc_final{
  -webkit-animation: left_in ease-out 0.5s;
  -webkit-animation-iteration-count: 1;
  -webkit-transform-origin: 50% 50%;
  -webkit-animation-fill-mode:forwards; /*Chrome 16+, Safari 4+*/ 
  -moz-animation: left_in ease-out 0.5s;
  -moz-animation-iteration-count: 1;
  -moz-transform-origin: 50% 50%;
  -moz-animation-fill-mode:forwards; /*FF 5+*/
  -o-animation: left_in ease-out 0.5s;
  -o-animation-iteration-count: 1;
  -o-transform-origin: 50% 50%;
  -o-animation-fill-mode:forwards; /*Not implemented yet*/
  -ms-animation: left_in ease-out 0.5s;
  -ms-animation-iteration-count: 1;
  -ms-transform-origin: 50% 50%;
  -ms-animation-fill-mode:forwards; /*IE 10+*/
	
  animation: left_in ease-out 0.5s;
  animation-iteration-count: 1;
  transform-origin: 50% 50%;
  animation-fill-mode:forwards; /*when the spec is finished*/	
	animation-delay: 1.6s;
	opacity: 0;
}

@keyframes  right_in{
  0% {
    opacity:0;
    transform:  translate(20px,0px)  ;
  }
  100% {
    opacity:1;
    transform:  translate(0px,0px)  ;
  }
}

@-moz-keyframes  right_in{
  0% {
    opacity:0;
    -moz-transform:  translate(20px,0px)  ;
  }
  100% {
    opacity:1;
    -moz-transform:  translate(0px,0px)  ;
  }
}

@-webkit-keyframes  right_in {
  0% {
    opacity:0;
    -webkit-transform:  translate(20px,0px)  ;
  }
  100% {
    opacity:1;
    -webkit-transform:  translate(0px,0px)  ;
  }
}

@-o-keyframes  right_in {
  0% {
    opacity:0;
    -o-transform:  translate(20px,0px)  ;
  }
  100% {
    opacity:1;
    -o-transform:  translate(0px,0px)  ;
  }
}

@-ms-keyframes  right_in {
  0% {
    opacity:0;
    -ms-transform:  translate(20px,0px)  ;
  }
  100% {
    opacity:1;
    -ms-transform:  translate(0px,0px)  ;
  }
}


.top_content.on .tc_line{
  -webkit-animation: line_in ease-out 0.3s;
  -webkit-animation-iteration-count: 1;
  -webkit-transform-origin: 0% 0%;
  -webkit-animation-fill-mode:forwards; /*Chrome 16+, Safari 4+*/ 
  -moz-animation: line_in ease-out 0.3s;
  -moz-animation-iteration-count: 1;
  -moz-transform-origin: 0% 0%;
  -moz-animation-fill-mode:forwards; /*FF 5+*/
  -o-animation: line_in ease-out 0.3s;
  -o-animation-iteration-count: 1;
  -o-transform-origin: 0% 0%;
  -o-animation-fill-mode:forwards; /*Not implemented yet*/
  -ms-animation: line_in ease-out 0.3s;
  -ms-animation-iteration-count: 1;
  -ms-transform-origin: 0% 0%;
  -ms-animation-fill-mode:forwards; /*IE 10+*/
  animation: line_in ease-out 0.4s;
  animation-iteration-count: 1;
  transform-origin: 0% 0%;
  animation-fill-mode:forwards; /*when the spec is finished*/
	animation-delay: 2.2s;
	opacity: 0;
}

@keyframes line_in{
  0% {
    opacity:0;
    transform:  scaleX(0.00) ;
  }
  100% {
    opacity:1;
    transform:  scaleX(1.00) ;
  }
}

@-moz-keyframes line_in{
  0% {
    opacity:0;
    -moz-transform:  scaleX(0.00) ;
  }
  100% {
    opacity:1;
    -moz-transform:  scaleX(1.00) ;
  }
}

@-webkit-keyframes line_in {
  0% {
    opacity:0;
    -webkit-transform:  scaleX(0.00) ;
  }
  100% {
    opacity:1;
    -webkit-transform:  scaleX(1.00) ;
  }
}

@-o-keyframes line_in {
  0% {
    opacity:0;
    -o-transform:  scaleX(0.00) ;
  }
  100% {
    opacity:1;
    -o-transform:  scaleX(1.00) ;
  }
}

@-ms-keyframes line_in {
  0% {
    opacity:0;
    -ms-transform:  scaleX(0.00) ;
  }
  100% {
    opacity:1;
    -ms-transform:  scaleX(1.00) ;
  }
}



.top_content.on .tc_corner{
  animation: naname_in ease-out 0.2s;
  animation-iteration-count: 1;
  transform-origin: 0% 0%;
  animation-fill-mode:forwards; /*when the spec is finished*/
  -webkit-animation: naname_in ease-out 0.2s;
  -webkit-animation-iteration-count: 1;
  -webkit-transform-origin: 0% 0%;
  -webkit-animation-fill-mode:forwards; /*Chrome 16+, Safari 4+*/ 
  -moz-animation: naname_in ease-out 0.2s;
  -moz-animation-iteration-count: 1;
  -moz-transform-origin: 0% 0%;
  -moz-animation-fill-mode:forwards; /*FF 5+*/
  -o-animation: naname_in ease-out 0.2s;
  -o-animation-iteration-count: 1;
  -o-transform-origin: 0% 0%;
  -o-animation-fill-mode:forwards; /*Not implemented yet*/
  -ms-animation: naname_in ease-out 0.2s;
  -ms-animation-iteration-count: 1;
  -ms-transform-origin: 0% 0%;
  -ms-animation-fill-mode:forwards; /*IE 10+*/
	animation-delay: 2.4s;
	opacity: 0;
}
.top_content.on .tc_corner.commingsoon{
	-webkit-animation-name:left_in;
	-moz-animation-name:left_in;
	-o-animation-name:left_in;
	-ms-animation-name:left_in;
	animation-name:left_in;
}
.top_content.on .tc_corner_t{
  -webkit-animation: left_in2 ease-out 0.5s;
  -webkit-animation-iteration-count: 1;
  -webkit-transform-origin: 50% 50%;
  -webkit-animation-fill-mode:forwards; /*Chrome 16+, Safari 4+*/ 
  -moz-animation: left_in2 ease-out 0.5s;
  -moz-animation-iteration-count: 1;
  -moz-transform-origin: 50% 50%;
  -moz-animation-fill-mode:forwards; /*FF 5+*/
  -o-animation: left_in2 ease-out 0.5s;
  -o-animation-iteration-count: 1;
  -o-transform-origin: 50% 50%;
  -o-animation-fill-mode:forwards; /*Not implemented yet*/
  -ms-animation: left_in2 ease-out 0.5s;
  -ms-animation-iteration-count: 1;
  -ms-transform-origin: 50% 50%;
  -ms-animation-fill-mode:forwards; /*IE 10+*/
	
  animation: left_in2 ease-out 0.3s;
  animation-iteration-count: 1;
  transform-origin: 50% 50%;
  animation-fill-mode:forwards; /*when the spec is finished*/	
	animation-delay: 2.6s;
	opacity: 0;
}

@keyframes naname_in{
  0% {
    opacity:0;
    transform:  translate(-100%,100%)  ;
  }
  100% {
    opacity:1;
    transform:  translate(0px,0px)  ;
  }
}

@-moz-keyframes naname_in{
  0% {
    opacity:0;
    -moz-transform:  translate(-100%,100%)  ;
  }
  100% {
    opacity:1;
    -moz-transform:  translate(0px,0px)  ;
  }
}

@-webkit-keyframes naname_in {
  0% {
    opacity:0;
    -webkit-transform:  translate(-100%,100%)  ;
  }
  100% {
    opacity:1;
    -webkit-transform:  translate(0px,0px)  ;
  }
}

@-o-keyframes naname_in {
  0% {
    opacity:0;
    -o-transform:  translate(-100%,100%)  ;
  }
  100% {
    opacity:1;
    -o-transform:  translate(0px,0px)  ;
  }
}

@-ms-keyframes naname_in {
  0% {
    opacity:0;
    -ms-transform:  translate(-100%,100%)  ;
  }
  100% {
    opacity:1;
    -ms-transform:  translate(0px,0px)  ;
  }
}

.top_video {
  background: #000000 url("/grandprix/2018/images/top_img_1_pc.jpg");
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-position: center top;
}
.video_pc{
  box-shadow: 0 0 80px #000;
  width: 560px;
  height: 315px;
}
@media screen and (max-width: 767px) {
  .top_video {
    background: #000000 url("/grandprix/2018/images/top_img_1_sp.jpg");
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: center top;
  }
  .video_sp{
    box-shadow: 0 0 20px #000;
    width: 380px;
    height: 240px;
  }
}