@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/css?family=Noto+Serif+JP:400,700&display=swap&subset=japanese');
*{
	box-sizing: border-box;	
}
body{
    font-family: 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', '游ゴシック', 'Yu Gothic', sans-serif;
	background:#ffffff;
}
ul, ol{
	padding:0;
}
li{
	list-style-type: none;
}
i{
	font-style: normal;
}
a{
	text-decoration:none;
	color:#000000;
}
a:hover{
	opacity:0.7;
}

.sp_only, .pc_none{
    display: none;
}
.space0_5{
    letter-spacing: 0.5px;
}


header nav{
	width:100%;
    padding: 0 4%;
	text-align: center;
	position: fixed;
	top:0;
	left:0;
	z-index: 100;
}
header nav#menu_pc{
    background:#ffffff;    
}
header nav#menu_pc .menu_pc_wrap{
    width:100%;
    max-width: 1366px;
    min-width:1000px;
    margin:auto;
    overflow: hidden;
    text-align: left;
    display: table;
    line-height: 140%;
    font-size: 85%;
}
header nav#menu_pc ul{
    margin-bottom:0;
}
header nav#menu_pc ul.menu_pc_left{
    float:left;
}
header nav#menu_pc ul.menu_pc_right{
    float:right;
}

header nav#menu_pc ul li{
	text-align: center;
	display: table-cell;
	vertical-align: middle;
/*    width:96px;*/
    width:auto;
    padding:0 24px;
}
header nav#menu_pc ul li a{

}
header nav#menu_pc ul li span{
	display:table-cell;
	text-align: center;
}
header nav#menu_pc ul li.link_top{
    width:90px;
    padding:0 24px 0 0;
}

/* title */

section.top_title{
	width:100%;
    height:110vh;
	min-height: 680px;
    position: relative;
    background:url(../img/top/top_bg.png) repeat-x;
    background-size: cover;
    padding-top: 0px;
}
section.top_title .contents {
    width:100%;
    min-height: 680px;
    padding-bottom: 240px;
    position: absolute;
    top:0;
    z-index: 2;
}
section.top_title .contents .title_wrap {
    width: 100%;
    background:url(../img/top/top_cloud02.png) no-repeat;
    background-position: top center;
    background-size: contain;
    margin: auto;
    top: 0;
    left: 0;
    z-index: 2;
    display: table;
}
section.top_title .contents .title {
    background: url(../img/top/top_bg_tools.png) no-repeat;
    background-position: center 70px;
    background-size: 100%;
    width: 100%;
    margin: auto;
    padding: 35vh 0 170px;
}
section.top_title .contents .title h1{
    margin:auto;
    text-align: center;
    width:80%;
    max-width: 1200px;
/*    transform: scale(0.8);*/
}
section.top_title .contents .title h1 i{
    color:#ffffff;
    display: block;
    margin: auto;
}
section.top_title .contents .title h1 i img{
    width:100%;
/*    width:auto;*/
    height:auto;
}
section.top_title .contents .title h1 span{
    margin: -20px 0 30px 0;
    display: block;
}
section.top_title .contents .title h1 span img{
    width:90%;
    max-width:640px;
    height:auto;
}
section.top_title .contents .title p {
    text-align: center;
    font-weight:bold;
    font-size: 140%;
    line-height: 200%;
}
section.top_title .contents .title span {
    font-size: 120%;
    letter-spacing: 2px;
    line-height: 200%;
    margin-bottom: 10px;
    display: block;
}
section.top_title .contents .title .subtitle {
    text-align: center;
    margin: 40px 0% 10px 4%;
}
section.top_title .contents .title .subtitle img {
    width:90%;
    height:auto;
}

/* contents_wrap */

section .contents_wrap {
    width:100%;
    margin:0px auto;
}
section .contents_wrap h1{
    font-family: 'Noto Sans CJK JP', 'メイリオ', 'Meiryo', '游ゴシック', 'Yu Gothic', sans-serif;
    text-align:center;
    font-size: 240%;
    font-weight: bold;
    position: relative;
    padding:26px 0 12px;
    margin:0 auto 30px;
    letter-spacing: 1px;
    line-height: 140%;
    color:#000000;
}
section .contents_wrap h1 .ttl_jp{
    display: block;
}
section .contents_wrap h1 .ttl_en{
    display: block;
    margin-bottom: 18px;
    font-size: 50%;
    color:#3c8f7d;
}
section .contents_wrap article{
    padding:60px 0;
    max-width: 1200px;
    box-sizing: content-box;
    margin:auto;    
}

