@charset "utf-8";

/*====================================================================================================

  ブログ

====================================================================================================*/

.l-pgTtl h2 {
	background: url("../image/visual.jpg") no-repeat center bottom;
}

.private-alert {
  padding-top:0;
}

@media print,screen and (min-width:801px) {
  .private-alert {
    padding-bottom:80px;
  }
}

@media screen and (max-width:800px) {
  .private-alert {
    padding-bottom:2.5em;
  }
}

@media print,screen and (min-width:801px) {
  .blog {
    display:flex;
    justify-content:space-between;
  }
  
  .main {
    flex:1;
    padding-right:-webkit-calc(80 / 1120 * 100%);
    padding-right:calc(80 / 1120 * 100%);
		margin-bottom: 60px;
  }
}

@media print,screen and (min-width:1381px) {
  .side {
    width:280px;
  }
}

@media print,screen and (min-width:801px) and (max-width:1380px) {
  .side {
    width:calc(280 / 1380 * 100vw);
    min-width:220px;
  }
}

@media screen and (max-width:800px) {
  .blog {
    padding-top:3em;
    padding-bottom:3.5em;
  }
  
  .side {
    padding-top:3.5em;
  }
}

.side-hdline {
  border-top:1px solid #3e3937;
  font-size:1.44em;
  font-weight:500;
  line-height:1;
}

.side-list {
  list-style:none;
}

.side-list li a {
  display:block;
  padding-top:0.75em;
  padding-bottom:0.75em;
	border-bottom: 1px dotted #ccc;
	text-decoration: none;
	color: inherit;
}
.side-list li a:hover {
	color: #5AA5DC;
}
.side-list li:last-child a {
	border-bottom: none;
}

.latest .date {
	font-size: 87.5%;
	color: #6682e3;
}

@media print,screen and (min-width:641px) {
  .side-hdline:not(:first-of-type) {
    margin-top:64px;
  }
  
  .side-hdline {
    padding-top:1.25em;
    padding-bottom:0.75em;
  }
  
  .side-list {
    font-size:1.6rem;
  }
}

@media screen and (max-width:640px) {
  .side-hdline:not(:first-of-type) {
    margin-top:2.5em;
  }
  
  .side-hdline {
    padding-top:1.5em;
    padding-bottom:1em;
  }
}


/*----------------------------------------------------------------------------------------------------

  一覧
  
----------------------------------------------------------------------------------------------------*/

.list-item {
	width: 100%;
  display:flex;
  flex-wrap:nowrap;
	text-decoration: none;
	transition: 0.2s;
	padding: 1.5em 0;
	border-bottom: 1px dotted #ccc;
}
.list-item:hover { opacity: 0.7; }

.list-item:first-of-type {
	padding-top: 0;
}
.list-item:last-of-type {
	padding-bottom: 0;
	border-bottom: none;
}

.list-item {
	width: 100%;
  display:flex;
  flex-wrap:nowrap;
	text-decoration: none;
	transition: 0.2s;
}

.list-item .photo {
	width: calc(25% - 1em);
  margin-right: 1em;
}

.list-item .list-title {
	width: 75%;
}

.list-item .ttl {
	display: block;
	font-size: 2.0rem;
	color: #3e3937;
	font-weight: 300;
}

.list-item .date {
  color:#6682e3;
  font-size:1.4rem;
  display:inline-block;
  margin-top:0.25em;
  margin-right:1em;
}

.list-item .cate {
  color:#6682e3;
  font-size:1.4rem;
  display:inline-block;
  margin-top:0.25em;
}

.list-hdline {
	margin-bottom:64px;
	border-bottom: 1px solid #0f9984;
}

.sec-list .writerBox {
	margin-bottom:80px;
}


/*----------------------------------------------------------------------------------------------------

  詳細
  
----------------------------------------------------------------------------------------------------*/

/*--------------------------------------------------------------------------------
  タイトル
--------------------------------------------------------------------------------*/


.detail-hdline ul {
  list-style:none;
  color:#6682e3;
  font-size:0.88em;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-wrap:wrap;
  flex-wrap:wrap;
}

.detail-hdline li {
  position:relative;
}

.detail-hdline li:not(:first-child) {
  padding-left:1em;
}

.detail-hdline li:not(:last-child) {
  margin-right:1em;
}

.detail-hdline li:not(:first-child):before {
  content:"";
  width:1px;
  height:0.8em;
  background-color:#e1e1e1;
  display:inline-block;
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
}

.detail-hdline li a,
.detail-hdline li a:visited { color:inherit; text-decoration:underline; }
.detail-hdline li a:hover { color:inherit; text-decoration:none; }


@media screen and (max-width:640px) {
  .detail-hdline {
    padding-bottom:1em;
  }
}


/*--------------------------------------------------------------------------------
  section
--------------------------------------------------------------------------------*/

.sec-detail .sec--set__hdline .ff-en {
  display:inline-block;
  margin-right:1.8rem;
}

.sec-detail .sec--set__hdline .ff-min {
  vertical-align:baseline;
}

@media print,screen and (min-width:641px) {
  .sec--set {
    padding-top:96px;
  }
  
  .sec-detail .sec--set__hdline {
    font-size:0.9em;
    padding-bottom:2em;
  }
}

@media screen and (max-width:640px) {
  .sec--set {
    padding-top:3.5em;
  }
  
  .sec-detail .sec--set__hdline {
    padding-bottom:1.5em;
  }
}


/*--------------------------------------------------------------------------------
  記入者 
--------------------------------------------------------------------------------*/

