@charset "utf-8";

.top_h1 {
  background-image: url(../images/footer/bg_pattern_SP.png);
  padding: 50px 15px 0;
  text-align: center;
  font-size: 36px;
  line-height: 2.4rem;
}

main .top_h1+div.headingArea {
  padding-top: 50px;
}

@media (min-width: 768px) {
  main .top_h1+div.headingArea {
    padding-top: 75px;
  }

  .top_h1 {
    padding: 75px 0 0;
  }

  .top_h1 br {
    display: none;
  }

}

@media (max-width: 767px) {
  .height-auto {
    height: auto;
    object-fit: contain;
  }
}

#header {
  position: fixed;
  top: 0;
  z-index: 10;
  width: 100%;
}

main {
  margin-top: 80px;
}

header div.headerContents .header_left {
  display: flex;
}

header div.headerContents .gnav {
  flex: 1;
  display: flex;
  padding-right: 330px;
  justify-content: flex-end;
  align-items: center;
  font-size: 24px;
  font-weight: bold;
  gap: 20px;
}

header div.headerContents .gnav_li a {
  background: none;
  width: auto;
  height: auto;
  color: #fff;
}

header div.headerContents .toggle {
  display: none;
}

@media (max-width: 767px) {
  #header {
    width: 100%;
  }

  main {
    margin-top: 40px;
  }

  header div.headerContents {
    padding-left: 0;
  }

  header div.headerContents .header_left .logo{
    padding-left: 15px;
    background-color: #4c4948;
    position: relative;
    z-index: 20;
  }

  header div.headerContents .toggle {
    display: block;
    width: 30px;
    height: 18px;
    position: fixed;
    top: 10px;
    right: 20px;
    z-index: 30;
  }

  header div.headerContents .toggle span {
    width: 100%;
    height: 2px;
    background-color: #ffffff;
    position: absolute;
    transition: ease .4s;
    display: block;
  }

  header div.headerContents .toggle span:nth-child(1) {
    top: 0;
  }

  header div.headerContents .toggle span:nth-child(2) {
    margin: 8px 0;
  }

  header div.headerContents .toggle span:nth-child(3) {
    bottom: 0;
  }

  header div.headerContents .toggle.active span:nth-child(1) {
    top: 10px;
    transform: rotate(45deg);
  }

  header div.headerContents .toggle.active span:nth-child(2) {
    opacity: 0;

  }

  header div.headerContents .toggle.active span:nth-child(3) {
    top: 10px;
    transform: rotate(-45deg);
  }

  header div.headerContents .gnav {
    position: absolute;
    top: -300px;
    flex-direction: column;
    padding: 50px;
    width: 100vw;
    height: auto;
    position: absolute;
    right: 0;
    box-sizing: border-box;
    background: #000000;
    transition: ease .4s;
    z-index: 5;
  }

  header div.headerContents .gnav.active {
    top: 40px;
  }

}

/****** column用 ******/

/*共通装飾*/
body:has(.column){background-color: #fff;}
body:has(.column) footer div.footerContentsArea div.footerCopyright{background-color: #000;}
.column{font-size:16px; line-height: 1.5em;}
.column .column_container{width: 1100px;}
.column .u-fv{background: #000;}
.column .u-fv h1,.column .u-fv p{color: #fff; font-size: 26px; width:1100px;}
.column .breadcrumbs_outer{background:#e9e9e9;}
.breadcrumb {
  font-size: 14px;
  margin: 0 auto;
  max-width: 1100px;
  padding: 10px 0;
}

.breadcrumb ol {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0;
}

.breadcrumb li {
  display: flex;
  align-items: center;
  color: #666;
}

.breadcrumb li a {
  color: #4c4948;
  text-decoration: none;
  transition: 0.3s;
}

.breadcrumb li a:hover {
  opacity: 0.7;
}

.breadcrumb li + li::before {
  content: ">";
  margin: 0 8px;
  color: #4c4948;
}

.breadcrumb li[aria-current="page"] {
  color: #4c4948;
  pointer-events: none;
}

.column .column_container .right{width:325px;}
.column .column_container .right h3{font-size:18px; border-left: 5px solid #4c4948;}
.column .column_container .right .sidebar-wrapper .rpwe-li h3 a{color: #4c4948; font-size: 15px;}
.column .column_container .right .sidebar-wrapper .rpwe-li a:hover{color:#4c4948;}
.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;text-align: right;}

	/*詳細ページ装飾*/
.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:#4c4948; color:#fff;}
.column .content .left h3{font-size:18px; background:#fff; border-left:solid 3px #4c4948; 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:auto !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:#4c4948; 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:#4c4948; color: #fff;}




/***非編集エリア***/
	/*共通装飾*/
.column{background:#fff; letter-spacing:1px;}
.column *,.column  *::before,.column  *::after{box-sizing: border-box;}
.column p{margin:0 0 1lh;font-size: 16px;line-height: 1.8;}
.column img{display: block;}
.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;}
.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; text-align: right;}
.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: #4c4948; text-decoration: underline;}
.column .content .left a:hover{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;margin-bottom: 10px;}
.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;}

#js-toc {
  margin: 0 0 30px;
  background: #f7f7f7;
}

#js-toc .toc-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px 20px;
  background: #4c4948;
}

#js-toc .toc-title {
  font-weight: bold;
  font-size: 18px;
  color: #fff;
}

#js-toc .toc-toggle-btn {
  font-size: 14px;
  background: none;
  border: none;
  cursor: pointer;
  color: #fff;
}

#js-toc .toc-body {
  padding: 20px 30px 20px;
}

#js-toc ul {
  background: no-repeat;
  padding: 0 0 0 2ch;
  margin: 0;
}

#js-toc li {
  text-decoration: none;
}

#js-toc a {
text-decoration: none;
margin-bottom: 0.5lh;
padding-bottom: 0;
border: none;
}


@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 .breadcrumb{width: 980px;padding: 10px;box-sizing: border-box;}
	.column .u-fv h1,.column .u-fv p{width:980px;}
}

@media screen and (max-width:980px) {
	.column .breadcrumb{overflow-x: scroll; white-space: nowrap;}
	.column .breadcrumb{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;margin-top: 40px;}
	.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{}
	.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%; height: 90px; object-fit: cover;}
	.column .wp-pagenavi{margin:40px 0;}
  .column .content .left h1 {font-size: 24px;}
	.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;max-width: 300px;}
	.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}
  #js-toc .toc-body {padding: 20px;}
}
@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; }
}