@charset "UTF-8";
/*
Theme Name: TGO 2023 Theme (JP) - Arkhe child
Version: 1.0.0
Template: arkhe
License: GNU General Public License
License URI: http://www.gnu.org/licenses/gpl.html
*/

/*------------------migration from v. 2021----------------------*/

@import url('https://fonts.googleapis.com/css2?family=BIZ+UDPGothic&family=Voltaire&display=swap');
@import url("https://use.typekit.net/zwu5itv.css");

/* General settings */
[class*=" eicon-"], [class^=eicon] {
  font-family: eicons !important;
}

body {
  text-transform: none !important;
  text-justify: inter-character;
}
body *, body p {
	font-family: 'BIZ UDPGothic', sans-serif;
	text-decoration: none !important;
}

*.inline {
  display: inline !important;
}
/*anchor tags*/
.page-content a, .post-categories, #page-wrap .ashe-widget.widget_text a, #page-wrap .ashe-widget.ashe_author_widget a {
  color: #111111;
  font-weight: 500;
}
/*.top-bar-socials{margin-top:1rem;}*/
/* link */
a[class="link"][target="_blank"]:after, .post-content p a[target="_blank"]:after {
  font-family: "Font Awesome 6 Free";
  position: relative;
  content: '\f35d';
  margin: 0px 3px;
  font-size: .75em;
  font-weight: 900;
  text-decoration: none !important;
  color: #245a3e;
}
.post-content p a.button[target="_blank"]:after {
  font-family: "Font Awesome 6 Free";
  position: relative;
  content: '\f35d';
  margin: 0px 3px;
  font-size: .75em;
  font-weight: 900;
  text-decoration: none !important;
  color: #fff;
}
a[class="intlink"]:after {
  font-family: "Font Awesome 6 Free";
  position: relative;
  content: '\f0c1';
  margin: 0px 3px;
  vertical-align: 10%;
  font-size: .75em;
  font-weight: 900;
  text-decoration: none !important;
  color: #a38f85;
}
.post-content p a[href^="https://tgo.hiroshima-u.ac.jp/"]:after, a[class="intlink"][target="_self"]:after, span.intlink a:after {
  font-family: "Font Awesome 6 Free";
  position: relative;
  content: '\f0c1';
  margin: 0px 3px;
  vertical-align: 10%;
  font-size: .75em;
  font-weight: 900;
  text-decoration: none !important;
  color: #a38f85;
}
.post-content p a.button.download:after {
  font-family: "Font Awesome 6 Free";
  position: relative;
  content: '\f56d';
  vertical-align: 10%;
  margin: 0px 3px;
  font-size: .75em;
  font-weight: 900;
  text-decoration: none !important;
  color: #ffffff;
}


/* ----- header settings ----- */


/* main menu */
.mainmenutag a:before {
  font-family: "Font Awesome 6 Free";
  content: '\f02b';
  margin: 0px 3px;
  font-size: 0.8rem;
  font-weight: 900;
  text-decoration: none !important;
  color: #b19f95;
}

/* conso menu */
.menu-item-18194, .menu-item-19403 
{
}

.menu-item-20577
{
}


.shadow {
	box-shadow: 0px 1px 5px rgba(0,0,0, 0.1);}

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


/* ----- text settings : color, fonts etc... ----- */
/* bootstrap header font size setting */
.h1 {
  font-size: 2em;
	font-weight: 600 !important;
}
.h2 {
  font-size: 1.75em;
}
.h3 {
  font-size: 1.5em;
}
.h4 {
  font-size: 1.25em;
}
.h5 {
  font-size: 1.1rem;
}
.h6 {
  font-size: 1rem;
}

