    h2.conts_h2 {
	margin: 10px auto 20px auto;
	position: relative;
	padding-bottom: 0.7em;
	border-bottom: 6px solid #DDD;
	font-size: 24px;
	font-weight: bold;
	display: block;
	width: 96%;
    }
    h2.conts_h2:after {
        position: absolute;
        content: ' ';
        border-bottom: solid 6px var(--mainColor);
        bottom: -5px;
        width: 13%;
        display: block;
        left: 0px;
    }

/* ----------------------------------------
　sitemap（サイトマップLP）
　/sitemap/用cssのため消さないこと。
---------------------------------------- */
.sitemap_title_h2 {
	margin: 30px auto 20px auto;
	font-size: 17px;
}
.sitemap_ti h2 {
    width: 90%;
    font-size: 24px;
    margin: 30px auto;
    font-weight: 500;
    line-height: 1;
    font-weight: bold;
    text-align: left;
    border-bottom: none !important;
}

.sitemap_wrap {
    width: 90%;
    margin: 0 auto 60px;
    background: #f8f8f8;
    padding: 30px 5%;
    box-sizing: border-box;
}

.sitemap_inner {
    margin-bottom: 30px;
}

.sitemap_inner:last-child {
    margin-bottom: 0;
}

.sitemap_inner h3 {
    font-size: 18px;
    margin: 0 0 10px;
    font-weight: 500;
    line-height: 1.7;
}

.sitemap_inner ul {
    background: #fff;
    padding: 15px 5%;
}

.sitemap_inner ul li a {
    font-size: 14px;
    color: #333;
    line-height: 1.7;
    position: relative;
    padding-left: 20px;
    margin-bottom: 5px;
    display: block;
}

.sitemap_inner ul li a::before {
    content: "";
    width: 6px;
    height: 6px;
    border-top: 1px solid #042455;
    border-right: 1px solid #042455;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    left: 0;
    top: 8px;
}

.sitemap_group {
    padding-left: 10% !important;
}

.sitemap_group_ti {
    margin-left: -5%;
}

/ sitemap
---------------------------------------- /



/* ----------------------------------------
university
---------------------------------------- */

body.uni_body header {
        position: absolute;
        width: 100%;
        margin: 0 auto;
}


.uni_main_wrap{
    background: url(/img/uni_main_bg.webp);
    background-size: cover;
    background-position: center;
    padding: 4vh 0 10vh 0;
    width: 100%;
}

 .uni_main_inner {
        text-align: right;
        width: fit-content;
        margin: auto 5% auto auto;
 }

 .uni_main_inner ul {
  display: flex;
  flex-wrap: wrap;
  width: 60%;
  margin: auto 0 auto auto;
  justify-content: right;
 }

 .uni_main_inner ul li {
    line-height: 1.5em;
    text-align: center;
    background: #fff;
    border-radius: 5px;
    font-size: 3.5vw;
    font-weight: bold;
    letter-spacing: 0.1em;
    color: #333;
    margin: 0.5em 0;
    padding: 0.5em;
 }
 .uni_main_inner span {
    font-size: 10vw;
    font-weight: bold;
    color: #fff;
    line-height: 1.5em;
    border-bottom: 1px solid #fff;
    display: inline;
    text-shadow: 0 0 10px rgb(63 63 63);
 }
 .uni_main_inner span:first-child{    font-size: 20vw;}
 .uni_main_inner p {
    font-size: 4vw;
    font-weight: bold;
    color: #2a2a2a;
    line-height: 30px;
    letter-spacing: 0.05em;
    margin: 10px 0 0;
 }




.guide_bunner{
	ul{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin: 1em auto;
		li{
			width: 49%;
                	margin-bottom: 0.5em;
			a{
	                width: 100%;
                    	height: 6em;
	                background: #b80707;
	                border-radius: 10px;
	                padding: 0.5em 1em;
	                box-sizing: border-box;
	                color: white;
	                font-size: 3.5vw;
	                font-weight: bold;
	                text-align: center;
	                line-height: 1.5em;
				span{
				font-size: 12px;
				display: block;
	                	font-weight: normal;
                }
			}
            a:hover{
                background: #db1919;
                color: yellow;
            }
		}
	}
}

