/* CSS Document */
.ttl_h2 {/*既存*/
    z-index: 1;
}
.f_wrapper{
	padding:80px 0 100px;
}
.f_venderWrapper,
.f_thumbWrapper{
	display: flex;
	flex-wrap: wrap;
	gap:3%;
	margin-top:5%;
}
.f_venderWrapper a{
	width:calc((100% / 3) - 3%);
	box-sizing: border-box;
	padding:2em;
	border-radius: 12px;
	background:#fff;
	cursor: pointer;
	display: block;
	margin-bottom:3%;
	border-bottom:5px solid #e58e68;
    background-image: url(../images/service_arr.png);
    background-position: right bottom;
    background-repeat: no-repeat;
    transition: all .2s ease-in;
}
.f_venderWrapper a img{
	display: block;
	margin:auto;
	margin-bottom:1em;
}
.f_venderWrapper a p{
	color:#001031;
    transition: all .2s ease-in;
}
.f_venderWrapper a:hover p{
	color:#e58e68;
    transition: all .2s ease-in;
}
div.f_wrapper.f_blog{
	background-image: radial-gradient(circle at 19% 90%, rgba(190, 190, 190,0.04) 0%, rgba(190, 190, 190,0.04) 17%,transparent 17%, transparent 100%),radial-gradient(circle at 73% 2%, rgba(78, 78, 78,0.04) 0%, rgba(78, 78, 78,0.04) 94%,transparent 94%, transparent 100%),radial-gradient(circle at 45% 2%, rgba(18, 18, 18,0.04) 0%, rgba(18, 18, 18,0.04) 55%,transparent 55%, transparent 100%),radial-gradient(circle at 76% 60%, rgba(110, 110, 110,0.04) 0%, rgba(110, 110, 110,0.04) 34%,transparent 34%, transparent 100%),radial-gradient(circle at 68% 56%, rgba(246, 246, 246,0.04) 0%, rgba(246, 246, 246,0.04) 16%,transparent 16%, transparent 100%),radial-gradient(circle at 71% 42%, rgba(156, 156, 156,0.04) 0%, rgba(156, 156, 156,0.04) 47%,transparent 47%, transparent 100%),radial-gradient(circle at 46% 82%, rgba(247, 247, 247,0.04) 0%, rgba(247, 247, 247,0.04) 39%,transparent 39%, transparent 100%),radial-gradient(circle at 50% 47%, rgba(209, 209, 209,0.04) 0%, rgba(209, 209, 209,0.04) 45%,transparent 45%, transparent 100%),linear-gradient(90deg, rgb(0,16,49),rgb(44, 27, 154));
}
.f_wrapper.f_faq{
	background-image:url("../images/f_faqbg.webp");
	background-repeat: no-repeat;
	background-position: center;
	background-size:cover;
	position: relative;
	z-index: -1
}
.f_wrapper.f_faq::after{
	content: "";
	width:100%;
	height: 100%;
	position: absolute;
	margin:auto;
	top:0;
	bottom:0;
	left:0;
	right:0;
	background-color:rgba(0,0,0,0.5);
	z-index: 0
}
.f_thumbWrapper a{
	width:calc((100% / 3) - 3%);
	box-sizing: border-box;
	border-radius: 12px;
	cursor: pointer;
	display: block;
	margin-bottom:3%;
    transition: all .2s ease-in;
}
@media(max-width:767px){
	.f_thumbWrapper a{
		width:calc((100% / 1) - 3%);
	}
}
.f_thumb img{
	border-radius: 12px;
    transition: all .2s ease-in;
}
.f_thumbWrapper a:hover img{
	box-shadow: 0 0 12px rgba(255,255,255,.65);
    transition: all .2s ease-in;
}
.f_thumb p.f_blogdate{
	text-align: right;
	font-size:14px;
}
div.f_body.blog p.f_blogdate,
div.f_body.blog p.f_title{
	margin:0 1em;
}
div.f_body.blog ul.f_blogcat li{
	list-style: none !important;
	margin:0;
}
div.f_body.blog p a,
div.f_body.blog ul a,
div.f_body.blog ol a{
	color:#cf683c !important;
}
div.f_body.blog p a:hover,
div.f_body.blog ul a:hover,
div.f_body.blog ol a:hover{
	text-decoration: underline;
}
ul.f_blogcat{
	display: flex;
	flex-wrap: wrap;
	gap:1em;
	margin:0.5em;
}
ul.f_blogcat li{
	font-size:14px;
	background:#001031;
	padding:0 1em;
	border-radius: 20px;
	border:1px solid #fff;
}
dl.faq{
	width:100%;
	max-width:1200px;
	margin:25px auto 50px;
	position: relative;
	z-index: 1
}
dl.faq dt{
	padding:25px;
	cursor:pointer;
	padding-left:80px;
	position: relative;
	font-weight: bold;
	background-image:url("../images/arrow_faq_open.svg");
	background-position: right 25px center;
	background-repeat: no-repeat;
	background-size:20px;
	color:#001031;
	font-size:18px;
	border-radius: 12px;
	background-color:#fff;
}
@media(max-width:767px){
	dl.faq dt{
		padding-left:40px;
		background-position: right 10px center;
		background-size:10px;
	}
}
dl.faq dt.new::after{
	content: "";
	position: absolute;
    width: 30px;
    height: 30px;
    background-image: url("../images/icon_new.svg");
    background-size: 30px;
    background-repeat: no-repeat;
    background-position: center;
    right: -10px;
    top: -10px;
}
dl.faq dt h1{
	font-size:1.8rem;
	font-weight: bold;
}
dl.faq dt.open{
	background-image: url("../images/arrow_faq_close.svg");
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}
dl.faq dt::before{
	content: "Q";
	font-size:3.0rem;
	position: absolute;
	margin:auto;
	top:-0.2em;
	left:0.3em;
	font-weight: bold;
	color:var(--green-color);
}
@media(max-width:767px){
	dl.faq dt::before{
		content: "Q";
		font-size:1.8rem;
		position: absolute;
		margin:auto;
		top:1em;
		left:0.5em;
		font-weight: bold;
		color:var(--green-color);
	}
}
@media(max-width:640px){
	dl.faq dt::before{
		content: "Q";
		font-size:1.8rem;
		position: absolute;
		margin:auto;
		top:1em;
		left:0.5em;
		font-weight: bold;
		color:var(--green-color);
	}
}
dl.faq dd{
	background:#001031;
	padding:25px;
	color:#fff;
	display: none;
	overflow: hidden;
	border-bottom-left-radius: 12px;
	border-bottom-right-radius: 12px;
}
dl.faq dd.f_gray{
	background-color:#efefef;
	color:#001031;
}
dl.faq dd.open{
	display: block;
}
dl.faq table td{
	border:1px solid #fff;
	padding:10px;
}
dl.faq table {
	margin-bottom:1em;
}
dl.faq a.faq{
	padding:15px 50px;
	color:var(--green-color);
	background-color:#fff;
	background-image:url("../images/arrow_right.svg");
	background-position: right 15px center;
	background-repeat: no-repeat;
	background-size:15px;
	transition: background-color 0.2s;
	text-decoration: none !important;
}
dl.faq a.faq:hover{
	background-color:var(--blue-color);
	color:#fff;
	transition: background-color 0.2s;
}
dl.faq dd a{
	text-decoration: underline;
	color:#fff;
}
dl.faq dd a:hover{
	color:var(--blue-color);
}
dl.faq a.permalink{
	display: block;
	width:20px;
	height: 20px;
	float: right;
	margin-top:25px;
}
dl.faq a.permalink img{
	object-fit:contain;
	opacity: 0.75;
}
dl.faq a.permalink img:hover{
	opacity: 1;
}
dl.faq ul{
	margin:1em;
}
dl.faq li{
	list-style: disc;
}
dl.faq span.newMark,
.f_card span.newMark{
	width:4em;
	height: 1.5em;
	line-height: 1.5em;
	text-align: center;
	font-size:14px;
	display: block;
	padding:2px 5px;
	background:#e16732;
	color:#fff;
	position: absolute;
	margin:auto;
	top:0;
	bottom:0;
	right:60px;
	z-index: 1;
}
.f_card span.newMark{
	top:-35px;
	right:5px;
	bottom: auto;
}
@media(max-width:767px){
	dl.faq span.newMark{
		width:4em;
		height: 1.5em;
		line-height: 1.5em;
		text-align: center;
		font-size:14px;
		display: block;
		padding:2px 5px;
		background:#e16732;
		color:#fff;
		position: absolute;
		margin:auto;
		top:-6em;
		right:1em;
	}
}
.page-header {
    width: 100%;
    height: 378px;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    box-sizing: border-box;
    padding-top: 80px;
    margin-bottom: 80px;
}
.page-header .topicpath {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: flex-start;
    font-size: 14px;
    line-height: 1.5em;
    gap: 4px;
    width: calc(100% - 60px);
    position: absolute;
    left: 30px;
    top: 112px;
}
.page-header .topicpath li {
    display: flex;
    justify-content: flex-start;
    gap: 4px;
    white-space: nowrap;
}
.page-header .topicpath li:not(:first-child):before {
    content: ">";
}
.page-header__text {
    display: flex;
    flex-direction: column;
    gap: 16px;
    text-align: center;
}
.page-header__title {
    font-size: 58px;
    line-height: 1em;
    margin: 0;
    text-shadow: 0 0 20px rgba(0, 20, 60, 0.8);
    font-weight: bold;
}
@media(max-width:1306px){
	.page-header__title {
		font-size: clamp(20px,4.44vw,58px);
	}
}
.page-header__title-en {
    font-size: 28px;
	font-size:clamp(14px,2.3vw,28px);
    line-height: 1em;
    margin: 0;
    font-family: "Roboto";
    font-weight: 600;
    text-shadow: 0 0 20px rgba(0, 20, 60, 0.8);
}
.page-header__image {
    font-size: 0;
    line-height: 0;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
}
.page-header__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: bottom center;
}
header ul.menu > li > a.active {
    color: #e58e68;
}
header ul.menu > li > a.active::before {
    background: #e58e68;
}
div.f_cardWrapper{
	display: flex;
	gap:5%;
}
div.f_cardWrapper a{
	display: block;
}
.f_dlwrapper{
	display: flex;
	flex-wrap:wrap;
	gap:5%;
}
.f_dlwrapper a{
	display: block;
	width:calc((100% / 2) - 5%);
	margin-bottom:5%;
}

