@charset "utf-8";

@media screen and (max-width: 768px) {

/* =====key===== */
.key {
    position: relative;
    width: 100%;
    height: 464px;
    padding: 78px 0 0;
    margin: 0 auto;
}

.key_cont {
    position: relative;
    width: 100%;
    height: 464px;
    margin: 0 auto;
}

.key_cont .item {
    position: absolute;
    width: 100%;
}

.key_cont .item .text {
    position: absolute;
    display: inline-block;
    top: 0;
    bottom: 0;
    margin: auto 0;
    font-size: 24px;
    letter-spacing: 0.1em;
    line-height: 1.8;
    writing-mode: vertical-rl;
}

.key_cont .item:nth-of-type(1) .text {
    height: 400px;
    right: 50px;
}

.key_cont .item:nth-of-type(1) .text .left {
    display: block;
    margin: 0 1em 0 0;
}

.key_cont .item:nth-of-type(2) .text {
    height: 350px;
    right: 50px;
}

.key .image img {
    width: 100%;
    height: 464px;
    object-fit: cover;
    border-radius: 0;
}

.slide_button{
    position: absolute;
    right: 50%;
    bottom: -20px;
    transform: translateX(50%);
	text-align:center;
}

.slide_button ul {
    display: flex;
}

.slide_button ul li {
    margin: 0 13px 0 0;
}

.slide_button ul li:last-child {
    margin: 0;
}

.slide_button ul li a{
	text-indent:-9999px;
	text-decoration:none;
	display:block;
	width:14px;
    height:14px;
    border: 1px solid #00b9ef;
    border-radius:7px;
    box-sizing: border-box;
}

.slide_button ul li a.target{
	background:#00b9ef;
}

/* =====banner===== */
.banner {
    padding: 50px 20px;
    box-sizing: border-box;
}

.banner .image {
    text-align: center;
}

/* add_sec */
.add_sec {
    padding: 0 20px;
    margin-bottom: 50px;
}

.add_sec .flexbox {
    display: block;
}

.add_head {
    margin-bottom: 20px;
    font-size: 18px;
    font-weight: 600;
    text-align: center;
}

.glow_image {
    margin-right: 0;
    margin-bottom: 20px;
}

.add_sec .glow_text {
    width: 500px;
    max-width: 100%;
    margin: 0 auto;
    line-height: 2;
    text-align: justify;
}

/* =====sec01===== */
.sec01 {
    width: 100%;
    padding: 0 20px;
    margin: 0 auto 40px;
    box-sizing: border-box;
}

.sec01 .cont01 {
    display: block;
    justify-content: space-between;
    margin: 0 0 50px;
}

.sec01 .cont01 .left {
    width: 403px;
    max-width: 100%;
    margin: 0 auto 30px;
}

.sec01 .cont01 .left_head {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 0 6px;
}

.sec01 .cont01 .left_head .logo {
    margin: 0 15px 0 0;
}

.sec01 .cont01 .left_head .address {
    font-weight: 400;
    letter-spacing: 0.15em;
}

.sec01 .cont01 .left .text {
    margin: 0 0 5px;
    text-align: center;
    letter-spacing: 0.06em;
}

.sec01 .cont01 .table {
    width: 100%;
    margin: 0 0 5px;
}

.sec01 .cont01 .table .row {
    height: 53px;
}

.sec01 .cont01 .thead {
    background: #00B9EF;
}

.sec01 .cont01 .tbody {
    background: rgba(0, 185, 239, 0.05);
}

.sec01 .cont01 .table .time {
    width: 130px;
    vertical-align: middle;
}

.sec01 .cont01 .thead {
    font-size: 18px;
    color: #fff;
}

.sec01 .cont01 .thead .time {
    letter-spacing: 0.05em;
}

.sec01 .cont01 .table .youbi {
    vertical-align: middle;
}

.sec01 .cont01 .table .data {
    vertical-align: middle;
    text-align: center;
}

.sec01 .cont01 .holiday {
    text-align: center;
    letter-spacing: 0.05em;
}

.sec01 .cont01 .holiday .space {
    display: block;
    padding: 0 0 0 1em;
}

.sec01 .cont01 .right {
    width: 372px;
    max-width: 100%;
    margin: 0 auto;
}

.sec01 .cont01 .right .text {
    padding: 0 0 5px;
    border-bottom: 2px solid #00B9EF;
    font-size: 22px;
    font-weight: 500;

    text-align: center;
}

.sec01 .cont01 .right .phone {
    position: relative;
    padding: 5px 0 5px 85px;
    margin: 0 0 20px;
    background: url(../img/index/phone_icon01.png) left 50px top 12px/26px no-repeat;
    font-size: 22px;
}

.sec01 .cont01 .right .phone a {
    font-weight: 500;
    color: #00B9EF;
}

.sec01 .cont01 .right .phone:before {
    content: "";
    position: absolute;
    top: 15px;
    right: 0;
    display: inline-block;
    width: 73px;
    height: 2px;
    background: #00B9EF;
}

.sec01 .cont01 .right .link {
    width: 372px;
    max-width: 100%;
    height: 100px;
    margin: 0 0 15px;
    box-shadow: 2px 2px 2px rgba(35, 24, 21, 0.75);
}

.sec01 .cont01 .right .link a {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    padding: 0 0 0 30px;
    box-sizing: border-box;
    background: rgba(0, 185, 239, 0.33) url(../img/index/icon25.png) bottom 7px left 10px/50px no-repeat;
    font-size: 17px;
    text-align: center;
}

.sec01 .cont01 .right .link a .arrow {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 22px;
    display: inline-block;
    width: 35px;
    height: 35px;
    margin: auto;
    background: url(../img/index/arrow01.png) center center/35px no-repeat;
}

.sec01 .cont01 .right .text02 {
    position: relative;
    font-size: 16px;
    font-weight: 500;
    text-align: center;
}

.sec01 .cont01 .right .text02:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 20px;
    transform: translateY(-50%);
    display: inline-block;
    width: 41px;
    height: 44px;
    background: url(../img/index/icon26.png) center center/41px no-repeat;
}

