/* soudan.css */

#ov_soudan p,
#ov_soudan span,
#ov_soudan div, 
#ov_soudan ul, 
#ov_soudan ol, 
#ov_soudan li,
#ov_soudan dt, 
#ov_soudan dd {
	font-size: 16px;
	color: #000;
	font-family: 'Noto Sans JP', sans-serif;
    font-style: normal;
	font-weight: 500;
}

#ov_soudan h2,
#ov_soudan h3,
#ov_soudan h4 {
    font-style: normal;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
}

.sp {
	display: none!important;
}

#ov_soudan .mt0 {
	margin-top: 0!important;
}

#ov_soudan .mt5 {
	margin-top: 5px!important;
}

#ov_soudan .mt10 {
	margin-top: 10px!important;
}

#ov_soudan .mt15 {
	margin-top: 15px!important;
}

#ov_soudan .mt20 {
	margin-top: 20px!important;
}

#ov_soudan .mt25 {
	margin-top: 25px!important;
}

#ov_soudan .mt30 {
	margin-top: 30px!important;
}

#ov_soudan .mt35 {
	margin-top: 35px!important;
}


#ov_soudan .mt40 {
	margin-top: 40px!important;
}

#ov_soudan .mt50 {
	margin-top: 50px!important;
}

#ov_soudan .mt60 {
	margin-top: 60px!important;
}

#ov_soudan .mt70 {
	margin-top: 70px!important;
}

#ov_soudan .mt80 {
	margin-top: 80px!important;
}

#ov_soudan .mt90 {
	margin-top: 90px!important;
}

#ov_soudan .mt100 {
	margin-top: 100px!important;
}

#contents {
	padding-bottom: 0;
}

#contents .katsuyo, .WebEditor .katsuyo {
	background-color: #fff;
	padding-bottom: 0;
}


/*-------------------
soudan_main
--------------------*/

#ov_soudan .soudan_main {
	width: 100%;
	height: 440px;
	overflow: hidden;
	position: relative;
}

#ov_soudan .soudan_main img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#ov_soudan .soudan_main img.sp {
	display: none;
}

#ov_soudan .soudan_main_cont {
	width: fit-content;
	display: flex;
	flex-direction: column;
	align-items: center;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 50px;
	margin: auto;
}

#ov_soudan .soudan_main_cont h2 {
	font-size: 50px;
	font-weight: 700;
	text-align: center;
	margin-top: 10px;
}

.main_image_sp {
	display: none;
}


/*-------------------
JSON
--------------------*/

.sou01 {
	width: 180px;
	overflow: hidden;
	transform: rotate(-15deg);
}

.sou02 {
	width: 120px;
	overflow: hidden;
}

.sou03 {
	width: 270px;
	overflow: hidden;
}

.sou04 {
	width: 160px;
	overflow: hidden;
}

/*-------------------
button
--------------------*/

#ov_soudan .s_btn {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	width: 500px;
	max-width: 100%;
	height: 80px;
	background-color: #FFC145;
	border: 2px solid #FFC145;
	border-radius: 10px;
	transition: all 0.3s ease-in-out;
}

#ov_soudan .s_btn02 {
	background-color: #fff;
	border: 2px solid #FFC145;
}

#ov_soudan .s_btn > span {
	display: inline-block;
	font-size: 18px;
	font-weight: 700!important;
	color: #000;
	position: relative;
}

#ov_soudan .soudan_main_cont .s_btn {
	margin-top: 50px;
}

#ov_soudan .s_btn > span:before {
	content: '';
	display: inline-block;
	vertical-align: middle;
	width: 44px;
	height: 32px;
	background: url(/images/soudan/btn_ar01.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	margin-right: 12px;
	margin-top: -4px;
	transition: all 0.3s ease-in-out;
}

#ov_soudan .s_btn02 > span:before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 44px;
    height: 32px;
    background: url(/images/soudan/btn_ar02.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    margin-right: 12px;
    margin-top: -4px;
	transition: all 0.3s ease-in-out;
}

