/* ヘッダ */
#content section.titlearea {
    background: #1c6247 url("../image/common/title_back.svg") no-repeat 100% 20px;
    background-size: 80%;
}
#content section.titlearea * {
    color: #fff;
}
#content section.titlearea h1 * {
    line-height: 1.5;
}
#content h2 {
    font-size: 2.2rem;
    font-weight: 500;
    color: #1c6247;
    margin-bottom: 30px;
    text-align: center;
}
#content h2:after {
    content: '';
    display: block;
    width: 2em;
    height: 3px;
    background: #1c6247;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    margin: 5px auto 0;
}
#content h3 {
    font-size: 2rem;
    font-weight: 500;
    color: #1c6247;
    margin-bottom: 0.6em;
}
#content .green_head li {
    list-style: none;
    padding-left: 1.5em;
    position: relative;
}
#content .green_head li:before {
    content: '';
    display: block;
    width: 0.5em;
    height: 0.5em;
    background: #1c6247;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    position: absolute;
    left: 0.3em;
    top: 0.8em;
}
#content .b_marker {
    color: #1b75a8;
    background: linear-gradient(transparent 50%, #edf4f8 50%);
}
#content .green_txt {
    color: #1c6247;
}
#content ul.kome_list li {
    list-style: none;
    padding-left: 1.5em;
    position: relative;
}
#content ul.kome_list li::before {
  content: '※';
  position: absolute;
  top: 0px;
  left: 0px;
}

#content ul.check_list {
    background: #f8f2ed;
    padding: 0.5em 1em;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px;
}
#content ul.check_list li {
    list-style: none;
    padding-left: 1.2em;
    position: relative;
}
#content ul.check_list li:before {
    content: '';
    display: block;
    width: 14px;
    height: 1em;
    background: url("../image/common/icon_check.svg") no-repeat center center;
    background-size: contain;
    position: absolute;
    top: 0.4em;
    left: 0px;
}
@media (min-width: 768px) {
#content section.titlearea {
    background-position: 100% 0px;
    background-size: 70%;
}
#content h2 {
    font-size: 2.8rem;
    margin-bottom: 40px;
}
#content h2:after {
    margin-top: 0.3em;
}
#content h3 {
    font-size: 2.4rem;
    margin-bottom: 0.6em;
}
}
@media (min-width:1280px) {
#content section.titlearea {
    background-position: 100% -22px;
    background-size: 920px;
}
#content h2 {
    font-size: 3.2rem;
    margin-bottom: 50px;
}
#content h3 {
    font-size: 2.6rem;
    margin-bottom: 0.6em;
}
}


/* トップ */
.training .senior_course {
    margin-bottom: 30px;
}
.training .link_bt {
    text-align: center;
    margin-top: 30px;
}
.training .link_bt a {
    display: block;
    width: 80%;
    max-width: 300px;
    margin: auto;
    font-size: 1.6rem;
    color: #fff;
    line-height: 2.5;
    background: #519d95;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	border-radius: 50px;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	display: -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display: -webkit-flex; /* Safari6.1以降 */
    -webkit-box-pack:center;
    -webkit-justify-content:center;
    -ms-flex-pack:center;
    justify-content:center;
    -webkit-box-align:center;
    -webkit-align-items:center;
    -ms-flex-align:center;
    position: relative;
}
.training .diet_course .link_bt a {
    background: #8156ac;
}
.training .link_bt a .index_img01 {
    width: 40px;
    position: absolute;
    left: 5px;
    bottom: 1px;
}
.training .link_bt a .index_img02 {
    width: 58px;
    position: absolute;
    left: -5px;
    bottom: 1px;
}
.training .link_bt a .icon_arrow {
    width: 11px;
    margin-left: 3px;
    filter: brightness(0) saturate(100%) invert(92%) sepia(100%) saturate(0%) hue-rotate(202deg) brightness(106%) contrast(106%);
}

@media (min-width: 768px) {
.training .training_course {
	display: flex;
	display: -ms-flexbox; /* IE10 */
	display: -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display: -webkit-flex; /* Safari6.1以降 */
    -webkit-box-pack:justify;
    -webkit-justify-content:space-between;
    -ms-flex-pack:justify;
    justify-content:space-between;
}
.training .training_course > div {
    width: 47%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	display: -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display: -webkit-flex; /* Safari6.1以降 */
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -webkit-flex-direction:column;
    -ms-flex-direction:column;
    flex-direction:column;
    -webkit-box-pack:justify;
    -webkit-justify-content:space-between;
    -ms-flex-pack:justify;
    justify-content:space-between;
}
.training .training_course .course_note {
    margin-bottom: auto;
}
.training .senior_course {
    margin-bottom: 0;
}
.training .link_bt {
    margin-top: 50px;
}
.training .link_bt a {
    width: 90%;
    max-width: 400px;
    font-size: 1.8rem;
    line-height: 2.8;
    padding-left: 1em;
}
.training .link_bt a .index_img01 {
    width: 53px;
    left: 5px;
}
.training .link_bt a .index_img02 {
    width: 78px;
    left: 0px;
}
.training .link_bt a .icon_arrow {
    width: 14px;
    margin-left: 5px;
}
}

