@charset 'UTF-8';

* {
	font-family: 'Noto Sans JP', serif;
  font-weight: normal;
}

html {
  scroll-behavior: smooth;
} 

a {
	color: inherit;
  transition: .2s;
}

a:hover {
  color: #000;
  text-decoration: none;
  opacity: .6;
}

a {
  display: block;
}

p,
span,
strong {
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
}

strong {
  font-weight: bold;
}

table {
  max-width: 100%;
}

.tel {
  position: relative;
  padding-left: 1.2em;
  }
  
  .tel:before {
  content: '\f3cd';
  font-family: 'FontAwesome';
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  left: 0;
  }

@media screen and (max-width: 800px) {
  table:not(.calendarTable, .eventList) th,
  table:not(.calendarTable, .eventList) td {
    display: block;
    width: 100%;
    max-width: 100%;
    word-break: break-all;
  }

  table.calendarTable {
    display: none;
  }
}

.fas {
  display: inline;
}

#logo a,
#logo a *,
#logo a p,
#logo a span {
  /* font-family: "Noto Sans JP", sans-serif; */
}

/* ナビゲーション nav */

.g_header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.navbar li {
	display: inline-block;
}

.navbar li + li {
	margin-left: 2em;
}

.navbar li a {
	display: block;
	font-size: 1.2em;
  line-height: 1.4;
}

/* --------------------------------------------------
  ナビゲーションメニュー
-------------------------------------------------- */

.menu-level-0 > li .menu {
  position: relative;
  display: block;
  z-index: 100;
}

.menu-level-0 > ul {
  position: absolute;
  display: none;
  padding: 0;
  width: 300px;
  background-color: #fff;
  z-index: 200;
}

.menu-level-0:hover ul {
  z-index: 2;
  display: block;
  border: 1px solid #acc;
}

.menu-level-1 {
  display: block;
  padding: 8px 0;
}


@media screen and (max-width: 800px) {
  .navbar-toggle {
    background-color: #fff;
  }
  .navbar-toggle .char {
    display: none;;
  }
  .navbar {
    position: fixed;
    top: 0;
    right: 0;
  }
  .navbar ul {
    display: block;
    width: 100%;
    background-color: #fff;
  }
  .navbar ul li {
    display: block;
    padding: 1em!important;
    width: 100%;
  }
  .navbar li + li {
    margin-left: 0;
  }
  #footer .footerNavi ul li {
    display: block;
    width: 100%;
  }
  #footer .footerNavi ul li + li {
    margin-left: 0;
  }
}

/* コンテンツ */

@media screen and (max-width: 800px) {
  #topicpath {
    display: none;
  }
}

#container {
  padding: 0;
  width: 1200px;
  max-width: calc(100% - 20px);
  max-width: 100%;
}
@media screen and (max-width: 800px) {
  
}

#contents {
	clear: both;
	display: block;
	width: 100%;
}

#footer {
  margin-top: 50px;
  padding-top: 50px;
  border-top: 1px solid #aaa;  
}

/* ボタン */

.btn_area {
	margin: 50px 0 0;
	text-align: center;
}

.btn_1 {
	display: inline-block;
	padding: 1em 80px 1em 40px;
  max-width: 100%;
  font-weight: normal;
  text-align: center;
	border: 1px solid #000;
	background: url(../images/linc/btn_arrow.svg) no-repeat right 20px center;
	background-size: 20px;
  line-height: 1;
}

.btn_1:hover {
  background-color: #eee;
}

@media screen and (max-width: 800px) {
  .btn_1 {
    text-align: left;
    font-size: 1em;
  }
  #footer .btn_1 {
    padding: 1em 60px 1em 40px;
    font-size: .8em;
  }
}

/* 一覧 */

.home_post_newstext {
  margin-top: 20px;
  display: flex;
  justify-content: start;
  align-items: center;
  flex-wrap: wrap;
}

.home .section_topics .post_date {
  margin: 0 20px;
  padding-left: 20px;
  border-left: 1px solid #000;
}

.home .section_topics .post_title {
  margin-top: 0;
  margin-right: 20px;
}

.home .section_topics .btn_1 {
  margin-left: auto;
}

.home .section_topics .post_thumbnail {
  padding-top: calc(60% + 20px);
}

@media screen and (max-width: 800px) {
  .home .post_title {
    font-size: larger;
  }
  .home .section_topics .post_title {
    margin: 5px 0;
    width: 100%;
  }
  .home .section_topics .btn_1 {
    margin: 50px auto 0;
    /* width: 100%; */
  }
}

.home .section_blog {
  margin: 80px 0;
}

.home .section_event {
  margin: 80px 0;
}

.home .section_title {
	text-align: center;
	font-size: 34px;
	font-weight: bold;
}

