@charset "UTF-8";

.main_under {
	height: 480px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: url("../images/h2_under.png") no-repeat bottom center;
	background-size: cover;
}

.main_under h2 {
	font-size: 54px;
	color: #163466;
	text-shadow: 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff;

}


.section {
	width: 90%;
	margin: 0 auto;
}

.box_txt_img {
	margin-bottom: 100px;
}

.img_float_L {
	float: left;
	margin-right: 150px;
	margin-bottom: 150px;
}

.title_h3 {
	text-align: center;
	margin-bottom: 40px;
}

.mar150 {
	margin: 150px auto;
}


.title_h4 {
	font-size: 32px;
	font-weight: bold;
	margin-bottom: 50px;
	color: #0f2d62;
	padding-bottom: 15px;
	border-bottom: 1px solid #0f2d62;
}


.und_check {
	display: flex;
	margin-bottom: 100px;
}

.und_check ul.und_check01{
	margin-right: 100px;
}

.und_check ul.und_check01 li{
	padding-left: 32px;
	font-size: 20px;
	margin-bottom: 15px;
	background: url("../images/under_check01.png") no-repeat top 4px left;
}

.und_check ul.und_check02 li{
	padding-left: 35px;
	font-size: 20px;
	margin-bottom: 15px;
	background: url("../images/under_check02.png") no-repeat top left;
}

.und_tbl {
	width: 100%;
	margin-bottom: 150px;
}

.und_tbl td{
	font-size: 20px;
	font-weight: normal;
}

.und_tbl th {
	font-size: 22px;
	font-weight: normal;
}

.und_tbl tr:first-child th {
	font-size: 24px;
	color: #fff;
	padding: 10px 20px;
}

.und_tbl tr:first-child {
}

.und_tbl tr:first-child th:first-child {
	border-right: 8px solid #fff
}

.und_tbl tr th.sub_th{
	min-height: 150px;
	background: #e3eaf1;
	text-align: center;
	vertical-align: middle;
	color: #0f2d62;
	border-right: 8px solid #fff
}

.und_tbl tr {
	border-bottom: 8px solid #fff;
}

.und_tbl tr td{
	padding: 20px;
	vertical-align: middle;
	position: relative;
}

.und_tbl tr td:after{
	content: "";
	display: block;
	position: absolute;
	bottom: -5px;
	left: 0;
	height: 1px;
	width: 100%;
	background: #cccccc;
}


.w25 {
	width: 25%;
}


.section_mar{
	margin-bottom: 200px;
}

.section_mar02{
	margin-bottom: 100px;
}


.fl_box {
	display: flex;
	flex-wrap: wrap;
	background: #e3eaf1;
	position: relative;
}
.fl_box:after{
	position: absolute;
	content: "";
	display: block;
	top:0;
	left: 100%;
	height: 100%;
	width: 150px;
	background: #e3eaf1;
}

.fl_box .sup_L {
	width: 45%;
}

.fl_box .sup_txt{
	width: 55%;
	padding: 100px 0 100px 100px;
}
.fl_box .sup_txt p,.sup_block p{
	margin-bottom: 0;
}

.flit_img {
	position: relative
}

.sup_L .flit_img{
	margin-top: -80px;
	margin-left: -150px;
	width: 120%;
}

.title_h5 {
	font-size: 24px;
	color: #0f2d62;
	margin-bottom: 20px;
}

.fix_fr_box .sup_block {
	width: 100%;
	padding: 100px 100px 100px 0;
	order: 3;
}

.fix_fr_box .sup_L {
	order: 2;
}
.fix_fr_box .sup_txt{
	order: 1
}


.fix_fr_box .sup_L .flit_img {
	margin-left: 43px;
}


.fix_fr_box.fl_box .sup_txt {
	padding: 100px 100px 0 0;
}

