
h2.h2_style{
	margin: 0 20px 30px;
	padding: 90px 0 0;
	position: relative;
	text-align:left;

font-weight: bold;
font-size: 32px;
line-height: 1.3;
color: #222;
}

h2.h2_style span{
	margin: 5px 0 0;
	padding: 0 0 0;
	position: relative;

	display:block;
	vertical-align:middle;


font-weight: normal;
font-size: 15px;
letter-spacing: 0.03em;
line-height: 1.5;
color: #222;
}

h2.h2_style small{
	margin: 0 10px 10px;
	padding: 0 0 0;
	position: relative;

	display:inline-block;
	vertical-align:middle;


font-weight: normal;
font-size: 26px;
letter-spacing: normal;
line-height: 1.5;
color: #999;
}




.h3_wrap{
	min-width: auto;
	min-height:auto;
	margin: 0 auto;
	padding: 20px 25px 20px 25px;
	position:relative;
	text-align:center;
	background-color:#f2f4f5;
}


.h3_block{
	min-width: auto;
	max-width: auto;
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:left;
}

h3.h3_txt{
	margin: 0 0;
	padding: 0 0;
	position:relative;
	font-weight: bold;
font-weight: normal;
font-size: 16px;
line-height: 32px;
text-align: center;
color: #2b2e31;
}

h3.h3_cat{
	margin: 0 0 10px;
	padding: 0 0;
	position:relative;
	font-weight: bold;
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 24px;
	text-align: left;
	color: #2b2e31;
	
	display:block;
	vertical-align:top;
}
.h3_under{
	padding: 1em 20px 0;
    font-family: DINOT;
    font-weight: bold;
    font-size: 11px;
    letter-spacing: 0.05em;
    line-height: 1.5;
    color: #222;
	display:flex;
	justify-content: space-between;
}
.h3_under .works_type{
    text-align: right;
}
.h3_under .works_cat span a{
	margin-right: 1em;
    text-decoration: underline;
}
.h3_under .works_type span a{
	margin-left: 1em;
    text-decoration: underline;
}

.cat_link{
	margin: 0 0 0;
	padding: 0 0 0;
	position:relative;
	display:block;
	vertical-align:top;
}

.cat_link .cat_item{
	margin: 0 0 0;
	padding: 0 0;
	position:relative;
display: flex;
}

.cat_link div strong{
	margin: 0 20px 0 0;
	padding: 0 0;
	position:relative;
font-weight: normal;
font-size: 14px;
letter-spacing: 0.03em;
line-height: 28px;
text-align: left;
color: #2b2e31;
width:80px;
display:inline-block;
vertical-align:top;
white-space:nowrap;
}

.cat_link div a{
font-weight: normal;
font-size: 14px;
letter-spacing: 0.03em;
line-height: 28px;
text-align: left;
color: #2b2e31;
}


#document{
	width: 100%;
	margin: 0 auto;
	padding: 50px 0 0;
	position: relative;
	text-align:center;
	overflow: hidden;
}



.works_wrap{
	margin: 0 auto;
	padding: 0 0 0px;
	position:relative;
	text-align:center;
	background-color:#fff;
}

.works_area{
	min-width: auto;
	max-width: auto;
	margin: 0 auto ;
	padding: 0 0;
	position:relative;
	text-align:center;
}

ul.works_list{
	margin: 0 0 0 0%;
	padding: 0 0;
	position:relative;
	text-align:center;
	letter-spacing:-.4em;
}

ul.works_list li{
	margin: 0 3% 50px 3%;
	padding: 0 0;
	position:relative;
	text-align:center;
	display:inline-block;
	vertical-align:top;
	width:90%;
	letter-spacing:normal;
}

ul.works_list li .works_img{
	margin: 0 auto;
	padding: 0 0px;
	position:relative;
	text-align:center;
}

ul.works_list li .works_img img{
	width:100%;
	height:auto;
	vertical-align:top;
}

