/* formatting styles
------------------------- */
* {
	font-style: normal;
	margin: 0px;
	padding: 0px;
}
body {
	background-color: #ffffff;
        font-size: 15px;
}

/* basic layout
------------------------- */
.container {
	margin: 0px auto;
	max-width: 940px;
}

/* link styles
------------------------- */
a:link {
	color: #913f2e;
	text-decoration: underline;
}
a:visited {
	color: #999999;
	text-decoration: underline;
}
a:hover {
	color: #cc0000;
	text-decoration: none;
}
a:active {
	text-decoration: none;
	position: relative;
	left: +1px;
	top: +1px;
}
/* 画像リンクの設定 */
a img{
	border-style:none;
	opacity:1;
	filter: alpha(opacity=100);
}
a:hover img{
	opacity:0.7;
	filter: alpha(opacity=75);
}
/* no-scroll area
------------------------- */
#fixarea {
        background-color: #ffffff;	/* for IE */
}

/* header styles
------------------------- */
#header {
	display: block;
	background:rgba(255,255,255);
	height:110px;
}
#header .container {
	position: relative;
}
#header .container #logo_kyodo {
	position: absolute;
	left: 0px;
	top: 20px;
}
#header .container #hdr_kyodo {
	position: absolute;
	left: 580px;
	top: 40px;
}

/* groval navigation
------------------------- */
#globalnavi {
	height:47px;
	margin-bottom:4px;
	background:#9fd0d6;
}

#globalnavi:after {
        content: ""; 
        display: block; 
        clear: both;
}

#globalnavi ul {
        list-style-type: none;
}

#globalnavi ul.cc-nav-level-0 {
        width: 100%;
        margin: 0;
        padding: 0;
}
#globalnavi ul.cc-nav-level-0:after {
        content: "";
        display: block;
        clear: both;
}
#globalnavi ul.cc-nav-level-0 li {
        float: left;
        white-space: nowrap;

}
#globalnavi ul.cc-nav-level-0 li ul {
        visibility: hidden;
        position: absolute;
        margin: 0;
        padding:0;
        z-index: 1 !important;
}
#globalnavi ul.cc-nav-level-0 li:hover > ul {
        visibility: visible;
}
#globalnavi ul.cc-nav-level-0 li ul li {
        width: auto !important;
        clear: left;
        position: relative;
}
#globalnavi ul.cc-nav-level-0 li ul li ul {
        top: 0;
        left: 100%;
}
#globalnavi ul.cc-nav-level-0 li a {
        display: block;
	height: 47px;
	padding: 0 16px;
	line-height: 50px;
        color: #454545;
        text-align: center;
        text-decoration: none;

}

#globalnavi ul.cc-nav-level-0 li ul li a {
    width: 180px;
    text-align: left;
}
* html #globalnavi ul.cc-nav-level-0 li a { /*forIE6*/
        zoom: 1;

}
#globalnavi ul.cc-nav-level-0 li a:hover {
        color: #454545;
        background-color: #d69f9f;
}
#globalnavi ul.cc-nav-level-0 li a.cc-nav-current,#globalnavi ul.cc-nav-level-0 li.cc-nav-parent a {
        color: #454545;
        background-color: #fae17a;
}
#globalnavi ul.cc-nav-level-0 li ul li a {
        text-align: left;

}

#globalnavi ul.cc-nav-level-1 a,#globalnavi ul.cc-nav-level-2 a {
        background: #9fd0d6;
         filter: alpha(opacity=9);
        -ms-filter: "alpha(opacity=90)";
        -moz-opacity: 0.9;
        -khtml-opacity: 0.9;
        opacity: 0.9;
        text-align: center;
}

#globalnavi ul.cc-nav-level-1 a.cc-nav-current,#globalnavi ul.cc-nav-level-2 a.cc-nav-current {
        background: #323232;
}
.j-textWithImage figure {
  z-index: 0 !important;
}

.fixed {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 10000;
}

/* page layouts 
------------------------- */
#main {
/*	border-top: 8px solid #d69f9f; */
}

#main .container #content {
	float: left;
	width: 630px;
	padding:0 10px 0 0;
	margin-bottom:3em;
}
#main .container #rightmenu {
	float: right;
	width: 240px;
	padding:0 10px 0 10px;
	margin-bottom:3em;
}

/* content styles
------------------------- */
#content h1 {
	height: 45px;
	font-size: 18px;
	line-height: 45px;
	background-image:url(https://u.jimcdn.com/cms/o/s9ddbf57d42a50692/userlayout/img/linebig.png?t=1783826769);
	width: 100%;
	padding-left:20px;
	margin-bottom: 1em;
}
#content h2 {
	height: 36px;
	font-size: 16px;
	line-height: 36px;
	background-image:url(https://u.jimcdn.com/cms/o/s9ddbf57d42a50692/userlayout/img/linemedium.png?t=1740554853);
	width: 100%;
	padding-left: 10px;
	margin-bottom: 1em;
}
#content h3 {
	height: 20px;
	font-size: 16px;
	line-height: 20px;
	background-image:url(https://u.jimcdn.com/cms/o/s9ddbf57d42a50692/userlayout/img/linesmall.png?t=1783827070);
	width: 100%;
	padding-left: 10px;
	margin-bottom: 1em;
　　　　　color: #000000;
}
#content p {
	margin: 0 0 1em 10px;
}

