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

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

/* Noto Sans JP Noto Serif all Weight */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap');

/*===========================
fonts
===========================*/
/* Noto Sans JP all Weight 100- 900*/

.noto-sans-jp-100 {
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 100;
	font-style: normal;
}

.noto-sans-jp-900 {
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 900;
	font-style: normal;
}

/* UDデジタル教科書体　UDDigiKyokasho Pro R */

.noto-serif-jp-200 {
	font-family: "uddigikyokasho-pro", sans-serif;
	font-weight: 400;
	font-style: normal;
}

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

/* color:var(--basic-color); で利用 */
:root {
	--basic-color:#103f77;
}

/* color:var(--basic-color2); で利用 */
:root {
	--basic-color2:#2e75c3;
}

/* color:var(--basic-txt); で利用 */
:root {
	--basic-txt:#000;
}

/* color:var(--basic-txt2); で利用 */
:root {
	--basic-txt2:#fff;
}




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


body {
	font-size:clamp(14px, 1.2vmax, 18px);
	line-height: 1.8em;
	font-family: "Noto Sans JP", sans-serif, "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic";
	font-weight: 400;
	margin: 0;
	padding: 0;
	color:#000;
}

/* Safariclamp関数対応　*/
* {
    min-height: 0vw;
}


.wrapper {
	/* min-width:1000px; */
	max-width: 1300px;
	margin: 0 auto;
}

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

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

}

@media only screen and (max-width: 600px) {
	
body {
	font-size:clamp(16px, 4vw, 18px);
	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 {
	box-sizing: border-box;
    width: 100%;
	background-color:#1571da;
}

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


#headContent {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
	box-sizing: border-box;
	width:100%;
	padding:1.2vmax 0 0.6vmax 0;
}


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


#headContent .headRight {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
	margin-right:2%;
}

#headContent .ConTel {
	font-size:1em;
	line-height:1.2em;
}

#headContent .ConTel a {
	color:#fff;
}

#headContent .ConTel i {
	font-size:3em;
	margin-right:0.2em;
	color:#fbe103;
}

#headContent .ConTelNum {
	font-size:2em;
}

#headContent .fontawBnr a {
	display:block;
	background-color:#023b7d;
	color:#fff;
	
	box-sizing: border-box;
	width:auto;
	text-align:left;
	font-size:1.1em;
	font-weight:350;
	line-height:1.2em;
	padding: 0.4em 1em;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	
	margin:0 0 0 1vmax;
}

#headContent .fontawLine a {
	background-color:#00b900;
}

#headContent .fontawBnr a i {
	font-size:1.8em;
	margin-right:0.3em;
}

#headContent .fontawBnr 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;
}





@media screen and (max-width: 850px) {
	
#headWrap {
	position:fixed;
	z-index:200;
}

#headContent {
	/* flex-wrap: nowrap; */
	padding:0;
	height:90px;
}

#headContent .logoArea img {
	width:120px;
}

#headContent .headRight {
	margin-right:65px;
}

#headContent .ConTel {
	font-size:0.6em;
}

#headContent .fontawBnr a {
	font-size:0.7em;

}



}

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

#headContent .headRight {
	margin-right:45px;
}

#headContent .headRight {
	display:none;
}

}

/* ---fix--- スクリプトにより変更 */


.fixed {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 210;
}


@media screen and (min-width: 850px) {
.fixed #headContent {
	padding:0.8vmax 0 0.5vmax 0;
}

.fixed #headContent .logoArea img {
	width:50%;
}

.fixed #headContent .fontawBnr a {
	font-size:0.9em;
	padding:0.4em 0.5em;
}

.fixed #headContent .ConTel {
	font-size:0.8em;
}

.fixed .pcNaviWrap {
	padding:1vmax;
}


}


/* --- / fix--- */




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



.pcNaviWrap {
	position:relative;
	box-sizing: border-box;
	width:100%;
	padding:1.2em;
	background-color:#0e68cf;
}

.pcNaviWrap .inner {
	box-sizing: border-box;
	width:100%;
	margin: 0 auto;
}


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

.pcNavi ul {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	list-style-type: none;
}

.pcNavi li {
	display:inline-block;
	box-sizing: border-box;
	padding:0.1em 1.5vmax; /* 調整 */
	text-align:center;
	/* border-right:1px solid #ccc; */
	font-size:clamp(12px, 1.2vw, 16px); /* 調整 */
	line-height:1.2em;	
}

.pcNavi li a {
	display:block;

	color:#fff;

	
	height:100%;
}

.pcNavi li span {
	display:block;
	font-size:70%;
}

/*
.pcNavi li:last-child {
	border-right:none;
}
*/



.pcNavi 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: 1000px) {
	

.pcNavi li.liIndex {
	display:none;
}

.pcNavi li {
	padding:0.1em 1.2vmax; /* 調整 */
	text-align:center;
	font-size:clamp(12px, 1.2vw, 16px); /* 調整 */
}

}

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

.pcNavi li.liIndex {
	display:block;
}

}

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

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

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


.pcNavi ul li.has-child {
	padding-left:2vmax;
}

/*==矢印の設定*/

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


.pcNavi ul li.has-child::before{
	content:'';
	position: absolute;
	left:0.8vw; /* 調整 */
	top:0.5vw; /* 調整 */
	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:2.6vmax;
	z-index: 300;
    /*形状を指定*/
	background: var(--basic-color);
	width:24em;
    /*はじめは非表示*/
	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 {
	box-sizing: border-box;
	padding:0;
	line-height:1.2em;
	text-align:center;
	width:100%;
	font-size:90%;
	border-bottom:none;
	border-left:none;
	border-right:none;
}

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

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

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




/*==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: 850px) { /* 基本は768px */
	

.pcNaviWrap {
	background:none;
	padding:0;
}
	

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


/*ナビのスタイル*/
nav.NavMenu {
	position: fixed;
	z-index: 500;
	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 {
	box-sizing: border-box;
	font-size: 1em;
	width: 100%;
	height:auto;
	line-height:1.2em;
	border-bottom:#dadada 1px solid;
	border-left:none;
	background-color:var(--basic-color);


}

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

.pcNavi li a {
	box-sizing: border-box;
	display:block;
	padding:20px 10px;

}
.pcNavi li.liContact  {
	background-color:#DFAD15;
	color:#fff;
}


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



.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::before{
	left:30px;	
	top:25px;
}

.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: 24px;
	height: 24px;
	cursor: pointer;
	z-index: 510;
	display: block;
	margin:0;
}

.Toggle span {
	display: block;
	position: absolute;
	width: 24px;
	border-bottom: solid 2px #fff;
	-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 #333;
}
.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 #333;
}

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

}

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

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



}




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

#mainVisualWrap {

}

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

#mainVisual img {
	width:100%;
}



#mainVisual .mainCatch {
	position: absolute;
	line-height:1.2em;
	margin-top: -28vmax;
	font-size:1.9vw;
	left:32%;
	letter-spacing:0.2vw;
	font-weight:600;
	text-align:center;
	color: #fff;
}

#mainVisual .mainCatch .main01 {
	font-size:3.1vw;
	margin-bottom:2.8vmax;
	color:#fbec04;
}
/*
#mainVisual .mainCatch .catchEng {
	font-size:43%;
	line-height:1.2em;
	padding-left:0.5em;
	font-weight:normal;
}
*/

.lineH{
	line-height:1.6em;
}




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

#mainVisual .mainCatch {
	margin-top: -30%;
}

}

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

#mainVisual .mainCatch {
	margin-top: -130%;
	font-size:5vw;
	left:8%;
	letter-spacing:0.2vw;
	font-weight:450;
	text-align:center;
	color: #fff;
}

#mainVisual .mainCatch .main01 {
	font-size:1.6em;
	line-height:1.2em;
	margin-bottom:3vmax;
}
/*
#mainVisual .mainCatch .catchEng {
	font-size:43%;
	line-height:1.2em;
	padding-left:0.5em;
	font-weight:normal;
}
*/

.lineH{
	line-height:1.6em;
}




}




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

