@charset "utf-8";
/*===========================

mainF White

===========================*/


/*===========================
fonts
===========================*/

/*----------------------------
import fonts
-----------------------------*/

/* 丸ゴシック font-family: 'Rounded Mplus 1c';
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@100;300;400;500;700;800;900&family=Sawarabi+Mincho&display=swap');*/


/* 明朝体 font-family: 'Sawarabi Mincho';
@import url('https://fonts.googleapis.com/css2?family=Sawarabi+Mincho&display=swap');*/

/* Noto Sans Japanese */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;200;300;400;500;600;700;800;900&display=swap');

/* Noto Serif Japanese */
/* @import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&display=swap'); */
@import url('https://fonts.googleapis.com/css?family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&display=swap');

/* Dancing Script */
@import url('https://fonts.googleapis.com/css2?family=Dancing+Script:wght@400;500;600;700&display=swap');



/*  fonts  */

.fontPlusR {
	 font-family: 'Rounded Mplus 1c';
}

.ff_NotoSansJP {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 600;
}

.ff_NotoSansJP200 {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 200;
}

.ff_NotoSerifJP {
	font-family: 'Noto Serif JP', serif;
}

.ff_DancingScript {
	font-family: 'Dancing Script', cursive;
}



/*===========================
color
===========================*/

:root {
	--basic-color:#008cd6;
	--basic-color-rgb:0,140,214;
}

/* var(--basic-color); */

/*===========================
common
===========================*/



body {
	font-size:16px;
	line-height: 1.8em;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
/* font-family:  "メイリオ", Meiryo, Osaka,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
/*	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;*/
	font-weight:500;
	margin: 0;
	padding: 0;
	/* 背景黒 
	background: #000;
	color:#fff;
	*/
	/* 背景白 */
	background: #fff;
	color:#000;
}
.wrapper {
	min-width:1000px;
	max-width: 1300px;
	margin: 0 auto;
}

@media screen and (max-width: 768px) {
	
body {
	min-width:600px; /* iPadで横にしたときに背景が切れるバグ回避　*/
}

.wrapper {
	width: 100%;
	min-width:600px;
}

}

@media only screen and (max-width: 600px) {
	
body {
	min-width:320px; /* iPadで横にしたときに背景が切れるバグ回避　*/
}

.wrapper {
	min-width:320px;
}

}

/* clear */

.clearfix:before, .clearfix:after {
	content: " ";
	display: table;
}
.clearfix:after {
	clear: both;
}
.clearfix {
 *zoom: 1;
}


.clear {
	clear:both;
}

div.clear {
	height:0px;
	line-height:0;
	font-size:0;
}

a {
	color:#42518E;
}





/*===========================
header
===========================*/


/* header */
#headWrap {
    position: fixed;
    width: 100%;
	box-sizing: border-box;
	z-index:500;

}

#headWrap a,
#headWrap {
    text-decoration: none;	
}


#headContent {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
	/* align-items: stretch;ロゴ飛び出し時 */
	box-sizing: border-box;
	width:100%;
	height:90px;
	/* 背景黒 
	background-color:rgba(0,0,0,0.8);
	*/
	/* 背景白 */
	background-color:rgba(255,255,255,1.0);
}



#headContent .logoArea {
	margin-left:2%;
}

/* svgの時　調整必要
#headContent .logoArea img {
	height:75px;
}
*/

/* ロゴ飛び出し時
#headContent .logoArea img {
	margin-top:10px;
	height:150px;
}
*/



@media screen and (max-width: 768px) {

#headContent {
	flex-wrap: nowrap;
}

#headContent .logoArea {
}

#headContent .logoArea img {
	max-width:400px;
	max-height:85px;
}


}

@media screen and (max-width: 600px) {
#headContent .logoArea {
}

#headContent .logoArea img {
	max-width:220px;
	max-height:85px;
}


}




/* ------------------ */
/* ナビ               */
/* ------------------ */



.pcNaviWrap {
	width:auto;
}

.pcNavi {
	box-sizing: border-box;
}

.pcNavi ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: right;
	box-sizing: border-box;
	list-style-type: none;
	align-items: center;
}

.pcNavi li {
	display:block;
	box-sizing: border-box;
	padding:0;
	line-height:90px;
	text-align:center;
	height:90px;
}

.pcNavi li a {
	display:block;
	font-size:1em;
	/* 背景黒 
	color:#fff;
	*/
	/* 背景白 */
	color:#000;
	
	height:100%;
	padding:0 2vw; /* 調整 */
}
.pcNavi li.liContact a {
	background-color:var(--basic-color);
	color:#FFF;
	height:100%;
	padding:0 3vw;
}

.pcNavi li.liContact a:hover {
	color:#FFF;
	
	cursor:pointer;
    filter: alpha(opacity=90);
    -ms-filter: "alpha(opacity=90)"; 
    -moz-opacity:0.9; 
    -khtml-opacity: 0.9; 
    opacity:0.9;
    zoom:1;
	
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
}



.pcNavi li a:hover {
	color:var(--basic-color);
}

/* ------- 2階層目関係 -------------　*/

/*2階層目以降は横並びにしない*/
.pcNavi ul ul {
	display: block;
}

/*下の階層のulや矢印の基点にするためliにrelativeを指定*/
.pcNavi ul li{
	position: relative;
}



/*==矢印の設定*/

/*2階層目を持つliの矢印の設定*/


.pcNavi ul li.has-child::before{
	content:'';
	position: absolute;
	left:0.8vw;
	top:40px;
	width:6px;
	height:6px;
	border-top: 2px solid #999;
    border-right:2px solid #999;
    transform: rotate(135deg);
}

/*3階層目を持つliの矢印の設定*/
.pcNavi ul ul li.has-child::before{
	content:'';
	position: absolute;
	left:6px;
	top:20px;
	width:6px;
	height:6px;
    border-top: 2px solid #fff;
    border-right:2px solid #fff;
    transform: rotate(45deg);
}

/*== 2・3階層目の共通設定 ==*/

/*下の階層を持っているulの指定*/
.pcNavi li.has-child ul {
    /*絶対配置で位置を指定*/
	position: absolute;
	left:0;
	top:62px;
	z-index: 4;
    /*形状を指定*/
	background: var(--basic-color);
	width:280px;
    /*はじめは非表示*/
	visibility: hidden;
	opacity: 0;
    /*アニメーション設定*/
	transition: all .3s;
}

/*hoverしたら表示*/
.pcNavi li.has-child:hover > ul,
.pcNavi li.has-child ul li:hover > ul,
.pcNavi li.has-child:active > ul,
.pcNavi li.has-child ul li:active > ul{
  visibility: visible;
  opacity: 1;
}

/*ナビゲーションaタグの形状*/



.pcNavi li.has-child ul li {
	padding:0;
	line-height:1.2em;
	text-align:center;
	height:50px;
	line-height:50px;
}

.pcNavi li.has-child ul li a{
	color: #fff;
	border-bottom:solid 1px rgba(255,255,255,0.6);
}

.pcNavi li.has-child ul li:last-child a{
	border-bottom:none;
}

.pcNavi li.has-child ul li a:hover,
.pcNavi li.has-child ul li a:active{
	background:#5bb5e5; /* ホバー時カラー変更　*/
}


/*==3階層目*/

/*3階層目の位置*/
.pcNavi li.has-child ul ul{
	top:0;
	left:182px;
	background:#66ADF5;
}

.pcNavi li.has-child ul ul li a:hover,
.pcNavi li.has-child ul ul li a:active{
	background:#448ED3;
}




/* ------------------ */
/* ハンバーガーボタン */
/* ------------------ */

.Toggle p {
	display:none;
}





@media screen and (max-width: 1200px) {
	
.pcNavi li a {
	font-size:0.9em;
	padding:0 1.9vw; /* 調整 */
	
}

.pcNavi li.liContact a {
	padding:0 2vw;
}

}

@media screen and (max-width: 1100px) { /* 基本は1000px */
	
.pcNavi li a {
	font-size:0.9em;
	padding:0 1vw; /* 調整 */
	
}

.pcNavi li.liContact a {
	padding:0 1.8vw;
}

}

@media screen and (max-width: 1000px) { /* 基本は768px */
	

.pcNaviWrap {
	width:50px;
	margin:0;
}
	

/* ------------------ */
/* ハンバーガーボタン */
/* ------------------ */


/*ナビのスタイル*/
nav.NavMenu {
	position: fixed;
	z-index: 12;
	top: 0;
	left: 0;
	/* 背景黒 
		background: rgba(0,0,0,.7);
	*/
	/* 背景白 */
	background: rgba(255,255,255,.7);
	width: 100%;
	height: 100%;
	display: none;
	box-sizing: border-box;
	margin:0;
}

nav.NavMenu .inner {
	position:relative;
}

nav.NavMenu ul {
	width: 100%;
	flex-direction: column;
	flex-wrap: wrap;
	position:absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	box-sizing: border-box;
}

nav.NavMenu ul li {
	font-size: 16px;
	width: 100%;
	height:auto;
	line-height:1.2em;
	border-bottom:#dadada 1px solid;
	border-left:none;
	/* 背景黒 
	background-color:rgba(0,0,0,.95);
	*/
	/* 背景白 */
	background-color:rgba(255,255,255,.95);

}

nav.NavMenu ul li:last-child  {
	border-bottom:none;
}

.pcNavi li a {
	display:block;
	height:auto;
	padding:20px 10px;

}
.pcNavi li.liContact a {
	padding:20px 10px;
	height:100%;
}


/*==ドロップダウン関係 == */



.pcNavi ul li.has-child ul,
.pcNavi ul li.has-child ul ul{
  	position: relative;
	left:0;
	top:0;
	width: 100%;
	transform: translateY(0) translateX(0) ;
	visibility:visible;/*JSで制御するため一旦表示*/
	opacity:1;/*JSで制御するため一旦表示*/
	display: none;/*JSのslidetoggleで表示させるため非表示に*/
	transition:none;/*JSで制御するためCSSのアニメーションを切る*/
	box-sizing: border-box;
	background:none;
	}
	

.pcNavi ul li.has-child ul li {
	height:auto;
	border-bottom:1px solid #fff;
	background: var(--basic-color);
	box-sizing: border-box;
	padding:0;
}
	
.pcNavi ul li.has-child ul li a {
		padding:0;
}
	
.pcNavi ul li.has-child ul ul a {
	background:#66ADF5;
	}	
	


/*矢印の位置と向き*/

.pcNavi ul li.has-child::before{
	left:20px;	
	top:24px;
}

.pcNavi ul ul li.has-child::before{
    transform: rotate(135deg);
	left:20px;
}
    
.pcNavi ul li.has-child.active::before{
    transform: rotate(-45deg);
}

/*== /ドロップダウン関係 == */

/* ハンバーガーのスタイル*/
.Toggle {
	position: fixed;
	right:3%;
	top: 24px;
	width: 20px;
	height: 20px;
	cursor: pointer;
	z-index: 13;
	display: block;
	margin:0;
}

.Toggle span {
	display: block;
	position: absolute;
	width: 20px;
	border-bottom: solid 2px #999999;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
	left: 6px;
}

.Toggle span:nth-child(1) {
	top: 7px;
}

.Toggle span:nth-child(2) {
	top: 14px;
}

.Toggle span:nth-child(3) {
	top: 21px;
}

.Toggle.active span:nth-child(1) {
	top: 18px;
	left: 6px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	transform: rotate(-45deg);
	border-bottom: solid 3px #C1C1C1;
}
.Toggle.active span:nth-child(2),
.Toggle.active span:nth-child(3) {
	top: 18px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
	border-bottom: solid 3px #C1C1C1;
}

.Toggle p {
	margin:0;
	padding:24px 0 0 4px;
	display:inline-block;
	text-align:center;
	font-size:8px;
}

.pcNaviWrap {
	border-top:none;
}

}

@media screen and (max-width: 600px) {
	

	
/*ボタンのスタイル*/
.Toggle {
	right:16px;
}



}


/* contactAreaTab */


header .contactAreaTab {
	display:none;
}

@media screen and (max-width: 768px) {

/* contactArea */
header .contactArea {
	display:none;
}

header .contactAreaTab {
	display: flex;
	justify-content: right;
	box-sizing: border-box;
	font-size:2em;
	margin:-60px 14% 0 0;
}

header .contactAreaTab a {
	color:var(--basic-color);
}

header .contactAreaTab .bnrContact {
	margin-left:8px;
}


}






/*===========================
mainVisual
===========================*/

#mainVisualWrap {
	padding-top:90px;
}

#mainVisual {
	position: relative;
	text-align:center;
}


#mainVisual .mainCatch {
	position: absolute;
	line-height:1.5em;
	    margin-top: -15%;
    font-size: 3.2vw;
    left: 21%;
    letter-spacing: 0.2vw;
    font-weight: 800;
	line-height: 1.3;
    text-align: center;
	font-family: 'Noto Serif JP', serif;
	color: #333;
	text-shadow: 0 0 1px #fff,0 0 2px #fff, 0 0 4px #fff, 0 0 6px #fff, 0 0 8px #fff,0 0 10px #fff,0 0 12px #fff, 0 0 14px #fff, 0 0 16px #fff, 0 0 18px #fff;
	/*
	color: #fff;
	text-shadow: 0 0 1px #000,0 0 2px #000, 0 0 4px #000, 0 0 6px #000, 0 0 8px #000,0 0 10px #000,0 0 12px #000, 0 0 14px #000, 0 0 16px #000, 0 0 18px #000;
	*/
}
#mainVisual .mainCatch .catchBig {
	font-size:140%;
	line-height:1.4em;
	padding-bottom:0.6em;
	margin-bottom:0.8em;
}

#mainVisual .mainCatch .catchEng {
	font-size:43%;
	line-height:1.2em;
	padding-left:0.5em;
	font-weight:normal;
}

.lineH{
	line-height:1.4em;
}



@media screen and (max-width: 768px) {
	
#mainVisualWrap {
	padding-top:90px;
}

#mainVisual .mainCatch {
}

}

@media screen and (max-width: 600px) {
	
#mainVisualWrap {
	padding-top:90px;
}

#mainVisual .mainCatch {
  margin-top: -130%;
  left: 3%;
  font-size: 4.8vw;
	
	/*
		text-shadow:
	black 1px 1px 2px, black -1px 1px 2px,
    black 1px -1px 2px, black -1px -1px 2px;
	*/
	text-shadow:
white 1px 1px 2px, white -1px 1px 2px,
white 1px -1px 2px, white -1px -1px 2px,
0 0 1px #fff,0 0 2px #fff, 0 0 4px #fff, 0 0 6px #fff, 0 0 8px #fff;
}





}




/*===========================
pageTitle
===========================*/

#pageTitleMover {
	padding-top:90px;
}

#pageTitle {
	background-position:center;
	background-size:cover;
	height:18vw;
	/* border-bottom:4px solid #CCC;　白背景ではなしに */
	box-sizing: border-box;
	display:flex;
	justify-content:center;
	align-items:center;
	text-align:center;
	box-sizing: border-box;
}




#pageTitle #pth1Wrap {
	/* background: rgba(0,0,20,.20); */
	background: rgba(255,255,255,.20);
	padding:0.3em 1.5em;
	box-sizing: border-box;
	width:100%;
}

#pageTitle h1 {
	font-family: 'Noto Serif JP', serif;
	font-size: 3vw;
	line-height:3.2vw;
	letter-spacing:0.3vw;
	box-sizing: border-box;
	padding:0.5vw;
	/* color:#fff;
	text-shadow:0 0 6px #333, 0 0 8px #333,0 0 10px #333,0 0 12px #333, 0 0 14px #333;*/
	color:#333;
	text-shadow:0 0 6px #fff, 0 0 8px #fff,0 0 10px #fff,0 0 12px #fff, 0 0 14px #fff;
}

#pageTitle h1 span {
	display:inline-block;
	font-size: 38%;
	vertical-align: top;
	position: relative;
	top: -0.6vw;
	padding-right:2vw;
}


.content1Tit {
	 /* background-image:url(../img/content1/page_tit.jpg); */
	background-image:url(../img/common/page_tit.jpg);
}

.content2Tit {
	background-image:url(../img/common/page_tit.jpg);
}

.content3Tit {
	background-image:url(../img/common/page_tit.jpg);
}

.contactTit {
	background-image:url(../img/common/page_tit.jpg);
}




@media screen and (max-width: 768px) {
	
#pageTitleMover {
}
	
#pageTitle {
	height:20vw;
}
	
#pageTitle h1 {
	font-size: 3.4vw;
	line-height:4vw;
	padding:0.5vw;
}
	
}

@media screen and (max-width: 600px) {
	
#pageTitleMover {
}
	
#pageTitle {
	height:24vw;
}
	
#pageTitle h1 {
	font-size: 5vw;
	line-height:5.5vw;
	padding:0.5vw;
}
	
}




/*===========================
main_area
===========================*/

/* Hx */
h1, h2, h3, h4, h5, h6 {
	letter-spacing: 1px;
	font-weight:normal;
}