ul.works_list li .works_box{
	width:auto;
	min-height:auto;
	margin: 0 auto 0;
	padding: 20px 0 0;
	position:relative;
	vertical-align:top;

	box-sizing: border-box;
}

ul.works_list li .works_cat{
	margin: 0 0 20px;
	padding: 0 0;
	width:auto;
	display:block;
font-weight: bold;
font-size: 11px;
letter-spacing: 0.05em;
line-height: 1.5;
text-align: center;
color: #222;
}
ul.works_list li .works_cat span{
	margin: 0 0.5em;
	display:inline-block;
	text-decoration: underline;
}

ul.works_list li .works_txt{
	margin: 0 0 30px;
	padding: 0 0;
	display:block;
	

font-weight: normal;
font-size: 14px;
line-height: 24px;
text-align: center;
color: #2b2e31;
}

img.updated{
	position:absolute;
	top:-0px;
	left:-0px;
	width:60px !important;
	height:auto !important;
}






.main_img{
	margin: 0 20px 30px;
	padding: 0 0;
	position:relative;
	text-align:center;
}

.main_img img{
	width:100%;
	height:auto;
	vertical-align:top;
}

.detail_block{
	margin: 0 20px 50px;
	padding: 0 0;
	position:relative;
	text-align:center;
	width:auto;
}

.detail_txt{
	margin: 0 10px 30px;
	padding: 0 0;
	position:relative;
	text-align:left;
	width:auto;

font-weight: normal;
font-size: 12px;
line-height: 26px;
text-align: left;
color: #454d55;

}

.detail_data{
	margin: 0 10px ;
	padding: 0 0;
	position:relative;
	text-align:left;
	width:auto;
display: flex;
}

.detail_data strong{
font-weight: bold;
font-size: 17px;
letter-spacing: 0.05em;
line-height: 24px;
text-align: left;
color: #2b2e31;
margin-right:20px;
}

.detail_data p{

font-weight: normal;
font-size: 12px;
line-height: 26px;
text-align: left;
color: #454d55;

}

ul.photo_list{
	margin: 0 20px 50px;
	padding: 0 0;
	position:relative;
	text-align:center;
}
ul.photo_list li.yoko{
	margin: 0 auto 20px;
	padding: 0 0;
	position:relative;
	text-align:center;
	display:block;
}
ul.photo_list li.tate{
	margin: 0 auto 20px;
	padding: 0 0;
	display:inline-block;
	_width:60%;
}
ul.photo_list li img{
	width:100%;
	height:auto;
}

.pagination_block{
	margin: 0 11px 40px;
	padding: 0 0;
	position:relative;
	text-align:center;
	letter-spacing:normal;
	width:auto;
	display: flex;
	flex-wrap: wrap;
	justify-content:space-between;
}

.pagination_block2{
	margin: 0 12px 0px;
	padding: 0 0;
	position:relative;
	text-align:center;
	letter-spacing:normal;
	width:auto;
	display: flex;
	flex-wrap: wrap; 
}

.link_prev_txt{
	margin: 0 auto 10px;
	padding: 0px 0 ;
	position:relative;
	text-align:left;
	flex-basis:50%;

}
.link_prev_txt a{
	margin: 0 0 0;
	padding: 10px 0px;
	position:relative;
	display:inline-block;

font-weight: bold;
font-size: 10px;
letter-spacing: 0.05em;
line-height: 1.0;
color: #222;
transition-duration: .2s;
}
.link_prev_txt a span{
	display:inline-block;
	vertical-align:middle;
	transition-duration: .2s;
}
.link_prev_txt a img{
	margin-right:10px;
	display:inline-block;
	vertical-align:middle;
	transition-duration: .2s;
	transform: scaleX(-1);
}
.link_prev_txt a:hover span{
text-decoration:none;
transform: translate(5px, 0);
}
.link_prev_txt a:hover img{
transform: translate(-5px, 0) scaleX(-1);
}

