/*===========================
add
===========================*/
.foot_sns {
	font-size:2em;
}
.mt_30 {
	margin-top:30px;
}
.mb_30 {
	margin-bottom:30px;
}
.mb_60 {
	margin-bottom:60px;
}
/*===========================
number 
===========================*/

ol.box-list h3 {
	text-align:left;
	margin-bottom:10px;
	display:inline-block;
	color:#333;
	font-weight:bold;
	border-bottom:none;
	margin:0 0 10px 0;
	padding:0 0 0 0;
}
ol.box-list h3:after {
	display:none;
}
ol.box-list {
	counter-reset:number;
	list-style:none;
}
ol.box-list li {
	padding-left:6em;
	margin: 1em 0;
	color: #2c2c2f;
	background: #FEF4E7;/*背景色*/
	border:#FFF 4px double;
}
ol.box-list li:before {
	counter-increment: number;
	content: counter(number);
	display: inline-block;
	width: 2em;
	height: 2em;
	text-align: center;
	border-radius: 50%;
	background-color: #fff;
	color: #333;
	margin: 0 auto;
	line-height: 2em;
	font-size: 35px;
	font-weight: 200;
	font-family: 'Noto Sans Japanese', sans-serif;
	margin-left:-2em;
	position:absolute;
	margin-top:1%;
	font-weight:bold;
}
.box-txt {
	display:inline-block;
	padding: 2em 1.5em 2em 2em;
}
 @media screen and (max-width: 1000px) {
 ol.box-list .box-txt h3 {
 text-align:center!important;
 display:block!important;
}
ol.box-list .box-txt {
 display:block!important;
}
}
 @media screen and (max-width: 768px) {
ol.box-list li:before {
 display:block;
 position:relative;
 margin: 0 auto;
}
 ol.box-list li {
 padding:1.5em 0.5em 0.5em 0;
}
}
ul.liOrange3 {
	margin-left:0;
}
ul.liOrange3 li {
	list-style-type: none;
	list-style-position: outside;
	padding:0 0 0 20px;
	background-image:url(../img/common/clip_li_orange.png);
	background-position:0px 9px;
	background-repeat:no-repeat;
	line-height:2em;
	font-size:110%;
	float:left;
	width:44%;
	margin-right:10px;
}
/*******************************
font size
*******************************/
.tx90 {
	font-size:0.9em;
}
.tx120 {
	font-size:1.2em;
}
.tx140 {
	font-size:1.4em;
}
.tx160 {
	font-size:1.6em;
}
/*******************************
width
*******************************/

.w80 {
	width:80%;
	margin:auto;
}
.w70 {
	width:70%;
	margin:auto;
}
.w60 {
	width:60%;
	margin:auto;
}
.w50 {
	width:50%;
	margin:auto;
}
.w40 {
	width:40%;
	margin:auto;
}
.mt5 {
	margin-top:5px;
}
ul.liOrange3 {
	margin-left:50px;
}
ul.liOrange3 li {
	list-style-type: none;
	list-style-position: outside;
	padding:0 0 0 20px;
	background-image:url(../img/common/clip_li_orange.png);
	background-position:0px 9px;
	background-repeat:no-repeat;
	line-height:2em;
	font-size:110%;
	float:left;
	width:40%;
}
/*--------------------------
add
--------------------------*/


/*文頭そろえる*/

