@charset "Shift_JIS";


body {
  font-family: "ƒƒCƒŠƒI", Meiryo, "ƒqƒ‰ƒMƒmŠpƒS Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "‚l‚r ‚oƒSƒVƒbƒN", "MS PGothic";
  background: #ffffff;
}


/*============================
#wrap
============================*/

#wrap {
	width: 100%;
	min-width: 1000px;
	overflow: hidden !important;
}

header {
  border-top: 5px solid #2f4d93;
	min-width: 1000px;
}

header p {
  margin: 10px 0 0 0;
  padding: 0;
  float: left;
  font-size: 0.75em;
}
.width-full {
    clear: both;
    width: 100%;
     min-width: 1000px; 
    margin: 0 auto;
    padding: 0;
}

.area-wrap {
  clear: both;
  width: 96%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}

.header-contact {
  float: right;
  margin: 0px 0 0 0;
  font-size: .9em;
  height: 32px;
}

.header-contact-list {
  margin: 0;
  padding: 0;
  list-style: none;
  overflow: hidden;
  height: 32px;
}

ul.header-contact-list li {
    float: left;
    display: block;
}

ul.header-contact-list a {
    background: #a5a5a5;
    text-decoration: none;
    font-weight: bold;
    color: #ffffff;
    display: block;
    padding: 8px 50px 8px 10px;
    text-align: center;
    position: relative;
    z-index: 2;
}

ul.header-contact-list li:first-child a::before {
    width: 45px;
    height: 45px;
    background: #fbfbfb;
    display: block;
    content: "";
    float: left;
    transform: rotate(45deg);
    margin: 2px 20px 0 -32px;
    position: relative;
    z-index: 5;
}

li.header-contact-list-form a {
    background: #2f4d93;
}
li.header-contact-list-form a::before {
    width: 45px;
    height: 45px;
    background: #2d4c94;
    display: block;
    content: "";
    float: left;
    transform: rotate(45deg);
    margin: -30px 0px 0 -32px;
    position: relative;
    z-index: 1;
}

li.header-contact-list-recruit a {
    background: #3ea657;
    padding-right: 30px;
}
li.header-contact-list-recruit a::before {
    width: 45px;
    height: 45px;
    background: #3ca757;
    display: block;
    content: "";
    float: left;
    transform: rotate(45deg);
    margin: -30px 0px 0 -32px;
    position: relative;
    z-index: 1;
}

li.header-contact-list-access:before {
  width: 45px;
  height: 45px;
  background: #a5a5a5;
  display: block;
  content: "";
  /* float: left; */
  transform: rotate(45deg);
  margin: 0;
  position: relative;
  z-index: 1;
  margin: -23px 0 -22px 0;
  left: -23px;
  transition: all .3s ease-in-out;
}

li.header-contact-list-bcp a {
    background: #333333;
    margin: 0 0px 0 0px;
    position: relative;
    z-index: 1;
}

li.header-contact-list-access a {
    padding: 8px 45px 8px 10px;
    /* position: relative; */
    width: 100%;
    text-align: left;
}
li.header-contact-list-access:hover:before {
background: #e7711b;
    transition: all .3s ease-in-out;
}

li.header-contact-list-bcp {
    /* margin: 0; */
}

li.header-contact-list-info a {
    background: #ec2828;
    margin: 0 0px 0 0px;
    position: relative;
    z-index: 1;
}

li.header-contact-list-bcp:before {
    width: 45px;
    height: 45px;
    background: #333333;
    display: block;
    content: "";
    /* float: left; */
    transform: rotate(45deg);
    margin: 0;
    position: relative;
    z-index: 1;
    margin: -23px 0 -22px 0;
    left: -23px;
    transition: all .3s ease-in-out;
}

li.header-contact-list-bcp:hover:before {
    background: #e7711b;
    transition: all .3s ease-in-out;
}

li.header-contact-list-instagram {
	margin:0 !important;
	padding:0 16px !important;
    background: none !important;
    transition: all .3s ease-in-out !important;
}
li.header-contact-list-instagram:hover {
    background: none !important;
}
li.header-contact-list-instagram a{
	margin:0 !important;
	padding:0 !important;
    background: none !important;
}
li.header-contact-list-instagram a:hover {
    background: none !important;
}

/*.header-contact-list li {
  float: left;
}

.header-contact-list li a {
  display: block;
  text-decoration: none;
  color: #ffffff;
  font-weight: bold;
  padding: 8px 30px 8px 0;
	    background: rgba(255,255,255,0);
}

.header-contact-list li:first-child a {
    background: #a5a5a5;
    padding-right: 50px;
    height: 16px;
}
.header-contact-list li:first-child a::before {
    display: block;
    width: 26px;
    float: left;
    content: "";
    background: #a5a5a5;
    height: 32px;
    margin: 0 0 0 0;
    position: relative;
    top: -8px;
    left: -15px;
    -webkit-transform: skew(35deg);
    -moz-transform: skew(35deg);
    -o-transform: skew(35deg);
    -ms-transform: skew(35deg);
}


.header-contact-list li:last-child a {
  background: #2f4d93;
	height: 16px;
}

.header-contact-list li:last-child a::after {
    display: block;
    width: 26px;
    float: left;
    content: "";
    background: #2f4d93;
    height: 32px;
    margin: 0 0 0 0;
    position: relative;
    top: -8px;
    left: -15px;
    -webkit-transform: skew(35deg);
    -moz-transform: skew(35deg);
    -o-transform: skew(35deg);
    -ms-transform: skew(35deg);
}

.header-contact-list li:first-child a:hover,
.header-contact-list li:first-child a:hover::before,
.header-contact-list li:first-child a:hover::after,
.header-contact-list li:last-child a:hover,
.header-contact-list li:last-child a:hover::after
 {
    background: #e7711b;
}*/

/*.area-header-wrap {
  position: relative;
  z-index: 3;
  top: 30px;
  left: 0;
  padding: 0 0 0 0;
  margin: 0 auto 0 auto;
  min-width: 1000px;
  width: 1000px;
}

.header-logo img {
  display: block;
  margin: 0 0 0 0;
}

.header-logo {
  padding: 0px 0 0 0;
  margin: 0 0 0 0;
  position: relative;
}

*/

.header-img {
/*
    margin: -47px 0 0 0;
*/
    padding: 0;
    width: 100%;
    position: relative;
    z-index: 2;
    top: 0;
}

.header-img img {
  display: block;
  margin: 0;
  padding: 0;
  width: 100%;
  height: auto;
}



.header-img- {}

.header-global-navi {
  margin: 0 0 0 0;
}

.global-navi {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: center;
  height: 70px;
  border: 1px solid #cccccc;
  border-top: 0;
  border-bottom: 0;
}

.global-navi li {
  display: block;
  float: left;
  /* padding: 18px; */
  border-right: 1px solid #cccccc;
}

.area-global-navi {
  background: rgba(255, 255, 255, 0.7);
  position: relative;
  z-index: 5;
  top: 0;
  border-bottom: 3px solid #9db4ea;
  margin: -72px 0 0 0;
}

.global-navi li a {
  text-decoration: none;
  color: #333333;
  display: block;
  font-weight: bold;
  font-size: 0.9em;
  padding: 17px 0;
	background: rgba(255,255,255,0)
}
.global-navi li a:hover {
    background: rgba(255,255,255,0.7);
}

.global-navi li span {
  display: block;
  font-size: 0.8em;
  margin: 7px 0 0 0;
  color: #2f4d93;
}

.global-navi-home {
    width: 130px;
}

.global-navi-about {
    width: 150px;
}

.global-navi-work {
    width: 140px;
}

.global-navi-qm {
    width: 180px;
}

.global-navi-recruit {
    width: 130px;
}

.global-navi-info {
    width: 130px;
}

.global-navi-contact {
    width: 132px;
}

.global-navi li:last-child {
  border-right: 0;
}

.bnr-wrap {
    margin: 1px auto 1px auto;
    border: 1px solid #cca3c9;
    border-top: 0;
    border-bottom: 0;
    padding: 0 0 0 0;
}

.bnr-wrap img {
    display: block;
}
.bnr-wrap a {
    transition: all .3s ease-in-out;
    display: block;
}

.bnr-wrap a + a {
    margin: 1px 0 0px 0;
}

.bnr-wrap a:hover {
    transition: all .3s ease-in-out;
    opacity: 0.8;
}

.area-news {
  position: relative;
  top: 0;
  margin: 1px auto 1px auto;
  height: 145px;
  border-right: 1px solid #e2e2e2;
}

.area-news h2 {
  margin: 0;
  padding: 0px 10px 0 10px;
  font-size: 0.9em;
  letter-spacing: 1px;
  background: #2f4d93;
  color: #ffffff;
  width: 70px;
  text-align: center;
  display: block;
  float: left;
  height: 145px;
  line-height: 145px;
}

.news {
  margin: 0;
  padding: 0;
  float: left;
  min-height: 36px;
  background: #ffffff;
  /* overflow-y: scroll; */
  width: 910px;
  overflow: hidden;
}

.news dt,
.news dd {
  line-height: 36px;
  font-size: 1em;
}

.news dt {
  clear: both;
  width: 140px;
  /* background: #aaaaaa; */
  text-align: center;
  float: left;
  font-weight: bold;
  color: #2f4d93;
}

.news dd {
  float: left;
}
.news dd a {
    color: #2f4d93;
}
.news dd a:hover {
    color: #e7711b;
}

#feed {
	background: #fff;
}

#feed p {
    margin: 0 0 0 0;
    line-height: 36px;
    padding: 0 0 0 1em;
    float: left;
}

.service-panel {
  background: #2f4d93;
  position: relative;
  top: 0;
  margin: 0 0 0 0;
}

.service-panel-list {
  width: 1000px;
  margin: 0 auto;
  list-style: none;
  padding: 0;
  border: 1px solid #ffffff;
  border-top: 0;
  border-bottom: 0;
  height: 200px;
}

.service-panel-list li {
    width: 249px;
    height: 200px;
    float: left;
    text-align: center;
    border-right: 1px solid #ffffff;
}

.service-panel-list li:last-child {
    border-right: 0;
}

.service-panel-list a {
    display: block;
    color: #ffffff;
    text-decoration: none;
		height: 200px;
		background: rgba(255,255,255,0);
}


.service-panel-list-title span {
    display: block;
    font-size: 0.8em;
    margin: 7px 0 0 0;
    letter-spacing: 0;
}

.service-panel-list-img {
  position: relative;
  top: 37px;
}

.service-panel-list-title {
  font-size: 1em;
  position: relative;
  top: 50px;
  margin: 0;
  padding: 0;
  letter-spacing: 2px;
}

.btn-more {
  position: relative;
  margin: 0 auto;
  padding: 2px 0px 3px 0;
  top: 65px;
  background: #ffffff;
  color: #2f4d93;
  width: 80px;
  border-radius: 2em;
  font-size: 0.85em;
  font-weight: bold;
}

.service-panel-list a:hover {
    background: #e7711b;
}

.service-panel-list a:hover p {
    background: #fbfbfb;
    color: #e7711b;
}

.technical-panel {
    position: relative;
    top: 0;
    margin-top: 5px;
}

.area-left {
    width: 50%;
    background: #aaaaaa;
    float: left;
    background: url(../images/bg_facility.jpg) no-repeat top left;
    background-size: cover;
    min-height: 416px;
		overflow: hidden;
}
.panel-facility {
    display: block;
}
.technical-panel .area-left:hover .panel-facility-title img {
   padding: 20px 20px 36px 100px;
}


.panel-facility-bg {
    background: rgba(255,255,255,0.8);
    width: 100%;
    margin: 0 500px 0 0;
    min-height: 416px;
    position: relative;
    background: url(../images/bg_clear_stripe.png);
    float: right;
}
.panel-facility-bg img {
    display: block;
    position: relative;
    float: right;
    top: 20px;
    left: -20px;
}

.panel-facility-title {
    float: right;
    margin: -416px 0 0 0;
    /* background: url(../images/bg_clear_stripe.png); */
    width: 500px;
    height: 416px;
    padding: 0 0 0 0;
}

.panel-facility-title img {
    display: block;
    position: relative;
    top: 0;
    background: url(../images/bg_clear_stripe.png);
    padding: 20px 20px 36px 20px;
}

.area-right {
    width: 50%;
    float: left;
}

.technical-panel-list {
    list-style: none;
    margin: 0 0 0 0px;
    padding: 0;
    float: left;
    max-width: 505px;
	background: #fff;
}

.technical-panel-list li {
	width: 245px;
	height: 205px;
	float: right;
	margin: 0px 5px 5px 0;
	overflow: hidden;
}
.technical-panel-list-weld {
	background: url(../images/btn_weld.jpg) no-repeat;
}

.technical-panel-list-cutting {
	background: url(../images/btn_cutting.jpg) no-repeat;
}

.technical-panel-list-resin {
	background: url(../images/btn_resin.jpg) no-repeat;
	}

.technical-panel-list-molding {
	background: url(../images/btn_molding.jpg) no-repeat;
	}

.technical-panel-list-title {
    -ms-writing-mode: tb-rl; /* for MS IE8+ */
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    width: 85px;
    float: right;
    background: url(../images/bg_clear_stripe.png);
    min-height: 205px;
    margin: 0;
    line-height: 85px;
    padding: 20px 0 0 0;
    font-size: 0.9em;
    letter-spacing: 2px;
}

.technical-panel-list li a {
    color: #000000;
    display: block;
    width: 250px;
    height: 205px;
}
.technical-panel-list li:hover {
    opacity: 0.8;
}


.area-recruit {
	background: url(../images/bg_recruit.jpg) no-repeat top center;
	background-size: cover;
	min-height: 360px;
	position: relative;
	top: 0;
}

.layout-medium {
    width: 640px;
}

.layout-short {
    width: 350px;
}

.area-recruit-title {
    margin: 50px 0 20px 0;
    padding: 0;
}

.float-left {
    float: left;
}
.float-right {
    float: right;
}

.area-recruit-title span {
    font-size: 0.7em;
    color: #2f4d93;
    display: block;
    margin: 0 0 10px 0;
}

.area-recruit p {
    margin: 0 38px 0px 0;
    line-height: 1.9em;
    font-size: 0.95em;
}

.btn-round-edge {
    border-radius: 2em;
    padding: 0.5em 5em;
    text-decoration: none;
}
.edge-blue {
    border: 1px solid #2f4d93;
    color: #2f4d93;
}
.edge-blue:hover {
    background: #2f4d93;
    color: #ffffff;
}

.area-footer {
	  position: relative;
	  top: 0;
	  margin-top: 30px;
}

footer {
    background: #f1f1f1;
    padding: 40px 0 0 0;
}

.area-wrap-footericon {
	max-width: 1070px;
}

.area-wrap-footericon .bnr-character {
    width: 100%;
    max-width: 850px;
}

.footer-logo {
    width: 213px;
    float: left;
    margin: 10px 20px 20px 0;
    padding: 0 0px 0 0;
    font-family: "Mplus 1p";
	text-align: center;
}
.footer-logo a:first-child {
	width:208px;
	height:36px;
	display:block!important;
	margin-bottom:20px!important;
}
.footer-logo .sns-in{
	display:block!important;
	box-sizing: border-box;
	width:40px;
	height:40px;
    margin:0 auto !important;
}
.footer-logo .sns-in img{
	margin-top:10px;
	width:40px;
	height:auto;
}



.footer-logo a:hover {
    opacity: 0.8;
}
.footer-logo img:first-child {
    margin: 0;
}

.footer-address {
  /*clear: both; */
    width: 260px;
    float: left;
    font-size: 0.9em;
    padding: 0 0 0 0;
    margin: 10px 10px 0px 0;
}

.footer-address address {
    font-style: normal;
    margin: 0 0 10px 0;
    line-height: 150%;
}

.footer-address-email {
    margin: 0;
}
.footer-address-email a {
    color: #2f4d93;
    text-decoration: none;
}