.fix_fr_box:after{
position: absolute;
  content: "";
  display: block;
  top: 0;
  left: unset;
	right: 100%;
  height: 100%;
  width: 150px;
  background: #e3eaf1;
}

#under.contact #header{
	height: unset;
}
#under.contact>div#wrapper{
	width: 100%;
	border: none;
}
/*#under.contact #main > #content{
	background: #fff;
}*/
#under.contact #main li,
#under.contact #main p,
#under.contact #main a,
#under.contact .fbox  p:not(.f_cpr),
#under.contact .fbox  a{
    font-family: 'Yu Gothic', sans-serif !important;
    font-weight: 400;
}
#under.contact .fbox_R li a{
    font-family: 'Rift-Regular';
}
#under.contact .f_tel a{
	color: #fff;
    padding-left: 20px;
    background: url(../images/ic_tel.png) no-repeat left center;
}
#under.contact .fbox_L dl dt a{
	width: fit-content;
	display: inline-block;
}

#under.contact table.mailform{
	/*max-width: 750px;*/
	width: 100%;
	margin: 35px auto 30px;
}
#under.contact table.mailform th span {
	font-family: 'Noto Sans JP', sans-serif!important;
	font-size: 18px;
}
/*#under.contact .box05{
	background: url("../images/box05_bg.png") no-repeat top left;
}*/
#under.contact #fmail tr.fmail_separate_title td div.fmail_position .elements{
	position: relative;
	width: 100%;
	height: unset;
	padding: 5px 10px;
	left: unset;
}
#under.contact #fmail th#h_en1368417728,
#under.contact #fmail td#d_en1368417728{
	height: 260px;
}
#fmail tr.fmail_separate td#d_en1368417728 div.fmail_position .elements {
    position: absolute;
    top: 0;
    left: -230px;
    margin: 10px;
    padding: 5px;
    width: 750px;
    background: #EEF;
    z-index: 99;
}
#fmail tr.fmail_separate td#d_en1368417728 div.fmail_position .elements p{
	font-size: 14px;
	margin-bottom: 0;
}


#under.contact h4{
 font-size: 24px;
 text-align: center;
}
.fmail_note{
	font-size: 14px !important;
}
.box_service {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.box_service01 {
	width: calc((100% - 30px)/3);
	border: 1px solid #a9a9a9;
	margin-bottom: 30px;
	margin-right: 15px;
}
.box_service01:nth-child(3n){
	margin-right: 0;
}
.box_service p{
	margin-bottom: 0;
}
body #main p.tit01 {
	text-align: center;
	background: #0f2d62;
	color: #fff;
	font-weight: bold;
	font-size: 20px;
	margin-bottom: 0;
	padding: 8px;
}
.service_img {
	line-height: 0;
	margin-bottom: 20px !important;
	/* padding: 20px !important; */
}
.service_img img{
	width: 95%;
	max-width: 350px;
	height: 252px;
	object-fit: 100%;
	margin: 0 auto;
}
.service_txt {
	padding: 10px;
	box-sizing: border-box;
	min-height: 175px;
}
.service_txt span {
	display: block;
	margin-top: 15px;
	color: #0f2d62;
	font-weight: bold;
}
.service_txt span.bg {
	max-width: max-content;
	padding: 5px 15px;
	margin-top: 5px;
	border-radius: 3px;
	text-align: center;line-height: 1.2;
	color: #fff;
	background: #008080;
}
.box_service01:nth-child(1) .service_txt.txt01 , .box_service01:nth-child(2) .service_txt.txt01 , .box_service01:nth-child(3) .service_txt.txt01{
	min-height: 225px;
}
.service_txt.txt01{ 
	padding-bottom: 0;
	min-height: 280px;
}
.box_service01:nth-child(4) .txt01{ 
	padding-bottom: 0;
	/* min-height: 245px; */
}
.box_service01:nth-child(6) .txt01{
	min-height: 456px;
}
body #main .bnt_poupo{
	padding: 5px;
	max-width: 350px;
	width: 95%;
	margin: 0 auto 20px;
	border:1px solid #a9a9a9;
	text-align: center;
}
body #main .bnt_poupo span{
	display: block;
	margin-bottom: 10px;
}
body #main .bnt_poupo span:last-child{
	background: #ff9933;
	color: #fff;
	font-weight: bold;
	font-size: 18px;
	border-radius: 10px;
	line-height: 1.5;
	padding: 5px;
	width: 80%;
	margin: 0 auto 15px;
	cursor: pointer;
}
body #main .bnt_poupo span:last-child:hover{
	opacity: 0.8;
}
/*--popup--*/