#ov_soudan .s_btn_w {
	width: 600px;
}

#ov_soudan .s_btn:hover {
	opacity: 1;
	background-color: #fff;
}

#ov_soudan .s_btn:hover > span:before {
	transform: rotate(40deg);
	background: url(/images/soudan/btn_ar02.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

#ov_soudan .s_btn.s_btn02:hover {
	opacity: 1;
	background-color: #FFC145;
	border: 2px solid #fff;
}

#ov_soudan .s_btn02:hover > span:before {
	transform: rotate(40deg);
	background: url(/images/soudan/btn_ar01.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}


/*-------------------
sec_heading
--------------------*/

#ov_soudan .sec_heading {
	display: flex;
	flex-direction: column;
	align-items: center;
/*	gap: 10px;*/
	padding-bottom: 5px;
	margin-bottom: 70px;
}

#ov_soudan .sec_heading h2 {
	font-size: 40px;
	font-weight: 700;
	text-align: center;
	border-bottom: 2px dotted #6AC1D3;
}

#ov_soudan .sec_heading01 {
	margin-bottom: 50px;
}

#ov_soudan .sec_heading01 h2 {
	font-size: 35px;
	padding-bottom: 0;
	border-bottom: none;
}

#ov_soudan .sec_heading01 .sou03 {
	margin-top: -30px;
}



/*-------------------
sou_service
--------------------*/

#ov_soudan .sou_service_wrap {
	margin-top: 80px;
}

#ov_soudan .sou_service_list {
	margin-top: 40px;
}

#ov_soudan .sou_service_list > ul {
	display: flex;
	gap: 20px;
}

#ov_soudan .sou_service_list > ul > li {
	flex: 1;
}

#ov_soudan .sou_service_list > ul > li .sou_service_item {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
	height: 100%;
	background-color: #fff;
	padding: 40px 20px 40px;
	border: 2px solid #6AC1D3;
	border-radius: 10px;
}

#ov_soudan .sou_service_item h3 {
	color: #000!important;
	font-size: 20px!important;
	font-weight: 700!important;
	text-align: center!important;
	margin: 0 auto!important;
	background: linear-gradient(transparent 70%, #CAEBF2 70%)!important;
	font-family: 'Noto Sans JP', sans-serif;
}

#ov_soudan .sou_service_item .icimg {
	width: 240px;
	margin: 20px auto 0;
}

#ov_soudan .mailmag {
	width: 100%;
	background-color: #FFC145;
	padding: 100px 40px 50px 100px;
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 90px auto 0;
	position: relative;
}

#ov_soudan .mailmag:before {
	content: '';
	display: block;
	width: 125px;
	height: 117.5px;
	background: url(/images/soudan/mailmag_ic.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: -58px auto 0;
}

#ov_soudan .mailmag .mailmag_tit {
	position: relative;
	font-size: 30px;
	font-weight: 700;
	margin-bottom: 20px;
	display: flex;
  	align-items: center;
  	gap: 8px;
}

#ov_soudan .mailmag .mailmag_tit::before,
#ov_soudan .mailmag .mailmag_tit::after {
	content: "";
	width: 40px;
	border-top: 2px solid #000;
	transform: rotate(-60deg);
}

#ov_soudan .mailmag .mailmag_tit::before {
	transform: rotate(60deg);
}

#ov_soudan .mailmag .mailmag_text {
	text-align: center;
}

#ov_soudan .mailmag .s_btn {
	background-color: #fff;
	width: 600px;
	margin: 30px auto 0;
}

/*-------------------
サービスのご案内
--------------------*/

#ov_soudan .sr_anc_links_wrap {
	margin-top: 80px;
}

#ov_soudan .sr_anc_links_wrap .sec_heading {
	gap: 0;
}