.blog h1 {
  /* text-align: center; */
}

.blog .pageLink {
  margin-top: 50px;
}


@media screen and (max-width: 800px) {
  .section_topics .container,
  .section_event .container,
  .section_blog .container {
    padding-right: 0;
    padding-left: 0;
  }
}


/* 汎用 */

.grid {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
}

.grid-2 {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}

.grid-3 {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
}

.grid-4 {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
}

.gap-1em {
	grid-gap: 1em;
}

.gap-2em {
	grid-gap: 2em;
}

.w-1000 {
	margin: auto;
	width: 1000px;
	max-width: calc(100% - 2em);
  /* max-width: 100%; */
}

.w-1200 {
	margin: auto;
	width: 1200px;
	max-width: calc(100% - 2em);
  /* max-width: 100%; */
}

@media screen and (max-width: 800px) {
  .sp-grid {
    grid-template-columns: repeat(1, 1fr);
  }
  .sp-grid-2 {
    grid-template-columns: repeat(2, 1fr);
  }
  .sp-gap-1em {
    grid-gap: 1em;
  }
  .sp-gap-2em {
    grid-gap: 2em;
  }
}

@media screen and (max-width: 400px) {
  .ss-grid {
    grid-template-columns: repeat(1, 1fr);
  }
  .ss-gap-1em {
    grid-gap: 1em;
  }
}

/* slick */

.slick {
  position: relative;
}

ul.slick-dots {
  position: absolute;
  bottom: 25px;
  text-align: left;
}

ul.slick-dots li {
  display: inline-block;
  margin-left: 16px;
}

ul.slick-dots li.slick-active button:before {
  background-color: #333;
}

ul.slick-dots li button:before {
  width: 16px;
  height: 16px;
  font-size: 0;
  line-height: 0;
  cursor: pointer;
  background-color: #ccc;
  color: transparent;
  border: 0;
  outline: none;
  opacity: 1;
}

.slick .slick-slide img {
  width: 100%;
  height: 600px;
  object-fit: cover;
}

.slick-prev:before,
.slick-next:before {
  display: none;
}

@media screen and (max-width: 800px) {
  .slick .slick-slide img {
    height: 400px;
  }
}


.slick-slider {
  display: none;
}
.slick-slider.slick-initialized {
  display: block; /*slick-initializedが付与されたら表示*/
}

.slide_dot {
  position: relative;
}

.slide_dot .img {
  width: 100%;
  height: 600px;
}

.slide_dot .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.slide_dot .dot {
  position: absolute;
  bottom: 100px;
}

.slide_dot .dot li {
  display: inline-block;
  margin-left: 40px;
}

.slide_dot .dot li.slick-active button {
  background-color: #333;
}

.slide_dot .dot button {
  width: 16px;
  height: 16px;
  font-size: 0;
  line-height: 0;
  cursor: pointer;
  background-color: #ccc;
  color: transparent;
  border: 0;
  outline: none;
}

.slide_col3 {
  position: relative;
  margin-top: 40px;
}
.slide_col3 .post {
  display: block;
  margin: 0 auto;
  width: calc(100% - 20px);
}
.slide_col3 .prevBtn {
  position: absolute;
  top: -40px;
  left: 10px;
  width: 50px;
  height: 20px;
  background-image: url(../images/linc/slide_prev.svg);
  background-size: contain;
  background-repeat: no-repeat;
  cursor: pointer;
}
.slide_col3 .nextBtn {
  position: absolute;
  top: -40px;
  right: 10px;
  width: 50px;
  height: 20px;
  background-image: url(../images/linc/slide_next.svg);
  background-size: contain;
  background-repeat: no-repeat;
  cursor: pointer;
}

.slide_col3 .topicsDigestBox {
  margin-bottom: 0;
}

@media screen and (max-width: 800px) {
  .slide_col3 .post {
    width: 100%;
  }
}

/* 記事 */

.post_thumbnail {
	padding-top: 66.6%;
  width: 100%;
	background-size: cover;
	background-repeat: no-repeat;
	background-color: #f1f1f1;
}

a.post {
  text-decoration: none!important;
}

.post_title {
  margin-top: 10px;
  font-size: 1.2em;
  font-weight: normal;
}

.list_type_image_left .post_title,
.list_type_image_right .post_title {
  font-size: 1.8em;
  word-break: break-all;
}
@media screen and (max-width: 800px) {
  .list_type_image_left .post_title,
  .list_type_image_right .post_title {
    font-size: 1.2em;
  }
}
@media screen and (max-width: 400px) {
  .list_type_image_left .post_title,
  .list_type_image_right .post_title {
    font-size: .9em;
  }
}