.writerBox {
  background-color:#f5f5f5;
}

.writerBox .writ-photo {
  overflow:hidden;
  border-radius:100%;
}

.writerBox .writ-photo img {
  min-width:100%;
  height:100%;
  object-fit:cover;
  font-family:"object-fit:cover;"
}

.writerBox .writ-name .kijiBtn {
  vertical-align:middle;
  margin-bottom:0.25em;
  margin-left:1.5em;
}

.writerBox .writ-name .name-en {
  color:#6682e3;
  display:inline-block;
  margin-top:0.5em;
}

@media print,screen and (min-width:641px) {
  .writerBox {
    padding:2em;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
  }

  .writerBox .writ-photo {
    width:120px;
    height:120px;
  }
  
  .writerBox .writ-prof {
    padding-left:2em;
    -webkit-box-flex:1;
    -ms-flex:1;
    flex:1;
  }

  .writerBox .writ-come {
    padding-top:0.5em;
  }
}

@media screen and (max-width:640px) {
  .writerBox {
    padding:1.5em;
    position:relative;
  }

  .writerBox .writ-photo {
    width:-webkit-calc(120 / 640 * 100vw);
    width:calc(120 / 640 * 100vw);
    height:-webkit-calc(120 / 640 * 100vw);
    height:calc(120 / 640 * 100vw);
    position:absolute;
    left:1.5em;
    top:1.5em;
  }
  
  .writerBox .writ-name {
    height:-webkit-calc(120 / 640 * 100vw);
    height:calc(120 / 640 * 100vw);
    padding-left:-webkit-calc(120 / 640 * 100vw);
    padding-left:calc(120 / 640 * 100vw);
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
  }
  
  .writerBox .writ-name .inner {
    padding-left:1.5em;
  }

  .writerBox .writ-come {
    padding:1.25em 0.25em 0.25em 0.25em;
  }
}


/*--------------------------------------------------------------------------------
  detail-box 
--------------------------------------------------------------------------------*/

.detail-box {
	padding: 3em 0;
	border-bottom: 1px dotted #ccc;
}
.detail-box:first-of-type {
	padding-top: 0;
}


/*--------------------------------------------------------------------------------
  Back 
--------------------------------------------------------------------------------*/

.back-link {
	margin-top: 60px;
}

.back-link a {
	display: block;
  width: 238px;
  height: 50px;
  box-sizing: border-box;
  border: 1px solid #0f9984;
	border-radius: 6px;
  color: #0f9984 !important;
  line-height: 50px;
	margin: 0 auto;
  text-decoration: none;
	text-align: center;
  font-weight: 700;
	transition: 0.15s ease !important;
}

.back-link a:hover {
  background-color: #E2F8F4;
}


/*------------------------------------------------------------------------------------------------------------------
　img align for wordpress
-------------------------------------------------------------------------------------------------------------------*/

.aligncenter {
    display: block;
    margin: 0 auto;
	padding-bottom:25px;
	max-width:100%;
}
.alignright { float: right; margin-left:30px; margin-bottom:25px; max-width:100%; }
.alignleft { float: left; margin-right:30px; margin-bottom:25px; max-width:100%; }

.aligncenter img, .alignright img, .alignleft img {
	max-width:100%;
	height:auto;
}

@media screen and (max-width: 1140px) {
	.aligncenter {
		display: block;
		margin: 0 auto;
		padding-bottom:25px;
		max-width:100%;
		text-align:center;
	}
	.alignright { float: none; margin: 0 auto; margin-bottom:0; padding-bottom:25px; max-width:100%; text-align:center; display: block; }
	.alignleft { float: none; margin: 0 auto; margin-bottom:0; padding-bottom:25px; max-width:100%; text-align:center; display: block; }
}

div:after, section:after, article:after, ul:after {
    content: "";
    display: block;
    clear: both;
}

.cate {
  display: inline-block;
  padding: 0.05em 0.25em; 
  margin-right: 1em;
  vertical-align: middle;
  /*background-color: #738D37;
  color: #fff;*/
  width: 130px;
  text-align: center;
  box-sizing: border-box;
}

.cate-list{
  list-style: none;
}

.cate-list li:not(:last-child){
  margin-bottom: 20px;
}

.cate-list li .cate{
  width: 100%;
  padding: 16px 0;
}

.info{
  margin-bottom: 60px;
}

.latest-list{
  list-style:none;
  margin-bottom: 30px;
}

.latest-list li:not(:last-child){
  border-bottom: 1px solid #E5E5E5;
  margin-bottom: 5px;
  padding-bottom: 5px;
}

.latest-list li a span.ttl{
  display: block;
  font-size: 18px;
}

@media screen and (max-width: 640px) {
  .info .inner{
    display: block!important;
  }
  .cate {
    padding: 0.05em 0;
    font-size: 16px;
    width: 8em;    
  } 
  .latest-list li a span.ttl{
    display: block;
    font-size: 22px;
  }
}

.fancybox-title-outside-wrap, .fancybox-title-over-wrap {
  text-align: center;
  text-shadow: 0 0px rgb(0 0 0 / 50%)!important;
	font-weight: bold!important;
	color: #3F3F3F!important;
}

.fancybox-title {
    background-color: #f9f9f9;
    padding: 10px;
    padding-bottom: 20px;
    color: #000000;
    font-size: 16px!important;
    text-align: center;
    margin-top: 0 !important;
    width: calc(100% + 10px);
    margin-left: -15px;
}
