@charset "utf-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@500;600;700;800&display=swap');

*{	color:#333333;
	line-height:1.6;
    font-size: 16px;
    font-family: 'Noto Sans JP','ヒラギノ角ゴシック','Hiragino Sans','ヒラギノ角ゴ StdN','Hiragino Kaku Gothic StdN','Yu Gothic UI','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;}
*,div{
    box-sizing: border-box;
}
#header_area {
    display: flex;
}
#header_contact {
    position: inherit;
    height: auto;
    padding: 18px 0px 15px;
}
body{
	-webkit-animation:fadeIn 2s ease 0s 1 normal;
	        animation:fadeIn 2s ease 0s 1 normal;
}
body .highlight{
	-webkit-font-feature-settings:"palt";
	        font-feature-settings:"palt";
	letter-spacing:0.01em;
}
img{
	vertical-align:top;
}
#wrapper{
	position:relative;
	width:100%;
	overflow:hidden;
}
.main{
    width: 100%;
    height: auto;

}
.block {
    width: 100%;
    margin: 0px auto 60px auto;
    max-width: 1330px;
    padding: 0px 15px;
}
.sub_title {
    margin: 35px 0 0 0;
}
.sub_title h3{
    position: relative;
    font-size: 200%;
    font-weight: 700;
    padding: 0px 0px 0px 20px;
}
.sub_title h3::before{
    position: absolute;
    left: 0;
	bottom: 0;
    content: "";
    display: block;
    height: 45px;
    width:  8px;
    background: #145aa0;
}
.sub_title_colum {
    margin: 35px 0 0 0;
}
.sub_title_colum h3{
    position: relative;
    font-size: 200%;
    font-weight: 700;
    padding: 0px 0px 0px 30px;
}
.sub_title_colum h3::before{
    position: absolute;
    left: 0;
	bottom: 0;
    content: "#";
    display: block;
    color: #145aa0;
	font-size: 110%;
}
.pick{
    font-size: 100%;
    font-weight: 700;
    padding: 0px 0px 0px 20px;
    color: #C00020;
}
/**.btn {
    position: relative;
    pointer-events: auto;
    z-index: 0;
    display: flex;
    justify-content: space-around;
    align-items: center;
    max-width: 430px;
    width: 100%;
    height: 80px;
    margin: 0px auto 0px auto;
    padding: 10px 30px 10px 25px;
    background: #145aa0;
    box-shadow: rgba(50, 50, 93, 0.15) 0px 4px 10px -2px, rgba(0, 0, 0, 0.05) 0px 3px 7px -3px;
    border: 2px solid #FFF;
    font-size: 125%;
    font-weight: 700;
    transition: 0.07s ease-in-out;
    cursor: pointer;
}**/
.btn {
    justify-content: space-around;
    align-items: center;
    max-width: 430px;
    width: 100%;
    margin: 0px auto 0px auto;
    background: #145aa0;
    box-shadow: rgba(50, 50, 93, 0.15) 0px 4px 10px -2px, rgba(0, 0, 0, 0.05) 0px 3px 7px -3px;
    border: 2px solid #FFF;
    font-size: 125%;
    font-weight: 700;
    transition: 0.07s ease-in-out;
    cursor: pointer;
}
.btn a{
    color: #FFF;
	line-height: 50px;
    padding: 10px 30px 10px 25px;
    display: block;
    text-align: center;
}
.btn:hover{
    opacity: 0.7;
}
.link_text {
    display: inline-block;
    margin: 15px 0 0 0;
    padding: 0px 0px 0px 22px;
    position: relative;
    border-bottom: 2px solid #145aa0;
}
.link_text a{
    color: #145aa0;
}
.link_text::before{
    content: "";
    position: absolute;
    display: block;
    width: 14px;
    height: 14px;
    top: 50%;
    left: 0px;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='enable-background:new 0 0 512 487.4' viewBox='0 0 512 487.4'%3E%3Cpath d='m499.44,213.61L295.86,12.24c-16.62-16.44-43.43-16.31-59.87.33-16.44,16.61-16.29,43.42.33,59.86l130.36,128.96H42.33c-23.37,0-42.33,18.95-42.33,42.32s18.96,42.33,42.33,42.33h324.35l-130.35,128.95c-16.62,16.44-16.77,43.25-.33,59.87,16.44,16.62,43.24,16.77,59.87.33l203.58-201.37c8.04-7.96,12.56-18.79,12.56-30.1s-4.52-22.13-12.56-30.09Z' style='fill:%232878c8'/%3E%3C/svg%3E")50% 50% / 100% 100% no-repeat;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}
.link_text:hover a{
    color: #091225;
}
.link_text:hover::before{
    background: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='enable-background:new 0 0 512 487.4' viewBox='0 0 512 487.4'%3E%3Cpath d='m499.44,213.61L295.86,12.24c-16.62-16.44-43.43-16.31-59.87.33-16.44,16.61-16.29,43.42.33,59.86l130.36,128.96H42.33c-23.37,0-42.33,18.95-42.33,42.32s18.96,42.33,42.33,42.33h324.35l-130.35,128.95c-16.62,16.44-16.77,43.25-.33,59.87,16.44,16.62,43.24,16.77,59.87.33l203.58-201.37c8.04-7.96,12.56-18.79,12.56-30.1s-4.52-22.13-12.56-30.09Z' style='fill:%23091225'/%3E%3C/svg%3E")50% 50% / 100% 100% no-repeat;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}
.link_text:hover{
    border-bottom: 2px solid #091225;
}
.sub_title_area {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.link_text{
    font-size:clamp(10px, 2.25vw, 14px);
}
.pc{
    display: block;
}
.sp{
    display: none;
}

@media screen and (max-width:1240px){
#wrapper{
	position:relative;
	width:100%;
	overflow:hidden;
}
}
@media screen and (max-width:1040px){
.block {
    width: 100%;
    margin: 0px 0px 65px 0px;
}
.sub_title {
    margin: 15px 0 0 0;
}
.sub_title h3{
    position: relative;
    font-size: clamp(18px, 2.85vw, 35px);
    font-weight: 700;
    padding: 0px 0px 0px 20px;
}
.sub_title h3::before{
    position: absolute;
    left: 0;
    content: "";
    display: block;
    height: 100%;
    width:  8px;
    background: #145aa0;
}
	
.sub_title_colum {
    margin: 15px 0 0 0;
}
.sub_title_colum h3{
    position: relative;
    font-size: clamp(18px, 2.85vw, 35px);
    font-weight: 700;
    padding: 0px 0px 0px 25px;
}
.sub_title_colum h3::before{
    position: absolute;
    left: 0;
    content: "#";
    display: block;
    color: #145aa0;
}

.btn {
    width: 100%;
    margin: 0px auto 0px auto;
    font-size: 100%;
    box-shadow: rgba(50, 50, 93, 0.15) 0px 4px 10px -2px, rgba(0, 0, 0, 0.2) 0px 3px 7px -3px;
}
.btn a{
	line-height: 40px;
}

}
@media screen and (max-width:640px){
.block {
    width: 100%;
    margin: 0px 0px 40px 0px;
}

.sub_title h3 {
    position: relative;
    width: 100%;
    font-size: clamp(13px, 4.25vw, 24px);
    font-weight: 700;
}
.sub_title_colum h3 {
    position: relative;
    width: 100%;
    font-size: clamp(13px, 4.25vw, 24px);
    font-weight: 700;
}
.pick_title h3 {
    position: relative;
    width: 100%;
    font-size: clamp(13px, 4.25vw, 24px);
    font-weight: 700;
    padding: 0px 70px 0px 20px;
}
.pick {
    position: absolute;
    top: 50%;
    right: 0;
    font-size: clamp(10px, 2.8vw, 15px);
    font-weight: 700;
    padding: 0px 0px 0px 20px;
    color: #C00020;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}
.btn {
    width: 100%;
}

.pc{
    display: none;
}
.sp{
    display: block;
}
.btn::before{
    content: "";
    position: absolute;
    display: block;
    width: 10px;
    height: 10px;
    top: 50%;
    left: 20%;
    background:url("../service_develop/images/arrow.svg") no-repeat;
    background-size: contain;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}
}
/* -- scroll -- */

@media screen and (min-width:1241px),print{
#back_to_top{
	position:fixed;
	right:0;
	background-color:#145aa0;
}

#back_to_top a{
	display:block;
	width:80px;
	height:80px;
	background-color:#145aa0;
	background-image:url("../images/back_to_top.png");
	background-repeat:no-repeat;
	background-position:center;
	background-size:contain;
	transition:0.2s all ease-in;
}

#back_to_top a:hover{
	-webkit-filter:brightness(90%);
	        filter:brightness(90%);
}
}