.post_date {
  margin-top: 10px;
  font-size: .9em;
}

/* sp */

.sp-footer {
  display: none;
    /* padding: 100px 0; */
}

@media screen and (max-width: 800px) {
  .sp-footer {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    display: block;
    border-top: 1px solid #000;
    background-color: #fff;
  }
  .sp_footer_tel {
    border-right: 1px solid #000;
  }
  .sp_footer_tel a,
  .sp_footer_contact a {
    display: block;
    padding: 2em 10px;
    text-align: center;
  }
}

/* カスタマイズ */

.blogEntryBody h2 {
  margin-top: 2em
}

.box {
  margin: 50px 0;
}

.parts_free_type01_body_foot p:last-child {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.parts_free_type05_photo img {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc( (100% - 100vw) / 2);
}

.parts_free_type05_text {
  top: 0;
  left: 0;
  right: 50%;
  bottom: 0;
  display: flex;
  flex-flow: column;
  justify-content: space-between;
  align-items: center;
  /* background-color: transparent; */
  background-color: rgba(255, 255, 255 ,.8);
}

.parts_free_type05_text h1 {
  font-weight: bold;
}

.parts_free_type05_text * {
  /* color: #fff; */
  font-weight: normal;
}

.parts_free_type05_text a {
	display: inline-block;
  margin-top: 20px;
	padding: 1em 40px;
  max-width: 100%;
  font-weight: normal;
  text-align: center;
	border: 1px solid #000!important;
	/* background: url(../images/linc/btn_arrow_white.svg) no-repeat right 20px center; */
	background-size: 20px;
  border: 0;
  border-radius: 0;
  color: #000;
  text-decoration: none!important;
}

.parts_free_type05_text a:hover {
  /* background-color: transparent; */
  background-color: #000;
  color: #fff;
}

@media screen and (max-width: 800px) {
  .parts_free_type05_text {
    padding: 50px 0;
    right: 0;
  }
  .parts_free_type05_text * {
    /* color: #000; */
  }
  .parts_free_type05_text h1 {
    /* margin-bottom: 0; */
  }
  .parts_free_type05_text a {
    margin: 50px 0 0;
    padding-top: 0;
    padding-bottom: 0;
    /* background: url(../images/linc/btn_arrow.svg) no-repeat right 20px center; */
    background-size: 20px;
    /* color: #000; */
    /* border: 1px solid #000; */
  }
  .parts_free_type05_photo img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100vw;
    height: 100%;
    object-fit: cover;
  }
}
/*===========================================================

2022.05.20 css Hack by D-gripSystem

==========================================================*/
a {
  display: inline-block;
}

.navbar li a {
	display: block;
	font-size: 1em;
  line-height: 1.4;
}

.navbar-default .navbar-nav>li>a{
  color:#f29438
}
.g_header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top:30px;

}
#footer {
  padding-top: 0;
  margin-top:0;
}


/*toppage*/
h1 .ttl_en,
a .ttl_en,
h2 .ttl_en{
  font-size: 24px;
  color:#ffffff;
  }
h1 .ttl_ja,
h2 .ttl_ja,
a .ttl_ja{
font-weight: normal;
font-size: 16px;
color:#000000;
}


.top_menu_btn span{
  display: block;
  padding-left:0;
}

.menu_list{
  display: flex;
  justify-content: space-between;
}
.list_left{
  flex-basis:50%;
}

.menu_list ul{
  margin-top: 30px;
}
.menu_list ul li{
  line-height:3;
}

.top_question,
.wide100{
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  text-align: center;
  padding:10px 0;
  background-color: #f29438;
  margin-top: 0px;
}
.top_question{
  padding:30px 0 50px;
  margin-top:80px;
}
.wide100 .parts_img_type23_box{
  text-align: left;
}

.bg_orange{
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
 /* text-align: center;*/
  padding:30px 0 10px;
  background-color: #fdeee6;
  margin-top: 80px;
}

.bottom_logo{
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.logo_img{
  margin-right:20px;
}

.btn_1:hover {
  background-color: #f29438;
  border:1px solid#f29438;
  color:#fff;
}

@media screen and (max-width: 768px) {

  .menu_list{
    display: block;
    margin-top: 50px;
  }
  .menu_list ul{
    margin-top: 10px;
  }
  .menu_list ul li{
    line-height:2;
  }
  .bottom_logo{
    display: block;
    text-align: center;
  }
  .logo_img{
    margin-right:auto;
    margin-bottom: 20px;
  }
}



/*=======取り扱い機種=======*/

#cms-editor-minieditor-sin165336918141143500{
  text-align:left;
}
.bg_txt{
  padding:30px 20px;
  background-color: rgba(255,255,255,0.7);
}

/*=======よくある質問=======*/

