@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;500;700;900&display=swap');
#gnSolution #contentsArea #contentsBlock #mainSection{
font-family: 'Noto Sans JP', sans-serif,"游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
font-size:16px;
line-height:1.5;
font-weight: 300;

}
.both{
	clear:both;
}
p {
    display: block;
    -webkit-margin-before:0;
    -webkit-margin-after: 0;
    -webkit-margin-start: 0px;
    -webkit-margin-end: 0px;
}
.inline_block {  
	display: inline-block;  
	*display: inline;  
	*zoom: 1;  
}
img{
	display:block;
	max-width:100%;
	flex-shrink: 0;
}
a,
a:hover,
a:active,
a:visited,
a:link{
	text-decoration:none;
	color:inherit;
}
#mainSection a:hover > img,
#mainSection a:hover > p > img {
    opacity: 1;
    filter: alpha(opacity=100);
}
#mainSection a:hover{
	color: inherit;
}

.btn{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.btn a,
.btn > p{
	min-height: 36px;
    display: flex;
    padding: 5px 40px;
    box-sizing: border-box;
    max-width: 100%;
    min-width: 190px;
    color: #fff;
    background-color: #F15A24;
    border-radius: 50px;
    align-content: center;
    justify-content: center;
    border: solid 2px #F15A24;
    transition: 0.5s;
    font-weight: 500;
    font-size: 16px;
	text-align: center;
}
.btn.haba a{
	min-width: 300px;
	margin-left: 10px;
	margin-right: 10px;
	margin-bottom: 20px;
}
#mainSection .btn a:hover,
.btn a:hover,
#mainSection a:hover > .btn p,
a:hover .btn > p{
	background-color: #fff;
	color: #F15A24;
}

header#headerArea {
    width: 100%;
    padding-top: 16px;
    background-color: white;
    text-align: left;
}

.site_navi{
	width: 100%;
	background-color: #fff;
	box-sizing: border-box;
    transition: 0.5s;
	position: relative;
}
.site_navi .inner{
	padding: 0px 20px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	z-index: 30;
	height: 0px;
}
.subnavi{
	width: 100%;
	position: absolute;
	left: 0;
	top: 100%;
	background-color: rgba(0,0,0,0.50);
	background-color: #01b6ac;
    z-index: 30;
}
.subnavi_contents{
	display: none;
}
.subnavi_inner{
	height: 80px;
	display: flex;
	align-items:stretch;
	justify-content: center;
	margin: auto;
	flex-wrap: wrap;
}
.subnavi a{
	padding: 0px 30px;
	font-size: 16px;
	display:flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	color: #fff;
	position: relative;
	font-weight: 500;
}
.subnavi a:first-child:after,
.subnavi a:before{
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	background-color: #fff;
	width: 1px;
	height: calc(100% - 30px);
	content:"";
}
.subnavi a:first-child:after{
	right: auto;
	left: 0;
}
.subnavi a:hover,
#mainSection .subnavi a:hover{
	color: rgba(255,255,255,0.50);
}
.float_navi.site_navi{
	position: fixed;
	left: 0;
    top: -100px;
	z-index: 20;
}
.float_navi.site_navi.show{
	top: 80px;
}

.site_navi nav{
	margin: 0;
	display: flex;
	justify-content: space-between;
    justify-content: flex-end;
    align-items: stretch;
}
.site_navi nav a{
    padding-left: 25px;
    padding-right: 10px;
	margin-left: 0px;
	position: relative;
	display:flex;
	font-size: 16px;
	color: #3a3a3a;
    align-items:center;
	font-weight: 300;
	height: 80px;
}
.site_navi nav a:hover{
	background-color: #d4eaf1;
	color: #F15A24;
}
.site_navi nav a:not(.open_subnavi):before{
      content: "";
    position: absolute;
    width: 0;
    height: 0;
    bottom: 0;
	top: 0;
    left: 10px;
    margin: auto;
    border-left: 7px solid #00b6ab;
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
    border-right: 0px solid transparent;
}
.site_navi nav a:not(.open_subnavi):hover:before{
    border-left: 7px solid #F15A24;
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
	border-right: 0px solid transparent;
}

.site_navi nav a.open_subnavi:after,
.site_navi nav a.open_subnavi:before{
      content: "";
    position: absolute;
	display: block;
    width: 10px;
    height: 2px;
    bottom: 0;
	top: 0;
    left: 10px;
    margin: auto;
	background-color: #00b6ab;
}
.site_navi nav a.open_subnavi:after{
    left: 14px;
    width: 2px;
    height: 10px;
	transition: 0.5s;
}
.site_navi nav a.open_subnavi:hover:after,
.site_navi nav a.open_subnavi:hover:before{
	background-color:#F15A24;
}

.site_navi nav a.open_subnavi.opened:after{
	height: 0;
}

