
/** {
	outline: 1px solid magenta;
}*/

body {
	line-height: 180%;
	/*font-size: 0.9em;*/
	font-size: 1rem;
	color: #333;
	font-family: 'Noto Sans JP', sans-serif;
  	
	
/*  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: left;
  background-color: #fff;*/
}

body * {
  box-sizing : border-box;
}

.sp_none {
	display: none;
}

h1, h2, h3, h4, h5, h6 {
	/*font-family: "BIZ UDPGothic", sans-serif;*/
	font-family: "Noto Serif JP", sans-serif;
	font-weight: 500;
  	font-style: normal;
}

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



/* ----------------------------------------------------------------------------------
*
*　基本枠デザイン
*
 ----------------------------------------------------------------------------------*/

.wrapper{
    min-height: 100vh;
    position: relative;
    /*padding-bottom: 120px;*/
    box-sizing: border-box;
}

header {
	width: 100%;
}

#header {
}

#headerarea {
}

#headerarea_recruit {
	/*background-color: #006699;*/
}

#logo {
	background-image: url("../images/logo.png");
	background-repeat: no-repeat;
	background-size: 210px 13px;
	width: 210px;
	height: 16px;
	text-indent: -9999px;
	display: block;
	margin: 15px 15px;
	float: left;
}

#logo a {
	background-image: url("../images/logo.png");
	background-repeat: no-repeat;
	background-size: 210px 13px;
	width: 210px;
	height: 16px;
	text-indent: -9999px;
	display: block;
	float: left;
}

#logo_recruit {
	background-image: url("../images/logo_recruit.png");
	background-repeat: no-repeat;
	background-size: 259px 16px;
	width: 259px;
	height: 16px;
	text-indent: -9999px;
	display: block;
	margin: 15px 15px;
	float: left;
}

#logo_recruit a {
	background-image: url("../images/logo_recruit.png");
	background-repeat: no-repeat;
	background-size: 259px 16px;
	width: 259px;
	height: 16px;
	text-indent: -9999px;
	display: block;
	float: left;
}

#Gmenu {
	clear: both;
}

/*#header ul {
	display: none;
}*/


footer {
	background: #24549A;
	color: #FFF;
	padding:20px 0;
	width: 100%;
	margin-top: 20px;
}

.ft_recruit {
	/*background: #88ADBF;*/
	/*background: linear-gradient(45deg,#24549A 30%, #739EDE 50%);*/
	background-image: radial-gradient(#739ede, #4d8ebe 50%, #24549a);
}


footer a {
	text-decoration: none;
    color: #FFF;
}

footer a:hover {
	text-decoration: underline;
}

#footer {
	margin-left: auto;
	margin-right: auto;
	width: 100%;
}

#footer a {
	text-decoration: none;
    color: #FFF;
}

#footer a:hover {
	text-decoration: underline;
}

#footer address {
	width: 100%;
	margin: 10px 0 20px 0;
	padding: 10px;
	display: block;
}

.footer_menu {
	clear: both;
	width: 100%;
	padding-top: 20px;
}

.footer_menu .fmenu {
	width: 100%;
	padding: 0 0 0 20px;
}

.ft_recruit .footer_menu .fmenu {
	width: 100%;
	padding: 0 0 0 20px;
}

.footer_menu .fmenu ul li {
		margin-left: 1rem;
}

.footer_menu.fmenu ul li a {
	text-decoration: none;
    color: #FFF;
}

.footer_menu .fmenu ul li a:hover {
	text-decoration: underline;
}

.footer_menu address {
	width: 100%;
	float: left;
}

.footer_menu address::after {
	content:"";
	clear: both;
}



/*#footer_menu ul li {
	list-style: disc;
	padding: 0 0 0 -20px;
}*/

#footer_menu ul li {
		margin-left: 1rem;
}

#footer_menu ul li a {
	text-decoration: none;
    color: #FFF;
}

#footer_menu ul li a:hover {
	text-decoration: underline;
}


.footer_menu .bannerarea {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	padding: 0 0 0 20px;
}

.footer_menu .bannerarea .bannertitle {
	width: 100%;
	margin: 30px 0 0 0;
	display:block;
}

.footer_menu .bannerarea ul {
	width: 100%;
	display:flex;
	flex-wrap: wrap;
	justify-content: left;
	margin: 0;
}

.footer_menu .bannerarea ul li {
	width:45%;
	margin: 0 0 0 10px;
	display:block;
}

.footer_menu .bannerarea ul li img{
	margin: 20px auto 0;
	width: 100%;
	display:block;
}

.footer_menu .bannerarea ul li a img {
	text-decoration: none;
	width: 100%;
    	color: #FFF;
	display:block;
}

.footer_menu .bannerarea ul li a:hover {
	opacity: .8;
}


.copyright {
	font-size: 0.9em;
	color: #FFF;
	margin: 20px 0 0 0;
	width:100%;
	text-align: center;
}

.copyright::before {
	content: "";
	border-bottom: rgba(240,240,240,1.00) solid 1px;
	display: block;
	margin: 30px 0 10px;
}




main {
	width: 94%;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}

/*.main ul li {
	list-style-type:circle;
	width: 90%;
	margin-left:3em; 
}

.main ol li {
	list-style-type: none;
	counter-increment: cnt;
	position: relative;
	width: 90%;
}
 
.main ol li::before {
	content: "( " counter(cnt) " ) ";
	display:inline-block;
	margin-left:-3em; 
	width: 3em;
	text-align: right;
	position: absolute;
	top: 0;
	left: 0;
}*/

.main p {
	width: 90%;
	margin: 1em auto;
}

h2{
	font-size:1.6rem;
	margin: 20px;
}

h3 {
	display: block;
	font-size: 1.3rem;
	color: #24549A;
	background-color: #fff;
	border: #24549A solid 1px;
	padding: 5px 0 5px 15px;
	border-radius: 0.5em;/*角丸*/
	text-align: left;
	margin: 20px 5px;
}

h4 {
  	font-size: 1.2rem;
	color: #24549A;
	margin: 20px 5px;
	padding: 5px 0 5px 0;	
	text-align: left;
	background-color: #fff;
	border-bottom: #24549A solid 1px;
}


h5 {
  font-size: 1rem;
	color: #24549A;
	margin: 20px;
	padding: 5px 0 5px 0;
	
	text-align: left;
	background-color: #fff;
	border-bottom: #24549A solid 1px;
}

h3 a {
	text-decoration: none;
	color: #FFF;
}
h3 a:hover {
	text-decoration:underline;
}

h4 a {
	text-decoration: none;
	color: #24549A;
}
h4 a:hover {
	text-decoration:underline;
}

h5 a {
	text-decoration: none;
	color: #24549A;
}
h5 a:hover {
	text-decoration:underline;
}

a:hover {
	transition: 0.6s;
}



/* ----------------------------------------------------------------------------------
*
*　コンテンツ枠
*
 ----------------------------------------------------------------------------------*/

main {
	clear: both;
	width: 98%;
	margin-left: auto;
	margin-right: auto;
}

main::after {
		clear: both;
		height: 0;
		visibility: hidden;
		display: block;
		content: ".";
}

#cont_main {
	width: 100%;
	height: 160px;
	position: relative;
	background: linear-gradient(55deg,#24549A 30%, #739EDE 50%);
}

#cont_main img {
	height: 160px;
	width: 100%;
	object-fit: cover; 
	position: relative;
}
#cont_main h2 {
	position: absolute;
	top: 30px;
	color: #fff;
	text-shadow:2px 2px 3px #7f7f7f,0px 0px 3px #6f6f6d;
	left: 10px;
	margin: 0;
}




.contents_area ,
.contents_area2 ,
.contents_area_recruit {
	width: 96%;
	margin: 0 auto;
}

.contents_area > p ,
.contents_area2 > p ,
.contents_area_recruit > p{
	margin: 0 0 0 20px;
}



/*--------------------------------------------------------------------------------------------
　パンくず
-------------------------------------------------------------------------------------------*/


#topic_path {
	/*width: 1200px;
	margin: 10px auto 15px;*/
	width:100%;
	line-height: 100%;
	background-color: #F5F5F5;
	margin: 0 0 15px 0;
	padding: 10px;
}

#topic_path:after {clear: both;height: 0;visibility: hidden;display: block;content: ".";}

/*#topic_path ol {
	width: 100%;
	margin: 0 auto 15px;
	padding: 10px 0 0 0;
}
#topic_path ol:after {clear: both;height: 0;visibility: hidden;display: block;content: ".";}

#topic_path ol li {
	float: left;
}
#topic_path ol li a {
	float: left;
	padding-right: 10px;
	padding-left: 10px;
	display: block;
	color: #46719F;
}
#topic_path ol li a:hover {
	color: #5B8FC7;
}*/



/* ----------------------------------------------------------------------------------
*
*　トップページ
*
 ----------------------------------------------------------------------------------*/

/*--------------------------------------------------------------------------------------------
　スライダー
-------------------------------------------------------------------------------------------*/



#main_img {
	width: 100%;	
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}

#top_main_wide {
	width: 100%;
	height: 360px;
	position: relative;
	/*background: #739EDE;*/
	background: linear-gradient(45deg,#24549A 30%, #739EDE 50%);
	overflow: hidden;
	/*Transformation*/
	/*padding: 70px 0 90px;*/
	/*Transformation // */
	
}

#top_main_wide img {
		object-fit: cover;
		width: 100%;
		height: 360px;
	
}

#top_main_wide .title {
	display: block;
	width: 100%;
	margin: 0 auto;
	z-index: 1;
}

