/* General Rules
   ---------------------------------------------------------------------------*/

.breadcrumb {
  font-size: 12px;
    background: none;
    border-radius: 0;
    padding: 15px 0;
	margin-bottom: 0;
}
.breadcrumb > li + li:before {
    content: "＞";
}
.breadcrumb a {
  color: #909090;
}
.breadcrumb a:active,
.breadcrumb a:focus,
.breadcrumb a:hover {
  color: #af1e23;
}
ul, ol {
	padding-left: 20px;
	text-align: left;
}


dl.dl-horizontal {
	margin: 10px 0 20px;
}
.dl-horizontal dt {
	/*font-size:13px;*/
	font-weight:normal;
	text-align: left;
	width: auto;
}
@media (max-width: 767px) {
	.dl-horizontal dt {
    margin-bottom: 7px;
    font-weight: bold;
    color: #000;
	}
}
.dl-horizontal dd {
	margin: 0 0 10px 0;
	padding: 0 0 10px 0;
	text-align:left;
	border-bottom: thin dotted #ccc;
}
.dl-horizontal-rewrite dt {
  font-weight: bold;
}
@media (min-width: 768px) {
	.dl-horizontal dd {
		padding-left: 180px;
	}
	.dl-horizontal-rewrite dd {
		padding-left: 120px;
	}
}
/*@media (min-width: 1200px) {
	.dl-horizontal-rewrite dd {
    margin-bottom: 10px;
		padding-bottom: 10px;
	}
}*/

.dl-horizontal dd a {
	color: #206aea;
}
.dl-horizontal dd a:hover {
	color: #99ccff;
}
.dl-horizontal dd a:avtive {
	color: #104db6;
}

@media (min-width: 768px) and (max-width: 991px) {
	.sm-img-half {
    width: 50%;
	}
}
@media (max-width: 767px) {
	.xs-img-half img {
    width: 50%;
	}
	.xs-img-half {
    width: 50%;
	}
	.xs-img-60 {
    width: 60%;
	}
}

div.valign-middle {
  display: flex;
  align-items: center;
}
div.valign-flex-end {
  display: flex;
  align-items: flex-end;
}


/* YouTube Video */
.youtube {
    position: relative;
    padding-bottom: 57%;
    padding-top: 25px;
    height: 0;
    overflow: hidden;
}
.youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: thin solid #CCCCCC;
}

 
/* Layout Styles
   ---------------------------------------------------------------------------*/
   
 body {
	font-family: -apple-system, "Helvetica Neue", "Hiragino Kaku Gothic ProN", "メイリオ", meiryo, sans-serif;
	/*color: #333;*/
	background-color: #fff;
 }
 .wrapper {
	margin-top: 210px;
 }
@media (max-width:991px) {
	.wrapper {
		margin-top: 180px;
	}
} 
@media (max-width:767px) {
	.wrapper {
		margin-top: 125px;
	}
}
 /*#mainContent {
	padding-bottom: 20px;
 }*/
.container {
  box-sizing: border-box;
}

/*clearfix*/
.cf:before,
.cf:after {
    content: " ";
    display: table;
}
.cf:after {
    clear: both;
}
.cf {
    *zoom: 1;
}

@media (max-width: 767px) {
	.xs-mb0 {margin-bottom: 0 !important;}
}
.m0 {margin: 0 !important;}

.mt0 {margin-top: 0 !important;}
.mt5 {margin-top: 0.5em !important;}
.mt10 {margin-top: 1em !important;}
.mt15 {margin-top: 1.5em !important;}
.mt20 {margin-top: 2em !important;}
.mt30 {margin-top: 3em !important;}
.mt40 {margin-top: 4em !important;}
.mt50 {margin-top: 5em !important;}
.mt60 {margin-top: 6em !important;}

.mb0 {margin-bottom: 0 !important;}
.mb5 {margin-bottom: 0.5em !important;}
.mb10 {margin-bottom: 1em !important;}
.mb15 {margin-bottom: 1.5em !important;}
.mb20 {margin-bottom: 2em !important;}
.mb30 {margin-bottom: 3em !important;}
.mb40 {margin-bottom: 4em !important;}
.mb50 {margin-bottom: 5em !important;}
.mb60 {margin-bottom: 6em !important;}

.pt0 {padding-top: 0 !important;}
.pt5 {padding-top: 0.5em !important;}
.pt10 {padding-top: 1em !important;}
.pt15 {padding-top: 1.5em !important;}
.pt20 {padding-top: 2em !important;}
.pt30 {padding-top: 3em !important;}
.pt40 {padding-top: 4em !important;}
.pt50 {padding-top: 5em !important;}
.pt60 {padding-top: 6em !important;}

.pb0 {padding-bottom: 0 !important;}
.pb5 {padding-bottom: 0.5em !important;}
.pb10 {padding-bottom: 1em !important;}
.pb15 {padding-bottom: 1.5em !important;}
.pb20 {padding-bottom: 2em !important;}
.pb30 {padding-bottom: 3em !important;}
.pb40 {padding-bottom: 4em !important;}
.pb50 {padding-bottom: 5em !important;}
.pb60 {padding-bottom: 6em !important;}

.mr0 {margin-right: 0 !important;}
.pr0 {padding-right: 0 !important;}
.pr5 {padding-right: 5px !important;}
.pr10 {padding-right: 10px !important;}
.pr15 {padding-right: 15px !important;}
.pr20 {padding-right: 20px !important;}

.pl0 {padding-left: 0 !important;}
.pl5 {padding-left: 5px !important;}
.pl10 {padding-left: 10px !important;}
.pl20 {padding-left: 20px !important;}

.TextLeft {text-align: left !important;}
.TextRight {text-align: right !important;}
.TextCenter {text-align: center !important;}

.Text06em {font-size: .6em !important;}
.Text07em {font-size: .7em !important;}
.Text08em {font-size: .8em !important;}
.Text2em {font-size: 2em !important;}
.Text3em {font-size: 3em !important;}
.Text4em {font-size: 4em !important;}

.Text10 {font-size: 10px !important;}
.Text11 {font-size: 11px !important;}
.Text12 {font-size: 12px !important;}
.Text13 {font-size: 13px !important;}
.Text14 {font-size: 14px !important;}
.Text16 {font-size: 16px !important;}
.Text18 {font-size: 18px !important;}
.Text21 {font-size: 21px !important;}
.Text24 {font-size: 24px !important;}
.Text30 {font-size: 30px !important;}
.Text40 {font-size: 40px !important;}
.Text1em {font-size: 1em !important;}
.Text2em {font-size: 2em !important;}
.Text3em {font-size: 3em !important;}


.no-padding {
	padding: 0 !important;
}
.no-padding-BothSides {
	padding-right: 0 !important;
	padding-left: 0 !important;
}
.no-padding-right {
	padding-right: 0 !important;
}
.no-margin {
	margin: 0 !important;
}


.pull-right {
  float: right !important;
}

.TextBold,.bold{font-weight: bold !important;}
.TextNormal {font-weight: normal !important;}

.TextWhite {color: #fff !important;}
.TextBlack {color: #000 !important;}
.TextLBlue {color: #0099ff !important;}
.TextBlue {color: #217fc4 !important;}
.TextNBlue {color: #1d4871 !important;}
.TextDBlue {color: #003366 !important;}
.TextLRed {color: #ff2600 !important;}
.TextRed {color: #cc0000 !important;}
.TextGreen {color: #82bd00 !important;}
.TextDGreen {color: #395219 !important;}
.TextOrange {color: #ff9900 !important;}
.TextDOrange {color: #ff6600 !important;}
.TextlightOrange {color: #fabd03 !important;}
.TextlightGray {color: #ccc !important;}
.TextMincho {
	font-family:  "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
}

.lh1 {line-height: 1em;}
.lh16 {line-height: 1.6em;}
.lh18 {line-height: 1.8em;}
.lh20 {line-height: 2.0em;}
.ls-1 {letter-spacing: -1px !important;}


.vh-100 {
    height: 100vh;
	height: 100dvh;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    font-weight: bold;
	/*line-height: 1.3;*/
}
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
    margin-bottom: 20px;
    margin-top: 0px;
}
h1 {
    font-size: 40px;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 5px;
	line-height: 0.7;
}
h1 span {
    font-size: 16px;
    font-weight: normal;
    margin: 0;
	color: #fff;
    /* text-align: center; */
}
h2 {
    font-size: 2.4em;
}
h3 {
    font-size: 1.4em;
    font-weight: 700;
    letter-spacing: 1px;
    margin: 0;
	line-height: 1;
}
h3 span {
    font-size: 1.2rem;
    font-weight: bold;
    margin: 0;
}
@media (min-width: 769px) {
	h3  {
		font-size: 1.8em;
	}
	h3 span {
		font-size: 1.4rem;
	}
}
h4 {
    font-size: 1.1rem;
    font-weight: 700;
    margin: 0;
	line-height: 1.6;
}
.nowrap {
  white-space: nowrap;
}
/*h3:after {
  width: 100px;
  height: 0;
  margin-left: -30px;
  content: "";
  position: absolute;
  top: 60px;
  left: 50%;
  border-top: dashed 1px #999;
}*/
h5 {
    font-size: .8rem;
}
@media (min-width: 769px) {
	h5  {
		font-size: 1rem;
	}
}
h6 {
  font-size: 1.2em;
  text-align: left;
}


.vh-100 {
    height: 100vh;
	height: 100dvh;
}
.mouse {
    position: absolute;
    width: 22px;
    height: 42px;
    left: 50%;
	/*bottom: 15px;*/
    margin-left: -12px;
    border-radius: 15px;
    border: 2px solid #202020;
    -webkit-animation: intro 1s;
    animation: intro 1s;
}
.vertical-center {
    display: flex;
    align-items: center;
    justify-content: center;
}
#page-hero {
	margin-top: 70px;
	padding: 90px 0;
}
.Semi-self-register {
	font-size: 15px;
}
@media (min-width: 769px) {
	.Semi-self-register  {
		font-size: 22px;
	}
}
.RunningCosts{
	padding: 5px 0;
	background-color:#ff00cc;
	color:#ffffff;
	border-radius: 20px;
	text-align: center;
	font-size: 18px;
}
@media (min-width: 769px) {
	.col2 {
		margin-top: 7rem;
	}
}
.img-thumbnail {
    border-radius: 0;
    padding: 5px;
}
.clear {
	clear: both;
}
p.lead {
	line-height: 1.8;
}
.center {
	margin: 0 auto;
}

.section-red {
    background-color: #cc0000;
}
.section-green {
    background-color: #eff7e3;
}

/*lightboxカスタマイズ*/
.lb-outerContainer {
    background-color: rgba(255,255,255,0);
}
.lightbox .lb-image {
  border: none;
}

.bg-white {
	background: #fff;
}

#page-merit  {
	padding: 30px 0 20px;
	/*background-color: #e5e5e5;
	color: #000;*/
}
#page-merit h2 {
	padding: 0;
	letter-spacing: inherit;
	font-size: 2.2em;
	border: none;
}
@media (min-width: 768px) {
	#page-merit h2 {
		margin: 20px 0 17px;
		height: 85px;
	}
}
#page-merit .inner {
	padding: 15px 10px;
    border: 4px solid #cc6600;
	border-radius: 10px;
}
#page-merit .inner p {
	margin: 0;
	font-size: 14px;
	color: #000;
}
#page-merit .inner img {
	margin-bottom: 10px !important;
}

.feature-box-image-2 img {
    width: 120px;
    top: calc(50% - 60px);
    position: absolute;
}
.feature-box-image-2 .text {
	padding: 30px 10px;
    padding-left: 60px;
    margin-left: 70px;
}
@media (min-width: 769px) {
	.feature-box-image-2 .text {
		height: 170px;
	}
}
.feature-box-image-2 h3 {
	text-indent: -1em;
	padding-left: 1em;
	font-size: 1.4em;
	/*display: block;*/
}
.feature-box-image-2 h3:first-letter {
	font-size: 1.6em;
	color: var(--primary-color);
}
@media (max-width: 768px) {
	.feature-box-image-2 h3 {
		font-size: 1.4em;
	}
}

#page-operate h3 span {
	font-size: 1.6em;
	vertical-align: middle;
	color: var(--primary-color);
	font-weight: bold;
}

.feature-box-image-2 {
    position: relative;
    margin-bottom: 30px;
}
.feature-box-image-2 img {
    width: 160px;
    top: calc(50% - 80px);
    position: absolute;
}
.feature-box-image-2 .text {
	padding: 20px 10px;
    padding-left: 60px;
    margin-left: 120px;
	background: rgba(255, 255, 255, .3);
}
/*.feature-box-image-2 h3:first-letter {
	font-size: 1.6em;
	color: var(--primary-color);
}*/
@media (min-width: 769px) {
	.feature-box-image-2 .text {
		height: 190px;
	}
}

#page-settlement  {
	padding: 30px 0 20px;
	/*background-color: #e5e5e5;
	color: #000;*/
}


.accordion-header {
	margin: 0;
	padding: 0;
	display: block;
}
.accordion-button  {
	width: 100%;
}


#page-closing h1, #page-closing h5 {
/*color: #000 !important;*/
}
ol {
  counter-reset: my-counter;
  list-style: none;
  padding: 0;
  margin: 0;
}
ol li {
  font-size: 1.25rem;
  line-height: 1.5;
  padding-left: 30px;
  position: relative;
}
ol li:before {
  content: counter(my-counter);
  counter-increment: my-counter;
  background-color: #333;
  border: 1px solid;
  border-radius: 50%;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 22px;
  width: 22px;
  color: #ffffff;
  font-size: 85%;
  line-height: 1;
  position: absolute;
  top: 5px;
  left: 0;
}
.colorbox-link {
   cursor: zoom-in;
}
.accordion-button:not(.collapsed) {
    color: var(--bs-accordion-active-color);
    background-color: #f1fae1;
    box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);
}



.settlement__list {
    margin: -10px -5px 0px;
}
ul, ol {
    margin: 0;
    padding: 0;
    list-style: none;
}
ol {
	font-size: 1.25rem;
	font-weight: bold;
	line-height: 1.7;
}
.settlement__list > li {
    display: inline-block;
    margin: 10px 5px 0;
}
.table th {
	padding: 14px 20px;
	white-space: nowrap;
	vertical-align: middle;
	background-color: #f3f2ee;


}
.table td {
	padding: 14px 20px;
}

@media (max-width: 767px) {
	.table th ,.table td {
		display: block;
		width: 100%;
	}
}


#page-Installation h1 {
	padding: 0;
	letter-spacing: inherit;
	font-size: 2.2em;
	border: none;
}
#page-Installation h2 {
	margin-bottom: 10px;
	padding: 0;
	letter-spacing: inherit;
	font-size: 1.4em;
	color: #000;
	border: none;
}
#page-Installation h3 {
	margin-bottom: 15px;
	display: inline-block;
	vertical-align: middle;
}
#page-Installation h3 span {
	font-size: 1.6em;
	vertical-align: middle;
	color: var(--primary-color);
	font-weight: bold;
}
#page-Installation p {
	padding: 0;
	text-align: left;
	letter-spacing: inherit;
	width: 100%;
}
.feature-box-image-3 {
    position: relative;
    margin-bottom: 30px;
}
.feature-box-image-3 img {
    width: 160px;
    top: calc(50% - 80px);
    position: absolute;
}
.feature-box-image-3 .text {
	padding: 20px 10px;
    padding-left: 60px;
    margin-left: 120px;
	background: rgba(255, 255, 255, .3);
}
/*.feature-box-image-3 h3:first-letter {
	font-size: 1.6em;
	color: var(--primary-color);
}*/
@media (min-width: 769px) {
	.feature-box-image-3 .text {
		height: 190px;
	}
}