h2 {
	font-family: 'Noto Serif JP', serif;
	font-size: 2.4em;
	line-height:1.5em;
	text-align:center;
	position: relative;
	margin-bottom: 2em;
	text-align: center;
	/* 背景黒 
	text-shadow: 0 0 1px #000,0 0 2px #000, 0 0 4px #000, 0 0 6px #000, 0 0 8px #000,0 0 10px #000,0 0 12px #000, 0 0 14px #000, 0 0 16px #000, 0 0 18px #000;
	*/
	/* 背景白 */
	text-shadow: 0 0 1px #fff,0 0 2px #fff, 0 0 4px #fff, 0 0 6px #fff, 0 0 8px #fff,0 0 10px #fff,0 0 12px #fff, 0 0 14px #fff, 0 0 16px #fff, 0 0 18px #fff;
}

h2 span {
	display:block;
	font-size: 0.33em;
	line-height:1.3em;
	margin:0.3em 0 1.3em 0;
	text-align: center;
	text-shadow:none;
}

h2:after {
	content: '';
	position: absolute;
	bottom: -20px;
	display: inline-block;
	width: 190px;
	height: 4px;
	left: 50%;
	transform: translateX(-50%);
	background-color: var(--basic-color);
}

/*
#content1 h2:after {
	background-color: #dc6529;	
}

#content3 h2:after {
	background-color: #00a779;
}
*/
h2.h2White::after {
	background-color: #fff;
}

h2.h2index {
	font-family: 'Noto Serif JP', serif;
	color:#AB1601;
	font-size: 2.2em;
	line-height:1.5em;
	margin-bottom:1.2em;
	text-align: left;
}

h2.h2index::after {
	content:none;
}

@media screen and (max-width: 768px) {
	
h2 {
	font-size: 2em;
}
	
}

@media screen and (max-width: 600px) {
	
h2 {
	font-size: 1.6em;
}

h2:after {
	bottom: -12px;
	height: 3px;
}

h2.h2index {
	font-size: 1.6em;
}
	
}



h3 {
	font-size: 1.8em;
	line-height:1.3em;
	text-align:center;
	position: relative;
	text-align: center;
	margin-bottom:1.5em;
	font-family: 'Noto Sans JP', sans-serif;
	text-shadow: 0 0 2px #fff, 0 0 4px #fff, 0 0 6px #fff, 0 0 8px #fff,0 0 10px #fff,0 0 12px #fff, 0 0 14px #fff;
}

h3:after {
	content: '';
	position: absolute;
	bottom: -10px;
	display: inline-block;
	width: 140px;
	height: 2px;
	left: 50%;
	transform: translateX(-50%);
	background-color: #acacac;
	border-radius: 8px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
}

.h3CT01{
  border-top: 3px solid var(--basic-color);
  border-bottom: 3px solid var(--basic-color);
  padding: 0.1em 0.1em 0.2em;
  font-size: 1.6em;
}

.h3CT01::after{
  content: none;
}

h4 {
	font-size: 1.4em;
	line-height:1.2em;
	text-align:center;
	position: relative;
	text-align: center;
	margin-bottom:1em;
	font-family: 'Rounded Mplus 1c';
}

h4:after {
	content: '';
	position: absolute;
	bottom: -8px;
	display: inline-block;
	width: 100px;
	height: 2px;
	left: 50%;
	transform: translateX(-50%);
	background-color: #ccc;
}

.h4CT01{
  background-color: var(--basic-color);
  color: #FFF;
  padding: 0.2em 0.1em 0.3em; 
  font-weight: 600;
}
.h4CT01::after{
  content: none;
}


@media screen and (max-width: 768px) {
	
h3 {
	font-size: 1.6em;
}

.h3CT01{
  font-size: 1.4em;
}

.h4CT01{
  font-size: 1.25em;
}

}

@media screen and (max-width: 600px) {
	
h3 {
	font-size: 1.2em;
}

h3:after {
	bottom: -12px;
	height: 3px;
}

.h3CT01{
  font-size: 1.2em;
}

.h4CT01{
  font-size: 1.1em;
}

}





.telNoDeco a {
	text-decoration:none !important;
	color:#000 !important;
}

.telNoDeco a:hover {
	filter: alpha(opacity=100) !important;
	-moz-opacity: 1 !important;
	opacity: 1 !important;
}

.telNoDecoWhite a {
	text-decoration:none !important;
	color:#fff !important;
}

.telNoDecoWhite a:hover {
	filter: alpha(opacity=100) !important;
	-moz-opacity: 1 !important;
	opacity: 1 !important;
}

.txtBnr {
	display:inline-block;
	margin-bottom:5px;
}

.txtBnr a {
	display:inline-block;
	text-decoration:none;
	line-height:normal;
	padding:0.2em 1.5em;
	margin:0;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	background-color:var(--basic-color);
	color:#FFF;
}

.txtBnrAr {
	display:inline-block;
	margin-bottom:5px;
}

.txtBnrAr a {
	display: flex;
    justify-content: space-between;
    align-items: center;
	text-align: center;
	text-decoration: none;
	width: 120px;
	margin: auto;
	padding: 1rem 4rem;
	font-weight: bold;
	background: #eee;
	color: #27acd9;
	border-radius: 100vh;
	position: relative;
	transition: 0.5s;
}

.txtBnrAr a {
	display: flex;
    justify-content: space-between;
    align-items: center;
	text-align: center;
	text-decoration: none;
	width: auto;
	margin: auto;
	padding: 1em 5em 1em 2em;
	background: var(--basic-color);
	color: #fff;
	text-shadow:none;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	position: relative;
	transition: 0.5s;
}
.txtBnrAr a::before {
	content: '';
	position: absolute;
	top: calc(50% - 2px);
	right: 1em;
	transform: translateY(calc(-50% - 2px)) rotate(45deg);
	width: 10px;
	height: 1px;
	background: #fff; /* 色変え */
}
.txtBnrAr a::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 1em;
	transform: translateY(-50%);
	width: 50px;
	height: 1px;
	background: #fff; /* 色変え */
	
}
.txtBnrAr a:hover {
	cursor:pointer;
    filter: alpha(opacity=80);
    -ms-filter: "alpha(opacity=80)"; 
    -moz-opacity:0.9; 
    -khtml-opacity: 0.9; 
    opacity:0.8;
    zoom:1;
	
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
}
.txtBnrAr a:hover::before {
	content: '';
	position: absolute;
	top: calc(50% - 2px);
	right: 1px;
	transform: translateY(calc(-50% - 2px)) rotate(45deg);
	width: 10px;
	height: 1px;
	background: #fff; /* 色変え */
		transition: 0.5s;
}
.txtBnrAr a:hover::after{
	content: '';
	position: absolute;
	top: 50%;
	right: 1px;
	transform: translateY(-50%);
	width: 50px;
	height: 1px;
	background:#fff; /* 色変え */
		transition: 0.5s;
}
.txtBnrSP100 {
	display:inline-block;
	margin-bottom:5px;
}

.txtBnrSP100 a {
	display:inline-block;
	text-decoration:none;
	line-height:normal;
	padding:0.2em 2em;
	margin:0;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	background:var(--basic-color);
	color:#FFF;
}

.txtBnrBlock a {
	display:block;
	text-decoration:none;
	line-height:normal;
	padding:0.2em 2em;
	margin:0;
	border-radius: 3em;
	-webkit-border-radius: 3em;
	-moz-border-radius: 3em;
	background:var(--basic-color);
	color:#FFF;
}

.txtBnrDetail a {
	display:block;
	text-decoration:none;
	line-height:normal;
	box-sizing: border-box;
	padding:0.6em 2em;
	margin:0 auto;
	width:250px;
	text-align:center;
	background:var(--basic-color);
	color:#FFF;
	font-size:1.1em;
}

.txtBnrDetailWhi a {
	display:block;
	text-decoration:none;
	line-height:normal;
	box-sizing: border-box;
	padding:0.6em 2em;
	margin:0 auto;
	width:250px;
	text-align:center;
	background-color:#fff;
	color:#f67f21;
	font-size:1.1em;
	font-weight:bold;
}

.txtBnrDetailWhiL a {
	display:block;
	text-decoration:none;
	line-height:normal;
	box-sizing: border-box;
	padding:0.6em 2em;
	width:250px;
	text-align:center;
	background-color:#fff;
	color:#f67f21;
	font-size:1.1em;
	font-weight:bold;
}

.txtBnr2 {
	display:inline-block;
}

.txtBnr2 a {
	display:inline-block;
	text-decoration:none;
	line-height:normal;
	padding:0.2em 2em;
	margin:0;
	border-radius: 3em;
	-webkit-border-radius: 3em;
	-moz-border-radius: 3em;
	background-color:#f67f21;
	color:#FFF;
}

.txtBnrTel {
	display:inline-block;
}

.txtBnrTel a {
	display:inline-block;
	text-decoration:none;
	line-height:normal;
	padding:0.2em 2em;
	margin:0;
	background-color:#f67f21;
	color:#FFF;
}


.txtBnr a:hover , .txtBnrSP100 a:hover , .txtBnrBlock a:hover , .txtBnr2 a:hover , .txtBnrDetail a:hover , .txtBnrDetailWhi a:hover , .txtBnrDetailWhiL a:hover {
	cursor:pointer;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)"; 
    -moz-opacity:0.7; 
    -khtml-opacity: 0.7; 
    opacity:0.7;
    zoom:1;
	
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
}

@media screen and (max-width: 600px) {
	
.txtBnr a {
	padding:0.2em 0.5em;
	margin:0;
}

.txtBnrBlock a {
	padding:0.2em 0.5em;
}
}



/* contactBtn */

.contactBtnWrap {
	clear:both;
	padding:0 0 0 0;
	text-align:center;
}

.contactBtn {
	display:inline-block;
	vertical-align:top;
	line-height:1;
	margin:0 10px 15px 10px;
	background-color:var(--basic-color);
	color:#FFF;
	border-radius: 5px;
	-webkit-border-radius: 5px; 
	-moz-border-radius: 5px;
}

.txtContacBnr a {
	display:block;
	text-align:center;
	color:#FFF;
	text-decoration:none;
	line-height:normal;
	padding:0.4em 1em;
	min-width:200px;
	box-sizing: border-box;
		border-radius: 5px;
	-webkit-border-radius: 5px; 
	-moz-border-radius: 5px;
	background-color:var(--basic-color);
}

.txtContacBnr a:hover {
	cursor:pointer;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)"; 
    -moz-opacity:0.7; 
    -khtml-opacity: 0.7; 
    opacity:0.7;
    zoom:1;
	
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
}

.txtContacBnrPC {
	display:block;
	text-align:center;
	text-decoration:none;
	line-height:normal;
	padding:0.4em 1em;
	min-width:200px;
	box-sizing: border-box;
	border-radius: 3em;
	-webkit-border-radius: 3em;
	-moz-border-radius: 3em;
}

@media screen and (max-width: 768px) {


.txtBnrDetailWhiL a {
	margin:0 auto;
}

}


@media screen and (max-width: 600px) {

.txtBnrDetail a {
	padding:0.5em 1em;
	font-size:1em;
}

.txtBnrSP100 {
	display:block;
	margin-bottom:10px;
}

.txtBnrSP100 a {
	display:block;
}



}



.txtCenter {
	text-align:center !important;
}

.txtRight {
	text-align:right !important;
}

.txtLeft {
	text-align:left !important;
}

.txtBold{
 font-weight: bold;
}

.txtSUP {
	font-size: 75.5%;
	vertical-align: top;
	position: relative;
	top: -0.1em;
}

.txtSUB {
	font-size: 75.5%;
	vertical-align: bottom;
	position: relative;
	top: 0.1em;
}

.txtVcenter {
	display: table-cell;
	vertical-align: middle;
}

.flexVcenter {
	display:flex;
	justify-content:center;
	align-items:center;
	text-align:center;
	box-sizing: border-box;
}

.txtPhiloso {
	font-size:1.4em;
	line-height:1.2em;
	color:#000;
}

.txtSign {
	font-family: 'Noto Serif JP', serif;
	font-weight:bold;
}

@media only screen and (max-width: 600px) {
.txtPhiloso {
	font-size:1.2em;
	line-height:1.2em;
}
}


/* font color */



.fcBasic {
	color:var(--basic-color) !important; /* 基本カラー  */
}

.fcRed {
	color:#E92D05 !important;
}

.fcRedOrange {
	color:#e4450d !important;
}

.fcBlue {
	color:#1A71B0 !important;
}

.fcOrange {
	color:#f67f21 !important;
}

.fcOrange2 {
	color:#fd9c4f !important;
}

.fcYellow {
	color:#F3AB25 !important;
}

.fcYG {
	color:#A7B82C !important;
}

.fcYG2 {
	color:#81B30D !important;
}

.fcGreen {
	color:#4a861e !important;
}

.fcSkyB {
	color:#6ABDE6 !important;
}

.fcBlue {
	color:#408BD0 !important;
}

.fcBlueP {
	color:#8B5FCF !important;
}

.fcRedP {
	color:#AF41B8 !important;
}

.fcWineR {
	color:#C62B71 !important;
}

.fc333 {
	color:#333 !important;
}

/* マージン */

.mgb1em {
	margin-bottom:1em !important;
}
.mgb2em {
	margin-bottom:2em !important;
}

.mgb3em {
	margin-bottom:3em !important;
}


.mgbS {
	margin-bottom:20px !important;
}

.mgbM {
	margin-bottom:50px !important;
}

.mgbL {
	margin-bottom:100px !important;
}


.mgb1em {
	margin-bottom:1em !important;
}
.mgb2em {
	margin-bottom:2em !important;
}
.mgb3em {
	margin-bottom:3em !important;
}
.mgbS {
	margin-bottom:30px !important;
}
.mgbM {
	margin-bottom:70px !important;
}
.mgbL {
	margin-bottom:120px !important;
}
.mgb0 {
	margin-bottom:0px !important;
}
.mgb10px {
	margin-bottom:10px !important;
}
.mgb20px {
	margin-bottom:20px !important;
}
.mgb30px {
	margin-bottom:30px !important;
}
.mgb40px {
	margin-bottom:40px !important;
}
.mgb50px {
	margin-bottom:50px !important;
}
.mgb60px {
	margin-bottom:60px !important;
}
.mgb70px {
	margin-bottom:70px !important;
}
.mgb80px {
	margin-bottom:80px !important;
}
.mgb100px {
	margin-bottom:100px !important;
}

.mgbPC0SP20px {
	margin-bottom:0 !important;
}

@media only screen and (max-width: 600px) {
.mgbPC0SP20px {
	margin-bottom:20px !important;
}
}

.mb0 {
	margin-bottom: 0px!important;
}
.mb5 {
	margin-bottom: 5px!important;
}
.mb10 {
	margin-bottom: 10px!important;
}
.mb15 {
	margin-bottom: 15px!important;
}
.mb20 {
	margin-bottom: 20px!important;
}
.mb25 {
	margin-bottom: 25px!important;
}
.mb30 {
	margin-bottom: 30px!important;
}
.mb40 {
	margin-bottom: 40px!important;
}
.mb50 {
	margin-bottom: 50px!important;
}
.mb60 {
	margin-bottom: 60px!important;
}
.mb70 {
	margin-bottom: 70px!important;
}
.mb80 {
	margin-bottom: 80px!important;
}
.mb90 {
	margin-bottom: 90px!important;
}
.mb100 {
	margin-bottom: 100px!important;
}