#top_main_wide .title h2 {
		/*Transformation*/
		/*top: 330px;*/
		/*Transformation // */
		/*left: calc(50% - 600px);*/
		position: absolute;
		top: 20px;
		display: block;
		width: 94%;
		text-align: left;
		color: #fff;
		text-shadow: 1px 2px 1px rgba(0,0,0,0.3);
		z-index: 15000;
		
		
}

#top_main_wide .title h2::before {
	content: attr(data-en);
	position: absolute;
	top: 25px;
	left: 5px;
	color: rgba(255,255,255, 1.0);
	font-size: 0.6em;
	text-shadow: 1px 2px 1px rgba(0,0,0,0.3);
	/*text-transform: uppercase;*/
	z-index: 1;
}

/* 背景色ありコピー　*/
#top_main_wide .body {
/*	display: block;
	margin: 0 auto;
	width: 800px;
	height: 380px;
	background-color: hsla(0,0%,12%,.2);
	z-index: 2;*/
	width: 90%;
	height: 20%;
	position: absolute;
    top: 45%;
    left: 50%;
    transform: translate(-50%, -50%);
	/* 帯外した */
/*	background-color: hsla(0,0%,12%,.5);
	border-radius: 10px;*/
	z-index: 15000;
	
}

#top_main_wide .body h2 {
	display: block;
	text-align: center;
	color: #fff;
	font-size: 1.4em;
	line-height: 120%;
	/*text-shadow: 1px 2px 1px rgba(0,0,0,0.3);*/
	/*text-shadow: 2px 2px 2px rgba(0,0,0,0.5);*/
	text-shadow: 0 0 15px #333;
	z-index: 15000;
}

#top_main_wide .body h3 {
	display: block;
	text-align: center;
	color: #fff;
	font-size: 1.2em;
	line-height: 120%;
	background: none;
	border: none;
	text-shadow: 1px 2px 1px rgba(0,0,0,0.3);
	z-index: 15000;
}

#top_main_wide .body p {
	display:none;
	/*display: block;
	padding: 20px;
	text-align: left;
	color: #fff;
	font-size: 1.6em;
	text-shadow: 1px 2px 1px rgba(0,0,0,0.3);
	z-index: 15000; */
}


/*--------------------------------------------------------------------------------------------
　トップ　メインイメージ重なりバナー
-------------------------------------------------------------------------------------------*/
#top-banner-wrapper {
	width: 100%;
	position:relative;
	/*background-color: #fff;
	border-radius: 20px;*/
	
	margin: 30px auto 0;
	background-image:url("../images/background.png");
	background-position:top;
	background-repeat: no-repeat;
	/* 薄く */
	background-color:rgba(255,255,255,0.6);
	background-blend-mode:lighten;
}

#top-banner-wrapper .main {
	width:100%;
	/*object-fit: cover;*/
	margin: 0 auto;
}

.top-banner-wrapper2 {
	width: 100%;
	position:relative;
	/*background-color: #fff;
	border-radius: 20px;*/
	display: flex;
	flex-wrap:wrap;
	justify-content: center;
	margin: 30px auto 50px;
	/*background-image:url("../images/background.png");
	background-position:top;
	background-repeat: no-repeat;*/
}


.top-banner-wrapper2 h2 {
	font-size: 2rem;
	margin: 20px 0;
	padding: 15px;
	/*color: #707070;*/
	border-bottom: 1px solid #CCC;
	/*font-family: "Noto Serif JP", sans-serif;*/
	font-weight: 500;
  	font-style: normal;
}


.top-banner-wrapper2 .cont_box {
	display: block;
	/*width: 600px;*/
	width: 100%;
	margin: 10px 5px;
	background-color: #006699;
	overflow: hidden;
}

.top-banner-wrapper2 .cont_box a {
	text-decoration: none;
	color:#fff;
}

.top-banner-wrapper2 .cont_box a:hover img {
	opacity: 0.8;	
	transform: scale(1.05);
}

.top-banner-wrapper2 .cont_box img {
	/*width: 600px;*/
	width: 100%;
	height: 320px;
	object-fit: cover;
	display:block;
	margin: 0;
	transition: all 0.4s;
}

.top-banner-wrapper2 .cont_box .cont_title {
	/*width: 600px;*/
	display:block;
	color: #fff;
	
	margin: 0;
	padding: 10px;
	position: relative;
}

.top-banner-wrapper2 .cont_box .cont_title::before {
	content:"";
	position: absolute;
	top:18px;
	right:5px;
	display:inline-block;
	width: 25px;
	height: 19px;
	background:url(../images/allow3w.png) no-repeat;
	background-size:contain;
}

.top-banner-wrapper2 .cont_box .cont_title h4 {
	font-size: 1.2em;
	margin: 0;
	padding: 0;
	color: #fff;
	background-color: unset;
	border:unset;
}

.top-banner-wrapper2 .cont_box .cont_title p {
	font-size: 0.8em;
	margin: 0;
	padding: 5px;
	color: #fff;
}



/*--------------------------------------------------------------------------------------------
　トップ　お知らせ
-------------------------------------------------------------------------------------------*/

#news-wrapper {
	width: 100%;
	min-height: 300px;
	background: #FFF;
}

#news {
	width: 100%;
	margin: 20px auto;
	padding: 40px 0;
}

#news h2 {
	font-size: 2rem;
	font-weight: 500;
	margin: 20px 0;
	padding: 15px;
	color: #707070;
	border-bottom: 1px solid #CCC;
}

#news h3 a {
	color: #707070;
	margin: 20px 0;
}

#news h3 a:hover {
	text-decoration: none;
}

/*#news dt {
	clear: both;
	padding: 10px;
}*/

#news dt {
	width: 90%;
	float: left;
	clear: both;
	padding: 15px 15px 15px 150px;
	margin: 0 0 0 5px;
	overflow: hidden;
	/*border-top: 1px dashed #ccc;*/
}

#news dd {
	width: 100%;
	float: left;
	padding: 15px;
	border-bottom: 1px dashed #ccc;
}

#news dl dt:first-child  {
	border-top: none;
}

#news dl dt:first-child + dd {
	border-top: none;
}

#news dl dd a {
	text-decoration: none;
    color: #000;
}

#news dl dd a:hover {
	text-decoration: underline;
}


#archive_news {
	width: 90%;
	margin: 20px auto;
	padding: 40px 0;
}

#archive_news dt {
	width: 100%;
	float: left;
	clear: both;
	padding: 15px 15px 15px 150px;
	
}

#archive_news dd {
	width: 90%;
	float: left;
	padding: 15px;
	border-bottom: 1px dashed #ccc;
}

#archive_news dl dt:first-child  {
	border-top: none;
}

#archive_news dl dt:first-child + dd {
	border-top: none;
}

#archive_news dl dd a {
	text-decoration: none;
    color: #333;
}

#archive_news dl dd a:hover {
	text-decoration: underline;
}





.icon_news {
    background-image: url("../images/top/icon_news.png");
    background-repeat: no-repeat;
    background-position: left;
    margin-left: 10px;
}

.icon_event {
    background-image: url("../images/top/icon_event.png");
    background-repeat: no-repeat;
    background-position: left;
    margin-left: 10px;
}

.icon_recruit {
    background-image: url("../images/top/icon_recruit.png");
    background-repeat: no-repeat;
    background-position: left;
    margin-left: 10px;
}

.icon_fs {
    background-image: url("../images/top/icon_fs.png");
    background-repeat: no-repeat;
    background-position:left;
    margin-left: 10px;
}

.icon_bs {
    background-image: url("../images/top/icon_bs.png");
    background-repeat: no-repeat;
    background-position:left;
    margin-left: 10px;
}
.icon_sa {
    background-image: url("../images/top/icon_sa.png");
    background-repeat: no-repeat;
    background-position:left;
    margin-left: 10px;
}


/*--------------------------------------------------------------------------------------------
　トップ　コンテンツ枠
-------------------------------------------------------------------------------------------*/

.top-cont-wrapper {
	width: 100%;
	/*min-height: 880px;*/
	display: flex;
	position: relative;
	overflow: hidden;
}

.top-cont-wrapper::after {
  content: "";
  position: absolute;
  left:0;
  top:0;
  width: 100%;
  height: 240px;
  background-color: #E5E5E5;
  background: linear-gradient(180deg, #E5E5E5 20%, #FFFFFF 100%);
  opacity: 0.8;
  z-index: -1;
  display: block;
}

.top-cont-wrapper h2::after {
/*  content: " ";
  display: block;
  border-bottom: solid 5px #F00;
  margin: -5px 0 20px 0;
  width: 40px;*/
}

.top-cont {
	width: 100%;
	margin: 30px auto 0;
	display:flex;
	flex-wrap:wrap;
}

/*.top-cont .order {
	order: -1;
}*/

.top-cont-pic {
	width: 100%;
	margin: 30px 0 0 0;
}

.top-cont-pic img {
	width: 100%;
	height: 360px;
	object-fit: cover;
	/*border-radius: 15px;*/
}

.top-cont-text {
	width: 100%;
	margin: 20px 20px 40px 20px;
	background-color: #FFF;
}

.top-cont-text ul {
	margin: 10px 0 0 40px;
	display: flex;
	flex-wrap:wrap;
}

.top-cont-text li {
    position: relative;
    padding-left: 10px;
	list-style: none;
	text-indent: 15px;
	width: 300px;
}
 
.top-cont-text li::before {
    content: "";
    position: absolute;
    top: .6em;
    left: 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    width: 5px;
    height: 5px;
    border-top: 2px solid #003586;
    border-right: 2px solid #003586;
}

.top-cont-text ul li a {
	text-decoration: none;
    color: #333;
}

.top-cont-text ul li a:hover {
	text-decoration: underline;
}

.top-cont-text p {
	margin: 10px 30px 0 30px;
}


/*--------------------------------------------------------------------------------------------
　大画像　コンテンツメイン
-------------------------------------------------------------------------------------------*/
#cont_main_wide {
	width: 100%;
	height: 360px;
	position: relative;
	/*background: #739EDE;*/
	background: linear-gradient(45deg,#24549A 30%, #739EDE 50%);
	overflow: hidden;
	/*Transformation*/
	/*padding: 70px 0 90px;*/
	/*Transformation // */
	
}

#cont_main_wide img {
		object-fit: cover;
		width: 100%;
		height: 360px;
	
}

