@charset "utf-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700;800&display=swap");
@import url('https://fonts.googleapis.com/css?family=Sawarabi+Mincho');
/*===================================================
 css reset
====================================================*/
html, body, div, span, iframe,
h1, h2, h3, h4, h5, h6, p, img, a,
ol, ul, li,
form, label,
table, tbody, tfoot, thead, tr, th, td,
article,footer, header, menu, nav, section {
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	list-style: none;
	text-decoration: none;
	vertical-align: baseline;
}
/*====== Web Font =================================================
font-family: 'Inter', sans-serif;
font-family: 'Lato', sans-serif;
font-family: 'Noto Serif JP', serif;
font-family: 'Rubik', sans-serif;
font-family: 'Sawarabi Mincho', serif;
==================================================================*/
*,
*::before,
*::after {box-sizing: inherit}
*{box-sizing:content-box;}
html{
	font-family:"Noto Sans Japanese", "Hiragino kaku Gothic Pron","ヒイラギ各ゴ proN w3","Arial","メイリオ",Vardana,sans-serif;
}
body{
	overflow-x: hidden;
    color:#000;
    font-size:1rem;
}
a{
	color: #333;
	text-decoration: none;
    outline: none;
}
/*===================================================
 Header CSS
====================================================*/
.header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
    max-width:100%;
	z-index:888;
	height:80px;
	line-height:80px;
}
.header__inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width:90%;
	margin:0 auto;
}

#logo{
	width:90%;
	vertical-align:middle;
}
ul.pc_menu{
	width:90%;
	display:block;
	display:flex;
	justify-content: flex-end;
}
ul.pc_menu li {
	width:auto;
    margin-right:80px;
}
ul.pc_menu li:last-child {
	width:auto;
    margin-right:0px;
}
ul.pc_menu li a{
	font-family: 'Lato', sans-serif;
    font-size:0.8rem;
	color:#000000;
	letter-spacing:0.1rem;
}
ul.pc_menu li a .jp{
	display:none;
}
ul.pc_menu li a:hover .en{
	display:none;
}

ul.pc_menu li a:hover .jp{
	display:inline-block;
	text-decoration: underline;
	text-decoration-color: #0000ff;
	text-decoration-thickness: 8px;
	text-underline-offset: 0.5em;
	font-family: 'Lato', sans-serif;
}

.line-icon{
	display:inline-block;
	width:17%;
	vertical-align:middle;
	margin-left:2%;
}

