/*
	Theme Name: diver_child
	Template: diver
	Description:  Diverの子テーマです。
	Theme URI: http://tan-taka.com/diver/
	Author: Takato Takagi
*/
@charset "utf-8";

/*ここから共通スタイル*/
body {
	font-family: "BIZ UDGothic","游ゴシック体","Yu Gothic",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN",Arial,FontAwesome,sans-serif !important;
	font-weight: 400 !important;
	font-style: normal !important;
}

h1 {
	margin-top: 20px !important;
	margin-bottom: 20px !important;
}

h2, h3, h4, h5 {
	margin-top: 60px !important;
	margin-bottom: 20px !important;
}

/*hが先にくるh*/
h3 + h4, h3 + h5, h4 + h5 {
	margin-top: 30px !important;
}

.content h1:where(:not([class])), :where(.is-editor-blocks) :where(.content) h1:not(.sc_heading) {
	border-bottom: 2px solid #ed6c23 !important;
}

.content h1, h1 {
	line-height: 1.5 !important;
	color: #000000 !important;
	font-size: 1.1rem !important;
	font-weight: 700 !important;
	padding: 0.3em 1em 0.3em 1em !important;
}

h1.catpage_title {
	color: #ffffff !important;
	font-weight: 300 !important;
}

.content h2:where(:not([class])), :where(.is-editor-blocks) :where(.content) h2:not(.sc_heading) {
	border-top: 1px solid #dfdfdf !important;
	border-right: 1px solid #5f5f5f !important;
	border-bottom: 1px solid #5f5f5f !important;
	border-left: 16px solid #ed6c23 !important;
	border-radius: 0px !important;
}

.content h2, h2 {
	line-height: 1.5 !important;
	font-size: 1.1rem !important;
	padding: 0.3em 1em 0.3em 1em !important;
}

.content h3:where(:not([class])), :where(.is-editor-blocks) :where(.content) h3:not(.sc_heading) {
	border-top: 1px solid #dfdfdf !important;
	border-right: 1px solid #5f5f5f !important;
	border-bottom: 1px solid #5f5f5f !important;
	border-left: 16px solid #f29700 !important;
	border-radius: 0px !important;
}

.content h3, h3 {
	line-height: 1.5 !important;
	font-size: 1.1rem !important;
	padding: 0.3em 1em 0.3em 1em !important;
}

.content h4:where(:not([class])), :where(.is-editor-blocks) :where(.content) h4:not(.sc_heading) {
	border-bottom: 2px dashed #f29700 !important;
}

.content h4, h4 {
	line-height: 1.5 !important;
	font-size: 1.1rem !important;
	padding: 0px 1em 0.3em 1em !important;
}

h4:before{
	display: none !important;
}

.content h5:where(:not([class])), :where(.is-editor-blocks) :where(.content) h5:not(.sc_heading) {
	border-bottom: 2px dotted #f29700 !important;
}

.content h5, h5 {
	line-height: 1.5 !important;
	font-size: 1.1rem !important;
	padding: 0px 1em 0.3em 1em !important;
}

@media screen and (max-width: 768px){
	.content h1, h1 {
		font-size: 1.0rem !important;
	}

	.content h2, h2 {
		font-size: 1.0rem !important;
	}

	.content h3, h3 {
		font-size: 1.0rem !important;
	}

	.content h4, h4 {
		font-size: 1.0rem !important;
	}

	.content h5, h5 {
		font-size: 1.0rem !important;
	}
}

hr {
	border-top: 1px dashed #f29700 !important;
	margin-top: 0px !important;
	margin-bottom: 20px !important;
}

p, pre {
	margin-bottom: 20px !important;
}

ul, ol {
	margin-bottom: 20px;
}

/*イメージ*/
img, svg {
	margin-bottom: 20px;
}

/*四隅を丸める*/
img.roundcorners {
	border-radius: 10px;
}

/*aに囲まれたimgが次にくるaに囲まれたimg*/
a:has(+ a > img) > img {
	margin-bottom: 6px;
}

/*imgが次にくるaに囲まれたimg*/
a:has(+ img) > img {
	margin-bottom: 6px;
}

/*svgが次にくるaに囲まれたimg*/
a:has(+ svg) > img {
	margin-bottom: 6px;
}

/*aに囲まれたimgが次にくるsvg*/
svg:has(+ a > img){
	margin-bottom: 6px;
}

/*imgが次にくるsvg*/
svg:has(+ img){
	margin-bottom: 6px;
}

/*svgが次にくるsvg*/
svg:has(+ svg){
	margin-bottom: 6px;
}

/*SNSボタンのsvg*/
.sns svg {
	margin-bottom: 0px;
}

/*テキストブロック*/
div.contentcenter {
	display: grid;
	justify-content: center;
	margin: 0px auto 0px auto;
	padding: 0px;
	max-width: 690px !important;
}

div.contentleft {
	display: grid;
	justify-content: left;
	margin: 0px auto 0px auto;
	padding: 0px;
	max-width: 690px !important;
}

/*テキストブロック内の最後の要素*/
div.contentcenter:has(+ h2, + h3, + h4, + h5) > p:last-child, div.contentleft:has(+ h2, + h3, + h4, + h5) > p:last-child {
  margin-bottom: 0px !important;
}

/*テーブル*/
table {
	margin: 0px auto 20px auto !important;
}

table, tr, td, th {
	border-collapse: collapse;
	border: 1px solid #909090 !important;
}

