﻿@charset "utf-8";

/* ivent
------------------------------------------------------- */

#machino a{color: #ff9926;}
#machino a:hover{color: #734695;}

.ribbonTtl {
    display: inline-block;
    position: relative;
    width: 100%;
    height: 70px;/*リボンの高さ*/
    line-height: 70px;/*リボンの高さ*/
    text-align: center;
    padding: 0 50px;/*横の大きさ*/
    margin-bottom: 40px;
    font-size: 24px;/*文字の大きさ*/
    background: #F8C7CA;/*塗りつぶし色*/
    color: #5E250E;/*文字色*/
    box-sizing: border-box;
}

.ribbonTtl::before, .ribbonTtl::after {
    position: absolute;
    content: '';
    width: 0px;
    height: 0px;
    z-index: 1;
}

.ribbonTtl::before {
    top: 0;
    left: 0;
    border-width: 35px 0px 35px 25px;
    border-color: transparent transparent transparent #fff;
    border-style: solid;
}

.ribbonTtl::after {
    top: 0;
    right: 0;
    border-width: 35px 25px 35px 0px;
    border-color: transparent #fff transparent transparent;
    border-style: solid;
}

.vegeTtl{
    margin-bottom: 40px;
    text-align: center;
}

.vegeTtl .vegeLine{
    position: relative;
    display: inline-block;
    min-width: 360px;
    padding: 0 390px;
    font-size: 24px;/*文字の大きさ*/
    color: #5E250E;/*文字色*/
}

.vegeTtl .vegeLine::before,.vegeTtl .vegeLine::after{
    display: block;
    position: absolute;
    content: "";
    width: 350px;
    height: 40px;
    top: 50%;
    background: url("../images/machino/img_vegeLine.png") repeat-X top right/ auto 40px;
}

.vegeTtl .vegeLine::before{
    left: 0;
    transform: translateY(-50%);
}

.vegeTtl .vegeLine::after{
    right: 0;
    transform: scale(-1,1) translateY(-50%);
}

.grandprixLst li{
    width: 800px;
    padding: 0 10px 5px;
    margin: 0 auto 15px;
    border-bottom: 2px dashed #5E250E;
    font-weight: bold;
    font-size: 20px;
    box-sizing: border-box;
}

.grandprixLst li:last-child{margin-bottom: 0;}


@media only screen and (max-width:640px){
    .ribbonTtl {
        height: 40px;/*リボンの高さ*/
        line-height: 40px;/*リボンの高さ*/
        padding: 0 20px;/*横の大きさ*/
        margin-bottom: 20px;
        font-size: 18px;/*文字の大きさ*/
    }

    .ribbonTtl::before {border-width: 20px 0px 20px 10px;}
    .ribbonTtl::after {border-width: 20px 10px 20px 0px;}

    .vegeTtl{margin-bottom: 20px;}
    .vegeTtl .vegeLine{
        min-width: 145px;
        padding: 0 calc(50% - 70px);
        font-size: 16px;/*文字の大きさ*/
    }

    .vegeTtl .vegeLine::before,.vegeTtl .vegeLine::after{
        width: calc(50% - 72px);
        height: 20px;
        background-size: auto 20px;
    }

    .grandprixLst li{
        width: 100%;
        padding: 0 5px 5px;
        margin-bottom: 10px;
        font-size: 14px;
    }
}

/* introArea
------------------------------------------------------- */

.introArea{
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-align: center;
    flex-wrap: wrap;
}

.introArea .imgArea{width: 280px;}

.introArea .imgArea img{width: 100%;}

.introArea .centerArea{
    width: 580px;
}

.introArea .ttl{
    margin-bottom: 20px;
    color: #ED483C;
    font-size: 36px;
    text-align: center;
}

.appealTxt > span{
    position: relative;
    display: inline-block;
    padding: 0 30px;
    font-size: 18px;
    font-weight: bold;
}

