@charset "UTF-8";

/**************/
/* コンテンツ部 */
/**************/


/* Spotlight */

	.spotlight {
        margin-top: 85px;
		padding: 12rem 0;
		position: relative;
	}

		.spotlight > .inner {
			display: -moz-flex;
			display: -webkit-flex;
			display: -ms-flex;
			display: flex;
			-moz-align-items: center;
			-webkit-align-items: center;
			-ms-align-items: center;
			align-items: center;
			-moz-justify-content: space-between;
			-webkit-justify-content: space-between;
			-ms-justify-content: space-between;
			justify-content: space-between;
			margin: 0 auto;
			max-width: 75rem;
			width: calc(100% - 4rem);
		}

		.spotlight .image {
			border-radius: 0;
			height: 80%;
			position: absolute;
			top: 0;
			width: 60%;
		}

			.spotlight .image img {
				-moz-object-fit: cover;
				-webkit-object-fit: cover;
				-ms-object-fit: cover;
				object-fit: cover;
				border-radius: 0;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
			}

		.spotlight .content {
			padding: 2.5rem 5rem 2.5rem 5rem ;
			-moz-transition: opacity 0.5s ease-out, -moz-transform 0.5s ease-out;
			-webkit-transition: opacity 0.5s ease-out, -webkit-transform 0.5s ease-out;
			-ms-transition: opacity 0.5s ease-out, -ms-transform 0.5s ease-out;
			transition: opacity 0.5s ease-out, transform 0.5s ease-out;
            
            background-image: -webkit-gradient(linear, right top, left top, from(#0096a9), to(#006a95));
            background-image: -webkit-linear-gradient(right, #0096a9 0%, #006a95 100%);
            background-image: linear-gradient(to left, #0096a9 0%, #006a95 100%);
            
/*			background-color: #006a95; */
 /*			border-radius: 4px; */
/*            opacity: 0.8; */
			position: relative;
			z-index: 1;
			width: 35%;
            color: #fff;
		}

		.spotlight.odd .image {
            top: 5rem;
			right: 0;
		}

		.spotlight.even > .inner {
			-moz-flex-direction: row-reverse;
			-webkit-flex-direction: row-reverse;
			-ms-flex-direction: row-reverse;
			flex-direction: row-reverse;
		}

		.spotlight.even .image {
			left: 0;
		}


		.spotlight.accent1 {
              background: linear-gradient(90deg, #dedad2 0%, #dedad2 70%, #6398af 70%, #6398af 100%);
              display: flex;
              justify-content: center;
              align-items: center;
              width: 100%;
/*              height: 400px; */
/*			background-color: #dedad2; */
/*			background-color: #f7f8f8; */
		}

        .main_copy {
            letter-spacing: 0.5rem;
            line-height: 3.2rem;
            font-size: 1.5rem;
            font-weight: 300;
        	font-family: "Sawarabi Mincho", 'メイリオ', 'Hiragino Kaku Gothic Pro', sans-serif;
        }

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

			.spotlight {
				padding: 8rem 0;
			}

				.spotlight > .inner {
                    max-width: 60rem;
                    width: calc(100% - 4rem);
				}
            
            .spotlight .image {
                width: 60%;
            }

				.spotlight .content {
					padding: 2.5rem 3rem 2.5rem 4rem ;
					width: 40%;
				}
            
            .main_copy {
                letter-spacing: 0.8rem;
                line-height: 3rem;
                font-size: 1.3rem;
            }

		}

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

			.spotlight {
				padding: 7rem 0;
/*				text-align: center; */
			}

				.spotlight > .inner {
/*					display: block;
					max-width: none;
					width: 100%; */
				}

				.spotlight .image {
/*					display: block;
					height: 40vh;
					min-height: 20rem;
					width: 100%;
					position: relative; */
				}

				.spotlight .content {
					padding: 1.0rem 2.5rem 1.0rem 2.5rem ;
					width: 43%;
				}

/*					.spotlight .content h3 br {
						display: none;
					} */

				.spotlight.is-inactive .content {
					-moz-transform: none;
					-webkit-transform: none;
					-ms-transform: none;
					transform: none;
					opacity: 0;
				}
            
                .main_copy {
                    letter-spacing: 0.8rem;
                    line-height: 2.3rem;
                    font-size: 1rem;
                }
		}

		@media screen and (max-width: 767px) {
            .spotlight {
                margin-top: 68px;
				padding: 1rem 0;
			}
            .spotlight > .inner {
				display: block;
				max-width: none;
				width: 100%;
                margin: 0;
        		padding: 1rem 0;
            }

            .spotlight .image {
				display: block;
				height: 33vh;
				min-height: 15rem;
				width: 100%;
				position: relative;
            }

			.spotlight .content {
                margin: 3rem 0 2rem 0;
				padding: 0.4rem 1.5rem 0.4rem 1.5rem ;
    			width: 80%;
			}

            .main_copy {
                letter-spacing: 0.5rem;
                line-height: 2rem;
                font-size: 0.8rem;
            }

		}


/* お知らせ一覧 */
.news_area {
    background-image: url("img/home/bg_news01.svg");
    background-color:rgba(255,255,255,0.5);
    background-blend-mode:lighten;
    background-position: -150% 50%;
    background-repeat: no-repeat;
    padding: 50px 50px;
}

@media screen and (max-width: 1280px) {
    .news_area {
        background-size: 55% auto;
        background-position: -75% 50%;
        background-repeat: no-repeat;
        margin: 20px 0;
    }
    
}
@media (max-width:767px) {
    .news_area {
        background-size: 70% auto;
        background-position: -80% 15%;
        background-repeat: no-repeat;
        padding: 10px;
    }
    
}

.msr_newslist02 {
    margin: 0 auto;
    width: 90%;
}
.msr_newslist02 li {
    list-style: none;
    font-size: 14px;
}

.msr_newslist02 li a {
  box-sizing: border-box;
  color: #333333;
  display: table;
  padding: 10px;
  text-decoration: none;
  transition: 0.2s ease-in-out;
  -o-transition: 0.2s ease-in-out;
  -moz-transition: 0.2s ease-in-out;
  -webkit-transition: 0.2s ease-in-out;
  width: 90%;
}
.msr_newslist02 li a:hover {
  text-decoration: none;
  background-color: #FDFDFD;
}

.msr_newslist02 li div {
  display: table-cell;
  width: 144px;
}
.msr_newslist02 li p {
  display: table-cell;
  padding-left: 20px;
  vertical-align: middle;
}

/* 時間の設定 */
.msr_newslist02 li time {
  display: table-cell;
  vertical-align: top;
  width: 90px;
}

/* カテゴリの設定 */
.msr_newslist02 li .cat01,
.msr_newslist02 li .cat02,
.msr_newslist02 li .cat03 {
  background-color: #F17161;
  border-radius: 2px;
  color: #FFFFFF;
  font-size: 9px;
  padding: 0 2px;
  text-align: center;
  width: 50px;
}
.msr_newslist02 li .cat02 {
  background-color: #007eb1;
}
.msr_newslist02 li .cat03 {
  background-color: #dc4473;
}

@media (max-width: 751px) {
    .msr_newslist02 {
        margin: 0 0 0 -20px;
        width: 90%;
    }
    .msr_newslist02 li {
        font-size: 10px;
    }
.msr_newslist02 li time {
    width: 70px;
    }
    .msr_newslist02 li div {
        width: 110px;
    }
}

.news_sec {
    writing-mode: vertical-rl;
    letter-spacing: 0.3em;
    padding: 30px;
}

.news_list_link {
    letter-spacing: 0.1em;
}


@media (max-width:767px) {
    .news_sec {
        writing-mode: horizontal-tb;
        text-align: center;
    }
    .news_list_link {
        position: absolute;
        bottom: 10px;
        right: 10px;
    }
}


@media (min-width: 768px) {
    .news_title {    
        max-width: 150px;
    }

    .news_sec {
        border-right: solid 1px #555555;
    }

    .news_area .container {
        display: flex;
/*        max-width: 1000px; */
        margin-left: auto;
        margin-right: auto;
    }
    .news_area .news_title {
        flex: 1;
        padding: 50px 0px 50px 50px;
    }

    .news_area .news_cont {
        flex: 9;
        padding: 40px 10px;
    }    
}


/* スペシャルコンテンツ部(左イメージ) */
.conC {
    background-color: #dedad2;
    color: #333;
    /*    background-color: #006a95; */
    /*    color: #fff; */
}


.conC .text {
    padding: 20px;
}

.conC h2 {
    color: #fff;
    margin-top: 0;
    margin-bottom: 20px;
    font-size: 2rem;
    font-weight: 300;
}

.lead_cp_title {
    letter-spacing: 0.5rem;
    line-height: 3rem;
}

.conC .lead_cp_title {
    color: #555;
}

.conC p {
    margin-top: 0;
    margin-bottom: 20px;
/*    font-size: 14px; */
    line-height: 1.8;
/*    opacity: 0.8; */
}

.lead_tx {
    letter-spacing: 0.2rem;
    line-height: 2.6rem;
    font-size: 1.2rem;
}

.lead_tx_sm {
    letter-spacing: 0.3rem;
    line-height: 3.0rem;
    font-size: 1rem;
    font-weight: 100;
}

.lead_tx_ssm {
    letter-spacing: 0.2rem;
    line-height: 2.3rem;
    font-size: 1.0rem;
    font-weight: 100;
}

.conC .ls_container {
    display: flex;
    max-width: 1600px;
    margin-left: 0;
    margin-right: auto;
}

/*.conC a {
    display: inline-block;
    margin-top: 20px;
    padding: 10px 30px;
    border: solid 3px currentColor;
    border-radius: 6px;
    background-color: #BF6A7A;
    color: #fff;
    font-size: 14px;
    text-decoration: none;
}

.conC a:hover {
    background-image: linear-gradient(
        rgba(255,255,255,0.2),
        rgba(255,255,255,0.2)
    );
} */

.conC .photo {
    min-height: 500px;
    background-position: center;
    background-size: cover;
}

@media (min-width: 768px) {
    .conC .ls_container {
        display: flex;
        max-width: 1200px;
        margin-left: 0;
        margin-right: auto;
    }
    
/*    .conC .rs_container {
        display: flex;
        max-width: 1200px;
        margin-left: auto;
        margin-right: 0;
    }
 */
    
    .conC .photo {
        flex: 3;
    }
    
    .conC .text {
        flex: 2;
        padding: 80px 40px 80px 40px;
    }
}

@media (max-width: 767px) {
    .conC .ls_container {
        display: block;
        max-width: none;
        margin-left: 0;
        margin-right: auto;
    }
    
    .conC .rs_container {
        display: block;
        max-width: none;
        margin-left: auto;
        margin-right: 0;
    }

    .conC .photo {
        min-height: 300px;
        background-position: center;
        background-size: cover;
    }
    
    .conC .text {
        padding: 30px 30px 30px 30px;
    }
    
    .conC h2 {
        font-size: 1rem;
        font-weight: bold;
    }

    .lead_cp_title {
        letter-spacing: 0.5rem;
        line-height: 1.2rem;
    }


    .conC p {
        margin-top: 0;
        margin-bottom: 20px;
    /*    font-size: 14px; */
        line-height: 1.2;
    /*    opacity: 0.8; */
    }

    .lead_tx {
        letter-spacing: 0.2rem;
        line-height: 2.6rem;
        font-size: 1rem;
    }

    .lead_tx_sm {
        letter-spacing: 0.3rem;
        line-height: 3rem;
        font-size: 0.8rem;
    }

    .lead_tx_ssm {
        letter-spacing: 0.2rem;
        line-height: 1.0rem;
        font-size: 0.8rem;
        font-weight: 100;
    }
    
}

/* スペシャルコンテンツ部(右イメージ) */
.conD {
    position: relative;
    background-color: #f7f8f8;
    color: #fff;
}


.conD .text {
    padding: 20px;
}

.conD h2 {
    color: #fff;
    margin-top: 0;
    margin-bottom: 20px;
    font-size: 2rem;
    font-weight: bold;
}

/* .lead_cp_title {
    letter-spacing: 0.5rem;
    line-height: 3.2rem;
} */

.conD p {
    margin-top: 0;
    margin-bottom: 20px;
/*    font-size: 14px; */
    line-height: 1.8;
/*    opacity: 0.8; */
}

/* .lead_tx {
    letter-spacing: 0.2rem;
    line-height: 2.6rem;
    font-size: 1.2rem;
} */

.conD .photo {
    max-width: 1600px;
    min-height: 500px;
    width: 100%;
    background-position: center;
    background-size: cover;
}

@media (max-width: 767px) {
    .conD .ls_container {
        display: block;    
        max-width: none;
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }
    
    .conD .rs_container {
        display: block;
        max-width: none;
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }
    .conD h2 {
        color: #fff;
        margin-top: 0;
        margin-bottom: 20px;
        font-size: 1rem;
        font-weight: bold;
    }

    .conD p {
        margin-top: 0;
        margin-bottom: 20px;
    /*    font-size: 14px; */
        line-height: 1.8;
    /*    opacity: 0.8; */
    }
    
    .conD .photo {
        margin-left: 0;
        min-height: 400px;
        width: 100%;
    }

    .conD .text {
        margin: 20px;
        padding: 20px;
    }
}

.box_cp {
    position: absolute;
    width: 35%;
    left: 30px;
    top: -40px;
    padding: 40px;
    background-image: -webkit-gradient(linear, right top, left top, from(#0096a9), to(#006a95));
    background-image: -webkit-linear-gradient(right, #0096a9 0%, #006a95 100%);
    background-image: linear-gradient(to left, #0096a9 0%, #006a95 100%);

/*    background-color: #006a95; */
    
}

.box_cp_r {
    position: absolute;
    width: 40%;
    right: 30px;
    top: -40px;
    padding: 40px;
    background-image: -webkit-gradient(linear, right top, left top, from(#0096a9), to(#006a95));
    background-image: -webkit-linear-gradient(right, #0096a9 0%, #006a95 100%);
    background-image: linear-gradient(to left, #0096a9 0%, #006a95 100%);
    
/*    background-color: #006a95; */
    
}

@media (max-width: 767px) {
    .box_cp {
        top: 50px;
        left: 0;
        margin-left: 0px;
        padding: 20px;
        width: 80%;
    }
    
    .box_cp_r {
        top: -20px;
        right: 0;
        margin-left: 0px;
        padding: 20px;
        width: 80%;
    }
}

.circle_flm {
    shape-outside: circle(50%);
    float: left;
    margin: 20px 20px 10px 0;
}

@media (max-width: 767px) {
    .circle_flm {
        width: 50%;
        height: 50%;
    }
}