.popup {

	position: fixed;
  
	z-index: 9999;
  
	top: 0;
  
	right: 0;
  
	bottom: 0;
  
	left: 0;
  
	margin: auto;
  
	-webkit-transition: 0.3s;
  
	-o-transition: 0.3s;
  
	transition: 0.3s;
  
	background-color: rgba(0, 0, 0, 0.5);
  
	padding: 20px;
  
	display: none;
  
  }
  
  .popup_inner {
  
	position: absolute;
  
	top: 20px;
  
	left: 20px;
  
	right: 20px;
  
	bottom: 20px;
  
	margin: auto;
  
	display: flex;
  
  }
  
  .popup_box {
  
	position: relative;
  
	-webkit-box-sizing: border-box;
  
	box-sizing: border-box;
  
	max-width: 0;
  
	padding: 40px 25px 40px 40px;
  
	background-color: #ffffff;
  
	margin: auto;
  
	text-align: left;
  
	border-radius: 5px;
  
	max-height: 90vh;
  
	animation: showout 1s forwards;
  
  }
  
  
  
  @keyframes showout {
  
	from {
  
		max-width: 0;
  
	  }
  
	to {
  
		max-width: 800px;
  
	  }
  
  }
  
  .popup_box-in {
  
	  opacity: 0;
  
	  animation: showct 1s forwards;
  
	  animation-delay: .75s;
  
  }
  
  @keyframes showct {
  
	from {
  
		opacity: 0;
  
	  }
  
	to {
  
		opacity: 1;
  
	  }
  
  }
  
  
  
  .popup_box-in {
  
	overflow-y: auto;
  
	overflow-x: hidden;
  
	  max-height: calc(90vh - 80px);
  
	  padding-right: 15px;
  
  }
  
  .popup-close {
  
	width: 45px;
  
	height: 45px;
  
	background: #0f2d62;
  
	position: absolute;
  
	right: -15px;
  
	top: -15px;
  cursor: pointer;
	border-radius: 50%;
  
	border: 2px solid #fff;
  
	animation: closebtn 1s forwards;
  
  }
  
  @keyframes closebtn {
  
	  from{
  
		  transform:  rotate(0deg);
  
	  }
  
	  to{
  
		  transform:  rotate(360deg);
  
	  }
  
  }
  
  .popup-close:before, .popup-close:after {
  
	position: absolute;
  
	top: 9px;
  
	right: 19px;
  
	display: block;
  
	width: 2px;
  
	height: 24px;
  
	content: '';
  
	-webkit-transform: rotate(45deg);
  
	-ms-transform: rotate(45deg);
  
	transform: rotate(45deg);
  
	background-color: #fff;
  
  }
  
  .popup-close:after {
  
	-webkit-transform: rotate(-45deg);
  
	-ms-transform: rotate(-45deg);
  
	transform: rotate(-45deg);
  
  }
  
  .popup_box h2 {
  
	font-size: 34px !important;
  
	line-height: 1.8 !important;
  
	margin-bottom: 20px !important;
  
	/* text-align: center; */
  
	font-weight: bold;
  
	color: #002060;
	padding: 0 !important;
  
	float: none !important;
	font-family: "ヒラギノ明朝 ProN","Hiragino Mincho ProN","游明朝",YuMincho,"HG明朝E","MS P明朝",MS PMincho,serif !important;
	height: auto !important;
  
  }
  
  
  .popup_box p {
  
	font-size: 14px;
  
	margin-bottom: 20px;
  
  }
  
  .popup_box img {
  
	max-width: 100%;
  
  }
  


  .popup_box-ct .ttl{
	display: flex;
	justify-content: center;

  }
  .ttl .txt_big{
	font-size: 35px;
	color: #ffc000;
  }
  .ttl .txt_small{
	font-size: 25px ;
  }
  .bnt01 {
	text-align: center;
	background: #f1f1f1;
	padding: 10px;
	font-weight: bold;
  }
  .bnt01 .txt_big{
	font-size: 25px;
  }
  .bnt01 .txt_big span{
	color: #ff0066;
  }
  .box_txt{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
  }
  .box_txt dl{
	width: 49%;
	padding: 10px;
	border: 1px solid #ffc000;
	border-radius: 10px;
	display: flex;
	margin-bottom: 15px;
  }
  .box_txt dl:nth-child(n+5){
	margin-bottom: 0;
  }
  .box_txt dl dt span{
	display: block;
	color: #ffc000;
	background: #2c2c2c;
	font-weight: bold;
	font-family: 'Rift-Regular';
	font-size: 14px;
	width: 85px;
	text-align: center;
	margin-bottom: 5px;
  }
  .box_txt dl dt {
	margin-right: 10px;
  }
  .box_txt dl dd{
	font-size: 14px;
  }
  .box_txt dl dd .ttl{
display: block;
font-size: 20px;
font-weight: bold;
margin-bottom: 5px;
  }
  .ttl_img{
	display: flex;
	justify-content: space-between;
	margin-top: 25px;
  }
  .ttl_img h3{
	font-size: 20px;
	margin-bottom: 20px;
	color: #414198;
	font-weight: bold;
	text-align: center;
  }
  .ttl_img .ttl_l{
	width:57%;
  }
  .ttl_img img{
	height: 274px;
  }
  .ttl_img .ttl_r{
	width:40%;
  }
  .ttl_img_list {
	background: #0f2d62;
    color: #fff;
    font-weight: bold;
    line-height: 1.6;
    padding: 2px 5px 5px;
  }
  .img_list {
	display: flex;
    align-items: center;
    justify-content: space-between;
	flex-wrap: wrap;
    width: 100%;
    gap: 10px;
    margin-bottom: 20px;
  }
  .img_list .img_item {
	width: 49%;
	transition: all ease 0.4s;
	margin-bottom: 25px;
  }
  .img_list .img_item:hover {
	opacity: .8;
  }
  .img_list .img_item a {

  }
  .img_list .img_item .img {

  }
  .img_list .img_item .ttl {
	background: #008080;
	color: #fff;
	padding: 10px;
	margin: 5px auto 0;
	width: auto;
	max-width: 150px;
	font-size: 16px;
	position: relative;
  }
  .w_img img{
width: 350px;
  }
  .img_list .img_item:nth-child(n+5){
	margin-bottom: 0;
  }
