@charset "utf-8";

/* ==================================================
Common CSS
================================================== */

@media(min-width:1000px){

/*-----STYLE-----*/
.sp {
    display:none;
}

.wrap {
    padding-top:90px;
}

.cts {
    width:1000px;
}

.titles {
}

.titles .title {
    display:inline-block;
}

.titles .title p {
    font-size:135%;
    font-weight:600;
    line-height:135%;
}

.titles .title p:first-letter {
    color:#55b4e6;
}

.titles .title .line {
    display:block;
    height:4px;
    background:#55b4e6;
}

.more_btn {
    text-align:center;
}

.more_btn .btn {
    display:inline-block;
}

.more_btn .btn a {
    display:flex;
    justify-content:space-between;
    align-items:center;
    position:relative;
    background:#55b4e6;
    border-radius:5px;
    padding:10px 20px;
}

.more_btn .btn .arrow {
    content:"";
    width:20px;
    height:3px;
    background:#fff;
    display:block;
    position:absolute;
    right:20px;
    display:flex;
    align-items:center;
    animation:arrow 0.6s infinite alternate;
}

.more_btn .btn .arrow:after {
    content:"";
    width:14px;
    height:14px;
    border-top:#fff 3px solid;
    border-right:#fff 3px solid;
    transform:rotate(45deg);
    position:absolute;
    right:0;
}

.more_btn .btn a p {
    font-weight:600;
    color:#fff;
    margin-right:30px;
}

.back_btn {
    text-align:center;
    margin-top:70px;
}

.back_btn .btn {
    display:inline-block;
}

.back_btn .btn a {
    display:flex;
    justify-content:space-between;
    align-items:center;
    position:relative;
    border:#55b4e6 1px solid;
    border-radius:5px;
    padding:10px 30px;
}

.back_btn .btn a p {
    font-weight:600;
    color:#55b4e6;
    margin-left:30px;
}

.back_btn .btn .arrow {
    content:"";
    width:20px;
    height:3px;
    background:#55b4e6;
    display:block;
    position:absolute;
    left:20px;
    display:flex;
    align-items:center;
    animation:arrow 0.6s infinite alternate;
}

.back_btn .btn .arrow:after {
    content:"";
    width:14px;
    height:14px;
    border-top:#55b4e6 3px solid;
    border-right:#55b4e6 3px solid;
    transform:rotate(-135deg);
    position:absolute;
    left:0;
}





/*-----HEADER-----*/
header {
    width:100%;
    height:90px;
    background:rgba(255,255,255,0.95);
    display:flex;
    justify-content:space-between;
    align-items:center;
    position:fixed;
    top:0;
    left:0;
    z-index:9999;
}

header .logo {
    width:300px;
    margin-left:20px;
}

header .logo p {
    font-size:150%;
    font-weight:bold;
    line-height:100%;
}

header h1 {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
}





/*-----MV-----*/
#mv {
    width:100vw;
    overflow:hidden;
    position:relative;
}

#mv .movie {
    display:flex;
    justify-content:center;
    align-items:center;
    position:relative;
}

#mv video{
    width:100%;
    height:auto;
    vertical-align:bottom;
}

#mv .movie .sample {
    font-size:80%;
    line-height:100%;
    padding:5px 5px;
    border:#fff 1px solid;
    color:#fff;
    position:absolute;
}

#mv .sound {
    width:30px;
    position:absolute;
    right:15px;
    bottom:15px;
    z-index:1000;
    cursor:pointer;
}

.more_text {
}

.more_text .btn {
    display:inline-block;
}

.more_text .btn a {
    display:flex;
}

.more_text .btn p {
    font-weight:600;
}

.more_text .btn .arrow {
    width:30px;
    margin:0 0 10px 5px;
    animation:arrow 0.6s infinite alternate;
}





/*-----TOP TOPICS-----*/
#top_topics {
    padding:100px 0 100px;
    background:#eef7fc;
    position:relative;
}

#top_topics .deco {
    width:400px;
    position:absolute;
    left:20px;
    bottom:20px;
    display:none;
}

#top_topics .details {
    display:flex;
    justify-content:space-between;
}

#top_topics .details .titles {
    width:230px;
}

#top_topics .details .detail {
    width:770px;
    border-left:#d2d2d2 1px solid;
    padding-left:70px;
}

#top_topics .details .detail .topics {
    margin-bottom:15px;
}

#top_topics .details .detail .topics .topic {
    border-bottom:#d2d2d2 1px solid;
    padding-bottom:18px;
    margin-bottom:18px;
}

#top_topics .details .detail .topics .topic:last-child {
    margin-bottom:0;
}

#top_topics .details .detail .topics .topic .date_cate {
    display:flex;
    align-items:center;
    margin-bottom:2px;
}

#top_topics .details .detail .topics .topic .date_cate .date {
    margin-right:12px;
}

#top_topics .details .detail .topics .topic .date_cate .cate {
    font-size:80%;
    line-height:100%;
    color:#fff;
}

#top_topics .details .detail .topics .topic .date_cate .cate a {
    color:#fff;
    display:block;
    background:#55b4e6;
    padding:2px 5px 1px;
}

#top_topics .details .detail .topics .topic .subject {

}

#top_topics .details .detail .more_text {
    text-align:right;
}





/*-----TOP SERVICE-----*/
#top_service {
    padding:100px 0;
    position:relative;
}

#top_service .deco {
    position:absolute;
    top:30px;
    left:0;
    right:0;
    margin:auto;
    width:500px;
    z-index:-1;
    display:none;
}

#top_service .cts {
    width:calc(100% - 100px);
    max-width:1200px;
}

#top_service .copy {
    text-align:center;
    margin-bottom:30px;
}

#top_service .services {
    display:flex;
    flex-wrap:wrap;
}

#top_service .services .service {
    width:15%;
    height:auto;
    margin:0 2% 2% 0;
    overflow:hidden;
}

#top_service .services .service:nth-child(6n) {
    margin-right:0;
}

#top_service .services .service a {
    position:relative;
}

#top_service .services .service a .photo {
    width:100%;
    height:100%;
    position:relative;
    display:flex;
    justify-content:center;
    align-items:center;
    overflow:hidden;
}

#top_service .services .service a .photo img {
    width:100%;
    height:100%;
    object-fit:cover;
    transform:scale(1);
    transition:transform 0.5s cubic-bezier(.22,.61,.36,1);
}

#top_service .services .service a:hover img {
    transform:scale(1.2);
}