#pageTitleMover {
}

#pageTitle {
	background-position:center;
	background-size:cover;
	height:20vmax;
	max-height:320px;
	box-sizing: border-box;
	display:flex;
	justify-content:center;
	align-items:center;
	text-align:center;
	border-top:5px solid #3a80cc;
	background-image:url(../img/common/page_tit.jpg);
}




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

#pageTitle h1 {
	font-size:clamp(1em, 3.3vw, 2.8em);
	letter-spacing:0.3vw;
	line-height:1.2em;
	font-weight:500;
	box-sizing: border-box;
	padding:0.5vw;
	color:#fff;
	/* text-shadow: 0 0 1px #333,0 0 2px #333, 0 0 4px #333, 0 0 6px #333, 0 0 8px #333,0 0 10px #333; */
}

/*
#pageTitle h1 span {
	display:block;
	font-size: 32%;
	font-weight:400;
	letter-spacing:0.1vw;
	line-height:1.2em;
}
*/



.tit_promise {
	background-image:url(../img/promise/page_tit.jpg);
}

.tit_contact {
	background-image:url(../img/contact/page_tit.jpg);
}









@media screen and (max-width: 850px) {
	
#pageTitleMover {
	padding-top:90px;
}
	
#pageTitle {
	height:22vmax;
}
	
#pageTitle h1 {
	font-size: 3.8vmax;
}
	
}

@media screen and (max-width: 600px) {
	
#pageTitleMover {
}
	
#pageTitle {
	height:24vmax;
}
	
#pageTitle h1 {
	font-size: 4vmax;
	line-height:1.6em;
}

.tit_aboutus h1 {
	font-size: 6vw !important;
	line-height:1.2em!important;
}
	
}




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

/* コンテンツ画像は全部角丸 */
.mainContent img {
	border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
	box-shadow: 2px 2px 8px 0px rgba(0,0,0,0.3);
}

.imgBorder img {
	border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
	border: 1px solid #dcdcdc;
}


/* コンテンツ画像角丸解除 */
.mainContent .imgRadReset img {
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
	box-shadow:none;
}
.imgRound img {
	box-shadow: 15px 15px 0px -4px #ededed;
	border-radius: 1000px;
}


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

h2 {
	box-sizing: border-box;
	font-size: 2.6em;
	font-weight:400;
	line-height:1.2em;
	text-align:center;
	position: relative;
	padding-bottom:0.6em;
	margin-bottom: 1.5em;
	text-align: center;
	background-image:url(../img/common/h2_back.png);
	background-repeat:no-repeat;
	background-position:bottom center;
}

h2.h2noBack {
	padding-bottom:0;
	margin-bottom: 1.2em;
	text-align: center;
	background-image:none;
}




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

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


	
}



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;
}

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

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

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


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;
}


.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 0.3em 1.5em;
	margin:0;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	background-color:#669632;
	color:#FFF;
}

.txtBnrInd {
	display:inline-block;
}

.txtBnrInd a {
	display:inline-block;
	text-decoration:none;
	line-height:normal;
	padding:0.4em 3.5em 0.6em 4em;
	margin:0;
	border-radius: 100em;
	-webkit-border-radius: 100em;
	-moz-border-radius: 100em;
	background-color:#fac200;
	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:#2899d4;
	color:#FFF;
}

.txtBnrBlock a {
	display:block;
	text-decoration:none;
	line-height:normal;
	padding:0.2em 1.5em 0.3em 1.5em;
	margin:0;
	border-radius: 3em;
	-webkit-border-radius: 3em;
	-moz-border-radius: 3em;
	background:#2899d4;
	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:#2899d4;
	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;
}



.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 , .txtBnrInd 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;
}

.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;
}

.txtFFFshadow {
	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;
}


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

.txtFFFshadow {
	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;
}


}

/* font color */

.fcBasic {
	color:var(--basic-color) !important; 
}

.fcBasic2 {
	color:var(--basic-color2) !important; 
}

.fcRed {
	color:#eb3724 !important;
}


.fcRedOrange {
	color:#e4450d !important;
}

.fcBlue {
	color:#2a5ccb !important;
}

.fcKaitori {
	color:#2e75c3 !important;
}

.fcOrange {
	color:#f67f21 !important;
}

.fcOrange2 {
	color:#fd9c4f !important;
}

.fcYellow {
	color:#F3AB25 !important;
}

.fcGofutan {
	color:#e1950a !important;
}

.fcYG {
	color:#A7B82C !important;
}

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

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

.fcLine {
	color:#00b900 !important;
}





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

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

.fcRedP {
	color:#AF41B8 !important;
}

.fcWineR {
	color:#C62B71 !important;
}

.fc333 {
	color:#333 !important;
}

.fcFFF {
	color:#fff !important;
}

/* マージン */

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

.mgb3em {
	margin-bottom:3em !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;
}

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

.mgbS {
	margin-bottom:10px !important;
}
.mgbM {
	margin-bottom:40px !important;
}
.mgbL {
	margin-bottom:70px !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;
}

@media screen and (max-width: 768px) {
.fsM {
	font-size:118% !important;
	line-height:1.7em !important;
}
}

@media screen and (max-width: 600px) {
	.fsM {
	font-size:110% !important;
	line-height:1.6em !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-emGold {
	background: linear-gradient(transparent 62%, rgba(239, 207, 96, 0.8) 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;
}

.pcOFFtabletON {
	display:block;
}

.pcONtabletOFFspON {
	display:none;
}

.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
===========================*/

/* 背景パターン */

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

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

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

.bgDotCross {
	padding:4vw 2vw;
	background-color:#fff;
	background-image:url(../img/common/bg_dotcross.png);
	background-repeat:no-repeat;
	background-position:bottom right;
}

.bgColor {
	padding:4vw 2vw;
	 background-color:#f8f9fa;
}

.bgColor2 {
	padding:4vw 0;
	 background-color:#f8f9fa;
}

.bgDot {
	padding:4vw 2vw;
	background-image:url(../img/common/bg-blue-dot.png);
	background-repeat:repeat;
}

.bgDotGray {
	padding:4vw 2vw;
	background-image:url(../img/common/bg-gray-dot.png);
	background-repeat:repeat;
}



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

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

.bgStripe {
	padding:4vw 2vw;
	background-image:url(../img/company/bg_company.png);
	background-position:center;
	background-repeat:repeat;
}







	



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

.bgWhite2 {
	padding:50px 0;
}


}




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

footer {
	box-sizing: border-box;
	background-color:#fff;
	text-align:center;
	color:#fff;
	padding-top:20px;
}

.footLogo {
	margin:0 auto -60px auto;
}

.footerDark {
	background-image:url(../img/footer/back.jpg);
	background-repeat:no-repeat;
	background-position:top center;
	background-size:cover;
	padding:80px 1em 0;
	margin:0;
}


/* フッターコンタクトエリア　*/


.footConArea {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	align-items: center;
	margin-bottom:1em;
}

.footConArea a {
	text-decoration: none;
	color:#fff;
}

.footPrivay {
	margin:0 12px 10px;
}
.footConTel {
	font-size:1em;
	line-height:1.2em;
	text-align:left;
	
	margin:0 12px 10px;
}

.footConTel i {
	font-size:3em;
	margin-right:0.2em;
	color:var(--basic-color2);
}

.footConTelNum {
	font-size:2em;
}

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

.footConArea .fontawBnr a {
	display:block;
	background-color:var(--basic-color2);
	color:#fff;
	
	box-sizing: border-box;
	width:auto;
	text-align:left;
	font-size:1.1em;
	font-weight:350;
	line-height:1.2em;
	padding: 0.4em 1em;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	
	margin:0 5px;
}

.fontawBnrArea .fontawLine a {
	background-color:#00b900;
}

.footConArea .fontawBnr a i {
	font-size:1.8em;
	margin-right:0.3em;
}

.fontawBnrArea a:hover , .footSNSArea a:hover , .bnr_ismind 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;
	
}

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

.footSNS {
	text-align:center;
	margin:0 5px;
}

.footSNS img {
	width:60px;
}

.txtBnrFoot {
	display:inline-block;
}

.txtBnrFoot a {
	box-sizing: border-box;
	display:inline-block;
	text-decoration:none;
	line-height:normal;
	padding:0.2em 2em 0.3em 1em;
	margin:0 auto 0.8em auto;
	border:2px solid #fff;
	text-align:center;
	background: rgba(255,255,255,.1);
	font-size:clamp(1.1em, 1.5vw, 1.25em);
	color:#FFF;
	
	cursor: pointer;
	position: relative;
 	overflow: hidden;
 	z-index: 1;
}

.txtBnrFoot a::before {
	content: "";
	box-sizing: border-box;
	position: absolute;
	left: -1px;
	top: 0;
	width: 101%;
	height: 100%;
	background: rgba(255,255,255,.95);
	transform: translateX(-100%);
	transition: all .3s;
	z-index: -1;
}
.txtBnrFoot a:hover::before {
	transform: translateX(0);
}
.txtBnrFoot a:hover {
	color: var(--basic-color);
	border:2px solid var(--basic-color);
}

.txtBnrFoot i {
	padding-left:1.2em;
}

.bnr_ismind {
	display:inline-block;
}


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



.footConArea .fontawBnr {	
	width:13em;
}
	
}




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