@media screen and (max-width:1240px){
#back_to_top a{
	width:70px;
	height:70px;
}
}

@media screen and (max-width:1040px){
#back_to_top a{
	width:60px;
	height:60px;
}
}

@media screen and (max-width:640px){
#back_to_top a{
	width:50px;
	height:50px;
}
}

/* HEADER */

#wrapper #header_all{
	background-color:#ffffff;
}

@media screen and (min-width:1041px){
#wrapper .clone-head{
	position:fixed;
	top:0;
	left:0;
	z-index:9999;
	width:100%;
	border-bottom:1px solid #E7E7E7;
	-webkit-transform:translateY(-100%);
	transform:translateY(-100%);
	transition:0.3s ease;
}

#wrapper .is-show{
	-webkit-transform:translateY(0);
	transform:translateY(0);
}
}

@media screen and (min-width:1241px), print{
header{
	width:100%;
	background-color:#ffffff;
}

#header_area{
	position:relative;
	max-width:1200px;
	margin:auto;
}

/* -header_contents- */
#header_contents{
	position:relative;
	box-sizing:border-box;
	width:1080px;
	height:95px;
	margin:0px auto 0px 0px;
	padding:0px 35px 0px 0px;
	display:flex;
	justify-content:space-between;
	align-items:center;
}

/* head_logo */
#header_contents a.head_logo{
	display:flex;
	height:60px;

}

#header_contents a.head_logo img{
	display:block;
	max-width:288px;
	height:auto;
}

#header_contents a.head_logo img:first-child{
	margin:0px 20px 0px 0px;
}

/* head_text */
#head_text{
	display:flex;
	justify-content:flex-start;
	align-items:center;
}

#head_text h1{
	padding:3px 15px 3px 0px;
	margin:0px 15px 0px 0px;
	border-right:1px solid #e7e7e7;
	font-size:62.5%;
	font-weight:normal;
}

#head_text p.tel{
	line-height:1;
}

#head_text p.tel span:first-of-type{
	margin:0px 0.2em 0px 0px;
	font-size:112.5%;
	color:#145aa0;

}

#head_text p.tel span:last-of-type{
	font-size:156.3%;
	color:#145aa0;

}

/* -header_contact- */
#header_contact{
	position:absolute;
	right:0;
	top:0;
	z-index:999;
	width:120px;
	height:95px;
	background:linear-gradient(90deg, #145aa0, #3074b8);
	transition:all 0.2s;
}

#header_contact:hover{
	-webkit-filter:brightness(90%);
	-moz-filter:brightness(90%);
	filter:brightness(90%);
}

#header_contact a{
	width:100%;
	height:100%;
	/* flex */
	display:flex;
	flex-flow:column wrap;
	justify-content:center;
	align-items:center;
}

#header_contact a p{
	margin:10px 0px 0px 0px;
	color:#ffffff;
	font-size:10px;
	text-align:center;
	line-height:1.6;
}

#header_spnavi{
	display:none;
}
}

@media screen and (max-width:1240px){
header{
	width:100%;
	background-color:#ffffff;
}

#header_area{
	position:relative;
	max-width:initial;
	width:100%;
	margin:auto;
}

/* -header_contents- */
#header_contents{
	box-sizing:border-box;
	position:relative;
	width:calc(100% - 110px);
	height:75px;
	margin:0px auto 0px 0px;
	padding:7px 25px 0px 20px;
	/* flex */
	display:flex;
	justify-content:flex-start;
	align-items:center;
}

/* head_logo */
#header_contents a.head_logo{
	display:flex;
	height:40px;
	margin:0px 20px 0px 0px;
}

#header_contents a.head_logo img{
	display:block;
	max-width:192px;
	height:auto;
}

#header_contents a.head_logo img:first-child{
	margin:0px 15px 0px 0px;
}

/* head_text */
#head_text{
	display:flex;
	justify-content:flex-start;
	align-items:center;
}

#head_text h1{
	padding:3px 15px 3px 0px;
	margin:0px 15px 0px 0px;
	border-right:1px solid #e7e7e7;
	font-size:10px;
	font-weight:normal;
}

#head_text p.tel{
	line-height:1;
}

#head_text p.tel span:first-of-type{
	font-size:	87.5%;
	margin:0px 0.2em 0px 0px;
    	color:#145aa0;

}

#head_text p.tel span:last-of-type{
	font-size:137.5%;
}

/* -header_contact- */
#header_contact{
	position:absolute;
	right:0;
	top:0;
	z-index:999;
	width:110px;
	height:75px;
    padding: 7px 0px 5px;
	background:linear-gradient(90deg, #145aa0, #3074b8);
	transition:all 0.2s;
}

