/*==============================================================
レイアウト　共通
==============================================================*/

body { 
	width:100%;
	position:relative;
	margin-left:auto; margin-right:auto;
	border-top:#040C48 solid 3px;
}




/*ローディング*/

#loading{
    position: absolute;
    left: 50%;
    top: 50%;
}
 
#loader-bg {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    background: rgba(255,255,255,0.8);
    z-index: 9999999999;
}




/* scrollReveal用 

.sr, .sr-seq { visibility: hidden; }
*/


/* SP用　599px以下: デフォルト */
@media (max-width: 599px) {

html {
	height:100%;
	font-size: 14px;
}

body { 

}


/* 画像 */
img	{max-width: 100%;height: auto;}
video {max-width: 100%;height: auto;}

}


/*タブレット用 600px以上 959 未満*/
@media (max-width: 959px) and (min-width: 600px) {

img	{max-width: 100%;height: auto;}
video {max-width: 100%;height: auto;}

}

/*PC用 1281px以上 */
@media (min-width: 1281px) {

}

/*  印刷用 */
@media print { 

body { 
	width:80%;
	position:relative;
	margin-left:auto; margin-right:auto;
	border-top:none;
}
}

	
/* Chromeのみ 
@media print and (-webkit-min-device-pixel-ratio:0) {
html  { font-size: 5em;}
}
*/

/*==============================================================
ハンバーガーナビ
==============================================================*/


/* モーダルを出すとき、背景側の要素がスクロールさせない */

html {
	overflow: auto;
	height: 100%;
}

body.modal-open {
  overflow: hidden;
  height: 100%;
}


/**/

.hb-navigation {
display:none;
}

.navigation-contents {
display:none;
}


/* SP用　599px以下: デフォルト */
@media (max-width: 599px) {


.hb-navigation {

display:block;
position:fixed;
top:10px;
right:10px;
width:38px;
height:38px;

	z-index:9999999;
	background:#111;
	
/*	border-radius: 4px; */

	cursor:pointer;

}


.hb-navigation .button {

position: absolute;

top:18px;

margin-left:6px;

width:26px;
height:2px;
background:#fff;

transition:all .3s;
-webkit-transition:all .3s;


display:block;
cursor:pointer;

}


.hb-navigation .button::before, .hb-navigation .button::after {

position:absolute;
width:26px;
height:2px;
background:#fff;
transition:all .3s;
-webkit-transition:all .3s;
transition-delay:.3s;

cursor:pointer;

}

.hb-navigation .button::before {
content:'';
top:-10px;
}
.hb-navigation .button::after {
content:'';
top:10px;
}

/**/

.hb-navigation .action.button {
position: absolute;

width:26px;
height:2px;

background:none;
transform:rotate(90deg);
-webkit-transform:rotate(90deg);
}


.hb-navigation  .action.button::before {
	display:block;

position:absolute;
top:0;
width:26px;
height:2px;
background:#fff;
transform:rotate(45deg);
-webkit-transform:rotate(45deg);
}

.hb-navigation  .action.button::after {
	display:block;

position:absolute;
top:0;
width:26px;
height:2px;
background:#fff;
transform:rotate(-45deg);
-webkit-transform:rotate(-45deg);
}

/**/


.navigation-contents {
	display: block;
	position: relative;
	top:0;
	left:0;
	background: rgba(0,0,0,.85);
	width: 100%;
	margin: auto;
	text-align: center;
	opacity: 0;
	transition: all .5s;
	-webkit-transition: all .5s;
	transform: translateY(-100%);
	-webkit-transform: translateY(-100%);
	z-index: 9998;
	height: 100%;
	overflow: scroll;
}



.navigation-contents.open {
display: block;
position:relative;
position:fixed;
opacity:1;
transform:translateY(0);
-webkit-transform:translateY(0);

}

.navigation-contents.close {
display: none;

}

/**/



.section {
position:absolute;
background:rgba(0,0,0,0.9);
}

/*
.section.menu ul {
	width:80%;
	margin-left:auto;
	margin-right:auto;
	padding-top:5em;
	margin-bottom:1em;
	border-bottom:solid 1px rgba(255,255,255,0.5);

}

.section.menu ul li+ li {
	border-top:solid 1px rgba(255,255,255,0.5);
}

.section.menu ul li a {
	display:block;
	font-family: "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	padding-top:1em;
	padding-bottom:1em;
	font-weight: normal;
	color:#fff;
	text-decoration:none;
	font-size:1.2em;

}

.section.menu ul li a strong {
	display:block;
	font-weight:normal;
	margin-top:0px;
	font-size:0.8em;

}
*/

/* ハンバーガー サブナビ */
nav.hbg  {
	float:none;
	font-family: "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	width:80%;
	margin-left:auto;
	margin-right:auto;
	margin-top:30px;
	margin-bottom:0px;
}

nav.hbg ul.h-snav{
	display:block;
	width:100%;
	align-items:center;
	border-bottom:none;
	border-top:none;
	margin-top:0px;
	margin-bottom:20px;
	justify-content:space-between;
	padding-top:0;
}

nav.hbg ul.h-snav li{
	float:left;
	border-left:rgba(255,255,255,0.5)  solid 1px;
	padding-top: 0px;
	padding-right: 10px;
	padding-left: 10px;
	padding-bottom: 0px;
	border-bottom:none;
	border-top:none;
	text-align:center;

}

nav.hbg ul.h-snav li:first-child{width:30%;}
nav.hbg ul.h-snav li:nth-child(2){width:30%;}
nav.hbg ul.h-snav li:nth-child(3){width:20%;}
nav.hbg ul.h-snav li:last-child{width:20%;border-right: rgba(255,255,255,0.5) solid 1px;}


nav.hbg ul.h-snav li a{
	color:#fff;
	text-decoration:none;
	display:block;
	padding-top:0.5em;
	padding-bottom:0.5em;

}

nav.hbg ul.h-snav li a:hover{
	color:#000;
	text-decoration:underline;
}


nav.hbg ul.h-snav li.facebook a{
	font-size:1.4em;
	padding-top:0px;
	padding-bottom:0px;
}

nav.hbg ul.h-snav li.twitter a{
	font-size:1.4em;
	padding-top:0px;
	padding-bottom:0px
}


/*ハンバーガー内 TEL CONTACT */

nav.hbg ul.h-cnav{
	display:block;
	align-items:center;
	border-bottom:none;
	margin-bottom:20px;
	margin-top:0px;
	padding-top:0px;
	width:100%;
}

nav.hbg ul.h-cnav li{
	float:left;
	font-family: "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	border-left:rgba(255,255,255,0.5) solid 1px;
	color:#fff;
	font-size:1.3em;
	border-bottom:none;
	border-top:none;
	padding-top: 0px;
	padding-right: 0px;
	padding-left: 0px;
	padding-bottom: 0px;
	text-align:center;
}

nav.hbg ul.h-cnav li i{
	color:#fff;
	display:inline;
}

nav.hbg ul.h-cnav li a{
	display: inline;
	color: #fff;
	text-decoration: none;
	text-align:center;
	padding-top:0.5em;
	padding-bottom:0.5em;
}

nav.hbg ul.h-cnav li:first-child{width:70%;}
nav.hbg ul.h-cnav li:last-child{width:30%;border-right: rgba(255,255,255,0.5) solid 1px;}



/**/


/*ハンバーガー　カレント表示*/
body#home .section.menu ul li.home > a{ background:rgba(255,255,255,0.6); color:#000;}
body.business .section.menu ul li.business > a{ background:rgba(255,255,255,0.6); color:#000;}
body.project .section.menu ul li.project > a{ background:rgba(255,255,255,0.6); color:#000;}
body.company .section.menu ul li.company > a{ background:rgba(255,255,255,0.6); color:#000;}
body.recruit .section.menu ul li.recruit > a{ background:rgba(255,255,255,0.6); color:#000;}


/*スクロールバーを表示*/
.section::-webkit-scrollbar{ 
    width: 5px;
}
.section::-webkit-scrollbar-thumb{ 
    background: rgba(0,0,0,0.5);
    border-radius: 0px;
}
.section::-webkit-scrollbar-track-piece:start{   background:;}
.section::-webkit-scrollbar-track-piece:end{   background:;}


/* ロゴ */
.section .header-logo {
}

/* ハンバーガーナビ　トグルメニュー */


.hbnav {
}


.child {
    display: none;
}

.h-menu:after {
  position: absolute;
  top: 15px;
  right: 15px;
  display: block;
  margin-top: -5px;
  width: 12px;
  height: 12px;
  content:'\f107';
  font-family: FontAwesome;
  color:#fff;
  font-size:1.5em;
}
 
.h-menu.active:after {
  position: absolute;
  top: 15px;
  right: 15px;
  display: block;
  margin-top: -5px;
  width: 12px;
  height: 12px;
  content:'\f106';
  font-family: FontAwesome;
  color:#fff;
   font-size:1.5em;
}



.hbnavi ul {
	width:80%;
	margin-left:auto;
	margin-right:auto;
	padding-top:0;
	margin-bottom:1em;
	border-bottom:solid 1px rgba(255,255,255,0.5);
}

.hbnavi > ul {
	margin-top:4.5em;
}

.hbnavi ul li ul {
	width:100%;
	margin-left:auto;
	margin-right:auto;
	padding-top:0;
	margin-bottom:0em;
	border-bottom: none;

}

.hbnavi ul li {
	position:relative;
}


.hbnavi ul li+ li {
	border-top:solid 1px rgba(255,255,255,0.5); 
}

.hbnavi ul li ul li+ li {
	border-top:none;
/*	border-top:solid 1px rgba(255,255,255,0.3); */
}

.hbnavi ul li a {
	display:block;
	font-family: "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	padding-top:0.8em;
	padding-bottom:0.8em;
	font-weight: normal;
	color:#fff;
	text-decoration:none;
	font-size:1.2em;

}


.hbnavi ul li ul li a {
	background:rgba(255,255,255,0.1);
}

/* カレント表示 */

body.ln01 .hbnavi ul li.ln01 a { font-weight:bold;background:rgba(255,255,255,0);}
body.ln02 .hbnavi ul li.ln02 a { font-weight:bold;background:rgba(255,255,255,0);}
body.ln03 .hbnavi ul li.ln03 a { font-weight:bold;background:rgba(255,255,255,0);}
body.ln04 .hbnavi ul li.ln04 a { font-weight:bold;background:rgba(255,255,255,0);}
body.ln05 .hbnavi ul li.ln05 a { font-weight:bold;background:rgba(255,255,255,0);}


} 

/*  印刷用 */
@media print { 

	
}


/*==============================================================
ヘッダ　
==============================================================*/


header {
	position:absolute;
	tex-align:center;
	background:rgba(255,255,255,0.5);
	width:100%;
	z-index:10;
	margin-left:auto;
	margin-right:auto;
	border-bottom: none;
  box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.2); 
}

header .header-inner {
	width:100%;

/*	border-bottom:#ccc solid 1px; */
}

body#home header {
}

header .site {
	display:flex;
	justify-content:space-between;
	align-items:center;
	width:100%;
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
	padding-top:20px;
	padding-bottom:20px;


}

header .header-logo {
	display:flex;
}

header .header-logo .logo{

}

header .header-logo .lead{
	display: flex;
	align-items: center;
	margin: 0 0 0 20px;
	font-size: 0.9em;
	font-weight: bold;
	
}


.header-title {
}

.header-title h2{
	font-weight:normal;
	line-height:1.5;
	text-align:right;
	font-size:0.9em;
}

.header-title h2 i{
	font-style:normal;
	color:#040C48;
}


/* SP用　599px以下: デフォルト */
@media (max-width: 599px) {

header {
	position:relative;
}


header .site {
	width:95%;
	margin-left:auto;
	margin-right:auto;
	padding-top:8px;
	padding-bottom:8px;

}

header .header-logo {
	flex-basis: 60%;
	display:flex;
	flex-direction: column;
	justify-content: flex-start;
}

header .header-logo .logo{
	margin: 0 0 10px 0;
}
header .header-logo .logo img{
	width: 120px;
}

	

header .header-logo .lead{
	display: flex;
	align-items: center;
	margin: 0 0 0 0px;
	font-size: 0.7em;
	
}
.header-title {
	margin: 48px 0 0px 0;
}

.header-title h2{
	font-weight:normal;
	line-height:1.5;
	text-align:right;
	font-size:0.7em;
	margin-right:0px;
}

/*右上部ナビ*/

nav.header-info {
	display:none;
}



}
	
/*タブレット用 600px以上 959 未満*/
@media (max-width: 959px) and (min-width: 600px) {

header {
	position:relative;
	tex-align:center;
	background:#fff;
	width:100%;
	z-index:100;
	margin-left:auto;
	margin-right:auto;
	border-bottom: none;
}



header .site {
	width:95%;
	margin-left:auto;
	margin-right:auto;
	padding-top:10px;
	padding-bottom:10px;

}



}


/* 960px以上 1199px 未満*/
@media (max-width: 1199px) and (min-width: 960px) {


header .site {
	width:95%;

}

}

/*PC用 1281px以上 */
@media (min-width: 1281px) {

}


/*  印刷用 */
@media print {

header .site {width: 100%;max-width:100%;}

}



/*==============================================================
右上部ナビ
==============================================================*/


nav.header-info {

}

nav.header-info ul.h-snav{
	display:flex;
	align-items:center;
	justify-content:space-between;
	font-size:0.8em;
/*	border-right:#ccc solid 1px; */

}

nav.header-info ul.h-snav li{
/*	border-left:#ccc solid 1px; */
	padding-right: 10px;
	padding-left: 10px;
	padding-top: 0px;
	padding-bottom: 0px;

}


nav.header-info ul.h-snav li a{
	position:relative;
	color:#333;
	text-decoration:none;
	display:block;
	padding-left:8px;

}

nav.header-info ul.h-snav li a:before{
	position:absolute;
  font-family: FontAwesome;

  content: '\f105';
  font-size:0.7em;
  color:#333;

	top:20%;
	left:0px;
  
}

nav.header-info ul.h-snav li a:hover{
	text-decoration:underline;
}



/*==============================================================
グローバルナビ
==============================================================*/

.gnav-wrapper {
	width:100%;

  margin-left:auto;
  margin-right:auto;
  overflow:hidden;
  background:rgba(164,67,173,0.7);

  
}

#gnav > ul {
  display: flex;
  width:100%;
  max-width:1200px;
  margin-top:10px;
  margin-bottom:10px;
  margin-left:auto;
  margin-right:auto;
  justify-content:space-between;
  border-right: rgba(255,255,255,0.5) solid 1px;
}


#gnav > ul > li {
	display:flex;
	justify-content:center;
	flex:auto;
	border-left:rgba(255,255,255,0.5) solid 1px;
}