#cont_main_wide .title {
	display: block;
	width: 100%;
	margin: 0 auto;
	z-index: 1;
}

#cont_main_wide .title h2 {
		/*Transformation*/
		/*top: 330px;*/
		/*Transformation // */
		/*left: calc(50% - 600px);*/
		position: absolute;
		top: 20px;
		display: block;
		width: 90%;
		text-align: left;
		color: #fff;
		text-shadow: 1px 2px 1px rgba(0,0,0,0.3);
		z-index: 15000;
		
}

#cont_main_wide .title h2::before {
	content: attr(data-en);
	position: absolute;
	top: 25px;
	left: 5px;
	color: rgba(255,255,255, 1.0);
	font-size: 0.6em;
	text-shadow: 1px 2px 1px rgba(0,0,0,0.3);
	/*text-transform: uppercase;*/
	z-index: 1;
}

/* 背景色ありコピー　*/
#cont_main_wide .body {
/*	display: block;
	margin: 0 auto;
	width: 800px;
	height: 380px;
	background-color: hsla(0,0%,12%,.2);
	z-index: 2;*/
	width: 90%;
	height: 50%;
	position: absolute;
    top: 70%;
    left: 50%;
    transform: translate(-50%, -50%);
	background-color: hsla(0,0%,12%,.5);
	border-radius: 10px;
	z-index: 15000;
	
}

#cont_main_wide .body h2 {
	display: block;
	text-align: center;
	color: #fff;
	font-size: 1.4em;
	line-height: 120%;
	text-shadow: 1px 2px 1px rgba(0,0,0,0.3);
	z-index: 15000;
}

#cont_main_wide .body h3 {
	display: block;
	text-align: center;
	color: #fff;
	font-size: 1.2em;
	line-height: 120%;
	background: none;
	border: none;
	text-shadow: 1px 2px 1px rgba(0,0,0,0.3);
	z-index: 15000;
}

#cont_main_wide .body p {
	display:none;
	/*display: block;
	padding: 20px;
	text-align: left;
	color: #fff;
	font-size: 1.6em;
	text-shadow: 1px 2px 1px rgba(0,0,0,0.3);
	z-index: 15000; */
}



/*--------------------------------------------------------------------------------------------
　各コンテンツ用　400px用
-------------------------------------------------------------------------------------------*/

.content-flex-wrapper {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content:center;
	padding: 10px 0 50px;
	margin: 0 auto;
}


.content-flex-wrapper .cont_box {
	display: block;
	width: 100%;
	min-height: 280px;
	margin: 10px 10px 50px 10px;
	background-color: #F0F0F0;
	overflow: hidden;
}

.content-flex-wrapper .cont_box a {
	text-decoration: none;
}

.content-flex-wrapper .cont_box a:hover img {
	opacity: 0.8;
	transform: scale(1.05);
	transition: all 0.4s;
	
}

.content-flex-wrapper .cont_box img {
	width: 100%;
	height: 220px;
	object-fit: cover;
	display:block;
	margin: 0;
	transition: all 400ms ease-out;
	overflow: hidden;
}

.content-flex-wrapper .cont_box .cont_title {
	width: 100%;
	display:block;
	color: #fff;	
	margin: 0;
	padding: 10px;
	position: relative;
}

.content-flex-wrapper .cont_box .cont_title::before {
	content:"";
	position: absolute;
	top:18px;
	right:5px;
	display:inline-block;
	width: 25px;
	height: 19px;
	background:url(../images/allow3.png) no-repeat;
	background-size:contain;
}

.content-flex-wrapper .cont_box .cont_title h4 {
	font-size: 1.2em;
	margin: 0;
	padding: 0;
	color: #333;
	background-color: unset;
	border:unset;
}

.content-flex-wrapper .cont_box .cont_title p {
	font-size: 1em;
	margin: 0;
	padding: 5px;
	color: #333;
}

/* 事業部　3段組み　*/

.content-flex-wrapper .cont_box_product {
	display: block;
	width: 100%;
	min-height: 240px;
	margin: 10px 10px 50px 10px;
	background-color: #F0F0F0;
	overflow: hidden;
}

.content-flex-wrapper .cont_box_product a {
	text-decoration: none;
}

.content-flex-wrapper .cont_box_product a:hover img {
	opacity: 0.8;
	transform: scale(1.05);
	transition: all 0.4s;
	
}

.content-flex-wrapper .cont_box_product img {
	width: 100%;
	height: 240px;
	object-fit: cover;
	display:block;
	margin: 0;
	transition: all 400ms ease-out;
	overflow: hidden;
}

.content-flex-wrapper .cont_box_product .cont_title ,
.content-flex-wrapper .cont_box_product .cont_title2 {
	width: 100%;
	display:block;
	color: #fff;	
	margin: 0;
	padding: 10px;
	position: relative;
}

.content-flex-wrapper .cont_box_product .cont_title::before {
	content:"";
	position: absolute;
	top:18px;
	right:5px;
	display:inline-block;
	width: 25px;
	height: 19px;
	background:url(../images/allow3.png) no-repeat;
	background-size:contain;
}

.content-flex-wrapper .cont_box_product .cont_title2::before {
	content:"";
	position: absolute;
	top:18px;
	right:5px;
	display:inline-block;
	width: 25px;
	height: 19px;
	background:url(../images/allow3anc.png) no-repeat;
	background-size:contain;
}

.content-flex-wrapper .cont_box_product .cont_title h4 ,
.content-flex-wrapper .cont_box_product .cont_title2 h4 {
	font-size: 1.2em;
	margin: 0 20px 0 0;
	padding: 0;
	color: #333;
	background-color: unset;
	border:unset;
}

.content-flex-wrapper .cont_box_product .cont_title p ,
.content-flex-wrapper .cont_box_product .cont_title2 p {
	font-size: 1em;
	margin: 0;
	padding: 5px;
	color: #333;
}


/* リクルート　縦画像用　*/

.content-flex-wrapper .cont_box_recruit {
	display: block;
	width: 220px;
	min-height: 400px;
	margin: 10px 10px 50px 10px;
	background-color: #F0F0F0;
	overflow: hidden;
}

.content-flex-wrapper .cont_box_recruit a {
	text-decoration: none;
}

.content-flex-wrapper .cont_box_recruit a:hover img {
	opacity: 0.8;
	transform: scale(1.05);
	transition: all 0.4s;
	overflow: hidden;
	
}

.content-flex-wrapper .cont_box_recruit img {
	width: 220px;
	height: 220px;
	object-fit: cover;
	display:block;
	margin: 0;
	transition: all 400ms ease-out;
	border-radius: 20px 20px 0 0;
}

.content-flex-wrapper .cont_box_recruit .cont_title {
	width: 220px;
	display:block;
	color: #fff;
	
	margin: 0;
	padding: 10px;
	position: relative;
}

.content-flex-wrapper .cont_box_recruit .cont_title::before {
/*	content:"";
	position: absolute;
	top:18px;
	right:5px;
	display:inline-block;
	width: 25px;
	height: 19px;
	background:url(../images/allow3.png) no-repeat;
	background-size:contain;*/
}

.content-flex-wrapper .cont_box_recruit .cont_title p {
	font-size: 1em;
	margin: 0;
	padding: 5px;
	color: #333;
}

/* 企業情報　3段組み用　*/

