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

/* TOP
-------------------------------------------------- */

/* Carousel */
.top_image .carousel {
	background:#000;
	height:200px;
	color:#FFF;
}

.top_image > .carousel > .carousel-inner > .item > img {
	height:200px;
	width:100%;
	object-fit: cover;
}

.top_image > .carousel > .carousel-inner > .item > .carousel-caption > p {
	/*-webkit-text-stroke: 0.7px #000;*/
	text-shadow: 0.7px 0.7px 0 #000,-0.7px 0.7px 0 #000,0.7px -0.7px 0 #000,-0.7px -0.7px 0 #000;
	margin-bottom: 0;
}

.carousel-caption_01,.carousel-caption_02,.carousel-caption_03 {
	text-align: right;
	right:5%;
	bottom:10px;
	vertical-align: bottom;
}
.img_self {
	width:100%;
}

@media (min-width: 40em) {
  /* Bump up size of carousel content */
  .carousel-caption p {
    margin-bottom: 1.25rem;
    font-size: 1.25rem;
    line-height: 1.4;
  }
}
@media (min-width: 62em) {
}
/*--//carousel--*/


/*イベント情報 - for TOPページ*/
.event_top{
	margin:0 10px;
	padding-bottom:20px;
}
.event_top h1{
	padding-top:20px;
	font-size:12px;
}
.event_top .media{
	margin-top:0;
	padding:10px;
	border-right:10px solid #ffb900;
	background:#FFF;
	over-flow:hidden;
}
.media-body, .media-left, .media-right {
    display: table-cell;
    vertical-align: top;
}
.media-left {
    padding-right: 10px;
}
.media, .media-body {
    overflow: hidden;
}
.media-body, .media-left, .media-right {
    display: table-cell;
    vertical-align: top;
}
.media-object {
    display: block;
}
.event_top .media-body{
	padding-right:20px;
}
.event_top .media h2{
	font-size:0.9rem;
}
.event_top .media p{
	margin-bottom:5px;
	font-size:0.7rem;
}
.event_top .media img{
	width: 90px;
}
/* Since positioning the image, we need to help out the caption */
.event_top .carousel .carousel-caption {
  z-index: 10;
}

/* Declare heights because of positioning of img element */
.event_top .event_carousel .carousel-item {
  height: 5rem;
}
.carousel-inner>.event_carousel-item>a>img{
	max-width: 100px !important;
}
.event_top .event_carousel .carousel-item > img {
  position: absolute;
  top: 0;
  left: 0;
  min-width: 100%;
  height: 32rem;
}
.event_top .cevent_carousel .carousel-indicators {
  top: 1.5rem;
  right: 1.5rem;
  bottom: auto;
  left: auto;
  width: 1rem;
  margin-left: 0;
}
.event_top .event_carousel .carousel-indicators > li {
  margin-bottom: .25rem;
}
.event_top .carousel-control.right{
	width: 7%;
	padding-top:1.2em;
	background-image:none;
	background:#000;
}

/* TOPページ PCのみ表示エリア
-------------------------------------------------- */
.info_PC{
	padding:30px 0;
	background:#FFF;
}

/*事業内容*/
.info_PC .works{
	margin-bottom:30px;
	margin-left: 0px;
}
.info_PC .works div{
	padding:15px 20px;
	border:2px solid #0099cc;
	border-radius:10px;
}
.info_PC .works .col-md-3{
	width: 23%;
}
.info_PC .works .col-md-4{
	width: 32%;
}

.info_PC .works .col-md-3:not(:last-child){
	margin-right:2%;
}
.info_PC .works .col-md-4:not(:last-child){
	margin-right:2%;
}

.info_PC .works div h3{
	margin-bottom:16px;
	text-align:center;
	font-size:1.0rem;
	font-weight:bold;
}
.info_PC .works div ul{
	min-height:50px;
	padding-left:20px;
}
.info_PC .works div li{
	margin-bottom:5px;
	font-size:1.1rem;
	line-height:1.2em;
	list-style-type: disc;
}
.info_PC .works div img{
	width:100%;
	margin-bottom:15px;
}
.info_PC .works div .btn_result{
	margin-bottom:0;
}
.info_PC .works div .btn_result a{
	padding:5px;
	background:#ffb900;
	border-radius:5px;
	font-size:0.8rem;
	text-align:center;
	display:block;
}
.info_PC .works div .btn_result a:hover{
	background:#0099cc;
	color:#FFF;
}

/*つくりびととは？*/
#aboutus{
	margin-bottom:30px;
	font-size:1.2rem;
}
#aboutus div{
	position:relative;	
	padding:15px 30px;
	border:solid 5px #999;
}

#aboutus h2{
    font-size: 1.5rem;
    position: relative;
    padding: 3px 0 0px 36px;
}
#aboutus h2:before, #aboutus h2:after{
		content: "";
		position: absolute;
		bottom: 0;
		background: #ffb900;
		margin: auto;
}
#aboutus h2:before{
		top: 6px;
		left: 0px;
		width: 20px;
		height: 20px;
		animation: spin 4s linear infinite;
}
#aboutus h2:after{
		top: -14px;
		left: 14px;
		width: 12px;
		height: 12px;
		animation: spin 4s linear infinite;
		border:solid 2px #FFF;
}
@keyframes spin{
    0%{
        transform: rotate(0deg);
    }
    100%{
        transform: rotate(360deg);
    }
}
#aboutus div ul{
	margin-bottom:0;
	padding-left:50px;
}
#aboutus div li{
	padding:5px 0;
	font-size:1.4rem;
	list-style-type: disc;
}
#aboutus div p{
	padding-top:50px;
}
#aboutus div .member{
	position:absolute;
	top:10px;
	right:15px;
	height:45px;
	width:100px;
	padding-top:8px;
	font-size:0.7rem;
	line-height:1.2em;
	text-align:center;
	border-radius: 90px / 45px;
	-moz-border-radius:90px / 45px;
	-webkit-border-radius: 90px / 45px;
	background:#ffb900;
}
/*挨拶*/
.greeting{
	padding:30px;
	border:solid 1px #999;
}