ul.pc_menu li.rev{
	width:20%;
	text-align:center;
}
ul.pc_menu li.rev a{
	color:#fff;
	background-image: linear-gradient(180deg, rgba(155, 119, 133, 1) 30%, rgba(233, 233, 233, 1));
	padding:10px 20px;
	border-radius:40px;
}
ul.pc_menu li.rev a:hover{
	text-decoration: none;
}
.drawer__button,
.drawer__nav {
	display:none;
}
@media screen and (max-width: 1024px) {
    ul.pc_menu {
        display:none;
    }
    #logo {
        width:60%;
    }
    .drawer__button {
        display:block;
        position:relative;
        width:3rem;
        height:3rem;
        background-color: transparent;
        border:none;
        cursor:pointer;
        z-index:999;
    }
    /* ハンバーガーボタン内の線 */
    .drawer__button > span{
        display:block;
        position: absolute;
        top:50%;
        left:50%;
        width:3rem;
        height:3px;
        background-color: #000;
        transform: translateX(-50%);
    }
    .drawer__button > span:first-child {
        transform: translate(-50%, calc(-50% - 0.5rem));
        transition: transform 0.3s ease;
    }
    .drawer__button > span:nth-child(2) {
        transform: translate(-50%, -50%);
        transition: transform 0.3s ease;
    }
    .drawer__button > span:last-child {
        transform: translate(-50%, calc(-50% + 0.5rem));
        transition: transform 0.3s ease;
    }
    /* 展開時のデザイン */
    .drawer__button.active > span:first-child {
        transform: translate(-50%, -50%) rotate(-45deg);
    }
    .drawer__button.active > span:nth-child(2) {
        opacity: 0;
    }
    .drawer__button.active > span:last-child {
        transform: translate(-50%, -50%) rotate(45deg);
    }
    .drawer__nav {
        display:block;
        position:fixed;
        top:0;
        left:0;
        width: 100%;
        height:100vh;
        background-color: rgba(0, 0, 0, 0.5);
        transition: opacity 0.3s ease;
        opacity: 0;
        visibility: hidden;
    }
    .drawer__nav.active {
        opacity: 1;
        visibility: visible;
    }
    .drawer__nav__inner {
        position: relative;
        width:60%;
        height:100%;
        background-color: #fff;
        padding:3rem 1.5rem 1rem;
        margin: 0 0 0 auto;
        overflow: scroll;
        transform: translateX(100%);
        transition: transform 0.3s ease;
    }
    .drawer__nav.active .drawer__nav__inner {
        transform: translateX(0);
    }
    .drawer__nav__menu {
        list-style: none;
        padding-left: 0;
    }
    .drawer__nav__link {
        display:block;
        color:#000;
        text-decoration: none;
        padding: 0.1rem 0.4rem;
        border-bottom: solid 1px lightgray;
    }
    .drawer__nav__link img {
        width:10%;
    }
}
@media screen and (max-width: 821px) {
    #logo{
        width:50%;
    }
}
/********************************************************
 top-img
 *******************************************************/
.top-img{
	height:100vh;
	width:100%;
	background-image:url("../img/top_bg.jpg");
	background-size:cover;
	background-position:center;
	position:relative;
	z-index:-1;
}
.top-img::after{
    content:"";
    position:absolute;
    background:#000;
    width:100%;
    height:100vh;
    top:0;
	left:0;
	opacity:0.2;
}
.container {
    position:relative;
    top:0;
    left:0;
    width:100%;
    height:100vh;
}
.top-text{
    position:absolute;
    width:90%;
    bottom:3%;
    left:3%;
    z-index:50;
}
.top-text h2{
    color:#fff;
    font-size:1.2rem;
    letter-spacing:0.1rem;
}
.top-text h2.bigt{
    font-size:3rem;
    font-weight:bold;
    margin-bottom:15px;
    color: #0000ff;
    text-shadow: 2px 3px 3px rgb(249, 247, 247);
}

@media screen and (max-width: 1024px) {
    .top-text h2{
        font-size:1rem;
    }
}
@media screen and (max-width: 912px) {
    .top-text h2.bigt{
        font-size:2rem;
    }
}
@media screen and (max-width: 769px) {
    .top-text h2{
        font-size:0.8rem;
    }
    .top-img{
        height:500px;
    }
    .top-img::after{
        height:500px;
    }
    .container {
        height:500px;
    }
}
.sub-img{
    position:absolute;
    width:100%;
    height:650px;
    top:0;
    left:0;
    z-index:10;
}
.s-img img{
    position:absolute;
    top:12%;
    left:15%;
    width:28%;
}

@media screen and (max-width: 1024px) {
    .s-img img{
        position:absolute;
        top:18%;
        left:10%;
        width:28%;
    }
}
@media screen and (max-width: 821px) {
    .s-img img{
        position:absolute;
        top:20%;
        left:8%;
        width:28%;
    }
}
@media screen and (max-width: 769px) {
    .sub-img{
        height:500px;
    }
}
.badge{
    position: absolute;
    z-index: 2;
    right:6%;
    bottom:8%;
    background:url("../img/badge.svg") no-repeat center;
    background-size: cover;
    width:180px;
    height: 180px;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
    animation-duration: 3s;
}

.badge-inner {
    position: absolute;
    z-index: 3;
    right:6%;
    bottom:8%;
    width:180px;
    height: 180px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: #ff0;
    font-weight: bold;
    transition: all .3s;
}