.content-flex-wrapper .cont_box_company {
	display:flex;
  	text-align:center;
	width: 100%;
	height: 220px;
	margin: 10px 10px 50px 10px;
	/*background-color: #F0F0F0;*/
	background-image: linear-gradient(0deg, #f0f0f0, #dcdcdc);
	overflow: hidden;
	justify-content: center;
	align-items: center;
	border-radius: 15px;
	position: relative;
}

.content-flex-wrapper .cont_box_company a {
	text-decoration: none;
	color: #333;
	display:flex;
	width: 100%;
	height: 220px;
}

.content-flex-wrapper .cont_box_company .title{
	display:block;
	margin: auto;
	justify-content: center;
	text-decoration: none;
	font-size: 1.6em;
	padding: 25% 20px;
}

.content-flex-wrapper .cont_box_company a:hover {
	opacity: 0.8;
	transition: all 0.4s;
	color: #006699;
	background-image: linear-gradient(180deg, #f0f0f0, #dcdcdc);
	justify-content: center;
	align-items: center;
}

.content-flex-wrapper .cont_box_company img {
	width: 100%;
	height: 220px;
	object-fit: cover;
	display:block;
	margin: 0;
	transition: all 400ms ease-out;
}

.content-flex-wrapper .cont_box_company .cont_title {
	width: 100%;
	display:block;
	color: #fff;
	margin: 0;
	padding: 10px;
	position: relative;
}

.content-flex-wrapper .cont_box_glaph {
 	 width: 48%;
}

.content-flex-wrapper .cont_box_glaph img {
	width: 100%;
	height: auto;
}

.content-flex-wrapper .cont_box_cp img {
	width: 100%;
	height: auto;
	margin: 20px auto;
}

/*--------------------------------------------------------------------------------------------
　事業部用　2段組み
-------------------------------------------------------------------------------------------*/

.content-product-wrapper {
	width: 100%;
	display: flex;
	flex-wrap:wrap-reverse;
	justify-content: left;
	padding: 50px 0;
	position: relative;
}

/*.content-product-wrapper .order {
	order: -1;
} */

.content-product-wrapper .cont_box_img {
	display: block;
	width: 100%;
	margin: 10px;
	background-color: #fff;
	overflow: hidden;
	position: relative;
}

.content-product-wrapper > .cont_box_img > img {
	width: 100%;
	height: 240px;
	object-fit: cover;
	display:block;
	margin: 0;
	transition: all 400ms ease-out;
}

.content-product-wrapper .cont_box {
	display: block;
	width: 100%;
	margin: 10px;
	background-color: #FFF;
	position: relative;
}

.content-product-wrapper .cont_box .title {
	display: block;
	margin: 0 0 0 0;
	/*padding: 20px;*/
	/*background-color: #FCFCFC;*/
	background-color: #FFF;
}

.content-product-wrapper .cont_box .titleorder {
	display: block;
	margin: 0;
	/*padding: 20px;*/
	width:100%;
	/*background-color: #FCFCFC;*/
	background-color: #FFF;
	position: relative;
	z-index: 1;
}

.content-product-wrapper .cont_box .title h3,
.content-product-wrapper .cont_box .titleorder h3 {
	color: #000;
	font-size: 2rem;	
	margin: 0;
	border: none;
	background: none;
	
}

.content-product-wrapper .cont_box .title p,
.content-product-wrapper .cont_box .titleorder p{
	color: #000;
	font-size: 1.2rem;	
	margin: 0 20px 20px 15px;
	border: none;
	background: none;
	
}


.content-product-wrapper .cont_box .body {
	display: block;
	width: 100%;
	margin: 0;
	padding: 20px;
	background-color: #FFF;
}

.content-product-wrapper .cont_box .body h5 {
	margin: 0 0 30px 0;;
	color: #333;
	font-family:none;
	border-bottom: #333 1px solid;
}



/*--------------------------------------------------------------------------------------------
　リクルート　インタビュー用　コンテンツメイン
-------------------------------------------------------------------------------------------*/
#cont_main_recruit {
	width: 100%;
	height: 360px;
	position: relative;
	display:flex;
	flex-wrap:wrap;
	background-image: radial-gradient(#739ede, #4d8ebe 50%, #24549a);
	/*background: linear-gradient(45deg,#24549A 30%, #739EDE 50%);*/

	/*overflow: hidden;*/

	/*Transformation*/
	/*padding: 80px 0 80px;*/
	/*Transformation */
	
}

/*#cont_main_recruit .img {
	width: 1380px;
	margin: 0 auto;
	
}*/

#cont_main_recruit img {
	/*width: 1380px;
	margin: 0 auto;*/
	
	object-fit: cover;
	width: 100%;
	height: 360px;
	object-position: left;
	
}

#cont_main_recruit .title {
	width: 100%;
	margin: 0 auto;
display:block;
	position: relative;	
	z-index: 1;
}

#cont_main_recruit .body {
	width: 90%;
	height: 160px;
	margin:-180px 0 0 0;
	/*position: absolute;
    	top: 60%;
    	right: 10%;*/
    	/*transform: translate(40%, -140%);*/
	background-color: hsla(0,0%,12%,.2);
	border-radius: 10px;
	z-index: 1000;
	
}

#cont_main_recruit .body h2 {
	/*Transformation*/
	/*top: 330px;*/
	/*Transformation // */
	/*left: calc(50% - 600px);*/
	font-family: "BIZ UDPGothic", sans-serif;
	display: inline-block;
	text-align: left;
	color: #fff;
	text-shadow: 1px 2px 1px rgba(0,0,0,0.3);
	font-size:1.2em;
margin:10px 0 0 20px;;
		
}


#cont_main_recruit .body p {
	display: block;
	padding: 0 30px;
	text-align: left;
	color: #fff;
	text-shadow: 1px 2px 1px rgba(0,0,0,0.3);
font-size:0.9em;
line-height:120%;
}



/* ----------------------------------------------------------------------------------
*
*　事業紹介用
*
 ----------------------------------------------------------------------------------*/
.business-wrapper {
	position: relative;
	width: 100%;
	min-height: 700px;
	margin:0;
	padding: 0;
	overflow: hidden;
	/*display: flex;*/
}

.business-wrapper > img {
	/*width: 100%;
	height: 700px;
	object-fit: cover;
	margin: 0;
	opacity: .1; */
	
}

.business-wrapper2 {
	width: 100%;
	min-height: 100px;
	display:block;
	margin: 0 auto;
	/*z-index: 1;*/
	
	/*position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);  */
	
	/*border: #f00 1px solid;	*/
}

.business-wrapper2 h2 {
	color: #333;
	text-shadow: 0 -1px 1px rgba(0, 0, 0, 0.4), 0 1px 1px rgba(255, 255, 255, 0.2);
}

.business-wrapper3 {
	display: flex;
	width:100%;
	flex-wrap: wrap-reverse;
	justify-content:center;
	background-color: rgba(0,102,153,0.50);
	min-height: 360px;
	padding: 40px 20px;
}

.business-wrapper3-2 {
	display: flex;
	flex-wrap: wrap-reverse;
	justify-content:center;
	background-color: rgba(0,102,153,0.50);
	/*background-color: rgba(153,85,0,0.50);*/
	min-height: 360px;
	padding: 40px 20px;
	border-radius: 20px;
}

.business-wrapper4 {
	
	display: block;
	width:100%;	
	padding: 15px;
	margin: 0 auto;
	/*background-color: #fff;*/
	background-color: hsla(0,0%,100%,0.9);
	
	/*border: #f00 1px solid;*/
}

.business-wrapper4 h3 {
	font-size: 1.1em !important;
	margin: 0 !important;
	color:#333;
	background-color: unset;
	border: unset;
	border-bottom: #333 1px solid;
	border-radius: 0px;
	
}

.business-wrapper4 img {
	width:100%;
	height: 240px;
	object-fit: cover;

}


/*FS 紹介　*/

.fs_partner_title {
  position: relative;
  /*color:#00acc1;*/
  text-align: center;
  padding: 0 30%;/*文字数が増えた時に線に被らないように線幅以上のサイズで設定*/
  border: none;
  color:#000;
  margin: 30px auto;
}
.fs_partner_title::before,
.fs_partner_title::after {
  position: absolute;
  content: '';
  top: calc(50% - 1.5px);/*上下中央にする*/
  display: inline-block;
  width: 10%;
  height: 2px;
  border-top: 2px solid #000;
}
.fs_partner_title::before {
  left:0;
}
.fs_partner_title::after {
  right: 0;
}

.fs_mdlist {
	width:100%;
	display: flex;
	flex-wrap: wrap;
}	
	
.fs_mdlist li {
/*	width:100px;
	display: block;
	background: rgba(240,240,240,1.00);
	padding: 10px;
	margin: 10px;*/
	list-style: none;
	position: relative;
}	
	
.fs_mdlist li a {
	width:100px;
	display: block;
	background: rgba(240,240,240,1.00);
	padding: 10px;
	margin: 5px;
	text-decoration: none;
	color: #000;
}

.fs_mdlist li a::before {
	content: '';
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
	width: 20px;
	height: 20px;
	background-color: transparent;
	border: 1px solid #333;
	border-radius: 50%;
}

.fs_mdlist li a::after {
	content: '';
	position: absolute;
	top: calc(50% - 6px);
	right: 25px;
	transform: rotate(135deg) translateY(-50%);
	width: 6px;
	height: 6px;
	border-width: 2px 2px 0 0;
	border-style: solid;
	border-color: #333 #333 transparent transparent;
}

.fs_mdlist li a:hover {
	/*background-color: #333;*/

}

.fs_mdlist li a:hover::before {
	content: '';
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
	width: 20px;
	height: 20px;
	background-color: #0C6488;
	border: 1px solid #333;
	border-radius: 50%;
}

.fs_mdlist li a:hover::after {
	border-color: #f2f2f2 #f2f2f2 transparent transparent;
}	
	
	
/*FS 取引先企業名　*/	
.fs_list {
	width:100%;
	display: flex;
	flex-wrap: wrap;
}
.fs_list li {
	width:40%;
	display: block;
	background: rgba(240,240,240,1.00);
	padding: 10px;
	margin: 10px 5px;
}


/* 3段 商品紹介　詳細用 */
.fs_flex_wrapper {
	display: flex;
	flex-wrap: wrap;
	margin: 40px auto 0;
	width: 100%;
}

.cont3_box_product {
	display:block;
	width: 30%;
	padding: 10px;
	margin: 10px 10px 10px 0;
}

.cont3_box_product img {
	object-fit: cover;
	width: 100%;
	height: 120px;
}




/* ----------------------------------------------------------------------------------
*
*　リクルート用
*
 ----------------------------------------------------------------------------------*/

.recruit-bg {
	width: 100%;
	position:relative;
	/*background-color: #fff;
	border-radius: 20px;*/
	
	/*margin: 30px auto 0;*/
	margin: 0 auto 0;
	background-image:url("../images/background.png");
	
	
	/* 薄く */
	background-color:rgba(255,255,255,0.6);
	background-blend-mode:lighten;
	
	
	background-position:top center;
	background-repeat:repeat-y;

}

.recruit-bg-cl1 {
background-color: #dfe5ea;
}


.topslide .title {
	display: block;
	width: 100%;
	margin: 0 auto;
	z-index: 1;
}

