@charset "utf-8";
/*
Theme Name:mrp-child
Template:mrp
Version: 1.0.0
*/
/*
DesignCode CSS: ver 0.01
*/
/*------------------------------------------------------
Theme Material
------------------------------------------------------*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, font, ins, kbd, q, s, samp, small, strike, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
    border: 0;
    font-family: inherit;
    font-size: 100%;
    font-style: inherit;
    font-weight: inherit;
    margin: 0;
    outline: 0;
    padding: 0;
    vertical-align: baseline;
    color: black;
}
/* オリジナル */
#privacy h3 {
    color: rgb(51, 51, 51);
    font-size: min(1.6rem + (1vw - 19.2px) * 0.1294, 1.2rem);
    font-weight: 600;
    text-align: left;
    background: none;
    padding: 0px 0px 10px;
    margin: min(40px + (1vw - 19.2px) * 0.9709, 40px) auto min(20px + (1vw - 19.2px) * 0.6472, 20px);
    border-width: 0px 0px 1px;
    border-style: dashed;
    border-color: rgb(221, 221, 221);
}
.post h2 {
    margin: 0;
    text-align: start;
}
.post h2::after {
    display: none;
}
.post h3 {
    margin: 0;
    padding: 0;
    border-bottom: none;
}
.mb005 {
    margin-bottom: 0.5vw !important;
}
.mb1 {
    margin-bottom: 1vw !important;
}
.mb2 {
    margin-bottom: 2vw !important;
}
.mb3 {
    margin-bottom: 3vw !important;
}
.mb4 {
    margin-bottom: 4vw !important;
}
.mb5 {
    margin-bottom: 5vw !important;
}
.mb6 {
    margin-bottom: 6vw !important;
}
.mb7 {
    margin-bottom: 7vw !important;
}
.mb8 {
    margin-bottom: 8vw !important;
}
.mb9 {
    margin-bottom: 9vw !important;
}
.mb10 {
    margin-bottom: 10vw !important;
}
.mb13 {
    margin-bottom: 13vw !important;
}
.mb15 {
    margin-bottom: 15vw !important;
}
.pt1 {
    padding-top: 1vw !important;
}
.pt2 {
    padding-top: 2vw !important;
}
.pt3 {
    padding-top: 3vw !important;
}
.pt4 {
    padding-top: 4vw !important;
}
.pt5 {
    padding-top: 5vw !important;
}
.pt6 {
    padding-top: 6vw !important;
}
.pt7 {
    padding-top: 7vw !important;
}
.pl2 {
    padding-left: 2vw !important;
}
.pl3 {
    padding-left: 3vw !important;
}
.bg_img {
    background-size: cover;
    background-position: top;
    background-repeat: no-repeat;
}
.max_contents {
    width: 100vw;
    margin-left: calc(((100vw - 100%) / 2)* -1);
    margin-right: calc(((100vw - 100%) / 2)* -1);
}
.mxauto {
    margin: 0 auto;
}
article#post-28 h1.title.first span {
    font-size: clamp(18px, 2.1vw, 40px);
}
.page-id-21 .comon_footer {
    display: none;
}
.jc_around {
    justify-content: space-around;
}
.post .linkBtn input[type="submit"] {
    padding: 20px 35px 20px 35px;
}
@media screen and (min-width: 769px) {
    .columns, .flexbox {
        display: flex;
        flex-wrap: wrap;
    }
}
/* テーブル */
.table-item tr td {
    font-size: 16px;
    font-weight: 400;
    padding: 25px 3%;
    vertical-align: middle;
    font-family: "Zen Kaku Gothic New", sans-serif;
}
.table-item td.cell_01 {
    width: 25%;
    text-align: center;
    border-bottom: 2px solid #9f9f9f;
    background: #EADDA6;
}
.table-item td.cell_02 {
    border-bottom: 2px solid #9f9f9f;
}
.table-item tr.head td.cell_01 {
    border-top: 2px solid #9f9f9f;
}
.table-item tr.head td.cell_02 {
    border-top: 2px solid #9f9f9f;
}
@media print, screen and (max-width: 1024px) {
    .card02 {
        width: 48%;
        padding-bottom: 8%;
    }
}
@media print, screen and (min-width: 769px) {}
@media print, screen and (max-width: 768px) {
    .table-item tr td {
        display: block;
        width: 100% !important;
    }
    .table-item td.cell_02 {
        text-align: center;
    }
}
/* ボタン */
.btn-item02 a {
    position: relative;
    display: block;
    text-align: center;
    /*background: #ffffff;*/
    /*背景の色*/
    color: #ffffff;
    /*文字と枠の色*/
    font-size: 18px;
    /*文字の大きさ*/
    font-weight: bold;
    /*文字の太さ*/
    width: 210px;
    /*横幅調整*/
    padding: 15px 0;
    /*立幅調整*/
    margin: 0 auto;
    /*border: 2px solid;*/
    /*border-radius: 10px;*/
    /*枠線を丸くする*/
    text-decoration: none;
    /*文字の下線を消す*/
    transition: 0.3s;
}
.btn-item02 a::before {
    content: "";
    position: absolute;
    left: 10px;
    transition: 0.2s;
    width: 50px;
    height: 50px;
    background-color: #ffffff;
    border-radius: 50%;
    transform: translateY(-50%);
    top: 50%;
}
.btn-item02 a::after {
    content: "→";
    color: #000;
    position: absolute;
    left: 27px;
    transition: 0.2s;
}
/*以下カーソルを合わせた際の色の変更アニメーション*/
.btn-item02 a:hover::before {
    background-color: #D4D4D4;
}
.btn-item02 a:hover::after {
    color: #000;
}
.btn-item a {
    position: relative;
    display: block;
    text-align: center;
    background: linear-gradient(-135deg, #F3EAC8, #E1C965);
    /*背景の色*/
    color: #333333;
    /*文字と枠の色*/
    font-size: clamp(16px, 1vw, 18px);
    /*文字の大きさ*/
    font-weight: bold;
    /*文字の太さ*/
    width: 250px;
    /*横幅調整*/
    padding: 15px 0;
    /*立幅調整*/
    margin: 0 auto;
    border: 2px solid;
    /*border-radius: 10px;*/
    /*枠線を丸くする*/
    text-decoration: none;
    /*文字の下線を消す*/
    transition: 0.3s;
}
.btn-item a::before {
    content: ">";
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    transition: 0.2s;
}
.btn-item a:hover::before {
    right: 10px;
}
/* ヘッダー */
/* フッター */
h1.title.bottom-loop span {
    color: white;
    font-size: clamp(30px, 2.8vw, 52px);
}
.postlist .ttls, .postlist .date {
    color: white;
}
footer#footer {
    background: rgb(27, 27, 27, 0.85);
}
#footer .inner {
    max-width: 1650px;
}
#footer ul li a {
    font-size: clamp(16px, 1.2vw, 22px);
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: 700;
}
div#copyright {
    font-size: clamp(16px, 1.2vw, 22px);
    font-weight: 700;
    font-family: "Zen Kaku Gothic New", sans-serif;
    background: transparent;
}
#footer li a, .footeradd, .footertel, #footer li a:hover {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: 700;
}
#footer .footnav ul>li::before, #footer .footnav ul>li::after {
    display: none;
}
#footer .footnav ul {
    justify-content: flex-end;
}
p.large {
    font-size: clamp(20px, 1.5vw, 28px);
    font-weight: 700;
    font-family: "Gothic A1", sans-serif;
    color: white;
}
p.small {
    font-size: clamp(16px, 1.5vw, 22px);
    font-weight: 700;
    font-family: "Gothic A1", sans-serif;
    color: white;
}
.sec02 {
    margin-top: -4.5vw;
}
.sec01 {
    background: rgb(38, 38, 38, 0.95);
}
.max_w1020 {
    max-width: 1020px;
    width: 90%;
}
.w48 {
    width: 48%;
    text-align: center;
    padding: 1.5vw 0;
    transition: .3s;
}
.w48.bg_tel {
    background: #656252;
}
.w48.bg_mail {
    background: #262626;
    border: 3px solid #656252;
}
.dark_gray {
    padding: 3vw 0;
}
/* トップ */
button.button.ex {
    margin-top: 2vw;
    margin-bottom: 4vw;
}