#ov_soudan .sr_anc_links_wrap .sec_heading h2 {
	margin-top: -10px;
}

#ov_soudan .sr_anc_links {
	display: flex;
	gap: 20px;
}

#ov_soudan .sr_anc_links > li {
	flex: 1;
}

#ov_soudan .sr_anc_links > li > a {
	display: block;
	width: 100%;
	background: #fff;
	border: 2px solid #6AC1D3;
	border-radius: 10px;
	font-size: 16px;
	font-weight: 600;
	text-align: center;
	color: #000!important;
	padding: 18px 40px 18px 18px;
	position: relative;
	transition: all 0.3s ease-in-out;
}

#ov_soudan .sr_anc_links > li > a:after {
	content: '';
	width: 18px;
  	height: 16px;
	background: url(/images/soudan/ar_below.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: 0;
	right: 12px;
	bottom: 0;
	margin: auto;
	transition: top 0.3s ease-in-out;
}

#ov_soudan .sr_anc_links > li > a:hover {
	opacity: 1;
	color: #6AC1D3!important;
}

#ov_soudan .sr_anc_links > li > a:hover:after {
	top: 8px;
}


/*-------------------
海外展開相談のご案内
--------------------*/

#ov_soudan .sr_open_wrap {
	margin-top: 80px;
}

#ov_soudan .sr_open_wrap01 {
	width: 100%;
	height: 348px;
	background: url(/images/soudan/sr_open_bk01.png);
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
	padding-top: 120px;
}

#ov_soudan .sr_open_wrap02 {
	background: url(/images/soudan/sr_open_bk02.jpg);
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
	padding-top: 10px;
	padding-bottom: 100px;
}

#ov_soudan .sr_open_box {
	background-color: #fff;
	padding: 60px 100px 60px;
	border-radius: 20px;
}

#ov_soudan .sr_open_box.mt40 {
	margin-top: 40px;
}

#ov_soudan .sr_open_box .sr_open_tit {
	display: flex;
	flex-direction: column;
	align-items: center;
}

#ov_soudan .sr_open_box .sr_open_tit p {
	font-size: 25px;
	line-height: 1.6;
	font-weight: 700;
	text-align: center;
	background: linear-gradient(transparent 70%, #CAEBF2 70%);
}

#ov_soudan .sr_open_box .sr_open_tit h3 {
	color: #000!important;
	font-size: 25px!important;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700!important;
	text-align: center!important;
	margin: 50px auto 0!important;
	position: relative;
}

#ov_soudan .sr_open_box .sr_open_tit h3 .fuki {
	content: '';
	display: block;
	width: 114px;
	height: 104px;
	background: url(/images/soudan/fuki.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	top: -50px;
	right: -134px;
	display: flex;
	justify-content: center;
	flex-direction: column;
	
}

#ov_soudan .sr_open_box .sr_open_tit h3 .fuki span {
	display: block;
	font-size: 18px;
	font-weight: 700;
	padding-left: 12px;
}

#ov_soudan .sr_open_list {
	margin-top: 50px;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

#ov_soudan .sr_open_list > li {
	display: flex;
	position: relative;
}

#ov_soudan .sr_open_steps {
	gap: 40px;
}

#ov_soudan .sr_open_steps > li:after {
	content: '';
    width: 18px;
    height: 16px;
    background: url(/images/soudan/ar_below.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    left: 0;
	right: 0;
    bottom: -30px;
    margin: auto;
}

#ov_soudan .sr_open_list > li:last-child::after {
	content: none;
}

#ov_soudan .sr_open_list > li .sr_open_list_l,
#ov_soudan .sr_open_list > li .sr_open_list_r {
	padding: 27px 20px 22px 20px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

#ov_soudan .sr_open_list > li .sr_open_list_l {
	width: 260px;
	background-color: #6AC1D3;
	color: #fff;
	font-size: 20px;
	font-weight: 700;
	border-radius: 10px 0 0 10px;
}

