@charset "utf-8";

.sp {
	display: none!important;
}
input[type="submit"] {
	-webkit-appearance: none;
}
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
html {
}
.font01 {
}
body {
	font-size: 16px;
	font-family: 'Roboto','Noto Sans JP', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Lucida Grande", Meiryo, sans-serif;
	text-align: left;
	-webkit-text-size-adjust: 100%;
	width: 100%;
	min-width: 1200px;
	word-break: break-all;
	line-height: 1.5;
	color: #000;
	position: relative;
	font-feature-settings: "palt";
	letter-spacing: 0.05em;
	background-image: url(../img/common/bg_body.png);
	background-repeat: repeat;
	background-position: center top;
}
body.top {

}
body.top:before {
	content: "";
	display: block;
	width: 80px;
	height: 100%;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 10;
	background-image: url(../img/common/side.png);
	background-repeat: no-repeat;
	background-position: center center;
}

a {
	color: inherit;
	-webkit-transition: all 0.2s;
	-ms-transition: all 0.2s;
	-o-transition: all 0.2s;
	-ms-transition: all 0.2s;
	transition: all 0.2s;
	text-decoration: none;
	cursor: pointer;
}
a:hover {
	opacity:0.8;
}
p, dt, dd, li, th, td {
	line-height: 1.5;
}
/*clearfix */
.clearfix:after {
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
	min-height: 0px;
}
h1 {
	margin-bottom: 0px;
	background: none;
	padding: 0;
	border-radius: inherit;
	font-size: 2em;
	-webkit-margin-before: 0em;
	-webkit-margin-after: 0em;
	-webkit-margin-start: 0px;
	-webkit-margin-end: 0px;
	display: inherit;
}
h1, h2, h3, h4, h5, h6 {
	margin: 0;
	font-family: inherit;
	font-weight: inherit;
	line-height: inherit;
	color: inherit;
	text-rendering: inherit;
}
img {
	border: none;
	vertical-align: top;
	max-width: 100%;
	height: auto;
}
ul, ol {
	margin: 0;
	padding: 0;
	list-style: none;
}
li {
	margin: 0px;
	padding: 0px;
}

.bold {
	font-weight: bold;
}
.center {
	text-align: center!important;
}
table {
	border-collapse: collapse;
}
iframe {
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
}
* {
	outline:none;
}

.cmnwrap_1100 {
	max-width: 1380px;
	margin-right: auto;
	margin-left: auto;
	padding-right: 140px;
	padding-left: 140px;
}
.under .cmnwrap_1100 {
	max-width: 1130px;
	padding-right: 15px;
	padding-left: 15px;
}
.cmnwrap_1100.type_p0 {
	max-width: 1100px;
	padding-right: 0!important;
	padding-left: 0!important;
}
.cmnwrap_1640 {
	max-width: 1920px;
	margin-right: auto;
	margin-left: auto;
	padding-right: 140px;
	padding-left: 140px;
}
.under .cmnwrap_1640{
	max-width: 1670px;
	padding-right: 15px;
	padding-left: 15px;
}
.cmnwrap_1440 {
	margin-right: auto;
	margin-left: auto;
	max-width: 1470px;
	padding-right: 15px;
	padding-left: 15px;
	padding-bottom: 90px;
}