/*会社概要*/

dl.dl-horizontal {
	margin: 10px 0 20px;
}
.dl-horizontal dt {
	/*font-size:13px;*/
	font-weight:normal;
	text-align: left;
	width: auto;
}
@media (min-width: 768px) {
	.dl-horizontal dt {
		float: left;
	}
}
@media (max-width: 767px) {
	.dl-horizontal dt {
    margin-bottom: 7px;
    font-weight: bold;
    color: #ffcc00;
	}
}
.dl-horizontal dd {
	margin: 0 0 20px 0;
	padding: 0 0 20px 0;
	text-align:left;
	border-bottom: thin dotted #ccc;
}
.dl-horizontal-rewrite dt {
  font-weight: bold;
}
@media (min-width: 768px) {
	.dl-horizontal dd {
		padding-left: 200px;
	}
	.dl-horizontal-rewrite dd {
		padding-left: 120px;
	}
}
/*@media (min-width: 1200px) {
	.dl-horizontal-rewrite dd {
    margin-bottom: 10px;
		padding-bottom: 10px;
	}
}*/

.dl-horizontal dd a {
	color: #206aea;
}
.dl-horizontal dd a:hover {
	color: #99ccff;
}
.dl-horizontal dd a:avtive {
	color: #104db6;
}


/*問い合わせフォーム*/
.form-group {
	margin-bottom: 15px;
	text-align: left;
}
label {
	padding: 10px 0 0;
}
#contact-check label {
	padding: 0;
}
.form-gray-fields .form-control {
    background-color: #e8edf0;
    border-color: #e9e9e9;
    color: #333;
}
.form-control {
    border: 1px solid #eeeeee;
    background: #ffffff;
}
.form-control {
    box-shadow: none;
    border-radius: 0;
}
select {
	vertical-align:middle;
}
select::-ms-expand {
	display: none;
}
.select-box {
	width: 100%;
	margin: 0;
	padding: 0;
	background-color: #e9e9e9;
}
.select-box select {
	width: 100%;
	padding: 10px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 1px solid #999;
	background: #eee;
	background: url(../contact/images/arrow-select.png) right 50% no-repeat, linear-gradient(to bottom, #fff 0%,#ccc 100%);
	background-size: 20px, 100%;
}
input[type=checkbox] {
    margin-right: 10px;
    -ms-transform: scale(1.5, 1.5);
    -webkit-transform: scale(1.5, 1.5);
    transform: scale(1.5, 1.5);
}
p.notepp {
}
#contact ol {
	font-size: 14px;
	padding-left: 15px;
	margin-bottom: 40px;
	font-weight: normal;
	list-style: decimal;
}
#contact ol li {
	padding-left: 5px;
	font-size: 14px;
}
#contact ol li:before {
    content: none;
}

#contact h6 {
	color: #fff;
}
h5.contact {
	padding: 0 !important;
	margin: 0!important;
	height: auto !important;
  text-align: left;
	text-decoration: none;
	background: none !important;
}
textarea.input-lg {
    height: auto;
    padding: 5px 10px;
}
#contact .btn {
    padding: 10px 40px;
    border-radius: 40px;
    border: 2px solid;
}
.btn-primary {
    background-color: var(--primary-color);
    border-color: #164ca1;
}
.btn.btn-primary:hover {
    background: var(--primary-color);
	opacity: 0.7;
}
.fa {
	margin-bottom: 0;
	font-size: 21px;
	line-height: 1.5;
	vertical-align: middle;
}







.btn-point55 {
  color: #fff;
  background-color: #82bd00;
  border-color: #71a401;
}

.zoomin_cursor {
  cursor: zoom-in;
}
.zoomin {
	overflow: hidden;	/*拡大時にはみ出た部分を隠す*/
	margin: 5px 0;
	border: 8px solid #FFFFFF;
  position: relative;
}
.zoomin img {
	display: block;
	transition-duration: 0.3s;	/*変化に掛かる時間*/
}
.zoomin img:hover {
	transform: scale(1.1);	/*画像の拡大率*/
	transition-duration: 0.3s;	/*変化に掛かる時間*/
}

/* ページ内アンカー位置調整 */
.anchor{
	padding-top:100px;
	margin-top:-100px;
}
.BoxedArticle {
	margin: 20px 0 50px;
	padding: 40px 50px;
	border: 20px solid #E8EDF0;
}
@media (max-width: 767px) {
	.BoxedArticle {
    padding: 15px;
	}
}
.BoxedArticle h3 {
	margin: 0 0 30px;
	font-size: 1.6em;
	text-align: center;
	line-height: 1;
}
.BoxedArticle2 {
	margin: 0;
	padding: 30px;
	border: 1px solid #d9d9d9;
  background-color: #fff;
  height: 100%;
}

.normal-box {
	margin: 0;
	padding: 2em;
	background-color: #fafafa;
	border: thin solid #CCCCCC;
}
.normal-box ul, .normal-box ol {
	margin-bottom: 0;
}
.normal-box ul li, .normal-box ol li {
	margin-bottom: 8px;
  font-size: 16px;
}
.normal-box ul li:last-child, .normal-box ol li:last-child {
	margin-bottom: 0;
}
.normal-box p {
	margin: 0 !important;
}
.normal-box p.head {
	margin-bottom: 20px !important;
  font-size: 16px;
  font-weight: bold;
}
.normal-box p.note {
	margin-top: 20px !important;
  font-size: 12px;
}



/* Bootstrap 480pxのブレイクポイント追加
   ---------------------------------------------------------------------------*/


/* .row の左右のネガティブマージンを0にする */
.row--nopadding {
  margin-left: 0;
  margin-right: 0;
}

/* .row--nopadding の中にあるカラムの左右のパディングを0にする */
.row--nopadding > [class*="col-"] {
  padding-left: 0;
  padding-right: 0;
}

