@charset "utf-8";
.material-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  vertical-align: middle;
  display: inline-block;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  padding: 0 2px;

  /* Support for all WebKit browsers. */
  -webkit-font-smoothing: antialiased;
  /* Support for Safari and Chrome. */
  text-rendering: optimizeLegibility;

  /* Support for Firefox. */
  -moz-osx-font-smoothing: grayscale;

  /* Support for IE. */
  font-feature-settings: 'liga';
}
.g-icons{
	position: relative;
	padding-left: 25px;
}
.g-icons:before{
	display: block;
	position: absolute;
	left: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	z-index: 10;
	width: 20px;
	height: 20px;
	font-family: 'Material Icons';
	font-weight: normal;
	font-style: normal;
	font-size: 20px;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	color: #828282;
	vertical-align: middle;

	/* Support for all WebKit browsers. */
	-webkit-font-smoothing: antialiased;
	/* Support for Safari and Chrome. */
	text-rendering: optimizeLegibility;

	/* Support for Firefox. */
	-moz-osx-font-smoothing: grayscale;

	/* Support for IE. */
	font-feature-settings: 'liga';
}

.icon_phone a{
	padding: 0 5px 0 5px;
	font-size: 1.313em;
	font-weight: 700;
	color: #46A8E7 !important;
}
.icon_phone:before{
	content: "settings_phone";
	font-size: 30px;
	width: 30px;
	height: 30px;
	color: #46A8E7;
}

img.icon{
	vertical-align: middle;
	margin: 0 1.5px;
}
/*list
************************************************************************************/
ul.disc{
	list-style: disc;
	margin-left: 1em;
}
ul.disc li{
	margin-bottom: .7em;
}

ul.ar li{
	background: url("../../img/common/ar_circle_blue.svg")no-repeat left .5em;
	background-size: 18px auto;
	padding: .15em 0 .1em 25px;
	margin: 0 0 .3em;
}
@media screen and (max-width: 599px) {
	ul.ar li{
		background: url("../../img/common/ar_circle_blue.svg")no-repeat left .3em;
		background-size: 18px auto;
	}
}

/*number circle*/
ol.number{
	counter-reset:number;
	list-style:none;
	margin:0;
	padding:0;
}

ol.number li{
	margin: 1em 0;
	background: none;
	padding: 0;
	list-style-type: none;
}

ol.number li:before {
	counter-increment: number;
	content: counter(number);
	float: left;
	background: #eba135;
	width: 2.0em;
	height: 2.0em;
	border-radius: 50%;
	color: #fff;
	text-align: center;
	line-height: 2.0;
	margin: 0 7px 0 0;
}
ol.number li p,
ol.number li div{
	overflow: auto;
	zoom: 1;
	margin: 0 !important;
	padding: 0 !important;
}


