@charset "utf-8";
/* CSS Document */

.inner{
    max-width:960px;
    margin:auto;
    padding:96px 0;
}

/* **************************
price-list
************************** */
.pricelist .copy{
    text-align:center;
    font-size:32px;
    font-weight:bold;
    margin-bottom: 24px;
}

.pricelist table{
    width:100%;
}

.pricelist table thead dl{
    padding: 24px 16px 8px;
    background: #EEEEEE;
    color: #FFFFFF;
}

.pricelist table .base-color{
    color: #515151 !important;
}

.pricelist table .normal{
    font-size: 18px;
    font-weight:normal !important;
}

/* color light-plan*/
.pricelist table thead .light-plan,
.pricelist table thead .light-plan dl{
    background: #00A7F0;
    border-radius: 8px 0 0 0;
}

.pricelist table .light-plan{
    color: #00A7F0;
}

/* color standard-plan*/
.pricelist table thead .standard-plan,
.pricelist table thead .standard-plan dl{
    background: #00C561;
}

.pricelist table .standard-plan{
    color: #00C561;
}

/* color_premium-plan*/
.pricelist table thead .premium-plan,
.pricelist table thead .premium-plan dl{
    background: #C9A222;
    border-radius:0 8px 0 0;
}

.pricelist table .premium-plan{
    color: #C9A222;
}

.pricelist table .light-plan,
.pricelist table .standard-plan,
.pricelist table .premium-plan{
    width: 25%;
}

/* table thead*/
.pricelist table thead dl dt{
    text-align: center;
    font-size: 18px;
}

.pricelist table thead dl dd.price {
    text-align: center;
}

.pricelist table thead dl dd.price em{
    display: inline-block;
    text-align: center;
    font-size: 60px;
    line-height: 1em;
    font-family: acumin-pro-extra-condensed, sans-serif;
    font-weight: 800;
    font-style: normal;
    padding: 0 4px;
}

.pricelist table thead dl dd.price:after {
    display: block;
    content:"";
    border-bottom: solid 1px rgba(255, 255, 255, 0.4);
    width:160px;
    margin: 2px auto 10px;
}

.pricelist table thead dl dd.text {
    font-size: 12px;
}


/* table tbody*/
.pricelist table tbody th,
.pricelist table tbody td{
    padding: 16px 8px;
    border: solid 1px #D8D8D8;
    vertical-align: middle;
    letter-spacing: 0;
}

.pricelist table tbody th{
    text-align: right;
}

.pricelist table tbody th.sub-title{
    padding:0;
    text-align: center;
}

.pricelist table tbody th.sub-title > div{
    -ms-writing-mode: tb-rl;
    /* writing-mode: vertical-rl; */
    margin: auto;
    /* letter-spacing: 16px; */
}

.pricelist table tbody td{
    text-align: center;
    font-weight: bold;
    font-size: 20px;
}

.pricelist table tbody td .option{
    font-size: 12px !important;
    display:block;
    line-height: 1em;
    color: #515151;
    font-weight: normal;
}

.pricelist table tbody td.padding-none{
    padding:0;
    
}
.pricelist table tbody td .select{
    display:flex;
    justify-content: space-around;
    flex-flow: wrap;
    border: solid 5px;
    padding: 0 6px;
}

.pricelist table tbody td .select.creative{
    border-bottom:none;
    padding-top:6px;
}

.pricelist table tbody td .select.program{
    border-top:none;
}

.pricelist table tbody td .select h3{
    width:100%;
    color:#FFFFFF;
    background:#00A7F0;
    border-radius:4px;
    font-size:14px;
}

.pricelist table tbody td .select div{
    width:50%;
    padding: 16px;
    text-align:center;
}

.pricelist table tbody td .select.creative div{
    padding:8px !important;
}

.pricelist table tbody td .select div:last-child{
    border-left:solid 1px #D8D8D8;
    content:"";
}

.pricelist .function{
    background: #F9F9F9;
}

.pricelist .cm{
    background: #F9F8F1;
}

.pricelist .cm .name{
    text-align:center;
}

.pricelist .cm .logo{
    text-align:center;
}

.pricelist .cm .logo img {
    max-height: 40px;
}

.pricelist .cm .text{
    font-size:12px;
    text-align:left;
    font-weight:normal;
    padding: 8px 0;
}

.pricelist aside{
  padding:2% 0;
  font-size:12px;
}

/* **************************
Madison
************************** */
.madison{
    background: #F4F4F4;
}

.madison .inner{
    display: flex;
    justify-content: space-around;
    align-items: center;
}

.madison .image{
    width: 30%;
    text-align:center;
}

.madison .text{
    width: 60%;
}

.madison .text h3{
    font-size: 24px;
    font-weight: bold;
    color: #C53030;
    padding-bottom:12px;
}