.topslide .title h2 {
		/*Transformation*/
		/*top: 330px;*/
		/*Transformation // */
		/*left: calc(50% - 600px);*/
		position: absolute;
		top: 90px;
		display: block;
		width: 100%;
		text-align: left;
		color: #fff;
		text-shadow: 1px 2px 1px rgba(0,0,0,0.3);
		z-index: 15000;
		
}

.topslide .title h2::before {
	content: attr(data-en);
	position: absolute;
	top: 45px;
	left: 5px;
	color: rgba(255,255,255, 1.0);
	font-size: 0.6em;
	text-shadow: 1px 2px 1px rgba(0,0,0,0.3);
	/*text-transform: uppercase;*/
	z-index: 1;
}

/* 背景色ありコピー　*/
.topslide .body {
/*	display: block;
	margin: 0 auto;
	width: 800px;
	height: 380px;
	background-color: hsla(0,0%,12%,.2);
	z-index: 2;*/
	width: 100%;
	height: 100px;
	position: absolute;
    top: 60%;
    left: 50%;
    transform: translate(-50%, -50%);
	background-color: hsla(0,0%,12%,.1);
	border-radius: 10px;
	z-index: 15000;
	
}

.topslide .body h2 {
	display: block;
	font-size: 1.2em;
	font-family: "M PLUS 1p", sans-serif;
	text-align: center;
	color: #fff;
	text-shadow: 1px 2px 1px rgba(0,0,0,0.3);
	z-index: 15000;
}

.topslide .body p {
	display: block;
	padding: 20px;
	text-align: left;
	color: #fff;
	text-shadow: 1px 2px 1px rgba(0,0,0,0.3);
	z-index: 15000;
}




.recruit-news-wrapper {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 80%;
	height: 120px;
	padding: 0 0 0 25px;
	background: #FFF;
	border: #fff 1px solid;
	border-radius: 15px 0 0 0;
	z-index: 100;
}

.recruit-news-wrapper h2 {
	/*font-family: "M PLUS 1p", sans-serif;*/
/*  content: " ";
  display: block;
  border-bottom: solid 5px #F00;
  margin: -5px 0 20px 0;
  width: 40px;*/
}

.recruit-news {
	width: 100%;
	margin: 5px auto;
	display: flex;
	flex-wrap: wrap;
	/*overflow: hidden;*/
}

.recruit-news p {
	display: block;
	width:50%;
	margin: 5px 0 0 0;
	color: #006699;
}

.recruit-news dl {
	/*display: flex;
	flex-wrap: wrap;*/
	display:inline;
}

.recruit-news dt {
	display:inline;
	width: 50%;
	padding: 5px;
	
}

.recruit-news dd {
	display: block;
	width: 100%;
	padding: 5px;
	line-height: 100%;
	overflow: visible;
}

.recruit-news dl dd a {
	text-decoration: none;
    color: #333;
}

.recruit-news dl dd a:hover {
	text-decoration: underline;
}*

/*.recruit-news dl dt:first-child  {
	border-top: none;
}

.recruit-news dl dt:first-child + dd {
	border-top: none;
}

*/

.recruit-top-wrapper {
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto;
	justify-content:center;
	width: 100%;
}

.recruit-top-wrapper h2 {
	/*font-family: "M PLUS 1p", sans-serif;*/
	font-size: 1.6em;
	font-family: "BIZ UDPGothic", sans-serif;
	display: block;
	margin: 60px 0 40px;
	text-align: center;
	width: 100%;
}

.recruit-top-box {
	display: block;
	width: 100%;
	margin: 50px;
	position: relative;
}

.recruit-top-box img {
	width: 100%;
	height: 240px;
	object-fit: cover;
	border-radius: 15px;
}


.recruit-top-box div {
	position: absolute;
	display: block;
	/*width: 400px;*/
	/*top: 50%;
    left: 50%;
	transform: translate(-50%, -50%);*/
	top:0;
	left:0;
	right:0;
	bottom:0;
	margin: auto;
	height: 2em;
	background-color: hsla(0,0%,12%,.3);
}

.recruit-top-box div p {
	text-align: center;
	/*font-family: "M PLUS 1p", sans-serif;*/
	font-size: 1.4em;
	color: #FFF;	
	text-shadow: 1px 2px 2px rgba(0,0,0,0.8);
	/*text-shadow: 2px 2px 5px rgba(255,255,255,0.90);*/
	
	
}

/*.recruit-top-box:nth-child(odd) {
	margin: 160px 0;
}*/


/*.recruit-top-wrapper:nth-child(1) .recruit-top-box:nth-child(even) , 
.recruit-top-wrapper:nth-child(2) .recruit-top-box:nth-child(even)  {
	margin: 160px 0 0 0;
}*/



/*.recruit-top-wrapper:nth-child(2) .recruit-top-box:nth-child(even)  {
	margin: 0;
}*/

/*.recruit-top-wrapper:nth-child(3) .recruit-top-box:nth-child(even)  {
	margin: 0 !important;
}*/





.recruit-top-wide-wrapper {
	display: block;
	width: 100%;
	margin: 50px auto;
}

.recruit-top-wide-wrapper h2 {
	/*font-family: "M PLUS 1p", sans-serif;
	
	font-size: 2.8em;*/
	font-family: "BIZ UDPGothic", sans-serif;
	display: block;
	margin: 60px 0 40px;
	text-align: center;
	width: 100%;
	font-size: 1.6em;
}


/*--------------------------------------------------------------------------------------------
　リクルート　先輩コンテンツ枠
-------------------------------------------------------------------------------------------*/

.recruit-member-wrapper {
	width: 100%;
	min-height: 540px;
	display: block;
	position: relative;
	overflow: hidden;
	margin: 0 0 80px 0;
}

.recruit-member-wrapper::after {
  content: "";
  position: absolute;
  left:0;
  top:0;
  width: 100%;
  height: 300px;
  background-color: #E5E5E5;
  background: linear-gradient(180deg, #E5E5E5 20%, #FFFFFF 100%);
  opacity: 0.8;
  z-index: -1;
  display: block;
}


.recruit-member-cont-wrapper {
  margin:0 auto;
  width:100%;
  display:flex;
  flex-wrap:wrap;
}


/*.recruit-member-cont-wrapper .order {
	order: -1;
}  */

.recruit-member-cont-wrapper .cont-pic {
	width: 100%;
	margin: 50px 10px 0 10px;
}

.recruit-member-cont-wrapper .cont-pic img {
	width: 100%;
	
	border-radius: 10px;
	height: auto;
	/*object-fit: cover;*/
	/**/
}

.recruit-member-cont-wrapper .cont-text {
	width: 100%;
	margin: 40px 10px 0 10px;
	padding: 20px;
	background-color: #FFF;
	border: #CCC 1px solid;
	border-radius: 15px;
}

.recruit-member-cont-wrapper .cont-text h2 {
	/*font-family: "M PLUS 1p", sans-serif;*/
	font-family: "BIZ UDPGothic", sans-serif;
	display: block;
	margin: 20px 10px 10px;
	text-align: left;
	width: 100%;
}

.recruit-member-cont-wrapper .cont-text p {
	margin: 30px 10px 20px 10px;
}



/* スケジュール */

.recruit-schedule-wrapper {
	width: 96%;
	margin: 50px auto;
	/*display: flex;*/
}

.recruit-schedule-wrapper  h2 {
	/*font-family: "M PLUS 1p", sans-serif;*/
	font-size: 1.6em;
	font-family: "BIZ UDPGothic", sans-serif;
	display: block;
	margin: 60px 0 40px;
	text-align: center;
	width: 100%;
}

.recruit-schedule {
    position: relative;
    font-size: 1em;;
}
.recruit-schedule::before {
    position: absolute;
    top: 0px;
    left: 6.5em;
    width: 6px;
    height: 100%;
    background-color: #deeef7;
    content: "";
}

.recruit-schedule ul {
    padding: 0px;
    margin: 0px;
    list-style: none;
}

.recruit-schedule li {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
}
.recruit-schedule li + li {
    margin-top: 2em;
}

.recruit-schedule_time {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 5em;
    height: 2em;
    border-radius: 6px;
    background-color: #3388dd;
    color: #fff;
    text-align: center;
}
.recruit-schedule_time::before {
    position: absolute;
    top: 50%;
    right: 0px;
    transform: translateX(50%) translateY(-50%) rotate(45deg);
    width: 0.5em;
    height: 0.5em;
    z-index: -1;
    background-color: #3388dd;
    content: "";
}
.recruit-schedule_time::after {
    position: absolute;
    top: 50%;
    left: 6em;
    transform: translateY(-50%);
    width: 1em;
    height: 1em;
    border: 2px solid #fff;
    border-radius: 50%;
    background-color: #3388dd;
    content: "";
}

.recruit-schedule_content_title {
    font-weight: bold;
}

.recruit-schedule_content {
    margin: 0px 0px 0px 3em;
    width: calc(100% - 10em);
}


/*--------------------------------------------------------------------------------------------
　リクルート　応募用
-------------------------------------------------------------------------------------------*/

.recruit_entry_title {
	display: block;
	width: 600px;
	margin: 0 auto 100px;
}
	

.recruit_entry_title h3 {
	/*display: block;*/
	font-size:3em;
	font-family: "BIZ UDPGothic", sans-serif;
	text-align: center;
	border: none;
	border-radius: 0;
	border-bottom: 1px #ccc solid;
	position: relative;
	background-color:rgba(0,0,0,0)
}

.recruit_entry_title h3::before {
	content: attr(data-en);
	position: absolute;
	top: 100px;
	left: 0;
	right:0;
	font-size:0.8em;
	z-index: 1;
}

.recruit_entry_body p {
	font-size:2em;
	text-align: center;
	line-height: 3em;
}

.recruit_entry_banner {
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	margin: 50px auto;
	padding: 30px;
}

.recruit_entry_banner .banner{
	display: block;
	margin: 20px;
	text-align: center;
	color: #006699;
}

.bgwave {
	background:url("../images/recruit/wave.svg") ;
	/*background-color: #f7d5b3;*/
	margin: 0 calc(50% - 50vw) ;
	width: calc(100VW - 10px);
	min-height: 1000px;
	/*margin: 100px 0 0 0;*/
	background-size:auto;
	background-repeat:repeat-y;
	position: relative;
	display: block;
}

/*.bgwaveorange::before {
	background: url("../recruit/waveorange.svg");
	top: 0;
	content: '';
	height: 150px;
	position: absolute;
	margin: 0 calc(50% - 50vw);
	width: 100VW;
}
*/

/*.bgwaveorange::after {
	background: url("../images/recruit/waveorangeunder.svg");
	bottom: -150px;
	content: '';
	height: 150px;
	position: absolute;
	margin: 0 calc(50% - 50vw);
	width: 100VW;
	z-index: 0;
}*/

/* ----------------------------------------------------------------------------------
*
*　アクセス
*
 ----------------------------------------------------------------------------------*/

.google_map {
  width: 100%;
  height: 400px;
  overflow: hidden;
}

/*.google_map iframe {
  width: 100%;
  height: 760px;
  margin-top: -160px;
}
*/

.google_cal iframe {
   width: 100%;
   max-width: 800px;
   height: 500px;
}


/* ----------------------------------------------------------------------------------
*
*　フレックスボックス
*
 ----------------------------------------------------------------------------------*/

.contflex_warapper {
	display: flex;
	flex-wrap: wrap;
	margin: 40px auto 0;
}

.contflex_warapper h3 {
	font-family: "BIZ UDPGothic", sans-serif;
	font-size: 1.2em;
	font-weight: 500;
	color: #333;
	border: none;
	background: none;
	margin: 30px 0 0 0;
	padding: 0;
}

.contflex_warapper h3::after {
  content: " ";
  display: block;
  border-bottom: solid 3px #FF6E00;
  margin: -5px 0 20px 0;
  width: 40px;
}


.cont_box_40 {
	display:block;
	width: 100%;
	padding: 0 30px 20px;
} 

.cont_box_40 img {
	width: 100%;
	height: auto;
}

.cont_box_50 {
	display:block;
	width: 100%;
	padding: 0 30px 20px;
} 

.cont_box_60 {
	display:block;
	width: 100%;
	padding: 0 30px 20px;
}

.cont_box_80 {
	display:block;
	width: 100%;
	padding: 0 30px 20px;
} 

/* 2段 */
.cont2_box_bd {
	display:block;
	border: 1px #7F7E7E solid;
	width: 90%;
	padding: 10px;
	margin: 10px;
}

.cont2_box {
	display:block;
	width: 90%;
	padding: 10px;
	margin: 10px;
}

.cont2_box img {
	width:100%;
	height:220px;
	object-fit: cover;
}

/* 3段 */
.cont3_box_bd {
	display:block;
	border: 1px #7F7E7E solid;
	width: 90%;
	padding: 10px;
	margin: 10px;
}

.cont3_box {
	display:block;
	width: 90%;
	padding: 10px;
	margin: 10px;
}

.cont3_box img {
	width:100%;
	height:220px;
	object-fit: cover;
}

.cont3_box .title {
	display:block;
	width:100%;
	background-color: #F28E0B;
	color: #fff;
	margin: 0;
	padding: 0.25em 0;
	text-align: center;
}

.cont3_box .title::after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "　\f061";
}

