/* Grill Template http://www.templatemo.com/free-website-templates/417-grill */

html {
  scroll-padding-top: 85px; /* ← headerの高さ */
scroll-behavior: smooth;
}
.fade-in {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

/* 表示された後 */
.fade-in.is-show {
  opacity: 1;
  transform: translateY(0);
}
.back-liveon {
	margin-top: 10px;
	text-align: right
}
.fback-liveon {
	text-align: left;
	padding-left: 8px;
	padding-bottom: 10px
}
.topmaintxt {
	padding: 20px;
	border: 1px solid #ccc;
	margin-top: 30px;
	margin-bottom: 30px
}
a, a:hover {
	text-decoration: none;
	color: #333;
}
.blue {
	color: #09f
}
.green {
	color: #0a0
}
p {
	color: #666;
	text-align: justify;
	text-justify: inter-ideograph
}
.heading-section {
	padding: 15px 0
}
.heading-section h1 {
	position: relative;
	color: #333;
	text-shadow: 0 0 2px #fff;
	padding-left: 15px;
	font-size: 1.7em;
}
.heading-section h1:before {
	content: "";
	position: absolute;
	background: #ceeafe;
	width: 80px;
	height: 80px;
	border-radius: 50%;
	top: 50%;
	left: -10px;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	z-index: -1
}
*, :after, :before {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}
.space30 {
	margin-bottom: 30px
}
.space50, div.websem-kinou {
	margin-bottom: 50px
}
#top-header {
	background-color: #333;
	color: #fff
}
.home-account a {
	display: inline-block;
	margin-right: 15px;
	padding: 10px 0;
	font-size: 13px
}
.cart-info {
	text-align: right;
	padding: 8px 0;
	font-size: 13px
}
.logo {
	padding: 10px 0;
}
.logo img {
	width: 270px;
}
.main-menu ul {
	padding: 0;
	margin: 0 30px 0 0;
	text-align: right
}
.author-caption li, .main-menu li {
	list-style: none;
	display: inline-block
}
.main-menu li {
	padding: 20px 0 30px
}
.main-menu a {
	font-weight: 400;
	font-size: 14px;
	color: #444;
	padding: 5px 8px;
	background-color: #f5f5f5;
}
.author-details span, .main-menu a:hover {
	color: #f78e21
}
.search-box {
	text-align: right;
	margin-top: 33px;
	position: relative
}
.search-box input {
	margin-top: 0
}
.search-box input[type=submit], .subscribe-form input[type=submit] {
	position: absolute;
	right: 0;
	top: 0;
	width: 34px;
	height: 34px;
	background-repeat: no-repeat;
	background-position: center;
	color: transparent;
	background-color: transparent;
	content: '';
	border: 0
}
.search-box input[type=submit] {
	background: url(../images/search-icon.png)
}
.search-box input#s, .subscribe-form input#subscribe {
	padding: 4px 10px;
	line-height: 34px;
	height: 34px;
	outline: 0
}
.search-box input#s {
	border: 1px solid #ddd
}
#heading {
	background-image: url(../images/bg-image.png);
	height: 140px
}
#heading .catetttlebar, .timeline-caption h4 {
	font-size: 30px;
	font-weight: 700;
	color: #fff
}
#heading span {
	color: #fff
}
.heading-content {
	text-align: center;
	margin-top: 40px
}
.timeline-thumb {
	border-bottom: 3px solid #dbdbdb
}
.timeline-thumb:hover {
	border-color: #f78e21
}
.timeline-thumb .thumb img {
	width: 100%;
	overflow: hidden
}
.timeline-thumb:hover .overlay {
	overflow: hidden
}
.timeline-caption h4 {
	padding-top: 80px;
	font-size: 16px;
	margin: 0 0 3px
}
#filters span, .timeline-caption p {
	font-size: 14px;
	font-weight: 300;
	color: #f78e21
}
.team-thumb, .timeline-thumb {
	position: relative;
	text-align: center
}
.portfolio-thumb img, .team-thumb .author img {
	width: 100%
}
.team-thumb .overlay, .timeline-thumb .overlay {
	background-color: rgba(0, 0, 0, .7);
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	visibility: hidden;
	opacity: 0
}
.team-thumb:hover .overlay, .timeline-thumb:hover .overlay {
	visibility: visible;
	opacity: 1;
	cursor: pointer
}
.author-caption li {
	margin-top: 40%
}
.author-caption a {
	display: inline-block;
	background-color: rgba(250, 250, 250, .4);
	width: 34px;
	height: 34px;
	line-height: 34px;
	color: #fff
}
.author-caption a:hover {
	background-color: #f78e21;
	color: #fff
}
.author-details {
	margin-top: 15px;
	text-align: center
}
.author-details h1 {
	display: block;
	margin-bottom: 0;
	font-size: 16px;
	font-weight: 700;
	color: #333
}
#product-heading {
	text-align: center;
	padding: 100px 0 30px
}
#product-heading h1, .label-text h3, .product-title h3 {
	font-size: 20px;
	color: #333;
	font-weight: 700
}
#Container {
	margin-top: 80px
}
#Container .mix {
	display: none
}
.portfolio-wrapper {
	overflow: hidden;
	padding-top: 20px
}
#filters {
	text-align: center
}
#filters ul, .author-caption ul, .info ul, .pagination ul {
	margin: 0;
	padding: 0
}
#filters li {
	cursor: pointer
}
#filters span {
	color: #444;
	padding-left: 15px
}
#filters span:hover {
	color: #f78e21;
	transition: all .3s ease-in
}
.label-text a {
	color: #333
}
.label-text a:hover {
	color: #f78e21
}
.label-text h3 {
	margin: 10px 0 2px;
	font-size: 16px
}
.label-text span {
	font-weight: 300;
	display: block;
	color: #f78e21
}
.hover-iner, .portfolio-thumb {
	position: relative
}
.hover-iner {
	width: 100%;
	height: 100%
}
.hover-iner a {
	position: absolute;
	top: 35%;
	left: 43%;
	margin-left: -18px;
	margin-top: -18px;
	background-color: rgba(0, 0, 0, .1);
	border: 1px solid #f78e21;
	width: 80px;
	height: 80px;
	line-height: 80px;
	color: #fff;
	text-align: center
}
.hover-iner img {
	width: auto
}
.hover, .hover-iner span {
	position: absolute;
	width: 100%
}
.hover-iner span {
	margin-top: 190px;
	text-align: center;
	font-size: 13px;
	color: #f78e21;
	font-weight: 300
}
.hover {
	height: 100%;
	top: 0;
	left: 0;
	visibility: hidden;
	opacity: 0;
	background-color: rgba(0, 0, 0, .7)
}
.portfolio-wrapper:hover .portfolio-thumb .hover {
	visibility: visible;
	opacity: 1;
	transition: all .3s ease-in
}
.pagination, footer {
	margin-top: 60px
}
#filters li, .pagination li {
	list-style: none;
	display: inline-block
}
.pagination a {
	background-color: #444;
	padding: 10px 20px;
	font-size: 18px;
	font-weight: 600;
	color: #fff;
	display: block;
	text-align: center
}
.pagination a:hover {
	background-color: #f78e21
}
.image-post {
	overflow: hidden
}
.image-post img {
	width: 100%
}
.product-title {
	clear: both
}
.product-title h2 {
	font-size: 26px;
	font-weight: 900;
	color: #333;
	border-left: 6px solid #333;
	padding: 10px 0 10px 10px;
	line-height: 140%
}
.product-title h3 {
	position: relative;
	padding: .7em 1em .6em .8em;
	background: #ceeafe;
	display: block;
	font-size: 19px;
	margin-bottom: 25px
}
.product-title h3::before {
	position: absolute;
	content: '';
	top: 100%;
	left: 0;
	border: 0;
	border-bottom: solid 15px transparent;
	border-right: solid 20px #959e9b
}
.product-title h4 {
	position: relative;
	padding-left: 30px;
	font-size: 18px;
	color: #325a8c;
	font-weight: 700
}
.product-title h4::after, .product-title h4::before {
	content: "□";
	position: absolute
}
.product-title h4::before {
	left: 0;
	top: -3px
}
.product-title h4::after {
	left: 5px;
	top: 3px;
	color: #a1b8d1
}

