@charset "UTF-8";

body {
	overflow: hidden;
	font-family:"Noto Sans Japanese","Noto Sans","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",Osaka,verdana,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	color: #1F1F1F;
}
html {
	overflow-y: scroll;
}

#logo{
	width: 1100px;
	text-align: left;
	margin: 10px auto;
	overflow: hidden;
}

#titleback {
    background: url('../img/case_bg.jpg') no-repeat center;
    background-size: auto;
    background-size: cover;
    color: #333;
}
#titleback h2{
	padding: 80px 0;
	color: #fff;
}
.lead {
    text-align: center;
    line-height: 1.7;
    letter-spacing: 0.05em;
    font-size: 17px;
	padding: 20px 0 20px;
	background: #fff;
}

#new{
	width: 960px;
	height: 220px;
	background: #1D1D1D;
	overflow: hidden;
	margin-bottom: 30px;
}
#new:hover{
	opacity: 0.7;
}
.new_left{
	float: left;
	width: 480px;
}
.new_right{
	float: right;
	color: #fff;
	width: 440px;
	padding: 20px 20px;
}
.new_title{
	color: #E00003;
	font-style:italic;
}
.new_text{
	font-weight: bold;
	font-size: 150%;
	margin-bottom: 15px;
	line-height: 1.5;
}
.new_company{
	font-weight: bold;
	font-size: 120%;
}
.case_main_btn{
	font-weight: bold;
	font-size: 120%;
	text-align: right;
}
a .case_main_btn{
	color: #fff;
	position: relative;
	margin-top: 20px;
}
#side{
	width: 330px;
	float: right;
	background: #fff;
	margin: 20px 0 0 0; 
}
#contents{
	margin: 20px 0;
	width: 740px;
	float: left;
	font-size: 16px;
	line-height: 190%;
}

#contents2{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap:20px;
	margin-bottom: 20px;
}
.case_cate{
	float: left;
	border: 1px solid #D0D0D0;
	background: #fff;
}
.case_cate:hover{
	border: 1px solid #1f64a5;
}

.case_cate .case_img{
	overflow: hidden;
	width: 100%;
	height: 200px;
}
.case_cate img{
	width: 100%;
	display: block;
	transition-duration: 0.5s;	/*変化に掛かる時間*/
}
.case_cate img:hover{
	transform: scale(1.1);
	transition-duration: 0.3s;
}
.case{
 	position: relative;
	top: -20px;
	left: 10px;
	color: #fff !important;
	background: #c71816;
	width: 75px;
	height: 24px;
	font-size: 20px;
	font-weight: bold;
	padding: 5px 8px !important;
	font-style: italic;
}
.top_title{
	font-weight: bold;
	font-size: 120%;
	border-bottom: 1px solid #EDEDED;
	padding-bottom: 10px;
	margin-bottom: 10px !important;
}
.top_title strong.ttl{
	font-weight: bold;
	font-size: 100%;
	background:#ddd;
	border-radius: 10px;
	padding:1% 3%;
}
.case_cate_in{
	padding: 15px;
}
h2{
	color: #fff;
	text-align: center;
	font-size: 280%;
    text-shadow: 2px 2px 1px #2c2c2c;
    -2px 2px 1px #2c2c2c;
    2px -2px 1px #2c2c2c;
    -2px -2px 1px #2c2c2c;
	padding: 77px;
}
#Inner{
	margin: 0 auto;
    color: #292929;
	width: 960px;
}
#Inner2{
	margin: 0 auto;
    color: #333;
	width: 1100px;
}
#case{
	color: #ca2d1d;
	font-size: 170%;
	font-style: italic;
	text-align: center;
	margin: 40px 0 15px;
}
hr{
	height: 1px;
	border: none;
	border-top: 1px #353535 solid;
	width: 40px;
	margin: 0 auto 20px;
}
.title{
	font-size: 25px;
	line-height: 150%;
	text-align: center;
	margin: 0 auto 10px;
	padding: 10px 0 0;
	font-weight: bold;
}
h3{
	font-size: 30px;
	line-height: 150%;
	text-align: center;
	margin: 10px auto 10px;
	padding: 30px 0 20px;
	font-weight: bold;
    background: url('../img/title_bg.png') no-repeat top left;
}
.parenthesis {
  position: relative;
  padding: 15px 20px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
	line-height: 160%;
	font-size: 15px;
	background: #fff;
	border-top: 1px solid #D5D5D5;
	border-bottom: 1px solid #D5D5D5;
}
#parenthesis_name{
	color: #1f64a5;
	font-weight: bold;
	margin-bottom: 10px;
	font-size: 120%;
	line-height: 1.7;
}
.sub_title{
	border-left: 6px solid #1f64a5;
	font-size: 23px;
	padding: 0 0 0 12px;
	margin: 30px 0 10px;
	font-weight: bold;
}
<!--   .cate span{
	background-color: #FBFDA4;
}  -->
.cate span{
	background-color: #78bbe6;
}
.cate .name{
	color: #1f64a5;
}
p.comment{
	font-size: 90%;
	color: #6C6C6C;
	line-height: 130%;
	margin: 8px 0 0 0;
}
#dl{
	width: 90%;
	background: #F5F5F5;
	margin: 30px auto;
	padding: 10px;
	font-size: 90%;
	line-height: 150%;
}
.marker{
	background: #fffea2;
	color: #333 !important;
	padding: 1px;
	font-weight: normal !important;
}
#caes_btn{
	width: 600px;
	margin: 30px auto 30px;
	height: 30px;
}
#btn_ichran{
	color: #1f64a5;
	border: 1px solid #1f64a5;
	width: 190px;
	text-align: center;
	padding: 5px 0;
	float: left;
	border-radius: 5px 5px 5px 5px;
	margin: 0 10px;
}
#btn_previous,#btn_next{
	color: #1f64a5;
	border: 1px solid #1f64a5;
	width: 190px;
	text-align: center;
	padding: 5px 0;
	float: left;
	border-radius: 5px 5px 5px 5px;
}

