@charset "utf-8";
/* akagene法律事務所LP */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&family=Noto+Serif+JP:wght@400;500;600;700;900&display=swap');
.serif{
	font-family:'Noto Serif JP' ,"ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
}
.sans{
	font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.cursive{
	font-family: cursive ,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

/* CSS reset */
html, body, div, 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, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
	line-height:0px;
}
nav ul,
ul {
	list-style-image: none;
	list-style-type: none;
}
blockquote, q {
	quotes:none;
}
a {
	margin:0;
	padding:0;
	border:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
	text-decoration: none;
}
ins {
	background-color:#ff9;
	color:#000;
	text-decoration:none;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}
hr {
	display:block;
	height:1px;
	border:0;
	border-top:1px solid #cccccc;
	margin:1em 0;
	padding:0;
	clear: both;
	float: none;
	width: 100%;
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
}
html {
	box-sizing: border-box;
	font-size: 62.5%;
	transition:all .5s ;
	-moz-transition:all .5s ;
	-webkit-transition:all .5s ;
	scroll-behavior: smooth;
}
body{
	font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.wrapper{
	overflow:hidden;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	position:relative;
}
/*------------------------------
リセットCSS
------------------------------*/
h1, h2, h3, h4, h5, h6, p , ul , ol , li , a , dd , dt , dl , td , th{
	line-height: 1.65em;
}
/*------------------------------
基本
------------------------------*/
.inner {
	width: calc(100% - 10rem);
	margin: 0 auto;
	max-width:1000px;
	padding:0 5rem;
}
.flex{
	display:flex;
}
.flex_column{
	display:flex;
	flex-direction: column;
}
.maru_moji{
	display: inline-block;
	width: 0em;
}
.un_line{
	padding-bottom:0.4rem;
	border-bottom:1px solid #000;
}
.bluel{
	color:#193b89;
}
.bluelright{
	color:#3d67d3;
}
.font_italic{
	font-style:italic;
}
.font_80{
	font-size:80%;
}
.font_90{
	font-size:90%;
}
.font_120{
	font-size:120%;
}
.font_130{
	font-size:130%;
}
.font_140{
	font-size:140%;
}
.font_150{
	font-size:150%;
}
.font_170{
	font-size:170%;
}
.font_230{
	font-size:230%;
}
.t_align_c{
	text-align:center;
}
.t_align_l{
	text-align: left;
}
.t_align_r{
	text-align: right;
}
.ml_m05{
	margin-left:-0.5em;
}
.ml_m08{
	margin-left:-0.8em;
}
.ml_m10{
	margin-left:-1em;
}
.mr_05{
	margin-right:0.5em;
}
.mr_08{
	margin-right:0.8em;
}
.mr_m05{
	margin-right:-0.5em;
}
.mr_m03{
	margin-right:-0.3em;
}
.mb_10{
	margin-bottom:1rem;
}
.mb_20{
	margin-bottom:2rem;
}
.mb_30{
	margin-bottom:3rem;
}
.mb_40{
	margin-bottom:4rem;
}
.mb_50{
	margin-bottom:5rem;
}
.mb_60{
	margin-bottom:6rem;
}
.mb_70{
	margin-bottom:7rem;
}
.mb_100{
	margin-bottom:10rem;
}
.mb_120{
	margin-bottom:12rem;
}
.mt_10{
	margin-top:1rem;
}
.mt_20{
	margin-top:2rem;
}
.mt_30{
	margin-top:3rem;
}
.mt_40{
	margin-top:4rem;
}
.mt_50{
	margin-top:5rem;
}
.mt_80{
	margin-top:8rem;
}
.pt_10{
	padding-top:1rem;
}
.pt_10{
	padding-top:1rem;
}
.pt_20{
	padding-top:2rem;
}
.pt_30{
	padding-top:3rem;
}
.pt_40{
	padding-top:4rem;
}
.pt_50{
	padding-top:5rem;
}
.pt_80{
	padding-top:8rem;
}
.pt_100{
	padding-top:10rem;
}
.pb_10{
	padding-bottom:1rem;
}
.pb_20{
	padding-bottom:2rem;
}
.pb_30{
	padding-bottom:3rem;
}
.pb_40{
	padding-bottom:4rem;
}
.pb_50{
	padding-bottom:5rem;
}
.pb_80{
	padding-bottom:8rem;
}
.pb_100{
	padding-bottom:10rem;
}
.red{
	color:#D52427;
}
.letter_s05{
	letter-spacing:0.05rem;
}
.letter_1{
	letter-spacing:0.1rem;
}
.letter_2{
	letter-spacing:0.2rem;
}
.letter_m09{
	letter-spacing:-0.9rem;
}
.letter_m04{
	letter-spacing:-0.5rem;
}
.t_nowrap{
	white-space:nowrap;
}
.f_bold{
	font-weight:bold;
}
.f_normal{
	font-weight: 500;
}
.f_700{
	font-weight: 700;
}
.width_0{
	width:0;
	display:inline-block;
}
.d_in_block{
	display:inline-block;
}
.f_italic{
	font-style:italic;
}
.img_auto{
	width:auto;
}
.img_h_auto{
	height:auto;
}
img{
	width:100%;
}
a{
	color:#000;
}
h1, h2, h3, h4, h5, h6, p , ul , ol , li , a , dd , dt , dl{
	font-size: 2.8rem;
}
/********************************
モバイル共通
********************************/
.display_on800{
	display: none;
}
.sp_only_b , .br_sp , .sp{
	display: none;
}
.sp_only {
	display: none;
}
/********************************
モバイル基本
********************************/
@media only screen and (max-width: 1100px) {
.inner {
	width: calc(100% - 6rem);
	margin: 0 auto;
	max-width:1000px;
	padding:0 3rem;
}
}
@media screen and (max-width: 800px) {
.display_none800{
	display:none;
}
.display_on800{
	display: inline-block;
}
}
@media only screen and (max-width: 767px) {
html{
	font-size: 1.33333vw;
}
}
@media only screen and (max-width: 640px) {
.pc_only , .sp_no{
	display:none !important;
}
.sp_only_b{
	display:block;
}
.sp_only , .br_sp , sp{
	display: inline-block;
}
.flex_column{
	flex-direction: column;
}
}
/********************************
contents
********************************/
.effect-fade {
	opacity : 0;
	transform : translate(0, 0);
	transition : all 2.5s;
}
.effect-fade_up {
	opacity : 0;
	transform : translate(0, 50px);
	transition : all 1s;
	/*display: flex;
	justify-content: center;    横中央 
	align-items: center;        縦中央 */
}
.effect-fade_right {
	opacity : 0;
	transform : translate(300px, 50px);
	transition : all 1s;
}
.effect-fade_left {
	opacity : 0;
	transform : translate(-300px, 50px);
	transition : all 1s;
}
/**************
出現class
************/
.effect-fade.effect-scroll , .effect-scroll {
	opacity : 1;
	transform : translate(0, 0);
}
/**************
時差class
************/
.effect{
	transition-delay:200ms;
}
.effect02{
	transition-delay:400ms;
}
.effect03{
	transition-delay:600ms;
}
/************
top_again
************/
.top_again{
	/* position:fixed;
	max-width:5rem;
	z-index:999;
	right:1rem;
	bottom:20%;
	transition:0.2s;
	opacity:0; */
	width: 60px;
    height: 60px;
    display: inline-block;
    position: fixed;
    bottom: 20%;
    right: 1rem;
	opacity: 0;
    border-radius: 50%;
    text-decoration: none;
    background: rgba(67, 59, 53, .6);
	transition:0.2s;
}
.top_again:after {
	content: "";
    width: 10px;
    height: 10px;
    margin: auto;
    position: absolute;
    top: 5px;
    right: 0;
    left: 0;
    bottom: 0;
    border-top: 2px solid #fff;
    border-left: 2px solid #fff;
    transform: rotate(45deg);
}
.top_again:hover{
	transform:scale(1.05,1.05)
}
@media screen and (max-width: 480px) {
.top_again{
	max-width:10rem;
	bottom:20%;
}
}
/***header**/
/***recaptcha用***/
.grecaptcha-badge{/*recaptcha用*/
/*	right:-276px !important;*/
}
.hover_105{
	transition:0.2s;
}
.hover_105:hover{
	transform:scale(1.05,1.05);
}
/*共通*/
.header{
	height:9.5rem;
	display:grid;
	align-items: center;
	border-bottom:1px solid #999;
}
.header .inner{
	justify-content: space-between;
}
.heder_rightbox{
	gap:4.5rem;
	align-items: center;
}
.header_h2 a{
	font-size:1.9rem;
	background-color:#ffde00;
	padding:0.6rem 2.5rem;
	display:flex;
	align-items: center;
	letter-spacing:0.1rem;
	border:solid 1px #696969;
	position:relative;
}
.header_h2 a:hover{
	transform:scale(1,1);
	transform:translate(0.2rem,0.2rem);
}
.header_h2 a:after { position: absolute; content: '';
	bottom:-0.3rem;
	right:-0.3rem;
	width:100%;
	height:100%;
	border-right:#696969 solid 0.3rem;
	border-bottom:#696969 solid 0.3rem;
	border-radius:0.4rem;
	z-index:0;
	transition:0.2s;
}
.header_h2 a:hover:after {
	opacity:0;
}
.header_h2 img{
	width:4.6rem;
}
.header_h3 a{
	font-size:2.8rem;
	letter-spacing:0.1rem;
	display:flex;
	align-items: center;
}
.footer{
	padding:5rem 0 18rem 0;
	background-color:#193b89;
}
.footer .inner{
	justify-content: space-between;
	align-items: center;
}
.footer_ul{
	display:flex;
	margin-bottom:1.4rem
}
.footer_ul li{
	position:relative;
	white-space:nowrap;
}
.footer_ul li:before {
	content: '';
	position: absolute;
	right:0;
	border-right:1px solid #FFF;
	right: -2.5rem;
	bottom: 0.8rem;
	height: 30%;
}
.footer_ul li:last-child:before {
	border:none;
}
.footer_ul a{
	color:#FFF;
	font-size:1.3rem;
	margin-left:5rem;
	border-bottom:solid 1px #FFF;
	transition:0.2s;
	position:relative;
}
.office_table a{
	font-size:1.2rem;
	position:relative;
}
.office_table a:hover{
	color:#193b89;
}
.footer_ul a:before , .form.v2 a:before , .office_table a:before{
	background: #89a8ed;
	content: '';
	width: 100%;
	height: 0.1rem;
	position: absolute;
	left: 0;
	bottom: -0.1rem;
	margin: auto;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}
.office_table a:before{
	bottom: -0.5rem;
}
.footer_ul a:hover:before , .form.v2 a:hover:before , .office_table a:hover:before{
	transform-origin: left top;
	transform: scale(1, 1);
}
.copyright{
	font-size:1.2rem;
	color:#FFF;
	text-align:right;
}
@media screen and (max-width: 1000px) {
.header_h1{
	display: grid;
	align-items: center;
}

.header_h1 img{
	width:35vw;
	height:auto;
}
.footer img{
	width:25.8vw;
	height:auto;
}
}
@media screen and (max-width: 747px) {
.header_h2 a , .header_h3 a{
	flex-direction: column;
	justify-content: center;
	min-height:7.5rem;
	min-width:10.5rem;
}
.header_h2 a {
	padding:1rem 1rem 0.2rem;
}
.header_h3 a{
	padding:0.6rem 1rem;
}
.header_h2 .mr_08 , .header_h3 .mr_05{
	margin:0;
}
.footer_ul {
	flex-wrap: wrap;
}
.footer_ul li{
	width:calc(100% / 2 - 5rem);
}
.footer_ul li:before{
	border:none;
}
}
@media screen and (max-width: 747px) {
.header{
	height:13rem;
}
.header_h1 img{
	width:34rem;
}
.header_h2 a{
	font-size:2.6rem;
	font-weight:bold;
	letter-spacing:0;
}
.header_h2 a:after {
	border-right:#696969 solid 0.5rem;
	border-bottom:#696969 solid 0.5rem;
}
.header_h3 a{
	background-color:#d4e1fe;
	font-style:normal;
	font-weight:600;
	font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	position:relative;
	border:#696969 solid 1px;
	letter-spacing:0;
	line-height:1em;
}
.header_h3 a:hover{
	transform:scale(1,1);
	transform:translate(0.2rem,0.2rem);
	border:#696969 solid 1px;
}
.header_h3 a:after { position: absolute; content: '';
	top: 0;
	left:0;
	width:calc(100% + 0rem);
	height:calc(100% + 0rem);
	border-right:#696969 solid 0.5rem;
	border-bottom:#696969 solid 0.5rem;
	border-radius:0.4rem;
	z-index:-1;
}
.header_h3 a:hover:after {
	z-index:-1;
	width:calc(100% - 0.3rem);
	height:calc(100% - 0.3rem);
	transform: translate(-0.1rem, -0.1rem);
	border-radius:0;
	border:none;
}
.heder_rightbox {
	gap:2.5rem;
}
.footer {
	padding: 7rem 0 30rem 0;
}
.footer .inner{
	flex-direction: column;
}
.footer figure{
	text-align:center;
	margin-bottom:3rem;
}
.footer img{
	width:80%;
}
.footer_ul{
	gap:3rem 0;
	margin-bottom:4rem;
	justify-content: center;
}
.footer_ul a {
	font-size: 2.2rem;
	padding-bottom:0.5rem;
	letter-spacing:0.1rem;
	margin-left:-2rem;
}
.footer_ul a span{
	font-size:0.7em;
}
.copyright {
	font-size: 2.2rem;
	text-align: center;
	letter-spacing:0.12rem;
}
}
@media screen and (max-width: 480px) {
.footer img {
	width: 70%;
}
.header_h1 img {
	width: 37rem;
}
}
/***mv***/
.top_mv_rap{
	background:url(img/1100x701234.png) center center / cover no-repeat;
	height:65.7rem;
	position: relative;
	z-index:0;
}
.top_mv .inner{
	max-width:100rem;
	position: relative;
	z-index:5;
}
.top_mv:before{ position: absolute; content: '';
	background: url(img/mv_bg_screen.png) center center / cover no-repeat;
	height:100%;
	width:100%;
	top:0;
	z-index:0;
}
.mv_mans{
	position: relative;
}
.mv_mans img{
	position:absolute;
	max-width:54.8rem;
	right:-6rem;
	top:2.4rem;
}
.top_mv h2{
	font-size:6.4rem;
	color:#193b89;
	line-height:1.2em;
	background-color:#FFF;
	display:inline-block;
	padding-right:0.2rem;
	position:relative;
	z-index:1;
	padding-top:0.6rem;
	padding-left:2rem;
}
.top_mv h2:after { position: absolute; content: '';
	right:-2.99rem;
	height:100%;
	width:3rem;
	background-color:#FFF;
	clip-path: polygon( 0 100% , 100% 0, 0 0);
	margin-top:-0.6rem;
}
.top_mv h2:before { position: absolute; content: '';
	left:-100vw;
	height:100%;
	width:100vw;
	background-color:#FFF;
	z-index:-1;
	margin-top:-0.6rem;
}
.font_mv01{
	font-size:3.8rem;
	font-weight:400;
}
.blue_mv{
	color:#6585d5;
}
.top_mv h2.v2{
	font-size:6rem;
	margin-top:2rem;
	padding-right:1rem;
}
.font_mv02{
	font-size:6rem;
	font-weight:400;
}
.top_mv h5{
	margin-top:6rem;
	width:calc(42.1rem - 14rem);
	height:11.7rem;
	background:url(img/mv_h_yellow.png) center center / contain no-repeat;
	display:inline-block;
	font-size:5rem;
	font-weight:900;
	color:#193b89;
	padding-left:14rem;
	margin-left:2rem;
}
.mv_box{
	margin-top:3rem;
	margin-left:2rem;
	gap:2rem;
}
.top_mv h3{
	width:15.1rem;
	height:15.1rem;
	color:#FFF;
	font-size:3.1rem;
	font-weight:900;
	border-radius:50%;
	background-color:#041f5ebf;
	border:#FFF 1px solid;
	display: grid;
	align-items: center;
	justify-items: center;
	white-space:nowrap;
	line-height:1.1em;
}
.top_mv h3.v3{
	letter-spacing:-0.2rem;
	font-size:2.9rem;
}
.top_mv h4{
	width:21.2rem;
	height:calc(12.4rem - 2rem);
	position:absolute;
	top:0;
	background:url(img/mv_h_white.png) center top / contain no-repeat;
	font-size:2rem;
	line-height:1.2em;
	letter-spacing: 0.1rem;
	text-align:center;
	right:4rem;
	padding-top:2rem;
	z-index:5;
}
.top_mv h4 span{
	position:relative;
	z-index:0;
}
.top_mv h4 span:before { position: absolute; content: '';
	position:absolute;
	bottom:0.1rem;
	background-color:#fad900;
	display:inline;
	height:30%;
	width:100%;
	z-index:-1;
}
.top_mv p{
	font-size:2.2rem;
	color:#FFF;
	text-shadow:#000 3px 3px 4px, #000 3px -3px 4px , #000 -3px -3px 4px , #000 -3px 3px 4px;
	line-height:1.3em;
	position:absolute;
	right: 2.4rem;
	bottom: 0.5rem;
	z-index:5;
}
.top_mv p span:before { position: absolute; content: '';
	display: inline;
	height:0.15rem;
	width:69%;
	background-color:#FFF;
	bottom:-0.3rem;
	box-shadow: 0px 0px 4px 4px rgba(0, 0, 0, 0.40);
}
.top_mv p i{
	font-size:0.8em;
	font-style:normal;
	position:relative;
	top:-0.2em;
}
.top_mv small{
	bottom:-3rem;
	position:absolute;
	font-size:0.5em;
	font-weight: 100;
	display:block;
}
@media only screen and (max-width: 1040px) {
.mv_box{
	margin-top: 3rem;
	margin-left: 0rem;
	gap: 1rem;
}
.top_mv h3 , .top_mv h3.v3{
	height:15.1vw;
	width:15.1vw;
	font-size:3.1vw;
}
.top_mv p{
	font-size:2.1vw;
	right:1rem;
}
.top_mv h5{
	height:11.7vw;
	width: calc(42.1vw - 14vw);
	font-size:5vw;
}
.top_mv h2{
	font-size:6.4vw;
}
.top_mv h2.v2{
	font-size:6vw;
}
}
@media only screen and (max-width: 800px) {
.top_mv h5{
	margin-top:13rem;
}
}
@media only screen and (max-width: 640px) {
.top_mv_rap {
	background: url(img/640x76912.png) bottom left / 120% no-repeat;
	height: 95rem;
}
.top_mv:before {
	background: url(img/mv_bg_screen_sp.png) center center / cover no-repeat;
}
.mv_mans img {
	top: 38.3rem;
	right: -6rem;
	width: 54rem;
}
.top_mv h5 {
	margin-top: 3.5rem;
	height:11rem;
	width:calc(40rem - 14rem);
	font-size: 4.5rem;
	line-height:1.8em;
}
.top_mv h2 , .top_mv h2.v2{
	font-size: 6.5rem;
	white-space: nowrap;
}
.font_mv01 {
	font-size: 4.02rem;
}
.font_mv02 {
	font-size: 6rem;
}
.top_mv h2:after{
	margin-top: -0.7rem;
}
.mv_box {
	flex-wrap: wrap;
	justify-content: center;
	max-width:40rem;
	margin-top:10rem;
	gap:2rem;
	margin-left:-4rem;
}
.top_mv h3, .top_mv h3.v3 {
	height:15rem;
	width: 15rem;
	font-size: 2.8rem;
}
.top_mv h3.v3{
	margin-top:-2rem;
}
.top_mv p{
	text-align:right;
	font-size:2.5rem;
	bottom:-5.5rem;
}
.top_mv h4{
	top:35.6rem;
	right:4.5rem;
}
.top_mv p span:before {
	width: 75%;
}
}
@media only screen and (max-width: 480px) {
.top_mv p{
	text-shadow: #000 1px 1px 2px, #000 1px -1px 2px , #000 -1px -1px 2px , #000 -1px 1px 2px;
}
.top_mv h2:after {
	right: -2.92rem;
}
.top_mv h2.v2:after {
	right: -3.02rem;
	margin-top: -0.6rem;
}
.mv_mans img {
	right: -4rem;
}
.top_mv h4 {
	right: 5.5rem;
}
.top_mv h3, .top_mv h3.v3 {
	height:16rem;
	width: 16rem;
	font-size: 2.8rem;
}
}
/************
sec1
************/
.triangle_rap {
	display:flex;
	margin-top:-7.6rem;
	position:relative;
}
.triangle_left , .triangle_right{
	display:block;
	height: 7.6rem;
	background:#f1f4ff;
	width: 50%;
}
.triangle_left{
	clip-path: polygon(0 0, 100% 100%, 0 100%);
}
.triangle_right{
	clip-path: polygon(100% 0, 100% 100%, 0 100%);
}
.sec01 {
	padding:4rem 0 0;
	background:#f1f4ff;
	position:relative;
	margin-top:-1px;
}
.sec01 h2{
	font-size:5.4rem;
	text-align:center;
	font-weight:400;
	margin-bottom:2rem;
}
.sec01 ul{
	max-width:58rem;
	margin:0 auto;
	position:relative;
	left: -1.6rem;
}
.sec01 ul:after{
	position: absolute;
	content: '';
	background:url(img/onayami_mark.svg) center center / contain no-repeat;
	width:13.9rem;
	height:14.3rem;
	right:-14rem;
	top:0;
	opacity:0.1;
}
.sec01 ul li{
	font-size:3.4rem;
	position:relative;
	padding-left:5.5rem;
}
.sec01 ul li:before{
	position: absolute;
	content: '';
	left:0;
	top:0.4em;
	width:3.8rem;
	height:3.3rem;
	background:url(img/onayami_check.png) center left / contain no-repeat;
}
.sec01 ul li span.normal{
	color:#000;
	font-size:84%;
}
.blue_line{
	position:relative;
	z-index:0;
}
.blue_line:after{
	position: absolute;
	content: '';
	bottom: 0.2em;
	left: 0;
	background-color: #cad8f7;
	height: 0.5em;
	width: 100%;
	z-index: -1;
}
/*************cv************/
.cv{
	background:url(img/1100387121912.png) center center / cover no-repeat;
	width:100%;
	height:38.7rem;
	position:relative;
	padding:8rem 0 0;
}
.cv .inner{
	max-width:88rem;
	position:relative;
	z-index:5;
}
.cv:before{
	position: absolute;
	content: '';
	top:0;
	clip-path: polygon(100% 0, 50% 100%, 0 0%);
	width:100%;
	background-color:#f1f4ff;
	height:8rem;
}
.cv_tel{
	position:relative;
	justify-content: space-between;
}
.cv_flex{
	align-items: center;
	justify-content: space-between;
	gap: 4rem 1rem;
}
.cv_tel a{
	box-sizing: border-box;
	background-color: #ffde00;
	display: flex;
	align-items: center;
	letter-spacing: 0.1rem;
	border: solid 1px #696969;
	position: relative;
	width:46rem;
	height:10rem;
	padding-left:8rem;
	flex-direction: column;
	justify-content: center;
	position:relative;
	overflow:hidden;
	z-index:1;
	transition:0.2s;
}
.cv_tel:after {
	position: absolute;
	content: '';
	bottom: -0.6rem;
	right:-0.6rem;
	width: calc(100% + 0.0rem);
	height: calc(100% + 0.0rem);
	border-right: #696969 solid 0.6rem;
	border-bottom: #696969 solid 0.6rem;
	border-radius: 0.4rem;
	z-index: 0;
	transition:0.2s;
}
.cv_tel:hover a{
	transform: translate(0.6rem, 0.6rem);
	vertical-align:bottom;
}
.cv_tel:hover:after {
	height:96%;
	width:96%;
	transform: translate(0.15rem, 0.15rem);
	opacity:0;
	transition:0.2s;
}
.cv h1{
	font-size:30px;
	font-weight:400;
	text-align:center;
	margin-top:11.5rem;
	margin-bottom:5rem;
}
.cv h1 span{
	display:inline-block;
	border-bottom:solid 1px #000;
}
.cv h2{
	font-size:3rem;
	line-height:1em;
}
.cv h2 span {
	display: inline-block;
	position:relative;
	bottom: 0.2rem;
}
.cv h3 a{
	font-size:4.7rem;
	line-height:1em;
	letter-spacing:0.1rem;
	display: flex;
	align-items: center;
}
.cv h4{
	background-color:#585858;
	color:#FFF;
	font-size:1.8rem;
	position:absolute;
	display:block;
	padding:0 8rem;
	transform: rotate(335deg);
	left: -5.8rem;
	top: 2rem;
	font-weight:normal;
}
.cv h5{
	font-size:1.8rem;
	font-weight:100;
}
.flex_img{
	align-items: center;
}
/*************reason************/
.reason{
	padding:8rem 0 10rem;
}
h5.reason_hed , h5.solution_hed , h5.qanda_hed , h5.introduction_hed , h5.contact_hed{
	font-size:1.9rem;
	font-weight:100;
	margin-bottom:0.5em;
}
h2.reason_hed , h2.solution_hed , h2.qanda_hed , h2.introduction_hed , h2.contact_hed{
	font-size:2.9rem;
	font-weight:100;
	margin-bottom:9rem;
	position:relative;
}
h2.reason_hed:after , h2.solution_hed:after , h2.qanda_hed:after , h2.introduction_hed:after , h2.contact_hed:after {
	position: absolute;
	content: '';
	height:0.2rem;
	width:100%;
	max-width:19.4rem;
	top:7.5rem;
	background:#6585d5;
	margin:0 auto;
	left:0;
	right:0;
	display:inline-block;
}
.reason_rap{
	display: flex;
	max-width: 97rem;
	gap: 3rem 1rem;
	justify-content: space-between;
	flex-wrap: wrap;
}
.reason_box h5 , .solution_box h5{
	color:#193b89;
	font-size:2.2rem;
	border:0.2rem solid #193b89;
	border-radius:3rem;
	padding:0.3em 1.5em 0.3em 4em;
	display:inline-block;
	margin:3rem auto 1.9rem;
	position:relative;
}
.reason_box h5{
	background:url(img/reason_h2.svg) left 1em center / 5.5rem 3.8rem no-repeat;
}
.reason_box h5:after , .solution_box h5:after{
	position: absolute;
	content: '';
	bottom: -0.6rem;
	right: 10.5rem;
	height: 0.2rem;
	width: 3.5rem;
	background: #193b89;
	transform: rotate(63deg);
}
.reason_box h5:before , .solution_box h5:before{
	position: absolute;
	content: '';
	bottom: -1rem;
	right: 10.7rem;
	height: 1.5rem;
	width: 3.5rem;
	transform: rotate(63deg);
}
.reason_box h5:before{
	background: #ededed;
}
.reason_box h2{
	font-size:2.8rem;
	margin-bottom:1.4rem;
	color:#6d8dde;
}
.reason_box p , .solution_text p , .merit_text p{
	font-size:1.6rem;
	line-height:1.8em;
	margin-bottom:2em;
	font-weight:500;
}
.reason_box p.v2{
	margin-bottom:3.5em;
}
.reason_box{
	width:100%;
	border-radius:0.6rem;
	background:#ebebeb;
	text-align:center;
	max-width:47rem;
	padding-bottom:3.4rem;
}
.reason_white{
	background:#FFF;
	max-width:40rem;
	margin:0 auto;
	padding:1.8rem 0 0;
}
.reason_span{
	display:inline-block;
	font-weight:600;
	position:relative;
	z-index:0;
}
.reason_span:after {
	position: absolute;
	content: '';
	height:78%;
	width:102%;
	background:#cbd6f0;
	left:-1%;
	z-index:-1;
	top:0.2rem;
}
@media screen and (max-width: 1000px) {
.sec01 h2 {
	font-size: 5.4vw;
}
.cv h1{
	font-size: 3.4vw;
}
}
@media screen and (max-width: 900px) {
.cv {
	height: 43.7rem;
	background: url(img/9003871219.png) center center / cover no-repeat;
	position: relative;
}
.cv_flex{
	flex-direction: column;
}
}
@media screen and (max-width: 640px) {
.sec01 h2 {
	font-size: 5rem;
}
.sec01 ul:after{
	display:none;
}
.sec01 ul {
	max-width: 63rem;
}
.sec01 ul li {
	font-size: 4rem;
	white-space:nowrap;
}
.cv {
	height:47.3rem;
	background: url(img/90014031219.png) center center / center no-repeat;
}
.cv:after {
	position:absolute;
	content: '';
	background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,0.03) 51%,rgba(255,222,5,0.06) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	width:100%;
	height:100%;
	top:0;
}
.cv h1{
	margin-top:1.5rem;
	font-size: 4.2rem;
}
.cv h1 span.cv_span{
	border:none;
}
.cv_tel a {
	width: 60rem;
	height: 12rem;
}
.cv h5 {
	font-size: 2.6rem;
}
.cv h2 {
	font-size: 3.4rem;
}
.cv h4 {
	font-size: 2.6rem;
}
.cv h3 a {
	font-size: 5.6rem;
}
.cv_tel:after {
	bottom: -1.39rem;
	right: -1.39rem;
	border-right: #696969 solid 1.4rem;
	border-bottom: #696969 solid 1.4rem;
}
.cv_tel:hover:after {
	transform: translate(-0.3rem, -0.3rem);
}
}
@media screen and (max-width: 480px) {

.cv_tel .flex_img .img_auto , .cv h3 .img_auto{
	width: 5rem;
	height: auto;
}
}
@media screen and (max-width: 1030px) {
.reason_box {
	max-width: 44.6vw;
}
.reason_white{
	max-width: 38.8vw;
}
.reason_box p{
	font-size:1.55vw;
}
.reason_box h2{
	font-size:2.71vw;
}
}
@media screen and (max-width: 820px) {
.reason_box {
	max-width: 42.6vw;
}
}
@media screen and (max-width: 640px) {
h5.reason_hed, h5.solution_hed, h5.qanda_hed, h5.introduction_hed, h5.contact_hed {
	font-size: 2.6rem;
}
h2.reason_hed, h2.solution_hed, h2.qanda_hed, h2.introduction_hed, h2.contact_hed {
	font-size: 3.9rem;
	line-height:1.4em;
	margin-bottom: 10rem;
}
h2.reason_hed:after {
	top: 13.5rem;
}
h2.solution_hed:after, h2.qanda_hed:after{
	top: 9rem;
}
.reason {
	padding: 12rem 0 14rem;
}
.reason_box {
	max-width: 100%;
}
.reason_white {
	max-width: 60rem;
}
.reason_box p{
	font-size:2.8rem;
}
.reason_box h2{
	font-size:4rem;
	margin-bottom: 3.4rem;
	letter-spacing:0.1rem;
}
.reason_white {
	padding: 4.8rem 0 0;
}
.reason_box h5 , .solution_box h5 , .solution_box h5.v2{
	font-size: 3.4rem;
	border-radius: 5rem;
	background: url(img/reason_h2.svg) left 1em center / 7.5rem auto no-repeat;
	margin: 5rem auto 3rem;
	border: 0.5rem solid #193b89;
}
.reason_box h5:after , .solution_box h5:after , .solution_box h5.v2:after{
	bottom: -1.4rem;
	right: 16.5rem;
	height: 0.5rem;
	width: 5rem;
}
.reason_box h5:before , .solution_box h5:before , .solution_box h5.v2:before{
	right: 18rem;
	height: 2.5rem;
	width: 3.5rem;
}
.reason_rap{
	gap: 6rem 1rem;
}
}
/************
solution
************/
.solution_box h5{
	background:url(img/solution_h2.svg) left 1em center / 5.5rem 3.8rem no-repeat;
	margin-left: 14rem;
}
.solution_box h5.v2{
	background:url(img/solution_h2.svg) left 1em center / 5.5rem 3.8rem no-repeat;
	margin-left: 62rem;
}
.solution_box h5:before{
	background-color:#FFF;
}
.solution_flex div , .solution_flex figure{
	width:calc(100% / 2);
}
.solution_cont{
	background:url(img/solution_img01.jpg) right bottom / 50% auto no-repeat;
	height:46.3rem;
	margin-bottom:2rem;
}
.solution_cont.v2{
	background:url(img/solution_img02.jpg) left bottom / 50% auto no-repeat;
}
.solution_cont.v3{
	background:url(img/solution_img03.jpg) right bottom / 50% auto no-repeat;
	height:52.5rem;
	margin-bottom:2rem;
}
.solution_cont:before {
	position: absolute;
	content: '';
	background: linear-gradient(to right,  rgba(231,242,255,1) 0%,rgba(231,242,255,1) 50%,rgba(255,255,255,0) 68%,rgba(255,255,255,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	width:100%;
	height:100%;
	max-height:46.3rem;
}
.solution_cont.v2:before {
	background: linear-gradient(to right,  rgba(255,255,255,0) 0%,rgba(255,255,255,0) 32%,rgba(231,242,255,1) 50%,rgba(231,242,255,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}
.solution_cont.v3:before {
	max-height:52.5rem;
}
.solution_text{
	position:relative;
	max-width:50rem;
	padding-right:50rem;
	z-index:2;
}
.solution_text.v2{
	position:relative;
	max-width:50rem;
	padding-right:inherit;
	padding-left:50rem;
	z-index:2;
}
.solution_cont h4{
	padding-top:3rem;
	font-size:4.8rem;
	text-align:center;
	line-height:1.2em;
}
.solution_cont h2{
	font-size:3.4rem;
	text-align:center;
	margin-bottom:1rem;
}
.solution_text p {
	padding:0 3.6rem;
}
/****merit***/
.merit{
	padding-bottom:0.6rem;
}
.merit_haed{
	background:url(img/merit_fukidashi.svg) center center / contain no-repeat;
	width:100%;
	max-width:60rem;
	height:100%;
	min-height:35.4rem;
	margin:6rem auto 0;
	position:relative;
	z-index:2;
}
.merit_haed h3{
	font-size:2.4rem;
	font-weight:500;
	padding-top:19rem;
}
.merit_haed h2{
	font-size:4.8rem;
	line-height:1.2em;
}
.merit_rap{
	position:relative;
	max-width:75rem;
	border-radius:1rem;
	background-color:#e6e6e6;
	padding:5rem;
	margin:-1.8rem auto 0;
	z-index:1;
}
.merit_rap:before , .merit_rap:after , .merit_kazari , .merit_kazari_v2{
	position: absolute;
	content: '';
	background:url(img/solution_kazari.svg) center center / contain no-repeat;
	width:4rem;
	height:4rem;
}
.merit_rap:before{
	top:-0.2rem;
	left:-0.2rem;
}
.merit_rap:after{
	top:-0.2rem;
	left: inherit;
	right:-0.2rem;
	transform: rotate(90deg);
}
.merit_kazari{
	top: inherit;
	left: -0.2rem;
	right:inherit;
	bottom:-0.2rem;
	transform: rotate(270deg);
}
.merit_kazari_v2{
	top: inherit;
	left: inherit;
	right: -0.2rem;
	bottom:-0.2rem;
	transform: rotate(180deg);
}
.merit_box{
	background-color:#FFF;
	border-radius:0.8rem;
	overflow:hidden;
	max-width:72rem;
	max-height:17.2rem;
	align-items: center;
}
.merit_box figure{
	position:relative;
}
.merit_box figure img{
	width:17.5rem;
	height:17.2rem;
}
.merit_box figure span{
	position: absolute;
	font-size:8rem;
	color:#FFF;
	top: calc(100% / 2);
	left:5rem;;
}
.merit_text{
	padding:0 2.6rem
}
.merit_text h3{
	font-size:2.6rem;
	line-height:1.4em;
	margin-bottom:0.5rem;
}
.merit_box .merit_text p{
	margin-bottom:0;
}
.cv.v2:before{
	background-color:#FFF;
	margin-top:-0.1rem;
}
.cv.v2:after {
	position: absolute;
	content: '';
	top: -1.5rem;
	width: 50%;
	right: 0;
	box-shadow: 11.2rem 4.6rem 2em 38px #fff;
	height: 2rem;
	transform: rotate(352deg);
}
.cv.v2{
	margin-top:0.2rem;
}
/***qanda*****/
.qanda{
	padding:12rem 0 10rem;
}
.qa {
	margin: 8rem auto 0;
}
.qa__block {
	display: flex;
	flex-direction: column;
	min-width: 200px;
}
.qa__item {
	display: inline-block;
}
.qa__head {
	position: relative;
	text-align: left;
	padding:1rem 5rem 2rem;
	border-radius: 0.8rem;
	background: #e7f2ff;
	cursor: pointer;
	width: 100%;
	font-size:2.2rem;
	border:none;
	font-weight:600;
}
.qa__head:after {
	content: "";
	transform: rotate(225deg) ;
	border-top: 0.4rem solid black;
	border-left: 0.4rem solid black;
	display: inline-block;
	width: 1.4rem;
	height: 1.4rem;
	transform-origin:50% 50%;
	position: absolute;
	right: 5rem;
	top:37%;
	border-radius:0.3rem;
	transition: transform 0.4s;
}
.qa__head span{
	font-size:4rem;
	font-weight:600;
	margin-right:3rem;
}
.qa__body {
	position: relative;
	background: #fff;
	color: black;
	padding: 0 5rem;
	height:2rem;
	opacity: 0;
	transition:0.4s;
}
.qa__body p.qa_p {
	font-size: 1.6rem;
	font-weight: 500;
	position: relative;
	padding: 0 5rem 0 7rem;
}
.qa__body p span{
	font-size:2.8rem;
	margin-right:3rem;
	position:absolute;
	left:0;
	top:0;
}
.qa__body.is-open {
	padding: 2rem 5rem 1rem;
	line-height: 1.5;
	height:auto;
	opacity: 1;
}
.qa__head.is-open::after {
	transform: rotate(45deg) ;
	transform-origin:50% 50%;
	margin-top:-1.4rem;
	transition:0.4s;
	top:55%;
}
.qa__item:not(:first-child) {
	margin-top: 3rem;
}
@media screen and (max-width: 1220px) {
.solution_cont{
	background:url(img/solution_img01.jpg) right bottom / 60rem 100% no-repeat;
}
.solution_cont.v2{
	background:url(img/solution_img02.jpg) left bottom / 60rem 100% no-repeat;
}
.solution_text.v2 {
	padding-left: 45vw;
}
.solution_box h5.v2 {
	margin-left: 54vw;
}
}
@media screen and (max-width: 900px) {
.qa__head{
	padding: 1rem 8rem 2rem 5rem;
}
.solution_text.v2 {
	padding-left: 36vw;
}
}
@media screen and (max-width: 900px) {
.merit_box{
	max-height:25rem;
}
.merit_box figure img {
	object-fit: cover;
	width: 14rem;
}
.merit_box figure span{
	font-size:5rem;
}
.cv.v2:after{
	position:absolute;
	content: '';
	background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,0.03) 51%,rgba(255,222,5,0.06) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	width:100%;
	height:100%;
	top:0;
	right:  inherit;
	box-shadow: none; 
	transform: none;
}
}
@media screen and (max-width: 640px) {
.solution_cont , .solution_cont.v2 , .solution_cont.v3{
	background-size:100% auto;
	background-color:#e7f2ff;
	height:132rem;
}
.solution_cont {
	height:130rem;
}
.solution_cont.v2{
	height:132rem;
}
.solution_cont.v3{
	height:150rem;
}
.solution_cont:before{
	background-image:none;
}
.solution_text , .solution_text.v2{
	max-width:inherit;
	padding-right:inherit;
	padding-left:inherit;
}
.solution_cont h4 {
	font-size: 7.8rem;
}
.solution_cont h2 {
	font-size: 5rem;
}
.solution_box{
	text-align:center;
}
.solution_box h5 , .solution_box h5.v2{
	margin-left:inherit;
}
.solution_text p{
	font-size: 2.6rem;
	text-align:left;
}
.merit_rap{
	padding-left:0;
	padding-right:0;
	margin: -3.5rem auto 0;
	border-radius:0;
}
.merit_rap:before, .merit_rap:after, .merit_kazari, .merit_kazari_v2{
	display:none;
}
.merit_box{
	max-width:inherit;
	border-radius:initial;
	max-height: initial;
}
.merit_haed{
	min-height:40.4rem;
}
.merit_haed h3 {
	font-size: 2.8rem;
	padding-top: 22rem;
}
.merit_haed h2 {
	font-size: 5.8rem;
}
.merit_text h3 {
	font-size: 3rem;
	line-height:1.8em;
}
.merit_text p {
	font-size:2.4rem;
}
.merit_box figure img {
	height: 33.2rem;
	width: 22rem;
}
.merit_box figure span {
	font-size: 6rem;
	left: 7rem;
}
.qa{
	margin:13rem auto 0;
}
.qanda .inner{
	padding:0;
	width:100%;
}
.qa__head{
	padding: 2rem 5rem 2rem 2rem;
	display: flex;
	align-items: center;
	font-size: 3.2rem;
}
.qa__head:after{
	border-top: 0.6rem solid black;
	border-left: 0.6rem solid black;
	right: 2rem;
}
.qa__body p.qa_p {
	font-size: 2.6rem;
	padding: 0 1rem 0 6rem;
}
.qa__body p span {
	font-size: 3.8rem;
}
.qa__body.is-open {
	padding: 2rem 0.5rem 1rem 3rem;
}
}
@media screen and (max-width: 480px) {
.merit_text h3 {
	font-size: 3.2rem;
}
.merit_text p {
	font-size:2.6rem;
}
}
/************
bnr_link
************/
.bnr_link_rap{
	margin:10rem auto;
}
.bnr_link{
	border:2px solid #193b89;
	display:flex;
	background-color:#e2ebff;
	border-right:10rem solid #193b89;
	align-items: center;
	min-height:15rem;
	position: relative;
	transition:0.2s;
}
.bnr_link:before { position: absolute; content: '';
	background:url(img/bnr_arrow.svg) center center / auto no-repeat;
	width:3rem;
	height:4rem;
	right:-7rem;
	transition:0.2s;
}
.bnr_link p{
	font-size:2.6rem;
	font-weight:600;
	padding-left:60rem;
	letter-spacing:0.3rem;
	white-space:nowrap;
}
.bnr_link_rap figure{
	position:absolute;
	bottom:0;
}
.bnr_link  img{
	transition:0.2s;
}
.bnr_link:hover img{
	transform:scale(1.1,1.1) translateY(-0.8rem);
}
.bnr_link:hover{
	background-color:#f3f7ff;
}
.bnr_link:hover:before { position: absolute; content: '';
	right:-9rem;
	transform:scale(1.08,1.08) translateX(0.5rem);
}
/***introduction***/
.introduction_rap{
	max-width:98rem;
	display: flex;
	justify-content: center;
	/*gap:6rem 1rem;*/
}
.introduction_box h3{
	font-size:2.2rem;
	padding:0 7.5rem;
	line-height:1.4em;
	margin-bottom:1.5em;
	font-weight:900;
}
.introduction_box p{
	font-size:1.6rem;
	padding:0 6rem;
	font-weight:500;
	margin-bottom:3rem;
}
.introduction_box p.v1{
	margin-bottom:3rem;
	
}
.introduction_box{
	width:100%;
	max-width:60rem;
	background-color:#ececec;
	border-top:2px solid #6585d5;
	padding:3rem 0 1.5rem;
}
.introduction_box figure{
	margin:3rem auto;
}
.introduction_box figure img{
	border-radius:0 0 0.6rem 0.6rem;
}
.introduction figure.inner {
	margin:5rem auto 7rem;
}
/*****office******/
.office{
	padding:4rem 0 5rem;
	background-color:#e7f2ff;
	margin-top: 4rem;
}
.office_text h2{
	font-size:2.2rem;
	position:relative;
	display:inline-block;
	margin-bottom:5rem;
} 
.office_text h2:before { position: absolute; content: '';
	bottom:-1.2rem;
	right:0;
	left:0;
	margin:0 auto;
	height:0.2rem;
	width:80%;
	background-color:#7695e2;
}
.office .office_box.inner{
	align-items: center;
}
.office_table{
}
.office_table td , .office_table th{
	font-size:1.2rem;
	text-align:left;
	vertical-align:top;
	padding-bottom:1em;
	letter-spacing:0.1rem;
	line-height:2em;
}
.office_table td{
	font-weight:500;
	padding-right:4rem;
}
.office_table th{
	font-weight:900;
	width:14rem;
}
.office_box figure{
	background-color: #FFF;
	padding: 1rem 1rem;
	border-radius:0.6rem;
	line-height: 0;
	display:flex;
	justify-content:center;
	align-items:center;
}
@media screen and (max-width: 1200px) {
.bnr_link {
	width:calc(100% - 20rem);
	max-width:86rem;
}
.bnr_link p{
	padding-left:41vw;
	font-size:2.1vw;
}
.bnr_link  img{
	width:35.6vw;
	height:auto;
}
}
@media screen and (max-width: 1000px) {
.introduction_box p , .introduction_box h3 {
	padding:0 2.5rem;
}
.office_text{
	min-width:50rem;
}
.office_box figure{
	min-width:inherit;
	width:100%;
}
}
@media screen and (max-width: 787px) {
.office_box.inner.flex{
	flex-wrap: wrap;
}
}
@media screen and (max-width: 640px) {
.bnr_link {
	border-right: 6rem solid #193b89;
	align-items: center;
	flex-direction: column;
	justify-content: center;
	gap:1rem;
}
.bnr_link p{
	padding-left: inherit;
	font-size:4.2rem;
	padding:0;
	line-height: 1.4;
}
.bnr_link_rap figure{
	position: relative;
	bottom:0;
	order:3;
}
.bnr_link {
	min-height: 30rem;
}
.bnr_link  img {
	width: 100%;
}
.bnr_link:hover img{
	transform:scale(1.05,1.05) translateY(-0.5rem);
}
.bnr_link.inner{
	padding:0;
}
.bnr_link:before {	
	right: -5rem;
}
.bnr_link:hover:before { 
	transform:scale(1.01,1.01) translateX(-0.5rem);
	right:-6rem;
}
.bnr_link {
	width: calc(100% - 14rem);
}
.bnr_link figure{
	text-align:center;
}
.bnr_link img{
	width:80%;
}
.introduction_box{
	max-width: inherit;
}
/*.introduction_rap {
	flex-wrap: wrap;
}*/
.introduction_rap.inner{
	width: calc(100% - 12rem);
	padding: 6rem;
}
.introduction_box p, .introduction_box h3{
	padding:0 5rem
}
.introduction_box p.v1{
	height:auto;
}
.introduction_box h3 {
	font-size: 3.6rem;
}
.introduction_box p {
	font-size: 2.5rem;
}
.introduction figure.inner{
	width:100%;
	padding:0;
}
.introduction figure.inner img{
	height:47.7rem;
	object-fit: cover;
}
.office_text{
	margin-bottom:3rem;
}
.office_text h2 {
	font-size: 3.2rem;
}
.office_table td, .office_table th,.office_table a{
	font-size: 2.6rem;
	padding-bottom:0.4rem;
}
.office_table th {
	width: 21rem;
}
.office_table td{
	padding-right:inherit;
}
}
@media screen and (max-width: 480px) {
.bnr_link:before {
	width: 5rem;
}
}
/************
thanks
************/
.thanks_rap{
	background:url(img/thanks_bg1.png) center center / cover no-repeat;
	height:60.1rem;
	padding:10rem 3rem;
}
.thanks_text_box{
	background-color:#FFF;
	border-radius:2rem;
	margin:0 auto;
	max-width:80rem;
	padding:7rem 5rem 8rem;
}
.thanks_text_box h2{
	color:#3d67d3;
	font-size:2.4rem;
	font-weight:600;
	margin-bottom:7rem;
}
.thanks_text_box p{
	font-size:1.6rem;
	font-weight:500;
}
.thanks_text_box p.fast{
	margin-bottom:3em;
}
@media only screen and (max-width: 640px) {
.thanks_rap{
	height:46vh;
	padding:10rem 2rem;
}
.thanks_text_box{
	background-color:#FFF;
	border-radius:2rem;
	margin:0 auto;
	max-width:80rem;
	padding:7rem 5rem 8rem;
}
.thanks_text_box h2{
	font-size:4.4rem;
}
.thanks_text_box p{
	font-size:2.6rem;
}
.thanks_text_box p.fast{
	margin-bottom:3em;
}
}
/************
form
************/
.form_rap{
	max-width:86rem;
	margin:0 auto;
}
.form{
	padding:4rem 0 3rem;
	background-color:#e7f2ff;
	border-radius:0.6rem;
}
.form_left.flex{
	justify-content: space-between;
	align-items: center;
}
.form_box{
	display:flex;
}
.form_left{
	width:14.5rem;
	min-width:14.5rem;
	padding:1rem 2rem 1rem 4rem;
	white-space:nowrap;
}
.form_right{
	padding:1rem 0.5rem;
}
.form_left p{
	color:#3d67d3;
	font-size:1.8rem;
	font-weight:600;
	line-height:1.2em;
}
.form_left .hissu{
	background-color:#f3d400;
	font-size:1.4rem;
	font-weight:600;
	border-radius:3rem;
	display:inline-block;
	line-height:1.4em;
	padding:0.4rem 1.5rem;
}
.form_right{
	width:65rem;
}
.form_right input:focus , .form_right textarea:focus , .form_right select:focus{
	outline: none;
	border:#CCC solid 1px;
}
.form_right input , .form_right select , .form_right textarea{
	border:none;
	width:100%;
	font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size:1.8rem;
	padding:0.6rem 1rem;
	letter-spacing:normal;
	border-radius:0.3rem;
}
.form_right input{
	max-width:30rem;
}
.form_right select{
	max-width:19rem;
}
.form_right input.address , .form_right textarea{
	max-width:60rem;
}
.form_right textarea:focus {
	outline: none;
	border:#CCC solid 1px;
}
.form_right select:invalid { color: #bbb; }
.form_right select option { color: #000; }
.form_right select option:first-child { color: #bbb; }
.form_right.flex{
	flex-wrap: wrap;
}
.form_right label{
	display:flex;
	min-width:21.5rem;
}
.form_right label.v2{
	min-width:calc(21.5rem * 2);
}
.check_b input , .form_box_v2 input{
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.check_b input , .form_box_v2 input{
	background-color:#FFF;
	position:relative;
}
.check_b input {
	border-radius:0.3rem;
	height:3.5rem;
	width: 3.5rem;
	margin-bottom:1.8rem;
}
.form_box_v2 input{
	border:3px solid #e17f00;
	box-sizing: content-box;
	height:2.8rem;
	width: 2.8rem;
}
.check_b input[type="checkbox"]:checked:before , .form_box_v2 input[type="checkbox"]:checked:before{
	position: absolute;
	top:0;
	content: '';
}
.check_b input[type="checkbox"]:checked:before {
	background-color:#3d67d3;
	border-radius:0.3rem;
	height:3.5rem;
	width: 3.5rem;
}
.form_box_v2 input[type="checkbox"]:checked:before{
	background-color:#e17f00;
	height:2.8rem;
	width: 2.8rem;
}
.check_b input[type="checkbox"]:checked:after , .form_box_v2 input[type="checkbox"]:checked:after {
	position: absolute;
	transform: rotate(50deg);
	height:2rem;
	width: 0.8rem;
	border-right:5px solid #fff;
	border-bottom: 5px solid #fff;
	content: '';
}
.check_b input[type="checkbox"]:checked:after{
	top:0.2rem;
	left:1.2rem;
}
.form_box_v2 input[type="checkbox"]:checked:after {
	top:0rem;
	left:0.8rem;
}
.form_right label p{
	font-size:1.6rem;
	margin-left:1.2rem;
	margin-right:0.5rem;
	font-weight:500;
}
.form.v2{
	background-color:#fff4d6;
	padding:3rem 0;
}
.form_box_v2{
	max-width:50rem;
	margin:0 auto 0 21rem;
	display:flex;
	align-items: center;
}
.form_box_v2 .form_left{
	width:auto;
	display:inline-block;
	padding:0 1rem 0 0;
	align-items: center;
	margin-bottom:1em;
	min-width:inherit;
}
.form.v2 p , .form.v2 a{
	font-size:1.6rem;
	font-weight:500;
}
.form.v2 a:hover{
	color:#3d67d3;
}
.form.v2 a{
	border-bottom:1px solid #000;
	position:relative;
}
.form.v3{
	background-color: transparent;
	text-align:center;
	padding:6rem 0;
}
.submit{
	font-size:3rem;
	box-sizing: border-box;
	align-items: center;
	font-weight:900;
	letter-spacing: 0.2rem;
	border: solid 1px #696969;
	position: relative;
	width: 42rem;
	height: 10rem;
	padding-left: 7rem;
	overflow: hidden;
	z-index: 1;
	transition: 0.2s;
	background:url(img/email_mark.svg) left 12rem center no-repeat;
	background-size:4rem 3rem;
	background-color: #ffde00;
	line-height:2em;
	text-indent:1em;
	cursor:pointer;
	color:#000;
}
.submit_rap{
	position:relative;
	display:inline-block;
}
.submit_rap:after {
	position: absolute;
	content: '';
	bottom: -0.6rem;
	right: -0.6rem;
	width: calc(100% + 0.0rem);
	height: calc(100% + 0.0rem);
	border-right: #696969 solid 0.6rem;
	border-bottom: #696969 solid 0.6rem;
	border-radius: 0.4rem;
	z-index: 0;
	transition: 0.2s;
}
.submit:hover{
	transform: translate(0.6rem, 0.6rem);
	vertical-align:bottom;
}
.submit_rap:hover:after {
	height:96%;
	width:96%;
	transform: translate(0.15rem, 0.15rem);
	opacity:0;
	transition:0.2s;
}
.form_right input:-webkit-autofill , .form_right select:-webkit-autofill, .form_right textareat:-webkit-autofill{
	 box-shadow: 0 0 0px 999px #fff inset;
}
@media screen and (max-width: 1000px) {
.form_right input.address, .form_right textarea {
	max-width: 48rem;
}
}
@media screen and (max-width: 640px) {
.form{
	padding:4rem 2rem 3rem;
}
.form_box {
	display: flex;
	flex-direction: column;
}
.form_right{
	width:100%;
}
.form_left{
	padding:1rem 0 1rem 0
}
.form_right input , .form_right input.address , .form_right textarea{
	max-width: none;
	width:calc(100% - 3rem);
	font-size:3rem;
	padding:1.6rem 1.2rem;
}
.form_right select{
	max-width:32rem;
	font-size:3rem;
	padding:1.6rem 1.2rem;
}
.form_left p{
	font-size:3.6rem;
}
.form_left .hissu{
	font-size:2.6rem;
	margin-left:1.5rem;
	margin-left:1.5rem;
}
.form_right label p{
	font-size:2.6rem;
}
.check_b input{
	width:5rem;
	height:5rem;
}
.check_b input[type="checkbox"]:checked:before {
	height: 5rem;
	width: 5rem;
}
.check_b input[type="checkbox"]:checked:before, .form_box_v2 input[type="checkbox"]:checked:before {
	position: absolute;
	top: 0;
	content: '';
	left: 0;
}
.check_b input[type="checkbox"]:checked:after {
	top: 0rem;
	left: 1.4rem;
}
.check_b input[type="checkbox"]:checked:after, .form_box_v2 input[type="checkbox"]:checked:after {
	position: absolute;
	transform: rotate(50deg);
	height: 3rem;
	width: 1.2rem;
	border-right: 3px solid #fff;
	border-bottom: 3px solid #fff;
	content: '';
}
.form.v2 p, .form.v2 a {
	font-size: 2.6rem;
}
.form_box_v2 {
	max-width:none;
	margin: 1px auto 0 7.5rem;
	display: flex;
	align-items: flex-start;
}
.form_box_v2 .form_left {
	margin-top: 1.8rem;
	padding: 0 2rem 0 0;
}
.form_box_v2 input[type="checkbox"]:checked:after {
	top: -0.8rem;
	left: 0.4rem;
}
.submit {
	font-size: 5rem;
	width: 62rem;
	height: 14rem;
	background-size: 7rem 6rem;
}
.submit_rap:after {
	bottom: -0.8rem;
	right: -0.8rem;
	border-right: #696969 solid 1rem;
	border-bottom: #696969 solid 1rem;
}
}




/* FIX CTA UPDATES */
.l-fix-cta {
    /* display: none; */
    width: 100%;
	padding: 24px 15px;
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: 10;
    background: #fff;
	border-top: 1px solid #dadbdd;
	box-sizing: border-box;
}

.l-fix-cta_inner {
	max-width: 750px;
    margin: auto;
	display: flex;
    align-items: center;
    justify-content: space-around;
    flex-wrap: wrap;
}
.l-cta_btn_mail, .l-cta_btn_tel {
	text-align: center;
	padding: 0 30px

}
.l-cta_btn_mail {
	border-right: 1px solid #CBC5C5;
}
.l-cta_btn_mail a {
	display: block;
	font-size: 25px;
	font-weight: bold;
	background-color: #ffde00;
	border-radius: 20px;
	padding: 34px 34px;
	line-height: 100%;
	box-shadow: 0 6px 0 rgba(0,0,0,.16);
	position: relative;
	transition: ease-in-out .2s;
}

.l-cta_btn_mail a:hover {
	transform: translate(0.2rem, 0.2rem);
	vertical-align:bottom;
	box-shadow: none;
}

.l-cta_btn_mail a img {
	width: 30px;
	margin-right: 8px;
	position: relative;
    top: 4px;
}

.l-cta_btn_mail a:before {
	position: absolute;
	top: -16px;
	left: 0;
	right: 0;
	margin: 0 auto;
	text-align: center;
	content: "忙しくて時間が取れない方";
	font-size: 14px;
	font-weight: bold;
	color: #000;
	background: #fff;
	border: 1px solid #185377;
	border-radius: 26px;
	padding: 4px 36px;
	line-height: normal;
	width: 60%;
}

.l-cta_btn_tel a {
	font-size: 38px;
	font-weight: bold;
	font-family: "Roboto", serif;
	display: block;
	position: relative;
	line-height: 120%;
	margin-top: 8px;
}

.l-cta_btn_tel a img {
	width: 39px;
	position: relative;
	margin-right: 4px;
	top: 4px;
}
.l-cta_btn_tel a:before {
	position: absolute;
	top: -30px;
	left: 0;
	right: 0;
	margin: 0 auto;
    text-align: center;
    content: "お急ぎで相談したい方";
    font-size: 14px;
    font-weight: bold;
    color: #000;
    background: #fff;
    border: 1px solid #185377;
    border-radius: 26px;
    padding: 4px 36px;
    line-height: normal;
    width: 60%;
	font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	z-index: 99;
}
p.free-cons {
	font-size: 14px;
	font-weight: bold;
	background-color: #C9D6DC;
	padding: 2px 0;
} 
p.free-cons span {
	font-size: 17px;
}
p.free-cons.sp {
	display: none;
}
p.free-cons.pc {
	display: block;
}

.l-cta_btn_tel a.sp {
	display: none;
}
.l-cta_btn_tel a.pc {
	display: block;
}

@media only screen and (max-width: 767px) {
	.l-fix-cta_inner {
		max-width: unset;
	}
	.l-cta_btn_mail {
		border-right: none;
	}
	.l-cta_btn_mail a {
		font-size: 15px;
		padding: 20px 15px;
	}
	p.free-cons.pc {
		display: none;
	}
	p.free-cons.sp {
		display: block;
		text-align: center;
        margin-bottom: 20px;
	}
	.l-cta_btn_mail a:before, .l-cta_btn_tel a:before {
		width: 75%;
        font-size: 10px;
        padding: 4px 15px;
	}
	.l-cta_btn_mail a:before {
		border-color: #ffde00;
	}
	.l-cta_btn_tel a:before {
		top: -13px;
	}
	.l-cta_btn_tel a.pc {
		display: none;
	}
	.l-cta_btn_tel a.sp {
		display: block;
	}
	.l-cta_btn_mail a img {
		width: 17px;
	}
	.l-cta_btn_tel a img {
		width: 22px;
	}
	.l-cta_btn_mail, .l-cta_btn_tel {
		padding: 0;
		flex-basis: 48%;
	}
	.l-cta_btn_tel a.sp, .l-cta_btn_mail a {
		border-radius: 16px;
	}
	.l-cta_btn_mail a img {
		top: 2px;
	}
	.l-cta_btn_tel a.sp {
		display: block;
		font-size: 15px;
		padding: 20px 15px;
		font-weight: bold;
		margin-top: 0;
		color: #fff;
		background-color: #162A4A;
		border-radius: 20px;
		line-height: 100%;
		box-shadow: 0 6px 0 rgba(0,0,0,.16);
		position: relative;
		font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
		transition: ease-in-out .2s;
	}
	.l-cta_btn_tel a.sp:hover {
		transform: translate(0.2rem, 0.2rem);
		vertical-align:bottom;
		box-shadow: none;
	}
	.footer .logo img {
    width: 210px;   /* ここを好きな大きさに変えればOK！ */
    height: auto;
  }

}
/* PCサイズ（748px以上）のロゴサイズ */
@media screen and (min-width: 748px) {
  .footer .logo img,
  img[src*="akaganehGS明朝白"] {
    max-width: 280px;   /* ←ここを好きなサイズに調整してね */
    width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
  }
}

/* PC・タブレット共通のロゴサイズ */
.header_h1 img {
  max-width: 400px;   /* ←ここをお好みで。今より小さくしたいなら 220px とかでもOK */
  width: 100%;
  height: auto;
}

/* スマホサイズ（〜747px）のときは、もう少し小さく */
@media screen and (max-width: 747px) {
  .header_h1 img {
    max-width: 220px;  /* スマホ用サイズ。大きすぎたら 200px とかにして調整 */
  }
}

/* ▼ 801〜970pxでヘッダーが伸びるようにする（重なり防止） */
@media screen and (max-width: 970px) {
  .header{
    height: auto;
    min-height: 9.5rem;
  }
}
/* ▼ 801〜970px：ヘッダーをできるだけ1行に収める */
@media screen and (max-width: 970px) and (min-width: 801px) {

  /* ロゴを少し小さくする（ここが一番効く） */
  .header_h1 img{
    width: 30vw;      /* 35vw → 30vw */
    max-width: 320px; /* 保険 */
  }

  /* 右側2ボタンの隙間を縮める */
  .heder_rightbox{
    gap: 1.6rem;      /* 4.5rem → 1.6rem */
  }

  /* ボタン自体を少しコンパクトに */
  .header_h2 a{
    font-size: 1.6rem;      /* 1.9rem → 1.6rem */
    padding: 0.5rem 1.4rem; /* 0.6rem 2.5rem → 小さめ */
  }
  .header_h3 a{
    font-size: 2.4rem;      /* 2.8rem → 2.4rem */
  }

  /* 折り返し防止（文字が割れて2行化するのを抑える） */
  .header_h2 a, .header_h3 a{
    white-space: nowrap;
  }
}
/* ▼ 748〜785px：無料相談を1行に保つ */
@media screen and (max-width: 785px) and (min-width: 748px) {

  .header_h2 a{
    min-width: 8.5rem;   /* 10.5rem → 小さく */
  }

  .header_h2 a .display_on800{
    white-space: nowrap;
  }
}

/* 共通 */
.copyright-note {
  font-size: 0.8em;
  line-height: 1.4;
  display: block;
}

/* スマホ（747px以下）：改行あり */
.sp-break {
  display: inline;
}

/* PC（748px以上）：1行 */
@media screen and (min-width: 748px) {
  .sp-break {
    display: none;
  }
  .copyright-note {
    white-space: nowrap;
  }
}

/************
END-CSS
************/
/************
END-CSS
************/