@charset "UTF-8";

.case .wrap{
	max-width: none;
}
.case .wrap1160{
	max-width: 1160px;
	margin-left: auto;
	margin-right: auto;
}


/* select
--------------------------------*/
.select_text1{
    background-color: #00a53c;
    color: #fff;
    width: 180px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -ms-align-items: center;
    align-items: center;
    line-height: 1;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    padding: 10px 5px 10px 10px;
    font-size: 18px;
}
.select_text1 .icon{
    width: 25px;
}
.select_text2{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -ms-align-items: center;
    align-items: center;
    line-height: 1;
    margin-bottom: 10px;
    font-size: 16px;
}
.select_text2 .icon{
    font-size: 0;
    margin-right: 5px;
}


.select_block {
	margin-bottom: 50px;
    border-radius: 0 5px 5px 5px;
    border: 5px solid #00a53c;
    padding: 25px;
    margin-top: -5px;
    position: relative;
}
.select_block:after{
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 30px 0 30px;
    border-color: #00a53d transparent transparent transparent;
    position: absolute;
    bottom: -30px;
    left: calc(50% - 30px);
}
.select_block .txt {
	text-align: center;
	margin-top: 20px;
}
.select_block .marker {
	text-align: center;
	background: linear-gradient(transparent 70%, #ffff00 70%);
}
.select_block .select {
	display: flex;
	flex-wrap: wrap;
	max-width: 100%;
	margin: 0 auto 20px;
}
.select_block .select li {
	position: relative;
	margin-right: 1.25%;
    width: 24%;
}
.select_block .select li:nth-child(4n) {
	margin-right: 0;
}
.select_block .select li:nth-child(n+5) {
	margin-top: 10px;
}
.select_block .select label {
	display: inline-block;
    width: 100%;
}
.select_block .select label input {
	visibility: hidden;
	width: 1px;
	position: absolute;
	top: 0;
}
.select_block .select label span {
	font-size: 1.8rem;
	color: #969696;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 60px;
	border: 5px solid #969696;
	border-radius: 5px;
	cursor: pointer;
}
.ie .select_block .select label span {
	padding-top: 1px;
}
.select_block .select label span::before, .select_block .select label span::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 15px;
}
.ie .select_block .select label span::before, .ie .select_block .select label span::after {
	margin-top: -4px;
}
.select_block .select label span::before {
	width: 20px;
	height: 20px;
	background: #969696;
	border-radius: 50%;
	transform: translateY(-50%);
}
.select_block .select label span::after {
	left: 20px;
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
	width: 10px;
	height: 8px;
	transform: translateY(-65%) rotate(-45deg);
}
.select_block .select label input:checked + span {
	color: #00a53c;
	border-color: #00a53c;
}
.select_block .select label input:checked + span::before {
	background: #00a53c;
}
.select_block .btn {
	margin-top: 40px;
}
.case_archive{
	background-color: #e6e6e6;
	padding: 80px 0 20px;
}
.result_list{
	margin-top: 0;
}
.result_list > div:first-of-type{
	padding-bottom: 0px;
}
.result_list > div.pagination{
	padding-top: 0;
}
#contact{
	margin-top: 0;
}
.list_link_wrap{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 80px 0;
}
.list_link_wrap .btn_return_link{
	margin: 0 10px 10px;
}

@media screen and (max-width: 767px) {
	.select_text1{
		margin-top: 20px;
	}
	.select_block {
		margin-top: 0;
	}
	.select_block .txt {
		margin-top: 4%;
	}
	.select_block .select {
		max-width: 100%;
		margin: 4% auto 20px;
	}
	.select_block .select li, .select_block .select li:nth-child(5n) {
		position: relative;
		width: 49%;
		margin-right: 2%;
	}
	.select_block .select li:nth-child(2n) {
		margin-right: 0;
	}
	.select_block .select li:nth-child(n+3) {
		margin-top: 2%;
	}
	.select_block .select label {
		display: block;
		width: 100%;
	}
	.select_block .select label span {
		font-size: 4vw;
		width: 100%;
		height: 12.7vw;
		border-width: 3px;
		border-radius: 1.25vw;
	}
	.select_block .select label span::before, .select_block .select label span::after {
		left: 3.5vw;
	}
	.select_block .select label span::before {
		width: 5.5vw;
		height: 5.5vw;
	}
	.select_block .select label span::after {
		left: 4.9vw;
		width: 2.7vw;
		height: 2vw;
	}
	.select_block .btn {
		margin-top: 11.2%;
	}
}