.footConArea {
	margin-bottom:1em;
}

.footConArea .fontawBnr {	
	width:12em;
	margin:0 auto 10px auto;
}

.txtBnrFoot a {
	margin:0 auto 10px auto;
}

.bnr_ismind {
	margin-bottom:10px;
}
	
	
}

/* フッターナビ　*/

.footerNaviWrap {
	display:inline-block;
	margin:0;
	width:100%;
	box-sizing: border-box;
}

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

.footNavi 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;
}

.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 0.8vw;
	font-size:0.9em;
	line-height:1.8em;
}

.footNavi li a {
	display:inline-block;
	color:#fff;
	text-decoration:none;
}


@media screen and (max-width: 900px) {
	
.footNavi li {
	font-size:0.8em;
}

}

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

.footerNaviWrap {
	display:block;
	padding:0 1em;
}

.footNavi {
	padding:1em 0;
}

}


@media screen and (max-width: 600px) {
	
.footerNaviWrap {
	padding:0 5px;
	background: rgba(255,255,255,.1);
}

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

}

/* フッタースマホ時固定バナー */ 

@media only screen and (min-width: 601px) {
	
.footFix {
 display: none !important;
}

}

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


.footFix {
	position:relative;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	
	box-sizing: border-box;
	position: fixed;
	bottom: 0;
	width: 100%;
	
	z-index:80;
}



.footFix li {
	box-sizing: border-box;
	width:50%;
	
	border-right:1px solid rgba(250,250,250,.9);
}

.footFix li:last-child {	
	border-right:none;
}

.footFix li a {
	display:block;
	box-sizing: border-box;
	width:100%;
	height:4em;
	padding:0.5em;
	text-align:center;
	box-sizing: border-box;
	background:#F58223;
	color:#fff;
	font-size:0.8em;
	line-height:1.2em;
	text-decoration:none;
}

.footFix li a i {
	font-size:1.8em;
}

.footFix li.footFixMail a {
	background:#F4B317;
}

.footFix li.footFixLine a {
	background:#00b900;
}




}


/* コピー　*/

.copyright {
	padding:2em;
	font-size:0.8em;
	line-height:1.2em;
	color:#cccccc;
}

@media only screen and (max-width: 600px) {
	
	.copyright {	
	margin-bottom:4em; /* footFixの高さに依存 */
}

}






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


/* pagetop */

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

#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;
}

#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;
}

#r_eng {
	position: fixed;
	bottom: 140px;
	right: 10px;
	z-index:700;
}

#r_eng 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;
}

#r_eng 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;
}

#r_line {
	position: fixed;
	bottom: 140px;
	right: 10px;
	z-index:700;
}

#r_line 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;
}

#r_line 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;
}

@media only screen and (max-width: 600px) {
	
#pagetop {
	bottom: 3.6em;
	right: 5px;
}

#pagetop img {
	width:50px;
}

#r_eng {
	bottom: 6.8em;
	right: 5px;
}

#r_eng img {
	width:50px;
}
	

#r_line {
	bottom: 115px;
	right: 5px;
}

#r_line img {
	width:50px;
}
	
}

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

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

.txtIcon {
	display:inline-block;
	color:#FFF;
	text-align:center;
	line-height:normal;
	padding:0.1em 2em 0.2em 2em;
	background-color:var(--basic-color);
	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.3em 2.5em;
	background-color:var(--basic-color2);
	margin:0 0 0.4em 0;
	border-radius: 5px;
	-webkit-border-radius: 5px; 
	-moz-border-radius: 5px;
}


.txtItem {
	display:block;
	color:#FFF;
	text-align:center;
	line-height:normal;
	padding:0.4em 1em 0.6em 1em;
	background-color:var(--basic-color2);
	margin:0 0 5px 0;
	border-radius: 100em;
	-webkit-border-radius: 100em;
	-moz-border-radius: 100em;
	font-size:1.6em;
}

.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 0.3em 1em;
	background-color:var(--basic-color2);
	margin:0 0 0.4em 0;
	border-radius: 5px;
	-webkit-border-radius: 5px; 
	-moz-border-radius: 5px;
}

.txtIconM_blue {
	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 0.3em 1em;
	background-color:#31548E;
	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.1em;
	padding:0.2em 1.2em 0.3em 1.2em;
	background-color:#E9B93D;
	border-radius: 1.1em;
	-webkit-border-radius: 1.1em; 
	-moz-border-radius: 1.1em;
	margin-bottom:5px;
}

.txtCap {
	display:inline-block;
	color:#FFF;
	text-align:center;
	line-height:normal;
	padding:0.05em 2em 0.1em 2em;
	background-color:#2899d4;
	border-radius: 10em;
	-webkit-border-radius: 10em;
	-moz-border-radius: 10em;
}

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

.txtItem {
	padding:0.2em 0.5em 0.4em 0.5em;
	font-size:1.2em;
}

}

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

.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:2.1em;
	margin-bottom:0.5em;
	line-height:1.6em;
	color:#fa8d00;
}

.catch3 {
	font-size:1.6em;
	margin-bottom:0.5em;
	line-height:1.4em;
	color:#f5a700;
	font-weight:400;
}

.catch4 {
	font-size:clamp(1.2em, 1.8vw, 1.46em);
	margin-bottom:0.5em;
	line-height:1.4em;
	color:#f5a700;
	font-weight:400;
}

.catch5 {
	font-size:clamp(1.2em, 1.4vw, 1.46em);
	margin-bottom:0.5em;
	line-height:1.4em;
	color:#F4A31A;
	font-weight:400;
}

.catchTOP {
	display:inline-block;
	box-sizing: border-box;
	font-size:clamp(1.2em, 1.8vw, 1.46em);
	padding:0.1em 0;
	margin-bottom:0.5em;
	line-height:1.6em;
	color:#2e75c3;
	border-bottom:#fbec04 solid 6px;
	font-weight:400;
}

.spanTOP {
	color:#064894;
	font-size:1.2em;
	font-weight:500;
}

.spanSate {
	color:#67b501;
	font-size:1.2em;
	font-weight:500;
}



@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;
}

.hoverTransEx 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);
		
	border-radius:100%;
}


.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;
	border:#ececec 1px solid;
	border-radius: 15px;
	-webkit-border-radius:1 5px;
	-moz-border-radius: 15px;
	background: rgba(250,250,250,.90);
}




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


.contPad {
	padding:0 10px;
}

.contPad95p {
	width:95%;
	margin:0 auto;
}

.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;
}

.contPad20p {
	width:20%;
	margin:0 auto;
}

.PC100pSP80p {
}

.PC100pSP70p {
}

.PC100pSP50p {
}

.PC100pSP40p {
}

.PC100pSP30p {
}

.PC100pSP20p {
}






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

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

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

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

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

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