/*text
************************************************************************************/
.textCenter{
	text-align:center;
}
.textCenter img{
	max-width: 100%;
	height: auto;
}
img.w70{
	max-width: 70%;
	height: auto;
}
.textRight{
 text-align:right;
}
.textLeft{
 text-align:left;
}
.smidashi{
	font-weight: bold;
	font-size: 17px;
	color: #ce4040;
}
.bold{
	font-weight: 700;
}
.red{color:#d80808;}
ul.baselink{}
span.br{}
a.tel{}
span.spbr{}
span.nowrap{ white-space: nowrap; }

@media screen and (min-width: 1024px){
	span.br{
		display: block;
		text-indent: -9999;
		font-size: 0;
	}
	a.tel{
		pointer-events: none;
		cursor: default;
		text-decoration: none;
		color: #000;
	}
}
@media screen and (max-width: 1024px){
	span.spbr{
		display: block;
		text-indent: -9999;
		font-size: 0;
	}
}

/*clearfix
************************************************************************************/
.clearfix:after {
    content: "";
    display: block;
    clear: both;
    height: 1px;
    overflow: hidden;
}
* html .clearfix{
    height: 1em;
}
.clearfix{
    display: block;
}
*:first-child+html .clearfix{
	zoom:1;
}


/*layout parts
************************************************************************************/
.layout_grid{
	display: grid;
	grid-template-columns: 2fr 3fr;
	grid-template-rows: auto;
	column-gap: 20px;
	row-gap: 20px;
	align-items: stretch;
}
.layout_box{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	-webkit-justify-content: left;
	justify-content: left;
}
.layout_box.center{
	-webkit-justify-content: center;
	justify-content: center;
}
.layout_box .caption{
	text-align: center;
	margin: 0 0 5px 0;
	padding: 0;
}
.layout_box .image{
	text-align: center;
	margin: 0 0 5px 0;
	padding: 0;
}
.layout_box .image img{
	max-width: 100%;
	height: auto;
	border-radius: 5px;
}
_:-ms-lang(x)::-ms-backdrop, .layout_box .image img{
	width: 100%;
	height: auto;
}
.box-pd-all{
	padding: 20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.box-pd-space{
	padding: 0 7px 7px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.box-pd{
	padding: 0 20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.box-mr{
	margin: 20px 0;
}
.box-sh{
	box-shadow:0px 0px 10px #ccc;
	-moz-box-shadow:0px 0px 10px #ccc;
	-webkit-box-shadow:0px 0px 10px #ccc;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.box-line{
	border-right: 1px solid #CCC;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.box-boxline{
	border: 1px solid #666;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.box-item100{
	width: 99%;
	margin: 0.5%;
}
.box-item85{
	width: 84%;
	margin: 0.5%;
}
.box-item80{
	width: 79%;
	margin: 0.5%;
}
.box-item75{
	width: 74%;
	margin: 0.5%;
}
.box-item70{
	width: 69%;
	margin: 0.5%;
}
.box-item66{
	width: 65%;
	margin: 0.5%;
}
.box-item60{
	width: 59%;
	margin: 0.5%;
}
.box-item50{
	width: 49%;
	margin: 0.5%;
}
.box-item40{
	width: 39%;
	margin: 0.5%;
}
.box-item33{
	width: 32.3%;
	margin: 0.5%;
}
.box-item30{
	width: 29%;
	margin: 0.5%;
}
.box-item25{
	width: 24%;
	margin: 0.5%;
}
.box-item20{
	width: 19%;
	margin: 0.5%;
}
.box-item15{
	width: 14%;
	margin: 0.5%;
}
@media screen and (max-width: 768px){
.btns.layout_box{
	display: block;
}
.btns.layout_box .box-item100,
.btns.layout_box .box-item85,
.btns.layout_box .box-item80,
.btns.layout_box .box-item75,
.btns.layout_box .box-item70,
.btns.layout_box .box-item66,
.btns.layout_box .box-item60,
.btns.layout_box .box-item50,
.btns.layout_box .box-item40,
.btns.layout_box .box-item33,
.btns.layout_box .box-item30,
.btns.layout_box .box-item25,
.btns.layout_box .box-item20,
.btns.layout_box .box-item15{
	width: 99%;
	margin: 0.5%;
}
}

/*JSまわり
************************************************************************************/
/*slideup down
----------------------------------------------------------------------*/
/*.viewopen-ttl:before{
	content: "▼";
}
.viewopen-ttl:after{
	content: "開く";
}

.viewopen-ttl.active:before{
	content: "▲";
}
.viewopen-ttl.active:after{
	content: "閉じる";
}*/

/*accordion
----------------------------------------------------------------------*/
.viewopen-ttl:after{
	width: 30px;
	height: 30px;
	display: inline-block;
	vertical-align: middle;
	content: " ＋"
}
.viewopen-ttl.active:after{
	content: " ―";
}
.viewopen-content{}

/*animation
----------------------------------------------------------------------*/

a.move-ar,
span.move-ar{
	display: inline-block;
	position: relative;
	padding-right: 30px;
	vertical-align: middle;
}
a.move-ar:after,
span.move-ar:after{
	content: "arrow_right";
	display: block;
	position: absolute;
	right: 0px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	z-index: 10;
	width: 30px;
	height: 30px;
	font-family: 'Material Icons';
	font-weight: normal;
	font-style: normal;
	font-size: 30px;	/* Preferred icon size */
	line-height: 30px;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	color: #0fa0c4;

	/* Support for all WebKit browsers. */
	-webkit-font-smoothing: antialiased;
	/* Support for Safari and Chrome. */
	text-rendering: optimizeLegibility;

	/* Support for Firefox. */
	-moz-osx-font-smoothing: grayscale;

	/* Support for IE. */
	font-feature-settings: 'liga';
}
@media screen and (min-width: 980px) {
	a.move-ar:after,
	span.move-ar:after{
		-webkit-transition: all .3s ease-in-out;
		-moz-transition: all .3s ease-in-out;
		-o-transition: all .3s ease-in-out;
		transition: all .3s ease-in-out;
	}
	a.move-ar:hover,
	span.move-ar:hover{
		color: #979797;
	}
	a.move-ar:hover:after,
	span.move-ar:hover:after{
		right: -7px;
	}
}

