@charset "utf-8";

/* 共通パーツ */
.sec_title {
    font-size: 20px;
    font-weight: 700;
    text-align: center;
}

/* =====key===== */
.key {
    position: relative;
    width: 940px;
    height: 253px;
    margin: 25px auto 0;
    border-radius: 50px 0 0 0;
    background: url(../img/visit/photo07.jpg) top 13% left/cover no-repeat;
}

.key_text {
    position: absolute;
    top: 55px;
    left: 95px;
    padding: 0 0 90px;
    background: url(../img/eatswallow/icon01.png) center bottom/51px no-repeat;
    letter-spacing: 0.1em;
    text-shadow: #fff 1px 1px 1px, #fff -1px 0px 1px, #fff 0px -1px 1px, #fff 0px 1px 1px, #fff 1px 1px 1px, #fff -1px 1px 1px, #fff 1px -1px 1px, #fff -1px -1px 1px, #fff 1px 1px 1px, #fff -1px 1px 1px, #fff 1px -1px 1px, #fff -1px -1px 1px, #fff 1px 1px 1px, #fff -1px 1px 1px, #fff 1px -1px 1px, #fff -1px -1px 1px;
}

.key_title {
    position: absolute;
    top: 90px;
    left: 220px;
    padding: 0 0 25px;
    font-size: 33px;
    letter-spacing: 0.1em;
    text-shadow: #fff 1px 1px 1px, #fff -1px 0px 1px, #fff 0px -1px 1px, #fff 0px 1px 1px, #fff 1px 1px 1px, #fff -1px 1px 1px, #fff 1px -1px 1px, #fff -1px -1px 1px, #fff 1px 1px 1px, #fff -1px 1px 1px, #fff 1px -1px 1px, #fff -1px -1px 1px, #fff 1px 1px 1px, #fff -1px 1px 1px, #fff 1px -1px 1px, #fff -1px -1px 1px;
}

.key_title:before {
    content: "eating and swallowing rehabilitation";
    position: absolute;
    left: 0;
    bottom: 0;
    display: inline-block;
    font-size: 17px;
    font-weight: 700;
    text-shadow: #fff 1px 1px 1px, #fff -1px 0px 1px, #fff 0px -1px 1px, #fff 0px 1px 1px, #fff 1px 1px 1px, #fff -1px 1px 1px, #fff 1px -1px 1px, #fff -1px -1px 1px, #fff 1px 1px 1px, #fff -1px 1px 1px, #fff 1px -1px 1px, #fff -1px -1px 1px, #fff 1px 1px 1px, #fff -1px 1px 1px, #fff 1px -1px 1px, #fff -1px -1px 1px;
}

.key_title .small {
    display: block;
    font-size: 17px;
}

/* =====sec01===== */
.sec01 {
    padding: 65px 0 0;
}

.sec01 .sec_title {
    margin: 0 0 50px;
    letter-spacing: 0.14em;
}

.sec01 .sec_title .color {
    color: #00b9ef;
    font-weight: 700;
}

.sec01 .cont01 {
    padding: 0 0 60px;
    text-align: center;
}

.sec01 .cont01 .cont_head {
    width: 100%;
    padding: 55px 0;
    margin: 0 0 42px;
    background: rgba(0, 185, 239, 0.12);
    text-align: center;
}

.sec01 .cont01 .cont_title {
    position: relative;
    display: inline-block;
    padding: 0 112px 0 92px;
    font-size: 18px;
    font-weight: 700;
}

.sec01 .cont01 .cont_title .large {
    font-size: 20px;
    font-weight: 700;
}

.sec01 .cont01 .cont_title:before {
    content: "";
    position: absolute;
    left: 0;
    top: -15px;
    display: inline-block;
    width: 52px;
    height: 67px;
    background: url(../img/eatswallow/icon02.png) center center/52px no-repeat;
}

.sec01 .cont01 .cont_title:after {
    content: "";
    position: absolute;
    right: 0;
    top: -5px;
    display: inline-block;
    width: 79px;
    height: 54px;
    background: url(../img/eatswallow/icon03.png) center center/79px no-repeat;
}

.sec01 .cont01 .list {
    display: flex;
    justify-content: center;
    margin: 0 0 50px;
}

