@import"/css/layout_r.css";

.flex div {
    flex-grow: 1;
}

@media print, screen and (min-width: 960px) {
    .tablet-sp-block,
    .tablet-sp-img {
        display: none !important;
    }
}
@media screen and (max-width: 959px) {
    .pc-block,
    .pc-img,
    .pc-logo {
        display: none !important;
    }
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    .pc-sp-br {
        display: none !important;
    }
}
@media print, screen and (min-width: 520px) {
    .sp-block,
    .sp-contact {
        display: none !important;
    }
}
@media screen and (max-width: 519px) {
    .pc-tablet-block,
    .pc-tablet-contact {
        display: none !important;
    }
}

/* body */
body {
    text-align: center;
    font-size: 1.1rem;
    line-height: 1.8;
}
@media screen and (max-width: 519px) {
    body {
        /* Android Chrome 40 upper */
        font-size: 1rem;
        line-height: 1.6;
    }
}

@media screen and (max-width: 519px) {
    .BodyMain {
        margin: 0 auto 70px;
    }
}

header {
    max-width: 1280px;
    display: flex;
    margin: 0 auto 10px;
}
footer {
    border-top: 3px solid #039;
    background: rgba(255, 255, 255, 0.9);
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 85px;
    z-index: 1002;
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    footer {
        height: 70px;
    }
}
@media screen and (max-width: 519px) {
    footer {
        height: 55px;
    }
}
.container {
    max-width: 1280px;
}
h1,
.pc-logo {
    max-width: 280px;
    font-weight: normal;
    font-size: 100%;
    margin-left: 1%;
}
h1 {
    display: grid;
    align-items: center;
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    h1,
    .pc-logo {
        max-width: 215px;
    }
}
@media screen and (max-width: 519px) {
    h1 {
        max-width: 150px;
    }
}
h1 img,
.pc-logo img {
    margin-top: 5px;
}
.contact {
    flex-grow: 1;
    display: grid;
    justify-content: right;
    font-size: 200%;
    line-height: 2rem;
    margin: 0.5% 1% 0 0;
}
footer .contact {
    margin: -0.5% 1% 0 0;
}
@media screen and (max-width: 519px) {
    footer .contact {
        margin: 0.5% 4% 0 0;
    }
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    .contact {
        padding-top: 0.5%;
        font-size: 160%;
        line-height: 1.5rem;
    }
}
.contact .time {
    font-size: 55%;
}
.contact a {
    color: #036;
}
.contact img {
    width: 40px;
    vertical-align: middle;
    margin: -5px 7px 0 0;
}
@media screen and (max-width: 959px) {
    .contact img {
        width: 30px;
    }
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    .contact img {
        margin: -4px 5px 0 0;
    }
}
@media screen and (max-width: 519px) {
    .contact img {
        margin: -2px 4px 0 0;
    }
}
.sp-contact {
    font-size: 40%;
    line-height: 1rem;
}
.sp-contact p {
    border-radius: 0.3rem;
    background: #039;
    font-size: 120%;
    padding: 5px 7px 3px;
    line-height: 1.5rem;
}
.sp-contact a {
    color: #fff;
}
footer .inquiry {
    margin-left: 10.5%;
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    footer .inquiry {
        width: 15%;
        max-width: 220px;
        margin-left: 1%;
    }
}
@media screen and (max-width: 519px) {
    footer .inquiry {
        margin-left: 0;
    }
}
footer .inquiry .btnLink a {
    margin: 0 auto;
    padding: 2px 15px 0;
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    footer .inquiry .btnLink a {
        margin-top: 10px;
    }
}
@media screen and (max-width: 519px) {
    footer .inquiry .btnLink a {
        margin-top: 3px;
    }
}

.slickSlide1 img {
    border: 1px solid #dcdcdc;
}