.link_next_txt{
	margin: 0 auto 10px;
	padding: 0px 0 ;
	position:relative;
	text-align:right;
	flex-basis:50%;

}
.link_next_txt a{
	margin: 0 0 0;
	padding: 10px 0px;
	position:relative;
	display:inline-block;

font-weight: bold;
font-size: 10px;
letter-spacing: 0.05em;
line-height: 1.0;
color: #222;
transition-duration: .2s;
}
.link_next_txt a span{
	display:inline-block;
	vertical-align:middle;
	transition-duration: .2s;
}
.link_next_txt a img{
	margin-left:10px;
	display:inline-block;
	vertical-align:middle;
	transition-duration: .2s;
}
.link_next_txt a:hover span{
text-decoration:none;
transform: translate(-5px, 0);
}
.link_next_txt a:hover img{
transform: translate(5px, 0);
}


.link_img{
	padding: 0 0;
	position:relative;
flex-basis:130px;
font-weight: normal;
font-size: 12px;
letter-spacing: normal;
line-height: 16px;
text-align: left;
color: #2b2e31;

}
.link_img br{
	display:none;
}
.link_img img{
	width:130px;
	height:80px;
	object-fit: cover;
	margin-bottom:10px;
}



ul.pagination_list{
	margin: 0 auto 20px;
	padding: 0 0;
	position:relative;
	text-align:left;
	letter-spacing:normal;
	width:100%;
}

ul.pagination_list li{
	margin: 0 0 5px;
	padding: 0 0;
	position:relative;
	text-align:center;
	display:inline-block;
	vertical-align:top;
	width:88px;
	letter-spacing:normal;
}

ul.pagination_list li .pagination_img{
	margin: 0 auto;
	padding: 0 0px;
	position:relative;
	text-align:center;
}

ul.pagination_list li .pagination_img img{
  width: 88px;
  height: 88px;
  object-fit: cover;
}

ul.pagination_list li .pagination_txt{
	margin: 0 0 0;
	padding: 20px 0 0;

font-weight: normal;
font-size: 15px;
letter-spacing: 0.03em;
line-height: 30px;
text-align: left;
color: #2b2e31;

display:none;
}

.slick-slider{position: static;}

.slick-list{overflow: visible;}

.slick-next{ right:-20px!important; }
.slick-prev{ left:-20px!important; }
.slick-arrow{ z-index:2!important; }


.slick-arrow:before{
content:""!important;
width: 35px!important;
height: 35px!important;
position: absolute;
top: 0;
left: 0;
}

.slick-prev,
.slick-next{
top: 90px !important;
width: 35px!important;
height: 35px!important;
}

.slick-next:before{
background: url(../../images/top/arr2.svg)!important;
background-size: 35px 35px !important;
}

.slick-prev:before{
background: url(../../images/top/arr3.svg)!important;
background-size: 35px 35px !important;
}