.sec01 .cont01 .right .text02:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    display: inline-block;
    width: 32px;
    height: 45px;
    background: url(../img/index/icon27.png) center center/32px no-repeat;
}

.sec01 .cont02 a {
    display: block;
    justify-content: space-between;
    width: 412px;
    max-width: 100%;
    height: auto;
    border: 2px solid #00B9EF;
    margin: 0 auto;
    box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5);
}


.sec01 .cont02 a:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: inline-block;
    width: 50px;
    height: 50px;
    background: url(../img/index/arrow01.png) center center/50px no-repeat;
}

.sec01 .cont02 .left {
    width: 415px;
    max-width: 100%;
    padding: 20px 0 0;
    border: none;
    margin: 0 auto 30px;
    box-sizing: border-box;
}

.sec01 .cont02 .left .title {
    width: 85%;
    margin: 0 auto 20px;
    background: linear-gradient(to bottom, transparent 70%, rgba(255, 241, 0, 0.35) 0);
    font-size: 20px;
    font-weight: 500;
    color: #00B9EF;
    letter-spacing: 0.05em;
    text-align: center;
}

.sec01 .cont02 .left .text {
    width: 100%;
    text-align: center;
    line-height: 1.8;
}

.sec01 .cont02 .right {
    width: 415px;
    max-width: 100%;
    margin: 0 auto;
    z-index: -1;
}

.sec01 .cont02 .right .list {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    height: 100%;
    background: #5EC5F2 url(../img/index/border02.png) center center no-repeat;
}

.sec01 .cont02 .right .list .item {
    width: 50%;
    padding: 70px 0 10px;
    font-size: 15px;
    color: #fff;
    letter-spacing: 0.05em;
    text-align: center;
    line-height: 1.2;
}

.sec01 .cont02 .right .list .item:nth-of-type(1) {
    background: url(../img/index/icon01.png) top 16px center/57px no-repeat;
}

.sec01 .cont02 .right .list .item:nth-of-type(2) {
    background: url(../img/index/icon02.png) top 13px center/49px no-repeat;
}

.sec01 .cont02 .right .list .item:nth-of-type(3) {
    background: url(../img/index/icon03.png) top 17px center/100px no-repeat;
}

.sec01 .cont02 .right .list .item:nth-of-type(4) {
    padding: 85px 0 0;
    background: url(../img/index/icon04.png) top 20px center/56px no-repeat;
}