/* padding */
.pt0 {
	padding-top: 0px!important;
}
.pt5 {
	padding-top: 5px!important;
}
.pt10 {
	padding-top: 10px!important;
}
.pt15 {
	padding-top: 15px!important;
}
.pt20 {
	padding-top: 20px!important;
}
.pt25 {
	padding-top: 25px!important;
}
.pt30 {
	padding-top: 30px!important;
}
.pt40 {
	padding-top: 40px!important;
}
.pt50 {
	padding-top: 50px!important;
}
.pt60 {
	padding-top: 60px!important;
}
.pt70 {
	padding-top: 70px!important;
}
.pt80 {
	padding-top: 80px!important;
}
.pt90 {
	padding-top: 90px!important;
}
.pt100 {
	padding-top: 100px!important;
}
.pb0 {
	padding-bottom: 0px!important;
}
.pb5 {
	padding-bottom: 5px!important;
}
.pb10 {
	padding-bottom: 10px!important;
}
.pb15 {
	padding-bottom: 15px!important;
}
.pb20 {
	padding-bottom: 20px!important;
}
.pb25 {
	padding-bottom: 25px!important;
}
.pb30 {
	padding-bottom: 30px!important;
}
.pb40 {
	padding-bottom: 40px!important;
}
.pb50 {
	padding-bottom: 50px!important;
}
.pb60 {
	padding-bottom: 60px!important;
}
.pb70 {
	padding-bottom: 70px!important;
}
.pb80 {
	padding-bottom: 80px!important;
}
.pb90 {
	padding-bottom: 90px!important;
}
.pb100 {
	padding-bottom: 100px!important;
}
.pl0 {
	padding-left: 0px!important;
}
.pl5 {
	padding-left: 5px!important;
}
.pl10 {
	padding-left: 10px!important;
}
.pl15 {
	padding-left: 15px!important;
}
.pl20 {
	padding-left: 20px!important;
}
.pl25 {
	padding-left: 25px!important;
}
.pl30 {
	padding-left: 30px!important;
}
.pl40 {
	padding-left: 40px!important;
}
.pl50 {
	padding-left: 50px!important;
}
.pr0 {
	padding-right: 0px!important;
}
.pr5 {
	padding-right: 5px!important;
}
.pr10 {
	padding-right: 10px!important;
}
.pr15 {
	padding-right: 15px!important;
}
.pr20 {
	padding-right: 20px!important;
}
.pr25 {
	padding-right: 25px!important;
}
.pr30 {
	padding-right: 30px!important;
}
.pr40 {
	padding-right: 40px!important;
}
.pr50 {
	padding-right: 50px!important;
}
/* margin top */
.mt0 {
	margin-top: 0px!important;
}
.mt5 {
	margin-top: 5px!important;
}
.mt10 {
	margin-top: 10px!important;
}
.mt15 {
	margin-top: 15px!important;
}
.mt20 {
	margin-top: 20px!important;
}
.mt25 {
	margin-top: 25px!important;
}
.mt30 {
	margin-top: 30px!important;
}
.mt40 {
	margin-top: 40px!important;
}
.mt50 {
	margin-top: 50px!important;
}
.mt60 {
	margin-top: 60px!important;
}
.mt70 {
	margin-top: 70px!important;
}
.mt80 {
	margin-top: 80px!important;
}
.mt90 {
	margin-top: 90px!important;
}
.mt100 {
	margin-top: 100px!important;
}

.ml0 {
	margin-left: 0px!important;
}
.ml5 {
	margin-left: 5px!important;
}
.ml10 {
	margin-left: 10px!important;
}
.ml15 {
	margin-left: 15px!important;
}
.ml20 {
	margin-left: 20px!important;
}
.ml25 {
	margin-left: 25px!important;
}
.ml30 {
	margin-left: 30px!important;
}
.ml40 {
	margin-left: 40px!important;
}
.ml50 {
	margin-left: 50px!important;
}
.mr0 {
	margin-right: 0px!important;
}
.mr5 {
	margin-right: 5px!important;
}
.mr10 {
	margin-right: 10px!important;
}
.mr15 {
	margin-right: 15px!important;
}
.mr20 {
	margin-right: 20px!important;
}
.mr25 {
	margin-right: 25px!important;
}
.mr30 {
	margin-right: 30px!important;
}
.mr40 {
	margin-right: 40px!important;
}
.mr50 {
	margin-right: 50px!important;
}



.fs60p {
	font-size:60% !important;
}

.fs70p {
	font-size:70% !important;
}

.fs80p {
	font-size:80% !important;
}

.fs90p {
	font-size:90% !important;
}

.fs110p {
	font-size:110% !important;
}

.fs120p {
	font-size:120% !important;
	line-height:1.4em !important;
}

.fs120pM {
	font-size:120% !important;
	line-height:1.6em !important;
}


.fs130p {
	font-size:130% !important;
	line-height:1.4em !important;
}

.fs140p {
	font-size:140% !important;
	line-height:1.4em !important;
}

.fs140pM {
	font-size:140% !important;
	line-height:1.8em !important;
}

.fs150p {
	font-size:150% !important;
	line-height:1.4em !important;
}

.fs200p {
	font-size:200% !important;
	line-height:1.4em !important;
}

.fsM {
	font-size:124% !important;
	line-height:1.8em !important;
}
	


.mgr0_5em {
	margin-right:0.5em !important;
}

.mgl0_5em {
	margin-left:0.5em !important;
}

.mgt0 {
	margin-top:0 !important;
}

.halfIndent {
	text-indent:-0.5em !important;
}

/*　蛍光下線　*/
.tx-em {
	background: linear-gradient(transparent 62%, rgba(255, 250, 137, 0.71) 0%);
}

.tx-emRed {
	background: linear-gradient(transparent 62%, rgba(239, 69, 78, 0.5) 0%);
}

/*　蛍光斜線　*/
.tx-diagoYel {
    margin: 0 2px;
    padding: 2px 5px;
    border-radius: 0 0 3px 9px;
    color: #2f2f2f;
    background-image: linear-gradient(2deg,#fbf8a7,#fbf8a7 25%,transparent 25.1%,transparent);
}

.tx-diagoRed {
    margin: 0 2px;
    padding: 2px 5px;
    border-radius: 0 0 3px 9px;
    color: #2f2f2f;
    background-image: linear-gradient(2deg,#FD86A0,#FD86A0 25%,transparent 25.1%,transparent);
}

.tx-diagoGreen {
    margin: 0 2px;
    padding: 2px 5px;
    border-radius: 0 0 3px 9px;
    color: #2f2f2f;
    background-image: linear-gradient(2deg,#8dedd0,#8dedd0 25%,transparent 25.1%,transparent);
}



/*===========================
onOff
===========================*/

.pcOFFtabletON {
	display:none !important;
}

.pcONtabletOFF {
}

.pcONtabletOFFspON {
}

.pcOFFspON {
	display:none !important;
}

.sp {
	display:none !important;
}


.pcONspOFF {
}


.txtPCcenterSPLeft {
	text-align:center !important;
}

.txtPCcenterTabletLeft {
	text-align:center !important;
}


.txtPCLeftSPcenter {
	text-align:left !important;
}

.txtPCRightSPcenter {
	text-align:right !important;
}

@media screen and (max-width: 768px) {
.pcONtabletOFF {
	display:none !important;
}

.pcOFFtabletON {
	display:block !important;
}

.pcONtabletOFFspON {
	display:none !important;
}

.txtPCcenterTabletLeft {
	text-align:left !important;
}

}

@media screen and (max-width: 600px) {

.pcOFFspON {
	display:block !important;
}

.sp {
	display:block !important;
}

.pcONspOFF {
	display:none !important;
}

.pcONtabletOFFspON {
	display:block !important;
}


.txtPCcenterSPLeft {
	text-align:left !important;
}

.txtPCLeftSPcenter , .txtPCRightSPcenter {
	text-align:center !important;
}

}




/*===========================
content
===========================*/

/* 背景パターン */

.bgWhite {
	padding:4vw 2vw;
	background-color:#fff;
}

.bgColor {
	padding:4vw 2vw;
	background-color: rgba(var(--basic-color-rgb), 0.05);
}

.bgDark {
	padding:4vw 2vw;
	background-color:#3c3c3c;
}

.bgBlack {
	padding:4vw 2vw;
	background-color:#000;
}


.bgNews {
	padding:4vw 2vw;
	/* 背景黒 
	background-color:#222;
	*/
	/* 背景白 */
  background: #FFF;
}

.bgDot {
	padding:70px 10px;
	background-image:url(../img/common/bg-blue-dot.png);
	background-repeat:repeat;
}

.bgDotGray {
	padding:70px 10px;
	background-image:url(../img/common/bg-gray-dot.png);
	background-repeat:repeat;
}

.bgCompany {
	padding:4vw 2vw;
	background-image:url(../img/content/bg_company.jpg);
	background-size:cover;
	background-position:center;
}

.bgEnviron {
	padding:4vw 2vw;
	background-image:url(../img/content/bg_environ.jpg);
	background-size:cover;
	background-position:center;
}


.bgFirst {
	padding:4vw 2vw;
	background-image:url(../img/top/first_back.jpg);
	background-size:cover;
	background-position:center;
}



	



@media screen and (max-width: 768px) {
	
.bgWhite , .bgColor , .bgDark , .bgBlack , .bgNews , .bgDot , .bgDotGray , .bgCompany , .bgInfo , .bgEnviron , .bgFirst1   {
	padding:50px 10px;
}
}




/*===========================
footer
===========================*/


footer {
	/* 背景黒 
	background:url(../img/footer/footer_dark.jpg);
	*/
	/* 背景白 */
	background:url(../img/footer/footer_light_blue.jpg);
	background-size:cover;
	background-position:center;
	
	/* background-color:#222; */
	/* 背景黒 
	color:#fff;
	*/
	/* 背景白 */
	color:#000;
}


.footerNaviWrap a,
.footerNaviWrap {
    text-decoration: none;	
}

.footerNaviWrap {
	/* 背景黒 
	background: rgba(0,0,0,.4);
	*/
	/* 背景白 */
	background: rgba(255,255,255,.4);
	
}

.footNavi {
	box-sizing: border-box;
	text-align:center;
	padding:1.5em 0 1.5em 0;
}

.footNavi ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	height:100%;
	box-sizing: border-box;
	list-style-type: none;
	align-items: center;
}

.footNavi li {
	text-align:center;
	box-sizing: border-box;
	padding:0 1.5%;
	font-size:1em;
	line-height:1.8em;
}


.footNavi li a {
	display:block;
	/* 背景黒 
	color:#fff;
	*/
	/* 背景白 */
	color:#000;
}

.footNavi li a:hover {
	cursor:pointer;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)"; 
    -moz-opacity:0.7; 
    -khtml-opacity: 0.7; 
    opacity:0.7;
    zoom:1;
	
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
}




@media screen and (max-width: 600px) {
	
footer {
}

.footNavi {
	height:auto;
	padding:1.5em 1em;	
}

.footNavi li {
	font-size:1em;
}


.footNavi li.liBlock {
	width:100%;
	line-height:1.4em;
}

}



#footerDataWrap {
	padding:0 10px 0 10px;
}

.footDataArea {
	width:1100px;
	margin:0 auto;
	box-sizing: border-box;
	padding:30px 0 20px 0;
	text-align:center;
}

.footDataArea .companyName {
	font-size:1.8em;
	margin-bottom:1em;
	/* 背景黒 
	text-shadow: 0 0 2px #333, 0 0 4px #333, 0 0 6px #333, 0 0 8px #333,0 0 10px #333,0 0 12px #333;
	*/
	/* 背景白 */
	text-shadow: 0 0 2px #fff, 0 0 4px #fff, 0 0 6px #fff, 0 0 8px #fff,0 0 10px #fff,0 0 12px #fff;

}

.footDataArea a {
	text-decoration:none;
}

.footDataArea h2 {
	font-size: 1.25em;
  text-shadow: none;
  border: 1px solid #333;
  width: 10em;
  margin: 0 auto 20px;
}
.footDataArea h2::after {
  content: none;  
  
}



.footAdress {
	text-align:center;
	vertical-align:top;
	margin:0 20px 0 20px;
}

.footSns i{
  font-size: 3em;
  color: var(--basic-color);
}

.footSns i.fa-line{
  color: #00B900;
}

@media screen and (max-width: 768px) {
	
#footerDataWrap {
	padding:2em 10px 0 10px;
}
	

.footDataArea {
	width:100%;
	padding:0 0 0 0;
}



}


@media screen and (max-width: 600px) {
	
.footLogo {

}
	
.footAdress {
	text-align:center;
	margin:0 0 20px 0;
}


.footDataArea .companyName {
	font-size:1.3em;
}



}




.copyright {
	text-align:center;
	padding:1.6em 0 1.6em 0;
	font-size:0.9em;
	line-height:1em;
	/* 背景黒 
	background:#050505;
	color:#fafafa;	
	*/
	/* 背景白 */
	background: #fafafa;
	color:#999;
}


/*===========================
other
===========================*/


/* pagetop */

#pagetop {
	position: fixed;
	bottom: 100px;
	right: 10px;
	z-index:100;
}

#pagetop a {
	display:block;
	color:var(--basic-color);
	 filter: alpha(opacity=80);
    -ms-filter: "alpha(opacity=80)"; 
    -moz-opacity:0.80;
    -khtml-opacity: 0.80;
    opacity:0.80;
	text-shadow: 00 0 4px #fff, 0 0 6px #fff, 0 0 8px #fff,0 0 10px #fff,0 0 12px #fff;
}

#pagetop a:hover {
	cursor:pointer;
    filter: alpha(opacity=60);
    -ms-filter: "alpha(opacity=60)"; 
    -moz-opacity:0.6;
    -khtml-opacity: 0.6;
    opacity:0.6;
    zoom:1;
	
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
}

/* 「※」付きなど用の文字インデント */

.txtInd {
	padding-left:1em;  
	text-indent:-1em; 
}

.txtIcon {
	display:inline-block;
	color:#FFF;
	text-align:center;
	line-height:normal;
	padding:0.1em 2.5em 0.1em 2.5em;
	background-color:#664D26;
	border-radius: 5px;
	-webkit-border-radius: 5px; 
	-moz-border-radius: 5px;
}

.txtIconBlock {
	display:block;
	color:#FFF;
	text-align:center;
	line-height:normal;
	padding:0.2em 2.5em 0.2em 2.5em;
	background-color:#41a65a;
	margin:0 0 0.4em 0;
	border-radius: 5px;
	-webkit-border-radius: 5px; 
	-moz-border-radius: 5px;
}

.txtIwork {
	display:block;
	color:#FFF;
	text-align:center;
	line-height:normal;
	padding:0.2em 0.5em;
	background-color:#35477b;
	margin:0;
	/*
	border-radius: 5px;
	-webkit-border-radius: 5px; 
	-moz-border-radius: 5px;
	*/
}

.txtIcoConst {
	display:block;
	color:#FFF;
	text-align:center;
	line-height:normal;
	padding:0.3em 1em;
	background-color:#6A4E2F;
	border-radius: 2px;
	-webkit-border-radius: 2px; 
	-moz-border-radius: 2px;
	box-sizing: border-box;
	width:70%;
	margin:0 auto 15px;
	font-size:1.1em;
}

.txtIconM {
	display:flex;
	justify-content:center;
	align-items:center;
	text-align:center;
	box-sizing: border-box;
	width:100%;
	box-sizing: border-box;
	color:#FFF;
	line-height:normal;
	font-size:1.2em;
	padding:0.2em 1em;
	background-color:#F49831;
	margin:0 0 0.4em 0;
	border-radius: 5px;
	-webkit-border-radius: 5px; 
	-moz-border-radius: 5px;
}



.txtIconPoint {
	display:block;
	color:#FFF;
	text-align:center;
	line-height:normal;
	font-size:1.2em;
	padding:0.2em 1.2em 0.2em 1.2em;
	background-color:#3886C5;
	border-radius: 1.1em;
	-webkit-border-radius: 1.1em; 
	-moz-border-radius: 1.1em;
	margin-bottom:5px;
}

/* ビフォーアフター　*/

.imgBF {
	position: relative;
}

.imgBF .txtBef {
	position: absolute;
	right: 3%;
	bottom: 3%;
	content: '';
	text-align: center;
	background: rgba(187,152,70,.7);
	font-weight: bold;
	border-radius: 50%;
	color: #fff;
	width: 5em;
	height: 5em;
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	align-items: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-pack: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
}

.imgBF .txtAft {
	position: absolute;
	right: 3%;
	bottom: 3%;
	content: '';
	text-align: center;
background: rgba(243,82,10,.8);
/*		background: rgba(198,9,23,.8); */
	font-weight: bold;
	border-radius: 50%;
	color: #fff;
	width: 5em;
	height: 5em;
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	align-items: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-pack: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
}



.dataArea {
	padding:40px 0 40px 0;
	clear:both;
}
.topData {
	border-top:none;
}
.dataArea .data {
	float:left;
	margin-right:20px;
}

.catch1 {
	font-size:2.4em;
	margin-bottom:0.5em;
	line-height:1.8em;
}

.catch1Kyocho {
	color:#029c80;
	font-size:1.3em;
}

.catch2 {
	font-size:2em;
	margin-bottom:0.5em;
	line-height:1.6em;
	color: var(--basic-color);
}

.catch3 {
	font-size:1.3em;
	margin-bottom:0.5em;
	line-height:1.4em;
	color: var(--basic-color);
	font-weight:500;
}

.catch4 {
	font-size:1.3em;
  padding: 0.3em 0.2em;
	margin-bottom:20px;
	line-height:1.4em;
	font-weight:500;
  background-color: #F4F4F4;
}


@media screen and (max-width: 768px) {
	
.catch1 {
	font-size: 1.8em;
}

.catch2 {
	font-size:1.4em;
}

.catch3 {
	font-size:1.1em;
}

	
}

@media screen and (max-width: 600px) {
	
.catch1 {
	font-size: 1.4em;
}

.catch2 {
	font-size:1.2em;
}

.catch3 {
	font-size:1em;
}

.txtIconPoint {
	font-size:1em;
}

.txtIcoConst {
	font-size:1em;
	padding:0.3em 1em;
	width:100%;
}

.imgBF .txtBef {
	right: 2%;
	bottom: 2%;
	width: 4em;
	height: 4em;
}

.imgBF .txtAft {
	right: 2%;
	bottom: 2%;
	width: 4em;
	height: 4em;
}

	
}



