@charset "utf-8";
/* Federico ver2017  logIn Style */


.colorBox { display: none; }

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

    public page Header
    
============================================================================================*/
.publicPageWrap header h1 {
    margin: 0 auto;
    width: 80px;
    padding: 10px 0;
}
#headerWrapPublic #gNavWrap {
    position: absolute;
    top: 58px;
    width: 100%;
    height: 46px;
    background: url(/img/asset/bg_gnav_001.png) left top repeat #7c1d24;
    box-shadow: 0 15px 10px -8px rgba(0,0,0,0.2) inset;
    -moz-box-shadow: 0 15px 10px -8px rgba(0,0,0,0.2) inset;
    -webkit-box-shadow: 0 15px 10px -8px rgba(0,0,0,0.2) inset;
}

/*===============
Gnav  
*/
/*Gnabi開閉部分*/
#headerWrapPublic {
    box-sizing: border-box;
    position: fixed;
    top: 0;
    width: 100%;
    background: #FFF;
    z-index: 9999;
    -webkit-font-smoothing: subpixel-antialiased;
    height: 104px;
}

.gnav {
    list-style-type: none;
    background: #000;
    width: 100%;
    z-index: 999;
    padding: 10px 0;
    box-shadow: 0 3px 3px rgba(0,0,0,0.20);
    margin-top: 46px;
}

#headerWrapPublic .gnav ul {
    box-sizing: border-box;
    width: 100%;
    max-width: 1080px;
    text-align: center;
    margin: 0 auto;
}
#headerWrapPublic .gnav li {
    display: inline-block;
    *display: inline;
    zoom: 1;
    line-height: 0;
    line-height: 100%;
    margin: 12px 6px;
}
#headerWrapPublic .gnav li a {
    text-decoration: none;
    color: #FFF;
    background: #7c1d24;
    padding: 6px 10px;
    border-radius: 3px;
    font-weight: normal;
    font-size: 11px;
    -moz-transition: all 0.6s;
    -o-transition: all 0.6s;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
}
#headerWrapPublic .btnLogin {
    position: absolute;
    right: 10px;
    top: 50%;
    margin-top: -11px;
}
#headerWrapPublic .btnLogin li a {
    display: block;
    background: #FFF;
    color: #7c1d24;
    text-decoration: none;
    padding: 4px 10px;
    border-radius: 3px;
    font-size: 11px;
    /*font-weight: bold;*/
}

/*ハンバーガーボタン*/
#headerWrapPublic .icon-animation {
    width: 20px;
    height: 20px;
    display: block;
    cursor: pointer;
    float: right;
    position: absolute;
    left: 0px;
    text-align: center;
    /*top: 50%;*/
    top: 11px;
    /*margin-top: -12px;*/
}

#headerWrapPublic .icon-animation span {
    width: 30px;
    height: 4px;
    display: block;
    background: #FFF;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: 0;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
    font-family:Arial, Helvetica, sans-serif;
    font-weight: bold;
}

#headerWrapPublic .icon-animation .top {
    -webkit-transform: translateY(-13px);
    -ms-transform: translateY(-13px);
    transform: translateY(-13px);
}

#headerWrapPublic .icon-animation .middle {
      background: none;
      font-size: 8px;
      color: #FFF;
      text-align: center;
      margin-top: -2px;
      line-height: 1.0;
}

#headerWrapPublic .icon-animation .bottom {
    -webkit-transform: translateY(13px);
    -ms-transform: translateY(13px);
    transform: translateY(13px);
}

#headerWrapPublic .is-open .middle {
    background: rgba(51, 51, 51, 0);
    text-indent: 9999px;
}

#headerWrapPublic .is-open .top {
    -webkit-transform: rotate(-45deg) translateY(0px);
    -ms-transform: rotate(-45deg) translateY(0px);
    transform: rotate(-45deg) translateY(0px);
}