#btn_previous:hover,#btn_ichran:hover,#btn_next:hover{
	color: #FFFFFF;
	background: #1f64a5;
}
#menu_footer{
	width: 100%;
	color: #fff;
	background: #717171;
	overflow: hidden;
}
#menu_footer ul{
	float: left;
	width: 25%;
}
#menu_footer li a{
	color: #fff;
	text-decoration: none;
}
#menu_footer li a:hover{
	text-decoration: underline;
}
#menu_footer_in{
	width: 960px;
	margin: 20px auto;
	overflow: hidden;
}

div.reason {
    margin: 5% auto;
    width: 100%;
    border: 1px solid #ccc;
    overflow: hidden;
    display: table;
}

.reason_ttl {
    background: #555555;
    color: #fff;
    text-align: center;
    display: table-cell;
    vertical-align: middle;
    width: 20%;
    font-size: 120%;
    font-weight: 400;
}
div.reason_content ul {
	padding: 10px 0;
}
div.reason_content ul li {
    line-height: 200%;
    list-style: none;
	padding: 0 10px;
}

.question{
	font-weight: bold;
	margin: 30px 0 0;
	color: #5F5F5F;
}
.text{
	margin: 20px 0;
}
.img{
	margin: 3% 0 1%;
	vertical-align: middle;
}
.other{
	margin: 20px 0 0 0;
}
.other p{
	margin: 5px 0 0 0;
	font-weight: bold;
}
.side_title{
	background: #1f64a5;
	color: #fff;
	font-weight: bold;
	padding: 5px 0 5px 10px;
	font-size: 110%;
}
#side a{
	text-decoration: none;
}
#side a:hover{
	opacity: 0.7;
}

.footer_product_purchace {
    margin: 30px auto;
    padding: 20px;
    border: 1px solid #bbb;
    border-top-color: rgb(187, 187, 187);
    border-top-color: #011287;
    overflow: hidden;
    background: #f3f4f6;
}
.footer_product_purchace .purchace_content {
    overflow: hidden;
}

.footer_product_purchace .thumbnail {
    width: 25%;
    display: block;
    float: left;
    margin-right: 30px;
    padding: 10px;
    background: #fff;
}
.post .text_area {
    overflow: hidden;
}
.footer_product_purchace .name {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 15px;
}

