@charset "utf-8";

.aligncenter{display:block;margin:0 auto; }
.alignleft{display:block;margin:0 auto 0 0; }
.alignright{display:block;margin:0 0 0 auto; }
.txtcenter{text-align:center; }
.txtleft{text-align:left; }
.txtright{text-align:right; }
.pc-txt{ text-align:center; }
.sp-txt{ text-align:left; }
.floatright{padding:4px;margin:0 0 2px 8px;display:inline;float:right; }
.floatleft{padding:4px;margin:0 8px 2px 0;display:inline;float:right; }
.imgWrap{overflow:hidden; }
.imgWrap img{display:block;transition-duration:0.8s;margin:auto; }
.imgWrap img:hover{transform:scale(1.2);transition-duration:0.8s; }
.sp-br,.ssp-br,.sp-tblbr{display:none; }
.sp-img{display:none; }
.pc-cnt{text-align:center; }
.sp-cnt{text-align:left; }
@media only screen and (max-width:767px){
	.pc-br{display:none; }
	.sp-br{display:block; }
	.pc-cnt{text-align:left; }
	.sp-cnt{text-align:center; }
}
@media only screen and (max-width:690px){
	.pc-img{display:none; }
	.sp-img{display:block; }
	.pc-txt{ text-align:left; }
	.sp-txt{ text-align:center}
}
@media only screen and (max-width:380px){
	.pc-tblbr{display:none; }
	.sp-tblbr{display:block; }
}
@media only screen and (max-width:350px){
	.spc-br{display:none; }
	.ssp-br{display:block; }
}

