@charset "utf-8";
/*
Theme Name: company
Theme URI: http://sphere-links.co.jp/
Description: company
Version: 1.0
Author: sphere-links
Author URI: http://sphere-links.co.jp/
Tags: company

*/

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

body {
    line-height: 1;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

ul,ol {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}




/* change colours to suit your needs */

ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none;
}


/* change colours to suit your needs */

mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold;
}

del {
    text-decoration: line-through;
}

abbr[title],
dfn[title] {
    border-bottom: 1px dotted;
    cursor: help;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}


/* change border colour to suit your needs */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #cccccc;
    margin: 1em 0;
    padding: 0;
}

input,
select {
    vertical-align: middle;
}



/*************************************************************

ここまでリセット

*************************************************************/
/*共通*/
/*全体のフォントサイズを指定、remでbodyに引っ張られないようにする*/
html {
  font-size: 62.5%;
  font-family:"Noto Sans JP","游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  scroll-behavior: smooth;
}

body {
	font-size: 1.6rem;
	line-height: normal;/*詰まりすぎを防ぐ*/
	color: #231815;
	margin: 0 auto;
    line-height: 1.8;
}
/*全体のフォントサイズを指定*/

a{
	color: #231815;
	text-decoration: none;
}

a:hover{
    transition : 0.5s;
}

a:hover img{
  opacity: 0.8;
  filter: alpha(opacity=80);
  -ms-filter: "alpha(opacity=80)";
  
}

.clearfix:after{
  display: table;
  clear: both;
  content: "";
}

div{
	box-sizing: border-box;
}

img{
	max-width: 100%;
	vertical-align: bottom;
}

/*ヘッダー*/

.home header {
    position: relative;
}
header {
    position: fixed;
    top: 0;
    left: 0;
    background: #fff;
    width: 100%;
    z-index: 20;
}

.home header + div{
    margin-top: 110px;
}


.header_box {
    max-width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    height: 130px;
}
.home .header_box {
    height: 130px;
    margin: 0;
    float: right;
    width: 100%;
}



@media screen and (max-width: 1194px){
.header_box {
    height: 110px;
}
.under	.header_box {
   display: none;
}
}




@media screen and (max-width: 834px){
.header_box {
    display: none;
}
}
.clone_nav {
    height: 130px;

}
.visible2 .clone_nav{
    height: 130px;
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    max-width: 100%;
    background: #fff;
}

.visible2 .menu-container {
    justify-content: flex-end;
}
.home .clone_nav{
    height: 130px;
}
.home .visible2  #g_nav {
    width: 65%;
}

.header_btn_box {
    width: 35%;
    margin-top: 10px;
    display: flex;
    justify-content: space-between;
	align-items:flex-start;
}
.header_btn_box .btn1 {
    border: 1px solid #d2ab84;
    box-sizing: border-box;
    position: relative;
    color: #d2ab84;
    padding: 10px 0 10px 15px;
    flex-basis: 32%;
    background: none no-repeat 93% center;
}
.header_btn_box .btn1.btn1_2 {
    background: none no-repeat 94% center;
}
.header_btn_box .btn1:before{
	position: absolute;
	content: "";
	height: 100%;
	width: 1px;
	right: 40px;
	top: 0;
	background: #d2ab84;
}
.header_btn_box .btn2 {
    box-sizing: border-box;
    position: relative;
    color: #d2ab84;
    padding: 12px 0 12px 55px;
    flex-basis: 32%;
    background: none no-repeat left center;
}

header nav{
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.sp_nav{
    display: none;
}
header nav ul{
	display: flex;
}
header nav ul a:hover{
	color: #ed6d00;
}
#sp_g_nav{
	display: none;
}

@media screen and (max-width: 1500px){
	.header_btn_box .btn1{
		font-size: 12px;
    background: none no-repeat 89% center;
    background-size: 14px 20px;
	padding: 10px 0 10px 5px;
	}
.header_btn_box .btn1.btn1_2 {
    background: none no-repeat 92% center;
    background-size: 18px 12px;
}
.header_btn_box .btn2 {
    padding: 6px 0 6px 35px;
    background: none no-repeat left center;
    background-size: 30px 30px;
}
}
@media screen and (max-width: 1200px){
.menu-container {
    width: 50%;
}
.header_btn_box {
    width: 45%;
}
}



@media screen and (max-width:1194px){
.home .clone_nav {
    height: 110px;
}
}



@media screen and (max-width: 1194px){
		header nav{
		padding: 0 ;
	}
	.sp_nav{
        display: block
    }
.h_sns>div h1 {
    font-size: 13px;
	padding: 5px 0;
}
header {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 20;
    padding: 0;
    max-width: 100%;
}
	.under #sp_g_nav{
		display: block;
	}
#sp_g_nav {
    z-index: 20;
    width: 100%;
    background: #F5F4ED;
    overflow-y: scroll;
    position: relative;
}


    .sp_logo {
        position: absolute;
        top: 15px;
        left: 20px;
        text-align: left;
        width: 177px;
    }
	.sp_logo img{
		width: 100%;
	}
	
	.sp_to_top{
		position: absolute;
		top: 10px;
		right: 10px;
		width: 100px;
	}

    .lg_m {
        text-align: right;
        background: #fff;
        height: 60px;
    }
    .inq_sp {
        position: absolute;
        width: 65px;
        height: 60px;
        font-size: 0.9rem;
        text-align: center;
        right: 60px;
        top: 0;
        line-height: 1.2;
        letter-spacing: -0.05em;
        padding-top: 6px;
        box-sizing: border-box;
        border-left: 1px solid #1c1a62;
        color: #1c1a62;
    }
	.inq_sp.tab{
		display: none;
	}
    .inq_sp img {
        max-width: 25px;
        display: block;
        margin: 0 auto 5px;
    }
	/*メニューの動き*/
	.menu-trigger,
	.menu-trigger span{
	  display: inline-block;
	  transition: all .4s;
	  box-sizing: border-box;
	  cursor :pointer;
	}
    .menu-trigger {
        position: relative;
        width: 60px;
        height: 60px;
        z-index: 2;
        background: #143990;
    }
    .menu-trigger span {
        position: absolute;
        background: #fff;
        width: 40px;
        height: 2px;
        left: 0;
        right: 0;
        margin: auto;
    }
    .menu-trigger span:nth-of-type(1) {
        top: 25px;
    }
	.menu-trigger span:nth-of-type(2){
	  top: 0;
	  bottom: 0;
      display: none;
	}
    .menu-trigger span:nth-of-type(3) {
        bottom: 22px;
    }
	.menu-trigger.active span:nth-of-type(1){
	  -webkit-transform: translateY(9px) rotate(-45deg);
		transform: translateY(9px) rotate(-45deg);
		top: 22px
	}
	.menu-trigger.active span:nth-of-type(2){
	  opacity: 0;
	}
.menu-trigger.active span:nth-of-type(3) {
    -webkit-transform: translateY(-9px) rotate(45deg);
    transform: translateY(-9px) rotate(45deg);
    bottom: 18px;
}
	/*メニューの動き END*/

    #sp_g_nav .sp_nav ul {
        background-color: #F5F4ED;
        opacity: 1;
        display: block;
	
    }
	.sp_nav > ul{
				padding-bottom: 100px;
	}
	#sp_g_nav .sp_nav ul.dropdown{
		border-top: 1px solid #10305a;

	}

	.sp_nav{
	  display: none;
	  position: absolute;
	  top: 70;
	  width: 100%;
	z-index: 3;
    max-height: calc( 100vh - 60px );
    overflow-y: scroll;
    position: relative;
		background-color: #F5F4ED;
	}
	.sp_nav > ul{
			height: 100vh;
		
	}
    #sp_g_nav .sp_nav li {
        text-align: center;
        width: 96%;
        border-bottom: solid 1px #1C1A62;
        position: relative;
        margin: 0 auto;
    }
#sp_g_nav .sp_nav li span.arrow_icon {
    top: 18px;
    right: 26px;
    width: 15px;
    height: 15px;
    content: "";
    background: none no-repeat center top;
	position: absolute;
}
#sp_g_nav .sp_nav li a, #sp_g_nav .sp_nav li span{
    display: block;
    padding: 10px 5px;
    color: #1C1A62;
    font-size: 1.4rem;
	text-align: left;
}
#sp_g_nav .sp_nav li.mega {
    background: url(444da1fd1d46085d.png) no-repeat right 10px top 10px;
}
	#sp_g_nav .sp_nav li.mega.active {
    background: url(e21052fa9ad4dae3.png) no-repeat right 10px top 10px;
}

#sp_g_nav .sp_nav li.icon {
    border-bottom: none;
    margin-bottom: 30px;
    margin-top: 30px;
}
	#sp_g_nav .sp_nav li.icon a{
		color: #fff;
		background: #1c1a62;
		font-size: 1.4rem;
		padding: 20px 5px;
		box-sizing: border-box;
	}
#sp_g_nav .sp_nav li.icon a img {
    padding-left: 70px;
    box-sizing: border-box;
    padding-right: 30px;
}
	#sp_g_nav .sp_nav li.icon:nth-of-type(2) a,
	#sp_g_nav .sp_nav li.icon:nth-of-type(3) a{
		padding-right: 10px;
	}

.sp_nav div {
    display: block;
    justify-content: center;
    background-color: #d2ab84;
    opacity: 1;
    width: 100%;
}
#sp_g_nav .mega ul.dropdown .sub {
    display: flex;
    flex-wrap: wrap;
    background: #fff;
}
#sp_g_nav .mega ul.dropdown .sub li {
    width: 49%;
    position: relative;
    background: none;
    border-bottom: none;
}
#sp_g_nav .mega.mega2 ul.dropdown .sub li {
    width: 100%;
}

	#sp_g_nav .mega ul.dropdown .sub li a{
		position: relative;
		padding: 0 0 0 15px;
		margin-bottom: 20px;
	}
		#sp_g_nav .mega:last-of-type ul.dropdown .sub li  a{
		margin-bottom:10px;
	}
#sp_g_nav .mega ul.dropdown .sub li a:before {
    content: "";
    position: absolute;
    height: 1px;
    width: 6px;
    top: 12px;
    left: 4px;
    background: #eaac31;
}
#sp_g_nav .mega ul.dropdown > li {
    padding: 15px 0 0px;
    background: #ffffff;
    width: 100%;
    border-bottom: none;
}

}

@media screen and (min-width:835px) and ( max-width:1194px) {/*タブレット横のみ*/
	#sp_g_nav .sp_nav li.icon{
		display: none;
	}
	.inq_sp.tab{
		display: block;
	}
	.tab_btn .inq_sp:first-child{
		right: 400px;
	}
		.tab_btn .inq_sp:nth-child(2){
		right: 300px;
	}
	.tab_btn .inq_sp:nth-child(3){
		right: 200px;
	}
	.tab_btn .inq_sp:nth-child(4){
		right: 100px;
    color: #fff;
    background: #191955;
	}
.inq_sp {
    padding-top: 28px!important;
}
.inq_sp img {
    max-width: 20px!important;
    margin: 0 auto 10px!important;
}
.sp_logo {
    top: 32px!important;
    max-width: 198px;
}
}

@media screen and (max-width: 834px){
#sp_g_nav {
    display: block;
}
	#g_nav{
		display: none;
	}
.home header {
    position: fixed;
}
}

@media screen and (min-width:601px) and ( max-width:1194px) {/*タブレット縦*/
.lg_m {
    height: 100px;
}
.menu-trigger {
    width: 100px;
    height: 100px;
}
.inq_sp {
    position: absolute;
    width: 100px;
    height: 100px;
    font-size: 1.3rem;
    right: 100px;
    padding-top: 20px;
}
.sp_logo {
    top: 20px;
    left: 40px;
    width: 295px;
}
.menu-trigger span:nth-of-type(1) {
    top: 40px;
}
.menu-trigger span:nth-of-type(3) {
    bottom: 40px;
}
.menu-trigger span {
    width: 60px;
}
.menu-trigger.active span:nth-of-type(1) {
    top: 45px;
}
.menu-trigger.active span:nth-of-type(3) {
    bottom: 34px;
}
#sp_g_nav .sp_nav li a, #sp_g_nav .sp_nav li span {
    padding: 20px 5px;
    font-size: 2.6rem;
}
#sp_g_nav .sp_nav li.mega {
    background: url(444da1fd1d46085d.png) no-repeat right 10px top 30px;
}
#sp_g_nav .sp_nav li.mega.active {
    background: url(e21052fa9ad4dae3.png) no-repeat right 10px top 26px;
}
#sp_g_nav .mega ul.dropdown .sub li a {
    padding: 0 0 0 30px;

}
#sp_g_nav .mega ul.dropdown .sub li a:before {
    width: 15px;
    top: 23px;
    left: 4px;
}
#sp_g_nav .mega ul.dropdown > li {
    padding: 50px 30px 30px;
    box-sizing: border-box;
}
#sp_g_nav .sp_nav li.icon a {
    font-size: 2.6rem;
}
#sp_g_nav .sp_nav li.icon a img {
    vertical-align: middle;
}
.inq_sp img {
    max-width: 37px;
    margin: 0 auto 6px;
}
	.sp_nav{
    max-height: calc( 100vh - 100px );
	}
}


/*トップ*/
.mainimage.flex {
    position: relative;
    display: flex;
    flex-wrap: wrap;
}



.main_txt{
    width: 35%;
}
.main_txt_under {
    padding-left: 50%;
    padding-top: 25%;
}
.main_left{
    width: 100%;
}
.home .main_left{
    width: 65%;
}

.main_slider{
    margin-bottom: 0!important;
}
.main_slider li.slick-slide{
    height: calc(100vh - 130px);
}
.main_slider li.main1{
    background: no-repeat center top;
    background-size: cover;
}
.main_slider li.main2{
    background: no-repeat left top;
    background-size: cover;

}
.main_slider li.main3{
    background: no-repeat left top;
    background-size: cover;

}
.main_slider img{
    width: 100%;
}



.main_slider .slick-dots {
    bottom: -12%;
    width: auto;
    padding: 50px 0 0;
    margin: 0;
    box-sizing: border-box;
    top: auto;
    text-align: left;
    left: -28%;
    right: auto;
    display: inline-block!important;
    transition: 1s all;
    height: 140px;
}

.main_slider .slick-dots{
    transition:1s all;
  }

 .visible2 .main_slider .slick-dots{
   opacity:0;
   transition:1s all;
 }



@media screen and (max-width: 2000px){
.main_slider .slick-dots {
    bottom: -130px;
}
}
.slick-dots li{
    pointer-events: none!important;
}
.slick-dots li.slick-active button:before {
    opacity: 1;
    color: #1c1a62;
}
.main_slider .slick-dots:before {
    color: #1c1a62;
}
.main_slider .slick-dots li button:before{
	font-size:40px!important;
    font-family:"Noto Sans JP","游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
}
.mainimage .logo{
    margin-bottom: 95px;
}
.mainimage .main_catch_img{
    margin-bottom: 50px;
}
.mainimage .main_catch{
    font-size: 2rem;
    text-align: left;
    font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
}
.sp_main{
    display: none;
}

@media screen and (max-width: 1700px){
.main_txt {
        width: 25%;
    }
.main_txt_under {
    padding-left: 30%;
}
.home .main_left {
    width: 70%;
}
.home .visible2  #g_nav {
    width: 70%;
}
}

@media screen and (max-width: 1194px){
.main_txt {
    width: 37.5%;
}
.home .main_left {
    width: 62.5%;
    padding-bottom: 110px;
}
.main_slider li.slick-slide {
    height: 500px;
}
.home header .clone_nav {
    height: 110px;
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100%;
}
	.home #g_nav {
    width: 80%!important;
}
	.home header.visible2 .clone_nav {
    width: 100%;
    position: fixed;
}
.home .visible2  #g_nav {
    width: 80%;
}
.clone_nav {
    height: auto;
}

.mainimage .logo {
    margin-bottom: 70px;
}
.mainimage .main_catch {
    font-size: 2rem;
}
.main_txt_under {
    padding-left: 17%;
}
.main_slider .slick-dots {
    bottom: -120px;
    left: -50%;
}
}


@media screen and (max-width: 834px){
    .home header + div {
        margin-top: 60px;
    }
    .sp_main{
        display: block;
    }
    .main_slider .slick-dots{
        display: none;
    }

    .mainimage.flex{
        display: none;
    }


    .mainimage img {
        display: block;
        width: 100%;
    }
.mainimage {
	height:auto;
	background: none;
	margin-top: 50px;
}
}

@media screen and (min-width:601px) and ( max-width:834px) {/*タブレット縦*/
body {
    font-size: 2.2rem;
}
.home header + div {
    margin-top: 100px;
}
}

.clearfix{
	overflow: hidden;
}
.flex{
	display: flex;
	justify-content: space-between;
}
.btn {
    display: block;
    background: #fff;
    color: #000;
    text-align: center;
    width: 210px;
    margin: 0 auto;
    border: solid 1px #000;
    padding: 6px 0px;
    font-size: 17px;
    border-radius: 30px;
}
.btn a{
	display: block;
	position: relative;
	color: #000;
}
.btn a:before {
    content: "";
    position: absolute;
    background: none;
    width: 29px;
    height: 12px;
    right: 14px;
    top: 7px;
}
.btn a:hover{
	opacity: 0.7;
}

/*トップ-コンテンツ*/

.line_box{
	height: 40px;
	width: 100%;
	background: none repeat ;
}
.contents_box {
    max-width: 1020px;
    margin: 0 auto;
    padding: 0 10px;
    position: relative;
}

.top_contents h2 {
    font-size: 15rem;
    color: #0A0A46;
    margin-bottom: 50px;
    line-height: 15rem;
    text-align: left;
	position: relative;
	border-bottom: 4px solid #0A0A46;
	
}
.top_contents h2 span {
    max-width: 1024px;
    margin: 0 auto;
    display: block;
}
#contents1 {
    padding: 20px 0 150px;
    background: url(bc36ad0343e8cc54.png) repeat left top #191955;
    color: #fff;
	position: relative;
}
#contents1:before {
    position: absolute;
    content: "";
    width: 30.5%;
    height: 100%;
    top: 0;
    right: 0;
    background: #003282;
    z-index: 1;
}

#contents1:after {
    position: absolute;
    content: "";
    width: 100%;
    height:180px;
   bottom: 0;
    right: 0;
    background: #003282;
}
@media screen and (max-width: 2000px){
#contents1:before {
    width: 23.7%;
}
	#contents1:after {
    height: 200px;
}
}

@media screen and (max-width: 1400px){
#contents1:before {
    width: 12.5%;
}
#contents1:after {
    height: 150px;
}
}