th {
	background-color: #ffdfaa !important;
}

/*テーブル内の最後の要素*/
td > p:last-child, td > img:last-child, td > ul:last-child, td > ol:last-child {
  margin-bottom: 0px !important;
}

/*カテゴリー*/
.catpage_inner_content {
	padding-top: 0px !important;
	padding-bottom: 0px !important;
}

.catpage_title {
	margin-top: 0px !important;
	margin-bottom: 0px !important;
}

.post-type {
	margin-top: 0px !important;
	margin-bottom: 0px !important;
}

.post-cat a, .post-tag a {
	font-size: 0.8rem !important;
}

.post-title {
	font-size: 1.05rem !important;
}

.post-substr {
	font-size: 0.9rem !important;
}

.cat-tag .single-post-category {
	font-size: 0.8rem !important;
}

.cat-tag .tag {
	font-size: 0.8rem !important;
}

@media screen and (max-width: 768px){
	.post-cat a, .post-tag a {
		font-size: 0.7rem !important;
	}

	.post-title {
		font-size: 0.9rem !important;
	}

	.post-substr {
		font-size: 0.8rem !important;
	}

	.cat-tag .single-post-category {
		font-size: 0.7rem !important;
	}

	.cat-tag .tag {
		font-size: 0.7rem !important;
	}
}

/*ウィジェット*/
@media screen and (max-width: 768px){
	.widget {
		margin-bottom: 0px !important;
	}
}

.widget_diver_widget_pcsp {
  padding: 0;
  margin-bottom: 20px;
}

.sidepict {
	height: 160px;
}

.textwidget li {
	font-size: 1.0rem;
}

.textwidget li a {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/*ヘッダー*/
#header_contact {
	margin-bottom: 0px !important;
}

#logo {
	padding-right: 20px;
}

#logo a {
	position: relative;
	width: 100%;
	height: auto;
}

#logo img {
	height: auto;
	max-height: 55px;
}

/*メニュー*/
#onlynavul, #scroll-menu {
	margin-bottom: 0px !important;
}

#onlynav ul li a {
	font-size: 1.05rem;
}

#onlynav ul li:nth-child(n+2) a::after {
  content: "|";
	color: #ed6c23 !important;
  position: absolute;
  left: 0px;
  transform: translateX(-50%);
}

/*パンくずリスト*/
div#breadcrumb ul {
	margin-bottom: 0px !important;
}

/*CTA*/
.cta_content {
	padding: 20px 10px 0px 10px !important;
}

@media screen and (max-width: 768px){
	.cta_content {
		padding: 10px 10px 0px 10px !important;
	}
}

.cta_title {
	display: none
}

.cta_thumbnail {
	display: none;
}

.cta_content .content {
	padding: 0;
}

/*外部コンテンツ*/
div#excontent {
	margin-bottom: 0px;
}

/*ドラゴン吹き出し*/
@import url('https://fonts.googleapis.com/css2?family=Klee+One:wght@500&display=swap');

div.character_container {
	display: flex;
	align-items: flex-start;
	margin: 0px auto 20px auto;
	max-width: 690px;
}

@media (width <= 768px){
	div.character_container {
		flex-wrap: wrap;
	}
}

@media (769px <= width){
	div.character_container {
		flex-wrap: nowrap;
	}
}

img.character {
	width: 100px;
	max-width: 100px;
	margin-right: 10px;
}

div.bubble {
	border: 2px dashed #cd853f;
	border-radius: 10px;
	padding: 20px;
	margin: 0px;
	background: -webkit-repeating-linear-gradient(-45deg, #ffffe6, #ffffe6 3px, #fffcef 3px, #fffcef 7px);
	background: repeating-linear-gradient(-45deg, #ffffe6, #ffffe6 3px, #fffcef 3px, #fffcef 7px);
}

p.bubble {
	font-family: "Klee One", sans-serif;
	font-weight: 500;
	line-height: 1.5;
	margin-bottom: 10px;
}

p.bubble_bottom {
	margin: 0px !important;
}

hr.bubble {
	border-top: solid 1px #cd853f !important;
	margin: 15px 0px 10px 0px !important;
}

/*スタッフ*/
@import url('https://fonts.googleapis.com/css2?family=Zen+Old+Mincho:wght@400;600&display=swap');

div.staff_container {
	display: flex;
	align-items: flex-start;
	border-top: 2px solid #efefef;
	border-left: 2px solid #efefef;
	border-right: 2px solid #afafaf;
	border-bottom: 2px solid #afafaf;
	border-radius: 10px;
	margin-top: 0px;
	margin-bottom: 20px;
	max-width: 300px;
	padding: 10px;
}

div.staff {
	width: 100%;
	margin: auto;
}

div.staff_container p, div.staff p {
	margin: 0px !important;
	padding: 0px !important;
}

img.staff {
	max-width: 90px;
	max-height: 90px;
	margin: 0px 10px 0px 0px !important;
}

p.staff_jp, p.staff_en {
	font-family: "Zen Old Mincho", serif;
	line-height: 1.5;
	margin-bottom: 0px !important;
	text-align: center;
}

p.staff_jp {
	font-size: 1.4rem;
	font-weight: 600;
}

p.staff_en {
	font-size: 1.1rem;
	font-weight: 400;
}

hr.staff {
	border-top: solid 1px #cfcfcf !important;
	margin: 2px 0px 2px 0px !important;
}
/*ここまで共通スタイル*/