@media (min-width:1280px) {
.training .training_course > div {
    width: 545px;
}
.training .training_course .course_note {
    margin-bottom: auto;
}
.training .senior_course {
    margin-bottom: 0;
}
.training .link_bt {
    margin-top: 70px;
}
.training .link_bt a {
    width: 480px;
    max-width: none;
    font-size: 2rem;
    line-height: 3;
    padding-left: 1em;
}
.training .link_bt a .index_img01 {
    width: 66px;
    left: 20px;
}
.training .link_bt a .index_img02 {
    width: 92px;
    left: 20px;
}
.training .link_bt a .icon_arrow {
    margin-left: 10px;
}
}


/* シニア応援コース */
.senior_intro ul {
    list-style: none;
    font-size: 1.6rem;
    margin-bottom: 2em;
}
.senior_intro ul li {
    text-align: center;
    background: #f6f2ec;
    padding: 0.5em;
    margin-bottom: 10px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
}

.senior_meeting .meeting_info {
    width: 90%;
    max-width: 850px;
    background: #f6f2ec;
    padding: 15px 40px 15px 15px;
    margin: auto;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
    position: relative;
}
.senior_meeting .meeting_info table {
    width: 100%;
	border-collapse: separate;
	border-spacing: 8px;
}
.senior_meeting .meeting_info th {
    font-size: 1.6rem;
    vertical-align: top;
    padding-right: 0.5em;
    width: 5em;
}
.senior_meeting .meeting_info th p {
    color: #fff;
    background: #bc956c;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
    white-space: nowrap;
}
.senior_meeting .meeting_info td {
    font-size: 1.6rem;
}
.senior_meeting .meeting_info .senior_img01 {
    width: 70px;
    position: absolute;
    right: -30px;
    bottom: -10px;
}