.product-title-2 h3 {
	position: relative;
	padding-left: 30px;
	font-size: 18px;
	color: #325a8c;
	font-weight: 700
}
.product-title-2 h3::after, .product-title-2 h3::before {
	content: "□";
	position: absolute
}
.product-title-2 h3::before {
	left: 0;
	top: -3px
}
.product-title-2 h3::after {
	left: 5px;
	top: 3px;
	color: #a1b8d1
}

.product-title span {
	display: inline-block;
	font-size: 13px;
	color: #f78e21
}
.product-content a {
	font-weight: 700;
	font-size: 13px
}
.product-content p {
	padding: 0;
	line-height: 200%
}
.captionBOX, .captionBOXu {
	padding: 5px 15px;
	margin-top: 20px;
	margin-bottom: 40px;
	border: 1px solid #999;
	line-height: 180%
}
.captionBOX p:first-letter {
	float: left;
	font-size: 260%;
	padding-right: 5px;
	padding-top: 5px;
	line-height: 1;
	color: #69c
}
.comment-body h6, .comment-section h4, .leave-comment h4 {
	margin-top: 30px;
	font-size: 16px;
	color: #666;
	font-weight: 700
}
.all-comments {
	margin-top: 40px;
	margin-bottom: 40px
}
.comments {
	margin-top: 30px
}
.author-thumb {
	float: left;
	margin-right: 30px
}
.comment-body {
	background-color: #f3f3f3;
	padding: 20px;
	overflow: hidden;
	position: relative
}
.comment-body h6 {
	color: #333;
	margin-bottom: 5px;
	margin-top: 0
}
.comment-body span, .info i {
	font-size: 14px;
	color: #f78e21
}
.comment-body p {
	margin-top: 20px
}
.comment-body a {
	font-size: 14px;
	color: #fff;
	background-color: #f78e21;
	width: 80px;
	height: 30px;
	line-height: 30px;
	text-align: center;
	display: inline-block;
	position: absolute;
	top: 20px;
	right: 20px
}
.replyed-form {
	margin-left: 130px
}
.leave-comment h4 {
	padding-bottom: 10px
}
.testimonails-content h6, input {
	font-weight: 300;
	font-style: italic
}
input, textarea {
	padding: 10px;
	border: 1px solid #e2e2e2;
	width: 100%;
	color: #aaa;
	margin-top: 25px;
	font-size: 13px
}
textarea {
	font-style: italic;
	font-weight: 300;
	height: 165px;
	max-height: 180px;
	max-width: 770px;
	line-height: 18px
}
.form label {
	margin-left: 10px;
	color: #999
}
.send button, input, textarea {
	outline: 0
}
.leave input, .send button {
	width: 90px;
	cursor: pointer;
	height: 35px;
	line-height: 30px;
	text-align: center;
	background-color: #f78e21;
	color: #fff;
	font-size: 16px;
	font-style: normal;
	font-weight: 600;
	border: 0
}
.message-form input {
	margin-top: 0
}
.info p, .message-form textarea {
	padding-bottom: 20px
}
.send {
	margin-top: 20px
}
.info li {
	font-size: 13px;
	color: #666
}
.info i {
	margin-right: 10px;
	font-size: 18px
}
.recent-post-kiji a, .side-bar-tit {
	font-size: 16px;
	font-weight: 700;
	margin-top: 0
}
.side-bar-tit {
	color: #fff;
	background-color: #333;
	padding: 9px 15px
}
.archives-list ul {
	margin-top: 25px!important;
	padding-bottom: 30px!important
}
.archives-list li, .info li {
	list-style: none;
	margin: 10px 0
}
.archives-list i {
	font-size: 16px;
	margin-right: 5px;
	color: #f78e21
}
.archives-list a {
	color: #888;
	font-size: 13px
}
.archives-list a:hover {
	color: #f78e21
}
.recent-post-thumb {
	margin-right: 13px!important
}
/*
#slider {
	overflow: hidden
}
*/
.recent-post-info h6 a {
	line-height: 130%;
	margin-bottom: 0
}
.posts {
	margin-top: 30px;
	margin-bottom: 30px
}
.flickr-images {
	margin-top: 20px
}
.flickr-images img {
	margin-top: 20px;
	overflow: hidden!important;
	width: 68px
}
.flickr-images img:hover {
	border: 3px solid #f78e21;
	transition: all .1s ease-in;
	cursor: pointer
}
/*
.slider-caption {
	position: absolute;
	width: 100%;
	margin-top: 100px;
	color: #fff;
	z-index: 9999
}*/
/*
.slider-caption .slidetit {
	text-shadow: 1px 1px #333;
	font-size: 42px;
	padding-bottom: 10px;
	font-weight: 500;
	color: #f78e21
}
.slider-caption a, .slider-caption p {
	text-align: center;
	color: #fff;
	font-size: 18px
}
.slider-caption p {
	text-shadow: 1px 1px #333;
	font-weight: 300;
	line-height: 24px
}
.slider-caption a {
	margin-top: 10px;
	text-decoration: none;
	display: inline-block;
	background-color: #f78e21;
	width: 200px;
	height: 40px;
	line-height: 40px;
	font-weight: 600
}*/
.service-item, .slider-caption {
	text-align: center
}
.icon i {
	border-radius: 50%;
	border: 20px solid #f78e21;
	font-size: 28px;
	line-height: 80px;
	width: 120px;
	height: 120px
}
.service-item h4 {
	font-size: 16px;
	font-weight: 700;
	color: #333;
	margin-top: 25px
}
.blog-post {
	position: relative;
	margin-bottom: 50px
}
.blog-thumb {
	overflow: hidden;
	position: relative
}
.blog-thumb-cate1, .blog-thumb-cate2, .blog-thumb-cate3, .blog-thumb-cate4, .blog-thumb-cate5 {
	background-color: #988041;
	position: relative;
	width: 80%;
	margin-right: auto;
	margin-left: auto;
	padding: 8px;
	margin-bottom: -10px;
	z-index: 0;
	color: #fff
}
.blog-thumb-cate2, .blog-thumb-cate3, .blog-thumb-cate4, .blog-thumb-cate5 {
	background-color: #693
}
.blog-thumb-cate3, .blog-thumb-cate4, .blog-thumb-cate5 {
	background-color: #ea8c00
}
.blog-thumb-cate4 {
	background-color: #31799b
}
.blog-thumb-cate5 {
	background-color: #999999
}
.blog-thumb img {
	width: 100%
}
.blog-content {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	background-color: rgba(0, 0, 0, .6);
	color: #fff;
	padding: 15px
}
.content-show a {
	font-size: 16px;
	font-weight: 700;
	color: #fff
}
.content-show h4 {
	text-decoration: underline
}
.content-show span, .icon i {
	color: #f78e21
}
.content-hide {
	margin-top: 15px;
	display: none
}
.content-hide p {
	font-size: 12px;
	color: #fff
}
.testimonails-content p {
	text-align: center;
	font-size: 15px;
	color: #333;
	font-style: italic
}
.testimonails-content h6 {
	font-size: 16px;
	text-align: center;
	margin-top: 30px
}
footer {
	background-color: #f3f3f3;
	border-top: 4px solid #f78e21;
	padding-top: 40px
}
.social-bottom, .subscribe-form {
	margin-top: 40px;
	padding-bottom: 40px
}
.social-bottom span, .subscribe-form span {
	font-size: 22px;
	font-weight: 600;
	color: #333;
	float: left;
	margin-right: 26px
}
.archives-list ul, .more-info ul, .shop-list ul, .social-bottom ul {
	margin: 0;
	padding: 0
}
.social-bottom li {
	list-style: none;
	display: inline-block
}
.social-bottom a {
	background-color: #fff;
	font-size: 18px;
	width: 36px;
	height: 36px;
	line-height: 36px;
	text-align: center;
	color: #bbb
}
.social-bottom a:hover {
	background-color: #f78e21;
	color: #fff
}
.subscribeForm {
	position: relative;
	display: inline-block
}
.subscribe-form input[type=submit] {
	background: url(../images/subscribe-icon.png);
	margin-top: 0
}
.subscribe-form input#subscribe {
	max-width: 280px;
	width: 280px;
	margin-top: 0;
	border-color: #f3f3f3
}
.footer-title {
	font-size: 16px;
	font-weight: 700;
	color: #333;
	padding-bottom: 20px
}
.shop-list li {
	list-style: none;
	margin: 10px 0
}
.shop-list i {
	font-size: 16px;
	margin-right: 5px
}
.shop-list a {
	color: #888;
	font-size: 13px
}
.recent-post-info a:hover, .shop-list a:hover, .shop-list i {
	color: #2b6cb0;
}
.recent-post {
	overflow: hidden;
	margin-bottom: 20px
}
.recent-post-thumb {
	float: left;
/*	width: 90px;*/
/*	height: 70px*/
}
.recent-post-thumb img {
	width: 110px;
	height: 80px
}
.recent-post-info {
	overflow: hidden
}
.recent-post-info h6 {
	font-size: 14px;
	font-weight: 700;
	margin-bottom: 0;
	margin-top: 0
}
.recent-post-info a {
	color: #333;
	
}
.recent-post-kiji{text-align:justify;margin-top:-2px;}