.appealTxt > span::before,
.appealTxt > span::after{
    content: "";
    display: block;
    position: absolute;
    width: 2px;
    height: 30px;
    bottom: 0;
    background-color: #5E250E;
}

.appealTxt > span::before{
    left: 10px;
    transform: rotate(-45deg);
}

.appealTxt > span::after{
    right: 10px;
    transform: rotate(45deg);
}

.introArea .centerArea .detail{
    position: relative;
    padding-right: 15px;
}

.introArea .centerArea .detail::after{
    display: block;
    position: absolute;
    content: "";
    top: 5px;
    right: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 9px solid #ff9926;
    border-right: 0; 
    transition: all .3s;
}

.introArea .centerArea .detail:hover::after{border-left-color: #734695;}

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

    .introArea .imgArea{
        width: 50%;
        height: 200px;
    }

    .introArea .imgArea:first-child{order: 2;}
    .introArea .imgArea:last-child{order: 3;}

    .introArea .imgArea img{
        height: 100%;
        object-fit: cover;
        object-position: 100% 20%;
    }

    .introArea .centerArea{
        width: 100%;
        margin-bottom: 20px;
        padding: 0;
        order: 1;
    }

    .introArea .ttl{
        margin-bottom: 10px;
        font-size: 24px;
    }

    .appealTxt > span{
        padding: 0 25px;
        font-size: 16px;
    }

    .appealTxt > span::before, .appealTxt > span::after{height: 25px;}
}

.gpImg{
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
}

/* threeClm
------------------------------------------------------- */

.threeClm{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: -20px 0 60px;;
}

.threeClm li{
    width:360px;
    margin-top: 20px;
}

.threeClm li img{width:100%;}

.goodsSample{
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
}

@media only screen and (max-width:640px){
    .threeClm{
        margin: -8px 0 30px;
    }

    .threeClm li{
        width: calc(50% - 4px);
        margin-top: 8px;
    }
}

/* bgBeigeTbl
------------------------------------------------------- */

.bgBeigeTbl{
    border:2px solid #ccc;
    text-align:left;
}

.bgBeigeTbl th,
.bgBeigeTbl td{
    padding:10px 20px;
    border-bottom:1px solid #ccc;
    border-right:1px solid #ccc;
    box-sizing:border-box;
}

.bgBeigeTbl th{
    width:370px;
    background-color:#F4F4EF;
    color:#5E250E;
    vertical-align:middle;
}

@media only screen and (max-width:640px){
    .bgBeigeTbl th,
    .bgBeigeTbl td{
        display:block;
        width:100%;
        padding:10px;
    }
}

/* btnArea
------------------------------------------------------- */

#formBtnArea .btnArea{
    display: flex;
    width: 700px;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 auto;
}

#formBtnArea .btnArea > a{
    display: inline-block;
    position: relative;
    min-width: 320px;
    height: 140px;
    padding: 50px 50px 0 40px;
    box-sizing: border-box;
    border: 2px solid #5E250E;
    background-color: #F4F4EF;
    color: #5E250E;
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    transition: background .3s ,color .3s;
}

#formBtnArea .btnArea > a:hover{
    background-color: #5E250E;
    color: #fff;
}

#formBtnArea .btnArea > a::after{
    content: "";
    display: block;
    position: absolute;
    top: 58px;
    right: 30px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8px 0 8px 14px;
    border-color: transparent transparent transparent #5E250E;
    transition: border .3s;
}

#formBtnArea .btnArea > a:hover::after{
    border-left-color: #fff;
}

@media only screen and (max-width:640px){
    #formBtnArea .btnArea{
        width: 100%;
        max-width: 400px;
        margin-top: -20px;
    }

    #formBtnArea .btnArea > a{
        width: 100%;
        min-width: auto;
        height: 80px;
        margin-top: 20px;
        padding-top: 25px;
        font-size: 20px;
    }

    #formBtnArea .btnArea > a::after{top: 30px;}
}

/* EOF */
