@charset "utf-8";
/* CSS Document */
/*@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);*/

@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@100;300;400;500;700;800;900&display=swap');

body {
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 400;
  color: #2A3132;
}
img {
  image-rendering: -webkit-optimize-contrast;
}
a {
  color: #0071be;
	text-decoration: none;
}
a:hover {
  text-decoration: none;
  color: #D9A300;
  transition: 0.2s;
}
.flex {
  display: flex;
}
.flex-wrap {
  flex-wrap: wrap;
}
.u-flex-column{
	flex-direction: column;
}
.u-align-items-center{
	align-items: center;
}
.u-justify-content-center{
	justify-content: center;
}
.u-flex-wrap{
	flex-wrap: wrap;
}

.bg-brown {
  background-color: #402000;
}
.navbar {}

/*ナビ*/
nav{
	width: 100%;
	
}
nav ul{
	list-style: none;
	display: flex;
	justify-content: space-around;
	margin-bottom: 0;
	padding-left: 80px;
}

nav ul ul{
	display: block;
}


nav ul li{
	position: relative;
}

nav ul li a{
	display: block;
	text-decoration: none;
	color: #999;
	/*padding:20px 35px;*/
	transition:all .3s;
}
	nav ul li li a{
	padding:10px 5px;
}

nav ul li a:hover{
		
}
	nav ul li.has-child::before{
	content:'';
	position: absolute;
	right:-15px;
	top:16px;
	width:6px;
	height:6px;
	border-top: 2px solid #999;
    border-right:2px solid #999;
    transform: rotate(135deg);
}
	
	nav li.has-child ul{
    
	position: absolute;
	left:0;
	top:62px;
	z-index: 4;
   
	background: rgba(255,255,255,0.8);
	width:180px;
    
	visibility: hidden;
	opacity: 0;
    
	transition: all .3s;
		padding-left: 0;
}
	/*hoverしたら表示*/
nav li.has-child:hover > ul,
nav li.has-child ul li:hover > ul,
nav li.has-child:active > ul,
nav li.has-child ul li:active > ul{
  visibility: visible;
  opacity: 1;
}

/*ナビゲーションaタグの形状*/
nav li.has-child ul li a{
	color: #222;
	border-bottom:solid 1px rgba(255,255,255,0.6);
}

nav li.has-child ul li:last-child > a{
 border-bottom:none;
 }

nav li.has-child ul li a:hover,
nav li.has-child ul li a:active{
	background:#ccc;
	color: #222;
}


@media screen and (max-width: 992px) {
  #Navbar .container {
    padding-left: 0;
    padding-right: 0;
    width: 98%;
  }
  body .navbar .navbar-nav a.nav-link {
    font-size: 0.9em;
  }
	nav ul{
	
	padding-left: 40px;
}
}

@media (max-width: 767px) {
	.header-logo-sp h1{
		padding-top: 10px;
	}
}

@media screen and (min-width: 768px) {
  .navi_01,.c-navi-wrap {
    background-color: #fff;
    padding: 10px 2em;
    border-radius: 50vh;
    margin-top: 30px;
    /*justify-content: space-between;*/
    align-items: center;
    max-width: 1140px;
    width: 100%;
    display: flex;
  }
	

	
	
  .navi_02 {
    background-color: #DD261D;
    padding: 10px 2em;
    border-radius: 40px;
    margin-top: 30px;
    justify-content: center;
    align-items: center;
    max-width: 165px;
    width: 20%;
    height: 81.14px;
    display: flex;
  }
  .navbar-dark .navbar-nav .navi_02 a.nav-link {
    color: #fff;
  }
  .navbar {
    padding: 0;
  }
  .navbar-dark .navbar-nav .nav-link {
    color: #222;
  }
  .navbar-expand-md .navbar-nav {
    justify-content: space-between;
    align-items: center;
  }
  .nav-justified .nav-item {
    flex-basis: auto;
  }
  .navbar .navbar-nav a.nav-link {
    font-size: 1em;
    padding-left: 0;
    padding-right: 0;
    display: block;
    color: #222;
  }
  .navbar .navbar-nav a.nav-link:hover {
    color: #D8A300;
  }
  
}
@keyframes mycolor {
  0% {
    color: #FFDC73;
  }
  50% {
    color: #ffa500;
    ;
  }
  100% {
    color: #FFDC73;
  }
}
/*
@keyframes pulse{
    0%{
        transform: scale(1);
    }
    50%{
        transform: scale(1.1);
    }
    100%{
        transform: scale(1);
    }
}
@keyframes bounce{
    0%{
        top: 0;
    }
    50%{
        top: -3px;
    }
    100%{
        top: 0;
    }
}
*/
.nopc {
  display: none;
}
.nosp {
  display: block;
}




/*トップメインビジュアル
--------------------------------------------*/
.main-v {
  background: url("../asset/img/index/main-visual_sp.jpg") no-repeat center top;
  /*height: 965px;*/
  position: relative;
  background-size: cover;
  height: 760px;
  /*background-color: rgba(0, 0, 0, 0.3); */
  background-blend-mode: multiply;
}

