/* ============================================================ 
common css NEW
============================================================ */
*,
*:before,
*:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

html {
    font-size: 62.5%;
}

body {
    color: #000;
    font-family: "Noto Sans JP", sans-serif;
}

main {
    display: block;
    background: #fff;
}

p,
li,
span {
    font-size: 1.8rem;
    line-height: 1.75;
    letter-spacing: 0em;
    color: #000;
    font-weight: 300;
    font-feature-settings: "palt";
}

@media screen and (max-width: 768px) {
    p,
    li,
    span {
        font-size: 1.6rem;
    }
}

@media screen and (max-width: 768px) and (max-width: 414px) {
    p,
    li,
    span {
        font-size: 1.4rem;
        line-height: 1.6;
    }
}

img {
    display: inline-block;
    width: auto;
    max-width: 100%;
    vertical-align: bottom;
}

.wrap900 {
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}

/* ============================================================
import
============================================================ */
/* ============================================================
camp
============================================================ */
/* 共通*/
.pconly {
    display: block;
}

.sponly {
    display: none;
}

.Flexbox {
    display: flex;
    justify-content: space-between;
}

.wrap {
    max-width: 980px;
    margin: 0 auto;
}

.txt_min {
    font-family: "Noto Sans JP", serif;
}

.txt130 {
    font-size: 130%;
}

.txt160 {
    font-size: 160%;
}

.center {
    text-align: center;
}

.txtred {
    color: #ff2c2c;
    font-weight: bold;
}

.txtwh {
    color: #fff;
    font-weight: lighter;
}

.bold {
    font-weight: bold;
}
.blbox {
    background-color: #000;
    max-width: 650px;
    padding: 0.2% 2%;
    color: #fff;
    margin: 3% auto 0;
    line-height: 2rem;
}

@media screen and (max-width: 767px) {
    .blbox {
        line-height: 3.5rem;
    }
}

.grbox {
    background-color: #bfe6bd;
    max-width: 650px;
    padding: 0.2% 2%;
    color: #000;
    margin: 3% auto 0;
    line-height: 2;
    font-family: "Noto Serif JP", serif;
}

.ul {
    background: linear-gradient(transparent 70%, #e67821 70%);
}

@media screen and (max-width: 767px) {
    .pconly {
        display: none;
    }

    .sponly {
        display: block;
    }

    .Flexbox {
        display: block;
    }

    .wrap {
        width: 90%;
        margin: 0 auto;
    }

    .wrap900 {
        width: 90%;
        margin: 0 auto;
    }

    .center {
        text-align: left;
    }
}

/*===============
      camp 
===============*/
.camp01_bg {
    background: url("../img/camp01bg.jpg") no-repeat center/cover fixed;
    padding: 0 0 5%;
}

.camp01-1_bg {
    background: url("../img/camp01-1bg.png") no-repeat center/cover;
    padding: 10% 0;
}

.camp01-1 {
    max-width: 500px;
    margin: 0 0 0 auto;
    line-height: 250%;
}

.camp01-2_bg {
    background: url("../img/camp01-2bg.png") repeat-y center/cover;
    padding: 0;
}

.camp01-2 {
    max-width: 858px;
}

.camp01-3_bg {
    background: url("../img/camp01-3bg.png") repeat-y center/cover;
    padding: 3% 0;
}

.camp01-3 {
    max-width: 650px;
}

.camp01-4_txt {
    max-width: 700px;
    margin: 0 0 0 auto;
}

.key_bg {
    background: url("../img/keybg.jpg") no-repeat center/cover;
    padding: 5% 0;
}

.camp02_bg {
    background: url("../img/camp02bg.jpg") repeat-y center/cover;
    padding: 5% 0;
    margin: 0 auto;
}

.camp03_bg {
    background: url("../img/camp03bg.png") no-repeat center/cover;
    padding: 0 0 5%;
}

.camp03-1_bg {
    background: url("../img/camp03-1bg.png") repeat-y center/cover;
    padding: 3% 0;
}

.camp03 {
    max-width: 878px;
    margin: 0 auto;
}

.camp03-2 {
    max-width: 820px;
    margin: 0 0 0 auto;
}

.camp04_bg {
    background: url("../img/camp04bg.jpg") no-repeat center/cover fixed;
    padding: 0 0 5%;
}

.camp04ttl_bg {
    background: url("../img/camp04ttlbg.png") no-repeat center/cover;
    padding: 3% 0;
}

.camp04-1txt {
    max-width: 580px;
}

.camp04-1img {
    margin-bottom: 30px;
}

.camp04-bg {
    background-color: rgba(255, 255, 255, 0.9);
    padding: 3%;
}

.camp05_bg {
    background: url("../img/camp05bg.jpg") no-repeat center/cover fixed;
    padding: 0 0 5%;
}

.camp05ttl_bg {
    background: url("../img/camp05ttlbg.png") no-repeat center/cover;
    padding: 3% 0;
}

.camp05_img {
    max-width: 200px;
}

.camp05_txt {
    max-width: 660px;
}

.camp06_bg {
    background: url("../img/camp06bg.jpg") no-repeat center/cover;
    padding: 0 0 15%;
}

.camp06-1_bg {
    background: url("../img/camp06txtbg.png") no-repeat center/cover;
    padding: 3% 0;
}

.camp06 {
    max-width: 850px;
}

@media screen and (max-width: 767px) {
    .camp01-3_bg {
        background: url("../img/camp01-3bg.png") repeat-y left center/cover;
        padding: 3% 0;
    }

    .camp04ttl_bg {
        background: url("../img/camp04ttlbg.png") no-repeat left center/cover;
        padding: 3% 0;
    }

    .camp05ttl_bg {
        background: url("../img/camp05ttlbg.png") no-repeat left center/cover;
        padding: 3% 0;
    }

    .camp06-1_bg {
        background: url("../img/camp06txtbg.png") repeat-y left center/cover;
        padding: 3% 0;
    }
}

/* ============================================================
margin & padding
============================================================ */
.p-pd-left {
    padding-left: 30px;
}

.p-pd-right {
    padding-right: 30px;
}

@media screen and (max-width: 768px) {
    .p-pd-left {
        padding-left: 0px;
    }

    .p-pd-right {
        padding-right: 0px;
    }
}

.mT100 {
    margin-top: 100px;
}

@media screen and (max-width: 768px) {
    .mT100 {
        margin-top: 11%;
    }
}

.mB40 {
    margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
    .mB40 {
        margin-bottom: 5%;
    }
}

.mB50 {
    margin-bottom: 50px;
}

@media screen and (max-width: 768px) {
    .mB50 {
        margin-bottom: 6%;
    }
}

.mB100 {
    margin-bottom: 100px;
}

@media screen and (max-width: 768px) {
    .mB100 {
        margin-bottom: 11%;
    }
}

/* ============================================================
font style
============================================================ */
.bold {
    font-weight: 700 !important;
}
/*-----------------  line-height  -----------------*/
.center {
    text-align: center;
}

@media screen and (max-width: 768px) {
    .center {
        text-align: left;
    }
}

/* ============================================================
display: none
============================================================ */
@media screen and (min-width: 769px) {
    .sponly {
        display: none;
    }
}

@media screen and (max-width: 768px) {
    .pconly {
        display: none;
    }
}