#top_service .services .service a:hover {
    animation:none;
}

#top_service .services .service a .photo:hover {
}

#top_service .services .service a .subject {
    width:100%;
    background:rgba(85,180,230,0.9);
    padding:12px 12px 10px;
    position:absolute;
    left:0;
    bottom:0;
}

#top_service .services .service a .subject p {
    font-size:80%;
    font-weight:600;
    color:#fff;
}

#top_service .more_text {
    text-align:right;
}





/*-----TOP COMPANY-----*/
#top_company {
    padding:0 0 100px;
    position:relative;
}

#top_company .cts {
    width:calc(100% - 100px);
    max-width:1400px;
}

#top_company .details {
    display:flex;
    align-items:flex-end;
    position:relative;
}

#top_company .details .photo {
    width:50%;
    height:500px;
    background:url(../img/company.jpg) center / cover;
}

#top_company .details .detail {
    width:500px;
    padding-left:50px;
}

#top_company .details .detail .deco {
    width:600px;
    position:absolute;
    top:0;
    right:0;
}

#top_company .details .detail .item {
    font-size:180%;
    font-weight:600;
    line-height:150%;
    margin-bottom:20px;
}

#top_company .details .detail .item:first-letter {
    color:#55b4e6;
}

#top_company .details .detail .tx {
    margin-bottom:30px;
}





/*-----TOP CASE-----*/
#top_case {
    background:#eef7fc;
    padding:100px 0;
}

#top_case .cts {
    width:100%;
}

#top_case .copy {
    text-align:center;
    margin-bottom:30px;
}

#top_case .cases {
    width:100%;
    margin-bottom:30px;
}

#top_case .cases .case {
    height:350px;
    background:#fff;
    position:relative;
    box-shadow:0 0 10px rgba(0,0,0,0.1);
}

#top_case .cases .case a {
    padding:15px;
    display:block;
}

#top_case .cases .case .photo {
    width:100%;
    height:180px;
    margin-bottom:15px;
}

#top_case .cases .case .photo img {
    width:100%;
    height:100%;
    object-fit:cover;
}

#top_case .cases .case .info {
    padding:0 10px 25px;
}

#top_case .cases .case .info .cate {
    font-size:70%;
    line-height:100%;
    background:#55b4e6;
    color:#fff;
    display:inline-block;
    padding:4px;
    margin-bottom:4px;
}

#top_case .cases .case .info .subject {
    font-weight:600;
}

#top_case .cases .case .info .customer {
    font-size:80%;
    color:#969696;
}

#top_case .cases .case .info .date {
    position:absolute;
    bottom:10px;
    right:15px;
    font-size:80%;
    color:#969696;
}

#top_case .more_btn .btn a {
}





/*-----TOP RECRUIT-----*/
#top_recruit {
    padding:100px 0 0;
}

#top_recruit .cts {
    width:100%;
    max-width:1200px;
    position:relative;
}

#top_recruit .details {
    display:flex;
    justify-content:space-between;
    flex-direction:row-reverse;
    align-items:flex-end;
    position:relative;
}

#top_recruit .details .detail {
    width:45%;
    padding-right:50px;
}

#top_recruit .details .detail .deco {
    width:calc(45% - 50px);
    position:absolute;
    top:0;
    left:0;
}

#top_recruit .details .detail .item {
    font-size:180%;
    font-weight:600;
    line-height:150%;
    margin-bottom:20px;
}

#top_recruit .details .detail .item:first-letter {
    color:#55b4e6;
}

#top_recruit .details .detail .tx {
    margin-bottom:30px;
}

#top_recruit .details .photos {
    width:55%;
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
    position:relative;
}

#top_recruit .details .photos .photo {
    width:23.5%;
    margin-bottom:2%;
}

#top_recruit .details .photos .photo:nth-child(n+9) {
    margin-bottom:0;
}

#top_recruit .details .photos .all {
    position:absolute;
    width:400px;
    bottom:-185px;
    left:0;
    right:0;
    margin:auto;
}





/*-----PARTNERS-----*/
#partners {
    padding:100px 0;
}

#partners .titles .title p {
    font-size:120%;
}

#partners .partners {
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    margin-bottom:50px;
}

#partners .partners .partner {
    width:150px;
    margin:0 20px 20px 0;
}

#partners .partners .partner:nth-child(6n) {
    margin-right:0;
}

#partners .partners .partner:nth-child(n+7) {
    margin-bottom:0;
}

#partners .systems {
    display:flex;
    justify-content:space-between;
}

#partners .systems .system {
    width:50%;
    display:flex;
    justify-content:space-between;
    align-items:center;
}

#partners .systems .system:first-child {
    border-right:#d2d2d2 1px solid;
    padding-right:5%;
    margin-right:5%;
}

#partners .systems .system .symbol {
    width:55px;
}

#partners .systems .system .detail {
    width:calc(100% - 80px);
}

#partners .systems .system .detail .item {
    font-weight:600;
    margin-bottom:3px;
}

#partners .systems .system .detail .tx {
    font-size:80%;
    color:#969696;
}





/*-----CTA-----*/
#cta {
    padding:80px 0;
    background:url(../img/cta_bg.jpg) center / cover;
}

#cta .titles {
    padding-bottom:15px;
}

#cta .titles .title p {
    font-size:120%;
    color:#fff;
}

#cta .titles .title p:first-letter {
    color:#fff;
}

#cta .titles .title .line {
    background:#fff;
}

#cta .en {
    font-size:400%;
    font-weight:500;
    line-height:100%;
    color:#fff;
    text-align:center;
    margin-bottom:20px;
}

#cta .copy {
    color:#fff;
    text-align:center;
    margin-bottom:30px;
}

#cta .cta_btns {
    display:flex;
    justify-content:center;
    align-items:center;
}

#cta .cta_btns .cta_btn {
    margin:0 10px;
}

#cta .cta_btns .cta_btn a {
    display:flex;
    justify-content:center;
    align-items:center;
    padding:10px 40px 10px 30px;
    border:#fff 1px solid;
}

#cta .cta_btns .cta_btn:first-child a {
    background:#55b4e6;
}

#cta .cta_btns .cta_btn:last-child a {
    background:#0080c8;
}

#cta .cta_btns .cta_btn a img {
    width:45px;
    margin-right:15px;
}

#cta .cta_btns .cta_btn a p {
    font-size:110%;
    font-weight:600;
    color:#fff;
}

#cta .more_btn {
    text-align:center;
}