/* =====sec02===== */
.sec02 {
    position: relative;
    display: flex;
    flex-direction: column-reverse;
    width: 100%;
    height: auto;
    padding: 0 20px;
    margin: 0 0 70px;
    box-sizing: border-box;
}

.sec02 .inner {
    width: 100%;
    padding: 50px 0 0;
    box-sizing: border-box;
    margin: 0 auto;
    background: url(../img/index/text01.png) top 10px left/320px no-repeat;
}

.sec02 .title {
    margin: 0 0 20px;
    font-size: 20px;
    font-weight: 500;
    color: #101010;
}

.sec02 .text {
    margin: 0 0 40px;
    width: 510px;
    max-width: 100%;
    font-size: 16px;
    line-height: 2;
}

.sec02 .text .marker {
    background: linear-gradient(to bottom, transparent 80%, rgba(255, 241, 0, 0.35) 0);
}

.sec02 .btn {
    width: 273px;
    height: 47px;
    border: 2px solid #00B9EF;
    border-radius: 24px;
    margin: 0 auto;
    box-sizing: border-box;
}

.sec02 .btn a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 7px 0 0 60px;
    box-sizing: border-box;
    border-radius: 24px;
    background: url(../img/index/arrow02.png) center right 54px/39px no-repeat;
    font-size: 18px;
}

.sec02 .image {
    position: static;
    top: 33px;
    right: 0;
    width: 100%;
    height: 250px;
    text-align: center;
}

.sec02 .image img {
    object-fit: cover;
    height: 100%;
}

.sec02 .greeting {
    position: static;
    top: 0;
    right: 40px;
    width: 80%;
    height: auto;
    padding: 5px 0;
    border: 2px solid #00b9ef;
    border-radius: 10px;
    margin: 0 auto 10px;
    background: #fff;
}

.sec02 .greeting .g_text {
    display: inline-block;
    width: 100%;
    padding: 5px 0 0;
    margin: 0;
    font-size: 18px;
    color: #5EC5F2;
    letter-spacing: 0.13em;
    writing-mode: horizontal-tb;
    text-align: center;
}

.sec02 .greeting .g_text .right {
    padding: 7px 0 0;
}

.sec02 .greeting .g_text .marker {
    padding: 0;
    background: rgba(255, 241, 0, 0.43);
}

/* ====secyoutube===== */
.secyoutube {
    width: 100%;
    height: auto;
    padding: 20px 20px;
    box-sizing: border-box;
}
.secyoutube .youtube {
    display: block;
    margin: 0 auto;
    width: 85%;
}

.secyoutube .inner_youtube {
    width: 100%;
    padding: 50px 0 0;
    box-sizing: border-box;
    margin: 0 auto;
    background: url(../img/index/text03.png) top 18px right/263px no-repeat;
}

.secyoutube .inner_youtube .youtube_list {
    width: 100%;
}

.secyoutube .title {
    margin: 0 0 20px;
    font-size: 20px;
    font-weight: 500;
    color: #101010;
}

.secyoutube .inner_youtube .add_video {
    padding-bottom: 40px;
    padding-right: 0;
    display: block;
}
.secyoutube .inner_youtube .add_video p:last-child {
    padding-bottom: 50px;

}

.secyoutube .add_video .add_video_ttl {
    padding-right: 0;
}

.secyoutube .add_video .add_video_ttl img {
    padding-top: 15px;
    width: 300px;
    height: 300px;
}

.secyoutube .inner_youtube .add_video p {
    padding-top: 15px;
}





/* ====sec03===== */
.sec03 {
    width: 100%;
    padding: 50px 20px 100px;
    box-sizing: border-box;
    background: rgba(0, 185, 239, 0.38);
}

.sec03_head {
    width: 100%;
    height: auto;
    margin: 0 auto 20px;
}

.sec03 .title {
    background: none;
    font-size: 20px;
    text-align: center;
}

.sec03 .title .lower {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 0 0 0 37px;
}

.sec03 .title .span01 {
    position: relative;
    display: inline-block;
    width: 131px;
    height: 63px;
    padding: 5px 0 0 25px;
    margin: 0 37px 0 0;
    box-sizing: border-box;
    font-size: 18px;
    font-weight: 500;
    transform: rotate(-20deg);
}

