/*===================================== YOU CAN WRIGHT CUSTOME CSS ======================================*//*.is-fixed .main-bar {  box-shadow: 0 3px 20px 0 rgba(0, 0, 0, .1);}*/.nav-wide .container {    padding: 0px 35px 0 20px;}.nav_right{    float: right;    font-size: 14px;    padding: 35px 12px;    cursor: pointer;    letter-spacing: 0px;    margin: -10px 0 -10px 20px;}.nav_right a{    color: #000;    font-weight: 400;}.nav_right  a:hover {     color: #4765A0;	transition : 0.5s;　/*ふわっとさせる指定*/}	.sp_phone {    width: 100%;	text-align: center;	padding: 10px 10px 20px ;}.sp_phone a{    color: #000;    width: 90%;	display:block ;	padding: 12px 0;	font-size: 15px;	font-weight: bold;	letter-spacing: 2px;	border:1px solid #000;    margin: 0 auto;}.sp_phone  a:hover {     color: #fff;    background-color: #000;	border:1px solid #000;	transition : 0.5s;　/*ふわっとさせる指定*/}	.header-nav .nav > li > a { 	font-size: 14px;}.header-nav .nav > li > a:hover {     color: #4765A0;	transition : 0.5s;　/*ふわっとさせる指定*/}	@media (min-width: 992px) {.pc_item {	display: none !important;}.sp_phone {display: none !important;}}@media only screen and (max-width: 991px) {.header-nav .nav > li > a { 	font-size: 15px;	font-weight: 500;    color: #000;}.is-fixed .header-nav .nav > li > a {    text-align: center;}.is-fixed .logo-header {    margin-left: 15px;}.is-fixed .navbar-toggle {    margin-right: 15px;}.nav-wide .container {    padding: 0px 0px;}.is-fixed.color-fill .header-nav .nav >:last-child a{	border-bottom:none !important;}.nav_right{ 	display: none;}	.is-fixed.color-fill .header-nav .nav  {    text-align: center;}}.maintenance_flex{ 	display: flex;    flex-wrap: wrap;         /*折り返し有り・複数行*/    justify-content: space-between; /*均等に間隔をあける*/    align-items: stretch;    /*全ての要素の高さを揃える*/   }.maintenance_item{	width: 47%;}.maintenance_item a{	color: #fff;}.maintenance_item  a:hover { 	filter: alpha(opacity=50);	opacity: 0.5; 	transition : 0.5s;　/*ふわっとさせる指定*/}	.some-facts {	height: 100%;}@media only screen and (max-width: 991px) {.maintenance_flex >:first-child {	margin-bottom: 30px;	}.maintenance_item{	width: 100%;}}/*--------------- 新着情報 ---------------*/#news .fes4-title-cont {    padding-left: 0px;}#news .fes4-box {    margin: 0px;}.news_txt {    height:230px;    overflow:auto;    overflow-y:scroll;    overflow-x:hidden;}.news_line {    border-top:1px solid #b0b0b0;    border-bottom:1px solid #b0b0b0;    padding: 0px 0 20px;}.news_line .fes4-title-cont .info-date{ 	width: 100%; 	font-size: 16px;    font-weight: 600; 	margin-top: 20px; 	display: flex;    align-items: center;     /*中央揃え*/}.news_line .fes4-title-cont .info-date span{    color: #fff;    background-color: #D71718; 	font-size: 11px;    font-weight: 400;    line-height: 1;    padding: 2px 5px; 	margin-left: 5px;}.news_line .fes4-title-cont h3{ 	font-size: 16px;	font-weight: 100; 	margin-top: 0px;}.news_line .fes4-title-cont h3 a{ 	width: 100%;}@media (max-width: 992px) {.news_line { 	width: 100%;    margin: 30px auto 30px;    padding: 15px 0;}}@media (max-width: 640px) {.fes4-title-cont h3, .title-18 {	font-size: 13px;}#news .fes4-title-cont {    padding-left: 0px;    padding-bottom: 0px;}.news_txt >:first-child {}.news_txt {    height:250px;    overflow:auto;    overflow-y:scroll;    overflow-x:hidden;}.news_line { 	width: 100%;    margin: 30px auto 30px;    padding: 15px 0;}  .port-filter a {    width:55%;  }.port-filter-2 a {    margin-bottom: 10px;}.port-filter {    margin: 0;}}/*--------------- カレンダー ---------------*/.flex{ 	display: flex;    flex-wrap: wrap;         /*折り返し有り・複数行*/    justify-content: space-between; /*均等に間隔をあける*/} .flex_l{ 	width: 35%;}.flex_r{ 	width: 57%;    margin: 0 4%;}.calendar { 	width: 100%; 	display: flex;    flex-wrap: wrap;         /*折り返し有り・複数行*/    justify-content: space-between; /*均等に間隔をあける*/}.calendar .calendar_left, .calendar .calendar_right { 	width: 48.5%;    margin-bottom: 10px;}.calendar table {    margin-bottom: 0;}.holiday-txt .pink {    color: #F7B2B2;}.recruit_txt {	text-align: center;    margin-bottom: 30px;}#company .calendar table{ 	width: 100%;	text-align: center;    font-size: 13px !important;}#company .calendar table, th {    text-align: center;}#company .calendar table thead th {    background-color: #ffffff;    font-weight: normal;    width: 40px;    height: 30px;    text-align: center;    vertical-align: center;    font-size: 13px !important;    padding: 0 !important;}#company .calendar table tbody td {    background-color: #ffffff;    vertical-align: middle;    width: 55px;    height: 25px;    font-size: 13px;    text-align: center;    padding: 0 !important;}#company .calendar table tr th, #company .calendar table tr td {    border: 1px solid #aaaaaa !important;}#company .calendar table caption {    text-align: center;    vertical-align: center;    background-color: #f0f0f0;    border-top: 1px solid #aaaaaa !important;    border-left: 1px solid #aaaaaa !important;    border-right: 1px solid #aaaaaa !important;    padding: 3px 5px;}#company .calendar table caption span {    font-size: 13px;    color: #000000;}#company .calendar table thead th.sun {    color: #da0012;}#company .calendar table tbody td.holiday {    background-color: #F7B2B2;}#company .company_table table tr th, #company .company_table table tr td {    border: 1px solid #aaaaaa !important;}@media only screen and (max-width: 991px) {.flex_l{ 	width: 100%;}.flex_r{ 	width: 90%;    margin: 0 5% 30px;}}@media only screen and (max-width: 600px) {.calendar .calendar_left, .calendar .calendar_right { 	width: 100%;    margin-bottom: 20px;}}.site-button.button-app {    width: 200px;    padding: 10px;    margin: 20px 20px;}.site-button.outline.black2 {    color: #fff;    background-color: #4765A0;    border-color: #4765A0;}.site-button.outline.black2:hover {     color: #4765A0;    background-color: #fff;    border-color: #4765A0;	transition : 0.5s;　/*ふわっとさせる指定*/}@media only screen and (max-width: 500px) {.site-button.button-app {    width: 40%;    padding: 7px;    margin: 0 2%;}}.multiple-items  a:hover { 	filter: alpha(opacity=50);	opacity: 0.5; 	transition : 0.5s;　/*ふわっとさせる指定*/}	.multiple-items img {    padding: 10px;}.news_slide_m_tb {    margin-bottom: 70px;    margin-top: 70px;}.overlay-bx-2 a{    width: 100%;    height: 100%;    display: block;}.lineup_flex{ 	display: flex;    justify-content: center;        /*中央揃え*/}.lineup_flex .site-button span {    font-size: 0.7em;    font-weight: 200;}.lineup_txt {    width: 100%;    font-size: 12px;    text-align: center;    margin-top: 5px;}#news{    display: block;    padding-top: 120px;    margin-top: -120px;}#maintenance {    display: block;    padding-top: 100px;    margin-top: -100px;    margin-bottom: 100px;}#company {    display: block;    padding-top: 100px;    margin-top: -100px;}.indent-header {   width : calc(100% - 80px) ;    margin: 0 40px 0;}.flex-direction-nav li a {    background-color: rgba(255,255,255,1) !important;    color: #000 !important;}.flex-direction-nav li a:hover {     background-color: rgba(0,0,0,1) !important;    color: #fff !important;}	@media only screen and (max-width: 992px) {.indent-header {    padding-top: 90px;}}@media only screen and (max-width: 768px) {.indent-header {    width: 100% ;    margin: 0 0 0px;    padding-top: 68px;}}@media only screen and (max-width: 600px) {.news_slide_m_tb {    margin-bottom: 50px;    margin-top: 0;}.multiple-items img {    padding: 5px;}.lineup_txt {    margin-top: 15px;}#calendar {    display: block;    padding-top: 100px;    margin-top: -100px;}}/*--------------- 23.2.10追加 ---------------*/.masonry-filter.link-style > li a:hover {     color: #4765A0;}	#maintenance .hilite-title strong {    display: block;    font-size: 80px;    line-height: 80px;    font-weight: bold;    color: rgba(255,255,255,0.3);}#maintenance .section-head .bg-toumou {    background-color: #fff;}@media only screen and (max-width: 600px) {.news_sp { 	display: flex;    flex-wrap: wrap;         /*折り返し有り・複数行*/    flex-wrap: wrap-reverse; /*折り返し有り・複数行・折り返し地点が逆*/}.news_sp .news_sp_img {  width: 100%;  height: 60px;}.news_sp .news_sp_img img {  width: 100%;  height: 100%;  object-fit: cover; }#maintenance .hilite-title strong {    font-size: 46px;    line-height: 46px;}}/*--------------- 25.2.3 リニューアル時追加 ---------------*/.recruit-btn .site-button.button-app {    width: 220px;    padding: 10px;    margin: 0px;}#maintenance h3 {    color: #fff;    font-size: 20px;    line-height: 1.8;    margin: 0;}#maintenance .fes4-title-cont p {    font-size: 14px;    margin: 0 0 10px;}#maintenance .fes4-title-cont{    color: #fff;}#maintenance .fes4-title-cont {    display: flex;    align-items: center;     /*中央揃え*/    margin: 15px 0;}#maintenance .fes4-box-icon {    font-size: 45px;    line-height: 1;    margin-right: 15px;}.shop_thumb{  width: 100%;  height: 260px;  object-fit: cover; /* この一行を追加するだけ！ */}/*--------------------------------------  モーダル表示上から_002--------------------------------------*/.modal_wrap input {  display: none;}.modal_overlay {  display: flex;  justify-content: center;  overflow: auto;  position: fixed;  top: 0;  left: 0;  z-index: 9999;  width: 100%;  height: 100%;  background: rgba(0, 0, 0, 0.7);  opacity: 0;  transition: opacity 0.5s, transform 0s 0.5s;  transform: scale(0);}.modal_trigger {  position: absolute;  width: 100%;  height: 100%;}.modal_content {    align-self: center;    width: 70%;    max-width: 700px;    max-height: 80%;    padding: 30px;    box-sizing: border-box;    background: #fff;    line-height: 1.4em;    transition: 0.5s;    overflow:scroll;}.modal_content p {  padding-top: 0;}.close_button {  font-size: 30px;  cursor: pointer;}.modal_wrap input:checked ~ .modal_overlay {  opacity: 1;  transform: scale(1);  transition: opacity 0.5s;}.modal_wrap input:checked ~ .modal_overlay .modal_content {  transform: translateY(20px);}.open_button {    font-weight: bold;    cursor :pointer;    transition: all 0.3s;    margin-top: 40px;    text-decoration: none;}.open-button:active {  /*ボタンを押したとき*/  -webkit-transform: translateY(2px);  transform: translateY(2px);/*下に動く*/}/*アイコンを表示*/.open-button:after {font-family: "Font Awesome 5 Free";  content: "\f2d0";    padding-left: 8px;}/*ラベルホバー時*/.open-button:hover {  color: #0080ca;  transition: .6s;}.modal_title2 {  font-size: 2em;    font-weight: 600;	position: relative;	overflow: hidden;  margin-top:0;  margin-bottom: 0;}.modal_title2::before,.modal_title2::after{	content: "";	position: absolute;	bottom: 0;}.modal_content_flex { 	display: flex;    justify-content: space-between; /*均等に間隔をあける*/    align-items: center;     /*中央揃え*/  margin-bottom: 20px;}.modal_content .close_button2 {    background: #000;    padding: 12px 0;    text-align: center;    color: white;    line-height: 1;    display: block;    margin: 30px auto 0;    width: 180px;    font-size: 16px;    cursor: pointer;}.modal_content .close_button2:hover{	filter: alpha(opacity=50);	opacity: 0.5; 	transition : 0.5s;　/*ふわっとさせる指定*/}.close_button img {    width: 20px;    height: auto;}.modal_content table {    font-size: 18px;    font-weight: 200;   }.modal_content table th {    font-size: 18px;    font-weight: 200;	text-align: left;   }@media(max-width:767px){.modal_content {    align-self: center;    width: 90%;    max-height: 90%;    padding: 20px 15px;    box-sizing: border-box;    background: #fff;    line-height: 1.4em;    transition: 0.5s;    overflow:scroll;}.close_button {  font-size: 22px;  cursor: pointer;}.modal_content table {    font-size: 15px;   }.modal_content table th {    font-size: 15px;   }}table.base-tbl {  width: 100%;  border-collapse: collapse;  color: #555555;}@media (max-width: 1024px) {table.base-tbl {  border-top: 1px solid #555555;	}}table.base-tbl th {  font-weight: bold;  padding: 20px 0 20px 0;	width: 125px;  border: 1px solid #555555;  border-left: 0;  border-right: 0;  vertical-align: top;  font-family: "Noto Sans JP JP";}@media (max-width: 1024px) {table.base-tbl th {  font-weight: bold;  padding: 20px 0 10px;	border: 0;	display: block;	width: 100%;	}}table.base-tbl td {  padding: 20px 0;  border: 1px solid #555555;  border-left: 0;  border-right: 0;  font-family: "Noto Sans JP JP";}@media (max-width: 1024px) {table.base-tbl td {  padding:0 0  25px;	display: block;	width: 100%;	border: 0;  border-bottom: 1px solid #555555;	}}@media (max-width: 1024px) {table.base-tbl td .guro{margin: 0 0.25em;	}}table.base-tbl td .officer{	width: 9em;	display: inline-block;}table.base-tbl td .officer .officer-in{	width: 6em;	display: inline-block;}table.base-tbl td .map {  margin-top: 20px;  position: relative;  padding-bottom: 51.8%;  padding-top: 30px;  height: 0;  overflow: hidden;}@media (max-width: 640px) {table.base-tbl td .map {    padding-bottom: 60.8%;  }}table.base-tbl td .map iframe, table.base-tbl td .map object, table.base-tbl td .map embed {  position: absolute;  top: 0;  left: 0;  width: 100%;  height: 100%;}a.tellink {    color: #4765A0;    font-weight: 500;}a.tellink:hover { 	filter: alpha(opacity=50);	opacity: 0.5; 	transition : 0.5s;　/*ふわっとさせる指定*/}	@media (min-width: 601px) {.sp-slide {	display: none !important;}}@media (max-width: 600px) {.pc-slide {	display: none !important;}}.modal_content_h2 {  text-align: center;  margin: 50px auto 20px;}.modal_content a {    color: #4765A0;    font-weight: 500;}.modal_content a:hover { 	filter: alpha(opacity=50);	opacity: 0.5; 	transition : 0.5s;　/*ふわっとさせる指定*/}	/*--------------- flex参考 ---------------*/ .flex_dummy{ 	display: flex;	       flex-wrap: n返しなし・単一行（デフォルト）*/    flex-wrap: wrap;         /*折り返し有り・複数行*/    flex-wrap: wrap-reverse; /*折り返し有り・複数行・折り返し地点が逆*/	       justify-content: flex-start;    /*左（上）揃え*/    justify-content: flex-end;      /*右（下）揃え*/    justify-content: center;        /*中央揃え*/    justify-content: space-between; /*均等に間隔をあける*/    justify-content: space-around;  /*均等に間隔をあける・両端にも間隔をあける*/	       align-items: flex-start; /*上（左）揃え*/    align-items: flex-end;   /*下（右）揃え*/    align-items: center;     /*中央揃え*/    align-items: baseline;   /*ベースラインを揃える*/    align-items: stretch;    /*全ての要素の高さを揃える*/   	   align-content: flex-start;    /*上（左）揃え*/    align-content: flex-end;      /*下（右）揃え*/    align-content: center;        /*中央揃え*/    align-content: space-between; /*均等に間隔をあける*/    align-content: space-around;  /*均等に間隔をあける・両端にも間隔をあける*/    	background-image: url(../img/aaaa.jpg);	background-repeat: no-repeat;	background-position: center top;	background-color: #FFFFFF;　background-size: auto 100%;}.aaaaaaaaaaa >:first-child {	margin-top: 0px;	}