#header_contact:hover{
	-webkit-filter:brightness(90%);
	-moz-filter:brightness(90%);
	filter:brightness(90%);
}

#header_contact a{
	width:100%;
	height:100%;
	/* flex */
	display:flex;
	flex-flow:column wrap;
	justify-content:center;
	align-items:center;
}

#header_contact a p{
	margin:10px 0px 0px 0px;
	text-align:center;
	color:#ffffff;
	font-size:10px;
	line-height:1.6;
}

#header_spnavi{
	display:none;
}
}

@media screen and (max-width:1040px){
header{
	position:fixed;
	top:0;
	z-index:999;
	width:100%;
	background-color:#ffffff;
}

#header_area{
	position:relative;
	max-width:initial;
	max-width:auto;
	width:100%;
	margin:auto;
}

/* -header_contents- */
#header_contents{
	position:relative;
	box-sizing:border-box;
	width:100%;
	height:65px;
	margin:0px 0px 0px 0px;
	padding:0px 2.5% 0px 2.5%;
	border-bottom:1px solid #e7e7e7;
	/* flex */
	display:flex;
	justify-content:flex-start;
	align-items:center;
}

/* head_logo */
#header_contents a.head_logo{
	height:40px;
	margin:0px 20px 0px 0px;
	/* flex */
	display:flex;
}

#header_contents a.head_logo img{
	display:block;
	max-width:192px;
	height:auto;
}

#header_contents a.head_logo img:first-child{
	margin:0px 15px 0px 0px;
}

#head_text, #header_contact{
	display:none;
}

/* header_spnavi */
#header_spnavi{
	position:absolute;
	top:0px;
	right:0px;
	box-sizing:border-box;
	display:block;
	width:65px;
	height:65px;
	padding:17px 16px 18px 15px;
}

#header_spnavi a{
	position:relative;
	display:block;
	width:34px;
	height:30px;
}

#header_spnavi a span{
	position:absolute;
	display:block;
	left:0px;
	width:34px;
	height:4px;
	background-color:#333333;
	border-radius:2px;
}

#header_spnavi a span:first-child{
	top:0px;
}

#header_spnavi a span:nth-child(2){
	top:13px;
}

#header_spnavi a span:last-child{
	bottom:0px;
}
}

@media screen and (max-width:640px){
#header_contents{
	padding:0px 2.5% 0px 2.5%;
}

#header_contents a.head_logo{
	height:30px;
}

#header_contents a.head_logo img{
	display:block;
	max-width:144px;
	height:auto;
}

#header_contents a.head_logo img:first-child{
	margin:0px 10px 0px 0px;
}
}

@media screen and (max-width:440px){
#header_contents a.head_logo{
	height:25px;
	margin:0px 10px 0px 0px;
}

#header_contents a.head_logo img{
	display:block;
	max-width:120px;
	height:auto;
}
}

/*トップタイトル*/
.title_area{
    padding: 20px 0px 0px 0px;
    background: url(../service_develop/images/title_bg.jpg);
    background-size: cover;
    background-position: center;
}
.top_title {
    position: relative;
    width: 100%;
    height: 145px;
    max-width: 820px;
    margin: 0px auto;
    background: url(../service_develop/images/top_img_01.png) ;
    background-size: contain;
    background-position: 180px center;
    background-repeat: no-repeat;
}
.top_title_program {
    position: relative;
    width: 100%;
    height: 145px;
    max-width: 820px;
    margin: 0px auto;
    background: url("../service_develop/images/top_img_02.png") ;
    background-size: contain;
    background-position: 130px center;
    background-repeat: no-repeat;
}
.top_title_colum {
    position: relative;
    width: 100%;
    height: 145px;
    max-width: 820px;
    margin: 0px auto;
    background: url(../service_develop/images/top_img_03.png) ;
    background-size: contain;
    background-position: 170px center;
    background-repeat: no-repeat;
}
.top_title_lecturer {
    position: relative;
    width: 100%;
    height: 145px;
    max-width: 820px;
    margin: 0px auto;
    background: url("../service_develop/images/top_img_04.png") ;
    background-size: contain;
    background-position: 150px center;
    background-repeat: no-repeat;
}
.top_title_example {
    position: relative;
    width: 100%;
    height: 145px;
    max-width: 820px;
    margin: 0px auto;
    background: url(../service_develop/images/top_img_05.png) ;
    background-size: contain;
    background-position: 170px center;
    background-repeat: no-repeat;
}

.title_text{
    position: absolute;
    top: 46%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
            transform: translateX(-50%) translateY(-50%);
    width: 450px;
    text-align: center;
}
.title_text p{
    font-size: 140%;
    line-height: 120%;
    font-weight: 700;
    color: #006cb8;
}
.title_text .text_s{
	padding:7px 10px;
	margin-top: 5px;
	margin-right: 5px;
    display: inline-block;
    background-color: #145aa0;
    color: #ffffff;
    font-size: 65%;
	line-height: 100%;
    vertical-align: middle;
}
.title_text .text_b{
	margin-top: 5px;
	display: inline-block;
	font-size: 150%;
    vertical-align: middle;
	line-height: 100%;
}
.title_text .text_p{
	margin-top: 5px;
	display: inline-block;
	font-size: 130%;
    vertical-align: middle;
	line-height: 100%;
}
.title_text h2{
    position: relative;
    display: inline-block;
    padding: 5px 40px 0px 0px;
    font-size: 268.8%;
    line-height: 120%;
    font-weight: 700;
}
.title_text h2::before{
    position: absolute;
    content: "";
    display: block;
    width: 30px;
    height: 45px;
    top: 50%;
    right: 0px;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    background: url("../service_develop/images/deco_denkyu.jpg");
    background-size: contain;
    background-repeat: no-repeat;
}
@media screen and (max-width:1040px){
.title_text{
    position: absolute;
    top: 44%;
    left: 45%;
    -webkit-transform: translateX(-46%) translateY(-47%);
            transform: translateX(-46%) translateY(-47%);
    width: auto;
}
.title_text_program,
.title_text_lecturer{
    position: absolute;
    top: 44%;
    left: 51%;
    -webkit-transform: translateX(-46%) translateY(-47%);
            transform: translateX(-46%) translateY(-47%);
    width: auto;
}
.title_text p{
    font-size:clamp(13px, 3vw, 24px);
}
.title_text h2{
    font-size: clamp(18px, 5vw, 30px);
    padding: 5px 38px 0px 0px;
}
.top_title,
.top_title_colum,
.top_title_example{
    width: 100%;
    height: 0;
    margin: 65px auto 0px auto;
    padding-top: 22%;
	background-position: center;
}
.top_title_program,
.top_title_lecturer{
    width: 100%;
    height: 0;
    margin: 65px auto 0px auto;
    padding-top: 22%;
	background-position: center;
}

}
@media screen and (max-width:640px){
.title_text{
    position: absolute;
    top: 42%;
    left: 46%;
    -webkit-transform: translateX(-47%) translateY(-46%);
            transform: translateX(-47%) translateY(-46%);
}
.title_text_program,
.title_text_lecturer{
    position: absolute;
    top: 42%;
    left: 51%;
    -webkit-transform: translateX(-47%) translateY(-46%);
            transform: translateX(-47%) translateY(-46%);
}
.title_text p{
    font-size: clamp(9px, 3vw, 19px);
}
.title_text h2{
    font-size: clamp(14px, 5vw, 25px);
    padding: 5px 26px 0px 0px;
}
.title_text h2::before{
    position: absolute;
    content: "";
    display: block;
    width: 20px;
    height: 100%;
    top: 50%;
    right: 0px;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    background: url(../service_develop/images/deco_denkyu.jpg);
    background-size: contain;
    background-repeat: no-repeat;
}
}
@media screen and (max-width:470px){
.title_text {
    position: absolute;
    top: 44%;
    left: 46%;
}
.title_text_program,
.title_text_lecturer{
    position: absolute;
    top: 44%;
    left: 50%;
}
.title_text h2::before{
    position: absolute;
    content: "";
    display: block;
    width: 16px;
    height: 25px;
}
}