.spnavi{
	background-color: #fff;
	height: 100vh;
	top: 0px;
	position: fixed;
	width: 270px;
	right: -270px;
	transition: 0.5s;
	z-index: 50;
	border-top: solid 5px  #ff9800;
	 overflow: auto;
  -webkit-overflow-scrolling: touch;
    background-color: #ffffff;
}
.spnavi.menuopen{
	right: 0px;
}
.spnavi a{
	width: 100%;
	box-sizing: border-box;
	padding: 15px 20px;
	padding-right: 40px;
	display: block;
	border-bottom: solid 1px #F15A24;
	position: relative;
	color: #F15A24;
    font-size: 16px;
	background-color: #fff;
	color: #000;
}
.spnavi a:hover{
	background-color: #FDF1D5;
}
.spnavi nav > a:after{
	content: "";
    position: absolute;
    width: 0;
    height: 0;
    bottom: 0;
    top: 0;
    right: 15px;
    margin: auto;
    border-left: 7px solid #F15A24;
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
	border-right: 0px solid transparent;
}

.spnavi li{
	margin-bottom: 0;
}
.spnavi li a{
	width: 100%;
	box-sizing: border-box;
	padding: 10px 20px;
	display: block;
	border-bottom: solid 1px #fff;
	position: relative;
	color: #fff;
	background-color: #F15A24;
    background-color: #e9f4f7;
	border-bottom: solid 1px #F15A24;
	color: #F15A24;
	
}

.spnavi nav > a.spnavi_aco:after,
.spnavi nav > a.spnavi_aco:before{
	content: "";
    position: absolute;
    width: 0;
    height: 0;
    bottom: 0;
    top: 0;
    margin: auto;
	background-color: #F15A24;
	border: none;
}
.spnavi nav > a.spnavi_aco:after{
	width: 14px;
	height: 2px;
    right: 10px;
}
.spnavi nav > a.spnavi_aco:before{
	width: 2px;
	height: 14px;
    right: 16px;
	transition: 0.3s;
}
.spnavi nav > a.spnavi_aco.open:before{
	height: 0px;
}
.aco_open{
	cursor: pointer;
}
.aco_contents{
	display: none;
	
}
a.spbtn,
#mainSection a.spbtn{
	width: 26px;
	display: none;
}
.spnavibg{display: none;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	z-index: 40;
	position: fixed;
	background-color: rgba(0,0,0,0.30);
}
.cvarea{
font-size:14px;
line-height:1.5;
font-weight: 300;
	background-color: #e6e6e6;
	padding: 60px 40px;
}
body:first-of-type .cvarea h4,
.cvarea h4{
	font-size: min(calc((50vw - 30px) / 18),28px);
	margin-bottom: 20px;
	display: block;
	line-height: 1.4;
	font-weight: 700;
}
	body:first-of-type .cvarea h4 span, .cvarea h4 span{
		display: inline-block;
	}