.footer-map {
    float: left;
    width: 270px;
    height: 100px;
    margin: 0px 20px 30px 0;
}
.footer-map iframe {
	width: 270px;
	height: 100px;
	border: none;
}

.footer-bnr {
    float: right;
    margin: 10px 0 0 0;
    list-style: none;
    padding: 0;
    display: flex;
    justify-content: space-between;
    width: 195px;
}
.footer-bnr a {
    display: block;
}
.footer-bnr a:hover {
    opacity: 0.8;
}
.footer-bnr img {
    display: block;
}

.footer-navi {
	clear: both;
    margin: 0 0 20px 0;
    padding: 30px 0 0 0;
    border-top: 1px solid #e2e2e2;
}

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

.footer-navi-child {
	width:100%;
	max-width:240px;
    display: block;
    border-right: 1px solid #e2e2e2;
	margin:0;
    padding: 0;
}

.footer-navi-child-title {
    font-size: 1.1em;
    color: #2f4d93;
}
.footer-navi-child-title a {
    color: #2f4d93;
}

.footer-navi-child-list {
    list-style: none;
    padding: 0;
    margin: 0;
    font-size: 0.8em;
}



.footer-navi-child-list li {
    display: block;
    float: left;
    margin: 0 0 10px 0;
}

.footer-navi-child-list li:nth-child(3) {
    clear: both;
}

.footer-navi-child-list li::after {
		content: "";
		display: block;
		height: 1em;
		width: 1px;
		background: #aaaaaa;
		float: right;
		margin: 0 10px 0 10px;
}

.footer-navi-child-list li a {
    text-decoration: none;
    color: #5b5b5b;
}
.footer-navi-child-list li a:hover {
    color: #e7711b;
}

.footer-navi-child:first-child {
/*
    padding-left: 0;
*/
}

.footer-navi-child:last-child {
    border-right: 0;
}

.footer-navi-child-list li:nth-child(2n)::after {margin-right: 0;}

.footer-copyright {
	clear: both;
	background: #2f4d93;
	color: #ffffff;
	font-size: 0.9em;
	overflow: hidden;
	padding-bottom: 40px;
}

.footer-copyright-right {
    display: block;
    float: right;
    width: 290px;
    margin: 60px 0 0 0;
    overflow: hidden;
}

.footer-copyright-list {
    margin: 0px 0 0 0;
    padding: 0;
    list-style: none;
}

.footer-copyright-left p {
    margin: 0 0 0 0;
}

.footer-copyright-list li {
    display: block;
    float: left;
    margin: 0 0 0 20px;
}

.footer-copyright-list li a {
    color: #ffffff;
    text-decoration: none;
		border-bottom: 1px solid rgba(255,255,255,0);
}
.footer-copyright-list li a:hover {
    border-bottom: 1px solid rgba(255,255,255,1.0);
}

.bnr-character {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
    margin: 10px auto 50px;
    overflow: hidden;
}

.bnr-character div {
    display: inline-block;
	margin:5px;
}

.bnr-character div img {
    display: block;
}

.bnr-character div + div {
    margin-left: 10px;
}

.bnr-support {
    float: right;
    margin: 15px 0 0 0;
}

.footer-sub-right {
    clear: both;
    float: right;
		width: 490px;
}

.footer-copyright-txt {
    /* clear: both; */
    float: left;
    text-align: center;
    width: 350px;
    margin: 0 0 0 0;
    padding: 0;
}

.footer-copyright-txt p {
    margin: 0;
}


/*========================================================

  ‰º?A?Aƒy[‚áN‚áP‚á\‚ßAƒbH

========================================================*/

/*============================
‰º?A?Aƒy[‚áN header?B•ª
============================*/
.area-header-sub-wrap {
    height: 140px;
}

.header-logo-sub {
    margin: 0;
    padding: 0;
    position: relative;
    top: 40px;
    /* width: 100%; */
    width: 250px;
    margin: 0 auto;
    font-family: "Mplus 1p";
}

.header-logo-sub img {
    display: block;
    margin: 0 auto;
}


.logo-sub-left {
    float: left;
    margin: 0;
}

.logo-sub-left img {
    display: block;
}

.logo-corp {
    float: left;
    width: 2.5em;
    font-size: 8px;
    font-weight: bold;
    color: #2f4d93;
    margin: 0 6px 0 0;
    line-height: 1.2em;
    letter-spacing: 1px;
}

.header-logo-sub a {
    text-decoration: none;




}

.logo-name {
    float: left;
    font-size: 27px;
    letter-spacing: 4px;
    font-weight: bold;
    color: #2f4d93;
    line-height: 100%;
    margin: -1px 0 0 0;
}

.logo-intro {
    float: right;
    font-size: 11px;
    color: #2f4d93;
    font-family: "Meiryo", "ƒ`B‚ßAƒbF‚áF";
    position: relative;
    left: -17px;
    top: 2px;
    letter-spacing: 0.5px;
}


.area-global-navi-sub {
    background: #f9f9f9;
    border-bottom: 3px solid #2f4d93;
    border-top: 1px solid #e8e8e8;
}
.area-global-navi-sub .global-navi {
    border: 1px solid #e8e8e8;
    border-top: 0;
    border-bottom: 0;
}

.area-global-navi-sub .global-navi li {
    border-right: 1px solid #e8e8e8;
}

.area-global-navi-sub .global-navi li:last-child {
    border-right: 0;
}

/*============================
‰º?A?Aƒy[‚áN‚á\‚ßAƒgƒ‹
============================*/
.page-title-main {
		margin: 35px 0;
    color: #666666;
    font-weight: normal;
    /* border-bottom: 1px solid #cccccc; */
		font-family: 'Roboto', Helvetica, Arial, Verdana, "ƒƒCƒŠƒI", Meiryo, "ƒqƒ‰ƒMƒmŠpƒS Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "‚l‚r ‚oƒSƒVƒbƒN", "MS PGothic", sans-serif;
}

.page-title-sub {
    display: block;
    font-size: 50%;
    margin: 20px 0 -2px 0;
		font-family: 'Roboto', Helvetica, Arial, Verdana, "ƒƒCƒŠƒI", Meiryo, "ƒqƒ‰ƒMƒmŠpƒS Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "‚l‚r ‚oƒSƒVƒbƒN", "MS PGothic", sans-serif;
}

.page-title-sub::after {
    content: "";
    display: block;
    width: 100px;
    height: 3px;
    background: #2f4d93;
    margin: 20px 0 0 0;
}

.page-title-main::after {
    content: "";
    display: block;
    width: 899px;
    margin: 0 0 0 auto;
    height: 1px;
    background: #cccccc;
}


/*============================
WING‚¡H‚ŸA‚¢‚Ä
============================*/
#wing-greeting {
    margin-bottom: 100px;
}

.section-title.title-greeting {
    font-family: "Ÿà–¾’©", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HG–¾’©E", "‚l‚r ‚o–¾’©", "‚l‚r –¾’©", serif;
    font-size: 2.4em;
    font-weight: bold;
    margin-bottom: 1.5em;
    color: #2f4d93;
}

#wing-greeting p {
    line-height: 1.9em;
    margin: 1em 30px;
    text-indent: 1em;
    font-size: 1.1em;

}

#wing-greeting p.greeting-ceo-name {
    text-align: right;
    font-family: "Ÿà–¾’©", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HG–¾’©E", "‚l‚r ‚o–¾’©", "‚l‚r –¾’©", serif;
    font-weight: bold;
    margin-right: 2em;
}

#wing-greeting p.greeting-ceo-name span{
  display: inline-block;
  text-align: left;
  text-indent:0;
}

.area-mission {
    background: url(../about/images/bg-mission.jpg) no-repeat center;
    background-size: cover;
    height: 670px;
}

.area-mission-title {
    text-align: center;
    color: #ffffff;
    font-weight: normal;
    margin: 0 0 0 0;
    padding: 60px 0 60px 0;
}

.mission-box {
    background: rgba(0,0,0,0.2);
    color: #ffffff;
    padding: 15px 20px;
    width: 370px;

    text-align: center;
}

.mission-box-title {
    font-weight: normal;
    font-size: 0.9em;
    margin: 0 0 0 0;
    letter-spacing: 3px;
}

.area-mission-title-sub {
    font-size: 2.0em;
    margin: 0.2em 0 0.2em 0;
    letter-spacing: 3px;
		font-family: 'Roboto', Helvetica, Arial, Verdana, "ƒƒCƒŠƒI", Meiryo, "ƒqƒ‰ƒMƒmŠpƒS Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "‚l‚r ‚oƒSƒVƒbƒN", "MS PGothic", sans-serif;
}

.mission-box p:last-child {
    margin: 0;
    letter-spacing: 3px;
    font-size: 0.9em;
}

.mission-01 {
    margin: 0 auto 230px auto;
}

.mission-02 {
    margin: 0;
    float: left;
}

.mission-03 {
    margin: 0;
    float: right;
}

.mission-01::after {
    content: "";
    display: block;
    width: 301px;
    height: 1px;
    background: rgba(0,0,0,0.2);
    position: relative;
    transform: rotate(-50deg) skew(50deg);
		-mstransform: rotate(-50deg) skew(50deg);

		-moz-transform: rotate(-50deg) skew(50deg);
		-webkit-transform: rotate(-50deg) skew(50deg);
		-o-transform: rotate(-50deg) skew(50deg);
    top: 130px;
    left: -267px;
}
.mission-02::after {
    content: "";
    display: block;
    width: 180px;
    height: 1px;
    background: rgba(0,0,0,0.2);
    position: relative;
    top: -40px;
    left: 390px;
}
.mission-03::before {
    content: "";
    display: block;
    width: 301px;
    height: 1px;
    background: rgba(0,0,0,0.2);
    position: relative;
    transform: rotate(50deg) skew(-50deg);
		-ms-transform: rotate(50deg) skew(-50deg);
		-moz-transform: rotate(50deg) skew(-50deg);
		-webkit-transform: rotate(50deg) skew(-50deg);
		-o-transform: rotate(50deg) skew(-50deg);

    top: -130px;
    left: 41px;
}

.ms-box {
    text-align: center;
    line-height: 160%;
    width: 700px;
    margin: 0 auto 130px auto;
}

.ms-box p strong {
    font-size: 150%;
    color: #2e4d93;
    font-weight: normal;
    text-align: center;
    display: block;
    margin: 0 0 1.5em 0;
}

.ms-box p {
    text-align: left;
}

.area-mission-message {
    clear: both;
    width: 550px;
    height: 194px;
    margin: 0 auto;
    /* background: rgba(255,255,255,0.5); */
    color: #ffffff;
    position: relative;
    z-index: 5;
    top: -320px;
    background: url(../about/images/bg-mission-wing.png) no-repeat center;
}

.area-mission-message p {
    text-align: center;
    line-height: 2em;
    text-shadow: 0px 1px 5px rgba(0,0,0,0.9);
    position: relative;
    top: 50px;
}

.section-title {
    text-align: center;
    margin: 100px 0 30px 0;
    font-weight: normal;
    letter-spacing: 3px;
}

.section-title-sub {
    margin: 1em 0 1.5em 0;
    text-align: center;
    font-size: 2.4em;
    color: #2f4d93;
    font-family: "Ÿà–¾’©", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HG–¾’©E", "‚l‚r ‚o–¾’©", "‚l‚r –¾’©", serif;
}

.section-title-sub span {
    background: #ffffff;
    position: relative;
    z-index: 2;
    padding: 0 1em;
}

.section-title-sub::after {
    display: block;
    content: "";
    height: 1px;
    width: 100%;
    background: #cccccc;
    position: relative;
    z-index: 1;
    top: -0.7em;
}


.point-box-flex {
	display: flex;
	margin: 0 20px 0 20px;
}

.point-box-detail {
    margin: 0 15px 0 15px;
    padding: 30px 20px 15px 20px;
    background: #2f4d93;
    color: #ffffff;
    width: 250px;
}

.point-box-detail-title {
    text-align: center;
    font-size: 2em;
    /* letter-spacing: 2px; */
    border-bottom: 1px solid #cccccc;
}
.point-box-detail-desc {
    font-size: 46%;
    margin: 1em 0 1.5em 0;
}

.point-box-detail dd {
    margin: 0 10px;
    padding: 0;

}

.point-box-detail dd p {
    line-height: 1.5em;
    font-size: 0.9em;
    margin: 1.5em 0 0 0;
}


.section-title-detail {
    margin: 1em 0 1.5em 0;
    text-align: center;
    font-size: 1em;
    font-weight: normal;



    color: #666666;
}

.section-title-detail span {
    background: #ffffff;
    position: relative;
    z-index: 2;
    padding: 0 1em;
}

.section-title-detail::after {
    display: block;
    content: "";
    height: 1px;
    width: 100%;
    background: #cccccc;
    position: relative;
    z-index: 1;
    top: -0.7em;
}


.company-list {
    margin: 50px 60px;
    padding: 0;
    border: 1px solid #000000;
    border-left: 0;
    border-right: 0;
}

.company-list dt,
.company-list dd {padding: 20px;}

.company-list dt {
    clear: both;
    width: 200px;
    float: left;
    text-align: center;
}

.company-list dd {
    border-bottom: 1px solid #cccccc;
    margin-left: 0;
    padding-left: 200px;
}

.company-list dd:last-child {
    border-bottom: 0;
}

.history-list {
    margin: 0 80px;
    /* font-size: 90%; */
    border: 1px solid #000000;
    border-left: 0;
    border-right: 0;
    padding: 25px 0 0 0;
}

.history-list dt, .history-list dd {
    line-height: 180%;
}

.history-list dt {
    clear: both;
    width: 110px;
    /* background: #aaaaaa; */
    float: left;
    color: #2f4d93;
    padding: 0 6px 0 20px;
}

.history-list dd {
    /* float: left; */
    padding: 0px 0 15px 140px;
    margin: 0px 0 15px 0;
    width: 670px;
    border-bottom: 1px solid #cccccc;
}

.history-list dd:last-child {
    border-bottom: 0;
}

.certify-item {
    width: 23%;
    padding: 10px 10px 10px 10px;
    /* border: 1px solid #d2d2d2; */
    margin: 0 0px 0 0px;
}
.certify-item-long {
	width:100%;
    max-width: 500px;
    padding: 10px 10px 10px 10px;
    /* border: 1px solid #d2d2d2; */
    margin: 0 0px 0 0px;
}

.certify-item h3, 
.certify-item-long h3 {
    width: 100%;
    text-align: center;
    font-size: 100%;
    margin: 10px 0;
    order: 2;
    min-height: 2.5em;
    line-height: 130%;
    color: #2f4d93;
    font-weight: normal;
}

ul.certify-item-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}

ul.certify-item-list li {
    width: 47%;
}

.company-certify-wrap {display: flex;flex-wrap: wrap;justify-content: center;/* border: 1px solid #000000; *//* border-left: 0; *//* border-right: 0; */width: 100%;margin: 0 auto;/* padding: 30px 0;*/}

ul.certify-item-list li a {
    display: block;
    border: 1px solid #cccccc;
}

ul.certify-item-list li img {
    display: block;
    width: 100%;
    height: auto;
}
.certify-item-list {
    width: 100%;
    margin: 0 auto;
    order: 1;
}

.certify-item-list img {
    display: block;
    width: 100%;
    height: auto;
   border: 1px solid #cccccc;
}
@media screen and (max-width: 768px) {
	.certify-item-list img {
	    max-width:280px;
	}
}
.certify-item-list a {
    display: block;
}


/*============================
Ž„‚½‚ŸB‚¡?Žd?R?
============================*/

.work-box {
    margin: 0 0 40px 0;
    overflow: hidden;
}

.work-box-item {
    width: 500px;
    float: left;
}



.work-box-item-title {
    font-size: 1em;
    font-weight: normal;
    color: #2f4d93;
    margin-top: 0;
}

.work-box-item p {
    margin: 0px 50px 1em 0;
    font-size: 0.95em;
    line-height: 160%;
    /* text-indent: 1em; */
}

