/* ------------------------------------------------------------------------
    Common
------------------------------------------------------------------------  */
/* Anchor Height */
.AH {
}
@media screen and (max-width:768px){
	.AH {
		margin-top: -50px;
		padding-top: 50px;
	}
}
@media screen and (min-width:769px){
	.AH {
		margin-top: -50px;
		padding-top: 50px;
	}
}

/* Center */
.ab_center{
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateY(-50%) translateX(-50%);
}

/* Googlemap */
.google-map {
    position: relative;
    width: 100%;
    height: 250px;
    overflow: hidden;
}
.google-map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 250px;
	box-sizing:border-box;
}
/*
 Googlemap area
*/
.Map-Btn {
	width:100%;
	padding:0 12px;
	margin:0 auto;
	box-sizing:border-box;
	text-align:right;
}
/*
 Googlemap btn
*/
.google-btn a {
	display:inline-block;
	max-width:190px;
	border:1px solid #898989;
	text-align:center;
	width:100%;
	font-size:1.2rem;
	color:#898989;
}
.google-btn a span {
	display:inline-block;
}
.google-btn a span:before {
	content:url(../images/icon_maplink.png);
	vertical-align:middle;
	padding-right:.7em;
}
.Map-Btn {
	padding-top:15px;
}
.google-btn a {

}
@media screen and (min-width:769px){
	.Map-Btn {
		padding-top:15px;
	}
	.google-btn a {
		display:inline-block;
		max-width:190px;
		border:1px solid #898989;
		text-align:center;
	}
}
@media screen and (max-width:768px){
	.Map-Btn {
		padding-top:15px;
	}
	.google-btn a {
		display:inline-block;
		max-width:190px;
		border:1px solid #898989;
		text-align:center;
	}
}

/* youtube */
.youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

/* MessageArea */
.MSG_Contents{
	padding-top: 1.875em;
	padding-bottom: 1.875em;
	padding-left: 20px;
	padding-right: 20px;
	border-radius: 7px;
	background: #f5f5f5;
	box-sizing: border-box;
	border: 1px solid #dcdcdc;
}

/* ------------------------------------------------------------------------
    Parts
------------------------------------------------------------------------  */
/********************* Arrow *********************/
/* arrow base */
.arr{
	position: relative;
	display: block;
	vertical-align: middle;
}
.arr::before,
.arr::after{
	position: absolute;
	margin: auto;
	content: "";
	vertical-align: middle;
}
/* arrow type */
.arr_dwn::before{
	right: 15px;
	top:-3px;
	bottom:0;

	width: 6px;
	height: 6px;
	border-top: 1px solid #555;
	border-right: 1px solid #555;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}
.arr_left::before{
	left:5px;
	top:0;
	bottom:0;

	width: 8px;
	height: 8px;
	border-top: 1px solid #717171;
	border-right: 1px solid #717171;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.arr_right::before{
	right: 12px;
	top:0;
	bottom:0;

	width: 8px;
	height: 8px;
	border-top: 1px solid #717171;
	border-right: 1px solid #717171;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.arr_left_out::before{
	left:5px;
	top:50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);

	content:url(../images/icon_maplink.png);
	vertical-align:middle;
	padding-right:.7em;
}


/* arrows */
.arrow_s {
  position: relative;
  display: inline-block;
  padding-left: 12px;
  color: #666;
  text-decoration: none;
}
.arrow_s:before {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 4px;
  border-color: transparent transparent transparent #333;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -3px;
}
/* ------------------------------------------------------------------------
    Button
------------------------------------------------------------------------  */
a.btn_A,
a.btn_B,
a.btn_C,
a.btn_D{
	display:inline-block;
	width:100%;
	max-width:240px;
	border:1px solid #898989;
	text-align:center;box-sizing: border-box;
	padding: .3em 0;
	color:#666;
}
a.btn_A span ,
a.btn_B span {
	display:inline-block;
}
a.btn_B{
	font-size: 0.875em;
}
a.btn_C{
	cursor: pointer;
	border:1px solid #005557;
	background: #005557;
	color: #fff;
}
a.btn_D{
	max-width: 340px;
}