.more-info i, .more-info li, .recent-post-info span {
	font-size: 13px;
	color: #2b6cb0;
}
.more-info p {
	padding-bottom: 20px
}
.more-info li {
	list-style: none;
	margin: 10px 0;
	color: #666
}
.more-info i {
	margin-right: 10px;
	font-size: 18px
}
.main-footer {
	float: left;
	width: 370px
}
.main-footer ul {
	margin-bottom: 15px
}
.main-footer ul li a {
	padding: 6px 0;
	display: block
}
.bottom-footer {
	clear: both;
	padding: 30px 0 10px
}
.bottom-footer, .bottom-footer p {
	text-align: center
}
@media screen and (max-width:990px) {
	.cart-info, .home-account {
		text-align: center;
		display: block
	}
	.logo {
		text-align: left
	}
	.comm-btn1-org img, .search-box, .slider-caption {
		display: none
	}
	.service-item {
		margin-top: 40px
	}
	.footer-title {
		margin-top: 60px
	}
	.bottom-footer, .bottom-footer p {
		text-align: center
	}
	.timeline-thumb {
		margin-top: 30px;
		border-bottom: none
	}
	.team-thumb {
		margin-top: 30px
	}
	.side-bar {
		margin-top: 100px
	}
	.side-bar h4 {
		width: 100%
	}
	.send-message input {
		margin-top: 20px
	}
	.info {
		margin-top: 60px;
		text-align: center
	}
}
@media screen and (max-width:568px) {
	.cart-info, .home-account {
		text-align: center;
		display: block
	}
	.logo {
		text-align: left
	}
	#heading-section img, .content-hide p, .divide-line img, .search-box, .slider-caption {
		display: none
	}
	.service-item {
		margin-top: 40px
	}
	.footer-title {
		margin-top: 60px
	}
	.bottom-footer {
		text-align: center;
		color: #fff
	}
	.timeline-thumb {
		margin-top: 30px;
		border-bottom: none
	}
	.team-thumb {
		margin-top: 30px
	}
	.side-bar {
		margin-top: 100px
	}
	.side-bar h4 {
		width: 100%
	}
	.send-message input {
		margin-top: 20px
	}
	.info {
		margin-top: 60px;
		text-align: center
	}
	.logo {
		/*padding-bottom:60px*/
	}
	.main-menu ul {
		margin-top: -70px;
		margin-bottom: 20px
	}
	.main-menu li {
		display: block;
		margin-top: -35px;
		margin-right: -20px
	}
	.top-footer {
		display: none
	}
}
@media screen and (max-width:1000px) {
	.slider-caption {
		display: none
	}
}
@media screen and (max-width:600px) {
	.case_block_l, .comm-btn1-org img, .heading-section img {
		display: none
	}
	body {
		overflow-x: hidden;
		padding-top: 80px;
	}
}
@media screen and (min-width:995px) {
	.hover-iner span {
		margin-top: 160px
	}
	body {
		overflow-x: hidden
	}
}
.pagelink a {
	font-size: 14px;
	color: #fff;
	background-color: #f78e21;
	line-height: 30px;
	display: inline-block;
	padding: 8px 40px
}
.pagelinkgr a {
	font-size: 14px;
	color: #fff;
	background-color: #78bff1;
	line-height: 30px;
	display: inline-block;
	padding: 8px 40px
}
.kiji-thumb {
	float: left;
	margin: 10px 30px 10px 0
}
.p-kanrenpage {
	margin-top: 80px;
	margin-bottom: 80px
}
.p-kanrenpage h6 {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #09d;
	padding-top: 10px;
	padding-bottom: 10px;
	font-weight: 700;
	font-size: 20px
}
.p-kanrenlist {
	margin-top: 20px
}
.p-kanrenlist ul li {
	margin: 15px 0
}
.katetoplink p a, .p-kanrenlist ul li a {
	color: #333;
	font-weight: 400;
	font-size: 15px
}
.katetoplink {
	margin-bottom: 40px
}
.katetoplink p, .pagelink a {
	text-align: center
}
.katetoplink p a {
	padding-right: 20px;
	padding-left: 20px;
	border-right-style: solid;
	border-left-style: solid;
	border-right-width: 1px;
	border-left-width: 1px;
	border-right-color: #666;
	border-left-color: #666;
	font-size: 14px
}
.blog-post h4 a, .katetoplink p a, .p-kanrenlist ul li a {
	text-decoration: underline
}
.p-kanrenlist-sub {
	margin: 20px 0 0 1.5em;
	position: relative;
	padding: .75em 1em .75em 1em;
	border: 1px solid #ccc;
}
.LastWriteTime {
	text-align: right;
	font-size: 85%;
	color: #999;
	margin-bottom: -60px;
	margin-top: 20px;
}
.vs_tit img {
	padding-left: 55px;
	margin: 0
}
.vs_block {
	width: 100%;
	border: 1px solid #d8d8d8;
	margin: 0
}
.vs_block .vs_block_l {
	float: left;
	width: 50%;
	padding: 20px 20px 25px 19px;
	background: #ecf6fa
}
.vs_block .vs_block_r {
	float: right;
	width: 50%;
	padding: 20px 19px 25px 20px
}
.vs_block .vs_tit02 {
	padding: 7px 0 6px;
	color: #fff;
	font-size: 115%;
	font-weight: 700;
	text-align: center;
	background: #5ebbe6;
	margin: 0
}
.vs_block .vs_txt01, .vs_block .vs_txt01_b {
	color: #09d;
	font-size: 115%;
	font-weight: 700;
	text-align: center
}
.vs_block .vs_txt01_b {
	color: #777
}
.case_block h5, .vs_block .vs_txt02, .vs_block .vs_txt02_b {
	color: #09d;
	font-size: 184%;
	font-weight: 700;
	text-align: center
}
.case_block h5, .vs_block .vs_txt02_b {
	color: #777
}
.vs_block .vs_block_mel_l {
	float: left;
	width: 330px;
	padding: 20px 20px 25px 19px
}
.vs_block .vs_block_mel_r {
	float: right;
	width: 330px;
	padding: 20px 19px 25px 20px
}
ul.sem_merit {
	margin-top: 25px
}
ul.sem_merit li {
	list-style-image: url(../images/check.png);
	margin: 8px 0
}
div.websem-kinou-box, table.websemiVS {
	border: 1px solid #ccc;
	margin-bottom: 50px
}
table.websemiVS tr th {
	border: 1px solid #ccc;
	background-color: #5ebbe6;
	color: #fff;
	text-align: center;
	white-space: nowrap;
	padding: 10px
}
table.websemiVS tr td {
	border: 1px solid #ccc;
	padding: 20px 10px;
	font-size: 95%
}
table.websemiVS ul {
	margin-top: 10px
}
table.websemiVS li {
	font-size: 90%;
	margin: 5px 0
}
.comm-btnbox {
	border: #ddd 2px solid;
	padding: 25px 40px;
	overflow: hidden;
	margin: 80px 15px 0
}
.comm-btnbox p {
	font-size: 95%;
	padding-right: 10px;
	padding-left: 10px;
	margin: 10px 0
}
.comm-btnbox1 {
	width: 50%;
	float: left;
	margin-top: 10px
}
.comm-btnbox1, .comm-btntxt {
	text-align: center
}
.comm-btn1-org {
	padding: 30px 10px;
	background-color: #f77721;
	color: #fff;
	margin: 10px 15px;
	border-radius: 6px;
	font-size: 100%
}
.case_block h5 {
	text-align: left;
	font-size: 115%;
	color: #23a0df;
	margin-bottom: 8px
}
.case_block {
	width: 100%;
	padding: 10px 20px;
	margin-bottom: 20px;
	border: 1px solid #d8d8d8;
	font-weight: 400
}
.case_block .case_block_r {
	float: right;
	width: 65%
}
.case_block .case_block_r p {
	font-size: 95%;
	line-height: 160%
}
.case_block .case_block_l {
	float: left;
	width: 35%
}
.menu_list_un3, .menu_list_un3 ul {
	width: 770px;
	overflow: hidden
}
.menu_list_un3 ul {
	height: 520px;
	list-style-type: none;
	*zoom: 1
}
.menu_list_un3 ul li {
	float: left;
	width: 235px;
	margin: 0 20px 0 0;
	padding: 0 0 16px;
	*zoom: 1
}
div.websem-kinou-box {
	width: 230px;
	margin-right: 15px;
	padding: 10px;
	text-align: center;
	margin-bottom: 20px;
	float: left
}
.websem-kinou-box h5 {
	font-size: 18px;
	font-weight: 700;
	margin-top: 10px;
	margin-bottom: 10px
}
.websem-kinou-box p {
	font-size: 16px;
	line-height: 140%;
	margin-top: 10px;
	margin-bottom: 10px
}
.websem-kinou-kwsk {
	background-color: #09d;
	padding: 15px;
	margin: 20px -10px -10px;
	font-weight: 700;
	color: #fff
}
.image-post .inyo a {
	font-size: 75%;
	font-weight: 100
}
.cateindexlist {
	margin-bottom: 40px
}
.cateindexlist p {
	font-weight: 700
}
.cateindexlist ul, .menu_list_un3 ul {
	padding: 0;
	margin: 0
}
.cateindexlist ul li {
	list-style-type: none;
/**	border: 1px solid #960;*/
	margin: 5px;
	display: block;
	padding: 20px 1px;
	border-radius: 10px;
	float: left;
	width: 24%;
	text-align: center;
	font-size: 16px;
	background-color:#444;
	color:#fff;
}
table.IT-Priority-kizai td {
	padding: 8px;
	font-size: 95%;
	background-color: #FAFAFA;
}
.jirei-kakoi {
	padding: 15px 35px;
	background-color: #F9FDFA;
	border-radius: 20px;
	margin: 25px 0 40px 0;
	box-shadow: 2px 2px 8px #ddd;
}
span.taisyou {
	background-color: #39C;
}
span.dounyu-kei {
	background-color: #F60;
}
span.dounyu-koka {
	background-color: #396;
}
span.taisyou, span.dounyu-koka, span.dounyu-kei {
	padding: 3px 15px 1px 15px;
	margin-right: 10px;
	color: #FFF;
	font-weight: bold;
}
.pickupcard {
	background-color: #fbedd2 !important;
}
.excerpt {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.weardev{
	background-color: #F7FFFE;
	padding-top: 10px;
	padding-right: 20px;
	padding-bottom: 10px;
	padding-left: 20px;
}

.valign-m{vertical-align: middle !important;}
table.wirptbl{
	border: 1px solid #ccc;
	margin-bottom: 10px
}table.wirptbl tr th{
	border: 2px solid #fff;
	background-color: #CCCCCC;
	color: #333;
	text-align: center;
	white-space: nowrap;
	padding: 5px
}table.wirptbl tr td{
	border: 2px solid #fff;
	padding: 10px 10px;
	font-size: 95%;
	background-color: #F3F3F3;
}
.wirp-jirei1{
	background-color: #e2f0d9;
	padding: 15px 30px;
}
.wirp-jirei2{
	padding: 15px 30px;
	background-color: #fff2cc;
}





/* =========================
   目次（トグル＋デザイン）
========================= */
.toc {
  background: #f8fbff;
  border: 1px solid #dbe7f5;
  border-radius: 10px;
  margin: 40px 0;
  overflow: hidden;
}

/* タイトル */
.toc__summary {
  cursor: pointer;
  font-size: 18px;
  font-weight: 700;
  padding: 16px 20px;
  position: relative;
  list-style: none;
}

/* デフォルト矢印消す */
.toc__summary::-webkit-details-marker {
  display: none;
}

/* ＋ボタン */
.toc__toggle::before {
  content: "+";
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 20px;
  transition: 0.3s;
}

/* 開いたら− */
details[open] .toc__toggle::before {
  content: "−";
}

/* 中身 */
.toc__inner {
  padding: 0 20px 20px;
  transition: max-height 0.4s ease;
}

/* 最初は途中まで表示 */
.toc:not([open]) .toc__inner {
  display: block;   /* ←これが重要 */
  max-height: 160px;
  overflow: hidden;
  position: relative;
}


/* フェード */
.toc:not([open]) .toc__inner::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 60px;
  background: linear-gradient(to bottom, rgba(248,251,255,0), #f8fbff);
}

/* リスト */
.toc__list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.toc__item {
  margin-bottom: 10px;
}

/* 親見出し */
.toc__item > a {
  display: inline-block;
  font-weight: 600;
  color: #1a202c;
  text-decoration: none;
  transition: 0.2s;
}

.toc__item > a:hover {
  color: #2b6cb0;
  transform: translateX(3px);
}

/* 子リスト */
.toc__sublist {
  list-style: none;
  margin: 6px 0 12px 14px;
  padding-left: 12px;
  border-left: 2px solid #e2e8f0;
}

.toc__sublist li {
  margin: 4px 0;
}

/* 小見出し */
.toc__sublist a {
  font-size: 14px;
  color: #4a5568;
  text-decoration: none;
  transition: 0.2s;
}

.toc__sublist a:hover {
  color: #2b6cb0;
  transform: translateX(2px);
}

/* 開いたときのアニメーション */
.toc[open] .toc__inner {
  animation: tocOpen 0.4s ease;
}

@keyframes tocOpen {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* スマホ */
@media screen and (max-width: 768px) {
  .toc__summary {
    font-size: 16px;
  }

  .toc {
    margin: 24px 0;
  }
}

.post-cate-tag{display: inline-block;
  background: #666;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  padding: 8px 20px;
  border-radius: 50px; /* 完全な楕円 */
  text-align: center;
margin-bottom:8px;
margin-top:40px}


.blog-thumb span{float:right;font-size:12px;}

.top-catewaku{
	border: 1px solid #005fa8;
	border-radius:8px;
	width:180px;
	font-size:11px;
	text-align:center;
	padding:4px 3px;
	color:#005fa8;
	float:left;
}




/* =========================================
タグから探す
========================================= */

.tag-search {
  margin-top: 80px;
  padding-top: 40px;
  border-top: 1px solid #e5e5e5;
}

.tag-search__title {
  font-size: 28px;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 24px;
}

.tag-search__list {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

/* ボタン */

.tag-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 42px;
  padding: 10px 18px;

  border-radius: 999px;

  border: 1px solid #d8d8d8;

  background: #fff;
  color: #111;

  font-size: 14px;
  line-height: 1;

  text-decoration: none;

  transition:
    background .25s ease,
    color .25s ease,
    border-color .25s ease,
    transform .25s ease,
    box-shadow .25s ease;
}

/* hover */

.tag-btn:hover {
  background: #111;
  color: #fff;
  border-color: #111;

  transform: translateY(-2px);

  box-shadow: 0 10px 24px rgba(0,0,0,.08);
}

/* スマホ */

@media screen and (max-width: 767px) {

  .tag-search {
    margin-top: 60px;
    padding-top: 32px;
  }

  .tag-search__title {
    font-size: 22px;
    margin-bottom: 20px;
  }

  .tag-search__list {
    gap: 10px;
  }

  .tag-btn {
    min-height: 38px;
    padding: 8px 14px;
    font-size: 13px;
  }

}




/******tag.html 用CSS**********************/
/* =========================================
タグページ
========================================= */

.tag-page {
  padding: 80px 20px;
}

.tag-page__inner {
  max-width: 1200px;
  margin: 0 auto;
}

.tag-page__sub {
  font-size: 13px;
  letter-spacing: .08em;
  margin-bottom: 12px;
  color: #666;
}

.tag-page__title {
  font-size: 42px;
  line-height: 1.3;
  margin-bottom: 48px;
}

/* 一覧 */

.tag-post-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

/* カード */

.tag-card {
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid #e5e5e5;
  background: #fff;

  transition:
    transform .3s ease,
    box-shadow .3s ease;
}

.tag-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 30px rgba(0,0,0,.08);
}

.tag-card a {
  display: block;
  text-decoration: none;
  color: inherit;
}

.tag-card__thumb {
/*  aspect-ratio: 16 / 9;*/
  overflow: hidden;
  background: #f5f5f5;
}

.tag-card__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;

  transition: transform .5s ease;
}