.PC100pSP20p {
	width:20%;
	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-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-USU {
	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-item1-3-ts2 {
	box-sizing: border-box;
	width: 31%;
	margin-bottom:30px;
}

.f-item1-3-s2 {
	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-item1-4-t2USU {
	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-itemSDGs {
	box-sizing: border-box;
	width: 16%;
	margin-bottom:20px;
	text-align:center;
}



.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;
	/*border-radius:10px;
	box-shadow: 0px 0px 10px #ccc;*/
	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;
}
/* 画像の上にテキストを重ねる */


.waterMright {
	box-sizing: border-box;
	/* 背景白 */
	background: rgba(253,253,253,.9);
	z-index:2;
	padding:2em;
	margin-left:-15%;	
	box-shadow: 0px 0px 10px #ccc;
	border-radius:10px;
	/* 背景黒 
	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;
}

.waterMleft {
	box-sizing: border-box;
	/* 背景白 */
	background: rgba(253,253,253,.8);
	z-index:2;
	padding:2em;
	margin-right:-15%;	
	box-shadow: 0px 0px 10px #ccc;
	border-radius:10px;
	/* 背景黒 
	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;
}

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

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

.waterMrightFeat {

	background: rgba(253,253,253,.9);
	z-index:10;
	padding:3em;
	margin-left:-15%;	

	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: 5px;
	-webkit-border-radius: 5px; 
	-moz-border-radius:5px;
}

.waterMleftFeat {
	background: rgba(253,253,253,.9);
	z-index:10;
	padding:3em;
	margin-right:-15%;
	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: 5px;
	-webkit-border-radius: 5px; 
	-moz-border-radius:5px;
}

.waterFeatTxt {
	writing-mode: vertical-lr;
	color:#999;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 600;
	margin-bottom:2em;
	font-size:0.9em;
}



.waterTit {
	font-size:1.8em;
	line-height:1.2em;
	margin-bottom:0.8em;
	
	padding-left:1.5em;  
	text-indent:-0.75em; 
}

.waterTitMark {
	font-size:90%;
	color:var(--basic-color);
	display:inline-block;
	padding-right:0.4em;
	
	vertical-align: top;
	position: relative;
	top: 0.3em;
}



.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-3-ts2 , .f-item1-4-t2 , .f-item1-4-t2USU , .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%;
}

.f-itemSDGs {
}

.waterTit {
	font-size:1.4em;
	line-height:1.2em;
	margin-bottom:0.8em;
}

.waterTitMark {
	color:var(--basic-color);
	display:inline-block;
	padding-right:0.4em;
	
	vertical-align: top;
	position: relative;
	top: 0.2em;
}


}

@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;
}

.f-item1-3-s2 {
	width: 49%;
}

.f-itemSDGs {
	width: 31%;
	margin-bottom:12px;
}

.backWaterM {
	padding:1.5em 1em;
}

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

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

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

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

.waterFeatTxt {
	writing-mode:horizontal-tb;
	margin-bottom:0.8em;
}

.waterTit {
	font-size:1.2em;
	line-height:1.2em;
	margin-bottom:0.8em;
}

.spOrder1 {
	order:1;
}

.spOrder2 {
	order:2;
}

.spOrder3 {
	order:3;
}

.spOrder4 {
	order:4;
}

.spOrder5 {
	order:5;
}

.spOrder6 {
	order:6;
}


}


/* 重ねレイアウト */ 

.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;
}

}




/*circle-number*/

.circle-big-rel {
	position:relative;
	box-sizing: border-box;
	background-color:#fff;
	border:1px solid #F0F0F0;
	border-radius: 1em;
	-webkit-border-radius: 1em;
	-moz-border-radius:1em;
	padding:1em 1.5em;
	margin-bottom:4em;
}

.circle-big {
	padding-top: 3rem;
	font-size:1.4em;
	text-align:center;

}

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

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

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

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

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

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

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

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

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

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



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

.circle-big::before {
	width: 3rem;
	height: 3rem;
	margin-left: -1.5rem;
	top:-0.6em;
	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;
}

}


@media only screen and (max-width: 600px) {
	
.circle-big {
	padding-top: 2rem;
	text-align:left;
	font-size:1.2em;
}

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

}
/* 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;
}

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

.boxShadow {
	box-sizing: border-box;
	background: #fff;
	padding:2em;
	box-shadow: 3px 3px 8px 1px #CCC;
	border-radius:10px;
}

.boxWhite {
	background-color:#fff;
	padding:3vmax;
}

.boxWhite2 {
	background: rgba(255,255,255,.7);
	padding:3vmax;
}

.boxKongetu {
	box-sizing: border-box;
	background-color:rgba(46,117,195,.03);
	border:2px solid rgba(46,117,195,.1);
	padding:2em;
	border-radius: 10px;
	-webkit-border-radius: 10px; 
	-moz-border-radius:10px;
}

.boxGray {
	background-color:#E7E7E7;
	padding:10px;
	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 #F7D688;
	border-radius: 10px;
	-webkit-border-radius: 10px; 
	-moz-border-radius:10px;
	margin-bottom:40px;
	background: rgba(255,255,255,.8);
}

.boxFplusBlue {
	border:3px solid var(--basic-color);
}

.boxFplusOra {
	border:3px solid var(--basic-color2);
}

.boxFplusNavy {
	border:3px solid #303763;
}


.boxGenre {
	padding:4em 2em 2em 2em;
	border:5px solid #2e75c3;
	border-radius: 10px;
	-webkit-border-radius: 10px; 
	-moz-border-radius:10px;
	margin-bottom:40px;
	background: rgba(255,255,255,.7);
}

.boxGenre2 {
	padding:4em 2em 2em 2em;
	border:5px solid #2e75c3;
	border-radius: 10px;
	-webkit-border-radius: 10px; 
	-moz-border-radius:10px;
	margin-bottom:40px;
	background: rgba(255,255,255,.7);
}

.boxGenreTit {
	box-sizing: border-box;
	position:relative;
	z-index:1;

	display:block;
	width:30%;
	min-width:10em;
	color:#FFF;
	text-align:center;
	line-height:normal;
	padding:0.3em 1em 0.4em 1em;
	background-color:#2e75c3;
	margin:0 auto -1.1em auto;
	font-size:1.6em;
}



.boxGenreTit:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: -2vmax;
    right: -2vmax;
    z-index: -1;
    background-color:#2e75c3;
    transform: skewX(-30deg);
}


.boxGenreTit2 {
	position:relative;
	z-index:1;
	box-sizing: border-box;
	display:block;
	width:70%;
	color:#FFF;
	text-align:center;
	line-height:normal;
	padding:0.3em 1em 0.4em 1em;
	background-color:#2e75c3;
	margin:0 auto -1.1em auto;
	border-radius: 100em;
	-webkit-border-radius: 100em;
	-moz-border-radius: 100em;
	font-size:1.6em;
}

.boxRedcup {
	padding:2em;
	border:7px solid #e1950a;
	margin-bottom:40px;
	background: rgba(255,255,255,.8);
	font-size:1.2em;
	border-radius: 10px;
	-webkit-border-radius: 10px; 
	-moz-border-radius:10px;
}

.boxRead {
	padding:2em;
	border:7px solid #78A640;
	margin-bottom:40px;
	background: rgba(255,255,255,.8);
	font-size:1.2em;
	border-radius: 10px;
	-webkit-border-radius: 10px; 
	-moz-border-radius:10px;
}

.boxReadBlue {
	padding:2em;
	border:7px solid var(--basic-color);
	margin-bottom:40px;
	background: rgba(255,255,255,.8);
	font-size:1.2em;
	border-radius: 10px;
	-webkit-border-radius: 10px; 
	-moz-border-radius:10px;
}


.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;
}

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

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



.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;
}

.boxFuki-down {
	position: relative;
	display: block;
	padding:1em;
	font-size:1.1em;
	box-sizing: border-box;
	background:#f3ae09;
	color: #fff;
	text-shadow:none;
	font-weight:500;
	border-radius: 10px;
	-webkit-border-radius: 10px; 
	-moz-border-radius:10px;
	margin-bottom:1.5vmax;
	
}

.boxFuki-down:before {
   position: absolute;
    top: 100%;
    left: 2vmax;
    height: 0;
    width: 0;
    border-style: solid;
    border-color: transparent;
    border-top-color: #f3ae09;;
    border-width: 1vmax;
    content: "";
}

.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) {
	
.boxSimple3 {
	padding:1.5em 10px;
}

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

.boxShadow {
	padding: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;
}

.boxGenre2 {
	padding:2em 1em 1em 1em;
	border:4px solid #2e75c3;
}


.boxGenreTit {
	width:70%;
	min-width:1em;
	padding:0.2em 0.5em 0.3em 0.5em;
	margin:0 auto -1.1em auto;
	font-size:1.3em;
}

.boxGenreTit2 {
	width:95%;
	padding:0.2em 0.2em 0.3em 0.2em;
	margin:0 auto -1.1em auto;
	font-size:1.2em;
}

.boxRedcup {
	padding:1em;
	border:5px solid #e1950a;
	font-size:1.1em;
}

.boxRead {
	padding:1em;
	border:4px solid #78A640;
	font-size:1.1em;
}

.boxReadBlue {
	padding:1em;
	border:4px solid var(--basic-color);
	font-size:1.1em;
}



}



/* 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;
}

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

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

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


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

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


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

table.tableHead td {
	padding:0.1em 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 */

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:1em 0.5em;
	border-bottom: 1px #cdcdcd solid;
	border-right: 1px #cdcdcd solid;
	letter-spacing:0;
	font-weight:normal;
	vertical-align:middle;
	background-color:var(--basic-color);
	color:#fff;
}

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