/* Base
--------------------*/
.dlb-ttl h2{ position:relative; font-weight:bold; padding:0 0 10px; margin:0 0 10px; font-size:30px; transform:scale(0.9, 1); text-align:center; font-family:"Oswald", sans-serif; }
.dlb-ttl h2::after{ content:''; position:absolute; bottom:0; left:0; right:0; margin:auto; width:178px; height:3px; background:#FFF; }
.dlb-ttl p{ text-align:center; font-size:18px; font-weight:normal; }
.dlb-btn a{ overflow:hidden; position:relative; z-index:1; display:flex; width:255px; height:45px; background:#FFF; color:#000; justify-content:center; align-items:center; margin:auto; }
.dlb-btn a::after{ background:#19499d; position:absolute; top:0; left:0; content:''; width:100%; height:100%; transform:scale(0, 1); transform-origin:left top; transition:.3s cubic-bezier(0.45, 0, 0.55, 1); z-index:-1; }
.dlb-btn a:hover{ color:#FFF; }
.dlb-btn a:hover::after{ transform:scale(1, 1); }
@media only screen and (min-width:768px){
	.dlb-ttl h2{ font-size:40px; }
	.dlb-ttl p{ font-size:20px; }
}
@media only screen and (min-width:1024px){
	.dlb-ttl h2{ font-size:50px; }
	.dlb-ttl p{ font-size:22px; }
}

/* Margin
--------------------*/
.l-mg{margin-bottom:100px!important; }
.m-mg{margin-bottom:75px!important; }
.s-mg{margin-bottom:40px!important; }
.no-mg{margin-bottom:0!important; }
@media only screen and (max-width:690px){
	.l-mg{margin-bottom:80px!important; }
	.m-mg{margin-bottom:55px!important; }
	.s-mg{margin-bottom:30px!important; }
}
@media only screen and (max-width:979px){
	.l-mg{margin-bottom:60px!important; }
	.m-mg{margin-bottom:35px!important; }
	.s-mg{margin-bottom:20px!important; }
}

/* Breadcrumb
--------------------*/
.breadarea *,
.breadarea *:after,
.breadarea *:before{ -webkit-box-sizing:border-box; box-sizing:border-box; }
.breadarea{ padding:10px 0; box-sizing:border-box; display:table; width:100%; margin:0 auto 20px; width:calc(100% - 40px); max-width:1000px; }
.breadarea a{ text-decoration:none; }
.breadarea .breadcrumb{ padding-left:0; margin-top:0; margin-bottom:0; list-style:none; display:flex; flex-wrap:wrap; margin:0 auto; width:100%; font-family:"Oswald", sans-serif; }
.breadarea li{ display:inline-block; position:relative; padding-right:calc(16px + 8px); color:#808080; }
.breadarea li::before{ content:''; width:8px; height:8px; border-top:1px solid #FFF; border-right:1px solid #FFF; -webkit-transform:rotate(45deg); -ms-transform:rotate(45deg); transform:rotate(45deg); position:absolute; top:calc(50% - 4px); right:0.6em; -webkit-transition:all .3s ease 0s; -o-transition:all .3s ease 0s; transition:all .3s ease 0s; }
.breadarea li:last-child{ margin-right:0; padding-right:0; }
.breadarea li:last-child::before{ content:normal; }
.breadarea li span{ color:#FFF; }

/* Page header
--------------------*/
#page-header{ margin:60px 0 0; width:100%; height:200px; position:relative; background-size:cover; background-position:center; background-repeat:no-repeat; background-color:#CCC; }
@media only screen and (min-width:768px){
	#page-header{ height:300px; }
}

/* Side
--------------------*/
#side-contents{ display:flex; flex-wrap:wrap; }
#side-contents .main-data{ border-radius:6px; width:100%; margin-bottom:3em; box-sizing:border-box; }
#side-contents .main-data h3{ font-size:18px; font-weight:500; margin:0 0 20px 0; background:#222; padding:10px; color:#666; color:#FFF; }
#side-contents .main-data h3::after{ display:none; }
#side-contents .main-data #comments{ background:transparent; border-bottom:1px solid #222; color:#222; }
#side-contents .main-data #reply-title{ border:1px solid #222; background:#FFF; color:#222; }
#side-contents .side-data{ width:100%; border:1px solid #CCC; padding:20px; box-sizing:border-box; }
#side-contents .widget_block{ margin:0 0 30px; }
#side-contents .widget_block:last-of-type{ margin:0; }
.post-images{ margin-bottom:35px; line-height:0; display:inline-block; }
.heading{ font-size:20px; font-weight:bold; margin:0 0 20px; }
.post-day{ margin:0; }
.post-day time{ font-size:14px; }
.wp-block-search-button{ color:#000; }
.side-data h2{ border-bottom:1px solid #222; font-size:16px; margin:0 0 15px; padding:0; font-weight:400; height:50px; line-height:50px; }
.side-data ul li{ margin:0; padding:0 0 10px; background:none; position:relative; margin:0 0 10px; border-bottom:1px dashed #CCC; }
.side-data ul li a{ display:block; padding:0; overflow:hidden; text-decoration:none; position:relative; box-sizing:border-box; }
.side-data ul li a:hover{ background:#FFF; color:#222; }
@media only screen and (min-width:768px){
	#side-contents .main-data{ width:calc(65% - 10px); margin-right:10px; }
	#side-contents .side-data{ width:calc(35% - 10px); margin-left:10px; }
	.heading{ font-size:24px;}
	.post-images{ margin-bottom:45px; }
}
@media only screen and (min-width:1024px){
	#side-contents .main-data{ width:calc(70% - 20px); margin-right:20px; }
	#side-contents .side-data{ width:calc(30% - 20px); margin-left:20px; }
	.post-images{ margin-bottom:55px; }
}

/* Comment
--------------------*/
.btn-contact input[type="submit"]{ background:#222; font-size:16px; margin:30px auto 0; display:block; box-shadow:0 0 0 4px #222; border:1px dashed #FFF; text-align:center; padding:10px 2rem; color:#FFF; transition:all 0.4s ease; border-radius:4px; }
.btn-contact input[type="submit"]:hover{ background:#666; box-shadow:0 0 0 4px #666; }
#respond{ margin-top:30px; padding-top:10px; border-top:1px dashed #CCC; }
.comment-form-comment label{ display:block; }
#comment{ padding:8px; width:100%; background:#FFF; border:1px solid #CCC; }
#commentform input[type="text"]{ padding:8px; width:100%; background:#FFF; border:1px solid #CCC; border-radius:6px; }
#comments{    margin:50px 0 20px!important; }
.commentlist{counter-reset:titleNum; }
.commentlist li{ position:relative; padding:6px 0 6px 2.5em; list-style:none; }
.commentlist li::before{ position:absolute; top:6px; left:0; counter-increment:titleNum; content:counter(titleNum); width:32px; height:32px; line-height:32px; background-color:#222; color:#FFF; text-align:center; }
.form-submit #submit{ border:none; color:#FFF; padding:10px; appearance:none; display:block; background-color:#222; transition:all .2s ease; }
.form-submit #submit:hover{ background-color:#666; }
h3.under-line{ border-bottom:2px solid #000; font-size:25px; margin:0 auto 45px; }

/* Previous
--------------------*/
#previous{ margin:50px auto 0; display:flex; flex-wrap:wrap; max-width:260px; justify-content:space-evenly; flex-direction:row-reverse; }
#previous .next_post,
#previous .prev_post{ text-align:center; width:50%; margin:auto; border:1px solid #FFF; }
#previous .next_post{ margin:0 -2px 0 0;}
#previous a{ display:block; line-height:1.8; text-decoration:none; }
#previous a:hover{ background-color:rgba(255,255,255,0.2); }
#previous .next_post a{ padding:15px 10px 15px 15px; margin:0 0 0 auto; }
#previous .prev_post a{ padding:15px 15px 15px 10px; }
#previous a span{ position:relative; }
#previous .next_post a span{ padding:0 0 0 20px; }
#previous .prev_post a span{ padding:0 20px 0 0; }
#previous .next_post a span::before,
#previous .prev_post a span::before{ content:''; top:0; bottom:0; margin:auto; position:absolute; width:8px; height:8px; -webkit-transform:rotate(45deg); -ms-transform:rotate(45deg); transform:rotate(45deg); -webkit-transition:all .3s ease 0s; -o-transition:all .3s ease 0s; transition:all .3s ease 0s;}
#previous .next_post a span::before{ border-bottom:1px solid #FFF; border-left:1px solid #FFF; left:0; }
#previous .prev_post a span:before{ border-top:1px solid #FFF; border-right:1px solid #FFF; right:0; }
@media only screen and (min-width:768px){
	#previous{ max-width:430px; margin:100px auto 0; }
}
@media only screen and (min-width:1024px){
	#previous{ margin:150px auto 0; }
}

/* News
--------------------*/
.news{ margin:0; display:flex; flex-wrap:wrap; }
.news dt,
.news dd{ padding:5px 0; }
.news dt{ width:120px; }
.news dt .cate{	display:none; }
.news dd{ width:calc(100% - 140px); margin:0 0 0 20px; }
@media screen and (min-width:900px){
	.news dt{ width:185px; display:flex; justify-content:space-between; }
	.news dt .cate{ display:inline-block; width:7em; background:#999; color:#FFF; font-size:0.8em; text-align:center; margin-right:1em; align-self:flex-start; line-height:1.8; position:relative; top:0.4em; border-radius:2px; }
	.news dd{ width:calc(100% - 185px); margin:0; }
}

/* Post
--------------------*/
.post-grid{ width:100%; margin:0; padding:0; display:flex; flex-wrap:wrap; }
.post-grid article{ box-shadow:0 4px 6px 2px rgba(0,0,0,0.2); background:#FFF; width:calc(50% - 10px); }
.post-grid article:nth-child(odd){ margin:20px 10px 0 0; }
.post-grid article:nth-child(even){ margin:20px 0 0 10px; }
.post-grid article:nth-child(1){ margin:0 10px 0 0; }
.post-grid article:nth-child(2){ margin:0 0 0 10px; }
.post-grid .post_text{ padding:10px; }
.post-grid h3{ background:rgba(255,255,128,0); color:#292523; padding:5px 0; font-size:14px; margin:0 0 10px; }
.post-grid h3:after{ display:none; }
.post-grid time{ font-size:12px; color:#292523; }
.post-grid img{ width:100%; object-fit:cover; object-position:center; }
@media only screen and (min-width:768px){
	.post-grid article,
	.post-grid article:nth-child(odd),
	.post-grid article:nth-child(even){ margin:20px 20px 0 0; width:calc(100%/3 - 13.3333px); }
	.post-grid article:nth-child(3n){ margin:20px 0 0; }
	.post-grid article:nth-child(-n+2){ margin:0 20px 0 0; }
	.post-grid article:nth-child(3){ margin:0; }
	.post-grid .post_text{ padding:15px; }
	.post-grid h3{ font-size:16px; }
}
@media only screen and (min-width:1024px){
	.post-grid article,
	.post-grid article:nth-child(odd),
	.post-grid article:nth-child(even){ margin:50px 50px 0 0; width:calc(100%/3 - 33.3333px); }
	.post-grid article:nth-child(3n){ margin:50px 0 0; }
	.post-grid article:nth-child(-n+2){ margin:0 50px 0 0; }
	.post-grid article:nth-child(3){ margin:0; }
}

/* List
--------------------*/
ul.custom-list{ margin:1em 0; padding-left:1.5em; margin:0 0 0 18px;}
ul.list-disc{ list-style-type:disc; margin:0 0 0 18px;}
ul.list-circle{ list-style-type:circle; margin:0 0 0 18px;}
ul.list-square{ list-style-type:square; margin:0 0 0 18px;}
ol.list-decimal{ list-style-type:decimal; margin:0 0 0 18px;}
ol.list-alpha{ list-style-type:lower-alpha; margin:0 0 0 18px;}
ol.list-roman{ list-style-type:upper-roman; margin:0 0 0 18px;}

/* Table
--------------------*/
.tblA{ border-collapse:collapse; margin-bottom:40px; width:100%; }
.tblA th,
.tblA td{ border-bottom:1px solid #FFF; padding:14px 0; vertical-align:middle; text-align:left; vertical-align:top; }
.tblA th{width:30%;text-align: center; }
.tblA td{ width:70%; }
@media only screen and (max-width:767px){
	.tblA{ width:100%; }
	.tblA tr,
	.tblA th,
	.tblA td{ display:block; width:auto; }
	.tblA tr:first-child th{ border-top:1px solid #FFF; }
	.tblA tr:first-child td{ border-top:none; }
	.tblA th,
	.tblA td{ border-top:none; }
	.tblA tr,
	.tblA th,
	.tblA td{ display:block; width:auto; }
	.tblA th,
	.tblA td{ padding:8px 15px; }
	.tblA th{ border-bottom:1px dashed #FFF; font-size:18px; }
	.tblA td{ border-top:none; font-size:16px; }
}