/* [+] col-xxs- */
.col-xxs-1, .col-xxs-2, .col-xxs-3, .col-xxs-4, .col-xxs-5, .col-xxs-6, .col-xxs-7, .col-xxs-8, .col-xxs-9, .col-xxs-10, .col-xxs-11, .col-xxs-12 {
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    position: relative;
}
@media (max-width: 479px) {
    .col-xxs-1, .col-xxs-2, .col-xxs-3, .col-xxs-4, .col-xxs-5, .col-xxs-6, .col-xxs-7, .col-xxs-8, .col-xxs-9, .col-xxs-10, .col-xxs-11, .col-xxs-12 {
        float: left;
    }
    .col-xxs-12 {
        width: 100%;
    }
    .col-xxs-11 {
        width: 91.66666667%;
    }
    .col-xxs-10 {
        width: 83.33333333%;
    }
    .col-xxs-9 {
        width: 75%;
    }
    .col-xxs-8 {
        width: 66.66666667%;
    }
    .col-xxs-7 {
        width: 58.33333333%;
    }
    .col-xxs-6 {
        width: 50%;
    }
    .col-xxs-5 {
        width: 41.66666667%;
    }
    .col-xxs-4 {
        width: 33.33333333%;
    }
    .col-xxs-3 {
        width: 25%;
    }
    .col-xxs-2 {
        width: 16.66666667%;
    }
    .col-xxs-1 {
        width: 8.33333333%;
    }
    .col-xxs-pull-12 {
        right: 100%;
    }
    .col-xxs-pull-11 {
        right: 91.66666667%;
    }
    .col-xxs-pull-10 {
        right: 83.33333333%;
    }
    .col-xxs-pull-9 {
        right: 75%;
    }
    .col-xxs-pull-8 {
        right: 66.66666667%;
    }
    .col-xxs-pull-7 {
        right: 58.33333333%;
    }
    .col-xxs-pull-6 {
        right: 50%;
    }
    .col-xxs-pull-5 {
        right: 41.66666667%;
    }
    .col-xxs-pull-4 {
        right: 33.33333333%;
    }
    .col-xxs-pull-3 {
        right: 25%;
    }
    .col-xxs-pull-2 {
        right: 16.66666667%;
    }
    .col-xxs-pull-1 {
        right: 8.33333333%;
    }
    .col-xxs-pull-0 {
        right: auto;
    }
    .col-xxs-push-12 {
        left: 100%;
    }
    .col-xxs-push-11 {
        left: 91.66666667%;
    }
    .col-xxs-push-10 {
        left: 83.33333333%;
    }
    .col-xxs-push-9 {
        left: 75%;
    }
    .col-xxs-push-8 {
        left: 66.66666667%;
    }
    .col-xxs-push-7 {
        left: 58.33333333%;
    }
    .col-xxs-push-6 {
        left: 50%;
    }
    .col-xxs-push-5 {
        left: 41.66666667%;
    }
    .col-xxs-push-4 {
        left: 33.33333333%;
    }
    .col-xxs-push-3 {
        left: 25%;
    }
    .col-xxs-push-2 {
        left: 16.66666667%;
    }
    .col-xxs-push-1 {
        left: 8.33333333%;
    }
    .col-xxs-push-0 {
        left: auto;
    }
    .col-xxs-offset-12 {
        margin-left: 100%;
    }
    .col-xxs-offset-11 {
        margin-left: 91.66666667%;
    }
    .col-xxs-offset-10 {
        margin-left: 83.33333333%;
    }
    .col-xxs-offset-9 {
        margin-left: 75%;
    }
    .col-xxs-offset-8 {
        margin-left: 66.66666667%;
    }
    .col-xxs-offset-7 {
        margin-left: 58.33333333%;
    }
    .col-xxs-offset-6 {
        margin-left: 50%;
    }
    .col-xxs-offset-5 {
        margin-left: 41.66666667%;
    }
    .col-xxs-offset-4 {
        margin-left: 33.33333333%;
    }
    .col-xxs-offset-3 {
        margin-left: 25%;
    }
    .col-xxs-offset-2 {
        margin-left: 16.66666667%;
    }
    .col-xxs-offset-1 {
        margin-left: 8.33333333%;
    }
    .col-xxs-offset-0 {
        margin-left: 0;
    }
}
/* [+] hidden-xxs */
@media (max-width: 479px) {
    .hidden-xxs {
        display: none !important;
    }
}
/* [+] visible-xxs and visible-xxs- */
.visible-xxs {
    display: none !important;
}
.visible-xxs-block,
.visible-xxs-inline,
.visible-xxs-inline-block {
    display: none !important;
}
@media (max-width: 479px) {
    .visible-xxs {
        display: block !important;
    }
    table.visible-xxs {
        display: table;
    }
    tr.visible-xxs {
        display: table-row !important;
    }
    th.visible-xxs,
    td.visible-xxs {
        display: table-cell !important;
    }
    .visible-xxs-block {
        display: block !important;
    }
    .visible-xxs-inline {
        display: inline !important;
    }
    .visible-xxs-inline-block {
        display: inline-block !important;
    }
}



/* Bootstrap gutter
   ---------------------------------------------------------------------------*/

/*カラム落ち調整.rowにFlexboxを当てる*/
.flex {
	/*display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;*/
	display: flex;
	/*-webkit-flex-wrap: wrap;*/
	flex-wrap: wrap;
}

/*gridのgutter調整*/
.row-0 {
  margin-left: 0px;
  margin-right: 0px;
}
.row-0 > div {
  padding-right: 0px;
  padding-left: 0px;
}
.row-10 {
  margin-left: -5px;
  margin-right: -5px;
}
.row-10 > div {
  padding-right: 5px;
  padding-left: 5px;
}
.row-20 {
  margin-left: -10px;
  margin-right: -10px;
}
.row-20 > div {
  padding-right: 10px;
  padding-left: 10px;
}
.row-30 {
  margin-left: -15px;
  margin-right: -15px;
}
.row-30 > div {
  padding-right: 15px;
  padding-left: 15px;
}
.row-40 {
  margin-left: -20px;
  margin-right: -20px;
}
.row-40 > div {
  padding-right: 20px;
  padding-left: 20px;
}
.row-50 {
  margin-left: -25px;
  margin-right: -25px;
}
.row-50 > div {
  padding-right: 25px;
  padding-left: 25px;
}
.row-20 {
  margin-left: -10px;
  margin-right: -10px;
}
/*.row-0::before, .row-0::after,
.row-10::before, .row-10::after,
.row-20::before, .row-20::after,
.row-30::before, .row-30::after,
.row-40::before, .row-40::after,
.row-50::before, .row-50::after {
    content: " ";
    display: table;
}*/
.row-0::after,
.row-10::after,
.row-20::after,
.row-30::after,
.row-40::after,
.row-50::after {
    clear: both;
}


/* 5カラムレイアウト
   ---------------------------------------------------------------------------*/

.col-xs-1-5, .col-sm-1-5, .col-md-1-5, .col-lg-1-5,
.col-xs-2-5, .col-sm-2-5, .col-md-2-5, .col-lg-2-5,
.col-xs-3-5, .col-sm-3-5, .col-md-3-5, .col-lg-3-5,
.col-xs-4-5, .col-sm-4-5, .col-md-4-5, .col-lg-4-5 {
    position: relative;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px;
}   
.col-xs-1-5 {
    width: 20%;
    float: left;
}
.col-xs-2-5 {
    width: 40%;
    float: left;
}

.col-xs-3-5 {
    width: 60%;
    float: left;
}

.col-xs-4-5 {
    width: 80%;
    float: left;
}
@media (min-width: 768px) {
    .col-sm-1-5 {
        width: 20%;
        float: left;
    }
    .col-sm-2-5 {
        width: 40%;
        float: left;
    }
    .col-sm-3-5 {
        width: 60%;
        float: left;
    }
    .col-sm-4-5 {
        width: 80%;
        float: left;
    }
}
@media (min-width: 992px) {
    .col-md-1-5 {
        width: 20%;
        float: left;
    }
    .col-md-2-5 {
        width: 40%;
        float: left;
    }
    .col-md-3-5 {
        width: 60%;
        float: left;
    }
    .col-md-4-5 {
        width: 80%;
        float: left;
    }
}
@media (min-width: 1200px) {
    .col-lg-1-5 {
        width: 20%;
        float: left;
    }
    .col-lg-2-5 {
        width: 40%;
        float: left;
    }
    .col-lg-3-5 {
        width: 60%;
        float: left;
    }
    .col-lg-4-5 {
        width: 80%;
        float: left;
    }
}   




/* Bootstrap拡張：センタリンググリッドシステム
   ---------------------------------------------------------------------------*/


.row-center{
text-align:center;
letter-spacing:-0.4em;
}
.row-center > [class*='col-'] {
display:inline-block;
letter-spacing:0;
vertical-align:top;
float:none !important;
}

/* 天地中央揃え */
.row-center.va-middle > [class*='col-'] {
vertical-align:middle;
}
/* 下揃え */
.row-center.va-bottom > [class*='col-'] {
vertical-align:bottom;
}


/* Slit Slider
   ---------------------------------------------------------------------------*/
   
.demo-2 {
	margin-top: 210px;
} 
@media (max-width:991px) {
	.demo-2 {
		margin-top: 180px;
	}
} 
@media (max-width:767px) {
	.demo-2 {
		margin-top: 125px;
	}
}
.demo-2 .sl-slider-wrapper {
	height: 600px;
}
@media (max-width:991px) {
	.demo-2 .sl-slider-wrapper {
		height: 450px;
	}
}
@media (max-width:767px) {
	.demo-2 .sl-slider-wrapper {
		height: 300px;
	}
}
/*.demo-2, .wrapper {
	margin-top: 210px;
}
@media (max-width: 991px) {
	.demo-2, .wrapper {
		margin-top: 180px;
	} 
}
@media (max-width: 767px) {
	.demo-2, .wrapper {
		margin-top: 125px;
	} 
}*/

.demo-1 .sl-slide .deco,
.demo-2 .sl-slide .deco {
  width: 200px;
}
.demo-1 .sl-slide .main-title,
.demo-2 .sl-slide .main-title {
  color: #000;
  font-size: 3.4em;
}
@media (max-width:991px) {
	.demo-1 .sl-slide .main-title,
  .demo-2 .sl-slide .main-title {
		font-size: 2.4em;
	}
}
/*@media (max-width:830px) {
  .slide-container .slide-content {
    padding: 0 3%;
  }
}*/
@media (max-width:767px) {
	.demo-1 .sl-slide .main-title,
  .demo-2 .sl-slide .main-title {
		font-size: 1.6em;
	}
  .slide-container .slide-content {
    padding: 0 3%;
  }
}
.demo-1 .sl-slide blockquote p,
.demo-2 .sl-slide blockquote p {
  color: #0054a7;
  font-size: 2em;
  font-weight: 600;
  text-shadow : 
       4px  4px 2px #ffffff,
      -4px  4px 2px #ffffff,
       4px -4px 2px #ffffff,
      -4px -4px 2px #ffffff,
       4px  0px 2px #ffffff,
       0px  4px 2px #ffffff,
      -4px  0px 2px #ffffff,
       0px -4px 2px #ffffff; 
}
@media (max-width:991px) {
	.demo-1 .sl-slide blockquote p,
  .demo-2 .sl-slide blockquote p {
		font-size: 1.6em;
	}
  .demo-1 .sl-slide .deco,
  .demo-2 .sl-slide .deco {
    width: 160px;
  }
}
@media (max-width:767px) {
	.demo-1 .sl-slide blockquote p,
  .demo-2 .sl-slide blockquote p {
		font-size: 1.2em;
	}
  .demo-1 .sl-slide .deco,
  .demo-2 .sl-slide .deco {
    width: 100px;
  }
}
.demo-1 .sl-slide .sl-slide-inner, .demo-2 .sl-slide .sl-slide-inner {
    background-position: center center;
}
#slideshow {
    position: relative;
}
#slideshow:after {
	content: " ";
	display: table;
}
#slideshow .slidePerson,
#slideshow .slideBuild,
#slideshow .copy,
#slideshow img  {
	position: absolute !important;
	width: 100%;
	height: auto;
	left: 0 !important;
	top: 0 !important;
}
#slideshow img {
	background-color: transparent !important;
}
#slideshow .copy {
    z-index: 1020;
}
.section-shade {
	/*padding-top: 11em;*/
}
.section-title .small-space {
    margin: 0;
}
.header-section {
	padding-top: 20px;
}
.header-section p.lead {
padding-bottom: 20px;
}
@media (max-width:767px) {
	.header-section {
		padding-top: 70px;
	}
}


/* navbar
   ---------------------------------------------------------------------------*/


#header {
	background-color: #1f252c;
	box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .2);
}
#headerItem{
	/*float: right;*/
	padding: 3px 0;
}
@media (min-width: 768px) {
	#headerItem {
		/*float: right;*/
	}
}
#headerNav{
	padding: 5px 0;
}
#headerNav ul{
	list-style: none;
}
#headerNav ul li{
	display: inline-block;
	font-size: 11px;
	padding-top: 8px;
}
#headerNav ul li:not(:last-child)::after {
    content: "　｜　";
}
#headerNav ul li a{
	color: #666;
}
#headerNav ul li a:hover{
	color: #999;
	text-decoration: none;
}
#searchHead {
    float: left;
    /*width: 260px;*/
    margin: 3px 0;
    text-align: right;
}

