@charset "UTF-8";
/* CSS Document */

/*PC*/
@media print, screen and (min-width: 769px) {

.case_list_txt {
display:flex;
flex-wrap:wrap;
justify-content:space-between;
list-style-type:none;
}

.case_list_txt li {
width:48%;
font-weight:bold;
text-decoration:underline;
}



.case_page_box {
width:1080px;
	width: 100%;
	max-width: 1080px;
box-sizing: border-box;
box-shadow: 
40px 0px 0px -38px #FFF,
0px 40px 0px -38px #FFF,
0px -40px 0px -38px #FFF,
-40px 0px 0px -38px #FFF,
0 0 0 1px #bcbcbc;
padding:40px;
display:flex;
flex-wrap:wrap;
justify-content: flex-start;
}

.case_page_box div {
width:30.66%;
position:relative;
margin-right:4%;
margin-bottom: 6%;
}

.case_page_box div:nth-child(3n) {
margin-right:0;
}

.case_page_box div a img {
width:100%;
height:auto;
}

.case_page_box div a h4 {
font-size:12px;
margin:10px 0;
}

.case_page_box div a h5 {
font-size:16px;
margin:0 0 20px;
}

.case_page_box div a h5 span {
color:#878787;
font-size:10px;
margin-left:10px;
}

.case_page_box div a p {
font-size:12px;
margin:0 0 20px;
}


.case_page_box div .arw_s {
position: absolute;
bottom: 0;
right: 10px;
width: 22px;
height: 9px;
background-repeat: no-repeat;
background-image: url(../images/com/arrow_r.svg);
transition: 0.3s ease-out;
}
.case_page_box div:hover .arw_s {
right: 0px;
transition: 0.08s ease-out;
}


/***************************************************/
.bg_box {
width:1080px;
	width: 100%;
	max-width: 1080px;
margin:0 auto 120px;
background:#f7f8f8;
display:flex;
flex-wrap:wrap;
align-items:center;
padding:50px;
box-sizing:border-box;
margin:0 auto 60px;
}

.bg_box div {
width:50%;
}

.bg_box div h4 {
font-size:20px;
line-height:1.6;
letter-spacing:3px;
margin-bottom:10px;
}

.bg_box div h4 span {
font-size:18px;
font-weight:300;
letter-spacing:1px;
display:block;
}

.bg_box_tit {
font-size:16px;
font-weight:bold;
letter-spacing:2px;
margin-bottom:20px;
}

.bg_box_tit span {
position: relative;
}

.bg_box_tit span::before {
position: absolute;
top: 0;
bottom: 0;
left: -40px;
display: block;
width: 30px;
height: 1px;
margin: auto;
content: '';
background-color: #000;
}

.bg_box2 {
width:1080px;
	width: 100%;
	max-width: 1080px;
margin:0 auto 120px;
background:#f7f8f8;
padding:50px;
box-sizing:border-box;
margin:0 auto 60px;
}

.case_img_l {
width:46%;
float:left;
margin:0 4% 4% 0;
}

.case_img_r {
width:46%;
float:right;
margin:0 0 4% 4%;
}


.case_img_l2 {
width:30%;
float:left;
margin:0 4% 4% 0;
}


.sub_box {
border: 1px dotted #666;
padding: 20px;
box-sizing: border-box;
font-size: 0.8em;
}

.t-interview img.alignleft {
width:46%;
float:left;
margin:0 4% 4% 0;
}
.t-interview img.alignright {
width:46%;
float:right;
margin:0 0 4% 4%;
}	

.t-interview h3 {
font-size:24px;
font-weight: bold;
list-style:1;
letter-spacing:0.3em;
margin-bottom:60px;
}	
.t-interview h4 {
    font-size: 16px;
    font-weight: bold;
    list-style: 1;
    letter-spacing: 0.3em;
    margin-bottom: 60px;
}	
.t-prof h4,.t-prof h5 {
	margin-bottom: 20px;
}
.t-prof p {
	margin-bottom: 40px;
}
.t-prof img.alignleft {
    width: 30%;
    float: left;
    margin: 0 4% 4% 0;
  }
}


/*sp*/
@media only screen and (max-width: 768px) {

.case_list_txt {
list-style-type:none;
}

.case_list_txt li {
font-size:12px;
font-weight:bold;
text-decoration:underline;
}


.case_page_box {
width:90%;
box-sizing: border-box;
box-shadow: 
25px 0px 0px -23px #FFF,
0px 25px 0px -23px #FFF,
0px -25px 0px -23px #FFF,
-25px 0px 0px -23px #FFF,
0 0 0 1px #bcbcbc;
padding:25px;
box-sizing:border-box;
margin:auto;
}

.case_page_box div {
width:100%;
margin:0 auto 60px;
position:relative;
}

.case_page_box div img {
width:100%;
height:auto;
}

.case_page_box div a h4 {
font-size:12px;
margin:10px 0;
}

.case_page_box div a h5 {
font-size:16px;
margin:0 0 20px;
}

.case_page_box div a h5 span {
color:#878787;
font-size:10px;
margin-left:10px;
}

.case_page_box div a p {
font-size:12px;
margin:0 0 20px;
}

.case_page_box div .arw_s {
position: absolute;
bottom: -20px;
right: 10px;
width: 22px;
height: 9px;
background-repeat: no-repeat;
background-image: url(../images/com/arrow_r.svg);
transition: 0.3s ease-out;
}

.case_page_box div:hover .arw_s {
right: 0px;
transition: 0.08s ease-out;
}

/***************************************************/
.bg_box {
width:90%;
margin:0 auto 60px;
background:#f7f8f8;
padding:20px;
box-sizing:border-box;
}

.bg_box div {
width:100%;
}

.bg_box div h4 {
font-size:16px;
line-height:1.2;
margin-bottom:20px;
}

.bg_box div h4 span {
font-size:12px;
font-weight:300;
letter-spacing:3px;
letter-spacing:1px;
display:block;
}

.bg_box_tit {
font-size:14px;
font-weight:bold;
letter-spacing:2px;
margin-bottom:20px;
}

.bg_box_tit span {
position: relative;
padding-left:30px
}

.bg_box_tit span::before {
position: absolute;
top: 0;
bottom: 0;
left: 0px;
display: block;
width: 20px;
height: 1px;
margin: auto;
content: '';
background-color: #000;
}

.bg_box2 {
width:90%;
margin:0 auto 60px;
background:#f7f8f8;
padding:20px;
box-sizing:border-box;
}

.case_img_l,
.case_img_r,.t-interview img.alignleft,.t-interview img.alignright {
width:100%;
margin:0 auto 4%;
}

.case_img_l2 {
width:70%;
margin:0 auto 4%;
}

.sub_box {
border: 1px dotted #666;
padding: 20px;
box-sizing: border-box;
font-size: 0.8em;
}

.t-interview h3 {
    font-size: 16px;
    font-weight: bold;
    list-style: 1;
    letter-spacing: 0.1em;
    margin-bottom: 30px;
}
.t-interview h4 {
    font-size: 12px;
    font-weight: bold;
    list-style: 1;
    letter-spacing: 0.3em;
    margin-bottom: 30px;
}
.t-prof h4,.t-prof h5 {
	margin-bottom: 20px;
}
.t-prof img.alignleft {
    width: 70%;
    margin: 0 auto 4%;
	display: block;
	
 }
.t-prof p {
	margin-bottom: 40px;
}
}