h2 {
    color: #ccc;
    font-size: 75%;
    font-weight: normal;
    line-height: 1.5rem;
}
@media screen and (max-width: 519px) {
    h2 {
        line-height: 1.2rem;
        padding-top: 0.5rem;
    }
}
h2.copy,
h3.copy,
h3.sub {
    font-family: source-han-serif-japanese, serif;
    font-weight: inherit;
}
h2.copy,
h3.copy {
    font-size: 200%;
    margin-top: 1rem;
}
h2.copy {
    color: #000;
    line-height: 1.8;
}
h3.sub {
    font-size: 165%;
    margin-top: 2.5rem;
}
@media screen and (max-width: 959px) {
    h3.sub {
        font-size: 140%;
    }
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    h3.sub {
        margin-top: 2rem;
    }
}
@media screen and (max-width: 519px) {
    h3.sub {
        margin-top: 1.5rem;
    }
}

#flow h3.sub {
    margin-top: -20px;
}
.en {
    color: #999;
    font-size: 80%;
    margin: -10px 0 2rem;
}
@media screen and (max-width: 959px) {
    .en {
        margin: -10px 0 1rem;
    }
}
#workPage .en {
    margin: -10px 0 1rem;
}

.menu {
    width: 100%;
    max-width: 1280px;
    display: flex;
    flex-directin: row;
    justify-content: space-between;
    background: #039;
    font-size: 120%;
    line-height: 2.2;
    border-radius: 0.3rem;
    margin-bottom: 1px;
}
.menu a {
    width: 100%;
    color: #fff;
    border-right: 1px solid #ccc;
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    .menu {
        font-size: 100%;
        line-height: 1.2;
    }
    .menu a {
        padding: 5px 0;
    }
    .menu a:nth-child(2),
    .menu a:nth-child(4),
    .menu a:nth-child(5) {
        line-height: 2.4;
    }
}
@media screen and (max-width: 519px) {
    .menu {
        display: none;
    }
}

.backG {
    background: #f6f6f6;
}

.btnLink {
    text-align: center;
}
.btnLink a {
    display: inline-block;
    margin: 2.5rem auto;
    padding: 10px 25px 8px;
    border-radius: 0.3rem;
    background: #defdde;
    border: 1px solid #e0e0e0;
    box-shadow: 2px 2px 2px rgba(216, 216, 216, 0.6);
    color: #159953;
    text-align: center;
    text-shadow: 1px 2px 2px rgba(255, 255, 255, 0.85);
    font-size: 120%;
}
@media print, screen and (min-width: 960px) {
    .artBottom .btnLink {
        flex: 1;
    }
}
@media screen and (max-width: 959px) {
    .btnLink a {
        margin: 1.5rem auto;
    }
}
.btnLink a:hover {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)";
}

#topics {
    width: 95%;
    max-width: 1200px;
    height: 220px;
    overflow: auto;
    border: 1px solid #dcdcdc;
    border-radius: 0.3rem;
    text-align: left;
    margin-bottom: 2rem;
}
#topics .flex {
    border-bottom: 1px solid #dcdcdc;

}
.topicsDate {
    width: 25%;
    background: #f6f6f6;
    padding: 1rem;
}
.topicsDate .new {
    color: #f00;
    font-size: 0.8rem;
    margin-left: 0.5rem;
}
.topicsDetails {
    width: 67.5%;
    padding: 1rem;
}
#topics .logo {
    width: 220px;
    margin: 1rem 0;
}
@media screen and (max-width: 519px) {
    #topics .logo {
        width: 160px;
    }
}

.support {
    padding: 2.5rem 0;
}
.fee .feeImg,
.support .supportImg {
    width: 190px;
    height: 208px;
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    .fee .feeImg,
    .support .supportImg {
        width: 170px;
        height: 186px;
        margin: 0 3%;
    }
}
@media screen and (max-width: 519px) {
    .fee .feeImg,
    .support .supportImg {
        width: 120px;
        height: 131px;
        margin: 0 5%;
    }
}
.fee .feeDetails {
    width: 48%;
}
@media screen and (max-width: 959px) {
    .fee .feeDetails {
        width: 56%;
    }
}
.fee .feeDetails img {
    width: 70%;
    max-width: 500px;
}
@media screen and (max-width: 959px) {
    .fee .feeDetails img {
        max-width: 450px;
        margin-top: 1.5rem;
    }
}
@media screen and (max-width: 519px) {
    .fee .feeDetails img {
        width: 300px;
    }
}
.fee .feeDetails p {
    width: 85%;
    max-width: 600px;
    background: #039;
    border-radius: 0.3rem;
    margin: 5px auto;
    padding-left: 10px;
    color: #fff;
    font-size: 120%;
    line-height: 1.5;
}
@media screen and (max-width: 959px) {
    .fee .feeDetails p {
        width: 95%;
    }
}
.fee .feeDetails .num {
    font-size: 150%;
    padding-left: 0.5rem;
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    .fee .feeDetails .num {
        font-size: 130%;
    }
}
@media screen and (max-width: 519px) {
    .fee .feeDetails .num {
        font-size: 120%;
    }
}