.main-v .inner {
  max-width: 1140px;
  width: 95%;
	height: calc(100% - 150px);
  margin: 0 auto;
	display: flex;
	align-items: center;
}
.main-v .inner .catch {
 
  color: #fff;
  padding-left: 1em;
}
.main-v .inner .catch p {
  font-size: 1.5em;
}
.main-v .inner .catch h2 {
  font-size: 3em;
  /*padding: 0 0 0.5em;*/
	padding: 0 0.5em 0 0;
	font-family: "M PLUS Rounded 1c",sans-serif;
	font-weight: 500;
	color: #222;
	background-color: rgba(255,255,255,0.6);
}
.main-v .inner .catch h3 {
  font-size: 1.5em;
}
.main-v .main-bottom {
  position: absolute;
  bottom: 0;
  width: 100%;
  font-size: 0;
  line-height: 0;
}
.main-v .main-bottom img {
  font-size: 0;
  vertical-align: top !important;
  display: block;
  margin: 0;
  padding: 0;
  line-height: 0;
}
.header-logo-sp {
  padding-left: 0.5em;
  width: 80%;
}
@media screen and (min-width: 1921px) {
  .main-v .main-bottom img {
    width: 100%;
  }
}
@media screen and (max-width: 992px) {
  .lg {
    display: none;
  }
  .main-v {
    height: calc(100vw * 0.6);
    background-size: cover;
	  background-position: center center;
  }
  /*.main-v .inner .catch {
    padding-top: calc(100vw * 0.1);
  }*/
  /*.header-logo {
    width: 40%;
  }*/
  .header-logo img {
    width: 100%;
  }
  .navi_02 {
    height: 76.9px;
  }
  .main-v .inner .catch p {
    font-size: 1.2em;
  }
  .main-v .inner .catch h2 {
    font-size: 2.4em;
  }
  .main-v .inner .catch h3 {
    font-size: 1.2em;
  }
}
@media screen and (max-width: 576px) {
	.main-v {
		background-position: right top;
		height: 500px;
	}
  .main-v .inner .catch {
    padding-top: 0;
  }
  .main-v .inner .catch p {
    font-size: 0.9em;
  }
  .main-v .inner .catch h2 {
    font-size: 1.6em;
	  display: inline;
	  line-height: 1.8;
  }
  .main-v .inner .catch h3 {
    font-size: 0.9em;
  }
  .header-menu-box {
    display: none !important;
  }
  .navbar {
    padding: 0.5rem 1rem;
  }
  .nopc {
    display: block;
  }
  .nosp {
    display: none;
  }
}
@media (min-width: 1200px) {
  .main-v {
    
    height: calc(100vw * 0.4947);
    background: url("../asset/img/index/main-visual.jpg") no-repeat center top;
    position: relative;
    background-size: cover;
	/*background-color: rgba(0, 0, 0, 0.3); */
  background-blend-mode: multiply;
  }
  .main-v .inner {
    display: flex;
    align-items: center;
    height: calc(100vw * 0.4947 - 150px);
  }
  .main-v .inner .catch {
    padding-top: 0;
  }
}


@media (min-width: 768px) {
  .container {
    max-width: 1140px;
    width: 90%;
    padding-left: 0;
    padding-right: 0;
  }
}


.jumbotron {
  background: url(../img/index/mv_bg.jpg) no-repeat center top;
  /*height: 615px;*/
  height: auto;
}
.align-c {
  text-align: center;
}
.alpha:hover {
  opacity: 0.6;
  transition: 0.2s;
}
.u-max-full-width {
  max-width: 100%;
}
.mb0 {
  margin-bottom: 0;
}
.clearfix::after {
   content: "";
   display: block;
   clear: both;
}

