@charset "UTF-8";
/*!
 *  document
 */
 
@import url('https://fonts.googleapis.com/css2?family=Aclonica&family=Noto+Sans+JP:wght@100;400;700&display=swap');

body {
    font-size: 12pt;
}

#main {
	font-family: 'Noto Sans JP', sans-serif;
	background-color: #FFF9E1;
}

a:link {
    color: #212529;
}
a:visited {
    color: #212529;
}
a:hover {
    color: #fab42d;
}
a:active {
    color: #fab42d;
}

.btn {
	border-radius: 0.3rem;
	line-height: 1.2;
	padding: 0.5rem 1rem;
}
.navbar-toggler:focus {
	text-decoration: none;
	outline: 0;
	box-shadow: none !important;
}
.text-center {
	color: #404040;
	text-align: center;
	padding: 0.5rem 0;
}
.text-left {
    padding-left: 0.5rem;
}
.col-xl-15 {
    position: relative;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px;
}
@media (min-width: 1200px) {
    .col-xl-15 {
        width: 33%;
        flex: 0 0 20%;
    }
}
@media (min-width: 991.98px){
	.spbr{
	display: none;
	}
}
@media (max-width: 767.98px){
	.pcbr{
	display: none;
	}
}
@media (max-width: 375px) {
	p {
	font-size: 0.875rem;
	}
}

main h1 {
	margin: 2.0rem 0 3.5rem 0;
	text-align: center;
	font-size: 2.0rem;
	font-weight: bold;
	color: #404040;
}
@media (max-width: 575.98px) {
	main h1 {
	margin: 1.5rem 0 3.0rem 0;
	font-size: 1.5rem;
	}
}

main h2 {
	margin: 0 0 2.5rem 0;
	text-align: left;
	font-size: 1.25rem;
	font-weight: bold;
	color: #404040;
}
@media (max-width: 575.98px) {
	main h2 {
	font-size: 1.25rem;
	}
}

main h2 span.textsmall {
  font-size: 0.875rem;
}

main h3 {
	margin: 1.875rem 0 0.625rem 0;
	text-align: left;
	font-weight: bold;
	font-size: 1.0rem;
	line-height: 1.5;
	color: #404040;
}
main h4 {
	margin: 1.25rem 0 0.315rem 0;
	text-align: left;
	font-weight: bold;
	font-size: 1.0rem;
	color: #404040;
}
main h5 {
	margin: 1.0rem 0 0.315rem 0;
	text-align: left;
	font-weight: bold;
	font-size: 1.0rem;
	color: #404040;
}

@media (max-width: 1399.98px) {
}
@media (max-width: 1199.98px) {
}
@media (max-width: 991.98px) {
}
@media (max-width: 767.98px) {
}
@media (max-width: 575.98px) {
}


/**
 *  メイン
 */

#maintop{
	padding: 0;
	max-width: 100%;
	background-size: cover;
	background-position: center;
	position: relative;
    background-color: #fff;
}

#maintop h1{
    margin: 0;
    padding: 48px 0 0 0;
	text-align: left;
	font-size: 2.0rem;
	font-weight: bold;
	color: #404040;
}
@media (min-width: 576px) and (max-width: 1199.98px){
	#maintop h1{
		margin: -0.225rem 0 0 0;
	}
}
@media (max-width: 575.98px) {
	#maintop h1 {
		margin: 0;
		padding: 2.5rem 1.0rem;
		text-align: center;
		font-size: 2.0rem;
	}
}

#maintop h2{
    margin: 0;
    padding: 48px 350px 48px 16px;
	text-align: left;
    font-weight: normal;
	font-size: 1.0rem;
	color: #404040;
}
@media (min-width: 576px) and (max-width: 991.98px){
	#maintop h2{
		margin: 0;
		padding: 3.5rem 0 3.5rem 1.0rem;
		text-align: left;
		font-weight: normal;
		font-size: 1.0rem;
		color: #404040;
	}
}
@media (max-width: 575.98px) {
	#maintop h2 {
		margin: 0;
		padding: 0 12px 2.0rem;
		text-align: center;
		font-weight: normal;
		font-size: 1.0rem;
	}
}

