/*===========================
additional css elements 
===========================*/
.box2 {
    padding: 3em 1em;
    margin: 0.2em 0;

    background: #FFF;
    border: solid 3px #f99595;/*線*/
    border-radius: 50%;/*角の丸み*/
	background-color:rgba(249,149,149,0.1);
}
.box2 p {
    margin: 0; 
    padding: 0;
	text-align:center;

}
@media screen and (max-width: 768px) {
	.box2 {
		width:50%;
		margin-left:20%;
	}
}

.commingsoon {
    padding: 3em 1em;
    margin: 2em 0;
    border: double 5px #F99595;
}
.commingsoon p {
    margin: 0; 
    padding: 0;
	text-align:center;
}

.border{
	border-bottom:1px dashed #999;
	text-align:center;
	margin-bottom:10px!important;
}
.txtstyle1{
		font-size:1.2em;
		font-weight:bold;
}
.picR{
	float:right;
	margin-left:10px;
}
.nomalcatch{
	font-size:1.4em;
	text-align:center;
}
.mb10{
	margin-bottom:10x;
}
.mb20{
	margin-bottom:20px;
}
.mb30{
	margin-bottom:30px;
}
.mb40{
	margin-bottom:40px;
}


.mt10{
	margin-top:10px;
}
.mt20{
	margin-top:20px;
}
.mt30{
	margin-top:30px;
}


.sssp{
	display:block;
}
@media screen and (max-width: 768px) {
	.sssp{
	display:none;
}
}

.ex3 {
	padding-left: 1em; /*1em（1文字）分、右に動かす*/
	text-indent: -1em; /*最初の行だけ1em（1文字）分、左に動かす*/
	margin-bottom:0.4em;
	line-height:1.3em;
	font-size:0.9em;
}

.list8 {
	counter-reset:li;
	margin-left:20px !important;
}
.list8 li {
	position:relative;
	display: block;
	padding:8px 0px 8px 40px;
}
li.list8-count:after {
	counter-increment: li;
	content: counter(li);
	position: absolute;
	left: -16px;
	top: 2px;
	background: #eed0d0;
	height: 30px;
	width: 30px;
	line-height: 32px;
	border: 2px solid #e19e9a;
	color: #fff;
	text-align: center;
	font-weight: bold;
	border-radius: 30px;
}
li.list8-count:before {
	content:'';
	display:block;
	position:absolute;
	box-shadow: 0 0 2px 2px rgba(255, 255, 255, 0.2) inset;
	top:11px;
	left:15px;
	height:0;
	width:0;
	border-top: 8px solid transparent;
	border-right: 7px solid transparent;
	border-bottom: 8px solid transparent;
	border-left: 13px solid #d69393;
}

/*===========================
general
===========================*/

h1, h2, h3, h4, h5, h6 {
	letter-spacing: 1px;
}
/*===========================
header
===========================*/
header div .tel a {
	text-decoration:none;
}
header .logo {
	margin-top:11px;
	margin-left:1%;
	float:left;
}
/*===========================
nav
===========================*/

/*
navi6個の場合
#gnav .gnav li {
	width:183px;
}*/

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



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

.catchcopy {
	font-weight:normal;
	font-size:22px;
	margin-bottom:0.6em;
	letter-spacing: 1px;
	line-height: 1.5em;
}
.sns {
	/* [disabled]float: right; */
}
.sns ul li {
	/* [disabled]display: inline; */
	float: left;
	padding-right: 10px;
}

.topContent1 ul li.pic1 p, .topContent1 ul li.pic2 p {
	width:100%;
	padding:0;
	background-color:rgba(0, 131, 65, 0.8);
	color:#FFF;
	font-size:16px;
	margin-top:52%;
	text-align:center;
}
.topContent2 {
	padding:2em 0;
}
/*===========================
content
===========================*/

/* 1カラム */

.lay1_2 {
	width:100%;
	padding:0 0 1.8em 0;
}
section h3 {
	padding:5px 10px;
	border-bottom:1px dotted #CCC;
	margin-bottom:15px;
	overflow: hidden;
}
/* table */

.nowrap {
	white-space: nowrap;
}
/* 背景画像の上に使うtable */

table.table1 th {
	padding:7px;
	border-bottom: 1px #cccccc solid;
	font-weight:normal;
	text-align:left;
	vertical-align:top;
}
table.table1 td {
	padding:5px;
	border-bottom: 1px #cccccc solid;
	font-weight:normal;
}
/* table1の変更バージョン */

