/*!

body
--------------------------------------*/
html {
  font-size: 14px;
}
@media screen and (min-width:384px) {
  html {
    font-size: 100%
  }
}
body,
html {
  height: 100%;
}
body {
  color: #2c2c2c;
  background: #f8f8f8;
  font-family: YuGothic,"Yu Gothic Medium","Yu Gothic",sans-serif;
  word-wrap: break-word;
	font-size: 16px;
}
body.is-fixed {
  position: fixed
}
a {
  color: #4FA6B7;
  text-decoration: none
}
::-moz-selection {
  color: #fff;
  background-color: #2c2c2c
}
::selection {
  color: #fff;
  background-color: #2c2c2c
}

.sSP{
	display: none;
}
@media screen and (max-width:767.98px) {
	.sPC{
		display: none;
	}
	.sSP{
		display: block;
	}
}

/* flex
------------------------------------------------*/

.flexBox{
	display: flex;
}
.sb{
	justify-content: space-between;
}
.jfe{
	justify-content: flex-end;
}
.jcenter{
	justify-content: center;
}
.ac{
	align-items: center;
}
.afs{
	align-items: flex-start;
}
.afe{
	align-items: flex-end;
}
.fwrap{
	flex-wrap: wrap;
}
.dcolumn{
	flex-direction: column;
}


.bold{
	font-weight: bold;
}
.f18{
	font-size: 18px;
}
.right{
	text-align: right;
}
.center{
	text-align: center;
}




/*!
header
--------------------------------------*/
#state_head-nav {
  display: none
}
.common-header {
  position: fixed;
  top: 0;
  z-index: 100;
  width: 100%;
  background-color: #fff;
  -webkit-transition: background-color .3s;
  transition: background-color .3s
}
.common-header .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 60px;
  margin: 0 auto;
  padding: 0 20px
}
.common-header .inner > .logo > .link {
  display: block;
  width: 100px;
  height: 45px;
  background: url(https://www.greins.jp/wp-content/themes/greins/img/common/logo.svg) left center no-repeat;
  background-size: contain;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;

}
.common-header .inner > .logo > .link:hover{
	opacity: 0.7;
	transition: 0.2s;
}
@media screen and (max-width:767.98px) {
  .common-header > .overlay {
    background-color: transparent;
    -webkit-transition: background-color .3s;
    transition: background-color .3s
  }
  #state_head-nav:checked ~ .common-header {
    position: fixed;
    height: 100%
  }
  #state_head-nav:checked ~ .common-header > .overlay {
    background-color: #2c2c2c;
    height: 100vh
  }/*
  #state_head-nav:checked ~ .common-header .inner > .logo > .link {
    background-image: url(https://www.greins.jp/wp-content/themes/greins/img/common/logo_wh.svg)
  }*/
}
@media screen and (min-width:768px) {
  .common-header .inner {
    position: relative;
    max-width: 1540px;
    height: 80px;
    padding: 0 10px;
  }
  .common-header .inner > .logo > .link {
    width: 300px;
    height: 65px;
  }
}

.common-header .menuOuter{
	display: flex;
	align-items: center;
}




.common-header .main-menu {

  top: 60px;
  left: 0;
  padding: 0 20px 1rem;
  width: 100%;
  height: 0;

}
.common-header .main-menu > .links {
  margin-top: 1rem;
  letter-spacing: .05em;
  font-weight: 600
}
.common-header .main-menu > .links > .item > .link {
  display: block;
  padding: 1rem 0;
  color: #fff;
	position: relative;
}
.common-header .main-menu > .links > .item > .link:before{
	content: "";
	display: block;
	position: absolute;
	bottom: -0.5em;
	left: 0;
	right: 0;
	margin: auto;
	width: 100%;
	height: 1px;
	background: #4FA6B7;
	transition: 0.3s;
	opacity: 0;
}
  .common-header .main-menu > .links > .item > .link:hover:before
	/*.-about .common-header .main-menu > .links > .item:nth-of-type(1) > .link,
	.-message .common-header .main-menu > .links > .item:nth-of-type(1) > .link:before,
	.-technology .common-header .main-menu > .links > .item:nth-of-type(2) > .link:before,
	.-research .common-header .main-menu > .links > .item:nth-of-type(3) > .link:before,
	.-publicity .common-header .main-menu > .links > .item:nth-of-type(4) > .link:before */{
    	opacity: 1;
  }