#headerWrapPublic .is-open .bottom {
    -webkit-transform: rotate(45deg) translateY(0px);
    -ms-transform: rotate(45deg) translateY(0px);
    transform: rotate(45deg) translateY(0px);
}

/*gNav固定*/
.gNavFixed {
    position: fixed !important;
    top: 0;
    height: 46px !important;
    background: none !important;
}
.gNavFixed h1 {
    display: none;
}
.gNavFixed #gNavWrap {
    top: 0 !important;
}
/* end Gnav
===============*/

.topMarginForGnav {
    margin-top: 104px;
}


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

    public page TOP
    
============================================================================================*/
.ppTopGreetingMessage {
    font-size: 13px;
    padding: 30px 10px 0;
    text-align: center;
}
.publicPageWrap .topMvBox {
    position: relative;
}
.publicPageWrap .topMvBox .txtYps {
    position: absolute;
    /*top: 50%;*/
    top: 50px;
    left: 10px;
    /*margin-top: -.5em;*/
    font-size: 20px;
    text-shadow: 0 0 4px #FFF, 0 0 4px #FFF;
}
.publicPageWrap .topMvBox .loginBox {
    width: 100%;
    box-sizing: border-box;
    padding: 0 20px;
    position: relative;
    margin-top: -14px;
}
.publicPageWrap .topMvBox .loginBox .welcom {
    font-size: 14px;
}
.publicPageWrap .topMvBox .loginBox .txtLink001 {
    margin-top: 20px;
}
.publicPageWrap .topMvBox .loginBox .txtLink001 a {
    color: #FFF;
    text-decoration: none;
    font-size: 10px;
}
.publicPageWrap .topMvBox .loginBox .txtLink001 a span {
    display: none;
}
.publicPageWrap .blkTxtBox001 {
    background: rgba(0,0,0,0.8);
    color: #FFF;
    text-align: center;
    padding: 1px;
    box-sizing: border-box;
    box-shadow: 3px 3px 3px rgba(0,0,0,0.3);
}
.publicPageWrap .blkTxtBox001 .innerBox {
    box-sizing: border-box;
    border: 1px solid #FFF;
    padding: 18px 8px;
}
.publicPageWrap .blkTxtBox001 a {
    color: #87CEFA;
}
.publicPageWrap .btnPpTop001 a {
    display: block;
    background: #FFF;
    width: 10em;
    font-size: 11px;
    margin: 20px auto 0;
    border-radius: 3px;
    color: #000;
    text-decoration: none;
    text-align: center;
    padding: 4px 10px;
    line-height: 0;
    line-height: 100%;
    -moz-transition: all 0.6s;
    -o-transition: all 0.6s;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
}
#generalTopMainWrap .contentBox001 {
    width: 100%;
    max-width: 1080px;
    box-sizing: border-box;
    padding: 40px;
    margin: 30px auto 0;
}
#generalTopMainWrap .contentBox001 h2 {
    font-size: 14.2px;
    font-weight: normal;
    position: relative;
    width: 100%;
    margin: 0 0 18px;
    padding: 0 0 18px;
    text-align: center;
    text-shadow: 0 0 10px #fff,0 0 15px #fff;
}
#generalTopMainWrap .contentBox001 h2::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 1px;
    margin: 0 auto;
    text-align: center;
    background-image: -webkit-linear-gradient(left, transparent, #FFF 25%, #FFF 75%, transparent);
    background-image: linear-gradient(to right, transparent, #FFF 25%, #FFF 75%, transparent);
    background-position: center;
    background-repeat: no-repeat;
}
#generalTopMainWrap .contentBox001 p {
    font-size: 11px;
}
#generalTopMainWrap .ppTopBg002 {
    background: url(/img/asset/bg_pp_top_002.jpg) center top no-repeat;
    background-size: cover;
}
#generalTopMainWrap .ppTopBg003 {
    background: url(/img/asset/bg_pp_top_003.jpg) center top no-repeat;
    background-size: cover;
}
#generalTopMainWrap .ppTopBg004 {
    background: url(/img/asset/bg_pp_top_004.jpg) center top no-repeat;
    background-size: cover;
}
#generalTopMainWrap .ppTopBg005 {
    background: url(/img/asset/bg_pp_top_005.jpg) left top no-repeat;
    background-size: cover;
}
#generalTopMainWrap .ppTopBg006 {
    background: url(/img/asset/bg_pp_top_006.jpg) center top no-repeat;
    background-size: cover;
}
#generalTopMainWrap .ppTopBg007 {
    background: url(/img/asset/bg_pp_top_007.jpg) center top no-repeat;
    background-size: cover;
}
#generalTopMainWrap .ppTopBg008 {
    background: url(/img/asset/bg_pp_top_008.jpg) center top no-repeat;
    background-size: cover;
    box-shadow: 0 3px 3px rgba(0,0,0,0.20) inset;
}
#generalTopMainWrap .flow1Box .stepWrap dl {
    width: 100%;
    padding: 0 10px 0;
    box-sizing: border-box;
    text-align: left;
    display: table;
}
#generalTopMainWrap .flow1Box .stepWrap dl dt {
    display: table-cell;
    width: 20%;
}
#generalTopMainWrap .flow1Box .stepWrap dl dd {
    display: table-cell;
    vertical-align: middle;
    padding-left: 1em;
}
#generalTopMainWrap .flow1Box .stepWrap dl dd .fsSmall {
    font-size: 9px;
}

