@charset "UTF-8";
/*company-commmon
-----------------------------------------------------------*/
#company-btn-sec {
    padding: 8rem 0;
}
#company-btn-sec h2,
#company-top-sec h2 {
    font-size: 3.2rem;
    color: #b79440;
    text-align: center;
    margin-bottom: 3rem;
}
#company-btn-sec h2::before,
#company-top-sec h2::before {
    content: '';
    width: 20%;
    height: 1px;
    background: #b79440;
    display: inline-block;
    margin-right: 2rem;
    vertical-align: middle;
}
#company-btn-sec h2::after,
#company-top-sec h2::after {
    content: '';
    width: 20%;
    height: 1px;
    background: #b79440;
    display: inline-block;
    margin-left: 2rem;
    vertical-align: middle;
}
#company-btn-sec .company-btn-block {
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
#company-btn-sec .company-btn-block .btn-box {
    width: 22.022954%;
}
#company-btn-sec .company-btn-block .btn-box a {
    padding: 1.4rem 0px 2.2rem;
    height: 100%;
    width: 100%;
    display: block;
}
#company-btn-sec .company-btn-block .company-btn01 a {
    background: 
        url("../img/company/company-btn01.png") no-repeat top center;
    background-size: 100%;
}
#company-btn-sec .company-btn-block .company-btn02 a {
    background: 
        url("../img/company/company-btn02.png") no-repeat top center;
    background-size: 100%;
}
#company-btn-sec .company-btn-block .company-btn03 a {
    background: 
        url("../img/company/company-btn03.png") no-repeat top center;
    background-size: 100%;
}
#company-btn-sec .company-btn-block .company-btn04 a {
    background: 
        url("../img/company/company-btn04.png") no-repeat top center;
    background-size: 100%;
}
#company-btn-sec .company-btn-block .company-btn05 a {
    background: 
        url("../img/company/company-btn05.png") no-repeat top center;
    background-size: 100%;
}

#company-btn-sec .company-btn-block .btn-box a h3 {
    font-size: 2.0rem;
    text-align: center;
    margin-bottom: 0;
}
#company-btn-sec .company-btn-block .btn-box a h4 {
    font-size: 1.2rem;
    text-align: center;
}
@media only screen and (max-width: 767px) {
#company-btn-sec {
    padding: 4rem 0;
}
#company-btn-sec h2,
#company-top-sec h2 {
    font-size: 1.8rem;
    margin-bottom: 2rem;
}
#company-btn-sec h2::before,
#company-top-sec h2::before {
    content: '';
    width: 10%;
    height: 1px;
    background: #b79440;
    display: inline-block;
    margin-right: 1rem;
    vertical-align: middle;
}
#company-btn-sec h2::after,
#company-top-sec h2::after {
    content: '';
    width: 10%;
    height: 1px;
    background: #b79440;
    display: inline-block;
    margin-left: 1rem;
    vertical-align: middle;
}
#company-btn-sec .company-btn-block .btn-box {
    width: 100%;
    margin-bottom: 1rem;
}
#company-btn-sec .company-btn-block .btn-box a {
    padding: 3.0rem 0px 4.0rem;
}
}

/*company top
-----------------------------------------------------------*/
.company-top .catch-en-txt {
    text-align: center;
    font-size: 4.0rem;
    line-height: 1.5;
    margin-bottom: 2.5rem;    
}
.company-top .catch-txt {
    color: #b28f40;
}
#company-top-sec {
    padding: 12rem 0;
    background: #f1e8db;
}
#company-top-sec .company-top-btn {
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
#company-top-sec .company-top-btn .btn-box {
    width: 45%;
    margin-bottom: 5rem;
}
#company-top-sec .company-top-btn .btn-box a {
    display: block;
    width: 100%;
    height: 100%;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}
#company-top-sec .company-top-btn .btn-box a:hover {
    opacity: 0.7;
}
#company-top-sec .company-top-btn .btn-box figure {
    margin-bottom: 1rem;
}
#company-top-sec .company-top-btn .btn-box .btn-tit {
    margin-right: 2rem;
    font-size: 3.2rem;
    display: inline-block;
    vertical-align: text-bottom;
    color: #b28f40;
}
#company-top-sec .company-top-btn .btn-box .btn-jp {
    font-size: 1.8rem;
    display: inline-block;
    vertical-align: text-bottom;
}

