@charset "UTF-8";

h1.main-title {background-image: url(../images/company/h1.jpg);background-repeat: no-repeat;background-position: center 0; }

.other-service{
    display: none;
}


@media screen and (min-width: 768px), print {
h1.main-title .jp {color: #fff;font-size: 38px;}
.seo_bread_list,.seo_bread_list a {margin-bottom: 20px;font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic","游ゴシック体", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Verdana, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;font-size: 12px;color: #5B5B5B;margin-top: 15px;}
.f-gothic {color: #2a2a2a;font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic","游ゴシック体", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Verdana, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;font-size: 16px;letter-spacing: 0.05em;}
#philosophy h2,#slogan h2,#culture h2 {font-weight: bold;font-size: 42px;letter-spacing: 0.1em;line-height: 30px;text-align: center;color: #2a2a2a;}
/*philosophy-----*/
#philosophy {background-color: #FDFCFB;padding: 95px 15px 120px;}
#philosophy h2 {margin-bottom: 50px;}
#philosophy .ph-catch {font-weight: bold;font-size: 50px;letter-spacing: 0.05em;line-height: 1.4;text-align: center;color: #1D72CC;}
#philosophy .ph-sub {font-weight: bold;font-size: 30px;letter-spacing: 0.05em;line-height: 1.6;text-align: center;color: #000;margin: 8px auto 25px;}
#philosophy .ph-txt {width: 1000px;margin: 0 auto;color: #000;line-height: 30px;}
#philosophy .ph-box {width: 1000px;margin: 40px auto 0;padding: 48px 15px 45px;background-color: #fff;border: 3px solid #ECE8DF;}
#philosophy .ph-box dt {font-weight: bold;font-size: 26px;letter-spacing: 0.05em;line-height: 1;text-align: center;color: #000;}
#philosophy .ph-box dd {font-size: 16px;letter-spacing: 0.05em;line-height: 1;text-align: center;color: #000;margin: 13px 0 27px;}
#philosophy .ph-close {font-weight: bold;font-size: 16px;letter-spacing: 0.05em;line-height: 1;text-align: center;color: #000;margin-top: 38px;}
#philosophy .ph-img {width: 750px;margin: 40px auto 0;font-size: 0;}
#philosophy .ph-img img {width: 100%;height: auto;}
/*slogan-----*/
#slogan {background-color: #F9F8F4;padding: 100px 15px;}
#slogan h2 {margin-bottom: 50px;}
#slogan .sl-catch {font-weight: bold;font-size: 50px;letter-spacing: 0.05em;line-height: 1.4;text-align: center;color: #1D72CC;}
#slogan .sl-lead {font-size: 30px;font-weight: bold;letter-spacing: 0.05em;line-height: 1;text-align: center;color: #000;margin: 30px auto 26px;}
#slogan .sl-lead span {display: inline-block;padding-bottom: 8px;border-bottom: 2px solid #F14C04;}
#slogan .sl-list {display: flex;justify-content: center;}
#slogan .sl-list li {width: 230px;margin-right: 10px;}
#slogan .sl-list li:last-child {margin-right: 0;}
#slogan .sl-list img {width: 100%;height: auto;vertical-align: bottom;}
#slogan .sl-txt1 {font-weight: bold;font-size: 20px;letter-spacing: 0.05em;line-height: 1.6;width: 1000px;margin: 40px auto 0;color: #000;}
#slogan .sl-txt2 {font-weight: bold;font-size: 16px;letter-spacing: 0.05em;line-height: 30px;width: 1000px;margin: 18px auto 0;color: #000;text-align: center;}
/*culture-----*/
#culture {background-color: #FDFCFB;padding: 95px 15px 120px;}
#culture h2 {margin-bottom: 52px;}
#culture .cul-box {width: 1200px;margin: 0 auto;padding: 78px 150px 88px 190px;background-color: #fff;border: 3px solid #ECE8DF;}
#culture .cul-box li {position: relative;padding-left: 50px;margin-bottom: 42px;}
#culture .cul-box li:last-child {margin-bottom: 0;}
#culture .cul-box .num {position: absolute;top: 0;left: 0;display: flex;align-items: center;justify-content: center;width: 30px;height: 30px;border-radius: 50%;background-color: #F14C04;color: #fff;font-size: 20px;font-weight: bold;}
#culture .cul-ttl {font-weight: bold;font-size: 30px;letter-spacing: 0.05em;line-height: 1.2;color: #000;}
#culture .cul-sub {font-weight: bold;font-size: 20px;letter-spacing: 0.05em;line-height: 1.5;color: #000;margin: 8px 0 10px;}
#culture .cul-txt {color: #000;line-height: 30px;}
/*rinen（会社概要の body#company と同じ指定）-----*/
#rinen {padding-bottom: 80px;}
#rinen h2 {margin: 90px auto 70px;}



/*access-----*/





/*bnr-----*/
#bnr {background-color: #F2EEC9;    padding-bottom: 210px;}
#bnr .inner-box {max-width: 1280px;width: 100%;margin: 107px auto 65px;}
#bnr .title { text-align: center; line-height: 4.5em; margin-bottom: 75px; }
#bnr .service-list {display: flex;flex-wrap: wrap;justify-content: flex-start;align-items: stretch;max-width: 1230px;margin: auto;}

#bnr .service-list li:nth-child(n + 5) .service-text{
margin-top: 16px;
}


#bnr .service-bnr {width: calc(100% / 4 - 30px);margin-right: 40px;text-align: center;max-width: 280px;height: 418px;margin-bottom: 57px;z-index: 0;}
#bnr .service-bnr:nth-child(4n) { margin-right: 0; }
#bnr .service-bnr.bnr-long {width: calc(100% / 2 - 23px);max-width: none;height: 290px;margin-right: 46px;}
#bnr .service-bnr.bnr-long:nth-child(2n) { margin-right: 0; }
#bnr .service-link {display: block;background-color: #fff;border-radius: 30px;padding: 260px 0 0;background-size: 100% auto;background-repeat: no-repeat;background-position: top center;position: relative;height: 100%;font-weight: 500;}
#bnr .service-bnr.service01 .service-link {background-image: url(../images/company/photo-service01.png);border: 6px solid #fff;}
#bnr .service-bnr.service02 .service-link {background-image: url(../images/company/photo-service02.png);border: 6px solid #fff;}
#bnr .service-bnr.service03 .service-link { background-image: url(../images/company/photo-service03.png);border: 6px solid #fff; }
#bnr .service-bnr.service04 .service-link { background-image: url(../images/company/photo-service04.png);border: 6px solid #fff; }


#bnr .service-list{
    display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;-webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap
    -webkit-box-pack: center; -ms-flex-pack: center; -webkit-justify-content: center; justify-content: center;-webkit-box-align: center; -ms-flex-align: center; -webkit-align-items: center; align-items: center;
}

#bnr .service-text {background-color: #fff;margin-top: 10px;width: 100%;letter-spacing: 0px;line-height: 1.6em;}
#bnr .bnr-title {position: absolute;bottom: 142px;width: 100%;text-align: center;margin: 0;}
#bnr .service-bnr .service-link:hover {text-decoration: none;opacity: 0.8;}
#bnr .service-link::before {content: "";position: absolute;bottom: 5px;width: 29px;height: 29px;right: 12px;left: 0;display: block;background-image: url(../images/company/ico-arrowblack.png);background-repeat: no-repeat;background-position: center;background-size: contain;margin: 0 0 0 auto;z-index: 1;}
#bnr .bnr-long .bnr-title {position: relative;bottom: 0;display: flex;align-items: center;justify-content: center;height: 195px;top: 10px;border-top-right-radius: 30px;margin: 0;}
#bnr .bnr-long .service-link::after {content: "";position: absolute;bottom: 0;left: 0;width: 100%;height: 100%;box-sizing: border-box;border: 8px solid #fff;border-radius: 30px;}
#bnr .bnr-long .service-link::before {bottom: 30px;right: 40px;}
#bnr .bnr-long .service-link { padding: 0;display: flex; flex-wrap: wrap; justify-content: center;}
#bnr .bnr-long .service-text {margin-bottom: 0;margin-top: 0;display: flex;align-items: center;justify-content: center;position: relative;padding: 11px 20px 20px;border-radius: 0 0 30px 30px;}
#bnr .ico-img { position: absolute; bottom: calc(100% - 65px); left: 0; right: 0; margin: auto;}
#bnr .bnr-long .ico-img {z-index: 1;left: auto;right: calc(100% - 77px);bottom: calc(100% - 73px);}
#bnr .bnr-change {text-align: center;position: relative;left: 10px;width: calc(100% - 20px);margin: auto;}
#bnr .reason {background-image: url(../images/company/reason-bnr.png);background-repeat: no-repeat;background-size: contain;width: 1000px;height: 367px;margin: 70px auto 140px;cursor: pointer;display: inline-block;}
#bnr .reason:hover {text-decoration: none;opacity: 0.8;}
#bnr .reason-box {text-align: center;}
#bnr .reason p.txt {font-weight: 500;font-size: 30px;letter-spacing: 0.1em;line-height: 45px;text-align: left;color: #2a2a2a;text-shadow: 0px 0px 40px #fff;position: relative;top: 150px;left: 150px;width: 50%;}
#bnr p.rea-txt {font-weight: bold;font-size: 26px;letter-spacing: 0.1em;line-height: 30px;text-align: left;color: #fff;position: relative;top: 214px;left: 41.6%;width: 50%;}
#bnr .item {width: 560px;margin: 15px 15px 15px 60px;}
#bnr .faq-bnr .bnr {display: block;background-color: #fff;padding: 72px 50px 78px 47%;border-radius: 30px;box-sizing: border-box;background-image: url(../images/company/bnr-qa.png),url(../images/company/ico-arrowblack.png);background-repeat: no-repeat;background-size: 41% auto , auto;background-position: left center ,97% 91%;position: relative;}
#bnr .faq-bnr .bnr::before {content: "";position: absolute;left: 0;top: 0;width: 100%;height: 100%;border: 10px solid #fff;border-radius: 30px;box-sizing: border-box;}
#bnr .faq-bnr .bnr::after {content: "";position: absolute;width: 100%;height: 100%;top: 0;left: 0;border-radius: 30px;}
#bnr .faq-bnr .bnr:hover {opacity: 0.8;}
#bnr .faq-title {width: 50%;}
#bnr .flex {margin: 90px auto 0;display: flex;justify-content: center;align-items: center;}
#bnr .change img {max-width: 607px;margin-left: -26px;}
#bnr .item.change-bnr {margin: 5px 0 20px 20px;}
}

@media screen and (max-width: 767px) {
h1.main-title .jp {color: #fff;font-size: 6vw;}
.seo_bread_list,.seo_bread_list a {margin-bottom: 0;font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic","游ゴシック体", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Verdana, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;font-size: 4vw;color: #5B5B5B;margin-top: 3%;}
.f-gothic {color: #2a2a2a;font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic","游ゴシック体", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Verdana, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;font-size: 4vw;line-height: 8vw;letter-spacing: 0.05em;}

#philosophy h2,#slogan h2,#culture h2 {font-weight: bold;font-size: 7vw;letter-spacing: 0.1em;line-height: 1.6;text-align: center;color: #2a2a2a;}
/*philosophy-----*/
#philosophy {background-color: #FDFCFB;padding: 12vw 5.3% 12vw;margin-bottom: 9.5vw;}
#philosophy h2 {margin-bottom: 7vw;}
#philosophy .ph-catch {font-weight: bold;font-size: 6.2vw;letter-spacing: 0;line-height: 1.4;text-align: center;color: #1D72CC;}
#philosophy .ph-sub {font-weight: bold;font-size: 4.8vw;letter-spacing: 0.05em;line-height: 1.5;text-align: center;color: #000;margin: 2vw auto 5vw;}
#philosophy .ph-txt {color: #000;font-size: 3.9vw;line-height: 1.75;}
#philosophy .ph-box {margin: 6vw auto 0;padding: 9vw 3vw 8vw;background-color: #fff;border: 3px solid #ECE8DF;}
#philosophy .ph-box dt {font-weight: bold;font-size: 4.8vw;letter-spacing: 0.05em;line-height: 1;text-align: center;color: #000;}
#philosophy .ph-box dd {font-size: 3.9vw;letter-spacing: 0.05em;line-height: 1;text-align: center;color: #000;margin: 3vw 0 7vw;}
#philosophy .ph-close {font-weight: bold;font-size: 3.9vw;letter-spacing: 0.05em;line-height: 1.6;text-align: center;color: #000;margin-top: 7vw;}
#philosophy .ph-img {width: 100%;margin: 8vw auto 0;font-size: 0;}
#philosophy .ph-img img {width: 100%;height: auto;}
/*slogan-----*/
#slogan {background-color: #F9F8F4;padding: 0vw 5.3% 14vw;}
#slogan h2 {margin-bottom: 7vw;}
#slogan .sl-catch {font-weight: bold;font-size: 6.2vw;letter-spacing: 0;line-height: 1.4;text-align: center;color: #1D72CC;}
#slogan .sl-lead {font-weight: bold;font-size: 4.8vw;letter-spacing: 0.05em;line-height: 1;text-align: center;color: #000;margin: 5vw auto 6vw;}
#slogan .sl-lead span {display: inline-block;padding-bottom: 1.5vw;border-bottom: 2px solid #F14C04;}
#slogan .sl-list {display: flex;flex-wrap: wrap;margin: 0 -2.4vw;}
#slogan .sl-list li {width: calc(50% - 1.2vw);margin-bottom: 2.4vw;}
#slogan .sl-list li:nth-child(odd) {margin-right: 2.4vw;}
#slogan .sl-list img {width: 100%;height: auto;vertical-align: bottom;}
#slogan .sl-txt1 {font-weight: bold;font-size: 4.8vw;letter-spacing: 0;line-height: 1.6;text-align: center;margin: 6vw auto 0;color: #000;}
#slogan .sl-txt2 {font-weight: bold;font-size: 3.9vw;letter-spacing: 0.05em;line-height: 1.7;margin: 4vw auto 0;color: #000;}
/*culture-----*/
#culture {background-color: #FDFCFB;padding: 12vw 5.3% 9.5vw;}
#culture h2 {margin-bottom: 7vw;}
#culture .cul-box {padding: 12vw 5vw;background-color: #fff;border: 3px solid #ECE8DF;}
#culture .cul-box li {position: relative;padding-left: 8vw;margin-bottom: 11vw;}
#culture .cul-box li:last-child {margin-bottom: 0;}
#culture .cul-box .num {position: absolute;top: 0;left: 0;display: flex;align-items: center;justify-content: center;width: 6.3vw;height: 6.3vw;border-radius: 50%;background-color: #F14C04;color: #fff;font-size: 3.9vw;font-weight: bold;}
#culture .cul-ttl {font-weight: bold;font-size: 4.8vw;letter-spacing: 0.05em;line-height: 1.4;color: #000;}
#culture .cul-sub {font-weight: bold;font-size: 3.9vw;letter-spacing: 0.05em;line-height: 1.6;color: #000;margin: 1.5vw 0 2vw;}
#culture .cul-txt {font-size: 3.9vw;letter-spacing: 0.05em;line-height: 1.7;color: #000;}
/*rinen（会社概要の body#company と同じ指定）-----*/
#rinen {padding-bottom: 13%;}
#rinen h2 {margin: 10% 0;}
/*access-----*/
/*bnr-----*/
#bnr {background-color: #F2EEC9;padding: 0 5% 13%;}
#bnr .inner-box {width: 100%;margin: 15vw auto 0;}
#bnr .title {text-align: center;line-height: 2em;margin-bottom: 12vw;padding: 0 7vw;}
#bnr .title .title-img {margin-bottom: 3vw;display: block;}
#bnr .title .title-img:first-child {padding: 0 5vw 1vw;}
#bnr .service-list {display: flex;flex-wrap: wrap;justify-content: space-around;align-items: stretch;margin: auto;width: 100%;}
#bnr .service-bnr {width: calc(100% / 2 - 3vw);text-align: center;margin: 0 auto 6vw;font-size: 3vw;}
#bnr .service-bnr.bnr-long {width: calc(100% - 3vw);max-width: none;margin: 7vw auto 5vw;}
#bnr .service-link {display: block;background-color: #fff;border-radius: 5vw;padding: 40vw 0vw 10vw;background-size: 100% auto;background-repeat: no-repeat;background-position: top center;position: relative;height: 100%;box-shadow: 0 0 3vw rgba(97,89,20,0.15);font-weight: 500;}
#bnr .service01 .bnr-title, #bnr .service03 .bnr-title {top: 28.5vw;width: calc(100% - 8vw);}
#bnr .bnr-long.service05 .bnr-title {padding: 0 23vw;}
#bnr .service-bnr.service01 .service-link { background-image: url(../images/index/photo-service01.png); }
#bnr .service-bnr.service02 .service-link {background-image: url(../images/index/photo-service02.png);}
#bnr .service-bnr.service03 .service-link { background-image: url(../images/index/photo-service03.png); }
#bnr .service-bnr.service04 .service-link { background-image: url(../images/index/photo-service04.png); }


#bnr .service-text {background-color: #fff;width: 100%;line-height: 1.6em;padding: 4vw 5vw 0;text-align: left;}
#bnr .bnr-title {position: absolute;top: 30vw;width: calc(100% - 15vw);text-align: center;left: 0;margin: auto;right: 0;}
#bnr .service-bnr .service-link:hover {text-decoration: none;opacity: 0.8;}
#bnr .service-link::before {content: "";position: absolute;bottom: 3vw;width: 5vw;height: 5vw;right: 3vw;left: 0;display: block;background-image: url(../images/company/sp-ico-arrow-black.png);background-repeat: no-repeat;background-position: center;background-size: 5vw;margin: 0 0 0 auto;z-index: 1;}
#bnr .bnr-long .bnr-title {position: relative;bottom: 0;display: flex;align-items: center;justify-content: center;height: 38vw;padding: 0 21vw;top: 1vw;width: 100%;box-sizing: border-box;border-radius: 3vw;background-repeat: no-repeat;background-size: 100%;}
#bnr .bnr-long .service-link::after {content: "";position: absolute;bottom: 0;left: 0;width: 100%;height: 100%;box-sizing: border-box;border: 1.3vw solid #fff;border-radius: 5vw;}
#bnr .bnr-long .service-link::before {bottom: 4.5vw;right: 2vw;}
#bnr .bnr-long .service-link { padding: 0;display: flex; flex-wrap: wrap; justify-content: center;}
#bnr .bnr-long .service-text {margin-bottom: 0;margin-top: 0;display: flex;align-items: center;justify-content: center;position: relative;padding: 2vw 5vw;border-radius: 0 0 30vw 30vw;text-align: center;}
#bnr .ico-img {position: absolute;bottom: calc(100% - 10vw);left: 0;right: 0;margin: auto;width: 29%;}
#bnr .bnr-long .ico-img {z-index: 1;left: auto;right: calc(100% - 13vw);bottom: calc(100% - 10vw);width: 15vw;}
#bnr .bnr-change {text-align: center;position: relative;left: 0;width: calc(100% - 5vw);margin: auto;}
#bnr .reason {background-image: url(../images/company/sp-reason-bnr.png);background-repeat: no-repeat;background-size: contain;width: 97%;height: 64vw;margin: 12% auto 10%;cursor: pointer;display: inline-block;}
#bnr .reason:hover {text-decoration: none;opacity: 0.8;}
#bnr .reason-box {text-align: center;}
#bnr .reason p.txt {font-weight: 500;letter-spacing: 0.1em;text-align: left;color: #2a2a2a;position: relative;width: 50%;}
#bnr p.rea-txt {font-weight: bold;letter-spacing: 0.1em;text-align: left;color: #fff;position: relative;left: 41.6%;width: 50%;}
#bnr .item {width: 100%;margin: 0;}
#bnr .bnr {display: block;background-color: #fff;padding: 9vw 14vw 12vw 42vw;border-radius: 5vw;box-sizing: border-box;background-image: url(../images/company/bnr-qa.png),url(../images/company/sp-ico-arrow-black.png);background-repeat: no-repeat;background-size: 41% auto , 5%;background-position: left center ,94% 88%;position: relative;}
#bnr .bnr::before {content: "";position: absolute;left: 0;top: 0;width: 100%;height: 100%;border: 2vw solid #fff;border-radius: 4vw;box-sizing: border-box;}
#bnr .bnr::after {content: "";position: absolute;width: 100%;height: 100%;top: 0;left: 0;box-shadow: 0 0vw 5vw 0.5vw rgba(233,226,165,0.5);border-radius: 4vw;}
#bnr .bnr:hover {opacity: 0.5;}
#bnr .faq-title {width: 100%;}
#bnr .flex {margin: 5% auto 0;display: block;justify-content: center;align-items: center;}
#bnr .change img {max-width: 100%;}
#bnr .item.change-bnr {margin-bottom: 13%;}




#service .service-bnr.bnr-long2 {
    width: calc(100% - 3vw);
    max-width: none;
    margin: 7vw auto 5vw;
}



#service .bnr-long2 .service-link::after {content: "";position: absolute;bottom: 0;left: 0;width: 100%;height: 100%;box-sizing: border-box;border: 1.3vw solid #fff;border-radius: 5vw;}
#service .bnr-long2 .service-link::before {bottom: 4.5vw;right: 2vw;}
#service .bnr-long2 .service-link { padding: 0;display: flex; flex-wrap: wrap; justify-content: center;}

#service .bnr-long2 .service-text {margin-bottom: 0;margin-top: 0;display: flex;align-items: center;justify-content: center;
    position: relative;padding: 5vw 21vw;border-radius: 0 0 3vw 3vw;text-align: center;}

#service .ico-img {position: absolute;bottom: calc(100% - 10vw);left: 0;right: 0;margin: auto;width: 29%;}
#service .bnr-long2 .ico-img {z-index: 1;left: auto;right: calc(100% - 13vw);bottom: calc(100% - 10vw);width: 15vw;}

#service .service-bnr.service02 .bnr-title {width: 30vw !important; }
#service .service-bnr.service03 .bnr-title {width: 30vw !important; }
#service .service-bnr.service05 .bnr-title {width: 26vw !important; }

#service .bnr-title {
    margin: auto;
    width: 35vw !important;
    top: -9vw !important;
    margin-bottom: -10vw;
    position: relative;
}

#service .bnr-long2 .bnr-title {
    position: relative !important; 
    bottom: 0 !important; 
    display: flex;
    align-items: center;
    justify-content: center;
    height: 38vw !important; 
    padding: 0 26vw !important; top: 18vw !important; 
    width: 100%!important; 
    margin-bottom: 1vw !important; 
    box-sizing: border-box;border-radius: 3vw;background-repeat: no-repeat;background-size: 100%; z-index: 10;}

    #service .service-bnr.service07 .service-link {
        background-image: url(../images/index/sp-photo-service07.png);
    }

}