.sec01 .cont01 .item {
    width: 140px;
    height: 140px;
    padding: 30px 0 0;
    border: 3px solid #73caf3;
    margin: 0 30px 0 0;
    box-sizing: border-box;
    border-radius: 14px;
    font-weight: 700;
    text-align: center;
    line-height: 2;
}

.sec01 .cont01 .item .large {
    font-size: 18px;
    font-weight: 700;
}

.sec01 .cont01 .item:last-of-type {
    margin: 0;
}

.sec01 .cont01 .text {
    text-align: center;
    line-height: 2;
}

.sec01 .cont01 .text .large {
    font-size: 18px;
    font-weight: 700;
}

.sec01 .cont01 .marker {
    display: inline-block;
    margin: 33px 0;
    background: linear-gradient(to bottom, transparent 60%, rgba(255, 241, 0, 0.48) 0);
    font-size: 22px;
    font-weight: 700;
    text-align: center;
}

.sec01 .cont01 .text02 {
    width: 580px;
    margin: 0 auto 50px;
    text-align: left;
    line-height: 2;
}

.sec01 .cont01 .symptoms {
    position: relative;
    width: 662px;
    height: 405px;
    margin: 0 auto;
    background: url(../img/eatswallow/icon04.png) center bottom/206px no-repeat;
}

.sec01 .cont01 .symptom {
    position: absolute;
    width: 191px;
    height: 185px;
    border-radius: 50%;
    background: rgba(0, 185, 239, 0.68);
    box-sizing: border-box;
    font-size: 18px;
    color: #fff;
    text-align: center;
}

.sec01 .cont01 .symptom:before {
    position: absolute;
    top: 16px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    font-size: 35px;
}

.sec01 .cont01 .symptom:nth-of-type(1) {
    left: 48px;
    top: 0;
    padding: 80px 0 0;
}

.sec01 .cont01 .symptom:nth-of-type(1):before {
    content: "01";
}

.sec01 .cont01 .symptom:nth-of-type(2) {
    right: 48px;
    top: 0;
    padding: 70px 0 0;
}

.sec01 .cont01 .symptom:nth-of-type(2):before {
    content: "02";
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    font-size: 35px;
}

.sec01 .cont01 .symptom:nth-of-type(3) {
    bottom: 0;
    left: 0;
    padding: 70px 0 0;
}

.sec01 .cont01 .symptom:nth-of-type(3):before {
    content: "03";
}

.sec01 .cont01 .symptom:nth-of-type(4) {
    bottom: 0;
    right: 0;
    padding: 70px 0 0;
}

.sec01 .cont01 .symptom:nth-of-type(4):before {
    content: "04";
}

.sec01 .cont02 {
    width: 100%;
    padding: 50px 0;
    background: rgba(0, 185, 239, 0.12);
}

.sec01 .cont02 .box {
    width: 850px;
    margin: 0 auto;
    padding: 80px 80px 50px;
    background: rgba(255, 255, 255, 0.9) url(../img/eatswallow/icon05.png) center top 28px/96px no-repeat;
    box-sizing: border-box;
}

.sec01 .cont02 .cont_title {
    width: 430px;
    padding: 0 0 15px;
    border-bottom: 2px solid #00b9ef;
    margin: 0 auto 27px;
    font-size: 20px;
    font-weight: 700;
    text-align: center;
}

.sec01 .cont02 .box .text {
    margin: 0 0 60px;
    line-height: 2;
}

.sec01 .cont02 .box .text .large {
    font-size: 18px;
    font-weight: 700;
}

.sec01 .cont02 .box .text02 {
    font-size: 18px;
    font-weight: 700;
    line-height: 2;
    text-align: center;
}

.sec01 .cont02 .box .text02 .marker {
    padding: 0 0 5px;
    background: linear-gradient(to bottom, transparent 50%, rgba(255, 241, 0, 0.48) 0);
    font-weight: 700;
}

/* =====sec02===== */
.sec02 {
    padding: 155px 0 95px;
    background: url(../img/maintenance/icon04.png) center top 70px/62px no-repeat;
}

.sec02 .sec_title {
    margin: 0 0 40px;
    line-height: 1.8;
}

.sec02 .cont01 {
    margin: 0 0 65px;
}