.badge-inner:hover{
     bottom:75px;  
}
/* 4-3 くるっ（Z 軸（右へ）） */
.rotateRightZ{
	animation-name: rotateRightZAnime;
	animation-duration:30s;
	animation-fill-mode:forwards;
}

@keyframes rotateRightZAnime{
	from{
		transform: rotateZ(0);
		}
	to{
		transform: rotateZ(360deg);
		}
}
.shiro{
	background:#fff;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}

@media screen and (max-width: 1540px) {
    .badge{
        right:2%;
        bottom:20%;
    }
    .badge-inner{
        right:2%;
        bottom:20%;
    }
}
@media screen and (max-width: 821px) {
    .badge{
        right:2%;
        bottom:27%;
        width:150px;
        height:150px;
    }
    .badge-inner{
        right:2%;
        bottom:27%;
        width:150px;
        height:150px;
    }
}
/*****************************************************
 main section
*****************************************************/
#biz{
    display:block;
    width:100%;
    height:auto;
    max-height:85vh;
    /*background:#008000;*/
    margin:30px 0 0;
}
.secTitle{
    width:100%;
    margin:0;
    background:#fffafa;
    padding:10px 0 25px;
    text-align:center;
}
.secTitle h2 {
    display:block;
    font-size:3rem;
    padding:10px 0;
}

.secTitle h2 span{
    display:block;
    font-size:1rem;
    margin:0 auto 15px;
    padding:0 0 0 0;
    max-width:80px;
    border-bottom:10px solid #008000;
}
p.allnews{
    text-align:right;
    margin-right:30px;
}
p.allnews a{
    font-weight:bold;
}
.allnews2{
    display:none;
}