@media screen and (max-width: 1194px){
#contents1:before {
    width: 5.9%;
}
#contents1:after {
    height: 155px;
}
}
#contents1 h3 {
    font-weight: bold;
    font-size: 2.2rem;
    margin-bottom: 27px;
}
#contents1 .contents_box {
    max-width: 1300px;
    padding-left: 140px;
    z-index: 1;
    
}
#contents1 .contents_box > .flex {
    margin-right: calc(( 1297px - 100vw)/2);
}
/*
@media screen and (max-width: 2000px){
    #contents1 .contents_box > .flex{
        margin-right: calc(( 1295px - 100vw)/2);
    }
}*/


@media screen and (max-width: 1200px){
#contents1 .contents_box > .flex {
    margin-right: calc(( 1280px - 100vw)/2);
}
}
@media screen and (max-width: 1200px){
#contents1 .contents_box > .flex {
    margin-right: 0;
}
}
.con1_left {
    flex-basis: 14.7%;
    max-width: 200px;
}
.con1_news {
    flex-basis: 82.6%;
}
.con1_left .p1{
    font-size: 1.8rem;
    line-height: 1.8;
    margin-bottom: 30px;
}
a.viewall {
    color: #fff;
    font-size: 1.8rem;
    background: url(7d55d33c430542a9.png) no-repeat right 10px;
    display: block;
    width: 100%;
    padding: 20px 0;
    margin-bottom: 20px;
}
.con1_left .bn1,.con1_left .bn2{
    margin-bottom: 25px;
}
#contents1 .icon_btn{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
#contents1 .icon_btn li{
    width: 30px;
    height: 30px;
    margin-right: 30px;
}
#contents1 .icon_btn li:last-child{
    margin-right: 0;
}
#contents1 .icon_btn li a{
    background: #fff;
    border-radius: 50%;
    text-align: center;
    display: block;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
}

#contents1 .icon_btn li a:hover{
    opacity: 1;
    background: #FFFF00;
}
#contents1 .icon_btn li a img {
    vertical-align: middle;
    max-width: 18px;
}
#contents1 .icon_btn li:first-child a img {
    padding-top: 1px;
	  max-width: 13px;
}
#contents1 .flex {
    margin-bottom: 30px;
    align-items: flex-start;
}
.con1_news {
    color: #000;
    background: rgba(255, 255, 255, 0.9);
    padding: 25px 0 25px 25px;
    box-sizing: border-box;
    margin-top: -120px;
    /* max-width: 890px; */
    z-index: 10;
    /* flex-basis: auto; */
}


dl.news {
    max-width: 720px;
    display: flex;
    flex-wrap: wrap;
}
.con1_news dl.news {
    max-width: 725px;
	width: 100%;
}
dl.news {
    margin-bottom: 0;
	overflow: hidden;
}
dl.news dt {
    padding-bottom: 25px;
    padding-top: 25px;
    width: 18%;
    border-bottom: 1px solid #9797b5;
}


dl.news dt a {
    width: 100px;
    color: #f41e84;
    text-align: center;
    border: 1px solid #f41e84;
    border-radius: 5px;
    padding: 5px 10px;
    margin-right: 20px;
    box-sizing: border-box;
    display: block;
    font-size: 1.4rem;
}
dl.news dt a:hover{
	opacity: 0.8;
}

dl.news dt.cat_recruit a {
    color: #0078FF;
    border: 1px solid #0078FF;
}
dl.news dt.cat_product a {
    color: #00823C;
    border: 1px solid #00823C;
}
dl.news dt.cat_attempt a {
    color: #FF871E;
    border: 1px solid #FF871E;
}


dl.news dd {
    width: 82%;
    border-bottom: 1px solid #9797b5;
    padding-top: 25px;
    padding-bottom: 25px;
    box-sizing: border-box;
    font-size: 1.5rem;
    line-height: 1.8;
}
.home dl.news dt:last-of-type{
    border-bottom: none;
    padding-bottom: 0;
}
.home dl.news dd:last-of-type{
    padding-bottom:0;
	  border-bottom: none;
}

dl.news dd .day{
    font-size:1.4rem;
}
dl.news dd a:hover{
    color:#FF6400;
}
dl.news dt .cat_box a:hover{
	opacity: 0.8;
}
.clearfix{
    overflow: hidden;
}
#contents1 .clearfix {
    max-width: 1010px;
}
#contents1 .clearfix a.viewall {
    float: right;
    max-width: 167px;
    z-index: 5;
    position: relative;
}


#contents2 {
    padding: 100px 0 0;
    background: url(bc36ad0343e8cc54.png) repeat left top #191955;
    position: relative;
}


#contents2:before {
    position: absolute;
    content: "";
    width: 32%;
    height: calc(100% - 282px);
    top: 283px;
    left: 0;
    background: #003282;
    z-index: 1;
}

@media screen and (max-width: 1200px){
#contents2:before {
    height: calc(100% - 253px);
    top: 253px;

}
}



.con2_left {
    flex-basis: 28%;
    padding: 50px 30px;
    max-width: 280px;
    color: #fff;
    z-index: 2;
    background: #003282;
    box-sizing: border-box;
}
.con2_main {
    flex-basis: 67%;
    color: #fff;
    z-index: 1;
    margin-top: 70px;
    padding-bottom: 100px;
}
.con2_main .flex{
    flex-wrap: wrap;
    color: #fff;
}
.con2_main .flex li{
    flex-basis: 46%;
    margin-bottom: 80px;
    position: relative;
    min-height: 340px;
    

}
.con2_main .flex li.hover{
    max-height:340px ;
    overflow: hidden;
}
.con2_main .flex li a.link{
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    text-indent: -9999px;
}
.con2_main .flex li.hover p.photo{
height: 100%;
max-height:340px;
transform:scale(1.05,1.05);
transition:0.5s all;
}
.con2_main .flex li.hover .txt_box{
    opacity: 0;
    transition:0.5s all;

}
.top_contents #contents2 h2 {
    margin-bottom: 0;
}
#contents2 h3 {
    font-weight: bold;
    font-size: 2.2rem;
    margin-bottom: 40px;
    
}
#contents2 .con2_left p.p1{
    font-size: 1.8rem;
    line-height: 1.8;
}

.con2_main p.p1{
    font-size: 1.6rem;
    margin-bottom: 20px;
}
.con2_main p.photo{
    height: 200px;
    overflow: hidden;
    margin-bottom: 25px;
}
.con2_main h4{
    font-size: 2.2rem;
    padding-bottom: 15px;
    margin-bottom: 15px;
    border-bottom: 1px solid #514f85;
    display: inline-block;
    position: relative;
}
.con2_main h4:before {
    position: absolute;
    content: "";
    background: url(20e708baeb764ccb.png) no-repeat right bottom;
    width: 10px;
    height: 10px;
    right: -9px;
    bottom: -5px;
}

.con2_main h4 + p{
    font-size: 1.5rem;
    height: 2em;
}


.con2_main h4 a{
    color: #fff;
}
.con2_main h4 a:hover{
    opacity: 0.8;
}

#contents2 .con2_main h3 {
    font-size: 8rem;
    color: #090652;
    line-height: 8rem;
    margin-bottom: 20px;
}
#contents2 .con2_main h3 + p{
    margin-bottom: 30px;
}
#contents2 .clearfix a.viewall {
    float: right;
    max-width: 167px;
}

#contents3 {
    padding: 100px 0 100px;
    background: url(bbf9b31d0a774d3e.png) no-repeat center top;
    background-size: cover;
    z-index: 5;
    position: relative;
}
.top_contents #contents3 h2 {
    color: #80C0CF;
    margin-bottom: 20px;
	border-bottom: none;
}
#contents3 .border_box {

    margin-bottom: 70px;
    padding: 0;
    border: none;
	    border-top: 4px solid #93c7d6;
}
#contents3 h3{
font-size: 2.2rem;
margin-bottom: 30px;
}
#contents3 p.p1{
    margin-bottom: 90px;
}
#contents3 ul.slide_menu{
    overflow-x: auto;
	white-space: nowrap;
    box-sizing: border-box;
}
#contents3 ul.slide_menu li {
    max-width: 320px;
    margin-right: 6%;
    display: inline-block;
    text-align: center;
}
#contents3 ul.slide_menu li:last-child{
    margin-right: 0;
}
#contents3 .contents_box.w1080{
    max-width: 1100px;
}
#contents3 ul.slide_menu li .photo {
    margin-bottom: 55px;
    overflow: hidden;
}
#contents3 ul.slide_menu li .photo a img{
    display: block;
    height: 188px;
    object-fit: cover;
    width: 100%;
    max-width: 300px;
}

#contents3 ul.slide_menu li h4{
    font-size: 2.2rem;
    margin-bottom: 80px;
}


.simplebar-scrollbar::before {
  background: #f56f00!important;
	border-radius:0!important;
}
.simplebar-scrollbar.simplebar-visible::before {
      opacity: 1!important;
    }
.simplebar-track {
  background: #ffffff!important;
	border-radius:0!important;
}

  #contents4 {
    padding: 40px 0 200px;
		        background: url(bc36ad0343e8cc54.png) repeat left top #191955;
	position: relative;
}
#contents4:before {
    position: absolute;
    content: "";
    width: 30.5%;
    height: 100%;
    top: 0;
    right: 0;
    z-index: 1;
    background: #003282;
}
@media screen and (max-width: 2000px){
#contents4:before {
    width: 23.7%;
}
}
@media screen and (max-width: 1400px){
    #contents4:before {
        width: 12.5%;
    }
    }
@media screen and (max-width: 1194px){
#contents2:before {
    display: none;
}
}
#contents4 h2 {
    margin-bottom: 0;
    z-index: 10;
}
#contents4 .contents_box{
    max-width:1140px;
    position: static;
}
#contents4 .flex {
    align-items: center;
    margin-bottom: 75px;
    min-height: 385px;
}
.con4_left {
    flex-basis: 16%;
    max-width: 170px;
    color: #fff;
}
.con4_main {
    flex-basis: 81.3%;
    color: #fff;
    max-width: 910px;
    z-index: 2;
    /* margin-right: calc((1136px - 100vw)/2); */
    position: absolute;
    width: 910px;
    right: 0;
    top: 220px;
}
/*.con4_main {
    flex-basis: 81.3%;
    color: #fff;
    max-width: 910px;
    z-index: 2;
    margin-right: calc((1136px - 100vw)/2);
}*/

/*
    @media screen and (max-width: 1400px){
    .con4_main {
        margin-right: calc((1120px - 100vw)/2);
    }
}*/

    @media screen and (max-width: 1200px){
        .con4_main {
            flex-basis: 81.3%;
            color: #fff;
            max-width: 910px;
            z-index: 2;
            /* margin-right: calc((1136px - 100vw)/2); */
            position: relative;
            width: auto;
            right: auto;
            top: auto;

        }
}

.con4_main ul{
    display: flex;
    justify-content: space-between;
	margin-top: -15px;
}
.con4_main ul li{
    flex-basis: 33%;
    background: no-repeat center top;
    background-size: cover;
    height: 400px;
    position: relative;
    text-align: center;
}
.con4_main ul li:nth-child(2){
    background: no-repeat center top;
    background-size: cover;
}
.con4_main ul li:nth-child(3){
    background: no-repeat center top;
    background-size: cover;
}
.con4_main ul li a{
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
text-indent: -9999px;
}
.con4_main ul li h3{
    padding-top: 160px;
    box-sizing: border-box;
    color: #fff;
    font-size: 2.2rem;
    background: url(12b458d5500ed44a.png) no-repeat center bottom;
    padding-bottom:20px;
		transition: all 0.6s ease;

}
.con4_main ul li:hover h3{
    padding-top: 140px;
	
}
.con4_main ul li p.p1{
    display: block;
    opacity: 0;
    padding-top: 20px;
    text-align: center;
    letter-spacing: .05em;
    color: #fff;
    font-size: 14px;
    line-height: 2;
	padding-bottom: 0;
	transition: all 0.6s ease;
}
.con4_main ul li:hover p.p1{
	    opacity: 1;
	    padding-top:10px;

}

.btn-3{
    position: relative;
    display: block;
    overflow: hidden;
    width: 400px;
    height: 100px;
    margin: 1rem auto;
    text-transform: uppercase;
        text-decoration: none;
        line-height: 100px;
        color:#fff;
        background: #143990;
        text-align: center;
        font-weight: bold;
}
.btn-3:before, .btn-3:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border-top: 50px solid #090652;
    border-bottom: 50px solid #090652;
        box-sizing: border-box;
        transition: 0.5s ease-in-out;
}
.btn-3 span {
    transition: none;
    z-index: 10;
    position: relative;
}
  .btn-3:before {
    border-right: 50px solid transparent;
    transform: translateX(-100%);
  }

  .btn-3:after {
    border-left: 50px solid transparent;
    transform: translateX(100%);
  }

  .btn-3:hover {
    outline-width:0;
  }
  .btn-3:hover:before { transform: translateX(-30%); }    
  .btn-3:hover:after { transform: translateX(30%); }

#contents5 {
    padding: 120px 0;
    background: url(1c5f93f83a8a44b7.png) no-repeat center top;
    text-align: center;
    font-size: 2.5rem;
    font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
    background-size: cover;
    z-index: 5;
    position: relative;
}

.sp{
    display: none;
}


@media screen and (max-width: 1800px){
#contents1 {
    padding: 20px 0 100px;
}
}

@media screen and (max-width: 1200px){
    .con1_left .p1 {
        font-size: 1.4rem;
    }
    .con1_left {
        flex-basis: 20%;
    }
    .con1_news {
        flex-basis: 75%;
    }
    #contents1 .contents_box {
        padding-left: 10px;
    }
    #contents2 {
        padding: 70px 0 0;
    }
    }

@media screen and (max-width: 1194px){
#contents1 .contents_box {
    padding-left: 10px;
    max-width: 920px;
}
.top_contents h2 span {
    max-width: 920px;
}
.con1_left .p1 {
    font-size: 1.8rem;
}
#contents1 .contents_box > .flex {
    margin-right: calc(( 900px - 100vw)/2);
}
.con1_news dl.news {
    max-width: 640px;
    width: 100%;
}
.contents_box{
	max-width: 920px;
}
#contents2 .contents_box{
    max-width:100%;
    padding: 0;
}
#contents2 .ttl_box > .flex {
    justify-content: center;
    margin: 0 auto;
	position: relative;
}
#contents2 .ttl_box > .flex:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background: #003282;
    height: 100%;
    width: 20%;
    max-width: 200px;
}
.con2_left {
    margin-right: 50px;
}
.con2_main {
    max-width: 600px;
}
#contents2 .con2_main h3 {
    font-size: 7.5rem;
    line-height: 7.5rem;
}
#contents3 .contents_box.w1080 {
    max-width: 920px;
}
#contents4 .contents_box {
    max-width: 920px;
}
.con4_main {
    margin-right: calc((900px - 100vw)/2);
}
#contents4 {
    padding: 40px 0 100px;
}
}

@media screen and (max-width: 1194px){
.con2_main .flex li.hover p.photo {
    height: auto;
    max-height: 200px;
    transform: scale(1,1);
    transition: none;
}
.con2_main .flex li.hover .txt_box{
    opacity: 1;
    transition: none;
}
.con2_main .flex li.hover {
    max-height: 100%;
    overflow: hidden;
}

#contents4 .bg_box {
    padding: 30px 30px;
}
#contents4 > .img_p {
    max-width: 230px;
}
#contents4 h4 {
    font-size: 26px;
}
.con2_main .flex li {
    min-height: 0;
    height: auto;
}
.con2_main h4 + p {
    height: auto;
}
	.con2_main .flex li a.link:hover{
		transition: none;
	}
}
@media screen and (max-width: 834px){
    .sp{
        display:block;
    }
    .pc{
        display: none!important;
    }
    .sp.main_flex {
        padding: 20px;
        display: flex;
        align-items: center;
        box-sizing: border-box;
        justify-content: space-between;
    }
    .sp.main_flex .main_catch_img{
        flex-basis: 46%;
    }
    .sp.main_flex .main_catch{
        flex-basis: 50%;
        font-size: 1.2rem;
        font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
    }
.top_contents h2 {
    font-size: 2.6rem;
    line-height: 2.6rem;
    margin-bottom: 20px;
    border-bottom: none;
    padding-left: 20px;
    padding-right: 20px;
}

    
    .contents_box {
        padding: 0 20px;
        max-width: 100%;
    }
    .flex {
        display: block;
    }
    
    #contents1 {
        padding: 0 0 30px;
        background: url(8acb2db49c480f74.png) repeat left top #1c1a62;
    }
	#contents1:before{
		display: none;
	}
    #contents1 .icon_btn li a img {
        vertical-align: bottom;
    }
    #contents1 .icon_btn li a.fb {
        padding-top: 4px;
        padding-right: 1px;
    }
    #contents1 .contents_box > .flex {
    margin-right: 0;
}
    .con1_left {
        max-width: 100%;
    }
    #contents1 h3 {
        font-size: 1.4rem;
        margin-bottom: 5px;
    }
    
    .con1_news {
        margin-top: 0;
        padding: 15px 20px;
        margin-bottom: 40px;
    }
    dl.news dt {
        padding-bottom: 0;
        padding-top: 0;
        width: 100%;
        border-bottom: none;
    }
    dl.news dt a {
        font-size: 1rem;
        width: 60px;
        padding: 0;
    }
    dl.news dd {
        border-bottom: 1px solid #9797b5;
        padding-top:5px;
        font-size: 1.2rem;
        padding-bottom: 20px;
        width: 100%;
        margin-bottom: 10px;
    }
    a.viewall{
        max-width: 100px;
        font-size: 1.2rem;
        float: right;
    }
    #contents1 .clearfix a.viewall {
        float: right;
        max-width: 100px;
        width: 100px;
        padding-top: 0;
    }
    a.viewall {
        background: url(7d55d33c430542a9.png) no-repeat right 0;
        background-size: 49px auto;
    }
    #contents1 .contents_box {
        padding-left: 20px;
    }
    #contents1 .sp_bn .flex{
        display: flex;
        justify-content: space-between;
    }
	#contents1 .sp_bn .flex:first-of-type{
		max-width: 335px;
	}
#contents1 .icon_btn li {
    width: 40px;
    height: 40px;
    margin-right: 30px;
}
    #contents1 .sp_bn .flex p{
flex-basis: 48%;
    }
	#contents1 > .contents_box > .flex + .clearfix{
		display: none;
	} 
.con1_left .p1 {
    font-size: 1.2rem;
}
.pc_bn{
    display: none;
}
	#contents1:after{
		display: none;
	}
    #contents2 {
        padding: 15px 0 50px;
        background: url(d9e301d56ba3b6e6.png) repeat left top #143990;
    }
.con2_main {
    padding-right: 20px;
    padding-left: 20px;
    padding-top: 0;
    padding-bottom: 0;
    margin-top: 0;
}
.top_contents #contents2 h2{
    margin-bottom: 20px;
    color: #0a2882;
}
	#contents2 .ttl_box > .flex:before{
		display: none;
	}