.slick-dots
{
	position: relative !important;
	bottom: auto !important;

	display: block;

	width: 100%;
	padding: 0;
	margin: 45px 0 0!important;

	list-style: none;

	text-align: center;
}
.slick-dots li{
	margin: 0 2px 0 !important;
	padding: 0 0;
	position:relative;
	text-align:left;
	display:inline-block;
	vertical-align:top;
	width:50px !important;
	letter-spacing:normal;
	height: 4px !important;

	cursor: pointer;
}
.slick-dots li button
{
	font-size: 0;
	line-height: 0;

	display: block;

	width: 100% !important;
	height: 4px !important;
	padding: 0px !important;

	cursor: pointer;

	color: transparent;
	border: 0;
	outline: none;
	background: #ddd !important;


	border:0px solid #777 !important;
}
.slick-dots li button:hover,
.slick-dots li button:focus
{
	outline: none;


}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before
{
	opacity: 1 !important;
}
.slick-dots li button:before
{
	font-family: 'slick';
	font-size: 0px !important;
	line-height: 0px !important;

	position: absolute;
	top: 0;
	left: 0;

	width: 100% !important;
	height: 4px !important;



	content: ' ' !important;
	text-align: center;

	opacity: 1 !important;
	color: black;

	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before
{
	background-color:#777 !important;
}

ul.pagination_list .slick-prev,
ul.pagination_list .slick-next
{top: 120px !important;}

ul.pagination_list .slick-next{ right:0px!important; }
ul.pagination_list .slick-prev{ left:0px!important; }

.pagination_list .slick-list {
position: static!important;
padding: 0 0 !important;
}
.pagination_list .slick-track {}
.pagination_list .slick-slide {
	margin: 0 2px !important;
	width:90px !important;
}
.pagination_list .slick-slide.slick-current {
  opacity: 1;
}
.pagination_list .slick-slide a {
  display: block;
}
.pagination_list .slick-slide a:hover {

}
.pagination_list img {

}








.voice_block{
	margin: 0 auto 0px;
	padding: 0 0;
	position:relative;
	text-align:center;
	width:auto;
}

.voice_block:before {

}
.voice_main_p{
	margin: 0 20px 30px;
	padding: 0 0;
	position:relative;
	text-align:center;
}

.voice_main_p img{
	width:100%;
	height:auto;
	vertical-align:top;
}
.voice_txt{
	margin: 0 30px 50px;
	padding: 0 0;
	position:relative;
	text-align:left;

font-weight: normal;
font-size: 15px;
line-height: 30px;
text-align: left;
color: #2b2e31;
}

.voice_txt small{
	margin-top: 30px;
	display:block;

font-size: 13px;
letter-spacing: 0.03em;
line-height: 30px;
}

.voice_p{
	margin: 0 5px 30px;
	padding: 0 0;
	position:relative;
	text-align:left;
}

.voice_p img{
	width:70%;
	height:auto;
	vertical-align:top;
}

img.voice_p_right{
	float:right;
	margin-top:-60px;
	position:relative;

	width:35%;
	height:auto;
	vertical-align:top;
}


.voice_qa{
	margin: 0 30px 50px;
	padding: 0 0;
	position:relative;
	text-align:left; 

font-weight: normal;
font-size: 12px;
line-height: 26px;
text-align: left;
color: #454d55;
}

.voice_qa strong{
	margin-bottom: 20px;
	display:block;

font-weight: normal;
font-size: 15px;
line-height: 30px;
text-align: left;
color: #2b2e31;
}



.blog_article{
	margin: 0 20px 50px;
	padding: 0 0;
	position:relative;
	text-align:center;
	width:auto;
}


.blog_article .article_block{
	margin: 0 auto 50px;
	padding: 0 0;
	position:relative;
	text-align:center;
}

.blog_article img{
	margin: 0 auto 1em;
	padding: 0 0;
	position:relative;
	text-align:center;
	max-width:100%;
	height:auto;
}

.blog_article h4{
margin: 0 auto 10px;
padding: 0 0;
position:relative;
font-weight: normal;
font-size: 14px;
line-height: 28px;
text-align: left;
color: #222;
}
.blog_article p{
	margin: 0 auto 1em;
	padding: 0 0;
	position:relative;
font-weight: normal;
font-size: 14px;
line-height: 1.8;
text-align: justify;
color: #454d55;
}
.blog_article img{
	max-width:100%;
	height:auto;
}
.blog_article img.aligncenter{
	display:block;
	margin:0 auto;
}
.blog_article strong{
	font-weight: bold;
}
.blog_article a{
	color:#1e90ff;
}

.btn_works{
	margin: 0 auto;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
}

.btn_works a{
	margin: 0 auto;
	padding: 10px 30px;
	position:relative;
	text-align:center;
	

font-weight: bold;
font-size: 14px;
letter-spacing: 0.1em;
text-align: center;
color: #fff;


background: #222;
border: 1px solid #222;

display:inline-block;
transition-duration: .2s;
}




.youtube___ {
  position: relative;
  width:100%; 
  height:0; 
  padding-top: 56.25%; 
}

.youtube___ iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


.center{
	text-align:center;
}

.pc_only{
	display:none;
}

.img_pc {
	display:none;
}