/* ------------------------------------------------------------------------
    MV
------------------------------------------------------------------------  */
#MV{
	width: 100%;
}
#MV .swiper_image{
	display: none;
}
@media screen and (min-width:769px){
	#MV .swiper_image{
		display: block;
		background-repeat: no-repeat;
		background-position: 50%;
		background-size: cover;
	}
	#MV .swiper_sp{display: none;}
}

/* ------------------------------------------------------------------------
    PAGETOP
------------------------------------------------------------------------  */
#PAGETOP{
	width: 100%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
#PAGETOP > *{
	box-sizing: border-box;
}
#PAGETOP .TopTitle{
	width: 100%;
}
#PAGETOP .TopTitle h3{
	font-size: 1.875em;
	padding-bottom: .3em;
}
#PAGETOP .TopTitle p{
	font-weight: 300;
	font-size: .875em;
}
#PAGETOP .TopImage{
	width: 100%;
}
@media screen and (max-width:768px){
	#PAGETOP .TopTitle{ order: 2; text-align: center; padding: 2em 0;}
	#PAGETOP .TopImage{ order: 1;}
}
@media screen and (min-width:769px){
	#PAGETOP{
		height: 300px;
	}
	#PAGETOP > *{
		max-width: 50%;
	}
	#PAGETOP .TopTitle{
		padding-top: .5em;
		padding-bottom: .5em;
		padding-left: 1em;
		border-left: 3px solid #dcdcdc;
	}
	#PAGETOP .TopTitle h3{
	}
	#PAGETOP .TopImage{
		height: 280px;
		background-repeat: no-repeat;
		background-position: 50%;
		background-size: cover;
		
		border-radius: 10px;
		overflow: hidden;
	}
	#PAGETOP .TopImage img{
		display: none;
	}
}

/* ------------------------------------------------------------------------
    Facebook
------------------------------------------------------------------------  */
.facebook-wrapper {
	max-width: 500px;
	margin: 0 auto;
}
.facebook-wrapper > .fb-page {
	width: 100%;
}
.facebook-wrapper > .fb-page > span,
.facebook-wrapper iframe {
	width: 100% !important;
}

/* ------------------------------------------------------------------------
    Skype
------------------------------------------------------------------------  */
.Skype a {
	width: 100%;
	max-width: 375px;
}
@media screen and (min-width:1024px){
	.Skype a {
		max-width: none;
	}
}

/* ------------------------------------------------------------------------
    Calc
------------------------------------------------------------------------  */
/* Top */
#Calc_Top {
	width: 100%;
	background: #005557;
	color:#fff;
}
#Calc_Top > *{
	text-align: center;
	padding-left: 20px;
	padding-right: 20px;
}
#Calc_Top h3{
	padding-top: 30px;
	font-size: 1.625em;
	line-height: 1.5em;
	margin-bottom: .5em;
}
#Calc_Top p{
	font-weight: 300;
	font-size: .875em;
	padding-bottom: 30px;
}

/* contents */
#Calc_Contents{
	border-top: 1px solid #005557;
}
.Calc_Title {
	text-align: center;
	font-size: 1.125em;
	background: #005557;
	color: #fff;
	padding: .5em 0;
}
/* button */
.Calc-btnSet{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.Calc-btn {
	width: 100%;
	max-width:250px;
	text-align: center;
	margin-bottom: 1em;
	box-sizing: border-box;
	padding-left: 10px;
	padding-right: 10px;
}
.Calc-btn a {
	cursor: pointer;
	display:inline-block;
	width: 100%;
	max-width:250px;
	box-sizing: border-box;
	border:1px solid #898989;
	text-align:center;
	padding: .3em;
	background-image: url("../images/icon_check.png");
	background-repeat: no-repeat;
	background-position: left 10px top 50%;
	background-size: 16px;
}

/* Contact */
#Calc_Contact {
	border-top: 1px solid #dcdcdc;
	padding-top: 4.285em;
}

