:root {
  --color-primary: #3D61AC;
}
body {
  overflow-x: hidden;
  font-family: "Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
}

a {
  color: #000000;
}

a:hover {
  text-decoration: none;
}
@media (min-width: 1024px){
    .wrp_h1 {
      position: absolute;
      width: 100%;
    }
    .wrp_h1 h1 {
      position: absolute;
      font-size: 10px;
      width: 1000px;
      left: 50%;
      top: 15px;
      margin-left: -500px;
    }
    
    .wrp_header {
      border-top: solid 6px var(--color-primary);
      /*header*/
    }
    .wrp_header header {
      width: 1000px;
      margin: 0px auto;
      padding: 10px 0px 14px 0px;
      /*h_top*/
      /*h_bottom*/
    }
    .wrp_header header .h_top .nav_subnav {
      float: right;
      position: relative;
      z-index: 1;
      font-size: 10px;
    }
    .wrp_header header .h_top .nav_subnav li {
      display: inline-block;
    }
    .wrp_header header .h_top .nav_subnav li a {
      color: #000000;
      background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAHCAYAAAArkDztAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAEhJREFUeNpiYGBg6ATi/0D8FYidGJAAIxDPhkp+AGJjZElmIF4DlXwFxGrIkjxA/B4qeRxZx2okHeowO2Yh2WECU43VVQABBgB1cRM4bp5OGwAAAABJRU5ErkJggg==') no-repeat left center;
      padding: 0px 0px 0px 10px;
    }
    .wrp_header header .h_top .nav_subnav li:last-of-type,
    .wrp_header header .h_top .nav_subnav li:nth-of-type(2), 
    .wrp_header header .h_top .nav_subnav li:nth-of-type(3) {
      margin-left: 20px;
    }
    .wrp_mainnav #menu-global-menu{
      display:flex;
    }
    .wrp_header header .h_top .nav_subnav .langswitch{
      position:relative;
      width:100px;
      min-height:10px;
    }
    .wrp_header header .h_top .nav_subnav .langswitch a{
      background:none;
      text-decoration:none;
      background:#fefefe;
      border:solid 1px #CECECE;
      padding:6px 0px;
      text-align:center;
      position:absolute;
      top:-5px;
      display:block;
      width:100%;
    }
    .wrp_header header .h_bottom {
      padding: 10px 0px 0px 0px;
    }
    .wrp_header header .h_bottom .hlogo {
      float: left;
    }
    .wrp_header header .h_bottom .hlogo img{
      width: 100%;
    }
    .wrp_header header .h_bottom .hlogo .sp_hlogo{
      display:none;
    }
    .wrp_header header .h_bottom .sp_menu{
      display:none;
    }
    .wrp_header header .h_bottom .wrp_search {
      float: right;
    }
    .wrp_header header .h_bottom .wrp_search #___gcse_0{
      width:400px;
      position:relative;
      top:7px;
    }
    .cse .gsc-control-cse, .gsc-control-cse{
	padding:0 !important;
    }
    .gsc-search-button{
      background:var(--color-primary) !important;
      border:none !important;
    }
    .wrp_header header .h_bottom .wrp_search input[type='text'] {
      background: #fafafa;
      border: solid 1px #cbcbcb;
      width: 255px;
      height: 26px;
    }
    .wrp_header header .h_bottom .wrp_search input[type='submit'] {
      margin: 0px 0px 0px 6px;
      border: 0px;
      width: 92px;
      height: 31px;
      background: url(..../img/common/bt_search.png) no-repeat;
    }
    .sp_wrp_mainnav{
      display:none;
    }
    .wrp_mainnav {
      background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAtCAIAAADgGZaTAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACRJREFUeNpiOH36NMP///+ZGBgYqIb//fuHgqlp9pUrVwACDADqzRQZswCyJgAAAABJRU5ErkJggg==') repeat-x left center;
      height: 45px;
    }
    .wrp_mainnav nav {
      width: 1000px;
      margin: 0px auto;
    }
    .wrp_mainnav nav li {
      flex:1;
      height: 45px;
    }
    .wrp_mainnav nav li:nth-of-type(1) a{
      border-left:solid 1px #e5e5e5;
    }
    
    .wrp_mainnav nav li a{
      display:flex;
      height:100%;
      text-align:center;
      align-items:center;
      -webkit-align-items:center;
      justify-content:center;
      -webkit-justify-content:center;
      text-decoration:none;
      border-right:solid 1px #e5e5e5;
    }
    
    .wrp_mainnav nav li:hover {
      opacity: 0.8;
    }
    
    .pnkz ul {
      width: 1000px;
      margin: 0px auto;
      font-size: 12px;
      padding: 14px 0px;
    }
    .pnkz ul li {
      display: inline-block;
    }
    .pnkz ul li:after {
      content: ">";
      margin: 0px 4px 0px 6px;
    }
    .pnkz ul li:last-of-type:after {
      content: "";
    }
    
    .wrp_h2 {
      position: relative;
      height: 178px;
      border-top: solid 2px var(--color-primary);
      border-bottom: solid 1px #cbcbcb;
      background: linear-gradient(to bottom, #f3f2f2 0%, #fdfdfd 100%);
      /* W3C */
    }
    .wrp_h2:before {
      content: "　";
      position: absolute;
      top: 50%;
      left: 50%;
      height: 178px;
      width: 1000px;
      -webkit-transform: translateY(-50%) translateX(-50%);
      transform: translateY(-50%) translateX(-50%);
      background: url("../img/common/mainv.png") no-repeat right;
    }
    .wrp_h2 > div {
      position: absolute;
      width: 1000px;
      top: 50%;
      left: 50%;
      -webkit-transform: translateY(-50%) translateX(-50%);
      transform: translateY(-50%) translateX(-50%);
    }
    .wrp_h2 > div h2, .wrp_h2 > div .single-h2{
      font-size: 32px;
      margin: 0px 0px 15px 0px;
      letter-spacing: 4px;
    }
    .wrp_h2 > div h2 span, .wrp_h2 > div .single-h2 span{
      font-size: 24px;
      color: var(--color-primary);
      margin-left: 10px;
      letter-spacing: 2px;
    }
    .wrp_h2 > div p {
      letter-spacing: 2px;
      margin: 16px 0px 0px 0px;
    }
    
    .wrp_main {
      width: 1000px;
      margin: 0px auto;
      padding: 10px 0px 40px 0px;
    }
    .wrp_main > .maincont {
      width: 780px;
      float: left;
    }
    .wrp_main > .maincont .h3style {
      border-top: solid 1px #cbcbcb;
      border-bottom: solid 1px #cbcbcb;
      font-size: 22px;
      padding: 20px 0px;
      font-weight: bold;
      display:flex;
      display:-webkit-flex;
      align-items:center;
      -webkit-align-items:center;
      line-height:1.3;
    }
    .wrp_main > .maincont .h3style:before {
      content: "　";
      display: block;
      width: 15px;
      height: 27px;
      margin: 0px 15px 0px 0px;
      background: var(--color-primary);
      vertical-align: bottom;
    }
    .wrp_main > .maincont .h4style {
      background:#f3f3f3;
      font-size: 20px;
      margin:10px 0 10px;
      padding: 10px 0px;
      font-weight: bold;
      display:flex;
      display:-webkit-flex;
      align-items:center;
      -webkit-align-items:center;
      line-height:1.2;
    }
    .wrp_main > .maincont .h4style:before {
      content: "　";
      display: inline-block;
      width: 10px;
      height: 22px;
      margin: 0px 15px 0px 10px;
      background: var(--color-primary);
      vertical-align: bottom;
    }
    .wrp_main > aside {
      width: 200px;
      float: right;
      position: sticky;
      top:20px;
    }
    .wrp_main > aside .sidenav {
      margin: 0px 0px 20px 0px;
      border:solid 1px #d2d2d2;
    }
    
    .wrp_main > aside .sidenav h2{
      background:var(--color-primary);
      padding:15px 0 15px;
      text-align:center;
      color:#fff;
      font-size:17px;
    }
    
    .wrp_main > aside .sidenav a {
      display:flex;
      display:-webkit-flex;
      line-height:1.4;
      border-bottom:solid 1px #d2d2d2;
      align-items:center;
      -webkit-align-items:center;
    }
    
    .wrp_main > aside .newbiz a{
      padding:10px !important;
    }
    
    .wrp_main > aside .sidenav a.cat-parent{
      padding:8px 10px 8px 10px;
      font-size:14px;
    }
    
    .wrp_main > aside .sidenav a.cat-parent:before{
      content:"";
      display:block;
      width:15px;
      height:15px;
      background:url(../img/common/aside/icon_cat.png) no-repeat center;
      margin-right:5px;
    }
    .wrp_main > aside .sidenav a.cat-child{
      padding:12px 0;
      font-size:12px;
      background:#f6f6f6;
    }

    .wrp_main > aside .sidenav a.cat-child:before{
      content:"";
      display:block;
      width:20px;
      height:10px;
      background:url(..../img/common/aside/icon_cat.png) no-repeat center;
      background-size:10px 10px;
      margin-right:5px;
    }
    
    .wrp_main > aside .banner_area a{
      display:block;
      margin:0 0 15px;
      text-align:center;
      line-height:1.4;
    }
    
    .wrp_footer {
      background: var(--color-primary);
      border-top: solid 1px #cbcbcb;
      color:#fff;
    }
    .wrp_footer footer {
      width: 1000px;
      margin: 0px auto;
      padding: 30px 0px;
    }
    .wrp_footer .f_left {
      text-align:center;
    }
    .wrp_footer .f_left li {
      font-size: 12px;
      display: inline-block;
    }
    .wrp_footer .f_left li:after {
      content: "|";
      margin: 0px 0px 0px 4px;
      display: inline-block;
    }
    .wrp_footer .f_left li:last-of-type:after {
      content: none;
    }
    .wrp_footer .f_left li a {
      color: #fff;
    }
    .wrp_footer .f_left p {
      padding: 20px 100px;
      font-size: 12px;
      line-height: 160%;
    }
    .wrp_footer .f_right {
      font-size: 12px;
      text-align:center;
    }
    .wrp_footer .f_right p {
      padding: 10px 0px 0px 0px;
    }
    .wrp_footer .f_right p a{
      color:#fff;
    }
    .dispnone{
      display:none;
    }
    
    .clearfix:after {
      content: "";
      clear: both;
      display: block;
    }
    .sidelangswich{
        background: #f6f6f6;
        border: solid 1px #d2d2d2;
        margin-bottom: 16px;
        font-size:14px;
    }
    .sidelangswich h2{
        font-size: 15px;
        padding: 10px;
        background: #4c4c4c;
        color: #fff;
        text-align: center;
    }
    .sidelangswich ul li{
	border-bottom:solid 1px #d2d2d2;
    }
    .sidelangswich ul li a {
        display:block;
	padding:10px 0 10px 60px;
    }
    .sidelangswich ul li a span{
        background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAHCAYAAAArkDztAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAEhJREFUeNpiYGBg6ATi/0D8FYidGJAAIxDPhkp+AGJjZElmIF4DlXwFxGrIkjxA/B4qeRxZx2okHeowO2Yh2WECU43VVQABBgB1cRM4bp5OGwAAAABJRU5ErkJggg==') no-repeat left center;
        display:block;
	padding:0 0 0 15px;
    }
    .f_sns{
	display:block;
	margin:10px 0 0;
    }
    .f_sns a{
	color:#fff;
	margin:0 10px;
    }
    #wg_contactUs{
	border:solid 2px #cbcbcb;
	border-radius:5px;
	background:#FBFBFB;
	padding: 14px 5px 20px 14px;
	margin-top:20px;
    }
    
    #wg_contactUs h3, #wg_contactUs .inner-head{
	font-size:24px;
	line-height:1.2;
    }
    
    #wg_contactUs h3 span, #wg_contactUs .inner-head span{
	color:#ED1B23;
    }
    
    #wg_contactUs .wg_add{
	padding:18px 0px;
    }
    
    #wg_contactUs .wg_add li{
	margin-right:0px;
	font-size:22px;
	padding:8px 0;
	float:left;
    }
    #wg_contactUs .wg_add li:nth-of-type(2){

    }
    #wg_contactUs .wg_add li a{
	color:var(--color-primary);
	font-size:26px;
    }
    
}