#cta .more_btn .btn {
    display:inline-block;
}

#cta .more_btn .btn a {
    display:flex;
    justify-content:space-between;
    align-items:center;
    position:relative;
    background:#fff;
    border-radius:5px;
    padding:20px 50px;
}

#cta .more_btn .btn a:before {
    content:"";
    width:16px;
    height:16px;
    border-top:#0080c8 4px solid;
    border-right:#0080c8 4px solid;
    transform:rotate(45deg);
    position:absolute;
    right:20px;
}

#cta .more_btn .btn a:after {
    content:"";
    width:20px;
    height:4px;
    background:#0080c8;
    display:block;
    position:absolute;
    right:20px;
}

#cta .more_btn .btn a p {
    font-size:110%;
    font-weight:600;
    color:#0080c8;
    margin-right:30px;
}





/*-----PAGE-----*/
.under {
    padding-bottom:150px;
}

.pagetitles {
    width:100%;
    height:300px;
    background:#eef7fc;
    position:relative;
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.pagetitles .pagedeco_l {
    width:120px;
    position:absolute;
    top:0;
    left:0;
    z-index:1;
}

.pagetitles .pagedeco_r {
    width:120px;
    position:absolute;
    bottom:0;
    right:0;
    z-index:1;
}

.pagetitles .bg {
    width:600px;
    height:300px;
    background:#ccc;
    position:relative;
    top:0;
    right:calc(50% - 500px);
    margin:0 0 0 auto;
}

.pagetitles .bg .bgdeco_l {
    width:150px;
    position:absolute;
    top:0;
    left:0;
}

.pagetitles .bg .bgdeco_r {
    width:150px;
    position:absolute;
    bottom:0;
    right:0;
}

.pagetitles .pagetitle {
    width:1000px;
    margin:auto;
    position:absolute;
    left:0;
    right:0;
    z-index:1;
}

.pagetitles .pagetitle .subject {
    font-size:650%;
    font-weight:500;
    line-height:100%;
    color:#0080c8;
}

.pagetitles .pagetitle .kana {
    font-size:150%;
    font-weight:600;
}

.pagetitles .pagetitle .kana:first-letter {
    color:#0080c8;
}

.under .bread {
    width:1000px;
    margin:15px auto 70px;
    text-align:right;
}

.under .bread p {
    font-size:80%;
}

.corner_titles {
    text-align:center;
    margin-bottom:30px;
}

.corner_titles .corner_title {
    position:relative;
    display:inline-block;
}

.corner_titles .corner_title .title {
    font-size:110%;
    font-weight:600;
    display:inline-block;
}

.corner_titles .corner_title .title:first-letter {
    color:#0080c8;
}

.corner_titles .corner_title .underline {
    height:4px;
    background:#0080c8;
    position:absolute;
    left:0;
    right:0;
    margin:auto;
}





/*----- TOPICS -----*/
#topics_index {
}

#topics_index .pagetitles .bg {
    background:url(../topics/img/pagetitle.jpg) center / cover;
}

#topics_index .category {
    display:flex;
    justify-content:center;
    margin-bottom:30px;
}

#topics_index .category nav {
    margin-right:12px;
}

#topics_index .category nav:last-child {
    margin-right:0;
}

#topics_index .category nav a {
    line-height:100%;
    border:#0080c8 1px solid;
    display:block;
    padding:12px 15px;
}

#topics_index .category nav a p {
    font-weight:500;
    line-height:100%;
    color:#0080c8;
}

#topics_index .category nav.now a {
    pointer-events:none;
    background:#0080c8;
    border:#0080c8 1px solid;
}

#topics_index .category nav.now a p {
    color:#fff;
    line-height:100%;
}

#topics_index .category nav.none a {
    pointer-events:none;
    opacity:0.3;
}

#topics_index .topics {
    position:relative;
    margin-bottom:35px;
}

#topics_index .topics .topic {
    position:relative;
    border-bottom:#e1e1e1 1px solid;
    padding:40px 20px;
}

#topics_index .topics .topic:first-child {
    border-top:#e1e1e1 1px solid;
}

#topics_index .topics .topic {
    display:flex;
    justify-content:space-between;
    align-items:center;
    position:relative;
}

#topics_index .topics .topic .date_cate {
    width:220px;
    display:flex;
    align-items:center;
    margin-right:30px;
}

#topics_index .topics .topic .date_cate .date {
    width:100px;
    line-height:100%;
    margin-right:20px;
}

#topics_index .topics .topic .date_cate .cate {
}

#topics_index .topics .topic .date_cate .cate p {
    font-size:80%;
    line-height:100%;
}

#topics_index .topics .topic .date_cate .cate p a {
    color:#fff;
    background:#0080c8;
    padding:2px 5px 1px;
    width:100px;
    display:flex;
    justify-content:center;
    align-items:center;
}

#topics_index .topics .topic .subject {
    width:calc(100% - 250px);
}

.pagenation {
    display:flex;
    justify-content:center;
    align-items:center;
    margin-top:30px;
}

.pagenation nav {
    line-height:100%;
    margin:0 5px;
}

.pagenation nav:first-child {
}

.pagenation nav a {
    font-size:90%;
    border:#0080c8 1px solid;
    display:flex;
    justify-content:center;
    align-items:center;
    min-width:30px;
    height:30px;
    padding:0 10px;
}

.pagenation nav a p {
    color:#0080c8;
}

.pagenation nav.now a {
    pointer-events:none;
    background:#0080c8;
    border:#0080c8 1px solid;
}

.pagenation nav.now a p {
    color:#fff;
    line-height:100%;
}

.pagenation nav.none a {
    pointer-events:none;
    opacity:0.3;
}





/*-----TOPICS DETAIL-----*/
#topics_detail {
}

#topics_detail .pagetitles .bg {
    background:url(../topics/img/pagetitle.jpg) center / cover;
}

#topics_detail .cts {
}

#topics_detail article {
}

#topics_detail article p {
    color:#323232;
}

#topics_detail article .corner {
    text-align:center;
}

#topics_detail article .corner .cate_titles {
    margin-bottom:30px;
}

#topics_detail article .corner .cate_title {
    color:#c8b478;   
}

#topics_detail article h2 {
    font-size:220%;
    font-weight:600;
    line-height:145%;
    color:#0080c8;
    margin-bottom:10px;
}

#topics_detail article .date_cate {
    display:flex;
    align-items:center;
}