#contents2 h3{
    font-size: 1.4rem;
    margin-bottom:10px;
}
#contents2 .con2_left p.p1 {
    font-size: 1.2rem;
    line-height: 1.8;
    margin-bottom: 30px;
}
.con2_left {
    max-width: 100%;
    background: none;
    padding: 0 20px;
    margin-right: 0;
}
#contents2 .clearfix a.viewall {
    float: right;
    max-width: 100px;
    padding-top: 0;
    padding-bottom: 10px;
}
.con2_main p.p1 {
    font-size: 1.2rem;
    margin-bottom: 30px;
}
.con2_main .flex {
    flex-wrap: wrap;
    color: #fff;
    display: flex;
}
.con2_main p.photo {

    margin-bottom: 10px;
}
.con2_main h4 {
    font-size: 1.4rem;
    padding-bottom: 5px;
    margin-bottom: 10px;
}

#contents2 .con2_main h3 {
    font-size: 2rem;
    line-height: 2rem;
    margin-bottom: 10px;
}
.con2_main h4 + p {
    font-size: 1.2rem;
    height: auto;
}
.con2_main .flex li {
    margin-bottom: 30px;
    min-height: 0;
}
#contents2 .clearfix.bottom{
    margin-bottom: 0;
}
.con2_main .flex li:hover .txt_box {
    opacity: 1;
    transition: none;
}

#contents3 {
    padding: 10px 0 50px;
    background: url(4314a39af93b5161.png) no-repeat center top;
    background-size: cover;
}
#contents3 .border_box {
    border-top: none;
    margin-bottom: 0;
}
.top_contents #contents3 h2 {
    padding-left: 0;
}
#contents3 h3 {
    font-size: 1.4rem;
    margin-bottom: 15px;
}
#contents3 p.p1 {
    font-size: 1.2rem;
    margin-bottom:35px;
}
#contents3 ul.slide_menu li {
    max-width: 320px;
    margin-right: 0;
    text-align: center;
    padding: 0 10px;
}
#contents3 ul.slide_menu li h4 {
    font-size: 1.4rem;
    margin-bottom: 60px;
}
#contents3 ul.slide_menu .slide-arrow.prev-arrow.slick-arrow{
    position: absolute;
    left: 30%;

    z-index: 10;
    bottom: 0;
}
#contents3 ul.slide_menu .slide-arrow.next-arrow.slick-arrow{
    position: absolute;
    right:30%;
    z-index: 10;
    bottom: 0px;

}
	#contents3 ul.slide_menu li .photo {
    margin-bottom: 20px;
}
#contents3 ul.slide_menu {
    padding: 0;
}
#contents3 ul.slide_menu li .photo a img {
    height: 93px;
}
#contents4 {
    padding: 15px 0 30px;
    background: url(8acb2db49c480f74.png) repeat left top #1c1a62;
}
	#contents4:before{
		display: none;
	}
#contents4 h2{
    margin-bottom: 30px;
}


#contents4 .flex {
    margin-bottom: 80px;
    display: block;
}
.con4_main {
    margin-right: 0;
}
.con4_main ul {
    display: block;
    justify-content: space-between;
    max-width: 320px;
    margin: 0 auto;
}
.con4_main ul li {
    background: none;
    background-size: cover;
    height: auto;
    position: relative;
    text-align: center;
    display: flex;
    align-items: center;
    margin-bottom: 5px;
}
.con4_main ul li .txt {
    flex-basis: 30%;
    background: #143990;
    padding: 30px 0 0;
    min-height: 150px;
    box-sizing: border-box;
}
.con4_main ul li .img{
    flex-basis: 70%;
    background: no-repeat center top;
    height: 150px;
	background-size: cover;
}
.con4_main ul li:nth-child(2) .img{
    background: no-repeat center top;
		background-size: cover;
}
.con4_main ul li:nth-child(3) .img{
    background: no-repeat center top;
		background-size: cover;
}
.con4_main ul li h3 {
    padding-top: 0;
    box-sizing: border-box;
    color: #fff;
    font-size: 1.4rem;
    background: url(12b458d5500ed44a.png) no-repeat center bottom;
    padding-bottom: 10px;
    background-size: 40px auto;
    margin-bottom: 10px;
}
.con4_main ul li:hover h3 {
    padding-top: initial;
}
.con4_main ul li:hover p.p1 {
    opacity: 1;
    padding-top: initial;
}
.con4_main ul li p.p1 {
    display: block;
    font-size: 1.2rem;
    opacity: 1;
    padding-top: 0;
}
#contents4 .flex {
    margin-bottom: 30px;
    display: block;
}
#contents4 a.viewall {
    padding: 0 0 10px;
}
.btn-3 {
    width: 200px;
    height: 50px;
    line-height: 50px;
    font-size: 1rem;
}
.btn-3:before, .btn-3:after {
    border-top: 25px solid #090652;
    border-bottom: 25px solid #090652;
}
  .btn-3:before {
    border-right: 25px solid transparent;
    transform: translateX(-100%);
  }

  .btn-3:after {
    border-left: 25px solid transparent;
    transform: translateX(100%);
  }
#contents5 {
    padding: 50px 0;
    font-size: 1.6rem;
    background: url(1c5f93f83a8a44b7.png) no-repeat center top;
    background-size: cover;
}
}

@media screen and (min-width:601px) and ( max-width:834px) {/*タブレット縦*/
#contents1 {
    background: url(f15293dcc18c06cd.png) repeat left top #1c1a62;
}
#contents2 {
    background: url(c9ac22dd74409801.png) repeat left top #143990;
	padding: 40px 0 50px;
}
#contents4 {
    background: url(f15293dcc18c06cd.png) repeat left top #1c1a62;
}
.sp.main_flex {
    padding: 50px 20px;
    max-width: 720px;
	margin: 0 auto;
}
.contents_box {
    max-width: 720px;
}
.sp.main_flex .main_catch {
    flex-basis: 50%;
    font-size: 2.4rem;
}
.top_contents h2 {
    font-size: 5rem;
    line-height: 5rem;
    margin-bottom: 40px;
}
.top_contents h2 span {
    max-width: 680px;
}
#contents1 h3 {
    font-size: 2.4rem;
    margin-bottom: 10px;
}
#contents1 .contents_box {
    max-width: 720px;
}
.con1_left .p1 {
    font-size: 2.2rem;
}
#contents1:before {
    display: none;
}
a.viewall {
    background: url(7d55d33c430542a9.png) no-repeat right 0;
    background-size: 95px auto;
	font-size: 2.2rem;
}
#contents1 .clearfix a.viewall {
    padding-top: 5px;
    max-width: 190px;
    width: 190px;
    margin-bottom: 80px;
}
.con1_news {
    margin-top: 0;
    padding: 25px 45px;
    margin-bottom: 80px;
}
dl.news dt a {
    font-size: 1.8rem;
    width: 115px;
}
dl.news dd .day {
    font-size: 2.2rem;
	padding-bottom: 30px;
	margin-bottom: 30px;
}
	dl.news dd {
    font-size: 2.2rem;
}
#contents1 .sp_bn .flex:first-of-type {
    max-width: 680px;
    margin-bottom: 100px;
}
	#contents1 .sp_bn .flex:first-of-type img{
		width: 100%;
	}
#contents1 .icon_btn li {
    width: 60px;
    height: 60px;
    margin-right: 30px;
}
#contents1 .icon_btn li:first-child a img {
    padding-top: 11px;
    max-width: 100%;
}
#contents1 .icon_btn li a img {
    padding-top: 12px;
    vertical-align: middle;
    max-width: 100%;
}
.con2_main .flex li {
    margin-bottom: 60px;
}
#contents4 h2 {
    margin-bottom: 70px;
}
#contents2 .contents_box {
    max-width: 720px;
	padding: 0 20px;

}
#contents2 .clearfix a.viewall {
    max-width: 190px;
    padding-top: 10px;
    padding-bottom: 10px;
	margin-bottom: 100px;
}
.con2_left {
    margin-right: 0;
	padding: 0;
}
#contents2 h3 {
    font-size: 2.4rem;
}
#contents2 .con2_left p.p1 {
    font-size: 2.2rem;
}
.con2_main p.p1 {
    font-size: 2.2rem;
    margin-bottom: 60px;
}
.con2_main {
    padding-right: 0;
    padding-left: 0;
    max-width: 100%;
}
.con2_main h4 {
    font-size: 2.4rem;
    padding-bottom: 10px;
    margin-bottom:20px;
}
.con2_main h4 + p {
    font-size: 2rem;
}
#contents2 .con2_main h3 {
    font-size: 5rem;
    line-height: 5rem;
    margin-bottom: 40px;
}
#contents3 {
    padding: 50px 0 100px;
}
#contents3 .contents_box.w1080 {
    max-width: 720px;
}
#contents3 h3 {
    font-size: 2.4rem;
    margin-bottom: 15px;
}
#contents3 p.p1 {
    font-size: 2.2rem;
    margin-bottom: 35px;
}
#contents3 ul.slide_menu li .photo a img {
    height: 200px;
}
#contents3 ul.slide_menu li h4 {
    font-size: 2.4rem;
}
#contents3 ul.slide_menu .slide-arrow.prev-arrow.slick-arrow{
    left: 40%;
}
#contents3 ul.slide_menu .slide-arrow.next-arrow.slick-arrow{
    right:40%;
}
.con4_main {
    margin-right: auto;
}
.con4_main ul {
    max-width: 100%;
}
.con4_main ul li .txt {
    padding: 80px 0 0;
    min-height: 300px;
}
.con4_main ul li .img {
    background-size: cover;
    height: 300px;
}
.con4_main ul li h3 {
    font-size: 2.4rem;
    background: url(12b458d5500ed44a.png) no-repeat center bottom;
    padding-bottom: 20px;
    background-size: 80px auto;
    margin-bottom: 10px;
}
.con4_main ul li p.p1 {
    font-size: 2rem;

}
a.viewall {
    max-width: 195px;
}
#contents4 a.viewall {
    padding: 10px 0 10px;
}
.btn-3 {
    width: 410px;
    height: 100px;
    line-height: 100px;
    font-size:2rem;
}
#contents5 {
    padding: 100px 0;
    font-size: 3rem;
    background-size: cover;
}
#contents4 {
    padding: 15px 0 90px;
}
}

@media screen and (max-width: 600px){
.con2_main p.photo {
   height: 100px;
}
.con2_main .flex li:hover p.photo {
    max-height: 100px;
}
}
/*下層ページ*/
.lower{
	max-width: 1600px;
	width: 100%;
}

.lower_ttl{
	background-color: #eb6c00;		
	margin-bottom: 30px;
}

.lower_ttl>div{
	display: flex;
	justify-content: space-between;
	align-items: center;	
	max-width: 1600px;
	width: 100%;
	margin: 0 auto;
	height: 230px;	
	background-image: none;
	background-repeat: no-repeat;
	background-position: right center;
}
@media screen and (max-width: 834px){
	.lower_ttl>div{
		height: 20vw;
		background-size:40%;
		padding: 0 20px;
	}
}

.lower_ttl h2{
	font-size: 4.8rem;
	color: #fff;
}
@media screen and (max-width: 834px){
	.lower_ttl h2{
		font-size: 2.0rem;
	}	
}

@media screen and (max-width: 834px){
	.lower_col1{
		width: 95%;
	}
}

.inq_btn a{
	display: block;
	border: solid 2px #eb6c00;
	border-radius: 3px;
	width: 250px;
	margin: 0 auto;
	text-align: center;
	color: #eb6c00;
	font-size: 2.0rem;
	padding: 15px 20px;
	margin-top: 30px;
}

.inq_btn a:hover{
	background-color: #eb6c00;
	color: #fff;
}

@media screen and (max-width: 834px){

}

/*フッター*/
footer {
    background: #1c1a62;
    padding-top: 80px;
    color: #fff;
    margin-top: 95px;
}
footer .contents_box{
    margin-bottom: 0!important;
}
.home footer{
    margin-top: 0;
}
footer .footer_logo{
    flex-basis: 18%;
    max-width: 180px;
}

footer .footer_box{
	display: flex;
	justify-content: space-between;
	margin-bottom: 70px;
}
footer .footer_box .footer_con{
	flex-basis: 30%;
}

footer .footer_box .footer_nav{
	flex-basis: 70%;
}
footer .footer_box .footer_nav .flex{
	justify-content: space-between;
}
footer .footer_nav ul{
	flex-basis: 33%;
}
footer .footer_nav ul:first-of-type{
	flex-basis: 29%;
}
footer .footer_nav ul li {
    position: relative;
    padding: 0 0 4px;
    font-size: 15px;
}
footer .footer_nav ul li {
    position: relative;
    padding: 0 0 20px 17px;
    font-size: 1.4rem;
}
footer .footer_nav ul li:before {
    content: "";
    position: absolute;
    height: 1px;
    width: 10px;
    top: 12px;
    left: 1px;
    background: #896750;
}
footer .footer_nav ul li.ttl{
    font-size: 1.5rem;
    margin-bottom: 25px;
    padding: 0;
}
footer .footer_nav ul li.ttl:before{
    display: none;
}


footer .footer_nav ul li a,footer .footer_box2 ul li a,footer .footer_box3 ul li a{
	color: #fff;
}
footer .footer_nav ul li a:hover,footer .footer_box2 ul li a:hover,footer .footer_box3 ul li a:hover{
	color:#E99E3B;
}

footer .footer_box2 {
    overflow: hidden;
    margin-bottom: 40px;
    text-align: center;
}
footer .footer_box2 ul{
	margin:0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
}
footer .footer_box2 ul li {
    display: inline-block;
}
footer .footer_box2 ul li:first-child{
    margin-right:50px ;
}
footer .footer_icon{
    text-align: right;
}

footer .footer_box3 {
    text-align: left;
    display: flex;
}
footer .footer_box3 p{
    margin-right: 30px;
}
footer .footer_box3 li {
    display: inline-block;
    width: 25px;
    height: 25px;
    margin-right:16px;
}
footer .footer_box3 li a {
    background: #fff;
    border-radius: 50%;
    text-align: center;
    display: block;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
}
footer .footer_box3 li a:hover{
    background: #FFFF00;
    opacity: 1;
}
footer .footer_box3 li a img {
    vertical-align: baseline;
	max-width: 17px;
}
footer .footer_box3 li:first-child a img {
    vertical-align: sub;
	max-width: 11px;
}
footer .footer_box3 li:last-child a img {
    vertical-align: top;
    padding-top: 7px;
}

.footer_bottom{
    padding: 40px 0;
}





@media screen and (max-width: 834px){
    footer {
        padding-top: 30px;
        margin-top: 50px;
    }
    footer .footer_box {
        display: block;
        margin-bottom: 0;
    }
    footer .footer_logo {
        margin-bottom: 0;
    }
    footer .footer_nav ul li {
        position: relative;
        padding: 0 0 10px 10px;
        font-size: 1rem;
        display: inline-block;
    }
    footer .footer_nav ul li.ttl {
        font-size: 1.4rem;
        margin-bottom:5px;
        display: block;
    }
    footer .footer_nav ul {
        margin-bottom: 10px;
    }
    footer .footer_nav ul li:before {
        content: "";
        position: absolute;
        height: 1px;
        width: 6px;
        top: 9px;
        left: 1px;
        background: #896750;
    }
    footer .footer_box2 {
        font-size: 1rem;
        margin-bottom: 2rem;
    }
    footer .footer_box2 ul {
        justify-content: flex-start;
    }
    footer .footer_icon {
        text-align: center;
        padding: 25px 0;
    }
    footer .footer_icon img{
        max-width: 40px;
    }
    footer .copy{
        font-size: 1rem;
    }
}

@media screen and (min-width:601px) and ( max-width:834px) {/*タブレット縦*/
footer .footer_nav ul li.ttl {
    font-size: 2.4rem;
    margin-bottom: 5px;
}
footer .footer_nav ul li {
    padding: 0 10px 10px 20px;
    font-size: 2rem;
}
footer .footer_nav ul li:before {
    width: 14px;
    top: 18px;
}
footer .footer_nav ul {
    margin-bottom: 20px;
}
footer .footer_box2 {
    font-size: 2rem;
    margin-bottom: 2rem;
}
footer .copy {
    font-size: 1.8rem;
}
footer .footer_logo {
    max-width: 367px;
}
footer .footer_box3 li {
    width: 60px;
    height: 60px;
    margin-right: 30px;
}
footer .footer_box3 p {
    padding-top: 8px;
}
footer .footer_box3 li:first-child a img{
    vertical-align: -webkit-baseline-middle;
    max-width: 40px;
}
	footer .footer_box3 ul{
		display: flex;
	}
footer .footer_box3 li a img {
    vertical-align: -webkit-baseline-middle;
    max-width: 40px;
}
footer .footer_box3 li:last-child a img {
    vertical-align: -webkit-baseline-middle;
    padding-top: 0px;
}
footer .footer_icon img {
    max-width: 70px;
}
footer .footer_icon {
    text-align: center;
    padding: 60px 0;
}
}
/*ナビ*/

.menu-container {
    width: 100%;
    background: none;
    display: flex;
    justify-content: flex-end;
}
#g_nav {
    width: 65%;
    margin: 0;
}
.home #g_nav {
    width: 100%;
}



#g_nav .clone_nav {
    width: 100%;
}

#g_nav p.logo {
    float: left;
    max-width: 305px;
    width: 27%;
    padding: 0;
}

#g_nav p.logo img, .c_nav p.logo img {
    vertical-align: top;
    margin-top: 3px;
}
#g_nav ul, .c_nav ul {
    list-style-type: none;
    margin: 0;
    padding:0;
    color: #fff;
    width: 100%;
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    align-items: center;

}
#g_nav > ul,.c_nav > ul{
    height: 100%;
}
#g_nav > ul > li, .c_nav > ul > li {
    margin: 0;
    margin-right: 0;
    background-color: #fff;
    display: block;
    box-sizing: border-box;
    text-align: center;
    padding: 0;
    font-size: 1.5rem;
    height: 100%;
    width: 12.5%;
}
#g_nav ul li.single,.c_nav ul li.single{
	position: relative;
}
#g_nav ul li.icon,.c_nav ul li.icon{
    border-right: 1px solid #191955;
box-sizing: border-box;
}
#g_nav ul li.icon.first,.c_nav ul li.icon.first{
    border-left: 1px solid #191955;

}
#g_nav ul li.icon a, .c_nav ul li.icon a {
    padding-top: 37px;
    color: #000000;
    line-height: 1.3;
}
#g_nav ul li.icon img,.c_nav ul li.icon img{
   margin-bottom: 10px;
	box-sizing: border-box;
}
#g_nav ul li.icon.icon_cat a, .c_nav ul li.icon.icon_cat a{
    color: #fff;
    background:#191955;
}