.senior_course .course_inner {
    width: 90%;
    max-width: 850px;
    padding: 25px 15px 15px;
    margin: 40px auto 0;
    border: solid 2px #eaeaea;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
    position: relative;
}
.senior_course .course_inner ol {
    font-size: 1.6rem;
    margin-left: 1em;
}
.senior_course .course_inner ol li {
    color: #1c6247;
    font-weight: bold;
    margin-bottom: 1em;
}
.senior_course .course_inner ol li p {
    font-weight: normal;
}
.senior_course .course_inner .course_time {
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1;
    color: #1c6247;
    background: #fff;
    padding: 0.5em;
    border: solid 2px #1c6247;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
    position: absolute;
    top: 0px;
    right: 15px;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.senior_course .course_inner .course_time span {
    font-size: 1.2rem;
    font-weight: bold;
    color: #1c6247;
    display: block;
    line-height: 1;
    text-align:justify;
    text-align-last:justify;
}
.senior_course .course_inner .course_time strong {
    font-size: 3.2rem;
    font-weight: bold;
    color: #1c6247;
    line-height: 1;
}
.senior_course .course_inner .senior_img02 {
    width: 70px;
    position: absolute;
    top: -40px;
    left: -30px;
}
.senior_course .course_inner .foot {
    width: 60px;
    position: absolute;
    bottom: -20px;
    right: -20px;
}

.senior_flow .flow_inner {
    width: 90%;
    max-width: 850px;
    margin: 20px auto 0;
    text-align: center;
}
.senior_flow .flow_inner dt {
    font-size: 1.8rem;
    color: #fff;
    background: #1c6247;
    display: table;
    width: 8em;
    text-align: center;
    margin: 0 auto -1em;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
    position: relative;
    z-index: 13;
}
.senior_flow .flow_inner dd {
    padding: 30px 15px 15px;
    margin-bottom: 1.5em;
    border: solid 2px #eaeaea;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
    position: relative;
}
.senior_flow .flow_inner dd.senior_img_area {
    padding-bottom: 50px;
}
.senior_flow .flow_inner .kome_note {
    background: #f4f4f4;
}
.senior_flow .flow_inner .senior_img03 {
    width: 110px;
    position: absolute;
    bottom: -10px;
    right: -35px;
}
.senior_flow .flow_inner .senior_img04 {
    width: 47px;
    position: absolute;
    bottom: -10px;
    left: -35px;
}

.senior_contact table {
    width: 90%;
    max-width: 850px;
    margin: auto;
    font-size: 1.6rem;
    text-align: center;
	border-collapse: separate;
	border-spacing: 0px;
    border: solid 2px #f4f4f4;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
    overflow: hidden;
}
.senior_contact table th {
    font-weight: normal;
    background: #f4f4f4;
    display: block;
    padding: 0.5em;
}
.senior_contact table td {
    display: block;
    padding: 0.5em;
}
.senior_contact table td span {
    display: none;
}
.senior_contact table td a {
    display: block;
    color: #1c6247;
}

@media (min-width: 768px) {
.senior_intro ul {
    font-size: 2rem;
    margin-bottom: 2em;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	display: -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display: -webkit-flex; /* Safari6.1以降 */
    -webkit-box-pack:justify;
    -webkit-justify-content:space-between;
    -ms-flex-pack:justify;
    justify-content:space-between;
    -webkit-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
}
.senior_intro ul li {
    width: 48%;
    padding: 0.5em 0;
    margin-bottom: 20px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}

.senior_meeting .meeting_info {
    padding: 30px 40px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}
.senior_meeting .meeting_info table {
    width: 100%;
	border-collapse: separate;
	border-spacing: 8px;
}
.senior_meeting .meeting_info th {
    font-size: 1.8rem;
    padding-top: 0.2em;
}
.senior_meeting .meeting_info th p {
}
.senior_meeting .meeting_info td {
    font-size: 2rem;
}
.senior_meeting .meeting_info .senior_img01 {
    width: 80px;
    right: -50px;
    bottom: -10px;
}

.senior_course .course_inner {
    padding: 30px 40px 30px;
    margin: 50px auto 0;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}
.senior_course .course_inner ol {
    font-size: 1.8rem;
}
.senior_course .course_inner ol li {
    margin-bottom: 1em;
}
.senior_course .course_inner .course_time {
    font-size: 1.8rem;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
    right: 25px;
}
.senior_course .course_inner .course_time span {
    font-size: 1.4rem;
}
.senior_course .course_inner .course_time strong {
    font-size: 4rem;
}
.senior_course .course_inner .senior_img02 {
    width: 95px;
    top: -50px;
    left: -44px;
}
.senior_course .course_inner .foot {
    width: 95px;
    bottom: -35px;
    right: -15px;
}

.senior_flow .flow_inner {
    margin: 30px auto 0;
}
.senior_flow .flow_inner dt {
    font-size: 2rem;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}
.senior_flow .flow_inner dd {
    padding: 35px 15px 20px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}
.senior_flow .flow_inner dd.senior_img_area {
    padding-bottom: 20px;
}
.senior_flow .flow_inner .kome_note {
    background: #f4f4f4;
}
.senior_flow .flow_inner .senior_img03 {
    width: 150px;
    bottom: -24px;
    right: -62px;
}
.senior_flow .flow_inner .senior_img04 {
    width: auto;
    bottom: -25px;
    left: -35px;
}

.senior_contact table {
    font-size: 1.8rem;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}
.senior_contact table th {
    display: table-cell;
    padding: 0.5em;
}
.senior_contact table td {
    display: table-cell;
    padding: 0.5em;
}
.senior_contact table td span {
    display: inline-block;
}
.senior_contact table td a {
    display: inline-block;
}
}
@media (min-width:1280px) {
.senior_intro ul {
    font-size: 2.4rem;
}
.senior_intro ul li {
    width: 48%;
    padding: 0.5em 0;
    margin-bottom: 20px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}

.senior_meeting .meeting_info {
    padding: 30px 55px;
}
.senior_meeting .meeting_info table {
	border-spacing: 14px;
}
.senior_meeting .meeting_info th {
    font-size: 2rem;
    padding-top: 0.1em;
}
.senior_meeting .meeting_info td {
    font-size: 2.2rem;
}
.senior_meeting .meeting_info .senior_img01 {
    width: auto;
    right: -44px;
    bottom: -15px;
}

.senior_course .course_inner {
    padding: 40px;
}
.senior_course .course_inner ol {
    font-size: 2rem;
}
.senior_course .course_inner .course_time {
    font-size: 2rem;
    padding: 0.7em 0.5em;
    right: 30px;
}
.senior_course .course_inner .course_time strong {
    font-size: 4.8rem;
    letter-spacing: -0.05em;
    padding-right: 0.05em;
}
.senior_course .course_inner .senior_img02 {
    width: auto;
    top: -60px;
}
.senior_course .course_inner .foot {
    width: auto;
}

.senior_flow .flow_inner dt {
    font-size: 2.2rem;
}
.senior_flow .flow_inner dd {
    padding: 45px 15px 25px;
    margin-bottom: 1.8em;
}
.senior_flow .flow_inner dd.senior_img_area {
    padding-bottom: 25px;
}
.senior_flow .flow_inner .senior_img03 {
    width: auto;
    bottom: -27px;
    right: -33px;
}

.senior_contact table {
    font-size: 2.2rem;
}
.senior_contact table td span {
    display: inline-block;
    padding: 0 0.5em;
}

}


/*  */

@media (min-width: 768px) {
}
@media (min-width:1280px) {
}