.green02{
    background: #008080;
}
.green02 span{
    color: #f3972a
}
.videomp4{
    margin: 0 0 30px;
}
  @media screen and (max-width: 768px) {
  
	.popup_inner {
		display: block;
	}
	.popup_box {
  
	  padding: 30px 10px 20px;
  
	}
  
	  .popup_box-in {
  
		  padding-right: 0
  
	  }
	  .popup_box h2 {
		font-size: 24px !important;
	  }
	  .ttl .txt_small {
		font-size: 18px;
	  }
	  .ttl .txt_big {
		font-size: 24px;
	  }
	  .popup_box-ct .ttl img{
		width: 140px;
	  }
	  .bnt01 .txt_big {
		font-size: 17px;
	  }
	  .bnt01 {
		line-height: 1.5;
	  }
	  .box_txt dl dd .ttl {
		font-size: 18px;
	  }
	  .ttl_img h3 {
		font-size: 18px;
		margin-bottom: 10px;
	  }
	  .popup_box-ct .ttl {
		justify-content: center;
		align-items: center;
		flex-direction: column;
	  }
	  .popup_box-ct .ttl p{
		margin-bottom: 0;
	  }
	  .popup_box-ct .ttl h2{
		text-align: center;
	  }

	  .img_list {
		flex-wrap: wrap;
	  }
	  .img_list .img_item {
		/* width: calc(100% / 3 - 10px); */
	  }
	  .img_list .img_item .ttl {
		padding: 5px;
		margin: 5px auto 0;
		width: 100%;
		max-width: 105px;
		font-size: 12px;
	  }
	}
  
  /*--end popup--*/