.cont3_box a:hover {
	text-decoration: none;
	opacity: .8;
} 

/* ----------------------------------------------------------------------------------
*
*　流れ　 ボックス
*
 ----------------------------------------------------------------------------------*/

.flow_warapper {
	display: flex;
	flex-wrap: wrap;
	width: 90%;
	margin: 40px auto;
	border: 1px #F8EBDA solid;
}

.flow_box {
	display:table;
	height: 150px;
	padding: 10px;
	margin: 10px;
	
}

.flow_box:last-child{
    margin-left: auto;
}


.flow_box p {
	font-size: 0.85em;
}

.flow_box .title {
	display: table-cell;
	font-size: 2.25em;
	font-weight: 700;
	text-align: center;
	vertical-align: middle;
}

.flow_box .title2 {
	font-size: 2em;
	font-weight: 700;
}

.flow_box img {
	width:250px;
	height:150px;
	object-fit: cover;
}

.under_allow {
	position: relative;
	height: 60px;
	color:#fff;
}

.under_allow::after {
	position: absolute;
  	top: 10;
  	right: 50%;
	font-family: "Font Awesome 5 Free";
	font-size: 3em;
	text-align: center;
	font-weight: 900;
	color: #F28E0B;
	content: "　\f063";
} 

/* ----------------------------------------------------------------------------------
*
*　こだわり　 ボックス
*
 ----------------------------------------------------------------------------------*/



.kodawari_warapper {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 90%;
	margin: 40px auto;
	border: 1px #F8EBDA solid;
}

.kodawari_warapper h4 {
  position: relative;
  padding: 1rem 2rem 1rem 2em;
  background: #fff;
  color:#A82525;
  width:100%;
  text-align: center;
}

.kodawari_warapper h4  span {
  position: absolute;
  top: -32px;
  left: 15px;
  display: inline-block;
  width: 66px;
  height: 50px;
  text-align: center;
  background: #F29600;
  color: #fff;
  font-size: 1.25em;
}

.kodawari_warapper h4  span small {
	display: block;
	font-size: 0.2em;
}

.kodawari_warapper h4  span:before,
.kodawari_warapper h4  span:after {
  position: absolute;
  content: '';
}

.kodawari_warapper h4  span:before {
  right: -10px;
  width: 0;
  height: 0;
  border-right: 10px solid transparent;
  border-bottom: 10px solid #F29600;
}

.kodawari_warapper h4 span:after {
  top: 100%;
  left: 0;
  display: block;
  height: 50%;
 /* border: 1em solid #F29600;*/
  border-left: 30px solid #F29600;
  border-bottom: 30px solid transparent;
  /*border-bottom-width: 10px;*/
  border-bottom-color: transparent;
}

.kodawari_warapper h4 span:after {
  top: 100%;
  right: 0;
  display: block;
  height: 50%;
  border-right: 30px solid #F29600;
  border-bottom: 30px solid transparent;
  /*border-bottom-width: 10px;
  border-bottom-color: transparent;*/
}





/*.kodawari_warapper h4 {
	width:100%;
	border: none;
	background-color: #fff;
	color:#A82525;
	text-align: center;
}*/

.kodawari_box {
	display:block;
	width: 90%;
	padding: 10px;
	margin: 10px 0;
}

.kodawari_box img {
	width:100%;
	height:200px;
	object-fit: cover;
}



/* ----------------------------------------------------------------------------------
*
*　CTA ボックス
*
 ----------------------------------------------------------------------------------*/

.cta_warapper {
	display: flex;
	flex-wrap: wrap;
	width: 90%;
	margin: 40px auto;
	padding: 20px;
	border: 1px #CCC solid;
}

.cta_warapper h4 {
	border: none !important;
	padding: 0;
	font-size: 1.5rem;
	font-weight: 500;
	
	margin: 0 0 20px 0;
	color: #24549A;
	text-align: left;
	background-color: #fff;
}

.cta_box {
	display:block;
	width: 90%;
	padding: 10px;
	margin: 10px;
	text-align: center;
}

.cta_box i {
	font-size: 3em;
}

.cta_box p {
	font-size: 0.5em;
}

.cta_box .title {
	font-size: 1.25em;
	font-weight: 700;
}

.cta_box .tel {
	font-size: 2em;
	font-weight: 300;
	color: #5F5F5F;
}

.cta_box .fa-phone-mk {
	display: block;
	width: 67px;
	height: 67px;
	margin: 0 auto;
	background-image: url("../images/icon_tel.png");
    background-repeat: no-repeat;
}

.cta_box .fa-pc-sp {
	display: block;
	width: 150px;
	height: 67px;
	margin: 0 auto;
	background-image: url("../images/icon_pc_sp.png");
    background-repeat: no-repeat;
}


/* ----------------------------------------------------------------------------------
*
*　サイトマップ
*
 ----------------------------------------------------------------------------------*/

.sitemap > ul {}

.sitemap > ul > li {
    list-style: none !important;
	width: 96%;
    margin-left: auto;
    margin-right: auto;
	border: 2px solid #7A94DC;
	font-size: 1.4em;
	margin-bottom: 10px;
	padding: 20px;
	border-radius: 20px;
}

.page_item_has_children > a {
}

.sitemap .children a {
	font-size:0.8em;
}

.sitemap .children .children a {
	font-size: 0.6em;;
}


/* ----------------------------------------------------------------------------------
*
*　お問合せ
*
 ----------------------------------------------------------------------------------*/