/*************************
	詳細ページ
*************************/
.case_title{
	color: #00a53c;
}
.typetag{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 20px;
	margin-top: 20px;
}
.typetag li{
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	padding: 12px;
	border: 1px solid #000;
	margin-right: 10px;
	margin-bottom: 10px;
}

.case_archive .typetag{
	margin-bottom: 0;
}
.case_archive .typetag li{
	font-size: 14px;
	padding: 6px 8px;
}

.toptext{
	margin-bottom: 20px;
}
.case_num{
	color: #99dbb1;
	font-weight: 400;
	line-height: 1;
	font-size: 150px;
	/*transform: translateX(-30%);*/
	margin-top: -110px;
	margin-bottom: 30px;
}
.case_num small{
	font-size: 68%;
	vertical-align: top;
}
#detail.case{
	background: rgb(255,255,255);
	background: -moz-linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 30%, rgba(230,230,230,1) 30%, rgba(230,230,230,1) 100%);
	background: -webkit-linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 30%, rgba(230,230,230,1) 30%, rgba(230,230,230,1) 100%);
	background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 30%, rgba(230,230,230,1) 30%, rgba(230,230,230,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#e6e6e6",GradientType=1);
	padding-bottom: 40px;
}
.case_info{
	background-color: #fff;
	padding: 20px;
}
.case_info dl{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}
.case_info dl dt{
	color: #fff;
	height: 60px;
	padding: 10px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-ms-align-items: center;
	align-items: center;
	background-color: #2e9994;
	position: relative;
	margin-right: 40px;
}
.case_info dl dt::before{
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 30px 0 30px 20px;
	border-color: transparent transparent transparent #2e9994;
	position: absolute;
	top: 0;
	right: -20px;
}
.case_info dl dt .icon{
	margin-right: 6px;
}
.case_mainimg{
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
}
.case_mainimg img{
	width: 100%;
	border-radius: 5px 5px 0 0;
}

#case_content{
	width: 1000px;
	margin: 0 auto;
}
#case_content div{
	margin-bottom: 20px;
}
#case_content h2{
	color: #00a53c;
	font-size: 24px;
	font-weight: 700;
	line-height: 36px;
	margin-bottom: 20px;
}
#case_content p{
	margin-bottom: 30px;
}
#case_content img{
	display: block;
	margin: 0 auto 40px;
}

