@charset "utf-8";

/*===============================================================================================

    share 共通

=================================================================================================*/
*{
	outline: none;
	margin:0;
	padding:0;
	background-repeat: no-repeat;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}
/*--------------------マウスオンで色を薄く-----------------------*/
.fade {  
	-webkit-transition: 0.3s ease-in-out;  
	-moz-transition: 0.3s ease-in-out;  
	-o-transition: 0.3s ease-in-out;  
	transition: 0.3s ease-in-out;  
}  
.fade:hover {  
	opacity: 0.6;
	filter: alpha(opacity=60);
}
/*-------------------indent------------------------*/
.indent_ptn1 {
    padding-left: 1em;
    text-indent: -1em;
}
.indent_ptn2 {
    padding-left: 4.2em;
    text-indent: -4.2em;
}
/*-------------------indent------------------------*/
.cl1 {
    color: #5CC2CF;
}
/*-------------------スマホの電話番号制御------------------------*/
.tel_none a {
   pointer-events: none;
}
/*-------------------下スパン------------------------*/
.row_ptn1 {
}
.row_ptn1 > li {
    padding-bottom: 40px;
}
.row_ptn1 > li:nth-last-child(1) {
    padding-bottom: 0px;
}
	@media (max-width: 1000px){
        .row_ptn1 > li {
            padding-bottom: 30px;
        }
        .row_ptn1 > li:nth-last-child(1) {
            padding-bottom: 0px;
        }
        .row_ptn1_1 > li:nth-last-child(1) {
            padding-bottom: 30px;
        }
	}
/*-------------------------------------------*/

.reflection-img{
    width       :100%;
    position    :relative;
    overflow    :hidden;
}

.reflection {
    height      :100%;
    width       :60px;
    position    :absolute;
    top         :-180px;
    left        :0;
    background-color: #fff;
    opacity     :0;
    transform: rotate(45deg);
    animation: reflection 2s ease-in-out infinite;
    -webkit-transform: rotate(45deg);
    -webkit-animation: reflection 2s ease-in-out infinite;
    -moz-transform: rotate(45deg);
    -moz-animation: reflection 2s ease-in-out infinite;
    -ms-transform: rotate(45deg);
    -ms-animation: reflection 2s ease-in-out infinite;
    -o-transform: rotate(45deg);
    -o-animation: reflection 2s ease-in-out infinite;
}

