@charset "utf-8";
/* CSS Document */

/* 
* 1.0  common
* 2.0  about us
* 3.0  school
* 4.0  downloads
* 5.0  careplan-center
* 6.0  dayservice-center
* 7.0  helper-station
* 8.0  volunteer
* 9.0  contact
* 10.0 media screen 
*/

/*------------------------------------------------------
* 1.0 common
*-------------------------------------------------------*/
.inner {
    text-align: center;
    width: 80%;
    margin: 0 auto;
    padding: 3em 0;
    font-size: 1.6em;
    line-height: 1.8;
    color: #42210b;
}

.inner a {
    color: unset;
}

.pdg-top {
    padding-top: 0;
}

.sub-ttl {
    font-size: 1.5rem;
    font-weight: normal;
    margin-bottom: 2vw;
}

.sub-ttl span {
    display: block;
    font-size: .7em;
}

.box-2col {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

.items-start {
    align-items: flex-start;
}

.txt-L {
    text-align: left;
}

.txt-R {
    text-align: right;
}

/*---------------------------------------------------------------
* 2.0 about us
*---------------------------------------------------------------*/
.greeting-l {
    width: 30%;
}

.greeting-r {
    width: 70%;
    padding: 0 1em;
}

.greeting-l img {
    width: 80%;
    height: auto;
}

.greeting-l p {
    margin-top: 2em;
}

.greeting-r p {
    text-align: left;
}

.third-ttl {
    font-size: 1.8em;
    margin-bottom: 2vw;
}

.philosophy li {
    line-height: 2;
}

table.about {
    margin: 0 auto;
}

table.about tr {
    border-bottom: 1px dotted #d9a300;
}

.about tr:first-child {
    border-top: 1px dotted #d9a300;
}

.about th {
    width: 30%;
}

.about th.align-top {
    vertical-align: top;
    padding-top: 2em;
}

.about td {
    width: 70%;
    padding: .6em 1em;
    text-align: left;
}

.about td i.fa-fax {
    padding-right: .5em;
}

.about td i.fa-phone {
    padding-left: .5em;
}

.about td ul li {
    margin: 1em 0;
}

/*---------------------------------------------------------------
* 3.0 school
*---------------------------------------------------------------*/
.greeting-section01 {
    margin-bottom: 2em;
    padding-bottom: 2em;
    border-bottom: 1px dotted #d9a300;    
}

.greeting-section01 p {
    text-align: left;
    margin: 2em auto;
}

p.pres {
    text-align: right;
    padding-right: 2em;
    margin-bottom: 0;
    font-size: 1.2em;
}

.school-room_items {
    width: 50%;
    padding: 0 3em;
    margin-bottom: 2em;
    text-align: left;
}

.school-room_items:first-child {
    border-right: 1px dotted #ccc;
}

.school-room_items img {
    width: 100%;
    max-width: 320px;
    margin-bottom: 1em;
}

.attention {
    border: 1px solid #c1272d;
    border-radius: .5em;
    text-align: left;
    padding: 0 2em;
}

h3.attention-ttl {
    font-size: 2em;
    border-bottom: 1px dotted #ccc;
    vertical-align: text-bottom;
    line-height: 1;
    margin-top: .6em;
}

.attention-ttl span {
    font-size: initial;
    padding-left: 1em;
}

.attention ul {
    padding: 0 2em;
}

.sticky {
    font-size: 1.6em;
    background-color: #fff;
    border-top: 1px dotted #d9a300;
    border-bottom: 1px dotted #d9a300;
    padding: 1em 0;
    text-align: center;
    position: -webkit-sticky; /* safari対応 */
    position: sticky;
    top: 0;
}

.sticky.sticky-fixed.is-sticky {
  position: fixed;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
}

.sticky.sticky-fixed.is-sticky:not([style*="margin-top"]) {
  margin-top: 0 !important;
}

.sticky.sticky-fixed.is-sticky:not([style*="margin-bottom"]) {
  margin-bottom: 0 !important;
}

.sticky.sticky-fixed.is-sticky:not([style*="margin-left"]) {
  margin-left: 100px !important;
}

.sticky.sticky-fixed.is-absolute {
  position: absolute;
}

.sticky a {
    color: #42210b;
}

.sticky a:hover {
    color: #a36400;
}

a.anchor{
    display: block;
    padding-top: 80px;
    margin-top: -80px;
}

.training-2col {
    text-align: left;
    margin-bottom: 2em;
}

.training-box {
    width: 48%;
}

.training-2col img {
    border: 5px solid #fff;
    width: 45%;
    max-width: 400px;
}

.training-2col:last-child {
    align-items: flex-end;
    margin: 0;
}

.nittei {
    padding: 2em 3em;
    border: 1px solid #c1272d;
    border-radius: .5em;    
    margin: 2em auto;
    max-width: 450px;
}

a.link-nittei {
    width: 40%;
    text-align: center;
}

a.link-nittei:hover .nittei {
    background-color: #ffffff;
}

.sigma-box {
    margin: 2em 0em 4em;
    align-items: flex-start;
}

.sigma-box img {
    width: 48%;
    max-width: 384px;
}

.care-school_txt {
    text-align: left;
}

.free-box {
    background-color: #fff;
    border: 1px solid #d9a300;
    border-radius: .5em;
    padding: 1em;
}

.free-box a img {
    width: auto;
    padding-right: .5em;
    height: 1em;
}

.free-box a {
    font-size: 2em;
}

.free-box p {
    text-align: center;
    margin: 1em auto;
}

p.free-txt {
    font-size: .8em;
}

.to-contact {
    margin-top: 2em;
}

.to-contact a {
    background-color: #d9a300;
    color: #fff;
    padding: 1em 2em;
}

.to-contact a:hover {
    opacity: .8;
}

.review-box ul {
    padding-left: 1em;
}

ul.review-box_txt {
    font-size: 1.2em;
}

.review-corse .free-box,
.concern .free-box {
    width: 50%;
    margin: 0 auto;
}

.concern .free-box a {
    font-size: initial;
}

.concern ul {
    width: 80%;
    margin: 2em auto;
    list-style: decimal;
    padding-left: 1em;
}

.concern-box img {
    width: 30%;
    max-width: 335px;
    padding: 0 2em;
}

.concern-box > div {
    width: 70%;
    padding: 0 1em;
}

/*---------------------------------------------------------------
* 4.0 downloads
*---------------------------------------------------------------*/

.mokuji {
    width: 80%;
    margin: 0 auto;
    background-color: #fff;
    border: 1px solid #d9a300;
    border-radius: .5em;
    padding: 1em 2em;
}

.mokuji ul li a {
    display: block;
    border-bottom: 1px dotted #d9a300;
    line-height: 2;
}

.mokuji ul li a:hover {
    color: #d9a300;
}
.mokuji > ul > li > ul {
    padding-left: 1em;
}

.dld-col {
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
    align-items: center;
    margin-bottom: 2em;
}

.dld-col a,
.dld-item {
    width: 50%;
    padding: 0 1em;
    position: relative;
}

.dld-col a:hover {
    color: #d9a300;
}

.dld-items {
    display: flex;
    padding: .5em;
    align-items: center;
    background-color: #fff;
    border: 1px dotted #d9a300;
    border-radius: .5em;
    margin: 1em auto;
}

img.finished {
    position: absolute;
    bottom: 10%;
    right: -1%;
}

.snk {
    width: 25%;
}

.snk img {
    width: 100%;
    max-width: 70px;
}

.dld-sub {
    width: 50%;
    padding: 0 1em;
}

.dld-sub a {
    padding: 0;
}

/*---------------------------------------------------------------
* 5.0  careplan-center
*---------------------------------------------------------------*/
.cc-bk {
    background: url(../images/common/common_bk.png) repeat;
}

p.w80 {
    width: 80%;
    margin: 2vw auto;
}

p.txt13 {
    font-size: 1.4em;
    display: block;
    clear: both;
}

.CC {
    width: 70%;
    display: flex;
    margin: 1em auto;
}

.flt-l {
    float: left;
}

.flt-r {
    float: right;
}

.CC-img {
    width: 15%;
}

.CC-img img {
    width: 100%;
}

.CC-item {
    width: 85%;
    padding-left: 1em;
}

.CC-list {
    background-color: #fff;
    padding: .5em 2em;
    margin-left: 1em;
    margin-bottom: 1em;
    box-shadow: 3px 3px 10px rgba(0,0,0,0.3);
    color: #000;
}

.CC-list ul {
    list-style: disc;
    padding-left: 1em;
    margin: 0;
}

.CC-list ul.list-no {
    list-style: decimal;
}

/*---------------------------------------------------------------
* 6.0  dayservice-center
*---------------------------------------------------------------*/
.day-bk {
    background: url(../images/sub/DS_01.png) top center / cover no-repeat;
    padding: 4.9vw 0;
    margin-bottom: 2em;
}

p.tel7020 {
    font-size: 2em;
}

p.tel7020 span {
    font-size: .5em;
    display: block;
}

.day-aki table {
    width: 100%;
    border: 1px solid #d9a300;
}

.day-aki table th {
    background-color: #d9a300;
    color: #fff;
    line-height: 2;
    border-right: 1px dotted #a36400;
}

.day-aki table td {
    background-color: #fff;
    line-height: 5;
    border-right: 1px dotted #a36400;
}

.shisetu-box {
    display: flex;
    justify-content: center;
}

table.shisetu {
    width: 50%;
    background-color: #fff;
    border: 1px dotted #a36400;
    line-height: 2;
    margin-bottom: 2em;
}

.shisetu th {
    width: 30%;
    background-color: #d9a300;
    color: #fff;
    border-bottom: 1px dotted #a36400;
}

.shisetu td {
    text-align: left;
    padding-left: 1em;
    border-bottom: 1px dotted #a36400;
}

.tdn {
    height: calc(1.1em *2 *7);
}

.box-3col {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}

.col3-items {
    width: 33%;
    border-right: 1px dotted #ccc;
    padding: 0 1em;
    margin: 1em auto;
}

.col3-items img {
    width: 90%;
    max-width: 210px;
}

.col3-items p {
    margin: .5em auto;
}

.riyou-txt {
    background-color: #fff;
    border: 1px dotted #a36400;
    padding: 1em;
}

.btc {
    border-top: 1px dotted #ccc;
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
    align-items: flex-start;
}

.btc .training-box {
    padding: 1em;
}

.wsd {
    background-color: #fff;
    padding: .5em 1em;
    box-shadow: 3px 3px 10px rgba(0,0,0,0.3);
}

p.wsd-in {
    padding-left: 1em;
}

.DC-news {
    display: flex;
    justify-content: space-between;
}

.DC-img {
    width: 48%;
}

.DC-img img {
    width:100%;
    height: auto;
}

.DC-sch img {
    width: 100%;
    height: auto;
}

.txt08 {
    font-size: .8em;
    display: block;
}

table.DC-prc {
    width: 100%;
    border: 1px dotted #d9a300;
    line-height: 2;
    background-color: #fff;
    margin-bottom: 2em;
}

.DC-prc tr {
    border-bottom: 1px dotted #d9a300;
}

.DC-prc th {
    background-color: #D9A300;
    color: #fff;
}

.DC-prc tr td {
    
}

.DC-prc tr td:first-child {
    width: 33%;
    border-right: 1px dotted #d9a300;
}

.tbl03 tr td {
    width: 33%;
    border-right: 1px dotted #d9a300;
}

span.kyu {
    display: unset;
    margin-right: 1em;
    padding: 0.2em 1em;
    border: 1px solid #c1272d;
    font-weight: bold;
    font-size: .9em;
}

table.recruit {
    width: 100%;
    margin-bottom: 1em;
}

.recruit tr {
    line-height: 2;
    border-bottom: 1px dotted #ccc;
}

.recruit th {
    width: 25%;
    text-align: center;
}

.riyou-txt ul {
    padding-left: 1em;
}

.b2f-c {
    justify-content: center;
}

.recruit ol {
    padding-inline-start: 1rem;
}
/*---------------------------------------------------------------
* 7.0  helper-station
*---------------------------------------------------------------*/
.HS-bk {
        background: url(../images/sub/saitama.png) left 70% center/ contain no-repeat;
        padding: 0 2em 2em;
}

.tiiki {
    width: 70%;
    border: 2px solid #d9a300;
    padding: 1em;
}

.tiiki ul {
    padding-left: 2em;
}

.mb2 {
    margin-bottom: 2em;
}

table.daiko {
    width: 100%;
    background-color: #fff;
    border: 1px solid #ccc;
}

.daiko th {
    font-weight: normal;
    padding-top: 1em;
    width: 25%;
    border-right: 1px solid #ccc;
}

.daiko td {
    padding-top: 1em;
}

td.dai {
    width: 50%;
    border-right: 1px solid #ccc;
    padding: 1em 0 1em 1em;
}

.daiko tr {
    border-bottom: 1px solid #ccc;
    vertical-align: top;
}

/*---------------------------------------------------------------
* 8.0  volunteer
*---------------------------------------------------------------*/

.vlt-items {
    width: 48%;
    padding: 1em;
    margin: 1em 0;
    border-top: 2px dotted #d9a300;
    text-align: left;
}

.vlt-in {
    display: flex;
    justify-content: space-between;
}

.vlt-img {
    width: 45%;
}

.vlt-img img {
    width: 100%;
    border: 3px solid #fff;
    box-shadow: 3px 3px 10px rgba(0,0,0,0.3);
}

.vlt-in p {
    width: 65%;
    padding-left: .8em;
}

.vlt-items .wsd {
    margin-bottom: 1em;
}

.vlt-items .wsd p,
.vlt-items .wsd ul {
    margin-bottom: 0;
}

.vlt-tel {
    width: 60%;
    margin: 0 auto 2em;
    padding: 1em 2em;
}

.vlt-tel a {
    font-size: 1em;
}

.vlt-cont {
    width: 55%;
}

.vlt-cont p {
    width: 100%;
    margin: .3em 0;
}

/*------------------------------------------------------
* 9.0 contact
*-------------------------------------------------------*/
.cctf {
    width: 80%;
    margin: 0 auto;
    max-width: 980px;
}

table.cctf-tbl {
    width: 100%;
    line-height: 2;
    text-align: left;
}

.cctf-tbl th {
    color: #d9a300;
    width: 30%;
}

.cctf-tbl td {
    width: 70%;
}

.cctf-tbl th span {
    color: #c1272d;
    padding-left: 1em;
    font-size: .8em;
}

input,select,textarea.cctf-txt-box {
    border: 1px solid #d9a300;
    border-radius: .5em;
    margin: .5em 0;
    width: 100%;
}

input.cctf-acc {
    width: inherit;
}

span.wpcf7-form-control-wrap {
    font-size: 1.2em;
    line-height: 2;
}

/*---------------------------------------------------------------
* 10.0 media screen 
*---------------------------------------------------------------*/
@media screen and (max-width: 1156px) {
    .sub-ttl {
        font-size: 2.1vw;
    }
    .inner,
    .sticky {
        font-size: 1.5vw;
    }
    .day-bk {
        background-size: contain;    
    }
    .cctf-tbl th {
        width: 100%;
        display: block;
    }
    .cctf-tbl td {
        width: 100%;
        display: block;
    }
}

@media screen and (max-width: 768px){
    .sub-ttl {
        font-size: 2.8vw;
    }
    .inner,
    .sticky {
        font-size: 2.2vw;
    }
    .sticky {
        line-height: 1.8;
        top: 65px;
    }
    .box-2col {
        flex-direction: column;
    }
    .greeting-l {
        width: 70%;
    }
    .greeting-r,
    .training-box,
    a.link-nittei,
    .review-corse .free-box,
    .concern .free-box,
    .concern-box,
    .concern-box img,
    .concern-box > div,
    .CC,
    .tiiki,
    .vlt-items,
    .vlt-tel {
        width: 100%;
    }
    .school-room_items {
        width: 100%;
        text-align: center;
    }
    
    .school-room_items p {
        text-align: left;
    }
    .school-room_items:first-child {
        border-bottom: 1px dotted #ccc;
        border-right: none;
    }
    .training-2col img {
        width: 90%;
    }
    .sigma-box img {
        width: 100%;
        margin: .5em auto;
    }
    .concern-box img {
        padding: 0;
    }
    .shisetu-box {
        flex-direction: column;
        margin-bottom: 2em;
    }
    table.shisetu {
        width: 100%;
        margin-bottom: 0;
    }
    .col3-items {
        width: 50%;
    }
}

@media screen and (max-width: 479px) {
    .inner,
    .sticky {
        font-size: 1.3em;
    }
    .contents-head p {
        font-size: 1.5em;
    }
    .sub-ttl {
        font-size: 1.4em;
    }
    .contents-head {
        background: url(../images/common/head.png) top center / cover no-repeat;
    }
    .mokuji,
    .dld-col a,
    .dld-item,
    .dld-sub,
    p.w80,
    .vlt-img,
    .vlt-in p,
    .vlt-cont {
        width: 100%;
    }
    p.w80 {
        text-align: left;
    }
    a.anchor {
        padding-top: 140px;
        margin-top: -140px;
    }
    .vlt-in {    
        flex-direction: column;
    }
    .cctf {
        width: 100%;
        }
    #wpcf7-f46-ol .cctf-tbl th,#wpcf7-f46-ol .cctf-tbl td {
        display:block;
        width:100%;
        -webkit-box-sizing:border-box;
        -moz-box-sizing:border-box;
        box-sizing:border-box;
    }
}