.yamm .yamm-fw {
    position: static;
}
/*.yamm .yamm-content {
    padding: 20px 30px 30px;
}*/


.header_top_inner {
	padding: 20px 0;
}
@media (max-width: 991px) {
	.header_top_inner {
		padding: 10px 0 !important;
	}
}

.navbar-brand {
    padding: 15px 0 15px 15px;
		height: auto;
}
.navbar .navbar-brand > img {
  transition: all .4s;
  max-height: 60px;
}
/*.navbar-light {
    background: none;
    border: none;
}*/
.navbar-light > .container {
	background: #ffffff none repeat scroll 0 0;
	padding: 0 40px;
}
.header_top {
	font-size: 13px;
	background-color: #3d4957;
	/*padding: 15px 0 !important;*/
	/*border-right: thin solid #d9d9d9;
	border-left: thin solid #d9d9d9;
	border-bottom: thin solid #F2F2F2;*/
}
@media (min-width: 991px) {
	.header_top {
		/*padding: 15px !important;*/
	}
}
.header_top_inner .description {
	float: left;
}
@media (max-width: 767px) {
	.header_top_inner .description {
		display: none;
	}
}
.header_top_inner .description img {
  margin-top: 5px;
  padding-top: 5px;
	max-height: 55px;
}
.header_top_inner .description p {
	padding: 5px 0 0 8px;
	white-space: nowrap;
}
.header_top_inner .description a {
	color: #333;
}

.header_to_innerp .header_contact {
	float: right;
	/*width: 200px;*/
	margin: 0;
	/*right: 290px;*/
}
.header_nav {
	margin: 0;
	float: right;
	display: block;
	/*right: 90px;*/
}
header.clone #mainmenu a.btn {
	margin: 10px 5px 0 0;
padding:  10px 5px 10px ;
	line-height:25px;
}

/*ナビメニューをタブレットでもスマホ表示*/
@media(min-width:768px) {
	.navbar-header {
		display: none;
	}
	.navbar-nav {
    	float: none;
    	margin: 0;
		display: table;
		width: 100%;
	}
	.navbar-nav > li {
    	display: table-cell;
    	float: none;
    vertical-align: middle;
	}
}

.nav .open > a,
.nav .open > a:hover,
.nav .open > a:focus {
  border: none;
}

/* 問い合わせリンクナビ*/
.navbar-nav > li.nav-contact {
  background-color: #ff9900;
	vertical-align: middle;
}
.navbar-nav > li.nav-contact:hover {
	opacity: 0.7;
}
.navbar-nav > li.nav-contact a {
	color: #fff !important;
	/*font-weight: normal;*/
	/*padding-top: 25px;*/
}
.navbar-nav > li.nav-contact a:hover {
	color: #fff;
}
@media (max-width: 767px) {
	.navbar-nav > li.nav-contact a {
		padding: 20px 0 20px 10px;
	}
}



.widget .sidenav {
	border-bottom: 1px solid #e5e5e5;
}
.widget .sidenav:first-of-type {
	border-top: 1px solid #e5e5e5;
}
.sidenav a {
	padding: 15px 10px 15px 20px;
	display: block;
	color: #000;
	background-color: #f2f2f2;
}
.sidenav a:hover,
.sidenav a.active {
	color: #fff;
	background-color: #82bd00;
}


#HeaderTitle {
	background-image: url(../images/top/mainvisual.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}
.bgshade {
    background-color: rgba(0,0,0,0.4);
}
#HeaderTitle h1 {
	margin: 0;
	color: #82bd00;
	text-align: center;
	font-size: 2.3em;
	font-weight: bold;
	font-feature-settings : "palt";
}
#HeaderTitle h1 span {
	display: block;
	font-family: "Work Sans",serif;
	font-size: 0.4em;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 1px;
  color: #ccc;
}
#HeaderTitle p {
	margin: 10px 0 0 !important;
	color: #fff;
	text-align: center !important;
	font-size: 1.6em;
	font-weight: normal;
  line-height: 1.3 !important;
	font-feature-settings : "palt";
}



/* Top Page
   ---------------------------------------------------------------------------*/
 


/* Main Visual  -----------------*/

.demo-2, .wrapper {
	margin-top: 220px;
}
@media (max-width: 991px) {
	.demo-2, .wrapper {
		margin-top: 200px;
	} 
}
@media (max-width: 767px) {
	.demo-2, .wrapper {
		margin-top: 125px;
	} 
}
/* メインビジュアル高さ */
.demo-2 .sl-slider-wrapper {
	height: 760px;
}
@media (max-width:1199px) {
	.demo-2 .sl-slider-wrapper {
		height: 700px;
	}
}
@media (max-width:991px) {
	.demo-2 .sl-slider-wrapper {
		height: 600px;
	}
}
@media (max-width:767px) {
	.demo-2 .sl-slider-wrapper {
		height: 300px;
	}
}


.mainvisual .container-wrapper {
  padding: 30px 50px;
  color: #000;
  background:rgba(255,255,255,0.7);
}
.mainvisual h2 {
	margin: 0;
	padding: 0;
	width: auto;
	font-weight: bold;
	text-align: left;
  line-height: 1.2;
	color: #fff;
	/*text-shadow: 0px  0px 3px #333,0px  0px 3px #333,
    -0px  0px 3px #333,0px -0px 3px #333;*/
}
.mainvisual h2 span {
}
.mainvisual h3 {
  margin: 0 0 0.5em;
  font-weight: normal;
	text-align: left;
  color: #fff;
  line-height: 1.5;
  display: block;
  font-size: 1.6em;
  /*text-shadow:
    5px  0px 10px #fff,0px  5px 10px #fff,
    -5px  0px 10px #fff,0px -5px 10px #fff;*/
}
/* メインビジュアルコピー */
.mainvisual h2 {
  margin-bottom: 10px;
	font-size: 4.8em;
}
/*.mainvisual h2 span {
  font-size: .4em;
}*/
@media (max-width: 1199px) {
	.mainvisual h2 {
		font-size: 3.6em;
	} 
}
@media (max-width: 991px) {
	.mainvisual h2 {
    font-size: 3em;
	}
  .mainvisual .container-wrapper {
    padding: 15px;
	}
	.mainvisual h3 {
		font-size: 1.4em;
	}
	.mainvisual {
		font-size: 12px;
	}
}
@media (max-width: 767px) {
	.mainvisual h2 {
    top: 20px;
    line-height: 1.2;
	}
	.mainvisual h3 {
		font-size: 1.2em;
	}
}
@media (max-width: 480px) {
	.mainvisual h2 {
    top: 20px;
		font-size: 2.1em;
    line-height: 1.2;
	}
	.mainvisual h3 {
		font-size: 1.2em;
	}
}





.cover-img {
  height: 760px;
  display: table;
  width: 100%;
  background-size: cover;
}
/*@media  (min-width: 1500px) {
  .cover-img {
    height: 800px;
  }
}*/
@media (max-width: 1199px) {
  .cover-img {
    height: 700px;
  }
}
@media (max-width: 991px) {
  .cover-img {
    height: 700px;
  }
}
@media (max-width:991px) {
  .cover-img {
    height: 500px;
  }
}
@media (max-width:767px) {
  .cover-img {
    padding-top: 20px;
    padding-bottom: 20px;
    height: auto;
  }
}
.cover-text {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}




/* 画像を自動で切り替え */
.cardimg {
  position: relative;
}
.cardimg img {
  animation-name: cardimg;
  animation-duration: 15s;  /* 全体の秒数 */
  animation-iteration-count: infinite;
  opacity: 0;
}
.cardimg .img1 {
  display: block;
  margin: 0 auto;
}
.cardimg .img2 {
  animation-delay:3s;  /* 2枚目の表示時間 */
  position: absolute;
  top: 0;
  left: 0;
}
.cardimg .img3 {
  animation-delay:6s;  /* 3枚目の表示時間 */
  position: absolute;
  top: 0;
  left: 0;
}
.cardimg .img4 {
  animation-delay:9s;  /* 4枚目の表示時間 */
  position: absolute;
  top: 0;
  left: 0;
}
.cardimg .img5 {
  animation-delay:12s;  /* 5枚目の表示時間 */
  position: absolute;
  top: 0;
  left: 0;
}
@keyframes cardimg {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  20% {
    opacity: 1;
  }
  30% {
    opacity: 0;
  }
  40% {
    opacity: 0;
  }
}

@media (max-width:767px) {
  .cardimg {
    padding-top: 15px;
  }
  .cardimg .img1 {
    width: 70%;
  }
  .cardimg .img2, .cardimg .img3, .cardimg .img4, .cardimg .img5 {
    margin: auto;
    width: 70%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
  }
}



/*
.mainvisual {
  position: relative;
  max-height:70vh;
}

.mainvisual img.mainvisual-logo {
    margin-bottom: 0;
    width: 240px;
}
@media (max-width: 767px) {
	.mainvisual img.mainvisual-logo {
		width: 150px;
	} 
}
.mainvisual h2 {
	position: absolute;
	top: 50px;
	right: 8vw;
	margin: 0;
	padding: 0;
	width: auto;
	font-size: 4em;
	font-weight: bold;
	text-align: left;
	color: #fff;
	text-shadow: 0px  0px 3px #333,0px  0px 3px #333,
    -0px  0px 3px #333,0px -0px 3px #333;
}
.mainvisual h2 span {
  margin-top: 15px;
  font-size: .4em;
  font-weight: bold;
  color: #000;
  line-height: 1.5;
  display: block;
  text-shadow:
    5px  0px 10px #fff,0px  5px 10px #fff,
    -5px  0px 10px #fff,0px -5px 10px #fff;
}
@media (max-width: 1199px) {
}
@media (max-width: 991px) {
}
.mainvisual img {
  width: 100%;
  max-height:760px;
  object-fit: cover;
}
.mainvisual img.mainvisual-logo {
  margin-bottom: 10px;
  width: 200px;
}
@media (max-width: 767px) {
	.mainvisual img.mainvisual-logo {
		width: 120px;
	} 
}
.mainvisual .container-wrapper {
  padding: 30px 60px;
	position: absolute;
	top: 470px;
  left: 50%;
  width: 90%;
  color: #000;
  max-width: 1170px;
  transform: translateX(-50%);
  background:rgba(255,255,255,0.7);
}
@media (max-width: 1199px) {
  .mainvisual {
  }
	.mainvisual h2 {
    top: 40px;
		font-size: 3em;
    line-height: 1.5;
	} 
	.mainvisual .container-wrapper {
		top: 380px;
	} 
}
@media (max-width: 991px) {
	.mainvisual h2 {
    top: 30px;
		font-size: 2.4em;
    line-height: 1.3;
	}
	.mainvisual .container-wrapper {
    padding: 15px;
		top: 290px;
	}
	.mainvisual .container-wrapper h3 {
    margin-bottom: 10px;
		font-size: 1.6em;
	}
	.mainvisual .container-wrapper p {
		font-size: 12px;
	}
}
@media (max-width: 767px) {
	.mainvisual h2 {
    top: 20px;
    line-height: 1.2;
	}
  .mainvisual {
    max-height:25vh;
  }
}
@media (max-width: 480px) {
	.mainvisual h2 {
    top: 20px;
		font-size: 1.6em;
    line-height: 1.2;
	} 
  .mainvisual {
    max-height:18vh;
  }
}


.mainvisual img.deco {
  width: 200px;
  position: absolute;
  top: 50px;
  left: 8vw;
}*/