/*Brand banner*/
#generalTopMainWrap .contentBox002 {
    width: 100%;
    padding: 30px 0;
    margin-top: 30px;
    box-sizing: border-box;
}
#generalTopMainWrap .ppTopBg008 h3 {
    font-weight: normal;
    font-size: 17px;
    text-shadow: 0 0 10px #fff,0 0 15px #fff;
}
#generalTopMainWrap .sixBanAreaBox001 {
    width: 100%;
    max-width: 984px;
    margin: 0 auto;
}
#generalTopMainWrap .sixBanAreaBox001 li {
    margin-top: 10px;
    font-size: 10px;
    width: 50%;
    float: left;
    padding: 0 5px;
    box-sizing: border-box;
}
#generalTopMainWrap .sixBanAreaBox001 li a {
    display: block;
    background: #7c1d24;
    color: #FFF;
    text-decoration: none;
    text-align: center;
    padding: 8px 6px;
    border: 3px double #FFF;
}
#generalTopMainWrap .sixBanAreaBox001 li a .ffEnSerif001 {
    font-size: 15px;
}

#generalTopMainWrap .sixBanAreaBox001 li a {
    background: #151515;
}
#generalTopMainWrap .sixBanAreaBox001 li a .ffEnSerif001 {
    font-size: 11px;
}

#generalTopMainWrap .bottomPicBox {
    width: 100%;
    max-width: 1080px;
    margin: 30px auto 0;
}

