@charset "utf-8";



.tagbox {
    padding: 0.2em 0.6em;
    background: #cd4339;/*背景色*/
	color: #FFFFFF;
	vertical-align: middle;
}




/*テーブルデザイン*/

table.table-skin01 {
  width: 100%;
  border-collapse: collapse;
 border: none;
}

table.table-skin01 tr{
  border-bottom: solid 2px white;
}

table.table-skin01 tr:last-child{
  border-bottom: none;
}

table.table-skin01 th{
  position: relative;
  text-align: left;

  background-color: #C77868;
  color: white;
  padding: 10px 2em;
  font-size: 16px;
}

/*
table.table-skin01 th:after{
  display: block;
  content: "";
  width: 0px;
  height: 0px;
  position: absolute;
  top:calc(50% - 10px);
  right:-10px;
  border-left: 10px solid #3574b7;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
}
*/

table.table-skin01 td{
  text-align: left;
  width: 70%;
  background-color: #e5e5e6;
  padding: 10px 2em;
  font-size: 16px;
}


@media (max-width: 575px) {
table.table-skin01 th{
  width: 100%;
  background-color: #6e2d1a;
  padding: 18px 1em;
  display: block;
}
	
table.table-skin01 tr{
  border-bottom: none;
}	

table.table-skin01 td{
  text-align: left;
  width: 100%;
  padding: 18px 1em;
  display: block;
}
	
table.table-skin01 th:after{
  display: none;

}	
}



/*card　上書き*/

.card-text {
	line-height: 1.6;
}

.card-title {
	margin-bottom: .5em;	
}

@media (min-width: 576px) {
	.card-deck-b {
		margin-bottom: 15px;
	}
	
}

.card-txt-in {
	position: absolute;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	flex-direction: column;
}


.sankaku-arrow {
	position: relative;
}
.sankaku-arrow:after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -30px;
    border: 30px solid transparent;
    border-top: 20px solid #2b4f8d;
}

@media (min-width: 768px) {
.sankaku-arrow:after {
    margin-left: -50px;
    border: 50px solid transparent;
    border-top: 28px solid #2b4f8d;
}	
}



.a-box {
	padding-top: 50px;
	padding-bottom: 50px;
}

.w-box {
	padding-top: 70px;
	padding-bottom: 70px;
}


@media (min-width: 768px) {
.a-box {
	padding-top: 80px;
	padding-bottom: 80px;
}
.w-box {
	padding-top: 130px;
	padding-bottom: 130px;
}	
	
}


.white-bg {
	background-color: rgba(255,255,255,0.9);
	padding: 30px 15px;
	margin-left: -5px;
	margin-right: -5px;
}
@media (min-width: 768px) {
.white-bg {
	padding: 50px 45px;
}
}

.main-width {
	max-width: 1100px;
}

.common-width {
	max-width: 900px !important;
}

.bb {
	display: inline-block;
}


@media (max-width: 575px) {
	
.sp-b1s {
	margin-bottom: 0.5em !important;
}	
	
.sp-b1 {
	margin-bottom: 1em !important;
}
.sp-b2 {
	margin-bottom: 2em !important;
}	
	
	
}


@media (min-width: 576px) {
	.pc-none,.sp-br {
		display: none !important;
	}
	.sp-none,.pc-br {
		display: block !important;
	}
	
	.padding-2em-0 {
		padding: 2em;
	}
	
	

}
@media (max-width: 575px) {
	.sp-none,.pc-br {
		display: none !important;
	}
	.pc-none,.sp-br {
		display: block !important;
	}
	
	.sp-width-80 {
		width: 80%;
		margin: 0 auto;
	}
	.padding-2em-0 {
		padding: 0;
	}	
	
}




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



.white {
	color: #FFFFFF;
}

.red {
	color: #cd4339;
}


.bold {
	font-weight: 600;
}