#gnav > ul > li:hover {
  text-decoration:none;
}
#gnav > ul > li:hover > a {

}


#gnav > ul > li:hover .menu {
  max-height: 9999px;
  opacity: 1;
}


#gnav > ul > li > a {
  position: relative;
  display:block;

  padding: 5px 1em 5px;
  transition: all .2s ease-in;
  text-decoration:none;
  color: #fff;
  text-align:center;
  font-size:1em;
}

#gnav > ul > li > a::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  -webkit-transform: scaleX(0);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
  background-color: rgba(255,255,255,1);
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}
#gnav > ul > li > a:hover::after {
  -webkit-transform: scaleX(1);
  -ms-transform: scaleX(1);
  transform: scaleX(1);
}


#gnav > ul .menu {
  transition: all .2s ease-in;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  width: 100%;
  left: 0;

  position: absolute;
  background-color: #fff;
/*  border-bottom:#ccc solid 1px; */
  box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.2); 
}
#gnav > ul .menu .menu_inner {
  padding: 1em 0;
}
#gnav > ul .menu .menu_inner li {
  display: inline-block;
  margin: 0 .5em;
}
#gnav > ul .menu > a {
  color: #000;
}


/**/

.mm-inner {
  display: flex;
  flex-wrap:no-wrap;
  justify-content:space-between;
  width:100%;
  max-width:1200px;
   margin-left:auto;
  margin-right:auto;
  margin-top:10px;
}

/**/

.mm-inner .title{
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	justify-content: flex-start;
	align-content:center;
	width: 20%;
	background: #F6F6F6;

	padding-right: 20px;
	padding-left: 20px;
}

.mm-inner .title .t-main{
	font-size:1.2em;
	color:#000;
	font-weight:normal;
	letter-spacing:0.1em;
	margin-bottom:20px;
}