@media screen and (min-width: 768px) {
    .publicPageWrap header h1 {
        width: 100px;
    }
    #headerWrapPublic #gNavWrap {
        top: 68px;
    }
    #headerWrapPublic {
        height: 114px;
    }
    #headerWrapPublic .gnav li a {
        font-size: 13px;
    }
    #headerWrapPublic .btnLogin li a {
        font-size: 12px;
    }
    .topMarginForGnav {
        margin-top: 114px;
    }
    
    .publicPageWrap .topMvBox .txtYps {
        top: 20%;
        left: 40px;
        text-align: center;
        width: 400px;
    }
    .publicPageWrap .btnPpTop001 a {
        font-size: 12px;
        padding-top: 6px;
    }
    .publicPageWrap .topMvBox .loginBox {
        position: absolute;
        top: 40%;
        left: 40px;
        width: 400px;
        padding: 0;
    }
    .publicPageWrap .topMvBox .loginBox .txtLink001 a {
        font-size: 11px;
    }
    .publicPageWrap .topMvBox .loginBox .txtLink001 a span {
        display: inline;
    }
    .ppTopGreetingMessage {
        font-size: 20px;
        padding: 50px 10px 0;
    }
    #generalTopMainWrap .contentBox001 h2 {
        font-size: 18px;
    }
    #generalTopMainWrap .contentBox001 {
        padding: 60px 20px;
        margin-top: 50px;
    }
    #generalTopMainWrap .contentBox001 p {
        font-size: 13px;
    }
    #generalTopMainWrap .ppTopBg002 .blkTxtBox001 {
        width: 60%;
        margin-left: 40%;
    }
    #generalTopMainWrap .ppTopBg003 .blkTxtBox001 {
        width: 60%;
    }
    #generalTopMainWrap .ppTopBg004 .blkTxtBox001 {
        width: 48%;
        margin-left: 52%;
    }
    #generalTopMainWrap .ppTopBg005 .blkTxtBox001 {
        width: 56%;
        margin-left: 44%;
    }
    #generalTopMainWrap .ppTopBg007 .blkTxtBox001 {
        width: 50%;
        margin-left: 25%;
    }
    #generalTopMainWrap .flow1Box .stepWrap {
        width: 16.6666%;
        float: left;
        background: url(/img/asset/arow_top_flow1_001.png) right 30px no-repeat;
        background-size: 7px;
    }
    #generalTopMainWrap .flow1Box .stepWrap:last-child {
        background: none;
    }
    #generalTopMainWrap .flow1Box .stepWrap dl,
    #generalTopMainWrap .flow1Box .stepWrap dt,
    #generalTopMainWrap .flow1Box .stepWrap dd {
        display: block !important;
        width: 100% !important;
    }
    #generalTopMainWrap .flow1Box .stepWrap dl dd {
        padding-left: 0 !important;
        padding-top: 10px;
        font-size: 14px;
    }
    #generalTopMainWrap .flow1Box .stepWrap dl dd .fsSmall {
        font-size: 11px;
    }
    #generalTopMainWrap .flow1Box .stepWrap .spArrow {
        display: none;
    }
    /*Brand*/
    #generalTopMainWrap .contentBox002 {
        margin-top: 50px;
        padding: 60px 0;
    }
    #generalTopMainWrap .ppTopBg008 h3 {
        font-size: 20px;
    }
    #generalTopMainWrap .sixBanAreaBox001 li {
        width: 33.33333%;
        padding: 10px 10px 0;
    }
    #generalTopMainWrap .sixBanAreaBox001 li a .ffEnSerif001 {
        font-size: 13px;
    }
    #generalTopMainWrap .bottomPicBox {
        margin-top: 50px;
    }
}