.tdColor {
	background-color:#E2EEFA !important;
	text-align:center;
	vertical-align:middle !important;
	font-weight:600 !important;
	font-size:1.2em !important;
}

.tdPrice {
	text-align:center;
	vertical-align:middle !important;
	font-weight:600 !important;
	font-size:1.4em !important;
	color:#eb3724;
}

/* 普通のtable ブロックバージョン */

table.tableBlock {
	box-sizing: border-box;
	width:100%;
	border-collapse: collapse;
	font-size:1.4em;
}
table.tableBlock th {
	box-sizing: border-box;
	padding:0.5em 0.4em;
	border-right:4px rgba(255,255,255,1) solid;
	border-bottom:4px rgba(255,255,255,1) solid;
	letter-spacing:0;
	font-weight:normal;
	vertical-align:middle;
	background-color:#1393cd;
	color:#fff;
}

table.tableBlock .tbNumber {
	font-size:120%;
}

table.tableBlock .tbSmall {
	font-size:60%;
	line-height:1.2em;
}

table.tableBlock td {
	box-sizing: border-box;
	padding:0.5em 0.4em;
	border-right:5px rgba(255,255,255,1) solid;
	border-bottom:5px rgba(255,255,255,1) solid;
	font-weight:normal;
	letter-spacing:0;
	background: rgba(245,245,245,.9);
	text-align:center;
	vertical-align:middle;
}

table.tableBlock th:last-child  , table.tableBlock td:last-child  {
	border-right:none;
}

table.tableBlock tr:last-child th  , table.tableBlock tr:last-child td  {
	border-bottom:none;
}

th.th_wa {
	box-sizing: border-box;
	width:11.1%;
}


/* 普通の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:var(--basic-color);
	color:#fff;
}

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 {
	box-sizing: border-box;
	width:100%;
	border-spacing: 10px 0;
	margin-bottom:1.5em;
}
table.table3Dot th {
	box-sizing: border-box;
	padding:0.5em;
	border-bottom: 2px dotted rgba(128,128,128,.5);
	letter-spacing:0;
	font-weight:normal;
	white-space: nowrap;
	text-align:left;
	vertical-align:middle;
	border-spacing: 10px;
	color:#263E73;
}

table.table3Dot tr:first-child th , table.table3Dot tr:first-child td {
	border-top: 2px dotted rgba(128,128,128,.5);
}

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

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

/* 縦に並ぶtable線ver */

table.table3Line {	
	width:100%;
	border-top: 1px solid rgba(128,128,128,.4);
	border-collapse: collapse;
	margin-bottom:1.5em;
	box-sizing: border-box;
}
table.table3Line th {
	padding:0.6em;
	border-bottom: 1px solid rgba(128,128,128,.4);
	letter-spacing:0;
	font-weight:normal;
	white-space: nowrap;
	text-align:left;
	vertical-align:middle;
}

table.table3Line td {
	padding:0.6em;
	border-bottom:1px solid rgba(128,128,128,.4);
	font-weight:normal;
	letter-spacing:0;
}


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

/* 普通のtable ブロックバージョン */

table.tableBlock {
	font-size:1.1em;
}
table.tableBlock th {
	padding:0.5em 0.1em;
}

table.tableBlock .tbnumber {
	font-size:110%;
	font-weight:bold;
	line-height:1em;
}

table.tableBlock .tbSmall {
	font-size:60%;
	line-height:1em;
}


table.tableBlock td {
	padding:0.5em 0.1em;
}

}


@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.table3Dot tr:first-child th , table.table3Dot tr:first-child td {
	border-top:none;
}
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-collapse: collapse;
	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;
}

/* 縦に並ぶtable線ver */

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


table.table3Line td {
	display: list-item;
	width:auto;
	border-bottom: 2px #ccc solid;
	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;
}


}

/*　new flow */

.flow_designArrow {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom:1em;
}

.flowArrow {
  padding-left: 0;
}

.flowArrow > div {
  list-style-type: none;
  display: flex;
}

.flowArrow > div:not(:last-child) {
  margin: 0 0 50px;
}

.flowArrow > div .iconArrow {
	width: 90px;
	box-sizing: border-box;
	padding: 20px 10px 10px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	color: #FFF;
	text-align: center;
	background: var(--basic-color);
	border-radius: 5px 5px 0 0;
	position: relative;
	line-height: 125%;
	margin: 0;
}
.flowArrow > div .iconArrow::after {
  content: ' ';
  width: 0;
  height: 0;
  border-left: 45px solid transparent;
  border-right: 45px solid transparent;
  border-top: 20px solid var(--basic-color);
  position: absolute;
  bottom: -20px;
  left: 0;
}

.flowArrow > div:last-child .iconArrow::after {
  content:none;
}

.flowArrow > div:last-child .iconArrow {
	border-radius: 5px;
}



.flowArrow > div dl {
  padding: 0 0 0 30px;
  width: calc(100% - 115px);
}

.flowArrow > div dl dt {
	padding: 0 0 5px;
	margin: 0 0 15px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	font-size: 1.2em;
	border-bottom: 4px solid #CCCCCC;
	position: relative;
}
.flowArrow > div dl dt::after {
  content: '';
  width: 20%;
  height: 4px;
  position: absolute;
  bottom: -4px;
  left: 0;
  background-color: #f3db12;
}

.flowArrow > div dl dd {
  margin: 0;
}

@media screen and (max-width: 600px){
	
.flowArrow > div:not(:last-child) {
  margin: 0 0 30px;
}

.flowArrow > div .iconArrow {
	width: 60px;
	padding: 20px 5px 5px;
	font-size:0.8em;
}
.flowArrow > div .iconArrow::after {
  border-left: 30px solid transparent;
  border-right: 30px solid transparent;
  border-top: 15px solid var(--basic-color);
  bottom: -15px;
}


.flowArrow > div dl {
  padding: 0 0 0 10px;
  width: calc(100% - 80px);
}

.flowArrow > div dl dt {
	padding: 0 0 5px;
	margin: 0 0 15px;
	font-size: 1.1em;
	border-bottom: 4px solid #CCCCCC;
}
.flowArrow > div dl dt::after {
  width: 20%;
  height: 4px;
  bottom: -4px;
  left: 0;
}
	
}

/* リスト */


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.8em;
    padding: 0;
    border-radius: 0.4em;
    background-color:#999;
}

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

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

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

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


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

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

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

