@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;500;600;700;800&display=swap');
body,
.contents{
    font-family: 'Zen Maru Gothic', sans-serif;
}
.contents h1{
	font-weight: normal;
    font-size: 1.5em;
    line-height: 2em;
}
.contents h2,h3,h4{
	margin: 0;
}
#main_flex{
	justify-content: space-between;
}
#main_flex .third{
	width: 32.5%;
}
#news{
	background-image: url(/car/roadster/img/news-pc.jpg);
}
#event_top{
	background-image: url(/car/roadster/img/4th_main_pc.jpg);
	margin-top: 120px;
}
#event_3rd{
    background-image: url(/car/roadster/img/3rd_main.jpg);
}
#event_2nd{
    background-image: url(/car/roadster/img/2nd_main.jpg);
}
#event_1st{
    background-image: url(/car/roadster/img/1st_main.jpg);
}
.event_box {
    background-size: cover;
    background-position: center;
    min-height: 350px;
    position: relative;
    margin-bottom: 120px;
}
.event_box .event_btn {
    position: absolute;
    width: 100%;
    text-align: center;
    margin: auto;
    bottom: -75px;
}
.event_box .event_btn img {
    width: 350px;
    max-width: 100%;
}
.event_box .event_title {
    position: absolute;
    width: 100%;
    text-align: center;
    top: 0;
    background: rgba(0, 0, 0, 0.7);
    color: #fff;
    padding: 10px 0;
}
.event_box .event_btn .event_btn_link {
    border: 1px solid #000;
    color: #000;
    width: 350px;
    max-width: 100%;
    padding: 10px 2px;
    box-sizing: border-box;
    margin: -7px auto 0;
    transition: 0.4s;
}
.flex .third .event_box .event_btn img {
    width: 350px;
}
#event_top .event_btn .event_btn_link{
    background-color: #a83224;
    color: #fff;
}
#event_3rd .event_btn .event_btn_link{
    background-color: #fbfbdf;
}
#event_2nd .event_btn .event_btn_link{
    background-color: #f4d620;
}
#event_1st .event_btn .event_btn_link{
    background-color: #436b48;
}
.title{
    padding: 10px;
    box-sizing: border-box;
    text-align: center;
}
.title h2,
.title h3{
    margin: 0;
}
.title #whatsimg{
    width: 500px;
    margin: 0;
}
.bg {
    background-size: cover;
    background-position: center;
    padding: 60px 0;
    box-sizing: border-box;
}
#whatsbg{
    background-image: radial-gradient(rgba(255,255,255,.85) 0%, rgba(255,255,255,.85) 100%),
                      url(../img/about_iigaya_meeting.jpg);
    text-align: center;
    font-weight: 500;
    font-size: 1.1em;
    line-height: 2.4em;
}
.top_title{
    padding: 100px 0 30px;
}
.top_title2{
    margin: 80px auto;
    font-size: 1.1em;
    line-height: 2.4em;
}
#cupsleevebg{
    background-image: url(../img/cupsleeve.jpg);
    background-position: bottom right;
    margin-top: 100px;
}
#cupsleevebg_inner{
    width: 70%;
}
#cupsleevebg_inner_text{
    background-color: rgba(255,255,255,0.5);
    text-align: center;
    padding: 20px;
    box-sizing: border-box;
}
#cupsleevebg_inner .flex{
    margin: 15px 0 0;
    gap: 10px;
    justify-content: space-between;
}
#cupsleevebg_inner .flex .half{
    background-color: rgba(255,255,255,0.5);
    text-align: center;
    padding: 10px;
    box-sizing: border-box;
}
#cupsleevebg_inner .flex .half a{
    color: #000;
    display: block;
}
#cupsleevebg_inner .flex .half a:hover{
    color: #07569e;
}
#brands .flex{
    margin: 0;
}
#brands .bgcontents2 {
    height: 250px;
    max-width: 90%;
    width: 1000px;
    margin: auto;
    text-align: center;
    padding: 30px 10px;
    box-sizing: border-box;
    background-color: rgba(0, 0, 0, 0.6);
    border: 2px solid #fff;
    color: #fff;
    font-size: 1.1em;
}
#brands .bgcontents2 a{
    color: #fff;
}
#brands .bg img {
    display: block;
    max-height: 80px;
    margin: auto;
    margin-bottom: 30px;
}
#ilmotorsport{
    background-image: url(../img/ilmotorsport.jpg);
}
#jassperformance{
    background-image: url(../img/jassperformance.jpg);
}
#revo-rack{
    background-image: url(../img/revo-rack.jpg);
}
#seasucker{
    background-image: url(../img/seasucker.jpg);
}
#swageline{
    background-image: url(../img/swage-line.jpg);
}
#neoplot{
    background-image: url(../img/neoplot.jpg);
}
#brembo{
    background-image: url(../img/brembo.jpg);
}
.newsback{
    background-image: url(/car/roadster/img/news-pc.jpg);
}
#demo{
    text-align: center;
    font-weight: 500;
    font-size: 1.1em;
    line-height: 2.4em;
    margin-bottom: 100px;
}
.visual_sp {
    display: none;
}
.visual {
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    height: 600px;
    max-height: 90%;
    position: relative;
}
.linkback {
    background-size: cover;
    background-position: center;
    height: 650px;
    max-height: 80%;
    position: relative;
}
.linkback a{
    color: #fff;
}
.linkbox {
    font-family: 'Shippori Mincho', serif;
    background-color: rgba(0, 0, 0, 0.5);
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    border: 1px solid #fff;
    text-align: center;
    padding: 20px 10px;
    width: 600px;
    max-width: 80%;
    font-size: 1.5em;
    line-height: 2em;
    font-weight: bold;
    transition: 0.7s;
    cursor: pointer;
}
.linkbox:hover {
    background-color: #fff;
    color: #000;
}
.contactarea h5{
    background-color: #ddd;
    font-weight: normal;
    font-size: 1em;
    padding: 5px 10px;
    box-sizing: border-box;
}
#staff .flex{
    margin: 0 auto;
    align-items: flex-start;
}
h2#staff_title{
    text-align: center;
    border: 0 !important;
    color: #000;
    font-weight: normal;
    line-height: 1.6em;
    margin-bottom: 80px;
}
.staff_img{
    height: 400px;
    background-size: cover;
    background-position: center;
}
.staff_comment{
    padding: 10px 30px;
    box-sizing: border-box;
}
.staff_comment h4{
    text-align: center;
    border: 0 !important;
    font-weight: normal;
    font-size: 1.4em !important;
    margin-top: 30px;
    margin-bottom: 30px;
}
#staff #comment {
    margin: 80px auto 50px;
    text-align: center;
}
#staff #comment img {
    display: block;
    margin: 0 auto 40px;
}
#staff #snsimg {
    margin-bottom: 40px;
}
#staff h3{
    text-align: center;
    font-size: 1.5em;
    margin: 30px auto;
}
#staff #staff_social {
    box-sizing: border-box;
    text-align: center;
    padding: 20px 0 50px;
    box-sizing: border-box;
    font-size: 50px;
}
#staff #staff_social a {
    margin: 0 10px;
    color: #000;
}
.entryimg img.svg_off {
    display: none;
    width: 800px;
    max-width: 100%;
}
#event_logo {
    padding: 100px 10px 0;
    text-align: center;
    box-sizing: border-box;
}
#event_logo img{
    width: 300px;
    max-width: 100%;
}
#events .event_title{
    padding: 100px 10px 60px;
    text-align: center;
    box-sizing: border-box;
    font-size: 1.8em;
}
#events .event_title_text{
    text-align: center;
    box-sizing: border-box;
    font-size: 1.8em;
    padding: 30px 10px;
}
#events .event_contents {
    max-width: 100%;
    width: 1000px;
    margin: 0 auto 60px;
    font-size: 1.1em;
    line-height: 2em;
    text-align: center;
    box-sizing: border-box;
}
#event_about{
    text-align: center;
    font-size: 2em;
    line-height: 2em;
    margin-bottom: 80px;
}
#events iframe{
    width: 100%;
    margin-bottom: 30px;
}
#events table {
    width: 100%;
    border-collapse: collapse;
}
#events table td{
    padding: 10px;
}
.table_contents {
    width: 800px;
    margin-top: 50px;
}
.table_contents_text {
    margin-top: 60px;
    font-size: 0.9em;
    line-height: 2em;
}
.table_contents_text .red{
    color: red;
    font-weight: bold;
}
#events svg{
    max-width: 100%;
}
#events .half{
    min-height: 350px;
    position: relative;
    background-size: cover;
    background-position: center;
    transition: 0.4s;
}
#events .half:hover{
    opacity: 0.7;
}
#events .half a{
    min-height: 350px;
    display: block;
}
#events .half div {
    position: absolute;
    width: 100%;
    text-align: center;
    bottom: 0;
    background: rgba(255, 255, 255, 0.8);
    color: #000;
    padding: 10px 0;
}
#events .allw{
    width: 100%;
    margin-bottom: 80px;
}
#events .text-caution {
    text-align: left;
    margin: 0px auto 60px;
    width: 800px;
    max-width: 100%;
    box-sizing: border-box;
}
#events #caution_area{
    margin-top: 100px;
}
img.borderimg{
    border: 5px solid #ccc;
    width: calc( 100% - 10px ) !important;
}
#buy_caution{
    color: #C00000;
    font-size: 1.3em;
    text-align: center;
    margin-bottom: 40px;
}
#buy_area{
    text-align: center;
    margin-top: 60px;
}
#buy_area .btnlink{
    background-color: #4472C4;
    color: #fff;
    margin: 0 10px;
}