.contact {
		width: 96%;
		margin-left: auto;
		margin-right: auto;
}
.contact .dropdown {
		padding: 5px;
		border: 1px solid #ccc;
		border-radius: 10px;
}
.contact input {
		padding: 5px;
		border: 1px solid #ccc;
		width: 80%;
		border-radius: 10px;
}
.contact textarea {
		padding: 10px;
		border-radius: 10px;
		border: 1px solid #ccc;
		width: 80%;
}
.contact th {
		display: block;
		padding: 10px 10px 0px 10px;
}
.contact td {
		display: block;
		border-top: 1px solid #Ccc;
		padding: 10px;
}
.submit {
		display: inline-block;
		font-size: 14px;
		font-weight: bold;
		color: #111;
		text-shadow: 0 -1px 1px rgba(0, 0, 0, 0.4), 0 1px 1px rgba(255, 255, 255, 0.5);
		letter-spacing: 0;
		border: none;
		box-shadow: inset 0 -1px 1px rgba(0, 0, 0, 0.9), inset 0 1px 0 rgba(255, 255, 255, 0.4);
		border-radius: 6px;
		text-decoration: none;
		padding: 15px 40px;
		font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0.00, #d5def8), color-stop(1.00, #f2f19b));
		background: -webkit-linear-gradient(#d5def8, #f2f19b);
		background: -moz-linear-gradient(#d5def8, #f2f19b);
		background: -o-linear-gradient(#d5def8, #f2f19b);
		background: -ms-linear-gradient(#d5def8, #f2f19b);
		background: linear-gradient(#d5def8, #f2f19b);
		text-align: center;
}

.reset {
		display: inline-block;
		font-size: 14px;
		font-weight: bold;
		color: #111;
		text-shadow: 0 -1px 1px rgba(0, 0, 0, 0.4), 0 1px 1px rgba(255, 255, 255, 0.5);
		letter-spacing: 0;
		border: none;
		box-shadow: inset 0 -1px 1px rgba(0, 0, 0, 0.9), inset 0 1px 0 rgba(255, 255, 255, 0.4);
		border-radius: 6px;
		text-decoration: none;
		padding: 15px 40px;
		font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0.00, #e9e9e9), color-stop(1.00, #ababab));
		background: -webkit-linear-gradient(#e9e9e9, #ababab);
		background: -moz-linear-gradient(#e9e9e9, #ababab);
		background: -o-linear-gradient(#e9e9e9, #ababab);
		background: -ms-linear-gradient(#e9e9e9, #ababab);
		background: linear-gradient(#e9e9e9, #ababab);
		text-align: center;
		margin-left: 20px;
}.contact {
		width: 96%;
		margin-left: auto;
		margin-right: auto;
}
.contact .dropdown {
		padding: 5px;
		border: 1px solid #ccc;
		border-radius: 10px;
}
.contact input {
		padding: 5px;
		border: 1px solid #ccc;
		width: 80%;
		border-radius: 10px;
}
.contact textarea {
		padding: 10px;
		border-radius: 10px;
		border: 1px solid #ccc;
		width: 80%;
}
.contact th {
		display: block;
		padding: 10px 10px 0px 10px;
}
.contact td {
		display: block;
		border-top: 1px solid #Ccc;
		padding: 10px;
}
.submit {
		display: inline-block;
		font-size: 14px;
		font-weight: bold;
		color: #111;
		text-shadow: 0 -1px 1px rgba(0, 0, 0, 0.4), 0 1px 1px rgba(255, 255, 255, 0.5);
		letter-spacing: 0;
		border: none;
		box-shadow: inset 0 -1px 1px rgba(0, 0, 0, 0.9), inset 0 1px 0 rgba(255, 255, 255, 0.4);
		border-radius: 6px;
		text-decoration: none;
		padding: 15px 40px;
		font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0.00, #d5def8), color-stop(1.00, #f2f19b));
		background: -webkit-linear-gradient(#d5def8, #f2f19b);
		background: -moz-linear-gradient(#d5def8, #f2f19b);
		background: -o-linear-gradient(#d5def8, #f2f19b);
		background: -ms-linear-gradient(#d5def8, #f2f19b);
		background: linear-gradient(#d5def8, #f2f19b);
		text-align: center;
}

.reset {
		display: inline-block;
		font-size: 14px;
		font-weight: bold;
		color: #111;
		text-shadow: 0 -1px 1px rgba(0, 0, 0, 0.4), 0 1px 1px rgba(255, 255, 255, 0.5);
		letter-spacing: 0;
		border: none;
		box-shadow: inset 0 -1px 1px rgba(0, 0, 0, 0.9), inset 0 1px 0 rgba(255, 255, 255, 0.4);
		border-radius: 6px;
		text-decoration: none;
		padding: 15px 40px;
		font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0.00, #e9e9e9), color-stop(1.00, #ababab));
		background: -webkit-linear-gradient(#e9e9e9, #ababab);
		background: -moz-linear-gradient(#e9e9e9, #ababab);
		background: -o-linear-gradient(#e9e9e9, #ababab);
		background: -ms-linear-gradient(#e9e9e9, #ababab);
		background: linear-gradient(#e9e9e9, #ababab);
		text-align: center;
		margin-left: 20px;
}






/* ----------------------------------------------------------------------------------
*
*
*　form
*
*
 ----------------------------------------------------------------------------------*/


#contact_form select {
	padding: 5px;
	border: 1px solid #ccc;
	border-radius: 10px;
}

#contact_form input {
	padding: 5px;
	border: 1px solid #ccc;
	/*width: 80%;*/
	border-radius: 10px;
}

#contact_form textarea {
	padding: 10px;
	border-radius: 10px;
	border: 1px solid #ccc;
	width: 80%;
}

#contact_form input[type="checkbox"] {
	padding: 5px;
	border: 1px solid #ccc;
	border-radius: 10px;
}

#contact_form {
		width: 94%;
		margin:0 auto;
}
#contact_form:after {
		clear: both;
		height: 0;
		visibility: hidden;
		display: block;
		content: ".";
}
#contact_form dl {
	display: flex;
	flex-wrap: wrap;
}

#contact_form dt {
		width: 100%;
		clear: both;
		padding: 15px;
}

#contact_form dd {
		width: 100%;
		padding: 15px;
}




/* ----------------------------------------------------------------------------------
*
*
* 共通　項目
*
*
 ----------------------------------------------------------------------------------*/

.jsg {
	/* 2.5文字字下げ　*/
	text-indent: -2.5em;
	padding-left: 2.5em;
}

.contents_textarea {
		width: 94%;
		margin-left: auto;
		margin-right: auto;
}

.cont_h3 {
		font-size: 2.0em;
		padding: 30px;
		line-height: 130%;
}
.cont_h4 {
		font-size: 1.6em;
		padding: 20px;
		line-height: 160%;
}

.cont_h4 {
	text-align: center;
	padding-top: 30px;
	padding-bottom: 30px;
	font-size: 1.4em;
	color: #394C93;
}

.cont_h5 {
	width: 90%;
	margin: 0 auto;
	padding-top: 10px;
	padding-bottom: 10px;
	font-size: 1.2em;
}


.cont_dl {
		width: 96%;
		margin-left: auto;
		margin-right: auto;
}
.cont_dl:after {
		clear: both;
		height: 0;
		visibility: hidden;
		display: block;
		content: ".";
}
.cont_dl dt {
		padding: 10px;
		border-top: 1px dashed #ccc;
}
.cont_dl dd {
		padding: 10px;
		border-top: 1px dashed #ccc;
}
/*.cont_table {
		width: 96%;
		margin-left: auto;
		margin-right: auto;
}
.cont_table th {
		padding: 10px;
		background-color: #F0F0E1;
		border-bottom: 1px solid #ccc;
		width:30%;
}
.cont_table td {
		padding: 10px;
		border-bottom: 1px solid #ccc;
}*/

table {
		margin: 0 auto;
}
th {
		padding: 20px;
		background-color: #FBFBFB;
		border: 1px solid #EFEFEF;
}
td {
		padding: 20px;
		border: 1px solid #EFEFEF;
}


.cont_table th{
  padding: 10px;
  border: solid 1px #ccc;
  text-align:left;
  box-sizing:border-box;
}

.cont_table td{
  padding: 10px;
  border: solid 1px #ccc;
  text-align:left;
  box-sizing:border-box;
}
.cont_table th {
  background: #FBFBFB;
  color: #000;
  
}

.cont_table {
width: 100%;
}
table.cont_table th,
table.cont_table td {
display: block;
width: 100%;
border-bottom:none;
}
.cont_table tr:last-child{
border-bottom: solid 1px #ccc;
}

.tb01 th,
.tb01 td,
.tb02 th,
.tb02 td
{
  padding: 10px;
  border: solid 1px #ccc;
  text-align:center;
  box-sizing:border-box;
}
.tb01 th,
.tb02 th
{
  background: #EBEBEB;
  
}

 .tb01 .head{
    display:none;
  }
  .tb01,.tb02 {
    width: 100%;
  }
  table.tb01 td,
  table.tb02 td,
  table.tb02 th
{
    display: block;
    width: 100%;
    border-bottom:none;
  }
  table.tb01 td:first-child,
  table.tb02 td:first-child
  {
    background: #FBFBFB;
    font-weight:bold;
  }
  table.tb02 td:nth-of-type(2){
    background: #FBFBFB;
    font-weight:bold;
  }
  table.tb01 td:before,
  table.tb02 td:before
  {
    content: attr(data-label);
    font-size: .7rem;
    font-weight:bold;
    color: #999;
    display: block;
  }

  .tb01 tr:last-child{
    border-bottom: solid 1px #ccc;
  }

.tb03 th,
.tb03 td
{
  padding: 10px;
  border: solid 1px #ccc;
  text-align:left;
  box-sizing:border-box;
}
.tb03 th
{
  background: #EBEBEB;
}

.tb04 th,
.tb04 td
{
  padding: 10px;
  border: solid 1px #ccc;
  text-align:left;
  box-sizing:border-box;
}
.tb04 th
{
  background: #def;
}
.tb04 tr:nth-child(2n+1) > td:first-child {
	text-align: center;
}

.tb04 td:nth-child(2),
.tb04 td:nth-child(3)
{
  background: #EBEBEB;
}


.cont_ul {
		width: 94%;
		margin-left: auto;
		margin-right: auto;
}
.cont_ul li {
		padding-left: 10px !important;
		list-style: disc !important;
}


.cont_ul2 {
		width: 94%;
		margin-left: auto;
		margin-right: auto;
}
.cont_ul2 li {
		padding-left:5px;
		list-style: disc;
		
}

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

.cont_ol li {
		padding-left:5px;
		list-style:decimal;
}


.flex_ul {
	width: 94%;
	display: flex;
	flex-wrap: wrap;
}

.flex_ul li {
	width: 100%;
	padding-left:5px;
}

.flex_ul li a {
  display: inline-block;
  text-indent: 1em;
  text-decoration: none;
}
.flex_ul li a::before {
  content: "・ ";
}
.flex_ul li a:hover {
  text-decoration: underline;
}



/* 汎用数値リスト　*/
.nm_list > li {
	margin: 0 0 0 1em;
	list-style-type: none;
	counter-increment: cnt;
	position: relative;
	width: 90%;
}
 
.nm_list > li::before {
	content: "（" counter(cnt) "） ";
	display:inline-block;
	margin-left:-2em; /* サイトに合せて調整 */
	width: 2em;
	text-align: right;
	position: absolute;
	top: 0;
	left: 0;
}


/* 汎用リスト　*/

.cp_list {
	width: 96%;
	margin: 15px auto;
}

.cp_list li {
	position:relative;
	padding: 0em 0.3em 0.3em 1.3em;
}
.cp_list li::before {
	position: absolute;
	content: '';
	display: block;
	top: 0.5em;
	left: 0;
	width: 6px;
	height: 6px;
	border-right: 3px solid #1CAA30;
	border-bottom: 3px solid #1CAA30;
	transform: rotate(-45deg);
}

/* 〇数値リスト　*/
ol {
  counter-reset: my-counter;
  list-style: none;
  padding: 0;
  margin: 0 0 0 20px;
}
.ml_list > li {
  /*margin: 0 0 0 3em;*/
  margin: 0;
  width: 90%;
  /*font-size: 13px;*/
  line-height: 1.5;
  padding: 0 0 0 28px;
  /*padding: 0;*/
  position: relative;
}
.ml_list > li:before {
  content: counter(my-counter);
  counter-increment: my-counter;
  background-color: #FFF;
  border: 1px solid;
  border-color: #666;
  border-radius: 50%;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 18px;
  width: 18px;
  color: #000;
  font-size: 85%;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
}




/* ----------------------------------------------------------------------------------
*
*　汎用ボタン
*
 ----------------------------------------------------------------------------------*/

/* VIEW MORE 用 */
.button-01 a {
  font-family: 'Noto Serif JP', serif;
  font-size: 1em;
  letter-spacing: 0.1em;
  color: #333;
  font-weight: 400;
  border: solid 1px #333;
  display: block;
  box-sizing: border-box;
  max-width: 300px;
  text-align: center; 
  padding: 16px 64px;
  margin: 50px 24px 24px 24px;
  margin-inline: auto;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.3s;
}

.button-01 a:hover {
  color: #fff;
  background: #333;
  /*background: #006699;*/
  transition: all 0.3s;
}

/* アンカー用ボタン */

#content-anchor {
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
}

#content-anchor li {
	display: block;
	width: 100%;
	margin: 20px 10px;
}

a.arrow_u {
	position: relative;
	display: inline-block;
	padding: 5px 10px 20px 10px;
	width: 100%;
	border: 1px solid #909090;
	border-radius: 10px;
	background: #E8F4FD;
	text-align: center;
	color:#333;
	text-decoration: none;
}
a.arrow_u:after {
  content: '';
  width: 9px;
  height: 9px;
  border: 0;
  border-bottom: solid 2px #333;
  border-right: solid 2px #333;
  transform: rotate(45deg);
  position: absolute;
  bottom: 10px;
  left: 50%;
  margin: auto;
}

a.arrow_u:hover {
	background: #0063AD;
	color: #FFF;
	text-decoration: none;
}

a.arrow_u:hover:after {
  content: '';
  width: 9px;
  height: 9px;
  border: 0;
  border-bottom: solid 2px #FFF;
  border-right: solid 2px #FFF;
  transform: rotate(45deg);
  position: absolute;
  bottom: 10px;
  left: 50%;
  margin: auto;
}


/* ----------------------------------------------------------------------------------
*
*　書類リンクアイコン
*
 ----------------------------------------------------------------------------------*/

/*a[href$=".pdf"] {*/
a[href$=".pdf"]:not(:has(img)) {
	padding-right: 1.7em;
	vertical-align: -9px;
	display: inline-block;
	background: url("../images/pdf_icon.fw.png") no-repeat 100% 50%;
	background-size: 1.5em 1.5em;
}
a[href$=".doc"],
a[href$=".docx"] {
	padding-right: 1.7em;
	vertical-align: -9px;
	display: inline-block;
	background: url("../images/word_icon.fw.png") no-repeat 100% 50%;
	background-size: 1.5em 1.5em;
}
a[href$=".xls"],
a[href$=".xlsx"] {
	padding-right: 1.7em;
	vertical-align: -9px;
	display: inline-block;
	background: url("../images/excel_icon.fw.png") no-repeat 100% 50%;
	background-size: 1.5em 1.5em;
}

a[href^="tel:"] {
	text-decoration: none;
	color:#666;
	
}

/* ----------------------------------------------------------------------------------
*
*　上に戻る
*
 ----------------------------------------------------------------------------------*/

/*上に戻る*/
#page-top {
  position: fixed;
  bottom: 80px;
  right: 10px;
  font-size: 20px;
  line-height: 1;
  z-index: 99;
}
#page-top a {
  background: #514D4E;
  text-decoration: none;
  color: #fff;
  width: 60px;
  padding: 20px 20px;
  text-align: center;
  display: block;
  border-radius: 40px;
  opacity: 0.9;
  transition: all .3s ease;
}
#page-top a:hover {
  text-decoration: none;
  opacity: .5;
}



/* ----------------------------------------------------------------------------------
*
*　WP　カレンダー用
*
 ----------------------------------------------------------------------------------*/
#wp-calendar {
    width: 100%;
}

#wp-calendar table {
	/*border: #000000 1px solid;*/
}

#wp-calendar th {
    background-color: #F3F3F3;
    padding: 5px;
	border: #f1f1f1 1px solid;
	text-align: center;
}

#wp-calendar th:nth-child(1) {
	 background-color: #E95151;
	color: #fff;
}

#wp-calendar th:nth-child(7) {
	 background-color: #598EEB;
	color: #fff;
}


#wp-calendar td {
    padding: 5px;
	border: #f1f1f1 1px solid;
	text-align: center;
}
#wp-calendar caption {
    text-align: center;
}