.plus3div li {
	box-sizing: border-box;
	width:33%;
}

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

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

.plus6div li {
	box-sizing: border-box;
	width:16%;
}

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

}


@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: 0.7em;
    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 {
	vertical-align:top;
}
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 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:#fbcf03;
	padding-right:0.5em;
}

ul.liCheck li {
	font-size:1.1em;
	border-bottom:#ccc dotted 1px;
	padding:0.3em 0 0.3em 1.5em;
	text-indent:-1.5em;
}

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 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;
	padding-right:8px;
}

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:#2899d4;
}

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:var(--basic-color2);
	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%);*/
	line-height:1.6em;
}
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;
}

ol.liNum li {
	font-size:1.1em;
}
	
}

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;
}

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

.li2Div li {
	width: 47%;
}

.li3Div li {
	width: 31%;
}

.li4Div li {
	width: 23%;
}

.li4DivT2 li {
	width: 23%;
}


.li5Div li {
	width: 19%;
}

.li6Div li {
	width: 15%;
}

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

.li4DivT2 li {
	width: 47%;
}


}


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

ul.li1Div li , ul.li2Div li , ul.li3Div li , ul.li4Div li ,ul.li5Div li , ul.li6Div 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:#41b879;
	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.liBox {
	display: flex;
	justify-content: space-evenly;
	flex-wrap: wrap;
}


ul.liBox li {
	box-sizing: border-box;
	background-color:#103f77;
	color:#fff;
	font-size:1.2em;
	border-radius: 0.3em;
	-webkit-border-radius: 0.3em;
	-moz-border-radius: 0.3em;
	padding:0.4em 0.5em;
	text-align:center;
	margin:0 0 10px 0;
}

ul.liBoxLeft {
	display: flex;
	justify-content: space-evenly;
	flex-wrap: wrap;
}


ul.liBoxLeft li {
	box-sizing: border-box;
	background-color:#38A569;
	color:#fff;
	font-size:1.1em;
	border-radius: 30em;
	-webkit-border-radius: 30em;
	-moz-border-radius: 30em;
	padding:0.2em 1em;
	text-align:left;
	margin:0 5px 5px 0;
}


.box1div li {
	width:100%;
}

.box2div li {
	width: 47%;
}

.box3div li {
	width: 31%;
}

.box4div li {
	width: 23%;
}

.box5div li {
	width: 19%;
}

.box6div li {
	width: 15%;
}

@media only screen and (max-width: 768px) {
	
.box4div li , .box5div li , .box6div li {
	width: 47%;
}

}

@media only screen and (max-width: 600px) {
	
.box2div li , .box3div li , .box4div li , .box5div li , .box6div li {
	width:100%;
}


ul.liBox li {
	font-size:1em;
	padding:0.2em 0.3em;
}

ul.liBoxLeft li {
	font-size:0.95em;
	border-radius: 0.4em;
	-webkit-border-radius: 0.4em;
	-moz-border-radius: 0.4em;
}


}


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


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




/* 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:#face00;
	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:#1a6fac;
	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: 200px;
	padding:2em 5em;
	text-align:left;
	border-radius:5px;
	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:#1f508d;
}



.infoWrap ul {

}
 
.infoWrap ul li {
	display: flex;
	justify-content: start;
	flex-wrap: wrap;
	align-items: stretch;
	
    margin-bottom: 1em;
    padding-bottom: 1em;
	/* margin-right:20px; */
    border-bottom: 1px solid #CCCCCC;
}

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

.infoWrap .thumbnail {
    display: inline-block;

}
.infoWrap .date {
  /*  margin-left: 20px;　*/
    display: inline-block;
	vertical-align:middle;

}
.infoWrap .wp_category {
    margin-left: 20px;
	display:inline-block;
	color:#FFF;
	text-align:center;
	line-height:normal;
	font-size:0.9em;
	box-sizing: border-box;
	padding:0.2em 0.8em;
	width:16em;
	height:2.1em;
	background-color:var(--basic-color);
	border-radius:5px;
	
}
.infoWrap .title {
    margin-left: 20px;
	display: inline-block;
}




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


.infoWrap ul li {
	display: block;
}

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

.infoWrap .date {
	margin-left: 0;
	display:block;
}

.infoWrap .wp_category {
    margin-left: 0;
	display:block;
	width:100%;
}

.infoWrap .title {
	margin: 10px 0 0 0;
	display:block;

}
}




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

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;
	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.4em 3em 0.5em 3em;
	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;
	min-width:12em;
}

/*
#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:-117px;
	padding-top:117px;
}

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

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

}

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

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

}

#pageAnch02 {

}






/*----------------------------
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:var(--basic-color);
}



.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.6em 0.6em;
	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.6em 0.6em;
	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:var(--basic-color);
	color: var(--basic-txt2);
	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: #fafafa;
	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.2em;
	color:#444;
	border:none;
	padding:0.6em 0 0.2em 0;
	margin:0;
	background-image:none;
	text-align:left;
	font-weight:500;
}

.privacy h3:after {
	content: none;
}



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

.privacy h3 {
	font-size:1.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;
}

}

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


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


.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.6em;
	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);
}
.contents-text h3::after {/* 要調整 */
 content: none;
}

.contents-text h3::before {
    position: absolute;
    bottom: 0;
    left: 0.2em;
    z-index: -1;
    color: rgba(63,147,238,.25);/* 要調整 */
    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.3em;
}


}


@media screen and (max-width: 768px) {
.contents-text h3::before {
    position: absolute;
    bottom: 0.4em;
    left: 0.2em;
}
}



/* ---------------
  index top home TOPページ
  ---------------- */
  
  
 /* 買取ジャンル　*/
 
.genreBox {
	text-align:center;
}

.genreBox a {
	text-decoration:none;
}

.genreTit {
	box-sizing: border-box;
	position:relative;
	
	display:block;
	color:#FFF;
	text-align:center;
	line-height:normal;
	padding:0.2em 0.5em 0.4em 0.5em;
	background-color:var(--basic-color2);
	border-radius: 100em;
	-webkit-border-radius: 100em;
	-moz-border-radius: 100em;
	
	font-style: normal;
	font-size:1em;
	margin-bottom:-0.5em;
	z-index:1;
}

.genreImg {
	text-align:center;
	border-radius:10px;
	box-shadow: 3px 3px 8px 1px #999;
	margin-bottom:15px;
	overflow:hidden;
	margin-bottom:10px;
}

.genreImg img {
	transition: all 0.5s ease;
}

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

.bnrGenre {
	box-sizing: border-box;
	display:inline-block;
	text-decoration:none;
	line-height:normal;
	padding:0.2em 1em;
	border:2px solid var(--basic-color);
	text-align:center;
	font-size:clamp(1em, 1.2vw, 1.2em);
	color: var(--basic-color);
}



.bnrGenre i {
	padding-right:0.5em;
}

@media only screen and (max-width: 900px) {
	
.txtBnrSt {
	width:95%;
	padding:0.1em 0.3em 0.3em 0.8em;
	margin:0 auto 0.8em auto;
	border-radius: 100em;
	-webkit-border-radius: 100em;
	-moz-border-radius: 100em;
	font-size:0.85em;
}

.txtBnrSt i {
	padding-left:0.8em;
}
	
}

@media only screen and (max-width: 600px) {
	
.genreNum {
	font-size:2em;
	margin-bottom:-0.4em;
	z-index:1;
	padding-left:0.5em;
}

.txtBnrSt {
	width:100%;
	padding:0.1em 0.3em 0.3em 0.8em;
	margin:0 auto 0.8em auto;
	border-radius: 100em;
	-webkit-border-radius: 100em;
	-moz-border-radius: 100em;
	font-size:0.75em;
}

.txtBnrSt i {
	padding-left:1em;
}
	
}

/* SDGs */

.sdgsIll {
	box-sizing: border-box;
	width:80%;
	margin:0 auto -3.5em auto;
	text-align:center;
}

.sdgsIllBox {
	box-sizing: border-box;
	background:#edf7ed;
	padding:4.5em 1.5em 1.5em;
	box-shadow: 3px 3px 8px 1px #CCC;
}