#ov_soudan .sr_open_list > li .sr_open_list_r {
	width: calc(100% - 260px);
	background-color: #DEF2EC;
	border-radius: 0 10px 10px 0;
	font-size: 16px;
	font-weight: 500;
}

#ov_soudan .sr_open_box .s_btn {
	margin: 50px auto 25px;
}

#ov_soudan .exclam {
	font-size: 16px;
	font-weight: 500;
	padding-left: 25px;
	position: relative;
	text-indent: -25px;
	width: fit-content;
	margin: 30px auto 0;
}

#ov_soudan .exclam:before {
	content: '';
	display: inline-block;
	vertical-align: middle;
	width: 20px;
	height: 20px;
	background: url(/images/soudan/exclam.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	margin-right: 5px;
	margin-top: -4px;
}

#ov_soudan p a {
	display: inline;
	color: #E21E31!important;
	font-size: 1em;
	font-weight: 600;
	text-decoration: underline!important;
}

#ov_soudan .sr_open_steps> li .sr_open_list_l {
	width: 136px;
	align-items: center;
}

#ov_soudan .sr_open_steps > li .sr_open_list_r {
	width: calc(100% - 136px);
	flex-direction: row;
    align-items: center;
    justify-content: flex-start;
	padding-left: 40px;
}

#ov_soudan .sr_open_steps> li .sr_open_list_l p {
	font-size: 30px;
	color: #fff;
	font-weight: 600;
}

#ov_soudan .sr_open_steps> li .sr_open_list_l p span {
	font-size: 20px;
	color: #fff;
	font-weight: 600;
}

#ov_soudan .sr_open_steps> li .sr_open_list_r p {
	font-size: 16px;
	font-weight: 500;
	width: calc(100% - 150px);
}

#ov_soudan .sr_open_steps > li .sr_open_list_r p.desc {
	width: 150px;
	padding-right: 30px;
	font-size: 20px;
	font-weight: 700;
}

#ov_soudan .sr_open_steps> li .sr_open_list_r p.desc span {
	display: block;
	width: fit-content;
	background-color: #FFC145;
    border-radius: 5px;
	font-size: 14px;
	font-weight: 700;
    text-align: center;
    padding: 4px 10px 4px;
	line-height: 1;
}

#ov_soudan .sr_open_box .sr_open_text {
	font-size: 16px;
	margin-top: 40px;
	font-weight: 500;
}

#ov_soudan .sr_advlist .sr_open_tit h3 {
	margin-top: 0!important;
	font-family: 'Noto Sans JP', sans-serif;
}

#ov_soudan .advlist_img {
	width: 184px;
	margin: 20px auto 0;
}

#ov_soudan .sr_advlist_text {
	font-size: 16px;
	margin-top: 20px;
	text-align: center;
}

#ov_soudan .advlist_notice_tit {
	font-size: 20px;
	font-weight: 600;
	text-align: center;
	color: #E21E31;
	margin-top: 15px;
}

#ov_soudan .advlist_items {
	margin-top: 15px;
	padding-top: 15px;
	border-top: 1px dotted #A8A8A8;
}

#ov_soudan .advlist_items > li {
	font-size: 16px;
    font-weight: 500;
    padding-left: 25px;
    position: relative;
    text-indent: -25px;
    margin-top: 10px;
}

#ov_soudan .advlist_items > li:before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 20px;
    height: 20px;
    background: url(/images/soudan/check_ic.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    margin-right: 5px;
    margin-top: -4px;
}

/*-------------------
お役立ちリンク集
--------------------*/

#ov_soudan .uselinks_wrap {
	padding-top: 100px;
	padding-bottom: 100px;
	background-color: #fff;
}

#ov_soudan .uselinks {
	display: flex;
	gap: 20px;
}

#ov_soudan .uselinks > li {
	flex: 1;
}