@media only screen and (max-width: 767px) {
#company-top-sec {
    padding: 4rem 0;
    background: #f1e8db;
}
.company-top .catch-en-txt {
    font-size: 1.8rem;   
}
.company-top .catch-txt {
    font-size: 1.6rem !important;   
}
#company-top-sec .company-top-btn .btn-box {
    width: 100%;
    margin-bottom: 3rem;
}
#company-top-sec .company-top-btn .btn-box .btn-tit {
    font-size: 2.0rem;
}
#company-top-sec .company-top-btn .btn-box .btn-jp {
    font-size: 1.4rem;
    vertical-align: top;
}
}

/*concept
-----------------------------------------------------------*/
#concept-sec {
    padding: 12rem 0;
    background: #f1e8db;
}
#concept-sec .left-block,
#concept-sec .right-block {
    width: 50%;
    z-index: 1
}
#concept-sec .first-block {
    margin-bottom: 15rem;
}
#concept-sec .first-block,
#concept-sec .second-block {
    position: relative;
}
#concept-sec .first-block::before {
    content: '';
    background: #fff;
    height: 30rem;
    width: 150%;
    position: absolute;
    bottom: -10%;
    right: 18.518519%;
    z-index: 0;
}
#concept-sec .second-block::before {
    content: '';
    background: #fff;
    height: 30rem;
    width: 150%;
    position: absolute;
    bottom: -17%;
    left: 18.518519%;
    z-index: 0;
}
#concept-sec .second-block {
    margin-bottom: 15rem;
}
#concept-sec .left01 {
    padding-top: 10rem;
}
#concept-sec .right02 {
    padding-left: 5rem;
    padding-top: 10rem;
}
@media only screen and (max-width: 767px) {
#concept-sec {
    padding: 3rem 0;
}
#concept-sec .left-block,
#concept-sec .right-block {
    width: 100%;
}
#concept-sec .first-block {
    margin-bottom: 6rem;
}
#concept-sec .left01,
#concept-sec .right01 {
    margin-bottom: 3rem;
    padding-top: 0;
}
#concept-sec .left02 {
    padding-right: 0;
    margin-bottom: 3rem;
}
#concept-sec .right02 {
    padding-left: 0;
    padding-top: 0;
}
#concept-sec .first-block::before {
    content: '';
    background: #fff;
    height: 20rem;
    width: 150%;
    position: absolute;
    bottom: 10%;
    right: 18.518519%;
    z-index: 0;
}
#concept-sec .second-block::before {
    content: '';
    background: #fff;
    height: 20rem;
    width: 150%;
    position: absolute;
    bottom: 50%;
    left: 18.518519%;
    z-index: 0;
}
}

/*service
-----------------------------------------------------------*/
#service-sec {
    padding: 12rem 0;
    background: #f1e8db;
}
#service-sec .page-img {
    margin-bottom: 10rem;
}
#service-sec .service-block {
    background: #fff;
    text-align: center;
    position: relative;
    padding: 6rem 0 4.5rem
}
#service-sec .service-block.first-block {
    margin-bottom: 10rem;
}
#service-sec .service-block h2 {
    text-align: center;
    position: absolute;
    top: -5.5rem;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    width: 100%;
}
#service-sec .service-block .service-tit {
    color: #b79440;
    font-size: 2.4rem;
}
#service-sec .service-block .txt-box {
    margin-bottom: 3rem;
}
#service-sec .service-block .txt-box.last-box {
    margin-bottom: 0;
}
#service-sec .service-block .txt-box  .program-tit{
    color: #b79440;
    font-size: 1.8rem;
    margin-bottom: 1rem;
}
#service-sec .service-block .txt-box {
    margin-bottom: 3rem;
}
@media only screen and (max-width: 767px) {
#service-sec {
    padding: 3rem 0;
}
#service-sec .left-block,
#service-sec .right-block {
    width: 100%;
}
#service-sec .first-block {
    margin-bottom: 0;
}
#service-sec .service-block h2 {
    text-align: center;
    position: absolute;
    top: -1.8rem;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    width: 100%;
    font-size: 1.8rem;
}
#service-sec .service-block {
    padding: 1.5rem 2rem 2rem;
}
#service-sec .service-block .service-tit {
    font-size: 1.8rem;
}
#service-sec .service-block .txt-box .program-tit {
    line-height: 1.75;
    font-size: 1.4rem;
}
#service-sec .service-block .txt-box h4,
#service-sec .service-block .txt-box p {
    text-align: left !important;
}
}