#g_nav ul li a, .c_nav ul li a {
    display: block;
    color: #191955;
    box-sizing: border-box;
    height: 100%;
    padding-top: 55px;
}
#g_nav ul li a:hover, .c_nav ul li a:hover {
    border-bottom: 3px solid #191955;
	transition: none;
}

#g_nav li a:hover,.c_nav li a:hover{
	box-sizing: border-box;
}
#g_nav ul li:last-child a:hover,.c_nav ul li:last-child a:hover{
	opacity: 0.8;
}
#g_nav ul.dropdown a{
	height: 35px;
	padding: 6px 0 0px;
}
#g_nav ul.dropdown a,.c_nav ul.dropdown a{
    padding-top: 0;
}
#g_nav ul.dropdown a:hover,.c_nav ul.dropdown a:hover{
	border-bottom: none!important;
}
span.txt_en {
    display: block;
    font-size: 12px;
    font-weight: normal;
}
#g_nav ul li.home{
	display: none;
}


#g_nav ul.dropdown,.c_nav ul.dropdown{
        display: none;
        position: absolute;
        padding: 0;
        z-index: 10;
}
#g_nav ul.dropdown li,.c_nav ul.dropdown li{
	width: 100%;
	margin-bottom: 0;
	background: #F2F0E9;
}

#g_nav .mega ul.dropdown{
	width: calc(100vw - calc(100vw - 100%));
	background: #F2F0E9;
	left: 0;
	display: block;
	justify-content: center;
}
#g_nav .mega ul.dropdown li {
    max-width: 1024px;
    margin: 0 auto;
	display: flex;
	padding: 30px 0;
}
#g_nav .mega ul.dropdown li > div{
	flex-basis: 49%;
}

#g_nav .mega ul.dropdown li{
	color: #1c1c1a;
}
#g_nav .mega ul.dropdown li p.ttl{
    margin-bottom: 30px;
    font-size: 42px;
    font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
    margin: 0 auto 30px;
    font-weight: normal;
}
#g_nav .mega ul.dropdown li > div p.p1{
    margin-bottom: 40px;
}

#g_nav .mega ul.dropdown li > div.flex{
	justify-content: space-between;
	flex-wrap: wrap;
	border-right: 1px solid #1c1c1a;
}
#g_nav .mega ul.dropdown li > div.flex p{
	flex-basis: 50%;
	text-align: center;
	margin-bottom: 20px;
}
#g_nav .mega ul.dropdown li > div.flex p img {
    display: block;
    margin: 0 auto 10px;
}
#g_nav .mega ul.dropdown li > div.flex a{
	height: auto;
	display: block;
	padding: 0;
	color: #1c1c1a;
}
#g_nav .mega ul.dropdown li > div.flex a:hover{
	border-bottom: none;
}
#g_nav .mega ul.dropdown ul.sub{
    display: flex;
    flex-wrap: wrap;
}
#g_nav .mega ul.dropdown ul.sub li{
    flex-basis: 25%;
    position: relative;
    padding: 0 0 20px 17px;
    box-sizing: border-box;
}
#g_nav .mega ul.dropdown ul.sub li:before {
    content: "";
    position: absolute;
    height: 1px;
    width: 10px;
    top: 13px;
    left: 1px;
    background: #ECA13B;
}
.home #g_nav .mega ul.dropdown ul.sub li:before {
    top: 13px;
}
.home .c_nav #g_nav .mega ul.dropdown ul.sub li:before {
    top: 13px;
}
.c_logo {
    display: block;
    width: 30%;
    text-align: center;
    padding-top: 35px;
}
.home .c_logo{
    display: none;
    opacity: 0;
}
.home .visible2 .c_logo {
    display: block;
    opacity: 1;
    animation-name: fadeInDown;
    animation-duration: 1s;
    animation-fill-mode: forwards;
}
@keyframes fadeInDown {
    0% {
        opacity: 0;         
    }
    100% {
    opacity: 1;
    transform: translate(0);
    }
}
.home .c_nav .c_logo{
    display: block;
    padding-top: 45px;
}
/*ナビクローン用*/
.c_nav {
    position: fixed;
    top: -110px;
    width: 100%;
    z-index: 20;
    transition: top 0.25s;
    background-color: #fff;
    padding-top:0;
    padding-bottom: 0;
    box-sizing: border-box;
    height: 110px;
    display: none;
}
.home .c_nav #g_nav ul li a {
    padding-top: 40px;
}
.home .c_nav #g_nav ul.dropdown li a {
    padding-top: 0;
}
.home .c_nav #g_nav ul li.icon a {
    padding-top: 25px;
}
.c_nav #g_nav {
    width: 47%;
}
.c_nav .menu-container{
    justify-content: space-between;
}
.c_nav .header_box {
    max-width: 100%;
    height: 110px;
}
@media screen and (max-width: 1700px){
    #g_nav,.c_nav #g_nav{
        width: 70%;
    }
    }
@media screen and (max-width: 1200px){
#g_nav ul li, .c_nav ul li {
    font-size: 1.2rem;
}
#g_nav ul li a, .c_nav ul li a {
    padding-top: 50px;
}
#g_nav ul li.icon a, .c_nav ul li.icon a {
    padding-top: 25px;
    line-height: 1.3;
    }
}
@media screen and (max-width: 1194px){

.home .header_box {
    height: 110px;
}
.home .clone_nav {
    height: 110px;
}
	.home #g_nav ul li.icon a {
    padding-top: 30px;
}
#g_nav ul li, .c_nav ul li {
    font-size: 1.4rem;
}
	#g_nav ul,#c_nav ul{
		justify-content: 	flex-end;
	}
	#g_nav ul li.menu, .c_nav ul li.menu{
		max-width: 95px;
	}
#g_nav, .c_nav #g_nav {
    width: 75%;
}
	.c_nav .nav_box{
    width: 98%;
    margin: 0 auto;
}

#g_nav ul li.icon a img, .c_nav ul li.icon a img{
    max-width: 20px;
}
.c_logo {
    width: 20%;
    padding-top: 40px;
    padding-left: 40px;
    box-sizing: border-box;
}
#g_nav ul li.icon a, .c_nav ul li.icon a {
    padding-top: 31px;
}
.visible2 .menu-container {
    justify-content: space-between;
}
	
}

@media screen and (max-width: 1080px){
.c_logo {
    padding-top: 45px;
    padding-left: 30px;
}
}

@media screen and (max-width: 800px){
	.c_nav {
		display: none;
	}
}


.visible2 {
    top: 0;
	}

@media screen and (max-width: 834px){
	.c_nav{
		display: none;
	}
	footer .bn_box .clearfix {
    display: block;
}
footer .bn_box .clearfix .column {
    flex-basis: 49%;
    max-width: 464px;
    margin: 0 auto 25px;
}
.footer_nav .contents_inner {
    width: 98%;
}
	
.footer_box {
    padding: 20px 0 20px;

}
.footer_box p {
    font-size: 19px;
}	
	footer .copy p{
		text-align: center;
	}
}

@media screen and (min-width: 768px){
	footer .sp_only{
		display: none!important;
	}
}
@media screen and (max-width: 834px){
	footer .sp_only{
		display: block;
		position: fixed;
		bottom: 0;
		transition: all 0.3s;
	}

	footer .sp_only.invisible{
		transform: translateY(47px);
	}

	footer .sp_only ul{
		display: flex;
		padding: 0 10px;
		justify-content: space-around;
	}

	footer .sp_only ul li{
		width: 49%;
	}
}








/* 下層パーツ */

.bread_crumb{
    margin: 0 auto 20px;
    max-width: 1020px;
    padding: 40px 20px 60px;
    box-sizing: border-box;
}


.text_box01{
	background: #f3f3ef;
	padding: 10px;
	box-sizing: border-box;
	border-radius: 10px;
	margin-bottom: 30px;
}

.link_btn {
    width: 230px;
	margin: 0 auto;
}
.link_btn a {
    border: 1px solid #d2ab84;
    box-sizing: border-box;
    position: relative;
    color: #d2ab84;
    padding: 10px 0 10px 15px!important;
    width: 100%;
    display: block;
    height: auto!important;
}

.link_btn a:hover{
	opacity: 0.7;
	text-decoration: none;
}
table.table01{
	width: 100%;
	margin-bottom: 20px;
}
table.table01 th{
	width: 33%;
	color: #000;
	border-bottom: solid 1px #343434;
	padding: 8px 5px;
	text-align: left;
}
table.table01 td{
	border-bottom: solid 1px #343434;
	text-align: left;
	padding: 8px 5px;
	vertical-align: middle;
	color: #000;
}

span[id]:not([href]){
    margin-top:-60px; 
    padding-top:60px; 
	display: inline-block; 
	vertical-align: top;
	width: 0;
	height: 0;
}

.center{
    text-align: center;
}
.left{
    text-align: left;
}
.right{
    text-align: right;
}

.center.catch{
   font-size: 2rem;
   line-height: 2;
}
.under_contents{
    margin-top: 130px;
}
.under_contents a{
    color: #002DF8;
    text-decoration: underline;
}
.under_contents a{
    text-decoration: none;
}
.mb0{
	margin-bottom: 0!important;
}
.mb10{
	margin-bottom: 10px!important;
}
.mb20{
	margin-bottom: 20px!important;
}
.mb30{
	margin-bottom: 30px!important;
}
.mb40{
	margin-bottom: 40px!important;
}
.mb50{
	margin-bottom: 50px!important;
}
.mb60{
	margin-bottom: 60px!important;
}
.mb70{
	margin-bottom: 70px!important;
}
.mb80{
	margin-bottom: 80px!important;
}
.mb100{
	margin-bottom: 100px!important;
}
.mt0{
	margin-top: 0!important;
}
table.table2{
    width: 100%;
    margin-bottom: 20px;
}
table.table2 td,
table.table2 th { border:1px solid #ccc; padding:10px 15px; line-height:1.8; background:#fff; }
table.table2 th { background:#d7e1f2; font-weight:normal; width: 28%;vertical-align: middle;}

.border_box{
    box-sizing: border-box;
    border: 1px solid #ace2f2;
    padding: 30px;
    box-sizing: border-box;
}
.color1{
    color: #1c1b61;
}


.flex.img_r{
	flex-direction: row-reverse;
}

.flex.column2 div,.flex.column2 li{
	flex-basis: 49%;
}
.flex.column3 div,.flex.column3 li{
	flex-basis: 32%;
}
.flex.column3 li{
    margin-bottom: 20px;
    text-align: center;
}
.flex.column4 div,.flex.column4 li{
	flex-basis: 24%;
}
.flex > .img{
	flex-basis: 40%;
	text-align: center;
	align-items: center;
}
.flex > .txt{
	flex-basis: 56%;
}

@media screen and (max-width: 1194px){
.under_contents {
    margin-top: 100px;
}
.bread_crumb {
    max-width: 900px;
}
}

@media screen and (max-width: 834px){
    .under_contents {
        margin-top: 60px;
    }
    
    .bread_crumb {
        font-size: 1rem;
    }

    .bread_crumb {
        margin: 0 auto;
        padding: 40px 20px 35px;
    }
    table.table2 td,
table.table2 th {
font-size: 1.2rem;
}
.mb60 {
    margin-bottom: 45px!important;
}
}

@media screen and (min-width:601px) and ( max-width:834px) {/*タブレット縦*/
.under_contents {
    margin-top: 100px;
}
.bread_crumb {
    font-size: 1.8rem;
	max-width: 720px;
}
table.table2 {
    margin-bottom: 60px;
}
}
@media screen and (max-width: 600px){
    .bread_crumb {
        padding: 30px 20px 30px;
    }
}
/* セキュリティ */

.under_contents .contents_box{
    margin-bottom: 45px;
}

.security .h2_wrap {
    max-width: 1020px;
    margin: 0 auto;
    background: url(673c2587aaa5c3db.png) no-repeat center top;
}
.security .h2_wrap h2 {
    font-size: 2.5rem;
    text-align: center;
    color: #1c1a62;
    padding-top: 20px;
    font-weight: normal;
}
.security .h2_wrap span {
    color: #1c1a62;
    font-size: 1.7rem;
    max-width: 420px;
    margin: -5px auto 100px;
    display: block;
}
.privacy footer,.security footer{
margin-top: 150px;
}
.security h3 {
    font-size: 2rem;
    background: url(cc8d87910a014fb1.png) no-repeat left top;
    padding: 8px 0 0 40px;
    box-sizing: border-box;
    margin-bottom: 25px;
    min-height: 50px;
    font-weight: normal;
}

.security p.ttl{
    background: url(f4bbfa9b752a8afc.png) no-repeat center bottom;
  font-size: 2.5rem;
  text-align: center;
  margin: 0 auto 40px;
  padding-bottom: 60px;
}
.security_table1 tr td:last-child {
    text-align: center;
    vertical-align: middle;
}
.security_table1 tr:nth-child(odd) td{
    background: #F0FAFF;
}
.dl_btn {
    position: relative;
    overflow: hidden;
    text-decoration: none;
    display: block;
    border: 1px solid #003282;
    padding: 10px 30px;
    text-align: center;
    outline: none;
    transition: ease .2s;
    width: 170px;
    margin:50px auto 0;
    max-width: 170px;
    box-sizing: border-box;
	color: #003282;
}

.dl_btn span {
	position: relative;
	z-index: 3;/*z-indexの数値をあげて文字を背景よりも手前に表示*/
	color:#003282;
}

.dl_btn:hover span{
	color:#fff;
}

.bgleft:before {
 	content: '';
    /*絶対配置で位置を指定*/
 	position: absolute;
 	top: 0;
 	left: 0;
 	z-index: 2;
    /*色や形状*/
 	background:#003282;/*背景色*/
 	width: 100%;
 	border-radius: 0;
 	height: 100%;
    /*アニメーション*/
 	transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
 	transform: scale(0, 1);
 	transform-origin: right top;
}

/*hoverした際の形状*/
.bgleft:hover:before{
	transform-origin:left top;
	transform:scale(1, 1);
    border-radius: 0 30px 30px 0;
}
.bgleft:hover{
    background:#003282;/*背景色*/ 
    transition-delay: 0.4s;
    transition-property: background-color;
}

@media screen and (max-width:1194px){
.under_contents .contents_box {
    max-width: 900px;
    padding: 0 20px;
}
}

@media screen and (max-width: 834px){
    .under_contents .contents_box {
        margin-bottom: 45px;
        max-width: 600px;
    }
    .security .bread_crumb,.privacy .bread_crumb{
    margin: 0 auto;
    padding: 40px 20px 35px;
    margin-top: 60px;
}
.security .h2_wrap h2 {
    font-size: 1.9rem;
    padding-top: 5px;
    padding-left: 15px;
}
.security .h2_wrap{
    background-size: 334px auto;
}
.security .h2_wrap span {
    font-size: 1.2rem;
    max-width: 240px;
    margin: -10px auto 50px;
}
.security h3 {
    font-size: 1.4rem;
    background: url(cc8d87910a014fb1.png) no-repeat left top;
    padding: 0px 0 0 15px;
    margin-bottom: 15px;
    min-height: 25px;
    font-weight: normal;
    background-size: auto 25px;
}
.under_contents.security p{
    font-size: 1.2rem;
}
.privacy footer, .security footer {
    margin-top: 50px;
}
.under_contents.security p.center.catch{
    font-size: 1.6rem;
    text-align: left;
    margin-bottom: 25px;
}
.under_contents.security p.ttl{
    font-size: 1.6rem;
    padding-bottom: 30px;
    margin-bottom: 35px;
    background-size: 115px auto;
}
.under_contents.security table.table2 td,
.under_contents.security table.table2 th {
    font-size: 1rem;
    padding: 8px;
    line-height: 1.4;
}
.border_box {
    padding: 20px;
}
.dl_btn {
    width: 170px;
    margin: 30px 0 0;
}
.dl_btn:hover,.dl_btn:hover span{
    color:#003282;
}
.bgleft:hover {
    background: #fff;
    transition:none;
}
.bgleft:before{
    display: none;
}
}


@media screen and (min-width:601px) and ( max-width:834px) {/*タブレット縦*/
.under_contents .contents_box {
    max-width: 720px;
	margin-bottom: 100px;
}
.dl_btn {
    width: 300px;
    max-width: 300px;
    margin: 30px 0 0;
	padding: 25px 30px;
}
.security .h2_wrap {
    background-size: 100% auto;
    max-width: 680px;
}
.security .h2_wrap h2 {
    font-size: 4rem;
    padding-top: 10px;
    padding-left: 30px;
    line-height: 1.6;
}
.security .h2_wrap span {
    font-size: 2.4rem;
    max-width: 240px;
    margin: -15px 0 100px 90px;
}
.security h3  {
    font-size: 2.4rem;
    background: url(cc8d87910a014fb1.png) no-repeat left top;
    padding: 0px 0 0 30px;
    margin-bottom: 30px;
    background-size: 10px auto;
}
.under_contents.security p {
    font-size: 2.2rem;
}
.under_contents.security p.center.catch {
    font-size: 3rem;
	margin-bottom: 90px;
}
.under_contents.security p {
    font-size: 2.2rem;
}
.under_contents.security p.ttl {
    font-size: 3rem;
    padding-bottom: 70px;
    margin-bottom: 85px;
    background-size: 235px auto;
}
.under_contents.security table.table2 td, .under_contents.security table.table2 th {
    font-size: 2rem;
    padding: 6px;
}

}

/* 会社概要 */
.under_contents.company{
    background: url(48a2a05f0698af49.png) repeat-x right top;
 
}

.company .h2_wrap {
    background:no-repeat -400px bottom;
    /* background-size: cover; */
    height: 400px;
    box-sizing: border-box;
    overflow: hidden;
    max-width: 2000px;
    margin: 0 auto;
}
.company .h2_wrap .h2_box {
    background: url(9975d43aa95124ef.png) no-repeat right top;
    float: right;
    width: 100%;
    height: 400px;
    text-align: center;
    color: #fff;
    padding-top: 140px;
    box-sizing: border-box;
}
.company .h2_wrap .h2_txt {
    background: url(90cdb3b8db56f773.png) no-repeat center 13px;
    margin: 0 auto;
    float: right;
    width: 45%;
    margin: 0 auto;
}
.company .h2_wrap .h2_txt span {
    padding-top: 13px;
    box-sizing: border-box;
    display: block;
    font-size: 1.4rem;
    padding-left: 10px;
    max-width: 270px;
    line-height: 1.2;
    margin: 0 auto;
}
.company .h2_wrap h2 {
    font-size: 3rem;
    min-height: 100px;
}

@media screen and (max-width: 2000px){
.company .h2_wrap {
    background: no-repeat -400px bottom;
}
.company .h2_wrap .h2_txt {
    width: 60%;
}

}


.under_contents .bread_crumb a{
    color: #000;
}
.message1{
    margin-bottom: 100px;
}
.message1 .catch{
    font-size: 2.5rem;
}
.message1 p.mb60{
    line-height: 2.5;
}
.message1 .fl_right{
    float: right;
}
.message2{
    padding: 100px 0 95px;
    box-sizing: border-box;
    background:#143991;
    color: #fff;
    position: relative;
}
.message2:before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 78%;
    background: #1c1a63;
    height: 100%;
}
.message2:after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    background: #1c1a63;
    height: 100%;
    max-width: 835px;
    right: 0;
    z-index: 0;
    margin: 0 auto;
}
.message2 .contents_box{
    z-index: 1;
}
.message2 h3 {
    text-align: center;
    margin: 0 auto 50px;
    font-size: 3rem;
    background: url(e903e181caf95513.png) no-repeat center 15px;
    padding-bottom: 30px;
}
.message2 h4{
    font-size: 2.2rem;
    margin-bottom: 40px;
}
.message2 .flex {
    margin-bottom: 90px;
    justify-content: flex-start;
}
.message2 .flex > .img {
    flex-basis: 14%;
    text-align: center;
    align-items: center;
    margin-right: 80px;
}