/*トップページ
-------------------------------------*/
h2.c-ttl {
  color: #222222;
  font-size: 2.25em;
  display: inline-block;
  position: relative;
  margin-bottom: 1em;
  text-align: center;
}
h2.c-ttl .u-en{
	display: block;
	font-size: 1rem;
	color: #f39800;
	font-weight: normal;
}
h2.c-ttl::before {
  position: absolute;
  content: url("../asset/img/common/h-ico-l.png");
  bottom: 0;
  left: -70px;
}
h2.c-ttl::after {
  position: absolute;
  content: url(../asset/img/common/h-ico-r.png);
  bottom: 0;
  right: -70px;
}
h2.c-ttl .byellow {
  color: #D8A300;
}
h2.c-ttl .byellow.fu-y {
  background-size: 7px 3px;
  background-image: url(../img/index/fu-y.png);
  background-position: left bottom;
  background-repeat: repeat-x;
}
h2.c-ttl .fu-tq {
  background-size: 7px 3px;
  background-image: url(../img/index/fu-tq.png);
  background-position: left bottom;
  background-repeat: repeat-x;
}
@media (max-width: 768px) {
  h2.c-ttl {
    font-size: 1.75em;
  }
}
@media (max-width: 576px) {
  h2.c-ttl {
    font-size: 1.25em;
  }
  h2.c-ttl::before {
    position: absolute;
    content: "";
    background-image: url("../asset/img/common/h-ico-l.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 47.1px;
    height: 48.8px;
    bottom: 0;
    left: -50px;
  }
  h2.c-ttl::after {
    position: absolute;
    content: "";
    background-image: url(../asset/img/common/h-ico-r.png);
    background-repeat: no-repeat;
    background-size: contain;
     width: 47.1px;
    height: 48.8px;
    bottom: 0;
    right: -50px;
  }
}
/*歴史*/
.c-tophistory {
  background-color: #ffffff;
}
.c-tophistory .c-photo img,
.c-shisetsu .c-photo img{
	border: 10px solid #fff;
	border-radius: 8px;
	box-shadow: 0 3px 8px rgba(0,0,0,0.3);
}
.c-tophistory .c-disc{
	line-height: 1.8;
	
}
.about-image-wrap {
	width: 100%;
	max-width: 525px;
	border: 10px solid #fff;
	border-radius: 8px;
	box-shadow: 0 3px 8px rgba(0, 0, 0, 0.3);
	aspect-ratio: 100 / 56;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 1em;
	margin-left: auto;
	margin-right: auto;
}
.about-image-wrap img.about-image {
	width: 50%;
	border: none;
	box-shadow: none;
	margin-bottom: 0 !important;
}

.c-btn a{
	display: inline-block;
	padding: 5px 1.5em;
	border: 1px solid #0071be;
	border-radius: 50vh;
	color: #0071be;
	box-shadow: 0 3px 8px rgba(0,0,0,0.3);
	
	
}

.c-btn a:hover{
	background-color:#0071be;
	color: #fff;
	transition: all 0.3s;
}
.u-ptb80{
	padding-top: 80px;
	padding-bottom: 80px;
}

/*コンテンツ*/
.c-contents{
	background-color: #daf3ff;
}

.u-blue{
	color: #0071be;
}

.c-contents .c-cont-box{
	background-color: #fff;
	border-radius: 10px;
	max-width: 525px;
	width: 100%;
	box-shadow: 0 3px 8px rgba(0,0,0,0.3);
	padding-bottom: 1.5em;
	margin: 0 auto 50px;
}
.c-contents .c-cont-box img{
	border-radius: 10px 10px 0 0;
}
.c-contents .c-cont-box h3{
	padding: 1rem 0;
	margin-bottom: 0;
}
.c-contents .c-cont-box p{
	width: 80%;
	margin: 0 auto 1em;
}
.c-blue-btn{
	width: 280px;
	margin: 0 auto;
}
.c-blue-btn a{
	display: block;
	background-color: #0071be;
	border: 1px solid #0071be;
	color: #fff;
	padding: 0.8em 2em;
	border-radius: 10px;
	text-align: center;
}
.c-blue-btn a:hover{
	background-color: #fff;
	border: 1px solid #0071be;
	color: #0071be;
	transition: all 0.3s;
	box-shadow: 0 3px 8px rgba(0,0,0,0.3);
}
.c-contents .c-btn-wrap{
	padding: 0 15px;
}
.c-contents .c-btn a{
	width: 100%;
	display: block;
	text-align: center;
	background-color: #fff;
	padding: 2em 1em;
	border-radius: 10px;
	font-size: 1.13em;
	font-weight: bold;
	
}

.c-contents .c-btn a:hover{
	background-color: #0071be;
	color: #fff;
	transition: all 0.3s;
}
@media (max-width: 768px) {
.c-contents .c-cont-box h3{
		font-size: 1.25em;
	}
}
@media (max-width: 767px) {
  .c-contents .c-btn-wrap{
	padding: 0;
}
	.c-tophistory .c-photo img{
		margin-bottom: 1em;
	}
	
}


/*新着情報*/
.c-news-wrap{
	/*background: url("../asset/img/index/cont-low.png")no-repeat center top,#fff;*/
	background-color: #f6f6f6;
	
}

.c-news-wrap .row{
	margin: 0;
}

.c-news-wrap .c-news-box{
	max-width: 360px;
	height: 100%;
	margin: 0 auto;
	box-shadow: 0 3px 8px rgba(0,0,0,0.3);
	border-radius: 10px;
	padding-bottom: 1em;
}
.c-news-wrap .c-news-box .c-photo img{
	border-radius: 10px 10px 0 0;
	width: 100%;
	height: auto;
}
.c-news-wrap .c-news-box p{
	padding: 1em 1em 0.5em;
	margin: 0;
}
.c-news-wrap .c-news-box p a{
	color: #222;
}
.c-news-wrap .c-news-box p a:hover{
	color: #0071be;
}

.c-news-wrap .c-news-box p span{
	display: block;
	text-align: right;
}
.c-news-wrap .c-news-box .u-blue-bg{
	display: inline-block;
	background-color: #0071be;
	color: #fff;
	font-size: 0.85em;
	margin-left: 1em;
}
.c-news-wrap .c-news-box .u-blue-bg a{
	color: #fff;
}

/*関連リンク*/
.c-links-wrap .u-wh,
.c-links-wrap span.u-wh{
	color: #ffffff;
}

.c-links-wrap{
	background: url("../asset/img/index/link-bg.jpg") no-repeat center top -350px;
	background-color: rgba(0, 0, 0, 0.3); 
  background-blend-mode: multiply;
}

/*マップ*/

.c-map-wrap {
  background-color: #eee;
}
.c-map-wrap .container {
  /*padding: 0;*/
}
.c-map-wrap .gmap {
  font-size: 0;
}
@media screen and (max-width: 576px) {
  .spw60 {
    width: 60%;
  }
  .spw70 {
    width: 70%;
  }
  .spw100 {
    width: 100%;
  }
}
.bg-yallow {
  background-color: #FFF9E6;
}
/*フッター*/
.bg-footer {
  background: url("../asset/img/common/foot-bg.jpg") no-repeat center top;
  background-size: cover;
  background-color: rgba(0, 0, 0, 0.3); 
  background-blend-mode: multiply;
}
footer .foot-add-wrap {
  background-color: rgba(255, 255, 255, 0.9);
  text-align: center;
  padding: 4em 4em 3em;
}
footer p a {
  color: #222;
  font-size: 1em;
}
footer p{
		font-size: 1em;
	}
footer ul {
	margin: 0;
padding: 0;}
footer ul li{
	min-width: 130px;
	
	list-style: none;
	position: relative;
	margin-bottom: 14px;
}
footer ul li::after{
	content: "|";
	position: absolute;
	right:0;
	top:0;
}
footer ul li:last-child::after{
	content: "";
}

footer ul li a{
	color: #222;
}
@media screen and (max-width: 576px) {
	footer ul li{
		position: static;
		text-align: left;
		border-bottom: 1px dotted #ccc;
		padding: 5px 0;
	}
	
  footer .foot-add-wrap {
    padding: 1.5em 1em;
  }
  footer .foot-add-wrap p {
    font-size: 0.85em;
  }
  .footer-copyright {
    height: auto;
  }
}

@media screen and (min-width: 1140px) {
	footer p{
		font-size: 1.13em;
	}
	footer p a {
  color: #222;
  font-size: 1.13em;
}
	
}

/*スライダー*/
.slider {
  width: 100%;
  /*height: 500px;*/
  margin: auto;
  opacity: 0;
  transition: opacity .3s linear;
}
.slider.slick-initialized {
  opacity: 1;
}
.slider li {
  margin: 0 50px;
}
.slider img {
  width: 1000px;
  /*height: 500px;*/
  margin-left: auto;
  margin-right: auto;
  /*object-fit: cover;*/
}
/*.slick-arrow:before{
	content:""!important;
}*/
.slick-arrow:before {
  content: "" !important;
  width: 100% !important;
  height: 100% !important;
  position: absolute;
  top: 0;
  left: 0;
}
.slick-next, .slick-prev {
  width: 40px;
  height: 39px;
}
.slick-next:before {
  background: url(../img/index/arrow_r.png) !important;
  background-size: 40px !important;
}
.slick-prev:before {
  background: url(../img/index/arrow_l.png) !important;
  background-size: 40px !important;
}
/*-----------矢印表示----------*/
.slick-next {
  right: 20% !important;
}
.slick-prev {
  left: 20% !important;
}
.slick-arrow {
  z-index: 2 !important;
}
@media screen and (max-width: 1800px) {
  .slick-next, .slick-prev {
    display: none !important;
  }
}
@media screen and (max-width: 992px) {
  .jumbotron {
    /*height: calc(100vw * 0.56);*/
    padding: 1.5em 0 0;
    padding-top: 2em;
    padding-bottom: 2em;
  }
  .slider {
    width: 100%;
    /*height: 50vh;*/
    margin: auto;
    padding-top: 1em;
    padding-bottom: 1.5em;
  }
  .slider img {
    width: 100%;
    height: auto;
  }
}
@media screen and (max-width: 576px) {
  .jumbotron {
    /*height: 30vh;*/
    padding: 5px 0 0;
    /*padding-top: 1.5em;
    padding-bottom: 1.5em;*/
  }
}
/*セカンドページ 共通
-----------------------------------------------*/
.fv {
  background: url("../asset/img/common/fv.jpg") no-repeat center top;
  background-size: cover;
  height: 490px;
	background-color: rgba(0, 0, 0, 0.3); 
  background-blend-mode: multiply;
}
.fv .inner {
  max-width: 1140px;
  width: 95%;
  margin: 0 auto;
}
.fv .inner .catch {
  padding-top: 80px;
  color: #fff;
  padding-left: 1em;
}
.fv .inner .catch p {
  font-size: 1.5em;
}
.fv .inner .catch h2 {
  font-size: 3em;
}

.c-blue {
  color: #00A9B8;
}
.f18 {
  font-size: 1.13em;
}
.u-mb-5{
	margin-bottom: 3rem;
}

.u-mb-4{
	margin-bottom: 1.5rem;
}
.u-mb-3{
	margin-bottom: 1rem;
}
.u-mb-0{
	margin-bottom: 0;
}
.u-py-5{
	padding-top:3rem;
	padding-bottom: 3rem;
}
.u-py-4{
	padding-top:1.5rem;
	padding-bottom: 1.5rem;
}
.u-pt-5{
	padding-top: 3rem;
}
.u-pt-4{
	padding-top: 1.5rem;
}
.u-pt-3{
	padding-top: 1rem;
}

.u-pb-2{
	padding-bottom: 0.5rem;
}
.u-pb-3{
	padding-bottom: 1rem;
}
.u-ms-0{
	margin-left: 0;
}
.u-ps-md-4{
	padding-left: auto;
}

@media (max-width: 1200px) {
 
}
@media (max-width: 767.98px) {
  .fv {
    height: calc(100vw * 0.45);
  }
  .fv .inner {
    display: flex;
    align-items: center;
  }
  .fv .inner .catch {
    padding-top: 5px;
  }
  .fv .inner .catch p {
    font-size: 1.2em;
  }
  .fv .inner .catch h2 {
    font-size: 2.4em;
  }
}
@media (max-width: 576px) {
  .fv {
    height: calc(100vw * 0.5);
  }
  .fv .inner .catch p {
    font-size: 0.9em;
	  margin-bottom: 0.5rem;
  }
  .fv .inner .catch h2 {
    font-size: 1.5em;
  }
}
@media (min-width: 576px) {
	.u-d-sm-flex{
		display: flex;
	}
}

@media (min-width: 768px) {
	.u-mb-md-5{
		margin-bottom: 3rem;
	}
	.u-mb-md-0{
		margin-bottom: 0;
	}
	.u-ps-md-3{
		padding-left: 1rem;
	}
	.u-ms-md-4{
		margin-left: 1.5rem;
	}
	.u-flex-md-row{
		flex-direction: row;
	}
	.u-float-md-start{
		float: left;
	}
	.u-float-md-end{
		float: right;
	}
	.u-ps-md-4{
	padding-left: 1.5rem;
}
	.u-px-md-4{
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}
}


/*法人概要
------------------------------------------*/
.u-mb30{
	margin-bottom: 30px;
}
table.u-tb01{
	width: 100%;
	border-top:1px solid #ccc;
	border-right:1px solid #ccc;
	margin-bottom: 30px;
}
table.u-tb01 th{
		padding: 1em;
		font-size: 1em;
	border-left: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	background-color: #f6f6f6;
	text-align: center;
	width: 25%;
	}
table.u-tb01 td{
		padding: 1em;
		font-size: 1em;
	border-left: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	
	
	}

table.u-tb02{
	width: 75%;
	border-top:1px solid #ccc;
	border-right:1px solid #ccc;
	margin-bottom: 30px;
	margin-left: auto;
	margin-right: auto;
}
table.u-tb02 th{
	padding: 1em;
	font-size: 1em;
	border-left: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	background-color: #f6f6f6;
	text-align: center;
}
table.u-tb02 td{
	padding: 1em;
	font-size: 1em;
	border-left: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}
table.u-tb02 tr > :first-child {
	width: 50%;
}
@media (max-width: 567px) {
	table.u-tb02 {
		width: 100%;
	}
	table.u-tb02 th,
	table.u-tb02 td,
	table.u-tb01 th,
	table.u-tb01 td{
		font-size: 0.85em;
	}
	.u-mb30{
		margin-bottom: 0;
	}
	.u-ptb80{
		padding: 30px 0;
	}
}

@media (min-width: 768px) {
	table.u-tb02,
	table.u-tb01{
		margin-bottom: 80px;
	}
	table.u-tb02 th,
	table.u-tb02 td,
	table.u-tb01 th,
	table.u-tb01 td{
		font-size: 1.13em;
	}
}

/*アクセス
--------------------------------------*/

@media screen and (max-width: 992px) {
  .gmap {
    height: 0;
    overflow: hidden;
    padding-bottom: 56.25%;
    position: relative;
  }
  .gmap iframe {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
  }
}

@media screen and (max-width: 576px) {
  .f18 {
    font-size: 1em;
  }

}

.u-brown {
  color: #7F5939;
}

/*常徳会について
------------------------------------------*/
.c-spirit .c-photo img{
	border: 10px solid #fff;
	border-radius: 8px;
	box-shadow: 0 3px 8px rgba(0,0,0,0.3);
}


.u-pl-2{
	padding-left: 2em;
}
.u-pr-2{
	padding-right: 2em;
}

@media screen and (max-width: 992px) {
	.c-spirit .c-photo {
		width: calc(100vw * 0.5);
	}
	.c-spirit .c-photo img{
		width: 100%;
	}
	.c-spirit .c-disc{
		padding: 0 1em;
	}
}

@media screen and (max-width: 767px) {
	.c-spirit .float-left,
	.c-spirit .float-right{
		float: none !important;
	}
	.c-spirit .c-photo {
		width: 100%;
	}
	
	.c-spirit .c-photo img{
		max-width: 100%;
		margin: 0 auto;
	}
	.u-pl-2{
	padding-left: 0;
}
.u-pr-2{
	padding-right: 0;
}
}

@media screen and (min-width: 993px) {
	.u-w380{
	max-width: 380px;
}
}

/*常徳会の歴史
-------------------------------------------*/
.c-history table.u-tb01 th{
	padding: 1rem;
}
@media (max-width: 992px) {
	.c-history table.u-tb01 th{
		white-space: nowrap;
	}
}

/*常徳会の理念
----------------------------------------*/
.c-rinen h2.c-title,
.c-iinkai h2.c-title,
.c-privacy h2.c-title{
	background: linear-gradient(to right, #0071be 70%, #bce4ff);
	text-align: center;
	color: #fff;
	font-size: 1.25em;
	padding: 1rem;
}
.c-rinen h3{
	font-size: 1.375em;
	border-bottom: 1px dotted #0071be;
	padding-bottom: 0.5rem;
	
}

.c-rinen .c-disc{
		font-size: 1em;
	line-height: 1.6;
	}

.c-rinen .u-waku{
	display: inline-block;
	border: 1px solid #ccc;
	border-radius: 8px;
	padding: 3px 1em;
	margin-right: 1.5em;
	align-self: flex-start;
}
.u-indent{
	text-indent: 1em;
}

@media (max-width: 767px) {
	.c-rinen h3{
		font-size: 1.13em;
	}
	.c-rinen .u-waku{
	width: 30%;
		justify-content: center;
		margin-bottom: 0.5rem;
	}
}

@media (min-width: 992px) {
	.c-rinen h2.c-title,
	.c-iinkai h2.c-title,
	.c-privacy h2.c-title{
		font-size: 1.5em;
	}
	.c-rinen .c-disc{
		font-size: 1.25em;
	}
}


/*興正学園の施設
---------------------------------------*/
.c-shisetsu h3{
	border-left: 8px solid #0071be;
	font-size: 1.13em;
	padding-left: 10px;
	color: #222;
}

.c-shisetsu .c-disc{
	border-bottom: 1px dotted #0071be;
	padding-bottom: 0.5em;
}
.c-shisetsu .c-disc p{
	margin-bottom: 0;
}
.c-shisetsu .c-disc span{
	display: inline-block;
	color: #0071be;
	width: 25%;
	font-weight: bold;
}

.c-shisetsu .c-btn a{
	padding: 10px 2em;
}

.c-shisetsu table{
	width: 100%;
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
}

.c-shisetsu table th{
	background-color: #f6f6f6;
	text-align: center;
	padding: 1em;
	border-left: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	font-weight: normal;
}
.c-shisetsu table td{
	
	text-align: center;
	padding: 1em;
	border-left: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}
.c-shisetsu table th.u-midashi{
	color: #0071be;
	background-color: #e6f5ff;
	font-weight: bold;
	font-size: 1.13em;
}
.c-shisetsu .u-photo-teyoru{
	width: 100%;
	border: 10px solid #fff;
	border-radius: 8px;
	box-shadow: 0 3px 8px rgba(0,0,0,0.3);
	aspect-ratio: 100 / 56; 
}

@media (min-width: 768px) {
	.c-shisetsu h3{
	font-size: 1.5em;
}
	.c-shisetsu .c-disc{
		font-size: 1.25em;
	}
}


/*委員会制度
-----------------------------------------*/
.c-iinkai h2.c-title{
	text-align: left;
}
.c-iinkai .c-disc,
.c-privacy .c-disc{
	font-size: 1.13em;
	line-height: 1.6;
}

ol.u-list-st li {
  position: relative;
  list-style-type: none;
}

ol.u-list-st li:before {
  position: absolute;
  right: calc(100% + 0.5rem);  /* 0.5remは連番とテキストとの余白 */
  content: "(" counter(list-item) ")";
}

ol.u-list-st li td{
	padding-right: 1em;
}

ol.u-list-st li td:nth-child(1){
	width: 12em;
	padding-right: 0;
}

.c-iinkai dt{
	font-weight: normal;
	white-space: nowrap;
}
.c-iinkai dd span{
	display: inline-block;
	padding-right: 1em;
}

dl.flex.dl-div {
	display: block;
}
dl.flex.dl-div div {
	display: flex;
	padding-left: 2rem;
}

.flex-end {
	display: flex;
	justify-content: flex-end;
}
.c-iinkai .c-btn a {
	padding: 10px 2em;
}
@media (max-width: 768px) {
	.c-iinkai .c-disc,
	.c-privacy .c-disc{
		font-size: 1em;
	}
}
@media (max-width: 767px) {
	.c-iinkai .flex{
		display: block;
	}
}

@media (min-width: 768px) {
	.c-iinkai .u-dlst dt{
		width: 11em;
	}
	dl.flex.dl-div div dt {
		width: 6em;
	}
}

/*決算報告
--------------------------------------*/
.c-bg-sky {
	background-color: #daf3ff;
}

.c-kessan .c-bg-sky,
.c-tender .c-bg-sky{
	max-width: 960px;
	width: 100%;
	margin: 0 auto 30px;
	border-radius: 10px;
	height: 200px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 1em;
	 
}

.c-kessan .c-blue-btn{
	width: 300px;
}
.c-kessan .c-blue-btn a{
	padding: 1em 2em;
}


.c-kessan .c-wh-btn{
	max-width: 460px;
	width: 100%;
	border-radius: 10px;
	box-shadow: 0 3px 8px rgba(0,0,0,0.3);
	margin-left: auto;
	margin-right: auto;
	height: 60px;
	display: flex;
	align-items: center;
	background: url("../asset/img/common/ico-pdf.png") no-repeat left 1em top 8px,#fff;
}

.c-kessan .c-wh-btn a{
	color: #222;
	padding-left: 70px;
	display: block;
	width: 100%;
	height: 100%;
	font-weight: bold;
	font-size: 1em;
	
	
}
.c-kessan .c-wh-btn:hover{
	background-color: #0071be;
	transition: all 0.3s;
}
.c-kessan .c-wh-btn a:hover{
	color: #fff;
}

@media (min-width: 768px) {
	.c-kessan .c-bg-sky{
		margin: 0 auto 80px;
	}
	.c-kessan .c-wh-btn a{
		font-size: 1.13em;
	}
}

/*入札情報
--------------------------------------*/
.c-tender .c-wh-btn{
	max-width: 460px;
	width: 100%;
	border-radius: 10px;
	box-shadow: 0 3px 8px rgba(0,0,0,0.3);
	margin-left: auto;
	margin-right: auto;
	padding: 1em;
	display: flex;
	align-items: center;
	background: url("../asset/img/common/ico-pdf.png") no-repeat left 1em center,#fff;
}

.c-tender .c-wh-btn a{
	color: #222;
	padding-left: 60px;
	display: block;
	width: 100%;
	height: 100%;
	font-size: 1em;
	font-weight: none;	
	
}
.c-tender .c-wh-btn:hover{
	background-color: #0071be;
	transition: all 0.3s;
	
}
.c-tender .c-wh-btn a:hover{
	color: #fff;
}
.c-tender .c-wh-btn a.u-nolink{
	cursor: none;
}



/*プライバシーポリシー
-------------------------------------*/
.c-privacy h2.c-title{
	text-align: left;
	margin-bottom: 1rem;
}

.c-privacy p{
	margin-bottom: 2rem;
}
.c-privacy p + p{
	margin-top: -2rem;
}

.c-privacy .u-date{
	text-align: right;
	margin-bottom: 1em;
}

@media (min-width: 768px) {
	.c-privacy p{
	margin-bottom: 3rem;
}
.c-privacy p + p{
	margin-top: -3rem;
}
}

/*お知らせ
--------------------------------------*/
.c-news-list a.category-link{
	border: 1px solid #0071be;
	padding: 3px 1.5em;
	display: inline-block;
	text-decoration: none;
	color: #0071be;
	border-radius: 8px;
	
}
.c-news-list a.category-link:hover{
	color: #D9A300;
}


.c-news-list ul{
	padding-left:0;
}

.c-news-list ul li{
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 3rem;
}

.c-news-list ul#news li{
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 3rem;
	border-bottom: 1px dashed #ccc;
}
.c-news-list ul li h3{
	width: 50%;
	
}
.c-news-list ul li h4{
	width: 50%;
	font-weight: normal;
	font-size: 1rem;
	margin-bottom: 0;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	
}

.c-news-list ul li h4 .u-blue-bg a{
	display: inline-block;
	background-color:  #0071be;
	color: #fff;
	font-size: 0.9em;
	padding: 2px;
	margin-left: 1rem;
}

.c-news-list ul li p {
	width: 100%;
	clear: both;
	text-align: left;
/*	border-top: 2px solid #0071be;*/
	padding-top: 1em;
}
.c-news-list ul li .content-wrap {
	width: 100%;
	border-top: 2px solid #0071be;
}
.c-news-list .nav-links{
	
	width: 100%;
	display:flex;
	justify-content: center;
}

.c-news-list .nav-links .page-numbers{
	border: 1px solid #0071be;
	padding: 0 0.5em;
	margin: 0 5px
}


.c-news-list .nav-previous{
	display: flex;
	justify-content: flex-start;
	width: 50%;
}


.c-news-list .nav-previous a span{
	display: block;
	text-align: left;
}


.c-news-list .nav-next{
	display: flex;
	justify-content: flex-end;
	width: 50%;
	
}
.c-news-list .nav-next a span{
	display: block;
	text-align: right;
}

@media (max-width: 576px) {
	.c-news-list ul#news li{
		flex-direction: column;
	}
	.c-news-list ul li h3,
	.c-news-list ul li h4{
	width: 100%;
	
}
}