.sec03 .title .span01:before {
    content: "";
    position: absolute;
    top: -10px;
    left: 0;
    display: inline-block;
    width: 141px;
    height: 63px;
    transform: rotate(20deg);
    background: url(../img/index/fukidashi04.png) top left/cover no-repeat;
}

.sec03 .title .span02 {
    font-weight: 500;
}

.sec03 .title .span03 {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 123px;
    height: 122px;
    margin: 0 0 20px 0;
    background: url(../img/index/fukidashi03.png) no-repeat;
    font-weight: 500;
    text-align: center;
}

.sec03 .title .span04 {
    position: relative;
    display: block;
    justify-content: center;
    align-items: center;
    width: 157px;
    height: 118px;
    padding: 37px 55px 0 0;
    margin: 0 0 0;
    background: url(../img/index/fukidashi02.png) no-repeat;
    box-sizing: border-box;
    font-weight: 500;
    text-align: center;
}

.sec03 .title .span04:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0; 
    display: inline-block;
    width: 45px;
    height: 43px;
}

.sec03 .title .span05 {
    width: 100%;
    padding: 0;
}

.sec03_body {
    position: relative;
    width: 100%;
    margin: 0 auto;
}

.sec03 .list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    width: 100%;
    margin: 0 auto;
}

.sec03 .item {
    display: flex;
    flex-direction: column;
    width: 281px;
    height: 371px;
    padding: 20px;
    margin: 0 10px 20px;
    box-sizing: border-box;
    background: #fff;
}

.sec03 .item:nth-child(3n) {
    margin: 0 10px 20px;
}

.sec03 .item_title {
    padding: 0 0 75px;
    font-size: 17px;
    color: #00b9ef;
    font-weight: 500;
    text-align: center;
}

.sec03 .item_title .marker {
    display: inline;
    padding: 0 2px 5px;
    background: linear-gradient(to bottom, transparent 30%, rgba(255, 241, 0, 0.48) 0);
}

.sec03 .item_title .large {
    font-size: 20px;
    font-weight: 500;
}

.sec03 .item_title .kerning {
    letter-spacing: -0.1em;
}

.sec03 .item:nth-of-type(1) .item_title {
    background: url(../img/index/icon28.png) center bottom 10px/77px no-repeat;
}

.sec03 .item:nth-of-type(2) .item_title {
    background: url(../img/index/icon29.png) center bottom 10px/33px no-repeat;
}

.sec03 .item:nth-of-type(3) .item_title {
    background: url(../img/index/icon30.png) center bottom 5px/34px no-repeat;
}

.sec03 .item:nth-of-type(4) .item_title {
    background: url(../img/index/icon31.png) left 105px bottom 10px/59px no-repeat;
}

.sec03 .item:nth-of-type(5) .item_title {
    background: url(../img/index/icon32.png) center bottom 10px/78px no-repeat;
}

.sec03 .item:nth-of-type(6) .item_title {
    background: url(../img/index/icon33.png) center bottom 10px/40px no-repeat;
}

.sec03 .item:nth-of-type(7) .item_title {
    background: url(../img/index/icon34.png) center bottom /76px no-repeat;
}

.sec03 .item:nth-of-type(8) .item_title {
    background: url(../img/index/icon35.png) left 65% bottom 10px/107px no-repeat;
}

.sec03 .item:nth-of-type(9) .item_title {
    background: url(../img/index/icon36.png) center bottom 10px/89px no-repeat;
}

.sec03 .item:nth-of-type(10) .item_title {
    background: url(../img/index/icon37.png) center bottom 10px/89px no-repeat;
}

.sec03 .item_text .bold {
    font-weight: 700;
}

.sec03 .item .link_box {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: auto 0 0;
}

.sec03 .item .link {
    width: 115px;
    height: 40px;
    background: #fff;
}

.sec03 .item .link:nth-of-type(1) {
    margin: auto 9px 0 0;
}

.sec03 .item .link:nth-of-type(3) {
    margin: 9px 0 0;
}

.sec03 .item .link a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0 0 0 10px;
    box-sizing: border-box;
    background: #00b9ef url(../img/index/arrow05.png) center right 5px/11px no-repeat;
    font-size: 15px;
    color: #fff;
    line-height: 40px;
}