/*profile
-----------------------------------------------------------*/
#profile-sec {
    padding: 12rem 0;
    background: #eee5d8;
}
#profile-sec .left-block,
#profile-sec .right-block {
    width: 50%;
    z-index: 1
}
#profile-sec .first-block {
    margin-bottom: 15rem;
}
#profile-sec .first-block,
#profile-sec .second-block,
#profile-sec .third-block {
    position: relative;
}
#profile-sec .first-block::before {
    content: '';
    background: #fff;
    height: 41rem;
    width: 150%;
    position: absolute;
    bottom: -10%;
    right: 18.518519%;
    z-index: 0;
}
#profile-sec .second-block::before {
    content: '';
    background: #fff;
    height: 36rem;
    width: 150%;
    position: absolute;
    bottom: -17%;
    left: 18.518519%;
    z-index: 0;
}
#profile-sec .third-block::before {
    content: '';
    background: #fff;
    height: 30.5rem;
    width: 150%;
    position: absolute;
    bottom: -10%;
    right: 18.518519%;
    z-index: 0;
}
#profile-sec .second-block {
    margin-bottom: 15rem;
}
#profile-sec .third-block {
    margin-bottom: 15rem;
}
#profile-sec .left01 {
    padding-top: 10rem;
    padding-right: 5rem;
}
#profile-sec .right02 {
    padding-left: 5rem;
    padding-top: 10rem;
}
#profile-sec .left03 {
    padding-top: 10rem;
    padding-right: 5rem;
}
#profile-sec .bottom-block {
    padding: 5rem;
    background: rgba(255,255,255,0.5);
    text-align: center;
}
#profile-sec .bottom-block .bottom-txt {
    text-align: left;
    display: inline-block;
}
@media only screen and (max-width: 767px) {
#profile-sec {
    padding: 3rem 0;
}
#profile-sec .left-block,
#profile-sec .right-block {
    width: 100%;
}
#profile-sec .first-block {
    margin-bottom: 6rem;
}
#profile-sec .left01 {
    padding-top: 0rem;
    padding-right: 0rem;
}
#profile-sec .right02 {
    padding-left: 0rem;
    padding-top: 0rem;
}
#profile-sec .left01,
#profile-sec .right01 {
    margin-bottom: 3rem;
}
#profile-sec .left02 {
    padding-right: 0;
    margin-bottom: 3rem;
}
#profile-sec .right02 {
    padding-left: 0;
}
#profile-sec .first-block::before {
    content: '';
    background: #fff;
    height: 20rem;
    width: 150%;
    position: absolute;
    bottom: 10%;
    right: 18.518519%;
    z-index: 0;
}
#profile-sec .second-block {
    margin-bottom: 6rem;
}
#profile-sec .second-block::before {
    content: '';
    background: #fff;
    height: 20rem;
    width: 150%;
    position: absolute;
    bottom: 50%;
    left: 18.518519%;
    z-index: 0;
}
#profile-sec .third-block {
    margin-bottom: 6rem;
}
#profile-sec .third-block::before {
    content: '';
    background: #fff;
    height: 20rem;
    width: 150%;
    position: absolute;
    bottom: 10%;
    right: 18.518519%;
    z-index: 0;
}
#profile-sec .bottom-block {
    padding: 2rem;
}
}

/*company profile
-----------------------------------------------------------*/
#company-sec {
    padding: 12rem 0;
    background: #f1e8db;
}
#company-sec .page-img {
    margin-bottom: 10rem;
}
#company-sec .company-block ul  {
    padding-top: 3rem;
    border-top: 1px solid #b28f40;
}
#company-sec .company-block ul li {
    display: block;
    padding-bottom: 3rem;
    margin-bottom: 3rem;
    border-bottom: 1px solid #b28f40;
}
#company-sec .company-block ul li .tit {
    display: inline-block;
    width: 20%;
    text-align: center;
    vertical-align: top;
    font-size: 1.8rem;
    line-height: 1.75;
}
#company-sec .company-block ul li .txt {
    display: inline-block;
    width: 80%;
    text-align: left;
    vertical-align: top;
    font-size: 1.8rem;
    line-height: 1.75;
    padding-left: 1rem;
}
@media only screen and (max-width: 767px) {
#company-sec {
    padding: 3rem 0;
}
#company-sec .left-block,
#company-sec .right-block {
    width: 100%;
}
#company-sec .page-img {
    margin-bottom: 4rem;
}
#company-sec .company-block ul  {
    padding-top: 1.5rem;
}
#company-sec .company-block ul li {
    display: block;
    padding-bottom: 1.5rem;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid #b28f40;
}
#company-sec .company-block ul li .tit {
    display: inline-block;
    width: 100%;
    text-align: left;
    vertical-align: top;
    font-size: 1.2rem;
    line-height: 1.75;
    color: #b79440;
    margin-bottom: 1rem;
    padding-left: 1rem;
}
#company-sec .company-block ul li .txt {
    display: inline-block;
    width: 100%;
    text-align: left;
    vertical-align: top;
    font-size: 1.2rem;
    line-height: 1.75;
    padding-left: 1rem;
}
}