table.table1_2 {
	width:100%;
	background-color: rgba(255, 255, 255, 0.8);
	padding:0 30px 30px 30px;
}
table.table1_2 tr {
}
table.table1_2 th {
	padding:7px;
	border-bottom: 1px #cccccc solid;
	font-weight:normal;
	text-align:left;
}
table.table1_2 td {
	padding:5px;
	border-bottom: 1px #cccccc solid;
	font-weight:normal;
}
/* 幅46％のtable */

table.table2_46p {
	width:46%;
	border-top: 1px #c9d4dc solid;
	border-left: 1px #c9d4dc solid;
	margin-bottom:20px;
	border-collapse: collapse;
}
table.table2_46p th {
	padding:6px 3px 6px 3px;
	border-bottom: 1px #c9d4dc solid;
	border-right: 1px #c9d4dc solid;
	font-weight:bold;
	background-color:#FEFAE9;
	color:#F26D00;
	letter-spacing:0;
	text-align:left;
}
table.table2_46p td {
	padding:4px 3px 4px 3px;
	border-bottom: 1px #c9d4dc solid;
	border-right: 1px #c9d4dc solid;
	font-weight:normal;
	background-color:#FFFFFF;
	letter-spacing:0;
	text-align:center;
}
 table.table2_46p td. table2_46pTdLeft {
 padding:4px 3px 4px 3px;
 border-bottom: 1px #c9d4dc solid;
 border-right: 1px #c9d4dc solid;
 font-weight:normal;
 background-color:#FFFFFF;
 letter-spacing:0;
 text-align:left;
}
/* 幅60％のtable */

table.table2_60p {
	width:60%;
	border-top: 1px #c9d4dc solid;
	border-left: 1px #c9d4dc solid;
	margin-bottom:20px;
	border-collapse: collapse;
}
table.table2_60p th {
	padding:6px 3px 6px 3px;
	border-bottom: 1px #c9d4dc solid;
	border-right: 1px #c9d4dc solid;
	font-weight:bold;
	background-color:#FEFAE9;
	color:#F26D00;
	letter-spacing:0;
}
table.table2_60p td {
	padding:4px 3px 4px 3px;
	border-bottom: 1px #c9d4dc solid;
	border-right: 1px #c9d4dc solid;
	font-weight:normal;
	background-color:#FFFFFF;
	letter-spacing:0;
	text-align:center;
}


/* テーブルを横スクロール */
table {
	width: 100%;
}
/*tableをスクロールさせる*/
/*tableのセル内にある文字の折り返しを禁止*/
.scroll {
	overflow: auto;
	white-space: nowrap;
}

/*tableにスクロールバーを追加*/
.scroll::-webkit-scrollbar {
 height: 5px;
}

/*tableにスクロールバーを追加*/
.scroll::-webkit-scrollbar-track {
 background: #F1F1F1;
}

/*tableにスクロールバーを追加*/
.scroll::-webkit-scrollbar-thumb {
 background: #BCBCBC;
}
/* 2カラム　複数 */

.lay2Plural {
	width:46%;
	float:left;
	margin:0 2% 3em 2%;
	text-align:center;
}
.lay2Plural span {
	text-align: center;
	display: block;
	padding-top: 5px;
}
/* 3カラム　複数 */

.lay3Plural {
	width:29%;
	float:left;
	margin:2em 0 3em 0;
	margin:3% 2%;
	text-align:center;
}
/*===========================
other
===========================*/

.w100 {
	width: 100%;
}
/* table調整 */

.td_center {
	text-align: center;
}
.add1 {
}
.add1 td {
	vertical-align:middle;
}
.add1 th {
	width:30%;
}
th.add3 {
	text-align:left;
}
.add1 th.add3 {
	width:60%;
}
.imgFloatLeft {
	margin:0 15px 10px 0;
	float:left;
}
.imgFloatRight {
	margin:0 0 10px 15px;
	float:right;
}
.hoverAnch 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;
}
/* リスト追加 */


