@charset "UTF-8";
/*
Theme Name: vbd
Theme URI: https://vector-borne-disease.org/
Description: arkhe の子テーマ
Template: arkhe
Version: 1.0.0
*/

/* Contents
------------------------------------------------------------
* layout
* header
	menu
	bogo-language-switcher
	drawer
	headernavi searchBtn
* page
	common
	home-fieldnote-list
* post
	archive
* sub
	widget
* plugin
	contact form 7
	acceptance
	button submit
	error
	pagetop
	reCAPTCHA
------------------------------------------------------------ */

/*=================================================
 * layout
 *================================================*/
* {
    text-underline-offset: 0.2em;
}
a {
    text-decoration: none;
}
a:hover {
    text-decoration: underline;
}

/*=================================================
 * header
 *================================================*/
/* menu */
[data-btns=rl-rr] .l-header__body {
    grid-template-areas: "left center right menu search";
    grid-template-columns: 15% 70% auto var(--ark-drawerW) var(--ark-searchW);
}
.has-text>.c-headLogo {
    font-size: clamp(1rem, 0.818rem + 0.91vw, 1.5rem);
    line-height: 1.5;
    font-weight: 700;
}
.has-text>.c-headLogo:hover {
    text-decoration: none;
}
.c-gnav__depth1 {
    min-width: 200px;
    left: 0;
    transform: none;
}
.c-gnav__depth1:before {
    background-color: var(--ark-color--main);
    left: 17%;
    bottom: 99%;
    height: 2em;
}

/* bogo-language-switcher */
.language-switcher .sub-menu.c-gnav__depth1 {
    min-width: 130px;
    line-height: 1;
}
.c-gnav .language-switcher .sub-menu .c-gnav__a {
    display: none;
}
ul.bogo-language-switcher li:not(:last-child) {
    border-bottom: 1px solid var(--ark-color--border);
}
ul.bogo-language-switcher li a {
    color: inherit;
    font-size: var(--ark-nav_fz, 1em);
    text-decoration: none;
    display: block;
    padding: var(--ark-nav-padding--Y, .75rem) var(--ark-nav-padding--R, .5rem) var(--ark-nav-padding--Y, .75rem) var(--ark-nav-padding--L, .5rem);
    position: relative;
}
ul.bogo-language-switcher li a:hover {
    text-decoration: none;
}
ul.bogo-language-switcher li a:before {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 0;
}
ul.bogo-language-switcher li a:before {
    background-color: initial;
    content: "";
}
ul.bogo-language-switcher li a:hover:before {
    background-color: #ffffff1a;
}
ul.bogo-language-switcher li a.current::after {
    content: " \f15e";
    font-family: "dashicons";
    font-size: 1rem;
    vertical-align: sub;
    line-height: 0.8;
}
ul.bogo-language-switcher li span.bogo-language-name {
    display: none;
}
ul.bogo-language-switcher li span.bogo-language-name:has(a) {
    display:inline;
}
/* drawer */
[data-drawer-move=fade][data-drawer=opened] .l-header__drawerBtn {
    color: #000;
}
.p-drawer {
    --ark-color--border: #333;
    --ark-menulist_border: 1px solid #333;
    background: #f0f0f0f5;
    color: #333;
}
.p-drawer .c-drawerNav .sub-menu li:not(:last-child) {
border-top: none;
border-bottom: 1px dashed var(--ark-color--border);
}
.p-drawer .u-flex--c {
    outline: 1px solid var(--ark-color--border);
    border-radius: 4px;
}
.c-drawerNav .language-switcher .sub-menu .menu-item a.c-drawerNav__a {
display:none;
}
.p-drawer .wp-block-search .wp-block-search__button {
    background: transparent;
}
.p-drawer .wp-block-search__button.has-icon {
    border-radius: 4px;
}
button.p-drawer__close.c-modalClose.u-flex--aic {
    display: none;
}
/* headernavi searchBtn */
.c-iconBtn__icon {
    width: 20px;
}
/*=================================================
* page
 *================================================*/