.sec03 .item:nth-of-type(4) .link:nth-of-type(2) {
    text-align: center;
}

.sec03 .item:nth-of-type(4) .link:nth-of-type(2) a {
    padding: 2px 10px 0 0;
    font-size: 14px;
    line-height: 1.2;
}

.sec03 .circle_box {
    position: relative;
    bottom: 0;
    right: 0;
    width: 450px;
    max-width: 100%;
    height: 366px;
    margin: 0 auto;
}

.sec03 .circle_text {
    position: relative;
    z-index: 3;
    width: 271px;
    height: 271px;
    padding: 60px 0 0;
    border: 1.5px dashed #00b9ef;
    border-radius: 50%;
    box-sizing: border-box;
    background: #fff;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.7;
    text-align: center;
}

.sec03 .circle_back {
    content: "";
    position: absolute;
    z-index: 1;
    top: 11px;
    left: 20px;
    display: block;
    width: 271px;
    height: 271px;
    background: url(../img/index/bg02.png) center center/271px no-repeat;
}

.sec03 .circle_text .color {
    color: #00b9ef;
    font-weight: 500;
    text-align: center;
}

.sec03 .circle_image {
    position: absolute;
    bottom: -60px;
    right: 0;
    z-index: 2;
}

/* =====sec04===== */
.sec04_head {
    padding: 33px 20px 56px;
    box-sizing: border-box;
    text-align: center;
}

.sec04 .cont01,
.sec04 .cont02,
.sec04 .cont03,
.sec04 .cont04,
.sec04 .cont05,
.sec04 .cont06,
.sec04 .cont07 {
    height: auto;
    padding: 40px 20px;
    box-sizing: border-box;
}

.sec04 .cont01 {
    background: url(../img/index/top_key02.jpg) center center/cover no-repeat;
}

.sec04 .cont02 {
    background: url(../img/index/photo03.jpg) right 40% center/cover no-repeat;
}

.sec04 .cont03 {
    background: url(../img/index/photo04.jpg) left 30% center/cover no-repeat;
}

.sec04 .cont04 {
    height: auto;
    background: url(../img/index/photo05.jpg) center center/cover no-repeat;
}

.sec04 .cont05 {
    background: url(../img/index/photo06.jpg) left 60% center/cover no-repeat;
}

.sec04 .cont06 {
    background: url(../img/index/photo07.jpg) center left 35%/cover no-repeat;
}

.sec04 .cont07 {
    background: url(../img/index/photo08.jpg) center center/cover no-repeat;
}

.sec04 .inner {
    position: relative;
    width: 100%;
    height: 100%;
    margin: 0 auto;
}

.sec04 .box {
    position: static;
    top: 50%;
    transform: none;
    width: 70%;
    padding: 80px 20px 20px;
    box-sizing: border-box;
}

.sec04 .cont01 .box {
    right: 0;
    margin: 0 0 0 auto;
    background: #fff url(../img/index/num01.png) center top 25px/50px no-repeat;
}

.sec04 .cont02 .box {
    left: 0;
    background: #fff url(../img/index/num02.png) center top 25px/50px no-repeat;
}

.sec04 .cont03 .box {
    right: 0;
    padding-right: 0;
    padding-left: 0;
    margin: 0 0 0 auto;
    background: #fff url(../img/index/num03.png) center top 25px/50px no-repeat;
}

.sec04 .cont03 .box .box_title {
    padding-right: 20px;
    padding-left: 20px;
}

.sec04 .cont03 .box .box_text {
    padding-right: 20px;
    padding-left: 20px;
}

.sec04 .cont04 .box {
    left: 0;
    padding: 100px 20px 64px;
    background: #fff url(../img/index/num04.png) center top 25px/50px no-repeat;
}

.sec04 .cont05 .box {
    right: 0;
    margin: 0 0 0 auto;
    background: #fff url(../img/index/num05.png) center top 25px/50px no-repeat;
}

.sec04 .cont06 .box {
    left: 0;
    background: #fff url(../img/index/num06.png) center top 25px/50px no-repeat;
}

.sec04 .cont07 .box {
    right: 0;
    margin: 0 0 0 auto;
    background: #fff url(../img/index/num07.png) center top 25px/50px no-repeat;
}

.sec04 .box_title {
    margin: 0 0 25px;
    text-align: center;
}