.sec02 .cont01 .cont_title {
    width: 750px;
    padding: 0 0 15px;
    border-bottom: 2px solid #00b9ef;
    margin: 0 auto 20px;
    font-size: 23px;
    font-weight: 700;
    text-align: center;
}

.sec02 .cont01 .lead_text {
    width: 750px;
    padding: 15px 0 15px 123px;
    border: 1px solid #aaabab;
    margin: 0 auto 58px;
    background: rgba(255, 241, 0, 0.35) url(../img/eatswallow/icon06.png) center left 62px/36px no-repeat;
    box-sizing: border-box;
    font-weight: 700;
}

.sec02 .cont01 .flow_list {
    width: 850px;
    margin: 0 auto;
}

.sec02 .cont01 .flow_item {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin: 0 0 90px;
}

.sec02 .cont01 .flow_item:last-of-type {
    margin: 0;
}

.sec02 .cont01 .item_title {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 151px;
    height: 151px;
    border: 2.5px dashed #00b9ef;
    border-radius: 50%;
    font-size: 18px;
    font-weight: 700;
    text-align: center;
    line-height: 2;
}

.sec02 .cont01 .flow_item:nth-of-type(1) .item_title:before {
    content: "";
    position: absolute;
    bottom: -194px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    width: 2px;
    height: 191px;
    background: #00b9ef;
}

.sec02 .cont01 .flow_item:nth-of-type(2) .item_title:before {
    content: "";
    position: absolute;
    bottom: -381px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    width: 2px;
    height: 378px;
    background: #00b9ef;
}

.sec02 .cont01 .box {
    position: relative;
    width: 650px;
    padding: 40px;
    border-radius: 50px 0 0 0;
    background: rgba(0, 185, 239, 0.12);
    box-sizing: border-box;
}

.sec02 .cont01 .flow_item:nth-of-type(1) .box{
    background: rgba(0, 185, 239, 0.12) url(../img/eatswallow/icon07.png) bottom 30px right 30px/75px no-repeat;
}

.sec02 .cont01 .flow_item:nth-of-type(1) .box:before,
.sec02 .cont01 .flow_item:nth-of-type(2) .box:before {
    content: "";
    position: absolute;
    bottom: -62px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    width: 34px;
    height: 36px;
    background: url(../img/eatswallow/arrow01.png) center center/34px no-repeat;
}

.sec02 .cont01 .flow_item:nth-of-type(2) .box{
    background: rgba(0, 185, 239, 0.12) url(../img/eatswallow/icon08.png) top 54px right 40px/83px no-repeat;
}

.sec02 .cont01 .flow_item:nth-of-type(3) {
    position: relative;
}

.sec02 .cont01 .flow_item:nth-of-type(3) .box_text02 {
    position: absolute;
    top: 20px;
    right: 25px;
    padding: 0 0 106px;
    background: url(../img/eatswallow/icon09.png) center bottom/74px no-repeat;
    font-size: 18px;
    font-weight: 700;
    color: #00b9ef;
}

.sec02 .cont01 .box_title {
    margin: 0 0 22px;
    font-size: 18px;
    font-weight: 700;
}

.sec02 .cont01 .box_item {
    position: relative;
    padding: 0 0 0 1.2em;
    line-height: 2;
}

.sec02 .cont01 .box_item:after {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    font-size: 16px;
}

.sec02 .cont01 .box_item:nth-of-type(1):after {
    content: "①";
}

.sec02 .cont01 .box_item:nth-of-type(2):after {
    content: "②";
}

.sec02 .cont01 .box_item:nth-of-type(3):after {
    content: "③";
}

.sec02 .cont01 .flow_item:nth-of-type(2) .box_title {
    margin: 0 0 15px;
}

.sec02 .cont01 .term {
    font-weight: 700;
    color: #00b9ef;
    text-indent: 1em;
}

.sec02 .cont01 .data {
    margin: 0 0 10px;
    padding: 0 0 0 2em;
}

.sec02 .cont01 .flow_item:nth-of-type(2) .box_text {
    padding: 0 0 0 2em;
}

.sec02 .cont01 .flow_item:nth-of-type(3) .box_text {
    line-height: 2;
}