/* sidenavi styles
------------------------- */
#rightmenu #sidenavi ul {
	list-style: none;
	padding:0;
	margin:0 0 1.5em 5px;
}
#rightmenu #sidenavi ul li {
	position:relative;
}
#rightmenu #sidenavi ul li a {
	line-height: 36px;
	height: 36px;
	text-decoration: none;
	width: 200px;
	display: block;
}
#rightmenu #sidenavi ul li a.level_1 {
	background-image:url(https://u.jimcdn.com/cms/o/s9ddbf57d42a50692/userlayout/img/li-kyodob.gif?t=1554772262);
	background-repeat: no-repeat;
	background-position: 12px center;
	padding-left: 40px;
}
#rightmenu #sidenavi ul li a.level_2 {
	background-image:url(https://u.jimcdn.com/cms/o/s9ddbf57d42a50692/userlayout/img/li-kyodob01.gif?t=1554772270);
	background-repeat: no-repeat;
	background-position: 7px center;
	padding-left: 35px;
}
#rightmenu #sidenavi ul li a.level_3 {
	background-image:url(https://u.jimcdn.com/cms/o/s9ddbf57d42a50692/userlayout/img/li-kyodob02.gif?t=1554772279);	
	background-repeat: no-repeat;
	background-position: 2px center;
	padding-left: 30px;
}
#rightmenu #sidenavi ul li a.current {
        background-color: #fceeb6;
        font-weight: bold;
}
#rightmenu #sideinfo {
	border: 2px solid #9fd0d6;
	padding: 15px;
	margin-bottom:1em;
}

/* footer styles
------------------------- */
#footer-before {
	background-image:url(https://u.jimcdn.com/cms/o/s9ddbf57d42a50692/userlayout/img/ftr-kyodo.gif?t=1740822781);
	background-repeat: no-repeat;
	background-position: center 0px;
	padding-top:61px;
}
#footer {
	border-top: 0.1px solid #9fd0d6; 	/* すきま抑止 */
	background-color: #9fd0d6;
}
#footer .container {
	background-image:url(https://u.jimcdn.com/cms/o/s9ddbf57d42a50692/userlayout/img/ftr-kyodopt.jpg?t=1554772202);
	background-repeat: no-repeat;
	background-position: 743px 10px;
	height: 250px;
}
#footer .container #footer_navi li {
	list-style: none;
	display: inline;
	line-height: 160px;
}
#footer .container #footer_navi ul li a {
	text-decoration: none;
	color: #454545;
	padding-right: 15px;
	padding-left: 15px;
}
#footer .container #footer_navi ul li a:hover {
	color: #cc0000;
}
div#footer_navi ul li:nth-child(n+2) a {
	border-left:1px solid #454545;		/* 最初の項目以外は左ボーダー */
}

#copyright p {
	line-height: 40px;
	color: #FFFFFF;
	background-color: #224d51;
	text-align: center;
	height: 40px;
}
/* breadcrumb styles
------------------------- */
#breadcrumb {
        margin: 0 0 15px 0;
        padding-left: 20px;
        background: url(https://u.jimcdn.com/cms/o/s9ddbf57d42a50692/userlayout/img/arrow-breadcrumbs.png?t=1554772539) center left no-repeat;
}
#breadcrumb:after {
        content: "";
        display: block;
        clear: both;
}
#breadcrumb ol {
        margin: 0;
        padding: 0;
        list-style-type: none;
}
#breadcrumb ol li {
        float: left;
        margin: 0 8px 0 0;
}
#breadcrumb ol li a {
        padding: 0 20px 0 0;
        background: url(https://u.jimcdn.com/cms/o/s9ddbf57d42a50692/userlayout/img/arrow-breadcrumbs.png?t=1554772539) center right no-repeat;
}
#breadcrumb ol li a.cc-nav-current {
        text-decoration: none;
        color:#18213a;
        background: none;
}
body.cc-page-index #breadcrumb{
   display:none;
}


/*  Jimdo標準ボタン機能スタイル設定（旧レイアウト・独自レイアウト用）
----------------------------------------------- */

.j-calltoaction-link
{
/*        color: #2b2b2b !important; */        /* 文字色は変更不可 */
        width: 90% !important;
        font-weight: bold;
        text-decoration: none !important;
        background: #ff9a26 !important;
/*        font-weight:bold !important; */
        border-radius: 2px;
        border-style: none !important;
}