/*.wp-calendar-table{
	border-top-width:0;
	border-right-width:0;
}
*/
/*日付の背景（色や形を変更）*/

.widget_calendar tbody td a {
	background: #17A5A7; /*背景色*/
	border-radius: 14px 14px 14px 14px;
	color: #fff; /*文字色*/
	display: inline-block;
	height: 24px;
	line-height: 24px;
	margin: 1px;
	vertical-align: middle;
	width: 24px;
	text-decoration: none; /*リンクの下線を消す*/
}

.wp-block-heading {
	font-size: 2em;
	margin: 25px 0;
}



/* ----------------------------------------------------------------------------------
*
*　WP　contact Form 7用
*
 ----------------------------------------------------------------------------------*/

/* CF7チェックボックスとラジオボタンを縦並びに */
span.wpcf7-list-item {
margin-top:5px;
display: block;
}

/* フォーム上部に表示されるエラーメッセージを非表示 */
.screen-reader-response {
    display: none;
}

/* フォーム内エラーメッセージを赤色に指定 */
.wpcf7-not-valid-tip {
    color: #e92323;
}


/* ----------------------------------------------------------------------------------
*
*　inview　調整
*
 ----------------------------------------------------------------------------------*/
.fadeIn {
  opacity: 0;
	
}
.fadeIn.is-show {
  opacity: 1;
}

.fadeIn_up {
  opacity: 0;
  transform: translate(0, 50%);
}
.fadeIn_up.is-show {
  transform: translate(0, 0);
  opacity: 1;
}

.fd1 {
	transition: 0.6s;
}

.fd2 {
	transition: 0.8s;
}

.fd3 {
	transition: 1.0s;
}

.fd4 {
	transition: 1.2s;
}

.fd5 {
	transition: 1.4s;
}

.fd6 {
	transition: 1.6s;
}

.fd7 {
	transition: 1.8s;
}

.fd8 {
	transition: 2.0s;
}


/* ----------------------------------------------------------------------------------
*
*　見出し　調整
*
 ----------------------------------------------------------------------------------*/
.heading10 {
	position: relative;
	padding-top: 30px;
	border-bottom: 1px solid rgba(5,62,98,1);
}

.heading10 span {
	position: relative;
	z-index: 2;
}

.heading10::before {
	content: attr(data-en);
	position: absolute;
	top: 0px;
	right: 0;
	color: rgba(5,62,98,0.2);
	font-size: 2em;
	/*text-transform: uppercase;*/
	z-index: 1;
}

/* 見出し　ゴシック変更用　*/
.gtc {
	font-family: "BIZ UDPGothic", sans-serif;
}


/*注意書き*/
.caution_box {
	margin-bottom: 30px;
	padding: 10px;
	border: #d7d7d7 1px solid;
	height: 200px;
	overflow: auto;
}