.admit {
	border:2px #c9d4dc solid;
	padding:30px;
}
.admit li {
	float:left;
	width:25%;
	line-height:2.5em
}
.admit li span {
	width:80px;
	display:block;
	float:left;
}
ul.liReseter {
	line-height:1.8em;
	margin-left:15px;
}
ul.liReseter li {
	display:list-item;
	list-style-type: disc;
	list-style-position: outside;
	padding-left:-10px;
}
ul.liReseter2 {
	line-height:1.8em;
	margin:0 0 12px 30px;
}
ul.liReseter2 li {
	display:list-item;
	list-style-type: disc;
	list-style-position: outside;
	padding-left:-10px;
}
ul.liReseterFloat {
	line-height:1.8em;
	margin-left:15px;
}
ul.liReseterFloat li {
	display:list-item;
	list-style-type: disc;
	list-style-position: outside;
	padding-left:-10px;
	float:left;
	padding-right:60px;
}
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;
}
ol.liReseter2 {
	line-height:1.8em;
	margin:0 0 20px 50px;
}
ol.liReseter2 li {
	display:list-item;
	list-style-type:decimal;
	list-style-position: outside;
	padding-left:-10px;
}
ul.checklist {
	margin-left:5px;
	padding-bottom:10px;
}
ul.checklist li {
	list-style-type: none;
	list-style-position: outside;
	padding:0 0 0 30px;
	background-image:url(../img/common/check.png);
	background-position:1px 3px;
	background-repeat:no-repeat;
	line-height:2em;
}
ul.liOrange {
	margin-left:0;
}
ul.liOrange li {
	list-style-type: none;
	list-style-position: outside;
	padding:0 0 0 20px;
	background-image:url(../img/common/clip_li_orange.gif);
	background-position:0px 9px;
	background-repeat:no-repeat;
	line-height:2em;
	font-size:110%;
}
ul.lipink {
	margin-left:0;
}
ul.lipink li {
	list-style-type: none;
	list-style-position: outside;
	padding:0 0 0 20px;
	background-image:url(../img/common/clip_li_large.gif);
	background-position:0px 9px;
	background-repeat:no-repeat;
	line-height:2em;
	font-size:110%;
}

ul.liOrange2 {
	margin:0 0 20px 20px;
}
ul.liOrange2 li {
	list-style-type: none;
	list-style-position: outside;
	padding:0 0 10px 20px;
	background-image:url(../img/common/clip_li_orange.gif);
	background-position:0px 8px;
	background-repeat:no-repeat;
	line-height:2em;
	font-size:110%;
}
ul.liOrangeFlaot {
	margin-left:0;
}
ul.liOrangeFlaot li {
	list-style-type: none;
	list-style-position: outside;
	padding:0 0 0 20px;
	background-image:url(../img/common/clip_li_orange.gif);
	background-position:0px 8px;
	background-repeat:no-repeat;
	float:left;
	padding-right:30px;
}
ul.liKimidoriFlaot {
	margin-bottom:50px;
}
ul.liKimidoriFlaot li {
	list-style-type: none;
	list-style-position: outside;
	padding:0 0 0 20px;
	background-image:url(../img/common/clip_li_kimidori.gif);
	background-position:0px 8px;
	background-repeat:no-repeat;
	float:left;
	padding-right:30px;
}
ul.lipinkFlaot {
	margin-bottom:50px;
}
ul.lipinkFlaot li {
	list-style-type: none;
	list-style-position: outside;
	padding:0 0 0 20px;
	background-image:url(../img/common/clip_li_large.gif);
	background-position:0px 3px;
	background-repeat:no-repeat;
	float:left;
	padding-right:40px;
	margin-bottom:10px;
}
ul.lipinkFlaot li.nomark {
	list-style-type: none;
	list-style-position: outside;
	padding:0 0 0 20px;
	background-image:none;
	background-position:0px 3px;
	background-repeat:no-repeat;
	float:left;
	padding-right:40px;
	margin-bottom:10px;
}
ul.liKimidori {
	margin-bottom:50px;
}
ul.liKimidori li {
	list-style-type: none;
	list-style-position: outside;
	padding:0 0 0 20px;
	background-image:url(../img/common/clip_li_kimidori.gif);
	background-position:0px 8px;
	background-repeat:no-repeat;
	padding-right:10px;
}
ul.liKimidori2 {
	margin:0 0 50px 20px;
}
ul.liKimidori2 li {
	list-style-type: none;
	list-style-position: outside;
	padding:0 0 0 20px;
	background-image:url(../img/common/clip_li_kimidori.gif);
	background-position:0px 8px;
	background-repeat:no-repeat;
	line-height:2em;
	font-size:110%;
}
ul.businessMark {
	margin-bottom:15px;
}
ul.businessMark li {
	list-style-type: none;
	list-style-position: outside;
	padding:2px 0 2px 24px;
	background-image:url(../img/common/li_mark.png);
	background-position:0px 5px;
	background-repeat:no-repeat;
	padding-right:10px;
	color:#1d6215;
	font-size:18px;
}
ul.businessMark li p {
	color:#444444;
	font-size:14px;
	margin-bottom:10px;
}
ul.liOrangeFlaot {
	margin-left:0;
}
ul.liPageAnch li {
	list-style-type: none;
	list-style-position: outside;
	padding:0 0 0 20px;
	background-image:url(../img/common/icn_page_anch.png);
	background-position:0px 8px;
	background-repeat:no-repeat;
	float:left;
	padding-right:30px;
}
/* 特別 */