.support .supportTxt {
    width: 47%;
    padding: 0 1.5rem 0 2rem;
    text-align: left;
}
@media screen and (max-width: 959px) {
    .support .supportTxt {
        width: 98%;
        padding: 1rem;
    }
}

.merit div {
    width: 45%;
    margin: 0 1% 3rem;
    padding-bottom: 0.5rem;
}
@media screen and (max-width: 959px) {
    .merit div {
        width: 95%;
        margin: 0 0 1rem;
        padding-bottom: 0;
    }
}
.merit div:first-child {
    margin-top: 4rem;
}
@media screen and (max-width: 959px) {
    .merit div:first-child {
        margin-top: 2rem;
    }
}
@media print, screen and (min-width: 960px) {
    .merit div:nth-child(2) {
        margin-top: 3rem;
    }
    .merit div:nth-child(5),
    .merit div:nth-child(6) {
        margin: 0 1%;
    }
}

.merit div:not(:first-child),
.flow {
    border: 1px solid #159953;
    border-radius: 0.3rem;
    background: #fff;
}
.flow {
    margin-bottom: 3rem;
    padding: 1rem 0;
}
@media screen and (max-width: 959px) {
    .flow {
        margin-bottom: 2rem;
        padding: 1rem 0 1.5rem;
    }
}
.flow:last-child {
    margin-bottom: 2.5rem;
}
.merit div img {
    width: 45%;
    max-width: 250px;
    margin-right: 5px;
}
.merit .subtitle {
    background: #f6f6f6;
    border-radius: 0.3rem 0.3rem 0 0;
    text-align: left;
    font-size: 130%;
    border-bottom: 1px solid #159953;
    margin-bottom: 1rem;
    padding: 0.5rem 0 0.5rem 1rem;
}
@media screen and (max-width: 519px) {
    .merit .subtitle {
            padding: 0.5rem 1rem;
    }
}
.merit div span,
.subtitle:first-letter {
    font-size: 130%;
    color: #159953;
}
.merit div span {
    font-size: 150%;
}
.flowTxt {
    width: 64%;
    padding: 0 1.7rem 0 1rem;
}
@media screen and (max-width: 519px) {
    .flowTxt {
        width: 98%;
        padding: 0 1.5rem 0 1rem;
    }
}
.flowTxt .btnLink,
.flowTxt .call {
    width: 48%;
}
@media screen and (max-width: 959px) {
    .flowTxt .btnLink,
    .flowTxt .call {
        width: 98%;
    }
}
.flowTxt .call {
    text-align: center;
    font-size: 90%;
    line-height: 2rem;
}
.flowTxt .call a {
    font-size: 200%;
}
@media screen and (max-width: 519px) {
    .flowTxt .call a {
        font-size: 175%;
    }
}
.flowTxt .call .freedial {
    width: 35px;
    vertical-align: middle;
    margin: 0 10px 5px 0;
}

.flowImg {
    width: 28%;
    font-size: 80%;
    padding-right: 2rem;
}
@media screen and (max-width: 959px) {
    .flowImg {
        padding: 0;
    }
}
.flowImg img {
    width: 98%;
    max-width: 300px;
    border: 1px solid #dcdcdc;
}
@media screen and (max-width: 519px) {
    .flowImg img {
        width: 80%;
    }
}
.flowImg img.se {
    max-width: 200px;
    border: none;
    margin: 10px 0;
}
.flow .subtitle {
    font-size: 130%;
    text-align: left;
    margin-left: 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid #159953;
}
.flow .btnLink a {
    margin: 1rem auto 0.7rem;
}

