.g {
    margin: 2em 1em ;
}

.shadow {
    margin: 1em 0.5em;
    border-radius: 30px;
    box-shadow: 0 0 30px rgb(216, 212, 212);
    max-width: 700px;
    background: rgba(255, 255, 255, 0.9);
}

.cmn-hg2 {
    padding: 2em 0;
}

.last {
    padding-bottom: 2em;
}

ol {
    padding-bottom: 2em;
}

@media(min-width:500px) {
    .g > p, .g > ul, .g > ol {
        margin: 1em auto;
        width:fit-content;
    }
}
@media(min-width:700px) {
    .shadow {
        margin: 1em auto;
    }
}

.oubo {
    display: block;
    width: fit-content;
    background: linear-gradient(90deg, var(--main0), var(--main100));
    text-decoration: none;
    border-radius: 60px;
    padding: 15px 30px;
    color: white;
    margin: 2em auto;
}
.request {
    padding-bottom: 1em;
}

/********************************

	共通パーツ

********************************/
.g {
    max-width: 1100px;
}

.g > .cmn-hg {
    flex-basis: 370px;
}

.g > ul {
    list-style: none;
    margin: 1em;
    padding: 0;
}

.g > ul > li { 
    margin: 1em 0;
    background-color: #F8F9F8;
    box-shadow: 0 0 15px 1px #9c9c9c;
    font-weight: bold;
    position: relative;
}

.g > ul > li > span {
    display: inline-block;
    margin: 1em 0;
}

@media (min-width:768px){
    .g {
        display: flex;
        justify-content: space-evenly;
        margin: 2em auto;
    }

   .g > .cmn-hg > p {
        font-size: 20px;
        letter-spacing: 1.5px;
    }

    .g > .cmn-hg > h2 {
        font-size: 30px;
    }
    
    .g > ul > li {
        max-width: 670px;
    }
}

.cmn-hg > h2 {
    margin: 0;
    letter-spacing: 2px;
}

.g > ul > li {
    padding: 1em;
    border-radius: 20px;
}

.btn {
    color: blue;
}
