/*-----------
reset
-----------*/
* {
	margin: 0;
	padding: 0;
	overflow-x: hidden;
    box-sizing: border-box;
    font-size: 62.5%;
}

body {
    font-family: 'Noto Sans JP', sans-serif;
    color: #131834;
}

.cf { zoom: 1; }
.cf:before,.cf:after { content: ""; display: table;}
.cf:after { clear: both;}

img {
    max-width: 100%;
    height: auto;
}

.sp{ display: none;}

/*FONT*/
.font-noto{font-family: 'Noto Serif JP', serif;}
.font-ant{font-family: 'Inknut Antiqua', serif; font-weight: 400;}

/*header*/
header {
    position:absolute;
    top: 0;
    right: 0;
    left: 0;
    width: 100%;
    max-width: 1200px;
    display: flex;
    margin: 0 auto;
    z-index: 10;
}
header h1{
    font-size: 1.2rem;
    color: #fff;
    font-weight: normal;
    padding: 8px 10px 0 0;
    text-shadow: 1px 0 3px #000;
}
h1 span{
    display: inline;
}

.lang{
    align-self:flex-start;
    font-size: 0.8em;
    margin:5px 15px 0 0;
}
.lang a{
    text-decoration: none;
    color: #131834;
    font-size: 1.1rem;
    display: block;
    padding: 4px 10px;
    background: #fcc93c;
    border-radius: 20px;
}
.mleft {
    margin-left: auto;
}



/*=======
common
=========*/

h3.ttl {
    font-weight: bold;
    text-align: center;
    margin-bottom: 50px;
}

h3.ttl .ttl_txt {
    font-size: 4rem;
    display: block;
    margin-top: 15px;
}

h3.ttl .ballon {
    font-size: 2.2rem;
    position: relative;
    color: #f14112;
    text-align: center;
    padding: 0 40px;
    margin-bottom: 20px;
}

h3.ttl .ballon:before {
    content: "";
    background: url(../images/ttl_l.png) no-repeat left / 100% auto;
    width: 21px;
    height: 24px;
    position: absolute;
    left: 0;
    top: 7px;
}

h3.ttl .ballon:after {
    content: "";
    background: url(../images/ttl_r.png) no-repeat left / 100% auto;
    width: 21px;
    height: 25px;
    position: absolute;
    right: 0;
    top: 7px;
}

h3.ttl .ballon .big {
    font-size: 3.2rem;
    padding: 0 5px;
}

.attend li {
    padding-left: 20px;
}

.attend li:before {
    content: "※";
    margin-left: -20px;
}

.attend.en li:before {
    content: "*";
}

.bold {
    font-size: 1.8rem;
    font-weight: bold;
}

/*=======
main_visual
=========*/


@media print, screen and (min-width: 751px) {
    #main_visual {
        width: 100%;
        background: url(../images/mv_bg.jpg) no-repeat center top / auto 100%;
        background-size: cover;
        position: relative;
    }

    #main_visual:after {
        content: "";
        background: url(../images/wave.png) repeat center bottom / auto 100%;
        width: 100%;
        height: 44px;
        position: absolute;
        bottom: 0;
    }
    
    #main_visual .mv_wrap {
        width: 55%;
        margin: 10% auto 14%;
        text-align: center;
        position: relative;
    }
}

/*=======
prize
=========*/

#prize {
    background: url(../images/prize_wave.jpg) repeat-x left bottom / 100% auto;
}

.prize_inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 160px 0;
    position: relative;
}

.prize_inner:before {
    
    content: "";
    background: url(../images/fireworks_l.png) no-repeat left / 100% auto;
    width: 330px;
    height: 509px;
    position: absolute;
    margin-left: -500px;
    left: 42%;
    z-index: -1;
    top: 50px;
}

.prize_inner:after {
    content: "";
    background: url(../images/fireworks_r.png) no-repeat left / 100% auto;
    width: 248px;
    height: 248px;
    position: absolute;
    margin-right: -500px;
    right: 42%;
    top: 230px;
    z-index: -1;
}

#prize p {
    font-size: 1.8rem;
    line-height: 2;
    text-align: center;
    margin-bottom: 70px;
}

#prize ul {
    width: 1040px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

#prize ul li figure img {
    border: 5px solid #c4ecfc;
    border-radius: 30px;
    margin-bottom: 25px;
}

#prize ul li dl dt, #prize ul li dl dd {
    font-weight: bold;
    text-align: center;
    line-height: 1.6;
}