.madison .text p{
    padding-bottom:12px;
}

.madison .text .link{
    font-size: 14px;
    background: url(../img/base/link-new.svg) no-repeat right center;
    background-size: 16px;
    padding-right: 20px;
    /* text-decoration: underline; */
}

/* **************************
flow
************************** */
.flow{
/*     background: #F4F4F4; */
    text-align:center;
}

.flow h2{
    text-align:center;
    font-size:32px;
    font-weight:bold;
    margin-bottom: 24px;
}

.flow ol.step{
    display:flex;
    justify-content:center;
    align-items: center;
    color:#FFFFFF;
    background: #FB6100;
    border-radius: 8px;
    width: 90%;
    margin: 40px auto 0;
    overflow:hidden;
}

.flow ol.step li{
    position:relative;
    padding: 12px 5% 12px 2%;
    color: #fff;
}

.flow ol.step li:last-child{
    padding-right: 1em;
}

.flow ol.step li:last-child:before,
.flow ol.step li:last-child:after{
    display:none;
}

.flow ol.step li:before,
.flow ol.step li:after{
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    margin: auto;
}

.flow ol.step li:before{
    top:0;
    bottom:0;
    right: 0;
    border-style: solid;
    border-color: transparent transparent transparent #fff;
    border-width: 40px 0 40px 24px;
    z-index: 10;
}

.flow ol.step li:after{
    top:0;
    bottom:0;
    right: 4px;
    border-style: solid;
    border-color: transparent transparent transparent #FB6100;
    border-width: 40px 0 40px 24px;
    z-index: 10;
}

@media screen and (max-width: 960px) {
    .pricelist{
        padding:5%;
    }
}

@media screen and (max-width: 768px) {
.inner{
    padding:8% 5%;
}

.pricelist{
    padding:5% 0;
}

.pricelist .inner{
    padding:8% 2%;
}

.pricelist .copy{
    font-size:22px;
    line-height:1.2;
    /* text-align:left; */
}

.pricelist table *{
    font-size:13px !important;
}

.pricelist table thead dl{
    padding: 12px 2px 12px;
}

.pricelist table thead dl dt{
    text-align: center;
    line-height: 1.2em;
}

.pricelist table thead dl dt > span{
    display:none;
}

.pricelist table thead dl dd.price:after{
    width:60px;
}

.pricelist table thead dl dd.price em{
    padding: 0;
    font-size: 24px !important;
}

.pricelist table thead dl dd.text{
    padding-right:6px;
    padding-left:6px;
    font-size: 11px !important;
}


.pricelist table tbody th,
.pricelist table tbody td{
    padding: 8px 5px;
}

.pricelist table tbody th{
    font-size: 12px !important;
}

.pricelist table tbody td .select{
    padding: 0 3px;
}

.pricelist table tbody td .select{
    border: solid 2px;
}

.pricelist table tbody td .select.creative{
    padding-top:3px;
}
.pricelist table tbody td .select h3{
    font-size:12px !important;
}

.pricelist .cm .text{
    font-size: 11px !important;
}

/* **************************
Madison
************************** */
.madison .inner{
    display: flex;
    flex-wrap:wrap;
}

.madison .image,
.madison .text{
    width: 100%;
}

.madison .text h3{
    font-size: 18px;
    padding-top:32px;
    text-align: center;
    color: #515151;
}

.madison .text p{
    font-size: 14px;
}

.madison .text .link{
    margin:24px auto 0;
    display:table;
    text-decoration: underline;
}

/* **************************
flow
************************** */
.flow h2{
    font-size:22px;
    line-height:1.2;
}

.flow p{
    text-align: left;
}

.flow ol.step{
    width: 70%;
    display:flex;
    flex-wrap:wrap;
    margin-bottom: 32px;
}

.flow ol.step li{
    width:100%;
    padding: 12px 0;
    border-bottom: solid 3px rgba(255, 255, 255, 0.4);
    line-height:1.2em;
    margin-top: 8px;
}

.flow ol.step li:before,
.flow ol.step li:after{
    left: 0;
    right: 0;
    margin: auto;
}

.flow ol.step li:before{
    bottom: -60px;
    border-style: solid;
    border-color: #fda066 transparent transparent transparent;
    border-width: 16px 12px 0 12px;
}

.flow ol.step li:after{
    bottom: -52px;
    border-style: solid;
    border-color: #FB6100 transparent transparent transparent;
    border-width: 16px 12px 0 12px;
}

.flow ol.step li:nth-child(1){
    margin-top: 0px;
}
.flow ol.step li:nth-child(1)::before{
    bottom: -77px;
}
.flow ol.step li:nth-child(1)::after{
    bottom: -70px;
}

.flow ol.step li:last-child{
    padding-right: inherit;
    border-bottom: none;
}

}