@media screen and (min-width: 1024px) {
    .publicPageWrap header h1 {
        width: 142px;
    }
    #headerWrapPublic #gNavWrap {
        top: 88px;
    }
    #headerWrapPublic {
        height: 134px;
    }
    #headerWrapPublic .gNavBar {
        display: none;
    }
    #headerWrapPublic nav {
        width: 100%;
        max-width: 1080px;
        margin: auto;
        position: relative;
        box-sizing: border-box;
        padding: 0 10px;
    }
    #headerWrapPublic .gnav {
        display: inline !important;
        width: 1080px;
        max-width: 1080px;
        box-shadow: none;
        margin: 0;
        padding: 0;
    }   
    #headerWrapPublic .gnav ul {
        box-sizing: border-box;
        width: 100%;
        max-width: 1080px;
        text-align: left;
    }
    #headerWrapPublic .gnav li {
        display: inline-block;
        *display: inline;
        zoom: 1;
        line-height: 0;
        line-height: 100%;
        border-right: 1px solid #FFF;
        margin: 18px 12px 0 0;
        padding: 0 12px 0 0;
    }
    #headerWrapPublic .gnav li:last-child {
        border: none;
    }
    #headerWrapPublic .gnav li a {
        text-decoration: none;
        color: #FFF;
        background: none;
        margin: 0;
        padding: 0;
        border-radius: 0;
        font-weight: normal;
        font-size: 15px;
        position: relative;
        display: inline-block;
    }
    #headerWrapPublic .gnav li a:hover {
        text-shadow: 0 0 10px #fff,0 0 15px #fff;
    }
    #headerWrapPublic .gnav li a::after {
      content: '';
      position: absolute;
      bottom: -5px;
      left: 0;
      width: 100%;
      height: 2px;
      -webkit-transform: scaleX(0);
      -ms-transform: scaleX(0);
      transform: scaleX(0);
      background-color: #FFF;
      -webkit-transition: all .3s ease;
      transition: all .3s ease;
    }
    #headerWrapPublic .gnav li a:hover::after {
      -webkit-transform: scaleX(1);
      -ms-transform: scaleX(1);
      transform: scaleX(1);
    }

    #headerWrapPublic .btnLogin {
      position: absolute;
      right: 10px;
      top: 50%;
      margin-top: -5px;
    }
    #headerWrapPublic .btnLogin li a {
        display: block;
        background: #FFF;
        color: #7c1d24;
        text-decoration: none;
        padding: 4px 10px;
        border-radius: 3px;
        font-size: 13px;
        letter-spacing: 0.08em;
        font-weight: bold;
    }
    #headerWrapPublic .btnLogin li a:hover {
        background: #000;
        color: #FFF;
        -moz-transition: all 0.6s;
        -o-transition: all 0.6s;
        -webkit-transition: all 0.6s;
        transition: all 0.6s;
    }
    .publicPageWrap .topMvBox .txtYps {
        font-size: 32px;
        letter-spacing: .08em;
        top: 30%;
        left: 50%;
        width: 470px;
        margin-left: -502px;
    }
    .publicPageWrap .topMvBox .loginBox {
        top: 50%;
        left: 50%;
        width: 470px;
        margin-left: -502px;
    }
    .publicPageWrap .topMvBox .loginBox .innerBox {
        padding: 30px 10px;
    }
    .publicPageWrap .topMvBox .loginBox .welcom {
        font-size: 18px;
    }
    .publicPageWrap .btnPpTop001 a {
        font-size: 14px;
    }
    .publicPageWrap .topMvBox .loginBox .txtLink001 a {
        font-size: 13px;
    }
    .publicPageWrap .topMvBox .loginBox .txtLink001 a:hover {
        text-decoration: underline;
    }
    #forBeginner {
        font-size: 14px;
        line-height: 1.6;
        padding: 20px 40px;
    }
    .topMarginForGnav {
        margin-top: 134px;
    }
    .btnPpTop001 a:hover {
        background: #7c1d24;
        color: #FFF;
    }
    .ppTopGreetingMessage {
        font-size: 26px;
        color: #333;
        padding: 50px 0 0;
        line-height: 1.6;
    }
    #generalTopMainWrap .contentBox001 {
        padding: 100px 20px;
    }
    #generalTopMainWrap .contentBox001 h2 {
        font-size: 22px;
    }
    #generalTopMainWrap .contentBox001 p {
        font-size: 14px;
    }
    .publicPageWrap .blkTxtBox001 .innerBox {
        padding: 20px;
    }
    #generalTopMainWrap .flow1Box .stepWrap {
        background-size: 12px;
        background-position: right 40px;
    }
    /*Branc*/
    #generalTopMainWrap .ppTopBg008 h3 {
        font-size: 28px;
    }
    #generalTopMainWrap .sixBanAreaBox001 li a .ffEnSerif001 {
        font-size: 16px;
    }
    #generalTopMainWrap .sixBanAreaBox001 li a:hover {
        background: #888;
    }
}
@media screen and (min-width: 1100px) {
    #headerWrapPublic nav {
        padding: 0;
    }
    #headerWrapPublic .btnLogin {
        right: 0;
    }
}


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

    footer
    