@media only screen and (max-width: 768px) {
	
.sdgsIll {
	width:30%;
	margin:0 auto -2.6em auto;
}

.sdgsIllBox {
	padding:4.2em 1.5em 1.5em;
}
	
}

@media only screen and (max-width: 600px) {
	
.sdgsIll {
	width:50%;
	margin:0 auto -2.6em auto;
}

.sdgsIllBox {
	padding:3.2em 10px 1em;
}
	
}

/* ご利用料金 */

.txtRyokin {
	box-sizing: border-box;
	font-size: 2.4em;
	font-weight:500;
	line-height:1.2em;
	position: relative;
	padding:0.1em 1.5em 0 1em;
	margin-bottom: 1.5em;
}

@media only screen and (max-width: 768px) {
	
.txtRyokin {
	font-size: 1.6em;
	padding:0.1em 1.5em 0 1.2em;
	margin-bottom: 1.2em;
}
	
}

@media only screen and (max-width: 600px) {
	
.txtRyokin {
	font-size: 1.4em;
	padding:0.1em 1.5em 0 1.5em;
	margin-bottom: 1.2em;
}
	
}



.imgShadow img {
 box-shadow: 3px 3px 8px 1px #999;
}
 
.boxImg {
	box-sizing: border-box;
	background: #fff;
	padding:10px;
	box-shadow: 3px 3px 8px 1px #CCC;
	border-radius:10px;
}

.boxImg a {
	text-decoration:none;
	color:#000;
}


.boxImgImg {
	box-sizing: border-box;
	text-align:center;
	width:100%;
	margin-bottom:10px;
	border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
	overflow:hidden;
}

.boxImgTxt {
	box-sizing: border-box;
	width:100%;
}

.txtBnrD {
	box-sizing: border-box;
	display:block;
	text-decoration:none;
	line-height:normal;
	padding:0.2em 1em 0.3em 1em;
	margin:0 0 0.8em 0;
	border-radius: 100em;
	-webkit-border-radius: 100em;
	-moz-border-radius: 100em;
	background-color:var(--basic-color);
	text-align:center;
	font-size:clamp(1.1em, 1.5vw, 1.25em);
	color:#FFF;
}

.txtBnrD i {
	padding-left:1.2em;
}

.boxImgImg img {
	transition: all 0.5s ease;
}

.boxImg a:hover .txtBnrD {
	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;
}

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

.boxImgPri {
	font-size:2.6em;
	color:var(--basic-color);
	text-align:center;
	font-weight:600;
	margin-bottom:0.1em;
}

.boxImgPri .manen {
	font-size:40%;
}

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

.boxImgTxt {
	box-sizing: border-box;
	width:65%;
}

}

@media only screen and (max-width: 600px) {
	
.boxImgImg {
	width:30%;
}

.boxImgTxt {
	box-sizing: border-box;
	width:65%;
}

.txtBnrD {
	padding:0.2em 0.5em 0.3em 0.5em;
	margin:0 0 0.8em 0;
	font-size:clamp(1em, 1.2vw, 1.25em);
	color:#FFF;
}

.txtBnrD i {
	padding-left:1em;
}


.boxImgPri {
	font-size:2em;
}


}

/*///////////////////////////////////////////////

swiper

swiper.js参考

///////////////////////////////////////////////*/


.swiper-slide {
	box-sizing: border-box;
	padding:0 2vw;
}

.swiper-slide a {
	text-decoration:none;
	color:#000;
}

.itemImg {
	text-align:center;
	border-radius:10px;
	box-shadow: 3px 3px 8px 1px #999;
	margin-bottom:15px;
	overflow:hidden;
}

.itemImg img {
	transition: all 0.5s ease;
}

.swiper-slide a:hover img {
	-webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);
	-ms-transform: scale(1.1);
	-o-transform: scale(1.1);
	transform: scale(1.1);
}

.itemName {
	box-sizing: border-box;
	display:inline-block;
	color:#FFF;
	text-align:center;
	line-height:normal;
	padding:0.1em 2.5em 0.2em 2.5em;
	min-width:6em;
	margin-bottom:2px;
	background-color:var(--basic-color); 
	border-radius: 5px;
	-webkit-border-radius: 5px; 
	-moz-border-radius: 5px;
}

.itemEx {
	padding:0 5px;
}


.txtBnrB a {
	box-sizing: border-box;
	display:block;
	width:14em;
	text-decoration:none;
	line-height:normal;
	padding:0.2em 2em 0.3em 2.5em;
	margin:0 auto 0.8em auto;
	border-radius: 0.5em;
	-webkit-border-radius: 0.5em;
	-moz-border-radius: 0.5em;
	background-color:var(--basic-color2);
	border:2px solid var(--basic-color2);
	text-align:center;
	font-size:clamp(1.1em, 1.5vw, 1.25em);
	color:#FFF;
	
	cursor: pointer;
	position: relative;
 	overflow: hidden;
 	z-index: 1;
}

.txtBnrB a::before {
	content: "";
	position: absolute;
	left: -1px;
	top: 0;
	width: 101%;
	height: 100%;
	background-color: #fff;
	transform: translateX(-100%);
	transition: all .3s;
	z-index: -1;
}
.txtBnrB a:hover::before {
	transform: translateX(0);
}
.txtBnrB a:hover {
	color: var(--basic-color2);
}

.txtBnrB i {
	padding-left:1.2em;
}

.txtBnrSq {
	display:inline-block;
}

.txtBnrSq a {
	box-sizing: border-box;
	display:inline-block;
	text-decoration:none;
	line-height:normal;
	padding:0.2em 2em 0.25em 2.5em;
	background-color: #fff;
	border:2px solid var(--basic-color);
	text-align:center;
	font-size:clamp(1em, 1.2vw, 1.2em);
	color: var(--basic-color);	
	cursor: pointer;
	position: relative;
 	overflow: hidden;
 	z-index: 1;
}

.txtBnrSq a::before {
	content: "";
	position: absolute;
	left: -1px;
	top: 0;
	width: 101%;
	height: 100%;

	background-color:var(--basic-color);
	transform: translateX(-100%);
	transition: all .3s;
	z-index: -1;
}
.txtBnrSq a:hover::before {
	transform: translateX(0);
}
.txtBnrSq a:hover {
	color:#FFF;

}

.txtBnrSq i {
	padding-left:1.2em;
}

.bnrDetailTop {

}

.bnrDetailTop a {
	box-sizing: border-box;
	display:block;
	width:14em;
	margin:0 auto 0.8em auto;
	text-decoration:none;
	line-height:normal;
	padding:0.6em 2em 0.65em 2.5em;
	background-color: #fff;
	border:3px solid var(--basic-color);
	text-align:center;
	font-size:clamp(1em, 1.2vw, 1.2em);
	color: var(--basic-color);	
	cursor: pointer;
	position: relative;
 	overflow: hidden;
 	z-index: 1;
}

.bnrDetailTop a::before {
	content: "";
	position: absolute;
	left: -1px;
	top: 0;
	width: 101%;
	height: 100%;

	background-color:var(--basic-color);
	transform: translateX(-100%);
	transition: all .3s;
	z-index: -1;
}
.bnrDetailTop a:hover::before {
	transform: translateX(0);
}
.bnrDetailTop a:hover {
	color:#FFF;

}

.bnrDetailTop i {
	padding-left:1.2em;
}


.bnrDetail {
	display:inline-block;
}

.bnrDetail a {
	box-sizing: border-box;
	display:inline-block;
	text-decoration:none;
	line-height:normal;
	padding:0.2em 2em 0.25em 2.5em;
	background-color: #fff;
	border:2px solid var(--basic-color);
	text-align:center;
	font-size:clamp(1em, 1.2vw, 1.2em);
	color: var(--basic-color);	
	cursor: pointer;
	position: relative;
 	overflow: hidden;
 	z-index: 1;
}