.j-calltoaction-link:hover
{
 background: #d69f9f !important;
}

@media screen and (max-width: 768px) {
  #main .container {
    display: flex;
    flex-direction: column;
  }
  #main .container #content,
  #main .container #rightmenu {
    width: 100%;
    padding: 0;
  }
  #header .container #logo_kyodo,
  #header .container #hdr_kyodo {
    position: static;
    display: block;
    margin: 0 auto;
  }
  #globalnavi ul.cc-nav-level-0 li {
    float: none;
    width: 100%;
  }
  #globalnavi ul.cc-nav-level-0 li a {
    padding: 10px;
    text-align: left;
  }
}
------------------------- */

@media screen and (max-width: 768px) {
  body {
    font-size: 16px;
    line-height: 1.6;
    padding: 0;
  }

  .container {
    width: 100%;
    padding: 0 10px;
    box-sizing: border-box;
  }

  #header {
    height: auto;
    padding: 10px 0;
    text-align: center;
  }

  #header .container {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  #header .container #logo_kyodo,
  #header .container #hdr_kyodo {
    position: static !important;
    width: 90%;
    max-width: 300px;
    height: auto;
    margin: 10px 0;
  }

  #globalnavi {
    height: auto;
  }

  #globalnavi ul.cc-nav-level-0 {
    display: flex;
    flex-direction: column;
    padding: 0;
  }

  #globalnavi ul.cc-nav-level-0 li {
    float: none;
    width: 100%;
    border-bottom: 1px solid #ccc;
  }

  #globalnavi ul.cc-nav-level-0 li a {
    display: block;
    padding: 12px 16px;
    font-size: 16px;
    line-height: 1.5;
    text-align: left;
  }

  #main .container {
    flex-direction: column;
    padding: 0;
  }

  #main .container #content,
  #main .container #rightmenu {
    width: 100% !important;
    padding: 0 10px;
    float: none;
  }

  #footer .container {
    height: auto;
    background-position: center;
    text-align: center;
    padding: 20px 0;
  }

  #footer .container #footer_navi ul {
    display: flex;
    flex-direction: column;
    padding: 0;
  }

  #footer .container #footer_navi ul li {
    line-height: 2;
    border: none !important;
  }

  #footer .container #footer_navi ul li a {
    padding: 8px 0;
    display: block;
  }

  #copyright p {
    font-size: 12px;
    padding: 10px;
    height: auto;
    line-height: 1.5;
  }
}
@media screen and (max-width: 768px) {
  /* 既存ナビ非表示 */
  #globalnavi {
    display: none;
  }

/* ハンバーガーアイコン */
.hamburger {
  display: none;
  width: 30px;
  height: 24px;
  position: fixed;
  top: 20px;
  right: 20px;
  z-index: 20000;
  flex-direction: column;
  justify-content: space-between;
  cursor: pointer;
}

.hamburger span {
  display: block;
  height: 4px;
  background: #333;
  border-radius: 2px;
}

/* スライドメニューの初期状態 */
#globalnavi.mobile-menu {
  position: fixed;
  top: 0;
  right: -100%;
  width: 80%;
  height: 100vh;
  background: #ffffff;
  box-shadow: -2px 0 5px rgba(0,0,0,0.2);
  transition: right 0.3s ease-in-out;
  z-index: 15000;
  overflow-y: auto;
  padding: 60px 20px 20px;
}

/* 開いた状態 */
#globalnavi.mobile-menu.open {
  right: 0;
}

/* ナビ内リンク調整 */
#globalnavi.mobile-menu ul.cc-nav-level-0 {
  display: block;
}
#globalnavi.mobile-menu ul.cc-nav-level-0 li {
  float: none;
  width: 100%;
  border-bottom: 1px solid #ddd;
}
#globalnavi.mobile-menu ul.cc-nav-level-0 li a {
  display: block;
  padding: 14px;
  font-size: 16px;
}

/* モバイル表示切替 */
@media screen and (max-width: 768px) {
  .hamburger {
    display: flex;
  }
  #globalnavi.desktop-menu {
    display: none;
  }
}

/* PSM専用ページのサイドメニューを削除し、コンテンツ幅を100%に */
#page-1456142756 #main .container #rightmenu{
  display: none;
}

#page-1456142756 #main .container {
  display: block;
}

#page-1456142756 #main .container #rightmenu {
  float: none;
  width: 100% !important;
  padding: 0 15px;
  box-sizing: border-box;
}

/* パンくずリストも非表示にする場合 */
#page-1456142756 #breadcrumb {
  display: none;
}

@media screen and (max-width: 768px) {
  #page-1456142756 #header .container {
    flex-direction: column;
    align-items: center;
  }

  #page-1456142756 #header img {
    width: 90%;
    height: auto;
    max-width: 300px;
    margin-bottom: 10px;
  }

  #page-1456142756 #main .container #content {
    padding: 0 10px;
  }
}