@media screen and (max-width: 750px) {
	.main_under {
		height: 300px;
	}
	
	.main_under h2 {
		font-size: 26px;
	}
	
	
	.und_check {
		display: block;
		margin-bottom: 60px;
	}
	
	
	.und_check ul.und_check01 {
		margin-right: 0;
		margin-bottom: 50px;
	}
	
	.und_check ul.und_check01 li,.und_check ul.und_check02 li {
		font-size: 16px;
	}
	
	.und_check ul.und_check01 li {
		background: url("../images/under_check01.png") no-repeat top 8px left
	}
	
	
	.und_tbl tr th.sub_th {
		min-height: auto;
	}
	
	.und_tbl th,.und_tbl tr td {
		font-size: 16px !important;
		padding: 10px;
	}
	
	.w25 {
		width: 30%;
	}
	
	.mar150 {
		margin: 50px auto;
	}
	
	.und_tbl {
		margin-bottom: 50px;
	}
	
	.title_h3 {
		margin-bottom: 30px;
	}
	
	
	.fl_box {
		display: block;
		padding: 20px 3%;
	}
	
	.fl_box .sup_txt{
		display: block;
		width: 100%;
		padding: 0;
	}
	.section_mar {
		margin-bottom: 50px;
	}
	
	.fl_box .sup_L {
		width: 100%;
		margin-bottom: 20px;
	}
	
	.title_h4 {
		font-size: 24px;
		margin-bottom: 20px;
	}
	
	.sup_L .flit_img {
		margin-top: -40px;
		margin-left: 0;
		width: 100%;
	}
	
	.fix_fr_box {
		margin-top: 80px;
	}
	
	.fix_fr_box .sup_L .flit_img {
		margin-left: 0;
	}
	
	.fix_fr_box.fl_box .sup_txt {
		padding: 0;
		margin-bottom: 40px;
	}
	.fix_fr_box .sup_block {
		padding: 0;
	}
	
	.section_mar02 {
		margin-bottom: 50px;
	}
	.box_service01 {
	width:100%;
	margin: 0 auto 20px;
}
.service_txt {
	min-height: auto;
  }
  .box_service01:nth-child(1) .service_txt.txt01, .box_service01:nth-child(2) .service_txt.txt01, .box_service01:nth-child(3) .service_txt.txt01,
  .box_service01:nth-child(3) .txt01, .box_service01:nth-child(4) .txt01 , .service_txt.txt01  , .box_service01:nth-child(6) .txt01{
	min-height: 0 !important;
  }
  .box_service01:nth-child(6) img{
	padding-top: 15px;
  }
	.box_service01:nth-child(3n){
	margin-right: 20px;
} 
	.box_service01:nth-child(2n){
	margin-right: 0px;
} 
	.box_service01:nth-child(1) .txt01,
	.box_service01:nth-child(2) .txt01 {
		min-height: 276px;
	}
	.box_service01:nth-child(3) .txt01 {
		padding-bottom: 0;
		min-height: 245px;
	  }
}