.cvarea ul{
	display:flex;
	align-items: stretch;
	max-width: 1050px;
	margin: auto;
}
.cvarea ul > li{
	width: calc(50% - 10px);
	margin-right: 20px;
	display: flex;
	align-items: stretch;
}
.cvarea ul > li a{
	border-radius: 15px;
	background-color: #F15A24;
	padding: 20px;
	box-sizing: border-box;
	color: #fff;
	padding-bottom: 110px;
	position: relative;
	display: block;
}
.cvarea ul > li:nth-child(2n){
	margin-right: 0;
}
.cvarea  li .inner {
	display: flex;
	
}
.cvarea  li > a .left{
	width: 130px;
	flex-shrink: 0;
	padding: 0 20px;
	box-sizing: border-box;
	position: relative;
}
.cvarea  li > a .left img{
	width: 100%;
	height: auto;
	display: block;
}
.cvarea  li > a .left.shiryou_img{
    padding: 0;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 3% 0;
	
}
.cvarea  li > a .left.shiryou_img img{
	width: 60%;
	height: auto;
	display: block;
	transform: rotate(15deg);
}
.cvarea  li > a .right{
	width: 100%;
	font-size: 18px;
}
.btn_cv{
	position: absolute;
	bottom:20px;
	width: calc(100% - 40px);
	left: 20px;
}
#mainSection .btn_cv > p,
.btn_cv > p{
	background-color: #ffff00;
	color: #F15A24;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 70px;
	padding: 5px 60px;
	position: relative;
	border-radius: 15px;
	font-size: 24px;
	box-sizing: border-box;
	font-weight: 700;
	width: 100%;
	
}
#mainSection .btn_cv .img1,
.btn_cv .img1,
#mainSection .btn_cv .img2,
.btn_cv .img2{
	
	top: 0;
	bottom: 0;
	width: 30px;
	display: block;
	margin-right: 10px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
 a:hover .btn_cv img{
	opacity: 0;
}
.cvarea a .btn_cv .img1{
	background-image: url("../img/top/icon_book1w.svg");
}
.cvarea a .btn_cv .img2{
	background-image: url("../img/top/icon_mail1w.svg");
}
.cvarea a:hover .btn_cv > p{
    background-color: #00b6ac;
}
.cvarea a:hover .btn_cv > p{
	color: #fff;
}
.btn_cv img{
	/*position: absolute;
	left: 20px;*/
	/*margin: auto;*/
}

.side_cv_area {
	position: fixed;
	z-index: 20;
	right: 0;
    bottom: 90px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
    transition: 0.5s;
	right: -50px;
}
.side_cv_area.show {
	right: 0px;
}
a.side_cv{
	width: 50px;
	box-sizing: border-box;
	padding:20px 10px;
	text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    background-color: #ffff00;
	margin-bottom: 30px;
	border-top: solid 10px #F15A24;
}
a.side_cv:last-child{
	margin-bottom: 0px;
}
a.side_cv span{
	width: 100%;
	display: block;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}
a.side_cv span.img1{
	background-image: url("../img/top/icon_book1w.svg");
}
a.side_cv span.img2{
	background-image: url("../img/top/icon_mail1w.svg");
}
a.side_cv img{
	width: 100%;
}
a.side_cv:hover span img{
	opacity: 0;
}
a.side_cv:hover{
	background-color: #00b6ac;
}
a.side_cv p{
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
    font-size: 20px;
	color: #F15A24;
	margin-top: 10px;
	font-weight: 500;
}
a.side_cv:hover p{
	color: #fff;
}

.topbtn{
	display: block;
	position: fixed;
	bottom: 20px;
	right: -60px;
    width: 50px;
	z-index: 50;
	transition: 1s;
	box-shadow: 0px 0px 10px -5px #F19D00;
	border-radius: 100%;
}
.topbtn:hover{
	box-shadow: 0px 0px 10px -5px #fede86;
}
.topbtn.show{
	right: 3vw;
}

body:first-of-type #mainSection h4.usageimg{
	font-size: 18px;
	border-bottom: 2px solid #F15A24;
	padding-bottom: 10px;
    margin-top: 40px;
	margin-bottom: 20px;
}
body:first-of-type #mainSection h5.usage{
	font-size: 18px;
    margin-bottom: 20px;
}
body:first-of-type #mainSection h5.usageimg{
	font-size: 18px;
    margin-bottom: 30px;
    padding-left: 25px;
}
body:first-of-type #mainSection h5.usageimg:before{
	content: "";
    width: 18px;
    height: 18px;
    background: url(../img/alo2.svg);
    position: absolute;
    margin-left: -25px;
    margin-top: 5px;
}

.kase{width: 14px;
	display: inline-block;
	position: relative;
}
.kase img{
	position: absolute;
	display: block;
	top:-12px;

}
.kadaibefore{
	filter: grayscale(1);
	margin-top: 50px;
}


.eventlist{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	max-width: 1050px;
	margin: auto;
	margin-bottom: 60px;
	align-items: stretch;
}
.eventlist li{
	margin-right: 20px;
	width: calc( 33.33% - 40px / 3);
}
.eventlist li:nth-child(3n){
	margin-right: 0;
}
.eventlist_item{
	position: relative;
	display: flex;
	align-items: stretch;
}
.eventlist_item a{
	padding-bottom: 65px;
	position: relative;
	background-color: #e9f4f7;
	display: block;
	width: 100%;
    transition: 0.5s;
}
.eventlist_item a:hover{
	opacity: 0.8;
}
.eventlist_item .textblock{
	padding: 15px;
	padding-bottom: 0;
}
.eventlist_item_date{
	font-size: 10px;
	margin-top: 10px;
}
.eventlist_item.end .imgblock:before{
	content: "本イベントは終了いたしました。";
	font-size: 18px;
	color: #fff;
	text-align: center;
	color: #fff;
	display: flex;
	position: absolute;
	align-items: center;
	justify-content: center;
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
	background-color: rgba(0,0,0,0.3);
	z-index: 10;
}
.eventlist_item .btn{
	position: absolute;
	margin: auto;
	left: 0;
	right: 0;
	bottom: 15px;
}

.eventlist_item.end a{
	filter: grayscale(1);
}
/*.eventlist_item.end a{
	background-color: #f2f2f2;
}
#mainSection .eventlist_item.end .btn a,
#mainSection .eventlist_item.end .btn a:hover
.eventlist_item.end .btn a,
.eventlist_item.end .btn a:hover,
#mainSection .eventlist_item.end .btn p,
#mainSection .eventlist_item.end a:hover .btn p,
.eventlist_item.end .btn p,
.eventlist_item.end a:hover .btn p{
	background-color: #999999;
	border-color: #999999;
	color: #fff;
}*/