============================================================================================*/
.publicPageWrap #footer {
    background: none;
    background: url(/img/asset/bg_gnav_001.png) left top repeat #7c1d24;
    box-shadow: 0 15px 10px -8px rgba(0,0,0,0.2) inset;
    -moz-box-shadow: 0 15px 10px -8px rgba(0,0,0,0.2) inset;
    -webkit-box-shadow: 0 15px 10px -8px rgba(0,0,0,0.2) inset;
}
.publicPageWrap #footer .innerBox {
    max-width: 1080px;
    box-sizing: border-box;
    padding: 10px 10px;
    margin: auto;
}
.publicPageWrap #footer nav ul li {
    float: left;
    font-size: 9px;
    line-height: 0;
    line-height: 100%;
    margin: 8px 0 0;
}
.publicPageWrap #footer nav ul li a {
    display: block;
    border-right: 1px solid #FFF;
    margin-right: 8px;
    padding-right: 8px;
    color: #FFF;
    text-decoration: none;
}
.publicPageWrap #footer nav ul li:last-child a {
    border: none;
    margin-right: 0;
    padding-right: 0;
}
.publicPageWrap #footer address {
    background: none;
    text-align: right;
    margin-top: 10px;
}
@media screen and (min-width: 768px) {
    .publicPageWrap #footer .innerBox {
        padding: 20px 10px;
    }
    .publicPageWrap #footer nav ul li {
        font-size: 12px;
        margin: 0;
    }
}
@media screen and (min-width: 1024px) {
    .publicPageWrap #footer nav ul li a:hover {
        text-decoration: underline;
    }
}



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

    public Inner pages common
    
============================================================================================*/
#generalInnerMainWrap .contentBox001 {
    width: 100%;
    max-width: 1080px;
    box-sizing: border-box;
    padding: 30px 10px 0;
    margin: 0 auto 0;
}
#generalInnerMainWrap .blkTxtBox001 {
    text-align: left;
}
#generalInnerMainWrap .contentBox001 h2 {
    font-size: 14.2px;
    font-weight: normal;
    position: relative;
    width: 100%;
    margin: 0 0 18px;
    padding: 0 0 18px;
    text-align: center;
    text-shadow: 0 0 10px #fff,0 0 15px #fff;
}
#generalInnerMainWrap .contentBox001 h2::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 1px;
    margin: 0 auto;
    text-align: center;
    background-image: -webkit-linear-gradient(left, transparent, #FFF 25%, #FFF 75%, transparent);
    background-image: linear-gradient(to right, transparent, #FFF 25%, #FFF 75%, transparent);
    background-position: center;
    background-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
    #generalInnerMainWrap .contentBox001 {
        padding: 30px 20px 0;
    }
    #generalInnerMainWrap .contentBox001 h2 {
        font-size: 18px;
    }
    #generalInnerMainWrap .contentBox001 .blkTxtBox001 .innerBox {
        padding: 20px;
    }
    /*#generalInnerMainWrap p,
    #generalInnerMainWrap dl,
    #generalInnerMainWrap ul,
    #generalInnerMainWrap table {
        font-size: 1.12em;
    }*/
}
@media screen and (min-width: 1024px) {
    #generalInnerMainWrap .contentBox001 h2 {
        font-size: 22px;
    }
}


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

    特定商取引法
    
============================================================================================*/
#ordercontractWrap dl {
    border-top: 1px dotted #aaa;
    margin-top: 20px;
    padding-top: 20px;
}
#ordercontractWrap dl.first {
    border: none;
    margin-top: 0;
    padding-top: 0;
}
#ordercontractWrap dl dt {
    font-weight: bold;
}
#ordercontractWrap dl dd {
    padding-left: 1em;
}
@media screen and (min-width: 768px) {
    #ordercontractWrap dl dt {
        float: left;
    }
    #ordercontractWrap dl dd {
        padding-left: 16em;
    }
}


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

    about Federico
    
