@charset "utf-8"; 

@import"https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;200;300;400;500;600;700;800;900&display=swap";@import"https://fonts.googleapis.com/css2?family=Albert+Sans:wght@100;200;300;400;500;600;700;800&display=swap";@import"https://fonts.googleapis.com/css2?family=Manrope:wght@200;300;400;500;600;700;800&display=swap";footer,header{
    margin: 0;
    padding: 0;
    border: 0;
    font-weight: normal;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}


footer,header{
    display: block;
}

footer::before,footer::after, header::before,header::after{
    box-sizing: border-box;
}


header a{
	line-height: 1.2;
    font-size: 16px;
    font-size: 1.6rem;
	
	font-size: 68.5%;
	font-size: 14px;
	line-height: 14px;
	font-family: "Albert Sans",sans-serif;
    color: #333;
    -webkit-text-size-adjust: 100%;	
}

header a {
    display: inline-block;
    transition: all .3s linear
}

header a:not([class]):hover {
    opacity: .7
}



@media screen and (min-width: 769px) {
    .sp-visible {
        display:none !important
    }
}

@media screen and (max-width: 768px) {
    .pc-visible {
        display:none !important
    }
}

@media screen and (min-width: 415px) {
    .mb-visible {
        display:none !important
    }
}

@media screen and (max-width: 414px) {
    .tb-visible {
        display:none !important
    }
}

.l-body {
    background: #f4f6f7;
    overflow-x: hidden
}


nav.header-nav .header-nav-content + div .wrapper,
footer.box-footer div.wrapper{
    width: 1100px;
    margin: 0 auto
}

@media screen and (max-width: 768px) {
    nav.header-nav .header-nav-content + div .wrapper,
	footer.box-footer div.wrapper{
        width:100%
    }
}


/*
@-webkit-keyframes fadeInOut {
    0% {
        opacity: 0
    }

    33% {
        opacity: 1
    }

    67% {
        opacity: 1
    }

    100% {
        opacity: 0
    }
}

@keyframes fadeInOut {
    0% {
        opacity: 0
    }

    33% {
        opacity: 1
    }

    67% {
        opacity: 1
    }

    100% {
        opacity: 0
    }
}
*/
.splashbg {
    display: none
}

body.appear .splashbg {
    display: block;
    content: "";
    position: fixed;
    z-index: 999;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    background-color: #2d29b6;
    -webkit-animation-name: PageAnime;
    animation-name: PageAnime;
    -webkit-animation-duration: 1.2s;
    animation-duration: 1.2s;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

@-webkit-keyframes PageAnime {
    0% {
        -webkit-transform-origin: left;
        transform-origin: left;
        -webkit-transform: scaleX(0);
        transform: scaleX(0)
    }

    50% {
        -webkit-transform-origin: left;
        transform-origin: left;
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }

    50.001% {
        -webkit-transform-origin: right;
        transform-origin: right
    }

    100% {
        -webkit-transform-origin: right;
        transform-origin: right;
        -webkit-transform: scaleX(0);
        transform: scaleX(0)
    }
}

@keyframes PageAnime {
    0% {
        -webkit-transform-origin: left;
        transform-origin: left;
        -webkit-transform: scaleX(0);
        transform: scaleX(0)
    }

    50% {
        -webkit-transform-origin: left;
        transform-origin: left;
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }

    50.001% {
        -webkit-transform-origin: right;
        transform-origin: right
    }

    100% {
        -webkit-transform-origin: right;
        transform-origin: right;
        -webkit-transform: scaleX(0);
        transform: scaleX(0)
    }
}



body.appear #container {
    -webkit-animation-name: PageAnimeAppear;
    animation-name: PageAnimeAppear;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: .8s;
    animation-delay: .8s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    opacity: 0
}