.bnrDetail a::before {
	content: "";
	position: absolute;
	left: -1px;
	top: 0;
	width: 101%;
	height: 100%;

	background-color:var(--basic-color);
	transform: translateX(-100%);
	transition: all .3s;
	z-index: -1;
}
.bnrDetail a:hover::before {
	transform: translateX(0);
}
.bnrDetail a:hover {
	color:#FFF;

}

.bnrDetail i {
	padding-left:1.2em;
}


.txtBnrTel {
	display:inline-block;
}

.txtBnrTel a {
	box-sizing: border-box;
	display:inline-block;
	text-decoration:none;
	line-height:normal;
	padding:0.2em 2em 0.2em;
	background-color: #fff;
	border:2px solid var(--basic-color);
	text-align:center;
	font-size:clamp(1em, 1.2vw, 1.2em);
	color: var(--basic-color);	
	cursor: pointer;
	position: relative;
 	overflow: hidden;
 	z-index: 1;
}

.txtBnrTel a::before {
	content: "";
	position: absolute;
	left: -1px;
	top: 0;
	width: 101%;
	height: 100%;

	background-color:var(--basic-color);
	transform: translateX(-100%);
	transition: all .3s;
	z-index: -1;
}


/* swiperのボタンを消す　*/


.swiper-button-next, .swiper-button-prev {
	background-image:none !important;
	color:rgba(128,128,128,.40);
}

@media screen and (max-width: 768px) {
	
.swiper-slide {
	box-sizing: border-box;
	padding:0 3vw;
}
	
}

@media only screen and (max-width: 600px) {
	
.swiper-slide {
	box-sizing: border-box;
	padding:0 4vw;
}

.swiper-buttonPlus {
	top:20vmax !important;
}
	
}

/* お知らせ　*/
.swiper-slidePlus {
    padding: 10px 2vw !important;
}
.boxInfo {
    box-sizing: border-box;
    background: #fff;
    padding: 10px;
    box-shadow: 3px 3px 8px 1px #CCC;
    border-radius: 10px;
}
.boxInfo a {
    text-decoration: none;
    color: #000;
}
.boxInfoImg {
    box-sizing: border-box;
    text-align: center;
    width: 100%;
    margin-bottom: 10px;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    overflow: hidden;
}
.boxInfoTxt {
    box-sizing: border-box;
    width: 100%;
}
.boxInfoImg img {
    transition: all 0.5s ease;
	width: 100%;
    height: auto;
}
.boxInfo a:hover img {
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1);
}
.infoDate {
    box-sizing: border-box;
    display: inline-block;
    color: #FFF;
    text-align: center;
    line-height: normal;
    padding: 0.1em 2.5em 0.2em 2.5em;
    min-width: 6em;
    margin-bottom: 2px;
    background-color: #f0962b;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}
.wpDate {
    display: inline-block;
    padding-left: 0.5em;
}
.infoEx {
    padding: 0 5px 1em 5px;
}

/* コンタクトエリア　*/

.conCatch {
	font-size:1.8em;
	text-align:center;
	margin-bottom:2em;
}
.conArea {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	align-items: center;
	margin-bottom:3.3em;
}

.conArea a {
	text-decoration: none;
	color:#fff;
}

.conTel {
	font-size:1.1em;
	margin-right:0.8em;
	margin-bottom:10px;
}

.conTel i {
	font-size:3em;
	margin-right:0.2em;
}

.conTelNum {
	font-size:1.8em;
}

.conArea .fontawBnr a {
	display:block;
	background-color:var(--basic-color);
	color:#fff;
	
	box-sizing: border-box;
	width:20vmax;
	max-width:250px;
	text-align:center;
	font-size:1.1em;
	font-weight:350;
	line-height:normal;
	padding:0.6em 0.5em;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	
	margin:0 0.7em 10px;
}

.conArea .fontawBnr a i {
	font-size:140%;
}

.conArea 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;
}

.conSNS {
	box-sizing: border-box;
	width:33%;
}

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

.conSNS {
	width:49%;
}
	
}

@media only screen and (max-width: 768px) {
.conTel {
	margin:0 15vmax 10px;
}

}


@media only screen and (max-width: 600px) {
	
.conCatch {
	font-size:1.4em;
	text-align:center;
	margin-bottom:1.6em;
}

.conArea {
	margin-bottom:2.5em;
}

.conTel {
	font-size:1.1em;
	margin:0 5vmax 0.8em;
}

.conArea .fontawBnr a {
	width:18vmax;
}

.conSNS {
	width:100%;
	margin-bottom:1em;
}
	
}






/* バナー */

.bnrFoot a {
	box-sizing: border-box;
	display:block;
	text-align:center;
	box-sizing: border-box;
	font-size:2em;
	line-height:1.6em;
	padding:1.8em 0.5em;
	background-size:cover;
	color:#fff;
	text-decoration:none;
}

.bnrFoot i {
	font-size:160%;
}

.bnrFoot 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;
}

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

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

.bnr03 a {
	background-image:url(../img/top/bnr_3.jpg);
}

@media only screen and (max-width: 768px) {
	
.bnrFoot a {
	font-size:1.8em;
	line-height:1.4em;
	padding:1.8em 0;
}

}

@media only screen and (max-width: 600px) {
	
.bnrFoot a {
	font-size:1.6em;
	line-height:1.4em;
	padding:1em 0.5em;
}

}


/* コンタクトバナー */

.bgContact .awesomeContact {
	text-align:center;
	font-size:1.8em;
	line-height:1.6em;
	margin-bottom:1em;
}

.awesomeContact  i {
	font-size:160%;
}

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

@media only screen and (max-width: 600px) {
	
.bgContact .awesomeContact {
	font-size:1.6em;
}

}

/* 他 */

.txtMaker {
	font-size:1.6em;
}

@media only screen and (max-width: 768px) {
	
.txtMaker {
	font-size:1.4em;
}
	
}

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

}

/* feature3Box   */


.feature3Box {
	box-sizing: border-box;
	background-color:#fff;
	border-radius: 1em;
	-webkit-border-radius: 1em;
	-moz-border-radius: 1em;
	padding:0 1.8em  1.8em  1.8em;
	box-shadow: 3px 3px 8px 1px #CCC;
}

.feature3Tit {
	box-sizing: border-box;
	background-color:#DE9D45;
	color:#fff;
	font-size:1.6em;
	text-align:center;
	width:80%;
	border-radius: 0 0 10px 10px;
	-webkit-border-radius: 0 0 10px 10px;
	-moz-border-radius: 0 0 10px 10px;
	padding:1em 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:80%;
	padding:0.6em 0.5em;
	margin:0 auto 1em;
	line-height:1.3em;
}

.feature3read {
	font-size:1.2em;
}

	
}

/* examples.html */

p.exTit {
	position: relative;
	background: #103f77;
	font-size:1.4em;
	border-radius: 0.3em;
	-webkit-border-radius: 0.3em;
	-moz-border-radius: 0.3em;
	padding:0.4em 0.5em 0.4em 3em;
	color: #fff;
	margin:0 0 1.5em 2em;
}

p.exTit:before {
	font-family: "Font Awesome 6 Free";
  font-size:1.8em;
  display: inline-block;
  line-height: 2em;
  position: absolute;
  padding: 0em;
  color: #103f77;
  background: #fbe103;
  font-weight: 900;
  width: 2em;
  text-align: center;
  height: 2em;
  line-height: 2em;
  left: -1em;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  border: solid 3px white; 
  border-radius: 50%;
}

/* 医療機器メーカー */
p.ex01:before {
  content: "\f0f1";
}

/* 印刷会社 */
p.ex02:before {
  content: "\f02f";
}

/* 菓子メーカー */
p.ex03:before {
  content: "\f551";
}

/* 化粧品メーカー */
p.ex04:before {
  content: "\e4c4";
}

/* 青果店 */
p.ex05:before {
  content: "\f54f";
}

/* パソコンメーカー */
p.ex06:before {
  content: "\f109";
}

@media only screen and (max-width: 600px) {
	
p.exTit {
  font-size:1.1em;
  margin:0 0 1em 1em;
}

p.exTit:before {
  font-size:1.3em;
  left: -0.5em;
}
	
}