/* Result */
#Calc_Result {
	width: 100%;
	max-width: 750px;
	box-sizing: border-box;
	padding-left: 20px;
	padding-right: 20px;
	margin-left: auto;
	margin-right: auto;
}
#Calc_Result .Item{
	border-radius: 3px;
	background: #005557;
	color: #fff;
	padding: .5em 0;
	margin-top: 10px;
	margin-bottom: 10px;
	text-align: center;
}
#Calc_Result .Item.price{
	background: #a00000;
}

/* ------------------------------------------------------------------------
    INDEX
------------------------------------------------------------------------  */
.BI-Image{
	border: 1px solid #ccc;
	padding: 3px;
	box-sizing: border-box;
}
@media screen and (max-width:768px){
	.BI-Image{order: 1; margin-bottom: 20px;}
	.BI-Msg{order:2;}
}
@media screen and (min-width:769px){
	.BI-Msg{
		display: flex;
		align-items: center;
	}
}
/* CM */
.CMAREA {
	width: 100%;
	max-width: 750px;
	margin: 0 auto;
}
/* MEDIA */
.Media_msg {
	margin-bottom: 20px;
}
.NewsPaper{
	display: flex;
	align-items: center;
	margin-bottom: 15px;
}
.NewsPaper img{
	max-width: 90px;
	height: auto;
	padding-right: 1.5em;
}
@media screen and (min-width:769px){
	.NewsPaper img{
		max-width: 120px;
	}
}

/* SAMURAI */
#SAMURAI {
	border-top: 1px solid #ccc;
}
.SamuraiLogo{
	text-align: center;
}
.SamuraiLogo img{
	max-width: 285px;
	height: auto;
}
.SamuraiContents{
	padding-top: 1.875em;
	padding-bottom: 1.875em;
	padding-left: 20px;
	padding-right: 20px;
	border-radius: 7px;
	background: #f5f5f5;
	box-sizing: border-box;
	border: 1px solid #dcdcdc;
}

/* ------------------------------------------------------------------------
    CUSTOM
------------------------------------------------------------------------  */
.Custom_lifestyle{
	display: flex;
	margin-top: 1em !important;
	margin-bottom: 1em !important;
}
.Custom_lifestyle .Image{
	width: 120px;
}
.Custom_lifestyle .Message{
	width: calc(100% - 120px);
	box-sizing: border-box;
	padding-left: 20px;
	line-height: 1.5em;
}
@media screen and (min-width:769px){
	.Custom_lifestyle .Image {
		width: 200px;
	}
	.Custom_lifestyle .Message{
		width: calc(100% - 200px);
	}
}

/* Welfare Item */
#WELFARE_ITEM {
}
.Item_List_Top ,
.Item_List_Sub {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
}
.Item_List_Top .Item,
.Item_List_Sub .Item{
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	box-sizing: border-box;
}
.Item_List_Top .Item > *,
.Item_List_Sub .Item > *{
	width: 100%;
}
.WelfareName{
	position: relative;
	box-sizing: border-box;
	background: #f5f5f5;
	border-radius: 3px;
	padding-top: .2em;
	padding-bottom: .2em;
	padding-left: 1em;
	padding-right: 1em;
	margin-bottom: 1em;
	line-height: 1.5em;
	text-align: center;
	max-width: 48%;	
}
/* Top */
.Item_List_Top .Item .Image{
	max-width: 48%;
	margin-bottom: 1.5em;
	
	background-repeat: no-repeat;
	background-position: 50%;
	background-size: cover;
}
.Item_List_Top .Item .WelfareName{
}
.Item_List_Top .Item .Detail{
}