@-webkit-keyframes PageAnimeAppear {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes PageAnimeAppear {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

.box-header {
    padding: 20px 30px 0;
	padding: 20px 30px 20px;
	/*background: #f4f6f7;*/
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 99
}

.box-header::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: #f5f6f8;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0;
    z-index: -1;
    transition: .3s all linear
}

.box-header.is-scroll {
    padding-bottom: 20px;
    opacity: 1
}

.box-header.is-scroll::after {
    opacity: 1
}

@media screen and (max-width: 768px) {
    .box-header {
        padding:15px 15px 0;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 999;
		height: 70px;
    }
}

.header-content {
    display: flex;
    justify-content: space-between;
    gap: 25px
}

.header-logo {
    margin-top: 12px;
    flex: none
}

@media screen and (max-width: 768px) {
    .header-nav {
        display:none
    }
}

.header-nav-close {
    display: none;
    width: 100vw;
    height: 100vw;
    background: rgba(0,0,0,0);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1
}

.header-nav-close.is-active {
    display: block
}

.header-nav-list {
    display: flex;
    gap: 45px;
    padding: 21px 50px;
    border-radius: 6px;
    font-weight: 400;
    font-family: "Albert Sans",sans-serif;
    font-size: 1.4rem;
    background: #fff;
    line-height: 1;
    box-shadow: 10px 10px 30px rgba(45,41,182,.1)
}

.header-nav-list.is-page {
    background: none;
    box-shadow: none
}

@media screen and (min-width: 769px)and (max-width: 1200px) {
    .header-nav-list {
        gap:2vw;
        padding-left: 2vw;
        padding-right: 2vw
    }
}

.header-nav-content {
    display: flex;
    gap: 8px
}

.header-nav-list-item {
    font-weight: 500
}

.header-nav-list-link {
    display: flex;
    transition-property: color,opacity;
    font-weight: bold;
	align-items: center;
}

.header-nav-list-link:hover,.header-nav-list-link.is-active {
    color: #2d29b6;
	
}

.header-nav-list-link:hover.is-menu::after,.header-nav-list-link.is-active.is-menu::after {
    color: #2d29b6;
	
	content: "";
	background-image:url("/blog/2023/12/04/assets/ico_gmenu.svg");
	background-size: 14px 14px;
	background-repeat: no-repeat;
	background-position: center center;
	opacity: 1.0;
	width: 14px; height: 14px; display: inline-block;
	
}

/* ★★ */
.header-nav-list-link.is-menu::after {
	content: "";
	background-image:url("/blog/2023/12/04/assets/ico_gmenu.svg");
	background-size: 14px 14px;
	background-repeat: no-repeat;
	background-position: center center;
	opacity: 0.3;
	width: 14px; height: 14px; display: inline-block;
    line-height: 1;
    margin-left: 2px;
    color: #bebede;
    transition: .3s all linear;
}

.header-nav-contact-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 120px;
    border-radius: 6px;
    font-weight: 400;
    font-family: "Albert Sans",sans-serif;
    font-size: 1.4rem;
	 font-size: 1.0rem;
    color: #fff;
    background: #2d29b6;
    box-shadow: 10px 10px 30px rgba(45,41,182,.2);
}

.header-nav-contact-btn:hover,.header-nav-contact-btn.is-active {
    background: #333;
	color: #fff;
}


/* add 20231121 */
.header-logo .header-nav-list_Language{display: none;}

.header-nav-list_Language{display: flex; margin-left: 1em;}
.header-nav-list_Language li{width:fit-content; height:auto; display: flex; justify-content: center; align-items: center; margin: auto; position: relative; font-size: 13px;}