@media screen and (max-width: 912px) {
    #biz{
        max-height:110vh;
        height:85vh;
    }
    .secTitle h2 {
        display:block;
        font-size:2.5rem;
        padding:10px 0;
    }
    p.allnews{
        display:none;
    }
    .allnews2{
        display:block;
        width:100%;
        text-align:center;
        padding:10px;
    }
    .allnews2 a{
        color:#0000ff;
        padding:0 0 10px 0;
        border-bottom:5px solid #0000ff;
    }
}
@media screen and (max-width: 821px) {
    #biz{
        max-height:117vh;
        height:auto;
    }
}
@media screen and (max-width: 769px) {
    #biz{
        max-height:129vh;
        height:128vh;
    }
    .allnews2{
        display:block;
        width:100%;
        text-align:center;
        padding:10px;
        margin:30px 0;
    }
}
@media screen and (max-width: 767px) {
    #biz{
        max-height:400vh;
        height:auto;
        /*background:#008000;*/
    }
}
/**************************************************
 main section
***************************************************/
.flex_topics{
    display:block;
    width:94%;
    height:auto;
    margin:0 auto;
    padding:0;
    /*background:#ccc;*/

}
ul.list{
    width:100%;
    height:auto;
    min-height:350px;
    display:flex;
    justify-content: center;
    align-items: center;
    /*background:#00ff00;*/
}
ul.list li{
    width:23%;
    max-width:23%;
    height:auto;
    text-align:center;
    margin:0 1%;
    overflow:hidden;
    box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
    padding-bottom:30px;
    border-radius: 0 0 20px 20px;
}
.news-img img{
    width:100%;
    height:auto;
}
.m-box{
    width:100%;
    height:auto;
    padding:10px 0;
}
.m-box span{
    display:block;
    padding:0;
    font-weight:bold;
}
ul.list li p{
    width:95%;
    margin:0 auto;
    padding:0;
    font-size:1rem;
    line-height:1.5rem;
    letter-spacing: 0.1rem;
    text-align:left;
    height:150px;
    max-height:240px;
    padding:0;
}
/*
.more a{
    display:block;
    width:20%;
    float:right;
    margin:20px  30px 0 0;
    color:#0000ff;
    font-size:0.9rem;
    padding:5px 0;
    border:1px solid #0000ff;
    border-radius: 50px;
}
.more a:hover{
    color:#fff;
    background:#4169e1;
}
*/
@media screen and (max-width: 1024px) {
    .flex_topics{
        width:96%;
    }
    .m-box{
        padding:15px 0;
    }
    .m-box span{
        font-size:0.9rem;
    }
    ul.list{
        height:auto;
        min-height:530px;
        flex-wrap:wrap;
    }
    ul.list li{
        width:46%;
        max-width:46%;
        height:auto;
        margin:0 2% 40px;
    }
    ul.list li p{
        font-size:0.8rem;
        line-height:1.5rem;
        height:100px;
    }
}
@media screen and (max-width: 912px) {
    /*
    ul.list{
        flex-wrap:wrap;
    }
    ul.list li{
        width:46%;
        max-width:46%;
        height:auto;
        margin:0 2% 40px;
    }
    */

}
@media screen and (max-width: 769px) {
    ul.list{
        height:auto;
        min-height:480px;
    }
    ul.list li p{
        height:120px;
    }
}
@media screen and (max-width: 767px) {
    .flex_topics{
        display:block;
        width:80%;
    }
    ul.list{
        height:auto;
        min-height:1200px;
        display:block;
        padding:10px 0;
    }
    ul.list li{
        width:96%;
        max-width:98%;
        height:auto;
        margin:0 auto 40px;
    }
    .m-box span{
        font-size:1.2rem;
    }
    ul.list li p{
        height:110px;
        font-size: 1rem;
    }
    .more a{
        font-size:1rem;
        padding:8px 0;
    }
}
/***********************************************
 info service
***********************************************/
#s-info{
    width:100%;
    height:auto;
    max-height:130vh;
    overflow: hidden;
}
.system-box{
    width:90%;
    height:auto;
    max-height:750px;
    margin:50px auto;
    padding:10px 0 50px;
    display:flex;
    justify-content:space-between;
}
.system-box .s-list{
    width:30%;
    position:relative;
    top:0;
    left:0;
    box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
    padding:20px 0 40px;
    border-radius: 0 0 25px 25px;
}
.system-img {
    width:100%;
    text-align:center;
}
.system-img img{
    width:90%;
}
.up-mg{
    position:absolute;
    width:50%;
    top:0;
    left:0;
}
.up-mg img{
    width:100%;
}
.s-list h4{
    width:90%;
    margin:0 auto;
    font-weight:bold;
    padding:20px 0;
    text-align:center;
}
p.sys_text{
    width:90%;
    margin:0 auto;
    font-size:1rem;
    line-height:1.8rem;
}
@media screen and (max-width: 912px) {
    .system-box{
        width:90%;
    }
    .system-box .s-list{
        width:33%;
        position:relative;
        top:0;
        left:0;
    }
    .system-img img{
        width:90%;
    }
    .up-mg{
        left:-5px;
    }
}
@media screen and (max-width: 767px) {
    #s-info{
        width:100%;
        max-height:390vh;
        height:360vh;
        overflow: hidden;
    }
    .system-box{
        width:80%;
        max-height:340vh;
        height:auto;
        display:block;
    }
    .system-box .s-list{
        width:100%;
        padding:0 0 20px 0;
        margin-bottom:60px;
    }
    .system-img {
        width:80%;
        margin:0 auto;
    }
    .system-img img{
        width:100%;
    }
    .s-list h4{
        font-size: 1.2rem;
    }
    p.sys_text{
        font-size:1.2rem;
        line-height:1.8rem;
    }
}
/**********************************************
 contact css
**********************************************/
.info_box{
    width:100%;
    height:auto;
    padding:30px 0 0;
}
.info_box ul.in{
    width:70%;
    margin:0 auto;
    padding:20px 0;
}
.info_box ul.in li{
    padding:15px;
    font-size:1.2rem;
    border-bottom:1px solid #0000ff;
}
.info_box ul.in li span{
    display:inline-block;
    width:20%;
    padding:5px 10px;
    font-size: 1.5rem;
    font-weight: bold;
    text-align:center;
    background:#0000ff;
    color:#fff;
    margin-right: 20px;
}