/* Sub */
.Item_List_Sub .Item {
	margin-top: 1em;
}
.Item_List_Sub .Item .Image{
	max-width: 48%;
	background-repeat: no-repeat;
	background-position: 50%;
	background-size: cover;
	margin-bottom: 1.5em;
}
.Item_List_Sub .Item .Detail{
}
.Item_List_Sub .Item .WelfareName{
}

/* bottom */
.WelfareBottom {
	margin-top: 3.57em;
}

@media screen and (max-width:768px){
	.Item_List_Top .Item,
	.Item_List_Sub .Item{
		align-items: center;
		margin-bottom: 1.5em;
	}
	.Item_List_Top .Item,
	.Item_List_Sub .Item:not(:last-child){
		border-bottom: 1px solid #e2e2e2;
		padding-bottom: 1.5em;
	}
	.Item_List_Sub .Item:first-child {
		margin-top: 0;
	}
}
@media screen and (min-width:769px){
	.Item_List_Top .Item{
		max-width: 30%;
	}
	.Item_List_Top .Item .Image,
	.Item_List_Top .Item .WelfareName,
	.Item_List_Top .Item .Detail{
		max-width: 100%;
	}
	.Item_List_Top .Item .WelfareName{
	}
	.Item_List_Top .Item .Image{
		margin-bottom: 1em;
	}
	/* Sub */
	.Item_List_Sub {
		margin-top: 1em;
	}
	.Item_List_Sub .Item{
		max-width: 48%;
		margin-top: 2em;
	}
	.Item_List_Sub .Item .Image{
		max-width: 200px;
		margin-bottom: 0;
	}
	.Item_List_Sub .Item .Detail{
		max-width: calc(100% - 220px);
	}
	.Item_List_Sub .Item .WelfareName{
		max-width: 100%;
	}
}

/* ------------------------------------------------------------------------
    FOREIGN
------------------------------------------------------------------------  */
.Block_Contents {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.Block_Contents .Item{
	width: 100%;
}
.Block_Contents .Item.Image{
}
.Block_Contents .Item.Text{
}
@media screen and (max-width:768px){
	.Block_Contents .Item.Image{
		order: 1;
	}
	.Block_Contents .Item.Text{
		order: 2;
		padding-bottom: 1.875em;
		padding-top: 1.875em;
	}
}
@media screen and (min-width:769px){
	.Block_Contents .Item.Image{
		max-width: 30%;
	}
	.Block_Contents .Item.Text{
		max-width: 70%;
		box-sizing: border-box;
		padding-left: 2em;
		padding-right: 2em;
	}
}

/* ------------------------------------------------------------------------
    CAUTION
------------------------------------------------------------------------  */
#CAUTION {
	border: 2px solid #b40000;
	background: rgba(180,0,0,0.2);
	color: #323232;
	padding: 20px;
}
.caution_message {
	display: flex;
	justify-content: center;
	border-radius: 5px;
	padding:.5em 1em;
	color:#fff;
	background:#b40000;
}

/* ------------------------------------------------------------------------
    Company
------------------------------------------------------------------------  */
#CompanyInfo {
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
	border-top: 1px solid #999;
	border-left: 1px solid #999;
	border-right: 1px solid #999;
}
.Company_List {
	display: flex;
	flex-wrap: wrap;
	
	border-bottom: 1px solid #999;
}
.Company_List > .Item{
	width: 100%;
	padding: .7em 1em;
	box-sizing: border-box;
	background: #fff;
}
.Company_List > .Item:first-child{
	background: #f5f5f5;
}
.Company_List > .Item span{
	height: 100%;
	display: flex;
	align-items: center;
}
@media screen and (max-width:768px){
	.Company_List > .Item:first-child{
		border-bottom: 1px solid #999;
	}
}
@media screen and (min-width:769px){
	.Company_List > .Item{
		max-width: calc(100% - 200px);
	}
	.Company_List > .Item:first-child{
		max-width: 200px;
		border-right: 1px solid #999;
	}
}