.hoverTrans  a:hover {
	cursor:pointer;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)"; 
    -moz-opacity:0.7; 
    -khtml-opacity: 0.7; 
    opacity:0.7;
    zoom:1;
	
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
}

.hoverTrans Ex img {
	transition: 0.3s;
}


.hoverTransEx img:hover {
	-webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);
	-ms-transform: scale(1.1);
	-o-transform: scale(1.1);
	transform: scale(1.1);

	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
}


.comingsoon {
	font-size:3em;
	text-align:center;
	padding:20% 0;
	line-height:normal;
	margin-bottom:2em;
}

.comingsoon2 {
	font-size:2em;
	text-align:center;
	padding:20% 0;
	line-height:normal;
	margin-bottom:2em;
	border:#ececec 1px solid;
}




/*===========================
content
===========================*/


.contPad {
	padding:0 10px;
}


.contPad90p {
	width:90%;
	margin:0 auto;
}

.contPad82p {
	width:82%;
	margin:0 auto;
}

.contPad80p {
	width:80%;
	margin:0 auto;
}

.contPad70p {
	width:70%;
	margin:0 auto;
}

.contPad70pUSU {
	width:70%;
	margin:0 auto;
}

.contPad60p {
	width:60%;
	margin:0 auto;
}

.contPad50p {
	width:50%;
	margin:0 auto;
}

.contPad40p {
	width:40%;
	margin:0 auto;
}

.contPad30p {
	width:30%;
	margin:0 auto;
}

.PC100pSP50p {
}

.PC100pSP70p {
}

.PC100pSP80p {
}


@media only screen and (max-width: 600px) {
	
.contPad , .contPad90p , .contPad82p , .contPad80p , .contPad70p , .contPad60p , .contPad50p , .contPad40p , .contPad30p {
	box-sizing: border-box;
	width:100%;
	margin:0 auto;
}

.PC100pSP50p {
	width:50%;
	margin:0 auto;
}

.PC100pSP70p {
	width:70%;
	margin:0 auto;
}

.PC100pSP80p {
	width:80%;
	margin:0 auto;
}


	
}
/* Flexboxレイアウト */ 

.f-wrap {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: stretch; /* アイテムを上揃えで配置します */
}

.f-wrap-AC {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center; /* アイテムを上下中央で配置します */
}

.f-wrap-HU {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	 /* アイテムの高さを揃える */
}

