@charset "UTF-8";
/**

Theme Name:ryucom
Theme URI:https://www.ryucom.co.jp/
Description:
Version: 2.0 ／ 2020.11
Author:(c) リウコム

*/

/****** コンテンツ内 *******
common
title
list
table
box
block
media query
etc
*********************** */

/* common
----------------------------------- */
/* href */
.post-content-in a {
    text-decoration: underline;
}
.content a {
    text-decoration: underline;
}
/* width */
.w20 { width: 20%; }
.w30 { width: 30%; }
.w40 { width: 40%; }
.w50 { width: 50%; }
.w80 { width: 80%; margin: 0 10%; }
.w70 { width: 70%; margin: 0 15%; }
.w90 { width: 90%; margin: 0 5%; }

/* text color  */
.text1 { color: #264D99; font-weight: bold; }
.text2 { color: #DA4453; font-weight: bold; }

/* background color  */
.col1 { background: #FFD876 !important; /*黃*/ }
.col2 { background: #A0D468 !important; /*緑*/ }
.col3 { background: #95DAF2 !important; /*青2*/ }
.col4 { background: #FD8B74 !important; /*赤*/ }
.col5 { background: #CDBEF4 !important; /*紫2*/ }
.col6 { background: #6DD9BD !important; /*エメラルド*/ }
.col7 { background: #F499A3 !important; /*ピンク*/ }
.col8 { background: #4A89DC !important; /*青1*/ }
.col9 { background: #AC92EC !important; /*紫1*/ }
.col10 { background: #e9573f !important; /*オレンジ*/ }

.col11 { background: #5A9DE3 !important; /* 青1 */ }
.col12 { background: #46BDE1 !important; /* 青2 */ }
.col13 { background: #A4E1F5 !important; /* 青3 */ }
.col14 { background: #3FC6AB !important; /* 黄緑1 */ }
.col15 { background: #BFE198 !important; /* 黄緑2 */ }
.col16 { background: #E088BB !important; /* ピンク */ }
.col17 { background: #E35C65 !important; /* 赤1 */ }
.col18 { background: #F36D78 !important; /* 赤1 */ }
.col19 { background: #5A9DE3 !important; /* 青4 */ }
.col20 { background: #A791E3 !important; /* 紫 */ }

.col21 { background: #8cc152 !important; /*グリーン*/ }
.col22 { background: #ED5565 !important; /*ピンク*/ }
.col23 { background: #f58434 !important; /*オレンジ*/ }

/* text-align  */
.voice-name {
        text-align: right;
    }

/* title
----------------------------------- */
/* リウコムの役割　リウコムを知る */
#solution .page-content h2:first-of-type,
#company .page-content h2:first-of-type {
    margin-top: 0;
}
#solution .page-content h2,
#company .page-content h2 {
    padding: .65em .5em .4em;
    background: #F5F7FA;
    border-left: solid 5px #5D9CEC;
    border-bottom: solid 4px #EAEAEA;
    font-size: 1.3em;
    margin: 2em 0 1em;
    line-height: 1.3;
}
#solution .page-content h3,
#company .page-content h3 {
   position: relative;
    margin: 25px 0 10px 0;
    font-size: 1.2em;
    line-height: 1.2;
    vertical-align: top;
    padding: .3em .7em;
    }
    #solution .page-content h3::after,
    #company .page-content h3::after {
        background-color: #F6BB42;
        position: absolute;
        top: 50%;
        left: 0;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        content: '';
        width: 5px;
        height: 1em;
        height: 88%;
        margin-top: -1px;
        }
#solution .page-content h4,
#company .page-content h4 {
    padding: .3em 0 .2em 0;
    border-bottom: solid 2px #CCCCCC;
    font-size: 1.1em;
}

/* リウコムで働く */
#member .page-content h2:first-of-type {
    margin-top: 0;
}
#member .page-content h2 {
    padding: .65em .5em .4em;
    background: #F5F7FA;
    border-left: solid 5px #9BC864;
    border-bottom: solid 4px #EAEAEA;
    font-size: 1.3em;
    margin: 2em 0 1em;
    line-height: 1.3;
}
#member .page-content h3 {
    border-bottom: solid 4px #E6E9ED;
    position: relative;
    margin: 2em 0 1em;
    padding-bottom: 7px;
    line-height: 1.3;
    font-size: 1.2em;
    }
    #member .page-content h3:after {
        position: absolute;
        content: " ";
        display: block;
        border-bottom: solid 4px #ED5565;
        bottom: -3px;
        width: 20%;
        }
#member .page-content h4 {
    padding: .3em 0 .2em 0;
    border-bottom: solid 2px #CCCCCC;
    font-size: 1.1em;
}

/* インタビュー */
.member-interview .page-content h2:first-of-type {
    margin-top: 0;
}
.member-interview .page-content h2 {
    border-bottom: solid 4px #E6E9ED;
    position: relative;
    margin: 2em 0 1em;
    padding:0 0 7px !important;
    line-height: 1.3;
    background: none !important;
    border-left: none !important;
    font-size: 1.2em !important;
    }
    .member-interview .page-content h2:after {
        position: absolute;
        content: " ";
        display: block;
        border-bottom: solid 4px #ED5565;
        bottom: -3px;
        width: 20%;
        }
/* ビジネス */
.business-tit {
    margin: 1em auto;
    font-size: 1.4em !important;
    font-weight: bold;
    text-align: center;
    border: none !important;
    background: none !important;
}
.business-text {
    border: none !important;
    background: none !important;
    font-size: 1.8em !important;
    font-weight: bold;
    text-align: center !important;
    letter-spacing: .05em;
    line-height: 1.5;
}
.business-text-en {
    font-size: 1.8em !important;
    font-weight: bold;
    text-align: center !important;
    letter-spacing: .05em;
    margin: 10px 0 20px !important;
}
.business-text-en.s1 {
    color: #48CFAD;
}
.business-box {
    text-align: center;
    line-height: 2;
}

/* その他 */
.page-content .tit2 {
    padding: 0.5em;
    background: #E9573F;
    color: #FFF;
    font-size: 1.3em;
    font-weight: bold;
    margin: 0;
    text-align: center;
}
.page-content .tit3:first-of-type {
    margin-top: 0;
}
.page-content .tit3 {
    position: relative;
    margin: 25px 0 10px 0;
    font-size: 1.4em;
    font-weight: bold;
}

/* 吹き出し */
.page-content .tit-fuki {
    position: relative;
    margin: 1.5em auto;
    padding: .5em 1em;
    color: #000;
    font-weight: bold;
    display: block;
    border-radius: 10px;
    text-align: center;
    max-width: 80%;
    font-size:1.7em;
    letter-spacing: .05em;
    }
    .page-content .tit-fuki:before {
        content: "";
        position: absolute;
        top: 100%;
        left: 50%;
        margin-left: -15px;
        border: 15px solid transparent;
        }
.page-content .tit-fuki.bottom {
    margin-bottom: -1.5em;
}
.page-content .tit-fuki.smallfont {
    font-size:1.4em;
}

.page-content .tit-fuki.s1 {
    background: #FFD876;
    }
    .page-content .tit-fuki.s1:before {
        border-top: 15px solid #FFD876;
        }
.page-content .tit-fuki.s2 {
    background: #A0D468;
    }
    .page-content .tit-fuki.s2:before {
        border-top: 15px solid #A0D468;
        }
.page-content .tit-fuki.s3 {
    background: #95DAF2;
    }
    .page-content .tit-fuki.s3:before {
        border-top: 15px solid #95DAF2;
        }
.page-content .tit-fuki.s4 {
    background: #FD8B74;
    }
    .page-content .tit-fuki.s4:before {
        border-top: 15px solid #FD8B74;
        }
.page-content .tit-fuki.s5 {
    background: #CDBEF4;
    }
    .page-content .tit-fuki.s5:before {
        border-top: 15px solid #CDBEF4;
        }
.page-content .tit-fuki.s6 {
    background: #6DD9BD;
    }
    .page-content .tit-fuki.s6:before {
        border-top: 15px solid #6DD9BD;
        }
.page-content .tit-fuki.s7 {
    background: #F499A3;
    }
    .page-content .tit-fuki.s7:before {
        border-top: 15px solid #F499A3;
        }
.page-content .tit-fuki.s8 {
    background: #4A89DC;
    }
    .page-content .tit-fuki.s8:before {
        border-top: 15px solid #4A89DC;
        }
.page-content .tit-fuki.s9 {
    background: #f58434;
    }
    .page-content .tit-fuki.s9:before {
        border-top: 15px solid #f58434;
        }
        
/* list
----------------------------------- */
/* disc */
.page-content ul {
    padding: 0;
    margin-left: 25px;
    }
    .page-content ul li {
        list-style-type: disc;
        margin: 0 0 15px 0;
        }
.short li {
    margin: 0 !important;
}
.medium li {
    margin: 0 0 5px 0 !important;
}

/* decimal */
.page-content ol {
    padding: 0;
    margin-left: 35px;
    }
    .page-content ol li {
        list-style-type: decimal;
        margin: 0 0 15px 0;
        }

/* site map */
.wsp-container h2 {
    background: #e4e4e4;
    font-size: 1em !important;
    padding: .5em .7em .3em !important;
    margin: 0 0 15px 0;
    color: #000;
}
.wsp-container ul {
    padding: 0;
    margin-left: 25px;
    }
    .wsp-container li {
        list-style-type: disc;
        line-height: 1.8;
        padding-left: .1em;
        margin-bottom: 20px;
        }
        .wsp-container li li {
            list-style: none;
            margin-bottom: 0;
            }
            .wsp-container li li:before {
                content: "-";
                padding-right: 5px;
                }
        .wsp-container li a {
            text-decoration: underline;
            }

/* table
----------------------------------- */
/* ブロックテーブル */
.wp-block-table {
    table-layout: fixed;
    width: 100%;
    border-collapse: collapse;
    margin: 10px 0;
    }
    .wp-block-table th,
    .wp-block-table td {
        border: solid 1px #c0c0c0;
        padding:.8vw;
        line-height: 1.6;
        }
    .wp-block-table tr td:nth-of-type(1) {
        width: 33%;
        background: #F2F2F2;
        font-weight: bold;
        }
/* カスタムテーブル */
.table-col1 tr td:nth-of-type(1) {
    background: #FFCE54;
}
.page-content .custom-table.table1 {
    table-layout: fixed;
    width: 100%;
    border-collapse: collapse;
    border: solid 3px #e4e4e4;
    margin: 1.5vw 0;
    }
    .page-content .custom-table.table1  th,
    .page-content .custom-table.table1  td {
        border: solid 1px #e4e4e4;
        padding:.8vw;
        }
    .page-content .custom-table.table1  td {
        vertical-align: top;
        }
/* スクロールテーブル */
.scroll-table {
    overflow: auto;
    position: relative;
    }
    .scroll-table table {
        margin: 0;
        border: none;
        }
    .scroll-table::before {
        display: inline-block;
        content: '⇓ 横スクロールできます';
        padding-right: 5px;
        -webkit-transition: 0.2s;
        transition: 0.2s;
        font-size: .8em;
        }
    .scroll-table::before {
        display: none;
        }

/* box
----------------------------------- */
.box-left {
    padding-left:1.5em;
}
.box-center {
    text-align: center;
}
body.home::before {
    /* background: url(/cms/wp-content/uploads/2019/10/01222620/bg-contact.jpg) no-repeat left top;
    background-size: 100% auto;
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding-bottom: 108px;
    content: "";
    z-index: -1; */

    background: url(/cms/wp-content/uploads/2019/10/01222620/bg-contact.jpg) no-repeat center;
    background-size: 100% auto;
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    padding-bottom: 108px;
    content: "";
    z-index: -1;
    height:100vh;
    background-size:cover;
} 
.top-main {
    overflow: hidden;
    position: relative;
    background: url(/cms/wp-content/uploads/2019/10/01222822/main-image.jpg) no-repeat;
    background-size:cover;
}


/* block
----------------------------------- */
.wp-block-quote :before{
    background:#FFF url(/cms/wp-content/uploads/2019/10/01222830/icon-blockquote.svg) no-repeat 0 0;
}
/* image block */
.wp-block-image figcaption {
    text-align: right !important;
}
.wp-block-separator {
    border: 2px solid #000;
    margin: 30px 0;
}
/* iframe */
.map {
    margin: 20px 0 0;
    }
    .map iframe {
        width: 100% !important;
        }
.youtube iframe {
    width: 100%;
}
/* PDF */
.wp-block-cgb-block-algori-pdf-viewer {
    position: relative;
    padding-bottom: 140%;
    height: 0;
    overflow: hidden;
}
.wp-block-cgb-block-algori-pdf-viewer iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}
/* column block */
.wp-block-column:not(:last-child) {
    margin-right: 20px;
}
.wp-block-column:not(:first-child) {
    margin-left: 20px;
}
/* column block class:column1 */
.wp-block-columns.column1 .wp-block-column:first-child {
    width: 140%;
    flex-basis: auto !important;
}
.wp-block-media-text.has-media-on-the-right {
    grid-template-columns: auto 40% !important;
}
.wp-block-media-text .wp-block-media-text__content {
    padding-left: 0 !important;
}

/* .wp-block-media-text__media .image {
    position: relative;
}
.wp-block-media-text__media .name {
    text-align: right;
} */
.wp-block-media-text {
    align-items: inherit !important;
}
.member-interview .wp-block-media-text__content {
    padding-left: 0 !important;
}
/* gallery */
.page-content ul.wp-block-gallery {
    margin-left: 0;
}

/* greeting */
.greeting { 
display: flex; 
}

.greeting-text {
  margin: 20px 30px 0 0;
}

.greeting-text { flex: 1 1 auto; }
.greeting-photo { flex: 0 0 250px; }
 
/* greeting Responsive */
@media screen and (max-width: 600px) {
   .greeting  {
    -ms-flex-direction: column;
    -webkit-flex-direction: column;
    flex-direction: column;
    width: 100%;
  }
  .greeting-text {
    margin: 0 0 30px 0;
  }
	.greeting-photo {
    width: 70%;
	max-width: 50%;
  margin: 0 auto;
  }

}



/* お客様の声 */
.voice-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-bottom: 30px;
}

.voice-top .voice-image {
  width: 30%;
  overflow: hidden;
}

.voice-top .voice-image .image {
  line-height: 0;
  position: relative;
}

.voice-top .voice-image .name {
  text-align: right;
  padding-top: 8px;
}

.voice-top .voice-text {
  width: 70%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  -webkit-box-direction: column;
  flex-direction: column;
  padding: 0 5% 0 0;
}

.voice-top .voice-text .text {
  font-size: 1.4em;
  font-weight: bold;
}

/* お客様の声 Responsive */
@media screen and (max-width: 600px) {

 .voice-top {
    display: block;
  }
  .voice-top .voice-text {
    width: 100%;
    padding: 0 0 10px;
  }
  .ivoice-top .voice-text .text {
    font-size: 1.1em;
    line-height: 1.4;
  }
  .voice-top .voice-image {
    width: 100%;
  }-top {
    display: block;
  }
  .voice-top .voice-text {
    width: 100%;
    padding: 0 0 10px;
  }
  .voice-top .voice-text .text {
    font-size: 1.1em;
    line-height: 1.4;
  }
  .voice-top .voice-image {
    width: 70%;
	max-width: 50%;
  margin: 0 auto;
  }
}

/* media query
----------------------------------- */
@media (max-width: 1240px) {

}/* END */
@media (max-width: 980x) {

}/* END */
@media (max-width: 1168x) {

}/* END */
@media (max-width: 768px) {

.w80 { width: 100%; margin: 0; }
.w70 { width: 90%; margin: 0; }
	
.page-content .tit-fuki {
    font-size: 1.5em;
    max-width: 100%;
}
.page-content .tit-fuki.smallfont {
    font-size: 1.1em;
    max-width: 100%;
}
	

	
	/* text-align  */
.voice-name {
        text-align: center;
    }
	
/* table block scroll */
.wp-block-table
.scroll-table {
    padding-bottom: 20px;
    }
    .scroll-table table {
        width: 800px !important;
        margin-top: 26px !important;
        }
    .scroll-table::before {
        position: absolute;
        color: #c1c1c1;
        left: 0;
        top: 0;
        display: block;
        }
/* table block form */
.form-table {
    margin: 0;
    }
    .form-table th {
        background: none !important;
        }
/* list */
.page-content ol {
    padding: 0;
    margin-left: 2em;
}
}/* END */
@media (max-width: 600px) {
.page-content .tit-fuki {
    font-size: 1.2em;
    max-width: 100%;
    padding: .5em .5em;
}
.page-content .tit-fuki.smallfont {
    font-size:1.1em;
}
.page-content .tit-fuki br {
    display: none;
}
.page-content .tit-fuki.smallfont br {
     display: inline;
}
.business-box {
    text-align: left;
}
.business-box br {
    display: none;
}

.page-content h3 br {
    display: none;
}
.page-bg {
   padding: 3em 0 3em;
}
.block-table td {
    display: block;
    width: 100% !important;
}
}/* END */
@media (max-width: 425px) {

}/* END */
@media (max-width: 320px) {

}/* END */


/* etc
----------------------------------- */
.pagecsr .item-list .item:first-child {
    display: none;
}

/* バナー
----------------------------------- */
.archive-wrap .widgettitle {
    display: none;
}
.archive-item.is-text {
  justify-content: center !important;
  align-items: center !important;
}
.archive-wrap .title {
    font-weight: bold;
    font-size: 1.2em;
    padding-left: 8px;
    line-height: 1.8;
}
.archive-wrap .title.is-small {
    font-size: .9em;
    letter-spacing: -0.05em;
    line-height: 1.6;
}
/* --------------------------------
2023.07 追記
----------------------------------- */
/* レイアウト */
.is-hover img:hover {
    opacity: 0.7;
    transition: 0.3s;
}
.l-header.-top .header {
    margin-top: -74px;
}
/* 数字で見るリウコム */
.introduction-list {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    width: calc(100% + 2%);
    margin: 0 0 0 -1%;
}
.introduction-list .introduction {
    padding-bottom: 10px;
    flex-direction: column;
    width: 24.7%;
    width: calc(100% / 4 - 2%);
    margin: 1%;
    -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
    -webkit-transition-duration: 0.2s;
    transition-duration: 0.2s;
    background: #ffffff;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    display: inherit;
}
.introduction-list .introduction-image {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
    padding: 1em;
}
.introduction-list .introduction-name {
    background: #1382d4;
    margin-top: 0;
    margin-bottom: 18px;
    font-size: 1.3em;
    font-weight: bold;
    padding: .5em 0 0.5em;
    color: #ffffff;
    letter-spacing: 0.08em;

    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
}
.introduction-list .introduction-count {
    display: flex;
    align-items: baseline;
    font-weight: bold;
    text-align: center;
    margin: auto;
    justify-content: center;
    line-height: 1;
}
.introduction-list .introduction-count .count-size1 {
    font-size: calc(2.4vw + 2.3rem);
}
.introduction-list .introduction-count .count-size2 {
    font-size: calc(2vw + 1.6rem);
}
.introduction-list .introduction-count .count-size3 {
    font-size: calc(1.8vw + 1.8rem);
}
.introduction-list .introduction-count .count-size4 {
    font-size: calc(1.6vw + 1.6rem);
}
.introduction-list .introduction-count .count-size5 {
    font-size: calc(1vw + 1.2rem);
    padding-left: 3px;
}
.introduction-list .introduction-count .count-size5 {
    font-size: calc(1vw + 1.2rem);
}
.introduction-list .introduction-count .count-size6 {
    font-size: calc(.8vw + 1rem);
}
.introduction-list .introduction-count .count-size7 {
    font-size: calc(.6vw + .8rem);
}
.introduction-block {
    display: flex;
    align-items: center;
    font-weight: bold;
    justify-content: space-around;
}
.introduction-step {
    padding: 0 1rem .8rem;
}
.introduction-step__box {
    display: flex;
    align-items: center;
    font-weight: bold;
    justify-content: space-around;
    border-bottom: 2px solid #4fbbe1;
    line-height: 1;
    padding: 6px 1rem 2px;
}
.introduction-step__box-num {
    color: #4fbbe1;
    font-weight: bold;
    font-size: 1em;
    line-height: 1;
}
.introduction-step__box-num span {
    font-size: .9em;
    padding-left: 3px;
}
@media (max-width: 979px) {
    .introduction-list.is-top {
        width: calc(100% + 13px);
        margin: 0 0 10px -7px;
    }
}
@media (max-width: 600px) {
    .introduction-list.is-top {
        width: calc(100% + 6px);
        margin: 0 0 10px -3px;
    }
    .introduction-list .introduction-name {
        letter-spacing: 0;
        font-size: 1.2em;
    }
}
.is-bg {
    color: #fff;
    font-size: 1.7rem;
    font-weight: bold;
    text-align: center;
    margin: auto;
    padding: .8rem 1.3rem;
    letter-spacing: .08em;
    line-height: 1;
}
.is-bg-col1 {
    /* 水色 */
    background: #4fbbe1;
}
.is-bg-col2 {
    /* 赤 */
    background: #e15d68;
}
.is-bg-col3 {
    /* 緑 */
    background: #49c5ad;
}
.is-bg-col4 {
    /* 青 */
    background: #5e9de0;
}
.is-bg-col5 {
    /* 紫 */
    background: #a694e0;
}
@media (max-width: 980px) {

    .introduction-list .introduction {
        width: calc(100% / 2 - 2%);
    }

}
@media (max-width: 600px) {
    /* 
.number-list .number-count .count-size1 {
    font-size: clamp(1.8rem, calc(1.25vw + 1.5rem), 3.2rem);
}

    .number-list .number-count .count-size2 {
        font-size: 5rem;
    }

    .number-list .number-count .count-size3 {
        font-size: 4rem;
    }

    .number-list .number-count .count-size4 {
        font-size: 3rem;
    }

    .number-list .number-count .count-size5 {
        font-size: 2rem;
    } */

}

   /* --------------------------------
2023.09 追記
----------------------------------- */
.modal-overlay .video {
   pointer-events: none;
}
.modal-wrap input:checked~.modal-overlay .video {
   pointer-events:inherit;
}
@media (max-width: 599px) {
   .strength-list .strength {
       margin-bottom: 2%;
   }
}

/* END */