p.work-box-item-sub {
    font-size: 2em;
    line-height: 1.6em;
    text-indent: 0;
    margin-right: 0;
}

p.staff-box-item-sub {
    font-size: 1.5em;
    line-height: 1.5em;
    text-indent: 0;
    margin: 0 2.5em;
}


p.work-box-item-sub strong {
    font-weight: normal;
}


.area-material {
    background: url(../work/images/bg-symbol.jpg) repeat-x center;
    padding: 100px 0 100px 0;
}


.section-title-repletion {
    text-align: center;
    font-size: 1em;
}

.section-title-repletion span {
    display: block;
    font-size: 1.8em;
    color: #b3a949;
    font-weight: normal;
    margin: 0.8em 0 0 0;
    line-height: 150%;
}
.btn-other-page {
    display: block;
    width: 60%;
    padding: 20px 0;
    margin: 0 auto;
    text-decoration: none;
    text-align: center;
    background: #e9e09b;
    color: #948c4d;
    border-radius: 2em 2em 2em 2em;
}
a.btn-other-page:hover {
    background: #2f4d93;
    color: #ffffff;
}


.area-facility-intro {
    background: url(../work/images/bg_facility.jpg) no-repeat center;
    background-size: cover;
    padding: 50px 0 60px 0;
    margin-bottom: -30px;
}

.section-title-shadow {
    color: #ffffff;
    text-shadow: 0px 0px 10px rgba(0,0,0,0.9),0px 0px 10px rgba(0,0,0,0.9);
    font-weight: normal;
    text-align: center;
    letter-spacing: 2px;
    padding: 0px 0 50px 0;
}

.section-title-shadow span {
    display: block;
    font-size: 1.3em;
    margin: 1em 0 0 0;
}


.half-box-flex {
    /* display: flex; */
}

.half-box-item {
    margin: 0 0 0 0;
    width: 500px;
    float: left;
}

.half-box-item-title {
    color: #ffffff;
    text-shadow: 0px 0px 10px rgba(0,0,0,0.9), 0px 0px 10px rgba(0,0,0,0.9), 0px 0px 10px rgba(0,0,0,0.9);
    font-weight: normal;
    font-size: 1.25em;
    margin: 0 0 2em 0;
}

.half-box-item-title ~ p {
    color: #ffffff;
    text-shadow: 0px 0px 10px rgba(0,0,0,0.9), 0px 0px 10px rgba(0,0,0,0.9), 0px 0px 10px rgba(0,0,0,0.9);
    line-height: 1.8em;
    margin-right: 50px;
    /* text-indent: 1em; */
    font-size: 0.95em;
    text-align: justify;
}

.half-box-item-img {
    width: 240px;
    float: left;
    margin: 0px 0px 20px 20px;
    padding: 0;
}

.half-box-item-img:nth-child(2n+1) {
    margin-left: 0;
}

.half-box-item-img img {
    display: block;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}

.half-box-item-img p {
    display: block;
    background: rgba(255,255,255,0.7);
    margin: 0;
    padding: 5px 10px;
    position: relative;
    z-index: 2;
    top: -24px;
    font-size: 0.8em;
    text-align: center;
}


.btn-to_facility {
    margin: 0 auto;
    padding: 20px 0;
    text-align: center;
    display: block;

    background: #dfdfdf;
    text-decoration: none;
    color: #333333;
    width: 60%;
    border-radius: 2em;
}
a.btn-to_facility:hover {
    background: #2f4d93;
    color: #ffffff;
}



/*============================
•i?E?F?B—?X?§
============================*/
.section-title-basic {
    text-align: center;
    font-weight: normal;
    color: #666666;
    font-size: 1.7em;
    margin: 70px 0 70px 0;
    padding: 0;
}

.quality-box {
	clear: both;
	border-top: 1px solid #cccccc;
	padding: 60px 0 0 0;
	margin: 0 0 0 0;
}

.quality-box-txt {
    width: 450px;
    float: left;
    /* background: #aaaaaa; */
    margin: 0 0 0 20px;
}

.quality-box-title {
    margin: 0 0 1.5em 0;
    font-size: 1.7em;
    font-weight: normal;
    color: #2f4d93;
    line-height: 2em;
}

.quality-box-txt p {
    font-size: 0.95em;
    line-height: 1.8em;
    position: relative;
    z-index: 2;
    top: 0px;
}

p.quality-box-title-en {
    color: #a6b0ca;
    font-size: 1.3em;
    letter-spacing: 0.2em;
    margin: 0px 0 1em 0;
    padding: 0;
    line-height: 1em;
    display: block;
    position: relative;
    font-family: 'Alegreya Sans', Helvetica, Arial, Verdana, "ƒƒCƒŠƒI", Meiryo, "ƒqƒ‰ƒMƒmŠpƒS Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "‚l‚r ‚oƒSƒVƒbƒN", "MS PGothic", sans-serif;
    font-weight: bold;
}

.quality-box-txt-full {
    clear: both;
    margin: 0 20px 35px 20px;
}

.quality-box-txt-full p {
    font-size: 0.95em;
    line-height: 1.8em;
}

.quality-box-img {
    width: 460px;
    float: right;
    margin: 0 20px 0px 0;
}

.quality-box-img img {
    display: block;
    float: left;
    margin: 0 0 5px 0;
}

.quality-box-img img:last-child {
    margin-left: 6px;
}

.quality-box-wide {
    clear: both;
    padding: 0 0 20px 0;
}
.quality-box-wide img {
    display: block;
    margin: 0 0 20px 0;
}
.quality-box-wide:last-child {
    border-top: 1px solid #aaaaaa;
    padding-top: 60px;
}

.quality-box-wide-title {
    /* position: relative; */
    /* top: -90px; */
    /* left: 30px; */
    color: #2f4d93;
    /* text-shadow: 0px 0px 6px rgba(0,0,0,0.8); */
    font-size: 1.7em;
    font-weight: normal;
    margin: 0;
}
.quality-box-wide + p {
    font-size: .95em;
}
p.quality-box-wide-title-en {
    color: #a6b0ca;
    font-size: 970%;
    letter-spacing: 0.1em;
    margin: 0 0 -170px 0;
    padding: 0;
    line-height: 1em;
    display: block;
    position: relative;
    top: -80px;
    z-index: 1;
    font-family: 'Alegreya Sans', Helvetica, Arial, Verdana, "ƒƒCƒŠƒI", Meiryo, "ƒqƒ‰ƒMƒmŠpƒS Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "‚l‚r ‚oƒSƒVƒbƒN", "MS PGothic", sans-serif;
    opacity: 0.5;
    font-weight: 100;
    text-align: right;
}

.quality-box-wide-title-top {
    position: relative;
    top: -360px;
    left: 30px;
    color: #ffffff;
    text-shadow: 0px 0px 6px rgba(0,0,0,0.8);
    font-size: 1.6em;
    font-weight: normal;
    margin: 0;
}
p.quality-box-wide-title-en-small {
    color: #a6b0ca;
    font-size: 800%;
    letter-spacing: 0.1em;
    margin: 0px 0 -130px 0;
    padding: 0;
    line-height: 1em;
    display: block;
    position: relative;
    top: -110px;
    z-index: 1;
    font-family: 'Alegreya Sans', Helvetica, Arial, Verdana, "ƒƒCƒŠƒI", Meiryo, "ƒqƒ‰ƒMƒmŠpƒS Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "‚l‚r ‚oƒSƒVƒbƒN", "MS PGothic", sans-serif;
    opacity: 0.5;
    font-weight: 100;
    text-align: right;

}

.quality-box-wide-head p {
    line-height: 1.8em;
    font-size: 0.95em;
    margin-left: 20px;
    margin-right: 20px;
}

.quality-box-wide-head p.quality-box-title-en {
    font-size: 1.3em;
}

.quality-box-wide-head {
    margin-bottom: 40px;
}

.quality-box-img-double {
    width: 470px;
    float: right;
    margin-right: 20px;
    margin-top: 45px;
}

.quality-box-img-double img {
    display: block;
    margin: 0 0 5px 5px;
    width: 227px;
    float: right;
}


.quality-box-wide-img {
    margin-left: 20px;

    margin-right: 20px;
    overflow: hidden;
}

.quality-box-wide-img img {
    display: block;
    float: left;
    margin: 0 0 0 0;
    width: 475px;
}

.quality-box-wide-img img + img {
    margin: 0 0 0 10px;
}

.quality-box-wide-txt {
    margin: 0 20px;
    margin-bottom: 30px;
}
.quality-box-wide-txt p {
    line-height: 1.8em;
    font-size: 0.95em;
}

.quality-box-wide-txt p.quality-box-title-en {
    font-size: 1.3em;
    line-height: 1em;
}


/*============================
Œ³A“¯?@??\??‚¡H‚ŸA‚¢‚Ä
============================*/
ul.page-navi {
    list-style: none;
    margin: 50px 0 80px 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

ul.page-navi li {
    width: 25%;
    margin: 0 5px 0 5px;
}

ul.page-navi a {
    padding: 1em 0;
    display: block;
    text-align: center;
    text-decoration: none;
    background: #ffffff;
    color: #2e4d93;
    border: 1px solid #2e4d93;
}

ul.page-navi a.page-current {
    background: aliceblue;
    background: #2e4d93;
    color: #ffffff;
    border: 1px solid #2e4d93;
}

ul.page-navi a:hover {
    background: #2e4d93;
    color: #ffffff;
    border: 1px solid #2e4d93;
}

h2.page-title-cat {
    display: block;
    text-align: center;
    font-size: 1.7em;
    color: #333333;
    font-weight: normal;
    color: #2f4d93;
}

h2.page-title-cat span {
    display: block;
    font-size: 75%;
    font-weight: bold;
    margin: 0 0 1em 0;
    font-family: 'Alegreya Sans', Helvetica, Arial, Verdana, "ƒƒCƒŠƒI", Meiryo, "ƒqƒ‰ƒMƒmŠpƒS Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "‚l‚r ‚oƒSƒVƒbƒN", "MS PGothic", sans-serif;
    color: #a6b0ca;
    letter-spacing: .2em;


}
.training-main-wrap {
    width: 1000px;
    margin: 0 auto 80px auto;
    text-align: center;
}

.training-main-wrap img {
    display: block;
}

.training-main-wrap p {
    line-height: 160%;
    color: #2f4d93;
}

.training-wrap {
    margin: 30px 0;
}

ol.training-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    counter-reset: cnt;
    justify-content: space-between;
    width: 900px;
    margin: 0 auto;
}

ol.training-list li {
    counter-increment: cnt;
    width: 420px;
    margin: 0 0 0 0;
}

ol.training-list li:before {
    display: block;
    width: 120px;
    height: 120px;
    content: "0"counter(cnt);
    font-size: 40px;
    text-align: center;
    background: #e0e5f3;
    line-height: 120px;
    border-radius: 50%;
    color: #2f4d93;
    margin: 0 auto;
		font-family: 'Roboto', Helvetica, Arial, Verdana, "ƒƒCƒŠƒI", Meiryo, "ƒqƒ‰ƒMƒmŠpƒS Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "‚l‚r ‚oƒSƒVƒbƒN", "MS PGothic", sans-serif;
}

dl.training-detail {
    margin: 0 auto;
    width: 100%;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
}

dl.training-detail dt {
    order: 1;
    text-align: center;
    width: 100%;
    line-height: 150%;
    font-size: 120%;
    margin: 1em 0 1em 0;
    color: #2f4d93;
}