/*slider*/
.service_nav{
    background: #145aa0;
}
.service_ul {
    max-width: 1200px;
    width: 100%;
    margin: 0px auto;
}
.service_ul ul {
    display: flex;
}
.service_ul li {
    width: calc(100% / 5);
    text-align: center;
    background: #145aa0;
}
.service_ul li a {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px 5px;
}
.service_ul li a.on {
    background: #246cb4;
}
.service_ul li a .deco{
    position: relative;
    padding: 0 0 0 25px;
    font-size: clamp(10px, 1.38vw, 14px);
    font-weight: 500;
    color: #FFF;
}

.service_ul li a .deco::before{
    content: "";
    position: absolute;
    display: block;
    width: 10px;
    height: 10px;
    top: 50%;
    left: 0px;
    background: url(../service_develop/images/arrow.svg) no-repeat;
    background-size: contain;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}
.service_ul li a:hover {
    background: #246cb4;
}
.service_nav_box{
    display: none;
}
@media screen and (max-width:1040px){
.service_nav{
    display: none;
}
.service_nav_sp{
    display: block;
}
.service_nav_box{
    display: block;
	background: #145aa0;
	width: 100vw;
	margin: 0 calc(50% - 50vw);
}
.service_nav_list ul li{
	border-bottom: 2px solid #246cb4;
}
.service_nav_list ul li:last-child{
	border-bottom: none;
}
.service_nav_list ul li a{
	padding: 10px 15px 10px 15px;
	display: block;
}
.service_nav_list ul li a.on{
	background: #246cb4;
}
.service_nav_list ul li span{
	color: #ffffff;
}
.service_nav_list ul li a:hover{
	background: #246cb4;
}
}
@media(min-width: 768px){
  a[href^="tel:"]{
    pointer-events: none;
}
}
@media screen and (max-width:640px){
}
.slider {
    display: block;
    background-position: top;
    background-repeat: repeat;
    padding: 0 0 5px 0;
    overflow: hidden;
    width: 100%;
}
.slick-list{
    width: 100%;
}
.slick-slide{
    max-width:700px; 
    width: 100vw;
    padding: 10px 10px 10px 10px;
}
.slick-slide img {
    width: 100%;
    margin: 0px auto;
}
.slider-item {
    width: 100%;/*各スライダー全体の横幅を画面の高さいっぱい（100%）にする*/
    height:auto;
    background-repeat: no-repeat;/*背景画像をリピートしない*/
    background-position: center;/*背景画像の位置を中央に*/
}
.slick-slide .inner{
    display: block;
    border: 2px solid #145aa0;

}
@media only screen and (max-width: 640px) {
.slick-slide {
    padding: 20px 25px 20px 25px;
}
}


/*プログラム*/
.program {
    margin: 20px 0 40px 0;
    padding: 0px 20px;
}
.program ul {
    display: flex;
    flex-wrap: wrap;
    width: calc(100% + 25px);
    margin: 0px -25px 0px 0px;
}
.program ul li{
    width: calc(100% / 3 - 3px);
    padding: 0px 25px 35px 0px;
}
.program_title{
    padding: 10px 15px 10px;
    background: #145aa0;
    font-weight: 500;
}
.program_title p{
    color: #FFF;
}

div.online{
    position: relative;
    padding:10px 0px 10px 64px;
}
.on_tags {
    position: absolute;
    content: "";
    display: block;
    padding: 3px 10px;
    background: #C00020;
    font-size: 75%;
    color: #FFF;
    top: 50%;
    left: 10px;
    transform: translateY(-50%);
}
.program ul li .text{
    text-decoration: underline;
    text-underline-position:under;
    padding: 5px 0px 0px 0px;
    font-size: 112.5%;
    font-weight: 500;

}
.program ul li .img{
    position: relative;
    width: 100%;
    overflow: hidden;
}
.program ul li .img:before {
    content: "";
    display: block;
    padding-top: 57.5%;
}
.program ul li .img p {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    overflow: hidden;
}
.program ul li .img p img{
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
}
.program ul li .img p img{
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
	max-width: 400px;
    height: auto;
}
.program_btn{
	position: relative;
    /*padding: 10px 90px 10px 90px;*/
}
.program_btn::after{
    content: "";
    position: absolute;
    display: block;
    width: 10px;
    height: 10px;
    top: 52%;
    right: 32%;
    background:url("../service_develop/images/arrow.svg") no-repeat;
    background-size: contain;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}
/*.program_btn::after{
    content: "";
    position: absolute;
    display: block;
    width: 88px;
    height: 121px;
    bottom: 0px;
    right: 8%;
    background:url("../service_develop/images/btn_img.png") no-repeat;

}*/
.program a:hover{
    opacity: 0.7;
}
@media screen and (max-width:1040px){
.program {
    padding: 0px 15px 0px;
}
.program_title{
    padding: 10px 15px 10px;
    font-size: 87.5%;
}
.program ul {
    width: calc(100% + 20px);
    margin: 0px -20px 0px 0px;
}
.program ul li {
    padding: 0px 20px 15px 0px;
}
.program ul li .text{ 
    font-size: 87.5%;
    padding: 5px 0px 0px 0px;
}
.program ul li .text p{
    line-height: 185%;
}
/*.program_btn::after{
    content: "";
    position: absolute;
    display: block;
    width: 66px;
    height: 90px;
    bottom: 0px;
    right: 8%;
    background:url("../service_develop/images/btn_img.png") no-repeat;
    background-size: contain;
}*/
div.online {
    position: relative;
    padding:10px 0px 10px 60px;
}
}