#ov_soudan .uselinks > li > a {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
	color: #000;
	width: 100%;
	height: 100%;
	padding: 40px 30px 40px 30px;
	border: 2px solid #6AC1D3;
	border-radius: 10px;
}

#ov_soudan .uselinks > li > a .use_img {
	width: 228px;
	margin-top: auto;
}

#ov_soudan .uselinks > li > a .use_tit {
	text-align: center;
	font-size: 20px;
	font-weight: 700;
	color: #000;
}

#ov_soudan .uselinks > li > a .use_tit > span {
	display: block;
	text-align: center;
	font-size: 20px;
	font-weight: 700;
	color: #000;
	background: linear-gradient(transparent 70%, #CAEBF2 70%);
}

#ov_soudan .uselinks > li > a .use_text {
	font-size: 16px;
	color: #000;
}

#ov_soudan .center_text {
	text-align: center;
	font-size: 1.6rem;
}

/*-------------------
講習・セミナー・イベント
--------------------*/

#ov_soudan .sousemi_wrap {
    background: url(/images/soudan/sousemi_bk.jpg);
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    padding-top: 100px;
    padding-bottom: 100px;
	position: relative;
}

#ov_soudan .sousemi_wrap > .inner {
	position: relative;
}

#ov_soudan .sousemi_wrap .sousemi_img01 {
	width: 240px;
	position: absolute;
	top: 0;
	left: 0;
}

#ov_soudan .sousemi_wrap .sousemi_img02 {
	width: 180px;
	position: absolute;
	bottom: 0;
	right: 0;
}

#ov_soudan .sousemi {
	margin-top: 30px;
}

#ov_soudan .sousemi > li {
	margin-top: 15px;
}

#ov_soudan .sousemi > li > a {
	display: block;
	background-color: #fff;
	padding: 30px 40px 30px 30px;
	border: 1px solid #6AC1D3;
	border-radius: 10px;
	position: relative;
}

#ov_soudan .sousemi > li > a:after {
	content: '';
	display: block;
	width: 16px;
	height: 14px;
	background: url(/images/soudan/ar_right.png);
    background-position: center top;
    background-repeat: no-repeat;
    background-size: contain;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 20px;
	margin: auto;
}

#ov_soudan .sousemi > li > a > dl {
	display: flex;
	align-items: center;
	width: 100%;
}

#ov_soudan .sousemi > li > a > dl dt,
#ov_soudan .sousemi > li > a > dl dd {
	min-height: 60px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

#ov_soudan .sousemi > li > a > dl dt {
	font-size: 20px;
	font-weight: 700;
	color: #000;
	width: 340px;
	padding-right: 20px;
	position: relative;
}

#ov_soudan .sousemi > li > a > dl dd {
	width: calc(100% - 340px);
	padding-left: 20px;
	border-left: 1px solid #a8a8a8;
}

#ov_soudan .sousemi > li > a > dl dt span {
	display: block;
	width: fit-content;
	text-align: center;
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
	color: #fff;
	background-color: #a8a8a8;
	border-radius: 5px;
	padding: 3px 10px 2px 10px;
	margin-bottom: 5px;
	position: absolute;
	top: -5px;
}

#ov_soudan .contact_dest {
	width: fit-content;
	min-width: 700px;
	max-width: 740px;
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 60px auto 0;
	gap: 15px;
}

#ov_soudan .contact_dest .tit {
	font-size: 20px;
	text-align: center;
	font-weight: 700;
	width: 100%;
	padding-bottom: 15px;
	border-bottom: 1px dotted #ababab;
}

#ov_soudan .contact_dest .text {
	font-size: 15px;
}

#ov_soudan .contact_dest .text span {
	font-size: 16px;
	font-weight: 700;
}

#ov_soudan .contact_dest > a {
	text-align: center;
	font-size: 16px;
	text-decoration: underline!important;
	font-weight: 500;
	color: #000!important;
}

#ov_soudan .sousemi_wrap .sousemi_img02_sp {
	display: none;
}