.ex2 {
	padding-left: 1em; /*1em（1文字）分、右に動かす*/
	text-indent: -1em; /*最初の行だけ1em（1文字）分、左に動かす*/
	line-height:1.3em;
}

.clear {
	clear:both;
}
div.clear {
	height:0px;
	line-height:0;
	font-size:0;
}
 @media screen and (max-width: 768px) { /*　タブレット以下 --------------------------------------------　*/
.admit li {
	float:left;
	width:auto;
	line-height:2.5em;
	min-width:180px;
}
.admit li span {
	width:auto;
	margin-right:1em;
	display:block;
	float:left;
}
/*===========================
general
===========================*/

.dataArea .btn1 {
	display:none;
}
/*===========================
header
===========================*/


header .logo {
	width:80%;
	margin:5px 2px;
	float:none;
	margin-top:0;
	position:absolute;
	left:5px;
	top:5px;
}
header .logo img {
	max-width:200px;
	width:70%;
}
/*Media Queries*/




 .pageTitle {
	width:96%;
	height:3.6em;
	padding:0.5em 2%;
	text-align:center;
}
.pageTitle h1 {
	font-size:2em;
	line-height:2.2em;
	width:100%;
}
.pageTitle h1.h1-ttl {
	margin-top:16px;
	font-size:1.5em;
	line-height:1.3em;
	width:100%;
}
.main h1.h1-ttl {
    padding-left: 1.8em;
    background-position: 0.5em 0.5em;
    width: 90%;
    line-height: 2em;
    -moz-background-size: 18px 18px;
    background-size: 18px 18px;
    font-size: 1.3em;
    margin: 0 auto;
}
/*===========================
top
===========================*/


 .topContent1 ul li.pic1 p, .topContent1 ul li.pic2 p {
	width:100%;
	padding:0;
	background-color:rgba(131, 184, 48, 0.8);
	color:#FFF;
	font-size:16px;
	margin-top:30%;
	text-align:center;
}



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


table.table1 th {
	display: list-item;
	padding: 0;
	border-bottom: none;
	text-align: left;
	font-weight: normal;
	vertical-align: top;
	width: 100%;
	line-height: 1em;
	font-weight:bold;
	color:#F90;
}
/* table1の変更バージョン */

table.table1_2 {
	width: 100%;
	margin: 0 0 3% 0;
	padding: 10px
}
table.table1_2 tr {
	display: block;
}
table.table1_2 th {
	display: list-item;
	padding: 0;
	border-bottom: none;
	text-align: left;
	font-weight: normal;
	vertical-align: top;
	width: 100%;
	line-height: 1em;
	font-weight:bold;
	color:#F90;
}
table.table1_2 td {
	display: list-item;
	width: 100%;
	padding-bottom: 3%;
	margin-bottom: 3%;
	font-weight: normal;
	padding: 5px 0 3% 0;
}
table.table1_2 td.noBottom {
	display: list-item;
	width: 100%;
	padding-bottom: 0;
	margin-bottom: 0;
	font-weight: normal;
	padding: 5px 0 0 0;
	border-bottom:none;
}
/* 幅46％のtable */

table.table2_46p {
	width:100%;
	border-top: 1px #c9d4dc solid;
	border-left: 1px #c9d4dc solid;
	color:#25456d;
	margin-bottom:20px;
}
table.table2_46p th {
	padding:6px 3px 6px 3px;
	border-bottom: 1px #c9d4dc solid;
	border-right: 1px #c9d4dc solid;
	font-weight:bold;
	background-color:#FEFAE9;
	color:#F26D00;
	letter-spacing:0;
	text-align:left;
}
table.table2_46p td {
	padding:4px 3px 4px 3px;
	border-bottom: 1px #c9d4dc solid;
	border-right: 1px #c9d4dc solid;
	font-weight:normal;
	background-color:#FFFFFF;
	letter-spacing:0;
	text-align:left;
}
/* 幅60％のtable */

table.table2_60p {
	width:100%;
	border-top: 1px #c9d4dc solid;
	border-left: 1px #c9d4dc solid;
	color:#25456d;
	margin-bottom:20px;
}
table.table2_60p th {
	padding:6px 3px 6px 3px;
	border-bottom: 1px #c9d4dc solid;
	border-right: 1px #c9d4dc solid;
	font-weight:bold;
	background-color:#FEFAE9;
	color:#F26D00;
	letter-spacing:0;
}
table.table2_60p td {
	padding:4px 3px 4px 3px;
	border-bottom: 1px #c9d4dc solid;
	border-right: 1px #c9d4dc solid;
	font-weight:normal;
	background-color:#FFFFFF;
	letter-spacing:0;
	text-align:center;
}


.main section .lay1.clearfix .wrapper .shell .twenty.gutter img {
	width: 60%;
}

.main section .lay1 .wrapper .shell .thirty.gutter img {
	display: none;
}


/*===========================
inquiry
===========================*/

 .inquiry .forml {
	width: 95%;
}
.inquiry .formm {
	width: 95%;
}
}
 @media screen and (max-width: 320px) {
.smt img {
	height: auto;
	width: 45%;
}
/* 2カラム */

.lay2Plural {
	width:100%;
	float:none;
	margin:2em 0;
}
/* 3カラム */

.lay3Plural {
	width:100%;
	float:none;
	margin:2em 0;
	padding:0;
	border:none;
}
}
a[href^="tel:"] { cursor: default; }
@media screen and (min-width: 768px) {
	a[href^="tel:"] { cursor: default;
	text-decoration:none; }
}