.sec04 .box_title .lead {
    display: block;
    margin: 0 0 20px;
}

.sec04 .box_title .marker {
    display: inline;
    background: linear-gradient(to bottom, transparent 80%, rgba(255, 241, 0, 0.48) 0) ;
    font-size: 18px;
    color: #00B9EF;
}

.sec04 .box_title .marker:first-child {
    margin: 20px 0 0;
}

.sec04 .box_text {
    margin: 0 0 25px;
    font-size: 15px;
    line-height: 1.8;
}

.sec04 .box .btn {
    width: 100%;
    height: 100%;
    border: 2px solid #00B9EF;
    border-radius: 29px;
}

.sec04 .box .btn a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 5px 20px 5px 0;
    background: url(../img/index/arrow02.png) center right 15px/20px no-repeat;
    box-sizing: border-box;
    border-radius: 29px;
    font-size: 16px;
    line-height: 1.2;
    text-align: center;
}

.sec04 .cont04 .marker.sp {
    display: inline-block;
    background: linear-gradient(to bottom, transparent 80%, rgba(255, 241, 0, 0.48) 0) ;
}

.sec04 .cont04 .box .btn {
    width: 100%;
}

.sec04 .cont03 .circle {
    display: none;
}

.sec04 .circle_title {
    position: absolute;
    left: 120px;
    top: 50%;
    transform: translateY(-50%);
    width: 258px;
    height: 253px;
    border-radius: 50%;
    background: url(../img/index/border03.png) center center/258px no-repeat;
    text-align: center;
    font-size: 30px;
    line-height: 253px;
}

.sec04 .circle .list {
    width: 425px;
    height: 541px;
    position: relative;
}

.sec04 .circle .item {
    position: absolute;
    width: 133px;
    height: 133px;
    background: #00B9EF;
    box-sizing: border-box;
    border-radius: 50%;
    color: #fff;
    text-align: center;
}

.sec04 .circle .item:before {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

.sec04 .circle .item:nth-of-type(1) {
    top: 70px;
    left: 186.5px;
    padding: 70px 0 0;
}

.sec04 .circle .item:nth-of-type(1):before {
    top: -15px;
    width: 70px;
    height: 79px;
    background: url(../img/index/icon08.png) center center/cover no-repeat;
}

.sec04 .circle .item:nth-of-type(2) {
    top: 50%;
    transform: translateY(-50%);
    right: -30px;
    padding: 70px 0 0;
}

.sec04 .circle .item:nth-of-type(2):before {
    top: -15px;
    width: 70px;
    height: 63px;
    background: url(../img/index/icon05.png) center center/cover no-repeat;
}

.sec04 .circle .item:nth-of-type(3) {
    bottom: 60px;
    left: 186.5px;
    padding: 60px 0 0;
}

.sec04 .circle .item:nth-of-type(3):before {
    top: 11px;
    width: 80px;
    height: 42px;
    background: url(../img/index/icon07.png) center center/cover no-repeat;
}

.sec04 .circle .item:nth-of-type(4) {
    top: 50%;
    transform: translateY(-50%);
    left: 30px;
    padding: 55px 0 0;
}

.sec04 .circle .item:nth-of-type(4):before {
    top: -11px;
    width: 46px;
    height: 62px;
    background: url(../img/index/icon06.png) top  center/cover no-repeat;
}

/* =====sec05===== */
.sec05 {
    padding: 50px 20px;
    box-sizing: border-box;
}

.sec05 .title {
    width: 219px;
    padding: 0 0 8px;
    margin: 0 auto 60px;
    background: url(../img/index/border04.png) center bottom/219px no-repeat;
    font-size: 28px;
    text-align: center;
}

.sec05 .list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.sec05 .list:nth-of-type(1) {
    margin: 0 0 80px;
}

.sec05 .list:nth-of-type(2) {
    margin: 0 0 60px;
}

.sec05 .list .item {
    margin: 0 10px 30px;
}

.sec05 .list .item a:hover .icon {
    transform: none;
}

.sec05 .list .icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: rgba(0, 185, 239, 0.1);
}


.sec05 .item .text {
    padding: 10px 0 0;
    text-align: center;
}

.sec05 .item .text .small {
    font-size: 13px;
}