@media (min-width: 768px) {
	.c-news-list ul li h4,
	.c-news-list ul li p{
		font-size: 1.13rem;
	}
	
}



/*お問い合わせ
---------------------------------------*/
.c-inq .c-bg-sky{
	padding: 1.5em;
	border-radius: 10px;
	margin-bottom: 30px;
}
.c-inq h3 {
  color: #222222;
  font-size: 1.5em;
}
.c-inq .hissu {
  background-color: #cc0000;
  color: #fff;
  font-size: 0.8em;
  padding: 0 3px;
  border-radius: 3px;
  font-weight: normal;
}
.c-inq table.u-tb-form {
  margin-top: 1em;
  margin-bottom: 1em;
  width: 100%;
}
.c-inq table.u-tb-form th {
  vertical-align: top;
  font-size: 1.13em;
  padding: 1em;
  width: 25%;
}
.c-inq table.u-tb-form td {
  font-size: 1.13em;
  padding: 1em;
  width: 75%;
}
.c-inq table.u-tb-form tr{
	border-bottom: 1px dotted #ccc;
}

.c-inq table.u-tb-form td p {
  margin-bottom: 0.5em;
}
.c-inq input[type="text"], input[type="email"], textarea , input[type="tel"]{
  padding: 0.8em;
  outline: none;
  border: 1px solid #ccc;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
  font-size: 16px;
}
input[type="text"]:focus, input[type="email"]:focus, textarea:focus, input[type="radio"]:focus, ._emai select:focus,input[type="tel"]:focus {
  box-shadow: 0 0 7px #3498db;
  border: 1px solid #3498db;
}
.form-select {
  position: relative;
}
.form-select:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 12px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
  transform: rotate(135deg);
  pointer-events: none;
}
.form-select select {
  height: 2.4em;
  width: 30%;
  padding: 0 8px 0 30px;
  border-radius: 4px;
  border: none;
  box-shadow: 0 0 0 1px #ccc inset;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
}
.form-select select::-ms-expand {
  display: none;
}
.form-select select:focus {
  outline: 0;
  box-shadow: 0 0 7px #8DDF57;
  border: 1px solid #8DDF57;
}
.c-inq input[type="submit"] {
  width: 200px;
  margin: 0 auto 1em;
  padding: 10px;
  border-radius: 6px;
  background: #fff;
  border: 1px solid #0071be !important;
  color: #0071be;
  cursor: pointer;
  outline: none;
  transition: background-color .2s;
  font-size: 1.13em;
}
.c-inq input[type="reset"] {
  width: 200px;
  margin: 0 auto;
  padding: 10px;
  border-radius: 6px;
  background: #ccc;
  color: #222;
  cursor: pointer;
  border: none;
  outline: none;
  transition: background-color .2s;
}
.c-inq .doui input[type="checkbox"] {
  position: relative;
  width: 18px;
  height: 18px;
  border: 3px solid #000;
  vertical-align: -2px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.c-inq .doui input[type="checkbox"]:checked:before {
  position: absolute;
  top: 1px;
  left: 4px;
  transform: rotate(50deg);
  width: 4px;
  height: 8px;
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
  content: '';
}

.wpcf7-spinner{
	display: block;
}
textarea {
    width: 75%;
  }


@media screen and (max-width: 767.98px) {
  .c-inq h3 {
    font-size: 1.13em;
  }
  .c-inq table.u-tb-form th {
    display: block;
    width: 100%;
    font-size: 1em;
	  padding-bottom: 0;
  }
  .c-inq table.u-tb-form td {
    display: block;
    width: 100%;
    font-size: 1em;
  }
  textarea {
    width: 100%;
  }
	.c-inq input[type="text"], input[type="email"], input[type="tel"]{
		width: 100%;
	}
}


/**/
.sp {
  display: none;
}
@media screen and (max-width: 576px) {
  .sp {
    display: block;
  }
	.c-inq .c-bg-sky{
	padding: 1em;
	
}
}
@media (min-width: 751px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}
	
#c-page-top {
  position: fixed;
  bottom: 20px;
  right: 20px;
  font-size: 77%;
}
#c-page-top a {
	background: #0071be;
  text-decoration: none;
  color: #fff;
  width: 60px;
  height: 60px;
  border-radius: 30px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.13em;
  
}