============================================================================================*/
.aboutUsWrap .topComment {
    text-align: center;
    padding: 30px 0 !important;
}
.aboutUsWrap .topComment p.ffEnSerif001 {
    font-size: 16px;
    padding: 0 0 20px 0;
}
.aboutUsWrap .top p.ffMincho001 {
    font-size: 14px;
}
.aboutUsWrap dl {
    display: table;
    margin-top: 20px;
    width: 100%;
}
.aboutUsWrap dl dt,
.aboutUsWrap dl dd {
    display: table-cell;
    vertical-align: middle;
}
.aboutUsWrap dl dt {
    background: #f1f1f1;
    color: #000;
    width: 40%;
    padding: 20px 10px;
    text-align: center;
    box-sizing: border-box;
    font-weight: bold;
}
.aboutUsWrap dl dd {
    padding-left: 1em;
}
@media screen and (min-width: 768px) {
    .aboutUsWrap .topComment {
        padding: 50px 0 !important
    }
    .aboutUsWrap .topComment p.ffEnSerif001 {
        font-size: 28px;
        padding: 0 0 30px 0;
        letter-spacing: .08em;
    }
    .aboutUsWrap .topComment p.ffMincho001 {
        font-size: 16px;
    }
    .aboutUsWrap dl {
        font-size: 13px;
    }
}
@media screen and (min-width: 1024px) {
    .aboutUsWrap .topComment p.ffEnSerif001 {
        font-size: 38px;
        padding: 0 0 30px 0;
    }
    .aboutUsWrap .topComment p.ffMincho001 {
        font-size: 20px;
    }
    .aboutUsWrap dl dt {
        width: 30%;
    }
    .aboutUsWrap img {
        width: 100%;
    }
}


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

    Guide
    
============================================================================================*/
.guideWrap .guideScLink ul {
    display: table;
    width: 100%;
    text-align: center;
    box-sizing: border-box;
    font-size: 10px;
    line-height: 1.1;
}
.guideWrap .guideScLink ul li {
    display: table-cell;
    background: #888;
    border-right: 2px solid #333;
    /*width: 20%;*/
}
.guideWrap .guideScLink ul li a {
    display: block;
    color: #FFF;
    text-decoration: none;
    padding: 6px 8px;
}
.guideWrap .guideScLink ul li:last-child {
    border: none;
}
/*.guideWrap article {
    padding-top: 30px;
}*/
.guideWrap article h3 {
    margin-top: 30px;
    font-size: 16px;
    font-weight: normal;
    background: #FFF;
    padding: 8px 10px;
    color: #7c1d24;
}
.guideWrap article .txtSection001 {
    padding: 10px 10px 0;
}
.guideWrap article .txtSection001 dl.numInfo {
    width: 100%;
    margin-top: 20px;
}
.guideWrap article .txtSection001 dl.numInfo dt {
    float: left;
    display: block;
    background: #ddd;
    color: #000;
    width: 20px;
    height: 20px;
    padding: 12px 10px 8px;
    text-align: center;
    font-weight: bold;
}
.guideWrap article .txtSection001 dl.numInfo dd {
    padding-left: 50px;
}
.guideWrap article .txtSection001 dl.numInfo dd strong {
    display: block;
    border-bottom: 1px dotted #AAA;
    margin-bottom: 8px;
    padding-bottom: 8px;
}
.guideWrap article .guide001BotTxt {
    margin-top: 20px;
}
.guideWrap table.bunkatsu {
    color: fff;
    border-left: 1px solid #fff;
    border-top: 1px solid #fff;
}
.guideWrap table.bunkatsu th,
.guideWrap table.bunkatsu td {
    padding: 10px;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
}
.guideWrap table.bunkatsu tbody th {
    font-family: "Times New Roman", Times, serif;
}
.guideWrap table.bunkatsu thead th {
    text-align: center;
    background: #666;
}
.guideWrap .listTxt001  li{
    list-style: disc;
    margin-left: 1em;
}
.guideWrap table.revision {
    width: 100%;
}
.guideWrap table.revision caption {
    border-top: 1px dotted #AAA;
    margin-top: 18px;
    padding-top: 18px;
    margin-bottom: 8px;
}
.guideWrap table.revision td {
    width: 33.33333%;
    box-sizing: border-box;
    padding: 8px 6px;
    text-align: center;
    border: 1px dashed #FFF;
    font-size: 11px;
}
@media screen and (min-width: 768px) {
    .guideWrap .guideScLink ul {
        font-size: 11px;
    }
    .guideWrap article h3 {
        font-size: 18px;
    }
    .guideWrap article .txtSection001 {
        font-size: 13px;
    }
    .guideWrap table.revision td {
        font-size: 13px;
    }
}
@media screen and (min-width: 1024px) {
    .guideWrap .guideScLink ul {
        font-size: 12px;
    }
    .guideWrap .guideScLink ul li a:hover {
        text-decoration: underline;
    }
    .guideWrap article h3 {
        font-size: 20px;
    }
}


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

    Q&A
    