.sec05 .item:last-of-type .text {
    font-size: 14px;
}

.sec05 .subtitle {
    position: relative;
    width: 100%;
    margin: 0 auto 65px;
    font-size: 21px;
    text-align: center;
}

.sec05 .subtitle:before,
.sec05 .subtitle:after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: inline-block;
    height: 3px;
    background: #00B9EF;
}

.sec05 .subtitle:before {
    left: 0;
    width: 15%;
}

.sec05 .subtitle:after {
    right: 0;
    width: 15%;
}

/* =====sec06===== */
.sec06 {
    width: 100%;
    padding: 120px 20px;
    margin: 0 auto;
    background: url(../img/index/logo02.png) top center/181px no-repeat;
    box-sizing: border-box;
}

.sec06 .title {
    margin: 0 0 10px;
    font-size: 20px;
    text-align: center;
    color: #00b9ef;
}

.sec06 .list {
    width: 100%;
    margin: 0 auto;
}

.sec06 .b_article {
    padding: 15px;
    border-bottom: 1px dashed #231815;
}

.sec06 .b_article a {
    display: block;
}

.sec06 .b_article .date {
    margin: 0 127px 0 0;
}

.sec06 .b_article .blog_title {
    padding: 0 0 0 1em;
}

/* =====sec07===== */
.sec07 {
    width: 100%;
    padding: 50px 20px;
    background: rgba(0, 185, 239, 0.13);
    box-sizing: border-box;
}

.sec07 .title {
    width: 100%;
    padding: 0 0 50px;
    border-bottom: 3px solid #00B9EF;
    margin: 0 auto 30px;
    background: url(../img/index/icon21.png) bottom 0 right 10px/80px no-repeat;
    font-size: 20px;
    text-align: center;
}

.sec07 .text01 {
    margin: 0 0 30px;
    font-size: 18px;
    text-align: center;
}

.sec07 .text01 .marker {
    border-bottom: 5px solid rgba(255, 241, 0, 0.48);
    font-size: 20px;
    color: #00B9EF;
}

.sec07 .text02 {
    width: 100%;
    margin: 0 auto 42px;
    font-size: 16px;
    line-height: 2;
}

.sec07 .box {
    display: block;
    align-items: center;
    width: 100%;
    height: auto;
    padding: 30px 20px;
    box-sizing: border-box;
    background: url(../img/index/bg01.png) top right/cover no-repeat;
    margin: 0 auto 40px;
}

.sec07 .box_title {
    height: auto;
    padding: 0 0 20px;
    border-right: none;
    border-bottom: 1px solid #00B9EF;
    margin: 0 0 30px;
    font-size: 20px;
    color: #00B9EF;
    line-height: 1;
    text-align: center;
}

.sec07 .box .list {
    padding: 0;
}

.sec07 .box .item {
    position: relative;
    padding: 5px 0 5px 32px;
    font-size: 16px;
}

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

.sec07 .link {
    position: relative;
    width: 100%;
    height: auto;
    border-radius: 10px;
    margin: 0 auto;
}

.sec07 .link:before {
    content: "";
    position: absolute;
    left: 10px;
    top: auto;
    bottom: -5%;
    z-index: -1;
    display: inline-block;
    width: 100%;
    height: 100%;
    background: url(../img/index/border05.png) center center/100% no-repeat;
    background: none;
}

.sec07 .link a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    padding: 20px 20px 50px;
    border-radius: 10px;
    box-sizing: border-box;
    background: #00b9ef url(../img/index/icon22.png) left 16px bottom/50px no-repeat;
}

.sec07 .link a:before {
    content: "";
    position: absolute;
    bottom: 20px;
    right: 20px;
    display: inline-block;
    width: 60%;
    height: 12px;
    background: url(../img/index/arrow04.png) center center/contain no-repeat;
}

.sec07 .link_text {
    margin: 0 0 20px;
    font-size: 18px;
    line-height: 1.2;
    color: #fff;
    text-align: center;
}

.sec07 .link_text02 {
    width: 100%;
    padding: 0;
    background: none;
    box-sizing: border-box;
    font-size: 14px;
    line-height: 2;
    color: #fff;
}

/* =====sec08===== */
.sec08 {
    padding: 50px 0 0;
}