#topics_detail article .date_cate .date {
    margin-right:15px;
    line-height:100%;
}

#topics_detail article .date_cate .cate {
    font-size:90%;
    line-height:100%;
}

#topics_detail article .date_cate .cate a {
    background:#0080c8;
    padding:2px 10px;
    color:#fff;
}

#topics_detail article .photo {
    margin-top:40px;
}

#topics_detail article .ex {
    margin-top:40px;
}

#topics_detail article .ex p {
    font-size:100%;
    line-height:180%;
}

#topics_detail article .youtube {
    margin:40px auto 0;
    padding-top: 56.25%;
    position:relative;
}

#topics_detail article .youtube iframe {
    position: absolute;
    top:0;
    right:0;
    width:100% !important;
    height:100% !important;
}

#topics_detail article .btns {
    margin-top:50px;
}

#topics_detail article .btns .btn {
    position:relative;
    display:flex;
    align-items:center;
    border-bottom:#e1e1e1 1px solid;
}

#topics_detail article .btns .btn:first-child {
    border-top:#e1e1e1 1px solid;
}

#topics_detail article .btns .btn:last-child {
    margin-bottom:0;
}

#topics_detail article .btns .btn .icon {
    width:25px;
    margin-right:10px;
}

#topics_detail article .btns .btn a {
    width:100%;
    display:flex;
    justify-content:space-between;
    align-items:center;
    position:relative;
    padding:30px 30px;
}

#topics_detail article .btns .btn a p {
    font-weight:500;
    letter-spacing:2px;
}

#topics_detail article .btns .btn a:after {
    content:"";
    width:20px;
    height:20px;
    border-top:#e1e1e1 1px solid;
    border-right:#e1e1e1 1px solid;
    transform:rotate(45deg);
    position:absolute;
    right:30px;
}





/*-----COMPANY-----*/
#company {
}

#company .pagetitles .bg {
    background:url(../company/img/pagetitle.jpg) center / cover;
}

#company #message {
    margin-bottom:100px;
}

#company #message .cts {
    width:calc(100% - 100px);
    max-width:1400px;
}

#company #message .details {
    display:flex;
    justify-content:space-between;
}

#company #message .details .photo {
    width:50%;
    min-height:400px;
    max-height:700px;
    background:url(../company/img/main.jpg) center / cover;
    margin-right:25px;
}

#company #message .details .detail {
    width:50%;
    padding-left:25px;
}

#company #message .details .detail .copies {
    width:500px;
}

#company #message .details .detail .copies .subject {
    font-size:200%;
    font-weight:600;
    line-height:150%;
    margin-bottom:25px;
    color:#0080c8;
}



#company #overview {
    margin-bottom:100px;
}

#company #overview .overviews {

}

#company #overview .overviews .overview {
    border-bottom:#e1e1e1 1px solid;
    padding:30px;
    display:flex;
    justify-content:space-between;
}

#company #overview .overviews .overview:first-child {
    border-top:#e1e1e1 1px solid;
}

#company #overview .overviews .overview .subject {
    width:200px;
    font-weight:600;
}

#company #overview .overviews .overview .detail {
    width:calc(100% - 200px);
}

#company #overview .overviews .overview .detail .offices {

}

#company #overview .overviews .overview .detail .offices .office {
    border-bottom:#e1e1e1 1px solid;
    display:flex;
    padding-bottom:20px;
    margin-bottom:20px;
}

#company #overview .overviews .overview .detail .offices .office:last-child {
    border-bottom:none;
    padding-bottom:0;
    margin-bottom:0;
}

#company #overview .overviews .overview .detail .offices .office .item {
    width:120px;
    font-weight:600;
}

#company #overview .overviews .overview .detail .offices .office .tx {
    width:calc(100% - 120px);
}

#company #office {

}

#company #office .offices {
    display:flex;
    justify-content:space-between;
    flex-wrap:wrap;
}

#company #office .offices .office {
    width:48%;
    margin-bottom:50px;
}

#company #office .offices .office .map {
    height:300px;
    margin-bottom:20px;
}

#company #office .offices .office .name {
    font-size:150%;
    font-weight:600;
}

#company #office .offices .office .name:first-letter {
    color:#0080c8;
}

#company #office .offices .office .address {

}





/*-----SERVICE-----*/
#service_index {
}

#service_index .pagetitles .bg {
    background:url(../service/img/pagetitle.jpg) center / cover;
}

#service_index .intro {
    text-align:center;
    margin-bottom:30px;
}

#service_index .services {
    display:flex;
    flex-wrap:wrap;
}

#service_index .services .service {
    width:22.5%;
    height:auto;
    margin:0 2% 2% 0;
    overflow:hidden;
}

#service_index .services .service:nth-child(4n) {
    margin-right:0;
}

#service_index .services .service a {
    position:relative;
}

#service_index .services .service a .photo {
    width:100%;
    height:100%;
    position:relative;
    display:flex;
    justify-content:center;
    align-items:center;
    overflow:hidden;
}

#service_index .services .service a .photo img {
    width:100%;
    height:100%;
    object-fit:cover;
    transform:scale(1);
    transition:transform 0.5s cubic-bezier(.22,.61,.36,1);
}

#service_index .services .service a:hover img {
    transform:scale(1.2);
}

#service_index .services .service a:hover {
    animation:none;
}

#service_index .services .service a .photo:hover {
}

#service_index .services .service a .subject {
    width:100%;
    background:rgba(85,180,230,0.9);
    padding:12px 12px 10px;
    position:absolute;
    left:0;
    bottom:0;
}

#service_index .services .service a .subject p {
    font-size:80%;
    font-weight:600;
    color:#fff;
}

#service_detail {
}

#service_detail .pagetitles .bg {
    background:url(../service/img/pagetitle.jpg) center / cover;
}

#service_detail .corner_titles {
    margin-bottom:15px;
}

#service_detail .service_name {
    font-size:250%;
    font-weight:600;
    text-align:center;
    margin-bottom:30px;
}

#service_detail .service_name:first-letter {
    color:#0080c8;
}

#service_detail article {

}

#service_detail article .intro {
    display:flex;
    justify-content:space-between;
}

#service_detail article .intro .photo {
    width:450px;
    height:450px;
    overflow:hidden;
    display:flex;
    justify-content:center;
    align-items:center;
}

#service_detail article .intro .detail {
    width:500px;
}

#service_detail article .intro .detail .subject {
    font-size:180%;
    font-weight:600;
    line-height:135%;
    margin-bottom:20px;
    color:#0080c8;
}