#maintop img{
	width: 100%;
    padding: 1.5rem 0 0;
}
@media (min-width: 992px) {
    #mainvtop img{
		height: 400px;
		padding: 2.0rem 1.0rem !important;
    }
}

main section {
	margin: 0;
	padding: 80px 0;
}

section#document {
	background-color: #fffdf6;
	color: #404040;
}

.document-contents {
    max-width: 1200px;
    margin: 0 auto;
}
.document-contents .row_box {
    margin-bottom: 3rem;
}



/*.pageHeader + .section {
  margin-bottom: 0;
}
*/

.page-header {
    box-sizing: border-box;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0;
    margin-left: auto;
    margin-right: auto;
}

.page-document .page-header {
    position: relative;
}

.dl-document .tag-item a {
    position: relative;
    padding: 4px 10px 4px 12px;
}

.dl-document .tag-item a::after {
  border-bottom: 1px solid #333;
  border-right: 1px solid #333;
  transition: all .3s;
}

.dl-document .tag-item a:hover::after {
    border-bottom: 1px solid #FFF;
    border-right: 1px solid #FFF;
}

@media screen and (min-width: 992px) {
.dl-document {
    position: absolute;
    right: 0;
    top: calc(30%);
  }
}

@media (min-width: 576px) and (max-width: 991.98px){
.dl-document {
    position: absolute;
    right: 0;
    top: calc(30% - 20px);
  }
}

@media screen and (max-width: 575.98px) {
.dl-document {
    padding-bottom: 2.0rem;
    }
}

@media screen and (max-width: 575.98px) {
.dl-document ul {
    display: flex;
    justify-content: center;
    list-style: none;
    padding: 0;
    }
}

@media screen and (max-width: 768px) {
.dl-document .tag-item {
    margin: 0 10px 10px 0;
    }
}

.tag {
/*    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;*/
    display: flex;
/*  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;*/
          flex-wrap: wrap;
}

.tag-item {
    margin: 0 10px 10px 0;
    line-height: 1.2;
    font-size: 0.85rem;
}
@media screen and (max-width: 768px) {
.tag-item {
    margin: 0 10px 10px 0;
    line-height: 1.2;
    font-size: 0.75rem;
    }
}

.tag-item a {
    display: block;
    padding: 4px 10px;
    color: #333;
    border: 1px solid #333;
    /*-webkit-transition: all .3s;*/
    transition: all .3s;
}

.tag-item a.active, .tag-item a:hover {
  background-color: #5D5D5D !important;
  color: white;
  text-decoration: none;
}
.title.style01 {
  margin: 0;
  padding-bottom: 10px;
  font-weight: bold;
  line-height: 1.5;
  border-bottom: 1px solid #868686;
}
.title.style02 {
  margin: 80px 0 0 0;
  padding-bottom: 10px;
  font-weight: bold;
  line-height: 1.5;
  border-bottom: 1px solid #868686;
}
.text.style01 {
  padding: 30px 0 40px;
}

/* card */
.card {
	border-color: rgba(0,0,0,0.1);
	box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}
.card-body {
	padding: 0 1.5rem 1.5rem;
}
@media (max-width: 575.98px) {
.card-body {
	padding: 0 1rem 1rem;
    }
}
.card-title {
	color: #404040;
	text-align: center;
	font-size: 110%;
	font-weight: bold;
    padding: 1rem 0;
    margin: 0;
}
.card-text {
	color: #404040;
    font-size: 0.875rem;
}
.card-img {
	padding: 1.0rem;
}


/* bi */
.bi:before {
	font-weight: 700 !important; 
}


