@charset "UTF-8";

.contents {
overflow: hidden;
margin-right: 0;
margin-left: 0;
padding: 0;
clear: both;
position: relative;
z-index: 1;
background-color: #FFFFFF;
}
@media screen and (max-width: 767px) {
.contents {
}
}


/* ------ Column ------ */
.row110,.row110in{
max-width: 1100px;
margin: 0 auto;
padding: 0 3%;
}
.row120,.row120in{
max-width: 1200px;
margin: 0 auto;
padding: 0 3%;
}
.row130,.row130in{
max-width: 1300px;
margin: 0 auto;
padding: 0 3%;
}
.row150,.row150in{
max-width: 1500px;
margin: 0 auto;
padding: 0 3%;
}

.row,.row00{
max-width: 1000px;
margin: 0 auto;
padding: 0 3%;
}
.row:after,.row00:after {
content: "";
display: block;
clear: both;
}
.row02,.row02in {
max-width: 900px;
margin: 0 auto;
padding: 0 3%;
}
.row800,.row800in {
max-width: 800px;
margin: 0 auto;
padding: 0 3%;
}
.row700,.row700in {
max-width: 700px;
margin: 0 auto;
padding: 0 3%;
}
.row02:after {
content: "";
display: block;
clear: both;
}

@media screen and (max-width: 767px) {
/* 左右に余白を設定 */
.row110,.row120,.row130,.row150,.row,.row02,.row800,.row700  {
padding: 0 6%;
}
.row00,.row02in,.row800in,.row700in,.row110in,.row120in,.row130in,.row150in {
padding-top: 0;
padding-right: 0px;
padding-left: 0px;
padding-bottom: 0;
}
}

.pc_only {
display: block;
}
.sp_only {
display: none;
}
@media screen and (max-width: 767px) {
.pc_only {
display: none !important;
}
.sp_only {
display: block!important;
}
}


/*ホワイト*/
.wt .fa,.wt{
color: #FFF !important;
}
.wt a:link {
text-decoration: none !important;
color: #FFF !important;
}
.wt a:visited {
text-decoration: none !important;
color: #FFF !important;
}
.wt a:hover, .wt a:active {
text-decoration: none !important;
color: #FFF !important;
}

/*ブラック*/
.bk .fa,.bk{
color: #000000 !important;
}
.bk a:link {
text-decoration: none !important;
color: #000000 !important;
}
.bk a:visited {
text-decoration: none !important;
color: #000000 !important;
}
.bk a:hover, .bk a:active {
text-decoration: none !important;
color: #000000 !important;
}

/*コーポレートカラー*/
.corp .fa{
color: #184D73 !important;
}
.corp a:link {
text-decoration: none !important;
color: #184D73 !important;
}
.corp a:visited {
text-decoration: none !important;
color: #184D73 !important;
}
.corp a:hover, .corp a:active {
text-decoration: none !important;
color: #184D73 !important;
}

/*BGカラー*/
.bg_corp{
background-color: #184D73;
}
.bg_wt{
background-color: #FFFFFF;
}
.bg_bk{
background-color: #000000;
}


/* ---------------------------------------------------------------- *
ヘッダ部分の設定
* ---------------------------------------------------------------- */
.header_ct {
top: 0;
left: 0;
z-index: 3;
width: 100%;
transition: all 0.3s;
/*height: 80px;*/
background-color: #FFFFFF;
position: fixed;
}
.header_ct.in_nav {
background-color: transparent;
}
.header_ct .h_copy {
	background-color: #354E6F;
	color: #FFFFFF;
	font-size: 12px;
	text-align: center;
	padding-top: 5px;
	padding-bottom: 5px;
}
.header_ct .h_copy strong {
font-size: 15px;
margin-left: 10px;
}
@media screen and (max-width: 767px) {
.header_ct {

}
.header_ct .h_copy {
font-size: 2vw;
	padding-top: 0px;
	padding-bottom: 0px;
}
.header_ct .h_copy strong {
font-size: 2.5vw;
margin-left: 7px;
}
}

/* トップ様aboveのナビ */
.h_above {
display: none;
}
@media screen and (max-width: 767px) {
.h_above {
display: grid;
gap: 10px;
grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
padding-right: 15px;
padding-left: 10px;
padding-top: 10px;
padding-bottom: 10px;
}
.h_above li.item img {
width: 100%;
height: auto;
display: block;
}
}