#prize ul li dl dt span {
    font-size: 2rem;
    position: relative;
    padding: 0 30px;
}

#prize ul li dl dt span:before, #prize ul li dl dt span:after {
    content: "";
    background: url(../images/prize_icon.png) no-repeat left / 100% auto;
    width: 19px;
    height: 19px;
    position: absolute;
    top: 5px;
}

#prize ul li dl dt span:before {
    left: 0;
}

#prize ul li dl dt span:after {
    right: 0;
}

#prize ul li dl dd span {
    font-size: 2.6rem;
    background:linear-gradient(transparent 50%, #fde49d 50%);
}

#prize ul li dl dd .small {
    font-size: 1.6rem;
    margin-left: 5px;
}



/*=======
about
=========*/

#about {
    max-width: 1200px;
    margin: 0 auto;
    padding: 160px 0 60px;
    position: relative;
}

/* #about:before {
    content: "";
    background: url(../images/fireworks_l.png) no-repeat left / 100% auto;
    width: 330px;
    height: 509px;
    position: absolute;
    margin-left: -500px;
    left: 42%;
    z-index: -1;
}

#about:after {
    content: "";
    background: url(../images/fireworks_r.png) no-repeat left / 100% auto;
    width: 248px;
    height: 248px;
    position: absolute;
    margin-right: -500px;
    right: 42%;
    bottom: 70px;
    z-index: -1;
} */

#about p {
    font-size: 1.8rem;
    line-height: 2;
    text-align: center;
    margin-bottom: 30px;
}

#about p a {
    font-size: 1.8rem;
    color: #131834;
    text-decoration: underline;
}

#about p a:hover {
    text-decoration: none;
}



/*=======
recruitment
=========*/

#recruitment {
    width: 1040px;
    margin: 0 auto;
    padding-bottom: 180px;
    position: relative;
}

.recruitment_inner {
    border-radius: 50px;
    background: #f14112;
}

#recruitment:after {
    content: "";
    background: url(../images/cat.png) no-repeat left bottom / 100% auto;
    width: 195px;
    height: 168px;
    position: absolute;
    left: 50%;
    margin-left: -520px;
    bottom: 0;
}

#recruitment h3 {
    font-size: 3.6rem;
    color: #fff;
    text-align: center;
    font-weight: bold;
    padding: 24px 0 20px;
    border-bottom: solid 1px;
}

#recruitment .period p {
    font-size: 4rem;
    font-weight: bold;
    color: #fff;
    text-align: center;
    line-height: 1.4;
    padding: 20px 0;
}

#recruitment .period p span {
    font-size: 6rem;
    padding: 0 3px;
}

#recruitment .period p span.small {
    font-size: 3rem;
}

#recruitment .txt {
    color: #fff;
    padding: 0 50px;
    font-size: 1.8rem;
    line-height: 2;
}

#recruitment .txt a {
    font-size: 1.8rem;
    color: #fff;
    text-decoration: underline;
}

#recruitment .txt a:hover {
    text-decoration: none;
}

#recruitment .attend {
    color: #fff;
    padding: 0 50px 50px;
}

#recruitment .attend li {
    font-size: 1.8rem;
}

#recruitment figure {
    position: absolute;
}


/*=======
method
=========*/

#method {
    padding: 120px 0;
    background: #131834;
}

/* #method:before {
    content: "";
    background: url(../images/cat.png) no-repeat left / 100% auto;
    width: 195px;
    height: 168px;
    position: absolute;
    left: 50%;
    margin-left: -500px;
    top: -195px;
} */

#method .ttl_txt {
    color: #fff;
}

#method .step_wrap {
    width: 1040px;
    margin: 0 auto;
}

#method .step_wrap li {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 50px;
}

#method .step_wrap li img {
    width: 240px;
    height: auto;
}

#method .step_wrap li dl {
    width: 750px;
}

#method .step_wrap li dt {
    font-size: 1.6rem;
    color: #fff;
}

#method .step_wrap li dt.en {
    display: none;
}

#method .step_wrap li dt img {
    max-width: 100px;
}

#method .step_wrap li dd {
    font-size: 1.6rem;
    line-height: 2;
    color: #fff;
    margin-top: 10px;
}

#method .step_wrap li dd a {
    font-size: 1.6rem;
    color: #fff;
    text-decoration: underline;
}

#method .step_wrap li dd a:hover {
    text-decoration: none;
}