p.greeting_ {
    width: 80%;
}

.president_img {
    width: 15%;
}


.post h4 {
    font-size: var(--rem1);
}

button.button::before {
    content: ">";
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    transition: 0.2s;
    display: block;
    z-index: 5;
}

button.button {
    background: linear-gradient(-135deg,#F3EAC8, #E1C965, #F3EAC8,#E1C965);
    text-shadow: none;
    border-radius: 0;
    margin: 0 auto;
    position: relative;
    font-size: clamp(16px, 1vw, 18px);
    margin-top: 6vw;
    background-size: 300%;
}

.button svg {
    display: none;
}

button {
    width: 250px !important;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    color: #000 !important;
}


/* inspired from this svgbackgrounds.com/ */
.button {
  width: fit-content;
  display: flex;
  padding: 0.8em 1.1em;
  gap: 0.4rem;
  border: none;
  font-weight: bold;
  border-radius: 30px;
  cursor: pointer;
  text-shadow: 2px 2px 3px rgb(136 0 136 / 50%);
  background: linear-gradient(
      15deg,
      #880088,
      #aa2068,
      #cc3f47,
      #de6f3d,
      #f09f33,
      #de6f3d,
      #cc3f47,
      #aa2068,
      #880088
    )
    no-repeat;
  background-size: 300%;
  background-position: left center;
  transition: background 0.3s ease;
  color: #fff;
}

.button:hover {
  background-size: 320%;
  background-position: right center;
}

.button:hover svg {
  fill: #fff;
}

.button svg {
  width: 23px;
  fill: #f09f33;
  transition: 0.3s ease;
}

article#post-23 a.linkBtn {
    background: #E1C965;
    padding: 20px;
}