body:first-of-type #mainSection .boxitem h4 {
    color: #F15A24;
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 10px;
}
body:first-of-type #mainSection .eventlist_item h4 {
    color: #F15A24;
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 10px;
}
body:first-of-type #mainSection  .eventlist_item.end h4 {
    color: #999999;
}
body:first-of-type #mainSection .top_flow h4{
	font-size:22px;
	font-weight: 500;
	margin-bottom: 20px;
}
@media screen and (max-width: 800px){
.eventlist li{
	margin-right: 20px;
    width: calc( 50% - 10px );
}
.eventlist li:nth-child(2n){
	margin-right: 0;
}
.eventlist li:not(:nth-child(-n + 2)){
    margin-top: 20px;
}
}
@media screen and (max-width: 500px){

	.eventlist{
		flex-direction: column;
	}
	.eventlist li{
    margin-right: 0px;
	width: 100%;
	}
.eventlist li:not(:first-child){
    margin-top: 20px;
}


}



.boxitem_list{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	max-width: 1050px;
	margin: auto;
	margin-bottom: 60px;
	align-items: stretch;
}
.boxitem_list li{
 margin-top: 20px;
	display: flex;
	align-items: stretch;
	width: 100%;
}


@media screen and (min-width: 801px){
.boxitem_list li{
	width: calc( 33.33% - 40px / 3);
}
.boxitem_list li:not(:nth-child(3n)){
	margin-right: 20px;
}
.boxitem_list li:nth-child(-n + 3){
 margin-top: 0;
}
}
@media screen and (min-width: 501px) and (max-width: 800px){
	
.boxitem_list li{
	width: calc( 50% - 10px );
}
.boxitem_list li:not(:nth-child(2n)){
	margin-right: 20px;
}
.boxitem_list li:nth-child(-n + 2){
 margin-top: 0;
}
}

.boxitem a{
	display: block;
	padding-bottom: 65px;
	position: relative;
	background-color: #ffffff;
	width: 100%;
    transition: 0.5s;
}
.boxitem a:hover{
	opacity: 0.8;
}
.boxitem .textblock{
	padding: 15px;
	padding-bottom: 0;
}
.boxitem .date{
	font-size: 12px;
	margin-top: 10px;
}
.boxitem .imgblock img{
	width: 100%;
	height: auto;
}
.boxitem .btn{
	position: absolute;
	margin: auto;
	left: 0;
	right: 0;
	bottom: 15px;
}
.eventlist_item .tag,
.boxitem .tag{
	font-size: 12px;
	line-height: 1;
	padding: 5px;
	background-color: #00b6ac;
	color: #fff;
	margin: 0;
	margin-bottom: 10px;
}

.tagtitle{
	display: flex;
	justify-content: space-between;
}
.tagtitle .tag{
	font-size: 12px;
	line-height: 1;
	padding: 5px;
	background-color: #00b6ac;
	color: #fff;
	margin: 0;
	margin-bottom: 10px;
	margin-right: 20px;
}

body:first-of-type #mainSection .boxitem.end h4 {
    color: #999;
}
.imgblock{
	height: 0;
	position: relative;
	padding-top: 56.25%;
	width: 100%;
	overflow: hidden;
}
.imgblock img{
	position:absolute;
	z-index: 1;
	left: 0;
	top: -100%;
	bottom: -100%;
	margin: auto;
	height: auto;
	width: 100%;
}
.boxitem.end .imgblock:before{
	content: "本イベントは終了いたしました。";
	font-weight: 700;
	font-size: 18px;
	color: #fff;
	text-align: center;
	color: #fff;
	display: flex;
	position: absolute;
	align-items: center;
	justify-content: center;
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
	background-color: rgba(0,0,0,0.3);
	z-index: 10;
}
.boxitem.end{
	background-color: #f2f2f2;
}
#mainSection .boxitem.end .btn a,
#mainSection .boxitem.end .btn a:hover
.boxitem.end .btn a,
.boxitem.end .btn a:hover{
	background-color: #999999;
	border-color: #999999;
	color: #fff;
}