@media screen and (min-width: 751px) and (max-width: 1516px) {
	
	.fl_box::after{
	  position: absolute;
	  content: "";
	  display: block;
	  top: 0;
	  left: 0;
	  z-index: 1;
	  height: 100%;
	  width: 100px;
	  background: #fff;
	}

	.sup_L .flit_img {
		margin-left: 0;
		width: 100%;
		margin-top: -60px;
		z-index: 2
	}
	
	.fl_box .sup_txt {
		padding: 50px;
	}
	
	.title_h4 {
		margin-bottom: 35px;
	}
	
	.fix_fr_box.fl_box::after{
	  position: absolute;
	  content: "";
	  display: block;
	  top: 0;
	  left: unset;
	  right: 0;
	  z-index: 1;
	  height: 100%;
	  width: 100px;
	  background: #fff;
	}
	
	.fix_fr_box.fl_box .sup_txt {
		padding: 50px 50px 0 50px;
	}
	
	.fix_fr_box .sup_block {
		padding: 50px 0 50px 50px;
		max-width: 1050px;
	}
	.fix_fr_box .sup_L .flit_img {
		margin-left: 0;
	}
	
	
}

@media screen and (max-width: 700px) {
	#under.contact #fmail th#h_en1368417728, #under.contact #fmail td#d_en1368417728{
		height: 320px !important;
	}
}
@media screen and (max-width: 640px) {
	#under.contact #fmail th#h_en1368417728, #under.contact #fmail td#d_en1368417728{
		height: 350px !important;
	}
	#under.contact .inner.content{
		padding:  0 0;
	}
	.box_service01:nth-child(1) .txt01,
	.box_service01:nth-child(2) .txt01 {
		min-height: 315px;
	}
	.box_service01:nth-child(3) .txt01,
	.box_service01:nth-child(4) .txt01 {
		min-height: 280px;
	}
	.box_txt dl {
		width: 100%;
	  }
	  .ttl_img {
		flex-direction: column;
	  }
	  .ttl_img .ttl_l , .ttl_img .ttl_r{
		width: 100%;
	  }.ttl_img .ttl_l p, .ttl_img .ttl_r p{
		text-align: center;
	  }
	  .box_txt dl:nth-child(n+5) {
		margin-bottom: 15px;
	  }
	  .box_txt dl:last-child{
		margin-bottom: 0;
	  }
	 
	
	  .popup_box-ct .ttl img {
        width: 100px;
    }
}
@media screen and (max-width: 580px) {
	.img_list .img_item {
		width: calc(100% / 2 - 5px);
		}
}
@media screen and (max-width: 520px) {
	.box_service01 {
	width: 100%;
	margin-bottom: 20px;
	margin-right: 0px;
}
	.box_service01:nth-child(3n), .box_service01:nth-child(2n){
	margin-right: 0px;
}
.box_service01:nth-child(1) .txt01,
.box_service01:nth-child(2) .txt01,
.box_service01:nth-child(3) .txt01,
	.box_service01:nth-child(4) .txt01 {
		min-height: unset;
	}
}
@media screen and (max-width: 375px) {
	#fmail tr.fmail_separate td#d_en1368417728 div.fmail_position{
		width: 100%;
	}
	#fmail tr.fmail_separate td#d_en1368417728 div.fmail_position .elements{
		left: 0; right: 5px;
	}
	#fmail tr.fmail_separate td#d_en1368417728 div.fmail_position .elements p{
		font-size: 12px;
	}

}
@media screen and (max-width: 375px) {
	#fmail tr.fmail_separate td#d_en1368417728 div.fmail_position .elements{
		max-width: 300px;
	}
	.fmail_radio_list {

	}
	table.mailform tr td ol{
		display: flex;
		flex-direction: column;
	}
	table.mailform tr td ol li{
		width: 200px;
	}
	.img_list .img_item {
		/* width: 100%; */
	}
}