/* r-panel */
.r-panel {
	padding: 40px 25px 40px 25px;
	background: rgba(255,255,255,0.9);
	box-shadow: 0 4px 10px rgba(0,0,0,0.1);
	border-radius: 10px;
}
@media (max-width: 575.98px) {
.r-panel {
	padding: 25px 15px 25px 15px;
	background: rgba(255,255,255,0.9);
	box-shadow: 0 4px 10px rgba(0,0,0,0.1);
	border-radius: 10px;
    }    
}
.bc-w {
	background-color: #fff;
}
.bc-w50 {
	background-color: rgba(255,255,255,0.5);
}


/* button */
.downlordbtn {
	padding: 1.0rem 0 1.0rem 0;
    margin-bottom: 1.0rem;
}
.downlordbtn a {
    display: block;
    max-width: 18.0rem;
    margin: 0 auto;
    padding:  0.5rem 0.25rem;
    background: #e86345;
    color: #ffffff;
    text-align: center;
    border: 0.125rem solid #ffffff;
    border-radius: 50px;
    transition-duration: 0.5s;
    position: relative;
    font-size: 1.0rem;
    font-weight: bold;
}
.downlordbtn a:hover {
    background: #ffffff;
    color: #e86345;
    border: 0.125rem solid #e86345;
}

@media screen and (min-width: 768px) {
    .downlordbtn {
    display: flex;
    justify-content: center;
    }
}
@media screen and (min-width: 768px) {
    .downlordbtn a {
    width: 15.0rem;
    margin: 0 1.0rem;
    }
.downlordbtn a:last-child {
    margin: 0 1.0rem;
    }
}
.downlordbtn i {
    margin-left: 1.0rem;
    font-size: 1.125rem;
}
.downlordbtn a span {
    background: #FFFF;
    max-width: 10.0rem;
    padding:  0 0.5rem;
    right: 0;
    left: 0;
    margin: 0 auto;
    text-align: center;
    position: absolute;
    top: -15px;
    font-size: 0.75rem;
    color: #2b7fde;
    border-radius: 50px;
	border: 0.125rem solid #e86345;
}
.downlordbtn a span:after {
	content: "";
	position: absolute;
	right: 0;
	bottom: -5px;
	left: 0;
	width: 0px;
	height: 0px;
	margin: auto;
	border-style: solid;
	border-color: #fff transparent transparent transparent;
	border-width: 5px 5px 0 5px;
}
.downlordbtn a:hover > span {
	background: #e86345;
	color: #fff;
	border: 0.01rem solid #e86345;
}
.downlordbtn a:hover > span:after {
	border-color: #e86345 transparent transparent transparent;
}



/* 共通部分オーバーライド */
.contact_section {
	background: #fab42d !important;
}
.h2_title{
	margin-bottom: 0rem !important;
}
.h2_title h2.color2 {
	background: #ffffff;
	color: #404040;
}
.contact_inner{
    border: none !important;
}
.contact_section .contact_container .contact_inner .tel i {
	color: #fab42d;
}
.h2_title h2.company{
	margin-bottom: 2.0rem !important;
	background: #fab42d;
	color: #fff;
}
.pagetop_section a {
	background: #404040;
	border: 0.0625rem solid #404040;
	color: #fff;
}


/**
 *  レスポンシブ調整用
 */
@media (max-width: 1399.98px) {
}
@media (max-width: 1199.98px) {
}
@media (max-width: 991.98px) {
}
@media (max-width: 767.98px) {
section#lead a.top-navi {
	padding: 1.75rem 0.25rem;
	}
.contact_section .h2_title h2 {
	font-size: 1.125rem; 
	} 
.company_section .h2_title h2 {
	font-size: 1.125rem; 
	} 
}

@media (max-width: 575.98px) {
.contact_section .h2_title h2 {
	font-size: 1.25rem;
	border-radius: 2.5rem;
}
.company_section .h2_title h2 {
	font-size: 1.25rem;
	border-radius: 2.5rem;
	} 
}
@media screen and (min-width: 992px){
  .spbr{
    display: none;
  }
}
@media screen and (max-width: 762px){
  .pcbr{
    display: none;
  }
}