#c-page-top a:hover {
  text-decoration: none;
  opacity: 0.6;
}
/*========= ナビゲーションのためのCSS ===============*/
#g-nav{
    /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
    position:fixed;
    z-index: 999;
    /*ナビのスタート位置と形状*/
	top:0;
    right: -120%;
	width:100%;
    height: 100vh;/*ナビの高さ*/
	background:#fff;
    /*動き*/
	transition: all 0.6s;
}

/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive{
    right: 0;
}

/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list{
    /*ナビの数が増えた場合縦スクロール*/
    position: fixed;
    z-index: 999; 
    width: 100%;
    height: 100vh;/*表示する高さ*/
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
#g-nav ul {
    /*ナビゲーション天地中央揃え*/
    position: absolute;
    z-index: 999;
    top:50%;
    left:50%;
    transform: translate(-50%,-50%);
	display: block;
	padding-left: 0;
}

/*リストのレイアウト設定*/

#g-nav li{
	list-style: none;
    text-align: center;
}

#g-nav li a{
	color: #333;
	text-decoration: none;
	padding:10px;
	display: block;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight: bold;
}

/*========= ボタンのためのCSS ===============*/
.openbtn{
	position:fixed;
    z-index: 9999;/*ボタンを最前面に*/
	top:10px;
	right: 10px;
	cursor: pointer;
    width: 50px;
    height:50px;
	background: rgba(0,0,0,0.5);
	display: none;
}
	
/*×に変化*/	
.openbtn span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
	background-color: #fff;
  	width: 45%;
  }

.openbtn span:nth-of-type(1) {
	top:15px;	
}

.openbtn span:nth-of-type(2) {
	top:23px;
}

.openbtn span:nth-of-type(3) {
	top:31px;
}

.openbtn.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
}

.openbtn.active span:nth-of-type(2) {
	opacity: 0;
}

.openbtn.active span:nth-of-type(3){
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
}
/*リストのレイアウト設定*/
#g-nav li {
  list-style: none;
  text-align: left;
}
#g-nav li a {
  color: #222;
  text-decoration: none;
  padding: 10px;
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: bold;
}
#g-nav li a i {
  color: #0071be;
}

@media screen and (max-width: 767px) {
	.openbtn {
		display: block;
	}
}
@media screen and (min-width: 768.1px) {
	#g-nav{
		display: none;
	}
	#g-nav.panelactive{
    right: -120;
}
	}

.f_instagram {
  display: flex;
  justify-content: center;
  font-weight: bold;
}
.f_instagram img {
  width: 30px;
  margin-right: 0.5em;
}

