/*
Theme Name: The7child
Template: dt-the7
*/
@import url("../dt-the7/style.css");
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@500;700&display=swap');

/* ------------------------- base ------------------------- */
.wf-wrap {
	max-width: 920px; /* original 1200px */
}

	#page.boxed {
		max-width: 1040px; /* original 1320px */
	}

.logo-classic .navigation-holder > div {
	max-width: 920px; /* original 1200px */
}

#main-slideshow.fixed > .royalSlider {
	max-width: 920px; /* original 1200px */
}

.content .fontawesome {
	padding-left: 16px;
	color:#004f99;
}

.align-center {
	text-align:center;
}

/* ------------------------- global menu ------------------------- */
#navigation ul#main-nav li{
	color:#004f99;
}


/* ------------------------- title ------------------------- */
.page-title .wf-wrap .wf-table .wf-td h1{
	font-size:24px;
	font-weight:bold;
}

/* ------------------------- content h tag ------------------------- */

.titlebar h2, .titlebar h3 {
	min-height:40px;
	line-height:32px;
	padding:4px 4px 0 12px;
	margin-bottom:20px;
	font-weight:bold;
	display: block;
}

.titlebar h2 {
	border-top:solid 2px #21398A;
	background:#f5f5f5;
}

.titlebar h2.low {
	margin-bottom:10px;
}

.titlebar h2 .btn {
	float:right;
	margin:5px 10px 0 0;
}

.titlebar h2 a:link,
.titlebar h2 a:visited {
	color:#333;
	text-decoration:none;
	}

.titlebar h2 a:hover;
.titlebar h2 a:active {
	color:#333;
	text-decoration:underline;
	}

.titlebar h2 a:link, .titlebar h2 a:visited {
	color:#333;
	text-decoration:none;
	}

.titlebar h3 {
	background: url("images/bg-h3.png") no-repeat 0px center;
	border-bottom:solid 1px #ddd;
}

.titlebar h4 {
	min-height:30px;
	line-height:30px;
	padding-left:20px;
	margin-bottom:16px;
	background:url("images/bg-h4.png") no-repeat 6px center #f5f5f5;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
	overflow:visible;
	display: block;
}


/* ------------------------- contact ------------------------- */
.large-button {
	padding: 4px 80px;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
	color: #fff;
}

/* ------------------------- table ------------------------- */
.table-1 {
	width:100%;
	border-collapse:separate;
	border-top:solid 2px #004f99;
	border-right:none;
	border-left:none;
	border-bottom:none;
	margin-bottom:20px;
}
.table-1 th {
	width:20%;
	padding:7px 10px;
	border:solid 1px #fff;
	background:#f5f5f5;
	font-weight:bold;
	text-align:center;
	vertical-align:middle;
}

.table-1 td {
	width:70%;
	padding:7px 10px;
	border-top:solid 1px #fff;
	border-right:solid 1px #fff;
	border-left:solid 1px #fff;
	border-bottom:solid 1px #ddd;
	background:#fff;
	vertical-align:middle;
}

.table-1 td.blank {
	border:none;
	background:none!important;
}

.table-1 td.title {
	font-weight:bold;
	padding-left:20px;
	text-align:left;
}

.table-1 .odd td {
	background:#f5f5f5;
}

.table-1 .note {
	color:#666;
	font-size:1.2rem;
}

.table-nb, .table-nb tr, .table-nb th, .table-nb td {
	border:none!important;
}


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

.paper1 {
	width:80%;
	background: url(images/handmadepaper.png) repeat;
	border:solid 1px #ddd;
	margin:10px auto;
	padding:30px;

}
.paper-shadow1 {
	-webkit-box-shadow: 0 10px 6px -6px #777;
	   -moz-box-shadow: 0 10px 6px -6px #777;
	        box-shadow: 0 10px 6px -6px #777;
}

/* ------------------------- top ------------------------- */
.topteaser .shortcode-teaser-content {
	margin:0;
	padding: 0 10px 10px;
}