/**********************************************
 contact css
**********************************************/
#contact{
    width:100%;
    height:970px;
    background-image:url("../img/h2.jpg");
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    margin-top:70px;
}
.form_in{
    width:80%;
    height:auto;
    margin:100px auto 0;
    /*background:#777;
    opacity: 1;*/
}
.toi_form  {
	text-align: center;
	margin:0 auto;
	padding:30px;
	/*background:#fff;*/
	width:80%;
	border-radius:20px;
}
.form-group {
	margin-bottom: 20px;
	text-align: left;
	padding:10px 0;
}
.form-group p{
	font-size:1.2rem;
	padding:5px 0;
}
input,
textarea {
	width: 100%;
	border: 1px solid #ebeced;
	font-size:1rem;
}
input {
	height: 30px;
	padding:5px;
}
textarea {
	height: 200px;
	padding:5px 10px;
}
.error {
	font-size: 12px;
	color: #d84950;
}
.btn-submit {
	background-color: #0000ff;
	color: #fff;
}
.btn {
	padding: 20px 30px;
	font-size: 1.2rem;
	border-radius: 5px;
	border: none;
	margin-top: 20px;
}







.inner{
    position:absolute;
    width:30%;
    height:330px;
    min-height:330px;
    top:50%;
    left:50%;
    padding:20px;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index:20;
}
.inner:after{
    content:"";
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0;
    background:#000;
    opacity: 0.3;
    z-index:-1;
}
.inner h2{
    text-align:center;
    display:block;
    font-size:3rem;
    padding:10px 0;
    color:#fff;
}
.inner h2 span{
    display:block;
    font-size:0.9rem;
    margin:0 auto 20px;
    padding:0 0 0 0;
    max-width:80px;
    border-bottom:10px solid #008000;
}
p.con-text{
    margin-top:30px;
    color:#fff;
    font-weight:bold;
    line-height:2;
}
p.in-form a{
    display:block;
    margin-top:30px;
    padding:5px 0;
    width:22%;
    font-size:0.8rem;
    font-weight:bold;
    color:#fff;
    text-align:center;
    float:right;
    border-bottom:2px solid #0000ff;
}

@media screen and (max-width: 1024px) {
    #contact{
        height:50vh;
        max-height:100vh;
        background-image:url("../img/h2.jpg");
        background-position: center;
        background-size: cover;
        background-repeat: no-repeat;
    }
    .inner{
        width:38%;
    }
}
@media screen and (max-width: 912px) {
    .inner{
        width:45%;
    }
    p.con-text{
        font-weight: normal;
    }
    p.in-form a{
        font-size:0.7rem;
        width:30%;
    }
}

/*********************************************
 FOOTER
*********************************************/
#foot{
    width:100%;
    height:auto;
    padding:50px 0 0;
    background:#000;
}
.f-ue{
    display:block;
    width:80%;
    margin:0 auto;
}
ul.foot-list{
    display:flex;
    width:100%;
    padding:30px 0;
}
ul.foot-list li{
    width:15%;
}
ul.foot-list li a{
    color:#fff;
    font-size:1rem;
    font-weight:bold;
    letter-spacing: 00.1rem;
}
.f-bottom{
    width:100%;
    height:auto;
    overflow:hidden;
    background:#fff;
}
.foot-sub{
    display:flex;
    justify-content:space-between;
    width:80%;
    margin:0 auto 0;
    padding:30px 0;

}
.foot-sub ul li a{
    display:inline-block;
    color:#000;
    padding:10px 0 5px;
}
@media screen and (max-width: 912px) {
    .f-ue{
        width:90%;
    }
    .foot-sub{
        display:flex;
        justify-content:space-between;
        width:90%;
        margin:0 auto 0;
        padding:30px 0;
    
    }
}
/*************************************************
 Company css
*************************************************/
.page{
    background:#ccc;
}
#video-header{
    position: relative;/*h1の中央寄せ配置の起点とするためのrelative*/
    height: 200vh;/*高さを全画面にあわせる*/
}
#video-area{
    position: fixed;
    z-index: -1;/*最背面に設定*/
    top: 0;
    right:0;
    left:0;
    bottom:0;
    overflow: hidden;
}