@media screen and (max-width: 1070px) {
    .logo img{
        height: 30px;
    }
    nav a{
        padding: 10px 3px;
    }
    #buy_area .btnlink{
        margin: 0 3px;
        padding: 8px 12px;
    }
}
@media screen and (max-width: 850px) {
    nav a{
        padding: 10px 0px;
    }
    #buy_area .btnlink{
        display: block;
        margin: 15px 0;
    }
}
@media screen and (max-width: 768px) {
    nav a{
        padding: 10px;
    }
    .submenu.open{
        padding: 0 10px;
    }
    .submenu-item{
        text-align: left;
    }
    .bg {
        padding: 30px 0;
    }
    #main_flex .third{
        width: 100%;
    }
    #event_top{
        margin-top: 60px;
    }
    .event_box{
        min-height: 250px;
    }
    .event_box .event_btn .event_btn_link {
        margin: -7px auto 0;
    }
    .event_box .event_btn img,
    .flex .third .event_box .event_btn img,
    .event_box .event_btn .event_btn_link{
        width: 400px;
        max-width: 100%;
    }
	.contents h1{
	    font-size: 1em;
	    line-height: 2em;
	}
    #whatsbg,#demo{
        text-align: left;
    }
	#event_top{
		background-image: url(/car/roadster/img/4th_main_sp.jpg);
	}
	#news{
		background-image: url(/car/roadster/img/news-sp.jpg);
	}
    .visual_sp {
        display: block;
    }
    .top_title {
        padding: 80px 0 20px;
    }
    #cupsleevebg_inner{
        width: 100%;
    }
    #cupsleevebg_inner_text,
    #brand_text .text-center{
        text-align: left;
    }
    #cupsleevebg_inner .flex{
        gap: 0;
    }
    #cupsleevebg_inner_text,
    #cupsleevebg_inner .flex .half{
        background-color: rgba(255,255,255,0.7);
    }
    #brands .bgcontents2{
        height: auto;
    }
    #brands .flex .fourth{
        margin: 0;
    }
    #demo{
        margin-bottom: 60px;
    }
    .visual{
        background-image: none;
        height: auto;
    }
    .top_title2{
        margin: 40px auto;
        text-align: left;
    }
    .linkback{
        height: 350px;
    }
    .linkbox {
        bottom: -10px;
        padding: 10px 5px;
        font-size: 1.3em;
    }
    h2#staff_title{
        text-align: left;
        padding: 0;
        font-size: 1.2em;
        margin-bottom: 40px;
    }
    .staff_comment{
        padding: 0px;
        margin-bottom: 40px;
    }
    .staff_comment h4{
        font-size: 1.2em !important;
        margin-top: 5px;
        margin-bottom: 15px;
    }
    #staff #comment{
        text-align: left;
        margin: 60px auto 40px;
    }
    #staff #snsimg{
        margin-bottom: 15px;
    }
    #staff h3{
        text-align: left;
        font-size: 1.3em;
        line-height: 2em;
        margin: 15px auto;
    }
    #event_logo{
        padding: 80px 10px 0px;
    }
    #events .event_title{
        padding: 70px 0 40px;
    }
    #events .event_contents{
        text-align: left;
        margin: 0 0 30px;
    }
    #event_about{
        font-size: 1.3em;
    }
    #events table td{
        vertical-align: top;
        padding: 5px;
        box-sizing: border-box;
        min-width: 120px;
        border-bottom: 1px solid #ccc;
    }
    #events .allw{
        margin-bottom: 15px;
    }
    #events .half,
    #events .half a{
        min-height: 250px;
    }
    #events #caution_area{
        margin-top: 0px;
    }
}