.message2 .flex > .img img{
    margin-bottom: 10px;
}
.message2 .flex > .txt {
    flex-basis: 70%;
    box-sizing: border-box;
    border: 2px solid #fff;
    color: #000;
    padding: 10px;
    box-sizing: border-box;
    position: relative;
}
.message2 .flex > .txt:before {
    content: "";
    position: absolute;
    width: 30px;
    height: 30px;
    background: url(dd8a7ca90c5522e5.png) no-repeat center center;
    top: 65px;
    left: -23px;
}
.message2 .flex > .txt .txt_bg{
    background: #fbfbfd;
    border: 8px solid #d7d7e3;
    padding: 25px;
}
.message2 .flex:nth-of-type(even) {
    flex-direction: row-reverse;
}
.message2 .flex:nth-of-type(even) > .txt{
    margin-right: 60px;
}
.message2 .flex:nth-of-type(even) > .txt:before {
    content: "";
    position: absolute;
    width: 30px;
    height: 30px;
    background: url(861ef57ec80c6ccb.png) no-repeat center center;
    top: 65px;
    left: auto;
    right: -23px;
}
.overview{
    padding: 80px 0;
    color: #003282;
    background: url(f9e418a12e91aeb2.png) repeat-x left top,url(f9e418a12e91aeb2.png) repeat-x left bottom;
}
.overview .flex.column3 div,
.overview .flex.column3 li {
    flex-basis: 30%;
}
.overview h3{
    font-size: 3rem;
    color: #003282;
    margin: 0 auto 50px;
    text-align: center;
}
.overview h4 {
    text-align: center;
    padding-bottom: 20px;
    margin-bottom: 25px;
    border-bottom: 2px solid #003282;
    position: relative;
    font-size: 2rem;
    font-weight: normal;
}
.overview h4:before{
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    box-sizing: border-box;
    border-radius: 50%;
    background: #143990;
    left: 0;
    bottom: -5px;
}
.overview h4:after{
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    box-sizing: border-box;
    border-radius: 50%;
    background: #143990;
    right: 0;
    bottom: -5px;

}
.overview ul li p {
    font-size: 1.5rem;
    margin-bottom: 30px;
    text-align: left;
}
.overview ul li a {
    font-size: 1.8rem;
    background: url(c29c2f1c465f8f1a.png) no-repeat right 0px;
    display: block;
    width: 100%;
    padding: 11px 0;
    margin-bottom: 20px;
    color: #003282;
    max-width: 150px;
    text-align: left;
}


.company .company .h2_wrap {
    background:no-repeat 40px bottom;
    background-size:auto;
    max-width: 2000px;
}
@media screen and (max-width: 2000px){
.company .company .h2_wrap {
    background:no-repeat 0 bottom;
}
}


.company .company{
    background: url(48a2a05f0698af49.png) repeat-x right top #143991;
    position: relative;
}

.company .company .bread_crumb {
    color: #fff;
    margin-bottom: 0;
}
.company .company .bread_crumb a{
    color: #fff;
}
.company1{
    background: #143991;
    padding:  0 0 100px;
    border-bottom: 5px solid #1c1a63;
    position: relative;
}
.company1:before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    width: 76.34%;
    background: #1c1a63;
    height: 100%;
}
.company1 .table2 th,.company1 .table2 td{
    padding: 40px;
    font-size: 1.7rem;
}
.company1 .table2 th{
	text-align: left;
}

.company2.overview {
    color: #fff;
    background: url(cb43dddd4cc59313.png) repeat-x left top,url(cb43dddd4cc59313.png) repeat-x left bottom;

    background-color: #143991;
}
.company2.overview h4:before{
    background: #fff;

}
.company2.overview h4:after{
    background: #fff;

}
.company2.overview h3{
    color: #fff;
}
.company2.overview h4{
    border-bottom: 2px solid #fff;
}
.company2.overview ul li a {
    background: url(7d55d33c430542a9.png) no-repeat right 0;
    color: #fff;
}

.access .company{
    background:url(48a2a05f0698af49.png) repeat-x right top #143991;
}
.access .company .h2_wrap {
    background:no-repeat 30% bottom;
    background-size: auto;
}

.access .under_contents .bread_crumb {
    color: #fff;
    margin-bottom: 0;
    padding: 50px 20px 50px;
}
.access .under_contents .bread_crumb a{
color: #fff;
}
.access .under_contents .contents_box{
    padding: 0;
}
.access1 {
    position: relative;
}
.access1 .bg_box{
    background: #1c1a63;
    max-width: 1024px;
    margin: 0 auto;
    padding: 60px 0 80px;
}
.access1:before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 69.6%;
    background: #1c1a63;
    height: 100%;
}
@media screen and (max-width:2000px){
    .access1:before {
        width: 76.34%;
    }
    }
.access1 h3 {
    font-size: 2rem;
    background: url(cc8d87910a014fb1.png) no-repeat left top;
    padding: 8px 0 0 40px;
    box-sizing: border-box;
    margin-bottom: 25px;
    min-height: 50px;
    font-weight: normal;
    color: #fff;
}
.access1 .table2 th,.access1 .table2 td{
    padding: 40px;
    font-size: 1.7rem;
}
.access1 .clearfix a.viewall {
    float: right;
    max-width: 200px;
    color: #fff;
}
.access1 .contents_box:last-of-type{
    margin-bottom: 0;
}
.access2.overview {
    background-color: #ffffff;
}
.company footer,
.access footer,
.message footer{
    margin-top: 0;
}

@media screen and (max-width: 1700px){
    .company .h2_wrap .h2_box {
        background: url(9975d43aa95124ef.png) no-repeat right 50% top 0;
    }
    .company .h2_wrap {
        background:no-repeat -700px bottom;
    }
    .company .h2_wrap .h2_txt {
        width: 40%;
    }
    }

@media screen and (max-width: 1600px){
.access .company .h2_wrap {
    background:no-repeat 0 bottom;
}
}


@media screen and (max-width: 1194px){
.company1:before {
    width: 92%;
}
.message2 .flex:nth-of-type(even) > .txt:before {
    right: -20px;
    width: 24px;
}
.access1 .bg_box {
    max-width: 900px;
}
}

@media screen and (max-width: 834px){
    .company .h2_wrap {
        height: 200px!important;
        margin-top: 60px;
        background:no-repeat left bottom;
			background-size: cover;

    }
.company .company .h2_wrap {
    background:no-repeat 0px bottom;
	background-size: cover;
}
.access .company .h2_wrap {
    background: no-repeat 0px bottom;
		background-size: cover;

}
.company .h2_wrap .h2_box {
    height: 200px;
    padding-top: 50px;
    background: url(b66570e035190747.png) no-repeat right top;
    width: 100%;
}

.company .company {
    background: #1C1A62;
}
.company1:before {
    background: none;
}
.company .h2_wrap .h2_txt {
    background: url(90cdb3b8db56f773.png) no-repeat center 19px;
    width: 170px;
    margin: 0;
    background-size: 170px auto;
    position: absolute;
    right: 15px;
    line-height: 1.4;
}
.company .h2_wrap .h2_txt span {
    padding-top: 18px;
    font-size: 1rem;
    padding-left: 6px;
}
.company .h2_wrap h2{
    font-size: 2rem;
}
.message1 {
    margin-bottom: 0;
}
.message1 p.mb60{
    font-size: 1.1rem;
    margin-bottom: 35px!important;
    line-height: 2;
}
.message1 p.mb60.catch{
    font-size: 1.5rem;
}
.message1 .fl_right{
    font-size: 1rem;
    max-width: 85px;
}
.message2 {
    padding: 50px 0 50px;
    background: #1C1A62;
}
.message2:before{
    display: none;
}
.message2 h3 {
    text-align: center;
    margin: 0 auto 50px;
    font-size: 2rem;
    background: url(e903e181caf95513.png) no-repeat center 10px;
    padding-bottom: 18px;
    background-size: 180px auto;
}
.message2 h4 {
    font-size: 1.62rem;
    margin-bottom: 25px;
}
.message2 .flex {
    margin-bottom: 50px;
    display: flex;
    align-items: flex-start;
}
.message2 .flex:last-of-type{
    margin-bottom: 0;
}
.message2 .flex > .img {
    flex-basis: 27%;
    margin-right: 20px;
    font-size: 1rem;
}
	.message2 .flex:nth-child(even) > .img{
		    margin-right: 0;

	}
.message2 .flex.img_r > .txt {
    margin-right: 20px;
}
.message2 .flex > .txt {
    padding: 5px;
}
.message2 .flex > .txt .txt_bg {
    background: #fbfbfd;
    border: 3px solid #d7d7e3;
    padding: 15px;
    font-size: 1.2rem;
}
.overview {
    padding: 50px 0 10px;
}
.overview h3 {
    font-size: 2rem;
    margin: 0 auto 45px;
}
.overview h4 {
    padding-bottom: 10px;
    margin-bottom: 20px;
    border-bottom: 2px solid #003282;
    font-size: 1.6rem;
    max-width: 140px;
    margin: 0 auto 20px;
}
.overview ul li p {
    font-size: 1.2rem;
    margin-bottom: 30px;
    text-align: left;
    min-height: 0;
    text-align: center;
}
.overview ul li{
    overflow: hidden;
}
.overview ul li a {
    float: right;
    font-size: 1rem;
    max-width: 75px;
    background-size: 45px auto!important;
    padding: 3px 0 5px;
}
.message2 .flex > .txt:before {
    width: 17px;
    height: 28px;
    background: url(dd8a7ca90c5522e5.png) no-repeat center center;
    top: 29px;
    left: -17px;
}
.message2 .flex.img_r > .txt:before {
    width: 17px;
    height: 30px;
    background: url(861ef57ec80c6ccb.png) no-repeat center center;
    top: 28px;
    left: auto;
    right: -16px;
}
.company1 .table2 th, .company1 .table2 td {
    padding: 15px;
    font-size: 1rem;
    vertical-align: middle;
}
.company1 {
    background: none;
    padding-bottom: 5px;
}
.access1:before {
    display: none;
}
.access .under_contents .contents_box {
    padding: 0 20px;
}
.access1 .bg_box {
    padding: 0;
}
.access .company {
    background: #1C1A62;
}
.access1 h3 {
    font-size: 1.4rem;
    background: url(cc8d87910a014fb1.png) no-repeat left top;
    padding: 0px 0 0 15px;
    box-sizing: border-box;
    margin-bottom: 25px;
    min-height: 25px;
    font-weight: normal;
    background-size: auto 25px;
    color: #fff;
}
.access1 .table2 th, .access1 .table2 td {
    padding:15px;
    font-size: 1rem;
}
.access1 .clearfix a.viewall {
    max-width: 125px;
    padding: 0 0 10px;
    margin-bottom: 5px;
}
.access1 {
    position: relative;
    padding-top: 0;
    padding-bottom: 50px;
}
.under_contents.company {
    background-image: none!important;
}

}

@media screen and (min-width:601px) and ( max-width:834px) {/*タブレット縦*/
.company .h2_wrap {
    height: 410px!important;
    margin-top: 100px;
	 background-size:cover;
}
.company .h2_wrap .h2_box {
    height: 410px;
    padding-top: 140px;
    background: url(b66570e035190747.png) no-repeat right top;
    width: 100%;
    background-size: auto 100%;
}
.message1 p.mb60.catch {
    font-size: 3rem;
}
.message1 p.mb60 {
    font-size: 2.2rem;
    margin-bottom: 50px!important;
    line-height: 2;
}
.message2 h3 {
    margin: 0 auto 90px;
    font-size: 3rem;
    background: url(e903e181caf95513.png) no-repeat center 10px;
    padding-bottom: 45px;
    background-size: 370px auto;
}
.message2 h4 {
    font-size: 2.6rem;
    margin-bottom: 60px;
}
.message2 .flex > .txt .txt_bg {
    font-size: 2.2rem;
}
.message2 .flex > .img {
    font-size: 2rem;
}
.message2 .flex {
    margin-bottom: 100px;
}
.overview h3 {
    font-size: 3rem;
    margin: 0 auto 90px;
}
.overview h4 {
    padding-bottom: 30px;
    font-size: 2.6rem;
    max-width: 200px;
    margin: 0 auto 40px;
}
.overview ul li p {
    font-size: 2.2rem;
    margin-bottom: 50px;
}
.overview ul li a {
    font-size: 2rem;
    max-width: 150px;
    background-size: 95px auto!important;
    padding: 10px 0 12px;
}
.company .h2_wrap h2 {
    font-size: 3rem;
}
.company .h2_wrap .h2_txt {
    background: url(90cdb3b8db56f773.png) no-repeat center 0px;
    width: 320px;
    margin: 0;
    right: 40px;
    background-size: 320px auto;
}
.company .h2_wrap .h2_txt span {
    padding-top: 0px;
    font-size: 2rem;
    padding-left: 0px;
    max-width: 320px;
    padding-bottom: 5px;
}
.message1 .fl_right {
    font-size: 2.2rem;
    max-width: 180px;
}
.message1 {
    margin-bottom:80px;
}
.message2 {
    padding: 100px 0;
}
.overview {
    padding: 90px 0 30px;
}
.company1 .table2 th, .company1 .table2 td {
    padding: 40px 20px;
    font-size: 2rem;
    vertical-align: middle;
}
.access1 .table2 th, .access1 .table2 td {
    padding: 40px 20px;
    font-size: 2rem;
}
.access1 h3 {
    font-size: 2.4rem;
    background: url(cc8d87910a014fb1.png) no-repeat left top;
    padding: 0px 0 0 30px;
    margin-bottom: 30px;
    background-size: 10px auto;
}
.access1 .clearfix a.viewall {
    max-width: 230px;
    padding: 5px 0px 10px;
    margin-bottom: 5px;
}
.access1 {
    padding-bottom: 100px;
}
}


@media screen and (max-width: 600px){
.company .h2_wrap .h2_box {
    background: url(75f9090167c7acce.png) no-repeat right top;
}
.message2 .flex > .img {
    max-width: 75px;
}
.message2 .flex:nth-of-type(even) > .txt {
    margin-right: 0;
}
.message2 .flex > .txt:before {
    width: 16px;
    height: 19px;
    top: 30px;
    left: -16px;
}
.message2 .flex:nth-of-type(even) > .txt:before {
    right: -18px;
    width: 20px;
    top: 30px;
}
.message2 .flex {
    justify-content: space-between;
}
.access .under_contents .bread_crumb {
    padding: 30px 20px 30px;
}
}


/* 導入事例 */

.h2_wrap.news{
    background-position: center top;
    background-size: cover;
    height: 250px;
}
.h2_wrap.news .h2_txt {
    background: url(dd5d3f7d9c9a9af7.png) no-repeat center bottom;
    height: 250px;
    margin: 0 auto;
    text-align: center;
    color: #fff;
    padding-top: 40px;
}
.h2_wrap.news h2{
    font-size: 3rem;
    background: url(35a2585cc2682dc8.png) no-repeat center bottom;
padding-bottom: 10px;
margin-bottom: 5px;

}
.casestudy .bread_crumb,.contact .bread_crumb,.archive .bread_crumb,.news .bread_crumb,.single_news .bread_crumb,.thanks .bread_crumb{
    background: #fff;
    margin-top: -60px;
    padding: 25px;
    box-sizing: border-box;
    margin: -60px auto 45px;
}
.archive .bread_crumb,.news .bread_crumb,.single_news .bread_crumb{
    margin: -60px auto 5px;
}
.casestudy .case1 .contents_box{
    margin-bottom: 110px;
}
.casestudy .case2 .flex > .txt{
    flex-basis: 46%;
}
.casestudy .case2 .flex > .img {
    flex-basis: 46%;

}
.casestudy .case2 .flex > .img img{
    border: 2px solid #A8E4F1;
    box-sizing: border-box;
}
.casestudy .case2 h3 {
    background: url(b1e14392cf382386.png) no-repeat left 45% #1c1a63;
    text-align: center;
    color: #fff;
    padding: 35px 5px;
    font-size: 2.2rem;
    font-weight: normal;
}
.repeat_box .flex.column3 {
    max-width: 700px;
    margin: 65px auto 100px;
    justify-content: flex-start;
    flex-wrap: wrap;
}
.repeat_box .flex.column3 li{
    max-width: 200px;
    text-align:center;
    font-size:1.8rem;
    flex-basis: 28.5%;
    margin-right: 7.25%;
    margin-bottom: 30px;

}
.repeat_box .flex.column3 li img {
    margin-bottom: 25px;
    width: auto;
    max-width: 100%;
    text-align: center;
    margin: 0 auto 25px;
    display: block;
}
.postid-215 .repeat_box .flex.column3 li img {
    margin: 0 auto 20px;
}
.postid-215 .repeat_box .flex.column3 li:last-child img {
    margin: 0 auto;
}
.repeat_box .flex.column3 li p{
    text-align: left;
}
.repeat_box .flex.column3 li:nth-child(3n){
    margin-right: 0;
}

@media screen and (max-width: 1194px){
.archive .bread_crumb, .news .bread_crumb, .single_news .bread_crumb {
    max-width: 900px;
}

}