.mm-inner .title a.btn{
	display:block;
	width:100%;
	text-align:center;
	padding:0.3em 0.6em;
	font-size:0.9em;
	text-decoration:none;
	color:#fff;
	background:#a443ad;
	font-weight:normal;
	letter-spacing:0.05em;
}

.mm-inner .title a.btn:hover{
	background:#7a2f82;	
  	transition:all .3s;
}

/**/




.mm-inner .main{
	width: 80%;
	background: #fff;
	padding-top: 20px;
	padding-bottom:20px;
	padding-left:20px;
	padding-right:10px;
}


.mm-inner .main .main-list{
	display:flex;
	justify-content:flex-start;
	flex-wrap:no-wrap;
	width:100%;
}

.mm-inner .main .main-list li{
	flex-basis:25%;
	margin-right:15px;
	text-align:center;
	line-height:1.3;
}

.mm-inner .main .main-list li:last-child{
	margin-right:0px;	
}

.mm-inner .main .main-list li:last-child{margin-right:0px;}

.mm-inner .main .main-list li a{
	text-decoration:none;
	color:#a443ad;
}

.mm-inner .main .main-list li a img.pic{
	display:block;
	width:100%;
	height:auto;
	margin-bottom:10px;
}

.mm-inner .main .main-list li a:hover img.pic{
  opacity:0.75;
  transition:all .3s;
}

.mm-inner .main .main-list li a .list-title{
	font-size:0.9em;

}

.mm-inner .main .main-list li a .list-title:before{
  font-family: FontAwesome;
  content: '\f105';
  font-size:0.8em;
  margin-right:5px;
}



/**/

/* SP用　599px以下: デフォルト */
@media (max-width: 599px) {

.gnav-wrapper {
	display:none!Important;
}


}
	
/*タブレット用 600px以上 959 未満*/
@media (max-width: 959px) and (min-width: 600px) {


#gnav > ul {
  display: flex;
  flex-wrap:wrap;
  width:100%;
  max-width:100%;
  margin-top:0px;
  margin-bottom:0px;
  margin-left:auto;
  margin-right:auto;
  justify-content:space-between;
  border-right: rgba(255,255,255,0.5) solid 1px;
}


#gnav > ul > li {
	flex-basis:33.333%;
	display:flex;
  padding: 5px 5px;
	justify-content:center;
	border-left:rgba(255,255,255,0.5) solid 1px;
	border-bottom:rgba(255,255,255,0.5) solid 1px;
}


#gnav > ul > li > a {
  position: relative;
  display:block;

  padding: 3px 3px;
  transition: all .2s ease-in;
  text-decoration:none;
  color: #fff;
  text-align:center;
  font-size:0.9em;
}





 }

 /* 960px以上 1199px 未満*/
@media (max-width: 1199px) and (min-width: 960px) {


#gnav > ul {
  display: flex;
  width:100%;
  max-width:1200px;
  margin-top:10px;
  margin-bottom:10px;
  margin-left:auto;
  margin-right:auto;
  justify-content:space-between;
  border-right: rgba(255,255,255,0.5) solid 1px;
}




#gnav > ul > li > a {
  position: relative;
  display:block;

  padding: 5px 1em 5px;
  transition: all .2s ease-in;
  text-decoration:none;
  color: #fff;
  text-align:center;
  font-size:0.9em;
}



/**/



}

/*PC用 1281px以上 */
@media (min-width: 1281px) {
	
}

/*  印刷用 */
@media print { 
#gnav > ul {width: 100%;max-width:100%;}
.mm-inner {width: 100%;max-width:100%;}

}


/*==============================================================
ヘッダー固定
==============================================================*/



/*header .fixbar {display:none;}*/
 
/* スクロールするとheaderに.fixedが付与 */

header.fixed {
  position: fixed;
  top: 0px;
	width:100%;
	background:#fff;
	z-index:99999;
	box-shadow: 0px 2px 5px rgba(0,0,0,0.2);

}


/**/

header.fixed .header-inner {
	width:100%;
	background:#fff;
	border-bottom: none;
}


header.fixed .site {
	padding-top:0px;
	padding-bottom:0px;
}


/**/

header.fixed .header-logo {
	display:none;
}


header.fixed .header-title {
	display:none;
}


.fix-logo {

	margin-top:-100px;
	float:left;
	opacity:0;
  	transition:all .3s;
	-webkit-transition:all .3s;
}


header.fixed .fix-logo {
	margin-top:5px;
	margin-bottom:5px;
	opacity:100;
  	transition:all .3s;
	-webkit-transition:all .3s;
}



/*右上部ナビ*/

header.fixed nav.header-info { display:none;}

/**/

header.fixed .gnav-inner {
	width:100%;
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
}




header.fixed #gnav > ul {
	float:right;
  width:85%;
  margin-top:10px;
  margin-bottom:10px;
  	transition:all .3s;
	-webkit-transition:all .3s;

}


header.fixed  #gnav > ul > li > a {

  padding: 3px 1em 3px;
    font-size:0.8em;
	letter-spacing:0.1em;
  	transition:all .3s;
	-webkit-transition:all .3s;

}

/*カレント表示*/
body.project nav#gnav > ul > li.project > a{	font-weight:bold;	color:#a443ad;}
body.business nav#gnav > ul > li.business > a{	font-weight:bold;	color:#a443ad;}
body.company nav#gnav > ul > li.company > a{	font-weight:bold;	color:#a443ad;}
body.recruit nav#gnav > ul > li.recruit > a{	font-weight:bold;	color:#a443ad;}



/*タブレット用 600px以上 959 未満*/
@media (max-width: 959px) and (min-width: 600px) {

header.fixed  {
	display:none;
}

header.fixed .fix-logo {
	display:none;
}

header.fixed #gnav > ul {
	float:right;
  width:100%;
  margin-top:10px;
  margin-bottom:10px;
  	transition:all .3s;
	-webkit-transition:all .3s;
}


}

 /* 960px以上 1199px 未満*/
@media (max-width: 1199px) and (min-width: 960px) {

header.fixed .fix-logo {
	display:none;
}

header.fixed #gnav > ul {
	float:right;
  width:100%;
  margin-top:10px;
  margin-bottom:10px;
  	transition:all .3s;
	-webkit-transition:all .3s;
}


}

/*PC用 1281px以上 */
@media (min-width: 1281px) {
	
}


/*  印刷用 */
@media print { 
/* header.fixed {display: none;} */
header.fixed {display: none;}
header.fixed .gnav-inner {width:100%;max-width:100%;}
}

	
	
/*==============================================================
コンテンツ
==============================================================*/


.wrapper {
	width: 100%;
	text-align: left;
	position: relative;
	z-index:1;
	clear:both;
	margin-bottom:0px;
	background:#fff;
	box-shadow: 0px 2px 5px rgba(0,0,0,0.2) inset;

}

.wrap-toppage {
	margin-top:-200px;
	padding-bottom:0px;
}

.content {
	position:relative;
	width: 100%;
	max-width: 1200px;
	margin-left:auto;
	margin-right:auto;

}

.cnt-top {
	margin-top:70px;
}

.content p{
	font-size:1em;
	line-height:1.8;
	margin-bottom:1.5em;	

}



.content-main {
	float:left;
	width: 80%;
	border-right:#ddd solid 1px;
	padding-top:50px;
	padding-bottom:80px;
	padding-right:80px;

}

.content-main p{
	margin-bottom:1.5em;

}


.content-menu {
	position:relative;
	float:right;
	width: 210px; 
/* 	width: 20%; */
	padding-bottom:50px;
	padding-top:30px;



}


/* article */

article {

	margin-top:80px;
	margin-bottom:80px;
}

article p {
	margin-bottom:1.5em;
}

.content-main article {
	margin-top:0px;
	margin-bottom:50px;
}


.contants-text {
	width:86.5%;
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
}
/* .content article + article{
	margin-top:50px;
}
*/




/* Youtube */

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}