.common-header .main-menu > .links.-content > .item {
  border-bottom: 1px solid #707070
}
.common-header .main-menu > .links.-corp {
  font-size: 87.5%
}

@media screen and (min-width:384px) {
  .common-header .main-menu {
    padding-bottom: 1.25rem
  }
  .common-header .main-menu > .links > .item > .link {
    padding: 1.25rem 0
  }
  .common-header .main-menu.-content {
    margin-top: 1.5625rem
  }
  .common-header .main-menu.-corp {
    margin-top: 1.25rem
  }
}

  .common-header .main-menu {
	  margin-right: 2em;
}
  .common-header .main-menu > .links > .item:nth-child(n+2) {
    margin-left: 35px;
  }


@media screen and (min-width:768px) {
  .common-header .main-menu {

    top: auto;
    right: 20px;
    bottom: 20px;
    left: auto;
    padding: 0;
    width: auto;
    height: auto;
    opacity: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
  .common-header .main-menu > .links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }


  .common-header .main-menu > .links > .item > .link {
    padding: 0;
    color: #4FA6B7;
    padding-bottom: 0;
    border-bottom: 1px solid transparent;
    -webkit-transition: border .3s;
    transition: border .3s
  }

  .common-header .main-menu > .links.-content,
  .common-header .main-menu > .links.-corp {
    margin-top: 0
  }
  .common-header .main-menu > .links.-content > .item,
  .common-header .main-menu > .links.-corp > .item {
    font-size: .875rem
  }
  .common-header .main-menu > .links.-content > .item {
    border-bottom: none
  }
}
@media screen and (max-width:1199.5px) {
	.common-header .main-menu {
		margin-right: 2em;
	}
  .common-header .main-menu > .links > .item:nth-child(n+2) {
    margin-left: 25px
  }
	.common-header .inner > .logo > .link {
  width: 210px;
	}
	

}
@media screen and (max-width:999.5px) {
	.common-header .inner > .logo > .link {
	  width: 150px;
	}
	.common-header .main-menu {
	  margin-right: 1em;
	}
	.common-header .main-menu > .links > .item,
	.common-header .util-nav > .buttons > .item > .button{
		font-size: 12px !important;
	}
	.common-header .main-menu > .links > .item:nth-child(n+2) {
		margin-left: 10px;
	}
	.common-header .util-nav > .buttons > .item:nth-child(n+2) > .button {
		margin-left: 0.5em !important;
	}
}

@media screen and (max-width:767.98px) {
	.common-header .main-menu{
		display: none;
		position: absolute;
		    height: auto;
    height: calc(100vh - 60px);
	}
  #state_head-nav:checked ~ .common-header .main-menu {


    overflow: scroll;
    opacity: 1
  }
	.common-header .main-menu > .links > .item,
	.common-header .util-nav > .buttons > .item > .button{
		font-size: 14px !important;
		line-height: 2em;
	}
	.common-header .main-menu > .links > .item:nth-child(n+2){
		margin-left: 0 !important;
	}
	
	.common-header .main-menu > .links > .item > .link:before{
		display: none;
	}
	
	.common-header .main-menu > .links.-corp > .item{
		line-height: 1em;
	}
}