.ex {
	padding-left:1em;
	text-indent:-1em;
}
.wakuwrap {
	display: -webkit-box; /*Android4.3*/
	display: -moz-box;    /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display:flex;
	width:90%;
	margin:auto;
}
.waku {
	border:#faad6b solid 3px;
	margin:0 2% 40px;
	width:33%;
}
.waku h4 {
	background:#faad6b;
	padding:10px;
	color:#FFF;
	margin-bottom:0 !important;
	text-align:center;
	vertical-align:middle;
}
.waku p {
	padding:0.5em 1em;
}
 @media screen and (max-width: 768px) {
.wakuwrap {
 display: -webkit-box; /*Android4.3*/
 display: -moz-box;    /*Firefox21*/
 display: -ms-flexbox; /*IE10*/
 display: -webkit-flex; /*PC-Safari,iOS8.4*/
 display: block;
}
.waku {
 margin:0 1% 40px;
 width: auto;
}
 ul.liOrange3 {
 margin-left:0;
}
}
 @media only screen and (max-width: 600px) {
.tx90 {
 font-size:1em;
}
.tx120 {
 font-size:1.1em;
}
.tx140 {
 font-size:1.2em;
}
.tx160 {
 font-size:1.4em;
}
 .w80, .w70, .w60, .w50, .w40 {
 width: auto;
 margin:auto;
}
 ul.liOrange3 li {
 list-style-type: none;
 list-style-position: outside;
 padding:0 0 0 20px;
 background-image:url(../img/common/clip_li_orange.png);
 background-position:0px 9px;
 background-repeat:no-repeat;
 line-height:2em;
 font-size:110%;
 float: none;
 width: auto;
}
.mt5 {
 margin-top:0;
}
}
/* txt */
.txt2 {
	font-size:1.2rem;
	font-weight:800;
}
.txtbold {
	font-weight:bold;
}
.tx-center {
	text-align:center
}
.tx-left {
	text-align:left;
}
.tx-right {
	text-align:right;
}
.tx_marker {
	background:linear-gradient(transparent 75%, #fff799 75%);
	font-weight:bold;
	display:inline;
}
/* color */

.red {
	color: #bc2d2d;
}
.green {
	color: #3b7a28;
}
.brown {
	color: #a67435;
}
.blue {
	color: #325f99;
}
.catchcopy {
	font-size: 2rem;
	font-family: 'Noto Sans Japanese';
	font-weight: 400;
	line-height: 1.3em;
	color: #E0625E;
}
.catchcopy2 {
	font-size: 2.2rem;
	font-family: 'Noto Sans Japanese';
	font-weight: 600;
	line-height: 1.3em;
	color: #E0625E;
}
.col_red {
	color:#F33;
}
.col_green {
	color: #1a9651 !important;
}
.col_blue {
	color: #06C;
}
.col_orange {
	color: #F06000;
}
.tx-70p {
	font-size:70% !important;
	letter-spacing:normal;
}
.tx-80p {
	font-size:80% !important;
	letter-spacing:normal;
}
.tx-90p {
	font-size:90% !important;
	letter-spacing:normal;
}
.tx100p {
	font-size:100% !important;
	letter-spacing:normal;
}
.tx-110p {
	font-size: 110% !important;
	letter-spacing:normal;
}
.tx-120p {
	font-size:120% !important;
	letter-spacing:normal;
}
.tx-130p {
	font-size:130% !important;
	letter-spacing:normal;
}
.tx-140p {
	font-size:140% !important;
	letter-spacing:normal;
	line-height:1.4em;
}
.tx-150p {
	font-size:150% !important;
	letter-spacing:normal;
}
.tx-160p {
	font-size:160% !important;
	letter-spacing:normal;
}
.tx-170p {
	font-size:170% !important;
	letter-spacing:normal;
}
.tx-180p {
	font-size:180% !important;
	letter-spacing:normal;
}
.tx-230p {
	font-size:230% !important;
	letter-spacing:normal;
}
.tx-300p {
	font-size:300% !important;
	letter-spacing:normal;
}
.mar0 {
	margin:0 auto;
}
.txsize1 {
	font-size:1.2rem;
	font-weight:800;
	color:#F33;
	text-align:center;
}
.txtstyle1 {
	font-size: 1.16em;
	font-weight: bold;
}
.txtstyle2 {
	font-size: 1.24em;
	font-weight: bold;
}
.ex {
	padding-left:1em;
	text-indent:-1em;
}
 @media only screen and (max-width: 768px) {
.tx-230p {
 font-size: 120% !important;
 letter-spacing: nomal;
}
.tx-180p {
 font-size: 110% !important;
 letter-spacing: nomal;
}
}
 @media only screen and (max-width: 600px) {
.line-h2 {
 line-height: 1.5;
}
.tx-230p {
 font-size: 130% !important;
 letter-spacing: nomal;
}
.tx-180p, .tx-170p {
 font-size: 120% !important;
 letter-spacing: nomal;
}
.tx-160p, .tx-150p {
 font-size: 110% !important;
 letter-spacing: nomal;
}
.tx-140p, .tx-130p, .tx-120p, .tx-110p {
 font-size: 100% !important;
 letter-spacing: nomal;
}
}
.sns-bnr {
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: justify;
	-moz-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: center;
	justify-content:  center;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
}
.sns-bnr li {
	margin-right:2%;
}
.wd30 {
	width:30% !important;
	margin:auto;
}
.wd40 {
	width:40% !important;
	margin:auto;
}
.wd50 {
	width:50% !important;
	margin:0 auto;
}
.wd60 {
	width:60% !important;
	margin:0 auto;
}
.wd70 {
	width:70% !important;
	margin:0 auto;
}
.wd80 {
	width:80% !important;
	margin:0 auto;
}
.wd85 {
	width:85% !important;
	margin:0 auto;
}
.wd90 {
	width:90% !important;
	margin:0 auto;
}
.wd95 {
	width:95% !important;
	margin:0 auto;
}
 @media only screen and (max-width: 768px) {
.wd30, .wd40, .wd50, .wd60, .wd70, .wd80, .wd85, .wd90, .wd95 {
 width:100% !important;
 margin:auto;
}
}
/*===========================
spacer
===========================*/

.mt5 {
	margin-top:5px;
}
.mt10 {
	margin-top:10px !important;
}
.mt20 {
	margin-top:20px !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;
}
.mt0 {
	margin-top:0px !important;
}
.mb10 {
	margin-bottom:10px !important;
}
.mb20 {
	margin-bottom:20px !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;
}
.mb0 {
	margin-bottom:0px !important;
}
.pb0 {
	padding-bottom:0px !important;
}
 @media screen and (max-width: 768px) {
.mt10, .mt20, .mt30 {
 margin-top:4% !important;
}
.mb10, .mb20, .mb30 {
 margin-bottom:4% !important;
}
.mt40, .mt50, .mt60 {
 margin-top:5% !important;
}
.mb40, .mb50, .mb60 {
 margin-bottom:5% !important;
}
.mt70, .mt80 {
 margin-top:8% !important;
}
.mb70, .mb80 {
 margin-bottom:8% !important;
}
}
ul.check {
	position: relative;
	display:flex;
	justify-content:space-between;
	align-items:center;
	flex-wrap:wrap;
}
ul.check li {
	padding: 0 0 0.5em 2em;
	margin-bottom: 0.7em;
	border-bottom: 1px dashed #CCC;
	width:98%;
	margin-right:2%;
	position: relative;
}
ul.check li::before {
 position: absolute;
 content: "\f14a";
 font-family: FontAwesome;
 left: 0.3em;
 font-size: 1.3em;
}
.flex {
	display: flex;
	justify-content: space-between;
	align-items: start;
	flex-wrap: wrap;
}
.flex-2col {
	display:flex;
	justify-content:space-between;
	align-items:center;
	flex-wrap:wrap;
}
.flex-2col > li {
	width:49%;
	margin:2% 0% 0 1%;
}
.flex-2col > li:nth-of-type(odd) {
 width:47.5%;
 margin:2% 2.5% 0 0%;
}
.flex-2col > li:nth-of-type(even) {
 width:47.5%;
 margin:2% 0 0 2.5%;
}
.flex-2col-start {
	display:flex;
	justify-content:start;
	align-items:start;
	flex-wrap:wrap;
}
.flex-2col-start > li {
	width:48%;
	margin:2% 0 0 2%;
}
.flex-2col-start > li:nth-of-type(odd) {
 width:47.5%;
 margin:2% 2.5% 0 0%;
}
.flex-2col-start > li:nth-of-type(even) {
 width:47.5%;
 margin:2% 0 0 2.5%;
}
.flex-list2 {
	width:18% !important;
	margin:0 0 0 0% !important;
}
.flex-list3 {
	width:28% !important;
	margin:2% 0 0 2% !important;
}
.flex-list4 {
	width:38% !important;
	margin:2% 0 0 2% !important;
}
.flex-list5 {
	width:49% !important;
	margin:2% 1% 0 0% !important;
}
.flex-list6 {
	width:60% !important;
	margin:2% 0 0 0% !important;
}
.flex-list7 {
	width:68% !important;
	margin:2% 0 0 2% !important;
}
.flex-list8 {
	width:78% !important;
	margin:0% 0 0 2% !important;
}
.flex-list9 {
	width:88% !important;
	margin:0% 0 0 2% !important;
}
.flex-3col {
	display:flex;
	justify-content:start;
	align-items:center;
	flex-wrap:wrap;
}
.flex-3col > li {
	width:32%;
	margin:2% 0 0 1.3%;
}
 @media only screen and (max-width: 768px) {
.flex-2col > li, .flex-2col-start > li {
 width:100% !important;
 margin:2% auto !important;
}
.flex-3col > li {
 width:100%;
 margin:2% auto !important;
}
.flex-2col > li.flex-list2, .flex-2col > li.flex-list3, .flex-2col > li.flex-list4, .flex-2col > li.flex-list5, .flex-2col > li.flex-list6, .flex-2col > li.flex-list7, .flex-2col > li.flex-list8, .flex-2col > li.flex-list9 {
 width:100% !important;
 margin:6% auto !important;
}
}
.tbl-1 th {
	text-align:center;
	width:30%;
}
.tbl-1 td {
	text-align:left;
	vertical-align:middle;
}
.tbl-2 th {
	width:30%;
}
.tbl-2 td {
	text-align:left;
	vertical-align:middle;
}
.tbl-3 th {
	width:60%;
}
.tbl-3 td {
	text-align:center;
	vertical-align:middle;
}

@media only screen and (max-width: 768px) {
table th, table td, .tbl-2 th, .tbl-3 th,.tbl-1 th  {
 display: block;
 width: 100%;
 box-sizing: border-box;
}
}
.box-sd {
	padding: 2rem;
	background-color: #fff;
	border: 1px solid #999;
	box-sizing: border-box;
}

.box-sd02 {
	padding: 2rem;
	background-color: #fff;
	border: 1px solid #999;
	box-sizing: border-box;
}
.box-sd05 {
	padding: 3rem 2rem 2.0rem;
	background-color: #fff;
	border: 0px solid #999;
	box-shadow:0px 1px 1px #CCC;
	box-sizing: border-box;
}

.box-db {
	padding: 2rem;
	background-color: #fefdf8;
	border: 6px double #03a4e0;
	box-sizing: border-box;
	border-radius:10px;
	box-shadow:1px 1px 1px #c0c0c0;
}
.box-db02 {
	padding: 2rem;
	background-color: #f6f8fe;
	border: 4px double #999;
	box-sizing: border-box;
}
.box-db03 {
	padding: 2rem;
	background-color: #f8f3e6;
	border: 4px double #999;
	box-sizing: border-box;
	border-radius:5px;
}
 @media only screen and (max-width: 768px) {
.box-sd, .box-db.box-db02, .box-db03, .box-sd02,.box-sd05  {
 padding: 1.2rem;
 box-sizing: border-box;
}
}
.h4-ttl {
	text-align:center;
	position: relative;
	margin:30px auto 30px;
	color:#f00;
}
.h4-ttl:after {
	content: '';
	position: absolute;
	bottom: -15px;
	display: inline-block;
	width: 60px;
	height: 2px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background-color: black;
	border-radius: 2px;
}
@media (min-width: 769px) {
a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}
}
.company_data .data a {
	color: #333 !important;
	text-decoration: none;
}
.company_data .data 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.5s ease;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
}
.tel-a 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.5s ease;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
}
.wrap-h2 {
	width:96%;
	margin:2% auto 6%;
}
.wrap-h3 {
	width:96%;
	margin:0% auto 6%;
}
.wrap-h4 {
	width:98%;
	margin:0% auto 6%;
}
 @media only screen and (max-width: 768px) {
.contactBtn {
 display: inline-block;
 vertical-align: top;
 line-height: 1;
 margin: 0 0em 10px;
 width: 100%;
 box-sizing:border-box;
}
.txtContacBnr a {
 display: block;
 text-align: center;
 color: #FFF;
 text-decoration: none;
 line-height: normal;
 padding: 0.5em 1.5em 0.5em 1em;
 background-color: #3170B9;
 width: 100%;
 box-sizing: border-box;
 background-image: url(../img/common/btn_arrow.png);
 background-position: right 0.5em center;
 background-repeat: no-repeat;
 border-radius: 5px;
 -webkit-border-radius: 5px;
 -moz-border-radius: 5px;
}
}
.pc-disp {
	display:block;
}
.sp-disp {
	display:none;
}
@media only screen and (max-width: 600px) {
.pc-disp {
 display:none;
}
.sp-disp {
 display:block;
}
}
.catch01 {
	text-align:center;
	font-size:1.3em;
	font-weight:700;
	line-height:1.2;
	background:#F33;
	padding:1.2em;
	color:#fff;
	width:100%;
	margin:1em auto;
	box-sizing:border-box;
}
.catch02 {
	text-align:center;
	font-size:1.3em;
	font-weight:700;
	line-height:1;
	background:#F33;
	padding:1.2em;
	color:#fff;
	margin:1em auto;
}
.catch03 {
	text-align:center;
	font-size:1.2em;
	font-weight:700;
	line-height:1;
	background:#393;
	padding:0.8em;
	color:#fff;
}
.catch04 {
	text-align:center;
	font-size:1.2em;
	font-weight:800;
	line-height:1;
	background:#fff;
	padding:0.8em;
	color:#F33;
	width:60%;
	margin:1em auto;
	border-bottom:2px solid #F33;
}
.catch05 {
	text-align:center;
	font-size:1.3em;
	font-weight:700;
	margin:0 0.2em;
	letter-spacing:0.05em;
}
.catch06 {
	color:#f9ed2f;
	margin:0 0.2em 0 0.1em;
	font-size:1.8em;
	letter-spacing:0.05em;
	text-shadow : 
 1px 1px 1px #fff, -1px 1px 1px #fff, 1px -1px 1px #fff, -1px -1px 1px #fff, 1px 0px 1px #fff, 0px 1px 1px #fff, -1px 0px 1px #fff, 0px -1px 1px #fff;
}
.catch07 {
	margin:0 0.2em 0 0.1em;
	font-size:1.6em;
	letter-spacing:0.05em;
}
.catch08 {
	color: #D7770D;
	font-size: 1.2em;
	margin-bottom: 0.5em;
}
.catch09 {
	color: #D7770D;
	font-size: 1.6em;
	margin-bottom: 0.5em;
	line-height:1.6;
}
 @media only screen and (max-width: 768px) {
.catch09 {
 color: #D7770D;
 font-size: 1.0em;
 margin-bottom: 0.5em;
 line-height:1.6;
}
}
 @media only screen and (max-width: 768px) {
.table-scroll {
 overflow-x: auto;
 width: 100%;
 border-right: 2px solid #ccc;
}
.table-scroll::-webkit-scrollbar {
 height: 5px;
}
.table-scroll::-webkit-scrollbar-track {
 border-radius: 5px;
 background:#CCC;
}
.table-scroll::-webkit-scrollbar-thumb {
 border-radius: 5px;
 background:#999;
}
.table-scroll table {
 table-layout: fixed;
 min-width: 100%;
 white-space: nowrap;
 width: 100%;
 overflow: hidden;
 margin-bottom:0px;
}
.table-scroll table th {
 width:200px !important;
 min-width: 250px;
 display:table-cell;
 padding:2%;
 font-size:12px;
 border: 1px #ccc solid;
}
.table-scroll table td {
 width: 150px;
 min-width: 150px;
 display:table-cell;
 font-size:12px;
 word-wrap: break-word;
 white-space:normal;
}
.table-scroll table th.th-01 {
 width:200px !important;
 min-width: 250px;
 display:table-cell;
 padding:2%;
 font-size:12px;
 border: 1px #ccc solid;
}
.table-scroll table td.td-01 {
 width: 90px;
 min-width: 130px;
 display:table-cell;
 font-size:12px;
 word-wrap: break-word;
 white-space:normal;
}
}
.h3-ttl {
	font-size:1.8em;
	font-weight:300;
	background:#393;
	padding:0.5em;
	color:#fff;
	vertical-align:middle;
	line-height:1;
}
.tx-flex {
	text-align:center;
}
@media only screen and (max-width: 768px) {
.tx-flex {
 text-align:left;
}
}
ul.circle {
	display:flex;
	justify-content:space-between;
	align-items:center;
	flex-wrap:wrap;
}
ul.circle li {
	padding: 0 0 0.5em 1.2em;
	margin-bottom: 0.7em;
	border-bottom: 1px dashed #CCC;
	width:90%;
	margin-right:2%;
	position: relative;
}
ul.circle li:before {
	position: absolute;
	content: "";
	width: 6px;
	height: 6px;
	background-color: #222;
	border-radius: 50%;
	left: 0.5em;
	margin-top: 0.6em;
}
.yellow {
	color:#f9ed2f;
}
.h2-ttl {

	color: #3170B9;
	padding:0.4em;
	font-size:2.7em;
	border:inherit;
}
.h2-ttl02 {
	background:#f00;
	color:#fff;
	padding:0.4em;
	font-size:2.2em;
	border:inherit;
}
.h2-ttl02-01 {
	color:#f00;
}
.h2-ttl03 {
	background:#ff8a00;
	color:#fff;
	padding:0.4em;
	font-size:2.2em;
	border:inherit;
	box-sizing:border-box;
}
.h2-ttl03-01 {
	color:#ff8a00;
}
.h3-ttl02 {
	color:#f00;
}
.h3-ttl03 {
	color:#ff8a00;
}
@media only screen and (max-width: 768px) {
.h2-ttl {
 color: #3170B9;
 padding:0.8em;
 font-size:1.4em;
 border:inherit;
 box-sizing:border-box;
 font-weight:800;
}
.h2-ttl02 {
 background:#f00;
 color:#fff;
 padding:0.4em;
 font-size:1.4em;
 border:inherit;
 box-sizing:border-box;
}
.h2-ttl03 {
 font-size:1.4em;
}
.h3-ttl {
 font-size: 1.2em;
 font-weight: 300;
 background: #393;
 padding: 0.5em;
 color: #fff;
 vertical-align: middle;
 line-height: 1.2;
}
.catch02 {
 text-align: center;
 font-size: 1.1em;
 font-weight: 700;
 line-height: 1.3;
 background: #F33;
 padding: 1.2em;
 color: #fff;
 margin: 1em auto;
}
.catch04 {
 text-align: center;
 font-size: 1.0em;
 line-height: 1.2;
 padding: 0.8em;
 width: 90%;
 margin: 0.7em auto;
}
.p-rf {
   padding-left:20px;
   padding-right:2%;
}
}
.wakuwrap {
	display: -webkit-box; /*Android4.3*/
	display: -moz-box;    /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display:flex;
	width:90%;
	margin:auto;
}
.waku {
	border:#faad6b solid 3px;
	margin:0 2% 40px;
	width:33%;
}
.waku h4 {
	background:#faad6b;
	padding:10px;
	color:#FFF;
	margin-bottom:0 !important;
	text-align:center;
	vertical-align:middle;
	font-size: 1.4em;
}
.waku p {
	padding:0.5em 1em;
}
 @media screen and (max-width: 768px) {
.wakuwrap {
 display: -webkit-box; /*Android4.3*/
 display: -moz-box;    /*Firefox21*/
 display: -ms-flexbox; /*IE10*/
 display: -webkit-flex; /*PC-Safari,iOS8.4*/
 display: block;
}
.waku {
 margin:0 1% 40px;
 width: auto;
}
 ul.liOrange3 {
 margin-left:0;
}
}
.btn-b a {
    text-decoration: none;
    text-align: center;
    color: #FFF !important;
    position: relative;
    display: inline-block;
    padding: 0 1.3em 0 1em;
    line-height: 30px;
    background: #3170B9;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    transition: all .3s;
    -webkit-transition: all .3s;
}
.btn-b a::after {
	position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
    right: 2%;
    box-sizing: border-box;
    width: 4px;
    height: 4px;
    border: 4px solid transparent;
}
.btn-b a::after {
    border-left: 4px solid #fff;
}
.btn-b a:hover {
    opacity:0.7;
}


