@charset "utf-8";




/******************************************************************************
/* タイトル設定
******************************************************************************/

h4 {
	position: relative;
	padding-bottom: 10px;
	border-bottom: 4px solid #ccc;
	text-align: left;
	font-size: 110%;
	line-height: 110%;
	font-weight:600;
	margin-top: 30px;
	margin-bottom: 10px;
	color: #76CB5C;
}

h4::after {
	position: absolute;
	bottom: -4px;
	left: 0;
	z-index: 2;
	content: '';
	width: 20%;
	height: 4px;
	background-color: #76CB5C;
}

span.red {
	display: block;
	font-weight: 600;
	color: #BB0931;
	padding-bottom: 20px;
	font-size: 110%;
}

span.blue {
	font-weight: 600;
	color: #1796A4;
}



/******************************************************************************
/* コメントボックス
*******************************************************************************/

.box01 {
	width: 100%;
	padding: 20px;
	border: solid 1px #76CB5C; 
	text-align: left;
	margin-top: 30px;
	margin-bottom: 80px;
}



.box01 ol.number {
	margin-top: 0px;
	padding-left: 30px;
	list-style-type: decimal;

}

.box01 .number li {
	margin-bottom: 10px;

}

.box01 ol.number2 {
	padding-left: 30px;
	margin-top: 20px;
	margin-bottom: 20px;
	list-style-type: decimal;

}


.box01 ul.number {
	padding-left: 30px;
	margin-top: 20px;
	margin-bottom: 20px;
	list-style-type: disc;

}



/********************************************************************************************************
/* 本文ボックス
*********************************************************************************************************/



.ttlTombo {
	position: relative;
	display: block;
	padding: 20px 20px 10px 20px;
	border: 1px dotted #bdc3c7;
	color: #000000;
	text-align: left;
	margin-top: 30px;
	margin-bottom: 30px;
	font-size: 100%;
	line-height: 1.5;

}

.ttlTombo:before,
.ttlTombo:after,
.ttlTombo > span:before,
.ttlTombo > span:after {
	content: "";
	position: absolute;
	width: 7px;
	height: 7px;
	background: url(../images/imgcorner.png) 0 0 no-repeat;
}

.ttlTombo:before {
	top: -1px;
	left: -1px;
	transform: rotate(0deg);
}
.ttlTombo:after {
	top: -1px;
	right: -1px;
	transform: rotate(90deg);
}
.ttlTombo > span:before {
	bottom: -1px;
	left: -1px;
	transform: rotate(-90deg);
}
.ttlTombo > span:after {
	bottom: -1px;
	right: -1px;
	transform: rotate(180deg);
}



.ttlTombo p {
	font-weight: 500;
	padding-bottom: 10px;


}

.ttlTombo p.contact2 {
	font-weight: 600;
	padding-bottom: 10px;
	font-size: 110%;
	color: #BB0931;

}


/******************************************************************************
/* ヘッダー設定
******************************************************************************/


.middle_menu01_image{
	position: relative;
	width:100%;
	height:200px;
	margin-bottom: 80px;
	z-index: 1;
}




/****************************************************************************************
/* ページタイトル設定
****************************************************************************************/




.obi {
	position: absolute;
	bottom: 0%;
	left: 2.5%;
	margin: 0 auto 0 auto;
	width: 0px;
	height: 50px; 
	z-index: 1000;
	background-color: #ffffff;
	animation-name: anime1;
	animation-duration: 1s;
	animation-timing-function: ease-in-out;
	animation-iteration-count: 1;
	animation-direction: normal;
	animation-delay: 1s;
	animation-fill-mode: forwards;
	opacity: 1;
	text-align: center;
}

@keyframes anime1 {
  0% {
    width: 330px;
    height: 0px;
  }

  100% {
    width: 330px;
    height: 50px;
    background-color: #ffffff;
  }
}