@media (max-width: 1023px){

    html{
	overflow-x:hidden;
    	background:#fff;
	font-size:62.5%;
    }
    body{
	font-size:1.4rem;
	background:#fff;
    }
    body.is-front-page{
      padding-top:9vh
    }
    .wrp_h1 {
	display:none;
    }
    .wrp_header {
      border-top: solid 4px var(--color-primary);
      position: fixed;
      top:0;
      z-index: 2 !important;
      width: 100%;
      padding:0 0;
      background: #fff;
      /*header*/
      box-shadow:0px 0px 6px rgba(0, 0, 0, 0.3);
    }
    .wrp_header header {
      width: 100%;
      margin: 0px auto;
      padding: 10px 0px 10px 0px;
      /*h_top*/
      /*h_bottom*/
    }
    .h_top{
      display:none;
    }
    .mm-listview>li .mm-next{
      width:100%;
    }
    .wrp_header header .h_bottom {
      padding: 2px 0px 0px 0px;
    }
    .wrp_header header .h_bottom .hlogo {
      margin:0 0 0 2%;
      display:block;
      float:left;
      width:40%;
    }
    .wrp_header header .h_bottom .hlogo .pc_hlogo{
	display:none;
    }
    .wrp_header header .h_bottom .hlogo .sp_hlogo{
      display:block;
      width: 120%;
      height: auto;
      top: 2px;
      position: relative;
    }
    
    .wrp_header header .h_bottom .wrp_search {
      display:none;
    }
    .wrp_header header .h_bottom .sp_menu{
      margin:0 2% 0 0;
      float:right;
      width:10%;
      height:auto;
    }
    .wrp_header header .h_bottom .sp_menu [src*="sp_menu"]{
      height:auto;
      width:100%;
      display:block;
    }
    .mm-listview>li{
      padding:10px 0px !important;
    }
    .qtranxs-lang-menu a[title]{
      pointer-events:none;
    }
    .wrp_mainnav {
	display:none;
    }
    .pnkz{
      padding:11vh 0 0 0;
    }
    .pnkz ul {
      margin: 0px auto;
      font-size: 12px;
      padding: 10px 2% 0px;
      line-height:1.4;
    }
    .pnkz ul li {
      display: inline-block;
      margin-bottom: 5px;
    }
    .pnkz ul li:after {
      content: ">";
      margin: 0px 4px 0px 6px;
    }
    .pnkz ul li:last-of-type:after {
      content: "";
    }
    
    .wrp_h2 {
      position: relative;
      height: 120px;
      border-top: solid 2px #9faece;
      border-bottom: solid 1px #cbcbcb;
      background: linear-gradient(to bottom, #f3f2f2 0%, #fdfdfd 100%);
      /* W3C */
    }
    .wrp_h2:before {
      content: "　";
      position: absolute;
      top: 50%;
      left: 50%;
      height: 120px;
      width: 100%;
      -webkit-transform: translateY(-50%) translateX(-50%);
      transform: translateY(-50%) translateX(-50%);
      background: url("../img/common/mainv.png") no-repeat -62px 0px;
      opacity:.3;
    }
    .wrp_h2 > div {
      position: absolute;
      top: 50%;
      left: 52%;
      width:100%;
      -webkit-transform: translateY(-50%) translateX(-50%);
      transform: translateY(-50%) translateX(-50%);
      text-shadow:0px 0px 3px rgba(255,255,255,1.0),0px 0px 3px rgba(255,255,255,1.0),0px 0px 3px rgba(255,255,255,1.0),0px 0px 4px rgba(255,255,255,1.0),0px 0px 5px rgba(255,255,255,1.0),0px 0px 5px rgba(255,255,255,1.0);
    }
    .wrp_h2 > div h2, .wrp_h2 > div .single-h2{
      font-size: 1.8rem;
      margin: 0px 0px 4px 0px;
      letter-spacing: 3px;
    }
    .wrp_h2 > div h2 span, .wrp_h2 > div .single-h2 span{
      font-size: 1.4rem;
      color: var(--color-primary);
      margin-left: 0px;
      letter-spacing: 1px;
    }
    .wrp_h2 > div p {
      letter-spacing: 2px;
      margin: 8px 0px 0px 2px;
    }
    .wrp_main {
      margin: 0px auto;
      padding: 15px 2% 15px 2%;
    }
    .wrp_main > .maincont {
    }
    .wrp_main > .maincont .h3style {
	border-top: solid 1px #cbcbcb;
	border-bottom: solid 1px #cbcbcb;
	font-size: 2.0rem;
  line-height: 1.6;
	padding: 15px 0px;
	font-weight: bold;
  display: flex;
    }
    .wrp_main > .maincont .h3style:before {
      content: "　";
      display: inline-block;
      width: 15px;
      height: auto;
      margin: 0px 15px 0px 0px;
      background: var(--color-primary);
      vertical-align: bottom;
    }
    .wrp_main > .maincont .h4style {
      background:#f3f3f3;
      font-size: 20px;
      margin:10px 0 10px;
      padding: 10px 0px;
      font-weight: bold;
      display:flex;
      display:-webkit-flex;
      align-items:center;
      -webkit-align-items:center;
      line-height:1.2;
    }
    .wrp_main > .maincont .h4style:before {
      content: "　";
      display: inline-block;
      width: 10px;
      height: 22px;
      margin: 0px 15px 0px 10px;
      background: var(--color-primary);
      vertical-align: bottom;
    }
    .wrp_main > aside{display:none;}
    
    .wrp_footer {
      background: var(--color-primary);
    }
    .wrp_footer footer {
      margin: 0px auto;
      padding: 0px 2%;
    }
    .wrp_footer .f_left {
      
    }
    .wrp_footer .f_left nav{
      display:none;
    }
    
    .wrp_footer .f_left li {
      font-size: 12px;
      display: inline-block;
    }
    .wrp_footer .f_left li:after {
      content: "|";
      margin: 0px 0px 0px 4px;
      display: inline-block;
    }
    .wrp_footer .f_left li:last-of-type:after {
      content: none;
    }
    .wrp_footer .f_left li a {
      color:#fff;
    }
    .wrp_footer .f_left p {
      padding: 10px 0px;
      font-size: 1.0rem;
      line-height: 160%;
      color:#fff;
    }
    .wrp_footer .f_right {
      text-align: center;
      font-size: 1.2rem;
    }
    .wrp_footer .f_right p {
      padding: 10px 0px 40px 0px;
      font-size:1.0rem;
      color:#fff;
    }
    .wrp_footer .f_right p a{
      color:#fff;
    }
    .wrp_footer .f_right [src$="flogo.png"]{
      width:26%;
      margin: 0 auto;
      display:block;
    }
    .dispnone{
      display:none;
    }
    
    #rat_sec {
      width: 100%;
      margin:0px auto;
    }
    
    #rat_sec .rat_wako_img{
      padding:10px 0px;
      width:100%;
    }
    
    #rat_sec h2{
      font-size:1.6rem;
      padding:18px 0px;
      border-top:solid 1px #000000;
    }
    
    #rat_sec h2 span{
      color:#ed1c24;
    }
    
    #rat_sec p{
      width: 100%;
      line-height:160%;
      font-size:1.3rem;
    }
    #rat_sec a{
      margin:10px auto;
      width:234px;
      display:block;
    }
    [src$="pic_rat.jpg"]{
      width:100%;
    }	
    #guri_sec {
      width:100%;
      margin:0px auto;
    }
    
    #guri_sec .guri_img{
      padding:18px 0px;
      margin:0px auto;
      display:block;
      width:100%;
    }
    
    #guri_sec h2{
      font-size:1.6rem;
      margin:10px 0px;
      line-height:1.4;
    }
    #guri_sec iframe{
	width:100%;
    }
    #guri_sec p span{
      color:#ed1c24;
    }
    
    #guri_sec p{
      line-height:160%;
      font-size:1.3rem;
    }
    #guri_sec a{
      margin:10px auto;
      display:block;
      text-align:center;
    }
    #guri_sec a [src$="bt_guri.png"]{
      width:100%;
    }
    #wg_contactUs{
      border:solid 2px #cbcbcb;
      border-radius:5px;
      background:#FBFBFB;
      padding: 14px 5px 20px 14px;
      margin-top:20px;
    }
    
    #wg_contactUs h3, #wg_contactUs .inner-head{
      font-size:2.0rem;
      line-height:1.2;
    }
    
    #wg_contactUs h3 span, #wg_contactUs .inner-head span{
      color:#ED1B23;
    }
    
    #wg_contactUs .wg_add{
      padding:18px 0px;
    }
    
    #wg_contactUs .wg_add li{
      margin-right:0px;
      font-size:1.4rem;
      padding:8px 0;
    }
    #wg_contactUs .wg_add li:nth-of-type(2){
    	position:relative;
      left:-14px;
    }
    #wg_contactUs .wg_add li a{
      color:var(--color-primary);
      font-size:1.6rem;
    }
    .wg_other_add{
      font-size:1.2rem;
      line-height:1.4;
    }
    
    .clearfix:after {
      content: "";
      clear: both;
      display: block;
    }
    
    .f_sns a{
      color:#fff;
    }
}