/* SP用　599px以下: デフォルト */
@media (max-width: 599px) {


.wrapper {
	width: 100%;
	text-align: left;
	position: relative;
	z-index:1;
}

.wrap-toppage {
	margin-top:0px;
	padding-bottom:0px;
}

.content {
	width: 95%;
	margin-left:auto;
	margin-right:auto;

}

.cnt-top {
	margin-top:20px;
}

.content-main {
	float: none;
	width: 100%;
	margin-left:auto;
	margin-right:auto;
	border-right: none;
	padding-top:30px;
	padding-bottom:20px;
	padding-right:0px;
	padding-left:0px;

}

.content-main p{
	margin-bottom:1.5em;

}


.content-menu {
	float: none;
	width: 100%;
	padding-bottom:0px;
	padding-left:0px;
	padding-top:0px;

}


/* article */

article {
	margin-top:40px;
	margin-bottom:40px;
}

article p {
	margin-bottom:1.5em;
}


.content-main article {
	margin-top:0px;
	margin-bottom:25px;
}

.contants-text {
	width:85%;
	max-width:100%;
	margin-left:auto;
	margin-right:auto;
}

/* Youtube */

ul.top-youtube-list {
	margin-left:1em;
}

ul.top-youtube-list li{
	float: none;
	width:100%;
	margin-left:0%;
	margin-bottom:15px;
}

ul.top-youtube-list li:last-child{
	margin-bottom:0px;
}

}



/*タブレット用 600px以上 959 未満*/
@media (max-width: 959px) and (min-width: 600px) {

.wrapper {	width:100%;}

.cnt-top {
	margin-top:0px;
}



.wrap-toppage {
	margin-top:0px;
	padding-bottom:0px;
}

.content {
	width: 98%;
	margin-left:auto;
	margin-right:auto;

}

.content-main {
	float:left;
	width: 80%;
	border-right:#ddd solid 1px;
	padding-top:50px;
	padding-bottom:50px;
	padding-right:30px;

}

.content-main p{
	margin-bottom:1.5em;

}


.content-menu {
	float:right;
	width: 20%;
	padding-left:10px;
	padding-top:0px;
}



.contants-text {
	width:85%;
	max-width:100%;
	margin-left:auto;
	margin-right:auto;
}



}



/* 960px以上 1199px 未満*/
@media (max-width: 1199px) and (min-width: 960px) {

.content {
	width: 98%;
	margin-left:auto;
	margin-right:auto;

}

.content-main {
	float:left;
	width: 80%;
	border-right:#ddd solid 1px;
	padding-top:50px;
	padding-bottom:80px;
	padding-right:30px;

}

.content-main p{
	margin-bottom:1.5em;

}


.content-menu {
	float:right;
	width: 20%;
	padding-left:10px;
	padding-top:0px;
}


.contants-text {
	width:90%;
	max-width:100%;
	margin-left:auto;
	margin-right:auto;
}

}


/*PC用 1281px以上 */
@media (min-width: 1281px) {



}



/*  印刷用 */
@media print { 
.content{width:100%;max-width:100%;}
.content-main {width:100%;max-width:100%;}
.contants-text {width:100%;max-width:100%;}

}


/*==============================================================
主なプロジェクト
==============================================================*/


.major-project {
	background:#F1F1F1;
	padding-top:50px;
	padding-bottom:50px;
}


.major-project h2{
	color:#333;
	font-weight:bold;
	font-size:1.3em;
	text-align:center;
	
	margin-bottom:50px;
}

.major-project ul{
	display:flex;
	justify-content:space-between;
	flex-wrap:no-wrap;
	width:100%;
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
	
}

.major-project ul li {
	position:relative;
	flex-basis:23%;
		overflow:hidden;

}


.major-project ul li a{
	display:block;
/*	background:#000; */
}


.major-project ul li .bnr-pic{
	width:100%;
	height:auto;

	    -moz-transition: -moz-transform 0.3s linear;
    -webkit-transition: -webkit-transform 0.3s linear;
    -o-transition: -o-transform 0.3s linear;
    -ms-transition: -ms-transform 0.3s linear;
    transition: all 0.3s linear;
	
/*	opacity:0.4; */


}



.major-project ul li .bnr-pic:hover{
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);

    transition: all 0.3s linear;	
/*	opacity:0.8; */
}


.major-project ul li p{
	position:relative;
	background:#F1F1F1;
	z-index:2;
	text-align:center;
	padding:0.5em 1em;
	font-size:0.9em;
	line-height:1.6em;
	margin-bottom:0!Important;
}



@media (max-width: 599px) {
/* SP用　599px以下: デフォルト */

.major-project {
	background:#F1F1F1;
	padding-top:30px;
	padding-bottom:20px;
}

.major-project h2{
	color:#333;
	font-weight:bold;
	font-size:1.3em;
	text-align:center;
	
	margin-bottom:20px;
}

.major-project ul{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	width:90%;
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
	
}

.major-project ul li {
	position:relative;
	flex-basis:48%;
		overflow:hidden;
		margin-top:20px;

}

}

/*タブレット用 600px以上 959 未満*/
@media (max-width: 959px) and (min-width: 600px) {


.major-project ul{
	width:95%;
	font-size:0.9em;
}


}


/* 960px以上 1199px 未満*/
@media (max-width: 1199px) and (min-width: 960px) {

.major-project ul{
	width:95%;
	font-size:0.9em;
}

}



/*PC用 1281px以上 */
@media (min-width: 1281px) {
	
}


/*==============================================================
タイトル
==============================================================*/


.title-main {
	width:100%;
	border-bottom:#ddd solid 1px;
}

.title-main ul {
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
	display:flex;
	flex-wrap:no-wrap;
	align-items: stretch;
	height:160px;

}

.title-main ul li {

		align-items:center;
}

.title-main ul li.main {
	display:flex;
	align-items:center;
	width:80%;
	border-right:#ddd solid 1px;
}

.title-main ul li.s-main {
	display:flex;
	justify-content:center;
	width:20%;
	text-align:center;
	background:#a443ad;

}

.title-main ul li.main h1  {
	font-size:2em;
	color:#000;
	letter-spacing:0.02em;
	font-weight:normal;
	line-height:1.5;
}


.title-main ul li.main-single  {
	width:100%;
	text-align:left;
}


.title-main ul li.main-single h1  {
	margin-top:2em;
	font-size:2em;
	letter-spacing:0.02em;
	font-weight:normal;

/*
	font-size:2.5em;
	font-family: "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 300;
	color:#590606;
	letter-spacing:0.02em;
	margin-top:1.5em;
*/
}




.title-main ul h2 {
	display:block;
	font-size:1.5em;
	letter-spacing:0.1em;
	font-style:normal;
	font-weight:normal;
	align-self:center;
}

.title-main ul h2 span{
}

.title-main ul a {
	position:relative;
	text-decoration: none;
	color:#fff;
}

.title-main ul a:hover {
	border-bottom:#fff solid 1px;
	text-decoration: none;
	color:#fff;
}


/*
.title-main ul h2 a:before{
  font-family: FontAwesome;
  position: absolute;
  content: '\f138';
  color:rgba(51,0,0,1.00);
  font-size:0.5em;
 
  top:10px;
  left:-25px;
}
*/


/* メインコンテンツ */


.content h1{
	font-size:1.9em;
	letter-spacing:0.1em;
	font-weight:bold;
	margin-bottom:50px;
	text-align:center;
}



/*body.example_list .content h1{	margin-top:100px;} */



article h1{
	display:block;
	font-size:2em;
	letter-spacing:0.1em;
	line-height:1.3;
	font-weight:bold;
	margin-bottom:30px;
	color:#a443ad;

}

article h1 br{
	display: none;
}


article h2{
	display:block;
	font-size:1.6em;
	letter-spacing:0.05em;
	font-weight:bold;
	margin-bottom:20px;
	color:#111;
	line-height: 1.5;

}

article h3{
	display:block;
	font-size:1.6em;
	letter-spacing:0.05em;
	font-weight:bold;
	margin-bottom:20px;
	color:#111;
	line-height: 1.5;
}

.h-number {
	font-weight: normal;
	color:#999;
	font-family: 'Orbitron', sans-serif;
	font-size:2.5em;
	padding-right:10px;
	
}



.lead-text {
	width:75%;
	margin-left:auto;
	margin-right:auto;
	text-align:center;
}


.title-root {
	text-align:center;
	margin-bottom:30px;
	font-size:1.2em;

}

.title-root strong{
	font-weight:normal;
	letter-spacing:0.1em;
	border-bottom:#a443ad solid 2px;
	padding-bottom:5px;
}




/*2カラム*/



.content-main h3{
	font-weight:bold;
	color:#333;
	font-size:1.4em;
	margin-bottom:30px;
	border-left:#a443ad solid 3px;
	padding-left:15px;
	padding-top:10px;
	padding-bottom:10px;
}