/* 下層ページヘッダビジュアル */
.headerBackground {
	padding: 130px 0 30px;
}
@media (max-width: 991px) {
	.headerBackground {
		padding: 130px 0 30px;
	} 
}
@media (max-width: 767px) {
	.headerBackground {
		padding: 85px 0 10px;
	}
}

/* Main Visual  -----------------*/

.introbox {
  position: relative;
  margin: 2em 0;
  padding: 2em 1.5em;
  border: solid thin #cc0000;
  border-radius: 5px;
  width: 100%;
}
.introbox h3 {
  text-align: center;
  position: absolute;
  right: 0;
  left: 0;
  top: -0.6em;
  font-size: 1.2em;
}
.introbox h3 span{
  padding: 0 1em;
  background: #f2f2f2;
}
.introbox .inner{
}
.introbox ul {
  margin: 0;
  text-align: left;
}
.introbox p {
  margin: 0; 
  padding: 0;
  text-align: left;
}


/* jquery.marquee  -----------------*/

.articleTtl {
	padding: 20px;
  line-height: 1;
  color: #002e79;
  display: inline-block;
  white-space: nowrap;
	background-color: #b4c8e8;
	border-top: thin solid #002e79;
	border-bottom: thin solid #002e79;
	border-left: thin solid #002e79;
}
ul.marquee {
	/* required styles */
	display: inline-block;
	padding: 20px;
	margin: 0;
	list-style: none;
	line-height: 1;
	position: relative;
	overflow: hidden;
	/* optional styles for appearance */
	width: 100%;
	border-top: thin solid #002e79;
	border-bottom: thin solid #002e79;
	border-right: thin solid #002e79;
}

ul.marquee li {
	/* required styles */
	position: absolute;
	top: -999em;
	left: 0;
	display: block;
	white-space: nowrap; /* keep all text on a single line */
	/* optional styles for appearance */
	padding: 20px;
  line-height: 1;
}
#top-info article {
	display: flex;
}


/* top_business  -----------------*/

#top-business table {
  text-align: left;
}
#top-business table,
#top-business table th,
#top-business table td {
  border-color: #ccc;
}
#top-business table th {
  padding: 8px 15px;
  text-align: center;
  font-weight: normal;
  white-space: nowrap;
}
#top-business table tr {
  background-color: #fffef5;
}
#top-business thead tr {
  background-color: #f2f2f2;
}
#top-business table tr.rewritecard {
  /*background-color: #fffde8;*/
}
#top-business table tr.qrcard {
  /*background-color: #e7f6fd;*/
}
#top-business table tr.cliniccard {
  /*background-color: #eef6e4;*/
}
#top-business table tr.prepaidcard {
  /*background-color: #fde9f1;*/
}
#top-business table tr.memberscard {
  /*background-color: #d5e2f2;*/
}
#top-business table td.nowrap {
  white-space: nowrap;
}
#top-business table td.centercenter {
  text-align: center;
  vertical-align: middle;
}
#top-business table td.vamiddle {
  vertical-align: middle;
}
#top-business .box h3 {
  margin: 0 0 10px; 
  padding: 0;
  color: #cc0000;
}
#top-business .box p {
  font-size: 1.5em;
  font-weight: normal;
}
#top-business .box img {
  padding-top: 20px;
  width: 85%;
}


#support h3 {
  
}
@media (max-width: 991px){
  #support h3 {
    font-size: 2.4em;
  }
}
@media (max-width: 767px){
  #support h3 {
    font-size: 1.8em;
  }
}


.linksicn {
  margin-right: 20px;
  width: 95px;
  display: block;
  float: left;
}
.box-strength {
  padding: 30px;
  margin: 0;
  color: #2c2c2f;
  background: #e4f0ff;
  border: double 3px #5989cf;
}
.box-strength h3 {
  font-size: 1.8em;
  font-weight: bold;
}
@media (min-width: 992px) and (max-width: 1199px){
  .linksicn {
    width: 70px;
    margin: 0 auto 15px;
    float: none;
  }
  .box-strength h3 {
    text-align: center !important;
  }
}
@media (min-width: 768px) and (max-width: 991px){
  .box-strength h3 {
    font-size: 2em !important;
    text-align: center !important;
  }
}
@media (max-width: 767px){
  .linksicn {
    margin: 0 auto 15px;
    float: none;
  }
  .box-strength h3 {
    text-align: center;
    font-size: 2.6em !important;
  }
}



.memobox {
  margin: 10px;
  padding: 2em;
  background-color: #fffce2;
  border: dashed 2px #ffcc00;
  box-shadow: 0 0 0 10px #fffce2;
}
.memobox-title {
  margin-bottom: .5em;
  font-size: 1.8em;
  font-weight: bold;
  color: #ffc107;
}
.memobox-title:before {
  margin-right: .2em;
  font-family: FontAwesome;
  content: "\f303";
}
.memobox ul {
  padding-left: 0;
  font-size: 1.2em;
  list-style: none;
}
.memobox ul li {
  position: relative;
  margin-bottom: .5em;
  padding: 0 0 .2em 1.5em;
}
.memobox ul li:before {
  margin-right: .5em;
  font-family: FontAwesome;
  content: '\f0a4'; /* アイコンのunicode */
  color: #ffc107;
  position: absolute;
  left: 0;
}

.memobox2 {
  margin: 10px;
  padding: 1.8em;
  background-color: #fffce2;
  border: dashed 2px #ff0000;
  box-shadow: 0 0 0 10px #fffce2;
}
.memobox2-title {
  margin-bottom: 10px;
  font-size: 2.1em;
  font-weight: bold;
  color: #ff0000;
}
.memobox2-title:before {
  margin-right: .2em;
  font-family: FontAwesome;
  content: "\f09d";
}
.memobox2 h4 {
  margin-bottom: 5px !important;
  font-size: 2.5rem !important;
  font-weight: 500;
}
.memobox2 ul {
  padding-left: 0;
  font-size: 0.9em;
  list-style: none;
}
.memobox2 ul li {
  position: relative;
  margin-bottom: .5em;
  padding: 0 0 .2em 1.5em;
  font-size: 16px;
}
.memobox2 ul li:before {
  margin-right: .5em;
  font-family: FontAwesome;
  content: '\f0a4'; /* アイコンのunicode */
  color: #ff0000;
  position: absolute;
  left: 0;
}
@media (max-width: 1199px) {
  .memobox2 h4 {
     font-size: 2rem !important;
  }
}
@media (max-width: 767px){
  .memobox2-title {
    font-size: 1.6em;
  }
  .memobox2 h4 {
    font-size: 1.5em !important;
  }
}


.trick ul {
  padding-left: .5em;
  list-style: none;
}
.trick ul li {
  position: relative;
  padding: 0 0 .2em 1.5em;
  margin: 0;
}
.trick ul li:before {
  margin-right: .5em;
  font-family: FontAwesome;
  content: '\f0a4'; /* アイコンのunicode */
  color: #999;
  position: absolute;
  left: 0;
}


#links div.BoxedArticle2:hover {
  opacity: 0.8;
}
#links h4, .links h4 {
  margin-bottom: 1em;
  font-size: 1.4em;
  height: 80px;
}
@media (max-width: 767px){
  #links h4, .links h4 {
    font-size: 1.2em;
    height: auto;
  }
  #links .btn-lg {
    font-size: 15px;
  }
}
#links h4 small {
  font-size: .7em;
}
.btn-links {
  color: #000;
  font-size: 24px;
  font-weight: bold;
  line-height: 1;
  background-color: #fff;
  border: none;
}
.btn-links span {
  font-size: 16px;
  font-weight: normal;
}
.box-rewritecard {
  background-color: #51a670;
}
.box-qrcard {
  background-color: #e37e3b;
}
.box-prepaidcard {
  background-color: #f9bf39;
}
.box-cliniccard {
  background-color: #36599e;
}
.box-memberscard {
  background-color: #447eab;
}



#qsc h6 {
  font-size: .9em;
  font-weight: normal;
  text-align: center;
}
@media (max-width: 1199px){
  #qsc h6 {
    font-size: .8em;
  }
}
@media (max-width: 767px){
  #qsc h6 {
    font-size: .8em;
  }
}



.icon-content {
    font-size: 2.4em;
    height: 60px;
    line-height: 60px;
    width: 60px;
}



/* Lower Contents ---------------------------------------------------------------------------*/


.img-rotate90 {
  transform: rotate(-90deg);
}
.promo {
	border-left: 5px solid #82bd00;
	margin: 3em 0;
	padding: 15px 18px;
	position: relative;
	background-color: #36404d;
}
.promo h3 {
	font-size: 19px;
	font-weight: 500;
	line-height: 24px;
	padding-bottom: 0;
	margin: 0;
	color: #FFFFFF;
  text-align: left;
}
.promo2 {
	border-left: 5px solid #82bd00;
	margin: 3em 0;
	padding: 15px 18px;
	position: relative;
	background-color: #f2f2f2;
}
.promo2 h3 {
	font-size: 19px;
	font-weight: 500;
	line-height: 24px;
	padding-bottom: 0;
	margin: 0;
	color: #000;
  text-align: left;
}
.promo-action {
    margin-top: -14px;
    max-width: 150px;
    position: absolute;
    right: 20px;
    top: 50%;
}



#Lower h2 {
  margin-bottom: .3em;
	font-size: 4rem;
  text-align: left;
  color: #000;
}
@media (max-width: 1199px) {
  #Lower h2 {
    font-size: 4rem;
  }
}
@media (max-width: 991px) {
  #Lower h2 {
    font-size: 3.3rem;
  }
}
@media (max-width: 767px) {
  #Lower h2 {
    font-size: 2.5rem;
  }
}
/*#Lower h4 {
  margin-bottom: 5rem;
	padding: 1rem 2rem;
	font-size: 2rem;
  text-align: left;
  border-left: 5px solid #82bd00;
  background: #f4f4f4;
}*/
/*#Lower h4:not(:first-of-type) {
  margin-top: 5rem;
}*/
@media (max-width: 767px) {
	
}
#Lower h4 {
  padding-bottom: 5px;
	font-size: 2rem;
  text-align: left;
}
#Lower h4.underline {
  padding-bottom: 8px;
	font-size: 2.4rem;
  border-bottom: 2px solid #e5e5e5;
  position:  relative;
}
#Lower h4.underline:before {
  content:  '';
  width: 70px;
  height: 2px;
	font-size: 2.4rem;
  background-color: #82bd00;
  display:  block;
  position:  absolute;
  left: 0;
  bottom: -2px; 
}
#Lower h4.underline span {
	font-size: 1.8rem;
  font-weight: 500;
  display: inline-block;
}
@media (max-width: 1199px) {
  #Lower h4.underline {
    font-size: 2.2rem;
  }
}
@media (max-width: 767px) {
  #Lower h4.underline {
    font-size: 2rem;
  }
  #Lower h4.underline span {
    font-size: 1.5rem;
  }
}
#Lower h6.bggray {
  margin-bottom: 20px;
  padding: 10px 18px;
  font-size: 1.2em;
  background-color: #e8edf0;
}
#Lower p {
  /*margin-bottom: 2em;*/
  text-align: left;
  line-height: 1.8;
}

.promo-action a {
    background: #ff4c00 none repeat scroll 0 0;
    color: #fff;
    display: block;
    font-family: "Open Sans";
    font-size: 14px;
    font-weight: 600;
    line-height: 2;
    padding: 0 15px;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
    transition: background-color 0.2s linear 0s;
}