/* introduction */

section.introduction {
    width: 100%;
    margin: 0 auto;
    padding: 0px;
    text-align: left;
    background: url(../img/top/intro_bg_top02.png);
    background-position: top center;
    background-repeat: repeat-x;
    padding:180px 0;
    margin-top: -35vh;
    position: relative;
    z-index: 3;
}
section.introduction:after {
    content:"";
    display: block;
    height:374px;
    width:100%;
    position: absolute;
    top:-80px;
    background: url(../img/top/top_person.png) no-repeat;
    background-size: 1000px;
    background-position: top center;
}
section.introduction .contents_wrap article{
    width:90%;
    max-width: 960px;
    margin: 0 auto 80px;
    opacity: 0;
    transform: translateY(100px);
    transition: all 0.5s;
}
section.introduction .contents_wrap article p {
    font-size: 100%;
    padding-top: 3px;
    padding-bottom: 0px;
    letter-spacing: 1px;
    font-weight: normal;
    line-height: 200%;
    margin-bottom: 0;
}

/* company */

section.company {
    width: 100%;
    margin: 0 auto;
    padding: 0px;
    text-align: left;
    background:#bde6b2 url(../img/top/intro_bg_bottom.png);
    background-position: top center;
    background-repeat: no-repeat;
    padding:180px 0 0;
    margin-top: -180px;
    overflow: hidden;
}
section.company .contents_wrap{
    width:100%;
    max-width: 1120px;
    position: relative;
    padding-bottom: 54px;
}
section.company .contents_wrap article h1{
    position: relative;
    max-width: 360px;
}
section.company .contents_wrap article h1:before{
    content:"";
    display: inline-block;
    width:138px;
    height:108px;
    background:url(../img/top/company_ttl_grass.png) no-repeat;
    background-size: contain;
    position: absolute;
    left:-140px;
    top:10px;
}
section.company .contents_wrap article h1:after{
    content:"";
    display: inline-block;
    width:138px;
    height:108px;
    background:url(../img/top/company_ttl_grass.png) no-repeat;
    background-size: contain;
    position: absolute;
    right:-140px;
    top:20px;
}

section.company .contents_wrap:before{
    content:"";
    width:200px;
    height:100%;
    background:url(../img/top/company_grass_left.png) repeat-y;
    position: absolute;
    left:-240px;
    top:0;
}
section.company .contents_wrap:after{
    content:"";
    width:200px;
    height:100%;
    background:url(../img/top/company_grass_right.png) repeat-y;
    position: absolute;
    right:-280px;
    top:0;
}
section.company .contents{
    margin-top:-100px;
}
section.company .contents ul li.event_wrap{
    padding-top:80px;
    width:1080px;
    margin:auto;
}
section.company .contents ul li .event_overview{
    position: relative;
    width:1120px;
    margin-top: 100px;
}
section.company .contents ul li .event_overview .event_img{
    position: absolute;
    top:-50px;
    right:0;
    opacity:0;
    transform:translateX(100px);
    transition: all 0.5s;
    z-index: 2;
}
section.company .contents ul li .event_overview .event_img img{
    border-radius: 36px;
}
section.company .contents ul li .event_overview .event_txt{
    width:700px;
    background:#ffffff;
    border-radius: 36px;
    padding:36px 90px 36px 36px;
    margin:0 auto 0 0;
    opacity:0;
    transform:translateX(-100px);
    transition: all 0.5s;
}
section.company .contents ul li .event_overview .event_person{
    position: absolute;
    top:220px;
    right:-50px;
    z-index: 3;
    opacity:0;
    transform:translateX(100px);
    transition: all 0.5s;
}
section.company .contents ul li:nth-child(even) .event_overview .event_img{
    position: absolute;
    top:-50px;
    left:0;    
    transform:translateX(-100px);
    transition: all 0.5s;
}
section.company .contents ul li:nth-child(even) .event_overview .event_txt{
    width:700px;
    background:#ffffff;
    border-radius: 36px;
    padding:36px 36px 36px 96px;
    margin:0 0 0 auto;
    transform:translateX(100px);
    transition: all 0.5s;
}
section.company .contents ul li:nth-child(even) .event_overview .event_person{
    position: absolute;
    top:220px;
    left:-50px;
    z-index: 3;
    transform:translateX(-100px);
    transition: all 0.5s;
}
section.company .contents ul li .event_overview .event_txt h2{
    display: table;
    margin-bottom: 16px;
    font-size: 120%;
    line-height: 160%;
}
section.company .contents ul li .event_overview .event_txt h2 i{
    display: table-cell;
    vertical-align: middle;
    width:160px;
    height:120px;
/*    border:4px solid #3c8f7d;
    border-radius: 36px;
*/    overflow: hidden;
}
section.company .contents ul li .event_overview .event_txt h2 span{
    display: table-cell;
    vertical-align: middle;
    padding-left:24px;
}
section.company .contents ul li .event_overview .event_txt p{
    line-height: 180%;
    margin: 0 12px 20px;
}