/* hover */

.tag-card:hover .tag-card__thumb img {
  transform: scale(1.05);
}

.tag-card__body {
  padding: 24px;
}

.tag-card__title {
  font-size: 18px;
  line-height: 1.7;
  margin-bottom: 18px;
}

.tag-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.tag-card__tags span {
  background: #f4f4f4;
  border-radius: 999px;
  padding: 6px 10px;
  font-size: 12px;
}

/* レスポンシブ */

@media screen and (max-width: 1024px) {

  .tag-post-list {
    grid-template-columns: repeat(2, 1fr);
  }

}

@media screen and (max-width: 767px) {

  .tag-page {
    padding: 60px 16px;
  }

  .tag-page__title {
    font-size: 30px;
    margin-bottom: 36px;
  }

  .tag-post-list {
    grid-template-columns: 1fr;
    gap: 18px;
  }

}

/* 260521 追記 */
.new_footer_block {
    border-bottom: 1px solid #C1C1C1;
    padding-bottom: 10px;
}
.new_footer_block .footer__nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	margin: 20px 0;
}
.new_footer_block .footer__nav ul li,
.new_footer_block .footer__nav ul li a {
	font-size: 14px;
}
.new_footer_block .footer__links__item {
	display: flex;
	list-style: none;
	gap: 20px;
	justify-content: center;
	flex-wrap: wrap;
	padding: 0;
}
@media screen and (max-width: 768px) {
	.new_footer_block .footer__nav {
		flex-direction: column;
	}
	.new_footer_block .footer__nav ul li,
	.new_footer_block .footer__nav ul li a {
		font-size: 16px;
	}
	.new_footer_block .footer__nav .footer__nav__item {
		padding: 0 0 0 25px;
	}
}
/* 260521 追記 END */