.header-nav-list_Language li{color: #999; transition: all .5s;}
.header-nav-list_Language li:hover{color: #333;}
.header-nav-list_Language li:after{content: ""; width: 0%; height: 2px; position: absolute; left:0%; bottom:-7px; display: block; background-image:linear-gradient(90deg, #f5f6f8 0% 50%, #f5f6f8 50% 100%); transition: all .5s;
}
.header-nav-list_Language li:hover:after{content: ""; width: 100%; height: 2px; position: absolute; left:0%; bottom:-7px; display: block;
 background-image:linear-gradient(90deg, #2d29b6 0% 50%, #2d29b6 50% 100%);
 }

@media screen and (max-width: 768px) {
	/* バーガーメニュー押下前 */
	.header-nav-sp-btn{position: relative; top:12px;}
	.inner + .header-nav-list_Language{position: absolute; top:-20px; right: 2px;}
	.inner + .header-nav-list_Language li a{font-size: 1.0em; color: #b3b3b3;}
	.inner + .header-nav-list_Language li:hover a{color: #333;}
	
	.inner + .header-nav-list_Language li:after{content: ""; width: 0%; height: 1px; position: absolute; left:0%; bottom:-2px; display: block; background-image:linear-gradient(90deg, #FFF 0% 50%, #FFF 50% 100%); transition: all .5s;}
	.inner + .header-nav-list_Language li:hover:after{content: ""; width: 100%; height: 1px; position: absolute; left:0%; bottom:-2px; display: block; background-image:linear-gradient(90deg, #4d4d4d 0% 50%, #4d4d4d 50% 100%);}
	
	/* バーガーメニュー押下後 */
	.header-logo_area{display: flex; position: relative; top:-70px; left: -10px;}
	.header-logo_area img{width: 135px; height: auto;}

	.is-open .inner + .header-nav-list_Language li:hover a{color: #FFF;}
	.is-open .inner + .header-nav-list_Language li:after{content: ""; width: 0%; height: 1px; position: absolute; left:0%; bottom:-2px; display: block; background-image:linear-gradient(90deg, #4d4d4d 0% 50%, #4d4d4d 50% 100%); transition: all .5s;}
	.is-open .inner + .header-nav-list_Language li:hover:after{content: ""; width: 100%; height: 1px; position: absolute; left:0%; bottom:-2px; display: block; background-image:linear-gradient(90deg, #FFF 0% 50%, #FFF 50% 100%);}	
}


.header-sub-nav {
	
	
    line-height: 1.7;
    font-size: 14px;
    font-size: 1.4rem;
	font-size: 14px;
    font-family: "Noto Sans JP","游ゴシック","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ ゴシック",sans-serif;
	
	
	
	
    display: block;
    padding: 80px 0;
    background: #fff;
    box-shadow: 10px 10px 30px rgba(45,41,182,.3);
    border-radius: 10px;
    position: absolute;
    top: 110px;
    left: 30px;
    right: 30px;
    pointer-events: none;
    opacity: 0;
    max-height: calc(100vh - 130px);
    overflow: auto
}

.header-sub-nav.is-active {
    transition: .3s all linear;
    pointer-events: auto;
    opacity: 1
}

.header-sub-nav .wrapper {
    max-width: 100%;
	
	width: 1100px;
	margin: 0 auto;
}

@media screen and (max-width: 1160px) {
    .header-sub-nav .wrapper {
        padding-left:20px;
        padding-right: 20px
    }
}

.header-sub-nav-content {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 70px;
}

.header-sub-nav-content.is-outsidetitle {
    margin-top: 40px
}

.header-sub-nav-content .item-nav {
    position: relative
}

.header-sub-nav-content .item-nav::after {
    content: "";
    display: block;
    width: 0;
    height: 100%;
    border-right: 1px solid #f2f2f8;
    position: absolute;
    top: 0;
    right: -35px
}

.header-sub-nav-content .item:last-of-type::after {
    display: none

}

.header-sub-nav-heading {
    font-weight: 300;
    font-family: "Albert Sans",sans-serif;
    font-size: 6rem;
	font-size: 60px;
    color: #bebede;
    line-hight: 1;
    border-bottom: 1px #f2f2f8 solid;
	
    padding-bottom: 27px;
    margin-bottom: 53px
	
}

.header-sub-nav-title {
	font-family: "Noto Sans JP","游ゴシック","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ ゴシック",sans-serif;

    padding: 18px 20px;
    border-radius: 4px;
    font-size: 1.8rem;
	font-size: 18px;
    font-weight: 500;
    line-height: 1;
    background: #f2f2f8;
	
	
}

.header-sub-nav-item{
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	vertical-align: baseline;
	box-sizing: border-box;
	
}

.header-sub-nav-list-item {
    padding: 26px 0;
    border-bottom: 1px #f2f2f8 solid;
}

.header-sub-nav-list-item a{
	font-family: "Noto Sans JP","游ゴシック","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ ゴシック",sans-serif;
	
	font-size: 1.16rem;
	font-size: 16px;
}

.header-sub-nav-list-item .caption {
	font-family: "Noto Sans JP","游ゴシック","Yu Gothic",YuGothic,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ ゴシック",sans-serif;
	
    display: block;
    margin-left: 24px;
    color: #8b8ba7;
    font-size: 1.2rem;
	font-size: 12px;
    margin-top: 3px
}

.header-sub-nav-list-link:hover {
    color: #2d29b6
}

.header-sub-nav-list-link::before {
	content: "";
	background-image:url("/blog/2023/12/04/assets/ico_gmenu.svg");
	background-size: 16px 16px;
	background-repeat: no-repeat;
	background-position: center center;
	opacity: 1.0;
	transform: rotateZ(-90deg);
	position: relative; top:2px;
	
	width: 16px; height: 16px; display: inline-block;
	
    color: #2d29b6;
    margin-right: 10px;
	
	
	
}

.header-sub-nav-list-link .text-small {
    font-size: .875em;
	font-size: 13px;
}

.header-nav-sp {
    display: block;
    height: 100vh;
    padding: 97px 24px 0;
    background: #4d4d4d;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    overflow: scroll;
    opacity: 0;
    pointer-events: none;
    transition: .3s all ease-in
}

.header-nav-sp.is-open {
    opacity: 1;
    pointer-events: auto
}

@media screen and (min-width: 769px) {
    .header-nav-sp {
        display:none
    }
}

.header-nav-sp-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50px;
    height: 50px;
    background: #2d29b6;
    border-radius: 5px;
    box-shadow: 5px 5px 15px rgba(45,41,182,.2);
    position: relative;
    z-index: 999
}

@media screen and (min-width: 769px) {
    .header-nav-sp-btn {
        display:none
    }
}

.header-nav-sp-btn.is-open .inner::before,.header-nav-sp-btn.is-open .inner::after {
    top: 0;
    bottom: 0
}

.header-nav-sp-btn.is-open .inner::before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.header-nav-sp-btn.is-open .inner::after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.header-nav-sp-btn.is-open .bar {
    display: none
}

.header-nav-sp-btn .inner {
    width: 15px;
    height: 10px;
    position: relative
}

.header-nav-sp-btn .inner::before,.header-nav-sp-btn .inner::after {
    content: "";
    display: block;
    width: 100%;
    height: 0;
    border-bottom: 1px solid #fff;
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    transition: .2s transform linear
}

.header-nav-sp-btn .inner::before {
    top: -10px
}

.header-nav-sp-btn .inner::after {
    bottom: -10px
}

.header-nav-sp-btn .bar::after {
    content: "";
    display: block;
    width: 100%;
    height: 0;
    border-bottom: 1px solid #fff;
    position: absolute;
    top: -0.5px;
    bottom: 0;
    margin: auto
}


.header-sub-nav-list-item{text-indent: -1.2em; padding-left: 2.2em; }
.header-sub-nav-list-item a{line-height: 27.2px;}




.box-footer {
    padding: 98px 0 60px;
    color: #b3b3b3;
    background: #4d4d4d
}

@media screen and (max-width: 768px) {
    .box-footer {
        padding:50px 24px 25px
    }
}

.box-footer-contact {
    margin-top: 180px
}

@media screen and (max-width: 768px) {
    .box-footer-contact {
        margin-top:85px
    }
}

.footer-contact-content {
    padding: 0 19px
}

.footer-contact-heading {
    font-weight: 400;
    font-family: "Manrope",sans-serif;
    font-size: 10rem;
    line-height: .9
}

@media screen and (max-width: 768px) {
    .footer-contact-heading {
        font-size:5rem
    }
}

.footer-contact-text {
    line-height: 2.5;
    letter-spacing: .08em;
    margin-top: 60px
}

@media screen and (max-width: 768px) {
    .footer-contact-text {
        line-height:1.75;
        margin-top: 42px
    }
}

.footer-contact-link-wrap {
    margin-top: 90px
}

@media screen and (max-width: 768px) {
    .footer-contact-link-wrap {
        margin-top:50px
    }
}

.footer-partner {
    display: flex;
    gap: 30px;
    margin-top: 104px
}

@media screen and (max-width: 768px) {
    .footer-partner {
        justify-content:center;
        flex-wrap: wrap;
        margin-top: 60px;
        gap: 20px 12px
    }
}

.footer-partner-item.is-text {
    order: 2
}

@media screen and (max-width: 768px) {
    .footer-partner-item.is-text {
        order:1;
        flex: auto
    }
}

.footer-partner-item.is-atlassian {
    order: 1;
    flex: none
}

@media screen and (max-width: 768px) {
    .footer-partner-item.is-atlassian {
        order:2;
        flex: 0 0 192px
    }
}

.footer-partner-item.is-vissel {
    order: 3;
    flex: none
}

@media screen and (max-width: 768px) {
    .footer-partner-item.is-vissel {
        order:3;
        flex: 0 0 176px
    }
}

.footer-partner-item .text {
    font-size: 1.2rem;
	font-size: 12px;
    font-weight: 300;
    line-height: 2
}

.footer-copy {
    display: block;
    font-size: 1.2rem;
	font-size: 12px;
    font-weight: 300;
    text-align: center;
    margin-top: 70px
}

@media screen and (max-width: 768px) {
    .footer-copy {
        margin-top:46px
    }
}



/*----- unit-nav / header-nav-sp -------------------------*/

.unit-nav-title {
  font-size: 1.6rem;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  margin-bottom: 27px;
}
@media screen and (max-width: 768px) {
	.unit-nav-title {
		font-size: 1.5rem;
		font-size: 15px;
		font-weight: 400;
		line-height: 1;
		margin-bottom: 0;
		border-bottom: 1px solid #666;
	}
}

@media screen and (max-width: 768px) {
	.unit-nav-title-link {
		display: block;
		padding: 12px 0;
		padding-right: 1.2em;
		position: relative;
	}
	.unit-nav-title-link:after {
		position: absolute;
		right: 10px;
	}
	.unit-nav-title-link.is-menu:before,
	.unit-nav-title-link.is-menu:after{
		content: '';
        display: block;
        width: 10px;
        height: 2px;
        border-radius: 1px;
        background: #fff;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 10px;
        margin: auto;
	}
	.unit-nav-title-link.is-menu:after{
		transform: rotate(-90deg);
        transition: 0.3s all linear;
	}
	.unit-nav-title-link.is-menu.is-active::after {
        transform: rotate(0);
    }
}




.unit-nav-list {
  display: flex;
  flex-wrap: wrap;
  gap: 65px;
}
@media screen and (max-width: 768px) {
	.unit-nav-list { display: block;}
}


.unit-nav-sublist-wrap {
  display: flex;
  gap: 40px;
}
@media screen and (max-width: 768px) {
	.unit-nav-sublist-wrap { display: block;}
}



.unit-nav-sublist {
  font-size: 1.3rem;
}

.unit-nav-sublist-item {
  margin-bottom: 10px;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
	.unit-nav-sublist-item {
		white-space: normal;
		margin-bottom: 0;
		padding-left: 15px;
		border-bottom: 1px solid #666;
	}
}
.unit-nav-sublist-item:last-of-type {margin-bottom: 0;}


.unit-nav-sublist-link {
  color: #b3b3b3!important;
  font-size: 12px;
}

@media screen and (max-width: 768px) {
	.unit-nav-sublist-link:hover{opacity: 0.7;}
	.unit-nav-sublist-link{
		display: block;
		padding: 12px 0;
		position: relative;
	}
	
	.unit-nav-sublist-link:after{
		content: "";
		background-image:url("/blog/2023/12/04/assets/ico_gmenu_f.svg");
		background-size: 18px 18px;
		background-repeat: no-repeat;
		background-position: 1px center;
		opacity: 1.0;
		width: 18px; height: 18px; display: inline-block;
		
		
		
		position: absolute;
		right: 10px;
		color: #fff;
	}
	.unit-nav-sublist-link a{color: #b3b3b3;}
	
}
		


.unit-subnav-list {
  display: flex;
  justify-content: center;
  margin-top: 110px;
  font-size: 1.3rem;
	font-size: 13px;
}

@media screen and (max-width: 768px) {
	.unit-subnav-list {
		flex-wrap: wrap;
    	margin-top: 56px;
	}
}


.unit-subnav-list-item {
  white-space: nowrap;
  flex: none;
}

.unit-subnav-list-item:not(:last-of-type):after {
    content: '|';
	padding: 0 34px;
}
@media screen and (max-width: 768px) {
	.unit-subnav-list-item :not(:last-of-type):after{ padding: 0 16px;}
}


/*----- アイコン -------------------------*/
.unit-icon-x {
  width: 14px;
  aspect-ratio: 15.48/14;
  fill: #fff;
  transition: 0.3s all linear;
  margin-right: 1em;
}

.unit-icon-note {
  width: 13px;
  aspect-ratio: 13/12.86;
  fill: #fff;
  transition: 0.3s all linear;
  margin-right: 1em;
}


.header-nav-list-item a.is-menu:hover{cursor: pointer;}
.header-nav-contact-btn:hover{cursor: pointer;}

.header-sub-nav-list-item{text-indent: -1.2em; padding-left: 2.2em;}

.header-sub-nav-list-item span.caption{text-indent: 0; text-align: left; margin-left: -20px;}

.unit-subnav-list {align-items: center;}
.unit-subnav-list li:nth-child(5){position: relative; top:-7px; margin: auto 24px auto 10px;}
@media screen and (max-width: 769px){
	.unit-subnav-list  li:nth-child(3){width: 100%; text-align: center; margin-bottom: 20px;}
	.unit-subnav-list  li:nth-child(1):before{content: "|"; padding: 0 16px;}
	.unit-subnav-list  li:nth-child(3):before{content: "|"; padding: 0 16px;}
}
@media screen and (max-width: 440px){
	.unit-subnav-list  li:nth-child(2):before{content: "|"; padding: 0 16px;}
}

.contents {
    padding-top: 130px;
    padding-bottom: 0px;
    min-height: 280px;
}
@media screen and (max-width: 769px){
.contents {padding-top: 90px;}
}

.header h1{display: none;}
.pankuzu{display: none;}

/* .box-header L9874 */
.box-header {background: #f4f6f7;}


/* ページTOP 旧ヘッダcssからコピー */
#page-top {position: fixed; bottom: 30px; right: 30px; padding: 5px 15px; border-radius: 4px; font-size: 12px; border: 1px solid #fff; z-index: 9999; }
#page-top a { color: #fff; }

#page-top {right:0px; border-right:0; border-radius:4px 0 0 4px; background: rgba(0,0,0,0.7);}

@media (min-width: 600px) {
    #page-top {bottom:60px;}
}
@media (max-width: 600px) {
    #page-top {bottom:18px;}
}

/* フォーム 旧ヘッダcssからコピー */
#link-form { position: fixed; bottom: 60px; right: 30px; background: #666; padding: 5px 15px; border-radius: 4px; font-size: 12px; border: 1px solid #fff; z-index: 9999;}
#link-form a { color: #fff; }

#link-form {right:0px; border-right:0; border-radius:4px 0 0 4px; background: rgba(0,0,0,0.7);}

@media (min-width: 600px) {
    #link-form {bottom:90px;}
}
@media (max-width: 600px) {
    #link-form {bottom:48px;}
}


/* リックソフト検索用調整css */
.header-nav-list-link{position: relative; z-index: 9;}

.header-logo img{width: 100%; height: auto;}
.header-nav-content{display: flex; flex-wrap: wrap; }

.header-nav-list{padding: 42px 50px 0;}
.header-nav-list li:last-child{position: relative;}
.header-nav-list-item {height: fit-content;}
.header-nav-contact-btn{height: 56px;}


.header-seach{width: auto; text-align: right;}
.header-seach{position: absolute; right: -20px; top:-44px; width: 350px; height: 30px;}
.header-seach form.rs_seach{height: 30px;}
.header-seach input[type="text"]{ display: block; padding: 0; margin: 0;
	width: 300px; padding: 3px 15px; border-radius: 4px 0 0 4px; border: 1px solid #ccc; font-size: 16px; font-weight: normal;}
.header-seach input[type="submit"]{background: #bebede; width: 30px; height: 27px; top:-25px; border-radius: 0 4px 4px 0; position: relative; left: -21px; background-image: url("https://www.ricksoft.jp/common/img/share/ico_seach.svg"); background-repeat: no-repeat; background-size: 18px auto; background-position: center; transition : all 0.5s ease 0s; border:none;}
.header-seach input[type="submit"]:hover{background: #2d29b6; background-image: url("https://www.ricksoft.jp/common/img/share/ico_seach.svg"); background-repeat: no-repeat; background-size: 18px auto; background-position: center;}

.header-seach .header-seach-check + label.header-seach-label + form.rs_seach{display: none;}

.header-seach input[type="text"]:focus{outline: none;}

@media (max-width: 1300px) {
    .header-nav-contact-btn{height: 56px; width: 90px;}
}

@media (max-width: 1260px) {
	.header-logo {width: 120px;}
	.header-nav-list{padding: 42px 10px 0;}
	.header-nav-contact-btn {width: 80px;}
	.header-nav-list_Language{margin-left: 0px;}
}

@media (max-width: 990px) {
	.header-content{gap: 0px;}
	.header-logo {width: 100px; top:12px;}
	.header-nav-list{padding: 42px 2px 0; gap: 1.5vw;}
	.header-nav-list-item{font-size: 12px;}
	
	.header-nav-contact-btn {width: 60px; font-size: 12px;}
	
	.header-nav-list_Language{width: 22px;}
	.header-nav-list_Language li {font-size: 12px;}
	.header-nav-list_Language li a span{width: 22px; overflow: hidden;}
	
	.header-seach input[type="submit"]{height: 27px; top:-25px;}
	header a {font-size: 12px;}
}


/* リックソフト検索用調整css SP */
@media screen and (max-width: 768px) {
    .header-logo img{transform: scale(0.9, 0.9); position: relative; left:-11px; top:-5px}
    .header-nav-sp-btn{transform: scale(0.9, 0.9);}
    
	.header-logo {width: 135px; top:15px; left: 20px;}
	.header-nav-list_Language li {font-size: 13px;}
	.header-logo_area {left: -5px;}
	
	.header-seach{width: auto; text-align: right;}
	.header-seach{position: absolute; left: 0; width: 100%;}

	.header-seach .header-seach-check + label.header-seach-label:hover{cursor: pointer;}
	.header-seach .header-seach-check + label.header-seach-label + form.rs_seach{display: none;}
	.header-seach .header-seach-check:checked + label.header-seach-label + form.rs_seach{display: block;}
	
	.header-seach .header-seach-check + label.header-seach-label{display: block; width: 48px; height: 48px; font-size: 0; margin: 46px 63px auto auto; border-radius: 6px; border: 1px solid #2d29b6; background: #FFF; transform: scale(0.9, 0.9);} /* ★ */
    
	.header-seach .header-seach-check + label.header-seach-label{
		background-image: url("https://www.ricksoft.jp/common/img/share/ico_seach_blue.svg"); background-size: 20px auto; background-repeat: no-repeat; background-position: center; transition : all 0.3s ease 0s;}
	.header-seach .header-seach-check:checked + label.header-seach-label{
		background-image: url("https://www.ricksoft.jp/common/img/share/ico_close_blue.svg"); background-size: 20px auto; }
	
	.header-seach input[type="text"]{ display: block; margin: 0; width: 80%; height: 30px;
		padding: 4px 15px; border-radius: 4px 0 0 4px; border: 1px solid #ccc; font-size: 100%;}
	.header-seach input[type="submit"]{background: #bebede; width: 30px; height: 30px; top:2px; border-radius: 0 4px 4px 0; position: relative; left: -21px; background-image: url("https://www.ricksoft.jp/common/img/share/ico_seach.svg"); background-repeat: no-repeat; background-size: 18px auto; background-position: center; transition : all 0.5s ease 0s;}
	.header-seach input[type="submit"]:hover{background: #2d29b6; background-image: url("https://www.ricksoft.jp/common/img/share/ico_seach.svg"); background-repeat: no-repeat; background-size: 18px auto; background-position: center; cursor: pointer;
	}

	.header-seach .header-seach-check:checked + label.header-seach-label + form.rs_seach{width: calc(100% - 0px); margin: 7px auto auto;
		background: rgba(36,34,105,0.7); display: flex; justify-content: center; padding: 26px 0;}
	
	.header-nav-list_Language{width: auto; left: 2px;}
	.header-nav-list_Language li {font-size: 12px;}
	.header-nav-list_Language li a span{width: auto; overflow:visible;}
	
    /* バーガーメニュー押下前 */
    .header-nav-sp-btn {
      position: relative;
      top: 6px;
	  left: 5px;
    }
} 