@media (max-width: 599px) {
/* SP用　599px以下: デフォルト */


.content h1{
	font-size:1.9em;
	letter-spacing:0.1em;
	font-weight:bold;
	margin-bottom:30px;
	text-align:center;
}




article h1{
	display:block;
	font-size:1.5em;
	letter-spacing:0em;
	font-weight:bold;
	text-align:center;
	margin-bottom:30px;
	color:#a443ad;

}
	
article h1 br{
	display: block;
}


article h2{
	display:block;
	font-size:1.3em;
	letter-spacing:0.05em;
	font-weight:bold;
	margin-bottom:20px;
	color:#111;
	line-height: 1.3;
	text-align: center;

}
	
article h3{
	display:block;
	font-size:1.3em;
	letter-spacing:0.05em;
	font-weight:bold;
	margin-bottom:20px;
	color:#111;
	line-height: 1.3;
	text-align: left;
}
	
.h-number {
	font-weight: normal;
	color:#999;
	font-family: 'Orbitron', sans-serif;
	font-size:2em;
	padding-right:5px;
	
}	
	



.lead-text {
	width:90%;
	margin-left:auto;
	margin-right:auto;
}


/**/

.title-main {
	position:relative;
	width:100%;
	border-bottom:#ddd solid 1px;
}

.title-main ul {
	max-width:95%;
	margin-left:auto;
	margin-right:auto;
	display:flex;
	flex-direction:column-reverse;
	flex-wrap:no-wrap;
	align-items: stretch;
	height:auto;
}

.title-main ul li {
	padding-top:0;
	align-items:left;
}



.title-main ul li.main {
	width:100%;
	justify-content:center;
	border-right: none;
	text-align:center;
	padding-top:20px;
	padding-bottom:20px;
}

.title-main ul li.s-main {
	width:100%;
	padding-top:20px;
	padding-left:0px;
	text-align:center;
	background:#fff;
	text-align:left;
}

.title-main ul li.main-single  {
	width:100%;
	text-align:center;
}

.title-main ul li.main-single h1  {
	font-size:2em;
	font-family: "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 300;
	color:#590606;
	letter-spacing:0.02em;
	margin-bottom:30px;
	margin-top:30px;
}


.title-main ul h2 {
	font-size:1.2em;
	font-weight:normal;
}

.title-main ul a {
	position:relative;
	text-decoration: underline;
	color:#a443ad;
}


/*
.title-main ul h2 a:before{
  font-family: FontAwesome;
  position: absolute;
  content: '\f138';
  color:rgba(51,0,0,1.00);
  font-size:0.5em;
 
  top:10px;
  left:-15px;
}
*/

/*2カラム*/

.content-main h3{
	font-weight:bold;
	color:#333;
	font-size:1.4em;
	margin-bottom:15px;
	border-left:#a443ad solid 3px;
	padding-left:15px;
	padding-top:6px;
	padding-bottom:6px;
}




}

/*タブレット用 600px以上 959 未満*/
@media (max-width: 959px) and (min-width: 600px) {

.title-main ul {
	width:98%;
	margin-left:auto;
	margin-right:auto;
	height:120px;
}


.title-main ul li.main {
	width:80%;
	border-right:#ddd solid 1px;
}

.title-main ul li.s-main {
	width:20%;
	text-align:center;
}

.title-main ul h2 {
	font-size:0.8em;
	font-weight:normal;
}

.title-main ul h2 i{
	display:block;
	padding-bottom:5px;
	font-style:normal;
}

.title-main ul h2 span{
	font-size:1.7em;
}



}


/* 960px以上 1199px 未満*/
@media (max-width: 1199px) and (min-width: 960px) {

.title-main ul {
	width:98%;
	margin-left:auto;
	margin-right:auto;
}


.title-main ul li.main {
	width:80%;
	border-right:#ddd solid 1px;
}

.title-main ul li.s-main {
	width:20%;
	text-align:center;
}

}



/*PC用 1281px以上 */
@media (min-width: 1281px) {
	
}


/*==============================================================
ローカルナビゲーション
==============================================================*/

nav.local_navigation {
	margin-top:0px;
	margin-left:0px;
	background:rgba(255,255,255,1);

	/* jQueryで横幅取得 */
}

/* SPのみ表示 */
.sp-fmenu {
	display:none;
}


nav.local_navigation ul {
}

nav.local_navigation ul li {
	border-bottom:#ddd solid 1px;
}

nav.local_navigation ul li a{
	position:relative;
	display: block;
	line-height:1;
	text-decoration:none;
	color:#000;
	padding-top:20px;
	padding-bottom:20px;
	padding-left:25px;
	line-height:1.3;
}

nav.local_navigation ul li a:hover{
	text-decoration: underline;
	color:#a443ad;
}

nav.local_navigation ul li a:before{
	position:absolute;
	top:35%;
	left:5px;
	font-family: FontAwesome;
	content: '\f138';
	color:#a443ad;
	font-size:0.9em;
	text-decoration:none;

}

/**/

nav.local_navigation ul li a.title{
	pointer-events: none;
	color:#fff;
	background:#a443ad;
	padding-top:10px;
	padding-bottom:10px;
	padding-left:10px;
}

nav.local_navigation ul li a.title:before{
content: '';
}


/* ローカルナビ開閉 PCはオフ */

label.ln-label {
	display: none;
}

input#menu_bar01 {
	display: none;
}

input#menu_bar02 {
	display: none;
}


/* カレント表示 */
body.ln01 nav.local_navigation ul li.ln01 a{padding-left:0px;font-weight:bold;color:#a443ad;}
body.ln01 nav.local_navigation ul li.ln01 a:before{content: '';}

body.ln02 nav.local_navigation ul li.ln02 a{padding-left:0px;font-weight:bold;color:#a443ad;}
body.ln02 nav.local_navigation ul li.ln02 a:before{content: '';}

body.ln03 nav.local_navigation ul li.ln03 a{padding-left:0px;font-weight:bold;color:#a443ad;}
body.ln03 nav.local_navigation ul li.ln03 a:before{content: '';}

body.ln04 nav.local_navigation ul li.ln04 a{padding-left:0px;font-weight:bold;color:#a443ad;}
body.ln04 nav.local_navigation ul li.ln04 a:before{content: '';}

body.ln05 nav.local_navigation ul li.ln05 a{padding-left:0px;font-weight:bold;color:#a443ad;}
body.ln05 nav.local_navigation ul li.ln05 a:before{content: '';}



/* スクロールしたら固定 */
nav.fixed-menu {
  position: fixed;
  top: 20px;
  width:200px;
  
}





@media (max-width: 599px) {
/* SP用　599px以下: デフォルト */

nav.local_navigation {
	margin-top:0px;
	margin-left:0px;
	width:100%;
}

nav.local_navigation ul li a{
	position:relative;
	display: block;
	line-height:1;
	text-decoration:none;
	color:#000;
	padding-top:15px;
	padding-bottom:15px;
	padding-left:25px;
	line-height:1.3;
}

/* SPのみ表示 */
.sp-fmenu {
	display:block;
	margin-bottom:50px;
}



/* ローカルナビ開閉 */


label.ln-label {
	position:relative;
  display: block;
  margin: 0 0 2px 0;
	padding :12px;
  line-height: 1;
	color :#fff;
  background: #a443ad;
	cursor :pointer;
}


label.ln-label:after{
  position: absolute;
  top: 50%;
  right: 15px;
  display: block;
  margin-top: -5px;
  width: 12px;
  height: 12px;
  content:'\f078';
  font-family: FontAwesome;
  color:#fff;
}





#menu_bar01:checked + label:after{
  position: absolute;
  top: 50%;
  right: 15px;
  display: block;
  margin-top: -5px;
  width: 12px;
  height: 12px;
  content:'\f077';
  font-family: FontAwesome;
  color:#fff;
}

input#menu_bar01 {
	display: none;
}

#menu_bar02:checked + label:after{
  position: absolute;
  top: 50%;
  right: 15px;
  display: block;
  margin-top: -5px;
  width: 12px;
  height: 12px;
  content:'\f077';
  font-family: FontAwesome;
  color:#fff;
}

input#menu_bar02 {
	display: none;
}

nav.local_navigation ul {
}

nav.local_navigation ul li {
  max-height: 0;
  overflow-y: hidden;
 
 	border-bottom: none;
 
  -webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}

#menu_bar01:checked ~ #links01 li,
#menu_bar02:checked ~ #links02 li {
	max-height: 46px;
  opacity: 1;
  border-bottom:#ddd solid 1px;
}





}

