@charset "utf-8";

.timing_back_wrap {position: relative;}
.timing_back_wrap::before {content: "";position: absolute;top: 0;left: 50%;transform: translateX(-50%);width: 2px;height: 100%;border-left: 2px dashed #004680;z-index: 0;}
.timing_back{background-color: white;width: min(90vw,1320px);border-radius: 10px;padding: 40px 0;margin-bottom: 80px;position: relative; z-index: 1;}

.timing_top_photo img{width: 100%;}
.timing_contents{width: 80vw;margin: 0 auto;}
.timing_top_circles{display: flex;align-items: center;margin-bottom: 20px;}
.timing_top_circle {position: relative;display: inline-block;width: 80px;height: 80px;border-radius: 50%;background: #004680;color: white;margin-right: 20px;}
.timing_top_circle span {position: absolute;display: inline-block;left: 0;top: 50%;-webkit-transform: translateY(-50%);transform: translateY(-50%);width :80px;text-align:center;font-weight: bold;
font-size: 12px;line-height: 21px;}
.timing_top_circle strong{font-size: 36px;}
.timing_top_title{color: #004680;font-weight: bold;font-size: 24px;margin-bottom: 10px;}
.timing_top_title_text{margin-bottom: 20px;text-align: justify;}

.timing_under_back{background-color: #F5F5F5;padding: 20px 0;margin-top: 20px;}
.timing_under_contents{width: 70vw;margin: 0 auto;}
.timing_under_title{font-size: 20px;color: #004680;font-weight: bold;margin-bottom: 20px;}
.timing_under_text{text-align: justify;}

/* 回遊リンクとの繋ぎ目用 */
.contents_bg_excursion_wave_top{background-color: #FDFD9A;}


@media(min-width:768px){
    .timing_contents{width: min(90vw,1320px);}
    .timing_back{margin-bottom: 80px;}
    .timing_top{display: flex;flex-direction: row;align-items: center;justify-content: space-between;}
    .timing_top_circle{width: min(10vw,120px);height: min(10vw,120px);margin-right: min(3vw,40px);}
    .timing_top_circle span{width: min(10vw,120px);font-size: min(2vw,15px);line-height: 30px;}
    .timing_top_circle strong {font-size: min(5vw,50px);}
    .timing_top_title_wrap{display: flex;flex-direction: row;margin-left: 4vw;align-items: center;}
    .timing_top_titles{width: min(33vw,520px);}
    .timing_top_title{font-size: 28px;margin-bottom: 20px;}
    .timing_top_title_text{margin-bottom: 0;}
    .timing_top_photo{width: min(36vw,470px);}
    .timing_under_back{padding: 40px 3vw;border-radius: 10px;width: 49%;}
    .timing_under{display: flex;flex-direction: row;width: min(83vw,1200px);margin: 0 auto;justify-content: space-between;gap: 2vw;}
    .timing_under_contents{width: initial;}
}


@media(min-width:1100px){
        .timing_back{padding-top: 0px;}
        .timing_top_photo img {border-radius: 0 10px 0 0;}

}