@media screen and (max-width: 834px){

    .h2_wrap.news ,.thanks .h2_wrap.news{
        background-size: cover;
        height: 125px;
    }

.single-casestudy .h2_wrap.news {
    background-size: cover;
}
.h2_wrap.news h2{
    font-size: 2rem;
    padding-bottom: 5px;
    margin-bottom: 0px;
}
.h2_wrap.news .h2_txt span{
    font-size: 1.4rem;
}
.h2_wrap.news .h2_txt {
    background: url(dd5d3f7d9c9a9af7.png) no-repeat center bottom -20px;
    height: auto;
    height: 125px;
    padding-top: 20px;
}
.casestudy .bread_crumb, .contact .bread_crumb, .archive .bread_crumb, .news .bread_crumb, .single_news .bread_crumb {
    margin-top: -23px;
    padding: 10px;
    margin: -23px auto 45px;
    max-width: 90%;
}
.archive .bread_crumb, .news .bread_crumb, .single_news .bread_crumb {
    margin: -23px auto 30px;
    max-width: 90%;
}
.repeat_box p{
    font-size: 1rem;
}
.repeat_box .flex.column3 {
    margin: 50px auto;
    flex-wrap: wrap;
    display: flex;
    
}
.repeat_box .flex.column3 div,
.repeat_box .flex.column3 li {
    flex-basis: 48%;
}
.repeat_box .flex.column3 p{
    font-size: 1.2rem;
}
.casestudy .case1 .contents_box {
    margin-bottom: 30px;
}
.center.catch {
    font-size: 1.5rem;
}
.casestudy .case2 h3{
    font-size: 1.4rem;
    padding: 30px 0;
}
}

@media screen and (min-width:601px) and ( max-width:834px) {/*タブレット縦*/
.h2_wrap.news {
    background: url(d952f89a379f7ca2.png) no-repeat center top;
    background-size: cover;
    height: 260px;
}
.h2_wrap.news .h2_txt {
    background: url(dd5d3f7d9c9a9af7.png) no-repeat center bottom -20px;
    height: 260px;
    padding-top: 50px;
}
.h2_wrap.news h2 {
    font-size: 3rem;
    padding-bottom: 10px;
    background-size: 150px auto;
}
.h2_wrap.news .h2_txt span {
    font-size: 2.4rem;
}
.archive .bread_crumb, .news .bread_crumb, .single_news .bread_crumb {
    margin: -50px auto 30px;
    max-width: 680px;
    padding: 25px 20px;
}
.repeat_box p {
    font-size:2.2rem;
}
.repeat_box .flex.column3 {
    margin: 100px auto;
}
.repeat_box .flex.column3 li {
    max-width: 100%;
}
.repeat_box .flex.column3 p {
    font-size: 2.2rem;
}
.casestudy .bread_crumb, .contact .bread_crumb, .archive .bread_crumb, .news .bread_crumb, .single_news .bread_crumb {
    padding: 25px 20px;
    margin: -50px auto 60px;
    max-width: 680px;
}
	.casestudy .center.catch{
		text-align: left;
		margin-bottom: 80px;
	}
table.table2 td, table.table2 th {
    font-size: 2.2rem;
}
.casestudy .case2 h3 {
    font-size: 2.4rem;
    padding: 30px 0;
}
}


/* お知らせ */

.news .h2_wrap.news{
    background: url(231e762699c59c44.png) no-repeat center top;
    background-size: cover;

}
.news .h2_wrap.news h2{
    background: url(d7fb872b2449b41c.png) no-repeat center bottom;

}

.news_btn {
    max-width: 900px;
    margin: 0 auto 50px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.news_btn li {
    flex-basis: 20%;
    border-right: 1px solid #dcdcdc;
    box-sizing: border-box;
}
.news_btn li:last-child{
    border-right: none;
}
.news_btn li a{
    padding: 30px 0;
    box-sizing: border-box;
    color: #004594;
    border-bottom: 5px solid #004594;
    width: 100%;
    display: block;
    text-align: center;
}
.news_btn li:nth-child(2) a{
    color: #ff3e8b;
    border-bottom: 5px solid #ff3e8b;
}
.news_btn li:nth-child(3) a{
    color: #00994d;
    border-bottom: 5px solid #00994d;
}
.news_btn li:nth-child(4) a{
    color: #ffa226;
    border-bottom: 5px solid #ffa226;
}
.news_btn li:nth-child(5) a{
    color: #008fff;
    border-bottom: 5px solid #008fff;
}

.news_btn li.current a{
    background:#004594;
    color: #fff;
}
.category-cat_news .news_btn li:nth-child(2) a{
    background:#ff3e8b;
    color: #fff;
}
.category-cat_product .news_btn li:nth-child(3) a{
    background:#00994d;
    color: #fff;
}
.category-cat_attempt .news_btn li:nth-child(4) a{
    background:#ffa226;
    color: #fff;
}
.category-cat_recruit .news_btn li:nth-child(5) a{
    background:#008fff;
    color: #fff;
}
.under_contents .news dd a{
     color:#191955;
}
.under_contents .news dd a:hover{
    color:#FF6400;
}
.under_contents dl.news dd .day{
    color:#191955;
}
.under_contents .single_news dl.news dt{
    width: 13%;
}
.under_contents .single_news dl.news dd{
    width: 87%;
}
.under_contents dl.news{
    max-width: 100%;
}

.under_contents dl.news.single_news{
    margin-bottom: 35px;
}
.under_contents dl.news.single_news dt {
    width: 100px;
    border-bottom: none;
    margin-right: 25px;
}
.under_contents dl.news.single_news dd{
	width: auto;
	border-bottom: none;
}
.under_contents dl.news.single_news dd .day {
    color: #000;
    font-size: 1.6rem;
    padding-top: 5px;
}
.under_contents.single_news h3{
    font-weight: normal;
    font-size: 2.5rem;
    padding-bottom: 40px;
    margin-bottom: 40px;
    background: url(1d446a8e5d1c2f17.png) no-repeat center bottom;

}


.single_news.under_contents  .clearfix {
   overflow: hidden;

}
.single_news.under_contents  .clearfix a {
    font-size: 1.8rem;
    background: url(c29c2f1c465f8f1a.png) no-repeat right 0px;
    display: block;
    padding: 11px 0;
    margin-bottom: 20px;
    color: #003282;
    max-width: 245px;
    text-align: left;
    float: right;
    width: 170px;
}

@media screen and (max-width:1194px){

}

@media screen and (max-width: 834px){
    .news .h2_wrap.news {
        background: url(71338db50457b9e1.png) no-repeat center top;
        background-size: cover;
    }
    .news .h2_wrap.news h2 {
        background: url(d7fb872b2449b41c.png) no-repeat center bottom;
        background-size: 75px auto;
        padding-bottom: 5px;
        margin-bottom: 0px;
    }
    .news_btn li a {
        padding: 15px 0;
        font-size: 1.2rem;
    }
    .news_btn {
        justify-content: flex-start;
    }
    .news_btn li {
        flex-basis: 33.3%;
    }
    .news_btn {
        margin: 0 auto 45px;
    }
    .under_contents dl.news.single_news dt {
        width: 60px;
        margin-right: 10px;
    }
.under_contents dl.news.single_news dd {
    width: auto;
    padding-top: 0;
    margin-bottom: 0;
    border-bottom: none;
}

    .under_contents dl.news.single_news dd .day {
        font-size: 1rem;
        padding-top: 0;
    }
    .under_contents.single_news h3 {
        font-size: 1.6rem;
        padding-bottom: 30px;
        margin-bottom: 30px;
        background-size: 120px auto;
    }
    .single_news.under_contents .clearfix a {
        max-width: 90px;
        background-size: 48px auto;
        font-size: 1rem;
        padding: 5px 0;
    }
    .under_contents dl.news.single_news {
        margin-bottom: 20px;
    }
}

@media screen and (min-width:601px) and ( max-width:834px) {/*タブレット縦*/
.news_btn li a {
    padding: 25px 0;
    font-size: 2rem;
}
.under_contents dl.news dd {
    width: 100%;
	padding-bottom: 30px;
	margin-bottom: 30px;
}
.under_contents dl.news dd .day {
    margin-bottom: 0;
    padding-bottom: 0;
}
.under_contents dl.news.single_news dd .day {
    font-size: 1.8rem;
}
.under_contents dl.news.single_news dt {
    width: 115px;
    margin-right: 20px;
}
.under_contents.single_news h3 {
    font-size: 3rem;
    padding-bottom: 55px;
    margin-bottom: 55px;
    background-size: 235px auto;
}
.single_news.under_contents .clearfix a {
    max-width: 175px;
    background-size: 95px auto;
    font-size: 2rem;
    padding: 8px 0px 10px;
    width: 175px;
}
.news .h2_wrap.news h2 {

    background-size: 150px auto;
}
}

/* サービス */


.under_contents.services .column2 {
    margin: 0 auto;
    display: flex;
    justify-content: flex-start;
    position: relative;
}

.under_contents.services .column2 .side {
    width: 30%;
}
.under_contents.services .column2 .main {
    width: 70%;
    background: #fff;
}
.under_contents.services .side ul li{
    border-bottom: 4px solid #004594;
}
.under_contents.services .btn-3 {
    height: 66px;
    line-height: 66px;
    margin: 0;
    background: url(a3a70ee917069a26.png) no-repeat left 0px top 19px,url(f28800b55da0e047.png) no-repeat right 10px top 19px;
    color: #fff;
    width: 100%;
    font-weight: normal;
    background-color: #1c1a62;
}
.servises_blog{
    max-width: 980px;
    margin-bottom: 100px;
}
.tax-services_category.archive .bread_crumb {
    margin: 0 0 0 35px;
    /* max-width: 820px; */
}
.under_contents.services{
    position: relative;
}
.under_contents.services:before {
    position: absolute;
    content: "";
    background: #1c1a62;
    width: 40%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: -1;
}
.under_contents.services .btn-3:before,.under_contents.services .btn-3:after {
    border-top: 33px solid #004594;
    border-bottom: 33px solid #004594;
}
.under_contents.services .btn-3:before {
    border-right: 33px solid transparent;
    transform: translateX(-100%);
  }

  .under_contents.services .btn-3:after {
    border-left: 33px solid transparent;
    transform: translateX(100%);
  }

  .under_contents.services .btn-3:hover {
    outline-width:0;
  }
  .under_contents.services .btn-3:hover:before { transform: translateX(-30%); }    
  .under_contents.services .btn-3:hover:after { transform: translateX(30%); }




  
  .under_contents.services .h2_wrap.news {
    height: 300px;
    background:no-repeat left -5px top #379d2d;
    text-align: left;
    /*margin-right: calc((1296px - 100vw)/2);*/
}
.term-pamphlet .under_contents.services .h2_wrap.news{
    background:no-repeat left -5px top #EF81C7;
}
.term-usageuinformationudistribution .under_contents.services .h2_wrap.news{
    background:no-repeat left -5px top #E8A226;
}
.term-management .under_contents.services .h2_wrap.news{
    background:no-repeat left -5px top #3BAA68;
}
.term-facerecognition .under_contents.services .h2_wrap.news{
    background:no-repeat left -5px top #7D1381;
}
.term-idport .under_contents.services .h2_wrap.news{
    background:no-repeat left -5px top #95D100;
}
.term-hydrogenfuelcell .under_contents.services .h2_wrap.news{
    background:no-repeat left -5px top #64B3F9;
}
.term-eco .under_contents.services .h2_wrap.news{
    background:no-repeat left -5px top #DB1428;
}




.under_contents.services .h2_wrap.news h2 {
    font-size: 3rem;
    background:none;
    padding-bottom: 10px;
    margin-bottom: 10px;
    box-sizing: border-box;
    border-bottom: 3px solid #fff;
    text-align: left;
        position: relative;
}
.under_contents.services .h2_wrap.news h2::before {
    position: absolute;
    content: "";
    height: 4px;
    width: 50px;
    left: -1px;
    bottom: -3px;
    background: url(daf9fc7a544eb2a0.png) no-repeat left top;
    z-index: 1;
}
.term-pamphlet .under_contents.services .h2_wrap.news h2::before {
    background: url(1cee50608d2e24ee.png) no-repeat left top;
}
.term-usageuinformationudistribution .under_contents.services .h2_wrap.news h2::before {
    background: url(511dfe09a9119351.png) no-repeat left top;
}
.term-management .under_contents.services .h2_wrap.news h2::before {
    background: url(952f2c4d35e31d32.png) no-repeat left top;
}
.term-facerecognition .under_contents.services .h2_wrap.news h2::before {
    background: url(84a9fe2c6e902666.png) no-repeat left top;
}
.term-idport .under_contents.services .h2_wrap.news h2::before {
    background: url(750cc2fe35a03069.png) no-repeat left top;
}
.term-hydrogenfuelcell .under_contents.services .h2_wrap.news h2::before {
    background: url(30d45a98998f166c.png) no-repeat left top;
}
.term-eco .under_contents.services .h2_wrap.news h2::before {
    background: url(68cf2ef0c624ead9.png) no-repeat left top;
}

.tax-services_category footer{
    margin-top: 0;
}
.tax-services_category .h2_wrap.news .h2_txt {
    background: none;
    max-width: 380px;
    padding-left: 50px;
    color: #fff;
    margin: 0;
    text-align: left;
    padding-top: 75px;
}
.under_contents.services .servises_blog li{
    margin-bottom: 60px;
}

.under_contents.services .servises_blog .flex {
    max-width: 800px;
    /* margin: 0 auto; */
    padding: 0 0 0 60px;
    box-sizing: border-box;
}

.under_contents.services .servises_blog .img a {
	text-align: center;
	width: auto;
	display: block;
	height: 200px;
	transition: none;
    border: 1px solid #ccc;
    box-sizing: #D9D9D9;
}
.under_contents.services .servises_blog h4 {
    font-size: 2rem;
    border-bottom: 1px solid #004594;
    display: inline-block;
    padding-bottom: 10px;
    margin-bottom: 15px;
    position: relative;
    font-weight: normal;
}
.under_contents.services .servises_blog h4:before {
    position: absolute;
    content: "";
    background: url(d14f7849fe68d4e5.png) no-repeat right bottom;
    width: 10px;
    height: 10px;
    right: -9px;
    bottom: -5px;
}

.under_contents.services .servises_blog .txt p{
    margin-bottom: 70px;
}
.under_contents.services .servises_blog .txt p br{
    display: none;
}
.under_contents.services .servises_blog .txt p br.inline{
    display: inline;
}
.under_contents.services .servises_blog .txt a {
    border-radius: 0;
    width: 103px;
    float: right;
    padding: 2px 5px;
    font-size: 1.6rem;
    border: 1px solid #003282;
    color: #003282;
}
.under_contents.services .servises_blog .txt a:hover{
    color: #fff;
    background:#003282;
}
.single-services .under_contents dl.news.single_news dd .day {
    padding-top: 0;
}
.single-services .h2_wrap.news {
    background: url(6502df486938ccaf.png) no-repeat center top;
    background-size: cover;
    height: 250px;
    max-width: 1280px;
    margin: 0 auto;
}

.single-services .under_contents{
    position: relative;
}

.single-services .under_contents:before{
    position: absolute;
    content: "";
    height: 250px;
    width: 100%;
    top: 0;
    left: 0;
    background: #379C2D;
    z-index: -1;
}

.single-services .under_contents.services_category_15:before{
    background: #DB1428;
}
.single-services .under_contents.services_category_15 .h2_wrap.news {
    background: url(5b222eef8c514224.png) no-repeat center top;
    background-size: cover;
}
.single-services .under_contents.services_category_15 .h2_wrap.news h2:before{
    background: url(68cf2ef0c624ead9.png) no-repeat left top;
}


.single-services .under_contents.services_category_14:before{
    background: #64b1f7;
}
.single-services .under_contents.services_category_14 .h2_wrap.news h2:before{
    background: url(30d45a98998f166c.png) no-repeat left top;
}



.single-services .under_contents.services_category_9:before{
    background: #f082c8;
}
.single-services .under_contents.services_category_9 .h2_wrap.news h2:before{
    background: url(1cee50608d2e24ee.png) no-repeat left top;
}

.single-services .under_contents.services_category_10:before{
    background: #e9a326;
}
.single-services .under_contents.services_category_10 .h2_wrap.news h2:before{
    background: url(511dfe09a9119351.png) no-repeat left top;
}

.single-services .under_contents.services_category_11:before{
    background: #3bab68;
}
.single-services .under_contents.services_category_11 .h2_wrap.news h2:before{
    background: url(952f2c4d35e31d32.png) no-repeat left top;
}

.single-services .under_contents.services_category_12:before{
    background: #7d1382;
}
.single-services .under_contents.services_category_12 .h2_wrap.news h2:before{
    background: url(84a9fe2c6e902666.png) no-repeat left top;
}

.single-services .under_contents.services_category_13:before{
    background: #96d200;
}
.single-services .under_contents.services_category_13 .h2_wrap.news h2:before{
    background: url(750cc2fe35a03069.png) no-repeat left top;
}


.single-services .under_contents dl.news.single_news dt{
    width: auto;
    margin-right: 0;
    padding-top: 0;
	border-bottom: none;
}
.single-services dl.news dt a {
    color: #191955;
    border: 1px solid #191955;
    width: auto;
    padding: 0 5px;
}
.single-services dl.news dd {
    width: auto;
    color: #191955;
    padding-top: 0;
}
.single-services .under_contents h3 {
    font-weight: normal;
    font-size: 2.5rem;
    padding-bottom: 40px;
    margin-bottom: 40px;
    text-align: center;
    background: url(74b7ae73e864285c.png) no-repeat center bottom;
}
.single-services .under_contents .repeat_box h3{
	font-size: 2rem;
	text-align: left;
	background: url(4fb3a9ff6a129b26.png) no-repeat left top;
	padding: 0 0 0 35px;
	margin-bottom: 30px;
    position: relative;
}
.single-services .under_contents .repeat_box h3:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 10px;
    height: 100%;
    background: #B3DBF9;
    z-index: -1;
}
.flex.dlbtn_flex{
    justify-content: flex-start;
    align-items: center;
}
.flex.dlbtn_flex > p:first-of-type{
color:#003282;
margin-right: 40px;
}
.flex.dlbtn_flex .dl_btn{
    margin-top: 0;
}
.privacy .flex.dlbtn_flex {
    justify-content: space-between;
    max-width: 550px;
}
.single-services .h2_wrap.news .h2_txt {
    background: none;
    height: 250px;
    margin: 0 auto;
    text-align: left;
    color: #fff;
    padding-right: 30px;
    max-width: 1020px;
    padding-top: 65px;
}
.single-services .h2_wrap.news h2 {
    font-size: 3rem;
    background: none;
    padding-bottom: 10px;
    margin-bottom:0;
    display: inline-block;
    border-bottom: 3px solid #fff;
    position: relative;
}
.single-services .h2_wrap.news h2:before {
    position: absolute;
    content: "";
    height: 4px;
    width: 50px;
    left: -1px;
    bottom: -3px;
    background: url(daf9fc7a544eb2a0.png) no-repeat left top;
    z-index: 1;
}
.single .under_contents img{
height: auto;
width: 100%;
}
.single-services .under_contents  .clearfix {
    overflow: hidden;
    margin-top: 50px;
}
 .single-services .under_contents  .clearfix a {
     font-size: 1.8rem;
     background: url(c29c2f1c465f8f1a.png) no-repeat right 0px;
     display: block;
     padding: 11px 0;
     margin-bottom: 20px;
     color: #003282;
     max-width: 245px;
     text-align: left;
     float: right;
     width: 170px;
 }
 .single-services .under_contents  .clearfix.contact_view a {
    background: url(c9d85f2935cdbd5f.png) no-repeat left 0px;
    padding: 11px 0 11px 100px;
    max-width: 245px;
    text-align: left;
    float: left;
    width: 200px;
}
.single-services .flex.dlbtn_flex{
    margin-bottom: 80px;
}
.single-services .flex.dlbtn_flex > p:first-of-type {
    margin-right: 80px;
}
.single-services .dl_btn {
    padding: 10px 10px;
    width: auto;
    max-width: 100%;
    margin: 50px auto 0;
    /* max-width: 170px; */
}
.single-services .repeat_box .flex.column3 {
    margin: 65px auto 0;
}