@media only screen and (max-width: 640px) {
.program {
    padding: 0px 0px;
    margin: 15px 0px 20px 0px;
}
	
.program ul {
    width: 100%;
    margin: 0px 0px 0px 0px;
}

.program ul li{
    width: calc(100% / 2);
    padding: 0px 12px 10px 0px;
}

.program ul li:nth-of-type(odd) {
	padding: 0px 5px 10px 0px;
}
.program ul li:nth-of-type(even) {
	padding: 0px 0px 10px 5px;
}

.program_title {
    font-size: 70%;
	padding: 7px 15px 7px;
}

.program_btn {
    margin: 15px auto 0px auto;
    border: 2px solid #FFF;
}
div.online {
    position: relative;
    padding:7px 0px 7px 60px;
}
/*.program_btn::after {
    width: 56px;
    height: 80px;
    bottom: 0px;
}*/
}
@media only screen and (max-width: 470px) {
.program{
    margin: 20px 0px 0px 0px;
}
.program ul {
    width: 100%;
}
.program ul li{
    /*margin: 0px auto 25px auto;*/
	margin-bottom: 25px;
}
}
/*column*/

.column {
    margin: 20px 0 40px 0;
    padding: 0px 20px;
}
.column ul{
    display: flex;
    flex-wrap: wrap;
    width: calc(100% + 20px);
    margin: 0px -10px 0px -10px;
}
.column ul li{
    width: calc(100% / 4);
    padding: 0px 10px 15px 10px;
}

.column_list ul li{
    width: calc(100% / 3);
    padding: 0px 10px 15px 10px;
}

.column ul li .img{
    position: relative;
    width: 100%;
    overflow: hidden;
    border-radius: 3px;
    border: rgba(213,213,213,1.00) solid 1px;
}
.column ul li .img:before {
    content: "";
    display: block;
    padding-top: 56.25%;
}
.column ul li .img p {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    overflow: hidden;
}
.column ul li .img p img{
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
}
.column ul li .img p img{
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: auto;
}
.column ul li .title{
    text-decoration: underline;
    text-underline-position:under;
    padding: 15px 0px 0px 0px;
    font-size: 112.5%;
    font-weight: 500;
}
.tags{
    width: calc(100% + 10px);
    margin: 10px 0px 0px 0px;
}
.tags .tags_inner{
    display: inline-block;
    padding: 3px 10px;
    margin: 0px 8px 5px 0px;
    font-size: 75%;
    border: 1px solid #333;
    border-radius: 20px;
}
.column a:hover{
    opacity: 0.7;
}
@media only screen and (max-width: 1040px) {
.column {
    padding: 0px 15px 0px;
}
.column ul {
    width: calc(100% + 20px);
    margin: 0px -20px 0px 0px;
}
.column ul li {
    width: calc(100% / 2);
    padding: 0px 10px 15px 10px;
}
.column ul li .title{ 
    font-size: 87.5%;
    padding: 10px 0px 0px 0px;
}
.column ul li .title p{
    line-height: 185%;
}
}
@media only screen and (max-width: 640px) {
.column {
    padding: 0px 0px 0px;
}
.column ul li{
    width: calc(100% / 2);
    padding: 0px 12px 10px 0px;
}
.column ul li {
    width: calc(100% / 2);
    padding: 0px 10px 20px 10px;

}
.column_block{
    background: #EDF0F3;
    padding: 20px 15px 20px 15px;
}
}

@media only screen and (max-width: 470px) {
.column ul{
    width: 100%;
    margin: 0px 0px 0px 0px;
}
.column ul li {
    /*margin: 0px auto 20px auto;*/
	margin-bottom: 20px;
}
}
/* 一覧リスト */
.example_lists  {
padding: 0px 20px;
}
.example_lists ul {
	display: flex;
	flex-flow:wrap;
	text-align: left;
    width: calc(100% + 28px);
    margin: 15px -14px 0px -14px;
}


/* リスト内_ボックス全体 */
.example_lists ul li .inner {
	position: relative;
    height: 100%;
	box-sizing: border-box;
	border: solid 3px #145aa0;
}
.example_lists ul li .inner{ 
    padding: 15px;
}

.example_lists ul li {
    padding:5px 5px 5px 5px;
    margin: 0 0 14px;
    width: calc(100% / 5);
}
.example_lists ul li:last-of-type {
    margin-bottom: 14px !important;
}

@media only screen and (max-width: 1240px) {
.example_lists ul li {
    padding: 10px;
    margin: 0 0 14px;
    width: calc(100% / 3);
}
.example_lists ul li:last-of-type {
    margin-bottom: 14px !important;
}
}
@media only screen and (max-width: 1040px) {
.example_lists ul li {
    padding: 10px;
    width: calc(100% / 2);
}
}
@media only screen and (max-width: 640px) {
.example_lists {
    padding: 0px 0px;
}
.example_lists ul{
    width: 100%;
    margin: 15px 0px 0px 0px;
}
.example_lists ul li {
    padding: 0px 0px 10px 0px;
    width: 100%;
}
.example_lists ul li .inner{ 
    padding: 10px;
}
.example_lists .image{
    display: block;
    width: 40%;
    padding: 0px 10px 0px 0px;
}
.example_lists .profile{
    width: 60%;
}
.inner_img_text{
    display: flex;
}

.example_lists ul li div.profile p.title{
    padding: 0px 0px 2px 0px;
    color: #145aa0;
    font-size: 87.5%;
}
.example_lists .profile .name{
    font-size:75%;
}
.example_lists .profile .participant{
    font-size:75%;
}
}
/* リスト内_ボックス内要素 */
.example_lists ul li div.image img {
  width: 100%;
  height: auto;
}
.example_lists ul li div.profile {
  min-height: 10em;
  padding:10px 0 5.5em;
}
.example_lists ul li div.profile p {
  margin: 0 !important;
}
.example_lists ul li div.profile p.title{
    color: #145aa0;
}
.example_lists ul li div.link {
  position: absolute;
  right: 0;
  left: 0;
  bottom: 0;
  display: block;
  box-sizing: border-box;
  width: 100%;
}
.example_lists ul li div.link a {
  display: block;
  margin: auto;
}
  .example_lists ul li div.link a {
    width: calc(100% - 40px);
}
.example_lists ul li div.link a p {
  width: 100%;
  margin: auto;
  background-color: #145aa0;
  color: #fff;
  line-height: 36px;
  text-align: center;
  transition: 0.2s all ease-in;
}
.example_lists ul li div.link a p:hover {
  -webkit-filter: brightness(90%);
          filter: brightness(90%);
}
.example_lists ul li div.link p.date {
  width: 100%;
  padding: 5px 0px;
  text-align: center;
  line-height: 2;
}
@media only screen and (max-width: 1240px) {
  .example_lists ul li div.link a {
    width: calc(100% - 32px);
  }
}
@media only screen and (max-width: 1040px) {
  .example_lists ul li div.link a p {
    margin: 0;
  }
    .example_lists ul li div.link a {
    width: calc(100% - 24px);
  }
}