@keyframes bMove01 {
    0% {
        background-position: 2000px 0;
    }

    100% {
        background-position: 0 0;
    }
}

.sec08 .slide {
    display: block;
    height: 205px;
    background: url(../img/index/animation04.jpg) center center repeat-x;
    animation: bMove01 50s linear infinite;
}

/* =====popup===== */
.popup_wrap {
    z-index: 1000;
    position: fixed;
    left: 0;
    top: 0;
    display: none;
    width: 100%;
    height: 100%;
    padding: 0 20px;
    background: rgba(0, 0, 0, .8);
    box-sizing: border-box;
    overflow: scroll;
}

.popup {
    position: relative;
    width: 100%;
    padding: 64px 20px 30px;
    border: 6px solid #5ec5f2;
    margin: 20px auto;
    background: #fff;
    box-sizing: border-box;
}

.popup .head {
    margin: 0 0 50px;
}

.p_title {
    width: 375px;
    max-width: 100%;
    padding: 0 0 15px;
    border-bottom: 7px solid rgba(255, 241, 0, 0.35);
    margin: 0 auto 26px;
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    color: #00b9ef;
}

.p_text {
    font-size: 16px;
    text-align: center;
    line-height: 2;
}

.popup .contbox {
    display: block;
    justify-content: space-between;
    padding: 0 0 30px;
    border-bottom: none;
}

.popup .cont {
    padding: 0 0 20px;
    border-bottom: 1px dashed #00b9ef;
}

.popup .contbox:nth-of-type(1) {
    padding: 120px 0 35px;
    background: url(../img/index/p_icon01.png) top center/109px no-repeat;
}

.popup .contbox:nth-of-type(1) .cont:nth-of-type(1),
.popup .contbox:nth-of-type(2) .cont:nth-of-type(1) {
    margin: 0 0 30px;
}

.popup .contbox:nth-of-type(2) .cont:nth-of-type(1) {
    padding: 80px 0 20px;
    background: url(../img/index/p_icon02.png) top center/61px no-repeat;
}

.popup .contbox:nth-of-type(2) .cont:nth-of-type(2) {
    padding: 70px 0 20px;
    background: url(../img/index/p_icon03.png) top center/101px no-repeat;
}

.popup .contbox:nth-of-type(3) {
    display: flex;
    justify-content: center;
}

.popup .contbox:nth-of-type(3) .cont {
    padding: 80px 0 20px;
    background: url(../img/index/p_icon04.png) top center/67px no-repeat;
}

.popup .cont_title {
    margin: 0 0 20px;
    font-size: 18px;
    font-weight: 700;
    color: #00b9ef;
    text-align: center;
}

.popup .cont_text {
    line-height: 2;
    text-align: justify;
}

.popup .cancel_btn {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 30px;
    height: 30px;
    margin: auto;
}

.popup .cancel_btn:hover {
    cursor: auto;
}

.popup .cancel_btn span {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    width: 30px;
    height: 3px;
    background: #00B9EF;
    transition: all 0.3s;
}

.popup .cancel_btn span:nth-of-type(1) {
    top: 45%;
    transform: translateX(-15px) rotate(45deg);
}

.popup .cancel_btn span:nth-of-type(2) {
    bottom: 45%;
    transform: translateX(-15px) rotate(-45deg);
}

/* anzentaisakukasanここから */

.anzentaisakukasan {
    width: 90vw;
    padding: 8vw 5.5vw;
    margin: 50px auto 0;
    border-radius: 0;
    border: 2px solid #00b9ef;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.anzentaisakukasan .anzen_title {
    margin-bottom: 30px;
    font-size: 18px;
    text-align: center;
}

.anzentaisakukasan .anzen_title .marker {
    display: inline;
    background: linear-gradient(to bottom, transparent 80%, rgba(255, 241, 0, 0.48) 0);
}

.anzentaisakukasan .anzen_item {
    position: relative;
    padding-left: 1.5em;
}
.anzentaisakukasan .anzen_item:before {
    content: "";
    position: absolute;
    left: 0;
    top: 2px;
    width: 27px;
    height: 18px;
    background: url(../img/index/list01.png) center left / 20px no-repeat;
}

.anzentaisakukasan .anzen_item:not(:last-of-type) {
    margin-bottom: 15px;
}

/* anzentaisakukasanここまで */


}