@media screen and (max-width: 1280px){
.under_contents.services .h2_wrap.news {
    margin-right: 0;
}
}
@media screen and (max-width: 1280px){
.under_contents.services .h2_wrap.news{
    margin-right: 0;
}
}

@media screen and (max-width: 1194px){
.under_contents.services .h2_wrap.news.sp{
		display: block!important;
    background-size: cover;
    background-position: 0!important;
}
.under_contents.services .h2_wrap.news.pc{
		display:none!important;
	}
.under_contents.services .column2 .side {
    width: 23.5%;
}
.under_contents.services .column2 .main {
    width: 76.5%;

}
.under_contents.services .servises_blog .flex {
    max-width: 680px;
    padding: 0 0 0 60px;
}
.tax-services_category.archive .bread_crumb {
    max-width: 680px;
}
.under_contents.services .servises_blog 	.flex > .txt {
    flex-basis: 45%;
}
.under_contents.services .servises_blog 	.flex > .img {
    flex-basis: 50%;
}
.under_contents.services .servises_blog .txt p {
    margin-bottom: 30px;
}
.tax-services_category .h2_wrap.news .h2_txt {
    padding-left: 70px;
}
.single-services .h2_wrap.news h2 {
    margin-left: 30px;
}
.single-services .under_contents  .clearfix {
    margin-top: 0;
}
}


@media screen and (max-width: 834px){
.under_contents.services:before{
    display: none;
}
.under_contents.services .column2 {
    max-width:100%;
    margin: 0 auto;
    display: block;
}
.under_contents.services .column2 .side {
    max-width: 100%;
    width: 100%;
}
.under_contents.services .side{
    position: fixed;
    top: 0;
    z-index: 10;
    width: 100%;
    background: #fff;
}
.under_contents.services .sp.sp_menu {
    margin-top: 60px;
    cursor: pointer;
    text-align: center;
    color: #969696;
    font-size: 1.6rem;
    padding: 15px 0;
    box-sizing: border-box;
    border-top: 2px solid #D2D2D2;
    border-bottom: 2px solid #D2D2D2;
    position: relative;

}
.under_contents.services .sp.sp_menu:before {
    content: "";
    position: absolute;
    width: 16px;
    height: 15px;
    background: url(03770bb98b26052f.png) no-repeat center top;
    top: 24px;
    right: 20px;
	background-size: 100% auto;
}
.under_contents.services .sp.sp_menu.open:before{
    background: url(31f916c4d47cf706.png) no-repeat center top;
		background-size: 100% auto;

}
.under_contents.services .column2 .side ul{
    display: none;
}
.under_contents.services .column2 .side ul.open{
    display: block;
}
.under_contents.services .btn-3 {
    max-width: 100%;
    height: auto;
    line-height: 1.6;
    padding: 15px 0 15px 20px;
    font-size: 1.2rem;
    background: #1C1A62;
    box-sizing: border-box;
    text-align: left;
    border-bottom: 2px solid #004594;
}
.under_contents.services .btn-3:hover{
    background: #004594;
}
.under_contents.services .side ul li {
    border-bottom: none;
}
.under_contents.services .btn-3:before,
.under_contents.services .btn-3:after{
    display: none;
}
.under_contents.services .column2 .main {
    max-width: 100%;
    width: 100%;
    margin-top: 123px;
}
.under_contents.services .h2_wrap.news {
    height: 150px;
    background:no-repeat center top;
    background-size: cover;
    text-align: left;
    margin-top: 0;
    background-position: left top!important;
}
.term-pamphlet .under_contents.services .h2_wrap.news {
    background:no-repeat center top;
    background-size: cover;
}
.term-usageuinformationudistribution .under_contents.services .h2_wrap.news {
    background: no-repeat center top;
    background-size: cover;
}
.term-management .under_contents.services .h2_wrap.news {
    background: no-repeat center top;
    background-size: cover;
}
.term-facerecognition .under_contents.services .h2_wrap.news {
    background: no-repeat center top;
    background-size: cover;
}
.term-idport .under_contents.services .h2_wrap.news {
    background: no-repeat center top;
    background-size: cover;
}
.term-hydrogenfuelcell .under_contents.services .h2_wrap.news {
    background: no-repeat center top;
    background-size: cover;
}
.term-eco .under_contents.services .h2_wrap.news {
    background: no-repeat center top;
    background-size: cover;
}
.tax-services_category .h2_wrap.news .h2_txt {
    padding-left: 20px;
    max-width: 200px;
    padding-top: 30px;
}
.under_contents.services .h2_wrap.news h2 {
    font-size: 1.8rem;
    padding-bottom: 5px;
    margin-bottom: 5px;
    border-bottom: 3px solid #fff;
}
.tax-services_category .h2_wrap.news .h2_txt p {
    font-size: 1rem;
    max-width: 170px;
}
.under_contents.services .servises_blog .img a {
    height: 190px;
    border: 1px solid #E2E2E2;
}
.under_contents.services .flex > .img {
    margin-bottom: 15px;
    max-width: 360px;
    margin: 0 auto 15px;
}
.under_contents.services .servises_blog h4 {
    font-size: 1.4rem;
}
.under_contents.services .servises_blog .txt p {
    margin-bottom: 10px;
    font-size: 1.2rem;
}
.under_contents.services .servises_blog .txt a {
    width: 70px;
    font-size: 1rem;
}
	
.single-services .h2_wrap.news {
    background: url(9c1c1ccce8b3c27b.png) no-repeat center top;
    background-size: cover;
    height: 150px;
    margin-top: 60px;
}

	.postid-152.single-services .h2_wrap.news {
    background: url(624baa14e3509614.png) no-repeat center top;
    background-size: cover;
}
	.postid-152.single-services .h2_wrap.news h2:before {
    background: url(68cf2ef0c624ead9.png) no-repeat left top;
}
.single-services .h2_wrap.news .h2_txt {
    height: 150px;
    padding-left: 20px;
    padding-top: 30px;
    padding-right: 0;
}
.single-services .h2_wrap.news h2 {
    font-size: 2rem;
    padding-bottom: 5px;
	margin-left: 0;
}
.single-services .under_contents h3 {
    font-size: 1.6rem;
    padding-bottom: 30px;
    margin-bottom: 30px;
    background-size: 120px auto;
}
	.single-services .under_contents .repeat_box h3{
	font-size: 1.4rem;
	text-align: left;
	background: url(4fb3a9ff6a129b26.png) no-repeat left top;
	padding: 0 0 0 20px;
	margin-bottom: 25px;
		background-size:5px auto;
}
.single-services .under_contents .repeat_box h3:before {
    width: 5px;
}
.single-services .center.catch {
    text-align: left;
}
.flex.dlbtn_flex > p:first-of-type {
    margin-right:0;
    margin-bottom: 10px;
}
.single-services .under_contents:before{
    display: none;
}
.single-services .under_contents .flex.bottom{
    display: flex;
}
.single-services .under_contents  .clearfix a {
    font-size: 0.9rem;
    background: url(c29c2f1c465f8f1a.png) no-repeat right 0px;
    padding: 4px 0 10px;
    float: right;
    width: 90px;
    background-size: 45px auto;
}
.single-services .under_contents  .clearfix.contact_view a {
    background: url(c9d85f2935cdbd5f.png) no-repeat left 0px;
    padding: 3px 0 11px 50px;
    width: 120px;
    background-size: 45px auto;
}
.single-services .dl_btn {
    margin: 0;
    max-width: 170px;
}
.single-services .flex.dlbtn_flex {
    margin-bottom: 50px;
}
.repeat_box .flex.column3 li {
    margin-right: 4%;
    flex-basis: 48%;
}
.repeat_box .flex.column3 li:nth-child(3n){
    margin-right: 4%;
}
.repeat_box .flex.column3 li:nth-child(even){
    margin-right: 0!important;
}
.under_contents.services .servises_blog .flex {
    max-width: 680px;
    padding: 0 20px;
    margin: 0 auto;
}
.tax-services_category.archive .bread_crumb {
    margin: -23px auto 30px;
    max-width: 90%;
}
.single-services .repeat_box .flex.column3 {
    margin: 50px auto 0;
}
}

@media screen and (min-width:601px) and ( max-width:834px) {/*タブレット縦*/
.under_contents.services .sp.sp_menu {
    margin-top: 100px;
    font-size: 2.4rem;
    padding: 25px 0 0;
    box-sizing: border-box;
    height: 100px;
}
.under_contents.services .column2 .main {
    margin-top: 200px;
}
.under_contents.services .h2_wrap.news {
    height: 300px;
}
.under_contents.services .h2_wrap.news h2 {
    font-size: 3.2rem;
}
.tax-services_category .h2_wrap.news .h2_txt {
    padding-left: 40px;
    max-width: 370px;
    padding-top: 60px;
}
.tax-services_category .h2_wrap.news .h2_txt p {
    font-size: 2rem;
    max-width: 100%;
}
.tax-services_category.archive .bread_crumb {
    margin: -50px auto 60px;
}
.under_contents.services .flex > .img {
    margin-bottom: 15px;
    max-width: 100%;
    margin: 0 auto 30px;
}
.under_contents.services .servises_blog .img a {
    height: 400px;
}
.under_contents.services .servises_blog h4 {
    font-size: 2.4rem;
    padding-bottom: 20px;
    margin-bottom: 30px;
}
.under_contents.services .servises_blog .txt p {
    margin-bottom: 30px;
    font-size: 2.2rem;
}
.under_contents.services .servises_blog .txt a {
    width: 145px;
    font-size: 2rem;
}
.under_contents.services .btn-3 {
    font-size: 2rem;
}
.single-services .h2_wrap.news {
    height: 250px;
    margin-top: 100px;
}
.single-services .h2_wrap.news h2 {
    font-size: 3.5rem;
}
.single-services .h2_wrap.news .h2_txt {
    height: 250px;
    padding-top: 55px;
    padding-left: 40px;
}
.single-services .under_contents h3 {
    font-size: 3rem;
    background-size: 230px auto;
}
.center.catch {
    font-size:3rem;
}
.single-services .under_contents .repeat_box h3 {
    font-size: 2.4rem;
    background: url(4fb3a9ff6a129b26.png) no-repeat left top;
    padding: 0 0 0 40px;
    margin-bottom: 50px;
    background-size: 10px auto;
}
.single-services .under_contents .repeat_box h3:before {
    width: 10px;
}
.single-services .dl_btn {
    max-width: 300px;
    padding: 20px 10px;
}
.single-services .under_contents  .clearfix.contact_view a {
    background: url(c9d85f2935cdbd5f.png) no-repeat left 0px;
    padding: 10px 0 11px 107px;
    width: 185px;
    background-size: 94px auto;
    font-size: 1.8rem;
}
.single-services .under_contents  .clearfix a {
    font-size: 1.8rem;
    background: url(c29c2f1c465f8f1a.png) no-repeat right 0px;
    padding: 10px 0 10px;
    float: right;
    width: 175px;
    background-size: 95px auto;
}
.under_contents.services .sp.sp_menu:before {
    width: 30px;
    height: 26px;
    background: url(03770bb98b26052f.png) no-repeat center top;
    top: 35px;
    right: 40px;
}
.under_contents.services .sp.sp_menu.open:before {
    background: url(31f916c4d47cf706.png) no-repeat center top;
}
}


/* お問い合わせ */

.contact .h2_wrap.news,.thanks .h2_wrap.news{
    background-size: cover;
    height: 250px;
}
.contact .h2_wrap.news h2, .thanks .h2_wrap.news h2{
    background: url(fccf88a9a771e34f.png) no-repeat center bottom;
}





/*お問い合わせフォーム*/
.contact footer{
    margin-top: 95px;
}
.contact .center.catch{
    margin-bottom: 130px;
}

.contact_btn {

    margin: 0 auto 100px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.contact_btn li{
    flex-basis: 33%;
}
.contact_btn li a{
    padding: 30px 0;
    box-sizing: border-box;
    color: #004594;
    border-bottom: 5px solid #004594;
    width: 100%;
    display: block;
    text-align: center;
}
.contact_btn li.current a{
    background:#004594;
    color: #fff;
}
.contact-child h2 {
    margin-bottom: 70px;
}
.contact-child footer {
    margin-top: 120px;
}
.contact_btn li a:hover{
    opacity: 0.8;
}



.form_box {
    background: #fff;
    padding: 120px 80px 120px;
    box-sizing: border-box;
    max-width: 1024px;
    margin: 0 auto;
}
.form_box .catch {
    text-align: center;
    font-size: 2.2rem;
    line-height: 1.8;
    font-weight: bold;
    margin-bottom: 20px;
}
.form_box .center{
    text-align: center;
    margin-bottom: 100px;
}


.thanks .form_box .center {
    text-align: center;
    margin-bottom: 5px;
}
.inq_body table {
    width: 100%;
    margin: 0 auto 50px;
    max-width:1000px;
    table-layout: fixed;
}
.inq_body th {
    padding: 0 0 50px 0;
    text-align: center;
    vertical-align: top;
    box-sizing: border-box;
    width: 15%;
}
.inq_body td{
    box-sizing: border-box;
}
.inq_body th .t_txt {
    width: 170px;
    display: inline-block;
    text-align: left;
    box-sizing: border-box;
    padding: 15px 0 0;
    line-height: 1.5;
    vertical-align: top;
    font-size: 1.7rem;
    border-right: 1px solid #212668;
    border-left: 1px solid #212668;
    text-align: center;
    color: #191955;
    height: 60px;
}
.inq_body .t_red {
    background: #ff2b20;
    margin-left: 0;
    color: #fff;
    padding: 0px 8px;
    box-sizing: border-box;
    font-size: 14px;
    font-weight: normal;
    margin-top: 15px;
    display: inline-block;
    margin-right: 30px;
}
.inq_body .t_red.top{
    vertical-align: top;
    margin-top: 0;
}
.inq_body th .t_red{
    display: none;
}
.inq_body .t_gr {
    background: #C8BB9B;
    margin-left: 10px;
    color: #fff;
    padding: 5px 10px;
    box-sizing: border-box;
    font-size: 14px;
}

.inq_body td {
    padding: 0 0 50px;
    max-width: 730px;
    width: 81.5%;
}
.inq_body td span {
    display: inline-block;
}
.inq_body td span.red{
    color: #FF0C1A;
    padding-left: 75px;
    padding-top: 20px;
}
.inq_body td span.wpcf7-not-valid-tip{
	display: block;
}
.inq_body td span.wpcf7-list-item, .inq_body td span.wpcf7-list-item-label {
    display: block;
    min-width: 50%;
    margin-bottom: 15px;
    font-weight: normal;
    display: inline-block;
    font-size: 1.7rem;
}
.inq_body td .bold {
    margin-bottom: 20px;
}
.inq_body td.name span.name {
    display: inline-block;
    width: 30px;
    font-size: 1.4rem;
    text-align: right;
}
.inq_body input[type="text"], .inq_body input[type="email"], .inq_body input[type="tel"], .inq_body .wpcf7-form-control-wrap textarea {
    padding: 10px 10px;
    width: 100%;
    max-width: 100%;
    height: 60px;
    box-sizing: border-box;
    border: 1px solid #9e9e9e;
    font-size: 1.7rem;
}
.inq_body .textarea1 textarea{
    height: 130px;
}


.inq_body span.your-mei,.inq_body span.your-mei-kana{
	margin-right: 0;
}
.wpcf7-form-control-wrap.check1{
    margin-bottom: 0;
}

input.quarter {
    width: 100px!important;
}
.inq_body span.ad_txt, .inq_body span.post_span {
    display: inline-block;
    padding: 0 5px;
}

.inq_body select {
    height: 40px;
    font-size: 1.4rem;
    padding: 0px 20px;
    box-sizing: border-box;
    background: #D4C5B6;
    border: none;
    max-width: 400px;
    width: 100%;
    -webkit-appearance: none;
    border-radius: 0;
}


.inq_body td>div{
	margin-bottom: 10px;
}

.inq_body td>div span.address_mid{
	width: 117px;
}

.inq_body table dl{
	overflow: hidden;
	display: block;
	margin-bottom: 20px;
}
.inq_body table dt{
	float: left;
	width: 60%;
	padding: 8px 0;
}
.inq_body table dd{
	float: right;
	padding: 8px 0;
}

.inq_body .contact_btn {
    text-align: center;
    margin-bottom: 0;
}

.inq_body input[type="submit"], .inq_body input[type="button"] {
        position: relative;
        display: block;
        overflow: hidden;
        width: 400px;
        height: 100px;
        margin: 0 auto;
            text-decoration: none;
            line-height: 100px;
            color:#fff;
            text-align: center;
    cursor: pointer;
    -webkit-appearance: none;
    font-size: 1.7rem;
    border: none;
    background: none;
    z-index: 4;


}


.btn_anime{
    position: relative;
    display: block;
    overflow: hidden;
    width: 400px;
    height: 100px;
    margin: 1rem auto;
    text-transform: uppercase;
        text-decoration: none;
        line-height: 100px;
        color:#fff;
        text-align: center;
        font-weight: bold;
        z-index: 2;
        background: #143990;

}
.btn_anime:before, .btn_anime:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border-top: 50px solid #090652;
    border-bottom: 50px solid #090652;
        box-sizing: border-box;
        transition: 0.5s ease-in-out;
        z-index: 3;
}
.btn_anime span {
    transition: none;
    z-index: 10;
    position: relative;
}
  .btn_anime:before {
    border-right: 50px solid transparent;
    transform: translateX(-100%);
    z-index: 3;
  }

  .btn_anime:after {
    border-left: 50px solid transparent;
    transform: translateX(100%);
    z-index: 3;
  }

  .btn_anime:hover {
    outline-width:0;
  }
  .btn_anime:hover:before { transform: translateX(-30%);
z-index: 3;}    
  .btn_anime:hover:after { transform: translateX(30%);z-index: 3;}