.footer_product_purchace .description ul li {
    list-style-type: disc;
    margin-left: 1.25em;
}
.footer_product_purchace .link {
    margin-top: 15px;
}
.footer_product_purchace .link ul {
    overflow: hidden;
}

.footer_product_purchace .link li {
    width: 45%;
    float: left;
    margin-right: 15px;
	border: 1px solid #555;
}
a.btn.btn02 {
    color: #333 !important;
    background: #fff;
}
a.btn.btn02:hover{
    color: #fff !important;
    background: #333;
}
.footer_product_purchace .link li a {
    display: block;
    padding: 10px 30px;
}
.description_title{
	font-weight: bold;
	color: #1f64a5;
	font-size: 110%;
}
.interview a:hover{
	opacity: 0.7;
}
.interview_archive_list_small{
	margin-bottom: 20px;
}
.interview_archive_list_small .interview {
    margin-top: -1px;
    position: relative;
}
.interview_archive_list_small .interview > a {
    color: #111;
    text-decoration: none;
    display: block;
    border: 1px solid #ccc;
    overflow: hidden;
    padding: 15px 40px 15px 15px;
    position: relative;
    z-index: 1;
}

.interview_archive_list_small .interview > a .catch {
    color: #866c43 !important;
    font-weight: 700;
    line-height: 1.5;
}
.interview_archive_list_small .interview > a {
    color: #111;
    text-decoration: none;
    display: block;
    border: 1px solid #ccc;
    overflow: hidden;
    padding: 15px 40px 15px 15px;
    position: relative;
    z-index: 1;
}
.interview_archive_list_small .interview > a:after {
    font-size: 24px;
    font-family: FontAwesome;
    font-weight: normal !important;
    content: "\f105";
    color: #ccc;
    position: absolute;
    right: 15px;
    top: 50%;
    margin-top: -12px;
}
	.other p{
		font-size:1rem;
	}

@media (max-width: 767px){
	#Outline,#MainArea960_row1,#Inner{
		float: none;
		width: 100%;
	}
	#Inner2{
		width: auto;
	}
	#logo,#nav_sp_main,.nav_sp{
		width: 100%;
	}
	#menu,.parenthesis,.cate,#caes_btn,#contents,#new{
		width: 98%;
		margin: 0 auto 20px;
	}
	#new,.new_left,.new_right{
		width: auto;
		height: auto;
	}
	#contents{
		float: none;
	}
	.cate{
		margin: 0 auto;
	}
	#btn_previous,#btn_ichran,#btn_next{
		width: 29%;
	}
	.nav{
		display: none;
	}
	#contents2{
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap:10px;
	}
	.case_cate{
		margin: 0 1% 30px;
		font-size: 120%;
		line-height: 150%;
	}
	.case_cate .soon{
		margin: 0 1% 30px;
		font-size: 120%;
		line-height: 150%;
		background:;#eeel
	}
	#menu_footer ul{
		width: 49%;
		font-size: 110%;
	}
	#menu_footer ul li{
		padding: 3px 0;
	}
	#menu_footer_in{
		width: auto;
	}
	.case_cate .case_img{
		width: auto;
	}
}
@media (min-width: 768px){
	#nav_sp_main{
		display: none;
	}

}
@media only screen and (min-width: 1025px){
	#Inner{
		width: 960px;
	}
	#Inner2{
		width: 1100px;
	}
}
@media only screen and (max-width: 1100px){
	#menu_footer_in{
		width: 100%;
	}
	#menu{
		width: auto;
	}
	.nav{
		margin: 0 auto 10px;
	}
#Inner2 {
  width: 100%;
}
#contents {
  width: 96%;
	margin:1% auto;
	float:none;
}
	#side{
		float:none;
	width:90%;
	margin:1% auto;
	}
	.title{
		border-bottom:1px solid #ccc;
		padding-bottom:20px;
	}
	ul#other_wrapper {
	  width: 100%;
	  display: grid;
	  grid-template-columns: 1fr 1fr;
	  gap: 10px;
	  padding: 0;
	}
	.other p{
		line-height:160%;
	}
}