#service_detail article .intro .detail .links {
    margin-top:20px;
}

#service_detail article .intro .detail .links li {
    display:flex;
    align-items:center;
}

#service_detail article .intro .detail .links .arrow {
    width:18px;
    height:18px;
    border:#0080c8 1px solid;
    border-radius:30vw;
    position:relative;
    display:flex;
    justify-content:center;
    align-items:center;
    margin-right:6px;
}

#service_detail article .intro .detail .links .arrow:before {
    content:"";
    width:7px;
    height:7px;
    border-top:#0080c8 1px solid;
    border-right:#0080c8 1px solid;
    transform:rotate(45deg);
    margin-right:2px;
}

#service_detail article .intro .detail .links li p a {
    font-weight:600;
    color:#0080c8;
}

#service_detail article .columns {
    margin-top:70px;
}

#service_detail article .columns .column {
    margin-top:70px;
}

#service_detail article .columns .column .anchor {
    margin-top:-150px;
    padding-top:150px;
}

#service_detail article .columns .column .service_subname {
    border-bottom:#e1e1e1 1px solid;
    margin-bottom:20px;
}

#service_detail article .columns .column .service_subname p {
    font-weight:600;
    border-left:#0080c8 4px solid;
    padding:10px 0 10px 15px;
    color:#0080c8;
}

#service_detail article .columns .column .subject {
    font-size:150%;
    font-weight:600;
    margin-bottom:20px;
}

#service_detail article .columns .column .subject:first-letter {
    color:#0080c8;
}

/*COLUMN LEFT*/
#service_detail article .columns .column.column_left .details {
    display:flex;
    justify-content:space-between;
}

#service_detail article .columns .column.column_left .details .photo {
    width:48%;
}

#service_detail article .columns .column.column_left .details .detail {
    width:48%;
}

#service_detail article .columns .column.column_left .details .detail .tx {

}

#service_detail article .columns .column.column_left .details .detail .more_text {
    margin-top:20px;
    text-align:right;
}



/*COLUMN CENTER*/
#service_detail article .columns .column.column_center .details {
}

#service_detail article .columns .column.column_center .details .photo {
    width:48%;
    margin:0 auto 30px;
}

#service_detail article .columns .column.column_center .details .detail {
    width:100%;
}

#service_detail article .columns .column.column_center .details .detail .tx {

}

#service_detail article .columns .column.column_center .details .detail .more_text {
    margin-top:20px;
    text-align:right;
}



/*COLUMN RIGHT*/
#service_detail article .columns .column.column_right .details {
    display:flex;
    justify-content:space-between;
    flex-direction:row-reverse;
}

#service_detail article .columns .column.column_right .details .photo {
    width:48%;
}

#service_detail article .columns .column.column_right .details .detail {
    width:48%;
}

#service_detail article .columns .column.column_right .details .detail .tx {

}

#service_detail article .columns .column.column_right .details .detail .more_text {
    margin-top:20px;
    text-align:right;
}



/*COLUMN NONE*/
#service_detail article .columns .column.column_none .details {
    display:flex;
    justify-content:space-between;
    flex-direction:row-reverse;
}

#service_detail article .columns .column.column_none .details .detail {
    width:100%;
}

#service_detail article .columns .column.column_none .details .detail .tx {

}

#service_detail article .columns .column.column_none .details .detail .more_text {
    margin-top:20px;
    text-align:right;
}





/*-----CASE-----*/
#case_index {
}

#case_index .pagetitles .bg {
    background:url(../case/img/pagetitle.jpg) center / cover;
}

#case_index .corner_titles {
    margin-bottom:15px;
}

#case_index .service_name {
    font-size:250%;
    font-weight:600;
    text-align:center;
    margin-bottom:15px;
}

#case_index .service_name:first-letter {
    color:#0080c8;
}

#case_index .intro {
    text-align:center;
    margin-bottom:30px;
}

#case_index .cases {
    display:flex;
    flex-wrap:wrap;
}

#case_index .cases .case {
    width:31%;
    margin:0 3.5% 3.5% 0;
}

#case_index .cases .case:nth-child(3n) {
    margin-right:0;
}

#case_index .cases .case .photo {
    width:100%;
    height:225px;
    display:flex;
    justify-content:center;
    align-items:center;
    margin-bottom:10px;
    overflow:hidden;
}

#case_index .cases .case .photo img {
    width:100%;
    height:100%;
    object-fit:cover;
}

#case_index .cases .case .info .cate {
    font-size:70%;
    line-height:100%;
    background:#55b4e6;
    color:#fff;
    display:inline-block;
    padding:4px;
    margin-bottom:4px;
}

#case_index .cases .case .info .subject {
    font-size:110%;
    font-weight:600;
}

#case_index .cases .case .info .customer {
    font-size:80%;
    color:#969696;
}

#case_index .cases .case .info .date {
    font-size:80%;
    color:#969696;
}





#case_detail {
}

#case_detail .pagetitles .bg {
    background:url(../case/img/pagetitle.jpg) center / cover;
}

#case_detail article {

}

#case_detail article .cate {
    margin-bottom:3px;
}

#case_detail article .cate a {
    background:#0080c8;
    font-size:90%;
    color:#fff;
    padding:3px 5px;
}

#case_detail article h2 {
    font-size:220%;
    font-weight:600;
    line-height:145%;
}

#case_detail article h2:first-letter {
    color:#0080c8;
}

#case_detail article .customer {
}

#case_detail article .date {
    color:#969696;
}

#case_detail article .photo {
    width:100%;
    text-align:center;
    margin:20px auto 50px;
    overflow:hidden;
}

#case_detail article .photo img {
    width:auto;
    max-height:600px;
}

#case_detail article .message {

}

#case_detail article .message .message_subname {
    border-bottom:#e1e1e1 1px solid;
    margin-bottom:20px;
}

#case_detail article .message .message_subname p {
    font-weight:600;
    border-left:#0080c8 4px solid;
    padding:10px 0 10px 15px;
    color:#0080c8;
}



.service_lineup { 
    margin-top:70px;
}

.service_lineup .en {
    font-weight:500;
    color:#0080c8;
    margin-bottom:3px;
}

.service_lineup ul {
    background:#eef7fc;
    padding:20px 25px;
    display:flex;
    flex-wrap:wrap;
}

.service_lineup li {
    width:25%;
    display:flex;
    align-items:center;
}