.work div {
    width: 33%;
    font-size: 80%;
    padding-top: 3rem;
}
@media screen and (max-width: 959px) {
    .work div {
        width: 49.5%;
    }
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    .work div {
        padding-top: 2rem;
    }
}
@media screen and (max-width: 519px) {
    .work div {
        padding-top: 1.5rem;
    }
}
.work div:nth-child(1),
.work div:nth-child(2) {
    padding-top: 0;
}
@media print, screen and (min-width: 960px) {
    .work div:nth-child(3) {
        padding-top: 0;
    }
}
.work div img {
    width: 98%;
    max-width: 400px;
    border: 1px solid #cdcdcd;
}
.servicemenu,
.usefulmenu,
#price .work,
.fax,
.funeralInfoImg {
    margin-bottom: 3rem;
}
.servicemenu div,
.usefulmenu div {
    padding: 0.7rem 0;
    background: #efe;
}
.servicemenu div {
    width: 24.5%;
    font-size: 110%;
}
@media screen and (max-width: 959px) {
    .servicemenu div {
        width: 49%;
        font-size: 100%;
    }
}
.usefulmenu div {
    width: 19.6%;
}
@media screen and (max-width: 959px) {
    .usefulmenu div {
        width: 33.3%;
        font-size: 90%;
    }
}
.servicemenu div:nth-child(2),
.servicemenu div:nth-child(4),
.servicemenu div:nth-child(5),
.servicemenu div:nth-child(7),
.usefulmenu div:nth-child(odd) {
    background: #f0f4fc;
}
@media screen and (max-width: 959px) {
    .servicemenu div:nth-child(4),
    .servicemenu div:nth-child(5) {
        background: #efe;
    }
    .servicemenu div:nth-child(2),
    .servicemenu div:nth-child(3),
    .servicemenu div:nth-child(6) {
        background: #f0f4fc;
    }
}
.form div {
    width: 29%;
    margin: 0 2%;
    border: 1px solid #039;
    border-radius: 0.3rem;
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    .form div {
        width: 14.5%;
    }
}
@media screen and (max-width: 519px) {
    .form div {
        max-width: 150px;
    }
    .form div:last-child {
        margin-top: 0.7rem;
    }
}

.form div p {
    background: #039;
    border-radius: 0.3rem 0.3rem 0 0;
    color: #fff;
    padding: 0.3rem 0;
}
.form div img {
    width: 98%;
    margin: 1% 0;
}

.faxTxt1,
.faxTxt2 {
    width: 34%;
}
.faxTxt1 div,
.faxTxt2 div {
    width: 200px;
    height: 200px;
    border-radius: 50%;
    margin-top: 2rem;
    font-size: 110%;
}
@media screen and (max-width: 959px) {
    .faxTxt1 div,
    .faxTxt2 div {
        width: 150px;
        height: 150px;
        margin-top: 1rem;
        font-size: 95%;
    }
}
.faxTxt1 div:first-child,
.faxTxt2 div:last-child {
    background: #efe;
}
.faxTxt1 div:last-child,
.faxTxt2 div:first-child {
    background: #f0f4fc;
}
.faxTxt1 div p,
.faxTxt2 div p {
    padding-top: 35%;
}
@media screen and (max-width: 959px) {
    .faxTxt1 div p,
    .faxTxt2 div p {
        padding-top: 33%;
    }
}
.faxImg {
    width: 30%;
    font-size: 80%;
}
@media screen and (max-width: 519px) {
    .faxImg {
       width: 98%;
    }
    .faxImg img {
        width: 150px;
    }
}

.funeralImg {
    max-width: 230px;
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    .funeralImg {
        max-width: 200px;
    }
}
@media screen and (max-width: 519px) {
    .funeralImg {
        max-width: 140px;
    }
}
.funeralInfoImg {
    font-size: 80%;
}
.funeralInfoImg img {
    margin: 0 3%;
}
.funeralInfoImg img:first-child {
    width: 40%;
    max-width: 450px;
}
.funeralInfoImg img:nth-child(2) {
    width: 20%;
    max-width: 206px;
}