/*タブレット用 600px以上 959 未満*/
@media (max-width: 959px) and (min-width: 600px) {

nav.local_navigation {
	margin-top:20px;
	margin-left:0px;

}

nav.local_navigation ul li a{
	font-size:0.8em;
}


}


/* 960px以上 1199px 未満*/
@media (max-width: 1199px) and (min-width: 960px) {

nav.local_navigation {
	margin-top:20px;
	margin-left:0px;

}

nav.local_navigation ul li a{
	font-size:0.8em;
}


}


/*PC用 1281px以上 */
@media (min-width: 1281px) {
	
}



/*==============================================================
ページ内ナビ
==============================================================*/

.content-nav {
	position:relative;
	margin-top:-50px;
	margin-bottom:50px;
}

.content-nav ul {
	display:flex;
	flex-wrap: no-wrap;
	justify-content:space-between;
}

.content-nav ul li {
	flex:1;
	align-self: stretch;
	text-align:center;
	border-right:rgba(255,255,255,0.5) solid 1px;

}

.content-nav ul li:last-child {
	border-right: none;
}



.content-nav ul li a {
	display: block;
	height:100%;

	background:#F1F1F1;
	padding-top: 10px;
	padding-right: 5px;
	padding-left: 5px;
	padding-bottom: 10px;
	text-decoration: none;
	color:#111;
	font-size:1em;
}

.content-nav ul li:last-child a  {
}


.content-nav ul li a:hover {
	color:#fff;
	background:#666;
	text-decoration: none;

}


.content-nav ul li a:after {
	content:'\f107';
	font-family: FontAwesome;
	margin-left:10px;
}


body.cn-01 .content-nav ul li.cn-01 a {	background:rgba(108,0,0,1.00);}
body.cn-01 .content-nav ul li.cn-01 a:after  {	content:'';}

body.cn-02 .content-nav ul li.cn-02 a {background:rgba(108,0,0,1.00);}
body.cn-02 .content-nav ul li.cn-02 a:after  {	content:'';}


@media (max-width: 599px) {
/* SP用　599px以下: デフォルト */

.content-nav {
	margin-top:0px;
	margin-bottom:30px;
}

.content-nav ul {
	display:flex;
	flex-wrap: wrap;

}

.content-nav ul li {
	flex-basis:33%;
	align-self: center;
	text-align:center;
	border-bottom:rgba(255,255,255,0.5) solid 1px;


}


}

/*タブレット用 600px以上 959 未満*/
@media (max-width: 959px) and (min-width: 600px) {


.content-nav {
	margin-top:0px;
	margin-bottom:30px;
}

.content-nav ul {
	display:flex;
	flex-wrap: wrap;

}

.content-nav ul li {
	flex-basis:33%;
	align-self: center;
	text-align:center;
	border-bottom:rgba(255,255,255,0.5) solid 1px;


}


 }

 /* 960px以上 1199px 未満*/
@media (max-width: 1199px) and (min-width: 960px) {

}


/*PC用 1281px以上 */
@media (min-width: 1281px) {
	
}


/*==============================================================
フッター
==============================================================*/

.footer-wrapper {
	width: 100%;
	background: #fff;
	border-top:#a443ad solid 1px;
/*	position: relative;
	z-index:1;
*/
}


/* footter */


footer {
	display:flex;
	width:100%;
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
	margin-top:30px;
	margin-bottom:30px;
}


footer .item1{
	flex-basis:35%;
	border-right:#ccc solid 1px;
	margin-right:30px;
	padding-right:30px;
}

footer .item2{
	flex-basis:65%;
}

footer .item1 .mitsui-logo {
	margin-bottom:15px;
	text-align:center;
}

footer .item1 a.jci-logo {
	display:block;
	background:#F2F2F2;
	text-align:center;
	padding:10px;
	text-decoration:none;
	transition: all 0.3;
}

footer .item1 a.jci-logo:hover {
	background:#DFDFDF;
}

footer .item1 a.jci-logo img{
	vertical-align:middle;
	margin-right:5px;

}


.footer-guide-box {
	background:#F2F2F2;
	padding:20px;

}


.txt-caution {
	color:rgba(255,0,4,1.00);
}

.table-practice-time {
}

.table-practice-time th{
	padding-right:15px;
	vertical-align:top;
	
}

.table-practice-time td{
}

.line-period {
	border-top:#ccc solid 1px;
	margin-top:15px;
	margin-bottom:15px;
	padding-top:20px;
}


/**/
.practice-time {
	display:flex;
	margin-bottom:20px;

}

.practice-time .free-dial {
	background:#fff;
	margin-right:20px;
	padding:5px 15px;
}

.practice-time .free-dial .title{
	display:block;
	margin-bottom:5px;
}

.practice-time .free-dial .icon{
	vertical-align:middle;
	margin-right:10px;
	line-height:0;
	vertical-align: bottom;

}

.practice-time .free-dial .number{
	font-size:1.7em;
	font-family:Arial, Helvetica, sans-serif;
	line-height:1;
}


/**/

a.btn-mitusi-hosp {
	display:block;
	background:rgba(16,47,132,1.00);
	color:#fff;
	text-align:center;
	text-decoration:none;
	padding:5px 10px;
	transition: all 0.3;
}

a.btn-mitusi-hosp:hover {
	background:rgba(10,30,84,1.00);
}


/**/

small {
	clear:both;
	display:block;
	text-align: center;
	font-size:0.7em;
	font-family: "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: rgba(255,255,255,0.7);
	background:rgba(0,0,0,0.8);
	padding:0.4em 0.4em;

}




@media (max-width: 599px) {
/* SP用　599px以下: デフォルト */

.footer-wrapper {
	width:100%;
/*	position: relative;
	z-index:1;
*/
}


footer {
	display:flex;
	flex-wrap:wrap;
	width:95%;
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
	margin-top:20px;
	margin-bottom:20px;
}

footer .item1 .mitsui-logo {
	margin-bottom:15px;
	text-align:center;
	width:100px;
	margin-left:auto;
	margin-right:auto;
}

footer .item1{
	flex-basis:100%;
	border-right: none;
	margin-right:0px;
	padding-right:0px;
	text-align:center;
}

footer .item2{
	flex-basis:100%;
	margin-top:20px;
}


/**/

.table-practice-time {
}

.table-practice-time th{
	display:block;
	width:100%;
	padding-right:15px;
	vertical-align:top;
	text-align:left;
	
}

.table-practice-time td{
	display:block;
	width:100%;
}

/**/

.practice-time {
	display:flex;
	flex-wrap:wrap;
	margin-bottom:20px;

}

.practice-time .free-dial {
	flex-basis:100%;
	background:#fff;
	text-align:center;
	margin-right:0px;
	margin-bottom:10px;
	padding:5px 15px;
}



}

/*タブレット用 600px以上 959 未満*/
@media (max-width: 959px) and (min-width: 600px) {

.footer-wrapper {
	width:100%;
/*	position: relative;
	z-index:1;
*/
}


footer {
	display:flex;
	width:95%;
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
	margin-top:20px;
	margin-bottom:20px;
}


footer .item1{
	flex-basis:35%;
	border-right:#ccc solid 1px;
	margin-right:15px;
	padding-right:15px;
}

footer .item2{
	flex-basis:65%;
}


/**/

.practice-time {
	display:flex;
	flex-wrap:wrap;
	margin-bottom:20px;

}

.practice-time .free-dial {
	flex-basis:100%;
	background:#fff;
	text-align:center;
	margin-right:0px;
	margin-bottom:10px;
	padding:5px 15px;
}

}



/* 960px以上 1199px 未満*/
@media (max-width: 1199px) and (min-width: 960px) {

.footer-wrapper {
	width:100%;
/*	position: relative;
	z-index:1;
*/
}


footer {
	display:flex;
	width:95%;
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
	margin-top:20px;
	margin-bottom:20px;
}


/**/

/**/

.practice-time {
	display:flex;
	flex-wrap:wrap;
	margin-bottom:20px;

}

.practice-time .free-dial {
	flex-basis:100%;
	background:#fff;
	text-align:center;
	margin-right:0px;
	margin-bottom:10px;
	padding:5px 15px;
}


}

/*PC用 1281px以上 */
@media (min-width: 1281px) {
	
}


/*  印刷用 */
@media print { 
footer {width:100%;max-width:100%;}
}



/*==============================================================
トップに戻る
==============================================================*/

.pageTop {
	position:fixed;
	display: block;
	bottom:20px;
	right:20px;
	z-index:10000;

	}