dl.training-detail dd {
    padding: 0;
    margin: 0 0 0 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

dd.training-txt {
    order: 3;
}

dd.training-img {
    order: 2;
}

dd.training-txt p {
    line-height: 145%;
    color: #333333;
    text-align: justify;
}

ol.training-list li.training-list-full {
    width: 100%;
    margin: 50px 0 0 0;
}

dd.training-img img {
    display: block;
    margin: 0 0 15px 0;
}


/*============================
Žæˆµ?@Þ?N?æH@
============================*/
table {
  border: 1px solid #ccc;
  border-collapse: collapse;
  margin: 0;
  padding: 0;
  width: 100%;
  /*table-layout: fixed;*/
}
table caption {
  font-size: 1.5em;
  margin: .5em 0 .75em;
}
table tr {
    background: #fdfdfd;
    border: 1px solid #e8e8e8;
    padding: .35em;
}
table th,
table td {
  padding: .625em 0;
  text-align: center;
}
table th {
  font-size: .85em;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.material-tbl th {
    background: #2f4d93;
    color: #ffffff;
    padding: 1em 1em;
    border-right: 1px solid #ffffff;
    border-top: 0 solid #2f4d93;
}
.material-tbl th:last-child {
    border-right: 0;
}
th.proof-alcali {
    width: 90px;
}
.material-tbl td {
    color: #f39400;
    font-weight: bold;
    font-size: 0.9em;
    border-right: 1px solid #e8e8e8;
}
table tr:nth-child(odd) td {
    background: #f7f7f7;
}
td.material-tbl-name {
    width: 260px;
    font-weight: normal;
    color: #000000;
    font-size: 0.9em;
    text-align: left;
    text-indent: 1em;
}
td.material-tbl-name-abbreviation {
	font-weight: normal;
	color: #000000;
	font-size: 0.9em;
}
td.material-tbl-name a {
    text-decoration: none;
    color: #000000;
  display: block;
  transition: all .3s ease-in-out;
}

td.material-tbl-name a span {
    color: #a5a5a5;
    margin: 5px 0 0 0;
    display: block;
  transition: all .3s ease-in-out;
}
td.material-tbl-evaluate {
    font-family: "Sawarabi Gothic";
    font-weight: 700;
    font-size: 1.1em;
}
td.material-tbl-name a:hover {
    color: #12882e;
  transition: all .3s ease-in-out;
}

/*============================

‹@?u?[ƒbTæ]?”õ
============================*/

.page-intro-box {
	width: 1000px;
}

.page-intro-box-txt {
    float: left;
    width: 640px;
    position: relative;
    z-index: 2;
}

.page-intro-box-txt-title {
    font-weight: normal;
    font-size: 1.8em;
    line-height: 1.8em;
    letter-spacing: 0.2em;
    margin: 0 0 0.5em 0;
}

.page-intro-box-txt p {
	text-shadow: 0px 0px 10px rgba(255,255,255,1.0), 
								0px 0px 3px rgba(255,255,255,1.0), 
								0px 0px 3px rgba(255,255,255,1.0), 
								0px 0px 3px rgba(255,255,255,1.0),
								0px 0px 3px rgba(255,255,255,1.0),
								0px 0px 3px rgba(255,255,255,1.0), 
								0px 0px 10px rgba(255,255,255,1.0);
	line-height: 2.0em;
	margin: 0;
}

.page-intro-box-img {
    width: 500px;
    float: right;
    position: relative;
    top: 0;
    left: 0;
    margin: -270px 0 0 0;


}

.facility-category-title {
	    clear: both;
    border-left: 5px solid #2f4d93;
    font-size: 1.3em;
    color: #2f4d93;
    padding: 5px 0 5px 15px;
    margin: 1em 0 1em 0;
}

.facility-list {
/*
	clear: both;
*/
	margin: 0 0 15px 0;
	display:flex;
	flex-wrap: wrap;
	gap:25px 24px;
}
@media screen and (max-width: 768px) {
	.facility-list {
		justify-content: center;
	}
}


.facility-list-item {
	position: relative;
	margin:0;
/*
    float: left;
    margin: 0px 24px 25px 0;
*/
    width: 230px;
    border: 1px solid #cccccc;
    min-height: 330px;
}

.facility-list-item:nth-child(4n) {
    margin-right: 0;
}
.facility-list-item:nth-child(4n+1) {
/*
    clear: both;
*/
}

.facility-list-item-img {
    display: block;
    margin: 0 auto;
}

.facility-list-item-outline {
    margin: 0 10px 15px 10px;
    padding: 0;
}

.facility-list-item-outline p {
    color: #8e8e8e;
    font-size: 0.8em;
    line-height: 1.4em;
    margin: 0;
}
p.facility-list-item-title {
    color: #2f4d93;
    font-weight: bolder;
    margin: 0.5em 0 0.5em 0;
    font-size:16px;
}
p.facility-list-item-title::before {
    content: "y";
    margin: 0 0 0 -.5em;
}

p.facility-list-item-title::after {
    content: "z";
    margin: 0 0 0 0;
}
.facility-list-item-data {
    margin: 0;
    position: relative;
    z-index: 5;

}

.facility-list-item-data dl {
    margin: 0 8px 5px 8px;
    padding: 0;
    color: #2f4d93;
    font-size: 0.8em;
    width: 100%;
    display: block;
    height: 100%;
}
.facility-list-item-data dl dt, .facility-list-item-data dl dd {
    line-height: 1.5em;
}
.facility-list-item-data dl dt {
    clear: both;
    float: left;
    width: 67px;
}

.facility-list-item-data dl dd {
    float: left;
    margin: 0 0 0 0;
    padding: 0;
    width: 150px;
    /* height: 2.5em; */
}
.facility-list-item-number {
	position: absolute;
	right:0;
	bottom:0;
    background: #2f4d93;
    color: #ffffff;
    font-weight: bold;
    width: 20px;
    height: 30px;
    text-align: right;
    margin: -10px 0 0 0;
    line-height: 1.5em;
    padding: 0 10px 0px 0;
    z-index: 2;
}
.facility-list-item-number::before {
    background: #fff;
    display: block;
    content: "";
    width: 35px;
    height: 45px;
    position: relative;
    top: -20px;
    left: -15px;
    transform: rotate(45deg);
    z-index: 1;
    margin: 0px 0 0 0;
}

.facility-list-main {
    margin: 0;
    padding: 0 0 0 0;
    /* height: 360px; */
}


.facility-list-main dl {
    background: #fbfbfb;
    overflow: hidden;
    border: 1px solid #e8e8e8;
    /* height: 360px; */
    /* padding: 15px; */
    width: 320px;
    float: left;
    display: table-cell;
    margin: 0 15px 20px 0;
}

.facility-list-main dl dt {
    width: 100%;
    margin: 0 0 0 0;
}


.facility-list-main dl dt img {
    display: block;
    width: 100%;
    height: auto;
}

.facility-list-main dl dd {
    padding: 0px 10px;
    margin: 15px 0 5px 0;
    font-size: 0.95em;
}
.facility-list-main dl dd h3 {
		font-weight: bold;
		color: #2f4d93;
		margin: 0;
		padding: 0.5em 0.5em 1em 0.5em;
		line-height: 1.4em;
		text-align: center;
		font-size: 1em;
		height: 2em;
}

.facility-list-main dl dd p {
    display: block;
    border-bottom: 1px solid #dddddd;
    padding: 0 0 10px 5px;
    margin: 10px 0 0px 0;
    font-size: 0.9em;
}

/*.facility-list-main dl::after {
    clear: left;
    float: right;
    background: #2f4d93;
    width: 40px;
    height: 40px;
    margin: -40px 0 0 0;
    position: relative;
    z-index: 2;
    display: block;
    content: "";
    transform: rotate(45deg);
    top: 20px;
    left: 20px;
}*/

table.facility-tbl {
    margin: 0 0 50px 0;
		width: 100%;
}

table.facility-tbl th {
    background: #2f4d93;
    color: #ffffff;
    padding: 15px 0;
    font-size: 1em;
    border-right: 1px solid #ffffff;
}

table.facility-tbl th:last-child {
    border-right: 0;
}

table.facility-tbl td {
    text-align: left;
    padding-left: 1em;
    border-right: 1px solid #eeeeee;
    font-size: 0.9em;
  line-height: 150%;
}

table.facility-tbl td:last-child {
    border-right: 0;
    text-align: right;
    padding-right: 1em;
    padding-left: 0;
}
th.facility-name {
    width: 26%;
}
th.facility-maker {
    width: 24%;
}
th.facility-type {
    width: 22%;
}
th.facility-spec {
    width: auto;
}
th.facility-cnt {
    width: 5%;
}
.facility-list-main dl:nth-child(3n) {
    margin-right: 0;
}

.facility-list-main dl dd p:last-child {
    border-bottom: 0;
}
ul.facility-item-navi {
    margin: 0 0 70px 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

ul.facility-item-navi li {
    margin: 2px 2px 2px 2px;
    width: 32%;
}

ul.facility-item-navi li a {
    display: block;
    text-decoration: none;
    padding: .8em 2em;
    margin: 0px 0 0 0;
    text-align: center;
    background: #ffffff;
    color: #2e4d93;
    border: 1px solid #2e4d93;
}

ul.facility-item-navi li a:hover {
    background: #2e4d93;
    color: #ffffff;
}


/*============================
?BáKBî?@?A
============================*/

.pr-movie-wrap {
    width: 970px;
    height: 546px;
    margin: 0 auto 50px auto;
}

.pr-movie-wrap iframe {
    width: 100%;
    height: 100%;
}


.recruit-box {
	background: url(../recruit/images/recruit_message_img.jpg) no-repeat center;
	background-size: cover;
	min-height: 415px;
}


.recruit-box-txt {
	
}

.recruit-box blockquote {
    margin: 40px 0 0 0;
    padding: 0;
}

.recruit-box-txt h2 {
    color: #aaaaaa;
    font-size: 1.2em;
    letter-spacing: 0.1em;
    margin: 0;
    padding: 40px 0 0 0;
}

.recruit-box-txt blockquote p {
    font-size: 2em;
    line-height: 1.8em;
    letter-spacing: 0.1em;
    text-shadow: 0px 0px 2px #ffffff, 0px 0px 5px #ffffff, 0px 0px 5px #ffffff, 0px 0px 5px #ffffff;
    border-bottom: 1px solid #333333;
    margin: 0 0 1em 0;
    padding: 0 0 0.5em 0;
    width: 630px;
}

.recruit-box-txt blockquote cite {
	font-style: normal;
}

.recruit-box-txt blockquote cite span {
	font-size:1.5em;
}


.recruit-message {

    width: 1000px;
    margin: 60px 0 0 0;
}

.recruit-message-item {
    width: 480px;
    float: left;
    /* background: #cccccc; */
    margin: 0 40px 30px 0;
}

.recruit-message-item:last-child {
    margin-right: 0;
}
.recruit-message-item dt {
    color: #2f4d93;
    font-size: 1.6em;
    letter-spacing: 0.1em;
}

.recruit-message-item dd {
    margin: 0;
    padding: 0;
}
.recruit-message-item dd p {
    line-height: 1.8em;
}

.area-company-movie {
  background: #f1f1f1;
  padding: 50px 0 80px 0;
}

.recruit-message-movie {
    clear: both;
/*
    width: 800px;
    height: 450px;
*/
    width: 970px;
    height: 546px;
    margin: 0 auto 0px auto;
}

.recruit-message-movie iframe {
  width: 100%;
  height: 100%;
}

.recruit-message-donation {
	clear: both;
	overflow: hidden;
	/* height: 300px; */
	padding: 0px 0 90px 0;
}

.area-recruit-donation h2 {
  clear: both;
  float: none;
    font-weight: normal;
    color: #2f4d93;
    text-align: center;
    margin-bottom: .5em;
    font-size: 170%;
  line-height: 180%;
}

h2.area-title {
    font-weight: normal;
    color: #2f4d93;
    text-align: center;
    margin-bottom: .5em;
    font-size: 170%;
    line-height: 180%;
}

/*.area-recruit-donation h2::after {
    width: 4em;
    height: 1px;
    content: "";
    display: block;
    background: #2f4d93;
    margin: 45px auto 20px auto;
}
*/
.recruit-message-donation-img {
    width: 300px;
    float: right;
    margin: 20px 0 0 0;
}

.recruit-message-donation-img img {
    display: block;
}

.recruit-message-donation-txt {
    width: 660px;
    float: left;
    margin-top: 30px;
}

.recruit-message-donation-txt p {
    line-height: 190%;
    color: #333333;
    font-size: 105%;
}
.width-full.area-recruit-donation {
    box-shadow: 0px 0 10px rgba(0,0,0,0.1);
    /* background: #f9f9f9; */
    padding-top: 60px;
    padding-bottom: 90px;
}

.width-full.area-recruit-donation .area-wrap {
    overflow: hidden;
}

a.btn-recruit {
    display: block;
    width: 60%;
    padding: 20px 0;
    margin: 0 auto;
    text-decoration: none;
    text-align: center;
    background: #efe063;
    color: #222;
    border-radius: 2em 2em 2em 2em;
}
a.btn-recruit:hover {
    background: #2f4d93;
    color: #ffffff;
}

.area-recruit-info {
	background: url(../recruit/images/requirements_bg.jpg) no-repeat center;
	background-size: cover;
	padding: 50px 0;
}


.area-recruit-form-parent {
    margin-top: 50px;
    margin-bottom: 50px;
}
.area-recruit-form {
    background: #fffbdd;
    padding: 40px 0;
    margin: 0 auto;
    width: 1000px;
}

.section-title-simple {
    text-align: center;
    font-size: 1.2em;
}

.btn-recruit-form {
    display: block;
    text-decoration: none;
    text-align: center;
    background: #efe063;
    color: #222;
    width: 60%;
    padding: 30px 0;
    margin: 0 auto;
    border-radius: 5px;
}


.btn-recruit-form::before {
    display: block;
    background: url(../recruit/images/icon_recruit_form.png) no-repeat center;
    width: 30px;
    height: 30px;
    content: "";
    float: left;
    position: relative;
    left: 150px;
    top: -6px;
}
.btn-recruit-form::after {
    display: block;
    content: "";
    background: url(../recruit/images/icon_btn_recruit_form.png) no-repeat center;
    width: 25px;
    height: 25px;
    float: right;
    position: relative;
    top: -4px;
    right: 150px;
    border-radius: 20px;
}

.btn-recruit-form:hover {

    background: #2f4d93;
    color: #ffffff;
}
.btn-recruit-form:hover::before {
    display: block;
    background: url(../recruit/images/icon_recruit_form_on.png) no-repeat center;
    width: 30px;
    height: 30px;
    content: "";
    float: left;
    position: relative;
    left: 150px;
    top: -6px;
}
.btn-recruit-form:hover::after {
    display: block;
    content: "";
    background: url(../recruit/images/icon_btn_recruit_form_on.png) no-repeat center;
    width: 25px;
    height: 25px;
    float: right;
    position: relative;
    top: -4px;
    right: 150px;
    border-radius: 20px;
}


/*============================
ˆòE?ZŽž‚Ì‚áIƒ|[ƒg§L?
============================*/
.recrui-shogakukin-wrap {
    background: #dcebee;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    padding: 30px 0;
}

.area-recruit-sysytem {
    padding-top: 60px;
    padding-bottom: 60px;
    background: #ffffff;
    margin-top: 10px;
}

.recruit-system-txt {
    /* float: left; */
    /* width: 467px; */
    /* height: 300px; */
    /* background: #dcebee; */
    /* margin: 15px 0 80px 0; */
    /* padding: 30px 0px 0 50px; */
    width: 470px;
}

.recruit-system-txt p {
    line-height: 180%;
    color: #333333;
    margin-bottom: 1em;
    margin-top: 0;
}

.recruit-system-txt a {
    color: #e7711b;
    font-weight: normal;
    transition: all .3s ease-in-out;
}

.recruit-system-img {
    float: right;
    width: 424px;
    height: 284px;
    margin: 0px 0 0 35px;
    background: #dcebee;
    overflow: hidden;
}
.recruit-system-img img {
    /* display: block; */
    /* height: 125%; */
    /* width: auto; */
    /* position: relative; */
    /* top: -20px; */
    /* right: -12px; */
}

.area-recruit-sysytem .area-wrap {
	overflow: hidden;
}

.btn-recruit-system {
    background: #ffffff;
    padding: 18px 0px 5px 30px;
    border-radius: 5px;
    margin: 0 3px 0 0;
    /* box-shadow: 0px 1px 3px rgba(0,0,0,0.2); */
    /* font-weight: bold; */
    /* color: #e7711b; */
}

.btn-recruit-system::before {
    content: "";
    width: 20px;
    height: 20px;
    display: block;
    float: right;
    background: #ffffff;
    transform: rotate(45deg);
    position: relative;
    right: -10px;
    top: 18px;
}

.btn-recruit-system p {
    color: #4e4e4e;
    font-weight: bold;
}

.recruit-system-txt a:hover {
    color: #3a84df;
    transition: all .3s ease-in-out;
}

/*============================
“à??ŽÒ‚²›€J‘°Œü‚¯‚Ì??–¾?V?
============================*/
ul.page-navi-recruit {}

ul.page-navi-recruit li {
    width: 48%;
    margin: 0 .5% 10px .5%;
}

.recruit-family-wrap {
    clear: both;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    background: #f5f5f5;
    padding: 20px 0 20px 0;
}

.recruit-family-wrap h2 {
    line-height: 160%;
}

.recruit-family-txt {
    width: 57%;
    margin: 0 3% 0 0;
}

.recruit-family-txt p {
    line-height: 180%;
    font-size: 105%;
}

.recruit-family-img {
    width: 30%;
}

.recruit-family-img img {
    display: block;
    width: 100%;
    height: auto;
}


.recruit-message-bnr {
    clear: both;
    width: 1000px;
    height: 300px;
    margin: 50px auto 80px auto;
    overflow: hidden;
}

.recruit-message-bnr a {
    display: block;
    text-decoration: none;
}

.recruit-message-bnr img {
    display: block;
    position: relative;
    z-index: 1;
}

.recruit-message-bnr-txt {
    position: relative;
    z-index: 2;
    top: -300px;
    left: 510px;
    width: 324px;
}

.recruit-message-bnr-txt::before {
    width: 550px;
    height: 300px;
    -webkit-transform: skew(-20deg);
    -moz-transform: skew(-20deg);
    -o-transform: skew(-20deg);
      -ms-transform: skew(-20deg);
    background: rgba(48, 77, 147, 1.0);
    display: block;
    content: "";
    position: relative;
    top: 0;
    z-index: 2;
    transition: all .3s ease-in-out;
}

span.recruit-message-bnr-en {
    position: relative;
    z-index: 3;
    font-size: 120%;
    letter-spacing: .1em;
    color: #ffffff;
    left: 100px;
    top: -210px;
    display: block;
    text-align: center;
}

span.recruit-message-bnr-jp {
    position: relative;
    z-index: 3;
    font-size: 180%;
    font-weight: bold;
    top: -190px;
    left: 60px;
    color: #ffffff;
    letter-spacing: .1em;
    display: block;
    width: 400px;
    text-align: center;
}

span.recruit-message-bnr-more {
    position: relative;
    z-index: 3;
}

span.recruit-message-bnr-more {
    background: #ffffff;
    color: #4665b3;
    position: relative;
    top: -150px;
    left: 194px;
    display: inline-block;
    padding: .5em 2em;
    border-radius: 2em;
    letter-spacing: .1em;
    font-weight: bold;
    transition: all .3s ease-in-out;
}
.recruit-message-bnr a:hover .recruit-message-bnr-txt::before {
    background: rgba(231, 113, 27, 1.0);
    transition: all .3s ease-in-out;
}

.recruit-message-bnr a:hover span.recruit-message-bnr-more {
    color: #ea7e30;
    transition: all .3s ease-in-out;
}

/*============================
•åW—v?@?
============================*/
ul.rectuit-job-list {
    width: 43%;
    list-style: none;
    margin: 0 auto 80px auto;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

ul.rectuit-job-list li {
	margin: 5px 5px;
	width: 100%;
}

ul.rectuit-job-list li a {
    display: block;
    background: #3ca757;
    color: #ffffff;
    text-decoration: none;
    padding: .8em 0;
    border-radius: 0;
    width: 100%;
    text-align: center;
}

ul.rectuit-job-list li:nth-child(3) a,
ul.rectuit-job-list li:nth-child(4) a {
    background: #2f4d93;
    text-align: center;
}


.requirements-list {
    margin: 20px 60px 80px 60px;
    padding: 0;
    border-top: 1px solid #cccccc;
}

.requirements-list dt,
.requirements-list dd {
    padding: 10px 20px;
	line-height: 1.8em;
}

.requirements-list dt {
    clear: both;
    width: 200px;
    float: left;
    text-align: center;
}

.requirements-list dd {
    border-bottom: 1px solid #cccccc;
    margin-left: 0;
    padding-left: 200px;
}

/*============================
?BáKB‰ž•åƒtƒHƒbVƒ`@
============================*/
form.contact-form {
    border: none;
}

ol.recruit-form-list {
    list-style: none;
    margin: 0;
    padding: 0;
    line-height: 1.8em;
}

form.contact-form fieldset {
    border: 0;
    padding: 0;
    margin: 0;
}

ol.recruit-form-list li {
    border-top: 1px solid #cccccc;
    margin: 20px 0 0 0;
    padding: 20px 20px 0px 20px;
    overflow: hidden;
}

label:first-child {
    width: 210px;
    display: block;
    color: #2f4d93;
    font-weight: bold;
    float: left;
    margin: 0 0 0 40px;

    padding: 0;
}
.recruit-form-list input[type="text"] {
    background: #e8e8e8;
    border: none;
    padding: 0;
    width: 80%;
    /* display: block; */
    margin: 0 0 0 0;
    height: 1.5em;
}
.recruit-form-list input[type="text"] + input[type="text"] {
    margin: 10px 0 0 0;
}
.recruit-form-list input.your-school {
    width: 452px;
}

ol.recruit-form-list li em {
    background: #e7711b;
    padding: 5px 3px;


    font-size: 0.7em;
    color: #ffffff;
    margin: 0 4px 0px -42px;
    display: block;
    position: relative;
    float: left;
    top: 2px;
    left: 0;
    line-height: 1em;
    width: 2.5em;
    height: 11px;
    text-align: center;
}
.recruit-form-list li label span {
    display: block;
    font-size: 0.8em;
}
.form-input-wrap {
    width: 700px;
    float: left;
    /* background: #aaaaaa; */
}

.recruit-form-list input.your-zip {
    width: 9em;
}

dl.recruit-form-jobcategory {
    margin: 10px 0 0 0;
    padding: 0;
    font-size: 0.85em;
    border: 1px solid #ccc;
    border-bottom: 0;
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
}

dl.recruit-form-jobcategory dt {
    /* clear: both; */
    width: 160px;
    background: #efefef;
    /* float: left; */
    padding: 0 0 0 10px;
    border-right: 1px solid #cccccc;
    border-bottom: 1px solid #cccccc;
    text-align: center;
    line-height: 140px;
}

dl.recruit-form-jobcategory dd {
    /* float: left; */
    background: #ffffff;
    margin: 0;
    padding: 5px 0 5px 10px;
    border-bottom: 1px solid #ccc;
    width: 517px;
}
textarea.your-pr {
    resize: vertical;
    width: 100%;
    height: 170px;
}

.btn_area {
    margin: 20px 0 0 0;
}


.btn-area input[type="submit"] {
    background: #efe063;
    border: 0;
    width: 300px;
    padding: 30px 0;
    display: block;
    margin: 0 auto;
    border-radius: 5px;
    font-weight: bold;
    font-family: Helvetica, Arial, Verdana, "ƒ`B‚ßAƒbF‚áF", Meiryo, "ƒqƒ‰‚á?ƒm?@?ƒS Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "”?”E I[‚áG‚áLƒbƒN", "MS PGothic", sans-serif;
}


.message-profile {}

.message-profile > img {
    display: block;
}

.message-catch {
    text-align: center;
    font-size: 150%;
		line-height: 150%;
    letter-spacing: .1em;
    font-weight: bold;
    color: #2f4d93;
    margin: 2em auto;
}

p.message-staff-name {
    text-align: center;
    font-size: 120%;
    color: #2f4d93;
    margin-bottom: .5em;
}

p.message-staff-ruby {
    text-align: center;
    color: #aaaaaa;
    font-size: 90%;
}

.message-pror-list-wrap {
    display: flex;
    justify-content: center;
    margin: 0 0 50px 0;
}

dl.message-prof-list {
    width: 300px;
}

dl.message-prof-list dt, dl.message-prof-list dd {}

dl.message-prof-list dt {
    /* background: #3ea657; */
    color: #ffffff;
    text-align: center;
    padding: .6em 0;
    margin: 0 0 1em 0;
}

dl.message-prof-list dd {
    margin: 0;
    text-align: center;
    color: #333333;
    line-height: 160%;
}

dl.prof-department dt {
    background: #3ea657;
}

dl.prof-school dt {
    background: #2f4d93;
}

dl.message-prof-list + dl.message-prof-list {
    margin-left: 5px;
}

.message-q-wrap {
    border-top: 1px solid #cccccc;
    padding: 40px 0 0 0;
}

dl.message-question {
    /* border: 1px solid #aaaaaa; */
    /* border-right: 0; */
    /* border-bottom: 0; */
    /* border-left: 0; */
    margin: 0 30px 0 30px;
    /* padding: 50px 0 0 0; */
}

dl.message-question dt {
    font-size: 120%;
    font-weight: bold;
    color: #2f4d93;
}
dl.message-question dt span {
    font-size: 140%;
    color: #ffffff;
    background: #2f4d93;
    font-weight: normal;
    padding: 0 0.2em;
    margin: 0 .5em 0 0;
		font-family: 'Roboto', Helvetica, Arial, Verdana, "ƒƒCƒŠƒI", Meiryo, "ƒqƒ‰ƒMƒmŠpƒS Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "‚l‚r ‚oƒSƒVƒbƒN", "MS PGothic", sans-serif;

}

dl.message-question dd {
    margin: 0 0 5em 3.1em;
    color: #333333;
    overflow: hidden;
}

dl.message-question dd p {
    line-height: 180%;
}

dl.message-question dd .float-right {
    margin: 0 40px 0 0;
    width: 40%;
}
dl.message-question dd .float-right img {
    display: block;
    width: 100%;
    height: auto;
}
dl.message-question dd .float-left {
    width: 50%;
    padding: 30px 0 0 0;
}

dl.message-question dd img {
    display: block;
    margin: 1.5em 0 0 0;
}


dl.message-for-student {}

dl.message-for-student dt {
    text-align: center;
    font-size: 120%;
    font-weight: bold;
    color: #2f4d93;
    letter-spacing: .1em;
}

dl.message-for-student dd {
    background: #eaf3f8;
    padding: 0 3em 1em 3em;
    border-radius: 10px;
      margin: 0;
}

dl.message-for-student dd::before {
    display: block;
    width: 20px;
    height: 20px;
    content: "";
    position: relative;
    top: -10px;
    /* float: left; */
    background: #eaf3f8;
    transform: rotate(45deg);
    margin: 30px auto 0 auto;
}

dl.message-for-student dd p {
    line-height: 180%;
}

ul.message-navi {
    display: flex;
    list-style: none;
    margin: 0 auto 30px auto;
    padding: 0;
    flex-wrap: wrap;
    justify-content: flex-start;
    width: 840px;
}

ul.message-navi li {
    width: 250px;
    text-align: center;
    margin-bottom: 30px;
    margin: 0 15px 30px 15px;
}

ul.message-navi li + li {
}

ul.message-navi a {
    text-decoration: none;
    display: block;
    transition: all .3s ease-in-out;
    background: #f4f8fd;
    padding: 10px 0 15px 0;
}

ul.message-navi li img {
    display: block;
}

p.message-navi-department {
    margin: .7em 0 .5em 0;

    font-size: 90%;
    color: #333333;
    transition: all .3s ease-in-out;
}

p.message-navi-name {
    margin: 0;
    color: #2f4d93;
    transition: all .3s ease-in-out;
}

ul.message-navi a:hover {
    /* opacity: 0.8; */
    transition: all .3s ease-in-out;
    background: #2f4d93;
}

h2.message-navi-title {
    text-align: center;
    font-size: 120%;
    font-weight: normal;
    letter-spacing: .1em;
    color: #2f4d93;
    margin: 5em 0 1.5em 0;
}

h2.message-navi-title span {
    background: #ffffff;
    position: relative;
    z-index: 5;
    padding: 0 1em;
}

h2.message-navi-title::after {
    width: 85%;
    height: 1px;
    display: block;
    content: "";
    background: #e2e2e2;
    position: relative;
    top: -12px;
    margin: 0 auto;
}
h2.message-navi-title span a {
    text-decoration: none;
    color: #2f4d93;
    transition: all .3s ease-in-out;
}

h2.message-navi-title span a:hover {
    color: #e7711b;
    transition: all .3s ease-in-out;
}
h2.message-navi-title span.message-btn {
    font-size: 14px;
    background: #2f4d93;
    transition: all .3s ease-in-out;
    /* border-radius: 2px; */
    margin: 0 0 0 20px;
    color: #ffffff;
    padding: 5px .8em 3px .8em;
    line-height: 100%;
    display: inline-block;
    position: relative;
    top: -2px;
}

h2.message-navi-title a:hover span.message-btn {
    background: #e7711b;
    transition: all .3s ease-in-out;
}

ul.message-navi a:hover p {
    color: #ffffff;
}

.message-list-all {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

section.messsage-list-item {
    border: 1px solid #2f4d93;
    border-radius: 5px;
    width: 480px;
    overflow: hidden;
    margin-bottom: 40px;
}

section.messsage-list-item img {
    display: block;
    margin: 0 auto;
}

h2.message-list-catch {
    text-align: center;
    font-size: 110%;
    line-height: 160%;
    font-weight: bold;
    color: #2f4d93;
    margin: 0 auto 1em auto;
    padding: 2em 0 0 0;
}

p.message-list-staff-name {
    text-align: center;
    font-size: 110%;
    color: #2f4d93;
    margin-bottom: .5em;
}

p.message-list-staff-ruby {
    text-align: center;
    color: #aaaaaa;
    font-size: 90%;
}

section.messsage-list-item .message-pror-list-wrap {
    padding: 0 20px;
    font-size: 90%;
    line-height: 180%;
    margin-bottom: 0;
}

section.messsage-list-item dl.message-prof-list dt {
    padding: .3em 0;
}
section.messsage-list-item a {
    display: block;
    text-decoration: none;
    transition: all .3s ease-in-out;
    height: 100%;
}

section.messsage-list-item a:hover {
    background: #f6f9ff;
    opacity: 0.8;
    transition: all .3s ease-in-out;
}
.message-list-staff-join {

    text-align: center;
    color: #333333;
    font-size: 95%;
    border-top: 1px solid #2f4d93;
    margin: 20px 20% 15px 20%;
    padding: 25px 0 0 0;
}

/*------------------------------
‚áFƒtƒVƒb@ƒbƒg‚¡?‚áEƒ`BƒbEƒg‚È‚¢?@?G‡
-------------------------------- */
.message-offshot-wrap {
    width: 670px;
    display: flex;
    flex-wrap: wrap;
    padding: 10px 10px;
    border: 20px solid #fffce7;
    /* background: #fffce7; */
    margin: 0 auto 70px auto;
    justify-content: center;
    margin: 50px auto 70px auto;
}

dl.message-offshot {
    margin: 0 30px 0 0;
    width: 45%;
}

dl.message-offshot dt {
    font-size: 170%;
    letter-spacing: 1px;
    text-align: center;
    margin: 150px 0 40px 0;
    color: #2f4d93;
}

dl.message-offshot dt span.en {
    font-size: 60%;
    display: block;
    margin: 0 0 20px 0;
    color: #999999;
}

dl.message-offshot dd {
    /* text-align: center; */
    margin: 0 0 0 0;
    display: none;
}

.message-offshot-img {
    width: 45%;
    /* background: #aaaaaa; */
    overflow: hidden;
}

.message-offshot-img img {
    display: block;
    width: 100%;
    height: auto;
}

dl.message-offshot dt:after {
    display: block;
    width: 50px;
    height: 1px;
    background: #efe063;
    content: "";
    margin: 30px auto 0 auto;
}

dl.message-offshot dd p {
    line-height: 180%;
}
.message-offshot-img:before {
    background: #ffffff;
    width: 60px;
    height: 60px;
    display: block;
    content: "";
    position: relative;
    z-index: 2;
    margin: -20px 0 -30px -30px;
    transform: rotate(45deg);
}

.message-offshot-img:after {
    background: #ffffff;
    width: 60px;
    height: 60px;
    display: block;
    content: "";
    position: relative;
    z-index: 2;
    margin: -20px -30px -30px auto;
    transform: rotate(45deg);
}


/*------------------------------
‚áFƒtƒVƒb@ƒbƒg‚¡?‚áEƒ`BƒbEƒg‚ ‚é?@?G‡
--------------------------------

.message-offshot-wrap {
    width: 920px;
    display: flex;
    flex-wrap: wrap;
    padding: 40px 20px;
    border: 20px solid #fffce7;
    margin: 0 auto 70px auto;
    justify-content: space-around;
  margin: 50px auto 70px auto;
}

dl.message-offshot {
    margin: 0 30px 0 0;
    width: 40%;
}

dl.message-offshot dt {
    font-size: 150%;
    letter-spacing: 1px;
    text-align: center;
    margin: 70px 0 40px 0;
    color: #2f4d93;
}

dl.message-offshot dt span.en {
    font-size: 60%;
    display: block;
    margin: 0 0 20px 0;
    color: #999999;
}

dl.message-offshot dd {
    margin: 0 0 0 0;
}

.message-offshot-img {
    width: 30%;
}

.message-offshot-img img {
    display: block;
    width: 100%;
    height: auto;
}

dl.message-offshot dt:after {
    display: block;
    width: 50px;
    height: 1px;
    background: #efe063;
    content: "";
    margin: 30px auto 0 auto;
}

dl.message-offshot dd p {
    line-height: 180%;
}
.message-offshot-img:before {
    background: #ffffff;
    width: 60px;
    height: 60px;
    display: block;
    content: "";
    position: relative;
    z-index: 2;
    margin: -20px 0 -30px -30px;
    transform: rotate(45deg);
}

.message-offshot-img:after {
    background: #ffffff;
    width: 60px;
    height: 60px;
    display: block;
    content: "";
    position: relative;
    z-index: 2;
    margin: -20px -30px -30px auto;
    transform: rotate(45deg);
}*/


/*============================
‚ßAƒxƒ“ƒg
============================*/

.event-wrap {
    width: 90%;
    margin: 0 auto;
}
.page-main-img {
    width: 100%;
    margin: 0 auto 30px auto;
}

.page-main-img img {
    display: block;
    width: 100%;
    height:  auto;
}

p.event-top-msg {
    text-align: center;
    font-size: 140%;
    color: #3ea657;
}

p.event-top-msg + p {
    /* width: 80%; */
    margin: 0 auto 100px auto;
    line-height: 170%;
    padding: 0;
    text-align: center;
}


ul.event-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

ul.event-list li {
    margin: 0 5px 0 5px;
}

ul.event-list li a {
    display: block;
    background: #2e4d93;
    padding: .7em 2em;
    color: #ffffff;
    text-decoration: none;
    border: 1px solid #2e4d93;
    transition: all .3s ease-in-out;
}
ul.event-list li a:hover {
    background: #e9f0ff;
    color: #2e4d93;
    transition: all .3s ease-in-out;
}

ul.event-list li.event-list-now a {
    background: #ffffff;
    color: #2e4d93;
    font-weight: bold;
    transition: all .3s ease-in-out;
}

ul.event-list li.event-list-now a:hover {
    border-color: #2e4d93;
    transition: all .3s ease-in-out;
}


.event-item-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    /* width: 90%; */
    /* margin: 0 auto; */
    margin: 0 0 70px 0;
}

.event-item-txt {
    width: 350px;
    margin: 0 0 0 0;
}

span.event-icon-pickup {
    display: block;
    width: 80px;
    background: #e7711b;
    color: #ffffff;
    padding: 8px 10px 6px 10px;
    text-align: center;
    font-size: 90%;
    font-weight: bold;
}

span.event-icon-pickup:after {
    display: block;
    width: 10px;
    height: 10px;
    background: #e7711b;
    content: "";
    transform:  rotate(45deg);
    float: left;
    position: relative;
    margin: 0 0 0 -6px;
    left: 40px;
    top: 17px;
    z-index: 1;
}

h2.event-item-title {
    color: #2f4d93;
    font-size: 130%;
    margin: 25px 0 20px 0;
}

.event-item-txt p {
    line-height: 160%;
    font-size: 90%;
    text-align: justify;
}
.event-item-wrap:nth-child(even) {
}

.event-item-wrap:nth-child(even) .event-item-txt {
    order: 2;
}
.event-item-wrap:nth-child(even) .event-item-img {
    order: 1;
}
.event-item-img {
    width: 500px;
    margin: 0 0 0 0;
    padding: 0 0 0 0;
}
.event-item-img > img {
  display: block;
  width: 100%;
  height: auto;
}
.event-item-img-btn {
    display: block;
}

.event-item-img-btn a {
    background: #ffffff;
    color: #2e4d93;
    text-decoration: none;
    padding: 6px 10px;
    display: block;
    width: 50%;
    text-align: center;
    margin: 0 auto 0 0;
    border: 1px solid #2e4d93;
    transition: all .3s ease-in-out;
}

.event-item-img-btn a:hover {
    background: #2e4d93;
    color: #ffffff;
    transition: all .3s ease-in-out;
}
.event-btn-back {
    float: none;
    clear: both;
    width: 36%;
    margin: 0 auto 40px auto;
}

.event-btn-back a {
    display: block;
    background: #ffffff;
    text-align: center;
    padding: 10px 20px;
    border: 1px solid #2e4c94;
    color: #2f4d93;
    text-decoration: none;
    transition: all .3s ease-in-out;
}

.event-btn-back a:hover {
    transition: all .3s ease-in-out;
    background: #2e4c94;
    color: #ffffff;
}

/*============================
?CŽ™?V?‰É
============================*/
.child-rearing-top-msg {
    text-align: center;
    font-size: 150%;
    line-height: 1.8;
    color: #333;

}

.child-rearing-msg {
    text-align: center;
    line-height: 1.6;
    color: #333;
}

.child-rearing-tbl {
    margin-top: 64px;
    margin-bottom: 120px;
}
.child-rearing-tbl th {
  background: #ffd8bc;
}
.child-rearing-tbl th, .child-rearing-tbl td {
    border-left: 1px solid #e8e8e8;
    padding: 10px;
    font-size: 14px;
}
/* ƒwƒbƒ_ */
.child-rearing-tbl th:nth-child(1) {
    width: 3%;
}
.child-rearing-tbl th:nth-child(2) {
    width: 15%;
}
.child-rearing-tbl th:nth-child(3) {
    width: 15%;
}
.child-rearing-tbl th:nth-child(4) {
    width: 25%;
    max-width: 300px;
}
.child-rearing-tbl td:nth-child(4) {
    text-align: left;
}
.child-rearing-tbl td:nth-child(5) {
    text-align: left;
}


/*============================
‚¨–â‡‚¹ƒtƒHƒbVƒ`@
============================*/
.title-contact-form {

    text-align: center;
    margin: 60px 0 0 0;
    color: #333333;
}

form.contact-form {
    border: none;
    margin-bottom: 50px;
}
ol.contact-form-list {
    list-style: none;
    margin: 0;
    padding: 0;
    line-height: 1.8em;
}


form.contact-form fieldset {
    border: 0;
    padding: 0;
    margin: 0;
    /* overflow: visible; */
}

ol.contact-form-list li {
    border-top: 1px solid #cccccc;
    margin: 20px 0 0 0;
    padding: 20px 20px 0px 20px;
    overflow: hidden;
}

label:first-child {
    width: 210px;
    display: block;
    color: #2f4d93;
    font-weight: bold;
    float: left;
    margin: 0 0 0 40px;
    padding: 0;
}
.contact-form-list input[type="text"] {
    background: #e8e8e8;
    border: none;
    padding: 0;
    width: 80%;
    /* display: block; */
    margin: 0 0 0 0;
    height: 1.5em;
}
.contact-form-list input.your-zip {
    width: 9em;
}
.contact-form-list input[type="text"] + input[type="text"] {
    margin: 10px 0 0 0;
}

ol.contact-form-list li em {
    background: #e7711b;
    padding: 5px 3px;
    font-size: 0.7em;
    color: #ffffff;
    margin: 0 4px 0px -42px;
    display: block;
    position: relative;
    float: left;
    top: 2px;
    left: 0;
    line-height: 1em;
    width: 2.5em;

    height: 11px;
    text-align: center;
}
.contact-form-list li label span {
    display: block;
    font-size: 0.8em;
}
.form-input-wrap {
    width: 700px;
    float: left;
    /* background: #aaaaaa; */
}

textarea.your-text {
    resize: vertical;
    width: 80%;
    height: 170px;
}
.form-caution {
	width:90%;
    background: #fff2f2;
    padding: 1em 1em;
    max-width: 530px;
    margin: 5px 0 0 0;
    /* border: 1px solid #ff8484; */
    color: #ff0000;
    font-size: 90%;
    font-weight: bold;
    line-height: 190%;
}
.btn-area {
    margin: 20px 0 0 0;
}
.btn-area input[type="submit"] {
    background: #efe063;
    border: 0;
    width: 300px;
    padding: 30px 0;
    display: block;
    margin: 0 auto;
    border-radius: 5px;
    font-weight: bold;
    font-family: Helvetica, Arial, Verdana, "ƒ`B‚ßAƒbF‚áF", Meiryo, "ƒqƒ‰‚á?ƒm?@?ƒS Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "”?”E I[‚áG‚áLƒbƒN", "MS PGothic", sans-serif;
}

dl.contact-tel {
    width: 461px;
    background: #f9f9f9;
    overflow: hidden;
    margin: 40px auto 100px auto;
    border: 1px solid #2f4d93;
}

.contact-tel dt, .contact-tel dd {
    padding: 20px 15px;
    margin: 0;
    line-height: 1em;
}

.contact-tel dt {
    clear: both;
    float: left;
    width: 100px;
    text-align: center;
    color: #ffffff;
    background: #2f4d93;
}

.contact-tel dd {float: left;width: 301px;border-bottom: 1px solid #2f4d93;/* margin: 0 0 1px 0; */}

.contact-tel dd address {
    display: inline;
    font-style: normal;
}


.contact-tel dd:last-child {
    border: 0;
}

/*============================
ŒÂ?R?Rî?@?A•Û??LËPj
============================*/
.privacy-title {
    color: #2f4d93;
    margin: 3em 60px 1em 60px;
    padding-bottom: 0.5em;
    border-bottom: 1px dotted #cccccc;
}

.privacy-title ~ p {
    margin: 0 60px 1em 60px;
    line-height: 1.8em;
    font-size: 0.95em;
}



/*============================
?PŽ‰?R?J’…?PŽ‰Ú’…
============================*/

.tech-intro {
    height: 490px;
}

.tech-intro-img {
    margin: 0 0 0 0;
    position: relative;
    z-index: 1;
}
.tech-inner {
    background: rgba(0,0,0,0.4);
    margin: -465px 20px 0 auto;
    position: relative;
    z-index: 3;
    width: 300px;
    padding: 20px;
    border: 1px solid #ffffff;
}
.tech-inner-model {
    top: -46px;
}

.tech-intro-img img {
    display: block;
    position: relative;
    z-index: 2;
}

.tech-intro-title {
    color: #ffffff;
    font-weight: normal;
    font-size: 260%;
    text-align: center;
    font-family: "Noto Sans Japanese";

		margin: .5em 0 1em 0;
}
.tech-intro-model {
    line-height: 150%;
    margin-top: 0;
    margin-bottom: 0;
}

.tech-inner p {
    color: #ffffff;
    font-size: 1em;
    line-height: 180%;
    margin-bottom: 0;
}

.tech-intro-title-left {
    margin-top: 180px;
    width: 500px;
    /* background: #aaaaaa; */
    float: left;
}

figure.tech-detail-img {
    float: right;
    width: 450px;
    height: 350px;
    margin: 100px 0 50px 0;
    padding: 0;
}
figure.tech-detail-wide {
    clear: both;
}

.tech-detail {
    clear: both;
    margin: 0 0 0 0;
}

.tech-detail-title {
    font-family: "Noto Sans Japanese";
    letter-spacing: .1em;
    line-height: 180%;
    font-weight: normal;
    color: #666666;
    font-size: 220%;
    margin: 30px 0 30px 0;
}
.tech-intro-title-left {
    margin-top: 180px;
    width: 500px;
    /* background: #aaaaaa; */
    float: left;
}


.tech-section-title {
    clear: both;
    text-align: center;
    font-weight: normal;
    color: #2f4d93;
		font-family: 'Roboto', Helvetica, Arial, Verdana, "ƒƒCƒŠƒI", Meiryo, "ƒqƒ‰ƒMƒmŠpƒS Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "‚l‚r ‚oƒSƒVƒbƒN", "MS PGothic", sans-serif;
    font-size: 220%;
    letter-spacing: .1em;
    margin: 3em 0 1em 0;
}

.tech-section-title span {
    display: block;
    font-size: .4em;
    margin: 20px 0 0 0;
    color: #000000;
    letter-spacing: 2px;
}
ul.tech-point {
    list-style: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
}

.tech-point li {
    width: 266px;
    float: left;
    margin: 0 0 0 30px;
}
.tech-point li + li {
    margin: 0 0 0 70px;
}
.tech-point li > p {
    font-size: .9em;
    line-height: 150%;
    text-align: justify;
    margin: 1em .5em 0 .5em;
}
.tech-point-wrap {
    width: 250px;
    height: 250px;
    border: 7px solid #2f4d93;
    border-radius: 50%;
    background: #ffffff;
    padding: 1px;
    text-align: center;
    overflow: hidden;
}

.tech-point-title {
    color: #2f4d93;
    margin: 25px 0 0px 0;
    height: 100px;
}


.tech-point-title p {
    font-size: .9em;
    line-height: 150%;
    margin: 0px 0 15px 0;
    padding: 0;
    font-weight: bold;
}

.tech-point-title p span {
    display: block;
    font-size: 160%;
    /* font-weight: bold; */
}

.tech-point-title h3 {
    margin: 0 0 0 0;
    font-size: 1em;
}
.tech-point-link {
    background: #2f4d93;
    color: #ffffff;
    height: 125px;
    border-radius: 0px 0px 125px 125px;
		-webkit-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;
}
.tech-point-link:hover {
    background: #e7711b;
    -webkit-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;
}

.tech-point-link a {
    display: block;
    color: #ffffff;
    text-decoration: none;
    /* font-size: .9em; */
    padding: 30px 0 77px 0;
    background: url(../images/arrow_round_white.png) no-repeat center 70px;
}
.width-full-img {
    display: block;
    min-width: 1000px;
    width: 100%;
}

ul.tech-appeal-list {
    list-style: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
}

ul.tech-appeal-list li {
    float: left;
    width: 170px;
}

h3.tech-appeal-title {
    font-size: .9em;
    font-weight: normal;
    color: #334e92;
}

ul.tech-appeal-list li img {
    display: block;
    margin: 0 auto 20px auto;
}

ul.tech-appeal-list li p {
    font-size: 80%;
    line-height: 160%;
    color: #333333;
    word-break: normal;
}

ul.tech-appeal-list li + li {
    margin: 0 0 0 37px;
}


.tech-category {
    list-style: none;
    padding: 0;
    margin: 60px 0 60px 0;
    height: 220px;
}
ul.tech-category li {
	width: 220px;
	height: 220px;
	float: left;
	transition: all 0.3s, all 0.3s;
}
ul.tech-category li:hover {
		transition: all 0.3s, all 0.3s;
		opacity: 0.8;
}

li.tech-category-weld {
	background: url(../tech/images/btn_technical_01.jpg) no-repeat top center;
}

li.tech-category-cutting {
	background: url(../tech/images/btn_technical_02.jpg) no-repeat top center;
}

li.tech-category-resin {
	background: url(../tech/images/btn_technical_03.jpg) no-repeat top center;
}

li.tech-category-model {
	background: url(../tech/images/btn_technical_04.jpg) no-repeat top center;
}
ul.tech-category li + li {
    margin: 0 0 0 40px;
}

ul.tech-category li a {
    display: block;
    width: 220px;
    height: 220px;
    text-decoration: none;
    color: #000000;
    font-weight: bold;
		
}

.tech-category li p {
		float: right;
    margin: 0 0 0 auto;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    background: url(../images/bg_clear_stripe.png) repeat-x;
    padding: 20px 20px 0px 20px;
    height: 200px;
    line-height: 23px;
    font-size: .85em;
    letter-spacing: .1em;
    text-shadow: 0px 0px 3px rgba(255,255,255,0.4);
}
.tech-category li p::after {
	content: "";
	display: block;
	background: url(../images/arrow_round_paleblue.png) no-repeat top center;
	border-radius: 50%;
	width: 23px;
	height: 23px;
	float: right;
	position: relative;
	bottom: 15px;
}

.tech-process-data {
    float: right;
    width: 205px;
    height: 211px;
    margin: -210px 30px 0 0;
}

.tech-process-data img {
    display: block;
}

.tech-img-list {
    list-style: none;
    margin: 0 0 0 10px;
    padding: 30px 0 0 0;
    /* text-align: center; */
    /* background: #aaaaaa; */
    width: 990px;
    min-height: 260px;
    overflow: hidden;
}

.tech-img-list li {
	float: left;
	margin-bottom: 10px;
}

.tech-img-list li img {
    display: block;
}

.tech-img-list li + li {
    margin-left: 10px;
}

.tech-img-list li:nth-child(3n+1) {
    margin-left: 0;
}

.tech-detail + .tech-intro {
    clear: both;
    margin: 130px 0 0 0;
}

.tech-inner-left {
    float: left;
    margin-left: 20px;
}

.tech-intro-cutting {
    height: 618px;
}
.tech-inner-cutting {
    margin-top: -600px;
}


section.tech-list-wrap {
    clear: both;
    margin: 0 auto;

    padding: 50px 0 30px 0;
    border-bottom: 1px solid #2f4d93;
}

h2.tech-list-title {
    text-align: center;
    font-weight: normal;
    color: #2f4d93;
    position: relative;
}

h2.tech-list-title::before {
    display: block;
    width: 1000px;
    height: 1px;
    background: #2f4d93;
    content: "";
    position: relative;
    top: 0.5em;
    z-index: 1;
}

h2.tech-list-title span {
    background: #ffffff;
    padding: 0 1em;
    position: relative;
    z-index: 3;
}

.tech-list {
    margin: 0;
    padding: 0;
    list-style: none;
    overflow: hidden;
}

.tech-list li {
    width: 250px;
    float: left;
    margin: 40px 40px 0px 40px;
}

.tech-list li:nth-child(3n+1) {
    clear: both;
}

dl.tech-list-item {
    margin: 0;
    padding: 0;
}

dl.tech-list-item dt {
    margin: 0;
}

dl.tech-list-item dt img {
    display: block;
    margin: 0 auto;
}

dl.tech-list-item dd {
    margin: 10px 0 0 0;
    padding: 0;
    text-align: center;
    line-height: 160%;
    font-weight: bold;
    color: #2f4d93;
}
p.tech-list-txt {
    text-align: center;
    font-size: 120%;
    margin-top: 60px;
    color: #666666;
}


/*============================
‚áB‚áE‚ßu‚áb‚áLƒb@ƒbE21
============================*/
.eco-intro {
    text-align: center;
    font-size: 150%;
    letter-spacing: .1em;
    color: #333333;
    margin: 2.5em 0 2em 0;
}
.eco-intro strong {
    color: #3ea657;
}

h2.eco-title {
    text-align: center;
    color: #3ea657;
    letter-spacing: .1em;
    font-family: "Ÿà–¾’©", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HG–¾’©E", "‚l‚r ‚o–¾’©", "‚l‚r –¾’©", serif;
    font-size: 180%;
    margin: 1.5em 0 3em 0;
}

h2.eco-title span {
    background: #ffffff;
    padding: 0 .5em;
}

h2.eco-title::after {
    content: "";
    display: block;
    height: 1px;
    width: 100%;
    background: #cccccc;
    margin: -.6em 0 0 0;
}

h3.eco-title-sub {
    text-align: center;
    font-family: "Ÿà–¾’©", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HG–¾’©E", "‚l‚r ‚o–¾’©", "‚l‚r –¾’©", serif;
    color: #2f4d93;
}

h3.eco-title-sub::after {
    content: "";
    display: block;
    width: 3em;
    height: 1px;
    background: #2f4d93;
    margin: 1em auto 2em auto;
}

.eco-txt {
    margin: 40px 70px 90px 70px;
}

.eco-txt p {
    line-height: 180%;
    color: #555555;
    letter-spacing: 1px;
}

ol.eco-list {
    color: #3ea657;
    line-height: 170%;
    font-weight: bold;
    margin: 40px 70px 80px 70px;
    padding: 0 0 0 20px;
}

ol.eco-list li {
    margin-bottom: 1em;
}

ol.eco-list li span {
    color: #555555;
    font-weight: normal;
}

.ecoaction-data {
    margin: 70px auto 90px auto;
    padding: 20px;
    width: 780px;
    background: #f6fbef;
    overflow: hidden;
}

.ecoaction-data-img {
    width: 234px;
    float: left;
    margin: 10px 0 0 20px;
}

.ecoaction-data-img img {
    display: block;
}

dl.ecoaction-data-list {
    width: 500px;
    float: right;
    margin: 10px 0 0 0;
}

dl.ecoaction-data-list dt {
    font-size: 120%;
    font-weight: bold;
    color: #3ea657;
    margin: .5em 0 0 0;
}

dl.ecoaction-data-list dd {
    margin: 0px 30px 0 1em;
    padding: 0;
}

dl.ecoaction-data-list dd p {
    line-height: 160%;
    color: #333333;
    font-size: 90%;
}

dl.ecoaction-data-list dd img {
    display: block;
    float: left;
    margin: 0;
    padding: 5px;
    background: #ffffff;
    /* box-shadow: 0px 1px 3px rgba(0,0,0,0.2); */
}
.btn-external-site a {
    display: block;
    float: right;
    background: #41b37e url(../images/icon_target_blank.png) no-repeat 260px 10px;
    color: #ffffff;
    text-decoration: none;
    padding: .5em .5em .5em 1em;
    width: 19em;
    margin: 60px 0 0 0;
    transition: all 0.3s ease-in-out;
}
.btn-external-site a:hover {
    background-color: #e7711b;
    transition: all 0.3s ease-in-out;
}
.eco-thanks-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 30px;
    background: #f6fbef;
    width: 770px;
    margin: -30px auto 50px auto;
}

.eco-thanks-img {
    width: 100%;
    margin: 0 auto;
}

.eco-thanks-img ul {
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.eco-thanks-img ul li {
    width: 49%;
}

.eco-thanks-img ul li img {
    display: block;
    width: 100%;
    height: auto;
}

.eco-thanks-txt {
    width: 100%;
    text-align: center;
    font-size: 105%;
    margin: 30px 0 0 0;
}


/*============================
media - ƒ`BƒfƒB‚ßu‘|CÚ
============================*/
.media-year-title {
    font-size: 110%;
    color: #2f4d93;
    margin-bottom: 0;
}

.media-item {
    clear: both;
    overflow: hidden;
    padding: 20px 0;
    margin: 0 10px;
}

.media-item + .media-item {
    border-top: 1px dotted #cccccc;
}

.media-item-txt {
    float: right;
    width: 710px;
    /* background: #aaaaaa; */
}

.media-item-title {
    font-size: 100%;
    color: #2f4d93;
}

.media-item-date {
    font-weight: normal;
    color: #a5a5a5;
    margin-right: 1em;
    font-size: 90%;
}

.media-item-txt p {
    margin: 1em;
		color: #333333;
}

.media-item-img {
    float: left;
    width: 240px;
    margin: 0;
    padding: 0;
    border: 1px solid #cccccc;
}

.media-item-img img {
    display: block;
}

.media-item + .media-year-title {
    margin-top: 60px;
}

/*============================
link - ?u‘—vƒbFƒbE‚áb
============================*/
ul.external-site-link {
    margin-bottom: 170px;
}
ul.external-site-link li {
    clear: both;
    margin: 0 0 1em 0;
}

ul.external-site-link li p {
    display: block;
    float: left;
    margin: 0 1em 0 0;
    color: #333333;
}

ul.external-site-link li a {
    display: block;
    float: left;
    color: #3a84df;
    transition: all 0.3s ease-in-out;
    padding-right: 16px;
    text-decoration: none;
}

ul.external-site-link li a:hover {
    color: #e7711b;
    transition: all 0.3s ease-in-out;
}

ul.external-site-link li a[href^="http"] {
	background: url(../images/icon_target_blank_blue.png) no-repeat right center;
	background-size: 10px;
}
ul.external-site-link li a:hover[href^="http"] {
    background: url(../images/icon_target_blank_orange.png) no-repeat right center;
    background-size: 10px;
}

/*============================
material-list Žæˆµ?@Þ?V??A?ZƒbF‚áPƒg
============================*/
h2.material-list-title {
    font-size: 110%;
    color: #143686;
    background: #eff4ff;
    padding: 10px 0px 10px 10px;
    line-height: 120%;
    font-weight: normal;
    /* text-shadow: 0px 1px 1px rgba(0,0,0,0.1); */
}

ul.material-list {
    margin: 0 0 15px 0;
}

ul.material-list li {}

ul.material-list li span {
    color: #333333;
    display: inline-block;
    margin: 0 1em 0 0;
}

ul.material-list li a {
    color: #e7711b;
    font-size: 95%;
    display: inline-block;
    margin: 0 0 0 0;
    line-height: 120%;
  transition: all .3s ease-in-out;
}
ul.material-list li a:hover {
    color: #12882e;
}

ul.material-list li + li {
    margin-top: 1em;
}


/*============================
number ?[Žš‚ÅŒ©‚éWING
============================*/


.number-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: 98%;
  margin: 0 auto 40px auto;
}

.column-01 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    margin: 0 auto;
}

.column-01-01 {
    width: 300px;
}

.number-wrap img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 0 0 0;
}

.column-01-02 {
    width: 460px;
}

.column-01-03 {
    width: 190px;
}

.column-02 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    margin: 0 auto;
}

.column-02-01 {
    width: 370px;
    margin: 0 15px 0 0;
}

.column-02-02 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    width: 595px;
    margin: 0 0 0 0;
	background:#E2EBFE;
/*
	min-height:398px;
*/
	text-align:center;
}

.number-title {
	width:100%;
	margin:1em auto;
	padding:0;
    font-size: 130%;
    line-height: 160%;
    font-weight: bold;
    color: #2f4d93;
	text-align: center;
}

/*============================
margin —v?G?@‚¡?ƒ}[‚áNƒbEŒÂ•ÊŽw??
============================*/
.mrgn-5 {
	margin: 5px;
}
.mrgn-10 {
	margin: 10px;

}
.mrgn-20 {

	margin: 20px;
}
.mrgn-30 {
	margin: 30px;
}
.mrgn-40 {
	margin: 40px;
}
.mrgn-50 {
	margin: 50px;
}
.mrgn-center {
    margin: 0 auto;
}


/*bottom*/
.mrgn-b-5 {
	margin-bottom: 5px;
}

.mrgn-b-10 {
	margin-bottom: 10px;
}


.mrgn-b-15 {
	margin-bottom: 15px;
}
.mrgn-b-20 {
	margin-bottom: 20px;
}
.mrgn-b-30 {

	margin-bottom: 30px;
}
.mrgn-b-40 {
	margin-bottom: 40px;
}
.mrgn-b-50 {
	margin-bottom: 50px;
}
.mrgn-b-100 {
	margin-bottom: 50px;
}
.mrgn-b-200 {
	margin-bottom: 50px;
}



/* right */
.mrgn-r-5 {
	margin-right: 5px;

}

.mrgn-r-10 {
	margin-right: 10px;
}

.mrgn-r-15 {
	margin-right: 15px;
}

.mrgn-r-20 {
	margin-right: 20px;

}
.mrgn-r-30 {
	margin-right: 30px;
}
.mrgn-r-40 {
	margin-right: 40px;
}
.mrgn-r-50 {
	margin-right: 50px;
}

/* top */
.mrgn-t-5 {
	margin-top: 5px;
}

.mrgn-t-10 {
	margin-top: 10px;
}

.mrgn-t-15 {
	margin-top: 15px;
}

.mrgn-t-20 {
	margin-top: 20px;
}
.mrgn-t-30 {
	margin-top: 30px;
}
.mrgn-t-40 {
	margin-top: 40px;
}
.mrgn-t-50 {
	margin-top: 50px;
}
.mrgn-t-100 {
	margin-top: 50px;
}
.mrgn-t-200 {
	margin-top: 50px;
}

	/* left */



.mrgn-l-5 {
	margin-left: 5px;
}

.mrgn-l-10 {
	margin-left: 10px;
}

.mrgn-l-15 {
	margin-left: 15px;
}

.mrgn-l-20 {
	margin-left: 20px;
}
.mrgn-l-30 {
	margin-left: 30px;
}
.mrgn-l-40 {
	margin-left: 40px;
}
.mrgn-l-50 {
	margin-left: 50px;
}


.pdng-b-150 {
    padding-bottom: 150px;
}


/*============================
line-height?T
============================*/
.lineh-18 {
    line-height: 1.8em;
}
.lineh-20 {
    line-height: 2em;
}

/*============================
align?T
============================*/
.align-center {
    text-align: center;
}

.img-center {
    display: block;
    margin: 0 auto;
}


/*============================
clearfix
============================*/
.blockend {
    clear: both;
    float: none;
		height: 1px;
}

.no-border {
    border: 0;
}
.clearfix {
	float: none;
	clear: both;
}

/*============================
#page_top
ƒy[‚áN‚¡?æ?@??‚¡N?T‚é
============================*/
#page_top {
	position: fixed;
	bottom: 30px;
	right: 20px;
	z-index: 100;
	display: none;
}
#page_top a {
    display: block;
    background: #666666;
    height: 50px;
    width: 50px;
    /* border-radius: 50%; */
    text-align: center;
    line-height: 50px;
    font-size: 25px;
    text-decoration: none;
    color: #ffffff;
    border: 3px solid #ffffff;
    transition: all 0.3s, all 0.3s;
}
#page_top a:hover {
	background: #e7711b;
}