/* common */
.button_to_diagram_elements {
    border: 2px solid #555;
    border-radius: 15px;
}
.button_to_diagram_elements:hover {
    background-color: #f0f0f0;
}

/* home-fieldnote-list */
.home-fieldnote-list li .wp-block-post-featured-image {
    overflow: hidden;
}
.home-fieldnote-list li:hover .wp-block-post-featured-image img {
    transition: transform .25s;
}
.home-fieldnote-list li:hover .wp-block-post-featured-image img {
    transform: scale(1.15);
}

/*=================================================
* post
 *================================================*/
/* archive */
.p-postList.-type-list {
    border-top: 1px solid var(--ark-color--border);
}
.p-postList.-type-list .p-postList__item {
    margin-bottom: 0;
    padding-top: 1rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--ark-color--border);
}
.p-postList .p-postList__title {
    font-size: 1.2rem;
    font-weight: normal;
    line-height: 1.5;
}
.p-postList .p-postList__link:hover .p-postList__title {
    text-decoration: underline;
}
.p-postList.-type-list .p-postList__thumb {
    flex-shrink: 0;
    max-width: 150px;
    width: 15%;
}
.p-postList.-type-list .p-postList__thumb:before {
    background: none;
}
.p-entry__head .c-postTerms__link:not(:last-child):after {
    content: ","
}

/*=================================================
* sub
 *================================================*/
/* widget */
.c-widget+.c-widget {
    margin-top: 1rem;
}

/*=================================================
* plugin
 *================================================*/