.smttel{
	font-size:1em;
}
.smttel a {
	color:#000;
}
 @media screen and (max-width: 500px) {
	 
	.smttel{
	font-size:1.4em;
} 
	 
 }







/*===========================
グリッド
===========================*/
.shell {
	display: flex;
	flex-direction:row;
	flex-wrap:wrap;
}
.shell.reverse {
	display: flex;
	flex-direction:row-reverse;
	flex-wrap:wrap;
}
.shell.nowrap-x {
	flex-wrap:nowrap;
}
.shell.left {
	justify-content:flex-start;
}
.shell.center, .shell.x-center {
	justify-content:center;
}
.shell.right {
	justify-content:flex-end;
}
.shell.fill, .shell.fill-x, .shell.split {
	justify-content:space-between;
}
.shell.equalize {
	justify-content:space-around;
}
.shell.top {
	align-items:flex-start;
}
.shell.middle, .shell.y-center {
	align-items:center;
}
.shell.baseline {
	align-items:baseline;
}
.shell.bottom {
	align-items:flex-end;
}
.shell > .grow-x {
	flex-grow:1;
}
.stretch, .grow-y {
	align-self:stretch;
}
.solo, .full {
	width:100%;
}
.duo, .half {
	width:50%;
}
.trio, .one-third {
	width:calc(100% / 3);
}
.two-thirds {
width:calc(100% / 3 * 2);
}
.quad, .quarter {
	width:25%;
}
.three-quarters {
	width:75%;
}
.penta, .twenty {
	width:20%;
}
.thirty {
	width:30%;
}
.forty {
	width:40%;
}