.uni-gakuen{
	h3{
            margin: 10px auto 20px auto;
            position: relative;
            padding-bottom: 0.4em;
            border-bottom: 6px solid #DDD;
            font-size: 5.5vw;
            font-weight: bold;
            display: inline-block;
            width: 100%;
    }
    h3:after {
        position: absolute;
        content: ' ';
        border-bottom: solid 6px #b90404;
        bottom: -5px;
        width: 13%;
        display: block;
        left: 0px;
    }
	h4{
            margin: 10px auto 20px auto;
            position: relative;
            padding-bottom: 0.4em;
            border-bottom: 6px solid #DDD;
            font-size: 4.5vw;
            font-weight: bold;
            display: inline-block;
            width: 100%;
    }
    h4:after{
        position: absolute;
        content: ' ';
        border-bottom: solid 6px #b90404;
        bottom: -5px;
        width: 13%;
        display: block;
        left: 0px;
    }
	ul{
        display: flex;
        flex-wrap: wrap;
        justify-content: start;
        margin: 1em auto;
        gap: 2.5%;
		li{
	            width: 48%;
	            margin-bottom: 2.5%;
			a{
	                width: 100%;
	                background: #fff;
	                border: 2px solid #e9e9e9;
	                border-radius: 5px;
	                padding: 2% 4% 4% 4%;
	                box-sizing: border-box;
				p{
		                    line-height: 1.7em;
		                    font-size: 14px;
		                    font-weight: bold;
		                    color: #b90404;
                }
				img{margin-top: 0.2em; width: 100%;}
			}
            a:hover{
                background: #fffcfc;
                p{color: #000;}
            }
		}
	}
	ul.uni{}
	ul.uni_noimg{}
}


/*====================================================
////id |  service
====================================================*/
#service .service_ttl {
    display: grid;
        align-items: center;
        grid-gap: 20px min(3vw, 80px);
        grid-template-columns: auto 1fr;
    padding: 100px 0 0;
}
#service .service_ttl h2 {
    display: flex;
        align-items: baseline;
        grid-gap: 0 .65em;
}
#service .service_ttl .service_txt {
    font-size: 18px;
}
#service .service_items_wrapper {
	width: 85%;
	padding:1em 0 3em 0;
}
#service .service_items {
	border-radius: 20px;
	display: flex;
	flex-wrap: wrap;
	overflow: hidden;
	gap: 4px;
}
#service .service_item {
    color: #fff;
    display: grid;
    grid-gap: 0;
    /*grid-row: span 3;
    grid-template-rows: inherit;*/
    font-size: min(1.3vw, 16px);
    padding: 2em;
    position: relative;
    width: 100%;
}
#service .service_item:nth-child(1){ grid-area: 1 / 1 / 2 / 3;}
#service .service_item:nth-child(2){ grid-area: 2 / 1 / 3 / 2;}
#service .service_item:nth-child(3){ grid-area: 2 / 2 / 3 / 3;}
#service .service_item a {
    overflow: hidden;
}
#service .service_item figure {
    position: absolute;
        top: 0;
        left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}
#service .service_item figure:after {
    background: #000;
    content: '';
    display: block;
    margin: auto;
    opacity: .4;
    position: absolute;
        top: 0;
        left: 0;
    transition: .3s ease-in-out;
    width: 100%;
    height: 100%;
}
#service .service_item figure.coverImg{padding-top:0;}
#service .service_item .serivice_item_ttl {
	display: grid;
	font-size: min(3.2vw, 20px);
	font-weight: bold;
	line-height: 1.3;
	margin-top: 4em;
}#service .service_item .serivice_item_ttl .en {
        font-size: 3.5vw;
        font-weight: normal;
}
#service .service_item .serivice_item_ttl .jp {
        font-size: 7vw;
        line-height: 2em;
}
#service .service_item .serivice_item_txt {
        line-height: 1.4;
        font-size: 3.5vw;
        margin: 1em 0;
}
#service .service_item .serivice_item_link {
	display: block;
	width: fit-content;
	margin-top: 0.5em;
	margin-bottom: 2em;
	font-size: 3vw;
}
#service .service_item .serivice_item_link .icon {
    background-color: var(--mainColor);
    border-radius: 3em;
    line-height: 2em;
    padding: 0 2em;
    transition: .4s ease-in-out;
}

}