.cmnwrap_1920 {
	max-width: 1920px;
	margin-right: auto;
	margin-left: auto;
}
.font_yugo {
	font-family:"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}
.mv {
	position: relative;
	margin-bottom: 190px;
}
.mv01 {
	position: absolute;
	bottom: 10px;
	left: 0;
	width: 100%;
}
.mv02 {
}
.mv02 img {
	width: 100%;
}
.mv03 {
	display: flex;
	align-items: flex-end;
}
.mv04 {
	font-size: 90px;
	line-height: 1.33;
}
.mv05 {
  font-size: 22px;
  font-weight: bold;
  padding-bottom: 10px;
  padding-left: 10px;
}

.top_about {
	padding-bottom: 176px;
	background: linear-gradient(to bottom, #fff 22%, #5EB4C4 22%);
}
.top_about01 {
	position: relative;
}
.top_about02 {
	position: absolute;
	top: 90px;
	left: 0;
	width: 100%;
	z-index: 2;
}
.top_about02_02 {
	margin-right: auto;
	margin-left: auto;
	padding-top: 66px;
	padding-bottom: 80px;
	max-width: 656px;
	background-color: rgba(0,0,0,0.58);
}
.titlewrap {
	margin:0 auto;
	color: #000;
	text-align: center;
	margin-bottom: 35px;
	padding-bottom: 22px;
	position:relative;
	position:relative;
	/*width:fit-content;*/

}
.titlewrap2 {
	margin:0 auto;
	color: #ffffff;
	text-align: center;
	margin-bottom: 35px;
	padding-bottom: 22px;
	position:relative;
	/*width:fit-content;*/

}

.titlewrap3{
	margin-left:auto;
	margin-right:auto;
	margin-top:20px;
	margin-bottom:-50px;
}
.titlewrap4{
	margin-top:0px;
	margin-bottom:20px;
	color:#5EB4C4;
	font-size:30px;
	text-align: center;
}
.underttl{
	font-weight:bold;
	color:#000;
	margin-bottom: 62px;
	letter-spacing: 5px;
}
.titlewrap.type_m45 {
	margin-bottom: 50px;
}
.titlewrap.type_m80 {
	margin-bottom: 80px;
}
.titlewrap.type_m112 {
	margin-bottom: 112px;
}
.title_en{
	font-size: 25px;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 10px;
	letter-spacing: 0.2em;
}
.title_ja {
	font-size: 12px;
	line-height: 1;
	letter-spacing: 0.2em;
}
.top_about03 {
	color: #ffffff;
	font-size: 19px;
	max-width: 550px;
	margin-right: auto;
	margin-left: auto;
	line-height: 2.0;
	margin-bottom: 2em;
	letter-spacing: 0;
	text-align: center;
}
.top_about03__end {
	margin-bottom:75px;

}
.btn_read {
  max-width: 155px;
  margin-right: auto;
  margin-left: auto;
}
.btn_read_inner {
	display: block;
	font-size: 12px;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 28px;
	color: #fff;
	border: 1px solid #fff;
	background-repeat: no-repeat;
	background-position: center right 24px;
	background-size: 17.2px;
	background-image: url(/img/common/icon_arrow_01.svg);
}
.btn_read.type_b .btn_read_inner {
	border-color: #000;
	color: #000;
	background-image: url(/img/common/icon_arrow_02.svg);
}
.slide01 {

}
.slide01_01 {
	height: 946px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.top_col2 {background: #5CBFBD;}
.top_col2_01 {
	display: flex;
}
.top_col2_02 {
	padding-top: 280px;
	width: 50%;
	height: 700px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	background-image: url(/img/top/pic02_01.png);
}
.top_col2_02.type_flow {
	background-image: url(/img/top/pic02_02.png);
}

.top_warmth{
	margin-bottom: 120px;
	padding-top:150px;
}
.top_warmth01 {
	position: relative;
}
.top_warmth02 {
	min-height: clamp(500px, 40vw, 653px);
}
.top_warmth03 {
	position: absolute;
	top: 320px;
	top: clamp(200px, 16vw, 320px);
	left: 0;
}
.top_warmth03 .btn_read {
	margin-left: 0;
}
.top_warmth04 {
	display: block;
	margin-bottom: 34px;
	padding-left: 20px;
	font-size: 25px;
	font-weight: bold;
	line-height: 1;
	letter-spacing: 0.13em;
}
.top_warmth05 {
	font-size: 14px;
	line-height: 2.29;
	margin-bottom: 24px;
	letter-spacing: 0.01em;
}


.top_case{
	padding-top: 120px;
	padding-bottom: 75px;
	background-color: #5CBFBD;
}
.top_case01 {
	margin-bottom: 20px;
	font-size: 14px;
	text-align: center;
}
.top_case02 {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 75px;
}
.top_case03 {
	width: 25%;
	flex-shrink: 0;
}
.top_case03 a {
	display: block;
	position: relative;
}
.mask{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background-color: rgba(0,0,0,0.54);
}
.top_case03_btn{
    position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	z-index: 2;
	transform: translate(-50%, -50%);
	text-align: center;
}
.top_case03_btn p {
	display: inline-block;
	padding-top: 11px;
	padding-bottom: 11px;
	font-size: 12px;
	color: #fff;
	line-height: 1;
	width: 125px;
	border: 1px solid #fff;
}

.top_media {
	padding-top: 70px;
	padding-bottom: 70px;
}
.top_media_wrap {
	margin-bottom: 100px;
}
.top_media_list {
	margin-bottom: 70px;
}
.top_media_list:last-child {
	margin-bottom: 0;
}
.top_media_list a {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.top_media_img{
	width: 314px;
	height: 217px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}
.top_media_img.type_border {
	border: 1px solid #D0D0D0;
}
.top_media_cont {
  width: calc(100% - 360px);
}
.top_media_dateWrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 20px;
}
.top_media_date_ymd {
	text-align: center;
}
.font_noto {
  	font-family: 'Noto Sans JP', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Lucida Grande", Meiryo, sans-serif;
}
.top_media_date01 {
	font-size: 12px;
	font-weight: bold;
	line-height: 1;
}
.top_media_date02 {
	font-size: 49px;
	line-height: 1;
	margin-top: -2px;
}
.top_media_date_ttl {
	padding-top: 20px;
	font-weight: bold;
	width: calc(100% - 70px);
}
.top_media_txt {
	font-size: 14px;
	line-height: 1.71;
}


.top_recruit {
	padding-top: 150px;
	padding-bottom: 130px;
	background-color: #5CBFBD;
}
.top_recruit01 a {
	display:block;
	margin-bottom: 130px;
}
.top_recruit01 img {
	width: 100%;
}
.top_recruit02 {
	font-size: 25px;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 20px;
	letter-spacing: 0.2em;
}
.top_recruit03 {
	font-size: 14px;
	line-height: 1;
	letter-spacing: 0.2em;
}
.top_recruit04 {
	display: flex;
	justify-content: space-between;
	color: #000;
}
.top_recruit05 {
	width: 30%;
}
.top_recruit06 {
	font-size: 25px;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 10px;
	letter-spacing: 0.2em;
}
.top_recruit07 {
	font-size: 12px;
	line-height: 1;
	letter-spacing: 0.2em;
}
.top_recruit08 {
  
}
.top_recruit09 {
	display: block;
	position: relative;
	padding-left: 32px;
	font-size: 32px;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 3px;
}
.top_recruit09::before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -11px;
	width: 23px;
	height: 23px;
	background-image: url('../img/common/icon_tel02.svg');
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}
.top_recruit10 {
  
font-size: 12px;
  
color: #262626;
}
.top_recruit11 {
	width: 36.4%;
	max-width: 400px;
}
.top_recruit12 {
	
}
.top_recruit12_inner {
	display: block;
	font-size: 14px;
	color: #fff;
	background-color: #000;
	text-align: center;
	padding-top: 15px;
	padding-bottom: 15px;
	border-radius: 5px;
}
/*
.top_recruit12_inner::before {
	content: '';
	display: inline-block;
	vertical-align: middle;
	margin-top: -3px;
	margin-right: 8px;
	width: 20px;
	height: 16px;
	background-image: url('../img/common/icon_mail.svg');
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}
	*/

.headerwrap {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10;
	width: 100%;
	padding-right: 80px;
	padding-left: 52px;
}
.headerbox{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.logo {
	width: 233px;
	margin-top: 40px;
}
.topLogo {
	margin-top: 20px;
}
.headerright {
	margin-top: 60px;
}
.gnavwrap {
  
}
.gnavblock {
  
}
.gnav {
	font-size: 0;
}
.gnav li {
	display: inline-block;
	font-weight: bold;
	font-size: 16px;
	margin-left: 40px;
}
.gnav li:first-child {
	margin-left: 0;
}
.gnav li a {
	color: #fff;
}
.headmail01 {
  display: none;
}
.headmail04 {
  
}
.headmail03 {
  
}
.headmail05 {
  
}
.btnmenu{
	
}
.footwrap .cmnwrap_1440{
	padding-bottom:0;
}
.under .footwrap {

}
.under .footContact {
	background-color: #5CBFBD;
	padding-top:132px;
	padding-bottom:124px;
}
.footTop {
	padding-top: 100px;
	padding-bottom: 34px;
	background-color:#FFF;
}
.footTop01 {
	width: 210px;
	margin-bottom: 15px;
}
.footTop02 {
  font-size: 14px;
  margin-bottom: 72px;
}
.footNav {
	font-size: 0;
	text-align: right;
	padding-bottom: 90px;
}
.footBnr{
	border-top: solid 1px #D5D5D5;
	padding-top:24px;
}
.footBnr ul{
	display:flex;
	justify-content: center;
	gap: 36px;
}
.footNav li {
	display: inline-block;
	font-size: 14px;
	margin-right: 15px;
	margin-bottom: 10px;
	margin-left: 15px;
}
.footbtm{
	text-align: center;
	background-color: #5CBFBD;
	padding-top: 24px;
	padding-bottom: 34px;
}
.copy {
	font-size: 14px;
}

.remodal {
    max-width: 1300px;
	border-radius: 10px;
	color: #000;
	padding-top: 90px;
	padding-bottom: 90px;
}
.remodal-close{
	position: absolute;
    top: 25px;
    left: auto;
	right: 25px;
    display: block;
    overflow: visible;
    width: 34px;
	height: 34px;
    margin: 0;
    padding: 0;
	text-align: center;
	background-image: url('../img/top/modal/btn_close.png');
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	transition: 0.2s;
}
.remodal-close:hover {
	opacity: 0.7;
}
.remodal-close:before {
	display: none;
}
.mdl {
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}
.mdl01 {
	display: block;
	font-size: 26px;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 30px;
	padding-bottom: 4px;
	border-bottom: 2px solid #000;
}
.mdl02 {

	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	position: relative;
	margin-bottom: 45px;
}
.mdl02::before {
	content: '';
	display: block;
	position: absolute;
	top: 54.6%;
	left: 50.2%;
	width: 3vw;
	height: 3vw;
	max-width: 34px;
	max-height: 34px;
	background-image: url('../img/top/modal/obj_tri.png');
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	-webkit-transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	-o-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	
}
.mdl03 {
	width: 47.3%;
}
.mdl03 img {
	width: 100%;
}
.mdl04 {
  
}
.mdl05 {
	display: table;
	table-layout: fixed;
	width: 100%;
	padding-right: 10px;
	padding-left: 10px;
	font-size: 14px;
	background-color: #5CBFBD;
	padding-top: 7px;
	padding-bottom: 6px;	
}
.mdl05:nth-child(even) {
	background-color: #fff;
}
.mdl06 {
	display: table-cell;
	vertical-align: top;
	width: 100px;
	padding-right: 10px;
	font-weight: bold;
}
.mdl07 {
	display: table-cell;
	vertical-align: top;
}

.underMv {
	background: linear-gradient(to bottom, #86e4e3 557px, transparent 557px);
	margin-bottom: 20px;
}
.underMv01 {
  padding-top: 270px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.underMv02 {
	width: 53.2%;
	height: 425px;
	background-image: url('../img/common/under_mv.png');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}
.underMv03 {
	padding-left: 3%;
    width: 46%;
}
.underMv04 {
	font-size: 50px;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 10px;
	letter-spacing: 0.1em;
	word-break: break-word;
}
.underMv05 {
  	font-size: 14px;
	line-height: 1;
	color: #656565;
	letter-spacing: 0.2em;
}

.breadcrumb {
	margin-bottom: 120px;
}
.breadcrumb01 {
	font-size: 0;
}
.breadcrumb02 {
	display: inline-block;
	font-size: 14px;
	color: #656565;
	letter-spacing: 0.2em;
}
.breadcrumb02::after {
	content: '|';
	display: inline-block;
	vertical-align: middle;
	margin-top: -3px;
	font-size: 14px;
	color: #656565;
	margin-right: 5px;
	margin-left: 5px;
}
.breadcrumb02:last-child:after {
	display: none;
}
.breadcrumb02 a {
	color: #656565;
}

.cmn_under_pb {
	padding-bottom: 180px;
}
.media01 {
	margin-bottom: 120px;
}
.media02 {
	display: table;
	table-layout: fixed;
	width: 100%;
	margin-bottom: 32px;
}
.media02:last-child {
	margin-bottom: 0;
}
.media03 {
	display: table-cell;
	vertical-align: top;
	width: 146px;
	font-weight: bold;
}
.media04 {
	display: table-cell;
	vertical-align: top;
}
.link:hover {
	opacity: 1;
	text-decoration: underline;
}
.pnav {
	text-align: center;
}

.underMv.type_mediaDetail .underMv01 {
	display: block;
	text-align: center;
	padding-top: 296px;
	padding-bottom: 169px;
}
.underMv.type_mediaDetail  .underMv03 {
	padding-left: 0;
	width: 100%;
}
.underMv.type_mediaDetail  .underMv04 {
	margin-bottom: 28px;
}
.underMv.type_mediaDetail  .underMv05 {
	color: #000;
	font-weight: bold;
}

.pdnav {
	text-align:center;
	margin:45px auto 0;
}
.pdnav li {
	display:inline-block;
	vertical-align:middle;
	margin:4px;
}
.pdnav li a {
	display: block;
	text-align: center;
	border: 1px solid #D2D2D2;
	padding:5px;
	width:6em;
}

.contact01 {
	padding-top: 40px;
	padding-right: 70px;
	padding-bottom: 10px;
	padding-left: 70px;
	background-color: #5CBFBD;
	border-radius: 22px;
	margin-bottom: 60px;
}
.contact02 {
	margin-bottom: 20px;
}
.conTxt01{
	font-weight:bold;
		line-height: 1.875;
}
.conTxt00{
	margin-bottom:2em;
	line-height: 1.875;
}
.red {
	color: #CA2819;
}
.contact_dlWrap {
	margin-bottom: 45px;
}
.col_red{
	color: #CA2819;
	font-weight: bold;
}
.error{
	color:#CA2819;
	font-size:14px;
}
.contact_txt{
	margin-bottom: 48px;
	/* text-align:center; */
}
.contact_dl {
	display: table;
	table-layout: fixed;
	width: 100%;
	padding-top: 20px;
	padding-bottom: 20px;
}
.contact_dl:first-child {
}
.contact_dt{
	display: table-cell;
	vertical-align: middle;
	width: 216px;
	font-weight: bold;
}
.contact_dtTop{
	vertical-align: top;
	padding-top: 6px;
}
.contact_dd {
	display: table-cell;
	vertical-align: top;
}
.contact_ddTxt{
	
}
.typeComfirm .contact_dl{
	border-bottom:solid 1px #ddd;
}
.inp_select {
	font-size: 16px;
	border: 1px solid #707070;
	padding-top: 12px;
	padding-right: 12px;
	padding-bottom: 11px;
	padding-left: 12px;
	width: 100%;
	max-width: 554px;
}
.input_txt {
	font-size: 16px;
	border: 1px solid #707070;
	padding-top: 12px;
	padding-right: 12px;
	padding-bottom: 12px;
	padding-left: 12px;
	width: 100%;
	max-width: 554px;
}
.inp_txtarea {
	font-size: 16px;
	border: 1px solid #707070;
	padding-top: 12px;
	padding-right: 12px;
	padding-bottom: 12px;
	padding-left: 12px;
	width: 100%;
	max-width: 554px;
	resize: none;
	height: 192px;

}
.contact_btnWrap {
	text-align: center;
}

.contact_btnWrap input,
.contact_btnWrap a {
	display: inline-block;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	color: #fff;
	background-color: #000;
	width: 100%;
	max-width: 480px;
	margin-right: 20px;
	margin-left: 20px;
	font-size: 20px;
	border: none;
	padding-top: 37px;
	padding-bottom: 37px;
	transition: 0.2s;
	cursor: pointer;
}
.contact_btnWrap input:hover {
	opacity: 0.7;
}
.confirm_btnWrap{
	display:flex;
	justify-content: center;
}
.confirm_btnWrap input{
	width:300px;
	
}
.confirm_btnWrap .type_back input{
	background:#888;
}
.mdladd01 {
	margin-bottom:15px;
}
.mdladd01 span {
	font-size: 11px;
	font-weight: bold;
	color: #FFF;
	background-color: #BABABA;
	text-align: center;
	display: inline-block;
	padding: 2px 12px 0px;
}
.mdladd01 img {
	width:100%;
}
.mdladd02 {
	display: flex;
	align-items: start;
	justify-content: space-between;
}
.mdladd03 {
	width: 66%;
	flex-shrink: 0;
}
.mdladd04 {
	width: 31%;
	flex-shrink: 0;
}
.mdladd05 {
}
.mdladd05 li {
	margin-bottom:15px;
}

.ft01 {
	width:230px;
	background-color: rgba(0, 0, 0, 0.96);
	position:fixed;
	right:0;
	bottom:0;
	text-align:center;
	padding:20px 0 12px;
	border-left:7px solid #C30D23;
}
.ft02 {
	font-size:11px;
	font-weight:bold;
	color: #FFFFFF;
	margin-bottom:5px;
}
.ft02 img {
	position:relative;
	top:1px;
	margin-right:6px;
}
.ft02 a {
	display:inline-block;
	padding:6px 18px 3px;
	border: 1px solid #FFF;
	border-radius:5px;
}
.ft03 {
	font-size:25px;
	font-weight:bold;
	color: #FFFFFF;
}
.ft03 a {
	color: #FFFFFF;
}
.ft03 img {
	position:relative;
	top:9px;
	margin-right:3px;
}
.ft04 {
	font-size: 11px;
	font-weight: bold;
	color: #898989;
}

.cmnbg01 {
	background-color: rgba(232,232,204,0.5);
}
.abtblock01 {
	padding:0 0 120px;
	margin-top:120px;
}
.grt01 {
	display: flex;
	align-items: start;
	justify-content: space-between;
	flex-direction: row-reverse;
}
.grt02 {
	width: 344px;
	flex-shrink: 0;
	position:relative;
}
.grt03 {
	width: calc(100% - 380px);
	flex-shrink: 0;
}
.grt04 {
}
.grt05 {
	width: 100%;
	position: absolute;
	bottom: 0;
	color: #FFF;
	background-color: #454545;
	padding: 15px 22px 20px;
}
.grt05 dt {
	font-size: 35px;
	font-weight: bold;
}
.grt05 dd {
	font-size: 14px;
}
.grt06 {
	font-size:18px;
	line-height:2.8;
}

.ser01{
	width:625px;
	margin: 78px auto 112px;
	text-align: center;
	line-height: 1.6;
	border: 1px solid #000;
	padding: 20px;
	color: #000;
	font-weight: bold;
	font-size: 18px;
}
.abtblock02 {
	padding:120px 0 30px;
}
.abt01 {
}
.abt02 {
}
.abt03 {
	background-color:#FFF;
	padding: 40px;
}
.abt04 {
	margin-bottom:15px;
}
.abt04 dt {
	font-size: 80px;
	display:inline-block;
	vertical-align:baseline;
	line-height:1;
}
.abt04 dd {
	font-size: 18px;
	display:inline-block;
	vertical-align:baseline;
	line-height:1;
	margin-left:7px;
	font-weight:bold;
}
.abt04_2 dd {
	font-size: 18px;
	display:inline-block;
	vertical-align:baseline;
	line-height:1;
	font-weight:bold;
	margin-top:15px;
	margin-bottom:15px;
}
.abt05 {font-weight: bold;line-height: 1.875;letter-spacing: 0.8px;margin-bottom: 1em;}
.abt01.type02 .abt02 {
	text-align:right;
}
.abt01.type02 .abtbox {
	float: inherit;
}


.abt06 {
	font-size: 24px;
	font-weight: bold;
	margin-bottom:7px;
}
.abt03.typebg {
	background-color: #fff;
}

.abtbox {
	float:right;
	position:relative;
	top:0px;
	margin-bottom: -130px;
	width: 690px;
}
.abt01.type03 .abtbox {
	top: -230px;
	left:96px;
}
.abt07 {
    font-size: 76px;
    font-weight: bold;
    color: #FFF;
    text-align: right;
    padding-left: 175px;
    word-break: normal;
    line-height: 1;
	margin-bottom:-15px;
}
.abt01.type02 .abt07 {
    text-align: left;
    padding-left: 0;
    padding-right: 175px;
}
.cmnwrap_1200 {
    max-width: 1230px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 15px;
    padding-left: 15px;
}
.typebg .abt07 {
	color: #5CBFBD;
	opacity: 0.7;
}



.cmpblock01 {
	padding:0 0 120px;
}
.com01 {width: fit-content;margin: 0 auto;}
.com02 {
	width:100%;
	display:table;
	margin-bottom: 20px;
}
.com02 dt {
	display:table-cell;
	font-weight:bold;
	width: 13em;
}
.com02 dd {
	display:table-cell;
	padding-left: 94px;
}
.cmpblock02 {
	padding: 160px 0;
	background-image: url(/img/company/pic_01.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
	/*background: #F7F7F7;*/
}

.completewrap{
	margin-bottom:80px;
	
}
.completewrap p{
	line-height:1.8;
	margin-bottom:1em;
}
.phl01 {
	text-align:center;
	color:#ffffff;
	line-height:2.7;
}
.cmpblock03 {
	padding:120px 0;
}
.acs01 {
	text-align:center;
	font-size:14px;
	margin-bottom: 50px;
}
.acs02 {
	width:90%;
	margin:0 auto;
}
.acs02 iframe {
	width:100%;
	height:530px;
}

.flwblock01 {
	padding:0 0 120px;
}
.flw01 {
}
.flw02 {
	display: flex;
	align-items: start;
	justify-content: space-between;
	position:relative;
	padding-bottom:70px;
	margin-bottom:40px;
}
.flw02:last-child {
	padding-bottom:0;
	margin-bottom: 136px;
}
.flw02:before {
    content: '';
    display: inline-block;
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 0;
    height: 0;
    margin-left: -14px;
    border-top: 18px solid #000;
    border-right: 14px solid transparent;
    border-bottom: 18px solid transparent;
    border-left: 14px solid transparent;
}
.flw02:last-child:before {
    display: none;
}
.flw02__00{
	
align-items: center;
}
.flw03 {
	width: 183px;
	flex-shrink: 0;
}
.flw04 {
	width: calc(100% - 220px);
	flex-shrink: 0;
}
.flw05 {
	margin-bottom:15px;
}
.flw05 dt {
	display:inline-block;
	vertical-align:middle;
	font-weight:bold;
	font-size:18px;
	border:solid 2px #000;
	line-height:1;
	padding:4px 10px;
}
.flw05 dd {
	display:inline-block;
	vertical-align:middle;
	margin-left:10px;
	font-weight:bold;
	font-size:20px;
}
.flw06 {
	font-size:18px;
}
.flw00{
	display:inline-block;
	vertical-align:middle;
	margin-left:10px;
	font-weight:bold;
	font-size: 24px;
}
.recblock01 {
	padding:0 0 120px;
	margin-top:120px;
}
.recblock01-2 {
	padding:0 0 120px;
	margin-top:40px;
}
.abr01 {
}
.abr02 {
	text-align:center;
	margin-bottom:75px;
}
.abr03 {
	font-size:18px;
	line-height:2.7;
}

.recblock02 {
	padding: 120px 0;
	background-color: #5CBFBD;
}
.ar01 {
	background-color:#5CBFBD;
	border-radius:20px;
	padding:35px;
	margin-bottom:65px;
}
.ar02 {
	text-align:center;
}
.ar03 {
	margin-bottom:100px;
}
.ar04 {
	display:table;
	width:100%;
	margin-bottom:25px;
}
.ar04 dt {
	display:table-cell;
	vertical-align:top;
	width:15em;
	font-weight:bold;
}
.ar04 dd {
	display:table-cell;
	vertical-align:top;
}
.ar05 {
	max-width:480px;
	margin:0 auto;
}
.ar05 a {
	display:block;

	background-color:#000;
	color:#FFF;
	text-align:center;
	font-size:20px;
	padding:35px;
}

.top_case03 {
	position:relative;
}
.top_case03 img{
  width: 100%;
  height: 18.8vw;
  object-fit: cover;
}

.fadeInUp {
	opacity: 0;
	animation: fadeInUp 1.5s forwards;
}
.fadeInUp.el_delay01 {
	animation: fadeInUp 1.5s 1s forwards;
}

@keyframes fadeInUp {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, 20%, 0);
		-ms-transform: translate3d(0, 20%, 0);
		transform: translate3d(0, 20%, 0)
	}

	100% {
		opacity: 1;
		-webkit-transform: none;
		-ms-transform: none;
		transform: none
	}
}

.fadeIn {
	opacity: 0;
	animation: fadeIn 1s forwards;
}

.policy_block {
	margin-bottom: 1.67em;
}
.policy_block:last-child {
	margin-bottom: 0;
}
.policy_head {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.67;
}
.policy_txt {
	font-size: 18px;
	line-height: 1.67;
}
.case {
	padding-bottom: 110px;
}
.type_outline {
	outline: 1px solid #d0d0d0;
}

.abtblock02 {
	padding:120px 0 30px;
}
.abt01 {
}
.abt02 {
}
.abt03 {
	background-color:#FFF;
	padding:30px;
}
.abt04 {
	margin-bottom:15px;
}
.abt04 dt {
	font-size: 80px;
	display:inline-block;
	vertical-align:baseline;
	line-height:1;
}
.abt04 dd {
	font-size: 18px;
	display:inline-block;
	vertical-align:baseline;
	line-height:1;
	margin-left:7px;
}
.abt05 {
}
.abt01.type02 .abt02 {
	text-align:right;
}
.abt01.type02 .abtbox {
	float: inherit;
}


.abt06 {
	font-size: 24px;
	font-weight: bold;
	margin-bottom:7px;
}
.abt03.typebg {
	background-color: #5CBFBD;
	opacity: 0.8;
}

.abtbox {
	float:right;
	position:relative;
	top:-50px;
	margin-bottom:80px;
	width:850px;
}
.abt01.type03 .abtbox {
	top:-50px;
}
.abt07 {
    font-size: 76px;
    font-weight: bold;
    color: #FFF;
    text-align: right;
    padding-left: 175px;
    word-break: normal;
    line-height: 1;
	margin-bottom:-12px;
}
.abt01.type02 .abt07 {
    text-align: left;
    padding-left: 0;
    padding-right: 175px;
}

.abt10 {
	margin-top:100px;
	margin-bottom:100px;
	text-align: center;
	font-weight:bold;
	font-size:35px;
	line-height: 50px;
	letter-spacing:0.22em;
}
.com_p{
	margin-left:auto;
	margin-right:auto;
	text-align: center;
	margin-top: 30px;
}

.flow_p{
font-size:30px;
color:#007B6C;
}

.c1{
display:flex;
margin-top:120px;
text-align: center;
margin-left:auto;
margin-right:auto;
}

.c2{
text-align: center;
margin-left:auto;
margin-right:auto;
}

.c2 p{
margin-top:10px;
font-weight:bold;	
}