#video {
    /*天地中央配置*/
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    /*縦横幅指定*/
    width: 177.77777778vh; /* 16:9 の幅→16 ÷ 9＝ 177.77% */
    height: 56.25vw; /* 16:9の幅 → 9 ÷ 16 = 56.25% */
    min-height: 100%;
    min-width: 100%;
}
.tit-area{
    position:absolute;
    width:90%;
    height:18vh;
    top:80px;
    left:0;
    /*background:#ff0;*/
}
.tit-area h1{
    font-size:9rem;
    color:#fff;
    letter-spacing: 1.2rem;
}
.subtit-area{
    position:absolute;
    width:50%;
    height:30vh;
    top:370px;
    left:20%;
    /*background:#0000ff;*/
}
.subtit-area p{
    color:#fff;
    font-size: 3rem;
    font-weight: bold;
    letter-spacing: 0.5rem;
}
.clip{
    position: absolute;
    width:100%;
    height:300vh;
    left:0;
    background:#fff;
    clip-path: polygon(100% 0, 100% 38%, 100% 100%, 0 100%, 0 76%);
}
.mirai{
    position:absolute;
    width:100%;
    height:80vh;
    left:0;
    top:80vh;
    display:flex;
}
.imgtype{
    width:50%;
    height:80vh;
}
.imgtype img{
    width:100%;
    padding:0;
}
.comp_txt{
    width:50%;
    position:relative;
    /*background:#ff0;*/
    top:50%;
}
.comp_txt h3{
    padding:30px 10% 30px 15%;
    font-size:2rem;
}
.comp_txt p{
    padding:30px 10% 30px 15%;
}
.vision{
    position:absolute;
    width:100%;
    height:80vh;
    left:0;
    top:170vh;
    display:flex;
}
.middle-title{
    width:40%;
    height:30vh;
    display:block;
    color:#0000ff;
    font-size: 7rem;
    font-weight: bold;
    letter-spacing: 0.5rem;
    text-align:right;
    padding-right:10%;
}
.comp_txt2{
    width:50%;
    position:relative;
    /*background:#ff0;*/
    top:0%;
}
.comp_txt2 h3{
    padding:30px 10% 30px 15%;
    font-size:2rem;
}
.comp_txt2 p{
    padding:30px 10% 30px 15%;
}
.mission{
    position:absolute;
    width:100%;
    height:80vh;
    left:0;
    top:210vh;
    display:flex;
}
.middle-title2{
    width:40%;
    height:30vh;
    display:block;
    color:#0000ff;
    font-size: 7rem;
    font-weight: bold;
    letter-spacing: 0.5rem;
    text-align:center;
    padding-right:0%;
}
.comp_txt3{
    width:50%;
    position:relative;
    top:0%;
    padding-left:10%;
}
.comp_txt3 h3{
    padding:30px 10% 30px 15%;
    font-size:2rem;
}
.comp_txt3 p{
    padding:30px 10% 30px 15%;
}
.value{
    position:absolute;
    width:100%;
    height:80vh;
    left:0;
    top:250vh;
    display:flex;
}
.cont{
    display:block;
    position:relative;
    width:100%;
    height:120vh;
    background:#fff;
}
.comp-info{
    width:90%;
    padding:80px 0 0;

}
.comp-info h3{
    font-size:7rem;
    text-align:right;
    color:#0000ff;
}
.comp-info h4{
    display:block;
    margin:50px 0 0;
    padding:15px 0;
    font-size:3rem;
    text-align:center;
    letter-spacing: 0.4rem;
}
.comp-info .comp-list{
    display:block;
    width:75%;
    padding:10px 0 30px;
    margin:0 auto;
    /*background:#ccc;*/

}
.comp-info .comp-list dl{
    display:flex;
    flex-wrap: wrap;
    width:100%;
    /*background:#ff0;*/
}
.comp-info .comp-list dl dt{
    width:25%;
    /*background:#0000ff;*/
    border-bottom:1px solid #000;
    padding:30px 0;
    font-weight: bold;
}
.comp-info .comp-list dl dd{
    width:70%;
    /*background:#ff0000;*/
    border-bottom:1px solid #000;
    padding:30px 0;
}
/****************************************
 Page-top
*****************************************/
#page-top a{
	display: flex;
	justify-content:center;
	align-items:center;
	background:#0000ff;
	border-radius: 5px;
	width: 60px;
	height: 60px;
	color: #fff;
	text-align: center;
	text-transform: uppercase; 
	text-decoration: none;
	font-size:0.6rem;
	transition:all 0.3s;
}