/* 下層コンテンツ */
header#header h1.m_logo {
  display: inline-block;
}
.header_ct.sub_C {
	border-bottom: 1px solid #CCCCCC;
}
.header_ct.sub_C.in_nav {
	border-bottom: 0px solid #CCCCCC;
}
h1.m_logo {
  padding-left: 6%;
  transition: all 0.3s;
}
h1.m_logo img {
	height: 80px;
	display: block;
	position: relative;
	z-index: 4;
	transition: all 0.3s;
	padding-top: 10px;
	padding-bottom: 0px;
	/*padding-left: 6%;*/
	width: auto;
}
@media screen and (max-width: 1200px) {
h1.m_logo {
  padding-left: 3%;
}
}
@media screen and (max-width: 767px) {
  h1.m_logo {
    display: inline-block;
  }
}




/*下層ヘッダーナビ*/
.H_navi {
	position: fixed;
	z-index: 3;
	padding-top: 8px;
	padding-right: 100px;
	padding-left: 300px;
	top: 0px;
	right: 0px;
	max-width: 850px;
	transition: all 0.3s;
	margin-right: 0px;
	margin-left: auto;
}
.H_navi .sub_n {
display: grid;
grid-template-columns: 4.5fr 3fr;
gap: 20px;
}

.H_navi ul.n_left {
display: grid;
gap: 15px;
grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
border-right: 1px solid #CCCCCC;
padding-right: 20px;
}
.H_navi ul.n_right {
display: grid;
gap: 15px;
grid-template-columns: 1fr 1fr 1fr;
}
.H_navi ul.n_left li.item img,
.H_navi ul.n_right li.item img {
width: 100%;
height: auto;
display: block;
}
@media screen and (max-width: 1200px) {
.H_navi {
	padding-top: 15px;
}
}
@media screen and (max-width: 1100px) {
.H_navi {
	display: none;
}
}





/*コンタクト*/
.I_7th {
padding-top: 80px;
padding-bottom: 80px;
position: relative;
background-color: #e9f5b2;
z-index: 0;
}
@media screen and (max-width: 767px) {
.I_7th {
padding-top: 40px;
padding-bottom: 40px;
}
}

/*オプション*/
.I_7th_opt1 {
padding-top: 0px;
padding-bottom: 0px;
}

.I_7th_opt1 ul.in_desc {
display: grid;
gap: 50px;
grid-template-columns: 1fr 1fr;
margin-bottom: 0px;
}
.I_7th_opt1 figure {
width: 100%;
margin-left: auto;
margin-right: auto;
margin-bottom: 15px;
}
.I_7th_opt1 figure img {
width: 100%;
height: auto;
display: block;
}
.I_7th_opt1 .item.area1 figure img {
	border-top-left-radius: 40px;
	border-top-right-radius: 40px;
	border-bottom-right-radius: 40px;
}
.I_7th_opt1 .item.area2 figure {
margin-bottom: 25px;
}
.I_7th_opt1 ul.in_desc li.item.area1 {
position: relative;
display: grid;
gap: 40px;
grid-template-columns: 1fr;
}
.I_7th_opt1 ul.in_desc li.item .suisin {
border-top: 1px solid #505050;
border-bottom: 1px solid #505050;
padding-top: 20px;
padding-bottom: 20px;
text-align: center;
}
.I_7th_opt1 ul.in_desc li.item .suisin p.department {
font-size: 16px;
line-height: 1.6em;
margin-bottom: 10px;
font-weight: bold;
}
.I_7th_opt1 ul.in_desc li.item .suisin p.add {
font-size: 12px;
}
.I_7th_opt1 ul.in_desc li.item h3 {
font-size: 30px;
font-weight: bold;
margin-bottom: 5px;
color: #324E71;
}
.I_7th_opt1 ul.in_desc li.item .suisin2 {
position: relative;
}
.I_7th_opt1 ul.in_desc li.item .suisin2 .support{
	position: absolute;
	top: -30px;
	right: -30px;
	width: 85px;
	height: 85px;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 40px 40px 40px 0px;
	font-size: 13px;
	color: #324E71;
	background-color: #FFE73E;
	text-align: center;
	line-height: 1.2em;
	font-weight: 600;
}
.I_7th_opt1 ul.in_desc li.item .suisin2 .support p {
position: relative;
top: 50%;
transform: translateY(-50%);
}
.I_7th_opt1 ul.in_desc li.item .suisin2 .support2 {
	position: absolute;
	top: -30px;
	right: -30px;
	width: 90px;
}
@media screen and (max-width: 767px) {
.I_7th_opt1 {

}
.I_7th_opt1 ul.in_desc {
gap: 20px;
grid-template-columns: 1fr;
margin-bottom: 0px;
}
.I_7th_opt1 ul.in_desc li.item.area1 .suisin {
grid-row: 2 / 3;
grid-column: 1 / 2;
}
.I_7th_opt1 ul.in_desc li.item h3 {
font-size: 6.8vw;
}
.I_7th_opt1 ul.in_desc li.item p {
font-size: 3vw;
}
.I_7th_opt1 .item.area2 figure {
margin-bottom: 15px;
}
.I_7th_opt1 ul.in_desc li.item .suisin2 .support{
top: -50px;
right: -20px;
width: 90px;
height: 90px;
font-size: 12px;
}
.I_7th_opt1 ul.in_desc li.item .suisin2 .support2 {
	top: -40px;
	right: -20px;
	width: 23%;
}
}