#info {
    padding: 20px 0 3rem;
}
.infoItem {
    width: 20%;
    background: #f6f6f6;
    border-bottom: 1px solid #dcdcdc;
    padding: 1rem 0;
    display: grid;
    align-items: center;
    justify-content: center;
}
.infoDetail {
    width: 70%;
    text-align: left;
    border-bottom: 1px solid #dcdcdc;
    padding: 1rem 0 1rem 5.5rem;
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    .infoDetail {
        width: 76%;
        padding: 1rem 0 1rem 1rem;
    }
}
@media screen and (max-width: 519px) {
    .infoItem,
    .infoDetail {
        width: 98%;
        padding: 0.5rem 1rem;
    }
}
.infoDetail .freedial {
    width: 27px;
    vertical-align: middle;
    margin: 0 7px 3px 0;
}
.infoDetail .business {
    padding: 0 0 1rem 1.05rem;
}
.infoDetail .ya {
    font-size: 1rem;
}
.downArrow {
    width: 0;
    height: 0;
    border-left: 90px solid transparent;
    border-right: 90px solid transparent;
    border-top: 35px solid #039;
    margin: 2rem auto 2.5rem;
}
@media screen and (max-width: 959px) {
    .downArrow {
        margin: 1.5rem auto 2rem;
    }
}
@media screen and (max-width: 519px) {
    .downArrow {
        border-left: 50px solid transparent;
        border-right: 50px solid transparent;
        border-top: 25px solid #039;
    }
}
.rightArrow {
    width: 0;
    height: 0;
    border-top: 35px solid transparent;
    border-bottom: 35px solid transparent;
    border-left: 25px solid #039;
    margin: 2rem auto 2.5rem;
}

.art {
    width: 90%;
    padding-top: 2rem;
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    .art {
        padding: 1rem 0 0.5rem;
    }
}
@media screen and (max-width: 519px) {
    .art {
        padding: 0.5rem 0 0.3rem;
    }
}
.artCopy {
    color: #3a7c4a;
    font-size: 150%;
    font-weight: bold;
}
.artTxt {
    width: 48%;
}
.artTxt .btnLink a {
    margin: 2.5rem auto 0;
}
@media screen and (max-width: 959px) {
    .artTxt .btnLink a {
        margin: 1.5rem auto;
    }
}
.artImg {
    width: 44.5%;
    padding-left: 1.5rem;
}
@media screen and (max-width: 959px) {
    .artTxt,
    .artImg {
        width: 98%;
    }
    .artImg {
        padding-left: 0;
    }
    .artImg img {
        width: 98%;
        max-width: 500px;
    }
}

iframe {
    padding-top: 1.5rem;
}
.iframe-wrapper {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
}
.iframe-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.access {
    width: 80%;
    max-width: 900px;
    padding: 1rem 0 2rem;
}
@media screen and (max-width: 959px) {
    .access {
        width: 98%;
    }
}
.accessTxt {
    width: 60%;
    text-align: left;
}
.accessImg {
    width: 38%;
    font-size: 80%;
}
.accessImg img {
    max-width: 250px;
    border: 1px solid #dcdcdc;
}
@media screen and (max-width: 959px) {
    .accessImg {
        width: 35%;
        padding-left: 3%;
    }
    .accessImg img {
        width: 98%;
    }
}

.bottomLink a {
    font-size: 0.75rem;
}

#page-top {
    position: fixed;
    z-index: 100;
    bottom: 95px;
    right: 8px;
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    #page-top {
        bottom: 80px;
        right: 8px;
    }
}
@media screen and (max-width: 519px) {
    #page-top {
        bottom: 65px;
        right: 5px;
    }
}
#page-top a {
    font-size: 14px;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    text-align: center;
    position: relative;
    letter-spacing: 2px;
    display: block;
    width: 48px;
    height: 48px;
    background: #159953;
    border-radius: 50%;
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    #page-top a {
        width: 44px;
        height: 44px;
    }
}
@media screen and (max-width: 519px) {
    #page-top a {
        width: 40px;
        height: 40px;
    }
}
#page-top a:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    margin-left: -6px;
    margin-top: -4px;
    top: 50%;
    width: 11px;
    height: 11px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    #page-top a:after {
        width: 10px;
        height: 10px;
        margin-left: -6px;
        margin-top: -4px;
    }
}
@media screen and (max-width: 519px) {
    #page-top a:after {
        width: 8px;
        height: 8px;
        margin-left: -5px;
        margin-top: -3px;
    }
}