@media only screen and (max-width: 640px) {
.example_lists ul li div.link p.date {
    font-size: 87.5%;
    padding: 5px 0px 0px 0px;
  }
.example_lists ul li div.link a {
    width: 100%;
  }
.example_lists ul li div.link{
    position: inherit;
    padding: 20px 0 0 0;
}
.example_lists ul li div.profile{
    min-height: 0em;
    padding: 0px;
}
}
.contact_area{
    background: #EDF0F3;
    width: 100%;
    height: auto;
    padding: 30px 15px 50px 15px;
}
.contact{
    max-width: 1100px;
    width: 100%;
    height: auto;
    margin: 0px auto;
    border: solid 3px #145aa0;
    background: #FFF;
}
.contact_box{
    display: flex;
    align-items: flex-start;
    padding: 85px 0px 0 0;
}
.contact_inner:first-child {
    position: relative;
    width: 55%;
    padding: 50px 30px;
}
.contact_inner:last-child {
    position: relative;
    width: 80%;
    padding:0px 30px 30px 30px;
}
.contact_inner .tel {
    text-align: center;
    font-size: 100%;
    font-weight: 700;
    padding: 30px 0 0 0;
}
.contact_inner .tel a{
    display: inline-block;
    font-size: 150%;
    padding: 0px 6px;
}
.contact_copy {
    font-size: 200%;
    font-weight: 800;
    padding: 40px 5px 0px 50px;
    margin: 0 0 -55px 0;
}
.contact .img{
    position: absolute;
    right: -13px;
    bottom: 0px;
}
.contact .img img{
    max-width: 100%;
	height: auto;
}
.contact_btn{
	margin: 0px;
	margin-bottom: 10px;
	background: linear-gradient(to right, #c00120, #ca4d5f);
}
/**.contact_btn a{
    position: relative;
    padding: 0 0 0 50px;
}**/
.contact_btn a{
	line-height: 60px;
    padding: 10px 30px 10px 25px;
	display: block;
	text-align: center;
}
.contact_btn a span{
	position: relative;
	color: #ffffff;
	padding-left: 20px;
    display: inline-block;
}
.contact_btn::after{
    content: none !important;
}
.contact_btn a span::after {
    content: "";
    position: absolute;
    display: block;
    width: 23px;
    height: 15px;
    top: 54%;
    left: -10px;
    background: url("../service_develop/images/mail.png") no-repeat;
    background-size: contain;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}
.tel_btn{
	margin: 0px;
	background: linear-gradient(to right, #165ca2, #448ad0);
}
.tel_btn a{
	line-height: 60px;
    padding: 10px 30px 10px 25px;
	display: block;
	text-align: center;
}
.tel_btn a span{
	position: relative;
	color: #ffffff;
	padding-left: 20px;
    display: inline-block;
}
.tel_btn::after{
    content: none !important;
}
.tel_btn a span::after {
    content: "TEL";
	color: #ffffff;
    position: absolute;
    display: block;
    top: 50%;
    left: -20px;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}
.contact_inner:first-child {
    padding: 0px 0px 0px 50px;
}
.contact_inner .name {
    padding: 30px 0px 5px 30px;
    font-size: 70%;
    text-align: right;
    width: 55%;
}
.contact_inner .deco{
    color: #145aa0;
}
.contact_inner .comment{
    width: 100%;
    background: #EDF0F3;
    padding: 30px 25px 0px 25px;
    font-size: 115%;
    font-weight: 800;
	position: relative;
}

.contact_inner .comment p{
    padding-top: 10px;
    padding-left: 30px;
}

@media only screen and (max-width: 1040px) {
.contact_box{
    display: block;
    padding: 35px 0px 0 0;
}
.contact_inner:first-child {
    padding: 55px 0px 0px 0px;
}
.contact_inner:last-child {
    padding:40px 30px 30px 30px;
}
.contact_inner{
    width: 100% !important;
    height: auto;
}
.contact .img{
    position: absolute;
    right: -13px;
    bottom: 0px;
	width: 200px;
}
.contact_btn {
	margin: 0 auto 10px auto;
}
.contact_btn a,
.tel_btn a{
	line-height: 50px;
}
.tel_btn {
	margin: 0 auto 0 auto;
}	
}
@media only screen and (max-width: 640px) {
.contact_inner .name {
    padding: 35px 0px 25px 10px;
    font-size:clamp(10px, 2.7vw, 15px);
    display: block;
    width: calc(100% - 120px);
}
.contact_inner .comment {
    width: 100%;
    font-size:clamp(12px, 3.7vw, 24px);
}
.contact_inner:first-child {
    padding: 35px 0px 0px 0px;
}
.contact .img {
    position: absolute;
    right: 0px;
    bottom: -1px;
    width: 120px;
    height: auto;
}
.contact .img img{
    width: 100%;
    height: auto;
}
.contact_inner:last-child {
    position: relative;
    width: 55%;
    padding: 30px 0px;
}
.contact{
    padding: 0 15px;
}
.contact_copy {
    font-size: clamp(12px, 5vw, 24px);
    font-weight: 700;
    padding:30px 35px 0px 40px;
    margin:-10px 0 -55px 0;
}
}

.fotter_top{
    padding: 20px 15px;
    background: #145aa0;
}
.fotter_top .inner{
    display: flex;
    justify-content: space-between;
    max-width: 1300px;
    width: 100%;
    margin: 0px auto;
}
.fotter_btn {
    width: 50%;
    /*height: 65px;*/
    margin: 0px 0px auto 0px ;
    background: #145aa0;
    border: 3px solid #FFF;
    color:#fff;
    font-size: 	112.5%;
    box-shadow: none;
}
.fotter_btn a{
    color:#FFF;
	padding: 5px 0px 5px 0px;
}
.text_box{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.text_box .text{
    display: block;
    padding: 0px 15px 0px 0px;
    font-size: 100%;
}
.text_box div,.text_box a,.tel_text {
    color:rgba(255,255,255,1.00);
}
.fotter_top　p{
    font-size: 100%;
    color: rgba(255,255,255,1.00);
}
#copyright{
    padding: 15px;
    font-size: 87.5%;
    text-align: center;
}
@media only screen and (max-width: 640px) {
    .fotter_top .inner{
    display: block;
}
.fotter_btn {
    width: 100%;
    margin: 25px auto 0 auto;
    font-size: 87.5%;

}
.text_box{
    font-size: 85%;
}
#copyright{
    padding: 15px;
    font-size: 75%;
    text-align: center;
}
}


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

記事詳細

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

.main_area{
    display: flex;
    margin: 50px auto 60px auto;
    max-width: 1330px;
    padding: 0px 15px;
}
.main_article{
    width: calc(100% - 280px);
    padding: 0px 35px 0px 0px;
}

.right{
    width: 280px;
    padding: 0px 0px 0px 0px;
}
.body_article img{
    width: 100%;
    height: auto;
}

@media only screen and (max-width: 1040px) {
.main_area{
    display: block;
    margin: 20px auto 50px auto;
}
.main_article{
    width: 100%;
    padding: 0px;
    margin: 0px 0px 55px 0px;
}
.right{
    width: 100%;
    padding: 0px;

}
}
@media only screen and (max-width: 640px) {
	
.main_area{
	padding: 0px 10px;
}
	
}
/*title*/
.title_article_area{
    position: relative;
    padding: 12px 0;
}
.title_article_area::before{
    position: absolute;
    bottom: 0px;
    left: 0px;
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: #d4dfe4;
}
.category {
    display: inline-block;
    padding: 10px 22px 10px 22px;
    background: #145aa0;
    line-height: 180%;
    font-weight: 700;
    border-radius: 25px;
}
.category p{
    color: #FFF;
}
.category_seminar {
    display: inline-block;
    padding: 10px 22px 10px 22px;
    background: #C00020;
    line-height: 180%;
    font-weight: 700;
    border-radius: 25px;
}
.category_seminar p{
    color: #FFF;
}
.title_article{
    font-size: 212.5%;
    font-weight: 700;
    margin: 10px 0 0 0;
}
.tag_article_area{
    margin: 12px 0 0 0;
}
.tag_article_area > div{
    display: inline-block;
    font-size: 93.8%;
    padding: 3px 8px;
}
.tag_article_area > div  a{
    color: #145aa0;
}
.date_a{
    margin: 10px 0 25px 0;
    text-align: right;
    font-size: 87.5%;
}


/*目次*/
.toc{
    padding: 20px 20px 20px 30px;
    margin: 0px 0px 35px 0px;
    background: #EDF0F3;
}
.toc ul{
	list-style-type: none;
	margin:0px 5px 5px 5px;
}
.toc ul{
    counter-reset:number;
}
.toc ul li:before{
	content:"・";
	position:absolute;
	left:0;
    text-decoration: underline;
    text-underline-position: under;  
}
.toc ul li:before{
	counter-increment: number;
	content: counter(number)".";
	position:absolute;
	left:0;
}
.toc ul li{
	position:relative;
	padding: 5px 0px 0px 20px;
}
.toc ul li a{
    pointer-events: auto;
    text-decoration: underline;
    text-underline-position: under;
}
@media screen and (max-width: 960px), print{
.toc {
    padding: 10px 10px 10px 15px;
    background: #EDF0F3;
}
.toc p{
    margin: 0 0 5px 0;
}
.toc ul li{
    font-size: 87.5%;
    line-height: 180%;
	padding: 3px 0px 0px 15px;
}
}
@media screen and (max-width: 640px){
.toc ul li{
	padding: 3px 0px 0px 15px;
}
}

@media only screen and (max-width: 1040px) {
.category{
    font-size: clamp(10px, 2.5vw, 15px);
    padding: 8px 15px 8px 15px;
}
.category_seminar{
    font-size: clamp(10px, 2.5vw, 15px);
    padding: 8px 15px 8px 15px;
}
.title_article{
    position: relative;
    font-size: clamp(18px, 3.85vw, 35px);
}
.pick_title h3 {
    position: relative;
    width: 100%;
    font-size: clamp(13px, 4.25vw, 24px);
}
.tag_article_area {
    margin: 8px 0 0 0;
}
.tag_article_area > div{
    font-size: clamp(12px, 2.8vw, 15px);
}
}

/*記事内*/
.body_article{
    padding: 30px 45px 40px 45px;
    border: solid 3px #2878c8;
}
.title_sub_article {
    margin:0px 0px 25px 0px; 
}
.title_sub_article p {
    position: relative;
    font-size: 200%;
    font-weight: 700;
    padding: 0px 0px 0px 20px;
}
.title_sub_article p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 55%;
    display: block;
    height: 50%;
    width: 7px;
    background: #145aa0;
    transform: translateY(-50%);
}