/* フッター */
footer{
padding-top: 30px;
padding-bottom: 0px;
margin: 0;
background-color: #FFFFFF;
}
footer .copyright {
text-align: center;
padding-top: 10px;
background-color: #354E6F;
color: #FFFFFF;
padding-bottom: 130px;
}
footer.f_subC .copyright {
padding-bottom: 10px;
}
@media screen and (max-width: 767px) {
footer{
padding-top: 30px;
padding-bottom: 0px;
}
footer .copyright {
font-size: 3vw;
padding-bottom: 100px;
}
footer.f_subC .copyright {
padding-bottom: 100px;
}
}


.f_nav {
display: grid;
gap: 50px;
grid-template-columns: 1fr 4fr 0.8fr 1.1fr;
padding-bottom: 30px;
}
.f_nav .item {
display: flex;
align-items: center;
}
.f_nav .item figure {
width: 100%;
}
.f_nav .item figure img {
width: 100%;
height: auto;
display: block;
}
@media(max-width: 767px){
.f_nav {
grid-template-columns: 1fr 1fr;
gap: 10px;
padding-bottom: 20px;
}
.f_nav .item {
justify-content: center;
}
.f_nav .item.area1 figure {
width: 50%;
margin-left: auto;
margin-right: auto;
}
.f_nav .item.area1 {
	grid-row: 1 / 2;
	grid-column: 1 / 3;
	margin-bottom: 10px;
}
.f_nav .item.area2 {
	grid-row: 2 / 3;
	grid-column: 1 / 3;
	margin-bottom: 20px;
}
.f_nav .item.area3 {
grid-row: 3 / 4;
grid-column: 1 / 2;
}
.f_nav .item.area4 {
grid-row: 3 / 4;
grid-column: 2 / 3;
}
.f_nav .item.area3 figure {
width: 50%;
margin-left: auto;
margin-right: auto;
}
.f_nav .item.area4 figure {
width: 80%;
margin-left: auto;
margin-right: auto;
}
}

/*その他*/
ul.others {
display: flex;
gap: 0px;
flex-wrap: wrap;
}
ul.others li.item p {
padding-left: 20px;
padding-right: 20px;
border-right: 1px solid #505050;
}
ul.others li.item:last-child p {
border-right: 0px solid #505050;
}
ul.others li.item a {
color: #D98C9B;
}
@media screen and (max-width: 767px) {
ul.others li.item p {
font-size: 3vw;
}
}




/*固定フッター*/
.G_navi {
	width: 100%;
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 4;
	background-color: #fff;
	border-top: 1px solid #CCCCCC;
	padding: 15px 0;
	display: none;
}
.fixnav {
display: grid;
grid-template-columns: 4.5fr 3fr;
gap: 20px;
}

/* 上段ナビゲーション */
ul.n_above {
display: grid;
gap: 15px;
grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
border-right: 1px solid #CCCCCC;
padding-right: 20px;
}
ul.n_below {
display: grid;
gap: 15px;
grid-template-columns: 1fr 1fr 1fr;
}
ul.n_above li.item img,
ul.n_below li.item img {
width: 100%;
height: auto;
display: block;
}

/* スマホ用レスポンシブ */
@media screen and (max-width: 767px) {
.G_navi {
	border-top: 0px solid #666666;
	padding: 10px;
	box-sizing: border-box;
	display: block;
}
.fixnav {
grid-template-columns: 1fr;
}
ul.n_below {
gap: 5px;
}
}


.G_navi2 {
	width: 94%;
	padding: 15px 0;
	margin-left: auto;
	margin-right: auto;
}
@media screen and (max-width: 767px) {
.G_navi2 {
	display: none;
}
}




/*PAGE TOP（上へ）*/
#page-top {
  position: fixed;
  right: 30px;
  bottom: 70px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s, transform 0.3s;
  transform: translateY(50px);
  z-index: 100;
}

#page-top.show {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

#page-top a {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #354E6F;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  color: #fff;
  text-decoration: none;
}

#page-top span {
  width: 12px;
  height: 12px;
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
  transform: rotate(45deg);
  display: inline-block;
  margin-top: 8px;
}

@media screen and (max-width: 767px) {
  #page-top {
	right: 5%;
	bottom: 15%;
	display: none;
  }
}



/*reCAPTCHA　ロゴの場所を変更*/
.grecaptcha-badge {
bottom: 0px !important;
}