/* font family */
.text-jp, .text-jp * {
  text-align: justify;
  text-justify: inter-character;
  word-break: break-all !important;
}
.text-en, .text-en * {
  text-align: justify;
  text-justify: newspaper;
  word-break: keep-all !important;
}
.text-deco, .text-deco * {
  font-family: 'Voltaire', sans-serif;
}
.text-hand, .text-hand * {
  font-family: 'Brushland', cursive !important;
	line-height: 0.9;
}
.lh17, .lh17 *{
  line-height: 1.7 !important;
}
.lh14, .lh14 *{
  line-height: 1.40 !important;
}
.lh12, .lh12 *{
  line-height: 1.2 !important;
}
.lh1, .lh1 *{
  line-height: 1 !important;
}
/* asterisk */
.asterisk {
  margin: 0 0 0 0.2em;
  color: #c9472d;
  font-size: 0.8rem;
  vertical-align: middle;
}
/* color */
.beige {
  color: #b19f95;
}
/*#d8d2d2*/
.darkgrayge {
  color: #d8d8d8;
}
/*#f8f2f2*/
.grayge {
  color: #f8f8f8;
}
.greenlegacy2 {
  color: #0f5d1f;
}
.green {
  color: #245a3e !important;
}
.greenhc {
  color: #006933;
}
.red {
  color: #c9472d;
}
.white {
  color: #ffffff !important;
}
.white a, .white a:hover {
  color: #ffffff !important;
}
.lightgray3 {
  color: #bbb;
}
.lightgray2 {
  color: #777;
}
.lightgray {
  color: #555;
}
.darkgray {
  color: #333;
}
.blackgray {
  color: #111;
}
.bgblue {
  background-color: #dff1fd;
  width: 100%;
  margin: 0;
  padding: 15px 0;
}
.bgbluenowidth {
  background-color: #dff1fd;
  margin: 0;
  padding: 15px 0;
}
.bgwhite {
  background-color: #ffffff;
  width: 100%;
  margin: 0;
  padding: 15px 0;
}
.bgwhite2 {
  background-color: #ffffffcc;
  width: 100%;
  margin: 0;
  padding: 15px 0;
}
/*#e0dbdbcc*/
.bgbeige {
  background-color: #f0f0f0cc;
  width: 100%;
  margin: 0;
  padding: 15px 0;
}
/*#f8f5f5*/
.bgbeige2 {
  background-color: #f8f8f8;
  width: 100%;
  margin: 0;
  padding: 15px 0;
}
.bgyellow {
  background-color: #ffecb5cc;
  width: 100%;
  margin: 0;
  padding: 15px 0;
}
.bggreen {
  background-color: #245a3e;
  width: 100%;
  margin: 0;
  padding: 15px 0;
}
.bgicon {
  background-color: #333333;
  margin: 4em auto;
  padding: 15px;
  display: inline-block;
  width: 4em;
  height: 4em;
  align-items: center;
  display: flex;
  justify-content: center;
}
.outericon {
  width: 100%;
  text-align: center !important;
}
.bgpadding {
  padding: 15px 15px ! important
}
.bgrounded {
  border-radius: 3px;
}
/*marker*/
.markerblue {
  background: linear-gradient(transparent 82%, #b1d9f3 0%);
  border: 0 !important;
}
.markerred {
  background: linear-gradient(transparent 82%, #ffc8b5 0%);
  border: 0 !important;
}
mark, .markeryellow {
  background: linear-gradient(transparent 82%, #ffecb5 0%);
  border: 0 !important;
  color: #333;
}
mark.markergreen, mark.mkgreen {
  background: linear-gradient(transparent 82%, #E2F3D8 0%);
  padding: 0px;
  border: 0 !important;
  color: #333;
}
del, span.del {
  text-decoration: line-through !important;
  color: #777;
}
.ulred {
  border-bottom: solid 2px #c9472d;
}
.smallfont, div .smallfont, div p .smallfont, .captionfont, div .captionfont, div p .captionfont {
  font-size: 0.8rem !important;
  font-weight: normal;
}
.captionfont-it, div .captionfont-it, div p .captionfont-it {
  font-size: 0.8rem !important;
  font-weight: normal;
  font-style: oblique !important;
  line-height: 1;
}
.hrbottom {
  border-bottom: 1px solid #e0dbdb !important;
  margin-bottom: 1.5em;
}
.hrdouble {
  border-bottom: 2px double #245a3e !important;
  margin-bottom: 1.5em;
}

.leftline{border-left:2px solid #245a3e !important; 
padding-left:0.5em;}

/* ----- post header styles ----- */
.infolisttitle {
  padding: 0.25em 0.5em; /*上下 左右の余白*/
  color: #111111; /*文字色*/
  background: transparent; /*背景透明に*/
  border-left: solid 6px #245a3e; /*左線*/
}
.ribbonboth {
  display: inline-block;
  position: relative;
  height: 30px; /*リボンの高さ*/
  line-height: 30px; /*リボンの高さ*/
  text-align: center;
  padding: 0 30px; /*横の大きさ*/
  background: #245a3e; /*塗りつぶし色*/
  color: #fff !important; /*文字色*/
  box-sizing: border-box;
}
.ribbonboth:before, .ribbonboth:after {
  position: absolute;
  content: '';
  width: 0px;
  height: 0px;
  z-index: 1;
}
.ribbonboth:before {
  top: 0;
  left: 0;
  border-width: 15px 0px 15px 5px;
  border-color: transparent transparent transparent #fff;
  border-style: solid;
}
.ribbonboth:after {
  top: 0;
  right: 0;
  border-width: 15px 5px 15px 0px;
  border-color: transparent #fff transparent transparent;
  border-style: solid;
}
.ribbonright {
  display: inline-block;
  position: relative;
  height: 40px; /*高さ*/
  line-height: 40px; /*高さ*/
  text-align: left;
  padding: 0 30px 0 30px; /*文字の左右の余白*/
  /* font-size: 1rem; 文字サイズ*/
  background: #245a3e; /*背景色*/
  color: #fff !important; /*文字色*/
  box-sizing: border-box;
}
.ribbonright a {
  color: #fff !important;
}
.ribbonright:after {
  position: absolute;
  content: '';
  width: 0px;
  height: 0px;
  z-index: 1;
}
.ribbonright:after {
  top: 0;
  right: 0;
  border-width: 20px 15px 20px 0px;
  border-color: transparent #fff transparent transparent;
  border-style: solid;
}
.headline1 {
  position: relative;
  padding-left: 4.5em;
margin: 2em 0 !important;
  border-bottom: 2px solid #245a3e;
  line-height: 1.5;
  font-size: 1.25rem;
}
.headline1 span {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0 1.5rem;
  color: #ffffff;
  background: #245a3e;
}
.headline {
  position: relative;
  padding-left: 1.2rem;
margin: 1.2rem 0 !important;
  border-bottom: 2px solid #245a3e;
	border-left: 6px solid #245a3e;
  line-height: 1.5;
  font-size: 1.25rem;
}
.headline2:before {
  font-family: "Font Awesome 5 Free";
  content: '\f0c8';
  margin: 0 0.5em 0 0;
  font-weight: 900;
  text-decoration: none !important;
  color: #245a3e;
}
.fukidashiblueleft {
  position: relative;
  background-color: #dff1fd;
  padding: 10px;
  color: #000;
  margin: 0 0 15px 15px;
}
.fukidashiblueleft::before {
  content: "";
  position: absolute;
  border: 12px solid transparent;
  border-right: 12px solid #dff1fd;
  top: 20%;
  left: -24px;
}
.fukidashigrayleft {
  position: relative;
  background-color: #f3f3f3;
  padding: 10px;
  color: #000;
  margin: 0 0 15px 15px;
}
.fukidashigrayleft::before {
  content: "";
  position: absolute;
  border: 12px solid transparent;
  border-right: 12px solid #f3f3f3;
  top: 20%;
  left: -24px;
}
.fukidashigrayleft p, .fukidashiblueleft p {
  margin: 0;
  padding: 0;
}
.headlineq {
  position: relative;
  padding-left: 5rem;
  font-weight: normal !important;
  color: #111;
}
.headlineq span {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0 0.5rem;
  color: #111;
  background: #f3f3f3;
}
.headlineq span:after {
  position: absolute;
  top: calc(50% - 7px);
  right: -11px;
  width: 0;
  height: 0;
  content: '';
  border-width: 7px 0 7px 12px;
  border-style: solid;
  border-color: transparent transparent transparent #f3f3f3;
}
.headlineq2 {
  position: relative;
  padding-left: 5rem;
  font-weight: normal !important;
}
.headlineq2 span {
  position: absolute;
  top: 0;
  left: 1rem;
  padding: 0 0.5rem;
  background: #245a3c;
  color: #fff;
}
.headlineq2 span:after {
  position: absolute;
  top: calc(50% - 7px);
  right: -11px;
  width: 0;
  height: 0;
  content: '';
  border-width: 7px 0 7px 12px;
  border-style: solid;
  border-color: transparent transparent transparent #245a3c;
}
.headlinea {
  position: relative;
  padding-left: 5rem;
  font-weight: normal !important;
}
.headlinea span {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0 0.5rem;
  color: #ffffff;
  background: #245a3c;
}
.headlinea span:after {
  position: absolute;
  top: calc(50% - 7px);
  right: -11px;
  width: 0;
  height: 0;
  content: '';
  border-width: 7px 0 7px 12px;
  border-style: solid;
  border-color: transparent transparent transparent #245a3c;
}
/* ----- SDGs icon styles ----- */
.sdgscontainer {
  max-height: 100px;
  margin: 0 auto;
  text-align: center;
}
.sdgsicon {
  max-width: 100px;
  max-height: 100px;
  display: inline-block;
  border: none;
}
/* ----- indents, tab, breakpoints etc... ----- */
/* align series*/
.center {
  text-align: center;
}
.left {
  text-align: left;
}
.right {
  text-align: right !important;
}
.centeringitem * {
  text-align: center;
  margin: 0 auto;
}
.centeringitemundo * {
  text-align: left;
}
/* burasage indent*/
.burasage p {
  margin-left: 1.5em;
  text-indent: -1.5em;
  text-align: left;
}
.burasage li {
  margin-left: 2.5em;
  text-indent: -1.5em;
  text-align: left;
}
.indentleft {
  margin: 0 0 0 1.5em;
  text-align: left;
}
.pindentleft {
  margin-left: 1.5em;
}
p.addspace ul.addspace li, h2.addspace, h3.addspace, h6.addspace {
  margin-bottom: 1em !important;
}
.space1 {
  height: 1em !important;
}
.space2 {
  height: 2em !important;
}
.nospace * {
  margin-bottom: 0;
}
.wp-caption-text {
  font-style: italic;
}
/* ----- image options ----- */
.photofit {
  height: 100%;
  object-fit: fill;
}
/* ----- list styles ----- */
ul.listbl li, ul.list li {
  list-style: square !important;
  margin: 0 0 1rem 1em;
  text-align: left;
}
ul.listnone li {
  list-style-type: none !important;
  list-style-position: outside;
  list-style-image: none;
  text-indent: -1em;
  text-align: left;
}
ul.listnoneindent li {
  list-style-type: none !important;
  list-style-position: outside;
  list-style-image: none;
  text-indent: -1em;
  margin-left: 1em;
  text-align: left;
}
div ul .listnoneindent {
  vertical-align: top
}
ul.listinline li {
  list-style-type: none !important;
  list-style-position: outside;
  list-style-image: none;
  margin: 1em 1em;
  text-align: center;
  display: inline-block;
}
/* ----- sidebar, widgets ----- */

body p, .post-content, .comment-author, .widget_recent_comments li, .widget_meta li, .widget_recent_comments li, .widget_pages > ul > li, .widget_archive li, .widget_categories > ul > li, .widget_recent_entries ul li, .widget_nav_menu li, .related-post-date, .post-media .image-overlay a, .post-meta, .rpwwt-post-title {
  letter-spacing: 1.4px;
}

.post-meta {
  font-style: normal !important;
}
.post-categories a {
  font-weight: normal !important;
}

.postbanneritem {
  vertical-align: top;
  max-height: 70px;
  margin: 1em;
	padding:1em;
}
/* widget content tweek */
.rpwwt-widget ul li img {
  margin: 0 auto !important;
}
.rpwwt-widget ul li {
  padding-bottom: 15px;
  margin-bottom: 17px !important;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-color: #d8d2d2;
  overflow: hidden;
}
.rpwwt-post-date {
  text-align: right;
}
.wp_rp_title {
  line-height: 1.45 !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
}
.zoom-instagram .zoom-instagram-widget__items.layout-fullwidth {
  max-width: 1280px !important;
  margin: 0 auto !important;
}
/* PDF embedder*/
div.pdfemb-viewer {
  border: none !important;
}
/* - - - - - - - - - - - - - - - */
/*tagclouds*/
span.tagcloud-list a:before {
  font-family: "Font Awesome 6 Free";
  content: '\f02b';
  margin: 0px 3px;
  font-size: 0.8rem;
  font-weight: 900;
  text-decoration: none !important;
  color: #b19f95;
}
/* pasword protected pages*/
.wrapper-content .post-password-form {
  text-align: center;
  margin: auto;
  padding: 30px 0;
}
.post-password-form p {
  margin: 30px auto;
  max-width: 75%;
}
/* posts */

/* Tab & Toggle */

/* Display NONE & Visibility HIDDEN */
.edit-link {
  display: none;
  visibility: hidden;
}
/*.post-header .meta-info {display:none;visibility:hidden;}*/
.grecaptcha-badge {
  visibility: hidden;
} /*Google ReCaptcha*/
/* Contact Form 7 */
.wpcf7 {
  margin: 30px 0;
  line-height: 1.85;
  letter-spacing: 0.4;
}
.wpcf7-form p {
  margin: 15px 0;
  line-height: 1.85;
  letter-spacing: 1.2;
  font-weight: normal;
}
.wpcf7 p label {
  line-height: 1.85;
  font-weight: normal;
}
span.wpcf7-not-valid-tip {
  color: #c9472d;
  font-weight: bold;
  font-style: italic;
  line-height: 1.85;
}
div.wpcf7-response-output {
  text-transform: none;
  font-weight: normal;
}
.cfline {
  border-bottom: solid 2px #c9472d;
}
/*.wpcf7 * {
width: 100%;
}*/
.wpf7-text {
  width: 100%;
}
.wpcf7 input[type=submit] {
  width: auto;
  font-size: 1.25rem;
}
.wpcf7 input[type=submit] {
  display: inline-block;
  padding: 5px 15px;
  background-color: #333333 !important;
  border-width: 0;
  border-color: #ffffff;
  border-style: solid;
  color: #fff;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  font-weight: 700;
}
.wpcf7 input[type=submit]:hover {
  background-color: #245a3e !important;
  color: #fff;
}
.wpcf7-textarea {
  line-height: 1.85;
  letter-spacing: 0.4;
}
.date-start.cfinline, .date-end.cfinline {
  display: inline;
}
.cfsmall {
  margin: 0;
  color: #555555;
  font-size: 0.9rem;
  line-height: 1em;
  letter-spacing: 1.2;
}
.wpcf7 span.cfqtitle {
  margin: 0 10px 0 0;
  padding: 0;
  line-height: 1.85;
  letter-spacing: 0.4;
  font-weight: bold;
  text-justify: auto;
}
.wpcf7 span.cfqtitle:before {
  font-family: "Font Awesome 6 Free";
  content: "\f111";
  color: #245a3e;
  margin: 0 0.4rem 0 0;
  vertical-align: 5%;
  font-weight: 900;
}
.wpcf7 label {
  line-height: 1.85;
  font-weight: normal;
}
div.wpcf7-response-output {
  margin: 0;
}
div.wpcf7 .ajax-loader {
  display: none !important; /*loader hidden*/
}
/* - - - - - - - - - - - - - - - */
/* footer */
/* translator */
div.tool-container {
  padding: 10px;
  width: 180px;
}
div.tool-container > div.tool-items > a.tool-item {
  background: none !important;
  min-width: 100%;
  font-size: 0.8rem;
  text-decoration: none;
}
div.tool-container > div.tool-items > a.tool-item::after {
  display: block;
  white-space: nowrap;
  content: attr(title);
}
div.tool-container > div.tool-items {
  display: flex;
  flex-wrap: wrap;
}
div.tool-container > div.tool-items > a[title="Japanese"] {
  order: 1;
}
div.tool-container > div.tool-items > a[title="English"] {
  order: 2;
}
div.tool-container > div.tool-items > a[title="Chinese (Traditional)"] {
  order: 4;
}
div.tool-container > div.tool-items > a[title="Chinese (Simplified)"] {
  order: 5;
}
div.tool-container > div.tool-items > a[title="Korean"] {
  order: 3;
}
div.tool-container > div.tool-items > a[title="Vietnamese"] {
  order: 6;
}
div.tool-container > div.tool-items > a[title="Filipino"] {
  order: 7;
}
div.tool-container > div.tool-items > a[title="Indonesian"] {
  order: 8;
}
div.tool-container > div.tool-items > a[title="Portuguese"] {
  order: 9;
}

/*------------- MIGRATION -------------*/
.elementor-element {
  font-size: 1rem !important;
}
.gallery-item, .gallery-caption {
  font-size: 0.9rem !important;
}
.gallery-caption, .wp-caption-text {
  border: none !important;
}
/*-------------------------------*/
/*- BUTTONS ---------------------*/
/*-------------------------------*/
/*- DEFAULT BUTTON ----------*/
.button {
  display: inline-block;
  padding: 5px 15px;
  background-color: #333333;
  border-width: 0;
  border-color: #ffffff;
  border-style: solid;
  color: #fff;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  font-weight: 700;
}
.button:hover {
  background-color: #245a3e;
  color: #fff;
}
/*---------------------------*/
/*- BUTTON SIZES ------------*/
.button.btn-sm {
  padding: 2px 10px;
  font-size: 1.2rem;
}
.button.btn-md {
  padding: 5px 15px;
  font-size: 1.5rem;
}
.button.btn-lg {
  padding: 10px 25px;
  font-size: 1.8rem;
}
.button.btn-xl {
  padding: 15px 30px;
  font-size: 2.0rem;
}
.button.btn-full {
  display: block;
  width: 100%;
}
.button.btn-fw {
  min-width: 240px;
}
/*---------------------------*/
/*- BUTTON COLORS -----------*/
/*-----------------------*/
/*- FORM BUTTON ---------*/
input.button {
  height: 36px;
  padding-top: 0;
  padding-bottom: 0;
}
/*-----------------------*/
/*- PRIMARY BUTTON ------*/
.btn-primary {
  background-color: #245a3e;
  color: #fefefe;
}
.btn-primary:hover {
  background-color: #245a3e99;
  color: #ffffff;
}
/*-----------------------*/
/*- SECONDARY BUTTON ----*/
.btn-secondary {
  background-color: #b19f95;
  color: #333333;
}
.btn-secondary:hover {
  background-color: #A18B7F;
  color: #111111;
}

.btn-beige {
  background-color: #b19f95;
  color: #fff;
}
.btn-beige:hover {
  background-color: #D0C8C2;
  color: #fff;
}

/*-----------------------*/
/*- SUBTLE BUTTON -------*/
.btn-subtle {
  background-color: #999 !important;
  color: #ddd !important;
}
.btn-subtle:hover {
  background-color: #999 !important;
  color: #ddd;
  cursor: not-allowed;
}
/*-----------------------*/
/*- LINK BUTTON ---------*/
.btn-link {
  background: none;
  text-decoration: underline;
  color: #454545;
}
.btn-link:hover {
  background: none;
  color: #323232;
}
/*-----------------------*/
/*- LINK BUTTON ---------*/
.button.btn-invert {
  background-color: #fff;
  color: #454545;
}
.button.btn-invert:hover {
  background-color: #454545;
  color: #fff;
}
/*---------------------------*/
/*- BUTTON GROUP ------------*/
.button-group {
  display: inline-block;
  margin-bottom: 10px;
  vertical-align: middle;
  overflow: hidden;
}
.button-group + .button-group {
  margin-right: 10px;
}
.pull-right .button-group + .button-group {
  margin-left: 10px;
  margin-right: 0;
}
.button-group .button {
  float: left;
  margin: 0;
}
/*---------------------------*/
/*- BUTTON COLLECTION -------*/
.button-collection {
  margin-bottom: 20px;
  vertical-align: middle;
  overflow: hidden;
}
/*-------------------------------*/
/*- BADGES AND LABELS -----------*/
/*-------------------------------*/
/*---------------------------*/
/*- BADGE -------------------*/
.badge {
  padding: 1px 8px;
  background-color: #333;
  color: #fff;
}
.button .badge {
  margin: 0 2px 0 -10px;
}
/*-----------------------*/
/*- BADGE COLORS --------*/
/*-------------------*/
/*- PRIMARY BADGE ---*/
.badge.badge-primary {
  background-color: #111;
  color: #fff;
}
/*-------------------*/
/*- SECONDARY BADGE -*/
.badge.badge-secondary {
  background-color: #245a3e;
  color: #fff;
}
/*------------------*/
/*- SUBTLE BADGE ---*/
.badge.badge-subtle {
  background-color: #8f8f8f;
  color: #fff;
}
/*------------------*/
/*- Beige BADGE ----*/
.badge.badge-beige {
  background-color: #b19f95;
  color: #fff;
}
/*------------------*/
/*- Red BADGE ----*/
.badge.badge-red {
  background-color: #c9472d;
  color: #fff;
}


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

.widget-title {
  position: relative;
  z-index: 0;
  text-align: center;
  margin-bottom: 12px;
  clear: both;
  overflow: hidden;
}

.widget-title h2 {
  display: inline-block;
  text-transform: uppercase;
  position: relative;
  line-height: 1.8;
	font-size:1.1em;
}

.widget-title h2:before,
.widget-title h2:after {
  content: "";
  position: absolute;
  top: 50%;
  width: 1000px;
  height: 1px;
  border-bottom-width: 1px;
  border-bottom-style: solid;
	border-bottom-color: #b1a095;
}

.widget-title h2:before {
  right: 100%;
  margin-right: 15px;
}

.widget-title h2:after {
  left: 100%;
  margin-left: 15px;
}

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


/* related post design */
/* 関連記事 */
.related_post {
  width: auto;
  margin-bottom: 40px;
}
.related_post_container {
  width: auto;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.related_post_container li {
  width: 32%;
  margin-right: 1.3%;
}
.related_post_container li:nth-child(3) {
  margin-right: 0;
}
.related_post_container li:nth-child(6) {
  margin-right: 0;
}
.related_post_container li:nth-child(n+1):nth-child(-n+3) {
  margin-bottom: 20px;
}
.related_post_container a {
  display: flex;
  flex-direction: column;
}
.related_thumb {
  width: 100%;
}
.related_title {
  font-size: 14px;
  font-weight: 600;
  text-align: left;
}
@media (max-width: 768px) {}
@media (max-width: 550px) {
  .related_post_container {
    flex-direction: column;
    flex-wrap: nowrap;
  }
  .related_post_container li {
    width: 100% !important;
    margin-right: 0;
    margin-bottom: 20px;
    border: 0;
  }
  .related_post_container li:nth-child(n+1):nth-child(-n+3) {
    margin-bottom: 20px;
  }
  .related_post_container a {
    width: 100%;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
  .related_thumb {
    visibility: hidden;
    display: none;
  }
  .related_thumb img {
    vertical-align: bottom;
    visibility: hidden;
    display: none;
  }
  .related_title {
    font-size: 14px;
    text-align: left;
  }
}