@charset "utf-8";


/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// Reset
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

body, div, pre, p, blockquote, h1, h2, h3, h4, h5, h6, ul, ol, li, dl, dt, dd, pre, form, fieldset, input, textarea, select, option, table, th, td, tr, embed, object, a {
  margin:0;
  padding:0;
  box-sizing:border-box;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, button {
  box-sizing:border-box;
  display: block;
}

li {
  list-style-type:none;
}
fieldset, table, img {
  border:0;
}
table {
  border-collapse:collapse;
  border-spacing:0;
}

i {
  margin-left:5px;
}

input, select {
  font-size:16px;
}

/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// Body
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

html {
  min-width:320px!important;
}
body {
  text-align:left;
  height:100%;
  box-sizing:border-box;
  color:#323333;
  background:#fff;
  min-width:320px!important;
}

h1, h2, h3, h4, h5, h6, p, li, dt, dd, form, pre, td, th, label, div {
  line-height:1;
}

div p, div li, div dt, div dd, div form, div pre, div td, div th, div label, div div, div h1, div h2, div h3, div h4, div h5, div h6, p p, p li, p dt, p dd, p from, p pre, p td, p th, p label, p div, li p, li li, li dt, li dd, li from, li pre, li td, p th, li label, li div, li h3, td p, td li, td dt, td dd, td from, td pre, td td, td th, td label, td div, th p, th li, th dt, th dd, th from, th pre, th td, th th, th label, th div, label p, label li, label dt, label dd, label form, label pre, label td, label th, label div, form th, form td {
  font-size:16px;
}

a {
  overflow:hidden;
}
a:link {
  color:#4b4b4b;
  text-decoration:none;
}
a:visited {
  color:#4b4b4b;
  text-decoration:none;
}
a:hover {
  color:#4b4b4b;
  text-decoration:none;
  opacity:0.8;
}
a:active {
  color:#4b4b4b;
  text-decoration:none;
}

a:hover img {
  /* opacity:0.7;
      filter: alpha(opacity=70);
  -ms-filter: "alpha( opacity=70 )";
  background: #fff; */
}

body, h1, h2, h3, h4, h5, h6, td, th, p, div, input, textarea, pre, ul, li, ol {
  font-family: "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-weight:300;
}

* html body * {
  vertical-align:baseline;
}

button {
  text-transform: none;
  cursor: pointer;
  overflow: visible;
  outline: none;
  border: none;
  background: inherit;
}

.btn {
  padding: 5px 10px;
  border-radius:0px;
  font-size:16px;
  text-transform:uppercase;
  color: #fff;
  background-color: #717174;
  border-color: #717174;
}
.btn:hover {
  opacity:0.7;
}



.dspnone {
  display:block!important;
}
.dpcnone {
  display:none!important;
}

.dpcnone680 {
  display:none!important;
}
.dspnone680 {
  display:block!important;
}

.dpcnone780 {
  display:none!important;
}
.dspnone780 {
  display:block!important;
}

.dpcnone900 {
  display:none!important;
}
.dspnone900 {
  display:block!important;
}

div.fixed {
  position:fixed;
  z-index:-100;
  left:0;
  right:0;
}


/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// header
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

header {
  width:100%;
  margin:0 auto;
  z-index:100;
  /* position:absolute; */
}

/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// glbnav
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

nav.glbnav {
  width:96%;
  max-width:1040px;
  margin:35px auto 0;
  text-align:center;
  display:flex;
  justify-content:space-between;
}
nav.glbnav ul {
  display:flex;
  flex-wrap:wrap;
  width:100%;
  max-width:780px;
  /* padding-right:92px; */
  margin:0;
  justify-content:space-between;
}
nav.glbnav ul li {
  width:auto;
  text-align:center;
}
nav.glbnav ul li img {
  margin-bottom:8px;
}
nav.glbnav ul li a {
  width:100%;
  font-size:15px;
  padding:15px 0;
  display:block;
  position:relative;
  font-weight:bold;
}
nav.glbnav ul li a:hover:after {
  position:absolute;
  width:100%;
  height:3px;
  content:"";
  bottom:0;
  left:0;
  background: #0856a0;
}
nav.glbnav ul li a.active {
  color:#fff;
}

nav.glbnav div.sub_nav_con {
  display:none;
  position:absolute;
  width:100%;
  background:#eaebee;
  left:0;
  z-index:1;
}
nav.glbnav li.nav02:hover div.sub_nav_con {
  display:block;
}
nav.glbnav ul.nav_pc_sub {
  max-width:1000px;
  margin:20px auto 40px;
  display:flex;
  flex-wrap:wrap;
}
nav.glbnav ul.nav_pc_sub li {
  width:calc(33.333% - 30px);
  border-bottom:1px solid #ccc;
  position:relative;
  border-right:none;
  margin:10px 15px 0;
}
nav.glbnav ul.nav_pc_sub li a {
  color:#323333;
  text-align:left;
}
nav.glbnav ul.nav_pc_sub li.current a {
  color:#4274B2;
}

nav.glbnav ul.nav_pc_sub li:after {
  position:absolute;
  right:10px;
  top:0;
  bottom:0;
  margin:auto 0;
  display: flex;
  align-items: center;
  font-weight:bold;
}
nav.glbnav ul.nav_pc_sub li.plus:after {
  content:"+";
}
nav.glbnav ul.nav_pc_sub li.arrow:after {
  content:">";
}


nav.sub_nav dl {
  width:100%;
  height:auto;
  position:fixed;
  z-index:1000;
  top:0;
}
nav.sub_nav dl dt {
  width:90px;
  height:74px;
  position:absolute;
  right:0;
  color:#fff;
  font-size:15px;
  top:20px;
  z-index:1;
  border-radius:40px 0 0 40px;
  background: -webkit-linear-gradient(left,#61b963,#2b78bc 50%,#602c88);
  background:         linear-gradient(to left,#61b963,#2b78bc 50%,#602c88);
  cursor: pointer;
  box-shadow: 2px 4px 4px #ccc;
}

nav.sub_nav dl dd {
  display:none;
  width:calc(100% - 100px);
  position:absolute;
  left:0;
  right:0;
  top:10px;
  margin:auto;
  padding:80px;
  background:#332850;
  border-radius:6px;
}

nav.sub_nav dl dd div.nav_wrap {
  width:100%;
  max-width:800px;
  margin:auto;
  display:flex;
}
nav.sub_nav dl dd div.nav_wrap h1 {
  width:180px;
  padding-top: 40px;
  padding-right:35px;
  /* display:flex;
  align-items:center; */
}
nav.sub_nav dl dd div.nav_wrap h1 img {
  width:105px;
  max-width:100%;
}
nav.sub_nav dl dd ul {
  width:100%;
  max-width:calc(800px -180px);
  margin:auto;
  display:flex;
  flex-wrap:wrap;
}
nav.sub_nav dl dd ul li {
  width:33.33%;
  /* color:#fff; */
  border-right:1px solid #4274B2;
  padding: 10px 0 20px 40px;
}
nav.sub_nav dl dd ul li:nth-child(1), nav.sub_nav dl dd ul li:nth-child(4) {
  border-left:1px solid #4274B2;
}
nav.sub_nav dl dd ul li a {
  font-weight:bold;
  font-size:14px;
  color: #0856a0;
}
nav.sub_nav dl dd ul li span {
  font-weight:bold;
  font-size:14px;
  color: #0856a0;
}
nav.sub_nav dl dd ul li.nav_copy {
  width:100%;
  margin-top:15px;
  padding:10px 0;
  border:none;
  border-top:1px solid #0856a0;
  border-bottom:1px solid #0856a0;
  display:flex;
  justify-content:space-between;
  align-items: center;
}

nav.sub_nav dl dd ul li.nav_copy > a {
  width: 35px;
  padding: 0;
  margin-top: 20px;
}

nav.sub_nav dl dd ul.sub {
  flex-direction:column;
  margin:20px 0 0;
}
nav.sub_nav dl dd ul.sub li {
  width:100%;
  border-right:none;
  padding:0;
  margin-bottom:10px;
}
nav.sub_nav dl dd ul.sub li a {
  font-weight:normal;
  color: #4b4b4b;
}
nav.sub_nav dl dd ul.sub li:nth-child(1), nav.sub_nav dl dd ul.sub li:nth-child(4) {
  border-left:none;
}

nav.sub_nav dl dt .menu__line {
  background:#fff;
  display: block;
  width: 27px;
  height: 4px;
  right:25px;
  position: absolute;
  transition:transform 0.3s;
}


nav.sub_nav dl dt .menu__line--top {
  top: 25px;
}

nav.sub_nav dl dt .menu__line--center {
  top: calc(50% - 2px);
}
nav.sub_nav dl dt .menu__line--bottom {
  bottom: 25px;
}

nav.sub_nav dl dt.active {
  border:1px solid #fff;
  border-right:none;
  box-shadow: none;
}
nav.sub_nav dl dt.active .menu__line {
  width:33px;
}
nav.sub_nav dl dt.active .menu__line--top {
  top: 34px;
  transform: rotate(45deg);
}
nav.sub_nav dl dt.active .menu__line--center {
  transform:scaleX(0);
}
nav.sub_nav dl dt.active .menu__line--bottom {
  bottom: 35px;
  transform: rotate(135deg);
}

/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// section
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

section {
  width:100%;
}
div.sec_wrap {
  max-width:1140px;
  width:96%;
  margin:0 auto;
}

div.page_top {
  text-align:center;
  padding:0;
  margin:0 auto;
  line-height:0;
}
div.page_top img {
  width:98px;
  height:44px;
}


/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// footer
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

footer {
  width:100%;
  /* padding:50px 0; */
}
footer h2 {
  padding-right:40px;
  margin-bottom:40px;
}
footer h2 img {
  width:134px;
  height:63px;
}
footer nav.foot_nav {
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
}
footer nav.foot_nav ul {
  display:flex;
  justify-content:flex-start;
  flex-wrap:wrap;
}
footer nav.foot_nav ul li {
  margin:0 30px 10px 10px;
}
footer nav.foot_nav ul li a {
  color:#fff;
  font-size:13px;
}
footer nav.foot_nav ul.sub {
  flex-direction:column;
  margin-top:10px;
}
footer div.copy {
  color:#fff;
  font-size:12px;
  margin-top:20px;
}

/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// 余白設定・レイアウト基本設定
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// マージン設定
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

.m_auto {
  margin-left:auto !important;
  margin-right:auto !important;
}

.m_t-5 {
  margin-top:-5px !important;
}
.m_t0 {
  margin-top:0px !important;
}.m_t5 {
  margin-top:5px !important;
}
.m_t10 {
  margin-top:10px !important;
}.m_t15 {
  margin-top:15px !important;
}
.m_t20 {
  margin-top:20px !important;
}.m_t30 {
  margin-top:30px !important;
}
.m_t25 {
  margin-top:25px !important;
}.m_t40 {
  margin-top:40px !important;
}
.m_t50 {
  margin-top:50px !important;
}.m_t100 {
  margin-top:100px !important;
}

.m_b0 {
  margin-bottom:0px !important;
}.m_b5 {
  margin-bottom:5px !important;
}
.m_b10 {
  margin-bottom:10px !important;
}.m_b15 {
  margin-bottom:15px !important;
}
.m_b20 {
  margin-bottom:20px !important;
}.m_b30 {
  margin-bottom:30px !important;
}
.m_b40 {
  margin-bottom:40px !important;
}.m_b50 {
  margin-bottom:50px !important;
}
.m_b100 {
  margin-bottom:100px !important;
}

.m_r0 {
  margin-right:0px !important;
}.m_r5 {
  margin-right:5px !important;
}
.m_r10 {
  margin-right:10px !important;
}.m_r15 {
  margin-right:15px !important;
}
.m_r20 {
  margin-right:20px !important;
}.m_r30 {
  margin-right:30px !important;
}

.m_l0 {
  margin-left:0px !important;
}.m_l5 {
  margin-left:5px !important;
}
.m_l10 {
  margin-left:10px !important;
}.m_l15 {
  margin-left:15px !important;
}
.m_l20 {
  margin-left:20px !important;
}.m_l30 {
  margin-left:30px !important;
}
.m_l35 {
  margin-left:35px !important;
}

.m_l50 {
  margin-left:50px !important;
}

.allnone {
  padding:0!important;
  margin:0!important;
  border:none!important;
}

/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// パディング設定
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

.p_5 {
  padding:5px !important;
}
.p_10 {
  padding:10px !important;
}

.p_t0 {
  padding-top:0px !important;
}.p_t5 {
  padding-top:5px !important;
}
.p_t10 {
  padding-top:10px !important;
}.p_t15 {
  padding-top:15px !important;
}
.p_t20 {
  padding-top:20px !important;
}.p_t30 {
  padding-top:30px !important;
}
.p_t50 {
  padding-top:50px !important;
}

.p_b0 {
  padding-bottom:0px !important;
}.p_b5 {
  padding-bottom:5px !important;
}
.p_b10 {
  padding-bottom:10px !important;
}.p_b15 {
  padding-bottom:15px !important;
}
.p_b20 {
  padding-bottom:20px !important;
}.p_b30 {
  padding-bottom:30px !important;
}

.p_r0 {
  padding-right:0px !important;
}.p_r5 {
  padding-right:5px !important;
}
.p_r10 {
  padding-right:10px !important;
}.p_r15 {
  padding-right:15px !important;
}
.p_r20 {
  padding-right:20px !important;
}.p_r30 {
  padding-right:30px !important;
}

.p_l0 {
  padding-left:0px !important;
}.p_l5 {
  padding-left:5px !important;
}
.p_l10 {
  padding-left:10px !important;
}.p_l15 {
  padding-left:15px !important;
}
.p_l20 {
  padding-left:20px !important;
}.p_l25 {
  padding-left:25px !important;
}
.p_l30 {
  padding-left:30px !important;
}


/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// TEXT-ALIGN設定
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

.txt_right {
  text-align:right;
}
.txt_center {
  text-align:center;
}

/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// フロート
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

.float_l {
  float:left;
}
.float_r {
  float:right;
}

/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// フォントサイズ
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

.size_small {
  font-size:0.9em !important;
}
.size_vb {
  font-size:0.75em !important;
}
.size_default {
  font-size:100% !important;
}
.size_large {
  font-size:120% !important;
}

/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// フォントカラー
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

.fblue {
  color:#41a4e5!important;
}
.fgreen {
  color:#81b12a!important;
}
.fred {
  color:#db0f2f!important;
}
.fwhite {
  color:#fff!important;
}
.fblack {
  color:#000!important;
}


/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// 背景カラー
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/


.colorblue {
  background-color:#41a4e5!important;
}
.colorgreen {
  background-color:#81b12a!important;
}
.colorred {
  background-color:#d43632!important;
}
.colorgray {
  background-color:#eee!important;
}
.colorwhite {
  background-color:#fff!important;
}


/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// width
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/
.w30 {
  width:30px!important;
}
.w50 {
  width:50px!important;
}
.w100 {
  width:100px!important;
}
.w150 {
  width:150px!important;
}
.w200 {
  width:200px!important;
}
.w250 {
  width:250px!important;
}
.w200 {
  width:300px!important;
}
.w350 {
  width:350px!important;
}
.w400 {
  width:400px!important;
}
.w450 {
  width:450px!important;
}
.w500 {
  width:500px!important;
}
.w550 {
  width:550px!important;
}
.w600 {
  width:600px!important;
}
.w650 {
  width:650px!important;
}
.w700 {
  width:700px!important;
}
.w750 {
  width:750px!important;
}
.w800 {
  width:800px!important;
}
.w850 {
  width:850px!important;
}
.w900 {
  width:900px!important;
}
.w950 {
  width:950px!important;
}
.w1000 {
  width:1000px!important;
}


.w20p {
  width:20%!important;
}
.w25p {
  width:25%!important;
}
.w33p {
  width:33%!important;
}
.w40p {
  width:40%!important;
}
.w50p {
  width:50%!important;
}
.w66p {
  width:66%!important;
}
.w100p {
  width:100%!important;
}


.h330 {
  height:330px!important;
}
.h450 {
  height:450px!important;
}

.mw100p {
  max-width:100%;
}
.mw50p {
  max-width:50%;
}

/*+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
+-----+// ContentClear
--+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+*/

.clearfix:after {
  content:".";
  display:block;
  height:0;
  clear:both;
  visibility:hidden;
}

* html .clearfix {
  height:1%;
}
/*\*//*/
.clearfix{
	display: inline-table;
}
/**/