.sixty {
	width:60%;
}
.seventy {
	width:70%;
}
.eighty {
	width:80%;
}
.solo.gutter, .full.gutter {
	width:98%;
	margin:1em 1%;
}
.duo.gutter, .half.gutter {
	width:48%;
	margin:1em 1%;
}
.trio.gutter, .one-third.gutter {
	width:calc(94% / 3);
	margin:1em 1%;
}
.two-thirds.gutter {
width:calc(97% / 3 * 2);
	margin:1em 1%;
}
.quad.gutter, .quarter.gutter {
	width:23%;
	margin:1em 1%;
}
.three-quarters.gutter {
	width:73%;
	margin:1em 1%;
}
.penta.gutter, .twenty.gutter {
	width:18%;
	margin:1em 1%;
}
.thirty.gutter {
	width:28%;
	margin:1em 1%;
}
.forty.gutter {
	width:38%;
	margin:1em 1%;
}
.sixty.gutter {
	width:58%;
	margin:1em 1%;
}
.seventy.gutter {
	width:68%;
	margin:1em 1%;
}
.eighty.gutter {
	width:78%;
	margin:1em 1%;
}
.centering {
	text-align:center;
}
.centering > * {
	margin-left:auto !important;
	margin-right:auto !important;
}
/* Universal Padding Class --- as you like */
.pd-around {
	padding:1.5em 1.5em;
}
.pd-side {
	padding:0 1.5em;
}
.pd-top-bottom {
	padding:1.5em 0;
}
.pd-right {
	padding-right:1.5em;
}
.pd-left {
	padding-left:1.5em;
}
/* clearfix --- for use together with legacy float layout */
.clearfix:before, .clearfix:after {
	content: " ";
	display: table;
}
.clearfix:after {
	clear: both;
}
.clearfix {
*zoom: 1;
}
.clear {
	clear: both;
	display: block;
	overflow: hidden;
	visibility: hidden;
	width: 0;
	height: 0;
}
 
/*** Media Query ***/
@media only screen and (max-width: 899px) {
.shell.break900:not(.step) {
	flex-direction:column;
}
.shell.break900 > .solo, .shell.break900 > .full, .shell.break900 > .duo, .shell.break900 > .half, .shell.break900 > .trio, .shell.break900 > .one-third, .shell.break900 > .two-thirds, .shell.break900 > .quad, .shell.break900 > .quarter, .shell.break900 > .three-quarters, .shell.break900 > .penta, .shell.break900 > .twenty, .shell.break900 > .thirty, .shell.break900 > .forty, .shell.break900 > .sixty, .shell.break900 > .seventy, .shell.break900 > .eighty {
	width:100%;
}
.shell.break900 > .solo.gutter, .shell.break900 > .full.gutter, .shell.break900 > .duo.gutter, .shell.break900 > .half.gutter, .shell.break900 > .trio.gutter, .shell.break900 > .one-third.gutter, .shell.break900 > .two-thirds.gutter, .shell.break900 > .quad.gutter, .shell.break900 > .quarter.gutter, .shell.break900 > .three-quarters.gutter, .shell.break900 > .penta.gutter, .shell.break900 > .twenty.gutter, .shell.break900 > .thirty.gutter, .shell.break900 > .forty.gutter, .shell.break900 > .sixty.gutter, .shell.break900 > .seventy.gutter, .shell.break900 > .eighty.gutter {
	width:98%;
	margin:.5em 1%;
}
.shell.step {
	flex-direction:row;
	flex-wrap:wrap;
}
.shell.step > .duo, .shell.step > .half, .shell.step > .trio, .shell.step > .one-third, .shell.step > .two-thirds, .shell.step > .quad, .shell.step > .quarter, .shell.step > .three-quarters, .shell.step > .penta, .shell.step > .twenty, .shell.step > .thirty, .shell.step > .forty, .shell.step > .sixty, .shell.step > .seventy, .shell.step > .eighty {
	width:50%;
}
.shell.step > .duo.gutter, .shell.step > .half.gutter, .shell.step > .trio.gutter, .shell.step > .one-third.gutter, .shell.step > .two-thirds.gutter, .shell.step > .quad.gutter, .shell.step > .quarter.gutter, .shell.step > .three-quarters.gutter, .shell.step > .penta.gutter, .shell.step > .twenty.gutter, .shell.step > .thirty.gutter, .shell.step > .forty.gutter, .shell.step > .sixty.gutter, .shell.step > .seventy.gutter, .shell.step > .eighty.gutter {
	width:48%;
	margin:1em 1%;
}
}
 