section.company .contents ul li .event_detail{
    opacity: 0;
    transform:translateY(100px);
    transition: all 0.5s;
}
section.company .contents ul li .event_detail ul {
    width: 1000px;
    margin: 100px auto 0;
    border-radius: 12px;
    border: 4px solid #ff8f0c;
    background: #ff8f0c;
    padding-left: 12px;
    overflow: hidden;
}
section.company .contents ul li .event_detail ul li{
    width:100%;
    border-right: 16px solid #ffffff;
}
section.company .contents ul li .event_detail ul li dl{
    display: table;
    width: 100%;
    margin: 0;
}
section.company .contents ul li .event_detail ul li dl dt{
    display: table-cell;
    vertical-align: middle;
    color:#ffffff;
    background:#ff8f0c;
    text-align: center;
    width:30%;
    padding:20px;
    line-height: 180%;
    border-bottom:2px solid #ffffff;
}
section.company .contents ul li .event_detail ul li dl dd{
    display: table-cell;
    vertical-align: middle;
    color:#000000;
    background:#ffffff;
    width:70%;
    padding:20px;
    line-height: 180%;
    border-bottom:2px solid #ff8f0c;
}
section.company .contents ul li .event_detail ul li:last-child dl dt{
    border-bottom:none;
}
section.company .contents ul li .event_detail ul li:last-child dl dd{
    border-bottom:none;
}

/* 申し込みボタン */

section.company .contents .event_btn{
    margin:64px auto 0px;
    text-align: center;
    display: none;
}
section.company .contents .event_btn a{
    display: inline-block;
    border-radius: 120px;
    background: #ff5757;
    box-shadow: 0px 8px 0px rgba(170,57,57,1);
    color:#ffffff;
    font-size: 180%;
    line-height: 100%;
    font-weight:bold;
    padding:24px 12px 16px;
    width:90%;
    max-width: 540px;
}
section.company .contents .event_btn a span{
    display: inline-block;
    padding-right: 16px;
    vertical-align: middle;
}
section.company .contents .event_btn a span .event_btn_txt{
    display: block;
}
section.company .contents .event_btn a span .event_btn_limit{
    display: block;
    font-size: 50%;
    margin-top: 6px;
}

section.company .contents .event_btn a i{
    display: inline-block;
    width:30px;
    height:30px;
    background:url(../img/top/btn_icon.png) no-repeat;
    background-position: right center;
    background-size: contain;
    vertical-align: middle;
}

/* 申し込みボタン 終了後 */

section.company .contents .event_btn_after{
    margin:64px auto 0px;
    text-align: center;
    display: none;
}
section.company .contents .event_btn_after i{
    display: inline-block;
    border-radius: 80px;
    background: #666666;
    box-shadow: 0px 8px 0px rgba(51,51,51,1);
    color:#ffffff;
    font-size: 180%;
    line-height: 100%;
    font-weight:bold;
    padding:28px 12px;
    width:90%;
    max-width: 540px;
}
section.company .contents .event_btn_after i span{
    display: inline-block;
    vertical-align: middle;
    padding-bottom: 4px;
}