#method .step_wrap li .template {
    width: 1040px;
    display: flex;
    flex-wrap: wrap;
    margin-top: 50px;
    justify-content: space-between;
}

#method .step_wrap li .template li {
    width: 500px;
    margin-bottom: 10px;
}

#method .step_wrap li .template li img {
    width: 100%;
    border-radius: 30px;
    
}

#method .step_wrap li .template li a {
    display: block;
    position: relative;
}

#method .step_wrap li .template li a:first-of-type {
    margin-bottom: 10px;
}

#method .step_wrap li .template li a:before {
    content: "";
    background: url(../images/zoom.png) no-repeat right / 100% auto;
    width: 40px;
    height: 40px;
    position: absolute;
    right: 20px;
    bottom: 20px;
    z-index: 999;
}

#method .step_wrap li .template li a:hover {
    opacity: 0.8;
}

#method .step_wrap li .template li .btn {
    width: 100%;
    margin-top: 20px;
    padding-bottom: 5px;
}

#method .step_wrap li .template li .btn a {
    background: #f14112;
    box-shadow: 0px 5px #9c2202;
    border-radius: 35px;
    text-decoration: none;
    display: block;
    font-size: 1.6rem;
    color: #fff;
    text-align: center;
    font-weight: bold;
    padding: 24px 20px 22px;
    position: relative;
}

#method .step_wrap li .template li .btn a:before {
    display: none;
}

#method .step_wrap li .template li .btn a:after {
    content: "";
    background: url(../images/download.png) no-repeat right / 100% auto;
    width: 22px;
    height: 16px;
    position: absolute;
    right: 30px;
    top: 50%;
    margin-top: -8px;
}

#method .step_wrap li .template li .btn a:hover {
    background: #9c2202;
    position: relative;
    top: 5px;
    box-shadow: none;
}

#method .precautions {
    width: 1040px;
    border-radius: 50px;
    background: #fff;
    margin: 10px auto 0;
    padding: 50px;
}

#method .precautions h4 {
    font-size: 2.8rem;
    text-align: center;
    font-weight: bold;
    margin-bottom: 30px;
}

#method .precautions .attend li {
    display: block;
    margin-bottom: 20px;
    font-size: 1.8rem;
}

#method .precautions .attend li:last-of-type {
    margin-bottom: 0;
}


/*=======
entry_work
=========*/

#entry_work {
    padding: 120px 0 60px;
    position: relative;
}

#entry_work h3.ttl {
    margin-bottom: 70px;
}

#entry_work:before {
    content: "";
    background: url(../images/sakura.png) no-repeat left / 100% auto;
    width: 162px;
    height: 218px;
    position: absolute;
    left: 50%;
    margin-left: -500px;
    top: 60px;
}

#entry_work:after {
    content: "";
    background: url(../images/aqua.png) no-repeat left / 100% auto;
    width: 178px;
    height: 250px;
    position: absolute;
    right: 50%;
    margin-right: -500px;
    top: 20px;
}


/*=======
products
=========*/

#products {
    width: 1040px;
    margin: 0 auto;
    padding: 140px 0 0;
}

#products .winning {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}

#products .winning figcaption {
    font-size: 2.4rem;
    line-height: 1.6;
    font-weight: bold;
    text-align: center;
    margin-top: 20px;
}

#products p {
    font-size: 1.8rem;
    line-height: 2;
    margin: 50px 0 30px;
}

#products .list li, #terms ul li {
    font-size: 1.8rem;
    line-height: 1.8;
    margin-bottom: 10px;
    padding-left: 20px;
}

#products .list li:before, #terms ul li:before {
    content: "・";
    margin-left: -20px;
}


/*=======
wchance
=========*/

#wchance {
    width: 1040px;
    margin: 0 auto;
    padding: 160px 0 0;
}

#wchance p {
    font-size: 1.8rem;
    line-height: 2;
    margin-bottom: 40px;
}

#wchance dl dt {
    font-size: 1.8rem;
    font-weight: bold;
    padding-left: 25px;
    margin-bottom: 5px;
    background: url(../images/chance_icon.png) no-repeat left / 19px auto;
}

#wchance dl dd {
    font-size: 1.8rem;
    line-height: 2;
    margin-bottom: 40px;
}

#wchance ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: baseline;
    padding-bottom: 100px;
}

/*=======
terms
=========*/

#terms {
    width: 1200px;
    margin: 0 auto;
    background: #c4ecfc;
    border-radius: 50px;
    padding: 60px 0 70px;
}