.text_article {
    margin:0px 0px 25px 0px; 
}
.text_article p{
    margin:0px 0px 25px 0px; 
    font-size: 112.5%;
    line-height: 175%;
}
.text_article a{
	padding-bottom: 3px;
    color: #145aa0;
	border-bottom: 2px solid rgba(20,90,160,1.00);
	transition: 0.3s;
}
.text_article a:hover{
	border-bottom: none;
	border-bottom: 2px solid rgba(20,90,160,0);
	transition: 0.3s;
	opacity: 0.5;
}

.article_content_area{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.article_content_area .content_box{
	padding: 20px;
	margin-bottom: 17px;
	flex-basis: 49%;
	background-color: #f3f4f6;
	box-sizing: border-box;
}

.article_content_area .content_box p:first-child{
	padding-bottom: 10px;
	margin-bottom: 10px;
	font-size: 130%;
	color: #145aa0;
	border-bottom: 2px solid #145aa0;
}

.block_article{
    width: 100%;
    height: auto;
    margin: 0px 0px 45px 0px;
}

.img_article {
    margin: 0px 0px 25px 0px;
}
.img_article img {
    max-width: 100%;
    width: auto;
    height: auto;
}

.img_article_max {
    margin: 0px 0px 25px 0px;
}
.img_article_max {
    width: 100%;
    height: auto;
}

.text_strong{
    font-size: 166.7%;
    font-weight: 600;
}
.blue{
    color:#145aa0;
}
.pager{
    margin: 40px 0 0 0;
}
.pager ul{
	width:100%;
	display:flex;
	justify-content:center;
}
.pager ul li{
	padding:0px 5px 0px 0px;
	margin:0px 0px 5px 0px;
}

.pager ul li:last-of-type{
	padding:0px 0px 0px 0px;
	margin:0px 0px 0px 0px;
}

.pager ul li a, .pager ul li span{
	display:block;
	padding:12px 15px;
	text-decoration:none;
	border:1px solid #d7d7d7;
	background-color:#ffffff;
	color:#333333;
	line-height:1;
}

#contents .pager ul li a{
	transition:all 0.2s ease-in;
}