#photo{
	padding-top: 0;
}
.ttl_b_line{
	margin-top: 0;
}
.grid5 > *{
	height: 222px;
	max-height: 222px;
}
.grid5 figure img{
	width: 100%;
	height: 222px;
	object-fit: cover;
}
.btn_return_link {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	justify-content: center;
	-ms-align-items: center;
	align-items: center;
    margin: 80px auto;
    width: 300px;
    height: 60px;
    line-height: 1.1;
    text-align: center;
    color: #fff;
    font-size: 16px;
    border-radius: 5px;
    background-image: url(../img/whatsnew/link_dots.png);
    background-position: 10px center;
    background-repeat: no-repeat;
    background-color: #323232;
}
.case_catalog{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.case_catalog li{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	width: 48.5%;
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
	margin-bottom: 30px;
}
.case_catalog li figure{
	width: 35%;
	background-color: #CDEED9;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	-ms-align-items: center;
	align-items: center;
	font-size: 0;
	padding: 18px 0 0 18px;
}
.case_catalog li dl{
	width: 65%;
	padding: 20px 24px 60px;
	position: relative;
}
.case_catalog li dl dt{
	color: #00a53c;
	font-size: 18px;
	font-weight: 700;
	line-height: 24px;
	transform: scaleY(1);
	margin-bottom: 10px;
}
.case_catalog li dl dd p{
	font-size: 14px;
	line-height: 1.7;
}
.catalog_link{
	position: absolute;
	bottom: 20px;
	right: 24px;
}
.catalog_link a{
	width: 188px;
	height: 34px;
	font-size: 14px;
}
.result_list > div{
	border-top:none;
	margin-bottom: 60px;
}
#case_faq{
	width: 1080px;
	margin:0 auto;
}
#case_faq dl{
	width: 640px;
}
#case_faq div.faq_box:nth-of-type(even){
	flex-flow: row-reverse;
}
#case_faq dt{
    font-size: 1.8rem;
    color: #00a53c;
    line-height: 30px;
    position: relative;
    padding-left: calc(49px + .5em);
    margin-bottom: 1em;
}
#case_faq dt span.oswald{
    font-size: 2rem;
    line-height: 49px;
    display: inline-block;
    width: 49px;
    text-align: center;
    background: #00a53c;
    color: #fff;
    border-radius: 100px;
    margin-right: .5em;
    position: absolute;
    top: -10px;
    left: 0;
}
#case_faq figure{
	width: 400px;
}
#case_faq .faq_box{
    border-top: 1px solid #c8c8c8;
    padding: 40px 0;
}
.free_box_in{
	padding:0 40px;
}
.free_box_in h3{
	font-size: 2.1rem;
	color: #00a53c;
}
.free_box_in > div{
    font-size: 1.6rem;
    line-height: 1.7em;
    margin: 20px 0;
}
.free_box_in > figure img{
	width: 100%;
}
ul.case_type_ul{
    display: inline-block;
    margin-right: 15px;
}
#case_faq dt span.oswald img{
	width: 36%;
}
#case_faq.case_point dt span.oswald{
    padding-bottom: 6px;
    line-height: 42px;
}
.list_link_wrap{

}

.case_archive .result_list .result{
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}
.sort_wrap{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid #c8c8c8;
	padding-bottom: 18px!important;
}
.sort_wrap .btn_normal{
	height: 40px;
}
.sort_wrap .btn_normal::before{
	display: none;
}

@media screen and (max-width: 767px) {
	
	.sort_wrap .btn_normal{
		padding: 0 10px;
		white-space: nowrap;
		font-size: 3vw;
	}
	.wrap,
	.wrap1160,
	#case_content{
		max-width: 100%;
	}
	main section:not(#page_ttl):not(#under_bnr):not(#contact):not(#sns):not(#bnr):not(#land):not(#mv){
		margin-bottom: 40px;
	}
	.case_num{
		font-size: 12vw;
		margin-top: -8vw;
	}
	.case_num small{
		font-size: 8vw;
	}
	.case_info dl{
		flex-wrap: wrap;
	}
	.case_info dl dt{
		width: calc(100% - 20px);
		margin-right: 0;
		margin-bottom: 10px;
	}
	.case_catalog li{
		width: 100%;
		flex-wrap: wrap;
	}
	.case_catalog li figure{
		width: 100%;
	}
	.case_catalog li figure img{
		width: auto;
	}
	.case_catalog li dl{
		width: 100%;
	}
	.select_block .select label span:before,.select_block .select label span:after{
		display: none;
	}
	.pagination .wp-pagenavi a, .pagination li a{
		width: 40px;
		height: 40px;
	}
	.catalog_link {
    position: absolute;
    bottom: 20px;
    right: calc(50% - 94px);
}
.btn_return_link{
	margin:0 auto 80px;
}
#detail.case {
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 58%, rgba(230,230,230,1) 58%, rgba(230,230,230,1) 100%);
}
#case_faq {
    width: 100%;
}
#case_faq .faq_box {
    width: 90%;
    margin: 0 auto;
}
#case_faq figure{
	width: 100%;
	margin-top: 40px;
}
#case_faq div.faq_box:nth-of-type(even) {
    flex-flow: column;
}
#case_faq dl {
    width: 100%;
}
.free_box_in {
    padding: 0 0px;
}
	
	
}