@keyframes reflection {
    0% { transform: scale(0) rotate(45deg); opacity: 0; }
    80% { transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { transform: scale(4) rotate(45deg); opacity: 1; }
    100% { transform: scale(50) rotate(45deg); opacity: 0; }
}
@-webkit-keyframes reflection {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-moz-keyframes reflection {
    0% { -moz-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -moz-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -moz-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -moz-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-ms-keyframes reflection {
    0% { -ms-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -ms-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -ms-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -ms-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-o-keyframes reflection {
    0% { -o-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -o-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -o-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -o-transform: scale(50) rotate(45deg); opacity: 0; }
}

/*-------------------------------------------*/

.h3_1  {
    font-size: 2.4em;
    font-weight: 500;
    line-height: 1;
    background: linear-gradient(transparent 60%, #FFF462 60%);
    text-align: center;
    width: 170px;
    color: #5dc2d0;
    margin: auto;
    margin-bottom: 15px;
}
    @media only screen and (max-width: 1460px) {
        .h3_1  {
            font-size: 2em;
        }
    }
.h3_2  {
    font-size: 2.4em;
    font-weight: 500;
    line-height: 1;
    background: linear-gradient(transparent 60%, #FFF462 60%);
    text-align: center;
    width: 100%;
    color: #5dc2d0;
    margin: auto;
    margin-bottom: 30px;
}
.h3_3  {
    font-size: 4em;
    font-weight: 600;
    text-align: center;
    margin-bottom: 50px;
    color: #5CC2CF;
    font-family: "Noto Serif JP", serif;
}
    @media only screen and (max-width: 1024px) {
        .h3_3  {
            font-size: 2.6em;
            margin-bottom: 25px;
        }
    }
/*--------------------.tb1----------------------*/
.tb1 {
    width: 100%;
}
.tb1 table {
    width: 100%;
}
.tb1 th,
.tb1 td {
    border: 1px solid #dbe1e8;  
    padding: 10px;
    font-size: 1.6em
}
.tb1 th {
    background: #f9fafc;
    text-align: left;
    width: 180px;
    font-weight: normal;
    vertical-align: top;
}
    @media only screen and (max-width: 800px) {
        .tb1 tr,
        .tb1 th,
        .tb1 td {
            display: block;
            width: auto;
        }
        .tb1 tr:first-child {
            border-top: 1px solid #dbe1e8;  
        }
        .tb1 th,
        .tb1 td {
            border-top: none;
        }
    }

/*-------------------------------------------*/
.img_ov {
overflow:hidden;
width: 100%;
height: 100%;
}
.img_ov img {
display: block;
transition-duration: 0.5s;
}
.img_ov img:hover {
transform: scale(1.2,1.2);
transition-duration: 0.5s;
}

.hr1 {
  border-top: 3px dotted #013686;
}
.hr2 {
  border-top: 2px solid #013686;
}

/*-------------------------------------------*/
.hover1 img {
    color: #fff;
    display: inline-block;
    cursor: pointer;
    transition: all 0.3s ease 0s;
    transition: .3s;
    opacity: 1;
}
.hover1 img:hover {
    border-bottom-color: transparent;
    transform: translateY(0.4em);
    opacity: 1;
}

/*-------------------------------------------*/

.bt_ptn {
}
/*-------------------------------------------*/

.wrap_all {
    position: relative;
}
.wrap_all img {
    width: 100%;
}
.illust_bg {
    position: absolute;
    bottom: 0px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    width: 1380px;
}
.illust_bg img {
    width: 100%;
}
    @media only screen and (max-width: 1460px) {
        .illust_bg {
            width: 94%;
        }
    }
.contents_all {
    position: relative;
    width: 100%;
}
    @media only screen and (max-width: 1500px) {
    }
.illust {
    width: 1420px;
    z-index: 1;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
    @media only screen and (max-width: 1460px) {
        .illust {
            width: 102%;
        }
    }
.illust img {
    width: 100%;
}
/*-------------------------------------------*/
.cnt1 {
    position: relative;
    width: 1380px;
    margin: auto;
    background-color: #FFFFFF;
    padding: 80px 80px 40px 80px;
    margin-bottom: 50px;
    border-radius: 50px
}
    @media only screen and (max-width: 1460px) {
        .cnt1 {
            width: 94%;
        }
    }
    @media only screen and (max-width: 1024px) {
        .cnt1 {
            width: 94%;
            padding: 30px 20px 30px 20px;
        }
    }
.cnt1 h1 {
    text-align: center;
    margin-bottom: 50px;
}
    @media only screen and (max-width: 1024px) {
        .cnt1 h1 {
            text-align: center;
            margin-bottom: 25px;
        }
    }
.cnt1 h1 img {
    max-width: 800px;
}
/*-------------------------------------------*/
.cnt1 .bl1 {
    padding-bottom: 50px;
}
.cnt1 .bl1 dl {
}
.cnt1 .bl1 dl dt {
    font-size: 3em;
    font-weight: 500;
    text-align: center;
    padding-bottom: 30px;
}
    @media only screen and (max-width: 1024px) {
        .cnt1 .bl1 dl dt {
            font-size: 2em;
        }
    }
.cnt1 .bl1 dl dt span {
    color: #5CC2CF;
}
.cnt1 .bl1 dl dd {
    font-size: 1.6em;
    display: flex;
    justify-content: center;
}
/*-------------------------------------------*/
.cnt1 .bl2 {
    text-align: center;
    margin-bottom: 50px;
    position: relative;
}
.cnt1 .bl2 .img1 {
    position: absolute;
    right: -100px;
    top: -100px;
    max-width: 280px;
}
    @media only screen and (max-width: 1330px) {
        .cnt1 .bl2 .img1 {
            right: -100px;
            top: -50px;
            max-width: 200px;
        }
    }
    @media only screen and (max-width: 1024px) {
        .cnt1 .bl2 .img1 {
            right: 10px;
            top: -50px;
            max-width: 200px;
        }
    }
    @media only screen and (max-width: 710px) {
        .cnt1 .bl2 .img1 {
            right: -20px;
            top: 00px;
            max-width: 100px;
        }
    }
.cnt1 .bl2 .img1 img {
    width: 100%;
}
.cnt1 .bl2 .p1 {
    font-size: 2.8em;
    font-weight: 500;
}
    @media only screen and (max-width: 1024px) {
        .cnt1 .bl2 .p1 {
            font-size: 2.2em;
            text-align: left;
        }
    }
.cnt1 .bl2 .p1 span {
    color: #5CC2CF;
    font-size: 0.8em;
}
/*-------------------------------------------*/
.cnt1 .bl3 {
    margin-bottom: 50px;
}
    @media only screen and (max-width: 1024px) {
        .cnt1 .bl3 {
            margin-bottom: 20px;
        }
    }
.cnt1 .bl3 .box1 {
    display: flex;
}
    @media only screen and (max-width: 1024px) {
        .cnt1 .bl3 .box1 {
            display: block;
        }
    }
.cnt1 .bl3 .box1 div{
    width: 50%;
}
    @media only screen and (max-width: 1024px) {
        .cnt1 .bl3 .box1 div{
            width: 100%;
        }
    }
.cnt1 .bl3 .box1 div:nth-child(1){
    padding-right: 30px;
}
    @media only screen and (max-width: 1024px) {
        .cnt1 .bl3 .box1 div:nth-child(1){
            padding-right: 0px;
            margin-bottom: 30px;
        }
    }
.cnt1 .bl3 .box1 div:nth-child(2){
    border-left: solid 1px #5CC2CF;
    padding-left: 30px;
}
    @media only screen and (max-width: 1024px) {
        .cnt1 .bl3 .box1 div:nth-child(2){
            border-left: none;
            padding-left: 0px;
        }
    }
/*--------------------------*/
.dl_ptn1{
}
.dl_ptn1_2{
    margin-bottom: 30px;
}
.dl_ptn1 dt{
    font-size: 1.6em;
    font-weight: 600;
    margin-bottom: 20px;
}
.dl_ptn1 dt .span1{
    font-size: 0.8em;
    letter-spacing: 0px;
}
.dl_ptn1 dd{
}
.dl_ptn1 dd p{
    font-size: 1.6em;
    line-height: 1.8;
}
.dl_ptn1 dd p .span1{
    font-size: 1.1em;
    font-weight: 600;
}
/*-------------------------------------------*/
.cnt2 {
    position: relative;
    width: 1380px;
    margin: auto;
    background-color: #FFFFFF;
    border-radius: 50px;
    padding: 80px 80px 40px 80px;
    margin-bottom: 50px;
}
    @media only screen and (max-width: 1460px) {
        .cnt2 {
            width: 94%;
        }
    }
    @media only screen and (max-width: 1024px) {
        .cnt2 {
            padding: 30px 20px 30px 20px;
        }
    }
.cnt2 h2 {
    text-align: center;
    margin-bottom: 50px;
}
.cnt2 h2 img{
    max-width: 1000px;
}

.cnt2 h3 img{
    max-width: 500px;
}
.cnt2 .bl1{
    margin-bottom: 50px;
}
.cnt2 .bl1 ul{
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    flex-wrap: wrap;
}
    @media only screen and (max-width: 1220px) {
        .cnt2 .bl1 ul{
            flex-wrap: wrap;
        }
    }
    @media only screen and (max-width: 1024px) {
        .cnt2 .bl1 ul{
        }
    }
.cnt2 .bl1 ul .li1{
    font-size: 3em;
    font-weight: 500;
    text-align: center;
    padding-bottom: 30px;
    order: 2;  
}
    @media only screen and (max-width: 1220px) {
        .cnt2 .bl1 ul .li1{
            font-size: 2.4em;
        }
    }
    @media only screen and (max-width: 1024px) {
        .cnt2 .bl1 ul .li1{
            width: 100%;
            order: 1;  
        }
    }
.cnt2 .bl1 ul .li1 span{
    color: #5CC2CF;
}
.cnt2 .bl1 ul .li2{
    order: 1;
    padding-right: 20px;
    flex: 1;
    max-width: 231px;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .bl1 ul .li2{
            order: 2;
        }
    }
.cnt2 .bl1 ul .li2 img{
    width: 100%
}
.cnt2 .bl1 ul .li3{
    order: 3;
    padding-left: 20px;
    flex: 1;
    max-width: 235px;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .bl1 ul .li3{
        }
    }
.cnt2 .bl1 ul .li3 img{
    width: 100%
}
/*-------------------------------------------*/
.cnt2 .flow{
    display: flex;
    margin-bottom: 80px;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .flow{
            display: block;
            margin-bottom: 40px;
        }
    }
.cnt2 .flow .left{
    margin-right: 30px;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .flow .left{
            margin-right: 0px;
        }
    }
.cnt2 .flow .f_title{
    position: relative;
    width: 190px;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .flow .f_title{
            position: relative;
            margin: auto;
            width: 140px;
        }
    }
.cnt2 .flow .f_title .no{
    position: absolute;
    top: -25px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    z-index: 1;
    width: 50px;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .flow .f_title .no{
            top: -15px;
            width: 30px;
        }
    }
.cnt2 .flow .f_title .no_bg{
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
}
.cnt2 .flow .f_title .txt{
    position: absolute;
    top: 40%;
    left: 50%;
    transform: translate(-50%, -40%);
    -webkit-transform: translate(-50%, -40%);
    -ms-transform: translate(-50%, -40%);
    font-size: 2.4em;
    text-align: center;
    font-weight: 600;
    color: #5CC2CF;
    white-space: nowrap;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .flow .f_title .txt{
            font-size: 1.6em;
        }
    }
.cnt2 .flow .right{
    flex: 1;
}
.cnt2 .flow .right ul{
    width: 100%;
    display: flex;
    justify-content: space-between;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .flow .right ul{
            width: 100%;
            display: block;
        }
    }
.cnt2 .flow .right ul li a{
    text-decoration: underline;
}
.cnt2 .flow .right ul li:nth-child(1){
    text-align: center;
    margin-right: 30px;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .flow .right ul li:nth-child(1){
            margin-right: 0px;
        }
    }
.cnt2 .flow .right ul li:nth-child(1) .span1{
    color: #5CC2CF;
    font-size: 1.8em;
    font-weight: 600;
    display: block;
}
.cnt2 .flow .right ul li:nth-child(2){
    font-size: 1.8em;
    flex: 1;
}
    @media only screen and (max-width: 1220px) {
        .cnt2 .flow .right ul li:nth-child(2){
            font-size: 1.6em;
            width: 100%;
        }
    }
.cnt2 .flow .right ul li:nth-child(3){
    width: 180px;
    padding-left: 10px;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .flow .right ul li:nth-child(3){
            width: inherit;
            padding-left: 10px;
        }
    }
.cnt2 .flow .right ul li:nth-child(3) .span1{
    color: #ec6d81;
    font-size: 1.6em;
    font-weight: 600;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .flow .right ul li:nth-child(3) .span1{
            display: none;
        }
    }
.cnt2 .flow .right ul li:nth-child(3) .span2{
    font-size: 1.6em;
    font-weight: 600;
}
.cnt2 .flow .right .ul2{
}
.cnt2 .flow .right .ul2{
    width: 100%;
    display: flex;
    justify-content: space-between;
}
.cnt2 .flow .right .ul2 li{
}
.cnt2 .flow .right .ul2 li .box1{
    padding-left: 22px;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .flow .right .ul2 li .box1{
            padding-left: 0px;
        }
    }
.cnt2 .flow .right .ul2 li:nth-child(1) {
    padding-left: 20px;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .flow .right .ul2 li:nth-child(1) {
            padding-left: 0px;
        }
    }
.cnt2 .flow .right .ul2 li:nth-child(1) img{
    max-width: 34px;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .flow .right .ul2 li:nth-child(1) img{
            display: none;
        }
    }
.cnt2 .flow .right .ul2 li .box1 .span1{
    display: none;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .flow .right .ul2 li .box1 .span1{
            display: block;
            color: #ec6d81;
            font-weight: 600;
            padding-left: 10px;
        }
    }
/*-------------------------------------------*/
.cnt2 .bl2{
    margin-bottom: 50px;
    padding: 20px;
    border-top: 2px #5CC2CF solid;
    border-bottom: 2px #5CC2CF solid;
}
.cnt2 .bl2_1{
    border-top: 2px #5CC2CF solid;
    border-bottom: 2px #5CC2CF solid;
}
.cnt2 .bl2 ul{
    display: flex;
    justify-content: center;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .bl2 ul{
            display: block;
            text-align: center;
        }
    }
.cnt2 .bl2 ul li{
    padding: 0px;
}
.cnt2 .bl2 ul li dl{
}
.cnt2 .bl2 ul li dl dt{
    font-size: 1.8em;
    font-weight: 600;
    color: #5CC2CF;
}
.cnt2 .bl2 ul li dl dd{
    font-size: 1.6em;
}
.cnt2 .bl2 ul li dl dd a{
    text-decoration: underline;
}
.cnt2 .bl2 .ul2{
    display: flex;
    justify-content: center;
    border-top: none;
    border-bottom: none;
}
/*-------------------------------------------*/
.cnt2 .bl3{
    margin-bottom: 50px;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .bl3{
            margin-bottom: 20px;
        }
    }
.cnt2 .bl3 .box1{
    display: flex;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .bl3 .box1{
            display: block;
            text-align: center;
        }
    }
.cnt2 .bl3 div h3{
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    writing-mode: vertical-rl;
    font-size: 2.4em;
    background-color: #fff462;
    margin-right: 20px;
    border-radius: 5px;
    height: 120px;
    color: #5CC2CF;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .bl3 div h3{
            display: inline-block;
            writing-mode:horizontal-tb;
            font-size: 2em;
            padding: 0px 20px;
            margin-right: 0px;
            height: inherit;
            color: #5CC2CF;
            margin-bottom: 20px;
        }
    }
.cnt2 .bl3 div ul{
    display: flex;
    flex-wrap: wrap;
}
.cnt2 .bl3 div ul li{
    width: 33%;
    word-break: break-all;
    padding: 0px 10px;
    margin-bottom: 30px;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .bl3 div ul li{
            width: 50%;
            text-align: left;
            margin-bottom: 20px;
        }
    }
    @media only screen and (max-width: 640px) {
        .cnt2 .bl3 div ul li{
            width: 100%;
        }
        .cnt2 .bl3 div ul li:nth-last-child(1){
            margin-bottom: 0px;
        }
    }
.cnt2 .bl3 div ul li dl{
}
.cnt2 .bl3 div ul li dl dt{
    font-size: 1.8em;
    font-weight: 600;
    color: #5CC2CF;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .bl3 div ul li dl dt{
            font-size: 1.6em;
            font-weight: 400;
        }
    }
.cnt2 .bl3 div ul li dl dd{
    font-size: 1.2em;
}
.cnt2 .bl3 div ul li dl dd a{
    text-decoration: underline;
}
.cnt2 .bl4_1{
}
.cnt2 .bl4_1 ul{
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.cnt2 .bl4_1 ul .li1{
    font-size: 3em;
    font-weight: 500;
    text-align: center;
    padding-bottom: 30px;
    order: 2;  
}
    @media only screen and (max-width: 1220px) {
        .cnt2 .bl4_1 ul .li1{
            font-size: 2.4em;
        }
    }
    @media only screen and (max-width: 1024px) {
        .cnt2 .bl4_1 ul .li1{
            width: 100%;
            order: 1;  
        }
    }
.cnt2 .bl4_1 ul .li1 span{
    color: #5CC2CF;
}
.cnt2 .bl4{
    margin-bottom: 50px;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .bl4{
            margin-bottom: 20px;
        }
    }
.cnt2 .bl4 .p1{
    font-size: 1.8em;
    display: flex;
    justify-content: center;
    padding-bottom: 15px;
}
.cnt2 .bl4_in{
    width: 1000px;
    margin-bottom: 30px;
}
    @media only screen and (max-width: 1024px) {
        .cnt2 .bl4_in{
            width: 100%;
        }
    }
.cnt2 .bl4_in h4{
    font-size: 1.6em;
}
.cnt2 .bl4 .p2{
    font-size: 1.6em;
    padding-left: 20px;
    padding-bottom: 20px;
}
.cnt2 .bl4 .p3{
    font-size: 1.6em;
}
.cnt2 .bl4 .url{
    display: flex;
    justify-content: center;
}
.cnt2 .bl4 .url li dl{
}
.cnt2 .bl4 .url li dl dt{
    font-size: 1.8em;
    font-weight: 600;
    color: #5CC2CF;
}
.cnt2 .bl4 .url li dl dd{
    font-size: 1.6em;
}
.cnt2 .bl4 .url li dl dd a{
    text-decoration: underline;
}
/*-------------------------------------------*/
.cnt3{
}
/*アコーディオン*/
.toggle {
	display: none;
}
.Label {		/*タイトル*/
	padding: 1.4em 5em 1.4em 1.4em;
	display: flex;
    cursor:pointer;
    background-color: #5CC2CF;
}
    @media only screen and (max-width: 1024px) {
        .Label {		/*タイトル*/
            padding: 1em 1em 2em 1em;
        }
    }
.Label dl{
    display: flex;
    align-content: center;
    align-items: center;
}
.Label dl dt{
}
.Label dl dd{
}
.Label span{
    font-size: 1.8em;
}
    @media only screen and (max-width: 1024px) {
        .Label span{
            font-size: 1.4em;
        }
    }
.Label .span1{
    color :#FFFFFF;
    font-weight: 600;
    background-color:#5CC2CF;
    display: flex;
    justify-content: flex-start;
    align-content: center;
    align-items: center;
    width: 60px;
}
    @media only screen and (max-width: 1024px) {
        .Label .span1{
            width: 40px;
        }
    }
.Label .span2{
    flex: 1;
    color :#FFFFFF;
}
.Label .span3{
    font-size: 1.6em;
    background-color:#FFF462;
    padding: 2px 5px;
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    margin-right: 10px;
}
    @media only screen and (max-width: 1024px) {
        .Label .span3{
            font-size: 1.4em;
            margin-right: 0px;
        }
    }
.Label::before{		/*タイトル横の矢印*/
	content:"";
	width: 6px;
	height: 6px;
	border-top: 2px solid #FFFFFF;
	border-right: 2px solid #FFFFFF;
	-webkit-transform: rotate(45deg);
	position: absolute;
	top:calc( 50% - 3px );
	right: 20px;
	transform: rotate(135deg);
}
    @media only screen and (max-width: 1024px) {
        .Label::before{		/*タイトル横の矢印*/
            content:"";
            width: 6px;
            height: 6px;
            position: absolute;
            top:calc( 100% - 18px );
            right: 50%;
            transform: rotate(135deg);
        }
    }
.Label,
.content {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	transition: all 0.3s;
}
.content {		/*本文*/
	height: 0;
	margin-bottom:10px;
	padding:0 1.4em;
	overflow: hidden;
    border-radius: 10px;
    display: flex;
}
    @media only screen and (max-width: 1024px) {
        .content {		/*本文*/
            height: 0;
            margin-bottom:10px;
            padding:0 1em;
            overflow: hidden;
            border-radius: 10px;
            display: flex;
        }
    }
.content a {
    color :#34A0AF;
}
.content span{
    font-size: 1.8em;
    color :#34A0AF;
}
    @media only screen and (max-width: 1024px) {
        .content span{
            font-size: 1.4em;
        }
    }
.content .span1{
    display: flex;
    justify-content: flex-start;
    width: 60px;
    font-weight: 600;
}
    @media only screen and (max-width: 1024px) {
        .content .span1{
            width: 40px;
        }
    }
.content .span2{
    flex: 1;
}
.toggle:checked + .Label + .content {	/*開閉時*/
	height: auto;
	padding:20px 1.4em;
	transition: all .3s;
}
    @media only screen and (max-width: 1024px) {
        .toggle:checked + .Label + .content {	/*開閉時*/
            height: auto;
            padding:20px 1em;
            transition: all .3s;
        }
    }
.toggle:checked + .Label::before {
	transform: rotate(-45deg) !important;
}

/*-------------------------------------------*/
.cnt4 {
    position: relative;
    width: 1380px;
    margin: auto;
    background-color: #FFFFFF;
    padding: 80px 80px 80px 80px;
    margin-bottom: 50px;
    border-bottom-left-radius: 50px;
    border-bottom-right-radius:  50px;
}
    @media only screen and (max-width: 1460px) {
        .cnt4 {
            width: 94%;
        }
    }
    @media only screen and (max-width: 1024px) {
        .cnt4 {
            width: 94%;
            padding: 30px 20px 30px 20px;
        }
    }
.cnt4 h1 {
    text-align: center;
    margin-bottom: 50px;
}
    @media only screen and (max-width: 1024px) {
        .cnt4 h1 {
            text-align: center;
            margin-bottom: 25px;
        }
    }
.cnt4 h1 img {
    max-width: 800px;
}
.cnt4 .p1 {
    display: flex;
    justify-content: center;
    font-size: 1.6em;
    padding-bottom: 50px;
}
.cnt4 .bl1 {
    border: 3px solid #5AC0CE;
    padding: 30px;
    border-radius: 30px;
}
.cnt4 .bl1 h3 {
    text-align: center;
    margin-bottom: 30px;
}
    @media only screen and (max-width: 1024px) {
        .cnt4 .bl1 h3 img {
            max-width: 246px;
        }
    }
.cnt4 .bl1 dl {
}
.cnt4 .bl1 dl dt {
    text-align: center;
    padding-bottom: 20px;
}
.cnt4 .bl1 dl dt h4 {
    font-size: 2.4em;
    color: #5CC2CF;
    font-weight: 600;
}
.cnt4 .bl1 dl dd {
    display: flex;
    justify-content: center;
}
.cnt4 .bl1 dl dd p{
}
.cnt4 .bl1 dl dd p a{
    font-size: 1.6em;
    text-decoration: underline;
}

.type {
    padding-bottom: 15px;
}
.type span {
    border: 3px solid #5AC0CE;
    font-size: 2.0em;
    font-weight: 600;
    padding: 2px 20px;
    color: #5AC0CE;
}