.linkBtn:hover, .post .linkBtn:hover {
    color: #fff;
    background: #E1C965;
    opacity: 0.7;
}

.post .subimitarea .linkBtn input[type="submit"] {
    padding: 20px;
}

.linkBtn, .post .linkBtn {
    padding: 0;
}

.linkBtn input[type="submit"], .post .linkBtn input[type="submit"] {
    background: #E1C965;
}

.w48.bg_tel:hover {
    background: var(--header-color-primary-tint);
}
.w48.bg_mail:hover {
    background: var(--header-color-primary-tint);
}
#thumbImg::before, header#h1Header::before {
    background: #ffffff;
}
a#scrollUp {
    background: #E1C965;
}
#thumbImg::before, header#h1Header::before {
    background: #ffffff;
}
section#front_bottom_content {
    padding: var(--px240) 0;
}
.post table, .post table th, .post table td {
    border-width: 0px;
}
h1.title.bottom-loop span span {
    font-size: clamp(22px, 1.5vw, 28px);
}
.w50.ex {
    padding: 0 1vw;
}
.service p {
    font-size: 16px !important;
    font-family: "Gothic A1", sans-serif !important;
    font-weight: 400 !important;
}
h3.lower_subtitle {
    font-size: clamp(20px, 1.2vw, 22px);
    font-weight: 700;
    font-family: "Gothic A1", sans-serif;
    border-bottom: 3px solid #E1C965;
    margin-bottom: 2vw;
}
h1.title.first span {
    font-family: "Gothic A1", sans-serif;
    font-size: clamp(30px, 2.5vw, 48px);
    font-weight: 700;
    color: #262626fa;
}
.company p {
    font-size: 16px !important;
    font-weight: 400 !important;
    font-family: "Gothic A1", sans-serif !important;
}
p.name {
    text-align: right;
    font-size: 16px !important;
    font-weight: 600 !important;
    font-family: "Gothic A1", sans-serif !important;
    padding-top: 1vw;
}
p.name span {
    padding-left: 1vw;
    font-size: clamp(20px, 1.2vw, 22px);
    display: inline-block;
}
.top p {
    color: white !important;
}
span.translate02 {
    color: #000;
    font-size: 16px;
    font-weight: 600;
    font-family: "Gothic A1", sans-serif;
    background: #EADDA6 !important;
    padding: 0.3vw !important;
    display: inline-block;
}
h2.lower_title {
    font-size: clamp(26px, 1.9vw, 36px);
    font-weight: 600;
    font-family: "Gothic A1", sans-serif;
    line-height: 1;
    border-left: 1px solid;
    padding-left: 0.5vw;
    margin-bottom: 2vw;
}
.postlist .post_text {
    padding: 20px 0;
}
ul.postlist {
    background: #656252;
}
.post .time a, .post2b .time a, .post4b .time a, .postlist .time a {
    color: black;
}
p.time.cat-news.first {
    background: #ffffff;
}
.post2b h2, .post4b h2, h2.title, .post_text h2, .post h2 a, .post2b h2 a, .post4b h2 a, .postlist .ttls a {
    color: #ffffff;
}
.postlist li:first-child {
    border-top: none;
}
.postlist li {
    border-bottom: none;
}
.page-id-25 .comon_footer {
    background: black;
}