#contents .pager ul li a:hover, #contents .pager ul li a:active{
	background-color:#f5f5f5;
}

.pager ul li a:hover, .pager ul li a:active{
	background-color:#f5f5f5;
}

#contents .pager ul li.number_on span, .pager ul li.number_on span{
	background-color:#f5f5f5;
}

#contents .pager ul li a li span.nolink{
	background-color:#f5f5f5;
}

/*anchor*/
.block_article {
    display: block;
    padding-top: 200px;
    margin-top: -200px;
}


/*flex_block*/
.flex_block{
    display: flex;
}
.flex_block .left_img{
    width: calc(calc(100% / 5) * 2);
    height: auto;
    padding: 0px 35px 0px 0px;
}
.flex_block .left_img img{
    width: 100%;
    height: auto;
}
.flex_block .right_img{
  order: 1;
}
.flex_block .right_img{
    width: calc(calc(100% / 5) * 2);
    height: auto;
    padding: 0px 0px 0px 35px;
}
.flex_block .right_img img{
    width: 100%;
    height: auto;
}
.flex_block .text_article{
    margin: 0px 0px 5px 0px;
    width: calc(100% - calc((100% / 5) * 2));
}

.article_btn{
	margin-top: 50px;
    background: #ffe013;
}
.article_btn a{
    line-height: 60px;
    padding: 10px 30px 10px 25px;
    display: block;
    text-align: center;
	border-bottom: none;
}
.article_btn a span{
	position: relative;
    color: #333333;
    padding-left: 20px;
    display: inline-block;
}
.article_btn a span::after {
    content: "";
    position: absolute;
    display: block;
    width: 33px;
    height: 31px;
    top: 50%;
    left: -5%;
    background: url(../service_develop/images/download_icon.svg) no-repeat;
    background-size: contain;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
.btn::before{
    content: none;
}

@media only screen and (max-width: 1040px) {
.body_article {
    padding: 25px 25px 40px 25px;
    border: solid 3px #3395b6;
}
.title_sub_article {
    margin: 0px 0px 20px 0px;
}
.title_sub_article p {
    position: relative;
    width: 100%;
    font-size: clamp(15px, 4.25vw, 20px);
}

.text_article p {
    margin:0px 0px 25px 0px; 
    font-size: 87.5%;
}
.block_article {
    width: 100%;
    height: auto;
}
.text_strong{
    font-size: 142.9%;
    font-weight: 600;
}

.block_article {
    display: block;
    padding-top: 80px;
    margin-top: -80px;
    margin-bottom: 30px;
}
}

@media screen and (max-width:640px){
.body_article{
    padding: 15px 10px 35px 10px;
    border: solid 3px #3395b6;
}
.title_sub_article {
    margin: 0px 0px 10px 0px;
}
.img_article {
    margin: 0px 0px 12px 0px;
}
.text_strong{
    font-size: 	128.6%;
    font-weight: 600;
}

.flex_block .left_img {
    padding: 0px 15px 0px 0px;
}
.flex_block .right_img {
    padding: 0px 0px 0px 15px;
}
}
@media screen and (max-width:460px){
.flex_block{
    display: block;
}
.flex_block .left_img {
    width: 100%;
    max-width: auto;
    margin: 0px auto 12px auto;
    height: auto;
    padding: 0px 0px 0px 0px;
}
.flex_block .right_img {
    width: 100%;
    max-width: auto;
    margin: 0px auto 12px auto;
    height: auto;
    padding: 0px 0px 0px 0px;
}
.flex_block .text_article{
    margin:0px 0px 5px 0px; 
    width: 100%;
    height: auto;
}
.text_article p{
    margin:0px 0px 8px 0px; 
}
.text_strong{
    font-size:	107.1%;
    font-weight: 600;
}
.article_content_area .content_box{
	padding: 20px;
	margin-bottom: 10px;
	flex-basis: 100%;
}
.article_content_area .content_box p:first-child{
	padding-bottom: 5px;
	margin-bottom: 5px;
	font-size: 120%;
}
}

.program_menu{
    padding: 0px;
    margin: 0px 0px 15px 0px;
    border: 3px solid #145aa0;
}

.program_menu_title {
    padding: 10px 15px 10px 15px;
    margin: -1px;
    background: #145aa0;
    color: #FFF;
    font-size: 93.8%;
}
.program_menu_ul ul{
    padding: 12px 0px;
}
.program_menu_ul li {
    margin: 3px 0px;
}
.program_menu_ul li a{
    position: relative;
    display: block;
    padding: 8px 8px 8px 45px;
    font-size: 93.8%;
}

.program_menu_ul li a::before{
    content: "";
    position: absolute;
    display: block;
    width: 10px;
    height: 10px;
    top: 50%;
    left: 20px;
    background: url("../service_develop/images/arrow_02.svg") no-repeat;
    background-size: contain;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
.tag_box {
    padding: 20px 20px 20px 20px;
    margin: 0px 0px 35px 0px;
    background: #EDF0F3;
}
.colum_tag_box {
    padding: 20px 20px 20px 20px;
    margin: 106px 0px 35px 0px;
    background: #EDF0F3;
}
.colum_article_tag_box {
    padding: 20px 20px 20px 20px;
    margin: 34px 0px 35px 0px;
    background: #EDF0F3;
}
.right_menu_tags {
    display: inline-block;
    position: relative;
    margin: 0px 0px 0px 5px;
    line-height: 200%;
	color: #145aa0;
}
.right_menu_tags::before{
    content: "#";
}

.new_article .sub_menu_title {
    margin: 0px 0px 15px 0px;
}
.new_article_ul li{
    margin: 0px 0px 10px 0px;
}
.new_article_ul li a{
    padding: 0px 0px 5px 0px;
    pointer-events: auto;
    text-decoration: underline;
    text-underline-position: under;
}

@media only screen and (max-width: 1040px) {
	
.colum_tag_box {
    padding: 20px 20px 20px 20px;
    margin: 0px 0px 35px 0px;
    background: #EDF0F3;
}
	
.colum_article_tag_box {
    padding: 20px 20px 20px 20px;
    margin: 0px 0px 35px 0px;
    background: #EDF0F3;
}
	
}