.service_lineup li .arrow {
    width:16px;
    height:16px;
    border:#0080c8 1px solid;
    border-radius:30vw;
    position:relative;
    display:flex;
    justify-content:center;
    align-items:center;
    margin-right:6px;
}

.service_lineup li .arrow:before {
    content:"";
    width:6px;
    height:6px;
    border-top:#0080c8 1px solid;
    border-right:#0080c8 1px solid;
    transform:rotate(45deg);
    margin-right:3px;
}

.service_lineup li p a {
    font-size:90%;
    font-weight:600;
    color:#0080c8;
}





/*-----RECRUIT-----*/
#recruit {
}

#recruit .pagetitles .bg {
    background:url(../recruit/img/pagetitle.jpg) center / cover;
}

#recruit .intro {
    margin-bottom:150px;
}

#recruit .intro .main {
    margin-bottom:40px;
}

#recruit .intro .copies {
    text-align:center;
}

#recruit .intro .copies .subject {
    font-size:200%;
    font-weight:600;
    line-height:135%;
    margin-bottom:20px;
    color:#0080c8;
}

#recruit .intro  .copies .tx {
}


#recruit #works {
    margin-bottom:150px;
}

#recruit #works .copy {
    text-align:center;
    margin-bottom:30px;
}

#recruit #works .works {
    display:flex;
    justify-content:space-between;
    flex-wrap:wrap;
}

#recruit #works .works .work {
    width:48%;
    margin-bottom:30px;
}

#recruit #works .works .work:nth-child(n+3) {
    margin-bottom:0;
}

#recruit #works .works .work .photo {
    margin-bottom:15px;
}

#recruit #works .works .work .item {
    font-size:120%;
    font-weight:600;
    color:#0080c8;
    margin-bottom:5px;
}

#recruit #works .works .work .tx {

}

#recruit #gallery {
    margin-bottom:150px;
}

#recruit #gallery .cts {
    width:100%;
}

#recruit #gallery .copy {
    text-align:center;
    margin-bottom:30px;
}

#recruit #gallery .gallery_slider {
    width:100%;
}

#recruit #benefit {
    margin-bottom:150px;
}

#recruit #benefit .copy {
    text-align:center;
    margin-bottom:30px;
}

#recruit #benefit .benefits {
    display:flex;
    justify-content:space-between;
    flex-wrap:wrap;
}

#recruit #benefit .benefits .benefit {
    width:49%;
    background:#f2f5f5;
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:15px 30px;
    margin-bottom:20px;
}

#recruit #benefit .benefits .benefit:nth-child(n+5) {
    margin-bottom:0;
}

#recruit #benefit .benefits .benefit .icon {
    width:90px;
}

#recruit #benefit .benefits .benefit .detail {
    width:calc(100% - 110px);
}

#recruit #benefit .benefits .benefit .detail .item {
    font-size:110%;
    font-weight:600;
    color:#0080c8;
    margin-bottom:5px;
}

#recruit #benefit .benefits .benefit .detail .tx {
    font-size:90%;
}

#recruit #job {

}

#recruit #job .select_btns {
    display:flex;
    justify-content:center;
    gap:12px;
    margin-bottom:20px;
}

#recruit #job .select_btns .btn {
    min-width:150px;
    text-align:center;
    cursor:pointer;
    border:#0080c8 1px solid;
    color:#0080c8;
    padding:10px 15px;
}

#recruit #job .select_btns .btn:hover {
    animation:hover 1s forwards;
}

#recruit #job .select_btns .btn.active {
    background:#0080c8;
    color:#fff;
    pointer-events:none;
    display:block;
}

#recruit #job .select_btns .btn p {
    color:#0080c8;
}

#recruit #job .select_btns .btn.active p {
    color:#fff;
}

#recruit #job .jobs {

}

#recruit #job .jobs .job {
    display:none;
}

#recruit #job .jobs .job.active {
    display:block;
}

#recruit #job .jobs .job .jobname {
    font-size:120%;
    font-weight:600;
    line-height:1;
    padding:10px 0 10px 10px;
    border-left:#0080c8 5px solid;
    margin-bottom:10px;
}

#recruit #job .descriptions {

}

#recruit #job .descriptions .description {
    border-bottom:#e1e1e1 1px solid;
    padding:30px;
    display:flex;
    justify-content:space-between;
}

#recruit #job .descriptions .description:first-child {
    border-top:#e1e1e1 1px solid;
}

#recruit #job .descriptions .description .subject {
    width:250px;
    font-weight:600;
}

#recruit #job .descriptions .description .detail {
    width:calc(100% - 250px);
}

#recruit #job .descriptions .description .detail .item {
    font-weight:600;
}

#recruit #job .descriptions .description .detail .blank {
    margin-top:20px;
}

#recruit #job .descriptions .description .detail .attention {
    display:flex;
    font-size:90%;
}

#recruit #job .descriptions .description .detail .pr {
    margin-bottom:20px;
}

#recruit #job .descriptions .description .detail .pr:last-child {
    margin-bottom:0;
}

#recruit .entry {
    margin-top:30px;
}

#recruit .entry .btn a {
    width:400px;
    padding:22px 20px;
    justify-content:center;
}

#recruit .entry .btn .arrow {
    content:"";
    width:20px;
    height:3px;
    background:#fff;
    display:block;
    position:absolute;
    right:30px;
    display:flex;
    align-items:center;
    animation:arrow 0.6s infinite alternate;
}

#recruit .entry .btn .arrow:after {
    content:"";
    width:14px;
    height:14px;
    border-top:#fff 3px solid;
    border-right:#fff 3px solid;
    transform:rotate(45deg);
    position:absolute;
    right:0;
}

#recruit .entry .btn a p {
    font-size:120%;
    font-weight:600;
    color:#fff;
    margin-right:0;
}





/*----- CONTACT -----*/
#contact {
}

#contact.contact_individual .pagetitles .bg {
    background:url(../for_individual/img/pagetitle.jpg) center / cover;
}

#contact.contact_corporate .pagetitles .bg {
    background:url(../for_corporate/img/pagetitle.jpg) center / cover;
}

#contact .pagetitles .pagetitle .subject {
    font-size:550%;
    font-weight:500;
    line-height:100%;
    color:#0080c8;
}

#contact .cts {
    background:#fff;
    padding:0 0 100px;
}

#contact .corner {
    text-align:center;
}

#contact .intro {
    margin-bottom:50px;
    text-align:center;
}

#contact .intro h2 {
    font-size:220%;
    font-weight:600;
    margin-bottom:5px;
}