/* contact form 7 */
.wpcf7 .wp-block-columns {
    --wp-column-gap: 1rem;
}
.wpcf7 label,
.wpcf7 p {
	display: block;
	font-weight: normal;
	margin-bottom: 0;
}
.wpcf7 input[type=checkbox] {
	accent-color: black;
	transform: scale(1.2);
	margin: 0 5px 0 0;
}
.wpcf7 span#contact-category span.wpcf7-list-item-label {
	color: #333;
	font-weight: 500;
}
.wpcf7 span#contact-category:hover span.wpcf7-list-item-label {
	color: #000;
}
.wpcf7 form.wpcf7-form ::placeholder { color: #333; transition: all .3s linear; }
.wpcf7 form.wpcf7-form input:focus::placeholder { color: transparent; transition: all .3s linear; }
.wpcf7 form.wpcf7-form textarea:focus::placeholder { color: transparent; transition: all .3s linear; }

.wpcf7 form.wpcf7-form input[type="text"],
.wpcf7 form.wpcf7-form input[type="email"],
.wpcf7 form.wpcf7-form input[type="tel"],
.wpcf7 form.wpcf7-form span#contact-category,
.wpcf7 form.wpcf7-form textarea {
	color: #333;
	width: 100%;
	padding: 15px;
	border: 2px solid #c1c1c1;
	border-radius: 12px;
	transition: all .3s linear;
}
.wpcf7 form.wpcf7-form textarea { 
	resize: vertical;
	height: calc(2em * 10); 
	line-height: 1.8;
	vertical-align: top;
	box-sizing: border-box;
}
.wpcf7 form.wpcf7-form input[type="text"].wpcf7-not-valid,
.wpcf7 form.wpcf7-form input[type="email"].wpcf7-not-valid,
.wpcf7 form.wpcf7-form input[type="tel"].wpcf7-not-valid,
.wpcf7 form.wpcf7-form span#contact-category.wpcf7-not-valid,
.wpcf7 form.wpcf7-form textarea.wpcf7-not-valid {
	color: #333;
	width: 100%;
	padding: 15px;
	border: 2px solid #ff4444;
	border-radius: 12px;
	transition: all .3s linear;
}
.wpcf7 form.wpcf7-form input[type="text"]:focus,
.wpcf7 form.wpcf7-form input[type="email"]:focus,
.wpcf7 form.wpcf7-form input[type="tel"]:focus,
.wpcf7 form.wpcf7-form span#contact-category:hover,
.wpcf7 form.wpcf7-form textarea:focus,
.wpcf7 form.wpcf7-form input[type="text"].wpcf7-not-valid:focus,
.wpcf7 form.wpcf7-form input[type="email"].wpcf7-not-valid:focus,
.wpcf7 form.wpcf7-form input[type="tel"].wpcf7-not-valid:focus,
.wpcf7 form.wpcf7-form span#contact-category.wpcf7-not-valid:hover,
.wpcf7 form.wpcf7-form textarea.wpcf7-not-valid:focus {
	background: #fff;
	color: #000;
	outline: none;
	border: 2px solid #000;
}
/* acceptance */
.wpcf7 form.wpcf7-form .acceptance {
	text-align: center;
	margin: 3em auto 0;
}
.wpcf7 form.wpcf7-form .acceptance .privacyPolicy {
	text-decoration: underline;
}
.wpcf7 form.wpcf7-form .acceptance .privacyPolicy:hover {
	text-decoration: none;
}
/* button submit */
.wpcf7 form.wpcf7-form .button_area {
	text-align: center;
	margin: 10px auto;
}
.wpcf7 form.wpcf7-form input.submit_button {
	color: #333;
	background-color: #fff;
	border: 2px solid #c1c1c1;
	border-radius: 12px;
	padding: 15px 50px;
	margin :0 24px;
	cursor: pointer;
	transition: all .3s linear;
}
.wpcf7 form.wpcf7-form input.submit_button:hover {
	color: #000;
	background-color: #eee;
	border: 2px solid #000;
	outline: none;
}
.wpcf7 form.wpcf7-form input.submit_button:focus,
.wpcf7 form.wpcf7-form input.submit_button:active {
	color: #000;
	background-color: #eee;
	border: 2px solid #000;
	outline: none;
}
.wpcf7 form.wpcf7-form input.submit_button[disabled]{
	color: #333;
	background-color: #eee;
	background-image: repeating-linear-gradient(-45deg, #fff, #fff 7px, transparent 0, transparent 14px);
	border: 2px solid #c1c1c1;
}
.wpcf7 form.wpcf7-form input.submit_button[disabled]:hover{
	color: #333;
	background-color: #eee;
	border: 2px solid #c1c1c1;
	cursor:not-allowed; /* 禁止カーソル */
}
.wpcf7 form.wpcf7-form .wpcf7-spinner {
	margin: 0 -24px -6px 0;
}
.wpcf7 form.wpcf7-form .ajax-loader {
	display: none;
}
/* error */
.wpcf7 span.wpcf7-not-valid-tip {
	display:none;
}
.wpcf7 div.wpcf7-validation-errors {
	font-size: initial;
	color: #222;
	line-height: 1.8;
	background: none;
	padding: 15px;
	border-radius: 12px;
	margin : 30px 0 0;
	margin-bottom: 1.2em;
}
.wpcf7 form.invalid .wpcf7-response-output, 
.wpcf7 form.spam .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
	color: #fff;
	text-align: center;
	border-radius: 12px;
	padding: 15px;
	margin: 30px auto 0;
}
.wpcf7 form.invalid .wpcf7-response-output {
	background: #dd0000;
	border-color: #dd0000;
}
.wpcf7 form.unaccepted .wpcf7-response-output {
	background: #dd0000;
	border-color: #dd0000;
}
.wpcf7 form.spam .wpcf7-response-output {
	background: #f56e28;
	border-color: #f56e28;
}
.wpcf7 form.sent .wpcf7-response-output {
	color: #333;
	text-align: center;
	background: #fff;
	border: none;
	padding: 0;
	margin: 2em auto 0;
}
/* pagetop */
.c-fixBtn {
    border-radius: 5px;
}
/* reCAPTCHA */
.grecaptcha-badge {
display: none;
}