/* Mobile Single Column ( like 7-10 inch Tablet ) */
@media only screen and (max-width: 768px) {
.container, .wide-container {
	padding:0 0.3em;
} /* as you like */
.shell.break768:not(.step) {
	flex-direction:column;
}
.shell.break768 > .solo, .shell.break768 > .full, .shell.break768 > .duo, .shell.break768 > .half, .shell.break768 > .trio, .shell.break768 > .one-third, .shell.break768 > .two-thirds, .shell.break768 > .quad, .shell.break768 > .quarter, .shell.break768 > .three-quarters, .shell.break768 > .penta, .shell.break768 > .twenty, .shell.break768 > .thirty, .shell.break768 > .forty, .shell.break768 > .sixty, .shell.break768 > .seventy, .shell.break768 > .eighty {
	width:100%;
}
.shell.break768 > .solo.gutter, .shell.break768 > .full.gutter, .shell.break768 > .duo.gutter, .shell.break768 > .half.gutter, .shell.break768 > .trio.gutter, .shell.break768 > .one-third.gutter, .shell.break768 > .two-thirds.gutter, .shell.break768 > .quad.gutter, .shell.break768 > .quarter.gutter, .shell.break768 > .three-quarters.gutter, .shell.break768 > .penta.gutter, .shell.break768 > .twenty.gutter, .shell.break768 > .thirty.gutter, .shell.break768 > .forty.gutter, .shell.break768 > .sixty.gutter, .shell.break768 > .seventy.gutter, .shell.break768 > .eighty.gutter {
	width:98%;
	margin:.5em 1%;
}
.shell:not(.keep) > .solo, .shell:not(.keep) > .full, .shell:not(.keep) > .duo, .shell:not(.keep) > .half, .shell:not(.keep) > .trio, .shell:not(.keep) > .one-third, .shell:not(.keep) > .two-thirds, .shell:not(.keep) > .quad, .shell:not(.keep) > .quarter, .shell:not(.keep) > .three-quarters, .shell:not(.keep) > .penta, .shell:not(.keep) > .twenty, .shell:not(.keep) > .thirty, .shell:not(.keep) > .forty, .shell:not(.keep) > .sixty, .shell:not(.keep) > .seventy, .shell:not(.keep) > .eighty {
	width:100%;
	margin:0;
}
.shell:not(.keep) > .solo.gutter, .shell:not(.keep) > .full.gutter, .shell:not(.keep) > .duo.gutter, .shell:not(.keep) > .half.gutter, .shell:not(.keep) > .trio.gutter, .shell:not(.keep) > .one-third.gutter, .shell:not(.keep) > .two-thirds.gutter, .shell:not(.keep) > .quad.gutter, .shell:not(.keep) > .quarter.gutter, .shell:not(.keep) > .three-quarters.gutter, .shell:not(.keep) > .penta.gutter, .shell:not(.keep) > .twenty.gutter, .shell:not(.keep) > .thirty.gutter, .shell:not(.keep) > .forty.gutter, .shell:not(.keep) > .sixty.gutter, .shell:not(.keep) > .seventy.gutter, .shell:not(.keep) > .eighty.gutter,.lay2Plural {
	width:98%;
	margin:.5em 1%;
}
.shell.step {
	flex-direction:row;
	flex-wrap:wrap;
}
.shell.step > .duo, .shell.step > .half, .shell.step > .trio, .shell.step > .one-third, .shell.step > .two-thirds, .shell.step > .quad, .shell.step > .quarter, .shell.step > .three-quarters, .shell.step > .penta, .shell.step > .twenty, .shell.step > .thirty, .shell.step > .forty, .shell.step > .sixty, .shell.step > .seventy, .shell.step > .eighty {
	width:50%;
}
.shell.step > .duo.gutter, .shell.step > .half.gutter, .shell.step > .trio.gutter, .shell.step > .one-third.gutter, .shell.step > .two-thirds.gutter, .shell.step > .quad.gutter, .shell.step > .quarter.gutter, .shell.step > .three-quarters.gutter, .shell.step > .penta.gutter, .shell.step > .twenty.gutter, .shell.step > .thirty.gutter, .shell.step > .forty.gutter, .shell.step > .sixty.gutter, .shell.step > .seventy.gutter, .shell.step > .eighty.gutter {
	width:48%;
	margin:1em 1%;
}
.shell.keep-half:not(.keep), .shell.keep-half:not(.keep) {
	flex-direction:row;
}
.shell.keep-half:not(.keep) > .solo, .shell.keep-half:not(.keep) > .full, .shell.keep-half:not(.keep) > .duo, .shell.keep-half:not(.keep) > .half, .shell.keep-half:not(.keep) > .trio, .shell.keep-half:not(.keep) > .one-third, .shell.keep-half:not(.keep) > .two-thirds, .shell.keep-half:not(.keep) > .quad, .shell.keep-half:not(.keep) > .quarter, .shell.keep-half:not(.keep) > .three-quarters, .shell.keep-half:not(.keep) > .penta, .shell.keep-half:not(.keep) > .twenty, .shell.keep-half:not(.keep) > .thirty, .shell.keep-half:not(.keep) > .forty, .shell.keep-half:not(.keep) > .sixty, .shell.keep-half:not(.keep) > .seventy, .shell.keep-half:not(.keep) > .eighty {
	width:50%;
}
.shell.keep-half:not(.keep) > .solo.gutter, .shell.keep-half:not(.keep) > .full.gutter, .shell.keep-half:not(.keep) > .duo.gutter, .shell.keep-half:not(.keep) > .half.gutter, .shell.keep-half:not(.keep) > .trio.gutter, .shell.keep-half:not(.keep) > .one-third.gutter, .shell.keep-half:not(.keep) > .two-thirds.gutter, .shell.keep-half:not(.keep) > .quad.gutter, .shell.keep-half:not(.keep) > .quarter.gutter, .shell.keep-half:not(.keep) > .three-quarters.gutter, .shell.keep-half:not(.keep) > .penta.gutter, .shell.keep-half:not(.keep) > .twenty.gutter, .shell.keep-half:not(.keep) > .thirty.gutter, .shell.keep-half:not(.keep) > .forty.gutter, .shell.keep-half:not(.keep) > .sixty.gutter, .shell.keep-half:not(.keep) > .seventy.gutter, .shell.keep-half:not(.keep) > .eighty.gutter {
	width:48%;
	margin:1em 1%;
}
/* Universal padding class --- as you like */
    .pd-around {
	padding:1.5em 1.5em;
}
.pd-side {
	padding:0 1.5em;
}
.ttal {
	text-align:left !important;
}
}
.box-sd {
    padding: 2rem;
    background-color: #fff;
    border: 1px solid #999;
    box-sizing: border-box;
}