.under {
  background: linear-gradient(transparent 70%, #fff8a0 70%);
}

.shadow1 {
	text-shadow:2px 0px 1px #1f1f1f;
}



/*画像関係-----------------------------------*/


a.brightness:hover {
	filter: brightness(120%);
    transition: 0.5s;
}

a:hover.wink {
    opacity: 0.8;
    transition: 0.5s;
}


.img100 {
	width: 100%;
}




/*fontsizeとマージン　SP＆PC指定------------------------------*/


.bottom-0 {
	margin-bottom: 0 !important;
}

.c-bottom-s {
	margin-bottom: 5px;
}

.bottom-s {
	margin-bottom: 5px !important;
}
.bottom-m {
	margin-bottom: 10px !important;
}
.bottom-l {
	margin-bottom: 20px !important;
}	
.bottom-ll {
	margin-bottom: 40px !important;
}
.bottom-lll {
	margin-bottom: 60px !important;
}

@media screen and (min-width:768px){
.bottom-s {
	margin-bottom: 10px !important;
}
.bottom-m {
	margin-bottom: 20px !important;
}
.bottom-l {
	margin-bottom: 40px !important;
}
.bottom-ll {
	margin-bottom: 60px !important;
}	
.bottom-lll {
	margin-bottom: 80px !important;
}	
	
	
}

.font-16 {
	font-size: 16px !important;
}

.font-xxxs {
	font-size: 13px !important;
}
.font-xxs {
	font-size: 14px !important;
}

.font-xs {
	font-size: 15px !important;
}

.font-s {
	font-size: 16px !important;
}

.font-m {
	font-size: 17px !important;
}

.font-l {
	font-size: 18px !important;
}

.font-ll {
	font-size: 19px !important;
}
.font-lll {
	font-size: 21px !important;
}
.font-ex {
	font-size: 31px !important;
}

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


.font-xxxs {
	font-size: 15px !important;
}	
.font-xxs {
	font-size: 17px !important;
}		
.font-xs {
	font-size: 19px !important;
}	
	
.font-s {
	font-size: 20px !important;
}

.font-m {
	font-size: 22px !important;
}
.font-l {
	font-size: 24px !important;
}	
.font-ll {
	font-size: 25px !important;
}		
.font-lll {
	font-size: 27px !important;
}
.font-ex {
	font-size: 37px !important;
}
	
	
}





/*fontsizeとマージン　SP＆PC指定 end------------------------------*/



/* Bootstrapのガター幅を調整するための汎用CSS */
.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}


@media (min-width: 577px) {
.row-0w{ margin-left:0px;  margin-right:0px}
.row-0w >div{ padding-right:0px;  padding-left:0px}
.row-10w{ margin-left:-5px;  margin-right:-5px}
.row-10w >div{ padding-right:5px;  padding-left:5px}
.row-20w{ margin-left:-10px;  margin-right:-10px}
.row-20w >div{ padding-right:10px;  padding-left:10px}
.row-30w{ margin-left:-15px;  margin-right:-15px}
.row-30w >div{ padding-right:15px;  padding-left:15px}
.row-40w{ margin-left:-20px;  margin-right:-20px}
.row-40w >div{ padding-right:20px;  padding-left:20px}
.row-50w{ margin-left:-25px;  margin-right:-25px}
.row-50w >div{ padding-right:25px;  padding-left:25px}
}



@media (max-width: 576px) {
.row-0s{ margin-left:0px;  margin-right:0px}
.row-0s >div{ padding-right:0px;  padding-left:0px}
.row-10s{ margin-left:-5px;  margin-right:-5px}
.row-10s >div{ padding-right:5px;  padding-left:5px}
.row-20s{ margin-left:-10px;  margin-right:-10px}
.row-20s >div{ padding-right:10px;  padding-left:10px}
.row-30s{ margin-left:-15px;  margin-right:-15px}
.row-30s >div{ padding-right:15px;  padding-left:15px}
.row-40s{ margin-left:-20px;  margin-right:-20px}
.row-40s >div{ padding-right:20px;  padding-left:20px}
.row-50s{ margin-left:-25px;  margin-right:-25px}
.row-50s >div{ padding-right:25px;  padding-left:25px}	

}



/***** コンタクトフォーム *****/

.table-contactform7>tbody>tr:nth-of-type(odd) {
    background-color: #f9f9f9 !important;
}
.table-contactform7 {
	background-color: #FFFFFF;
	border: 3px solid #C6C6C6;
}

.required-contactform7{
 padding: 5px;
 background: #DE8686 !important;
 color: #fff;
 border-radius: 3px;
 margin-right: 3px;
 margin-left:15px;
}
 
.table-contactform7 th{
font-weight:bold !important;
vertical-align:middle !important;
	width: 30%;
}
 
.table-contactform7 input,
.table-contactform7 textarea{
 max-width: 100% !important;
}
 
.address-100 input{
 width: 100%;
}
 
.message-100 textarea{
 width: 100%;
}


.title-contactform7 {
	margin-left:20px;
}
 
@media screen and (max-width: 900px){
 .table-contactform7 th{
 width:100%;
 display:block;
 margin: 0 auto;
 border:none;
 }
 .table-contactform7 td{
 display: list-item;
 list-style-type:none;
 margin:0;
 padding:0;
 width: 100%;
 border-top: none !important;
 }
}

.submit-btn {
	font-size: 20px;
	text-align: center;
	width: 80%;
	font-weight: 400;
	color: #fff;
    background-color: #d9534f;
    border-color: #d43f3a;	
}
.submit-btn:hover {
    background-color: #d2322d;
    border-color: #d43f3a;	
}

.form-box {
    padding: 1em 1em 1em 0.5em;
    margin-bottom: 1.5em;
    border: double 5px #9E9E9E;
	background-color: #FFFFFF;
}

.form-box p {
    font-size: 16px;
	margin: 0;
}

.form-box label {
	margin-bottom: 0;
}

@media (min-width: 576px) {
.form-box {
    padding: 2.5em 2.5em;
}	
}

/***** コンタクトフォーム *****/