#contact .intro h2:first-letter {
    color:#0080c8;
}

#contact .intro .tx {
}

#contact h3 {
    border-left:#0080c8 5px solid;
    padding:3px 0 3px 10px;
    margin-bottom:10px;
    font-weight:600;
}

#contact #contact_tel {
    margin-bottom:50px;
    display:none;
}

#contact #contact_tel .tel_cts {
    background:#fafafa;
    padding:20px 30px;
    text-align:center;
}

#contact #contact_tel .tel_cts .item {
    margin-bottom:5px;
}

#contact #contact_tel .tel_cts .number {
    font-size:180%;
    font-weight:600;
    line-height:100%;
}

#contact #contact_form {
}

#contact #contact_form .form_cts {
}

#contact #contact_form .form_cts {
}

#contact #contact_form .form_cts .copy {
    margin-bottom:20px;
}

#contact #contact_form .form_cts .copy .tx {

}

#contact #contact_form .form_cts .copy .attention {
    font-size:80%;
    margin-top:3px;
}

#contact #contact_form .form_cts .forms {
}

#contact #contact_form .form_cts .forms .form {
    border-bottom:#f0f0f0 1px solid;
    padding:20px 0;
    display:flex;
    justify-content:space-between;
}

#contact #contact_form .form_cts .forms .form:first-child {
    border-top:#f0f0f0 1px solid;
}

#contact #contact_form .form_cts .forms .form .items {
    width:25%;
    display:flex;
    align-items:center;
}

#contact #contact_form .form_cts .forms .form .items .required {
    font-size:70%;
    line-height:100%;
    padding:3px 5px;
    margin-right:10px;
    border:#55b4e6 1px solid;
    color:#55b4e6;
}

#contact #contact_form .form_cts .forms .form .items .any {
    font-size:70%;
    line-height:100%;
    padding:3px 5px;
    margin-right:10px;
    border:#ccc 1px solid;
    color:#ccc;
}

#contact #contact_form .form_cts .forms .form .items .item {
}

#contact #contact_form .form_cts .forms .form .detail {
    width:75%;
}

#contact #contact_form .form_cts .forms .form:nth-last-child(-n+2) {
    align-items:flex-start;
}


/*FORM*/
input,textarea,select {
    padding:15px 18px;
}

form .style_type {
    margin-right:5px;
    border:#aaa 1px solid;
}

form .style_name {
    width:50%;
}

form .style_company {
    width:50%;
}

form .style_kana {
    width:50%;
}

form .style_genre {
    width:40%;
}

form .style_mail {
    width:80%;
}

form .style_tel {
    width:30%;
}

form .style_select {
    width:40%;
}

form .style_detail {
    width:100%;
    height:250px;
    vertical-align:top;
}

form .btns {
    display:flex;
    justify-content:center;
    align-items:center;
    margin-top:20px;
}

form .warning {
    font-size:80%;
}

form .warning .block {
    display:block;
    line-height:100%;
    margin-top:10px;
    color:#c84632;
}

form .btns .btn {
    margin:0 10px;
}

form .btns .btn input:hover {
    -webkit-animation:hover 0.5s ease forwards;
    animation:hover 0.5s ease forwards;
}

form .btns .btn .style_submit {
    border:none;
    background:#0080c8;
    width:200px;
    padding:15px;
    cursor:pointer;
    color:#fff;
    font-weight:600;
}

#contact .btns .btn .accepted:disabled {
    background:#ddd;
    pointer-events:none;
}

form .btns .btn .style_fix {
    border:none;
    background:#ccc;
    color:#fff;
    width:200px;
    padding:15px;
    cursor:pointer;
}

form .detail .privacy_policy {
}

form .detail .privacy_policy .privacies {
    height:250px;
    border:#e1e1e1 1px solid;
    padding:20px 25px;
    overflow-y:scroll;
    margin-bottom:12px;
}

form .detail .privacy_policy .privacies .privacy {
    border-bottom:#f0f0f0 1px solid;
    padding-bottom:15px;
    margin-bottom:15px;
}

form .detail .privacy_policy .privacies .privacy:last-child {
    border-bottom:none;
    padding-bottom:0;
    margin-bottom:0;
}

form .detail .privacy_policy .privacies .privacy .attention {
    display:flex;
    font-size:80%;
    padding-top:5px;
}

form .detail .privacy_policy .privacies .privacy .subject {
    font-size:80%;
    font-weight:500;
    margin-bottom:3px;
}

form .detail .privacy_policy .privacies .privacy .tx {
    font-size:80%;
}

form .detail .privacy_policy .privacies .privacy ul {
}

form .detail .privacy_policy .privacies .privacy ul li {
    display:flex;
}

form .detail .privacy_policy .privacies .privacy ul li p {
    font-size:80%;
}

form .detail .consent_cap {
    padding-bottom:12px;
}

form .detail .consent {
    display:flex;
    align-items:center;
    position:relative;
}

form .detail .consent label {
    cursor:pointer;
    padding-left:5px;
    font-weight:500;
    color:#323232;
    position:relative;
}

form .detail .consent label:before {
    content:"";
    width:15px;
    height:15px;
    border:#323232 1px solid;
    display:inline-block;
    position:absolute;
    top:5px;
    left:-20px;
}

form .detail .consent label:after {
    content:"";
    width:10px;
    height:15px;
    border-right:#0080c8 2px solid;
    border-bottom:#0080c8 2px solid;
    display:block;
    transform:rotate(45deg);
    position:absolute;
    top:0;
    left:-13px;
    opacity:0;
}

form .detail input[type="checkbox"] {
width:20px;
visibility:hidden;
}

form .detail input[type="checkbox"]:checked + label:after {
opacity:1;
}

form .detail input[type="radio"] {
width:15px;
height:15px;
}

form .detail input[type="radio"]:checked {
background:#0080c8;
}





/*THANKS*/
#contact .thanks h2 {

}
 
#contact .thanks .intro {
    margin-bottom:30px;
}

#contact .thanks .attention {
    
}

#contact .thanks .attention p {
    justify-content:center;
}





/*-----PRIVACY POLICY-----*/
#privacy {
}

#privacy .pagetitles .bg {
    background:url(../privacy/img/pagetitle.jpg) center / cover;
}

#privacy .privacies {
}

#privacy .privacies .privacy {
    border-bottom:#f0f0f0 1px solid;
    padding-bottom:20px;
    margin-bottom:20px;
}

