@charset "UTF-8";
/*
Theme Name: pfa
*/

/****** column用 ******/

/***編集エリア***/
	/*共通装飾*/
.column{font-size:16px; line-height: 1.5em;}
.column .column_container{width: 1100px;}
.column .u-fv{background: #d45649;}
.column .u-fv h1,.column .u-fv p{color: #fff; font-size: 26px; width:1100px;}
.column .breadcrumbs_outer{background:#e9e9e9;}
.column .breadcrumbs{width: 1100px; font-size:14px;}
.column .column_container .right{width:325px;}
.column .column_container .right h3{font-size:18px; border-left: 5px solid #d45649;}
.column .column_container .right .sidebar-wrapper .rpwe-li h3 a{color: #08287f; font-size: 15px;}
.column .column_container .right .sidebar-wrapper .rpwe-li a:hover{color:#211c70;}
.column .column_container .right .widget_categories .cat-item{font-size: 15px;}

	/*一覧ページ装飾*/
.column .column_container .left h2{color:#000; font-size:20px;}
.column .column_container .left ul .thumbnail{width: 270px;}
.column .column_container .left ul .thumbnail img{height:150px;}
.column .column_container .left ul .content .title{font-size:20px; color:#000;}
.column .column_container .left ul .content .des{font-size:14px; color:#000;}
.column .column_container .left ul .content .time{font-size:14px; color:#aaa;}

	/*詳細ページ装飾*/
.column .content .data .category a{font-size:12px;}
.column .content .data .time{font-size:12px;}
.column .content .left h1{font-size:28px;}
.column .content .left h2{font-size:22px; background:#d45649; color:#fff;}
.column .content .left h3{font-size:18px; background:#fff; border-left:solid 3px #d45649; background: #f7f7f7;}
.column .content .left h4{font-size:16px;}
.column .content .left h4:before {border-top: 1px solid; content: ""; width: 10px; margin-right: 5px;}
.column .content .left .thumbnail img{height:400px !important;}
.column .content #ez-toc-container .ez-toc-title{font-size:16px;}
.column .content #ez-toc-container a{font-size:16px;}
.column .content .yarpp h3{font-size:20px;}
.column .content .yarpp a .yarpp-thumbnail-title{font-size:16px;}
.supervisor .supervisor-title{font-size: 20px; background:#d45649; color: #fff;}
.supervisor-profile .txt1{font-size: 20px;}
.supervisor-profile .txt2{font-size: 16px;}
.d1 .txt2{font-size: 16px;}	
.supervisor_box .title {font-size: 20px; background:#d45649; color: #fff;}




/***非編集エリア***/
	/*共通装飾*/
.column{background:#fff; letter-spacing:1px;}
.column *,.column  *::before,.column  *::after{box-sizing: border-box;}
.column p{margin:0;}
.column .column_container{margin: 0 auto 0; display: flex; justify-content: space-between; padding: 30px 0 100px;}
.column .column_container .left{width:770px; margin:0 30px 0 0; color:#000; flex: 1;}
.column .u-fv{width: 100%;}
.column .u-fv h1,.column .u-fv p{font-weight: bold; letter-spacing: 2.5px; margin:0 auto; padding:40px 0; text-align:center;}
.column .breadcrumbs_outer{width: 100%;}
.column .breadcrumbs{margin:0 auto; padding:10px;}
.column .breadcrumbs  a:hover{text-decoration:underline;}

.column .column_container .right h3{color:#000; margin:0 0 15px; padding:10px;}
.column .column_container .right .sidebar-wrapper{margin:0 0 30px;}
.column .column_container .right .sidebar-wrapper .rpwe-li {display: grid; grid-template-columns: 40% 1fr; margin:0 0 20px; }
.column .column_container .right .sidebar-wrapper .rpwe-li h3{flex: 1; font-weight:normal; border:none; padding:0;}
.column .column_container .right .sidebar-wrapper .rpwe-li h3 a{width: auto; margin: 0; padding-left: 10px; display: inline-block;}
.column .column_container .right .sidebar-wrapper .rpwe-li a:hover{text-decoration:underline;}
.column .column_container .right .sidebar-wrapper .rpwe-li a img{width: 100%; object-fit: contain; height: 80px;}
.column .column_container .right .widget_categories .cat-item{background: #fff; color: #000; padding: 10px 10px; border-top: solid 1px #e5e5e5;}
.column .column_container .right .widget_categories .cat-item:hover{background: #f5f5f5;}
.column .column_container .right .widget_categories .cat-item:last-child{ border-bottom: solid 1px #eee}
.column .column_container .right .widget_categories .cat-item a{color:#000; display:flex; justify-content:space-between; padding:0;}
.column .column_container .right .widget_categories .cat-item a:hover{color:#211c70;}

	/*一覧ページ装飾*/
.column .column_container .left h2{margin:0 0 20px;}
.column .column_container .left ul a{margin:0 0 30px; padding:0 0 30px; display:flex; border-bottom: solid 1px #e5e5e5;}
.column .column_container .left ul .thumbnail{margin:0 20px 0 0;}
.column .column_container .left ul .thumbnail img{width:100%; object-fit:cover;}
.column .column_container .left ul .content{flex: 1;}
.column .column_container .left ul .content .title{margin:0 0 20px; font-weight:bold;}
.column .column_container .left ul .content .des{ margin:0 0 15px;}

.column .wp-pagenavi{margin:0; color:#000; text-align:center; font-size: 14px;}
.column .wp-pagenavi .current{color:#fff; background:#aaa; padding:5px 15px; margin:0 5px; border-radius:5px;}
.column .wp-pagenavi .page{color:#000; padding:5px 15px; margin:0 5px;}
.column .wp-pagenavi .page:hover{background:#eee; color:#000; border-radius:5px;}
.column .wp-pagenavi .pages{color:#aaa; padding:5px 15px; margin:0 5px;}
.column .wp-pagenavi .nextpostslink,.column .wp-pagenavi .previouspostslink{padding:5px 15px; margin:0 5px; color:#aaa;}
.column .wp-pagenavi .nextpostslink:hover,.column .wp-pagenavi .previouspostslink:hover{background:#eee; color:#000; border-radius:5px;}

	/*詳細ページ装飾*/
.column .content .data{display:flex; justify-content: space-between; margin:0 0 30px;}
.column .content .data_in{display:flex; justify-content: flex-start;}
.column .content .data .category a{background:black; padding:3px 15px 5px; font-weight:bold; color:#fff; margin: 0 10px 30px 0;}
.column .content .data .time{padding:5px 0; color:#bbb; }
.column .content .left h1{ margin:0 0 30px; line-height: 1.5;}
.column .content .left h2{ padding:15px; margin:70px 0 20px;}
.column .content .left h3{border-bottom: 1px solid #e5e5e5; padding:10px; margin:40px 0 20px;}
.column .content .left h4{ font-weight:bold; margin:10px 0 10px; display: flex; align-items: center;}
.column .content .left h4:before {border-top: 1px solid; content: ""; width: 10px; margin-right: 5px;}
.column .content .left .thumbnail{width:100%; margin:0 0 30px; border: solid 1px #e5e5e5;}
.column .content .left .thumbnail img{width:100%; object-fit:cover;}

.column .content .left a{color: #0b57d0; text-decoration: underline;}
.column .content .left a:hover{color:#e32959; text-decoration:underline;}

.column .content .left table {width: 100% !important; margin: 20px 0; display: block; border-collapse: collapse; border-spacing: 0; overflow-x: auto; white-space: nowrap; -webkit-overflow-scrolling: touch;}
.column .content .left table tbody {width: 100%; display: table;}
.column .content .left table th {padding: 10px; background: #f7f7f7; border: solid 1px #ccc;}
.column .content .left table td {padding: 10px; border: solid 1px #ccc;}
.column .content .left table ul {margin: 0; background: transparent; padding: 0 0 0 30px;}
.column .content .left table a {margin: 0; padding: 0; display: inline;}
.column .content .left ul{list-style:disc; margin:20px 10px; background:#f7f7f7; padding:20px 20px 20px 50px; line-height: 1.4em;}
.column .content .left ol{list-style:decimal; margin:20px 10px; background:#f7f7f7; padding:20px 20px 20px 50px; line-height: 1.4em;}
.column .content blockquote {position: relative; padding: 10px 15px 10px 60px; margin:20px 0 30px; box-sizing: border-box; font-style: italic; background: #f5f5f5; color: #333;}
.column .content blockquote:before{display: inline-block; position: absolute; top: 15px; left: 15px; content: "\f10d"; font-family: "Font Awesome 5 Free"; color: #777777; font-size: 30px; line-height: 1; font-weight: 900;}
.column .content blockquote p {padding: 0; margin: 7px 0; line-height: 1.7;}
.column .content blockquote a {display: block; text-align: right; font-size: 0.9em; margin:0 !important;}

.column .content #ez-toc-container{width:90%; margin:30px 5% 0; padding:20px 30px; border:solid 1px #dadada; border-radius:5px;}
.column .content #ez-toc-container .ez-toc-title{margin:0 0 20px;}
.column .content #ez-toc-container a{margin:0 0 10px; padding:0; border:none;}
.column .content #ez-toc-container a:hover{color:#66808f; text-decoration:underline;}
.column .content .yarpp h3{background:none; padding:0; border:none; margin:40px 0 20px;}
.column .content .yarpp .yarpp-thumbnails-horizontal{display:flex; flex-wrap: wrap;}
.column .content .yarpp a{width:50% !important; height:auto !important; display:flex; border:none; margin:0 0 20px;}
.column .content .yarpp a img{ width:40% !important; height:90px !important; object-fit:cover; margin:0 15px 0 0;}
.column .content .yarpp a .yarpp-thumbnail-title{width:60% !important; font-weight:normal; margin:0; color:#000; margin:0 15px 0 0;}
.column .content .yarpp a .yarpp-thumbnail-title:hover{color: #0b57d0 !important;text-decoration: underline;}

.supervisor{border: 1px solid #e3e3e3; padding: 20px; margin: 50px 0 30px 0;}
.supervisor .supervisor-title{text-align: center; margin:0 0 20px; padding:15px; color: #fff; font-weight:bold;}
.supervisor .supervisor-profile .txt1{margin: 0 0 10px; font-weight: bold;}
.supervisor .supervisor-profile .txt2{margin: 0 0 20px; font-weight: 400;}
.supervisor .d1{margin:0 0 20px;}
.supervisor .d1 .txt1{font-weight: bold;}
.supervisor .d1 .txt2{font-weight: 400; margin:0 0 10px;}
.supervisor .d1 .txt2:last-child{margin:0;}
.supervisor .supervisor-profile-img{display: flex;}
.supervisor .supervisor-img img{width: 100%;}
.supervisor .supervisor-img{width: 30%; text-align: center;}
.supervisor .supervisor-content{margin: 0 0 0 30px !important; width: 100% !important;}

.column .lkc-card { margin: 10px 10px 15px; }
.column .lkc-date,.column .lkc-url { margin: 3px 0; padding-left: 0; }
.column .lkc-content { height: auto; }
.column .lkc-external-wrap, .column .lkc-internal-wrap, .column .lkc-this-wrap { max-width: none; width: 100%; border: #c9c9c9 solid 1px; box-shadow: none; background-color: transparent; border-radius: 5px; }
.linkcard { margin-left: 0 !important; margin-right: 0 !important; }

.supervisor_box{border: 1px solid #e3e3e3; padding: 20px; margin: 50px 0 30px 0;}
.supervisor_box .title {margin: 0 0 20px; padding: 20px; font-weight: bold;}
.supervisor_box p {font-size:95%;}
.post_content .supervisor_box p {line-height:2; margin: 0; line-height:2; letter-spacing: 0; }
.supervisor_box p.name {font-size: 26px; font-weight:bold;}
.supervisor_box p.name span{font-size: 16px; font-weight:bold; margin-left:10px;}
.supervisor_box .supervisor_wrap{display:flex; margin-bottom: 20px;}
.supervisor_box .supervisor_name{padding-left: 20px; display: flex; justify-content: center; align-items: center; }
.supervisor_box p.detail_ttl{font-size:18px; font-weight:bold; border-bottom: solid 1px #000000; padding:10px; margin: 20px 0 5px; background: #f7f7f7;}
.supervisor_box .supervisor_detail{margin:0 0 20px}
.supervisor_box .supervisor_detail .text{font-weight:500;}
.supervisor_box .supervisor_name a{text-decoration: underline !important;}
.supervisor_box a:hover{text-decoration:underline;}
.post_content .supervisor_box a[target="_blank"] {color: #000 !important;}
.supervisor_box .sns_area .sns_box{display: flex;}
.supervisor_box .sns_area .sns_box a{margin-right: 30px;}


@media screen and (max-width:1100px) {
	.column .column_container{width:980px;}
	.column .column_container .left{width:610px;}
	.column .column_container .left .thumbnail{width:auto;}
	.column .breadcrumbs{width: 980px;}
	.column .u-fv h1,.column .u-fv p{width:980px;}
}

@media screen and (max-width:980px) {
	.column .breadcrumbs{overflow-x: scroll; white-space: nowrap;}
	.column .breadcrumbs{width:100%;}
	.column .u-fv h1,.column .u-fv p{width:100%;}
	.column .column_container{width:100%; margin:0 auto 0; display:block; padding:30px 0 30px;}
	.column .column_container .left{width:100%; margin:0; padding:0 15px;}
	.column .column_container .left a{ margin:0 0 40px;}
	.column .column_container .left ul a{display:block;}
	.column .column_container .left .thumbnail{width:100% !important; margin:0 0 10px !important;}
	.column .column_container .left .thumbnail img{width:100%;height: auto!important;max-height: 500px;}
	.column .column_container .left .content{width:100%;}
	.column .column_container .left .content .title{margin:0 0 10px;}
	.column .column_container .left .content .des{margin:0 0 10px;}
	.column .column_container .left .content .time{margin:0;}
	.column .column_container .right{width:100%; padding:0 15px;}
	.column .column_container .right h3{margin:0 0 15px;}
	.column .column_container .right .sidebar-wrapper{margin:0 0 30px;}
	.column .column_container .right .sidebar-wrapper .rpwe-li a{width:35%;}
	.column .column_container .right .sidebar-wrapper .rpwe-li a:has(img){min-width: 110px;}
	.column .column_container .right .sidebar-wrapper .rpwe-li h3{width:100%;}
	.column .column_container .right .sidebar-wrapper .rpwe-li a img {width: 100%; max-width: 180px; height: 90px; object-fit: cover;}
	.column .wp-pagenavi{margin:40px 0;}
	.column .content .data{display:block; margin:10px 0 10px;}
	.column .content .data .category a{display: inline-block; margin:0;}
	.column .content .data .time{margin:10px 0 0;}
	.column .content .yarpp{margin:20px 0 50px;}
	.column .content .yarpp .yarpp-thumbnails-horizontal{display:block;}
	.column .content .yarpp a{width:100% !important; margin:0 0 20px;}
	.column .content .yarpp a img{ width:35% !important; height:72px !important;}
	.column .content .yarpp a .yarpp-thumbnail-title{width:65% !important; margin:0 !important;}
	
	.column table {width: 100% !important; margin-bottom: 1rem; display: block; overflow-x: auto; white-space: nowrap; -webkit-overflow-scrolling: touch;}
	.column tbody {width: 100%; display: table;}
	.column .content .left img{width:100%;}
	.insta img{width:27px; height:27px;}

	.supervisor .supervisor-profile-img{flex-direction: column;}
	.supervisor .supervisor-img{width: 90%; margin: 0 auto; text-align: center;}
	.supervisor .supervisor-img img{width: 50%;}
	.supervisor .supervisor-title{margin: 0 0 10px 0 !important;}
	.supervisor .supervisor-content{margin: 0 auto !important; width: 95% !important;}

	.supervisor_box .supervisor_wrap{display:block; margin-bottom: 20px;}
	.post_content .supervisor_box .supervisor_name p:not(:first-child),
	.post_content .supervisor_box .supervisor_detail p:nth-child(2),
	.post_content .supervisor_box .supervisor_detail p:nth-child(4){font-size: 14px!important;}
	.supervisor_box .supervisor_name{padding-left: 0; padding-top:10px; display: block;}
	.supervisor_box p.name {font-size: 20px;}
	.supervisor_box .supervisor_img{text-align:center;}
	.supervisor_box p {font-size: 100%;}
	.supervisor_box .supervisor_img img {width:250px;}
	.supervisor_box .sns_area .sns_box{flex-direction: column;}
	.supervisor_box .sns_area .sns_box a{margin: 0 0;}
	.supervisor_box .supervisor_detail{margin:0 0 40px}
}
@media screen and (max-width:630px) {
    img.lkc-thumbnail-img { height: auto !important; }
}
@media screen and (max-width:480px) {
    img.lkc-thumbnail-img { height: auto !important; }
}



/***追記エリア***/


/* ----------------------------------------------------------------------
 reset css
---------------------------------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video
 { margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display:block; }
html { -webkit-text-size-adjust:100%; }
ul, ol { list-style:none; }
blockquote , q { quotes:none; }
blockquote:before, blockquote:after, q:before, q:after { content:''; content: none; }
a:focus { outline:none; }
ins { text-decoration:none; }
mark { font-style:italic; font-weight:bold; }
del { text-decoration:line-through; }
abbr[title], dfn[title] { border-bottom:1px dotted; cursor:help; }
table { border-collapse:collapse; border-spacing:0; width:100%; }
hr { display:block; height:1px; border:0; border-top:1px solid #ccc; margin:1em 0; padding:0; }
button, input, select, textarea { outline:0; -webkit-box-sizing:border-box; box-sizing:border-box; font-size:100%; }
input, textarea { background-image: -webkit-linear-gradient(hsla(0,0%,100%,0), hsla(0,0%,100%,0)); -webkit-appearance: none; border-radius:0; /* Removing the inner shadow, rounded corners on iOS inputs */ }
input[type="checkbox"]{ -webkit-appearance: checkbox; }
input[type="radio"]{ -webkit-appearance: radio; }
button::-moz-focus-inner, input::-moz-focus-inner { border:0; padding:0; }
iframe { max-width:100%; }

/* clearfix */
.clearfix::after { display:block; clear:both; content:""; }

/* ----------------------------------------------------------------------
 基本設定
---------------------------------------------------------------------- */
html { height:100%; }
html.hide_scroll_y {}
body {
	height:100%; padding-top:100px; font-family:Arial,sans-serif; font-size:14px; line-height:1; width:100%; position:relative; -webkit-font-smoothing:antialiased;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
@media screen and (max-height:1000px) {
	body { padding-top:60px; }
}
a { text-decoration:none; }
a, a:before, a:after, input {
  -webkit-transition-property:background-color, color; -webkit-transition-duration:0.2s; -webkit-transition-timing-function:ease;
  transition-property:background-color, color; transition-duration:0.2s; transition-timing-function:ease;
}


/* ----------------------------------------------------------------------
　ヘッダー
---------------------------------------------------------------------- */
#header {
  z-index:1100; position:fixed; top:0px; left:0px; width:100%; height:100px; background:#fff; padding-right:40px;
  -webkit-transition: background-color 0.3s ease; transition: background-color 0.3s ease;
	display:-webkit-box; display:-webkit-flex; display:flex;
	-webkit-justify-content:flex-end; justify-content:flex-end;
	-webkit-box-sizing:border-box; box-sizing:border-box;
}
@media screen and (max-height:1000px) {
	#header { height:70px; }
}


/* ロゴ */
#header_logo { position:absolute; left:40px; top:50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); z-index:3; }
#header_logo img { display:block; -webkit-transition: opacity 0.3s ease-in-out; transition: opacity 0.3s ease-in-out; width:200px; }
#header_logo a:hover img { opacity:0.5; }
#header_logo a .logo_text { }
#header_logo a:hover .logo_text { }
#header_logo .logo_image.mobile { display:none; }
@media screen and (max-height:1000px) {
	#header_logo { transform: translateY(-50%) scale(0.8); transform-origin:left; }
}

/* ----------------------------------------------------------------------
 フッター
---------------------------------------------------------------------- */
html.hide_scroll_y #footer { display:none; }


/* ページ上部へ戻るボタン */
#return_top { display:none; }
#return_top a { color:#fff !important; display:block; height:60px; width:60px; line-height:60px; text-decoration:none; z-index:100; position:relative; }
#return_top a:hover { }
#return_top span { text-indent:100%; white-space:nowrap; overflow:hidden; display:block; }
#return_top a:before {
  color:#fff; font-family:'design_plus'; content:'\e94b'; font-size:12px; display:block; width:12px; height:12px;
  position:absolute; left:48px; top:22px; margin:auto; transform: rotate(90deg);
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#return_top {
  position:fixed; right:0px; bottom:0px; z-index:999;
  -webkit-transform: translate3d(0,100%,0); transform: translate3d(0,100%,0);
  -webkit-transition: -webkit-transform 0.35s; transition: all 0.35s;
}
#return_top.active { -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); }


/* コピーライト */
#copyright {
	height:60px; border-top:1px solid #ddd; position:relative;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; box-sizing:border-box;
}
#copyright p { font-size:12px; text-align:center; height:60px; line-height:60px; }
#footer_sns { position:absolute; left:30px; top:50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); }



/* ----------------------------------------------------------------------
 ヘッダー
---------------------------------------------------------------------- */
@media screen and (max-width:1024px) {
#header { height:60px; }
  #header { border-bottom:1px solid #ddd; }
  body.header_fix #header { border-bottom:none; }
  html.show_scroll_y #header { border-bottom:none; }
  body.post-type-archive-work #header { border-bottom:none; }
}

@media screen and (max-width:750px) {

/* ロゴ */
#header_logo { left:25px; transform: translateY(-50%) scale(1); }
#header_logo a { }
#header_logo .logo_image.pc { display:none; }
#header_logo .logo_image.mobile { display:block; }
	#header_logo { left:20px; }
  #index_header_logo .logo_image.mobile { display:block; }
  #index_header_logo .logo_image.pc { display:none; }
	#header_logo img{width:60%;}
}

/* 251021 追記 */
.column_mv {
  margin: 0;
  padding: 0;
  position: relative;
  height: 40vh;
  background-image: url('http://ecoenergy-guide.com/wp-content/uploads/2025/10/PFA_1020_2-bg-scaled.webp');
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  align-items: center;
  width: 100%;
}

.column_mv_inner {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 100%;
}

.center-image {
 width: 1100px;
}

.center-image.pc {
  display: block;
}
.center-image.sp {
  display: none;
}

@media (max-width: 767px) {
  .column_mv {
    height: 30vh;
  }
  .center-image {
	width: 346px;
  }
  .center-image.pc {
    display: none;
  }
  .center-image.sp {
    display: block;
  }
}

/* 251021 追記 end */