.inq_body input[type="submit"]:hover,
.inq_body input[type="button"]:hover{
	opacity: 1;
}


.inq_body input[type="button"].wpcf7c-elm-step2, .inq_body input[type="submit"].wpcf7c-elm-step2 {
    display: inline-block;
}
.inq_body input[type="submit"]:disabled {
    opacity: 0.8;
    pointer-events: none;
    border: none;
    /* background: #555; */
}
.wpcf7c-elm-step.step3_box{
    background: #fff;
    text-align: center;
    line-height: 1.5;
    padding: 20px;
    box-sizing: border-box;
    border-radius: 20px;
}
.wpcf7 form.sent .wpcf7-response-output{
	display: none!important;
}

#pp_check {
    margin: 20px 0;
    position: relative;
}

#pp_check a {
    padding-left: 20px;
    font-size: 14px;
}
#pp_check a:hover{
	text-decoration:none;
}


#pp_check a {
    font-size: 1.8rem;
    background: url(c29c2f1c465f8f1a.png) no-repeat right 0px;
    display: block;
    width: 100%;
    padding: 11px 0;
    margin-bottom: 20px;
    color: #003282;
    max-width: 245px;
    text-align: left;
}
#pp_check .clearfix {
    width: 245px;
    position: absolute;
    top: 0;
    right: 0;
}
.wpcf7c-conf {
    background: #e7e5e5!important;
    pointer-events: none;
}
.wpcf7c-elm-step2 .wpcf7-list-item-label {
    pointer-events: none;
}
.wpcf7c-elm-step2 
.inq_body td p{
    font-weight: bold;
    font-size: 14px;
}
.inq_body td p a{
    text-decoration: underline;
}
.inq_body td p a:hover{
    text-decoration: none;
}

.wpcf7-form-control-wrap {
    display: block;
    width: calc(100% - 74px);
}
.wpcf7-form-control-wrap.job,.wpcf7-form-control-wrap.position,.wpcf7-form-control-wrap.address,
.all .inq_body td span.company{
width: 100%;
}
.wpcf7-form-control-wrap.your-name, .wpcf7-form-control-wrap.your-kana {
    /* max-width: 310px; */
    width: calc(48% - 32px);
}
.wpcf7-form-control-wrap.your-name{
    margin-right: 2%;
}
    .wpcf7-form-control-wrap.your-zipcode{
        max-width: 110px;
        margin-bottom: 25px;
        }
.thanks .under_contents .contents_box p{
	text-align: center;
	font-size: 2rem;
}
.thanks .under_contents .contents_box .small{
	font-size: 1.5rem;
	margin-bottom: 110px;
	display: block
}
.thanks .under_contents .contents_box a.btn-3{
	color: #fff;
}
::placeholder {
    color: #C0C0C0;
    opacity: 1;
  }
/* チェックボックスCSS */


.wpcf7-form-control-wrap {
  display: block;
}
.wpcf7-form-control.wpcf7-checkbox {
  display: flex;
  flex-wrap: wrap;
}
span.wpcf7-list-item {
    position: relative;
    margin: 6px 0px 0 0 !important;
    width: 110px;
    font-size: 14px;
}

#pp_check span.wpcf7-list-item {
    width: auto;
}
.wpcf7-list-item-label {/*項目の色や文字サイズ*/
  color: #000;
  cursor: pointer;
}
input[type="checkbox"]{
  position: absolute;
  opacity: 0;/*既存のチェックボックスを見えなくする*/
}
.wpcf7-list-item-label:before {
    content: '';
    display: inline-block;
    width: 20px;
    height: 20px;
    background: #fff;
    position: relative;
    top: 0;
    margin-right: 10px;
    vertical-align: middle;
    cursor: pointer;
    text-align: center;
    border: 1px solid #000;
}
input[type="checkbox"]:checked ~ .wpcf7-list-item-label:after {
    content: "";
    display: block;
    position: absolute;
    top: 10px;
    left: 3px;
    width: 15px;
    height: 15px;
    background: #000;
    background-size: contain;
}

.acceptance-pp.wpcf7-form-control-wrap {
    display: inline-block;
    margin-left:0;
}
.wpcf7-form-control-wrap.acceptance-none{
    display: inline-block;
    padding-left: 20px;
}
/*
#pp_check .wpcf7-list-item-label:before {
    border-radius: 50%;
}
#pp_check input[type="checkbox"]:checked ~ .wpcf7-list-item-label:after {
    top: 7px;
    left: 6px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
}*/

@media screen and (max-width: 1194px){
.wpcf7-form-control-wrap.your-name, .wpcf7-form-control-wrap.your-kana {
    max-width: 200px;
}
.contact .h2_wrap.news.sp, .thanks .h2_wrap.news.sp{
		display: block!important;
}
.contact .h2_wrap.news.pc, .thanks .h2_wrap.news.pc{
		display:none!important;
	}
#pp_check .clearfix {
    width: 220px;
}
#pp_check a {
    font-size: 1.6rem;
    padding: 11px 0;
    background-size: 86px auto;
}
}

@media screen and (max-width: 834px){
    
 
    .contact .h2_wrap.news h2 {
        background:url(fccf88a9a771e34f.png)no-repeat center bottom;
        background-size: 116px auto;
    }

    .inq_body th .t_red{
        display:inline-block;
    }
    .wpcf7-list-item.last span.wpcf7-list-item-label{
        margin-bottom: 0;
    }
    .contact .center.catch {
        margin-bottom: 130px;
        font-size: 1.6rem;
        text-align: left;
    }
    .contact .center.catch {
        margin-bottom: 45px;
        font-size: 1.6rem;
        text-align: left;
    }
    .contact_btn{
        margin: 0 auto 50px;
    }
    .contact_btn li a {
        padding: 10px 0;
        border-bottom: 5px solid #004594;
        font-size: 1.2rem;
    }
.inq_body input[type="submit"], .inq_body input[type="button"] {
    width: 200px;
    height: 50px;
    margin: 0 auto;
    line-height: 50px;
    color: #fff;
    cursor: pointer;
    -webkit-appearance: none;
    font-size: 1rem;
    border: none;
}
.btn_anime {
    width: 200px;
    height: 50px;
}
	
	.inq_body .wpcf7c-elm-step2 input[type="submit"], .inq_body .wpcf7c-elm-step2 input[type="button"] {
    width: 150px;
    height: 50px;

}
.wpcf7c-elm-step2.btn_anime {
    width: 150px;
    height: 50px;
	line-height: 45px;
}
	
	

.contact .h2_wrap.news {
    height: 125px;
    background-size: cover;
}
    .inq_body td {
        width: 100%;
			max-width: 100%;
            padding-bottom: 30px;
    }
    .inq_body td .t_red{
        display: none;
    }

    .inq_body th {
        font-size: 1.2rem;
        padding-bottom: 10px;
        text-align: left;
    }
    .inq_body th .t_txt {
        width: auto;
        font-size: 1.2rem;
        padding: 5px;
        height: 30px;
        min-width: 100px;
    }
    .wpcf7-form-control-wrap {
        display: block;
        width: 100%;
    }
    .inq_body td span.red {
        font-size: 1rem;
        padding-left: 0;
        padding-top: 4px;
    }
    .wpcf7-form-control-wrap.your-name, .wpcf7-form-control-wrap.your-kana {
        max-width: 49%;
    }
    .wpcf7-form-control-wrap.your-zipcode {
        max-width: 70px;
        margin-bottom: 10px;
    }
    .inq_body td span.wpcf7-list-item, .inq_body td span.wpcf7-list-item-label {
        font-size: 1.2rem;
    }
    #pp_check {
        margin: 0;
        text-align: center;
    }
    #pp_check .clearfix{
        max-width: 130px;
        top: 40px;
    }
    #pp_check a {
        float: right;
        font-size: 1rem;
        max-width: 130px;
        background-size: 45px auto!important;
        padding: 3px 0 5px;
    }
    .inq_body .t_red {
        font-size: 1.2rem;
        margin-top: 4px;
        margin-right: 0;
        margin-left: 15px;
    }

	.inq_body input[type="text"], .inq_body input[type="email"], .inq_body input[type="tel"] {
    height: 30px;
}
.inq_body .wpcf7-form-control-wrap textarea{
    height: 60px;
}
    .inq_body table,.inq_body table tr,.inq_body table tbody,
    .inq_body table tr th,.inq_body table tr td{
        display: block;
        width: 100%;
    }
    .inq_body input[type="text"], .inq_body input[type="email"], .inq_body input[type="tel"], .inq_body .wpcf7-form-control-wrap textarea {
        font-size: 1.2rem;
    }

.inq_body input[type="submit"], .inq_body input[type="button"] {
    margin: 0 auto;
}
.form_box .center {
    margin-bottom: 20px;
    font-size: 1.2rem;
    line-height: 1.6;

}
    .form_box .catch {
        font-size: 1.8rem;
        line-height: 1.7;
    }

.contact-child footer {
    margin-top: 135px;}
	
div.wpcf7 .ajax-loader {
    /* visibility: hidden; */
    position: absolute!important;
    bottom: 10px!important;
    left: 50%!important;
    margin-left: -8px!important;
}

	.thanks .under_contents .contents_box p {
    text-align: left;
    font-size: 1.6rem;
}
	.thanks .under_contents .contents_box .small {
    font-size: 1.6rem;
    margin-bottom:45px;

}
		.thanks .btn-3 span {
    font-size: 1rem;

}
	input[type="checkbox"]:checked ~ .wpcf7-list-item-label:after {
    top: 5px;

}
.btn_anime:before, .btn_anime:after {
    display: none;
}
}

@media screen and (min-width:601px) and ( max-width:834px) {/*タブレット縦*/
.contact_btn li a {
    font-size: 2rem;
}
.contact .center.catch {
    margin-bottom:100px;
    font-size: 3rem;
    text-align: left;
}
.inq_body th .t_txt {
    width: auto;
    font-size: 2.4rem;
    padding: 5px;
    height: 60px;
    min-width: 215px;
}
.inq_body .t_red {
    font-size: 2rem;
    margin-top: 10px;
    margin-right: 0;
    margin-left: 30px;
}
.inq_body input[type="text"], .inq_body input[type="email"], .inq_body input[type="tel"] {
    height: 60px;
}
.inq_body input[type="text"], .inq_body input[type="email"], .inq_body input[type="tel"], .inq_body .wpcf7-form-control-wrap textarea {
    font-size: 2.2rem;
}
.inq_body td span.red {
    font-size: 1.9rem;
    padding-top: 10px;
}
.inq_body th {
    padding-bottom: 20px;
}
.wpcf7-form-control-wrap.your-zipcode {
    max-width: 140px;
    margin-bottom: 20px;
}
.inq_body td span.wpcf7-list-item, .inq_body td span.wpcf7-list-item-label {
    font-size: 2.2rem;
}
.wpcf7-form-control-wrap.your-name, .wpcf7-form-control-wrap.your-kana {
    max-width: 48%;
    width: 48%;
}
#pp_check .clearfix {
    max-width:310px;
    top: 60px;
	width: 265px;
}
#pp_check a {
    font-size: 2rem;
    max-width: 310px;
    background-size: 95px auto!important;
    padding: 8px 0 10px 0;
}
.btn_anime {
    width: 400px;
    height: 100px;
}
.inq_body input[type="submit"], .inq_body input[type="button"] {
    font-size: 2rem;
    width: 400px;
    height: 100px;
}
	
	.inq_body .wpcf7c-elm-step2 input[type="submit"], .inq_body .wpcf7c-elm-step2 input[type="button"] {
    width: 320px;
    height: 100px;

}
.wpcf7c-elm-step2.btn_anime {
    width: 320px;
    height: 100px;
	line-height: 100px;
}
	
	
.inq_body table {
    margin-bottom: 100px;
}
input[type="checkbox"]:checked ~ .wpcf7-list-item-label:after {
    top: 15px;
}
.contact .h2_wrap.news {
    height: 260px;
    background-size: cover;
}
}


form.wpcf7-form{
	margin-top: -380px;
	padding-top: 380px;
}

.pagetop {
    position: absolute;
    right: -20px;
    bottom: auto;
    top: -20px;
    z-index: 3;
    width: 70px;
    height: 70px;
    box-sizing: border-box;
    border: 1px solid #fff;
    border-radius: 50%;
    padding-top: 20px;
}
.pagetop.sp{
    display: none!important;
}
.mfp-auto-cursor .mfp-content {
    max-width: 800px;
}
.pagetop a {
    display: block;
    text-align: center;
    color: #fff;
}
.mapbox{
    position: relative;
    max-width: 800px;
    margin: 0 auto;
}
.googlemap {
    position: relative;
    padding-bottom: 56%;
    height: 0;
    overflow: hidden;
    max-width: 800px;
    margin: 0 auto;
}
.googlemap iframe {
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}

@media screen and (max-width: 1500px){
.pagetop {
    right:20px;
}
}

@media screen and (max-width: 1194px){
.pagetop {
    right:0px;
}
}



@media screen and (max-width: 834px){
    .pagetop.pc{
        display: none;
    }
    .pagetop{
        width: 60px;
        height: 60px;
        text-align: center;
        padding-top: 0;
        font-size: 1.2rem;
        top:5px;
			right: 20px;
    }
    .pagetop:hover:before {
        content: "";
        position: absolute;
        width: 70px;
        height: 70px;
        background: rgba(255,255,255,0.6);
        top: -6px;
        left: -6px;
        border-radius: 50%;
    }
    .pagetop a {
        text-align: center;
        position: absolute;
        width: 100%;
        height: 100%;
        padding-top:17px;
        font-size: 1.2rem;
        box-sizing: border-box;
    }
}


@media screen and (min-width:601px) and ( max-width:834px) {/*タブレット縦*/
.pagetop {
    width: 100px;
    height: 100px;
    text-align: center;
    padding-top: 0;
    font-size: 2.2rem;
    top: 10px;
    right: 20px;
}
.pagetop a {
    padding-top: 30px;
    font-size: 2rem;
    box-sizing: border-box;
}
.pagetop:hover:before {
    width: 110px;
    height: 110px;
}
	.con2_main .flex li.hover{
		max-height: 100%;
	}
.con2_main .flex li.hover p.photo {
    height: 200px;
    max-height: 340px;
    transform: 1;
    transition: none;
}
}


span.color_r{
    color: #F11432;
}



@media screen and (min-width: 1195px){
/*カーソル要素*/
#cursor{
  position: fixed;

  /*丸の大きさと色の指定*/
  background: #fff;
  border-radius:10px;
  width: 20px;
  height: 20px;
  margin: -10px 0 0 -10px;/*真ん中にくるようにマイナスマージンで調整*/

  z-index: 2;/*一番手前に来るように*/
  pointer-events: none;/*クリックできなくなるのを防ぐため。noneで対応*/
  opacity: 0;
  transition: transform 0.1s;/*アニメーションの秒数指定*/
}

/*ちょっと遅れてついてくるストーカー要素*/
#stalker{
  position: fixed;
  /*丸の大きさと色の指定*/
  border: 1px solid #a4a39f;
  border-radius: 50%;
  width: 22px;
  height: 22px;
  margin: -10px;/*真ん中にくるようにマイナスマージンで調整*/
  z-index: 100;/*カーソルの後ろに来るように*/
  pointer-events: none;/*クリックできなくなるのを防ぐため。noneで対応*/
  opacity: 0;
  transition: transform 0.3s;/*アニメーションの秒数指定*/
  font-size: 10px;
}
#cursor.active,
#stalker.active{
  transform: scale(1.5);
  background: rgba(236,158,96,0.9);
  border: none;
}
#cursor.active_click,
#stalker.active_click{
  width: 80px;
  height: 80px;
  text-align: center;
  transform: scale(1);
  margin: -40px;
  background: rgba(255,100,10,0.9);
}
#cursor.active_click:after,
#stalker.active_click:after{
    position: absolute;
    content:"CLICK";
    opacity:1;
    color:#fff;
    font-size: 15px;
box-sizing: border-box;
top: 25px;
left: 18px;
}
#cursor.viewall_click,
#stalker.viewall_click{
  width: 80px;
  height: 80px;
  text-align: center;
  transform: scale(1);
  margin: -40px;
  background: rgba(255,255,0,0.95);
}

#cursor.contact_click,
#stalker.contact_click{
  width: 80px;
  height: 80px;
  text-align: center;
  transform: scale(1);
  margin: -40px;
  background: rgba(255,255,255,0.95);
}
#cursor.contact_click:after,
#stalker.contact_click:after{
    position: absolute;
    content:"";
    background: url(228e42aad8443cc5.png) no-repeat center top;
    opacity:1;
    color:#fff;
    font-size: 15px;
box-sizing: border-box;
top: 30px;
left: 28px;
width: 25px;
height: 17px;
}

#cursor.pagetop_click,
#stalker.pagetop_click{
  width: 80px;
  height: 80px;
  text-align: center;
  transform: scale(1);
  margin: -40px;
  background-color: rgba(255,255,255,0.6);
  opacity: 1!important;
}
#cursor.pagetop_click:after,
#stalker.pagetop_click:after{
    position: absolute;
    content:"";
    background: url(f5f4abc3afa231ad.png) no-repeat center top;
    opacity:1;
    color:#fff;
    font-size: 15px;
box-sizing: border-box;
top: 6px;
left: 33px;
width: 15px;
height:58px;
z-index: 3;
}
}

/*
#particles-js1,#particles-js2,#particles-js3{
	position:absolute;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 50% 50%;
}
*/
/* ---- stats.js ---- */ 

/*.count-particles{ background: #000022; position: absolute; top: 48px; left: 0; width: 80px; color: #13E8E9; font-size: .8em; text-align: left; text-indent: 4px; line-height: 14px; padding-bottom: 2px; font-family: Helvetica, Arial, sans-serif; font-weight: bold; } .js-count-particles{ font-size: 1.1em; } #stats, .count-particles{ -webkit-user-select: none; margin-top: 5px; margin-left: 5px; } #stats{ border-radius: 3px 3px 0 0; overflow: hidden; } .count-particles{ border-radius: 0 0 3px 3px; }
*/ 
/*
@media screen and (max-width: 834px){
#particles-js1, #particles-js2, #particles-js3 {
   display: none;
}
}
*/ 




.footer_comp{
    max-width: 180px;
    flex-basis: 18%;
    text-align: right;
    font-size: 1.4rem;    
}
@media screen and (max-width: 834px){
    .footer_comp{
        font-size: 1.2rem!important;
        margin-bottom: 20px;
    }
}






/* Static fallback for missing source-site Slick icon font. */
.slick-prev:before,.slick-next:before,.slick-dots li button:before{font-family:Arial,sans-serif;}