/*============================
a, a:hover 
============================*/

.global-navi li a ,
.global-navi li a:hover {
	transition: all 0.3s ease-in-out;
}

.news dd a,
.news dd a:hover {
 transition: all 0.3s ease-in-out;
}

.service-panel-list a,
.service-panel-list a:hover,
.service-panel-list a p,
.service-panel-list a:hover p {
    transition: all 0.3s ease-in-out;
}

.technical-panel .area-left,
.technical-panel .area-left:hover {
	transition: all 0.3s ease-in-out;
}
.technical-panel .area-left:hover {
	opacity: 0.8;
}

.technical-panel .area-left .panel-facility-title img,
.technical-panel .area-left:hover .panel-facility-title img {
	transition: all 0.3s ease-in-out;
}

.technical-panel-list li,
.technical-panel-list li:hover {
  transition: all 0.3s ease-in-out;
}

/*.header-contact-list li:last-child a::after,
.header-contact-list li:first-child a::before,
.header-contact-list li a,
.header-contact-list li a:hover {
	transition: background 0.3s ease-in-out;
}*/

.btn-other-page,
.btn-other-page:hover {
	transition: all 0.3s ease-in-out;
}
.btn-to_facility,
.btn-to_facility:hover {
	transition: all 0.3s ease-in-out;
}