.sec02 .cont01 .flow_item:nth-of-type(3) .box_text .marker {
    padding: 0 0 5px;
    background: linear-gradient(to bottom, transparent 60%, rgba(255, 241, 0, 0.48) 0);
}

.sec02 .cont02 {
    width: 860px;
    padding: 64px 74px;
    margin: 0 auto;
    border: 1px solid #00b9ef;
    border-radius: 10px;
    box-sizing: border-box;
}

.sec02 .cont02 .cont_title {
    padding: 0 0 25px;
    border-bottom: 2.5px dashed #00b9ef;
    margin: 0 0 50px;
    font-size: 23px;
    font-weight: 700;
    letter-spacing: 0.13em;
    text-align: center;
}

.sec02 .cont02 .systembox {
    position: relative;
    width: 588px;
    height: 332px;
    margin: 0 auto 44px;
    background: url(../img/eatswallow/arrow02.png) center bottom 36px/385px no-repeat;
}

.sec02 .cont02 .system_item {
    position: absolute;
    width: 162px;
    height: 157px;
    border-radius: 50%;
    box-sizing: border-box;
    font-size: 17px;
    font-weight: 500;
    color: #fff;
    text-align: center;
}

.sec02 .cont02 .system_item:nth-of-type(1) {
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    padding: 90px 0 0;
    background: #00b9ef url(../img/eatswallow/icon10.png) center top 30px/41px no-repeat;
}

.sec02 .cont02 .system_item:nth-of-type(2) {
    bottom: 0;
    right: 0;
    padding: 80px 0 0;
    background: #00b9ef url(../img/eatswallow/icon11.png) center top 18px/39px no-repeat;
}

.sec02 .cont02 .system_item:nth-of-type(3) {
    bottom: 0;
    left: 0;
    padding: 70px 0 0;
    background: #00b9ef url(../img/eatswallow/icon12.png) center top 17px/39px no-repeat;
}

.sec02 .cont02 .system_text {
    padding: 175px 0 0;
    font-size: 18px;
    font-weight: 700;
    color: #00b9ef;
    line-height: 1.8;
    text-align: center;
}

.sec02 .cont02 .system_text .marker {
    padding: 0 0 5px;
    background: linear-gradient(to bottom, transparent 60%, rgba(255, 241, 0, 0.48) 0);
    font-weight: 700;
}

.sec02 .cont02 .box {
    position: relative;
    width: 680px;
    padding: 60px 0 30px;
    border: 2px solid #00a8ea;
    margin: 0 auto 50px;
}

.sec02 .cont02 .box_title {
    position: absolute;
    top: -20px;
    left: 0;
    right: 0;
    width: 430px;
    margin: 0 auto;
    background: #fff;
    font-size: 18px;
    font-weight: 700;
    text-align: center;
}

.sec02 .cont02 .box_list {
    width: 490px;
    margin: 0 auto;
}

.sec02 .cont02 .box_item {
    position: relative;
    padding: 0 0 0 40px;
    background-size: 8px 2px;
    background-image: linear-gradient(to right, #4c4b4c, #4c4b4c 4px, transparent 4px, transparent 8px);
    background-repeat: repeat-x;
    background-position: bottom;
    font-size: 17px;
    font-weight: 500;
    line-height: 2.5;
}

.sec02 .cont02 .box_item:before {
    content: "";
    position: absolute;
    left: 0;
    top: 10px;
    display: inline-block;
    width: 27px;
    height: 18px;
    background: url(../img/index/list01.png) center center/27px no-repeat;
}

.sec02 .cont02 .cont_text {
    font-size: 18px;
    font-weight: 700;
    line-height: 3;
    text-align: center;
}

.sec02 .cont02 .cont_text .border {
    padding: 0 0 17px;
    background: url(../img/eatswallow/border01.png) bottom left repeat-x;
    font-weight: 700;
}

/* =====sec03===== */
.sec03 {
    width: 100%;
    padding: 70px 20px;
    background: url(../img/eatswallow/photo01.png) top right/411px no-repeat;
    box-sizing: border-box;
}

.sec03 .inner {
    width: 940px;
    max-width: 100%;
    margin: 0 auto;
}

.sec03 .text {
    line-height: 2;
}

.sec03 .text .marker {
    background: linear-gradient(to bottom, transparent 60%, rgba(255, 241, 0, 0.48) 0);
}