@charset "utf-8";
/*
Theme Name:GoT
Template:onepress
*/
/*--------------------------------------------
	Color Theme
--------------------------------------------*/
:root {
    --main-color: #014c8c; 
    --sub-color: #3099f3; 
    --point-color: #59433E; 
    --white-color: #F2F2F2; 
    --gray-color: #D9D9D9; 
	--text-color:#222222;
	--font-size:16px;
    --bg-btn-color:#B92C07;
    --bg-color:#d3e2ea;
    --bg-point-color:#fffaeb;
    --attention-color:var(--btn-color);
}
/*--------------------------------------------
	marker
--------------------------------------------*/
.b, mark { font-weight:bold; }
.marker_line_yellow {
	display:inline-block !important;
	background: -webkit-linear-gradient(top, #ffe69c 100%, transparent 100%) 100% 100% / 200% 30% no-repeat;
	background: linear-gradient(to top, #ffe69c 100%, transparent 100%) 100% 100% / 200% 30% no-repeat
}

/*--------------------------------------------
	body
--------------------------------------------*/
/* ----- base layout ----- */
h1, h2, h3, h4, h5, h6 { font-family:unset!important; }
body, button, input, select, textarea { color:unset!important; }
body { color:var(--text-color); font:normal 400 16px/1.8 'メイリオ', Meiryo, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif!important; }

a:hover,
a.wp-block-button__link:hover { text-decoration:none; }
a.wp-block-button__link:hover { color: #fff; }
dfn, cite, em, i { font-style:normal!important; }
em { background-position: 0% bottom; }
br.br-425,
br.br-782 { display:none; }
.mBtm_1{ margin-bottom:1em;}
.mBtm_4{ margin-bottom:4em;}
.txtcenter * { text-align:center; }
.container .entry-content li { margin-left:1em; }
/* primary */
#primary { min-height: 80vh; }

/* home */
#hero .btn {
    box-shadow: none; border-radius: 9999px;
    padding: 1em 2em; letter-spacing: 1px;
}
.section-services .service-item .service-content p { font-size:var(--font-size)!important; color:var(--text-color)!important; }
.section-desc h3 { font-size: 1.5em; margin-top: 2em; }
.nav_zaiko { display:flex; flex-wrap: wrap; justify-content: center; padding: 0; margin: 0;  gap:1%; }
.nav_zaiko li { flex-basis: 49.5%; list-style: none;}
.section-desc a { max-width: 500px; font-size:17px; text-decoration:none; background-color:var(--sub-color)!important; }
.section-desc a:hover { background:var(--main-color)!important; color:#fff!important; }
.home .section-services .service-item { padding:3em 2em 0; }
.home .service-content h4.service-title { display:none; }
.home .service-content .marker_line_yellow em { font-size: 1.3em; padding-right: .5em;}
.home .service-content .wp-block-columns { margin-bottom: 3em;}
.home #contact .col-sm-6 { margin:0 auto; max-width:100%; }


/*header*/

.site-header { line-height: unset !important; box-shadow: unset !important; }
body:not(.onepress-menu-mobile-opening) .site-header { border-bottom:1px solid var(--gray-color); }
.main-navigation { text-align:right; }
.main-navigation a { display:inline-block; width:35%; padding:15px 2px 5px; color:#000; font-size:12px; line-height:1.3; text-align:center; }

.onepress-menu { margin-top:20px!important; }
.onepress-menu a { width: auto; text-align: left; font-size:unset!important; }
.onepress-menu ul.sub-menu { /*top:40px;*/ max-width:unset; border-top:1px;}
.onepress-menu ul.sub-menu li a { padding: 1.5em; line-height:1; }
.onepress-menu ul.sub-menu li a,
.onepress-menu.onepress-menu-mobile a { color:#000!important; font-weight:normal!important; }
.onepress-menu li:hover > ul.sub-menu, 
.onepress-menu li.sfHover > ul.sub-menu { background:#fff; }
.onepress-menu li:hover a { color:var(--main-color);}


@media screen and (max-width: 782px) {
    /*site-title*/
    .site-branding .site-title, .site-branding .site-text-logo { font-size:18px; letter-spacing:-.03em; }
    .site-header { line-height:50px; }
    .site-header .container { display:flex; align-items:center; justify-content: space-between; }
    .site-branding { flex-basis:99%; }
	.header-right-wrapper { width:40px; }
	.onepress-menu.onepress-menu-mobile { top: 68px !important; }
    /***/
    br.br-782 { display:block; }
    .icon-user { width:36px; }
	.col-sm-6 { max-width:100%; }
	
}

/*headline*/
.site-title,
.page-header .entry-title, 
.page-header .page-title { font-size:2em!important; text-transform:none!important; }
h2.wp-block-heading { margin-bottom:1em; }
.entry-content h3 { position:relative; line-height:1.4; font-size:1.5em; color:var(--main-color);}
.entry-content h3 em { padding:0 0.1em; font-size:1.6em; font-style:normal; }
.entry-content .icon-title img { margin-bottom:15px; }
.entry-content .icon-title.has-background { padding-inline:1em!important; }
.entry-content h4 { position:relative; margin-top:2em; padding-left:1.2em; font-size:17px; }
.entry-content h4::after {
    position:absolute; top:.34em; left:0;
    content:""; width:1em; height:.3em;
    border-left:.7em solid var(--main-color);
}
@media screen and (max-width: 782px) { 
    .page-header .entry-title, .page-header .page-title { font-size:20px!important; }
    .site-main h2 { font-size:20px; }
    .entry-content h3 { font-size:18px; }
}

/*table*/
/* table { box-sizing:content-box; } */
.wp-block-table th { background:var(--bg-color); }
.wp-block-table td, .wp-block-table th { padding:1em; min-width:4.1em; }
.wp-block-table.is-style-stripes th, .wp-block-table.is-style-stripes td { vertical-align:middle; padding:1.5em 2.5em; }

/*form*/
.wpcf7-form input:focus,
.wpcf7-form input:focus-visible { outline:1px solid #ccc!important; box-shadow:unset!important; background:#fff!important; }
.wpcf7-form textarea { width:98%; width:98%; outline:unset!important; background:#fff!important; }
.required-contactform7 { background:var(--bg-btn-color); color:#fff; padding:.2em .5em; margin-right:1em; display:inline-block; }
.wpcf7-form select { font-size:1em; }
.wpcf7-form input[type=submit] {
 padding:1em 2em; margin:0 auto; max-width:300px; min-width:280px;
 color:#ffffff!important; font-size:1.2em; font-weight: normal;
 border-radius:9999px; background-color:var(--sub-color); 
}
.wpcf7-form input[type=submit]:hover,
.wpcf7-form input[type=submit]:focus,
.wpcf7-form input[type=submit]:focus-visible { opacity:1; background:var(--main-color)!important; }
.wpcf7-form .checkbox div { line-height:2; }
.wpcf7-form td p { margin:0; }
.table-contactform7 th { min-width:18em!important; font-weight:normal; }
.table-contactform7 th, 
.table-contactform7 td { padding:2em!important; border:none; vertical-align:middle!important; font-size:1em; }

.wpcf7 form.sent .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output, 
.wpcf7 form.unaccepted .wpcf7-response-output, 
.wpcf7 form.spam .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
   padding: 1em; margin: 0 0 1em; box-sizing: border-box; width:100%;
}
.wpcf7 form.invalid .wpcf7-response-output, 
.wpcf7 form.unaccepted .wpcf7-response-output, 
.wpcf7 form.payment-required .wpcf7-response-output { border-color: #b92c07; }
.wpcf7 form.sent .wpcf7-response-output { border-color: #46b450; }

@media screen and (min-width: 426px) and (max-width: 782px) { 
	.wp-block-table.is-style-stripes th, .wp-block-table.is-style-stripes td { padding:2em!important; min-width:8em; }
	.wp-block-table.is-style-stripes td:nth-child(1) { padding-right:.3em; }
	.wp-block-table.is-style-stripes td:nth-child(2) { padding-left:.3em; }
}
@media screen and (max-width: 425px) { 
	.table-contactform7 th, .table-contactform7 td { padding:1.5em 1em .5em!important; display:block; }
	.wp-block-table.is-style-stripes th, .wp-block-table.is-style-stripes td { padding:1em!important; display:block; }
	.table-contactform7 th,
	.wp-block-table.is-style-stripes td:nth-child(1) { padding-bottom:.3em!important; }
	.table-contactform7 td,
	.wp-block-table.is-style-stripes td:nth-child(2) { padding-top:.3em!important; }
	.wpcf7 input[type=text], .wpcf7 input[type="url"], .wpcf7 input[type="email"], .wpcf7 input[type="tel"] { width:100%; }
}

/* セルの固定*/
._sticky { position: sticky; left:0; }
._sticky:before {
    content:""; position:absolute; top:-1px; left:-1px;
    width:calc(100% + 1px); height:calc(100% + 2px); border:1px solid #e9e9e9;
}
/*scrollbar*/
.scroll-box::-webkit-scrollbar { height:4px; }
.scroll-box::-webkit-scrollbar-track { background:#eee; }/*bg*/
.scroll-box::-webkit-scrollbar-thumb { background:#aaa; border:none; }/*move*/

/*blockquote*/
.entry-content blockquote { margin-bottom:1em; padding:1em 1.5em; border:none; font-style:normal; }
.wp-block-pullquote { max-width:600px; padding:.5em 1em 0; text-align:left; border:none; background: var(--bg-point-color)!important; }
.wp-block-pullquote p { margin-bottom:.8em!important; font-size:1em; line-height:1.6; font-style:normal; }

/*button*/
.wp-block-buttons>.wp-block-button { margin-bottom:5px; }
a.wp-block-button__link,
.wp-block-button a { min-width:300px; color:#fff!important; background-color:var(--sub-color); -webkit-transition: all .2s ease-in-out; transition: all .2s ease-in-out; }
.home a.wp-block-button__link,
.home .wp-block-button a { min-width:500px; }
a.wp-block-button__link:hover,
.wp-block-button a:hover { background-color:#014c8c; text-decoration:none; }
.entry-content .nav-link li { margin:.5em 1em!important; list-style:none; border:1px solid #dcdcdc; }
.entry-content .nav-link li a { display:block; padding:1em; color:#222; }
.entry-content .nav-link li a:hover { color:var(--main-color); }
.nav-link li a::after{
    position:absolute; top:calc(50% - .35em); right:1em;
    content:""; width:.6em; height:.6em;
    border-right:1px solid #fff; border-bottom:1px solid #fff;
    -webkit-transform:rotate(-45deg); -moz-transform:rotate(-45deg); transform:rotate(-45deg);
}
.nav-link li a::after { border-color:#aaa; }
#contact nav { display: flex; justify-content: center; }
@media screen and (max-width: 531px) {
	/*ボタン　min-width:500px*/
	.nav_zaiko li,
	.home a.wp-block-button__link, .home .wp-block-button a{ max-width:300px!important; min-width:300px!important; }
}
/* ----- single ----- */
.category .page-header .page-title,
.archive .page-header .page-title { color:#fff; }
.section-news .list-article-meta, .archive .list-article-meta, .blog .list-article-meta { font-size: 1.3em!important; }
#secondary h3 { position:relative; margin-top:2em; padding-left:1.2em; font-size:17px; }
#secondary h3::after {
    position:absolute; top:.34em; left:0;
    content:""; width:1em; height:.3em;
    border-left:.7em solid var(--main-color);
}