.common-header .util-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}
.common-header .util-nav > .buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}
.common-header .util-nav > .buttons > .item > .button {
  display: block;
  padding: 0 .875rem;
  line-height: 1.625rem;
  font-size: .75rem;
  font-weight: 600;
  border-radius: .25rem;
  letter-spacing: .05em;
  color: #fff;
  background-color: #2c2c2c;
  -webkit-transition: all .3s;
  transition: all .3s
}
.common-header .util-nav > .buttons > .item > .button:hover {
  background-color: #575757
}
.common-header .util-nav > .buttons > .item > .button.-lang {
  padding: 0 .5rem;
  background-color: #4FA6B7;
  text-transform: uppercase
}
.common-header .util-nav > .buttons > .item > .button.-lang:hover {
  background-color: #508ce2
}
.common-header .util-nav > .buttons > .item:nth-child(n+2) > .button {
  margin-left: 1.25rem
}
.common-header .util-nav > .burger {
  display: block;
  position: relative;
  width: 1.875rem;
  height: 1.9375rem;
  margin-left: 1.25rem
}
.common-header .util-nav > .burger > .line {
  content: '';
  position: absolute;
  width: 100%;
  top: 50%;
  height: 0;
  border-top: 1px solid #4FA6B7
}
.common-header .util-nav > .burger::after,
.common-header .util-nav > .burger::before {
  content: '';
  position: absolute;
  width: 100%;
  height: 0;
  border-top: 1px solid #4FA6B7
}
.common-header .util-nav > .burger::before {
  top: 22.58%
}
.common-header .util-nav > .burger::after {
  bottom: 19.58%
}
@media screen and (max-width:767.98px) {
  #state_head-nav:checked ~ .common-header .util-nav > .burger > .line {
    border-color: transparent
  }
  #state_head-nav:checked ~ .common-header .util-nav > .burger::after,
  #state_head-nav:checked ~ .common-header .util-nav > .burger::before {
    border-color: #fff
  }
  #state_head-nav:checked ~ .common-header .util-nav > .burger::before {
    top: 50%;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
  }
  #state_head-nav:checked ~ .common-header .util-nav > .burger::after {
    bottom: 48.39%;
    -webkit-transform: rotate(225deg);
    transform: rotate(225deg)
  }
}
@media screen and (min-width:768px) {
  .common-header .util-nav {
	  margin-right: 2em;
  }
  .common-header .util-nav > .buttons > .item > .button.-lang {
    padding: 0 .75rem
  }
  .common-header .util-nav > .buttons > .item:nth-child(n+2) > .button {
    margin-left: .5375rem;
  }
  .common-header .util-nav > .burger {
    display: none
  }
}
.common-header.is-front {
  position: absolute;
  z-index: 20;
  background-color: transparent;
  -webkit-transition: none;
  transition: none
}
.common-header.is-front .inner > .logo > .link {
  background-image: url(https://www.greins.jp/wp-content/themes/greins/img/common/logo_course50_wh.svg)
}
@media screen and (min-width:768px) {
  .common-header.is-front .inner {
    padding: 40px 20px 10px
  }
  .common-header.is-front .inner > .logo > .link {
    width: 160px;
    height: 37px
  }
}
@media screen and (min-width:768px) {
  .common-header.is-front .main-menu {
    bottom: 10px
  }
  .common-header.is-front .main-menu > .links > .item > .link {
    color: #fff
  }
  .common-header.is-front .main-menu > .links > .item > .link:hover {
    border-bottom-color: #fff
  }
}
.common-header.is-front .util-nav > .burger > .line,
.common-header.is-front .util-nav > .burger::after,
.common-header.is-front .util-nav > .burger::before {
  border-color: #fff
}
@media screen and (min-width:768px) {
  .common-header.is-front .util-nav {
    top: 30px
  }
}

.common-header .external_link a:hover{
	opacity: 0.8;
}
.common-header .external_link img{
	max-width: 166px;
    border-bottom: 1px solid #e9e9e9;
}
@media screen and (max-width:767.98px) {
	.common-header .external_link{
		display: none;
	}
}

/*!

footer
--------------------------------------*/
.common-footer > .pickup {
  padding: 40px 30px 30px;
  background-color: #f8f8f8
}
.common-footer > .pickup > .inner {
  max-width: 1000px;
  margin: -20px auto 0
}
.common-footer > .pickup > .inner > .banner {
  margin-top: 20px
}
.common-footer > .pickup > .inner > .banner a{
	transition: 0.2s;
}
.common-footer > .pickup > .inner > .banner a:hover{
	opacity: 0.7;
}
.common-footer > .pickup > .inner > .banner .image {
  width: 100%
}
@media screen and (min-width:768px) {
  .common-footer > .pickup {
    padding: 120px 20px 60px
  }
}
.common-footer .site-nav {
  display: none
}
@media screen and (min-width:768px) {
  .common-footer .site-nav {
    display: block;
    background-color: #fff
  }
  .common-footer .site-nav > .inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: 1240px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 auto;
    padding: 30px 20px 30px
  }
  .common-footer .site-nav > .inner > .logo {
    width: 19.5vw
  }
  .common-footer .site-nav > .inner > .logo > .link {
    display: block
  }
  .common-footer .site-nav > .inner > .logo > .link > .image {
    width: 100%
  }
  .common-footer .site-nav > .inner > .directories {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	  align-items: flex-end;
  }
  .common-footer .site-nav > .inner > .directories .column:nth-child(n+2) {
    margin-left: 1em
  }
  .common-footer .site-nav > .inner > .directories .label {
    margin-bottom: .5em;
    font-weight: 600;
    font-size: .6875rem
  }
  .common-footer .site-nav > .inner > .directories .links {
    line-height: 2;
    font-size: .625rem
  }
  .common-footer .site-nav > .inner > .directories .link {
    color: #2c2c2c
  }
}
@media screen and (min-width:992px) {
  .common-footer .site-nav > .inner > .logo {

  }
  .common-footer .site-nav > .inner > .directories .column:nth-child(n+2) {
    margin-left: 2.5vw
  }
  .common-footer .site-nav > .inner > .directories .label {
    margin-bottom: 15px;
    font-size: .875rem;
    letter-spacing: .05em
  }
  .common-footer .site-nav > .inner > .directories .links {
    line-height: 2.3;
    font-size: .8125rem
  }
}
@media screen and (min-width:1200px) {
  .common-footer .site-nav > .inner > .logo {
    width: 210px
  }
  .common-footer .site-nav > .inner > .directories .column:nth-child(n+2) {
    margin-left: 40px
  }
}
.common-footer .last {
  color: #fff;
  background-color: #2c2c2c
}
.common-footer .last > .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  height: 40px;
  margin: 0 auto
}
.common-footer .last > .inner > .note {
  text-align: center
}
.common-footer .last > .inner > .note > .copyright {
  font-size: .75rem
}
@media screen and (min-width:768px) {
  .common-footer .last > .inner {
    max-width: 1240px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    height: 50px;
    padding: 0 20px
  }
  .common-footer .last > .inner > .note > .copyright {
    font-size: .625rem
  }
}
.common-footer .corp-nav {
  display: none
}
@media screen and (min-width:768px) {
  .common-footer .corp-nav {
    display: block
  }
  .common-footer .corp-nav > .links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    line-height: 1;
    font-size: .6875rem
  }
  .common-footer .corp-nav > .links > .item:nth-child(n+2) {
    margin-left: 1.5em;
    padding-left: 1.5em;
    border-left: 1px solid #fff
  }
  .common-footer .corp-nav > .links > .item > .link {
    color: #fff
  }
}
@media screen and (min-width:992px) {
  .common-footer .corp-nav > .links {
    font-size: .8125rem
  }
}
.foot-pagetop {
	position: fixed;
	right: 0;
	bottom: 0;
	z-index: 1000;
	font-size: 12px;
	font-weight: bold;
	background: #fff;
	color: #2C2C2C;
	padding: 1.2em 1.5em;
	transition: 0.2s;
display: flex;
flex-direction: column;
	align-items: center;
	line-height: 1em;
}
.foot-pagetop i{
	margin-bottom: 0.8em;
}
.foot-pagetop span{
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
.foot-pagetop:hover{
	padding-bottom: 2.5em;
}
@media all and (-ms-high-contrast: none) {
	.foot-pagetop span{
		margin-right: 2px;
	}
}

.common-footer .external_link{
	margin-left: 50px;
}
.common-footer .external_link a:hover{
	opacity: 0.8;
}
.common-footer .external_link img{
	max-width: 166px;
    border: 1px solid #e9e9e9;
}
@media screen and (max-width:767.98px) {
	.common-footer .external_link{
		display: none;
	}
}


/*!

default
--------------------------------------*/
.default-page-header {
  margin: 0 auto;
  position: relative;
}
.default-page-header > .title {
  color: #fff;
	text-align: center;
	padding: 4em 0;
}
.default-page-header > .title > .name {
  font-size: 1.875rem;
  font-weight: 600;
  letter-spacing: .05em;
  text-transform: uppercase
}
.default-page-header > .title > .sub {
  margin-top: .83em;
  font-size: .75rem;
  font-weight: 600;
  letter-spacing: .05em
}
.default-page-header > .visual {
  height: 180px
}
.default-page-header > .visual > .image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover
}
@media screen and (min-width:768px) {
	.default-page-header > .title{
	padding: 7em 0;
	}
  .default-page-header > .title > .name {
    font-size: 3.125rem
  }
  .default-page-header > .title > .sub {
    margin-top: .5em;
    font-size: 1.25rem
  }
  .default-page-header > .visual {
    height: 300px
  }
}
.default-crumbs {
  margin: 0 auto;
  padding: 10px 20px;
  max-width: 1240px
}
.default-crumbs > .list {
  font-size: 12px
}
.default-crumbs > .list > .item {
  display: inline-block
}
.default-crumbs > .list > .item > .name {
  color: #2c2c2c
}
.default-crumbs > .list > .item > .name:hover {
  color: #4FA6B7
}
.default-crumbs > .list > .item:nth-child(n+2)::before {
  content: '>';
  margin: 0 .5em
}
.default-crumbs > .list > .item:last-child > .name {
  color: #888
}
@media screen and (min-width:768px) {
  .default-crumbs {
    padding: 20px
  }
}
.default-section {
  margin: 30px auto 0;
  padding: 0 20px;
  max-width: 1040px
}
.default-button {
  display: block;
  padding: .8125rem 1em;
  width: 100%;
  max-width: calc(100vw - 40px);
  border: 1px solid #4FA6B7;
  background-color: #4FA6B7;
  color: #fff;
  text-align: center;
  line-height: 1.5;
  font-size: .875rem;
  font-weight: 600;
  letter-spacing: .05em;
  border-radius: 4px;
  -webkit-transition: all .3s;
  transition: all .3s
}
.default-button.-neutral,
.default-button:hover {
  background-color: #fff;
  color: #4FA6B7
}
.default-button.-neutral {
  padding: .625rem 1rem;
  font-size: .75rem;
  font-weight: 400;
  letter-spacing: normal
}
.default-button.-neutral.-icon-cross::before {
  content: '';
  display: inline-block;
  width: 7px;
  height: 7px;
  background: url(https://www.greins.jp/wp-content/themes/greins/img/literature/icon_form-cross.svg) center no-repeat;
  background-size: contain;
  margin-right: 8px
}
@media screen and (min-width:768px) {
	.default-section{
		margin: 60px auto 0;
	}
  .default-button {
    padding: 1.125rem
  }
}
.default-checkbox {
  display: inline-block;
  line-height: 1;
  vertical-align: middle
}
.default-checkbox .text {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}
.default-checkbox .text::before {
  margin-right: 10px;
  content: "";
  width: 30px;
  height: 30px;
  background-color: #fff;
  border: 1px solid #4FA6B7;
  border-radius: 2px;
  cursor: pointer;
  display: block;
  -webkit-box-flex: 1;
  -ms-flex: 1 0 auto;
  flex: 1 0 auto
}
.default-checkbox input[type=checkbox] {
  display: none
}
.default-checkbox input[type=checkbox]:checked + .text::before {
  background: #4FA6B7 url(https://www.greins.jp/wp-content/themes/greins/img/literature/icon_form-check.svg) center no-repeat;
  background-size: 16.49px auto;
  border: none
}
@media screen and (min-width:768px) {
  .default-checkbox .text::before {
    width: 20px;
    height: 20px
  }
  .default-checkbox input[type=checkbox]:checked + .text::before {
    background-size: 11px auto
  }
}
.default-select {
  position: relative;
  display: inline-block;
  height: 50px;
  background-color: #fff;
  border: 1px solid #d0d0d0;
  border-radius: 4px;
  line-height: 1;
  vertical-align: middle
}
.default-select::after {
  content: "";
  position: absolute;
  top: -1px;
  right: -1px;
  bottom: -1px;
  width: 50px;
  background: url(https://www.greins.jp/wp-content/themes/greins/img/literature/icon_form-select.svg) #4FA6B7 center center no-repeat;
  background-size: 13.33px auto;
  border-radius: 0 4px 4px 0
}
.default-select select {
  width: 100%;
  min-width: 118px;
  height: 48px;
  padding: 0 calc(50px + .5em) 0 .5em;
  position: relative;
  z-index: 1;
  cursor: pointer
}
@media screen and (min-width:768px) {
  .default-select {
    height: 30px;
    font-size: 81.25%
  }
  .default-select::after {
    width: 30px;
    background-size: 8px auto
  }
  .default-select select {
    min-width: 78px;
    height: 28px;
    padding-right: calc(30px + .5em)
  }
}
.default-input {
  padding: .5em;
  height: 40px;
  background-color: #fff;
  border: 1px solid #d0d0d0;
  border-radius: 4px;
  line-height: 1;
  vertical-align: middle
}
.default-textarea {
  padding: .5em;
  background-color: #fff;
  border: 1px solid #d0d0d0;
  border-radius: 4px;
  line-height: 1;
	width: 100%;
	resize: none;
  vertical-align: middle
}
@media screen and (min-width:768px) {
  .default-input {
    height: 40px
  }
}
.default-pager {
  height: 13.02vw;
  position: relative
}
.default-pager > .arrow {
  width: 26.04vw;
  height: 13.02vw;
  background: #2c2c2c url(https://www.greins.jp/wp-content/themes/greins/img/top/icon_arrow-next.svg) center no-repeat;
  background-size: 8px auto;
  border-radius: 4px;
  position: absolute;
  z-index: 1
}
.default-pager > .arrow.-prev {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
  left: 0
}
.default-pager > .arrow.-next {
  right: 0
}
.default-pager > .number {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 100%;
  text-align: center;
  font-weight: 600
}
.default-pager > .pages {
  display: none
}
@media screen and (min-width:384px) {
  .default-pager {
    height: 50px
  }
  .default-pager > .arrow {
    width: 100px;
    height: 50px
  }
}
@media screen and (min-width:768px) {
  .default-pager {
    margin-left: auto;
    margin-right: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 30px
  }
  .default-pager > .arrow {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background-size: 5px auto;
    position: unset
  }
  .default-pager > .arrow.-prev {
    margin-right: -30px
  }
  .default-pager > .arrow.-next {
    -webkit-box-ordinal-group: 5;
    -ms-flex-order: 4;
    order: 4;
    margin-left: -30px
  }
  .default-pager > .number {
    display: none
  }
  .default-pager > .pages {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 0 60px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 100%;
    text-align: center;
    color: #acacac;
    font-weight: .875rem
  }
  .default-pager > .pages > .num {
    padding: 0 18px
  }
  .default-pager > .pages > .num > .link {
    display: block;
    margin: 0 -18px;
    color: #2c2c2c
  }
}
/*!

helpers
--------------------------------------*/
._unmargin {
  margin: 0!important
}
@media screen and (max-width:767.98px) {
  ._hide-mob {
    display: none
  }
}
@media screen and (min-width:768px) and (max-width:991.98px) {
  ._hide-tab {
    display: none
  }
}
@media screen and (min-width:992px) {
  ._hide-lap {
    display: none
  }
}

.content-wrap{
	padding-top: 70px;
}
@media screen and (max-width:767.98px) {
	.content-wrap{
		padding-top: 60px;
	}
}








/* Technology */
.home-index-title {
  margin-bottom: 2.5rem;
  text-align: center;
  letter-spacing: .05em;
  font-weight: 600
}
.home-index-title > .name {
  text-transform: uppercase;
  font-size: 1.875rem
}
.home-index-title > .sub {
  margin-top: .3125rem;
  font-size: .75rem
}
@media screen and (min-width:768px) {
  .home-index-title {
    margin-bottom: 3.125rem;
    text-align: inherit
  }
  .home-index-title > .name {
    font-size: 3.5rem
  }
  .home-index-title > .sub {
    margin-top: .5em;
    font-size: 1.25rem
  }
}

.home-index-section {
    padding: 80px 20px;
}
.home-index-section.-technology{
	background: url("https://www.greins.jp/wp-content/themes/greins/img/top/pic_technology.jpg") center top no-repeat;
	background-size: cover;
	padding: 100px 20px 60px;
}

.home-index-section.-research .inner.list{
	background: url("https://www.greins.jp/wp-content/themes/greins/img/top/pic_research_bg.jpg") center top no-repeat;
	background-size: cover;
	width: 100%;
	padding: 100px 20px 60px;
}
.home-index-section.-research .home-technology-list{
	width: 100%;
	margin: 0 auto;
	max-width: 1000px;
}


.home-index-section.-technology .home-index-title{
	color: #fff;
}
.home-index-section.-technology > .inner > .head {
  text-align: center
}
@media screen and (min-width:768px) {

	
	.home-index-section.-technology > .inner{
		 max-width: 1000px
	}
}

@media screen and (max-width:767.98px) {
	.home-index-section.-technology,
	.home-index-section.-research .inner.list{
		/*background-image: url("https://www.greins.jp/wp-content/themes/greins/img/top/pic_technology_bg.jpg");*/
		padding: 30px 20px 20px;
	}
	.home-index-section.-technology .home-index-title{
		margin-bottom: 1.5rem;
	}
}

.home-index-section > .inner {
    margin: 0 auto;
    max-width: 1200px;
}




.home-technology-list > .list{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.home-technology-list .list .item {
  overflow: hidden;
  margin: 0 1.5%;
  background-color: #fff;
  -webkit-box-shadow: 0 3px 6px 0 rgba(0,0,0,.16);
  box-shadow: 0 3px 6px 0 rgba(0,0,0,.16);
    display: inline-block;
    width: 30%;
    vertical-align: top;
    letter-spacing: normal;
    max-width: none
}
/* .home-technology-list .list .item:nth-child(n+2) {
  margin-top: 1.5625rem
} */
.home-technology-list .list .item > .inner {
  max-height: 430px;
  overflow: hidden;
    -webkit-box-align: center;
    -ms-flex-align: center;
    height: 100%;
}
.home-technology-list .list .item > .inner > .thumb {
  position: relative;
  width: 100%;
  overflow: hidden
}
.home-technology-list .list .item > .inner > .thumb > .image {
  /* position: absolute;
  width: 100%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  -webkit-transition: width .3s;
  transition: width .3s */
	width: 85%;
	display: block;
	margin: 0 auto;
	transition: 0.3s;
}
.home-technology-list .list .item > .inner > .thumb > span{
	position: absolute;
	top: 0.2em;
	left: 0.2em;
	font-size: 45px;
	font-weight: bold;
} 
.home-technology-list .list .item > .inner > .text {
  padding: 1.5rem;
	display: flex;
	justify-content: center;
	flex-direction: column;
}
.home-technology-list .list .item > .inner > .text > .head {
  margin-bottom: 1em;
  font-size: 1.25rem;
	  font-weight: 600;
}
.home-technology-list .list .item > .inner > .text > .desc {
  color: #2c2c2c;
  line-height: 1.5;
  font-size: .875rem
}
.home-technology-list .list .item > .link > .thumb{
	background: #F1F5F8;
	display: flex;
	align-items: center;
}
.home-technology-list .list .item > .link:hover > .thumb > .image {
  /* width: 110% */
	transform: scale(1.1,1.1);
}
/*.home-technology-list .list .item:nth-child(1) .inner .text .head,
.home-technology-list .list .item:nth-child(1) .inner .thumb span,*/
.home-technology-list .list .item.li01 .inner .text .head,
.home-technology-list .list .item.li01 .inner .thumb span{
  color: #72b470
}
/*.home-technology-list .list .item:nth-child(2) .inner .text .head,
.home-technology-list .list .item:nth-child(2) .inner .thumb span,*/
.home-technology-list .list .item.li02 .inner .text .head,
.home-technology-list .list .item.li02 .inner .thumb span{
  color: #687dd8
}
/*.home-technology-list .list .item:nth-child(3) .inner .text .head,
.home-technology-list .list .item:nth-child(3) .inner .thumb span,*/
.home-technology-list .list .item.li03 .inner .text .head,
.home-technology-list .list .item.li03 .inner .thumb span{
  color: #dbc04d
}
/*.home-technology-list .list .item:nth-child(4) .inner .text .head,
.home-technology-list .list .item:nth-child(4) .inner .thumb span,*/
.home-technology-list .list .item.li04 .inner .text .head,
.home-technology-list .list .item.li04 .inner .thumb span{
  color: #DB8C69
}
/*.home-technology-list .list .item:nth-child(5) .inner .text .head,
.home-technology-list .list .item:nth-child(5) .inner .thumb span,*/
.home-technology-list .list .item.li05 .inner .text .head,
.home-technology-list .list .item.li05 .inner .thumb span{
  color: #C078ED
}



.home-technology-list .list .item:nth-of-type(n+4){
	margin-top: 4em;
}



.home-technology-ResearcherBtn{
	max-width: 700px;
	margin: 60px auto 0;
}
.home-technology-ResearcherBtn a{
	display: block;
	background: #2C2C2C;
	border-radius: 4px;
	border: #fff solid 1px;
	color: #fff;
	text-align: center;
	padding: 1.5em 0;
	transition: 0.3s;
}
.home-technology-ResearcherBtn a span{
	display: block;
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 0.5em;
}
.home-technology-ResearcherBtn a:hover{
	opacity: 0.7;
}
/* @media screen and (min-width:768px) {
  .home-technology-list > .list {
    letter-spacing: -.4em
  }
  .home-technology-list .list .item {

  }
  .home-technology-list .list .item:nth-child(n+2) {
    margin: 10px
  }
  .home-technology-list .list .item > .inner {

  }
  .home-technology-list .list .item > .inner > .thumb {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 42%;
    max-width: 240px;
    padding-top: 34.2%
  }
  .home-technology-list .list .item > .inner > .text {
    padding: 0 1em
  }
  .home-technology-list .list .item > .inner > .text > .head {
    margin-bottom: .5em;
    font-size: 1rem
  }
} */



.home-index-section.-message{
	background: #fff;
}
.home-index-section.-message > .title,
.home-index-section.-message > .desc{
	text-align: center;
}
.home-index-section.-message > .desc{
	font-size: 1.25rem;
}
.home-index-section.-message .home-technology-list{
	max-width: 1200px;
	margin: 6em auto 0;
}
.home-index-section.-message .button{
	width: 250px;
	margin: 3em auto 0;
}


.home-index-section.-message .list > .item > .inner > .text > .head{
	color: #000 !important;
	margin-bottom: 0.3em;
}

.home-index-section.-message .list .item .inner .text .degree{
	margin-bottom: 1em;
	line-height: 1.5em;
	font-weight: bold;
}
.home-index-section.-message .list .item.green .inner .text .degree{
	color: #72b470 !important;
}
.home-index-section.-message .list .item.blue .inner .text .degree{
	color: #687DD8 !important;
}
.home-index-section.-message .list .item.orange .inner .text .degree{
	color: #DB8C69 !important;
}
.home-index-section.-message .list .item .inner .text .desc{
	font-weight: normal;
	line-height: 1.3em;
}
.home-index-section.-message .home-technology-list .list .item > .inner > .thumb > .image{
	width: 100%;
}



@media screen and (min-width:1200px) {
  .home-technology-list > .list {

  }
  .home-technology-list .list .item {

  }

}

@media screen and (max-width:767.98px) {
	

	
	.home-index-section {
		padding: 40px 20px 60px;
	}
	.home-technology-list > .list{
		display: block;
	}
	.home-technology-list .list .item{
		width: auto;
	}
	.home-technology-list .list .item > .inner {
		display: flex;
	}
	.home-technology-list .list .item > .link > .thumb{
		width: 35%;
	}
	.home-technology-list .list .item > .inner > .text{
		width: 65%;
	}
	.home-technology-list .list .item > .inner > .thumb > .image{
		width: 100%;
	}
	.home-technology-list .list .item > .inner > .text > .head{
		margin-bottom: 0.7em;
		font-size: 1.1rem;
	}
	.home-technology-list .list .item > .inner > .thumb > span{
		font-size: 2rem;
	}
	
	.-message .home-technology-list .list .item > .inner{
		display: block;
		max-height: none;
	}
	.-message .home-technology-list .list .item > .link > .thumb,
	.-message .home-technology-list .list .item > .inner > .text{
		width: auto;
	}
	.-message .home-technology-list .list .item > .inner > .text{
		padding: 1rem;
	}
	.-message .home-technology-list .list .item > .inner > .thumb > .image{
		width: 80% !important;
	}
	
	
	.home-technology-ResearcherBtn{
		margin-top: 30px;
	}
	.home-technology-ResearcherBtn a span{
		font-size: 1.1rem;
	}
	.home-technology-list .list .item:nth-of-type(n+2) {
		margin-top: 1rem !important;
	}

	
	.home-index-section.-message{
		padding-left: 0;
		padding-right: 0;
	}
	
	.home-index-section.-message .home-index-title {
		margin-bottom: 1.5rem;
	}
	.home-index-section.-message > .desc {
		font-size: 1rem;
		line-height: 1.5em;
		padding-left: 20px;
		padding-right: 20px;
	}
	.home-index-section.-message .home-technology-list{
		margin-top: 2em;
	}
	.home-index-section.-message .button{
		width: 200px;
		margin-top: 1rem;
	}
	.home-index-section.-message .home-technology-list .thumb{
		background: #eaf2f4;
	}
	.home-index-section.-message .home-technology-list .thumb img{
		width: 100%;
	}
	
	.home-index-section.-message .home-technology-list .text{
		padding: 20px;
		color: #000;
	}
	.home-index-section.-message .list .item .inner .head {
		font-size: 1.25rem;
		margin-bottom: 0.5em;
	}
	.home-index-section.-message .list .item .inner .degree{
		font-size: 90%;
	}
	
	
	
	
	
} 






.AnchorLink{
	margin-top: -110px;
	padding-top: 110px;
}
@media screen and (max-width:767.98px) {
	.AnchorLink{
		margin-top: -60px;
		padding-top: 60px;
	}
}