#about-card p {
  margin: 0;
}
/*#about-card p:first-child {
  margin-bottom: 20px;
}*/
#about-card .memberscard-type {
	padding: 5px 10px;
	font-size: 1.3em;
  text-align: center;
	color: #000;
	background-color: #e5e5e5;
}
#about-card p.memberscard {
  font-size: 1.5em;
}
.balloon p.orange {
  margin-bottom: 10px;
  color: #ff9900;
}
.balloon p.comment {
  margin-bottom: 0;
  font-weight: normal;
}
.team-name h5 {
    color: #af1e23;
  font-size: 2em;
}
.arrow {
  display:inline-block;
  height:40px;
  width:40px;
  width:40px;
  background-color:#ffc500;
  position:relative;
  top:40px;
}

.arrow:before {
  position:absolute;
  content:"";
  width:0;
  height:0;
  border:60px solid transparent;
  border-left:60px solid #ffc500;
  left:80px;
  top:-37px;
}
@media (min-width: 768px) {
  .balloon{
    margin-bottom: 2em;
    position:relative;
    background:#FFFEF5;
    padding:30px;
    text-align:left;
    border:1px solid #000000;
    color:#000000;
    font-weight:bold;
    -webkit-border-radius:5px;
    -moz-border-radius:5px;
    border-radius:5px;
  }
  .balloon:after,.balloon:before{
    border: solid transparent;
    content:'';
    height:0;
    width:0;
    pointer-events:none;
    position:absolute;
    left:100%;
    top:50%;
  }
  .balloon:after{
    border-color: rgba(255, 254, 245, 0);
    border-top-width:10px;
    border-bottom-width:10px;
    border-left-width:25px;
    border-right-width:25px;
    margin-top: -10px;
    border-left-color:#FFFEF5;
  }
  .balloon:before{
    border-color: rgba(0, 0, 0, 0);
    border-top-width:11px;
    border-bottom-width:11px;
    border-left-width:27px;
    border-right-width:27px;
    margin-top: -11px;
    margin-left: 1px;
    border-left-color:#000000;
  }
  .balloon p {
    font-size: 1.5em;
    font-weight: bold;
  }
  .balloon p.comment {
    font-size: 1.2em;
  }
}
@media (max-width: 767px) {
  .balloon{
    margin-bottom: 3em;
    position:relative;
    background:#FFFEF5;
    padding:30px;
    text-align:left;
    border:1px solid #000000;
    color:#000000;
    font-weight:bold;
    -webkit-border-radius:5px;
    -moz-border-radius:5px;
    border-radius:5px;
  }
  .balloon:after,.balloon:before{
    border: solid transparent;
    content:'';
    height:0;
    width:0;
    pointer-events:none;
    position:absolute;
    top:100%;
    left:50%;
  }
  .balloon:after{
    border-color: rgba(255, 254, 245, 0);
    border-top-width:32px;
    border-bottom-width:32px;
    border-left-width:14px;
    border-right-width:14px;
    margin-left: -14px;
    border-top-color:#FFFEF5;
  }
  .balloon:before{
    border-color: rgba(0, 0, 0, 0);
    border-top-width:34px;
    border-bottom-width:34px;
    border-left-width:15px;
    border-right-width:15px;
    margin-left: -15px;
    margin-top: 1px;
    border-top-color:#000000;
  }
  .balloon p {
    font-size: 1.2em;
    font-weight: bold;
  }
  .balloon p.comment {
    font-size: 1em;
  }
}
.card_01 {
  background-color: #fff;
  box-shadow: 0 0 8px rgba(0, 0, 0, .16);
  text-decoration: none;
  border-radius: 24px;
}
.card_01:hover {
  transform: translateY(-3px);
  box-shadow: 0 7px 14px rgba(50,50,93,.1), 0 3px 6px rgba(0,0,0,.08);
  transition: all .5s;
}
.card__body_01 {
  padding: 1.5rem 1.5rem 2.5rem;
  color: #333;
}
.card__body_01 ul {
  height: 100px;
}
.card__body_01 ul li {
  line-height: 1.6;
  font-size: 13px;
}
.card__body_01 a {
  color: #333;
}
#prepaid_card .btn-prepaid_card {
  margin: 1.5rem 0 2rem;
  display: block;
}

.arrow_box{
    position:relative;
    width:95%;
    height:80px;
    background:#ffcc00;
    padding:10px;
    text-align:center;
    color:#FFFFFF;
    font-size:18px;
    font-weight:bold;
    border-radius:10px;
    -webkit-border-radius:10px;
    -moz-border-radius:10px;
}
.arrow_box:after{
    border: solid transparent;
    content:'';
    height:0;
    width:0;
    pointer-events:none;
    position:absolute;
    border-color: rgba(255, 204, 0, 0);
    border-top-width:9px;
    border-bottom-width:9px;
    border-left-width:78px;
    border-right-width:78px;
    margin-top: -20px;
    border-right-color:#ffcc00;
    right:100%;
    top:50%;
}
h4.minilab {
  position: relative;
  /*color: #333;*/
  display: block;
  margin: 47px 0;
  font-size: 3rem !important;
  text-shadow: 0 0 2px white;
}
h4.minilab:before {
  content: "";
  position: absolute;
  background: #ffcc00;
  width: 200px;
  height: 60px;
  border-radius: 40%;
  top: 50%;
  border: dashed 1px white;
  left: 30%;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  z-index: -1;
  box-shadow: 0px 0px 0px 5px #ffcc00;
}
hr.preca {
  margin: 10px 0 10px;
  height: 2px;
background-color: #e5e5e5;
  
  
}
.ServiceArticle-contact {
	padding: 20px;
	text-align: center;
	background: #f2f2f2;
}
#Lower .ServiceArticle-contact p {
	margin: 0 !important;
  text-align: center;
}
#Lower .ServiceArticle-contact h4 {
  margin-bottom: 10px;
	font-size: 21px;
	font-weight: 600;
  text-align: center;
	color: #000;
}
.ServiceArticle-contact h5 {
	margin: 0 0 10px;
	font-size: 34px;
	line-height: 60px;
	height: 60px;
}
@media (min-width: 768px) and (max-width: 1199px) {
.ServiceArticle-contact h5 {
		font-size: 28px;
	}
}
@media (max-width: 400px) {
.ServiceArticle-contact h5 {
		font-size: 28px;
	}
}
.ServiceArticle-contact a {
	color: #cc0000;
}
.ServiceArticle-contact a.btn {
	color: #fff;
}
.ServiceArticle-contact .btn-warning {
	background-color: #cc0000;
	border-color: #cc0000;
}
.ServiceArticle-contact .btn-lg {
	padding: 12px 10%;
}


.pointup h5 {
  margin-bottom: 0 !important;
  font-size: 1.5em;
  line-height: 1.8;
}
.pointup ul {
  padding-left: 5px;
  font-size: 1.2em;
}
.pointup ul li {
  padding-left: 20px;
  list-style: none;
  line-height: 1.8;
  position: relative;
}
.pointup ul li:before {
  content:  "";
  width: 13px;
  height: 13px;
  position: absolute;
  top: .4em;
  left: 0;
  background-color: #ff9900;
  border-radius: 50%;
}
@media (max-width: 767px) {
  .pointup h5 {
    font-size: 1.2em;
  }
  .pointup ul {
    font-size: 1em;
  }
}


.BoxedArticle-price {
	margin: 10px 0;
	padding: 10px;
	background-color: #333;
	border-radius: 3px;
}
.BoxedArticle-price p {
	color: #fff;
	margin: 0 !important;
  font-size: 12px;
	line-height: 1.4 !important;
}
.BoxedArticle-price .price {
	font-size: 1.6em;
	font-weight: bold;
	color: #ffcc33;
	line-height: 1.2 !important;
}
.BoxedArticle-price .price span {
	font-size: .7em;
	font-weight: normal;
  display: block;
}
.PrintSample a {
	margin: 0;
	background-color: #ffcc00;
	display: inline-block;
	padding: 8px 20px;
	color: #FFFFFF;
}

.cost td span {
  font-weight: normal;
  font-size: .8em;
}
@media (max-width: 991px) {
  .cost td span {
    font-size: .7em;
  }
}



.table {
	border-bottom: 1px solid #ddd;
}
.table th {
	font-weight: normal;
  text-align: left;
}
.table td {
  text-align: left;
}
table.spec {
  margin: 10px 0;
	font-size: 10px;
}
table.spec th, table.spec td {
	padding: 3px 0 !important;
}
table.spec th {
  padding-right: 8px !important;
	font-weight: normal;
}


.rank {
	font-size: 16px !important;
	font-weight: 500;
	color: #db7107;
	margin: 10px 0px 0px !important;
	padding: 0px !important;
	line-height: 150% !important;
}


/* case */
.case_item {
  padding: 40px;
  background-color: #fff;
  border: 5px solid #E8EDF0;
}
@media (max-width: 767px) {
  .case_item {
    padding: 30px 20px;
  }
}
#case h5.case_ttl, .case h5.case_ttl {
  margin-bottom: 0;
  font-size: 2rem;
  font-weight: bold;
}
@media (max-width: 991px) {
  #case h5.case_ttl {
    font-size: 1.8rem;
  }
}
@media (max-width: 767px) {
  #case h5.case_ttl {
    font-size: 1.6rem;
  }
}
#case .case_item p {
  margin-bottom: 0;
  text-align: left;
}
#case .case_item .casepoint, .case .case_item .casepoint {
	padding: 5px 10px;
	text-align: left;
	background-color: #fffef5;
	border: thin solid #CCCCCC;
}
#case .case_item .casepoint p {
  font-size: .9em;
  color: #000;
}


.MainContents-announcement {
  padding: 30px 15px;
  color: #fff;
  text-align: center;
  font-weight: normal;
  line-height: 1.6;
  background-color: #82bd00;
}


.ServiceArticle {
	background: #e2f2fa;
}
.ServiceArticle h5 {
	margin: 0;
	padding: 10px 20px;
	font-size: 1em;
	font-weight: normal;
	color: #FFFFFF;
	background: #55606e;
}
.ServiceArticle p {
	padding: 15px 20px;
}
/*#Lower .ServiceArticle-contact {
	padding: 20px;
	text-align: center;
	background: #3d4957;
}
#Lower .ServiceArticle-contact p {
	margin: 0 !important;
  text-align: center;
	color: #fff;
}
#Lower .ServiceArticle-contact h4 {
  margin: 10px 0;
  padding: 0;
	font-size: 21px;
	font-weight: 600;
  text-align: center;
	color: #fff;
}
#Lower .ServiceArticle-contact h5 {
	margin: 0 0 10px;
	font-size: 34px;
	line-height: 60px;
	height: 60px;
}
@media (min-width: 768px) and (max-width: 1199px) {
.ServiceArticle-contact h5 {
		font-size: 28px;
	}
}
@media (max-width: 400px) {
.ServiceArticle-contact h5 {
		font-size: 28px;
	}
}
.ServiceArticle-contact a {
	color: #ff9900;
}
.ServiceArticle-contact a.btn {
	color: #fff;
}
.ServiceArticle-contact .btn-warning {
	background-color: #ff9900;
	border-color: #ff9900;
}*/
.ServiceArticle-contact .btn-lg {
	padding: 12px 10%;
}
h3.contact {
	font-size: 20px;
	font-weight: normal;
	text-align: center;
}
h3.contact span.small {
	font-size: 15px;
	color: #666;
}
@media (max-width: 500px) {
	h3.contact  {
		font-size: 20px;
	}
	h3.contact span.small {
		font-size: 13px;
	}
}



/* Card Design
---------------------------------------------------------------------------*/