/*
* html .pageTop {
	display: none;
	float: right;
	}
	
*/


@media (max-width: 599px) {
/* SP用　599px以下: デフォルト */
	
.pageTop {
	position:fixed;
	bottom:10px;
	right:10px;
	z-index:10000;
	text-align:right;
	}

.pageTop img{ width:80%;}


* html .pageTop {
	display: none;
	float: right;
	}

}



/*==============================================================
ぱんくず
==============================================================*/
#breadlist {
	font-size: 0.8em;
	background:#F1F1F1;
	color:#333;
	clear: both;
	margin-bottom:0px;
	margin-top:0px;
	width: 100%;
	
	box-shadow:0 3px 3px rgba(0,0,0,0.1) inset;


}

#breadlist ul {
	display:flex;
	flex-wrap:wrap;
	max-width:1200px;
	margin-right: auto;
	margin-left: auto;
	padding-top:10px;
	padding-bottom:10px;
}


#breadlist ul li{
}

#breadlist ul li:first-child:before{
	font-family: FontAwesome;
  content: '\f015';
  margin-left:px;
  margin-right:5px;
  font-size:1em;
  color:rgba(0,0,0,0.5);
}

#breadlist ul li:after{
  font-family: FontAwesome;
  content: '\f105';
  margin-left:10px;
  margin-right:10px;

}

#breadlist ul li:last-child:after{
  content:'';
  margin-left:10px;
  margin-right:0px;
}


#breadlist ul li a{
	text-decoration: underline;
/*	background-image: url(../img/body/pointer_bread.gif);
	background-position: right 0.3em;
*/

}

#breadlist ul li a:after{

}


#breadlist a:link {
	color: #333;
}
#breadlist a:visited {
	color: #333;

}
#breadlist a:active {
	color: #333;

}
#breadlist a:hover {
	color: #333;
  text-decoration:none;
}

 
 
 @media (max-width: 599px) {
/* SP用　599px以下: デフォルト */

#breadlist {
	font-size: 0.9em;
	clear: both;
	margin-bottom:0px;
	margin-top:0px;
	width: 100%;


}

#breadlist ul {
	display:flex;
	flex-wrap:wrap;
	max-width:95%;
	margin-right: auto;
	margin-left: auto;
	padding-top:10px;
	padding-bottom:10px;
}



 }
 
 
/*タブレット用 600px以上 959 未満*/
@media (max-width: 959px) and (min-width: 600px) {
#breadlist ul {
	display:flex;
	flex-wrap:wrap;
	max-width:95%;
	margin-right: auto;
	margin-left: auto;
	padding-top:10px;
	padding-bottom:10px;
}
 }
 
 /* 960px以上 1199px 未満*/
@media (max-width: 1199px) and (min-width: 960px) {
#breadlist ul {
	display:flex;
	flex-wrap:wrap;
	max-width:95%;
	margin-right: auto;
	margin-left: auto;
	padding-top:10px;
	padding-bottom:10px;
}

	
}
 
 


/*==============================================================
 PC SP表示の調整
==============================================================*/



.display-only-sp {
	display:none;
}


@media (max-width: 599px) {
/* SP用　599px以下: デフォルト */

.display-only-pc {
	display:none;
}


.display-only-sp {
	display: block;
}




.footer-sp {
	width:90%;
	margin-top:20px;
	margin-left:auto;
	margin-right:auto;
}

}
	
/*タブレット用 600px以上 959 未満*/
@media (max-width: 959px) and (min-width: 600px) {

 }
 
/*PC用 1281px以上 */
@media (min-width: 1281px) {
}



/*==============================================================
1カラム
==============================================================*/

.one-column-wrapper {
	width:80%;
	margin-left:auto;
	margin-right:auto;
	margin-top:50px;
	margin-bottom:50px;
}

body#about .one-column-wrapper {
	margin-top:0px;

}



body.sitemap .one-column-wrapper {
	width:100%;
	margin-left:auto;
	margin-right:auto;
	margin-top:50px;
	margin-bottom:50px;
}


.one-column-wrapper p{
	font-size:1em;
	margin-bottom:1.5em;
	line-height:1.6;

  text-align: justify;
  text-justify: inter-ideograph;

}

#privacy .one-column-wrapper p{

}



/* SP用　599px以下: デフォルト */
@media (max-width: 599px) {

.one-column-wrapper {
	width:100%;
	margin-left:auto;
	margin-right:auto;
	margin-top:30px;
	margin-bottom:30px;
}


}
	
/*タブレット用 600px以上 959 未満*/
@media (max-width: 959px) and (min-width: 600px) {

.one-column-wrapper {
	width:90%;
	margin-left:auto;
	margin-right:auto;
	margin-top:30px;
	margin-bottom:30px;
}


 }

 /* 960px以上 1199px 未満*/
@media (max-width: 1199px) and (min-width: 960px) {

.one-column-wrapper {
	width:80%;
	margin-left:auto;
	margin-right:auto;
	margin-top:30px;
	margin-bottom:30px;
}

}


/*PC用 1281px以上 */
@media (min-width: 1281px) {
	
}
 

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

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


/* SP用　599px以下: デフォルト */
@media (max-width: 599px) {


}
	
/*タブレット用 600px以上 959 未満*/
@media (max-width: 959px) and (min-width: 600px) {

 }

 /* 960px以上 1199px 未満*/
@media (max-width: 1199px) and (min-width: 960px) {
}


/*PC用 1281px以上 */
@media (min-width: 1281px) {
	
}


/*==============================================================
リスト
==============================================================*/

ul.list-type01 {
}

ul.list-type01 li {
	background:url(../img/body/arrow_disc.gif) no-repeat left 0.8em;
	padding-left:0.7em;
	margin-bottom:0.7em;
}

/**/

ul.list-type-fa-01 {
}



ul.list-type-fa-01 li {
	position:relative;
	line-height:1;
	padding-bottom:1em;
	padding-left:13px;
	line-height:1.5;
}

ul.list-type-fa-01 li:last-child {
	padding-bottom:0em;
}

ul.list-type-fa-01 li:before {
	position:absolute;
	top:11%;
	left:0px;
	font-family: FontAwesome;
	content: '\f054';
	font-size:0.8em;
	text-decoration:none;
	color:rgba(0,0,0,0.5);

}

/**/
ul.list-type-fa-02 {
}



ul.list-type-fa-02 li {
	position:relative;
	line-height:1;
	padding-bottom:1em;
	padding-left:15px;
	line-height:1.5;
}

ul.list-type-fa-02 li:last-child {
	padding-bottom:0em;
}

ul.list-type-fa-02 li:before {
	position:absolute;
	top:0.5em;
	left:0px;
	font-family: FontAwesome;
	content: '\f111';
	font-size:0.3em;
	text-decoration:none;
	color:#a443ad;

}

/**/

ul.list-type-fa-03 {
}

ul.list-type-fa-03 li {
	position:relative;
	line-height:1;
	padding-bottom:1em;
	padding-left:22px;
	line-height:1.8;
}

ul.list-type-fa-03 li:last-child {
	padding-bottom:0em;
}

ul.list-type-fa-03 li:before {
	position:absolute;
	top:0;
	left:0px;
	font-family: FontAwesome;
	content: '\f00c';
	font-size:1em;
	text-decoration:none;
	color:#a443ad;

}


/* SP用　599px以下: デフォルト */
@media (max-width: 599px) {
ul.list-type-fa-02 li {
	padding-left:13px;
}

ul.list-type-fa-02 li:before {
	position:absolute;
	top:0.5em;
	left:0px;
	font-size:0.7em;
	text-decoration:none;

}

}


/**/

ol.num-list {

	margin-left:1.5em;
}

ol.num-list li{

	margin-bottom:1em;
}




/*==============================================================
ボタン
==============================================================*/

a.btn-service {
	background: rgba(255,255,255,0.5);
	border: #330000 solid 1px;
	padding-top: 0.3em;
	padding-right: 1.1em;
	padding-left: 1.1em;
	padding-bottom: 0.3em;
	text-decoration: none;
	color: #330000;
	letter-spacing: 0em;
	font-family: "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 300;
	font-size:0.9em;
	

	
	transition:all .3s;
	-webkit-transition:all .3s;

}

a.btn-service:hover {
	background: rgba(255,255,255,0.8);
}






/**/