#page-top a:hover{
	background: #777;
}

/*リンクを右下に固定*/
#page-top {
	position: fixed;
	right: 10px;
	bottom:10px;
	z-index: 2;
    /*はじめは非表示*/
	opacity: 0;
	transform: translateY(100px);
}

/*　上に上がる動き　*/

#page-top.UpMove{
	animation: UpAnime 0.5s forwards;
}
@keyframes UpAnime{
  from {
    opacity: 0;
	transform: translateY(100px);
  }
  to {
    opacity: 1;
	transform: translateY(0);
  }
}

/*　下に下がる動き　*/

#page-top.DownMove{
	animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
  from {
  	opacity: 1;
	transform: translateY(0);
  }
  to {
  	opacity: 1;
	transform: translateY(100px);
  }
}
/****************************************
 Product css
*****************************************/
.subtit-area2{
    display:flex;
    position:absolute;
    width:90%;
    height:65vh;
    top:370px;
    left:5%;
    /*background:#0000ff;*/
    z-index:10;
}
.newat{
    width:55%;
}
.subtit-area2 h3{
    color:#0000ff;
    font-size: 2.7rem;
    font-weight: bold;
    letter-spacing: 0.2rem;
    margin-bottom:50px;
    text-shadow: 1px 2px 2px rgb(249, 247, 247);
}
.subtit-area2 p{
    color:#fff;
    font-size: 1.2rem;
    font-weight: bold;
    letter-spacing: 0.5rem;
}
.at-inf{
    width:45%;
    position:relative;
}
.at-inf img{
    position: absolute;
    width:70%;
    transform: scale(-1, 1);/*左右反転*/
    right:5%;
    top:0;
}
/****************************************
	privacy.php 
*****************************************/
.wrapper-title {
	text-align: center;
	margin:30px;
	position:relative;
	z-index:10;
}
.container02{
    width:80%;
    margin:100px auto 0;
}
.priv{
	width:100%;
	padding:10px 0;
}
.priv p{
	margin-bottom:20px;
	text-indent:1rem;
}
.priv h4{
	padding:5px 0 5px 10px;
	margin-bottom:10px;
	border-left:5px solid #0000ff;
}
ol.prcy li{
	list-style-type:none;
	counter-increment:cnt;
	font-weight:bold;
	font-size:1.1rem;
	margin-bottom:10px;
	margin-left:2rem;
}
ol.prcy li::before{
	content:"("counter(cnt)")";
}
ol.prcy p{
	margin-left:2.5rem;
}
ol.norm li{
	list-style-type:disc;
	margin-left:3rem;
	padding:5px 0;
}
ol.norm li:last-child {
	margin-bottom:5px;
}
ol.nxt_no li{
	list-style-type:circled-decimal;
	margin-left:3rem;
	padding:5px 0;
}