.columnlink{
display: flex;
	justify-content: center;
	align-items: center;
	padding: 30px 20px;
	padding-top: 0;
	flex-wrap: wrap;
}
#mainSection .columnlink a{
display: block;
    background: #ffffff;
    padding: 10px 20px;
    margin: 5px;
    min-width: 120px;
    text-align: center;
    border-radius: 30px;
    border: 2px solid #979797;
	color: #3D3D3D;
	font-weight: 500;
}
#mainSection .columnlink a:hover{
	background: #979797;
	color: #ffffff;
}
#mainSection .columnlink a.sb{ border: 2px solid #ed1a2d;}
#mainSection .columnlink a.sb:hover{ background:#ed1a2d;}
#mainSection .columnlink a.kr{ border: 2px solid #00b6ac;}
#mainSection .columnlink a.kr:hover{ background:#00b6ac;}
#mainSection .columnlink a.sr{ border: 2px solid #F15A24;}
#mainSection .columnlink a.sr:hover{ background:#F15A24;}
.boxitem .tag.sb,
.eventlist_item .tag.sb{background:#ed1a2d;}
.boxitem .tag.kr,
.eventlist_item .tag.kr{background:#00b6ac;}
.boxitem .tag.sr,
.eventlist_item .tag.sr{background:#F15A24;}

.noeventtext{
	text-align: center;
    font-size: 24px;
    font-weight: 700;
    color: #F15A24;
    margin-top: 30px;
    margin-bottom: 30px;
    background: #ffffff;
    width: 70%;
    margin: auto;
    padding: 50px;
    border-radius: 20px;
    margin-block: 60px;
    max-width: 700px;
}
@media screen and (max-width: 800px){
	
.noeventtext{    font-size: calc((100vw - 40px) / 26);
	}
}
p.option:not(:last-child){
	background: #00b6ac;
    padding: 5px 10px;
    color: #ffffff;
    display: inline-block;
    border-radius: 10px;
    font-weight: 500;
    margin-bottom: 10px;
}
span.small{
font-size: 12px;
    line-height: 130%;
    display: block;
	margin-top: 10px;
}



.spnavi_buttons{
	padding: 20px;
}
.spnavi .spnavi_buttons a{
	display: block;
    width: 100%;
    text-align: center;
    max-width: 375px;
    background-color: #000;
    font-size: 20px;
    font-weight: 800;
    color: #fff;
    border-radius: 50px;
    position: relative;
	padding: 0;
    padding-top: 10px;
    padding-bottom: 25px;
    transition: 0.5s;
	margin-bottom: 20px;
    height: 54px;
}
.spnavi .spnavi_buttons a:before{
    content: "";
    width: 110px;
    height: 4px;
    display: block;
    left: 0;
    right: 0;
    margin: auto;
    bottom: 10px;
    position: absolute;
    background: #fbb03b;
    background: -moz-linear-gradient(left, #fbb03b 0%, #fadd00 100%);
    background: -webkit-linear-gradient(left, #fbb03b 0%, #fadd00 100%);
    background: linear-gradient(to right, #fbb03b 0%, #fadd00 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fbb03b', endColorstr='#fadd00', GradientType=1);
}
.spnavi .spnavi_buttons p{
    font-weight: 500;
    transition: 0.5s;
	font-size: 20px;
}
.kome{
	font-size: 0.8em;
	padding-left:1em;
	position: relative;
    display: inline-block;
}
.kome:before{
    content: "※";
    font-size: 1em;
    position: absolute;
    top: 0;
    left: 0;
}
.komeaf{
	padding-right:0.6em;
	position: relative;
    display: inline-block;
}
.komeaf:after{
    content: "※";
    font-size: 1em;
    position: absolute;
    top: 0;
    right: -0.2em;
    transform: scale(0.6);
    line-height: 1;
}
.km{
	font-size: 1em;
    transform: scale(0.6);
	display: inline-block;
	margin-left: -5px;
}


.topnavi{
	display: flex;
	padding: 0 20px;
	border-bottom: 2px solid #ff9800;
    border-top: 2px solid #ff9800;
	align-items: center;
	width: 100%;
    justify-content: space-between;
    gap: 20px;
	box-sizing: border-box;
}
.topnavi .left{;
}
.topnavi .left img{
width: 200px;
    width: 290px;
}
.topnavi .right{
   display: flex;
   align-items: center;
	justify-content: flex-end;
	flex-shrink: 0;
}
.topnavi .right .cv{
background: #000000;
    padding: 5px 20px;
    border-radius: 30px;
    color: #ffffff;
    font-weight: 600;
	 transition: 0.5s;
}
.topnavi .right .cv:hover{
background:#ff9800;
	color:#ffffff;
}
#mainSection .topnavi .right .cv:hover{
background:#ff9800;
	color:#ffffff;
}

.topnavi .right a{
	margin-left: 0px;
	font-weight: 400;
	font-size:15px;
    padding: 32px 13px;
}
.topnavi .right a:hover{
	color: #fff;
	background-color: #f7931e;
	font-weight: 500;
}
@media screen and (max-width: 1300px){.topnavi .right a{font-size:13px;}}
@media screen and (max-width: 1200px){.topnavi .right a{font-size:12px;}}

.topnavi .right .cv.or1{
	padding: 9px 0px;
    width: 156px;
    text-align: center;
    border-radius: 0;
    color: #ffffff;
    font-weight: 600;
    transition: 0.5s;
    font-size: 14px;
	background-color: #f15a24;
	border: solid 1px #f15a24;
	margin-left: 12px;
}
.topnavi .right .cv.or2{
	padding: 9px 0px;
    width: 156px;
    text-align: center;
    border-radius: 0;
    color: #ffffff;
    font-weight: 600;
    transition: 0.5s;
    font-size: 14px;
	background-color: #f7931e;
	border: solid 1px #f7931e;
	margin-left: 24px;
}
.topnavi .right .cv.or1:hover{
    color: #f15a24 !important;
	background-color: #ffffff;
}
.topnavi .right .cv.or2:hover{
    color: #f7931e !important;
	background-color: #ffffff;
}

.check_text{
    padding-left: 40px;
    position: relative;
    margin-bottom: 10px;
    padding-top: 4px;
    font-size: 18px;
    font-weight: 700;
	line-height: 1.4;
}
.check_text:before{
	position: absolute;
    background-image: url(/smartcloudphone/assets/img/check.png);
    background-repeat: no-repeat;
    top: 0;
    bottom: 0;
    left: 0;
    content: "";
    margin: auto;
    width: 24px;
    height: 24px;
    background-size: contain;
}

.topicslist hr{
	border-top:1px solid #c3c3c3;
	display: block;
	border-bottom: none;
}
.topicslist{
max-width: 1140px;
margin: auto;
	margin-bottom: 40px;
}
.topicslist ul a{
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
.topicslist ul li.date{
	width: 180px;
}
.topicslist ul li.date i{
	font-style: normal;
	font-size:14px;
	display: inline-block;
	margin-right: 10px;
}
.topicslist ul li.date p{
	background:#fbb03b;
	padding: 5px 10px;
	color: #ffffff;
	font-weight:700px;
	border-radius: 5px;
	text-align: center;
	margin-right: 10px;
	display: inline-block;
}
.topics_textlist{
max-width: 1140px;
margin: auto;
	margin-bottom: 40px;
    border-top: 1px solid #c3c3c3;
}
.topics_textlist li{
	border-bottom:1px solid #c3c3c3;
}
.topics_textlist a{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	width: 100%;
	flex-wrap: nowrap;
    padding: 10px 0;
}
.topics_textlist .topicsmeta{
	width: 180px;
	display: flex;
	align-items: center;
	justify-content:space-between;
	flex-shrink: 0;
}
.topics_textlist .date{
	font-style: normal;
	font-size:14px;
	display: inline-block;
	margin-right: 10px;
}
.topics_textlist .category{
	background:#fbb03b;
	padding: 5px 10px;
	color: #ffffff;
	font-weight:700px;
	border-radius: 5px;
	text-align: center;
	margin-right: 10px;
	display: inline-block;
}
.topics_textlist .title{
	flex-shrink: 1;
	width: 100%;
}

.note{
	display: flex;
	justify-content: center;
	padding: 60px 20px;
	font-size: 14px;
}
.note li{
	position: relative;
	padding-left: 1.5em;
}
.note li span:first-child{
	position: absolute;
	left: 0;
}

@media screen and (max-width: 1200px){
.site_navi nav a{font-size: 14px;padding-left: 25px;padding-right: 10px;}}
@media screen and (max-width: 1040px){
.site_navi nav a{font-size: 14px;padding-left: 25px;padding-right: 0px;}
	.site_navi nav a:before{content: none;}
}
@media screen and (max-width: 1000px){
.site_navi nav a{font-size: 12px;padding-left: 25px;padding-right: 0px;}
	.site_navi nav a:before{content: none;}
}
@media screen and (max-width:900px){
.site_navi nav a{font-size: 12px;padding-left: 6px;padding-right: 6px;}
	.site_navi nav a:before{content: none;}
	.site_navi nav a:not(.open_subnavi):before,
	.site_navi nav a.open_subnavi:after, .site_navi nav a.open_subnavi:before{
		display: none;
	}
}
@media screen and (max-width: 1150px){
	.subnavi_function .subnavi_inner a {
    padding: 10px 15px;
}
}

@media screen and (max-width: 1000px){
#gnSolution #footerArea, #serviceFooter {
    min-width: 0;
    max-width: 100%;
    overflow: auto;
	}
body:first-of-type .cvarea h4, .cvarea h4 {
	font-size: 26px;
	}
	.cvarea > .inner{
		flex-direction: column;
	}
	.cvarea > .inner > li{
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}
	.cvarea > .inner > li:last-child{
		margin-bottom: 0;
	}
}
@media screen and (max-width: 910px){
	.subnavi_function .subnavi_inner {
	max-width: 700px;
    align-items: center;
    padding: 10px 0;
    box-sizing: border-box;
}
	.subnavi .subnavi_function a{
		padding: 0 15px;
	}
	.subnavi .subnavi_function a:first-child:after,
	.subnavi .subnavi_function a:before {
    height:20px;
}
}
@media screen and (max-width: 1100px){
	.topnavi{
		width: 100%;
		display: flex;
		justify-content: space-between;
		box-sizing: border-box;
		display: none;
	}
	
	.topnavi .left{
    width: 40%;
    max-width: 150px;
	}
	.topnavi .right{    display: none;
	}
	.site_navi{
		display:flex;
	}
	.site_navi .inner{
		height: auto;
	}
	a.spbtn,
#mainSection a.spbtn{
	display: flex;
	align-items: center;
	}
		.subnavi_contents{
			display: none!important;
		}
}



@media screen and (max-width: 700px){
	.topicslist ul a{
		display: block;
	}
	.topicslist ul li.date{
		margin-bottom: 10px;
	}
	.topicslist ul li.category{
		margin-bottom: 10px;
	}
	
	.topics_textlist a{
		display: block;
	}
	.topicsmeta{
		margin-bottom: 10px;
	}
}

@media screen and (max-width: 500px){
#gnSolution #contentsArea #contentsBlock #mainSection {
	font-size: 14px;
	}


#mainSection .btn_cv a, .btn_cv a,
#mainSection .btn_cv p, .btn_cv p {
    height: 40px;
    padding: 0px 0px;
    font-size: 16px;
    width: 240px;
    margin: auto;
    border-radius: 8px;
    max-width: 100%;
}

body:first-of-type .cvarea h4, .cvarea h4 {
    font-size: 20px;
	margin-bottom: 15px;
}
.btn_cv span {
    left: 20px;
    width: 22px;
}
	.cvarea {
    padding: 40px 30px;
}
	
.cvarea ul > li a {
	padding-bottom: 80px;
}
.cvarea > .inner {
    display: flex;
	align-items: center;
}
.cvarea li .inner {
	flex-direction: column;
	align-items: center;
}
.cvarea .left{
    width: 70px;
	padding: 0 	10px;
	}
.cvarea .right {
    font-size: 14px;
}
	
.side_cv_area {
	position: fixed;
	z-index: 20;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
    bottom: 65px;
	display: none;
}
a.side_cv span{
	width: 60%;
}

a.side_cv p{
    font-size: 14px;
	margin-top: 10px;
}
a.side_cv img{
	width: 100%;
}
a.side_cv{
    width: 35px;
	padding:10px 5px;
	margin-bottom: 20px;
	border-top: solid 6px #F15A24;
}
a.side_cv p{
    font-size: 14px;
	margin-top: 10px;
	}
	
	


}
.modalopen{
	cursor: pointer;
}
.movie_modalinner {
  height: auto;
  display: none;
  margin: auto;
}
.movie_modalinner.show {
  display: block;
}
.movie_modal {
  position: fixed;
  top: 0;
  z-index: 1000;
  height: 100vh;
  width: 100%;
  padding: 20px;
  box-sizing: border-box;
  display: none;
  background-color: rgba(25, 25, 25, 0.97);
  overflow: auto;
}
.modalclose {
  width: 30px;
  margin-bottom: 10px;
  display: block;
}
.movie_modalinner {
  position: fixed;
  width: calc(100% - 40px);
  z-index: 100001;
  display: none;
  align-items: center;
  height: min(calc(56.25vw + 20px), 650px);
  height: calc(56.25vw + 20px);
  max-height: 650px;
  align-items: flex-end;
  justify-content: center;
  flex-direction: column;
  max-width: 1000px;
  margin: auto;
  left: 0;
  right: 0;
}
.movie_modalinner iframe {
  width: 100%;
}
.moviebox {
  display: flex;
  width: 100%;
  height: 100vw;
}
.youtubearea {
  padding: 0 !important;
  width: 100%;
  height: 0;
  position: relative;
  padding-top: 56.25% !important;
  overflow: hidden;
}
.youtubearea iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: -20%;
  right: -20%;
  left: -20%;
  bottom: -20%;
  margin: auto;
}

.sp_naviopen{
	width: 50px;
    position: fixed;
    bottom: 80px;
    right: 3vw;
    display: none;
    z-index: 100;
	box-shadow: 0px 0px 10px -5px #F19D00;
	border-radius: 100%;
	transition: 1s;
}

.sp_naviopen:hover{
	box-shadow: 0px 0px 10px -5px #fede86;
}



.sp_navi_bg{
	z-index: 1010;
	background-color: rgba(0,0,0,0.53);
	position: fixed;
	top: 0;
	left: 0;
	height: 100vh;
	width:100%;
	display: none;
}
.sp_navi{
	z-index: 1011;
	position: fixed;
	background-color: #ffca40;
	border-radius:  15px 0 0 15px;
	padding:0 10px;
	width: min(400px, 90vw);
	top: 100px;
	right: -400px;
	transition: 0.3s;
}
.sp_navi.active{
	right: 0;
}
.sp_navi_links{
	display: flex;
	gap:10px;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
	margin-bottom: 10px;
}
.sp_navi_links a{
	border-radius: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
    height: 60px;
    text-align: center;
    font-size: min(18px, 4.2vw);
	font-weight: 700;
	width: calc(50% - 5px);
	background-color: rgba(255,255,255,0.40);
}
.sp_navi_links a.or1{
	background-color: #f15a24;
	color: #fff;
}
.sp_navi_links a.or2{
	background-color:#f7931e;
	color: #fff;
}
.sp_navi_logo{
	height: min(100px, 22vw);
	display: flex;
	align-items: center;
	justify-content: center;
	justify-content: center;
}
.sp_navi_logo img{
	width: 90%;
}
.sp_naviclose{
	height: min(80px, 20vw);
	margin-top: -10px !important;
	display: flex;
	align-items: center;
	justify-content: center;
}
.sp_naviclose img{
	width: min(100px, 22vw);
}
@media screen and (max-width: 1100px){
.sp_naviopen{
	display: block;
}
}
.sp_naviopen{
	right: -60px;
}
.sp_naviopen.show{
	right: 3vw;
}
.cv_area2{
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#f18d00+0,fbb139+100 */
background: linear-gradient(to right,  #f18d00 0%,#fbb139 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */	
	padding: 0 20px;
    line-height: 1.5;
}
.cv_area2 .inner{
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	max-width: 1140px;
	margin: auto;
}
.cv_area2 .inner .left{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 20px 0;
    width: 50%;
}
.cv_area2 .inner .right{
	width: 50%;
	display: flex;
	justify-content: flex-end;
    align-items: flex-end;
}
body:first-of-type #mainSection  .cv_area2 h3,
body:first-of-type .cv_area2 h3{
    text-align: center;
    color: #F15A24;
    font-weight: 800;
    line-height: 1.4;
    font-size: min(42px, 3.4vw);
	color: #fff;
    margin-bottom: min(60px, 3.4vw);
}
body:first-of-type .cv_area2 p{
	font-size: min(24px,2vw);
	color: #fff;
	font-weight: 700;
	text-align: center;
    margin: 0;
}

.cv_area2 .cvbtn {
    max-width: 700px;
    flex-shrink: 0;
    display: flex;
    justify-content: space-between;
    color: #F15A24;
	margin: 0;
    width: 100%;
	gap:20px;
}
.cv_area2 .cvbtn a{
    background: #000000;
    padding: min(15px, 2vw) 0px min(30px, 4vw) 0px;
    color: #ffffff;
    width: 400px;
    border-radius: 90px;
    margin: 0px;
    font-size: min(20px, 2vw);
    font-weight: 600;
    position: relative;
    display: block;
    text-align: center;
    transition: 0.5s;
	box-shadow: 0px 0px 15px -13px #fff81f;
}
.cv_area2 .cvbtn a:before{
    content: "";
    width: 110px;
    height: 4px;
    display: block;
    border-radius: 10px;
    left: 0;
    right: 0;
    margin: auto;
    bottom: 17px;
    position: absolute;
    background: #fbb03b;
    background: -moz-linear-gradient(left, #fbb03b 0%, #fadd00 100%);
    background: -webkit-linear-gradient(left, #fbb03b 0%, #fadd00 100%);
    background: linear-gradient(to right, #fbb03b 0%, #fadd00 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fbb03b', endColorstr='#fadd00', GradientType=1);
}
.cv_area2 .cvbtn a:hover,
#mainSection .cv_area2 .cvbtn a:hover{
	background-color: #000;
	color: #fff;box-shadow: 0px 0px 14px 3px #fff81f;
}
.cv_area2 .cvbtn a.btn_w{
	background-color: #fff;
	color: #ea5514;
}
.cv_area2 .cvbtn a.btn_w:hover,
#mainSection .cv_area2 .cvbtn a.btn_w:hover{
	background-color: #fff;
	color: #ea5514;
}


@media screen and (max-width: 800px){
	.cv_area2 .inner{
    align-items: center;
    flex-direction: column;
	}
.cv_area2 .inner .left {
	width: 100%;
		padding-top:min(40px, 5vw);
        padding-top: min(40px, 10vw);
        padding-bottom: min(20px, 5vw);
	}
	.cv_area2 .inner .right{
	width: 100%;
	}
	
body:first-of-type .cv_area2 p {
	font-size: min(28px, 4vw);
	}
body:first-of-type #mainSection  .cv_area2 h3,
body:first-of-type .cv_area2 h3 {
    margin-bottom: min(40px, 7vw);
	margin-bottom: min(20px, 4vw);
	font-size: min(52px, 7vw);
	}
.cv_area2 .cvbtn a {
    background: #000000;
    padding: min(15px, 2vw) 0px min(30px, 4vw) 0px;
    color: #ffffff;
    width: 400px;
    border-radius: 90px;
        font-size: min(20px, 3.6vw);
    font-weight: 600;
    position: relative;
    display: block;
    text-align: center;
    transition: 0.5s;
}
	.cv_area2 .cvbtn a:before {
	bottom:  min(17px, 2vw);
	}
}

@media screen and (max-width: 700px) {
    #toppage section.cv_area2{
        padding: 0px 20px;
    }
}

@media only screen and (max-width: 780px) {
    body#gnSolution {
        padding-top: 64px;
    }
}
.float_navi.site_navi.show {
    top: 108px;
}
	.float_navi.site_navi{
		transition: 0s !important;
	}
	.toppage .site_navi.float_navi{
		top:-200px;
	}