.obi_in {
	position: absolute;
	bottom: 0%;
	left: 0%;
	margin: 0 auto 0 auto;
	width: 0px;
	height: 35px; 
	z-index: 1000;
	background-color: #ffffff;
	animation-name: anime2;
	animation-duration: 1s;
	animation-timing-function: ease-in-out;
	animation-iteration-count: 1;
	animation-direction: normal;
	animation-delay: 1.5s;
	animation-fill-mode: forwards;
	opacity: 0;
	text-align: center;
}

.obi_in img {
	width: auto;
	height: 35px;
}

@keyframes anime2 {
  0% {
    width: 330px;
    height: 0px;
  }

  100% {
    width: 330px;
    height: 35px;
	opacity: 1;

  }
}



.service_title01_area_in_image {
	position: absolute;
	z-index: 0;
	top: 0px;
	left: 0px;
	margin: 0px auto 0;
	text-align: center;
	opacity: 0;
	width:100%;
	height: 200px;
	object-fit: cover;
	background-color: #ffffff;
	animation-name: anime3;
	animation-duration: 1s;
	animation-timing-function: ease-in-out;
	animation-iteration-count: 1;
	animation-direction: normal;
	animation-delay: 0s;
	animation-fill-mode: forwards;
	opacity: 0;

}


@keyframes anime3 {
  0% {
	opacity: 0;

  }

  100% {

	opacity: 1;

  }
}





/******************************************************************************
/* 加入までの流れ設定
******************************************************************************/


.flex-release_comment{
	margin:50px auto 80px auto;
	width:100%;

}


.flex-release_comment {
  display: flex;
}

.flex-release_comment .flex-1 { flex: 1; }

.flex-release_comment .flex-2 {
	flex: 1; 
	margin-top:30px;
	margin-left:30px;
	margin-bottom: 1px;
	background-color: #ffffff;
	text-align: justify;

}

.flex-release_comment .flex-3 {
	flex: 1; 
	margin-left:30px;

}


.flex-release_comment .flex-1 img {
	width:100%;
	height: auto;
}

.flex-release_comment .flex-3 img {
	width:100%;
	height: auto;

}

/******************************************************************************
/* バックボックス設定
*******************************************************************************/



.back_box {
	margin: 50px auto 0px auto;
	width: 100%;
	text-align: right;

}





/******************************************************************************
/* 戻るボタン設定
*******************************************************************************/