#privacy .privacies .privacy:last-child {
    border-bottom:none;
    padding-bottom:0;
    margin-bottom:0;
}

#privacy .privacies .privacy .attention {
    display:flex;
    padding-top:5px;
}

#privacy .privacies .privacy .subject {
    font-weight:600;
    margin-bottom:3px;
}

#privacy .privacies .privacy .tx {
}

#privacy .privacies .privacy ul {
}

#privacy .privacies .privacy ul li {
    display:flex;
}

#privacy .privacies .privacy ul li p {
    font-size:80%;
}





/*-----COMMON-----*/
.titles {
padding-bottom:30px;
text-align:center;
}

.titles h2 {
font-size:250%;
font-weight:bold;
line-height:135%;
}

.titles .subtitle {
font-size:120%;
font-weight:bold;
}

.titles .kana {
font-size:100%;
}





/*-----GLOBAL-----*/
#global {
}

#global .nav_btn {
display:none;
}

#global .nav_close {
display:none;
}

#global .global_nav {
display:flex;
justify-content:flex-end;
align-items:center;
}

#global .global_nav nav {
}

#global .global_nav .grnav {
    margin-right:35px;
    cursor:pointer;
}

#global .global_nav nav a {
    text-align:center;
}

#global .global_nav nav .square {
    width:6px;
    height:6px;
    background:#55b4e6;
    margin:0 auto 7px;
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
}

#global .global_nav nav .jp {
    font-size:95%;
    font-weight:600;
    line-height:100%;
    margin-bottom:5px;
}

#global .global_nav nav .en {
    font-size:70%;
    font-weight:400;
    line-height:100%;
    color:#b4b4b4;
}

#global .global_nav .global_contacts {
    display:flex;
}

#global .global_nav .nav_contact {
    margin-right:0;
}

#global .global_nav .nav_contact a {
    width:90px;
    height:90px;
    background:#ccc;
    display:flex;
    justify-content:center;
    align-items:center;
}

#global .global_nav .nav_contact.cta_individual a {
    background:#55b4e6;
}

#global .global_nav .nav_contact.cta_corpolate a {
    background:#0080c8;
}

#global .global_nav .nav_contact a .nav_contact_cts {

}

#global .global_nav .nav_contact a .nav_contact_cts img {
    width:38px;
    margin-bottom:3px;
}

#global .global_nav .nav_contact a .nav_contact_cts .jp {
    font-size:70%;
    line-height:135%;
    color:#fff;
    margin-bottom:0;
}

#global .global_nav .nav_contact a .nav_contact_cts .en {
    color:#fff;
}

#global .global_nav .open_nav {
    position:relative;
    display:flex;
    justify-content:center;
    align-items:center;
    height:60px;
    padding:15px 0;
}

#global .global_nav .open_nav nav {
}

#global .global_nav .open_nav.grnav {
    border-left:none;
}

#global .global_nav .navies {
    display:none;
    position:absolute;
    top:60px;
    width:180px;
}

#global .global_nav .navies .navi {
    border:#aaa 1px solid;
    border-top:none;
    background:#fff;
}

#global .global_nav .navies .navi:first-child {
    border-top:#aaa 1px solid;
}

#global .global_nav .navies .navi a {
    background:rgba(255,255,255,0.9);
    padding:10px 12px;
    display:flex;
    align-items:center;
    position:relative;
}

#global .global_nav .navies .navi a:before {
    content:"";
    width:11px;
    height:1px;
    background:#aaa;
    position:absolute;
    right:12px;
}

#global .global_nav .navies .navi a:after {
    content:"";
    width:8px;
    height:8px;
    border-top:#aaa 1px solid;
    border-right:#aaa 1px solid;
    transform:rotate(45deg);
    position:absolute;
    right:12px;
}

#global .global_nav .navies .navi a p {
    font-size:75%;
    font-weight:400;
    line-height:135%;
    letter-spacing:0;
    color:#aaa;
}

#global .global_nav .navies.show {
    display:block;
}

#global .global_nav .nav_cta {
}

#global .global_nav .nav_cta a {
    display:flex;
    justify-content:center;
    align-items:center;
    width:170px;
    height:56px;
    background:#2ca6e0;
    border-radius:4px;
}

#global .global_nav .nav_cta img {
    width:34px;
    margin-right:12px;
}

#global .global_nav .nav_cta .item {
}

#global .global_nav .nav_cta .item .jp {
    font-size:90%;
    line-height:100%;
    color:#fff;
}

#global .global_nav .nav_cta .item .en {
    font-size:70%;
    line-height:100%;
    color:#fff;
}





/*-----BACK TO TOP-----*/
.BackToTop {
position:fixed;
width:25px;
right:30px;
bottom:0;
z-index:100;
display:none;
}





/*-----FOOTER-----*/
footer {
padding:50px 0 30px;
}

footer .details {
    display:flex;
    justify-content:space-between;
    flex-direction:row-reverse;
    margin-bottom:50px;
}

footer .details .links {
    display:flex;
}

footer .details .links .link {
    margin-left:50px;
}

footer .details .links .link ul li {
    font-size:75%;
    margin-bottom:3px;
}

footer .details .links .link ul li:first-child {
    font-size:75%;
    font-weight:600;
}

footer .details .links .link ul li a {
    color:#969696;
}

footer .details .information {

}

footer .details .information .footer_logo {
    width:150px;
    margin-bottom:20px;
}

footer .details .information .company {
    font-size:100%;
    font-weight:500;
}

footer .details .information .address {
    font-size:80%;
    margin-bottom:20px;
}

footer .details .information .sns {
    display:flex;
}

footer .details .information .sns a {
    width:25px;
    margin-right:10px;
}

footer .copyright {
font-size:70%;
text-align:center;
color:#d2d2d2;
}









/*----- SWIPER -----*/
/* 前へ次への矢印カスタマイズ */
.swiper-button-prev::after,
.swiper-button-next::after {
    content: "";
    height: 0;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 0;
}
/* 前への矢印カスタマイズ */
.swiper-button-prev::after {
    width:30px;
    height:30px;
    border-left:2px #323232 solid;
    border-bottom:2px #323232 solid;
    transform:rotate(45deg);
    left:30px;
}
/* 次への矢印カスタマイズ */
.swiper-button-next::after {
    width:30px;
    height:30px;
    border-top:2px #323232 solid;
    border-right:2px #323232 solid;
    transform:rotate(45deg);
    right:30px;
}





}