.topteaser .shortcode-teaser-content h2, .topteaser .shortcode-teaser-content h3 {
	padding-left:0;
	margin-bottom:10px;
	overflow:hidden;
	font-weight:bold;
}

.topteaser .shortcode-teaser-content h2 {
	height:40px;
	line-height:40px;
	border-top:none;
	background:#fffffff;
}

.topteaser .shortcode-teaser-content h3 {
	height:32px;
	line-height:32px;
	background-image:none;
	border-bottom:solid 1px #ddd;
}

.contenth2.low {
	margin-bottom:10px;
}
.contenth2 .btn {
	float:right;
	margin:5px 10px 0 0;
}

.content h2 a:link,
.content h2 a:visited {
	color:#333;
	text-decoration:none;
	}

.content h2 a:hover;
.content h2 a:active {
	color:#333;
	text-decoration:underline;
	}

.content h2 a:link,.content h2 a:visited {
	color:#333;
	text-decoration:none;
	}

.content h2 a:hover;
.content h2 a:active {
	color:#333;
	text-decoration:underline;
	}


.content h4 {
	min-height:30px;
	padding-left:20px;
	margin-bottom:16px;
	background:url("images/bg-h4.png") no-repeat 6px center #f5f5f5;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}

/* ------------------------- faq -------------------------*/
.faqlist h4 {
	min-height:40px;
	line-height:30px;
	overflow:visible;
}

.faqlist .wpb_toggle {
	font-weight:bold;
}

.faqlist .wpb_toggle_content {
	margin:0px 0 10px 24px!important;
}

@media print {
.vc_col-sm-3 .shortcode-teaser{
width:22%;
margin-right:2%;
float:left;
}
}

/* ---- 20190926 ---- */
.sct07{
	padding-bottom:20px;
}
.sct07 h3{
	font-size:100%;
	padding: 10px 15px 8px;
	margin-bottom:10px;
	background-color:#949495;
	color:#fff;
}
.sct07 p{
	padding-bottom:20px;
	font-size:100%;
	line-height:1.5;
}
.sct07 dl{
	border-bottom:1px solid #ccc;
	padding-bottom:10px;
	padding-top:10px;
}
.sct07 dl.none{
	border-bottom:none;
}
.sct07 dt{
	float:left;
	padding-bottom:10px;
	width:23%;
}
.sct07 dt img{
width:100%;
height:auto;
}
.sct07 dd{
	float:left;
	margin:0;
	padding:0;
	padding-bottom:10px;
	padding-left:30px;
	width:68%;
}
.sct07 dd h4{
	font-size:105%;
	padding:5px;
	margin-bottom:20px;
	background-color:#D8D9D9;
	font-weight:bold;
}
.sct07 dd h4 span{
	display:block;
	float:left;
	padding:15px;
	background-color:#6C6B6B;
	color:#fff;
	margin-right:15px;
}
.sct07 dd h4 span.line2{
	padding:27px 15px;
}
.sct07 dd h4 p{
	padding-bottom:10px;
	padding-top:12px;
	margin-left:10px;
}
.sct07 dd .name span{
  font-size: 12px;
  padding-left: 1em;
}
.sct07 dd .txt{
	font-size:90%;
}
.sct07 dd ul{
	list-style-type:none;
	margin:0;
	padding:0;
	font-size:90%;
}
.sct07 dd ul li{
	margin-bottom:2px;
	padding-left:1em;
	text-indent:-1em;
	line-height:1.5;
}

/* ------ clear ------ */
.clear {
	clear:both;
}
.clfx:before, .clfx:after {
	content: "";
	display: block;
}
.clfx:after {
	clear: both;
}
.clfx {
	zoom: 1;
}

/* ------ Slider ------ */
.slick-slider {
	position: relative;
	display: block;
	box-sizing: border-box;
	-webkit-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
			user-select: none;
	-webkit-touch-callout: none;
	-khtml-user-select: none;
	-ms-touch-action: pan-y;
		touch-action: pan-y;
	-webkit-tap-highlight-color: transparent;
}
.slick-list {
	position: relative;
	display: block;
	overflow: hidden;
	margin: 0;
	padding: 0;
}
.slick-list:focus {
	outline: none;
}
.slick-list.dragging {
	cursor: pointer;
	cursor: hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list {
	-webkit-transform: translate3d(0, 0, 0);
		-moz-transform: translate3d(0, 0, 0);
		-ms-transform: translate3d(0, 0, 0);
			-o-transform: translate3d(0, 0, 0);
			transform: translate3d(0, 0, 0);
}
.slick-track {
	position: relative;
	top: 0;
	left: 0;
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.slick-track:before,
.slick-track:after {
	display: table;
	content: '';
}
.slick-track:after {
	clear: both;
}
.slick-loading .slick-track {
	visibility: hidden;
}
.slick-slide {
	display: none;
	float: left;
	height: 100%;
	min-height: 1px;
}
[dir='rtl'] .slick-slide {
	float: right;
}
.slick-slide img {
	display: block;
}
.slick-slide.slick-loading img {
	display: none;
}
.slick-slide.dragging img {
	pointer-events: none;
}
.slick-initialized .slick-slide {
	display: block;
}
.slick-loading .slick-slide {
	visibility: hidden;
}
.slick-vertical .slick-slide {
	display: block;
	height: auto;
	border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
	display: none;
}
.home-slider {
	position: relative;
	max-width: 920px;
	margin: 0 auto;
}
.home-slider img {
	max-width: 100%;
}
.home-slider-items:hover .slick-arrow {
	opacity: 1;
}
ul.slick-dots {
	position: absolute;
	display: flex;
	justify-content: center;
	bottom: 10px;
	left: 50%;
	margin: 0;
	transform: translateX(-50%);
	margin-top: 10px;
	font-size: 0;
}
.slick-dots li {
	margin: 0 6px;
	line-height: 1;
}
ul.slick-dots button {
	position: relative;
	width: 10px;
	height: 10px;
	padding: 0;
	border: 2px solid #fff;
	border-radius: 50%;
	font-size: 0;
	transition: .2s ease-in-out;
	outline: none;
	background: none;
	transition: .3s ease-in-out;
}
ul.slick-dots button:hover {
	background: none;
}
ul.slick-dots button:hover::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 8px;
	height: 8px;
	transform: translate(-50%, -50%);
	background-color: #b9b9b9;
	border-radius: 50%;
}
.slick-dots .slick-active button {
	position: relative;
}
ul.slick-dots .slick-active button::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 8px;
	height: 8px;
	transform: translate(-50%, -50%);
	background: #b9b9b9;
	border-radius: 50%;
}
button.slick-arrow {
	position: absolute;
	top: 50%;
	padding: 0;
	background: none;
	z-index: 2;
	font-size: 0;
	outline: none;
	opacity: 0;
	transition: .3s ease-in-out;
	box-shadow: none;
}
.slick-arrow::before {
	content: '';
	position: absolute;
	top: 50%;
	width: 24px;
	height: 24px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}
.slick-prev {
	left: 0;
}
.slick-prev::before {
	left: 20px;
	transform: translateY(-50%) rotate(225deg);
}
.slick-next {
	right: 0;
}
.slick-next:before {
	right: 20px;
	transform: translateY(-50%) rotate(45deg);
}

/* ------ Sustainability Supplementary link ------ */
.content .home-lecture {
	border: 1px solid #e7e8e9;
}
.content .home-lecture-title a:hover {
	opacity: 1;
}
.content .home-lecture-title {
	margin-bottom: 15px;
}
.content .home-lecture-title img {
	max-width: 100%;
}
.content .home-lecture-subtitle {
	min-height: 0;
	padding: 0 15px;
	margin-bottom: 0;
	background: none;
	border-radius: 0;
}
.content ul.home-lecture-items {
	margin: 0;
	padding: 15px;
	list-style: none;
	font-size: 12px;
}
.content .home-lecture-subtitle + ul.home-lecture-items {
	margin-top: -7px;
}
.content ul.home-lecture-items + ul.home-lecture-items {
	border-top: 1px solid #e7e8e9;
}
.content ul .home-lecture-item {
}
.content ul .home-lecture-item:not(:first-child) {
	margin-top: 5px;
}
.content ul .home-lecture-item a {
	display: block;
	color: #333;
	text-decoration: none;
}
.content ul .home-lecture-item a:hover {
	color: #3b8ced;
}
.content .home-lecture-item-text {
	display: block;
}

@media screen and (min-width: 768px), print {
	.content .home-lecture-title {
		margin-bottom: 18px;
	}
	.content .home-lecture-subtitle {
		padding: 0 30px;
	}
	.content ul.home-lecture-items {
		padding: 18px 30px;
		font-size: 13px;
	}
	.content .home-lecture-subtitle + ul.home-lecture-items {
		margin-top: -9px;
	}
	.content ul .home-lecture-item {
		display: flex;
	}
	.content ul .home-lecture-item {
		line-height: 2;
	}
	.content ul .home-lecture-item a {
		/*display: flex;*/
	}
	.content .home-lecture-item-date {
		width: 90px;
	}
	.content .home-lecture-item-type {
		width: auto;
		margin-right: .5em;
	}
	.content .home-lecture-item-text {
		/*flex: 1;*/
		display: inline-block;
		width: auto;
	}
}

html:not(.mobile-true) #main img:not(.animate-element,.ls-s-1), html:not(.mobile-true) #header img, html:not(.mobile-true) #bottom-bar img {
	opacity: 1 !important;
}