.rowCont {
	padding: 0 40px;
}
.article-body-content {
  position: relative;
  padding: 15px 0;
}
@media (max-width: 1199px) and (min-width: 992px) {
  #carddesign .portfolio > .item {
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .portfolio > .item,
  .portfolio-padding > .item {
    width: 33.299%;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .portfolio > .item,
  .portfolio-padding > .item {
    width: 50%;
  }
}

#carddesign .mask h4 {
  font-size: 1.2em;
  font-weight: 500;
  padding: 10px 18px;
  text-align: center;
}
#carddesign .mask span {
  font-size: 1em;
  color: #a6a6a6;
}

#filters .btn {
  margin: 5px 2px;
  font-size: 15px;
  font-weight: normal;
  background-color: #e5e5e5;
}
#filters .btn.btn-xs {
  padding: 5px 15px;
}
#filters.light .btn {
    color: #164ca1;
}
#filters .btn-primary:hover,
.btn-primary:hover,
#filters .btn-primary:focus,
.btn-primary:focus,
#filters .btn-primary:active,
.btn-primary:active,
#filters .btn-primary.active,
.btn-primary.active,
.open .dropdown-toggle#filters .btn-primary,
.open .dropdown-toggle.btn-primary {
  color: #ffffff;
  background-color: #3e74ca;
  border-color: #3e74ca;
  box-shadow: none;
}
#filters .btn:hover {
  opacity: 0.8;
}
#filters .btn-primary:hover {
  opacity: 1;
}

/* Busines
---------------------------------------------------------------------------*/


ul.facility {
  margin: 0;
  border: double 4px #0099cc;
  padding: 1em 1em 1em 2.3em;
  position: relative;
  background-color: #fffff4;
}
ul.facility li {
  line-height: 1.5;
  padding: 0.3em 0 0.3em 0.5em;
  list-style-type: none!important;
  color: #000;
}
ul.facility li:before {
  font-family: "Font Awesome 5 Free";
  content: "\f72e";
  position: absolute;
  left : 1em; 
  color: #0099cc;
  font-weight: 900;
}


#Lower h3.faq {
  margin-bottom: 7rem;
	padding: 1rem 2rem;
	font-size: 3rem;
  font-weight: bold;
  text-align: center;
  border-top: 3px solid #E8EDF0;
  border-bottom: 3px solid #E8EDF0;
}
@media (max-width: 768px) {
	#Lower h3.faq {
    margin: 2rem 0 4rem;
	}
}

.cp_qa *, .cp_qa *:after, .cp_qa *:before {
	font-family: sans-serif;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.cp_qa dl {
	margin: 0;
}
.cp_qa dt {
	margin: 0 0 1.5em 0;
	padding: 0 .5em 0 4em;
  font-weight: normal;
  text-align: left;
  position: relative;
}
.cp_qa dt span {
  font-size: 16px;
  color: #000;
}
.cp_qa dd {
  margin-bottom: 30px;
	padding: 0 2em 30px 4em;
	border-bottom: dotted 1px #999;
  position: relative;
  text-align: left;
  line-height: 1.8;
}
@media(max-width:767px) {
	.cp_qa dd {
		padding-right: .5em;
	}
}
/* QAアイコン */
.cp_qa dt::before,.cp_qa dd::before{
	font-size: 18px;
	color: #ffffff;
}
.cp_qa dt::before {
	margin: 0 0.5em 0 -2em;
	padding: 0.2em 0.6em;
	content: 'Q';
	border-radius: 0.2em;
	background: #82bd00;
  position: absolute;
  left: 2.5em;
  top: -.2em;
}
.cp_qa dd::before {
	margin: 0 0.5em 0 -2em;
	padding: 0.05em 0.6em;
	content: 'A';
	border-radius: 0.2em;
	background: #ff9900;
  position: absolute;
  left: 2.5em;
  top: -.2em;
}


/* contact
---------------------------------------------------------------------------*/


#contact h4 {
    border-left: 5px solid #af1e23;
    font-size: 1.2em;
    font-weight: 600;
  line-height: 1.3;
  text-align: left;
    padding: 3px 0 3px 10px;
}
#contact p {
  margin-bottom: 40px;
}
.contact_tel {
  font-size: 40px;
  color: #000;
}
.contact_tel a {
  color: #000;
}
.contact_tel span {
  font-size: 30px;
}
@media(max-width:767px) {
	.contact_tel {
		font-size: 34px;
	}
}



/* About
---------------------------------*/



#about .dl-horizontal dd {
  margin-bottom: 20px;
  padding-bottom: 20px;
  line-height: 1.6;
}
@media (min-width: 768px) {
	#about .dl-horizontal dd {
	padding-left: 220px;
	margin-left: 0;
	}
}



/* Privacy
---------------------------------*/


#privacy {
    font-size: 13px;
    line-height: 180%;
}
#privacy p,
#privacy h4,
#privacy h5,
#privacy h6 {
	color: #4d4d4d;
}
#privacy p.pad_l {
    margin: 0;
    padding: 0 0 0 15px;
}
@media (max-width: 767px) {
	#privacy p.pad_l {
    padding: 0;
	}
}
#privacy h4 {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.8;
	text-align: left;
	margin: 20px 0 0;
	padding: 0;
	background: none;
	border: none;
}
#privacy h5 {
    font-size: 1.2em;
    font-weight: 600;
    margin: 10px 0 10px 0;
    padding: 0;
	background: none;
	height: auto;
}
#privacy h6 {
    font-size: 16px;
    font-weight: bold;
	 line-height: 1.8;
		text-align: left;
    margin: 20px 0 0;
    padding: 0;
}
#privacy p.small {
    margin: 0;
    padding: 0;
}
#privacy ol {
	color: #666;
	padding-left: 15px;
	margin: 30px 0;
}
#privacy ol.loweralpha {
  margin: 0;
  padding-left: 30px;
	list-style-type: lower-alpha;
}



/* CTA
---------------------------------------------------------------------------*/

.cta {
  position: relative;
  padding: 20px;
  text-align: center;
  color: #fff;
  font-family: "游明朝",Yu Mincho,YuMincho,"ヒラギノ明朝 ProN W3",Hiragino Mincho ProN,serif;
}
.cta_inner-tel {
    margin: 0 0 0 auto;
    width: 70%;
    padding: 4rem 0;
}
.cta_inner-mail {
    margin: 0 auto 0 0;
    width: 80%;
    padding: 4rem 0;
}
@media (max-width: 1199px) {
	.cta_inner-tel, .cta_inner-mail {
		margin: 0;
    width: 100%;
	}
}
#cta h4 {
  padding: 0;
  font-size: 30px;
  color: #fff;
  letter-spacing: -2px;
  background: none;
  border: none;
  text-align: center;
}
#cta p {
  margin: 10px 0;
  font-size: 18px;
  text-align: center;
  line-height: 1.3;
}
@media (max-width: 991px) {
	#cta p {
		font-size: 16px;
	}
}
#cta p span {
  font-size: 0.8em;
}
#cta p.tel {
  font-size: 42px;
  color: #ff9900;
  line-height: 1;
}
#cta p.mail {
  font-size: 45px;
  line-height: 1;
}
#cta a {
  position: absolute;
  top: 0;
  left: 0;
  height:100%;
  width: 100%;
}

.cta:hover{
  opacity: 0.8;
}



/* Footer
   ---------------------------------------------------------------------------*/


#footer {
  color: #fff;
  background: #2c353f;
}
#footer .logo{
	width: 250px;
}
#footer .footer-nav{
	/*float: left;*/
	/*width: 370px;*/
	/*padding-right: 15px;*/
}
#footer .footer-nav ul{
	list-style: none;
	text-align: center;
}
#footer .footer-nav ul li{
	/*float: left;*/
	font-size: 15px;
	display: inline-block;
	padding-bottom: 10px;
}
@media (min-width: 768px) {
	

#footer .footer-nav ul li:not(:last-child)::after {
  content: "　｜　";
	}
}
@media (max-width: 767px) {
	#footer .footer-nav ul {
		/*margin: auto;*/
	}
	#footer .footer-nav ul li {
		display: block;
		margin-bottom: 15px;;
	}
}
/*.footer-nav ul li:not(:last-child) {
	padding-right: 50px;
}*/
#footer .footer-nav ul li a{
	color: #fff;
}
#footer .footer-nav ul li a:hover{
	color: #999;
	text-decoration: none;
}
#footer .footer-nav2 ul li a{
	color: #ccc;
}
#footer .footer-sns i{
	font-size: 3em;
}
#footer .copyright {
  background: #1f252c;
}
#footer .copyright small {
  color: #ffffff;
}




/* Form
   ---------------------------------------------------------------------------*/



#contact {
	font-family: "Montserrat",-apple-system, "Helvetica Neue", "Hiragino Kaku Gothic ProN", "メイリオ", meiryo, sans-serif;
}
.callnumber {
	font-size: 3em;
  font-weight: bold;
}
@media (max-width: 767px) {
	.callnumber {
		font-size: 2.2em;
	}
}
#contact h4.type2 {
  padding: 5px 18px;
  font-size: 1em;
  font-weight: normal;
  background-color: #f7f7f7;
  border: none;
}
h5.callnumber {
  font-weight: 700;
}
h5.contact a {
	color: #fabd03;
}
label {
  vertical-align: baseline;
}
.outer {
    height: 46px;
    text-align: center;
    display: table;
    margin: 0 -20px;
}
.hyphen {
    display: table-cell;
    vertical-align: middle;
}
.required {
  margin-left: 5px 0 5px;
  padding: 6px 7px 4px;
  font-size: 10px;
  line-height: 1;
  color: #fff;
  background-color: #CC3305;
  display: inline-block;
  border-radius: 3px;
}

.required {
    margin-left: 5px;
    padding: 4px 7px;
    font-size: 10px;
    line-height: 1.0;
    color: #fff;
    background-color: #CC3305;
    display: inline-block;
    border-radius: 3px;
}
.form-group {
	text-align: left;
}
label {
	padding: 10px 0 0;
}
#contact-check label {
	padding: 0;
}
select {
	vertical-align:middle;
}
select::-ms-expand {
	display: none;
}
.select-box {
	width: 100%;
	margin: 0;
	padding: 0;
	background-color: #e9e9e9;
}
input[type=checkbox] {
    margin-right: 10px;
    -ms-transform: scale(1.5, 1.5);
    -webkit-transform: scale(1.5, 1.5);
    transform: scale(1.5, 1.5);
}

@media (max-width: 767px) {
	#Request th, #Request td {
		display: block;
		padding-right: 0;
		text-align: left;
	}
	#Request th {
		padding-bottom: 15px;
		font-weight: bold;
	}
}
#Request .head1, #Request .head2 {
    color: #333;
    font-weight: normal;
	line-height: 1;
    border: 2px solid #FFF;
    padding: 15px;
}
#Request .head1 {
    background: #FFE4E1;
}
#Request .head2 {
    background: #cceef2;
}
#Request .head-second {
	font-size: 13px;
    background: #f0f0f0;
	font-weight: normal;
    line-height: 1;
    border: 2px solid #FFF;
    padding: 15px;
}
#Request td {
    background: #f0f0f0;
    color: #666666;
    font-weight: normal;
    border: 2px solid #FFF;
    padding: 5px;
}

.input-lg {
    height: 40px;
    padding: 5px 10px;
}
.form-control2 {
  display: inline-block;
  border: 1px solid #eeeeee;
  background: #ffffff;
	box-shadow: none;
  border-radius: 0;
}
.form-control:focus, .form-control2:focus {
	border-color: #ff4c00;
	box-shadow: none;
	outline: 0;
}
.BoxedArticle-privacy {
    margin: 40px 0;
    padding: 20px 40px 10px;
    border: 1px solid #e5e5e5;
}