.w50.max-height.relative {
    background-image: url(https://tatsumi-kougyo.com/wp-content/uploads/top02_right_2.png);
}
.w50.max-height.relative {
    position: relative;
}
.top {
    background: black;
    width: 100vw;
    margin-left: calc(((100vw - 100%) / 2)* -1);
    margin-right: calc(((100vw - 100%) / 2)* -1);
}
.btn-item {
    padding-top: 5vw;
}
section#front_bottom_content {
    background: transparent;
}
/*  .top_service_right {
    background-image: url(https://tatsumi-kougyo.com/wp-content/uploads/top02_right_2.png);
    padding: 4vw 3vw;
} */
.bg_gray_top02 {
    background: rgb(38, 38, 38, 0.95);
    padding: 3vw 2vw;
    margin: 5%;
}
section#front_bottom_content {
    background: black;
    width: 100vw;
    margin-left: calc(((100vw - 100%) / 2)* -1);
    margin-right: calc(((100vw - 100%) / 2)* -1);
}
span.translate {
    display: block;
    font-size: clamp(22px, 1.5vw, 28px);
    color: white;
}
h2.main_title.border_bottom {
    border-bottom: 2px solid #E1C965;
    padding-bottom: 1vw;
    margin-bottom: 2vw;
}
.post p {
    font-size: clamp(16px, 1.5vw, 20px);
    font-weight: 700;
    font-family: "Gothic A1", sans-serif;
    line-height: 1.5;
}
.bg_gray_greeting {
    background: rgb(38, 38, 38, 0.95);
    padding: 2vw 3vw 6vw 3vw;
}
p.greeting_text {
    width: 80%;
    margin: auto;
}
h2.main_title {
    font-size: clamp(30px, 2.8vw, 52px);
    color: white;
    font-weight: 700;
    font-family: "Gothic A1", sans-serif;
}
.top01 .max_contents::before {
    position: absolute;
    content: "";
    top: 2%;
    left: 0;
    width: 100%;
    height: 47%;
    background-image: url(/wp-content/uploads/top01_bg_item.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top;
    z-index: -1;
}
.top01 .max_contents {
    position: relative;
    z-index: 0;
}
.max_w1240 {
    max-width: 1240px;
    width: 90%;
}
/*--メディアクエリ--------------------------------------------*/
@media print, screen and (min-width: 1024px) {
    .sticky-header #header>.inner {
        background: black;
    }
    #header .logo img {
        object-fit: contain;
        width: 100%;
        height: 100%;
        max-width: 104px;
        max-height: 31px;
    }
    #header a.head_btn.mail_btn:hover {
        background: var(--header-color-primary-tint);
    }
    #header a.head_btn.mail_btn span {
        color: black !important;
        font-size: clamp(18px, 1vw, 20px);
        font-weight: 400;
        font-family: "Reggae One", system-ui;
    }
    #header a.head_btn.tel_btn::before {
        display: none;
    }
    a.head_btn.tel_btn span {
        display: block;
        text-align: center;
        font-family: "Reggae One", system-ui;
        font-size: clamp(18px, 1.1vw, 20px);
        font-weight: 400;
        color: white;
    }
    a.head_btn.tel_btn span span {
        font-size: clamp(12px, 0.8vw, 14px);
        font-family: "Reggae One", system-ui;
        font-weight: 400;
    }
    ::before {}
    #header a.head_btn.mail_btn::before {
        display: none;
    }
    #header a.head_btn.mail_btn {
        background: #E1C965;
    }
    #header {
        background: black;
    }
    nav#mainNav ul li a b, nav#mainNav ul li a span {
        font-size: clamp(12px, 0.8vw, 14px);
        font-weight: 400;
        font-family: "Reggae One", system-ui;
        color: white;
    }
    nav#mainNav ul li a span {
        font-size: clamp(16px, 1vw, 18px);
        font-weight: 700;
        font-family: "Gothic A1", sans-serif;
        color: white;
    }
}
@media print, screen and (max-width: 1024px) {
	.flexbox.responsive {
    display: block;
}

.w50.responsive {
    width: 100%;
	        padding-top: 3vw !important;
}
}
@media print, screen and (max-width: 1023px) {
.mobile #header {
    background: #000;
}
}
@media print, screen and (min-width: 769px) {}
@media print, screen and (max-width: 768px) {
	button.button.ex {
    margin-top: 6vw;
    margin-bottom: 8vw;
}
	
	p.greeting_ {
    width: 100%;
}

.president_img {
    width: 100%;
}
	
	div#copyright {
    margin-bottom: 40px !important;
}
    .spmenu #menu p {
        color: #ffffff;
    }
    .spmenu #menu span, .spmenu #menu span:before, .spmenu #menu span:after {
        background: #ffffff;
    }
    .single-post h1.title {
        text-align: center !important;
    }
    #footer .footnav ul {
        justify-content: center;
    }
    .btn-item a {
        padding: 10px 0;
    }
    .btn-item02 a::before {
        width: 40px;
        height: 40px;
    }
    .btn-item02 a::after {
        left: 22px;
    }
    .btn-item02 a {
        width: 170px;
    }
    .sppt65px {
        padding-top: 65px !important;
    }
    .dark_gray {
        padding: 10vw 0;
    }
    .sec02 {
        margin-top: -9vw;
    }
    .table-item tr.head td.cell_02 {
        border-top: 0px solid #9f9f9f;
    }
    h2.lower_title {
        padding-left: 2vw;
        margin-bottom: 5vw;
    }
    p.name span {
        padding-top: 3vw;
    }
    .postlist .post_text {
        padding: 10px;
    }
    .bg_gray_top02 {
        padding: 5vw;
    }
    .w50.max-height.relative {
        padding: 5vw 0;
    }
    .w50 {
        margin-bottom: 0;
    }
    .sppt15 {
        padding-top: 15vw !important;
    }
    .bg_gray_top02 {
        margin-top: 0;
        margin-bottom: 0;
    }
    .top01 .max_contents::before {
        height: 22%;
    }
    .w48 {
        width: 90%;
        margin: 0 auto;
    }
    /* 	spオリジナル */
    .sppt0 {
        padding-top: 0 !important;
    }
    .sp_flex_mb {
        margin-bottom: 5vw;
    }
    .sp_w90 {
        width: 90%;
        margin: auto;
    }
    .spmb10 {
        margin-bottom: 10vw !important;
    }
    .spmb15 {
        margin-bottom: 15vw !important;
    }
    .spmb20 {
        margin-bottom: 20vw !important;
    }
    .spmb3 {
        margin-bottom: 3vw !important;
    }
    .spmb4 {
        margin-bottom: 4vw !important;
    }
    .sppt5 {
        padding-top: 5vw !important;
    }
    .sppt10 {
        padding-top: 10vw !important;
    }
    .sppt15 {
        padding-top: 15vw !important;
    }
    .sp_txt_l {
        text-align: left !important;
    }
    .sp_txt_c {
        text-align: center;
    }
    .spmb2 {
        margin-bottom: 2vw !important;
    }
    .spmb5 {
        margin-bottom: 5vw !important;
    }
    .spmb8 {
        margin-bottom: 8vw !important;
    }
    .sp_flex {
        display: flex;
        flex-wrap: wrap;
    }
}
@media print, screen and (min-width: 769px) {

    .w50.max-height .top02_img img {
        min-height: 400px;
        object-fit: cover;
    }
    .bg_gray_top02 {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 90%;
        height: 90%;
        margin: 0;
    }
}