#terms h3 {
    font-size: 3.6rem;
    text-align: center;
    font-weight: bold;
    margin-bottom: 40px;
}

#terms ul, #terms p, #terms h4, #terms h5 {
    max-width: 1040px;
    margin: 0 auto;
}

#terms h4 {
    font-size: 1.8rem;
    font-weight: bold;
    margin: 30px auto 10px;
}

#terms h5 {
    font-size: 1.6rem;
    font-weight: bold;
    margin: 15px auto 5px;
}

#terms ul li {
    font-size: 1.6rem;
    margin-bottom: 10px;
}

#terms p {
    font-size: 1.6rem;
    line-height: 1.8;
}


/*=======
sns
=========*/

.sns {
    margin: 100px 0 50px;
    text-align: center;
}

.sns p {
    display: block;
    margin-top: 20px;
}

.sns a:hover {
    opacity: 0.8;
}




/*=======
footer
=========*/

footer p {
    font-size: 1.5rem;
    text-align: center;
    margin-bottom: 20px;
}


@media print, screen and (max-width: 1250px) {

    #terms {
        width: calc(100% - 30px);
    }
    
    #terms ul, #terms p, #terms h4, #terms h5 {
        width: calc(100% - 50px);
    }
}


/*=======

タブレット / tablet

=========*/

@media print, screen and (max-width: 1100px) {
    
    #main_visual {
        background: url(../images/mv_bg_sp.jpg) no-repeat top / auto 100%;
        width: 100%;
        height: 100%;
        background-size: cover;
    }

    #main_visual .mv_wrap {
        width: 85%;
        margin: 18vh auto 25vh;
    }

    #prize ul {
        width: calc(100% - 30px);
    }
    
    #prize ul li {
        width: calc(50% - 10px);
        margin-bottom: 10px;
    }

    .prize_inner:before {
        content: "";
        background: url(../images/fireworks_l.png) no-repeat left / 80% auto;
        left: 60%;
    }
    
    .prize_inner:after {
        content: "";
        background: url(../images/fireworks_r.png) no-repeat left / 80% auto;
        right: 55%;
    }

    #about {
        margin: 0 auto;
        padding: 160px 15px 60px;
        position: relative;
    }

    #recruitment {
        width: calc(100% - 30px);
        margin: 0 auto;
    }

    .recruitment_inner {
        border-radius: 3rem;
    }

    #recruitment:after {
        background: url(../images/cat.png) no-repeat left bottom / 75% auto;
        left: 0;
        margin-left: 0;
    }
    
    #method .step_wrap {
        width: calc(100% - 30px);
    }
    
    #method .step_wrap li img {
        width: 240px;
        height: auto;
    }
    
    #method .step_wrap li dl {
        width: calc(100% - 270px);
    }
    
    #method .step_wrap li dt img {
        max-width: 100px;
    }
    
    #method .step_wrap li .template {
        width: 100%;
        margin: 50px auto;
    }
    
    #method .step_wrap li .template li {
        width: calc(50% - 10px);
        margin-bottom: 10px;
    }
    
    #method .step_wrap li .template li img {
        width: 100%;
        border-radius: 2rem;
    }

    #method .step_wrap li .template li .btn a {
        border-radius: 4rem;
        padding: 16px 20px 14px;
    }

    #method .step_wrap li .template li .btn a .sp {
        display: block;
    }
    
    #method .precautions {
        width: calc(100% - 30px);
        margin: 10px auto 0;
        padding: 50px;
    }


    
    #entry_work:before {
        background: url(../images/sakura.png) no-repeat left / 80% auto;
        left: 4vw;
        margin-left: 0;
    }
    
    #entry_work:after {
        background: url(../images/aqua.png) no-repeat left / 75% auto;
        right: 0;
        margin-right: 0;
    }


    #products {
        width: calc(100% - 30px);
    }
    
    #products .winning li {
        text-align: center;
        width: calc(50% - 10px);
    }


    #wchance {
        width: calc(100% - 30px);
    }

    #terms ul, #terms p, #terms h4, #terms h5 {
        width: calc(100% - 30px);
    }

}



/*=======

スマホ / sp

=========*/