/* --- Mission / Value --- */
.c-mission-card {
  --card-bg-start: #ffffff;
  --card-bg-end: #f4f7fa;
  --card-border-color: #004f99;
  --title-main-color: #004f99;
  --text-main-color: #334155;

  max-width: 100%;
  padding: 2.5rem 1.5rem;
  background: linear-gradient(180deg, var(--card-bg-start), var(--card-bg-end));
  border: 1px solid var(--card-border-color);
  border-radius: 6px;
  box-shadow: 0 12px 24px rgba(148, 163, 184, 0.12); 
  box-sizing: border-box;
}

.c-mission-card__title {
  margin: 0 0 1.5rem 0;
  font-family: 'Noto Serif JP', "Times New Roman", serif;
  font-size: clamp(1.5rem, 6vw, 1.85rem);
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.03em;
  text-align: center;
  color: var(--title-main-color);
}

.c-mission-card__text {
  margin: 0;
  font-family: 'Noto Serif JP', serif;
  font-size: clamp(0.875rem, 3.5vw, 0.95rem);
  color: var(--text-main-color);
  line-height: 2;
  letter-spacing: 0.05em;
  font-feature-settings: "palt";
}

.c-mission-card_text-en {
  margin-bottom: 0;
  line-height: 1.6;
}

.c-mission-card_text-en:not(:first-child) {
  margin-top: 20px;
}

.c-mission-card_text-ja {
  margin-bottom: 0;
  line-height: 1.6;
}

.c-mission-card_text-en::first-letter {
  font-size: 1.5em;
  color: var(--title-main-color);
}

.c-mission-card__text br {
  display: none;
}


@media (min-width: 768px) {
  .c-mission-card {
    padding: 3.5rem 2rem;
  }

  .c-mission-card__title {
    margin-bottom: 2rem;
    font-size: clamp(1.85rem, 4vw, 2.5rem);
  }

  .c-mission-card__text {
		width: fit-content;
		margin: 0 auto;
    font-size: clamp(0.95rem, 2vw, 1.05rem);
    line-height: 2.2;
    letter-spacing: 0.06em;
  }

  .c-mission-card__text br {
    display: inline;
  }
}