/* questions */

section .contents_wrap article.questions{
    width:90%;
    max-width: 1000px;
    margin: 0 auto 40px;
    opacity: 0;
    transform: translateY(100px);
    transition: all 0.5s;
    padding-top:20px;
}
article.questions ul li{
    margin-bottom: 60px;
    background:#ffffff;
    border-radius: 36px;
    width:100%;
    padding:40px;
}
article.questions ul li:last-child{
    margin-bottom: 0px;
}
article.questions ul li dl{
    margin-bottom: 0;
}
article.questions ul li dl dt{
    display: table;
    width:100%;
    margin-bottom: 40px;
}
article.questions ul li dl dd{
    display: table;
}
article.questions ul li dl dt i{
    display: table-cell;
    vertical-align: middle;
    width:48px;
}
article.questions ul li dl dt i:before{
    content:"Q";
    display: inline-block;
    color:#ffffff;
    border-radius: 48px;
    font-size:160%;
    font-weight:bold;
    background-color: #3c8f7d;
    width:48px;
    height:48px;
    line-height:44px;
    text-align: center;
}
article.questions ul li dl dt span{
    display: table-cell;
    padding-left: 24px;
    vertical-align: middle;
    font-weight:normal;
}
article.questions ul li dl dd i{
    display: table-cell;
    vertical-align: middle;
    width:48px;
}
article.questions ul li dl dd i:before{
    content:"A";
    display: inline-block;
    color:#ffffff;
    border-radius: 48px;
    font-size:160%;
    font-weight:bold;
    background-color: #ff8f0c;
    width:48px;
    height:48px;
    line-height:44px;
    text-align: center;
}

article.questions ul li dl dd span{
    display: table-cell;
    padding-left: 24px;
    vertical-align: middle;
    line-height: 180%;
}


/* footer_green */

div.footer_green{
    width:100%;
}
div.footer_green img{
    width:100%;
    height:auto;
}


/* footer */

footer{background-color: black;letter-spacing: 1px;}
footer .col-12{padding-left: 0;padding-right: 0}
.left-footer {
    background: linear-gradient(120deg, #d7000f 73%, #ffffff00 0%);
    float: left;
}
.left-footer img{
    margin: 30px 245px 167px 61px;
    width: 115px;
}
#logo-team{padding:20px 0;z-index: 99;background-color: white;width: 100%}
#logo-team li{
    float:left;
    text-align: center;
    padding: 0 30px;
}
#logo-team li img{
    height: 36px;
}
.right-footer{float:right;margin:46px 30px 0 0;}
.right-footer .list-top li{
    float:left;
    padding:10px;
    margin-left: 40px;
    line-height: 100%;
}
.right-footer .list-top li a{
    color:#fff;
    font-size: 14px;
    font-family: "Noto Sans CJK JP", sans-serif;
    text-decoration: none;
}
.right-footer .list-top li a:hover{
    font-weight: 700;
}
.right-footer .list-down li a{
    color:#d4d4d4;
    font-size: 11px;
    font-family: "Noto Sans CJK JP", sans-serif;
    text-decoration: none;
}
.right-footer .list-down li a:hover{
    font-weight: 700;
}
.right-footer p{
    color:#d4d4d4;
    display: block;
    clear: both;
    float: right;
    margin-top:90px;
    font-size: 10px;
    font-family: "Noto Sans CJK JP", sans-serif;
    padding-right:10px;
}
.right-footer .list-down li{float:right;padding:10px;}

.pn-ProductNav_Wrapper {
  position: relative;
  padding: 0 11px;
  box-sizing: border-box;
}

/*footer team*/
.pn-ProductNav {
  /* Make this scrollable when needed */
  overflow-x: auto;
  /* We don't want vertical scrolling */
  overflow-y: hidden;
  /* For WebKit implementations, provide inertia scrolling */
  -webkit-overflow-scrolling: touch;
  /* We don't want internal inline elements to wrap */
  white-space: nowrap;
  /* If JS present, let's hide the default scrollbar */
  /* positioning context for advancers */
  position: relative;
  font-size: 0;
}

.team_icon_wrap{
    background:#ffffff;
    overflow: hidden;
}

/* footer end*/