div.attention {
    border: thin solid #ccc;
    margin-bottom: 50px;
    margin-top: 50px;
    padding: 30px 30px 15px;
	line-height: 1.8;
}
div.attention ul li {
    margin-bottom: 15px;
}



/* 送信ボタン「確認画面」テキスト2重回避 */
.mfp_element_submit,.mfp_element_reset,.mfp_element_button {
	text-shadow: none;
}

/* mailformpro調整＆確認画面レスポンシブ */

.mfp_element_all {
	    max-width: 100%;
}
.mfp_element_text,
.mfp_element_number,
.mfp_element_select-one,
.mfp_element_email,
.mfp_element_tel,
.mfp_element_textarea,
.mfp_element_date,
.mfp_element_password {
	margin: 0;
}
/*labelタグの位置調整*/
form#mailformpro label {
	/*margin-top: 13px;*/
	white-space: normal;
}
form#mailformpro label.mfp_not_checked {
    border: none;
}
div.mfp_err {
    padding: 0;
    background: none;
}
@media(max-width:767px) {
	table#mfp_confirm_table tr th {
		display: block;
    	width: 100%;
	}
	table#mfp_confirm_table tr td {
		display: block;
    	width: 100%;
	}
}




/* Media Queries
   ---------------------------------------------------------------------------*/


@media (min-width: 991px) {
	.navbar-standard.opaque .navbar-brand .logo-dark-hidden2 {
		display:none;		
	}
	.navbar-standard .navbar-brand .logo-white-hidden2 {
		display:none;		
	}
}
@media (max-width: 991px) {
	.header_top {
		/*padding: 5px 10px !important;*/
	}
	.navbar-brand {
		/*padding-right: 5px !important;*/
	}
	.navbar .navbar-brand > img {
  	max-height: 26px;
	}
	.header_top .description p {
		display: none;
	}
}
@media (min-width: 768px) and (max-width: 990px) {
	
	.navbar-standard.opaque .navbar-brand .logo-dark-hidden {
		display:none;		
	}
	.navbar-standard .navbar-brand .logo-white-hidden {
		display:none;		
	}
}

/*@media (min-width: 768px) and (max-width: 768px) {
	.navbar-brand {
		padding: 18px 0 18px 10px;
	}
}*/

@media (min-width: 768px) {
	#top-info .dl-horizontal dt {
		width: 150px;
		float:left;
	}
	#top-info .dl-horizontal dd {
	padding-left: 160px;
	margin-left: 0;
	border-bottom: thin dotted #ccc;
	}
}

/*@media (max-width: 768px) {
	.navbar .navbar-brand > img {
		margin-left: 10px;
		max-height: 36px;
	}
	.container {
		width: 100%;
	}
	.navbar-right {
	    margin-right: -15px;
	}
	.navbar-light > .container {
		padding: 0 20px;
	}
	#footer .footer-bnr {
		text-align: center;
		padding-top: 30px;
	}
	#footer .footer-nav-border,
	#footer .footer-nav-border2 {
		padding:0 20px 0 30px;
	}
}*/


@media(max-width:767px) {
	.navbar .dropdown-menu > li > a {
    color: #9c7459;
	}
	.pull-right {
    float: none;
	}
	.navbar-header .navbar-brand {
		padding-left: 20px;
		float: left;
	}
	.navbar-standard.opaque .navbar-brand .logo-dark-hidden2 {
		display:none;		
	}
	.navbar-standard .navbar-brand .logo-white-hidden2 {
		display:none;		
	}
	.navbar-nav > li {
		text-align: left;
		background: none;
	}
	.navbar-nav > li > a {
		font-size: 14px;
	}
	.opaque .navbar-nav > li > a,
		.navbar-nav > li > a {
		padding: 20px 0 20px 10px;
		border: 0;
	}
	label {
		padding: 0;
	}
	#top-info .dl-horizontal dt {
		font-size:18px;
		font-weight:bold;
		padding-bottom:15px;
	}
	#top-info .dl-horizontal dd {
		margin-left: 0;
	}
}




figure {
  margin: 0;
  padding: 0;
  background: #fff;
  overflow: hidden;
}
figure:hover img {
  opacity: 1;
  -webkit-animation: flash 2s;
  animation: flash 2s;
}
@-webkit-keyframes flash {
  0% {
    opacity: .1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes flash {
  0% {
    opacity: .1;
  }
  100% {
    opacity: 1;
  }
}

/* Error Pages
   ---------------------------------------------------------------------------*/
.error-404:before,
.error-500:before,
.error-503:before {
  font-size: 650px;
  font-weight: bold;
  left: -150px;
  position: absolute;
  top: -50px;
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg);
  z-index: 0;
}
@media(max-width:767px) {
	.error-404:before,
  .error-500:before,
  .error-503:before {
		font-size: 300px;
    left: -80px;
    top: -80px;
	}
}
.error-404:before {
  content: "404";
}
.error-500:before {
  content: "500";
}
.error-503:before {
  content: "503";
}

.error-404,
.error-500,
.error-503 {
  padding: 30em 0 15em;
  background-color: #fafafa;
}
@media(max-width:767px) {
	.error-404,
  .error-500,
  .error-503 {
		padding: 10em 0;
	}
}
.error-404:before,
.error-500:before,
.error-503:before {
  color: rgba(0, 0, 0, 0.04);
}



/* Card Pages
   ---------------------------------------------------------------------------*/

h5.read {
  font-size: 1.5em;
  line-height: 1.6;
  font-weight: normal;
  text-align: left;
} 
#card .pointup ul strong {
  font-size: 1.5em;
}
#card .pointup ul li {
  margin-bottom: 10px;
}
#card .pointup ul li:before {
  content:  "";
  width: 13px;
  height: 13px;
  position: absolute;
  top: 1em;
  left: 0;
  background-color: #ff9900;
  border-radius: 50%;
}
.resolution {
  font-size: 4rem;
  font-weight: bold;
}
@media(max-width:991px) {
	.resolution {
		font-size: 3.3rem;
	}
}
@media(max-width:767px) {
	.resolution {
		font-size: 2.5rem;
	}
}
.announcement {
  font-size: 3.6em;
  text-align: left;
}
@media(max-width:991px) {
	.announcement {
		font-size: 3.3rem;
	}
}
@media(max-width:767px) {
	.announcement {
		font-size: 2.5rem;
	}
}

.table-condensed > tbody > tr > th {
  padding: 10px 0 10px;
  white-space: nowrap;
}
.table-condensed > tbody > tr > td {
  padding: 10px 0 10px;
}


/* フローティングバナー
   ---------------------------------------------------------------------------*/


.closebttn {
    position: absolute;
    top: -20px;
    right: -20px;
    z-index: 9999;
    cursor: pointer;
    width: 33px;
    height: 33px;
    background: url(../images/common/close_btn.png) no-repeat center / contain;
}
.closebtn:hover {
    cursor: pinter;
}
.closebtn:active {
    background: #f4d600;
}
.fixedbnr {d
  display: none;    /* 最初は非表示にする */
  position: fixed;  /* 表示位置を固定 */
  bottom: 10vh;
  right: 40px;
  padding: 5px;
  box-sizing: border-box;
  z-index: 9990;
  width: 20vw;
  animation: slideIn02 3s 1;
}
@media(max-width:991px) {
	.fixedbnr {
		width: 40vw;
	}
}
@media(max-width:767px) {
	.fixedbnr {
    display: none !important;
		width: 100vw;
    right: 0;
	}
}
.fixedbnr img {
  width: 100%;
  vertical-align: bottom;
}
.fixedbnr a:hover {
  opacity: 0.6;
}
@keyframes slideIn02 {
  0% {
    opacity: 0;
  }  
  10% {
    opacity: 0;
    transform: translateX(1000px);
  }
  70% {
    opacity: 1;
    transform: translateX(0);
  }
}

/* close button */
.action-close {
    position: relative;
    margin-top: 2em;
}
.action-close .btn {
}
.action-close .fixedbnr {
    margin-bottom: 2em;
    border: 2px solid #ffce5b;
}
.fixedbnr.js_close {
  display: none;
}

/* checkbox 非表示 */
.add-control .checkbox {
    display: none;
}

/* close button's control */
.add-control .action-close #close:checked ~ .closebttn {
    display: none;
}
.add-control .action-close #close:checked ~ .add-control.js_close {
    display: none;
}


.banner {
    position: fixed;
    margin: 15px 20px;
    z-index: 99998;
    bottom: 0;
    right: 0;
}
.banner a {
    text-decoration: none;
}

.banner-icon {
    color: #f8f8f8;
    font-size: 40px;
}

.banner-back {
    background-color: #fff;
    /*border-radius: 25px;*/
    -webkit-box-shadow: 0 0 7px rgb(0 0 0 / 40%);
    box-shadow: 0 0 7px rgb(0 0 0 / 40%);
}

.banner-top {
    padding: 20px;
    border-radius: 25px 25px 0px 0px;
    background: -moz-radial-gradient(#0AB0C7, #006EB0 70%);
    background: -webkit-radial-gradient(#0AB0C7, #006EB0 70%);
    background: radial-gradient(#0AB0C7, #006EB0 70%);
}

.banner-copy {
    font-size: 18px;
    position: relative;
}
.banner-copy::after {
    font-family: 'Font Awesome 6 Free';
    font-size: 20px;
    content: '\f054';
    color: #006EB0;
    position: absolute;
    margin-top: 11px;
    top: 0;
    right: 18px;
}

.banner-bottom {
    /*padding: 25px 0px 30px 0px;*/
    /*line-height: 1.6;*/
}

.banner-body {
    /*width: 300px;*/
    /*background: #f8f8f8;*/
    color: #000000;
    font-weight: bold;
    text-align: center;
    /*border-radius: 25px;*/
    /*-webkit-box-shadow: 0 0 7px rgb(0 0 0 / 40%);
    box-shadow: 0 0 7px rgb(0 0 0 / 40%);*/
}
.banner-body:hover {
    transition: opacity 0.3s ease;
    opacity: 0.7;
}

.banner-close {
  padding-bottom: 5px;
    font-weight: 600;
  font-size: 24px;
  color: #fff;
  line-height: 1;
    position: absolute;
    top: -20px;
    right: -20px;
    z-index: 99999;
    /*padding: 4px 10px;*/
    border: none;
    background-color: #333;
    border-radius: 50%;
    cursor: pointer;
  width: 40px;
  height: 40px;
    /*-webkit-box-shadow: 0 0 7px rgb(0 0 0 / 40%);
    box-shadow: 0 0 7px rgb(0 0 0 / 40%);*/
}

@media screen and (max-width: 750px) {
    .banner {
        width: 100%;
        margin: 0px;
    }
    .banner-icon {
        font-size: 28px;
    }
    .banner-body {
        width: 100%;
        border-radius: 0px;
    }
    .banner-back {
        width: 100%;
        margin: 0px;
        border-radius: 0px;
    }
    .banner-top {
        padding: 5px;
        border-radius: 0px;
        background: -moz-linear-gradient(#006EB0 50%, #0AB0C7);
        background: -webkit-linear-gradient(#006EB0 50%, #0AB0C7);
        background: linear-gradient(#006EB0 50%, #0AB0C7);
    }
    .banner-bottom {
        padding: 10px 10px 18px 10px;
    }
    .banner-copy {
        font-size: 15px;
    }
    .banner-copy::after {
        font-size: 12px;
        margin-top: 1.4px;
        margin-left: 12px;
        top: initial;
        right: initial;
    }
    .banner-close {
        top: 8px;
        right: 15px;
    }
    .banner-copy-br {
        display: none;
    }
}

.btn-download{
  color: #fff;
  background-color: #82bd00;
  border-color: #82bd00;
} 