.datafile_button {
	display: inline-block;
	height: 50px;
	width: 200px;
	text-decoration: none;
	font-size: 100%;
	font-weight: 700;
	text-align: center;
	color: #4758E0;
	border: 1px solid #cbcbcb;
	border-bottom: 1px solid #b2b1b1;
	text-shadow: 0px 1px 0px #fafafa;
	-webkit-box-shadow: 0 1px 0 #f5f5f5 inset, 1px 1px 1px #e9e9e9;
	-moz-box-shadow: 0 1px 0 #f5f5f5 inset, 1px 1px 1px #e9e9e9;
	box-shadow: 0 1px 0 #f5f5f5 inset, 1px 1px 1px #e9e9e9;
	background: #eeeeee;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.5, #ffffff), color-stop(0.5, #eeeeee));
	background: -moz-linear-gradient(top, #ffffff 50%, #eeeeee 50%);
	background: -o-linear-gradient(top, #ffffff 50%, #eeeeee 50%);
	background: -ms-linear-gradient(top, #ffffff 50%, #eeeeee 50%);
	background: linear-gradient(top, #ffffff 50%, #eeeeee 50%);
	filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#ffffff 50%', endColorstr='#eeeeee 50%');
	-ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#ffffff 50%', endColorstr='#eeeeee 50%')";
	border-radius: 5px;
	margin-right: 0px;
	cursor: pointer;

}
.datafile_button:active{ 
	-ms-transform: translateY(2px);
	-webkit-transform: translateY(2px);
	transform: translateY(2px);
	box-shadow: none;
}

.datafile_button span {
	display: block;
	font-size: 70%;
	font-weight: 700;
	margin-top: 5px;
}

.datafile_button p {
	font-size: 100%;
	font-weight: 700;
	margin-top: 0px;
	margin-left: 0px;
}



/******************************************************************************
/* マップ設定
*******************************************************************************/


#mapcontainer {
	margin: 20px auto 20px auto;


}



/******************************************************************************
/* 事例設定
*******************************************************************************/



ul.case_submenu_nav {
	margin-top: 20px;
	margin-bottom: 20px;
	width:100%; 
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}


ul.case_submenu_nav::after {
	content: "";
	display: block;
	width: 32%;
	height: 0;
}

 
ul.case_submenu_nav li {
	letter-spacing:normal;
	display: inline-block;
	width: 32%; 
	vertical-align: top;
	text-align: center;
	margin-bottom: 20px;

}





.case_box30 {
	margin: 0 auto;
 	background: #ffffff;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
	padding-top: 15px;
	padding-left: 15px;
	padding-right: 15px;
	padding-bottom: 10px;
	border-radius: 5px;
	height: 100%;
}

.case_box30 p {
	margin-top: 10px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	font-weight: 700;
	color: #9dc04c;

}



.case_box30 span {

  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2; /* 任意の行数を指定 */
 text-align: left;
	color: #555555;
}




.case_box30.trim {
	overflow: hidden;
	width: 100%;
	max-height: 250px;
	margin: 0 auto;
}



.case_box30.trim img {
	object-fit: cover;
	transform: scale(1);
	transition: 0.3s ease-in-out;
	width: 100%;
	height: 250px;
	object-position: 50% 50%
}

.case_box30.trim:hover img {
	transform: scale(1.3);
}


.case_box30 .logo_area {
	width: 100%;
	display: block;
	margin: 15px auto 15px auto;
	text-align: left;

}

.case_box30 .logo_area img {
	width: auto;
	height: 30px;

}




/******************************************************************************
/* 詳細ページ写真レイアウト
*******************************************************************************/

ul.submenu_nav2 {

	width:100%; 
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}


ul.submenu_nav2::after {
	content: "";
	display: block;
	width: 32%;
	height: 0;
}

ul.submenu_nav2 li:first-child {
	letter-spacing:normal;
	display: inline-block;
	width: 100%; 
	vertical-align: top;
	text-align: center;
	margin-bottom: 15px;

}

ul.submenu_nav2 li:first-child .detail_image_size {
	width: 100%;
	height: 450px;
}

 
ul.submenu_nav2 li {
	letter-spacing:normal;
	display: inline-block;
	width: 32%; 
	vertical-align: top;
	text-align: center;
	margin-bottom: 10px;

}


ul.submenu_nav2 img {
	border-radius: 8px;
}



.detail_image_size {
	object-fit: cover;
	width: 100%;
	height: 200px;
	object-position: 50% 50%
}



a.order {
	position: absolute;
	top: 0px;
	right: 0px;
	width: 30px;
	height: 30px;
}




.goods2 {
	position: relative;
	margin-bottom: 0px;
	width:100%;
	height: 200px;
	z-index:1;

}

.goods2 a { display: block; }

a.goods-menu2 {
	width:100%;
}

.code {
	margin-bottom: 10px;

}


.main_copy {
	width: 100%;
	margin-top: 30px;
	margin-bottom: 30px;

}


/******************************************************************************
/* ノベルティ詳細ページレイアウト
*******************************************************************************/


.main_area {
	width: 100%;
	margin: 30px auto 0px auto;

}

.detail_main{
	width: 100%;
	margin: 0px auto 0px auto;
	font-size: 100%;

}

.detail_left {
	float: left;
	width:50%; 
	margin: 0px auto 0;
}

.detail_right {
	float: right;
	width:50%;
	padding-left: 30px;
	text-align: left;
	margin: 0px auto 0;

}


.detail_right p {
	margin-bottom: 30px;
	line-height: 2.0;

}

.detail_right .cost {
	width: 100%;
	font-size: 110%;
	font-weight: 500;
	margin-bottom: 0px;
	line-height: 2.0;
	text-align: right;
}

.detail_right .cost span.tanka {
	color: #AA7790;
	font-size: 120%;
	font-weight: 600;
	margin-bottom: 0px;
	line-height: 2.0;
	text-align: right;
}

.detail_right .cost p {
	margin-bottom: -10px;

}


.detail_right .cost span {
	font-size: 80%;
}


.detail_right div {
	line-height: 1.5;

}



.detail_main .logo_area{
	width: 35%;

}

.detail_main .logo_area2{
	width: 100%;
	font-weight: 700;
	background-color: #efefef;
	padding: 10px;
}

/******************************************************************************
/* 利用事例テーブル01
*******************************************************************************/

.company_table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	font-size: 90%;

}

.company_table tr {
	border-bottom: 1px solid #B0C4DE;
}

.company_table th {
	padding: 10px;
	font-weight: 700;

}

.company_table td {
	padding: 10px;
}


/******************************************************************************
/* 利用事例テーブル01
*******************************************************************************/

.company_table2 {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}

.company_table2 tr {
	border-bottom: 1px solid #B0C4DE;
}

.company_table2 th {
	padding: 10px;
	font-weight: 700;
	font-size: 90%;
	white-space: nowrap;
	width: 150px;
}

.company_table2 td {
	padding-top: 10px;
	padding-bottom: 10px;
}



/******************************************************************************
/* 利用事例タイトル
*******************************************************************************/


 
.title_box2 {
	margin: 0 auto 20px auto;
	display:block;
	box-sizing:border-box;
	width:100%;
	padding-left: 10px;
	padding-top: 8px;
	padding-bottom: 10px;
	background-color: #495B87;
	color: #ffffff;
	font-weight: 700;
}


 
.title_box3 {
	margin: 30px auto 20px auto;
	display:block;
	box-sizing:border-box;
	width:100%;
	padding-left: 10px;
	padding-top: 8px;
	padding-bottom: 10px;
	background-color: #495B87;
	color: #ffffff;
	font-weight: 700;
}


/******************************************************************************
/* ボックスエリア
*******************************************************************************/


.offset_box{
	box-shadow:1px 1px 1px 1px rgba(0, 0, 0.1, 0.05);
	border:1px solid #cccccc;
	width:100%;
	height:auto;
	border-radius: 5px;
	margin-top:20px;
}


.offset_box_in{
	width:100%;
	height:auto;
	padding:20px;
	text-align:left;

}




/*------------------------------------------------------------*/
/*------------------------------------------------------------*/
/* 601 - 768用（タブレット用）の記述 */
/*------------------------------------------------------------*/
/*------------------------------------------------------------*/


/******************************************************************************
/* タブレットサイズ
*******************************************************************************/


@media screen and (max-width:1200px) {



.pcOnly {
	display: none!important;
}
.spOnly {
	display: block!important;
}







}



/*------------------------------------------------------------*/
/*------------------------------------------------------------*/
/* 600px - 100px用（スマートフォン用）の記述 */
/*------------------------------------------------------------*/
/*------------------------------------------------------------*/


@media screen and (min-width: 100px) and (max-width: 600px)  {



/******************************************************************************
/* ノベルティ詳細ページレイアウト
*******************************************************************************/


.main_area {
	width: 100%;
	margin: 30px auto 0px auto;

}

.detail_main{
	width: 100%;
	margin: 0px auto 0px auto;
	font-size: 100%;

}

.detail_left {
	float: left;
	width:100%; 
	margin: 0px auto 0;
}

.detail_right {
	float: left;
	width:100%; 
	padding-left: 0px;
	text-align: left;
	margin: 0px auto 0;

}


.detail_right p {
	margin-bottom: 30px;
	line-height: 2.0;

}

.detail_right .cost {
	width: 100%;
	font-size: 110%;
	font-weight: 500;
	margin-bottom: 0px;
	line-height: 2.0;
	text-align: right;
}

.detail_right .cost span.tanka {
	color: #AA7790;
	font-size: 120%;
	font-weight: 600;
	margin-bottom: 0px;
	line-height: 2.0;
	text-align: right;
}

.detail_right .cost p {
	margin-bottom: -10px;

}


.detail_right .cost span {
	font-size: 80%;
}


.detail_right div {
	line-height: 1.5;

}







}