a.btn-recruit,
a.btn-recruit:hover {
	transition: all 0.3s ease-in-out;
}

ul.recruit-app-btn {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

ul.recruit-app-btn li {
    width: 32%;
    margin: 0 1%;
}

ul.recruit-app-btn li a {
    background: #aaaaaa;
    padding: 1.5em 0;
    display: block;
    text-align: center;
    border-radius: 3em;
    text-decoration: none;
}

ul.recruit-app-btn li:nth-child(1) a {
    background: #3ea657;
    color: #ffffff;
}

ul.recruit-app-btn li:nth-child(2) a {
    background: #304d93;
    color: #ffffff;
}

.btn-recruit-form,
.btn-recruit-form::before,
.btn-recruit-form::after,
.btn-recruit-form:hover,
.btn-recruit-form:hover::before,
.btn-recruit-form:hover::after {
	transition: all 0.3s ease-in-out;
}

.header-contact a,
.header-contact a::before {
    transition: all .3s ease-in-out;
}

.header-contact a:hover {
    background: #e7711b;
    transition: all .3s ease-in-out;
}
.header-contact a:hover::before {
    background: #e7711b;
    transition: all .3s ease-in-out;
}



.edge-blue,
.edge-blue:hover {
	transition: all 0.3s ease-in-out;
}

.footer-logo a,
.footer-logo a:hover {
  transition: all 0.3s ease-in-out;
}
.footer-bnr a,
.footer-bnr a:hover {
  transition: all 0.3s ease-in-out;
}

.footer-navi-child-list li a,
.footer-navi-child-list li a:hover {
  transition: all 0.3s ease-in-out;
}

.footer-copyright-list li a,
.footer-copyright-list li a:hover {
  transition: all 0.3s ease-in-out;
}

.btn-back {
    margin: 0 10px 60px 10px;
    border-top: 1px dotted #cccccc;
    padding: 15px 0 0 0px;
}

.btn-back a {
    margin: 0 0 0 0;
    font-size: .9em;
    text-decoration: none;
    color: #666666;
    transition: all .3s ease-in-out;
}

.btn-back a:hover {color: #12882e;}

.breadcrumb {
    list-style: none;
    margin: 1em auto 1.5em auto;
    padding: 0;
    width: 1000px;
    display: flex;
    font-size: 90%;
    color: #666666;
}

.breadcrumb li {}

.breadcrumb li + li {
    margin: 0 0 0 0em;
}

.breadcrumb li + li::before {
    content: ">";
    color: #666666;
    margin: 0 .3em 1em .3em;
}
.breadcrumb li a {
    /* text-decoration: none; */
    color: #005aab;
}

.staff-list-all {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.staff-list-wrap {
    background: #fcfcfc;
    padding: 60px 40px 60px 40px;
    box-shadow: 0px 1px 6px rgba(0,0,0,0.2);
}

.staff-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  max-width:920px;
  margin:0 auto 80px;
}

article.staff-item-wrap {
    width: 100%;
    margin: 0 auto 36px auto;
    background: #F9F9F9;
    padding: 10px;
	border: 1px solid #2f4d93;
    border-radius: 5px;	
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items:  flex-start;

}
article.staff-item-wrap:hover {
    transition: all .3s ease-in-out;
/*
    opacity: 0.8;
*/
	border: 1px solid #19b1dd;
}


h3.staff-item-title {
    margin: 15px 0 10px 0;
    padding: 0;
    order: 2;
    color: #2f4d93;
    border-bottom: 1px dotted #cccccc;
    font-size: 20px;
    width: 100%;
}

.staff-item-img {
    order: 1;
    width: 200px;
}
.staff-item-img img{
    width:100%;
	height:auto;
}

.staff-item-txt {
    order: 3;
	width:100%;
    max-width: 680px;
    margin: 0 0 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}


.staff-item-img img {
    display: block;
    margin: 0;
}

h3.staff-item-title:first-letter {
    font-size: 130%;
    letter-spacing: 2px;
}
.staff-item-wrap a {
	width: 100%;
    display: flex;
    text-decoration: none;
    flex-wrap: wrap;
    justify-content: space-between;
    transition: all .3s ease-in-out;
}
.staff-item-wrap a:hover {
/*
    transition: all .3s ease-in-out;
    opacity: 0.8;
*/
}

h3.staff-item-title ~ p {
    margin-right: 10px;
}
.btn-staff-back {
    width: 280px;
    margin: -30px 20px 30px auto;
}

.btn-staff-back a {
    display: block;
    text-decoration: none;
    padding: 15px 0;
    margin: 0 0 0 0;
    width: 100%;
    text-align: center;
    background: #ffffff;
    border: 1px solid #19b1dd;
    font-weight: bold;
    color: #19b1dd;
    transition: all .3s ease-in-out;
}

.btn-staff-back a:hover {
    transition: all .3s ease-in-out;
    background: #19b1dd;
    color: #ffffff;
}
p.staff-btn-more {
    width: 25%;
    order: 6;
    background: #2F4D93;
    text-align: center;
    padding: 5px 0;
    margin: 10px 5px 0px auto !important;
    border: 1px solid #19b1dd;
    color: #ffffff;
    font-weight: bold;
    font-size: 85%;
    letter-spacing: 1px;
    transition: all .3s ease-in-out;
}

.staff-item-wrap a {
	color:#333333 !important;
}
.staff-item-wrap a:hover {
	color:#000000 !important;
}

.staff-item-wrap a:hover p.staff-btn-more {
    background: #19b1dd;
    color: #ffffff;
    transition: all .3s ease-in-out;
}
.staff-wrap p.staff-writer-name {
    width: 100%;
	color:#f00 !important;
}

.staff-wrap p.staff-writer-date {
    width: 100%;
}
.staff-soon {
    width: 100%;
    text-align: center;
    font-size: 120%;
    margin: 40px 0 0 0;
    background: #ffffff;
    padding: 10px 10px;
    border: 1px solid #dddddd;
    box-shadow: 0px 1px 5px rgba(0,0,0,0.1);
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.staff-soon p {
    width: 685px;
    display: block;
    order: 4;
    /* background: #aaaaaa; */
    margin: 60px 0 0 0;
}

/* staff?E?[ */

#interview-wrap {
	margin:0 0 100px;
	border: 1px solid #2f4d93;
}

.staff-interview {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  margin:0 auto 80px;
}

article.staff-interview-wrap {
    width: 96%;
    margin: 0 auto 36px auto;
    padding: 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items:  flex-start;
	border-bottom: 1px dotted #2f4d93;
}

h3.staff-interview-title {
    margin: 40px 0 10px 0;
    padding: 0;
    color: #2f4d93;
    border-bottom: 1px dotted #cccccc;
    font-size: 1.5rem;
    width: 100%;
}

.staff-interview-img {
    order: 1;
    width: 230px;
}
.staff-interview-img img{
    width:100%;
	height:auto;
}

.staff-interview-txt {
    order: 3;
	width:100%;
    max-width: 680px;
    margin: 0 0 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}


.staff-interview-img img {
    display: block;
    margin: 0;
}

h3.staff-interview-title:first-letter {
    font-size: 130%;
    letter-spacing: 2px;
}
.staff-interview-wrap a {
	width: 100%;
    display: flex;
    text-decoration: none;
    flex-wrap: wrap;
    justify-content: space-between;
    transition: all .3s ease-in-out;
}

h3.staff-interview-title ~ p {
    margin-right: 10px;
	margin-left:auto;
	font-size:1.3rem;
}
h3.staff-interview-title ~ p span{
	font-size:1.2rem;
}
.btn-staff-back {
    width: 280px;
    margin: -30px 20px 30px auto;
}

.btn-staff-back a {
    display: block;
    text-decoration: none;
    padding: 15px 0;
    margin: 0 0 0 0;
    width: 100%;
    text-align: center;
    background: #ffffff;
    border: 1px solid #19b1dd;
    font-weight: bold;
    color: #19b1dd;
    transition: all .3s ease-in-out;
}

.btn-staff-back a:hover {
    transition: all .3s ease-in-out;
    background: #19b1dd;
    color: #ffffff;
}
p.interview-staff-btn-more {
    width: 25%;
    order: 6;
    background: #2F4D93;
    text-align: center;
    padding: 5px 0;
    margin: 10px 5px 0px auto !important;
    border: 1px solid #19b1dd;
    color: #ffffff;
    font-weight: bold;
    font-size: 85%;
    letter-spacing: 1px;
    transition: all .3s ease-in-out;
}

.staff-interview-wrap a {
	color:#333333 !important;
}
.staff-interview-wrap a:hover {
	color:#000000 !important;
}

.staff-interview-wrap a:hover p.interview-staff-btn-more {
    background: #19b1dd;
    color: #ffffff;
    transition: all .3s ease-in-out;
}
.staff-wrap p.interview-staff-name {
    width: 100%;
	color:#f00 !important;
}

.staff-wrap p.interview-staff-date {
    width: 100%;
}
.staff-soon {
    width: 100%;
    text-align: center;
    font-size: 120%;
    margin: 40px 0 0 0;
    background: #ffffff;
    padding: 10px 10px;
    border: 1px solid #dddddd;
    box-shadow: 0px 1px 5px rgba(0,0,0,0.1);
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.staff-soon p {
    width: 685px;
    display: block;
    order: 4;
    /* background: #aaaaaa; */
    margin: 60px 0 0 0;
}

dl.interview-question {
	width:100%;
	max-width:900px;
    margin: 0 30px 0 30px;
}

dl.interview-question dt {
    font-size: 120%;
    font-weight: bold;
    color: #000;
}
dl.interview-question dt span {
    font-size: 140%;
    color: #FFC000;
    font-weight: normal;
    padding: 0 0.2em;
    margin: 0 .5em 0 0;
		font-family: 'Roboto', Helvetica, Arial, Verdana, "ƒƒCƒŠƒI", Meiryo, "ƒqƒ‰ƒMƒmŠpƒS Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "‚l‚r ‚oƒSƒVƒbƒN", "MS PGothic", sans-serif;

}

dl.interview-question dd {
    margin: 1.5em 1em 3em 6.5em;
	padding:0.25em 1.5em;
    color: #333333;
    overflow: hidden;
	font-weight:300;
	background: #E3EFF1;
}
dl.interview-question dd:last-child {
    margin-bottom: 0;
}

dl.interview-question dd p {
    line-height: 180%;
	padding:0 0.5em;
}

dl.interview-question dd p strong {
	display:inline-table;
    font-size:1.1em;
	font-weight:bold;
	text-indent: -0.5em;
	padding-bottom:0.25em;
}

dl.interview-question dd .float-right {
    margin: 0 40px 0 0;
    width: 40%;
}
dl.interview-question dd .float-right img {
    display: block;
    width: 100%;
    height: auto;
}
dl.interview-question dd .float-left {
    width: 50%;
    padding: 30px 0 0 0;
}

dl.interview-question dd img {
    display: block;
    margin: 1.5em 0 0 0;
}

.company-patent-wrap {
	line-height:1.6;
	width:100%;
    max-width: 1000px;
    margin: 0 auto 130px auto;
}
.company-patent-wrap p{
    text-align: left;
}

.tbl-patent{
}
.tbl-patent th{
	background: #304D93;
	color:#ffffff;
}
.tbl-patent td{
	background: #fcfcfc!important;
	color:#333333;
}

.menu-staff {
/*
	display: none !important;
*/
}

.sitemap-content {
    margin-bottom: 100px;
}
.sitemap-content a {
    text-decoration: none;
    color: #000;
    transition: all 0.3s ease-in-out;
}
.sitemap-content ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.sitemap-flex {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    margin-top: 20px;
}
.sitemap-main-wrapper {
    width: 48%;
    text-align: left;
}

.sitemap-main {
    width: 48%;
    text-align: left;
}
.sitemap-main-title {
    display: block;
    position: relative;
    font-size: 1.2rem;
    font-weight: bold;
    line-height: 1.8;
    text-align: left;
    color: #2f4d93 !important;

    padding: 0.2em 0.8em 0 0.8em;
    background: #f4f4f4;
    border-left: solid 5px #2f4d93;
    margin-top: 30px;
}
.sitemap-main-title + .sitemap-main-title {
    margin-top: 24px;
}
/* .sitemap-main-title::before {
content: "";
position: absolute;
background: #2f4d93;
top: 0;
left: -15px;
height: 100%;
width: 2px;
} */

.sitemap-sub {
    margin-left: 20px !important;
}
.sitemap-sub-title {
display: block;
position: relative;
font-size: 1.1rem;
font-weight: 700;
text-align: left;

margin-top: 18px;
}
.sitemap-sub-title::before {
content: "";
position: absolute;
top: 50%;
left: -15px;
height: 6px;
width: 6px;
border-right: 1px solid #a8a8a8;
border-bottom: 1px solid #a8a8a8;
transform: translateY(-50%) rotate(-45deg);
}

.sitemap-sub-sub {
margin-left: 25px;
}
.sitemap-sub-sub-title {
display: block;
position: relative;
font-size: 1.0rem;
text-align: left;

margin-top: 10px;
}
.sitemap-sub-sub-title::before {
content: "";
position: absolute;
top: 50%;
left: -15px;
height: 4px;
width: 4px;
border-right: 1px solid #a8a8a8;
border-bottom: 1px solid #a8a8a8;
transform: translateY(-50%) rotate(-45deg);
}
.sitemap-content a:hover {
    color: #e7711b !important;
}

.top-bg {
	background: #2f4d93;
}

div.vid_contents {
width: 100%;
text-align: center;
margin: auto;
padding: 0;
background: #fff;/*—]”’‚Ì”wŒiF*/
}
video.vid_main {
width: 100%;
max-width: 1600px;/*PC”Å‚Å‚ÌÅ‘å•*/
}


.way dl {
display: flex;
flex-flow: row wrap;
width: 75%;
margin-left:auto;
margin-right:auto;
}
.way dt {
box-sizing: border-box;
min-width: 240px;
margin:0 0 20px 0;
padding:0 20px;
border-left:#125FAD 5px solid;
font-size:22px;
line-height:26px;
}
.way dd {
box-sizing: border-box;
min-width: 480px;
margin:0 0 20px 0;
padding:0 20px;
font-size:18px;
line-height:26px;
}
@media screen and (max-width: 559px) {
	.way dl {
	flex-flow: column;
	}
}

#wing-ethics .ms-box {
	margin-bottom:50px;
}
#wing-ethics .ms-box p {
    text-align: center;
}

ul.page-navi-ethics {
    list-style: none;
    margin: 50px 0 80px 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

ul.page-navi-ethics li {
	position:relative;
	display:;
    width: 25%;
    margin: 0 5px 0 5px;
}
ul.page-navi-ethics li a::after {
	position:absolute;
	bottom:9px;
	right:10px;
	font-size:22px;
    font-family: "Font Awesome 6 Free";
	font-weight: 900;
	content: "\f078";
    padding-right: 10px;
	color:#fff;
}
ul.page-navi-ethics li:hover a:after {
	color:#2e4d93;
}

ul.page-navi-ethics a {
    padding: 1em 2em;
    display: block;
    text-align: left;
    text-decoration: none;
    background: #2e4d93;
    color: #ffffff;
    border: 1px solid #2e4d93;
}

ul.page-navi-ethics a.page-current {
    background: #2e4d93;
    color: #ffffff;
    border: 1px solid #2e4d93;
}

ul.page-navi-ethics a:hover {
    background: #ffffff;
    color: #2e4d93;
    border: 1px solid #2e4d93;
}

ul.page-navi-ethics {}

ul.page-navi-ethics li {
    width: 48%;
    margin: 0 .5% 10px .5%;
}

@media screen and (max-width: 559px) {
	ul.page-navi-ethics li {
		width: 100%;
	}
}

.ethics dl {
display: flex;
flex-flow: column;
width: 100%;
}
.ethics dt {
padding: 0 20px;
font-size:24px;
color:#2E4C92;
border-bottom: 1px solid #ccc;
line-height:1.8;
}
.ethics dd {
padding: 10px 20px 30px;
background-color: #fff;
}
.ethics dd p {
line-height:1.5;
text-indent:1em;
}

.bn-half {
	display: flex;
	flex-wrap: wrap;
}

.bn-number {
	display: block;
	width:100%;
	max-width:500px;
	margin:10px auto 0;
}
.bn-number img{
	width:100%;
	max-width:500px;
	height:auto;
	border:#ccc 1px solid;
}
.bn-number img:hover{
	border:#f60 1px solid;
}

.recruit-menu {
	position: relative;
}

.recruit-menu a.btn {
	position:absolute;
	top:0;
	right:200px;
	width:12em;
    padding: 1em;
    display: block;
    text-align: center;
    text-decoration: none;
    background: #2e4d93;
    color: #ffffff;
    border: 1px solid #2e4d93;
}

.recruit-menu a.btn:hover {
    background: #ffffff;
    color: #2e4d93;
    border: 1px solid #2e4d93;
}

.recruit-menu a.link {
	display: none;
}

.img-top {
	margin-top:15px !important;
}

.img-bottom {
	margin-bottom:15px !important;
}

@media screen and (max-width: 768px) {
	.recruit-menu a.btn {
		display: none;
	}
	.recruit-menu a.link {
		padding-left:2em;
		display:inline-block;
	}
	.img-top {
		margin-top:0 !important;
	}
	.img-bottom {
		margin-bottom:0 !important;
	}
	.number-wrap img {
		margin-bottom:15px !important;
	}
}

.number-link {
	margin:5px auto;
	padding:0;
	list-style: none;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
	gap:10px;
}
.number-link li {
	margin:0;
	padding:0;
}
.number-link li .link-title {
    font-weight:bold;
	font-size:1.15em;
	color:#2F4D93;
}
.number-link li .link-title:hover {
	color:#f90;
}.number-link li p {
    margin:0.5em 0;
	line-height: 1.4em;
}

@media screen and (max-width: 768px) {
	.number-link li {
		max-width:100%;
	}
}

.media-item p{
	line-height:1.5;
}

.sec-sdgs {
      padding: 60px 20px;
      text-align: center;
}
.sec-sdgs h1{
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	color:#2F4D93;
 	text-align: center;
}

.sdgs-icons {
	width:100%;
	max-width: 900px;
	margin: 40px auto;
}

.sdgs-icons img {
	width: 100% !important;
	height: auto !important;
}

.goals-logo {
	max-width: 400px;
	margin: 20px auto;
}

.initiatives {
	background-color: #f9f9f9;
}

.initiative-wrapper {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 40px;
	margin-top: 40px;
}

.initiative {
	background-color: #fff;
	width: 320px;
	padding: 20px;
	border-radius: 100%;
	box-shadow: 0 0 10px rgba(0,0,0,0.1);
	text-align: left;
	position: relative;
}

.initiative h3 {
	margin-top: 0;
	font-size: 18px;
	color: #d35400;
}

.initiative p {
	font-size: 14px;
	color: #333;
}

.initiative img {
	position: absolute;
	bottom: -30px;
	right: -30px;
	width: 120px;
	opacity: 0.5;
}

@media screen and (max-width: 768px) {
	.initiative-wrapper {
		flex-direction: column;
		align-items: center;
	}

	.initiative {
		border-radius: 30px;
	}

	.initiative img {
		display: none;
	}
}

.btn-mynavi {
	position: relative;
	width: 1000px;
	height: 303px;
	margin: 0 auto;
	display: block;
	overflow: hidden;
	cursor: pointer;
}
.btn-mynavi img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	display: block;
	-webkit-transition: .4s ease-in-out;
	transition: .4s ease-in-out;
}
.btn-mynavi:hover img:nth-of-type(2) {
	opacity: 0;
}

@media screen and (max-width: 768px) {
	form.contact-form fieldset {
		width:90%;
		max-width:400px;
	}
	ol.recruit-form-list {
		width:96%;
		max-width:430px;
	}
}