#notFound {
    padding-top: 10rem;
}

/* work */
.asterisk {
    font-size: 0.8rem;
    text-align: right;
    margin: 0 1rem;
}
ul#works, li {
    text-align: justify;
    line-height: 2;
    padding: 0.2rem 0.5rem;
}
@media print, screen and (min-width: 960px) {
    ul#works {
        display: flex;
        flex-wrap: wrap;
        width: 960px;
        margin: 20px auto;
    }
    ul#works li {
        width: calc(50% - 10px);
        text-align: left;
        padding: 5px;
        border-bottom: 1px dotted #dcdcdc;
    }
    ul#works li:nth-child(odd) {
        float: left;
    }
    ul#works li:nth-child(even) {
        float: right;
    }
}
@media screen and (max-width: 959px) {
    ul#works li:nth-child(odd) {
        background: #dcdcdc;
        border-radius: 0 0 6px 6px;
    }
    ul#works li:nth-child(even) {
        border-bottom: 1px dotted #999;
        text-indent: 1rem;
    }
}

/* art */
#artTop {
    padding: 65px 0 60px;
}
@media screen and (max-width: 519px) {
    #artTop {
        padding: 30px 0 35px;
    }
}
.artTop {
    margin-bottom: 20px;
}
.artBottom {
    max-width: 900px;
    margin-bottom: 40px;
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    .artBottom {
        margin-bottom: 20px;
    }
}
@media screen and (max-width: 519px) {
    .artBottom {
        margin-bottom: 15px;
    }
}
.artCopy {
    margin-top: 2rem;
}
@media screen and (max-width: 519px) {
    .artCopy {
        margin-top: 1rem;
    }
}
.txtCompany {
    text-align: right;
    margin: 0 1rem;
}
.txtArt {
    text-align: center;
}
.txtArt p {
    display: inline-block;
    text-align: justify;
    margin: 1rem 2rem 2rem;
}
@media screen and (max-width: 519px) {
    .txtArt p {
        margin: 0.5rem 1rem 1rem;
    }
}
ul.art {
    margin: 2rem auto 0;
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    ul.art {
        margin: 3rem auto 0;
    }
}
ul.art, li {
    text-align: justify;
    line-height: 2;
    padding: 0.2rem 0.5rem;
}
.products {
    margin: 0.5rem auto;
}
@media screen and (max-width: 519px) {
    .products {
        margin: 0 auto;
    }
}
@media print, screen and (min-width: 960px) {
    .txtArt {
        width: 75%;
    }
    .txtCompany {
        width: 68%;
        margin: 0 auto;
    }
    ul.art {
        display: flex;
        flex-wrap: wrap;
        max-width: 960px;
        width: 70%;
    }
    ul.art li {
        padding: 5px;
        border-bottom: 1px dotted #dcdcdc;
    }
    ul.art li:nth-child(odd) {
        width: calc(50% - 175px);
        float: left;
    }
    ul.art li:nth-child(even) {
        width: calc(50% - -155px);
        float: right;
    }
}
@media screen and (max-width: 959px) {
    ul.art li:nth-child(odd) {
        background: #dcdcdc;
        border-radius: 0 0 6px 6px;
    }
    ul.art li:nth-child(even) {
        border-bottom: 1px dotted #999;
    }
    ul.art li:last-child {
        border-bottom: none;
    }
    .products a {
        font-size: 110%;
    }
}
.artwork img {
    border: 1px solid #dcdcdc;
}
.winner {
    font-size: 1.3rem;
    margin: 2rem auto 0;
    color: #3a7c4a;
}
@media screen and (min-width: 520px) and (max-width: 959px) {
    .winner {
        margin: 1.5rem auto 0;
    }
}