a.btn-detail {
	display: inline-block;
	line-height:1;
	background:#a443ad;
	padding-top: 0.5em;
	padding-right: 1.5em;
	padding-left: 1.5em;
	padding-bottom: 0.5em;
	color: #fff;
	text-decoration: none;

	text-align: center;
	border-radius:3px;
	/* box-shadow: 2px 2px 5px 2px rgba(0, 0, 0, 0.2); */
	
 	transition: background-color 0.3s;
  	-webkit-transition: background-color 0.3s;
}

a.btn-detail:hover {
	background:#7a2f82;
}

/* a.btn-detail i {vertical-align:-10%;} */



/**/

a.btn-edit {
	display: block;
	padding: 0.5em;
	background: #666666;
	padding-top: 0.5em;
	padding-right: 1em;
	padding-left: 1em;
	padding-bottom: 0.5em;
	color: #fff;
	text-decoration: none;
	margin-left: auto;
	margin-right: auto;
	margin-bottom:12px;
	line-height:1;
	box-shadow: 3px 3px 8px 2px rgba(0, 0, 0, 0.3);
	
 	transition: background-color 0.3s;
  	-webkit-transition: background-color 0.3s;
}

a.btn-edit span{ font-size:0.8em;}

a.btn-edit:after {
/*    content: "\f105";　*/
    content: "\f044";
    font-family: FontAwesome;
	font-size:1.2em;
	margin-left:0.5em;
}


a.btn-edit:hover {
	background:#333;
}


/**/

.btn-w50p {width:50%;}



/*Google map*/

a.gm-link:after {
    content: "\f041";
    font-family: FontAwesome;
	font-size:1.2em;
	margin-left:0.3em;
/*	color:#0066CC!Important; */
}

a.gm-link:hover:after {
	text-decoration:none!Important;
}


/* SNS リンク */

a.fb-link:after {
    content: "\f230";
    font-family: FontAwesome;
	font-size:1.2em;
	margin-left:0.3em;
}

a.tw-link:after {
    content: "\f099";
    font-family: FontAwesome;
	font-size:1.2em;
	margin-left:0.3em;
}

a.is-link:after {
    content: "\f16d";
    font-family: FontAwesome;
	font-size:1.2em;
	margin-left:0.3em;
}




/*==============================================================
回り込み解除
==============================================================*/

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {  clear: both;}
.clearfix {  *zoom: 1;}
.clearfix{	display:block;}


.clearAll{ clear:both}



/*==============================================================
img のリンク　マウスオーバー
==============================================================*/

a.mouseOver:hover img{
  filter: alpha(opacity=75);
  -moz-opacity:0.75;
  opacity:0.75;
}


/*==============================================================
マージン、回り込み
==============================================================*/

.mgnL5 {	margin-left: 5px;}
.mgnL10 {	margin-left: 10px;}
.mgnL15 {	margin-left: 15px;}
.mgnL20 {	margin-left: 20px;}
.mgnL25 {	margin-left: 25px;}
.mgnL30 {	margin-left: 30px;}
.mgnL35 {	margin-left: 35px;}
.mgnL40 {	margin-left: 40px;}
.mgnL45 {	margin-left: 45px;}
.mgnL50 {	margin-left: 50px;}
.mgnL55 {	margin-left: 55px;}
.mgnL60 {	margin-left: 60px;}
.mgnR5 {	margin-right: 5px;}
.mgnR10 {	margin-right: 10px;}
.mgnR15 {	margin-right: 15px;}
.mgnR20 {	margin-right: 20px;}
.mgnR25 {	margin-right: 25px;}
.mgnR30 {	margin-right: 30px;}
.mgnR35 {	margin-right: 35px;}
.mgnR40 {	margin-right: 40px;}
.mgnR45 {	margin-right: 45px;}
.mgnR50 {	margin-right: 50px;}
.mgnR55 {	margin-right: 55px;}
.mgnR60 {	margin-right: 60px;}
.mgnR150 {	margin-right: 150px;}
.mgnT0 {	margin-top: 0!important;}
.mgnT5 {	margin-top: 5px!important;}
.mgnT10 {	margin-top: 10px!important;}
.mgnT15 {	margin-top: 15px!important;}
.mgnT20 {	margin-top: 20px!important;}
.mgnT25 {	margin-top: 25px!important;}
.mgnT30 {	margin-top: 30px!important;}
.mgnT35 {	margin-top: 35px!important;}
.mgnT40 {	margin-top: 40px!important;}
.mgnT45 {	margin-top: 45px!important;}
.mgnT50 {	margin-top: 50px!important;}
.mgnT55 {	margin-top: 55px!important;}
.mgnT60 {	margin-top: 60px!important;}
.mgnB0 {	margin-bottom: 0!important;}
.mgnB5 {	margin-bottom: 5px!important;}
.mgnB10 {	margin-bottom: 10px;}
.mgnB15 {	margin-bottom: 15px;}
.mgnB20 {	margin-bottom: 20px;}
.mgnB25 {	margin-bottom: 25px;}
.mgnB30 {	margin-bottom: 30px;}
.mgnB35 {	margin-bottom: 35px;}
.mgnB40 {	margin-bottom: 40px;}
.mgnB45 {	margin-bottom: 45px;}
.mgnB50 {	margin-bottom: 50px;}
.mgnB55 {	margin-bottom: 55px;}
.mgnB60 {	margin-bottom: 60px;}
.mgnB70 {	margin-bottom: 70px;}

.pdgA10 { padding:10px!important;}



.fltL {float: left;}

.fltR {	float: right;}

.fltR-pic {
	float: right;
	margin-left:30px;
	margin-bottom:20px;
}

.fltL-pic {
	float: left;
	margin-right:30px;
	margin-bottom:20px;
}

.rounded-corners {
	border-radius:5px;
}



/* SP用　599px以下: デフォルト */
@media (max-width: 599px) {

.fltR-pic {
	float: none;
	margin-left:0px;
	margin-bottom:20px;
}

.fltL-pic {
	float: none;
	margin-right:0px;
	margin-bottom:20px;
}



}





.txt-imp { color:#0072BD;}

.txt-caution { color:#FF0000;}

.txt-green { color:#14B002;}


.txt-15px {	font-size:15px;}
.txt-16px {	font-size:16px;}
.txt-17px {	font-size:17px;}
.txt-18px {	font-size:18px;}

.txt-80p {	font-size:80%;}
.txt-90p {	font-size:90%;}
.txt-110p {	font-size:110%;}
.txt-120p {	font-size:120%;}
.txt-130p {	font-size:130%;}
.txt-140p {	font-size:140%;}
.txt-150p {	font-size:150%;}
.txt-200p {	font-size:200%;}


.attention { color:#f00;}

.tel-comment {
	 margin-top:5px;
	font-size:0.8em;
}

.caution {
	text-indent:-1em;
	padding-left:1em;
}

.caution2 {
	text-indent:-3.5em;
	padding-left:3.5em;
}

.caution3 {
	text-indent:-2em;
	padding-left:2em;
}

.caution4 {
	text-indent:-1.5em;
	padding-left:1.5em;
}


.hr-punctuation {
  display:block;
  width: 100%;
  height: 1px;
  border: 0;
  border-top: 1px solid #E2E2EC;
  margin-top:20px;
  margin-bottom:20px;
}
	

/* アンカーリンク調整 */

.link-anchor {
  margin-top:-40px;
  padding-top:40px;
}


/* スクロールすると.link-anchor に付与 ※ヘッダー固定時のページ内リンクずれ回避 */
.fixed-la {
  margin-top:-40px;
  padding-top:40px;

}


.tel-number {
font-family: "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
font-size:1.7em;
color:rgba(51,0,0,1.00);
}



/* SP用　599px以下: デフォルト */
@media (max-width: 599px) {
.link-anchor {
	margin-top:0px;
	padding-top:0px;
	height:0px;
}

.fixed-la {
	margin-top:0px;
	padding-top:0px;
	height:0px;
}

}

/*タブレット用 600px以上 959 未満*/
@media (max-width: 959px) and (min-width: 600px) {

.link-anchor {
	margin-top:0px;
	padding-top:0px;
	height:0px;
}

.fixed-la {
  margin-top:0px;
  padding-top:0px;
}


 }







/*テーブルスクロール*/

.sp-table-overflow {
	overflow:auto;

}


@media (max-width: 599px) {

.sp-table-overflow {
	overflow:scroll;
	margin-right: 0.8em;
	margin-left: 0.8em;
	margin-bottom:20px;
}

}