.f-wrap-cen {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.f-wrap-even {
	display: flex;
	justify-content: space-evenly;
	flex-wrap: wrap;
}

.f-wrap-even-cen {
	display: flex;
	justify-content: space-evenly;
	flex-wrap: wrap;
	align-items: center; /* アイテムを上下中央で配置します */
}

.f-wrapOR01{
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 20px;
}
.f-wrapOR01 > div{
  text-align: center;
}

.f-wrapOR02{
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 20px;
}

.f-wrapOR02 p:first-child{
  border-bottom: 1px solid #333;
  margin-bottom: 10px;
}

.f-wrapOR03{
  display: flex;
  justify-content: space-between;
}

.f-wrapOR03 > div{
  width: 48%;
}

.f-wrapOR03 .catch3{
  text-align: center;
}

.f-wrapOR03 div:first-child{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border: 3px solid var(--basic-color);
  padding: 1em;
  box-sizing: border-box;
}

@media screen and (max-width:768px){

.f-wrapOR03{
  display: block;
  justify-content: flex-start;
}

.f-wrapOR03 > div{
  width: auto;
  margin-bottom: 10px;
}

}

.f-wrapCT01 div:first-child{
  border: 1px solid #CCC;

}

.f-item1 {
	box-sizing: border-box;
	width: 100%;
	margin-bottom:30px;
}

.f-item1-2 {
	box-sizing: border-box;
	width: 47%;
	margin-bottom:30px;
}

.f-item1-2-USU {
	box-sizing: border-box;
	width: 47%;
}

.f-item1-2-t1 {
	box-sizing: border-box;
	width: 47%;
	margin-bottom:30px;
}

.f-item1-3 {
	box-sizing: border-box;
	width: 31%;
	margin-bottom:30px;
}

.f-item1-3-t1 {
	box-sizing: border-box;
	width: 31%;
	margin-bottom:30px;
}



.f-item1-3-t2 {
	box-sizing: border-box;
	width: 31%;
	margin-bottom:30px;
}

.f-wrap-cen .f-item1-3-t2 {
	margin:0 1px 30px 10px;
}
	

.f-item1-3n2 {
	box-sizing: border-box;
	width: 30%;
}

.f-item2-3 {
	box-sizing: border-box;
	width: 64%;
	margin-bottom:30px;
}

.f-item2-3-t1 {
	box-sizing: border-box;
	width: 64%;
	margin-bottom:30px;
}


.f-item1-4 {
	box-sizing: border-box;
	width: 23%;
	margin-bottom:30px;
}

.f-item3-4 {
	box-sizing: border-box;
	width: 72%;
	margin-bottom:30px;
}

.f-item1-4-t1 {
	box-sizing: border-box;
	width: 23%;
	margin-bottom:30px;
}

.f-item1-4-t2 {
	box-sizing: border-box;
	width: 23%;
	margin-bottom:30px;
}

.f-item3-4-t1 {
	box-sizing: border-box;
	width: 72%;
	margin-bottom:30px;
}

.f-item1-5 {
	box-sizing: border-box;
	width: 19%;
	margin-bottom:30px;
}

.f-item1-5-t1 {
	box-sizing: border-box;
	width: 19%;
	margin-bottom:30px;
}

.f-item1-5-t2 {
	box-sizing: border-box;
	width: 19%;
	margin-bottom:30px;
}

.f-item1-5-t3 {
	box-sizing: border-box;
	width: 19%;
	margin-bottom:30px;
}

.f-item2-5 {
	box-sizing: border-box;
	width: 38%;
	margin-bottom:30px;
}

.f-item2-5-t1 {
	box-sizing: border-box;
	width: 38%;
	margin-bottom:30px;
}

.f-item3-5 {
	box-sizing: border-box;
	width: 57%;
	margin-bottom:30px;
}

.f-item4-5 {
	box-sizing: border-box;
	width: 76%;
	margin-bottom:30px;
}

.f-item4-5-t1 {
	box-sizing: border-box;
	width: 76%;
	margin-bottom:30px;
}

.f-item3-5-t1 {
	box-sizing: border-box;
	width: 57%;
	margin-bottom:30px;
}

.f-item1-6 {
	box-sizing: border-box;
	width: 15%;
	margin-bottom:30px;
}

.f-item1-6-t1 {
	box-sizing: border-box;
	width: 15%;
	margin-bottom:30px;
}

.f-item1-6-t2 {
	box-sizing: border-box;
	width: 15%;
	margin-bottom:30px;
}

.f-item1-6-t3 {
	box-sizing: border-box;
	width: 15%;
	margin-bottom:30px;
}


.f-Vcenter {
	display:flex;
	justify-content:center;
	align-items:center;
	text-align:center;
	box-sizing: border-box;
}

.f-row-reverse {
	flex-flow: row-reverse wrap;
}

/* 最後のコンテンツを左寄せにする指定 */
.f-wrap-ad4:after {
    content: "";
    display: block;
    width: 48%;  /* f-itemに指定したwidthと同じ幅を指定する */
    height: 0;
}

.backWaterM {
	/* 背景黒 
	background: rgba(255,255,255,.2);
	*/
	/* 背景白 */
	background: rgba(255,255,255,.8);
	padding:2em
}
/* 画像の上にテキストを重ねる */


.waterMright {
	/* 背景黒 
	background: rgba(255,255,255,.2);
	*/
	/* 背景白 */
	background: rgba(253,253,253,.8);
	z-index:10;
	padding:2em;
	margin-left:-15%;	
	/* 背景黒 
	text-shadow: 0 0 1px #000,0 0 2px #000, 0 0 4px #000, 0 0 6px #000, 0 0 8px #000,0 0 10px #000,0 0 12px #000, 0 0 14px #000, 0 0 16px #000, 0 0 18px #000;
	*/
	/* 背景白 */
	text-shadow: 0 0 1px #fff,0 0 2px #fff, 0 0 4px #fff, 0 0 6px #fff, 0 0 8px #fff,0 0 10px #fff,0 0 12px #fff, 0 0 14px #fff, 0 0 16px #fff, 0 0 18px #fff;
	border:1px solid #f0f0f0;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}

.waterMleft {
	/* 背景黒 
	background: rgba(255,255,255,.2);
	*/
	/* 背景白 */
	background: rgba(253,253,253,.8);
	z-index:10;
	padding:2em;
	margin-right:-15%;	
	/* 背景黒 
	text-shadow: 0 0 1px #000,0 0 2px #000, 0 0 4px #000, 0 0 6px #000, 0 0 8px #000,0 0 10px #000,0 0 12px #000, 0 0 14px #000, 0 0 16px #000, 0 0 18px #000;
	*/
	/* 背景白 */
	text-shadow: 0 0 1px #fff,0 0 2px #fff, 0 0 4px #fff, 0 0 6px #fff, 0 0 8px #fff,0 0 10px #fff,0 0 12px #fff, 0 0 14px #fff, 0 0 16px #fff, 0 0 18px #fff;
	border:1px solid #f0f0f0;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}

.non-text-shadow {
	text-shadow:none !important;
}



.boxDummy {
	text-align:center;
	background-color: #CCC;
	width:100%;
	height:100%;
	display:flex;
	justify-content:center;
	align-items:center;
	text-align:center;
	box-sizing: border-box;
	padding:1em;
}

@media screen and (max-width: 768px) {

.f-item1-2-t1 , .f-item1-3-t1 , .f-item2-3-t1 , .f-item1-4-t1 , .f-item3-4-t1 , .f-item1-5-t1 , .f-item2-5-t1 , .f-item3-5-t1 , f-item4-5-t1 , .f-item1-6-t1 {
	width: 100%;
}


.f-item1-3-t2 , .f-item1-4-t2 , .f-item1-5-t2 , .f-item1-6-t2 {
	width: 49%;
}


.f-wrap-cen .f-item1-3-t2 {
	margin:0 3px 30px 3px;
}


.f-item1-5-t3 , .f-item1-6-t3 {
	width: 31%;
}

}

@media only screen and (max-width: 600px) {
.f-item1-2 , .f-item1-3 , .f-item1-3n2 , .f-item2-3 , .f-item1-4 , .f-item3-4 , .f-item1-5 , .f-item2-5 , .f-item3-5 , .f-item4-5 , .f-item1-6 {
	width: 100%;
	margin-bottom:30px;
}

.f-wrap-cen .f-item1-3-t2 {
	margin:0 0 30px 0;
}

.f-item1-3-t2 , .f-item1-4-t2 , .f-item1-5-t2 , .f-item1-6-t2 , .f-item1-5-t3 , .f-item1-6-t3 {
	width: 100%;
	margin-bottom:30px;
}

.f-item1-2-USU {
	box-sizing: border-box;
	margin-bottom:10px;
}

.waterMright {
	padding:1.5em 1em;
	margin-left:0;	
}

.waterMleft {
	padding:1.5em 1em;
	margin-right:0;	
}

.spOrder1 {
	order:1;
}

.spOrder2 {
	order:2;
}

.spOrder3 {
	order:3;
}

.spOrder4 {
	order:4;
}

.spOrder5 {
	order:5;
}

.spOrder6 {
	order:6;
}


}

/* Gridレイアウト */ 

.grid-w {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 10px 20px;
}

.grid-i {
}

@media only screen and (max-width: 600px) {
	
	.grid-w {
	display: grid;
	grid-template-columns: 1fr;
}

.grid-i {
}

}


/* 重ねレイアウト */ 

.overLay {
  height: 320px;
  position: relative;
  display: flex;
  align-items: center;
  margin:100px 0 180px 0;
}
.overLayImg {
  width: 58%;
  height: 200px;
  margin: 0;
  display: grid;
  place-items: center center;
  position: absolute;
  top: 0;
  right: 0;
}

.overLayImg img {
	border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
}

.imgRound {
	border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
}
.overLayTxt {
	background: rgba(255,255,255,.85);
	padding: 30px 40px  20px 40px;
	flex-basis: 60%;
	box-sizing: border-box;
	z-index: 2;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
}

.midashiWant {
	text-align:center;
	font-size:1.8em;
	color:#f67f21;
	margin-bottom:1em;
}

.txtIconWant {
	display:block;
	color:#FFF;
	text-align:center;
	line-height:normal;
	font-size:1.2em;
	padding:0.1em 1.2em 0.1em 1.2em;
	background-color:#ABC853;
	border-radius: 1.1em;
	-webkit-border-radius: 1.1em; 
	-moz-border-radius: 1.1em;
	margin-bottom:5px;
}


.txtCustomer {
	font-size:1.6em;
	color:#88CA37;
}

.txtCustomer2 {
	font-size:2.2em;
	color:#88CA37;
}

.txtOur {
	font-size:1.6em;
	color:#f67f21;
}

.txtOur2 {
	font-size:2.2em;
	color:#f67f21;
}

@media only screen and (max-width: 600px) {

.txtCustomer {
	font-size:1em;
}

.txtCustomer2 {
	font-size:1.2em;
}

.txtOur {
	font-size:1em;
}

.txtOur2 {
	font-size:1.2em;
}
}
	

@media only screen and (max-width: 768px) {
	
/* 重ねレイアウト */ 

.overLay {
	height: auto;
	position: relative;
	display:inline-block;
	align-items: center;
	margin:0 0 50px 0;
}
.overLayImg {
	width: 100%;
	height: auto;
	margin: 0 0 10px 0;
	display:inline-block;
	position:relative;

}
.overLayTxt {
	display:inline-block;
	background: rgba(255,255,255,.85);
	padding: 20px 10px;
	width: 100%;
}

.midashiWant {
	font-size:1.5em;
}

.txtIconWant {
	font-size:1.1em;
}

}

/*　--------------- */ 
/* 以前のレイアウト */ 
/*　--------------- */ 

/* 2カラム */

.lay2F {
	width:47%;
	float:left;
	margin:0 6% 2em 0;
}

.lay2FR {
	width:47%;
	float:left;
	margin:0 0 0 0;
}


/* 3カラム */


.lay3 {
	width:31%;
	float:left;
	margin:0 3% 2% 0;
}

.lay3R {
	width:31%;
	float:left;
	margin:0 0 2% 0;
}


/* 4カラム */


.lay4 {
	width: 23%;
	display:inline-block;
	margin:0 25px 30px 0;
	vertical-align:top;
	box-sizing: border-box;
}


/* 2カラム　複数 */

.lay2Plural {
	width:46%;
	float:left;
	margin:0 2% 1em 2%;
}

.lay2Inline {
	width:45%;
	display:inline-block;
	margin:0 2% 1em 2%;
	vertical-align:top;
	box-sizing: border-box;
}


/* 3カラム　複数 */

.lay3Plural {
	width:31.3%;
	float:left;
	margin:0 1% 4% 1%;
	position: relative;
}


/* 3カラム　複数 */

.lay3Plural {
	width:31.3%;
	float:left;
	margin:0 1% 4% 1%;
}

.lay3Inline {
	width:29%;
	display:inline-block;
	margin:0 1% 30px 1%;
	vertical-align:top;
	box-sizing: border-box;
}


/* 4カラム　複数 */ 

.lay4Plural2 {
	width:23.8%;
	float:left;
	margin:0 0.6% 15px 0.6%;
	text-align:center;
}

.lay4Inline {
	width: 21.25%;
	display:inline-block;
	margin:0 1.5% 1em 1.5%;
	vertical-align:top;
	box-sizing: border-box;
}

@media only screen and (max-width: 600px) {

/* インラインレイアウト */ 
.lay2Inline , .lay3Inline , .lay3Inline2 , .lay3InlineTab2 , .lay4Inline , .lay4  , .lay4Index {
	 width:100%;
	 margin:0 0 2em 0;
}

/* autoカラム　複数 */ 

.layAuto {
	display:inline-block;
	margin:0;
	width:auto;
}

}



/*　1：2　*/

.lay1-2_1 {
	float:left;
	width:32%;
	margin:0 2% 1em 2%;
}

.lay1-2_2 {
	float:left;
	width:60%;
	margin:0 2% 1em 2%;
}


.layInline1-2_1 {
	display:inline-block;
	width:32%;
	margin:0 2% 1em 2%;
	vertical-align:top;
}

.layInline1-2_2 {
	display:inline-block;
	width:58%;
	margin:0 2% 1em 2%;
	vertical-align:top;
}



/*　2：1　*/

.lay2-1_1 {
	float:left;
	width:60%;
	margin:0 2% 1em 2%;
}

.lay2-1_2 {
	float:left;
	width:32%;
	margin:0 2% 1em 2%;
}


.layInline2-1_1 {
	display:inline-block;
	width:58%;
	margin:0 2% 1em 2%;
	vertical-align:top;
}

.layInline2-1_2 {
	display:inline-block;
	width:32%;
	margin:0 2% 1em 2%;
	vertical-align:top;
}

/* autoカラム　複数 */ 

.layAuto {
	display:inline-block;
	vertical-align:top;
	margin:0 30px;
}




/*circle-number*/

.circle-big-rel {
	position:relative;
}

.circle-big {
	padding-top: 6rem;
	font-size:1.6em;
}

.circle-big::before {
	 position: absolute;
	 content:'';
	width: 5.4rem;
	height: 5.4rem;
	left: 50%;
	margin-left: -2.7rem;
	top:-0.7rem;
	padding: 1rem 0 0;
	border-radius: 2.7rem;
	font-family: 'Noto Serif JP', serif;
	color:#FFF;
	background-color:var(--basic-color);
}

.circle-big.no1::before {
	 content:'1';
	font-size: 3rem;
	line-height: 1;
	box-sizing: border-box;
}

.circle-big.no2::before {
	 content:'2';
	font-size: 3rem;
	line-height: 1;
	box-sizing: border-box;
}

.circle-big.no3::before {
	 content:'3';
	font-size: 3rem;
	line-height: 1;
	box-sizing: border-box;
}

.circle-big.no4::before {
	 content:'4';
	font-size: 3rem;
	padding: 1.3rem 0 0;
	line-height: 1;
	box-sizing: border-box;
}

.circle-big.no5::before {
	 content:'5';
	font-size: 3rem;
	padding: 1.3rem 0 0;
	line-height: 1;
	box-sizing: border-box;
}

.circle-big.no6::before {
	 content:'6';
	font-size: 3rem;
	padding: 1.3rem 0 0;
	line-height: 1;
	box-sizing: border-box;
}

.circle-big.no7::before {
	 content:'7';
	font-size: 3rem;
	padding: 1.3rem 0 0;
	line-height: 1;
	box-sizing: border-box;
}

.circle-big.no8::before {
	 content:'8';
	font-size: 3rem;
	padding: 1.3rem 0 0;
	line-height: 1;
	box-sizing: border-box;
}

.circle-big.no9::before {
	 content:'9';
	font-size: 3rem;
	padding: 1.3rem 0 0;
	line-height: 1;
	box-sizing: border-box;
}



@media only screen and (max-width: 600px) {
.circle-big {
	padding-top: 4rem;
}

.circle-big::before {
	width: 3rem;
	height: 3rem;
	margin-left: -1.5rem;
	top:0;
	border-radius: 1.5rem;
}


.circle-big.no1::before {
	font-size: 2rem;
	padding: 0.5rem 0 0;
}

.circle-big.no2::before {
	font-size: 2rem;
	padding: 0.5rem 0 0;
}

.circle-big.no3::before {
	font-size: 2rem;
	padding: 0.5rem 0 0;
}

.circle-big.no4::before {
	font-size: 2rem;
	padding: 0.5rem 0 0;
}

.circle-big.no5::before {
	font-size: 2rem;
	padding: 0.5rem 0 0;
}

.circle-big.no6::before {
	font-size: 2rem;
	padding: 0.5rem 0 0;
}

.circle-big.no7::before {
	font-size: 2rem;
	padding: 0.5rem 0 0;
}

.circle-big.no8::before {
	font-size: 2rem;
	padding: 0.5rem 0 0;
}

.circle-big.no9::before {
	font-size: 2rem;
	padding: 0.5rem 0 0;
}

}
/* p タグ 丸数字 */

.numberCir {
  display: inline-block;
  background: #b5cb7b;
  border-radius: 50%;
  width: 1.6em;
  height: 1.6em;
  color: #fff;
  font-size: 1.8em;
  text-align: center;
  line-height: 1.6em;
  padding:0;
  vertical-align:top;
  margin-bottom:0.5em;
}



/* 枠  */ 

.boxSimple {
	border: solid 1px #CCC;	
	padding:1.5em;
	background: rgba(255,255,255,.9);
}

.boxSimple2 {
	border: solid 1px #CCC;	
	padding:1.5em;
	background: rgba(255,255,255,.9);
	border-radius: 10px;
	-webkit-border-radius: 10px; 
	-moz-border-radius:10px;
}

.boxConst {
	border: dashed 1px #CBB69C;	
	padding:1.5em 1.5em 1.2em 1.5em;
	background: rgba(254,254,254,.9);
	border-radius: 10px;
	-webkit-border-radius: 10px; 
	-moz-border-radius:10px;
}

.boxFrame {
	padding:2em;
	border:3px solid #EC9B2F;
	border-radius: 10px;
	-webkit-border-radius: 10px; 
	-moz-border-radius:10px;
	margin-bottom:40px;
	background: rgba(255,255,255,.8);
}

.boxFrFL {
	padding:1.5em;
	border:2px solid #35477b;
	border-radius: 10px;
	-webkit-border-radius: 10px; 
	-moz-border-radius:10px;
	margin-bottom:40px;
	background: rgba(252,252,254,.9);
}

.boxFrameDouble {
	padding:2em;
	border:3px double #cecece;
	margin-bottom:40px;
	background: rgba(254,254,254,.85);
		border-radius: 10px;
	-webkit-border-radius: 10px; 
	-moz-border-radius:10px;
}

.boxFramePhilo {
	padding:2em;
	border:3px double #cecece;
	background-image:url(../img/common/washi.jpg);
	background-size:cover;
}

.boxFrameDoubleYG {
	padding:2em;
	border:3px double #C2DC69;
	margin-bottom:40px;
	background: rgba(255,255,255,.85);
}

.boxDot {
	padding:2em;
	border:  dotted 2px #E3AA24;
	border-radius: 10px;
	-webkit-border-radius: 10px; 
	-moz-border-radius:10px;
	margin-bottom:40px;
	background:#FEFDE9;
	
}

.boxFablic {
	padding:2em;
	border:3px solid #F1C03F;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius:5px;
	margin-bottom:40px;
	background:#FDFFF2;
	box-shadow: 0px 0px 0px 10px #FDFFF2;
	 /* border:dotted 2px #619735; */
	 border:dotted 1px #619735;
}

.boxFablicStr {
	padding:2em;
	border:3px solid #F1C03F;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius:5px;
	margin-bottom:40px;
	background: -webkit-repeating-linear-gradient(-45deg, #F9FBEA, #F9FBEA 4px,#F2F8D1 4px, #F2F8D1 8px);
    background: repeating-linear-gradient(-45deg, #F9FBEA, #F9FBEA 4px,#F2F8D1 4px, #F2F8D1 8px);
	box-shadow: 0px 0px 0px 10px #FDFFF2;
	border:dotted 2px #619735;
}

.boxFablicB {
	padding:2em;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius:5px;
	margin-bottom:40px;
	background:#F9FCFD;
	box-shadow: 0px 0px 0px 10px #F9FCFD;
	border:solid 2px #2E6CB1;
}

.boxFuki-right {
	position: relative;
	display: block;
	padding:2em;
	box-sizing: border-box;
	border:3px solid #029c80;
	color: #555;
	border-radius: 10px;
	-webkit-border-radius: 10px; 
	-moz-border-radius:10px;
	
}

.boxFuki-right:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 100%;
	margin-top: -15px;
	border: 15px solid transparent;
	border-left: 15px solid #029c80;
}


.boxFuki-left {
	position: relative;
	display: block;
	padding:2em;
	box-sizing: border-box;
	border:3px solid #029c80;
	color: #555;
	border-radius: 10px;
	-webkit-border-radius: 10px; 
	-moz-border-radius:10px;
	
}

.boxFuki-left:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -30px;
  margin-top: -15px;
  border: 15px solid transparent;
  border-right: 15px solid #029c80;
}

.boxStripe { /* box斜め線 */
	padding:2em;
	background: -webkit-repeating-linear-gradient(-45deg, #F7F9FD, #CEE6F2 4px,#F5FAFE 4px, #F5FAFE 8px);
    background: repeating-linear-gradient(-45deg, #CEE6F2, #CEE6F2 4px,#F5FAFE 4px, #F5FAFE 8px);
	border-radius: 10px;
	-webkit-border-radius: 10px; 
	-moz-border-radius:10px;
}


.boxStripeYG {
	padding:2em 2em 1.5em 2em;
	background: -webkit-repeating-linear-gradient(-45deg, #F9FBEA, #F9FBEA 4px,#F2F8D1 4px, #F2F8D1 8px);
    background: repeating-linear-gradient(-45deg, #F9FBEA, #F9FBEA 4px,#F2F8D1 4px, #F2F8D1 8px);
	border-radius: 10px;
	-webkit-border-radius: 10px; 
	-moz-border-radius:10px;
}






@media only screen and (max-width: 600px) {

.boxFrame {
	box-sizing: border-box;
	width:100%;
	padding:1em 1em;
}

.boxFrameDouble , .boxFrameDoubleYG , .boxFramePhilo {
	box-sizing: border-box;
	width:100%;
	padding:1em 1em;
}

.boxDot {
	box-sizing: border-box;
	width:100%;
	padding:1em 1em
}

.boxFablic {
	box-sizing: border-box;
	width:100%;
	padding:1em 1em;
}

.boxFuki-right:before ,  .boxFuki-left:before {
	top: 107%;
	left: 50%;
	margin-left: -15px;
	border: 15px solid transparent;
	border-top: 15px solid #029c80;
}

.boxFrFL {
	padding:20px 10px;
}

.boxStripeYG {
	padding:20px 10px;
}


}



/* table */


.nowrap {
	white-space: nowrap;
}

.tdCenter {
	text-align:center !important;
	vertical-align:middle !important;
}


.tdRight {
	text-align:right !important;
	vertical-align:middle !important;
}

.tdW90p {
	width:90%;
	box-sizing: border-box;
}

.tdW80p {
	width:80%;
	box-sizing: border-box;
}

.tdW70p {
	width:70%;
	box-sizing: border-box;
}

.tdW60p {
	width:60%;
	box-sizing: border-box;
}

.tdW50p {
	width:50%;
	box-sizing: border-box;
}

.tdW50Usu {
	width:50%;
	box-sizing: border-box;
}

.tdW40p {
	width:40%;
	box-sizing: border-box;
}


.tdW30p {
	width:30%;
	box-sizing: border-box;
}

.tdW25p {
	width:25%;
	box-sizing: border-box;
}

.tdW25pUsu {
	width:25%;
	box-sizing: border-box;
}


.tdW20p {
	width:20%;
	box-sizing: border-box;
}

.tdW10p {
	width:10%;
	box-sizing: border-box;
}

.tdGray {
	background-color:#f7f7f7 !important;
	text-align:center;
	vertical-align:middle;
}


/* 普通のtable */

table.table2 {
	width:100%;
	border-top: 1px #cdcdcd solid;
	border-left: 1px #cdcdcd solid;
	border-collapse: collapse;
	box-sizing: border-box;
}
table.table2 th {
	padding:0.35em 0.5em;
	border-bottom: 1px #cdcdcd solid;
	border-right: 1px #cdcdcd solid;
	letter-spacing:0;
	font-weight:normal;
	vertical-align:middle;
	background-color: #F4F4F4;
	color:#333;
}

table.table2 td {
	padding:0.35em 0.5em;
	border-bottom: 1px #cdcdcd solid;
	border-right: 1px #cdcdcd solid;
	font-weight:normal;
	letter-spacing:0;
	background: rgba(255,255,255,.85);
}

/* 普通のtableドットver */

table.table2Dot {
	width:100%;
	border-top: 1px dotted rgba(128,128,128,.5);
	border-collapse: collapse;
	box-sizing: border-box;
}
table.table2Dot th {
	padding:0.5em;
	border-bottom: 1px dotted rgba(128,128,128,.5);
	letter-spacing:0;
	font-weight:normal;
	vertical-align:middle;
	text-align:left;
}

table.table2Dot td {
	padding:0.5em;
	border-bottom: 1px dotted rgba(128,128,128,.5);
	font-weight:normal;
	letter-spacing:0;
}



/* 縦に並ぶtable */

table.table3 {	
	width:100%;
	border-top: 1px #cdcdcd solid;
	border-left: 1px #cdcdcd solid;
	border-collapse: collapse;
	margin-bottom:1.5em;
	box-sizing: border-box;
}
table.table3 th {
	padding:0.8em 0.5em;
	border-bottom: 1px #cdcdcd solid;
	border-right: 1px #cdcdcd solid;
	letter-spacing:0;
	font-weight:normal;
	white-space: nowrap;
	text-align:center;
	vertical-align:middle;
	background-color:#F4F4F4;
	color:#333;
}

table.table3 td {
	padding:0.8em 0.5em;
	border-bottom: 1px #cacaca solid;
	border-right: 1px #cacaca solid;
	font-weight:normal;
	letter-spacing:0;
	background: rgba(255,255,255,.85);
}

/* 縦に並ぶtableドットver */

table.table3Dot {	
	width:100%;
	border-top: 1px dotted rgba(128,128,128,.5);
	border-collapse: collapse;
	margin-bottom:1.5em;
	box-sizing: border-box;
}
table.table3Dot th {
	padding:0.5em;
	border-bottom: 1px dotted rgba(128,128,128,.5);
	letter-spacing:0;
	font-weight:normal;
	text-align:left;
	vertical-align:middle;
}

table.table3Dot td {
	padding:0.5em;
	border-bottom:1px dotted rgba(128,128,128,.5);
	font-weight:normal;
	letter-spacing:0;
}

.tableWhiteBack {
	background: rgba(255,255,255,.7);
	padding:2em;
}

.tableCT01 tr th{
  width: 25%;
}

.tableCT02 tr td{
  vertical-align: middle;
}


@media screen and (max-width: 768px) {
	
/* タブレット以下用　TableScroll スクロール　スライド　*/

.tableScrollTablet {
    border-right: 3px solid #4f4d47;
	overflow-x: scroll;
    -webkit-overflow-scrolling: touch;	
}

.tableWhiteBack {
	padding:1em;
}

}


@media screen and (max-width: 600px) {
	
.tdW90p , .tdW80p , .tdW70p , .tdW60p , .tdW50p , .tdW40p , .tdW30p , .tdW25p , .tdW20p {
	width:100%;
}


	
/* スマホ用 TableScroll スクロール　スライド　*/

.tableScrollSp {
    border-right: 3px solid #4f4d47;
	overflow-x: scroll;
    -webkit-overflow-scrolling: touch;	
}

.tableScrollWrap {
 border-right: 3px solid #4f4d47;
 overflow-x: scroll;
 -webkit-overflow-scrolling: touch;
}

/* 縦に並ぶtable */

table.table3 {
	width: 100%;
	margin: 0 0 3% 0;
	padding: 10px;
	background-color:#FFF;
	border:1px solid #EBEBEB;
}
table.table3 tr {
	
}
table.table3 th {
	display: list-item;
	padding:0.8em;
	border: none;
	font-weight: normal;
	vertical-align: top;
	width:auto;
	line-height: 1em;
}


table.table3 td {
	display: list-item;
	width:auto;
	border: none;
	font-weight: normal;
	padding:0.8em;
}



/* 縦に並ぶtableドットver */

table.table3Dot {
	width: 100%;
	margin: 0 0 3% 0;
	padding: 10px;
	border-top: 2px #ccc dotted;
}
table.table3Dot tr {
	
}
table.table3Dot th {
	display: list-item;
	padding:1em;
	border-bottom:1px dotted rgba(192,192,192,.5);
	font-weight:600;
	vertical-align: top;
	width:auto;
	line-height: 1em;
}


table.table3Dot td {
	display: list-item;
	width:auto;
	border-bottom: 2px #ccc dotted;
	font-weight: normal;
	padding:1em;
}

}



/*===========================
フロー
===========================*/


/* フローCenter */

.area_flowC {
}

.area_flowC2 {
	padding:0 1em;
}

.area_flowC .inner_flow {
	border:1px solid #ccc;
	padding:24px 30px;
	border-radius:5px;
    -webkit-border-radius: 5px; 
    -moz-border-radius: 5px;
	min-height:1em;
	background: rgba(255,255,255,.7);

}


.area_flowC .inner_flow .largeTxt {
	font-size:1.6em;
	text-align:center;
	padding-bottom:0.2em;
	margin-bottom:0.5em;
	color:#EA871A;/* 要調整　*/
	border-bottom:1px dotted rgba(128,128,128,.5);
	font-weight:500;
}



.area_flowC .inner_flow .txtWrap {
	/* padding:24px 30px; */ 
	padding:0 2em;
}

.area_flowC .inner_flow p.flowImg {
	text-align:center;
	margin:0.5em auto;
}


.area_flowC .arrow {
	margin:5px 0;
	text-align:center;
	font-size:2.8em;
	color:#ababab;
}


/* フローSmall */

.area_flowS {
	padding:0;
}
.area_flowS .inner_flow {
	border:1px solid #C0CFDC;
	padding:0.5em 1em;
	border-radius:5px; 
    -webkit-border-radius: 5px; 
    -moz-border-radius: 5px;
	min-height:1em;
	background: rgba(255,255,255,.7);
}


.area_flowS .inner_flow .largeTxt {
	font-size:1.05em;
	text-align:center;
}


.area_flowS .inner_flow .txtWrap {
}


.area_flowS .arrow {
	margin:3px 0;
	text-align:center;
	font-size:1.6em;
	color:#ababab;
}




/* 単語フロー */

.flowTxt {
	display:block;
	float:left;
	margin:0 10px 10px 10px;
	border:1px solid #CCC;
	padding:0.5em 2em;
}

.flowTxtArrow {
	display:block;
	float:left;
	background-image:url(../img/common/flowtxt_arrow.png);
	width:8px;
	height:2.5em;
	background-position:center;
	text-indent:-7777px;
	background-repeat:no-repeat;
}

@media screen and (max-width: 768px) {
.area_flowC {
	padding:0 1em;
}
.area_flowC .inner_flow {
	padding:1em 2em;
}

.area_flowC .inner_flow .largeTxt {
	font-size:1.4em;
	padding-bottom:0.2em;
	margin-bottom:0.4em;
}


.area_flowC .inner_flow .txtWrap {
	/* padding:24px 30px; */ 
	padding:0 1em;
}

.area_flowC .inner_flow p.flowImg {
	text-align:center;
	margin:0.5em auto;
}

}

@media screen and (max-width: 600px){
/* フローCenter */

.area_flowC {
	padding:0;
}
.area_flowC .inner_flow {
	padding:0.5em 1em;
}
.area_flowC .inner_flow .largeTxt {
	font-size:1.2em;
	padding-bottom:0.1em;
	margin-bottom:0.2em;
}

.area_flowC .inner_flow .txtWrap {
	padding:0 0.5em;
}

.area_flowC .inner_flow p.flowImg {
	text-align:center;
	margin:0.3em auto;
}

.area_flowS .inner_flow .largeTxt {
	font-size:1em;
	text-align:center;
}


}



/* リスト */


ul.liReseter , ul.liReseterFloat , ul.liReseter2Div , ul.liReseter3Div , ul.liReseter4Div {
	line-height:1.8em;
	margin-left:18px;
}

ul.liReseter li {
	display:list-item;
	list-style-type: disc;
	list-style-position: outside;
	padding-left:-10px;
}


ul.liReseterFloat li {
	display:list-item;
	list-style-type: disc;
	list-style-position: outside;
	padding-left:-10px;
	float:left;
	padding-right:3em;
}

ul.liReseter2Div li {
	display:list-item;
	list-style-type: disc;
	list-style-position: outside;
	padding-left:-10px;
	float:left;
	padding-right:1em;
	width:45%;
	box-sizing: border-box;
}

ul.liReseter3Div li {
	display:list-item;
	list-style-type: disc;
	list-style-position: outside;
	padding-left:-10px;
	float:left;
	padding-right:1em;
	width:31%;
	box-sizing: border-box;
}

ul.liReseter4Div li {
	display:list-item;
	list-style-type: disc;
	list-style-position: outside;
	padding-left:-10px;
	float:left;
	padding-right:3em;
	width:22%;
	box-sizing: border-box;
}

ul.liDef {
	display: flex;
	justify-content: start;
	flex-wrap: wrap;
	align-items: stretch;
	margin:0 0 0 1em;
}

ul.liDef li::before {
    position: absolute;
    content: '';
    width: 0.4em;
    height: 0.4em;
    margin-left: -1em;
    top: 0.6em;
    padding: 0;
    border-radius: 0.4em;
    background-color:#999;
}

ul.liDef li {
    position:relative;
	padding:0 2em 0 0;
	box-sizing: border-box;
}

.plus1div li {
	width:100%;
}

.plus2div li {
	width:50%;
}

.plus3div li {
	width:33%;
}

.plus4div li {
	width:25%;
}

.plus5div li {
	width:20%;
}

.plus6div li {
	width:16%;
}

@media only screen and (max-width: 600px) {
	
ul.liDef li {
	width:100%;
}

}



ol.liReseter {
	line-height:1.8em;
	margin-left:20px;
}

ol.liReseter li {
	display:list-item;
	list-style-type:decimal;
	list-style-position: outside;
	padding-left:-10px;
}

ul.liCircle {
	margin-left:0;
}

ul.liCircle li {
	padding:0 0 0 20px;
	position: relative;
}

ul.liCircle li::before , ul.liInline li::before ,  ul.liInline2Div li::before , ul.liInline3Div li::before , ul.liInline4Div li::before {
	position: absolute;
    content: '';
    width: 10px;
    height: 10px;
    left: 3rem;
    margin-left: -3rem;
    top: 8px;
    padding: 0;
    border-radius: 5px;
	background-color: var(--basic-color);
}

ul.liInline {
}

ul.liInline li {
	display:inline-block;
	padding:0 1.5em 0 20px;
	position: relative;
}


ul.liInline2Div {
}
ul.liInline2Div li {
	display:inline-block;
	padding:0 1.5em 0 20px;
	position: relative;
	width:48%;
	box-sizing: border-box;
}

ul.liInline3Div {
}
ul.liInline3Div li {
	display:inline-block;
	padding:0 1.5em 0 20px;
	position: relative;
	width:31%;
	box-sizing: border-box;
}

ul.liInline4Div {
}
ul.liInline4Div li {
	display:inline-block;
	padding:0 1.5em 0 20px;
	position: relative;
	width:24%;
	box-sizing: border-box;
}



ul.liCheck , ul.liCheckInline , ul.liCheck2Div , ul.liCheck3Div  , ul.liCheck4Div {
	padding-left: 1em;
}

ul.liCheck li , ul.liCheckInline li  , ul.liCheck2Div li  , ul.liCheck3Div li , ul.liCheck4Div li {
	position: relative;
	padding-left: 0.4em;
}

ul.liCheck li:before , ul.liCheckInline li:before , ul.liCheck2Div li:before , ul.liCheck3Div li:before , ul.liCheck4Div li:before {
	font-family: "Font Awesome 5 Free";
 	content: '\f14a';
	color:var(--basic-color);
	position: absolute;
	left: -1em;
	top: 0;
}


ul.liCheckInline li {
	display:inline-block;
	margin-right:1.5em;
	vertical-align:top;
}

ul.liCheck2Div li {
	display:inline-block;
	width:48%;
	vertical-align:top;
}

ul.liCheck3Div li {
	display:inline-block;
	width:30%;
	vertical-align:top;
}

ul.liCheck4Div li {
	display:inline-block;
	width:22%;
	vertical-align:top;
}



ul.liPDF , ul.liPDFInline , ul.liPDF2Div , ul.liPDF3Div , ul.liPDF4Div  {
	padding-left: 1em;
}

ul.liPDF li , ul.liPDFInline li , ul.liPDF2Div li , ul.liPDF3Div li , ul.liPDF4Div li {
	position: relative;
	padding-left: 0.4em;
}


ul.liPDF li:before , ul.liPDFInline li:before , ul.liPDF2Div li:before , ul.liPDF3Div li:before , ul.liPDF4Div li:before {
	font-family: "Font Awesome 5 Free";
 	content: '\f1c1';
	color:#C00505;
	position: absolute;
	left: -1em;
	top: 0;
}

ul.liPDFInline li {
	display:inline-block;
	margin-right:1.5em;
	vertical-align:top;
}

ul.liPDF2Div li {
	display:inline-block;
	width:48%;
	vertical-align:top;
}

ul.liPDF3Div li {
	display:inline-block;
	width:30%;
	vertical-align:top;
}

ul.liPDF4Div li {
	display:inline-block;
	width:22%;
	vertical-align:top;
}

ul.liDiagonal {
	margin-left:10px;
}

ul.liDiagonal li {
	background-color:#FDEBBF;
	margin-bottom:3px;
	box-sizing: border-box;
	padding:0.2em 0.8em 0.2em 1em;
	transform: skewX(-30deg);
	font-size:1.2em;
}

ul.liDiagonal li p {
	transform: skewX(30deg);
}

ul.liDiagonal li::before {
	position: absolute;
    content: '';
	top:0px;
	left:-10px;
	height: 100%;
	width:20px;
	background-color:#FDEBBF;
	transform: skewX(30deg);
}

ul.liDiagonal p::before {
	position: absolute;
    content: '';
    width: 10px;
    height: 10px;
    top: 7px;
	left:-20px;
    padding: 0;
    border-radius: 5px;
	background-color:#f67f21;
}

@media only screen and (max-width: 600px) {
ul.liDiagonal li {
	font-size:1em;
}

ul.liDiagonal p::before {
    top: 9px;
}
}

ul.liRound {
}

ul.liRound li {
	background-color:#FDEBBF;
	margin-bottom:3px;
	box-sizing: border-box;
	border-radius:0 20px 20px 0;
	padding:0.3em 0.5em 0.3em 1.4em;
	font-size:1.1em;
	position:relative;
}


ul.liRound li::before {
	position: absolute;
    content: '';
    width: 10px;
    height: 10px;
    top: 13px;
	left:8px;
    padding: 0;
    border-radius: 5px;
	background-color:#f67f21;
}





ul.liInline li {
	display:inline-block;
	padding:0 1.5em 0 20px;
	position: relative;
}

ol.liFeature li {
	list-style-type: none;
	list-style-position: outside;
	padding:12px 0 12px 55px;
	margin-bottom:7px;
	background-position:0 0;
	background-repeat:no-repeat;
	line-height:1.2em;
	font-size:1.3em;
	position: relative;
}
ol.liFeature li::before {
	position: absolute;
	content:'';
	width: 2.7rem;
	height: 2.7rem;
	left: 3rem;
	margin-left: -2.7rem;
	top:0;
	border-radius: 2.7rem;
	font-size: 1.8rem;
	padding: 0.5rem 0.8rem 0;
	line-height: 1;
	box-sizing: border-box;
	color:#FFF;
	background-color:var(--basic-color);
}

ol.liFeature .no1::before {
	 content:'1';
}

ol.liFeature .no2::before {
	 content:'2';
}

ol.liFeature .no3::before {
	 content:'3';
}

ol.liFeature .no4::before {
	 content:'4';
}

ol.liFeature .no5::before {
	 content:'5';
}

ol.liNum {
	counter-reset:number;
	list-style-type: none;
}
ol.liNum li {
	border-bottom: dotted 1px #ccc;
	position: relative;
	padding: 0.5em 0.5em 0.5em 34px;
	line-height: 1.5em;
	font-size:1.2em;
}
ol.liNum li:before {
	position: absolute;
	counter-increment: number;
	content: counter(number);
	display:inline-block;
	background:#EEB853;
	color: white;
	font-size: 15px;
	border-radius: 50%;
	left: 0;
	width: 25px;
	height: 25px;
	line-height: 25px;
	text-align: center;
	top:0.8em;/*以下 上下中央寄せのため
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);*/
}
ol.liNum li:last-of-type {
	border-bottom: none; /*最後のliの線だけ消す*/
}

ol.liNumS , ol.liNumS2 {
	counter-reset:number;
	list-style-type: none;
}
ol.liNumS li , ol.liNumS2 li {
	border-bottom: dotted 1px #ccc;
	position: relative;
	padding: 0.5em 0.5em 0.5em 30px;
	line-height: 1.5em;
}

ol.liNumS2 li {
	display:inline-block;
	width:45%;
	box-sizing: border-box;
}

ol.liNumS li:before , ol.liNumS2 li:before {
	position: absolute;
	counter-increment: number;
	content: counter(number);
	display:inline-block;
	background:#005bab;
	color: white;
	font-size: 12px;
	border-radius: 50%;
	left: 0;
	width: 22px;
	height: 22px;
	line-height: 22px;
	text-align: center;
	top:0.7em;/*以下 上下中央寄せのため
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);*/
}
ol.liNumS li:last-of-type {
	border-bottom: none; /*最後のliの線だけ消す*/
}

@media only screen and (max-width: 768px) {
	ol.liNumS2 li {
	display:block;
	width:100%;
}

ol.liNumS2 li:last-of-type {
	border-bottom: none; /*最後のliの線だけ消す*/
}
	
}




@media only screen and (max-width: 768px) {
	
ul.liInline4Div li , ul.liReseter4Div li , ul.liPDF4Div li {
	box-sizing: border-box;
	width:48%;
	}


ul.liInline3Div li, ul.liInline4Div li {
	width:100%;
	box-sizing: border-box;
}

}

@media only screen and (max-width: 600px) {
	
ul.liReseterFloat li , ul.liReseter2Div li , ul.liReseter3Div li , ul.liReseter4Div li {
	width:100%;
	box-sizing: border-box;
}

ul.liInline2Div li {
	width:100%;
	box-sizing: border-box;
}

ul.liCheckInline li , ul.liCheck2Div li , ul.liCheck3Div li , ul.liCheck4Div li , ul.liPDFInline li , ul.liPDF2Div li , ul.liPDF3Div li , ul.liPDF4Div li {
	width:100%;
	box-sizing: border-box;
	margin-right:0;
}




ol.liFeature li {
 background-size:30px;
 padding:8px 0 8px 40px;
 margin-bottom:7px;
 line-height:1.1em;
 font-size:1.1em;
}
 ol.liFeature li::before {
 position: absolute;
 content:'';
 width: 1.8rem;
 height: 1.8rem;
 left: 2.4rem;
 margin-left: -2.7rem;
 top:0;
 border-radius: 2.7rem;
 font-size: 1.2rem;
 padding: 0.4rem 0.6rem 0 0.5rem;
}	
	
}

ul.liFlexBox {
	display: flex;
	justify-content: space-evenly;
	flex-wrap: wrap;
	 /* アイテムの高さを揃える */
}

ul.liFlexBox li {
	box-sizing: border-box;
	background-color:#fcc156;
	font-family: 'Noto Sans JP', sans-serif;
	font-size:1.05em;
	border-radius: 100px;
	padding:0.25em 1em;
	text-align:center;
	margin:5px;
}

ul.liFlexBoxYG {
	display: flex;
	justify-content: space-evenly;
	flex-wrap: wrap;
	 /* アイテムの高さを揃える */
}

ul.liFlexBoxYG li {
	box-sizing: border-box;
	background-color:#D5EB87;
	font-family: 'Noto Sans JP', sans-serif;
	font-size:1.05em;
	border-radius: 100px;
	padding:0.25em 1em;
	text-align:center;
	margin:5px;
}

ul.liConst {
	display: flex;
	justify-content: space-evenly;
	flex-wrap: wrap;
	 /* アイテムの高さを揃える */
}

ul.liConst li {
	box-sizing: border-box;
	background-color:#f9f3d9;
	font-size:0.95em;
	border-radius: 5px;
	-webkit-border-radius: 5px; 
	-moz-border-radius: 5px;
	padding:0.1em 0.5em;
	text-align:center;
	width:30%;
	margin-bottom:5px;
}

ul.li2Div li {
	box-sizing: border-box;
	width: 47%;
}

ul.li3Div li {
	box-sizing: border-box;
	width: 31%;
}

ul.li4Div li {
	box-sizing: border-box;
	width: 23%;
}

/* 最後のコンテンツを左寄せにする指定 */
.li4Div:after {
    content: "";
    display: block;
    width: 23%;  /* f-itemに指定したwidthと同じ幅を指定する */
    height: 0;
}

ul.li5Div li {
	box-sizing: border-box;
	width: 19%;
}

ul.li6Div li {
	box-sizing: border-box;
	width: 15%;
}

@media only screen and (max-width: 600px) {

ul.li2Div li , ul.li3Div li , ul.li4Div li ,ul.li5Div li , ul.li6Div li , ul.liConst li {
	width: 100%;

}

}


/* 会社案内　*/

ul.liBusi {
	text-align:center;
}
ul.liBusi li {
	padding:0.2em 1em;
	font-size:1.1em;
	width:100%;
	box-sizing: border-box;
	vertical-align:top;
	background-color:#3fb6f5;
	color:#FFF;
	margin-bottom:5px;
	border-radius: 50px;
	-webkit-border-radius: 50px; 
	-moz-border-radius: 50px;
}

ul.liBusi2Div {
	text-align:center;
	margin-bottom:2em;
}
ul.liBusi2Div li {
	display:inline-block;
	padding:0.2em 1em;
	font-size:1.1em;
	width:46%;
	box-sizing: border-box;
	vertical-align:top;
	background-color:#41b879;
	color:#FFF;
	margin-bottom:10px;
	border-radius: 50px;
	-webkit-border-radius: 50px; 
	-moz-border-radius: 50px;
}

ul.liBusi2Div {
	text-align:center;
	margin-bottom:2em;
}
ul.liBusi2Div li {
	display:inline-block;
	padding:0.2em 1em;
	font-size:1.1em;
	width:46%;
	box-sizing: border-box;
	vertical-align:top;
	background-color:#41b879;
	color:#FFF;
	margin-bottom:10px;
	border-radius: 50px;
	-webkit-border-radius: 50px; 
	-moz-border-radius: 50px;
}

ul.liBusi2DivA {
	text-align:center;
	margin-bottom:2em;
}
ul.liBusi2DivA li {
	display: inline-block;
	width:46%;
	margin-bottom:10px;

}

ul.liBusi2DivA li a {
	display:block;
	color:#fff;
	text-decoration:none;
	display:block;
	padding:0.2em 1em;
	box-sizing: border-box;
	vertical-align:top;
	background-color:#41b879;
	color:#FFF;
	border-radius: 50px;
	-webkit-border-radius: 50px; 
	-moz-border-radius: 50px;
}

ul.liPoint {
	text-align:center;
}
ul.liPoint li {
	padding:0.2em 1em;
	font-size:1.1em;
	width:100%;
	box-sizing: border-box;
	vertical-align:top;
	background-color:#5A8EC9;
	color:#FFF;
	margin-bottom:5px;
	border-radius: 50px;
	-webkit-border-radius: 50px; 
	-moz-border-radius: 50px;
}


ul.liStaff {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center; /* アイテムを上下中央で配置します */
	text-align:center;
	margin-bottom:2em;
}
ul.liStaff  li {

	padding:0.2em 1em;
	font-size:1.1em;
	width:30%;
	box-sizing: border-box;
	vertical-align:top;
	background-color:#35477b;
	color:#FFF;
	margin-bottom:10px;
	/*
	border-radius: 5px;
	-webkit-border-radius: 5px; 
	-moz-border-radius: 5px;
	*/
}
@media only screen and (max-width: 768px) {
	
ul.liStaff li , ul.liBusi2Div li , ul.liBusi2DivA li {
	display:block;
	width:100%;
}

ul.liBusi li , ul.liBusi2Div li , ul.liBusi2DivA li {
	font-size:1em;
}

ul.liBusi li {
	padding:0.2em 0.5em;
	border-radius: 5px;
	-webkit-border-radius: 5px; 
	-moz-border-radius: 51px;
	text-align:left;
}

}

.boxArea {
	border: double 3px #b5cb7b;	
	padding:3em 4em;
}


.plusUnderLine li {
	border-bottom:1px dotted #CCC;
	margin-bottom:12px;
}



/* faq */

dl.faq dt {
	padding:5px 0 10px 38px;
	font-size:1.2rem;;
	position: relative;
}

dl.faq dd {
	padding:5px 15px 20px 38px;
	color:#444;
	position: relative;
	border-bottom:#CCC 1px dashed;
	margin-bottom:30px;
}


dl.faq dt::before {
	position: absolute;
	content:'Q.';
	font-style: oblique;
	width: 1.8rem;
	height: 1.8rem;
	left: 2rem;
	padding: 0 0 0 0.4rem;
	margin-left: -1.8rem;
	top:0.15rem;
	border-radius: 0.9rem;
	color: #FFF;
	background:#8CAC2D;
	box-sizing: border-box;
	font-size:1rem;
}

dl.faq dd::before {
	position: absolute;
	content:'A.';
	font-style: oblique;
	width: 1.8rem;
	height: 1.8rem;
	left: 2rem;
	padding: 0 0 0 0.5rem;
	margin-left: -1.8rem;
	top:0.15rem;
	border-radius: 0.9rem;
	color: #FFF;
	background:#79CC8E;
	box-sizing: border-box;
	font-size:1rem;
}

/* faq　アコーディオン */

/*
.qa-list:not(:first-child) {
  margin-top: 10px;
}
*/

.question-title {
	cursor: pointer;
	padding: 20px 40px 20px 50px;
	position: relative;
	border-top:1px dotted rgba(128,128,128,.5);
	font-size:1.2em;
}

.question-title:first-child {
	border-top:none;
}

.question-title:before {
	position: absolute;
	content:'Q.';
	font-style: oblique;
	width: 1.8em;
	height: 1.8em;
	left: 1.8em;
	padding: 0.1em 0 0 0.4em;
	margin-left: -1.8em;
	top:0.9em;
	border-radius: 0.9em;
	color: #FFF;
	background:#ff6200;
	box-sizing: border-box;
	font-size:1em;
}

.question-title:after { /* 矢印 */
  position: absolute;
  display: block;
  content: '';
  top: 35%;
  right: 22px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #999;
  border-right: 2px solid #999;
  transform: rotate(135deg);
  transition: all .3s ease-in-out;
}

.question-title.open:after {
  transform: rotate(-45deg);
  top: 45%;
}

.answer-text {
	/* display: none; 表示非表示 */
	padding: 5px 40px 25px 50px;
	position: relative;
}

.answer-text:before {
	position: absolute;
	content:'A.';
	font-style: oblique;
	width: 1.8em;
	height: 1.8em;
	left: 2em;
	padding: 0 0 0 0.5em;
	margin-left: -1.8em;
	top:0.3em;
	border-radius: 0.9em;
	color: #FFF;
	background:#f09355;
	box-sizing: border-box;
	font-size:1em;
}

@media only screen and (max-width: 600px) {
	
.question-title {
	padding: 10px 40px 15px 35px;
	position: relative;
	font-size:1.1em;
}


.question-title:before {
	width: 1.7em;
	height: 1.7em;
	left: 1.7em;
	padding: 0 0 0 0.3em;
	margin-left: -1.8em;
	top:0.6em;
	border-radius: 0.9em;
	font-size:0.9em;
}

.answer-text {
	display: none;  /* 表示非表示 */
	padding: 5px 40px 35px 35px;
	position: relative;
}

.answer-text:before {
	width: 1.8em;
	height: 1.8em;
	left: 1.8em;
	padding: 0 0 0 0.38em;
	margin-left: -1.8em;
	top:0.4em;
	border-radius: 0.9em;
	font-size:0.9em;
}

}


/* /faq アコーディオン　*/


.infoWrap {
	box-sizing: border-box;
    margin: 0 auto;
	width:auto;
    max-width:80%;
	min-width:60%;
	height: 250px;
	padding:2em 5em;
	text-align:left;
	box-shadow: 0px 0px 10px #ccc;
	overflow-y:scroll;
	background:rgb(255,255,255,.75);
}

/*スクロールバー全体*/
.infoWrap::-webkit-scrollbar {
    width: 10px;
  　background:#fafafa;
}

/*スクロールバーの軌道*/
.infoWrap::-webkit-scrollbar-track {
  border-radius:0px;
  background:#efefef;
}

/*スクロールバーの動く部分*/
.infoWrap::-webkit-scrollbar-thumb {
 /*  background-color:#1f508d; */
 background-color:var(--basic-color);
}

/* インフォメーション　履歴 */

dl.info {
	overflow:auto;
}

dl.info dt {
	float: left;
	clear:left;
	width: 6em;
	margin:0;
	padding: 1.2em 0 1.2em 0.5em;
}

dl.info dd {
	margin:0;
	padding: 1.2em 0 1.2em  6.5em;
	border-bottom:#cccccc dotted 2px;
}

/*
dl.info dd:last-child  {
	border-bottom:none;
}
*/

dl.history {
	overflow:auto;
}

dl.history dt {
	float: left;
	clear:left;
	width: 10em;
	margin:0;
	padding: 1.2em 0 1.2em 0.5em;
}

dl.history dd {
	margin:0;
	padding: 1.2em 0 1.2em  10.5em;
	border-bottom:#aaaaaa dotted 1px;
}


dl.history dd:last-child  {
	border-bottom:none;
}




@media only screen and (max-width: 768px) {
	
dl.info dt {
	width: 8em;
	padding: 1.4em 0 1.4em 0.5em;
}

dl.info dd {
	padding: 1.4em 0 1.4em  8.5em;
}

dl.history dt {
	width: 8em;
	padding: 1.4em 0 1.4em 0.5em;
}

dl.history dd {
	padding: 1.4em 0 1.4em  8.5em;
}

}

@media only screen and (max-width: 600px) {
	
.infoWrap {
	padding:1em 1.5em;
	width:100%;
	max-width:100%;
	min-width:80%;
}
	
dl.info dt {
	float:none;
	margin:0;
	padding: 0.3em 0 0.3em 0;
}

dl.info dd {
	margin:0;
	padding: 0 0 0.3em 0;
	margin-bottom:0.5em;
}

dl.history dt {
	float:none;
	margin:0;
	padding: 0.3em 0 0.3em 0;
	font-weight:bold;
}

dl.history dd {
	margin:0;
	padding: 0 0 0.3em 0;
	margin-bottom:0.5em;
}


}



.imgFloatRight {
	float:right;
	margin:0 0 1em 2em;
}

.imgFloatRightTabletCenter {
	float:right;
	margin:0 0 1em 2em;
}

.imgFloatLeft {
	float:left;
	margin:0 2em 1em 0;
}

.imgFloatLeftTabletCenter {
	float:left;
	margin:0 2em 1em 0;
}

@media only screen and (max-width: 768px) {
	
.imgFloatRightTabletCenter , .imgFloatLeftTabletCenter {
	float:none;
	text-align:center;
}
	

}

@media only screen and (max-width: 600px) {
	
.imgFloatRight , .imgFloatLeft {
	float:none;
	margin:0 0 1em 0;
	text-align:center;
}
	

}





/*===========================
ページ内リンク
===========================*/


.boxAnch {
	box-sizing: border-box;
    margin: 0 auto;
	width:auto;
    max-width:80%;
	min-width:60%;
	padding:2em 5em;
	box-shadow: 0px 0px 10px #ccc;
	background:rgb(255,255,255,.90);
	text-align:center;
}

ul.pageAnch li {
	display:inline-block;
	margin-bottom:0.4em;
}
ul.pageAnch a {
	display:inline-block;
	text-decoration:none;
	text-align:center;
	line-height:normal;
	padding:0.2em 2em 0.2em 2em;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	color:#FFF;
	background-color:var(--basic-color);
	font-size:0.94em;
	box-sizing: border-box;
}

/*
#content1 ul.pageAnch a {	
	background-color: #dc6529;
}

#content3 ul.pageAnch a {
	background-color: #00a779;
	
}

*/


ul.pageAnch a:hover {
	cursor:pointer;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
	-moz-opacity:0.7;
	-khtml-opacity: 0.7;
	opacity:0.7;
	zoom:1;
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
}


@media screen and (max-width: 768px) {

/*===========================
ページ内リンク
===========================*/

.boxAnch {
	padding:1em 1.5em;
	width:100%;
	max-width:100%;
	min-width:80%;
}


ul.pageAnch li {
	display:block;
	margin-bottom:0.2em;
}
	
.boxAnch {
	padding:1.4em 1.5em 1.4em 1.4em;
}

ul.pageAnch a {
	width:100%;
	font-size:0.9em;
}

	

}

/*===========================
ページ内リンク直し
===========================*/

#anch01, #anch02 , #anch03 , #anch04 , #anch05 , #anch06, #anch07 , #anch08 , #anch09 , #anch10 {
	margin-top:-90px;
	padding-top:90px;
}

@media screen and (max-width: 768px) {

#anch01, #anch02 , #anch03 , #anch04 , #anch05 , #anch06, #anch07 , #anch08 , #anch09 , #anch10 {
}

}

@media screen and (max-width: 600px) {

#anch01, #anch02 , #anch03 , #anch04 , #anch05 , #anch06, #anch07 , #anch08 , #anch09 , #anch10 {
}

}




/*===========================
 index top
===========================*/

p.strongPoint {
	border-bottom: solid 1px #f9ab1a;
	padding: 0.5em 0.5em 0.5em 0;
	line-height: 1.5em;
	font-size:1.9em;
	margin-bottom:0.8em;
	font-weight:600;
	color:#333;
}

p.strongPoint .strongNum {
	display:inline-block;
	color:#fa7f1f;
	font-size:2.4em;
	font-style: italic;
	padding:0 0.3em 0 0;
	font-weight:500;
	vertical-align: -0.09em;
}

.strongLine {
	border-bottom:1px solid #ccc;
	padding-bottom:0.8em;
	margin-bottom:3em;
}

.txtDay {
	display:inline-block;
	background-color:#fbab18;
	color:#FFF;
	padding:0.1em 1em;
	margin-bottom:10px;
}

@media only screen and (max-width: 768px) {
	
p.strongPoint {
	padding: 0.5em 0.5em 0.5em 0;
	line-height: 1.5em;
	font-size:1.2em;
	margin-bottom:0.8em;
}
p.strongPoint .strongNum {
	font-size:2.2em;
	top:10px;

}
}

@media only screen and (max-width: 600px) {

p.strongPoint {
	padding: 0.5em 0.5em 0.5em 0;
	line-height: 1.2em;
	font-size:1.1em;
	margin-bottom:0.8em;
}
p.strongPoint .strongNum {
	font-size:2em;
	top:8px;

}
	
	
}

.philosophyFs {
	font-size:1.2em;
	line-height:1.6em;
}

@media only screen and (max-width: 600px) {

.philosophyFs {
	font-size:1.1em;
	line-height:1.5em;
}

}



/*===========================
index
===========================*/







/*--- bnr grid ---*/


.bgcolorTopBnr {
	background-color:#fff;
}

.bnrPic2Box {
    position: relative;
    width: 50%;
    height: auto;
	background-repeat:no-repeat;
	background-position:center;
	background-size:cover;
	color:#fff;
	font-size: 2.6vw;
	line-height:1.2em;
}

.bnrPic3Box {
    position: relative;
    width: 33.333%;
    height: auto;
	background-repeat:no-repeat;
	background-position:center;
	background-size:cover;
	color:#fff;
	font-size: 2vw; 
	/* font-size: 1.6vw; */
	line-height:1.2em;
}

.bnrPic4Box {
    position: relative;
    width: 25%;
    height: auto;
	background-repeat:no-repeat;
	background-position:center;
	background-size:cover;
	color:#fff;
	font-size: 1.4vw;
	line-height:1.2em;
}



.bgcolorTopBnr span.englishName {
	display:block;
	margin:0 0 0 0;
	font-size: 0.4em;
	line-height:1.2em;
	/* font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif; */
	font-family: 'Noto Serif JP', serif;
}

.bgcolorTopBnr span.machineSmallTxt {
	font-size: 0.8em;
}


.bnrPic2Box a:hover , .bnrPic3Box a:hover , .bnrPic4Box a:hover {
	cursor:pointer;
    filter: alpha(opacity=30);
    -ms-filter: "alpha(opacity=30)"; 
    -moz-opacity:0.3 
    -khtml-opacity: 0.31; 
    opacity:0.3;
    zoom:1;
	
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
}




.bnrPic2Box a , .bnrPic3Box a , .bnrPic4Box a {
	text-decoration:none;
	/* 背景黒 
	color:#fff;
	*/
	/* 背景白 */
	color:#000;
}




.ratio-1_1:before {
    content: "";
    display: block;
    padding-top: 100%; /* 1:1 */
}

.ratio-2_1:before {
    content: "";
    display: block;
    padding-top: 50%; /* 2:1 */
}

.ratio-4_3:before {
    content: "";
    display: block;
    padding-top: 75%; /* 4:3 */
}
 

.bnrPicInner {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image:url(../img/top/icn_bnr_arrow.png);
	background-repeat:no-repeat;
	background-position:right 15px bottom 15px;
}


/* text centerring */
.gridCenter {
	display: table;
	width: 100%;
	height: 100%;
	text-align: center;
}
.gridCenter > * {
	display: table-cell;
	vertical-align: middle;	
	/* 背景黒 
	text-shadow: 0 0 2px #000, 0 0 4px #000, 0 0 6px #000, 0 0 8px #000,0 0 10px #000;
	*/
	/* 背景白 */
	text-shadow: 0 0 2px #fff, 0 0 4px #fff, 0 0 6px #fff, 0 0 8px #fff,0 0 10px #fff;
}


/* 各画像 */

.bnrGrid01 {
	background-image:url(../img/top/bnr01.jpg);
}

.bnrGrid02 {
	background-image:url(../img/top/bnr02.jpg);
}

.bnrGrid03 {
	background-image:url(../img/top/bnr03.jpg);
}
.bnrGrid04 {
	background-image:url(../img/top/bnr04.jpg);
}

.bnrGrid05 {
	background-image:url(../img/top/bnr05.jpg);
}

.bnrGrid06 {
	background-image:url(../img/top/bnr06.jpg);
}
.bnrGrid07 {
	background-image:url(../img/top/bnr07.jpg);
}

.bnrGrid08 {
	background-image:url(../img/top/bnr08.jpg);
}

.bnrGrid09 {
	background-image:url(../img/top/bnr09.jpg);
}

.bnrGrid10 {
	background-image:url(../img/top/bnr10.jpg);
}

.bnrGrid11 {
	background-image:url(../img/top/bnr11.jpg);
}





@media only screen and (max-width: 768px) {
/*--- bnr grid ---*/


.bnrPic2Box , .bnrPic3Box , .bnrPic4Box {
	font-size: 1.2em;
	line-height:1.1em;
}

.bgcolorTopBnr span.englishName {
	font-size: 0.6em;
}

.bgcolorTopBnr span.machineSmallTxt {
	font-size: 0.8em;
}

.bnrPicInner {
	background-size:16px;
	background-position:right 15px bottom 15px;
}


}

@media only screen and (max-width: 600px) {

/*--- bnr grid ---*/


.bnrPic2Box , .bnrPic3Box , .bnrPic4Box {
    width: 100%;
    height: auto;
	float:none;
	font-size: 1.4em;
}

.bnrPicInner {
	background-size:10px;
	background-position:right 10px bottom 10px;
}

.bgcolorTopBnr span.englishName {
	font-size: 0.8em;
}

.bgcolorTopBnr span.machineSmallTxt {
	font-size: 1em;
}

.ratio-1_1:before {
    content: "";
    display: block;
    padding-top: 30%; /* 1:1 */
}

.ratio-2_1:before {
    content: "";
    display: block;
    padding-top: 30%; /* 2:1 */
}

.ratio-4_3:before {
    content: "";
    display: block;
    padding-top: 30%; /* 4:3 */
}

}






/*----------------------------
blog
-----------------------------*/


.box-sd {
    padding:2em 4em;
    background-color: #fff;
    border: 1px solid #049b9b;
    box-sizing: border-box;
}

.blog dt {
    float: left;
    padding-top: 15px;
    padding-bottom: 15px;
	font-weight:normal;
}
.blog dd {
    padding-top: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #CCCCCC;
    padding-left: 13em;
}
.blog dd a {
	color:#333;
}


@media only screen and (max-width: 768px) {
.blog dt {
    float: none;
    padding-top: 15px;
    padding-bottom: 5px;
}
.blog dd {
    padding-top: 5px;
    padding-bottom: 15px;
    border-bottom: 1px solid #CCCCCC;
    padding-left: 0em;
}
}

@media only screen and (max-width: 600px) {
.box-sd {
    padding:15px;
}

}



/*----------------------------
inquiry table 
-----------------------------*/

/*===========================
contact
===========================*/

.contactTel {
	font-family: 'Rounded Mplus 1c';
	font-size:3.3em;
	line-height:1.2em;
	margin-top:0.6em;
	text-align:center;
}

.contactTel a {
	text-decoration:none;
	display:block;
	color:#555;
}



.contact table {	
	width:100%;
	border-top: 1px #cdcdcd solid;
	border-left: 1px #cdcdcd solid;
	border-collapse: collapse;
	color:#444;
	margin-bottom:1.5em;
}
.contact table th {
	padding:0.5em 0.5em;
	border-bottom: 1px #cdcdcd solid;
	border-right: 1px #cdcdcd solid;
	letter-spacing:0;
	font-weight:normal;
	white-space: nowrap;
	text-align:center;
	vertical-align:middle;
	background-color:#f9f9f9;
}
.contact table td {
	padding:0.5em 0.5em;
	border-bottom: 1px #cdcdcd solid;
	border-right: 1px #cdcdcd solid;
	font-weight:normal;
	background-color:#FFFFFF;
	letter-spacing:0;
}
.contact table td .select {
	margin-bottom: 0.5em;
}
.contact table td .select li {
	float: left;
	margin-right: 20px;
}
.contact table td .select li input {
	vertical-align: middle;
}
.contact table td label {
	padding: 0 0 0px 5px;
}
.contact table input {
	margin: 2px 0 2px 0;
	height: 1.6em;
	border: 1px solid #CCC;
}
.contact .formBtn {
	width: 100%;
	text-align: center;
	margin-bottom: 30px;
}
.contact .btnSend {
	background-color:#999999;
	color: #FFF;
	padding: 8px 0;
	margin: 0 5px 0 5px;
	border: 0;
	width:160px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
}
.contact .btnReset {
	background-color: #FFF;
	color:#333;
	padding: 7px 0;
	margin: 0 5px 0 5px;
	border: 0;
	border:1px solid #cccccc;
	width:160px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
}
.contact .forml {
	width: 90%;
}
.contact .formm {
	width: 50%;
}


.contact .noborder {
	border:none;
}

.contact label {
}

.contact .checkBox {
	margin:2px 0 4px 0;
	vertical-align:middle;
}

/*  privacy */

.privacy h3 {
	font-size:1.3em;
	color:#444;
	border:none;
	padding:0.6em 0 0.2em 0;
	margin:0;
	background-image:none;
	font-family:  "メイリオ", Meiryo, Osaka,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
	text-align:left;
}

.privacy h3:after {
	content: none;
}

.privacy p {
	padding:0 0.3em 1em 0.3em;
}

@media screen and (max-width: 768px) {
	
.contactTel {
	font-size:2.8em;
	margin-top:0.4em;
}
	
/*  privacy */

.privacy h3 {
	font-size:1.2em;
}

.privacy p {
	padding:0 0.2em 1em 0.2em;
}


}

@media only screen and (max-width: 600px) {
	
.contactTel {
	font-size:2em;
	margin-top:0.4em;
}

.contact table {
 width: 100%;
 margin: 0 0 3% 0;
 padding: 10px;
 background-color:#FFF;
 border:1px solid #EBEBEB;
}
.contact table tr {
 display: block;
}
.contact table th {
 display: list-item;
 padding:1em;
 border: none;
 text-align: left;
 font-weight: normal;
 vertical-align: top;
 width:auto;
 line-height: 1em;
}
.contact table td {
 display: list-item;
 width:auto;
 border: none;
 font-weight: normal;
 padding:1em;
}
 .contact .forml {
 width: 100%
}
.contact .formm {
 width: 100%
}


.contact .btnSend {
	width:100px;
}
.contact .btnReset {
	width:100px;
}

}

/*///////////////////////////////////////////////
写真を隙間なく交互に配置
///////////////////////////////////////////////*/
.content_full {
	width: 100% !important;
	margin-left: auto;
	margin-right: auto;
	padding-left: 0;
	padding-right: 0;
}

.content_full h3 {/* 要調整 */
	font-size: 1.6em;
	line-height: 1.3em;
	text-align: center;
	margin-bottom: 2em;
	position: relative;
}
.content_full h3::after {/* 要調整 */
 position: absolute;
 bottom: -16px;
 left: 50%;
 z-index: 1;
 content: '';
 display: block;
 height: 3px;
 background: #dcdcdc;
 width: 120px;
 margin-left: -60px;
}
/* h3左寄せ */
.content_full h3.tx-left {/* 要調整 */
	text-align: left;
}
.flex_box {
	display: flex;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	-ms-justify-content : space-between;
}
.flex_box h3 {
	font-size:1.4em;
	text-align:left;
	color:#f67f21;
	font-family:  "メイリオ", Meiryo, Osaka,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
	margin-bottom:0.5em;
}

.txtCir {
	display:inline-block;
	color:#FFF;
	text-align:center;
	line-height:normal;
	padding:0.1em 1em 0.1em 1em;
	background-color:#029c80;
	margin-bottom:10px;
	border-radius: 5px;
	-webkit-border-radius: 5px; 
	-moz-border-radius: 5px;
	font-size:80%;
}


.flex_box h3:after {
	content: none;
}
.flex_box.row_reverse {
	flex-flow: row-reverse wrap;
}
.item {
	width: 50%;
	box-sizing: border-box;
	min-height: 20em;/* 要調整 */
}
.txt_area {
	background: rgba(255, 255, 255, 0.99);
	padding: 5% 0;
	display:flex;
	justify-content:center;
	align-items:center;
	text-align:center;
	box-sizing: border-box;
}

.plusWhite {
	background:#FFF !important;
}

.txt_box {
	width: 70%;
	margin: 0 auto;
	text-align:left;
}
.photo_area {
	background-position: 50% 50%;
	background-size: cover;
}
.photo01 {
	background-image:url(../img/template/001.jpg);
}
.photo02 {
	background-image:url(../img/template/001.jpg);
}
.photo03 {
	background-image:url(../img/template/001.jpg);
}

.photo04 {
	background-image:url(../img/template/001.jpg);
}

@media screen and (max-width: 768px) {

.content_full {
 width: 100%;
}

.flex_box h3 {
	font-size:1.2em;
}

.flex_box {
 flex-flow: column wrap;
}
.item {
 width: 100%;
 min-height: 12em;/* 要調整 */
}
.txt_area {
 padding: 30px 0;
}
.txt_box {
 width: 85%;
}
.photo_area {
 min-height: 30vh;
}

}

/* /写真を隙間なく交互に配置 */

/* 画像とテキストを交互に表示画像バージョン */


.contents-wrap {
	display: -webkit-box; /*Android4.3*/
	display: -moz-box;    /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display: flex;
	-webkit-box-pack: justify; /*Android4.3*/
	-moz-box-pack: justify;    /*Firefox21*/
	-ms-flex-pack: justify;    /*IE10*/
	-webkit-justify-content: space-between; /*PC-Safari,iOS8.4*/
	justify-content: space-between;
    background-color: rgba(252, 252, 252, 0.92);
}
.contents-wrap:nth-child(odd) {
	-ms-flex-direction:row-reverse; /*IE10*/
	-webkit-flex-direction:row-reverse; /*old webkit browser*/
	flex-direction:row-reverse;
}
.contents-text {
	width: 50%; /*flex: 2;*/
    /* flex: 2; */
    padding: 28px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    color: #333;
	z-index: 1;	
}
.contents-img {
	width: 50%; /*flex: 1;*/
}
.contents-text h3 {/* 要調整 */
	font-size: 1.2em;
	line-height: 1.3em;
	margin-bottom: 1em;
	text-align:left;
	text-shadow:none;
	position: relative;
  padding: 1.5em 0 0.2em 0;
	border-bottom:1px dotted rgba(64,64,64,.5);
  color: var(--basic-color);
}
.contents-text h3::after {/* 要調整 */
 content: none;
}

.contents-text h3::before {
    position: absolute;
    bottom: 0;
    left: 0.2em;
    z-index: -1;
    color: rgba(0,140,214,.2);/* 要調整 */
    font-size: 3em;
    line-height: 1;
    content: attr(data-number);
    pointer-events: none;
	transform: skewX(-12deg);
	font-family: 'Noto Serif JP', serif;
}
.contents-text-catch {
    margin: 0 auto 20px;
    text-align: center;
    display: inline-block;
    font-size: 1.5rem;
    line-height: 1.125em;
    font-family: 'Noto Sans Japanese';
    font-weight: 400;
    border-bottom: 4px solid #62c0b5;
    padding-bottom: 8px;
}
.contents-img img {
	display: block;
	width: auto;
	max-width: 100%;
	border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
}
.txtcatch {
	font-size:120%;
	font-weight:600;
	text-align:center;
}

@media screen and (max-width: 768px) {
.contents-wrap, .contents-wrap:nth-child(odd) {
	-ms-flex-direction:row-reverse; /*IE10*/
	-webkit-flex-direction:row-reverse; /*old webkit browser*/
	flex-direction: column-reverse;
	padding: 20px 0 0;
}
.contents-wrap:last-child{
	padding-bottom: 20px;	
}
.contents-text, .contents-img {
	width: 100%; /*flex: 1;*/
	margin-bottom:50px;
}
.contents-text{
	padding:0 20px;
	margin-bottom:20px;
}
.contents-text h3 {
	font-size: 1.15em;
}

}

@media screen and (max-width: 768px) {

.contents-text h3 {
	font-size: 1.1em;
}

}

/* --- 会社案内  ---  */

/* 他の写真隠し*/

.otherImg {
	display:none;
}

.workCap {
	background-color:#fafafa;
	padding:0.5em 0.8em;
	text-align:center;
	font-size:0.9em;
}




 /* contNews flexバージョン　*/
 
 .indexNews {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: stretch; /* アイテムを上揃えで配置します */
}

.newsLeft {
	width:20%;
}
 
 
.newsLeft h2 {
	/*font-family: 'Assistant', sans-serif; */
	font-family: 'Noto Serif JP', serif;
	color:#fff;
	text-shadow:none;
	font-size: 3.5em;
	line-height:1.2em;
	padding:0;
	margin:0;
	text-align:left;
	border:none;
	margin-bottom:20px;
	color:var(--basic-color);
}

.newsLeft h2:after {
	content:none;
}
 
.contNews {
	width:80%;
}
  
.contNews ul {
	max-height:460px;
	overflow: auto;
}
 
.contNews ul li {
	display: flex;
	justify-content: start;
	flex-wrap: wrap;
	/* align-items: center; */
	align-items: start;
	
    margin-bottom: 1em;
    padding-bottom: 1em;
	margin-right:20px;
    border-bottom: 1px dotted #CCCCCC;
}

.contNews ul li:first-child {	
    margin-top: 1em;
}

.contNews .thumbnail {
    display: inline-block;
	margin-right: 20px;

}
.contNews .date {
    margin-right: 20px;
    display: inline-block;
	vertical-align:top;	
    margin-right: 1.5em;

}
.contNews .wp_category {
	display:inline-block;
	color:#FFF;
	text-align:center;
	line-height:normal;
	font-size:0.8em;
	padding:0.2em 0.8em;
	margin-right: 1.5em;
	background-color:#af0e22; /* 色変え */
}
.contNews .title {
	display: inline-block;
}



@media only screen and (max-width: 768px) {
	
.newsLeft {
	width:100%;
}

.newsLeft h2 {
	display:inline-block;
	margin-right:0.5em;
}
	
.contNews {
	width:100%;
}
  


.contNews .thumbnail {
}

.contNews .data {

}
.contNews .title {

}


}

@media only screen and (max-width: 600px) {


.contNews ul li {
	display: block;
}

.contNews .thumbnail {
	display: block;
	margin-right: 0;
	margin-bottom:10px;
}

.contNews .data {
	display:inline-block;
}

.contNews .wp_category {
    margin-right: 0;
	display:inline-block;
	margin-bottom:10px;
}

.contNews .title {
	display: block;

}


}

/* feature3Box   */


.feature3Box {
	box-sizing: border-box;
	background: #FFF;
	border-radius: 1.5em;
	-webkit-border-radius: 1.5em;
	-moz-border-radius: 1.5em;
	padding:0 1.8em  1.8em  1.8em;	
}

.feature3Tit {
	box-sizing: border-box;
	background-color:var(--basic-color);
	border-radius: 0 0 1em 1em;
	-webkit-border-radius: 0 0 0.5em 0.5em;
	-moz-border-radius: 0 0 0.5em 0.5em;
	color:#fff;
	font-size:1.4em;
	text-align:center;
	width:80%;
	padding:0.6em 0.5em;
	margin:0 auto 1em;
	line-height:1.3em;
}

.feature3read {
	font-size:1.4em;
	text-align:center;
	margin-bottom:0.8em;
}


@media only screen and (max-width: 768px) {
	
.feature3Box {
	border-radius: 1.5m;
	-webkit-border-radius: 1.5m;
	-moz-border-radius: 1.5m;
	padding:0 1em 1em 1em;	
}

.feature3Tit {
	font-size:1.3em;
	text-align:center;
	width:90%;
	padding:0.6em 0.5em;
	margin:0 auto 1em;
	line-height:1.3em;
}

.feature3read {
	font-size:1.2em;
}

	


.bg_top {
	padding: 30px;
	background-color:#fdb337;
	color: #FFFFFF;	
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
	
}

/* 右フローティングバナー  */

ul.fixRightBnr {
	position: fixed;
	z-index: 777;
	top: 30vmin; 
	right: 0;
}

ul.fixRightBnr li {
	display:block;
}

ul.fixRightBnr li a {
	display:block;	
	background-color:var(--basic-color);
	opacity: .9;
	font-size:4.6vmin;
	box-sizing: border-box;
	width:100%;
	padding:1.8vmin 1.2vmin;
	/*
	padding:1.8vmin 1.8vmin;
	*/
	margin-bottom:0.6vmin;
	color:#fff;
	text-decoration:none;
	text-align:center;
}

ul.fixRightBnr li span {
	display:block;
	box-sizing: border-box;
	margin-top:10px;
	font-size:1.6vmin;
	line-height:1em;
}

ul.fixRightBnr li a:hover {
opacity: .7;
}

ul.fixRightBnr li.insta a {
	/* background-color:#CF2E92; */
	 background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
}

ul.fixRightBnr li.twitter a {
	background-color:#0f1419;
}

ul.fixRightBnr li.facebook a {
	background-color:#1877f2;
}

ul.fixRightBnr li.youtube a {
	background-color:#da1725;
}

ul.fixRightBnr li.line a {
	background-color:#00B900;
}

ul.fixRightBnr li.tictok a {
	background-color:#000;
}

ul.fixRightBnr li.ameba a {
	background-color:#298737;
}





@media screen and (max-width: 768px) {
	
ul.fixRightBnr {
	top: 14vmin; 
}
	
}

@media only screen and (max-width: 600px) {
	
ul.fixRightBnr {
	top: 45vmin; 
}

	
}
.liNoSh {
	text-shadow:none !important;
}