============================================================================================*/
.qaWrap dl {
    padding-left: 40px;
    margin-top: 10px;
    border-bottom: 1px dotted #aaa;
    margin-bottom: 20px;
    padding-bottom: 10px;
}
.qaWrap dl dt {
    margin-bottom: 20px;
}
.qaWrap dl span {
    display: block;
    font-family: "Times New Roman", Times, serif;
    font-size: 14px;
    float: left;
    background: #791a1e;
    padding: 5px 10px;
    margin-left: -40px;
    margin-top: -6px;
}
.qaWrap dl dd span {
    background: #777;
}
@media screen and (min-width: 768px) {
    .qaWrap dl {
        font-size: 14px;
    }
}


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

    プライバシーポリシー
    
============================================================================================*/
#ppWrap p {
    line-height: 1.8;
}
@media screen and (min-width: 768px) {
    #ppWrap p {
        font-size: 13px;
    }
}

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

    お問い合わせ
    
============================================================================================*/
#contactWrap input,
#contactWrap textarea {
    box-sizing: border-box;
}


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

    ブランド一覧
    
============================================================================================*/
.brandListWrap h3.ffEnSerif001{
    text-align: center;
    letter-spacing: .06em;
    margin-top: 40px;
}
.brandListWrap h3.first {
    margin-top: 20px;
}
.brandListWrap dl {
    width: 100%;
}
.brandListWrap dl dt {
    text-align: center;
    padding: 4px 0 0;
}
.brandListWrap dl dt img {
    width: 100%;
    max-width: 330px;
    border: 1px solid #fff;
}
.brandListWrap dl dd {
    padding-top: 14px;
}
.brandListWrap dl dd strong {
    display: block;
    border-bottom: 1px dotted #aaa;
    margin-bottom: 8px;
    padding-bottom: 8px;
}
.brandListWrap dl dd span.price {
    display: block;
    margin-top: 8px;
    text-align: right;
}
@media screen and (min-width: 768px) {
    .brandListWrap h3.ffEnSerif001{
        margin-top: 60px;
    }
    .brandListWrap h3.first {
        margin-top: 20px;
    }
    .brandListWrap dl {
        display: table;
    }
    .brandListWrap dl dt,
    .brandListWrap dl dd {
        display: table-cell;
        vertical-align: top;
        padding: 0;
        padding-top: 10px;
    }
    .brandListWrap dl dt {
        width: 300px;
    }
    .brandListWrap dl dd {
        padding-left: 1.8em;
        box-sizing: border-box;
    }
}
@media screen and (min-width: 1024px) {
    .brandListWrap dl dt {
        width: 330px;
    }
    .brandListWrap dl dd {
        padding-left: 2.6em;
    }
}