div.f_card {
    width:calc((100% / 2) - 5%);
	width:100%;
    aspect-ratio:16/9;
    cursor: pointer;
    position: relative;
    --offset-multiplier: 4px;
    -webkit-transition: -webkit-transform 0.6s ease;
    transition: -webkit-transform 0.6s ease;
    transition: transform 0.6s ease;
    transition: transform 0.6s ease, -webkit-transform 0.6s ease;
    --translate: 0;
    -webkit-transform: translate(var(--translate), var(--translate));
    transform: translate(var(--translate), var(--translate));
    margin-bottom:40px;
}
div.f_card img{
    width:100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
    margin: auto;
}
div.f_card:hover {
    --offset-multiplier: 6px;
}
div.f_card:hover {
    --translate: calc(-1px * (var(--cards) - 1));
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

div.f_card div.child {
    position: absolute;
    width: 100%;
    height: 100%;
    padding: 0 16px;
    box-sizing: border-box;
    background: #fff;
    /*box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1), 0px -4px 8px rgba(255, 255, 255, 0.8);*/
    /*border-radius: 6px;*/
    -webkit-transition: inherit;
    transition: inherit;
    --translate: calc(var(--offset) * var(--offset-multiplier));
    -webkit-transform: translate(var(--translate), var(--translate));
    transform: translate(var(--translate), var(--translate));
    z-index: 5;
	border:1px solid #ccc;
}
div.f_card div.child:nth-child(1) {
    --offset: 0;
    z-index: 4;
}
div.f_card div.child:nth-child(2) {
    --offset: 1;
    z-index: 3;
}
div.f_card div.child:nth-child(3) {
    --offset: 2;
    z-index: 2;
}
div.f_card div.child:nth-child(4) {
    --offset: 3;
    z-index: 1;
}
div.f_card div.child:nth-child(5) {
    --offset: 4;
    z-index: 0;
}

div.f_card p.date{
    position: absolute;
    z-index: 13;
    width:100px;
    height: 20px;
    line-height: 20px;
    background:#001031;
    top:20px;
    left:20px;
    text-align: center;
    color:#fff;
    font-size:14px;
}
div.f_card p.newMark{
    display: block;
    width:50px;
    height: 19px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    background:url("../images/icon_new.svg") no-repeat;
    background-size:50px;
    position: absolute;
    top:20px;
    right:20px;
    z-index: 10;
}
div.f_card h3{
    position: absolute;
    z-index: 12;
    left:0;
    right:0;
    bottom:-85px;
    padding:10px;
    padding-bottom:25px;
    width:100%;
    margin:auto;
    overflow: hidden;
    text-overflow: ellipsis;
    /* white-space: nowrap;*/
    color:#fff;
}
.f_news{
	background-image:none !important;
}
.f_news .contents {
    display: block !important;
}
.f_comingsoon{
	font-size:clamp(24px,5vw,64px);
	font-weight: bold;
	font-family:"Roboto";
	text-align: center;
}
.f_worries {
	padding-top:100px;
	padding-bottom:150px;
}
@media(max-width:590px){
	.f_worries {
		padding-top:10px;
		padding-bottom:15px;
	}
}
.f_worries.f_proposal{
	background:#393B56;
	background:#110E5E;
	background:#5ec3d4;
	background:linear-gradient(to top,transparent,#f15a24);
	position: relative;
}
.f_worries.f_proposal::before{
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 250px solid transparent;
	border-left: 250px solid transparent;
	border-top: 100px solid #001031;
	border-bottom: 0;
	position: absolute;
	margin:auto;
	left:0;
	right:0;
	top:0;
}
.f_worries:nth-child(2n+1) {
	background:#393B56;
}
.f_worries.dark {
	background:none;
}
.f_worries h2 {
    font-size: 48px;
	font-size:clamp(20px,4vw,48px);
    line-height: 1.5;
    text-align: center;
    font-weight: 700;
}
.f_worries.dark h2{
	margin-bottom:2em;
}
div.f_separate{
	display: flex;
	justify-content: space-between;
}
@media(max-width:767px){
	div.f_separate{
		flex-direction: column;
	}
}
div.f_separate.f_align_center{
	align-items: center;
}
div.f_separate > div.f_inner{
	width:calc(50% - 15px);
	margin-bottom:50px;
}
@media(max-width:767px){
	div.f_separate > div.f_inner{
		width:calc(100% );
		margin-bottom:10px;
	}
}
div.f_general{
	margin-top:50px;
}
.f_s01{
	margin-top:50px;
}
.f_s01 .left img,
.f_s01 .right img{
	width:50%;
	display: block;
	margin:auto;
}
.f_s01 .right img{
	width:60%;
}
.f_s01 div{
	width:50%;
}
.f_s01 h3{
	font-size:32px;
	font-weight: bold;
	margin-bottom: 1em;
	border-bottom: 3px solid #fff;
}
.f_s01 ul{
	margin:1em 1em 3em;
}
.f_s01 ul li{
	padding-left:2em;
	background-repeat: no-repeat;
	background-size:1em;
	background-position: left 0.5em;
	background-image:url("../images/f_chk_white.svg");
}
.f_tac{
	text-align: center;
}
.f_figure{
	margin-top:50px;
}
.f_figure img{
	border-radius: 20px;
}
p.f_s05{
	background-color:#efefef;
	padding:2em;
	padding-left:7em;
	background-image:url("../images/f_attention.svg");
	background-position: left 1em center;
	background-size:5em;
	background-repeat: no-repeat;
	max-width:700px;
	margin:20px auto 0;
	border-radius: 20px;
	color:#001031;
}
p.f_s05 span{
	color:red;
	font-weight: bold;
	padding-left:2em;
	padding-right: 3em;
	background-size:2em;
	background-position: right center;
	background-repeat: no-repeat;
}
p.f_s05 span.f_up{
	background-image:url("../images/f_up.svg");
}
p.f_s05 span.f_down{
	background-image:url("../images/f_down.svg");
}
div.f_feature3{
	display: flex;
	justify-content: center;
	gap:4%;
	padding-top:100px;
	background-image:url("../images/f_s09.svg");
	background-position: center top;
	background-repeat: no-repeat;
	background-size:30%;
	margin-top:80px;
}
div.f_feature3 > div{
	width:calc((100% / 3) - 8%);
	border-radius: 12px;
	padding-top:18%;
	color:#001031;
}
div.f_f1{
	background-image: 
		url("../images/f_s11.svg"),
		linear-gradient(45deg, #f2f2f2, #d9d9d9);
	background-position: 
		center top 30px,
		center;
	background-repeat: no-repeat;
	background-size:
		50%,
		100%;
}
div.f_f2{
	background-image: 
		url("../images/f_s12.svg"),
		linear-gradient(45deg, #6ab4c2, #394272);
	background-position: 
		center top 30px,
		center;
	background-repeat: no-repeat;
	background-size:
		50%,
		100%;
	color:#fff !important;
}
div.f_f3{
	background-image: 
		url("../images/f_s10.svg"),
		linear-gradient(45deg, #f2f2f2, #d9d9d9);
	background-position: 
		center top 30px,
		center;
	background-repeat: no-repeat;
	background-size:
		50%,
		100%;
}
div.f_feature3 > div h3{
	text-align: center;
	font-weight: bold;
	position: relative;
}
div.f_feature3 > div h3::after{
	content: "";
	width:20%;
	height: 2px;
	position: absolute;
	margin:auto;
	left:0;
	right:0;
	bottom:-.5em;
}
div.f_feature3 > div.f_f1 h3::after,
div.f_feature3 > div.f_f3 h3::after{
	background:#001031;
}
div.f_feature3 > div.f_f2 h3::after{
	background:#fff;
}
div.f_feature3 ul{
	margin-top:2.5em;
	padding:0 1em 1em;
}
header ul.menu li {
    position: relative;
}
header ul.menu div.f_sub{
	position: absolute;
	width:400px;
	padding:25px;
	left:0;
	display: none;
}
@media(max-width:1200px){
	header ul.menu div.f_sub{
		position: static;
		padding:10px;
		width:auto;
		/*display: block;*/
	}
}
header ul.menu li:hover .f_sub {
  display: block;
  opacity: 1;
  visibility: visible;
}
header ul.menu div.f_sub ul{
	text-align: left;
}
header ul.menu li:hover .f_sub > ul{
	padding:1.5em;
	background:#efefef;
	border-radius: 20px;
	box-shadow: 3px 3px 12px rgba(0,0,0,0.35);
}
@media(max-width:1200px){
	header ul.menu li:hover .f_sub > ul{
		padding:0;
		background:none;
		border-radius: 0;
		box-shadow: none;
	}
}
header ul.menu li:hover .f_sub span{
	font-weight: bold;
	color:#001031;
	border-bottom:2px solid #001031;
}
@media(max-width:1200px){
	header ul.menu li:hover .f_sub span{
		font-weight: bold;
		color:#fff;
		border-bottom:2px solid #fff;
	}
}
.f_serviceMap{
	background-image:url("../images/f_s14.svg");
	aspect-ratio:2/1;
	background-position: center;
	background-size:contain;
	width:100%;
	height: auto;
	position: relative;
}
/*.f_serviceMap {
  position: relative;
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  background: url("/images/f_s14.svg") no-repeat center/contain;
  padding-top: 66%;
}
*/
.f_serviceMap a {
	position: absolute;
	display: block;
	text-indent: -9999px;
	overflow: hidden;
	background-repeat: no-repeat;
	background-size:cover;
	background-position: center;
}

/* ① データ仮想化導入サービス（左上） */
.f_serviceMap .f_m1 {
	left: 12.797%;
	top: 23.6%;
	width: 48.13489%;
	height: 8.04%;
	background-image:url("../images/f_mm1_off.svg");
	/*aspect-ratio:934.3137/48.2469 ;*/
}
.f_serviceMap .f_m1:hover,
.f_serviceMap .f_m1.current{
	background-image:url("../images/f_mm1_on.svg");
}
.f_serviceMap .f_m1.current{
	pointer-events: none;
}
/* ② メッセージ基盤導入サービス（左中央） */
.f_serviceMap .f_m2 {
	left: 12.95%;
	top: 47%;
	width: 19.48%;
	height: 10.91%;
	background-image:url("../images/f_mm2_off.svg");
}
.f_serviceMap .f_m2:hover,
.f_serviceMap .f_m2.current{
	background-image:url("../images/f_mm2_on.svg");
}
.f_serviceMap .f_m2.current{
	pointer-events: none;
}
/* ③ データ統合基盤導入サービス（中央上） */
.f_serviceMap .f_m3 {
	left: 41.35%;
	top: 47%;
	width: 19.48%;
	height: 10.91%;
	background-image:url("../images/f_mm3_off.svg");
}
.f_serviceMap .f_m3:hover,
.f_serviceMap .f_m3.current{
	background-image:url("../images/f_mm3_on.svg");
}
.f_serviceMap .f_m3.current{
	pointer-events: none;
}
/* ④ BI導入・可視化分析サービス（右上） */
.f_serviceMap .f_m4{
	left: 71.33%;
	top: 22.521%;
	width: 19.48%;
	height: 10.91%;
	background-image:url("../images/f_mm4_off.svg");
}
.f_serviceMap .f_m4:hover,
.f_serviceMap .f_m4.current{
	background-image:url("../images/f_mm4_on.svg");
}
.f_serviceMap .f_m4.current{
	pointer-events: none;
}
/* ⑤ AI基盤構築・活用支援サービス（右中央） */
.f_serviceMap .f_m5 {
	left: 71.33%;
	top: 50%;
	width: 19.48%;
	height: 10.91%;
	background-image:url("../images/f_mm5_off.svg");
}
.f_serviceMap .f_m5:hover,
.f_serviceMap .f_m5.current{
	background-image:url("../images/f_mm5_on.svg");
}
.f_serviceMap .f_m5.current{
	pointer-events: none;
}
/* ⑥ 業務プロセス分析・改善支援サービス（右下） */
.f_serviceMap .f_m6 {
	left: 71.33%;
	top: 36.271%;
	width: 19.48%;
	height: 10.91%;
	background-image:url("../images/f_mm6_off.svg");
}
.f_serviceMap .f_m6:hover,
.f_serviceMap .f_m6.current{
	background-image:url("../images/f_mm6_on.svg");
}
.f_serviceMap .f_m6.current{
	pointer-events: none;
}
/* ⑦ データ活用支援サービス（中央下の横長） */
.f_serviceMap .f_m7 {
	left: 12.95%;
	top: 75.995%;
	width: 77.86%;
	width: 80%;
	height: 8.04%;
	background-image:url("../images/f_mm7_off.svg");
}
.f_serviceMap .f_m7:hover,
.f_serviceMap .f_m7.current{
	background-image:url("../images/f_mm7_on.svg");
}
.f_serviceMap .f_m7.current{
	pointer-events: none;
}
p.f_p_service{
	width:83% !important;
	/*margin:auto !important;*/
	margin:auto;
}
h2 + p.f_p_service{
	margin-top:80px !important;
}
ul.f_unker{
	display: flex;
	justify-content: center;
	gap:3em;
	margin-bottom:80px;
	position: relative;
	z-index: 1;
}
@media(max-width:590px){
	ul.f_unker{
		flex-direction: column;
		align-items: flex-end;
		gap:1em;
		margin-bottom:0;
	}
}
ul.f_unker li{
	position: relative;
	padding-right:1.5em;
}
ul.f_unker li a::before {
    position: absolute;
    top: 50%;
    right: -7px;
    content: "";
    margin-top: -10px;
    width: 20px;
    height: 20px;
    background: #fff;
    border-radius: 50%;
    display: block;
    transition: all .2s ease-in;
}
ul.f_unker li:hover a::before {
    background: #cf683c;
}
ul.f_unker li a::after {
    position: absolute;
    top: 50%;
    right: 0;
    content: "";
    margin-top: -4px;
    width: 4px;
    height: 4px;
    border-top: 2px solid #000f37;
    border-right: 2px solid #000f37;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}
ul.f_unker li a{
	display: block;
	width:100%;
	height: 100%;
}
h2.f_title_service{
	font-size:24px;
	font-weight: bold;
	margin-bottom:2em;
	text-align: left;
}

.mt0{
	margin-top:0;
}
p.f_p_service + h2,
ul.f_service + h2{
	margin-top:80px;
}
figure.f_figure + h2{
	margin-top:80px;
}
figure.f_figure + p{
	padding-top:50px;
}

ul.f_service,
ol.f_service{
	margin:auto 15%;
}
ol.f_service{
	margin:5% 15%;
}
ul.f_service li{
	background-image:url("../images/f_arrow_service.svg");
	background-position: left top 0.4em;
	background-size:1.25em;
	background-repeat: no-repeat;
	padding-left:2.5em;
}
ol.f_service li{
	list-style: decimal;
}
div.unker{
	padding-top:100px;
	margin-top:-100px !important;
	position: relative;
	z-index: 0;
}
div.unker + h2{
	margin-top:100px;
}
div.f_relation{
	margin:1em 13% 3em;
	overflow: hidden;
	position: relative;
	z-index: 1;
}
div.f_relation.f_casein{
	margin-left:0;
}
div.f_relation a:not(:has(img)) {
	padding:0.25em 1em;
	text-align: center;
	border-radius: 4px;
	background:#fff;
	color:#000f37;
	position: relative;
	z-index: 2;
}
div.f_relation a:has(img) {
	/*width:268px;
	height: 138px;*/
	display: inline-block;
	float: left;
	margin-right: 2em;
	margin-bottom: 1em;
}
@media(max-width:590px){
	div.f_relation a:has(img) {
		width:40%;
	}
}
div.f_relation a:not(:has(img)):hover{
	background:#cf683c;
	color:#fff;
}
div.f_relation a:has(img):hover img{
	opacity:0.75;
}
a.f_faqmore{
	max-width:600px;
	width:60%;
	height: 80px;
	line-height: 80px;
	display: block;
	margin:80px auto 100px;
	border-radius: 40px;
	font-size: 24px;
	text-align:center;
	background:#5ec3d4;
	font-weight: bold;
	color:#fff;
	position: relative;
	z-index: 1;
}
a.f_faqmore:hover{
	background:#757dbb;
}
div.f_body h2,
div.f_body h3,
div.f_body h4,
div.f_body h5,
div.f_body h6{
	font-weight: bold;
	margin-bottom: 1em;
}
div.f_body p{
	margin:1em;
}
div.f_body ul,
div.f_body ol{
	margin:1em 1em 1em 2em;
}
div.f_body ol li{
	list-style: decimal;
}
div.f_body img{
	margin:1em;
}
div.f_body.case ul,
div.f_body.case ol{
	margin:1em 1em 1em 3em;
}
div.f_body.case ul li{
	list-style: disc;
}
div.f_body.case ol li{
	list-style: decimal;
}
div.f_body.case ul.f_nowrap{
	display: flex;
	gap:2em;
	flex-wrap: wrap;
}
div.f_body.case ul.f_nowrap.f_block{
	margin-bottom:50px;
}
div.f_body.case ul.f_nowrap.f_block li{
	list-style: none;
}
div.f_body.case ul.f_nowrap.f_block li a{
	/*display: block;*/
	border:1px solid #ccc;
	padding:5px 50px 5px 20px;
	border-radius: 4px;
	background-image:url("../images/f_light_arrow_white.svg");
	background-position: right 10px center;
	background-repeat: no-repeat;
	background-size:12px;
	line-height: 1em;
}
div.f_body.case ul.f_nowrap.f_block li a:hover{
	background-color:#fff;
	color:#001031;
	background-image:url("../images/f_light_arrow_blue.svg");
}
/*div.f_body.case dl{
	margin:1em;
	overflow: hidden;
}
div.f_body.case dl dt,
div.f_body.case dl dd{
	padding:0.5em 0;
}
div.f_body.case dl dt{
	width:15%;
	float: left;
	clear: both;
}
div.f_body.case dl dd{
	width:85%;
	float: right;
}*/
dl.f_case{
	display: flex;
	width:80%;
	margin:auto;
	gap:3em;
	align-items: center;
	padding:10px;
	border:2px solid #fff;
	border-radius: 8px;
	margin-bottom:1em;
}
dl.f_case.last{
	margin-bottom:100px !important;
}
dl.f_case dt{
	width:80px;
	display: flex;
	flex-direction: column;
	align-items: center;
	border-right: 2px solid #fff;
}
dl.f_case dt span{
	font-size:48px;
	line-height: 1em;
	font-family: Verdana, Geneva, "sans-serif";
	font-family: Tahoma, Geneva, "sans-serif";
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	font-weight: bold;
}
dl.f_case dd{
	font-size:20px;
	font-weight: bold;
}
ul.f_caseCategory{
	padding:25px;
	padding-top:50px;
	border:2px solid #fff;
	border-radius: 8px;
	margin-bottom:50px;
	display: flex;
	flex-wrap: wrap;
	gap:1em;
	position: relative;
	margin-top:25px;
	overflow: visible;
}
ul.f_caseCategory::before{
	content: "カテゴリー";
	color:#fff;
	position: absolute;
	background:#001031;
	padding:0 25px;
	margin:auto;
	left:0;
	right:0;
	top:-1em;
	font-weight: bold;
	text-align: center;
	width:12em;
	font-size:2rem;
}
ul.f_caseCategory li{
	display:inline-block;
	line-height: 1em;
	background:#ccc;
	border-radius: 4px;
}
ul.f_caseCategory li:hover{

}
ul.f_caseCategory li a{
	color:#001031;
	display: block;
	width:100%;
	height: 100%;
	padding:10px 20px;
}
ul.f_caseCategory li:hover,
ul.f_caseCategory li.active{
	background:#fff;
	color:#001031;
}
ul.f_caseCategory li:hover a,
ul.f_caseCategory li.active{
	color:#001031;
}
div.f_body.case h3{
	font-size:24px;
}
@media(max-width:767px){
	div.f_body.case h3{
		font-size:20px;
	}
}
div.f_body.case h3.underline{
	border-bottom:3px solid #394272;
	position: relative;
}
div.f_body.case h3.underline::after{
	content: "";
	width:20%;
	height: 3px;
	background-color:#6ab4c2;
	position: absolute;
	left:0;
	bottom:-0.125em;
}
@media(max-width:767px){
	div.f_body.case h3.underline::after{
		width:40%;
	}
}




ul.f_service_link {
	display: flex;
	flex-direction: column;
	gap:1em;
}
ul.f_service_link li{
	list-style: none !important;
	width:100%;
	max-width:360px;
	height: 45px;
	line-height: 45px;
	text-align: center;
	font-size:20px;
	background-color:#5ec3d4;
	border-radius: 45px;
	background-repeat: no-repeat;
	background-position: right 10px center;
	background-image:url("../images/f_light_arrow_white.svg");
	background-size:18px;
}
ul.f_service_link li:hover{
	background-color:#757dbb;
	transition: all .2s ease-in;
}
ul.f_service_link li a:hover{
	color:#fff;
}
@media(max-width:767px){
	ul.f_service_link li{
		height: 40px;
		line-height: 40px;
		font-size:16px;
	}
}
ul.f_service_link li a{
	display: block;
	width:100%;
	height: 100%;
}
ul.f_solution{
	width:80%;
	margin:auto auto 3em !important;
}
ul.f_solution li{
	list-style: none !important;
	background-image:url("../images/f_check1.svg");
	background-repeat: no-repeat;
	background-position: left top 0.5em;
	background-size:24px;
	padding-left:40px;
	margin-bottom:1em;
	font-size:20px;
}
.f_system{
	padding-bottom:100px;
}
h3.f_proposal{
	text-align: center;
	border-bottom:4px solid #fff;
	margin-top:1em;
	margin-bottom:1em;
}
h3.f_proposal span{
	font-size:48px;
}
p.f_schedule{
	width:80%;
	margin:auto auto 2em !important;
	font-size:20px;
	
}
ul.f_merit{
	width:80%;
	margin:auto auto 100px !important;
}
ul.f_merit li{
	list-style: none !important;
	font-size:24px;
	margin-bottom:1em;
	/*background-repeat: no-repeat;
	background-image:url("../images/f_circle.svg");
	background-size:36px;
	background-position: left top 0.3em;
	padding-left:50px;*/
	font-weight: bold;
	background:#fff;
	color:#f15a24;
	padding:1em;
	border-radius: 12px;
	background-repeat: no-repeat;
	background-position: left 20px center;
	background-image:url("../images/f_like.svg");
	background-size:50px;
	padding-left:90px;
	box-shadow: 3px 3px 12px rgba(0,0,0,0.35);
}
.f_case_photo img{
	border-radius: 12px;
	margin-bottom:100px !important;
}
.f_voiceWrapper {
	display: flex;
	gap:20px;
	justify-content: space-between;
	margin-bottom:50px !important;
}
.f_voiceWrapper  div.f_small{
	width:calc(30% - 10px);
}
.f_voiceWrapper  div.f_large{
	width:calc(70% - 10px);
	padding:25px;
}
.f_voiceWrapper  div.f_large h4{
	font-size:22px;
	font-weight: bold;
	border-bottom:2px solid #fff;
}
.f_voiceWrapper figcaption{
	text-align: center;
}
.f_voiceWrapper figure img{
	border-radius: 12px;
}
div.f_selectWrapper{
	display: flex;
	justify-content: flex-end;
	margin-right: 3%;
}

div.f_selectWrapper select{
	padding:10px 15px;
	border-radius: 4px;
	margin-bottom:1em;
	cursor: pointer;
	min-width: 160px;
}
div.f_contactPerson {
    width: 90%;
    overflow: hidden;
    display: flex;
    justify-content: flex-start;
    gap: 20px;
	margin:auto;
}
@media(max-width:767px){
	div.f_contactPerson {
		flex-direction: column;
	}
}
div.f_contactPerson dl {
    flex: 1;
    overflow: hidden;
    margin-bottom: 50px;
}
div.f_contactPerson dt {
    width: 80px;
    float: left;
    clear: both;
}
div.f_contactPerson dd {
    width: calc(100% - 100px);
    float: right;
}
div.f_contactPerson dt img{
	width:100% !important;
	height: auto !important;
	margin:0 !important;
}
div.f_blog_index {
	width:60%;
	padding:1em;
	margin:auto auto 50px !important;
	border:2px solid #fff;
	border-radius: 12px;
}
@media(max-width:767px){
	div.f_blog_index {
		width:90%;
		padding:1em;
		margin:auto auto 50px !important;
		border:2px solid #fff;
		border-radius: 12px;
	}
}
div.f_blog_index p{
	font-size:24px;
	font-weight: bold;
	text-align: center;
	border-bottom:2px solid #fff;
}
div.f_body.blog h3{
	font-size:24px;
	margin-top:2em;
	margin-bottom:1em;
	border:2px solid #fff;
	padding:0 1em;
	border-radius: 50px;
	background-color:#fff;
	color:#001031;
}
@media(max-width:767px){
	div.f_body.blog h3 {
		font-size: 20px;
		padding: 0.5em 1em;
	}
}
div.f_body.blog div.f_index{
	padding-top:100px;
	margin-top:-100px;
}
div.f_body.blog h4{
	font-size:20px;
	margin-top:2em;
	margin-bottom:1em;
	border-bottom:2px solid #fff;
	margin-left:1em;
}
div.f_body.blog ul,
div.f_body.blog ol{
	margin:1em 1em 1em 3em;
}
div.f_body.blog ul li{
	list-style: disc;
}
div.f_body.blog table{
	margin:1em auto 2em 1em;
}
div.f_body.blog table thead td{
	font-weight: bold;
	background:#fff;
	color:#001031;
}
div.f_body.blog table td{
	border:1px solid #fff;
}
div.f_body.blog blockquote{
	font-size:20px;
	padding:1em;
	font-weight: bold;
	background-repeat: no-repeat;
	background-position: left top,right bottom;
	background-size:20px;
	background-image:url("../images/f_quote.svg"),url("../images/f_quote2.svg");
	display: inline-block;
}
div.f_body.blog pre{
	margin:1em;
	border-radius: 12px;
	background:#000;
	padding:1em;
}
div.f_img_left,
div.f_img_right{
	display:flex;
	gap:20px;
}
@media(max-width:767px){
	div.f_img_right{
		flex-direction:column-reverse;
		gap:10px;
	}
	div.f_img_left{
		flex-direction:column;
		gap:10px;
	}
}
div.f_img_left img,
div.f_img_right img,
div.f_img_left p,
div.f_img_right p{
	width:calc(50% - 10px);
	height: auto;
}
@media(max-width:767px){
	div.f_img_left img,
	div.f_img_right img,
	div.f_img_left p,
	div.f_img_right p{
		width:calc(100% - 10px);
		height: auto;
	}
}
div.f_blog_info{
	border-top:1px solid #fff;
	border-bottom:1px solid #fff;
	margin-bottom:50px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
@media(max-width:767px){
	div.f_blog_info{
		flex-direction: column;
	}
}
div.f_blog_info > div{
	display: flex;
	justify-content: flex-start;
	gap:20px;
	align-items: center;
}
div.f_blog_info > div a{
	background:#fff;
	color:#001031;
	padding:2px 10px;
	border-radius: 4px;
}
div.f_blog_info > div a:hover{
	background:#f15a24;
	color:#fff;
}
div.f_blog_info > ul{
	width:300px;
	display: flex;
	justify-content: center;
	background:#fff;
	border-radius: 12px;
}
div.f_blog_info > ul img{
	width:50px;
	height: auto;
}
div.f_blog_info > ul li{
	list-style: none !important;
}
div.f_blog_info > ul li img{
	width:30px;
	height: auto;
}
div.f_body.blog div.f_kakomi{
	padding:20px;
	background:#333;
	border-radius: 12px;
	box-shadow: 3px 3px 12px rgba(0,0,0,0.5) inset;
}

div.f_body.blog .blog_h4_logo{
	background-image:url("../images/f_s09.svg");
	padding-left:250px;
	background-repeat: no-repeat;
	background-size:230px;
	background-position: left center;
	border:none;
}
@media(max-width:767px){
	div.f_body.blog .blog_h4_logo {
		padding-left: 0;
		padding-top: 60px;
		background-size: 230px;
		background-position: center top;
	}
}
@media(min-width:768px){
	div.f_blog_contents{
		width:90%;
		margin:auto;
	}
}