@media only screen and (max-width: 768px) {
.box-sd {
    padding: 1.2rem;
    box-sizing: border-box;
}

}

/* 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;
}
}
.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) {
.wd40,.wd50,.wd60,.wd70,.wd80,.wd85,.wd90,.wd95{
   width:100% !important;
   margin:auto;
}

}


.p-ttl01 {
   font-weight:900;
   font-size:1.1em;
   padding-bottom:5px;
   padding-left:10px;
   border-bottom:1px solid #EC797C;
   color:#EC797C;
   
}
.catch02 {
  line-height:1.6;
  color:#F03;
  font-weight:800;
  font-size:1.6em;
}
@media only screen and (max-width: 768px) {
.catch02 {
  font-size:1.2em;
}

}
/*===========================
spacer
===========================*/


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

@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;
}
}
ol.circle_num {
    counter-reset: number;
    list-style-type: none!important;
    padding: 0em 1em;
}
ol.circle_num li {
    border-bottom: dashed 1px #69A35A;
    position: relative;
    padding: 0.5em 0.5em 0.5em 40px;
    line-height: 1.3em;
    font-size: 1.1em;
    width: 90%;
    display:inline-block;
    margin-right: 10px;
    margin-left: 10px;
	margin-bottom:10px;
}
ol.circle_num li:before {
    position: absolute;
    counter-increment: number;
    content: counter(number);
    display: inline-block;
    background: #ec676a;
    color: white;
    font-family: 'Avenir', 'Arial Black', 'Arial', sans-serif;
    font-weight: bold;
    font-size: 15px;
    border-radius: 50%;
    left: 0;
    width: 25px;
    height: 25px;
    line-height: 25px;
    text-align: center;
    top: 50%;
    -moz-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
.pl1 {
	padding-left:2em;
}
.b-wrap {
    overflow:hidden;
}
.pc-disp {
    display:block;
}
.sp-disp {
    display:none; 
}
@media only screen and (max-width: 768px) {
.pc-disp {
    display:none;
}
.sp-disp {
    display:block; 
}
}
@media only screen and (max-width: 350px) {
.main h1.h1-ttl {
    padding-left: 1.8em;
    background-position: 0.5em 0.5em;
    width: 90%;
    line-height: 2.2em;
    -moz-background-size: 18px 18px;
    background-size: 18px 18px;
    font-size: 1.1em;
    margin: 0 auto;
}
}