.btn-contact a {
    text-decoration: none;
    text-align: center;
    color: #FFF !important;
    position: relative;
    display: inline-block;
    padding: 0 1.3em 0 1em;
    line-height: 30px;
    background: #3170B9;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    transition: all .3s;
    -webkit-transition: all .3s;
	width:200px;
}
.btn-contact a::after {
	position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
    right: 2%;
    box-sizing: border-box;
    width: 4px;
    height: 4px;
    border: 4px solid transparent;
}
.btn-contact a::after {
    border-left: 4px solid #fff;
}
.btn-contact a:hover {
    opacity:0.7;
}

.items-center {
    -webkit-box-align: center;
    -ms-flex-align: center;
    -ms-grid-row-align: center;
    align-items: center;
}.
column-layout03 {
    background: #f6f6f6;
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
}
.column-layout03-item {
    box-sizing: border-box;
    width: 50%;
    vertical-align: middle;
}
.column-layout03-title {
    font-size: 30px;
    line-height: 1.6;
    margin: 0 auto;
    margin-bottom: 0.7em;
    max-width: 426px;
    width: 96%;
    margin-top: 0.5em;
}
.column-layout03-text {
    margin: 0 auto;
    max-width: 426px;
    width: 96%;
}

.column-layout03-text {
    line-height: 1.6em;
}
.column-layout03-text p {
    font-size: 14px;
    line-height: 2.1;
}
.column-layout03-image {
    height: auto;
    width: 100%;
}
.flex-div {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

@media only screen and (max-width: 768px){
	.column-layout03-wrapper {
		background: #f6f6f6;
		padding: 6.89655% 6.11111% 0;
	}
	.column-layout03:nth-of-type(odd) {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column-reverse;
		-ms-flex-direction: column-reverse;
		flex-direction: column-reverse;
	}
	.column-layout03 {
		background: none;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		padding: 0;
	}
	.column-layout03-wrapper .column-layout03-content {
		padding-left: 0;
		padding-right: 0;
	}
	.column-layout03-item:first-child {
		margin-right: 0;
	}
	.column-layout03-item{
		width: 100%;
	}
	.column-layout03-content {
		background: #f6f6f6;
		padding: 30px 6.11111%;
	}
	.column-layout03-title {
		font-size: 18px;
		margin-bottom: 0.77778em;
		width: 100%;
		max-width: initial;
	}
	.column-layout03-text{
		width: 100%;
		max-width: initial;
	}
	.column-layout03-text p {
		font-size: 13px;
		line-height: 2;
	}
	.w80{
		width: 100%;
		margin: 0 auto;
	}
	.vis3 .catch {
		margin-left: 0% !important;
	}
	.halfsz{
		width: 100%;
		display: block;
	}
	.scroll{
		overflow: auto;
    white-space: nowrap;
    width: 100% !important;
	box-sizing: border-box;
	overflow-x: scroll;
	}
	
}
ul.circle {
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;	
}
ul.circle li {
    padding: 0 0 0.5em 1.2em;
    margin-bottom: 0.7em;
    border-bottom: 1px dashed #CCC;
    width:90%;
    margin-right:2%;
    position: relative;
}
ul.circle li:before {
    position: absolute;
    content: "";
    width: 6px;
    height: 6px;
    background-color: #222;
    border-radius: 50%;
    left: 0.5em;
    margin-top: 0.6em;
}



ul.circle-2col {
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;	
}
ul.circle-2col li {
    padding: 0 0 0.5em 1.2em;
    margin-bottom: 0.7em;
    border-bottom: 1px dashed #CCC;
    width:43%;
    margin-right:2%;
    position: relative;
}
ul.circle-2col li.long {
    padding: 0 0 0.5em 1.2em;
    margin-bottom: 0.7em;
    border-bottom: 1px dashed #CCC;
    width:70%;
    margin-right:2%;
    position: relative;
}
ul.circle-2col li:before {
    position: absolute;
    content: "";
    width: 6px;
    height: 6px;
    background-color: #222;
    border-radius: 50%;
    left: 0.5em;
    margin-top: 0.6em;
}

ul.circle-3col {
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;	
}
ul.circle-3col li {
    padding: 0 0 0.5em 1.2em;
    margin-bottom: 0.7em;
    border-bottom: 1px dashed #CCC;
    width:45%;
    margin-right:2%;
    position: relative;
}
ul.circle-3col li:before {
    position: absolute;
    content: "";
    width: 6px;
    height: 6px;
    background-color: #222;
    border-radius: 50%;
    left: 0.5em;
    margin-top: 0.6em;
}


@media only screen and (max-width: 768px) {
  ul.circle-2col li,ul.circle-3col li,ul.circle-2col li.long {
    width:90%;
}
}
.fa, .fas,.far {
    position:relative;
}
.fa-phone:before,.fa-fax:before ,.fa.fa-envelope-o:before  {
    position:absolute;
	top:-12px;
	left:-22px;
}
.content-wide {
    padding:70px 0px;
	background:#eff4fa;
}
.line-both {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	border:inherit !important;
}

.line-both::before,
.line-both::after {
	content: '';
	width: 70px;
	height: 2px;
	background-color: #3170B9;
}

.line-both::before {
	margin-right: 20px;
}
.line-both::after {
	margin-left: 20px;
}
@media only screen and (max-width: 768px) {
.line-both::before,
.line-both::after {
	content: '';
	width: 20px;
	height: 1px;
}
.line-both::before {
	margin-right: 10px;
}
.line-both::after {
	margin-left: 10px;
}
}
.fa-wrench:before,.fa-hand-point-right:before,.fa-paper-plane:before,.fa-building:before {
    position:absolute;
	top:-22px;
	left:-30px;
}
.p-ttl {
    font-size:1.2em;
	line-height:1.3;
	letter-spacing:0.1em;
	font-weight:800;
}
ol.num_order {
 margin-top:30px;
 padding-left:20px;
}
ol.num_order li {
    padding: 5px 0 4px 0;
	margin-bottom:10px;
    list-style-type: decimal;
	font-weight:500;
	line-height:1.6;
}
.font-nomal {
	font-weight:100 !important;
}
.box-br {
    overflow: hidden;
    padding: 4%;
    background: #fff;
    border: 2px #ccc solid;
    border-radius: 20px;
    font-size: 16px;
    margin-bottom: 20px;
}
.innerBoxColor01 {
    background: url(../img/content/bg01.jpg) repeat;
    padding: 50px 0;
    min-width: 1000px;
}
.innerBox {
    width: 1000px;
    min-width: 1000px;
    margin: 0 auto;
}
.textImgBox02 {
    text-align: center;
}
.textImgBox02 li {
    display: inline-block;
    width: 18.4%;
    vertical-align: top;
    margin: 0 10px 40px 0;
}
li .photo {
    padding-bottom: 5px;
    margin-bottom: 10px;
    border: 2px solid #767777;
}
li .photo img {
    width: 100%;
}
.textImgBox02 li p.title {
    padding-bottom: 0;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    color: #127dc8;
}

ul li img.sdg  {
    width: 70%;
    border: none;
	display:block;
	margin:0 auto;
}
.innerBoxColor04 {
    background: #059392;
    text-align: center;
    color: #fff;
    line-height: 5rem;
    min-width: 1000px;
    font-size: 1.3rem;
}
.innerBoxColor05 {
    background: #ededed;
    text-align: center;
    padding: 30px 0;
    min-width: 1000px;
}
.boxContents_01 {
    background-image: -moz-linear-gradient(172deg, rgb(203, 227, 174) 0%, rgb(77, 193, 165) 100%);
    background-image: -webkit-linear-gradient(172deg, rgb(203, 227, 174) 0%, rgb(77, 193, 165) 100%);
    background-image: -ms-linear-gradient(172deg, rgb(203, 227, 174) 0%, rgb(77, 193, 165) 100%);
    padding: 30px 0;
    min-width: 1000px;
    text-align: center;
}
.pageMainPhoto {
    background: url(../img/content/header_bg.jpg) no-repeat center top / cover;
    text-align: center;
    height: 340px;
    min-width: 1000px;
}
.pageMainPhoto .header-ttl {
    margin-top:1em;
	font-size: 2rem;
    color: #fff;
    font-weight: bold;
    text-shadow: 0px 3px 5px rgb(0 0 0 / 80%);
    padding: 140px 0 0 0;
    letter-spacing: 0.1rem;
	line-height:1.4;
}



@media only screen and (max-width: 768px) {
.box-br {
    padding: 8%;
}
.pageMainPhoto {
    height: auto;
    padding: 5% 5% 30%;
	margin-top:1em;
}
.pageMainPhoto, .boxContents_01, .innerBoxColor01, .innerBox, .innerBoxColor04, .innerBoxColor05, .innerBoxColor06, .ftBnr {
    width: 100%;
    min-width: 100%;
	    box-sizing: border-box;
}
.pageMainPhoto .header-ttl {
	font-size: 1.6rem;
    text-align:left;
    padding: 50px 0 0 0;
    letter-spacing: 0.1rem;
	line-height:1.4;
}
.boxContents_01 {
    padding: 10%;
}
.txtDeco_01 img {
	width:100%;
	height:auto;
}

.textImgBox01, #healthymanagement .textImgBox03 {
    width: 90%;
    margin: 0 auto;
}
.textImgBox02 li {
    width: 40%;
}
.photo img {
    height: auto;
}
.textImgBox02 li p.title {
    padding-bottom: 0;
    text-align: center;
    font-size: 1.0em;
	line-height:1.2;
	text-align:left;
}
.innerBoxColor04 {
    font-size: 1.2rem;
    line-height: 1.2;
    padding: 20px 10px;
}
.compact {
   width:90%;
   margin:auto;
}
.innerBoxColor04 p {
   text-align:left;
}
#pageMainPhoto2 img {
   width:80%;
   height:auto;
   display:block;
   margin:auto;
}
.line-both {
   font-size:1.3em;
}
}

.company dl {
display: flex;
flex-flow: row wrap;
width: 100%;
}
.company dt {
flex-basis: 15%;
padding: 5px;
box-sizing:border-box;

}
.company dd {
flex-basis: 85%;
padding: 5px;
box-sizing:border-box;
}
@media screen and (max-width: 559px) {
.company dl {
flex-flow: column;
}
}
@media only screen and (max-width: 350px) {
#mainCatch p {
    padding: 1em 0.5em;
}
#mainCatch span {
    font-size: 1.1em;
}
}