@media print, screen and (max-width: 750px) {

    .sp {
        display: block;
    }

    .pc {
        display: none;
    }

    h3.ttl {
        margin-bottom: 40px;
    }
    
    h3.ttl .ttl_txt {
        font-size: 7.2vw;
        margin-top: 15px;
    }
    
    h3.ttl .ballon {
        font-size: 2rem;
        padding: 0 25px;
        margin-bottom: 15px;
    }
    
    h3.ttl .ballon:before {
        width: 15px;
        height: 24px;
        top: 2px;
    }
    
    h3.ttl .ballon:after {
        width: 15px;
        height: 24px;
        top: 2px;
    }

    h3.ttl .ballon.en:before, h3.ttl .ballon.en:after {
        display: none;
    }

    h3.ttl .ballon.en {
        padding: 0;
    }
    
    h3.ttl .ballon .big {
        font-size: 3.2rem;
        padding: 0 5px;
    }

    #main_visual {
        background: url(../images/mv_bg_sp.jpg) no-repeat top / auto 100%;
        width: 100%;
        height: 100%;
        background-size: cover;
    }

    #main_visual .mv_wrap {
        width: 85%;
        margin: 18vh auto 25vh;
    }

    #main_visual .mv_wrap span img {
        width: 60%;
    }

    h2.mv_txt {
        margin-top: 15px;
    }

    #prize {
        padding: 80px 0 40px;
        background: url(../images/prize_wave.jpg) repeat-x left bottom / auto 20px;
    }

    .prize_inner {
        padding: 0 15px;
    }

    .prize_inner:before {
        content: "";
        background: url(../images/fireworks_l.png) no-repeat left / 50% auto;
        margin-left: 0;
        left: 10px;
        top: -100px;
    }
    
    .prize_inner:after {
        content: "";
        background: url(../images/fireworks_r.png) no-repeat right / 50% auto;
        margin-right: 0;
        right: 10px;
        top: 70px;
    }

    #prize p {
        font-size: 1.6rem;
        margin-bottom: 40px;
    }

    #prize ul {
        width: 100%;
    }
    
    #prize ul li {
        width: 100%;
        margin-bottom: 10px;
        text-align: center;
    }

    #prize ul li figure img {
        border-radius: 3rem;
        margin-bottom: 15px;
    }

    #prize ul li dl {
        margin-bottom: 40px;
    }

    #prize ul li dl dt span {
        font-size: 1.8rem;
    }
    
    #prize ul li dl dt.en span {
        font-size: 1.6rem;
        display: block;
    }

    #prize ul li dl dt.en span:before, #prize ul li dl dt.en span:after {
        display: none;
    }

    #prize ul li dl dd span {
        font-size: 2.4rem;
    }
    
    #prize ul li dl dd .small {
        font-size: 1.5rem;
    }


    #about {
        padding: 60px 15px 40px;
    }

    #about p {
        font-size: 1.6rem;
        line-height: 2;
        text-align: left;
        margin-bottom: 25px;
    }

    #about p a {
        font-size: 1.6rem;
    }

    #about:before {
        content: "";
        background: url(../images/fireworks_l.png) no-repeat left / 65% auto;
        margin-left: 0;
        top: 20%;
        left: 0;
    }

    #about:after {
        content: "";
        background: url(../images/fireworks_r.png) no-repeat right / 80% auto;
        margin-right: 0;
        right: 0;
        bottom: 5%;
    }



    #recruitment {
        border-radius: 30px;
    }

    #recruitment h3 {
        font-size: 2.6rem;
        padding: 20px 0 18px;
    }
    
    #recruitment .period p {
        font-size: 6.5vw;
        padding: 20px 15px;
    }
    
    #recruitment .period p span {
        font-size: 8.5vw;
    }
    
    #recruitment .period p span.small {
        font-size: 2.4rem;
    }
    
    #recruitment .txt {
        padding: 0 20px;
        font-size: 1.6rem;
    }
    
    #recruitment .txt a {
        font-size: 1.6rem;
    }
    
    #recruitment .attend {
        color: #fff;
        padding: 0 20px 30px;
    }
    
    #recruitment .attend li {
        font-size: 1.6rem;
    }




    #method {
        padding: 90px 0;
    }
    
    #method .step_wrap {
        width: calc(100% - 30px);
        margin: 0 auto;
    }
    
    #method .step_wrap li {
        display: block;
        margin-bottom: 70px;
    }
    
    #method .step_wrap li img {
        max-width: 240px;
        width: 100%;
        height: auto;
        margin: 0 auto 20px;
        display: block;
    }
    
    #method .step_wrap li dl {
        width: 100%;
    }
    
    #method .step_wrap li dt img {
        display: none;
    }
    
    #method .step_wrap li dd {
        font-size: 1.6rem;
        margin: 0;
    }
    
    #method .step_wrap li dd a {
        font-size: 1.6rem;
    }
    
    #method .step_wrap li dd a:hover {
        text-decoration: none;
    }
    
    #method .step_wrap li .template {
        width: 100%;
        display: block;
        margin: 30px auto 0;
    }
    
    #method .step_wrap li .template li {
        width: 100%;
        margin-bottom: 40px;
    }
    
    #method .step_wrap li .template li img {
        width: 100%;
        max-width: 100%;
        border-radius: 2rem;
        
    }
    
    #method .step_wrap li .template li a {
        position: relative;
    }

    #method .step_wrap li .template li a:first-of-type {
        margin: 0;
    }
    
    #method .step_wrap li .template li a:before {
        width: 30px;
        height: 30px;
        right: 20px;
        bottom: 40px;
    }
    
    #method .step_wrap li .template li a:hover {
        opacity: 0.8;
    }
    
    #method .step_wrap li .template li .btn {
        width: 100%;
        margin-top: 0;
        padding-bottom: 5px;
    }
    
    #method .step_wrap li .template li .btn a {
        border-radius: 4rem;
        padding: 16px 20px 14px;
    }

    #method .step_wrap li .template li .btn.en a {
        font-size: 3.6vw;
    }
    
    #method .step_wrap li .template li .btn a:after {
        right: 20px;
    }

    #method .precautions {
        width: calc(100% - 30px);
        border-radius: 30px;
        margin: 10px auto 0;
        padding: 35px 15px;
    }
    
    #method .precautions h4 {
        font-size: 2.4rem;
        text-align: center;
        font-weight: bold;
        margin-bottom: 20px;
    }
    
    #method .precautions .attend li {
        font-size: 1.6rem;
    }


    



    #products {
        width: calc(100% - 30px);
        margin: 0 auto;
        padding: 140px 0 0;
    }
    
    #products .winning {
        display: block;
    }

    #products .winning li {
        margin-bottom: 40px;
        width: 100%;
    }

    #products .winning figure img {
        width: 80%;
        display: block;
        margin: 0 auto;
    }
    
    #products .winning figcaption {
        font-size: 2rem;
        margin-top: 15px;
    }
    
    #products p {
        font-size: 1.6rem;
        line-height: 2;
        margin: 10px 0 30px;
    }
    
    #products .list li {
        font-size: 1.6rem;
    }


    #entry_work:before, #entry_work:after {
        display: none;
    }

    #wchance {
        width: calc(100% - 30px);
        margin: 0 auto;
        padding: 120px 0 0;
    }
    
    #wchance p {
        font-size: 1.6rem;
        margin-bottom: 30px;
    }
    
    #wchance dl dt {
        font-size: 1.6rem;
        background: url(../images/chance_icon.png) no-repeat left 4px / 18px auto;
    }
    
    #wchance dl dd {
        font-size: 1.6rem;
        margin-bottom: 30px;
    }
    
    #wchance ul {
        padding:  20px 0 80px;
    }

    #wchance ul li {
        width: calc((100% / 6) - 10px);
    }



    #terms {
        width: calc(100% - 30px);
        margin: 0 auto;
        border-radius: 30px;
        padding: 40px 20px 35px;
    }
    
    #terms h3 {
        font-size: 2.4rem;
        margin-bottom: 25px;
    }
    
    #terms ul, #terms p, #terms h4, #terms h5 {
        width: 100%;
    }
    
    #terms h4 {
        font-size: 1.8rem;
        margin: 30px auto 10px;
    }
    
    #terms h5 {
        font-size: 1.6rem;
        margin: 15px auto 5px;
    }
    
    #terms ul li {
        font-size: 1.6rem;
        margin-bottom: 10px;
    }
    
    #terms p {
        font-size: 1.6rem;
    }


}



@media print, screen and (max-width: 500px) {
    h3.ttl .ballon {
        font-size: 4.2vw;
        padding: 0 25px;
        margin-bottom: 15px;
    }
}

/* @media print, screen and (max-width: 375px) {
    #main_visual {
        background: url(../images/mv_bg_sp.jpg) no-repeat top / 100% auto;
        width: 100%;
        height: 400px;
    }

    #main_visual .mv_wrap {
        width: 88%;
        margin: 20% auto;
    }

    #main_visual .mv_wrap span img {
        width: 60%;
    }
} */
