
@import url(https://fonts.googleapis.com/css?family=Pacifico);
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url(https://fonts.googleapis.com/css?family=Josefin+Sans);
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200..700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;700;900&display=swap');

body, div,
h1, h2, h3, h4, h5, h6,
p, blockquote, pre, dl, dt, dd, ol, ul, li, hr,
fieldset, form, label, legend, th, td,
article, aside, figure, footer, header, hgroup, menu, nav, section,
summary, hgroup {
  margin: 0;
  padding: 0;
  border: 0;
}

a:active,
a:hover {
  outline: 0;
}

@-webkit-viewport { width: device-width; }
@-moz-viewport { width: device-width; }
@-ms-viewport { width: device-width; }
@-o-viewport { width: device-width; }
@viewport { width: device-width; }


body {
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    text-size-adjust: 100%;
    color: #222222;
    background: #fff;
    font: 14px/1.8 'Noto Sans JP', Arial, Verdana, 游ゴシック, YuGothic,'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', メイリオ, Meiryo,sans-serif;
    background: #F8FAFC;
    
}


.nav_pc{
    display:none;
}
.nav_sp{
    display:block;
}

.block_pc{
    display:none;
}
.block_sp{
    display:block;
}
.MT-0{
	margin-top: 0px !important;
}
.MB-0{
	margin-bottom: 0px !important;
}
.MT-20{
	margin-top: 30px;
}
.MT-30{
	margin-top: 30px;
}
.MT-50{
	margin-top: 50px;
}
.MB-80{
	margin-bottom: 80px;
}
.MB-50{
	margin-bottom: 50px !important;
}
.MB-30{
	margin-bottom: 30px !important;
}
.PT-0{
	padding-top: 0px !important;
}
.PT-30{
	padding-top: 30px;
}
.PT-50{
	padding-top: 50px;
}

.PB-50{
	padding-bottom: 50px !important;
}
.PB-80{
	padding-bottom: 80px !important;
}

.COLOR_TAIYO_RED{
    color: #B8193F;
}

.block_step_pc{
    display:none;
}
.block_step_sp{
    display:block;
}

@media screen and (min-width: 700px) {
   
    .block_pc{
        display:block;
    }
    .block_sp{
        display:none;
    }
    
}
@media screen and (min-width: 920px) {
    
    .nav_pc{
        display:block;
    }
    .nav_sp{
        display:none;
    }
    
    .block_pc{
        display:block;
    }
    .block_sp{
        display:none;
    }
    .block_step_pc{
        display:block;
    }
    .block_step_sp{
        display:none;
    }
}


.sp-only {
    display: block;
}
.pc-only {
    display: none;
}

@media screen and (min-width: 700px) {
    
    .sp-only {
      display: none;
    }
    .pc-only {
      display: block;
    }
}




.header_logo{
	position: absolute;
	top: 0;
	left: 15px;
	
	transition: .3s;
	
}

.header_logo img{
	margin: 15px 0px 0px 0;
	max-width: 220px;
	width: 100%;
	transition: .3s;
	vertical-align:-28px;
}

.header_logo span{
	background-image: linear-gradient(90deg, #f97316, #e11d48);
	padding: 5px 15px 7px 15px;
	border-radius: 5px;
	color: #FFFFFF;
	font-weight: bold;
	font-size: min(1.2vw, 14px);
	margin-left: 5px;
	display: none;
}



@media screen and (min-width: 1400px) {
    
    .header_logo{
		left: 15px;
        transition: .3s;
	}
    
    .header_logo img{
        max-width: 220px;
    }
 
	.header_logo span{
		background-image: linear-gradient(90deg, #f97316, #e11d48);
		padding: 5px 15px 7px 15px;
		border-radius: 5px;
		color: #FFFFFF;
		font-weight: bold;
		font-size: min(1.2vw, 14px);
		margin-left: 5px;
		display: inline-block;
	}
	
}


.header_logo_sub{
	position: absolute;
	top: 0;
	left: 5%;
	width: 160px;
	transition: .3s;
}

.header_logo_sub img{
	margin: 10px 0px 0px 0;
	max-width: 160px;
	width: 100%;
}


@media screen and (min-width: 1400px) {
    
    .header_logo_sub{
		left: 5%;
        transition: .3s;
	}
    
    .header_logo_sub img{
        max-width: 80px;
    }
    
}


.is-fixed-header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 20;
    width: 100%;
    height: 100px;
    border: none;
    background:rgba(255,255,255,0);
    transition: .3s;
}

.bg_white{
    background-color: rgba(255,255,255, 0.9) !important;
}
#header_menu{
    
}

#hmenu_box{
	height: 100px;
	/* background:rgba(255,255,0,0.8); */
	margin-right: 20px;
	
}
#hmenu_box_sub{
	height: 100px;
	/* background:rgba(255,255,255,0); */
	margin-right: 20px;
}

.upper-nav{
	float: right;
	width: calc( 100% - 360px);
	max-width: 700px;
	margin-top: 28px;
}

.upper-nav ul{
    list-style:none;
    display:flex;
    align-items:baseline;
	justify-content: center;
}
.upper-nav ul li {
    flex: 1 0 auto;
    text-align: center;
    color: #333;
    font-size: 16px;
}

.upper-nav ul li a {
    text-decoration: none;
    color:#222;
    font-weight: 600;
}

.upper-nav ul li a:hover{
    background: none;
    color:#CC0000;
    text-decoration: none;
}

.upper-nav ul li.contact_btn{
	margin-left: 10px;
}
.upper-nav ul li.contact_btn a {
    background-image: linear-gradient(90deg, #f97316, #e11d48);
	padding: 9px 15px 10px 15px;
	border-radius: 50px;
	color: #FFF;
	text-decoration: none;
	display: block;
    width: 100%;
    height: 100%;
	box-sizing: border-box;
    font-weight: 600;
}
.upper-nav ul li.contact_btn a:hover{
	background-image: linear-gradient(90deg, #e11d48, #f97316);
}


#hmenu_main{
    background:rgba(255,0,0,0);
	display:block;
	margin-top: 60px;
	padding: 0 0;
}
#hmenu_main img{
	margin: 0 auto;
	width: 100%;
	
}




@media screen and (min-width: 700px) {
    
    #hmenu_main{
        display: flex;
		margin-top: 60px;
	}
    
    
    
    
}
@media screen and (min-width: 920px) {
    #hmenu_main{
        display: flex;
		margin-top: 100px;
	}
    
    
    
    
    
}


.sp_header{
	position: fixed;
    top: 0;
    left: 0;
    z-index: 20;
    width: 100%;
	background-color: rgba(254,254,252,0.9);
	height: 60px;
	display: flex;
}
.sp_header .left-logo{
	width: 50%;
	padding-left: 10px;
	box-sizing: border-box;
}
.sp_header .left-logo img{
	margin: 5px 0px 0px 0;
	max-height: 50px;
}
.sp_header .right-menu{
    width: 50%;
	text-align: right;
}






/*　ハンバーガーメニューボタン　*/
.hamburger {
  display : block;
  position: fixed;
  z-index : 15;
  right : 15px;
  top   : 0px;
  width : 50px;
  height: 50px;
  cursor: pointer;
  text-align: center;
}
.hamburger span {
  display : block;
  position: absolute;
  width   : 30px;
  height  : 3px ;
  right    : 6px;
  background : #333;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition   : 0.3s ease-in-out;
  transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
	top: 15px;
	width: 30px;
}
.hamburger span:nth-child(2) {
  	top: 25px;
	width: 30px;
}
.hamburger span:nth-child(3) {
  top: 35px;
  width: 30px;
}

/* スマホメニューを開いてる時のボタン */
.hamburger.active span:nth-child(1) {
	/*
  top : 16px;
  left: 6px;
  background :#fff;
  -webkit-transform: rotate(-45deg);
  -moz-transform   : rotate(-45deg);
  transform        : rotate(-45deg);
	*/
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
	/*
  top: 16px;
  background :#fff;
  -webkit-transform: rotate(45deg);
  -moz-transform   : rotate(45deg);
  transform        : rotate(45deg);
	*/
}

/* メニュー背景　*/
nav.globalMenuSp {
  position: fixed;
  z-index : 40;
  top  : 0;
  left : 0;
  color: #fff;
  background: rgba( 255,255,255,0.6 );
  text-align: center;
  width: 100%;
  transform: translateX(100%);
  transition: all 0.3s;
	backdrop-filter: blur(3px);
	-webkit-backdrop-filter: blur(3px);
	height: 100%;
}

nav.globalMenuSp ul {
	margin: 0 auto;
	padding: 0;
	width: 100%;
	
}

nav.globalMenuSp ul li {
  list-style-type: none;
  padding: 0;
  width: 100%;
  transition: .4s all;
}
nav.globalMenuSp ul li:last-child {
  padding-bottom: 0;
}
nav.globalMenuSp ul li:hover{
  background :#ffdddd;
}

nav.globalMenuSp ul li a {
  display: block;
  color: #333;
  padding: 10px 0;
  text-decoration :none;
	font-size: 20px;
	font-weight: 600;
}

/* クリックでjQueryで追加・削除 */
nav.globalMenuSp.active {
	opacity: 100;
	display: block;
	transform: translateX(0%);
}


.sp_menu_box{
    margin: 50px 20px;
    overflow: hidden;
	background-color: rgba(255,255,255,1);
	box-shadow: 0 0 10px -5px gray;
	border-radius: 20px;
	transition:0.2s;
	padding: 20px 0 80px 0 ;
	
}


.sp_menu_box ul li.contact_btn{
	margin: 0 30px;
}
.sp_menu_box ul li.contact_btn a {
    background-image: linear-gradient(90deg, #f97316, #e11d48);
	padding: 12px 15px;
	border-radius: 30px;
	color: #FFF;
	text-decoration: none;
	display: block;
    width: calc( 100% - 60px );
    height: 100%;
	box-sizing: border-box;
}
.sp_menu_box ul li.contact_btn a:hover{
	background-image: linear-gradient(90deg, #e11d48, #f97316);
}



.hamburger_close{
	position: absolute;
	right: 15px;
	top: 35px;
}

.hamburger_logo{
	text-align: center;
	margin-top: 30px;
	margin-bottom: 30px;
}
.hamburger_logo img{
	width: 220px;
}

.round_btn {
  display: block;
  position: relative;
  width: 40px;
  height: 40px;
  border-radius: 50%;  /* 丸みの度合い */
  background: #FA6805; /* ボタンの背景色 */
	cursor: pointer;
}
 
.round_btn::before, .round_btn::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 3px;
  height: 21px;
  background: #fff; /* バツ印の色 */
	
}
 
.round_btn::before {
  transform: translate(-50%,-50%) rotate(45deg);
}
 
.round_btn::after {
  transform: translate(-50%,-50%) rotate(-45deg);
}



/* NEWS */

#news_box{
    margin: 0 auto;
    padding: 0 0;
    margin-top: 0px;
    z-index: 2;
    position: relative;
    box-sizing: border-box;
}
#news_box .inner{
    margin: 0 auto;
    overflow: hidden;
    background:#FA8130;
    padding: 0px;
    
}

#news_box .news_title{
    width: 100%;
    float: left;
    background: #F97216;
}

#news_box .news_title p{
    font-size: 18px;
    color:#FFF;
    text-align: center;
    font-weight: bold;
    letter-spacing: 0;
    margin-top: 0px;
    font-family: 'Lato', sans-serif;
    font-weight: 700;
}
#news_box .news_more{
    width: 100%;
    min-width: 100px;
    float: right;
    color: #FFF;
    font-size: 14px;
    margin-top: 0px;
    
}





#news_box .news_more p{
    text-align: right;
    display: flex;
    align-items: center; /* 蝙ら峩荳ｭ蠢� */
    justify-content: center; /* 豌ｴ蟷ｳ荳ｭ蠢� */
}

#news_box .news_more p:before {
    border-top: 1px solid;
    content: "";
    width: 3em; /* 邱壹�髟ｷ縺� */
}
#news_box .news_more p:before {
  margin-right: 1em; /* 譁�ｭ励�蟾ｦ髫｣ */
}




#news_box .news_more a{
    display: block;
    padding: 5px 10px;
    color: #FFF;
    text-decoration: none;
    font-weight: normal;
    font-family: 'Lato', sans-serif;
    font-size: 14px;
    font-weight: 400;
}

#news_box .news_more a:hover{
    color: rgb(255, 255, 0);
}


.fa-list{
    font-size: 14px;
    display: block;
    color: #FFF;
    margin-right: 10px;
}

#news_box ul{
    width:100%;
    float: left;
    padding: 10px 10px 0 10px;
	box-sizing: border-box;
}

#news_box ul li{
    padding: 0;
    overflow: hidden;
    margin-bottom: 10px;
}

.idate_box{
    float: left;
    width: 100px;
    height: 30px;
    color: #FFF;
    font-family: 'Lato', sans-serif;
    font-weight: 700;
    line-height: 1.5;
}
.icate_box{
    float: left;
    width: 90px;
    height: 21px;
    padding: 0 0 0 0;
    line-height: 1.5;
    color: #FFF;
    position: relative;
    box-sizing: border-box;
    text-align: center;
    font-family: 'Lato', sans-serif;
    font-weight: 900;
    letter-spacing: 0.05em;
    background: #FFF;
    color: #2B5F97;
}


.itext_box{
    width: 100%;
    float: left;
    box-sizing: border-box;
    letter-spacing: 0.05em;
    font-size: 13px;
}


#news_box p a{
    text-decoration: none;
    color: #FFF;
}

#news_box p a:hover{
    text-decoration: none;
    color: rgb(255, 255, 0);
}
#news_box .inner p.itext_box{
    color: #FFF;
    line-height: 1.5;
}

@media screen and (min-width: 1000px) {
    
    
    
    #articles-scroll{
        background-color: rgba(255,255,255,1);
    }
    
    header {
        overflow: hidden;
    }
    .logo {
        padding: 28px 20px 10px 20px;
        float: left;
    }
    
    .logo img{
        height: 30px;
        transition: .3s;
    }
    
    
    
    
    #news_box{
        padding: 0;
        margin-top: -50px;
        z-index: 2;
    }
    
    #news_box .inner{
        padding: 0;
        width: 80%;
        height: 80px;
        max-width: 1000px;
        float: right;
    }

    #news_box .news_title{
        width: 120px;
        height: 80px;
        float: left;
    }
    #news_box .news_title p{
        font-size: 16px;
        color:#FFF;
        text-align: center;
        font-family: 'Lato', sans-serif;
        font-weight: 700;
        letter-spacing: 0.05em;
        margin-top: 25px;
    }
    #news_box .news_more{
        width: 100px;
        color: #FFF;
        font-size: 14px;
        margin-top: 25px;
    }
    #news_box .news_more p{
        text-align: right;
        padding: 0 !important;
        margin: 0 !important;
    }
    #news_box ul{
        width:calc(100% - 220px);
        float: left;
        padding: 28px 0 0 0;
        /* padding: 20px 0 0 0; */
    }
    #news_box ul li{
        margin-bottom: 0px;
    }
    
    .idate_box{
        float: left;
        width: 100px;
        font-size: 13px;
        margin-left: 20px;
        line-height: 1.7;
    }
    .icate_box{
        float: left;
        width: 90px;
        font-size: 13px;
        padding: 0 0 0 0;
        line-height: 1.6;
    }
    
    .itext_box{
        float: left;
        width: calc(100% - 240px);
        font-size: 13px;
        font-weight: normal;
        margin-left: 20px;
        box-sizing: border-box;
        text-overflow: ellipsis;
        white-space: nowrap;
        overflow: hidden;
        letter-spacing: 0.17em;
    }
    #scroll_box{
        display: block;
        width: 40px;
        padding: 0 0;
        z-index: 2;
        position: relative;
        box-sizing: border-box;
        color: #FFF;
        margin-top: -150px;
        z-index: 4;
    }
    #scroll_box::after{
        content:"";
        display:block;
        width:1px;
        height:120px;
        background-color:#AAAAAA;
        position:absolute;
        top:60px;
        left:28px;
    }

    .vrl{
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        font-weight: normal;
        font-size: 12px;
    }
    
    
}






/* sec_top_technical
------------------------------------------------------------*/

#sec_top_technical{
    margin:0px 0 0 0;
    padding:0px 0 0px 0;
    text-align: left;
    vertical-align: bottom;
    position: relative;
}

#sec_top_technical::after{
    position: absolute;
    content: '';
    top: 0;
    bottom: 0;
    width: 70%;
    z-index: -1;
    
    border-radius:0 20px 20px 0;
}


#sec_top_technical .outer{
    margin: 0 auto 0 auto !important;
    max-width: 100%;
	display: block;
    
	
}


#sec_top_technical .outer h1{
    font-family: 'Lato', sans-serif;
	font-weight: 900;
	font-style: normal;
	font-size: 64px;
	line-height: 1.1;
	
    background-repeat:  no-repeat;                         /* 逕ｻ蜒上�郢ｰ繧願ｿ斐＠繧呈欠螳�  */              
    background-position:center center;                     /* 逕ｻ蜒上�陦ｨ遉ｺ菴咲ｽｮ繧呈欠螳�  */
    background-size:contain;                               /* 逕ｻ蜒上�繧ｵ繧､繧ｺ繧呈欠螳�    */
	padding: 0 0 0 15px;
	box-sizing: border-box;
	margin-bottom: 20px;
	background: linear-gradient(90deg, #f97316 0%, #e11d48 50%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

#sec_top_technical .outer h1 span{
	display: block;
	font-size: 20px;
	font-weight: bold;
	background: #0E172A;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}


#sec_top_technical .outer .left-column{
	width: 100%;
	min-width:inherit;
	
}

#sec_top_technical .outer .left-column .title_box{
	float: right;
	width: calc( 100% - 20px );
	max-width:inherit;
	margin-right: 10px;
	margin-left: 10px;
	position: relative;
	overflow: hidden;
	margin-bottom: 30px;
}


#sec_top_technical .outer .left-column .title_box p{
	padding: 0 10px;
	font-size: 18px;
	font-weight: bold;
}

#sec_top_technical .outer .left-column .title_box p span{
	color: #FF3F00;
}

#sec_top_technical .outer .right-column{
	width: 100%;
	padding-bottom: 20px;
}

#sec_top_technical .outer .right-column .img_box{
	margin: 0 15px;
}

#sec_top_technical .outer .right-column .img_box img {
	display: block;
	width: 100%;
	height: 100%;
	
	object-fit: cover;
	border-radius: 10px;
}

#sec_top_technical ul{
    margin: 0 auto;
    max-width: 100%;
    overflow: hidden;
    margin-top: 30px;
    margin-bottom: 0px;
	position: relative;
    border-top: 1px dotted #dcdddd;
	z-index: 10;
}

#sec_top_technical ul li{
    border-bottom: 1px dotted #dcdddd;
    padding: 15px 0 25px 100px;
    overflow: hidden;
	font-size: 24px;
	font-weight: bold;
	list-style: none;
	position: relative;
}
#sec_top_technical ul li span{
	display: block;
	font-size: 15px;
	line-height: 1;
}
#sec_top_technical ul a{
	text-decoration: none;
}

#sec_top_technical ul a li{
    color: #28100B;
	
}
#sec_top_technical ul a li span{
	color: #999;
}

#sec_top_technical ul li img.service{
	height: 60px;
	padding: 0 0;
	position: absolute;
	top:20px;
	left:20px;
}
#sec_top_technical ul li img.plan{
	height: 50px;
	padding: 0 0;
	position: absolute;
	top:22px;
	left:25px;
}


.arrow-circle {
  /* 丸部分の設定 */
	width: 48px;
	height: 48px;
	background-color: none; /* 背景色 */
	border:1px solid #999;
	border-radius: 50%; /* 丸くする */
	position: relative; /* 矢印の位置基準 */
	display: inline-block;
	cursor: pointer;
	transition: background-color 0.3s ease;
	position: absolute;
	right:20px;
	top:25px;
}

/* 矢印部分（右矢印の例） */
.arrow-circle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 45%; /* 見た目の中心に微調整 */
  width: 10px;
  height: 10px;
  /* 上と右のボーダーを使って「>」を作成 */
  border-top: 2px solid #999; /* 矢印の色と太さ */
  border-right: 2px solid #999;
  /* 回転させて右向きの矢印（>）にする */
  transform: translate(-50%, -50%) rotate(45deg);
}

/* ホバー時の装飾（お好みで） */
.arrow-circle:hover {
  background-color: #555;
}

@media screen and (min-width: 700px) {

	#sec_top_technical .outer{
		margin: 0 auto 0 auto !important;
		max-width: 100%;
		display: flex;

	}
    
    #sec_top_technical::after{
        width: 70%;
    }
    
    
	#sec_top_technical .outer h1{
		margin-bottom: 50px;
	}
	#sec_top_technical .outer .left-column{
		width: 50%;
		min-width:inherit;
	}
	#sec_top_technical .outer .right-column{
		width: 50%;
		display:block;
		padding-bottom: 40px;
	}
	
	#sec_top_technical .outer .left-column .title_box{
		float: right;
		width: calc( 100% - 20px );
		max-width: none;
		margin-right: 10px;
		margin-left: 10px;
		position: relative;
		overflow: hidden;
	}
	
	#sec_top_technical .outer .left-column .title_box p{
		padding: 0 15px;
		font-size: 20px;
	}
	
	#sec_top_technical .outer .right-column .img_box{
		margin: 0 0;
	}

	#sec_top_technical .outer .right-column .img_box img {
		display: block;
		width: 100%;
		
		max-height:none;
		object-fit: cover;
		border-radius: 10px 0 0 10px;
	}

	
	#sec_top_technical ul li{
		border-bottom: 1px dotted #dcdddd;
		padding: 15px 0 25px 100px;
		overflow: hidden;
		font-size: 30px;
		font-weight: bold;
		list-style: none;
		position: relative;
	}
	#sec_top_technical ul li span{
		display: block;
		font-size: 20px;
		line-height: 1;
	}

	
	#sec_top_technical ul li img.service{
		height: 60px;
		padding: 0 0;
		position: absolute;
		top:25px;
		left:20px;
	}
	#sec_top_technical ul li img.plan{
		height: 50px;
		padding: 0 0;
		position: absolute;
		top:32px;
		left:25px;
	}
	
	
	.arrow-circle {
	  /* 丸部分の設定 */
		right:20px;
		top:30px;
	}

}


@media screen and (min-width: 920px) {

    /* sec_top_technical
    ------------------------------------------------------------*/
    #sec_top_technical{
        margin:80px 0 0 0;
        padding:0px 0 30px 0;
        text-align: left;
    }
	#sec_top_technical .outer .right-column .img_box img {
		height: auto;
		
	}
	
	#sec_top_technical .outer .left-column{
		width: 65%;
		min-width: 570px;
	}
	#sec_top_technical .outer .right-column{
		width: 35%;
	}

	#sec_top_technical .outer .left-column .title_box{
		float: right;
		width: calc( 100% - 80px );
		max-width: 800px;
		margin-right: 80px;
		margin-left: 10px;
		position: relative;
		overflow: hidden;
	}
	
	

}








/* sec_top_service
------------------------------------------------------------*/

#sec_top_service{
    margin:0;
    padding:30px 0 30px 0;
    text-align: left;
    
}

#sec_top_service .inner{
    margin: 0 auto;
    max-width: 1400px;
    overflow: hidden;
    padding: 0 10px;
}


#sec_top_service .inner .activity_box{
    overflow: hidden;
	position: relative;
	z-index: 10;
}

#sec_top_service .inner .activity_box p{
    text-align: center;
	font-size: 16px;
	font-weight: 500;
}
#sec_top_service .inner .activity_box p span{
	color: #FF3F00;
	font-weight: 600;
}

#sec_top_service .inner h1{
    font-family: 'Lato', sans-serif;
	font-weight: 900;
	font-style: normal;
	font-size: 40px;
	line-height: 1.5;
	text-align: center;
    background-repeat:  no-repeat;       
    background-position:center center;
    background-size:contain;
	padding: 0 0 0 15px;
	box-sizing: border-box;
	margin-bottom: 50px;
	background: linear-gradient(90deg, #f97316 0%, #e11d48 80%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
	
}

#sec_top_service .inner h1 span{
	display: block;
	font-size: 20px;
	font-weight: bold;
	background: #0E172A;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	
}

#sec_top_service h2{
	font-size: 18px;
	line-height: 1.7;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
	margin: 20px 0 0 0;
}



#sec_top_service .service_en{
	position: absolute;
	right: 0;
	font-size: 15vw;
	line-height: 0.9;
	font-family: 'Lato';
    font-weight: 900;
	margin-right: 10px;
	color: #FFF;
	z-index: 0;
}



ul.service_box{
    padding: 50px 0 10px 0;
    overflow: hidden;
    list-style: none;
    display:flex;
    flex-wrap:wrap;
	
}

ul.service_box li {
    width: 100%;
    margin: 0;
    padding: 60px 0;
	box-sizing: border-box;
    line-height: 1;
    color: #313131;
    margin-bottom: 70px;
	background: #F4F4F4;
	text-align: center;
	position: relative;
	border-radius: 10px;
}

ul.service_box li .btn_outer{
    width: 100%;
	position: absolute;
	bottom: -30px;
	margin: 0 auto;
	text-align: center;
	padding: 0 50px;
	box-sizing: border-box;
}

ul.service_box li .btn_common{
    display: inline-block;
    width: 100%;
    text-align: center;
    background: #333;
    color: #FFF;
    font-size: 16px;
    text-decoration: none;
    padding: 20px 15px;
    border-radius: 60px;
    transition: .3s;
    box-sizing: border-box;
	font-family: 'Lato';
    font-weight: 600;
}
ul.service_box li .btn_common:hover {
    opacity: 0.7;
}
ul.service_box li .btn_system{
	background: #0085B2;
}
ul.service_box li .btn_homepage{
	background: #00A960;
}
ul.service_box li .btn_support{
	background: #FF8000;
}



ul.service_box li h3{
	font-size: 20px;
	line-height: 1.7;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
	margin: 0 0 0 0;
	text-align: center;
}


ul.service_box li a{
    text-decoration: none;
}

ul.service_box li a:hover{
    filter:alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8;
}

ul.service_box li p{
    width: 100%;
    box-sizing: border-box;
    text-align: justify;
    text-justify: inter-ideograph;
    letter-spacing: 0.01em;
    font-size: 14px;
    color: #444444;
	padding: 0 20px;
	line-height: 1.7;
}


ul.service_box li img{
    width: 100%;
	max-width: 64px;
	padding: 40px 0;
	box-sizing: border-box;
}

ul.service_box li h2{
    font-size: 16px;
    line-height: 1.8;
    padding: 10px 10px;
    border-bottom: 1px dotted #CCCCCC;
}

ul.service_box li a{
    color: #333;
}





/*  画面サイズが640pxまで  */
@media screen and (min-width: 640px) {
    
    ul.service_box li{
        width: calc((100% - 20px) / 2);
        float:left;
        margin-right: 20px;
        margin-left: 0;
    }
	ul.service_box li:nth-child(2n){
        margin-right: 0px;
    }
}



@media screen and (min-width: 1000px) {

    #sec_top_service{
        margin:0;
        padding:0px 0 80px 0;
        text-align: left;
    }
    
    #sec_top_service .inner{
        padding: 0 10px;
    }
    
    #sec_top_service .inner h1{
		font-size: 64px;

	}

	#sec_top_service .inner h1 span{
		font-size: 20px;

	}
	#sec_top_service h2{
		font-size: 28px;
	}
    
	#sec_top_service .service_en{
		margin-right: 20px;
	}

	ul.service_box li{
        
        width: calc((100% - 80px) / 3);
        float:left;
        margin-right: 40px;
        margin-left: 0;
    }
    ul.service_box li:nth-child(2n){
        margin-right: 40px;
    }
    ul.service_box li:nth-child(3n){
        margin-right: 0px;
    }
    
    ul.service_box li p{
		padding: 0 50px;
	}
	
    ul.service_box li img{
        width: 100%;
		max-width: 64px;
		text-align: center;
		margin: 0 auto;
    }
	
	ul.service_box li .btn_common{
		font-size: 18px;
	}
	#sec_top_service .inner .activity_box p{
		text-align: center;
		font-size: 20px;
		font-weight: 500;
	}
	
}

.section-padding {
            padding: 70px 0;
        }

/* OUR STRENGTHS */


/* sec_top_strengths
------------------------------------------------------------*/

#sec_top_strengths{
    margin:0;
    padding:30px 0 0px 0;
    text-align: left;
	background: #F4F4F4;
}

#sec_top_strengths .inner{
    margin: 0 auto;
    max-width: 1400px;
    overflow: hidden;
    padding: 0 10px;
    margin-bottom: 0px;
}
#sec_top_strengths .inner h1{
    font-family: 'Lato', sans-serif;
	font-weight: 900;
	font-style: normal;
	font-size: 40px;
	line-height: 1.5;
	text-align: center;
    background-repeat:  no-repeat;       
    background-position:center center;
    background-size:contain;
	padding: 0 0 0 15px;
	box-sizing: border-box;
	margin-bottom: 50px;
	background: linear-gradient(90deg, #f97316 0%, #e11d48 80%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
	
}

#sec_top_strengths .inner h1 span{
	display: block;
	font-size: 20px;
	font-weight: bold;
	background: #0E172A;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	
}

        .strengths {
            background-color: #fafafa;
        }
        .strengths-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 40px;
        }
        .strength-card {
            background: #fff;
            padding: 30px 50px 60px 50px;
            border-radius: 8px;
            box-shadow: 0 4px 15px rgba(0,0,0,0.04);
            text-align: center;
        }
        .strength-num {
            font-size: 64px;
            font-weight: bold;
            color: #FF4000;
            margin-bottom: 10px;
			font-family: 'Lato', sans-serif;
			font-weight: 900;
        }
        .strength-card h3 {
            font-size: 22px;
            margin-bottom: 15px;
        }
        .strength-card p {
            font-size: 14px;
            color: #1F1F1F;
            text-align: left;
        }

        /* 2カラムバナー */
        .banner-two-col {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 50px;
            margin-top: 50px;
        }

		

        .banner-box {
            height: 400px;
            background-size: cover;
            background-position: center;
            border-radius: 8px;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            color: #fff;
            position: relative;
            overflow: hidden;
        }
        .banner-box::before {
            content: '';
            position: absolute;
            top: 0; left: 0; right: 0; bottom: 0;
            background: rgba(0,0,0,0.3);
        }


        .banner-box-content {
            position: relative;
            z-index: 1;
            text-align: center;
        }
        .banner-box h3 {
            font-size: 48px;
            margin-bottom: 50px;
			line-height: 1.6;
        }
		
.banner-box h3 span{
	display: block;
	font-size: 26px;
}

        .btn-white {
            background-color: #fff;
            color: #333;
            padding: 20px 80px;
            border-radius: 50px;
            font-size: 20px;
            font-weight: 900;
			text-decoration: none;
			font-family: 'Lato', sans-serif;
        }
		.btn-white:hover {
            background-color: #f97316;
            color: #FFF;
            padding: 20px 80px;
            border-radius: 50px;
            font-size: 20px;
            font-weight: 900;
			text-decoration: none;
			font-family: 'Lato', sans-serif;
        }

@media screen and (min-width: 640px) {
    
    
    #sec_top_strengths .inner{
        margin-bottom: 0px;
    }

	
}

@media screen and (min-width: 1000px) {
    #sec_top_strengths{
        margin:0;
        padding:50px 0 80px 0;
        text-align: left;
    }
	#sec_top_strengths .inner{
        padding: 0 10px;
    }
	
	#sec_top_strengths .inner h1{
		font-size: 64px;

	}

	#sec_top_strengths .inner h1 span{
		font-size: 20px;

	}
	
	
}



/* レスポンシブ対応 */
        @media (max-width: 900px) {
            .hero-inner, .counseling-inner, .contact-flex {
                flex-direction: column;
                text-align: center;
            }
            .hero-content {
                padding-right: 0;
                margin-bottom: 30px;
            }
            .service-grid, .strengths-grid, .banner-two-col, .case-grid, .footer-grid {
                grid-template-columns: 1fr;
            }
            nav {
                display: none; /* スマホ用ナビゲーションは簡易的に非表示 */
            }
        }




/* sec_top_banner
------------------------------------------------------------*/

#sec_top_banner{
    margin:0;
    padding:30px 0 0px 0;
    text-align: left;
}

#sec_top_banner .inner{
    margin: 0 auto;
    max-width: 1400px;
    overflow: hidden;
    padding: 0 10px;
    margin-bottom: 0px;
}




@media screen and (min-width: 640px) {
    
    
    #sec_top_banner .inner{
        margin-bottom: 0px;
    }

	
}

@media screen and (min-width: 1000px) {
    #sec_top_banner{
        margin:0;
        padding:40px 0 50px 0;
        text-align: left;
    }
	#sec_top_banner .inner{
        padding: 0 10px;
    }
	
	
	
}






/* sec_top_infomation
------------------------------------------------------------*/

#sec_top_infomation{
    margin:0;
    padding:30px 0 30px 0;
    text-align: left;
    background: #F4F4F4;
}

#sec_top_infomation .inner{
    margin: 0 auto;
    max-width: 1400px;
    overflow: hidden;
    padding: 0 10px;
    margin-bottom: 50px;
}
#sec_top_infomation .outer{
    margin: 0 auto 0 auto !important;
    max-width: 100%;
	display: block;
    
	
}

#sec_top_infomation .outer .left-column{
	width: 100%;
	min-width:inherit;
	
}
#sec_top_infomation .outer .right-column{
	width: 100%;
	padding-bottom: 20px;
}



#sec_top_infomation .outer h1{
    font-family: 'Lato', sans-serif;
	font-weight: 900;
	font-style: normal;
	font-size: 40px;
	line-height: 1.1;
	
    background-repeat:  no-repeat;                         /* 逕ｻ蜒上�郢ｰ繧願ｿ斐＠繧呈欠螳�  */              
    background-position:center center;                     /* 逕ｻ蜒上�陦ｨ遉ｺ菴咲ｽｮ繧呈欠螳�  */
    background-size:contain;                               /* 逕ｻ蜒上�繧ｵ繧､繧ｺ繧呈欠螳�    */
	padding: 0 0 0 0px;
	box-sizing: border-box;
	margin-bottom: 50px;
	background: linear-gradient(90deg, #f97316 0%, #e11d48 50%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
	text-align: center;
}

#sec_top_infomation .outer h1 span{
	display: block;
	font-size: 20px;
	font-weight: bold;
	background: #0E172A;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}





.infomation_box{
    overflow: hidden;
    position: relative;
    padding-top: 35px;
}


#sec_top_infomation .inner .news_box{
    overflow: hidden;
    display: block;
    padding: 0 0;
    box-sizing: border-box;
    margin-bottom: 0px;
}


#sec_top_infomation .inner .news_box div{
    clear: both;
}


#sec_top_infomation .inner .news_box ul{
    margin: 0 auto;
    max-width: 1460px;
    overflow: hidden;
    border-top: 1px dotted #CCCCCC;
    margin-top: 0px;
    margin-bottom: 20px;
    clear: both;
}

#sec_top_infomation .inner .news_box ul li{
    border-bottom: 1px dotted #CCCCCC;
    padding: 15px 0 10px 0;
    overflow: hidden;
}

#sec_top_infomation .inner .news_box ul li a{
    text-decoration: none;
    color: #333;
    font-size: 13px;
}
#sec_top_infomation .inner .news_box ul li a:hover{
    text-decoration:underline;
}

#sec_top_infomation .inner .news_box .idate_box{
    width: 100%;
    margin-top: 5px;
	
}
#sec_top_infomation .inner .news_box .itext_box{
    width: 100%;
    box-sizing: border-box;
    margin:2px 0 0 0px;
    font-size: 15px;
}
#sec_top_infomation .inner .news_box .info_date{
    
    color:#333;
    font-size: 15px;
    padding: 0px 20px 0px 0;
    margin-left: 0px;
    font-weight: 600;
    width: auto;
}
#sec_top_infomation .inner .news_box .idate_box{
    float: left;
    width: 100%;
}
#sec_top_infomation .inner .news_box .itext_box{
    float: left;
    width: 100%;
	font-weight: 500;
}
.btn-info_more {
	background: linear-gradient(90deg, #f97316 0%, #e11d48 80%);
	color: #FFF;
	padding: 15px 50px;
	border-radius: 50px;
	font-size: 20px;
	font-weight: 900;
	text-decoration: none;
	font-family: 'Lato', sans-serif;
	margin-top: 50px;
	display: none;
}
.btn-info_more:hover {
	background: linear-gradient(90deg, #e11d48 0%, #f97316 80%);
	color: #FFF;
	padding: 15px 50px;
	border-radius: 50px;
	font-size: 20px;
	font-weight: 900;
	text-decoration: none;
	font-family: 'Lato', sans-serif;
}

@media screen and (min-width: 640px) {
    
    
    #sec_top_infomation .inner{
        margin-bottom: 50px;
    }

    
    #sec_top_infomation h1 {
        margin: 0px 0 40px 0;
        font-size: 32px;
    }
    
    .infomation_box{
        overflow: hidden;
        position: relative;
        padding-top: 50px;
    }
    
	#sec_top_infomation .inner .news_box{
        padding: 0 10px;
    }
	
}

@media screen and (min-width: 1000px) {
    #sec_top_infomation{
        margin:0;
        padding:50px 0 10px 0;
        text-align: left;
    }
    #sec_top_infomation .inner{
        padding: 0 10px;
    }
	
	
	#sec_top_infomation .outer h1{
		font-family: 'Lato', sans-serif;
		font-weight: 900;
		font-style: normal;
		font-size: 64px;
		line-height: 1.1;

		background-repeat:  no-repeat;                         /* 逕ｻ蜒上�郢ｰ繧願ｿ斐＠繧呈欠螳�  */              
		background-position:center center;                     /* 逕ｻ蜒上�陦ｨ遉ｺ菴咲ｽｮ繧呈欠螳�  */
		background-size:contain;                               /* 逕ｻ蜒上�繧ｵ繧､繧ｺ繧呈欠螳�    */
		padding: 0 0 0 0px;
		box-sizing: border-box;
		margin-bottom: 50px;
		background: linear-gradient(90deg, #f97316 0%, #e11d48 50%);
	  -webkit-background-clip: text;
	  -webkit-text-fill-color: transparent;
		text-align: left;
	}

	#sec_top_infomation .outer h1 span{
		display: block;
		font-size: 20px;
		font-weight: bold;
		background: #0E172A;
		-webkit-background-clip: text;
		-webkit-text-fill-color: transparent;
	}


	
	
	#sec_top_infomation .outer{
		margin: 0 auto 0 auto !important;
		max-width: 100%;
		display: flex;

	}
	
	#sec_top_infomation .outer .left-column{
		width: 300px;
	}
	#sec_top_infomation .outer .right-column{
		width: calc( 100% - 300px );
	}
	
	
	
    #sec_top_infomation .inner .news_box{
        padding: 0 10px;
    }
    
    #sec_top_infomation .inner .news_box ul li{
        padding: 20px 0 20px 0;
    }
    #sec_top_infomation .inner .news_box ul li a{
        font-size: 15px;
    }
    #sec_top_infomation .inner .news_box .info_date{
        padding: 5px 20px;
        margin-left: 0px;
    }
    #sec_top_infomation .inner .news_box .itext_box{
        font-size: 15px;
    }
    
    #sec_top_infomation .inner .news_box .idate_box{
        float: left;
        width: 120px;
		font-weight: 600;
    }
    #sec_top_infomation .inner .news_box .itext_box{
        float: left;
        width: calc(100% - 150px);
        padding: 0 20px;
        
    }
	.btn-info_more {
		background: linear-gradient(90deg, #f97316 0%, #e11d48 80%);
		color: #FFF;
		padding: 10px 50px;
		border-radius: 50px;
		font-size: 20px;
		font-weight: 900;
		text-decoration: none;
		font-family: 'Lato', sans-serif;
		margin-top: 0px;
		display: inline-block;
	}
	.btn-info_more:hover {
		background: linear-gradient(90deg, #e11d48 0%, #f97316 80%);
		color: #FFF;
		padding: 10px 50px;
		border-radius: 50px;
		font-size: 20px;
		font-weight: 900;
		text-decoration: none;
		font-family: 'Lato', sans-serif;
	}
}







/* sec_case_stusies
------------------------------------------------------------*/

#sec_case_stusies{
    margin:0;
    padding:30px 0 0px 0;
    text-align: left;
	
}

#sec_case_stusies .inner{
    margin: 0 auto;
    max-width: 1400px;
    overflow: hidden;
    padding: 0 10px;
    margin-bottom: 0px;
}
#sec_case_stusies .inner h1{
    font-family: 'Lato', sans-serif;
	font-weight: 900;
	font-style: normal;
	font-size: 40px;
	line-height: 1.5;
	text-align: center;
    background-repeat:  no-repeat;       
    background-position:center center;
    background-size:contain;
	padding: 0 0 0 15px;
	box-sizing: border-box;
	margin-bottom: 50px;
	background: linear-gradient(90deg, #f97316 0%, #e11d48 80%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
	
}

#sec_case_stusies .inner h1 span{
	display: block;
	font-size: 20px;
	font-weight: bold;
	background: #0E172A;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	
}

#sec_case_stusies .inner .activity_box{
    overflow: hidden;
	position: relative;
	z-index: 10;
}

#sec_case_stusies .inner .activity_box p{
    text-align: center;
	font-size: 16px;
	font-weight: 500;
}
#sec_case_stusies .inner .activity_box p span{
	color: #FF3F00;
	font-weight: 600;
}
#sec_case_stusies .inner .btn_more{
    width: 100%;
    margin: 50px 0 50px 0;
    text-align: center;
}
.btn-case_more {
	background: linear-gradient(90deg, #f97316 0%, #e11d48 80%);
	color: #FFF;
	padding: 25px 100px;
	border-radius: 50px;
	font-size: 20px;
	font-weight: 700;
	text-decoration: none;
	font-family: 'Lato', sans-serif;
	margin-top: 50px;
	
	
}
.btn-case_more:hover {
	background: linear-gradient(90deg, #e11d48 0%, #f97316 80%);
	color: #FFF;
	padding: 25px 100px;
	border-radius: 50px;
	font-size: 20px;
	font-weight: 700;
	text-decoration: none;
	font-family: 'Lato', sans-serif;
}

@media screen and (min-width: 640px) {
    
    
    #sec_case_stusies .inner{
        margin-bottom: 0px;
    }

	
}

@media screen and (min-width: 1000px) {
    #sec_case_stusies{
        margin:0;
        padding:50px 0 80px 0;
        text-align: left;
    }
	#sec_case_stusies .inner{
        padding: 0 10px;
    }
	
	#sec_case_stusies .inner h1{
		font-size: 64px;

	}

	#sec_case_stusies .inner h1 span{
		font-size: 20px;

	}
	#sec_case_stusies .inner .activity_box p{
		text-align: center;
		font-size: 20px;
		font-weight: 500;
	}
	
}




.swiper-container{
    position: relative;
    height: auto;
    margin-top: 50px;
    padding-bottom: 30px;
	max-width: 1260px;
}

.swiper-wrapper{
    position: relative;
    
}

.swiper-scrollbar{
    position: absolute;
    bottom:0px;
}

.swiper-slide{
    text-align: center;
}

.swiper-slide img{
    width: 100%;
    
}

.swiper-slide a{
    color: #222;
    text-decoration: none;
}
.swiper-slide a:hover{
    color: #222;
    text-decoration:underline;
}
.swiper-slide .title{
    text-align: left;
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0;
	margin-left: 5px;
	margin-top: 5px;
	margin-bottom: 5px;
}
.swiper-slide .note{
    text-align: left;
    font-weight: 400;
    font-size: 14px;
    letter-spacing: 0;
	
	margin-left: 5px;
	overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4; /* 任意の行数を指定 */
}


@media screen and (min-width: 640px) {
    
    
    .swiper-slide img{
		width: 100%;
		max-width: 280px;
	}

	.swiper-slide .note{
		text-align: left;
		font-weight: 400;
		font-size: 14px;
		letter-spacing: 0;
		max-width: 280px;
		margin-left: 5px;
		overflow: hidden;
	  display: -webkit-box;
	  -webkit-box-orient: vertical;
	  -webkit-line-clamp: 4; /* 任意の行数を指定 */
	}

}




/* sec_top_press
------------------------------------------------------------*/

#sec_top_press{
    margin:0;
    padding:30px 0 0px 0;
    text-align: left;
	background: #F4F4F4;
}

#sec_top_press .inner{
    margin: 0 auto;
    max-width: 1400px;
    overflow: hidden;
    padding: 0 10px;
    margin-bottom: 0px;
}
#sec_top_press .inner h1{
    font-family: 'Lato', sans-serif;
	font-weight: 900;
	font-style: normal;
	font-size: 40px;
	line-height: 1.5;
	text-align: center;
    background-repeat:  no-repeat;       
    background-position:center center;
    background-size:contain;
	padding: 0 0 0 15px;
	box-sizing: border-box;
	margin-bottom: 50px;
	background: linear-gradient(90deg, #f97316 0%, #e11d48 80%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
	
}

#sec_top_press .inner h1 span{
	display: block;
	font-size: 20px;
	font-weight: bold;
	background: #0E172A;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	
}


@media screen and (min-width: 640px) {
    
    
    #sec_top_press .inner{
        margin-bottom: 0px;
    }

	
}

@media screen and (min-width: 1000px) {
    #sec_top_press{
        margin:0;
        padding:50px 0 80px 0;
        text-align: left;
    }
	#sec_top_press .inner{
        padding: 0 10px;
    }
	
	#sec_top_press .inner h1{
		font-size: 64px;

	}

	#sec_top_press .inner h1 span{
		font-size: 20px;

	}
	
}






/* sec_counseling
------------------------------------------------------------*/

#sec_counseling{
    margin:0;
    padding:50px 0 50px 0;
    text-align: left;
    background: url("../images/bg_sounseling.jpg") center top repeat;
    background-size: cover;
}

#sec_counseling .inner{
    margin: 0 auto;
    max-width: 1400px;
    overflow: hidden;
    padding: 0 20px;
}

#sec_counseling .inner .activity_box{
    overflow: hidden;
	position: relative;
	z-index: 5;
}



#sec_counseling .inner h1 {
    
	font-weight: 700;
	font-size: 32px;
	line-height: 1.6;
	
    background-repeat:  no-repeat;                         /* 逕ｻ蜒上�郢ｰ繧願ｿ斐＠繧呈欠螳�  */              
    background-position:center center;                     /* 逕ｻ蜒上�陦ｨ遉ｺ菴咲ｽｮ繧呈欠螳�  */
    background-size:contain;                               /* 逕ｻ蜒上�繧ｵ繧､繧ｺ繧呈欠螳�    */
	padding: 0 0 0 0px;
	box-sizing: border-box;
	margin-bottom: 30px;
	color: #FFF;
	text-align: center;
}


#sec_counseling .inner h1 span{
    display: block;
	font-size: 20px;
	font-weight: 900;
	font-family: 'Lato', sans-serif;
}



#sec_counseling .inner p{
	font-size: 16px;
	margin: 0 0 20px 0;
	color: #FFF;
	max-width: 900px;
	text-align: center;
}





#sec_counseling .btn_outer{
    width: 100%;
	margin: 20px 0 20px 0;
	text-align: center;
}

.btn-counseling_more {
	background-color: #fff;
            color: #333;
            padding: 20px 80px;
            border-radius: 50px;
            font-size: 20px;
            font-weight: 900;
			text-decoration: none;
			font-family: 'Lato', sans-serif;
}
.btn-counseling_more:hover {
	 background-color: #f97316;
            color: #FFF;
            padding: 20px 80px;
            border-radius: 50px;
            font-size: 20px;
            font-weight: 900;
			text-decoration: none;
			font-family: 'Lato', sans-serif;
}


@media screen and (min-width: 640px) {
    
	
    
}


@media screen and (min-width: 920px) {
    
    #sec_counseling{
        margin:0;
		padding:50px 0 50px 0;
		text-align: left;
		background: url("../images/bg_sounseling.jpg") center top repeat;
		background-size: cover;
		
    }
    
    #sec_counseling .inner{
        padding: 0 10px;
    }
    
    #sec_counseling .inner h1 {
        font-weight: 700;
		font-size: 48px;
		line-height: 1.6;
		background-repeat:  no-repeat;                         /* 逕ｻ蜒上�郢ｰ繧願ｿ斐＠繧呈欠螳�  */              
		background-position:center center;                     /* 逕ｻ蜒上�陦ｨ遉ｺ菴咲ｽｮ繧呈欠螳�  */
		background-size:contain;                               /* 逕ｻ蜒上�繧ｵ繧､繧ｺ繧呈欠螳�    */
		padding: 0 0 0 0px;
		box-sizing: border-box;
		margin-bottom: 30px;
		color: #FFF;
		text-align: left;
    }
    #sec_counseling .inner h1 span{
		display: block;
		font-size: 24px;
		font-weight: 900;
		font-family: 'Lato', sans-serif;
	}
	#sec_counseling .inner p{
		font-size: 20px;
		margin: 0 0 20px 0;
		color: #FFF;
		max-width: 900px;
		text-align: left;
	}

    #sec_counseling .btn_outer{
        width: 100%;
        margin: 20px 0 20px 0;
        text-align: left;
    }
    

    
}





/* sec_contact
------------------------------------------------------------*/

#sec_contact{
    margin:0;
    padding:30px 0 30px 0;
    text-align: left;
	background: #F4F4F4;
}

#sec_contact .inner{
    margin: 0 auto;
    max-width: 1200px;
    overflow: hidden;
    padding: 0 10px;
    margin-bottom: 0px;
}

#sec_contact .inner h1{
    font-family: 'Lato', sans-serif;
	font-weight: 900;
	font-style: normal;
	font-size: 40px;
	line-height: 1.5;
	text-align: center;
    background-repeat:  no-repeat;       
    background-position:center center;
    background-size:contain;
	padding: 0 0 0 15px;
	box-sizing: border-box;
	margin-bottom: 20px;
	background: linear-gradient(90deg, #f97316 0%, #e11d48 80%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
	
}

#sec_contact .inner h1 span{
	display: block;
	font-size: 20px;
	font-weight: bold;
	background: #0E172A;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	
}


#sec_contact .inner .footer_contact_box{
    overflow: hidden;
    display: block;
    padding: 0;
    margin-top: 0px;
    box-sizing: border-box;
    width: 100%;
}

#sec_contact .inner .footer_contact_box p.message{
    text-align: center;
    font-size: 18px;
    font-weight: 500;
    
    padding-bottom: 0px;
}


#sec_contact .inner .footer_contact_box .fcb_left{
    float: left;
    width: 100%;
    margin: 30px 0 10px 0;
    max-width: 1000px;
    box-sizing: border-box;
    text-align: center;
	border-top: 1px dotted #CCCCCC;
	padding-top: 20px;
}

#sec_contact .inner .footer_contact_box .fcb_left p{
    text-align: center;
    font-size: 14px;
}

#sec_contact .inner .footer_contact_box .fcb_right{
    float: left;
    width: 100%;
    margin: 0 0 30px 0;
    max-width: 1000px;
    box-sizing: border-box;
    text-align: center;
	border-top: 1px dotted #CCCCCC;
	padding-top: 20px;
}
#sec_contact .inner .footer_contact_box .fcb_left p.title{
    text-align: center;
    font-size: 20px;
    color: #28100B;
    font-family: 'Lato', sans-serif;
    font-weight: 900;
    line-height: 1.4;
	margin-bottom: 20px;
}
#sec_contact .inner .footer_contact_box .fcb_right p.title{
    text-align: center;
    font-size: 20px;
    color: #28100B;
    font-family: 'Lato', sans-serif;
    font-weight: 900;
    line-height: 1.4;
	margin-bottom: 40px;
}

#sec_contact .inner .footer_contact_box .fcb_left p.tel{
    text-align: center;
    font-size: 26px;
    color: #28100B;
    font-family: 'Lato', sans-serif;
    font-weight: 900;
    line-height: 1.4;
}
#sec_contact .inner .footer_contact_box .fcb_left p.businesshours{
    text-align: center;
    font-size: 12px;
    color: #28100B;
    font-weight: bold;
    margin-bottom: 10px;
}

a.fcontact_btn {
    background: linear-gradient(90deg, #f97316 0%, #e11d48 80%);
	color: #FFF;
	padding: 25px 100px;
	border-radius: 50px;
	font-size: 20px;
	font-weight: 700;
	text-decoration: none;
	font-family: 'Lato', sans-serif;
	margin-top: 50px;
}

a.fcontact_btn:hover {
    background: linear-gradient(90deg, #e11d48 0%, #f97316 80%);
	color: #FFF;
	padding: 25px 100px;
	border-radius: 50px;
	font-size: 20px;
	font-weight: 900;
	text-decoration: none;
	font-family: 'Lato', sans-serif;
}



@media screen and (min-width: 640px) {
    
    #sec_contact .inner .footer_contact_box{
        padding: 0 0px;
    }
    
    #sec_contact .inner .footer_contact_box .fcb_left p{
        font-size: 18px;
    }
    
    #sec_contact .inner .footer_contact_box .fcb_left p.tel{
        font-size: 46px;
    }
    #sec_contact .inner .footer_contact_box .fcb_left p.businesshours{
        font-size: 16px;
    }
    
   
    
}


@media screen and (min-width: 1000px) {
    
    #sec_contact{
        margin:0;
        padding:50px 0 30px 0;
        text-align: left;
    }
    
    #sec_contact .inner{
        padding: 0 10px;
    }
    
    #sec_contact .inner h1{
		font-size: 64px;

	}

	#sec_contact .inner h1 span{
		font-size: 20px;

	}
    
	#sec_contact h2{
		font-size: 22px;
        text-shadow:none;
        text-align: left;
	}
    #sec_contact .btn_outer{
        width: 100%;
        margin: 30px 0 0 0;
        text-align: left;
    }
    
    .btn_contact_more{
        font-size: 24px;
    }
    
    #sec_contact .inner .footer_contact_box{
        padding: 0;
    }
    #sec_contact .inner .footer_contact_box p.message{
        font-size: 18px;
    }
    #sec_contact .inner .footer_contact_box .fcb_left{
        float: left;
        width: 50%;
        margin: 30px 0;
        padding: 0px 0;
        max-width: 1000px;
        box-sizing: border-box;
        text-align: center;
        border-right: 1px dotted #CCCCCC;
		border-top:none;
    }


    #sec_contact .inner .footer_contact_box .fcb_right{
        float: left;
        width: 50%;
        margin: 30px 0 30px 0;
        padding: 0px 0;
        max-width: 1000px;
        box-sizing: border-box;
        text-align: center;
		border-top:none;
    }
    
}












/*
--------------------------------------- */

footer{
	clear: both;
	padding: 0;
	text-align: center;
	font-size: 12px;
    margin: 0 auto;
    background: none;
}


footer .inner{
    margin: 0 auto;
    max-width: 1280px;
    padding: 0 10px;
    overflow: hidden;
}


address{
    width: 100%;
    padding:0px 0 30px 0;
    text-align: center;
    font-style: normal;
    
}

address p{
    overflow: hidden;
    vertical-align: middle;
    margin-top: 10px;
    color: #212121;
    text-align: center;
    font-size: 15px;
    line-height: 1.7em;
    letter-spacing: 0.03em;
}

address p.fsubcatch{
    color: #0062B8;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.01em;
}

address p span.en{
	font-size: 90%;
}

address img{
    width: 100%;
    margin-right: 0;
    max-width:400px; 
}


address .logo_iso{
    margin-top: 20px;
}
address .logo_iso img{
    width: 45%;
    max-width: 170px;
    border: 1px solid #333;
    margin: 0 5px;
}



ul.fsub_lv1{
    margin: 0 auto;
    overflow: hidden;
    list-style: none;
}

ul.fsub_lv1 li {
    text-align: center;
    float: left;
    padding: 0 0;
    width: 100%;
    box-sizing: border-box;
}


ul.fsub_lv1 li a {
    color:#212121;
    font-size: 13px;
    display:block;
    text-decoration:none;
    padding:10px 0;
    margin:0 0 0 0;
    font-weight:normal;
    border-top: 1px dotted #CCCCCC;
    position: relative;
    font-weight: bold;
    
}
ul.fsub_lv1 li p{
    padding: 0 0 2px 5px;
    text-align: left;
    letter-spacing: 0.01em;
}
ul.fsub_lv1 li p.no-link{
    color:#212121;
    font-size: 15px;
    display:block;
    text-decoration:none;
    padding:10px 0 10px 5px;
    margin:0 0 0 0;
    font-weight:normal;
    border-top: 1px dotted #CCCCCC;
    position: relative;
    font-weight: bold;
}

ul.fsub_lv1 li a:before {
    content: '';
    position: absolute;
    top: 50%;
    left:0;
    display: inline-block;
    width: 0;
    height: 1px;
    background-color: #666666;
}

ul.fsub_lv1 li a:hover{
    color:#FF4000;
    text-decoration: none;
}



ul.fsub_lv2{
    margin: 0 auto;
    overflow: hidden;
    list-style: none;
}

ul.fsub_lv2 li {
    text-align: center;
    float: left;
    padding: 0 0 0 0px;
    width: 100%;
    box-sizing: border-box;
    border-bottom: none;
}



ul.fsub_lv2 li a {
    color:#212121;
    font-size: 13px;
    display:block;
    text-decoration:none;
    padding: 10px 0 10px 40px;
    margin:0 0 0 0px;
    font-weight:normal;
    border-top: 1px dotted #CCCCCC;
    position: relative;
    text-align: left;
    font-weight: bold;
    
}

ul.fsub_lv2 li a:before {
    content: '';
        position: absolute;
        top: 48%;
        left:25px;
        display: inline-block;
        width: 5px;
        height: 5px;
        border-radius: 5px;
        background-color: #FFF;
}

ul.fsub_lv2 li a:hover{
    color:#FF4000;
    text-decoration: none;
}



ul.fsub_lv3{
    margin: 0 auto;
    overflow: hidden;
    list-style: none;
}

ul.fsub_lv3 li {
    text-align: center;
    float: left;
    padding: 0 0 0 0px;
    margin:  0 0 0 0px;
    width: 100%;
    box-sizing: border-box;
    border-bottom: none;
    text-align: left;
}



ul.fsub_lv3 li a {
    color:#212121;
    font-size: 13px;
    display:block;
    text-decoration:none;
    padding: 10px 0 10px 40px;
    margin:0 0 0 0px;
    font-weight:normal;
    border-top: 1px dotted #CCCCCC;
    position: relative;
    
}

ul.fsub_lv3 li a:before {
    content: '';
        position: absolute;
        top: 48%;
        left:25px;
        display: inline-block;
        width: 5px;
        height: 5px;
        border-radius: 5px;
        background-color: #FFF;
}

ul.fsub_lv3 li a:hover{
    color:#fff961;
    text-decoration: none;
}


.copyright{
    width: 100%;
    margin: 0 auto;
    text-align: center;
	background: linear-gradient(90deg, #f97316 0%, #e11d48 80%);
}
.copyright .inner{
    margin: 0 auto;
    max-width: 1400px;
    padding: 20px 10px !important;
    overflow: hidden;
}


small{
    color: #FFF;
    font-size: 14px;
}


#sec_fmenu{
    
}

#sec_fmenu .inner{
    padding: 70px 0 50px 0;
}

.flogo{
    max-width: 180px;
    margin-top: 0px;
    margin-bottom: 0px;
}


@media screen and (min-width: 640px) {

    
    
}

@media screen and (min-width: 1000px) {
    
    .flogo{
        max-width: 220px;
        margin-top: 0px;
        margin-bottom: 20px;
    }   
    
    footer .inner{
        margin: 0 auto;
        max-width: 1400px;
        padding: 35px 0px;
        overflow: hidden;
    }

    
    address{
        float: left;
        width: 400px;
        height: 320px;
        padding: 0 0px 0px 20px;
        text-align: left;
        font-style: normal;
    }

    address p{
        margin-top: 10px;
        text-align: left;
    }

    address img{
        float: left;
        width: 100%;
        max-width:400px; 
        margin-right: 20px;
    }
    
    address .logo_iso img{
        margin: 0 30px 0 0;
    }
    
    ul.fsub_lv1{
        float:left;
        margin:10px 30px 0 50px;
        overflow: hidden;
        list-style: none;
    }
    
    .fsub_150{
        width: 170px;
    }
    .fsub_300{
        width: 280px;
    }
    .fsub_280{
        width: 280px;
        margin-right: 0 !important;
    }
    .fsub_400{
        width: 400px;
        margin-right: 0 !important;
    }
    
    
    ul.fsub_lv1 li {
        width: 100%;
        text-align: left;
        float: left;
        padding: 0 2px 5px 2px;
        border-top: none;
        margin-bottom: 15px;
        border-bottom: 1px dotted #999;
    }
	
	ul.fsub_lv1 li.border-none{
		border-bottom: none;
	}
	
    
    ul.fsub_lv1 li p{
        padding: 0 0 2px 0;
        
        letter-spacing: 0.01em;
        text-align: left;
    }
    ul.fsub_lv1 li p.no-link{
		padding: 0 2px 2px 2px;
        border-top: none;
		font-size: 18px;
		font-weight: bold;
		border-bottom: 1px dotted #999;
    }
    
    
    
    ul.fsub_lv1 li a {
        text-decoration: none;
        color: #212121;
        font-size: 16px;
        font-weight: 500;
        letter-spacing: 0.02em;
        border: none;
        padding: 0 0 0 0px;
    }
    
    
    
    ul.fsub_lv2{
        float:left;
        margin: 10px auto;
        overflow: hidden;
        list-style: none;
        
    }
    ul.fsub_lv2 li {
        width: 100%;
        text-align: left;
        float: left;
        padding: 0 0 0 10px;
        border-top: none;
        margin-bottom: 5px;
        border-bottom: none;
    }
    
    
    ul.fsub_lv2 li a {
        text-decoration: none;
        color: #212121;
        font-size: 15px;
        letter-spacing: 0.01em;
        border: none;
        padding: 0 0 0 20px;
        font-weight: 500;
    }
    
    ul.fsub_lv2 li a:before {
        content: '';
        position: absolute;
        top: 42%;
        left:5px;
        display: inline-block;
        width: 5px;
        height: 5px;
        border-radius: 5px;
        background-color: #212121;
    }
    
    ul.fsub_lv3{
        display: inline-grid;
        column-gap: 4em;
        grid-template-columns: repeat(2, auto);
        margin: 10px auto;
    }
    ul.fsub_lv3 li {
        width: 100%;
        text-align: left;
        float: left;
        padding: 0 0 0 10px;
        border-top: none;
        margin-bottom: 10px;
        border-bottom: none;
    }
    
    
    ul.fsub_lv3 li a {
        text-decoration: none;
        color: #212121;
        font-size: 15px;
        letter-spacing: 0.01em;
        border: none;
        padding: 0 0 0 20px;
        font-weight: 500;
    }
    
    ul.fsub_lv3 li a:before {
        content: '';
        position: absolute;
        top: 42%;
        left:5px;
        display: inline-block;
        width: 5px;
        height: 5px;
        border-radius: 5px;
        background-color: #212121;
    }
    
	

}
@media screen and (min-width: 1000px) {
    
    

    
}




/* ------------------------------------------------------------------------------------ */
/* etc...										*/
/* ------------------------------------------------------------------------------------ */
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
 .clearfix {display: inline-block;}
 

.pagetop {
	display: none;
	position: fixed;
	bottom: 10px;
	right: 10px;
    width: 70px;
}
@media screen and (min-width: 920px) {
    .pagetop {
        display: none;
        position: fixed;
        bottom: 80px;
        right: 20px;
        width: 70px;
    }

}







/* sec_top_category
------------------------------------------------------------*/

#sec_top_category{
    margin:0;
    padding:30px 0 0px 0;
    text-align: left;
}

#sec_top_category .inner{
    margin: 0 auto;
    max-width: 1400px;
    overflow: hidden;
    padding: 0 10px;
    margin-bottom: 0px;
}


#sec_top_category h1 {
    width: 100%;
    margin: 0px 0 10px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 22px;
    color: #000000;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

.category_box{
    overflow: hidden;
    position: relative;
    padding-top: 35px;
}
.cat_name{
    position: absolute;
    text-align: right;
    font-size: 32px;
    font-weight: 900;
    letter-spacing: 0.01em;
    font-family: "Lato";
    line-height: 1;
    right: 0px;
    top: 0px;
    color: #FFFFFF;
}
.cat_name2{
    position: absolute;
    text-align: right;
    font-size: 32px;
    font-weight: 900;
    letter-spacing: 0.01em;
    font-family: "Lato";
    line-height: 1;
    right: 0px;
    top: 0px;
    color: #FED2D3;
}

.category-list {
	display: grid;
    grid-template-columns: repeat(2, 1fr);	/*2列にする指定。4列にしたければrepeat(4, 1fr)とする。*/
	gap: 1vw;	/*ブロックの間に空けるスペース*/
	list-style: none;
}

.category-list a{
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
    color: #212121;
}

.category-item {
	width: 100%;
	margin: 0 0 0 0;
	padding: 10px 10px 10px 20px;
	box-sizing: border-box;
	background: #FFFFFF;
	border: 1px solid #EEEEEE;
    display: flex;
    text-align: center;
	transition: 0.2s linear;
    position: relative;
}


.category-item:hover {
  color: #fff;
}
.category-item:hover::before {
  transform: scaleX(1);
  transform-origin: left;
}
.category-item::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: #FA6805;
  transform: scaleX(0);
  transform-origin: right;
  transition: all 0.5s ease;
  transition-property: transform;
}




.category-item2:hover{
    outline: 2px solid #FA6805;/*outlineでドットの線を追加*/
    outline-offset: -3px;/*outline-offsetの値を-15pxにして内側に調整*/
    transition: 0.2s linear;
    /* border: 1px solid #FA6805; */
    /* background: #fff2ea; */
    /*
    transition: 0.2s linear;
    background-position: right center;
    background-size: 200% auto;
    -webkit-animation: pulse 2s infinite;
    animation: ripple 1.5s infinite;
    */
}
@keyframes ripple {
  0% {box-shadow: 0 0 0 0 #FA6805;}
  70% {box-shadow:  0 0 0 10px rgb(27 133 251 / 0%);}
  100% {box-shadow: 0 0 0 0 rgb(27 133 251 / 0%);}
}

.category-item img{
	vertical-align:middle;
	margin-right: 20px;
    
}

.category-img {
    width: 80px;
    z-index: 10;
}

.category-name {
    flex: 1;
    margin-top:auto;
    margin-bottom: auto;
    height: 40px;
    line-height: 1.2;
    border-left: 1px solid #EEEEEE;
    position: relative;
}
.category-name p {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform : translate(-50%,-50%);
    transform : translate(-50%,-50%);
    width: 100%;
}


@media screen and (min-width: 640px) {
    
    
    #sec_top_category .inner{
        margin-bottom: 0px;
    }

    
    #sec_top_category h1 {
        margin: 0px 0 40px 0;
        font-size: 32px;
    }
    
    .category_box{
        overflow: hidden;
        position: relative;
        padding-top: 50px;
    }
    .cat_name{
        text-align: right;
        font-size: 72px;
        right: 10px;
        top: 30px;
    }
    .cat_name2{
        text-align: left;
        font-size: 72px;
        left: 10px;
        top: 10px;
    }
	
	.category-list {
		display: grid;
		grid-template-columns: repeat(3, 1fr);	/*3列にする指定。4列にしたければrepeat(4, 1fr)とする。*/
		gap: 1vw;	/*ブロックの間に空けるスペース*/
		list-style: none;
	}
	
}

@media screen and (min-width: 1000px) {
    #sec_top_category{
        margin:0;
        padding:50px 0 0px 0;
        text-align: left;
    }
    #sec_top_category .inner{
        padding: 0 10px;
    }
	.cat_name{
        font-size: 120px;
        right: 10px;
        top: 0px;
    }
    .cat_name2{
        font-size: 120px;
        left: 10px;
        top: -10px;
    }
	
	.category-list {
		display: grid;
		grid-template-columns: repeat(4, 1fr);	/*3列にする指定。4列にしたければrepeat(4, 1fr)とする。*/
		gap: 1.5vw;	/*ブロックの間に空けるスペース*/
		list-style: none;
	}

	
}





/* sec_top_brand
------------------------------------------------------------*/

#sec_top_brand{
    margin:0;
    padding:30px 0 0px 0;
    text-align: left;
}

#sec_top_brand .inner{
    margin: 0 auto;
    max-width: 1400px;
    overflow: hidden;
    padding: 0 10px;
    margin-bottom: 50px;
}


#sec_top_brand h1 {
    width: 100%;
    margin: 0px 0 10px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 22px;
    color: #000000;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

.brand_box{
    overflow: hidden;
    position: relative;
    padding-top: 35px;
}

.brand-list {
	display: grid;
    grid-template-columns: repeat(2, 1fr);	/*2列にする指定。4列にしたければrepeat(4, 1fr)とする。*/
	gap: 1vw;	/*ブロックの間に空けるスペース*/
	list-style: none;
}

.brand-list a{
    text-decoration: none;
    font-size: 16px;
    font-weight: 700;
    color: #212121;
}

.brand-item {
	width: 100%;
	margin: 0 0 0 0;
	padding: 15px 10px 15px 10px;
	box-sizing: border-box;
	background: #000000;
	border: 1px solid #EEEEEE;
    display: flex;
    text-align: center;
	transition: 0.2s linear;
    position: relative;
    color: #FFF;
}


.brand-item:hover {
  color: #fff;
}
.brand-item:hover::before {
  transform: scaleX(1);
  transform-origin: left;
}
.brand-item::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: #FA6805;
  transform: scaleX(0);
  transform-origin: right;
  transition: all 0.5s ease;
  transition-property: transform;
}



.brand-name {
    flex: 1;
    margin-top:auto;
    margin-bottom: auto;
    height: 40px;
    line-height: 1.2;
    position: relative;
}
.brand-name p {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform : translate(-50%,-50%);
    transform : translate(-50%,-50%);
    width: 100%;
}


.brand_color_black {
	background: #000000 !important;
}
.brand_color_bull {
	background: #231716 !important;
}
.brand_color_gymgarage {
	background: #231F20 !important;
}
.brand_color_pilatex {
	background: #89491B !important;
}
.brand_color_tuffstuff {
	background: #35487B !important;
}
.brand_color_lifefitness {
	background: #A6192E !important;
}
.brand_color_matrix {
	background: #000000 !important;
}


@media screen and (min-width: 640px) {
    
    
    #sec_top_brand .inner{
        margin-bottom: 0px;
    }

    
    #sec_top_brand h1 {
        margin: 0px 0 40px 0;
        font-size: 32px;
    }
    
    .brand_box{
        overflow: hidden;
        position: relative;
        padding-top: 50px;
    }
    
	
	.brand-list {
		display: grid;
		grid-template-columns: repeat(3, 1fr);	/*3列にする指定。4列にしたければrepeat(4, 1fr)とする。*/
		gap: 1vw;	/*ブロックの間に空けるスペース*/
		list-style: none;
	}
	
}

@media screen and (min-width: 1000px) {
    #sec_top_brand{
        margin:0;
        padding:50px 0 0px 0;
        text-align: left;
    }
    #sec_top_brand .inner{
        padding: 0 10px;
    }
	
	.brand-list {
		display: grid;
		grid-template-columns: repeat(4, 1fr);	/*3列にする指定。4列にしたければrepeat(4, 1fr)とする。*/
		gap: 1.5vw;	/*ブロックの間に空けるスペース*/
		list-style: none;
	}

	
}





/* sec_top_newarrivals
------------------------------------------------------------*/

#sec_top_newarrivals{
    margin:0;
    padding:30px 0 0px 0;
    text-align: left;
}

#sec_top_newarrivals .inner{
    margin: 0 auto;
    max-width: 1400px;
    overflow: hidden;
    padding: 0 10px;
    margin-bottom: 50px;
}


#sec_top_newarrivals h1 {
    width: 100%;
    margin: 0px 0 0px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 22px;
    color: #000000;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

.newarrivals_box{
    overflow: hidden;
    position: relative;
    padding-top: 35px;
}

@media screen and (min-width: 640px) {
    
    
    #sec_top_newarrivals .inner{
        margin-bottom: 20px;
    }

    
    #sec_top_newarrivals h1 {
        margin: 0px 0 0px 0;
        font-size: 32px;
    }
    
    .newarrivals_box{
        overflow: hidden;
        position: relative;
        padding-top: 50px;
    }
    
	
	
	
}

@media screen and (min-width: 1000px) {
    #sec_top_newarrivals{
        margin:0;
        padding:50px 0 0px 0;
        text-align: left;
    }
    #sec_top_newarrivals .inner{
        padding: 0 10px;
    }
	
	
}




#sec_top_newarrivals .inner .technical_box{
    overflow: hidden;
    display: block;
    padding: 0;
    margin-top: 0px;
    box-sizing: border-box;

    
}

#sec_top_newarrivals .inner .technical_box p{
    font-size: 14px;
    font-weight: normal;
    color: #1F1F1F;
    margin-bottom: 10px;
    line-height: 2;
}

.slider {
    width: 80%;
    margin: 50px auto;
    
}

.slider .technical_list{
    padding: 0 0px;
    box-sizing: border-box;
    max-width: 100%;
    background: none;
    
}
.slider .technical_list .plist_parts{
    background: none;
    padding-bottom: 10px;
    max-width: 300px;
    
    text-align: center;
    margin: 0 auto;
    flex-grow: 1;
}

.slider .technical_list .plist_parts h2{
    font-size: 16px;
    color: #111111;
    text-align: center;
    padding: 0 20px;
    box-sizing: border-box;
    position: relative;
    margin: 15px 0 20px 0;
}

.slider .technical_list .plist_parts h2:after {
    position: absolute;
    content: "";
    left:40%;
    display: block;
    border-bottom: solid 2px #111111;
    bottom: -10px;
    width: 20%;
}


.slider .technical_list .plist_parts p{
    font-size: 13px !important;
    padding: 0 0px;
    margin-top: 5px;
    box-sizing: border-box;
    letter-spacing: 0.02em;
    text-align: left;
}

.slider .technical_list .plist_parts p.title{
    font-size: 14px !important;
    padding: 0 0px;
    margin-top: 10px;
    margin-bottom: 0;
    box-sizing: border-box;
    letter-spacing: 0.02em;
    font-weight: bold !important;
}

.slider .technical_list .plist_parts a{
    text-decoration: none;
}

.slider .technical_list .plist_parts a:hover img {
    opacity: 0.8;
    transform: scale(1.1);
}

.slider .technical_list figure {
    width: 100%;
    max-width: 300px;
    max-height: 300px;
    overflow: hidden;
}

.slider .technical_list img{
    width: 100%;
    max-width: 300px;
    transition: .4s;
    
}




@media screen and (min-width: 640px) {
    
    #sec_top_newarrivals .inner .technical_box{
        padding: 0 20px;
    }
    #sec_top_newarrivals .inner .technical_box p{
        font-size: 16px;
    }
    a.technical_btn {
        margin: 40px 0 50px 35px;
        font-size: 22px;
        max-width: 400px;
    }
    
    .slider {
        width: 96%;
        margin: 50px auto;
        
    }
    .slider .technical_list{
        padding: 0 0px;
        box-sizing: border-box;
        max-width: 300px;
        box-sizing: border-box;
    }
    .slider .technical_list .plist_parts{
        margin: 0 10px;
    }
    
    
    .slider .technical_list .plist_parts h2{
        font-size: 18px;
    }
}

@media screen and (min-width: 920px) {

    
    
}









/* sec_top_newmachine
------------------------------------------------------------*/

#sec_top_newmachine{
    margin:0;
    padding:30px 0 30px 0;
    text-align: left;
}

#sec_top_newmachine .inner{
    margin: 0 auto;
    max-width: 1400px;
    overflow: hidden;
    padding: 0 10px;
    margin-bottom: 50px;
}


#sec_top_newmachine h1 {
    width: 100%;
    margin: 0px 0 10px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 22px;
    color: #000000;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

.newmachine_box{
    overflow: hidden;
    position: relative;
    padding-top: 35px;
}

#sec_top_newmachine .inner .newmachine_banner {
    width: 100%;
    margin: 0px auto;
    display: block;
}

#sec_top_newmachine .inner .newmachine_list{
    padding: 0 0px;
    box-sizing: border-box;
    max-width: 100%;
    margin-bottom: 10px;
}

#sec_top_newmachine .inner .newmachine_list img{
    width: 100%;
    border-radius: 6px;
}

#sec_top_newmachine .inner .newmachine_list img:hover{
    opacity: 0.8;
}


@media screen and (min-width: 640px) {
    
    
    #sec_top_newmachine .inner{
        margin-bottom: 50px;
    }

    
    #sec_top_newmachine h1 {
        margin: 0px 0 40px 0;
        font-size: 32px;
    }
    
    .newmachine_box{
        overflow: hidden;
        position: relative;
        padding-top: 50px;
    }
    
	#sec_top_newmachine .inner .newmachine_banner {
        width: 100%;
        margin: 0px auto;
        display: flex;
    }
	#sec_top_newmachine .inner .newmachine_list{
        padding: 0 20px;
        box-sizing: border-box;
        width: calc(100%/2);
    }
    #sec_top_newmachine .inner .newmachine_list:first-child{
        padding: 0 20px 0 0px;
    }
    #sec_top_newmachine .inner .newmachine_list:last-child{
        padding: 0 0 0 20px;
    }
}

@media screen and (min-width: 1000px) {
    #sec_top_newmachine{
        margin:0;
        padding:50px 0 10px 0;
        text-align: left;
    }
    #sec_top_newmachine .inner{
        padding: 0 10px;
    }
	

}





/* sec_top_discounted
------------------------------------------------------------*/

#sec_top_discounted{
    margin:0;
    padding:30px 0 30px 0;
    text-align: left;
    background: #EBEBEB;
}

#sec_top_discounted .inner{
    margin: 0 auto;
    max-width: 1400px;
    overflow: hidden;
    padding: 0 10px;
    margin-bottom: 50px;
}


#sec_top_discounted h1 {
    width: 100%;
    margin: 0px 0 10px 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 22px;
    color: #000000;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: "Lato";
    padding-left: 2px;
}

.discounted_box{
    overflow: hidden;
    position: relative;
    padding-top: 35px;
}

.productlist-outer{
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    margin-top: 10px;
	margin-bottom: 10px;
}

.productlist-box{
    text-align: center;
    width: 50%;
    margin-bottom: 40px;
    padding: 0 10px;
    box-sizing: border-box;
}

.productlist-box img{
    width: 100%;
    max-width: 330px;
}

.productlist-box a{
    color: #222;
    text-decoration: none;
}
.productlist-box a:hover{
    color: #222;
    text-decoration:none;
}

.productlist-box a:hover img{
    opacity: 0.7;
}

.productlist-box .title{
    text-align: left;
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0;
    line-height: 1.4;
    margin-bottom: 5px;
}
.productlist-box .price{
    text-align: left;
    font-weight: 600;
    font-size: 16px;
    letter-spacing: 0;
}

.productlist-box .price span{
    font-size: 12px;
    font-weight: 500;
}

.productlist-box .tag{
    text-align: left;
    margin: 10px 0 10px 0;
}

.productlist-box .tag .category{
    text-align: left;
    font-weight: 500;
    font-size: 12px;
    letter-spacing: 0;
    background: #666666;
    display: inline-block;
    color: #FFF;
    padding: 3px 10px 5px 10px;
    margin-right: 10px;
    margin-bottom: 5px;
}
.productlist-box .tag .brand{
    text-align: left;
    font-weight: 500;
    font-size: 12px;
    letter-spacing: 0;
    background: #222;
    display: inline-block;
    color: #FFF;
    padding: 3px 10px 5px 10px;
    margin-right: 10px;
    margin-bottom: 5px;
}
.productlist-box .tag p:first-child{
    margin-left: 0px;
}


#sec_top_discounted .inner .btn_more{
    width: 100%;
    margin: 0px 0 0 0;
    text-align: center;
}

.tokka_btn {
  display: inline-block;
    width: 100%;
  max-width: 600px;
  line-height: 60px;
  text-align: center;
  text-decoration: none;
  color: #fff;
  background-color: #FA6805;
}
.tokka_btn a {
  display: inline-block;
    width: 100%;
  max-width: 600px;
  line-height: 60px;
  text-align: center;
  text-decoration: none;
  color: #fff;
  background-color: #FA6805;
  position: relative;
    font-size: 18px;
    font-weight: 600;
}
.tokka_btn a::before {
  border-right: 2px solid #fff;
  border-top: 2px solid #fff;
  bottom: 0;
  content: "";
  height: 7px;
  width: 7px;
  margin: auto;
  position: absolute;
  right: 30px;
  top: 0;
  transform: rotate(45deg);
  transition: right .3s;
}
.tokka_btn a:hover::before {
  right: 25px;
}


@media screen and (min-width: 640px) {
    
    
    #sec_top_discounted .inner{
        margin-bottom: 50px;
    }

    
    #sec_top_discounted h1 {
        margin: 0px 0 40px 0;
        font-size: 32px;
    }
    
    .discounted_box{
        overflow: hidden;
        position: relative;
        padding-top: 50px;
    }
    .productlist-outer{
        margin-top: 10px;
		margin-bottom: 20px;
    }

    .productlist-box{
        text-align: center;
        width: calc(100%/2);
        margin-bottom: 40px;
    }

    .productlist-box .tag .category{
        font-size: 14px;
    }
    .productlist-box .tag .brand{
        font-size: 14px;
    }
    
    
}

@media screen and (min-width: 1000px) {
    #sec_top_discounted{
        margin:0;
        padding:50px 0 10px 0;
        text-align: left;
    }
    #sec_top_discounted .inner{
        padding: 0 10px;
    }
	
     .productlist-box{
        text-align: center;
        width: 25%;
        margin-bottom: 40px;
    }
	.productlist-box .title{
        font-size: 18px;
    }
    .productlist-box .price{
        font-size: 16px;
    }
}








/* sec_top_tenji
------------------------------------------------------------*/

#sec_top_tenji{
    margin:0;
    padding:40px 0 30px 0;
    text-align: left;
}

#sec_top_tenji .inner{
    margin: 0 auto;
    max-width: 1400px;
    overflow: hidden;
    padding: 0 10px;
    margin-bottom: 50px;
}


.tenji_box{
    text-align: center;
    margin: 0 auto;
    flex-grow: 1;
    vertical-align: bottom;
    width: 100%;
    position: relative;
    vertical-align: bottom;
}

.tenji_box a:hover{
    opacity:0.9;
}

.tenji_box img{
    width: 100%;
    max-width: 100%;
    transition: .4s;
    border-radius: 10px;
    
}

.tenji_box h2{
    position: absolute;
    top: 45%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    color: #FFF;
    font-size: 22px;
    width: 100%;

}



.tenji_box h2 span{
    display: block;
    font-size: 16px;
    font-weight: 500;
    line-height: 1;
    margin-top: 5px;
}

@media screen and (min-width: 640px) {
    
    
    #sec_top_tenji .inner{
        margin-bottom: 50px;
    }

    .tenji_box{
        max-width: 100%;
        text-align: center;
        margin: 0 auto;
        flex-grow: 1;
        border-radius: 10px;
        margin-bottom: 0px;
    }
    .tenji_box h2{
        font-size: 26px;
        top: 45%;
    }
    .tenji_box h2 span{
        font-size: 20px;
        margin-top: 5px;
    }
    
	
}

@media screen and (min-width: 1000px) {
    #sec_top_tenji{
        margin:0;
        padding:50px 0 10px 0;
        text-align: left;
    }
    #sec_top_tenji .inner{
        padding: 0 10px;
    }
	.tenji_box h2{
        font-size: 26px;
        top: 50%;
    }
    .tenji_box h2 span{
        font-size: 20px;
        margin-top: 10px;
    }

}
















#sub_title{
    height: 150px;
    margin-top: 60px;
    background: #F97216 url(../images/header_bg.jpg) right top no-repeat;
    background-size: cover;
    background-repeat: no-repeat;
}
#sub_title .inner{
    margin: 0 auto;
    max-width: 1400px;
    overflow: hidden;
    padding: 0 15px;
}


#sub_title .inner h1{
    width: 100%;
    margin: 0 0 0 0;
    position: relative;
    display: inline-block;
    text-align: left;
    font-size: 30px;
    color: #FFF;
    box-sizing: border-box;
    line-height: 1.7em;
    font-weight: 600;
    padding: 45px 0 4px 0;
    letter-spacing: 0.01em;
}

#sub_title .inner h1 span{
    display: block;
    font-size: 14px;
    font-weight: normal;
    color:#B8193F;
    line-height: 16px;
    font-family: 'Lato';
    font-weight: 900;
    text-align: left;
}



/*  画面サイズが640pxまで  */
@media screen and (min-width: 700px) {
    #sub_title{
        height: 150px;
        margin-top: 60px;
		
    }
    #sub_title .inner h1{
        padding: 45px 0 0 0;
        font-size: 30px;
    }
    #sub_title .inner h1 span{
        font-size: 14px;
        line-height: 20px;
    }
    
}



@media screen and (min-width: 920px) {
    
    #sub_title{
        height: 200px;
        margin-top: 100px;
		
    }
    #sub_title .inner h1{
        padding: 60px 0 0 0;
        font-size: 34px;
    }
    #sub_title .inner h1 span{
        font-size: 14px;
        line-height: 24px;
    }
}




 
/*-----------  #breadcrumb  -----------*/

#breadcrumb{
	width:100%;
    height: 45px;
    background: #EDEDED;
    /*margin-bottom: 10px;*/
    padding:0 0 0 0;
    
}


#breadcrumb .inner{
    margin: 0 auto;
    padding: 0 10px;
    max-width: 1400px;
    box-sizing: border-box;
}

#breadcrumb ul{
    width: 100%;
    padding:0;
    text-align:left;
    color: #222222;
    font-size:12px;
    letter-spacing: 1px;
    padding-top: 10px;
    list-style: none;
}

#breadcrumb ul i{
    font-size:14px;
    margin:0 0 0 10px;
}

#breadcrumb ul li {
	margin: 0 10px 0 0;
	text-align: center;
	float: left;
}

#breadcrumb ul li a{
	text-decoration:none;
	color:#333333;
	padding:10px 0 10px 0;
	margin:0 0 0 0;
	font-weight:normal; 
    font-size: 12px;
}



@media screen and (min-width: 640px) {
    #breadcrumb .inner{
        padding: 0 10px;
    }
    
    #breadcrumb ul li a{
        font-size: 14px;
    }
    
}



/* sec_effect_main
------------------------------------------------------------*/

#sec_effect_main{
    margin:30px 0 30px 0;
    padding:0 0 0 0;
    text-align: left;
    vertical-align: bottom;
    position: relative;
}



#sec_effect_main .inner{
    margin: 0 auto;
	width: 100%;
    max-width: 1400px;
	padding: 0 10px;
	box-sizing: border-box;
    position: relative;
}


#sec_effect_main .inner p{
    font-size: 2.6vw;
    font-weight: bold;
	text-align: center;
	color: #FF3F00;
}

#sec_effect_main .inner p.txt_bk{
    font-size: 2.6vw;
    font-weight: bold;
	text-align: center;
	color: #28100B;
}

.price_outline{
	background: #FA7916;
	padding: 15px 30px 10px 30px;
	border-radius: 10px;
	margin-top: 20px;
}

ul.price_naiyou {
  column-count: 1;        /* 列数を3列に指定 */
  column-gap: 20px;       /* 各列の間隔を調整する */
}
ul.price_naiyou li {
	color: #FFF;
	margin-left: 20px;
	font-size: 16px;
	font-weight: 600;
	margin-bottom: 5px;
}


table.table_price1 {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 18px;
}
table.table_price1 th {
  width: 22%;
  background: #FF4B00;
	color: #FFF;
  border: 1px solid #FFF;
  box-sizing: border-box;
  padding: 15px;
  vertical-align: middle;
  font-weight: bold;
  text-align: center;
}
table.table_price1 td {
  background: #FFE6DB;
  border: 1px solid #FFF;
  box-sizing: border-box;
  padding: 15px 20px;
  vertical-align: top;
  text-align: left;
}

table.table_price1 tr:nth-child(odd) td {
  background: #FFE6DB;
}
table.table_price1 tr:nth-child(even) td {
  background: #FFEDE6;
}


table.table_price2 {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 16px;
	margin-top: 10px;
}
table.table_price2 th {
  background: #FF4B00;
	color: #FFF;
  border: 1px solid #FFF;
  box-sizing: border-box;
  padding: 15px;
  vertical-align: middle;
  font-weight: bold;
  text-align: center;
}
table.table_price2 td {
  background: #FFE6DB;
  border: 1px solid #FFF;
  box-sizing: border-box;
  padding: 15px 20px;
  vertical-align: top;
  text-align: left;
}

table.table_price2 tr:nth-child(odd) td {
  background: #FFE6DB;
}
table.table_price2 tr:nth-child(even) td {
  background: #FFEDE6;
}


@media all and (max-width: 600px) {
  table.table_price1 th, table.table_price1 td {
    display: block;
    width: 100%;
    border-bottom: none;
	  font-size: 15px;
  }
  table.table_price1 tr:last-child td:last-child {
    border-bottom: none;
  }
	
	table.table_price2 th, table.table_price2 td {
    
	  font-size: 14px;
  }
	
}


@media screen and (min-width: 700px) {

    
    
    
    
}

@media screen and (min-width: 920px) {
    #sec_effect_main{
        margin:50px 0 80px 0;
        padding:0 0 0 0;
    }
    
    #sec_effect_main .inner p{
        font-size: 34px;
    }
    
	#sec_effect_main .inner p.txt_bk{
        font-size: 26px;
    }
	
	.price_outline{
		background: #FA7916;
		padding: 20px 80px 15px 80px;
		border-radius: 10px;
		margin-top: 20px;
	}

	ul.price_naiyou {
	  column-count: 2;        /* 列数を3列に指定 */
	  column-gap: 20px;       /* 各列の間隔を調整する */
	}
	ul.price_naiyou li {
		color: #FFF;
		margin-left: 50px;
		font-size: 23px;
		font-weight: 600;
		margin-bottom: 5px;
	}
	
}








/* sec_effect
------------------------------------------------------------*/

#sec_effect{
    margin:30px 0 30px 0;
    padding:0 0 0 0;
    text-align: left;
    vertical-align: bottom;
    position: relative;
}

#sec_effect .outer_white{
    padding:30px 0 40px 0;
}


#sec_effect .outer_gray{
    background: #F4F4F4;
	padding:30px 0 40px 0;
}

#sec_effect .inner{
    margin: 0 auto;
	width: 100%;
    max-width: 1400px;
	padding: 0 10px;
	box-sizing: border-box;
    position: relative;
}


#sec_effect .inner h1 {
    
    position: relative;
    font-weight: 600;
    font-size: 20px;
    padding-bottom: 5px;
	margin-bottom: 30px;
	
}
#sec_effect .inner h1:before {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 4px #F97316;
    bottom: -3px;
    width: 100px;
	
    
}
#sec_effect .inner h1:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 4px #E11D48;
    bottom: -3px;
    width: 50px;
    
}


#sec_effect .inner p{
    font-size: 15px;
    font-weight: 400;
	margin-bottom: 18px;
	line-height: 1.8;
}

#sec_effect .inner p span{
	font-weight: 800;
	color: #FF4B00;
}


#sec_effect .inner p.orange{
    font-size: 16px;
    font-weight: 800;
	margin-bottom: 18px;
	line-height: 1.8;
	color: #FF4B00;
}
#sec_effect .inner p.orange24{
    font-size: 18px;
    font-weight: 800;
	margin-bottom: 18px;
	line-height: 1.8;
	color: #FF4B00;
}
#sec_effect .inner p.navy{
    font-size: 16px;
    font-weight: 800;
	margin-bottom: 18px;
	line-height: 1.8;
	color: #0F172A;
}
#sec_effect .inner p.navy24{
    font-size: 18px;
    font-weight: 800;
	margin-bottom: 18px;
	line-height: 1.8;
	color: #0F172A;
}
ul.check {
	padding: 0 1em 1em 3em;
	position: relative;
	list-style-image: url(../images/icon_check.png);
}

ul.check li {
	padding: 0.5em 0;
	list-style-type: none!important;/*ポチ消す*/
	font-size: 16px;
	font-weight: 800;
	line-height: 1.4;
	color: #FF4B00;
}

ul.check_black {
	padding: 0 1em 1em 3em;
	position: relative;
	list-style-image: url(../images/icon_check.png);
}

ul.check_black li {
	padding: 0.5em 0;
	list-style-type: none!important;/*ポチ消す*/
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4;
	color: #28100B;
}


.col2_box{
    overflow: hidden;
	margin: 0 0 50px 0;
}
.col2_box_left{
    float: left;
    width: 100%;
    padding-right: 0px;
    box-sizing: border-box;   
}

.col2_box_left p{
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 2;
}


.col2_box_left p.attent{
    font-size: 12px;
    margin: 0 0 10px 0;
}
.col2_box_left p.attent2{
    font-size: 14px;
    margin: 0 0 10px 0;
}

.col2_box_right{
    float: right;
    width: 100%;
    text-align: center;
}

.col2_box_right img{
    width: 100%;
	max-width: 520px;
	margin-top: 20px;
}




@media screen and (min-width: 920px) {

    .col2_box_left p{
        font-size: 16px;
    }
    .col2_box_left{
        float: left;
        width: calc(100% - 40%);
        padding-right: 30px;
        box-sizing: border-box;

    }
    .col2_box_right{
        float: right;
        width: 40%;
        max-width: 520px;
        text-align: right;
        margin-top: 0px;
    }

}

@media screen and (min-width: 700px) {

    
    
    
    
}

@media screen and (min-width: 920px) {
    #sec_effect{
        margin:50px 0 80px 0;
        padding:0 0 0 0;
    }
    #sec_effect .outer_white{
		padding:50px 0 60px 0;
	}
	#sec_effect .outer_gray{
		background: #F4F4F4;
		padding:50px 0 60px 0;
	}
    #sec_effect .inner h1{
        font-size: 30px;
    }
    
    #sec_effect .inner p{
        font-size: 16px;
    }
    #sec_effect .inner p.orange{
		font-size: 19px;
	}
	#sec_effect .inner p.orange24{
		font-size: 24px;
	}
	#sec_effect .inner p.navy{
		font-size: 19px;
	}
	#sec_effect .inner p.navy24{
		font-size: 24px;
	}
	ul.check li {
		padding: 0.5em 0;
		list-style-type: none!important;/*ポチ消す*/
		font-size: 19px;
		font-weight: 800;
		line-height: 1.4;
		color: #FF4B00;
	}
	ul.check_black li {
		padding: 0.5em 0;
		list-style-type: none!important;/*ポチ消す*/
		font-size: 19px;
		font-weight: 700;
		line-height: 1.4;
		
	}
}




/* sec_results
------------------------------------------------------------*/

#sec_results{
    margin:20px 0 30px 0;
    padding:0 0 0 0;
    text-align: left;
    vertical-align: bottom;
    position: relative;
}

#sec_results .outer_white{
    padding:30px 0 40px 0;
}
#sec_results .outer_gray{
    background: #F4F4F4;
	padding:30px 0 40px 0;
}

#sec_results .inner{
    margin: 0 auto;
	width: 100%;
    max-width: 1400px;
	padding: 0 10px;
	box-sizing: border-box;
    position: relative;
}

#sec_results .inner h1 {
	padding: 0.2em 0.5em;/*文字周りの余白*/
	color: #27100B;/*文字色*/
	background: #FEF7F1;/*背景色*/
	border-left: solid 5px #E11D48;/*左線（実線 太さ 色）*/
	position: relative;
	font-size: 24px;
}


#sec_results .inner h2 {
    
    position: relative;
    font-weight: 600;
    font-size: 20px;
    padding-bottom: 5px;
	margin-bottom: 20px;
	text-align: left;
	line-height: 1.5;
	
}
#sec_results .inner h2:before {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 4px #F97316;
    bottom: -3px;
    width: 100px;
	
    
}
#sec_results .inner h2:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 4px #E11D48;
    bottom: -3px;
    width: 50px;
    
}


#sec_results .inner p{
    font-size: 15px;
    font-weight: 400;
	margin-bottom: 18px;
	line-height: 1.8;
}

#sec_results .inner p span{
	font-weight: 800;
	color: #FF4B00;
}


#sec_results .inner .detail_col2box p.orange{
    font-size: 16px;
    font-weight: 800;
	margin-bottom: 18px;
	line-height: 1.8;
	color: #FF4B00;
}


#sec_results .inner .detail_col2box{
    overflow: hidden;
    display: block;
    padding: 0 0;
    margin: 30px 0 40px 0;
    box-sizing: border-box;
}

#sec_results .inner .detail_col2box p{
    font-size: 14px;
    color: #222222;
    margin-bottom: 20px;
    line-height: 2;
	text-align: left;
}


#sec_results .inner .detail_col2box .detail_catch{
    font-size: 18px;
    font-family: 'Noto Serif JP', sans-serif;
    font-weight: 700;
    color: #1F1F1F;
    margin-bottom: 20px;
    text-align: left;
    letter-spacing: 0.05em;
}


#sec_results .inner .detail_col2box .detail_col2_left{
    float: left;
    width: 100%;
    margin: 0 0 10px 0;
    max-width: 1000px;
    box-sizing: border-box;
    text-align: center;
}

#sec_results .inner .detail_col2box .detail_col2_left ul{
    list-style: none;
    text-align: left;
    margin-top: 30px;
}

#sec_results .inner .detail_col2box .detail_col2_left ul li{
    font-size: 14px;
    font-weight: bold;
    color: #111;
    margin-bottom: 10px;
    padding-left: 1.5em;
    text-indent: -1.5em;
}

#sec_results .inner .detail_col2box .detail_col2_left ul li::before {
	display: inline-block;
	content: "";
	margin-top: 5px;
	margin-right: 10px;
	width: 14px;
	height: 14px;
	vertical-align: top;
	border-radius: 8px;
	background-color: #1F4672;
}

#sec_results .inner .detail_col2box .detail_col2_all{
    float: left;
    width: 100%;
    margin: 0 0 10px 0;
    
    box-sizing: border-box;
    text-align: center;
}

#sec_results .inner .detail_col2box .detail_col2_right{
    float: left;
    width: 100%;
    margin: 0 0 10px 0;
    max-width: 1000px;
    box-sizing: border-box;
    text-align: center;
}

#sec_results .inner .detail_col2box .detail_col2_right p{
	font-size: 15px;
}

#sec_results .inner .detail_col2box .detail_col2_right img{
    width: 100%;
    max-width: 570px;
}
#sec_results .inner .detail_col2box .detail_col2_right iframe{
    width: 100%;
    max-width: 570px;
}

table.tbl_result {
	border-collapse:separate;
	width:100%;
	margin-top:30px;
	color:#333333;
	background:#CCCCCC;
}

table.tbl_result caption{
	text-align: left;
	font-size: 18px;
	margin-bottom: 5px;
}

table.tbl_result th {
	text-align:center;
	padding:10px 0 10px 0;
	font-size:14px;
	vertical-align:top;
	font-weight:bold;
	letter-spacing: 2px;
	background:#333;
	color: #FFF;
}

table.tbl_result td{
	text-align:center;
	padding:12px 10px 8px 10px;
	line-height:1.7;
	font-size:14px;
	letter-spacing: 1px;
	background:#FFFFFF;
}

table.tbl_result td.tp_title{
	font-weight:bold;
	text-align:left;
}

table.tbl_result td.tp_left{
	text-align:left;
}
table.tbl_result td.tp_center{
	text-align:center;
}
	table.tbl_result td a {color:#CC3300; font-weight:normal; font-size:12px; text-decoration:underline;}
	table.tbl_result td a:hover {color:#009999; font-size:12px; text-decoration:underline;}



#sec_results .inner .detail_col2box .detail_col2_left dl {
	margin: 0 0 15px;
	padding: 0 10px 10px;
	font-size: 16px;
}
#sec_results .inner .detail_col2box .detail_col2_left dl dt {
	float: left;
	width: 7em;
	padding: 10px 0;
	font-weight: bold;
	text-indent: 1em;
	line-height: 150%;
	text-align: left;
}

#sec_results .inner .detail_col2box .detail_col2_left dl dt.text-blue {
	color:#0000CC;
}

#sec_results .inner .detail_col2box .detail_col2_left dl dt.text-red {
	color:#CC0000;
}


#sec_results .inner .detail_col2box .detail_col2_left dl dd {
	padding: 10px 0 10px 7em;
	line-height: 150%;
	border-bottom: 1px #CCCCCC dotted;
	letter-spacing: 1px;
	text-align: left;
}





@media screen and (min-width: 920px) {
    #sec_results{
        margin:30px 0 80px 0;
        padding:0 0 0 0;
    }
    #sec_results .outer_white{
		padding:50px 0 60px 0;
	}
	#sec_results .outer_gray{
		background: #F4F4F4;
		padding:50px 0 60px 0;
	}
	
	#sec_results .inner h1 {
		font-size: 36px;
	}
	
    #sec_results .inner h2{
        font-size: 30px;
		text-align: left;
    }
    
    #sec_results .inner p{
        font-size: 16px;
    }
    #sec_results .inner .detail_col2box p.orange{
		font-size: 22px;
	}
	
	
	#sec_results .inner .detail_col2box{
        padding: 0 20px;
		margin-top: 50px;
    }
    #sec_results .inner .detail_col2box p{
        font-size: 18px;
    }
    
    #sec_results .inner .detail_col2box .detail_catch{
        font-size: 20px;
    }
    
    #sec_results .inner .detail_col2box .detail_col2_left{
        width: calc( 100% - 650px );
		
    }

    #sec_results .inner .detail_col2box .detail_col2_right{
        width: 570px;
        margin-left: 80px;
    }
	
}

/* ------------------------------------------------------------------------------------ */
/* 事例紹介										*/
/* ------------------------------------------------------------------------------------ */

#sec_results .inner .ex_box{
	text-align:center;
	margin: 0 auto;
	position:relative;
	overflow:hidden;
	padding:30px 0 30px 0;
	border-bottom:1px dotted #999999;
}


#sec_results .inner .ex_left{
	float:left;
	width:100%;
	text-align:left;
	margin-left:10px;
	margin-right: 30px;
}

#sec_results .inner .ex_left img{
	width: 100%;
}



#sec_results .inner .ex_right{
	float:left;
	width:100%;
	text-align:left;
}


#sec_results .inner .ex_right .ex_title{
	font-size:24px;
	color:#003366;
}

	#sec_results .inner .ex_right .ex_title a {color:#003366; font-weight:bold; font-size:20px; text-decoration:underline;}
	#sec_results .inner .ex_right .ex_title a:hover {color:#CC3300; font-size:20px; text-decoration:underline;}





#sec_results .inner .ex_right .ex_txt{
	font-size:14px;
	margin:15px 10px 0 0;
	letter-spacing: 1px;
	line-height:1.7;
}

#sec_results .inner .ex_right .ex_more{
	font-size:12px;
	margin:20px 10px 0 0;
	letter-spacing: 1px;
	line-height:1.7;
	text-align:left;
	
}
	#sec_results .inner .ex_right .ex_more a {color:#333333; font-weight:normal; font-size:12px; text-decoration:none;}
	#sec_results .inner .ex_right .ex_more a:hover {color:#CC3300; font-size:12px; text-decoration:none;}


#sec_results .inner .ex_right .ex_more a {
	background: linear-gradient(90deg, #f97316 0%, #e11d48 80%);
	color: #FFF;
	padding: 12px 50px;
	border-radius: 50px;
	font-size: 16px;
	font-weight: 900;
	text-decoration: none;
	font-family: 'Lato', sans-serif;
	margin-top: 50px;

}
#sec_results .inner .ex_right .ex_more a:hover {
	background: linear-gradient(90deg, #e11d48 0%, #f97316 80%);
	color: #FFF;
	padding: 12px 50px;
	border-radius: 50px;
	font-size: 16px;
	font-weight: 900;
	text-decoration: none;
	font-family: 'Lato', sans-serif;
}

#sec_results .inner .ex_right .ex_more img {
	vertical-align: bottom;
}


@media screen and (min-width: 920px) {
	
	
	#sec_results .inner .ex_left{
		float:left;
		width:280px;
		text-align:left;
		margin-left:10px;
		margin-right: 30px;
	}

	#sec_results .inner .ex_left img{
		width: 100%;
	}



	#sec_results .inner .ex_right{
		float:left;
		width: calc( 100% - 330px );
		text-align:left;
	}
	#sec_results .inner .ex_right .ex_title a {color:#003366; font-weight:bold; font-size:24px; text-decoration:underline;}
	#sec_results .inner .ex_right .ex_title a:hover {color:#CC3300; font-size:24px; text-decoration:underline;}

	#sec_results .inner .ex_right .ex_txt{
		font-size:16px;
		margin:15px 10px 0 0;
		letter-spacing: 1px;
		line-height:1.7;
	}
	
}








/* sec_staff
------------------------------------------------------------*/

#sec_staff{
    margin:20px 0 30px 0;
    padding:0 0 0 0;
    text-align: left;
    vertical-align: bottom;
    position: relative;
}


#sec_staff .inner{
    margin: 0 auto;
	width: 100%;
    max-width: 1400px;
	padding: 0 10px;
	box-sizing: border-box;
    position: relative;
}

#sec_staff .inner h1 {
	padding: 0.2em 0.5em 0.2em 0.7em;/*文字周りの余白*/
	color: #27100B;/*文字色*/
	background: #FEF7F1;/*背景色*/
	border-left: solid 5px #E11D48;/*左線（実線 太さ 色）*/
	position: relative;
	font-size: 20px;
	line-height: 1.6;
}
#sec_staff .inner h1 span{
	font-size: 18px;
}

#sec_staff .inner p{
    font-size: 15px;
    font-weight: 400;
	margin-bottom: 18px;
	line-height: 1.8;
}

#sec_staff .inner p span{
	font-weight: 800;
	color: #FF4B00;
}


#sec_staff .inner .staff_col2box{
    overflow: hidden;
    display: block;
    padding: 0 0;
    margin: 20px 0 40px 0;
    box-sizing: border-box;
}

#sec_staff .inner .staff_col2box p{
    font-size: 14px;
    color: #222222;
    margin-bottom: 10px;
    line-height: 2;
	text-align: left;
	line-height: 1.7;
}



#sec_staff .inner .staff_col2box .detail_col2_left{
    float: left;
    width: 100%;
    margin: 0 0 10px 0;
    max-width: 1000px;
    box-sizing: border-box;
    text-align: center;
}

#sec_staff .inner .staff_col2box .detail_col2_right{
    float: left;
    width: 100%;
    margin: 0 0 10px 0;
    max-width: 1000px;
    box-sizing: border-box;
    text-align: center;
}

#sec_staff .inner .staff_col2box .detail_col2_right p{
	font-size: 15px;
}

#sec_staff .inner .staff_col2box .detail_col2_left img{
    width: auto;
    max-width: 570px;
}

#sec_staff .inner .staff_col2box .detail_col2_left_s{
    float: left;
    width: 100%;
    margin: 0 0 10px 0;
    max-width: 1000px;
    box-sizing: border-box;
    text-align: center;
}

#sec_staff .inner .staff_col2box .detail_col2_right_s{
    float: left;
    width: 100%;
    margin: 0 0 10px 0;
    max-width: 1000px;
    box-sizing: border-box;
    text-align: center;
}

#sec_staff .inner .staff_col2box .detail_col2_right_s p{
	font-size: 15px;
}

#sec_staff .inner .staff_col2box .detail_col2_left_s img{
    width: auto;
    max-width: 570px;
}



@media screen and (min-width: 920px) {
    #sec_staff{
        margin:30px 0 80px 0;
        padding:0 0 0 0;
    }
    
	#sec_staff .inner h1 {
		font-size: 22px;
		
	}
	#sec_staff .inner h1 span{
		font-size: 20px;
	}
   
    #sec_staff .inner p{
        font-size: 16px;
    }
    
	#sec_staff .inner .staff_col2box{
        padding: 0 20px;
		margin-top: 30px;
		margin-bottom: 50px;
    }
    #sec_staff .inner .staff_col2box p{
        font-size: 18px;
    }
    
   
    #sec_staff .inner .staff_col2box .detail_col2_left{
        width: 300px;
		
    }

    #sec_staff .inner .staff_col2box .detail_col2_right{
		width: calc( 100% - 350px );
        margin-left: 50px;
    }
	
	#sec_staff .inner .staff_col2box .detail_col2_left_s{
        width: 150px;
		
    }

    #sec_staff .inner .staff_col2box .detail_col2_right_s{
		width: calc( 100% - 200px );
        margin-left: 50px;
    }
	
}








/* sec_prnews
------------------------------------------------------------*/

#sec_prnews{
    margin:20px 0 50px 0;
    padding:0 0 0 0;
    text-align: left;
    vertical-align: bottom;
    position: relative;
}


#sec_prnews .inner{
    margin: 0 auto;
	width: 100%;
    max-width: 1400px;
	padding: 0 10px;
	box-sizing: border-box;
    position: relative;
}

#sec_prnews .inner h1 {
	padding: 0.5em 0.5em 0.5em 0.7em;/*文字周りの余白*/
	color: #27100B;/*文字色*/
	background: #FEF7F1;/*背景色*/
	border-left: solid 5px #E11D48;/*左線（実線 太さ 色）*/
	position: relative;
	font-size: 20px;
	line-height: 1.6;
	
}
#sec_prnews .inner h1 span{
	font-size: 18px;
}

#sec_prnews .inner p{
    font-size: 15px;
    font-weight: 400;
	margin-bottom: 18px;
	line-height: 1.8;
}

#sec_prnews .inner p span{
	font-weight: 800;
	color: #FF4B00;
}

#sec_prnews .inner .prnews_date{
	text-align: right;
	font-size: 15px;
	margin: 10px;
}



@media screen and (min-width: 920px) {
    #sec_prnews{
        margin:30px 0 80px 0;
        padding:0 0 0 0;
    }
    
	#sec_prnews .inner h1 {
		font-size: 22px;
		
	}
	#sec_prnews .inner h1 span{
		font-size: 20px;
	}
   
    #sec_prnews .inner p{
        font-size: 16px;
    }
    
	
}


/* sec_prnews_list
------------------------------------------------------------*/

#sec_prnews_list{
    margin:20px 0 50px 0;
    padding:0 0 0 0;
    text-align: left;
    vertical-align: bottom;
    position: relative;
}


#sec_prnews_list .inner{
    margin: 0 auto;
	width: 100%;
    max-width: 1400px;
	padding: 0 10px;
	box-sizing: border-box;
    position: relative;
}


#sec_prnews_list .inner h1 {
    
    position: relative;
    font-weight: 600;
    font-size: 20px;
    padding-bottom: 5px;
	margin-bottom: 30px;
	
}
#sec_prnews_list .inner h1:before {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 4px #F97316;
    bottom: -3px;
    width: 100px;
	
    
}
#sec_prnews_list .inner h1:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 4px #E11D48;
    bottom: -3px;
    width: 50px;
    
}
#sec_prnews_list .inner p{
    font-size: 15px;
    font-weight: 400;
	margin-bottom: 18px;
	line-height: 1.8;
}

#sec_prnews_list .inner p span{
	font-weight: 800;
	color: #FF4B00;
}


#sec_prnews_list .inner .news_box{
    overflow: hidden;
    display: block;
    padding: 0 0;
    box-sizing: border-box;
    margin-bottom: 0px;
}


#sec_prnews_list .inner .news_box div{
    clear: both;
}


#sec_prnews_list .inner .news_box ul{
    margin: 0 auto;
    max-width: 1460px;
    overflow: hidden;
    border-top: 1px dotted #CCCCCC;
    margin-top: 0px;
    margin-bottom: 20px;
    clear: both;
}

#sec_prnews_list .inner .news_box ul li{
    border-bottom: 1px dotted #CCCCCC;
    padding: 5px 0 10px 0;
    overflow: hidden;
}

#sec_prnews_list .inner .news_box ul li a{
    text-decoration: underline;
    color: #333;
    font-size: 13px;
}
#sec_prnews_list .inner .news_box ul li a:hover{
    text-decoration:underline;
}

#sec_prnews_list .inner .news_box .idate_box{
    width: 100%;
    margin-top: 5px;
	margin-bottom: 0px !important;
}
#sec_prnews_list .inner .news_box .itext_box{
    width: 100%;
    box-sizing: border-box;
    margin:2px 0 0 0px;
    font-size: 15px;
}
#sec_prnews_list .inner .news_box .info_date{
    
    color:#333;
    font-size: 15px;
    padding: 0px 10px 0px 10px;
    margin-left: 0px;
    font-weight: 600;
    width: auto;
	
}
#sec_prnews_list .inner .news_box .idate_box{
    float: left;
    width: 100%;
}
#sec_prnews_list .inner .news_box .itext_box{
    float: left;
    width: 100%;
	font-weight: 500;
	padding: 0px 10px 0px 10px;
}
@media screen and (min-width: 640px) {
    
    
	#sec_prnews_list .inner .news_box{
        padding: 0 10px;
    }
	
}
@media screen and (min-width: 920px) {
    #sec_prnews_list{
        margin:30px 0 80px 0;
        padding:0 0 0 0;
    }
    
	#sec_prnews_list .inner h1{
        font-size: 30px;
    }
    
    #sec_prnews_list .inner p{
        font-size: 16px;
    }
   
    #sec_prnews_list .inner p{
        font-size: 16px;
    }
    
	#sec_prnews_list .inner .news_box{
        padding: 0 10px;
		margin-top: 50px;
    }
    
    #sec_prnews_list .inner .news_box ul li{
        padding: 15px 0 0 0;
    }
    #sec_prnews_list .inner .news_box ul li a{
        font-size: 15px;
    }
    #sec_prnews_list .inner .news_box .info_date{
        padding: 5px 10px;
        margin-left: 0px;
    }
    
    
    #sec_prnews_list .inner .news_box .idate_box{
        float: left;
        width: 120px;
		font-weight: 600;
		margin-bottom: 15px !important;
    }
    #sec_prnews_list .inner .news_box .itext_box{
        float: left;
        width: calc(100% - 150px);
        padding: 3px 0px 0px 0;
    }
}








/* sec_company
------------------------------------------------------------*/




table.company{
	text-align: left;
	width: 100%;
	margin: 30px auto;
	border-collapse: collapse;
	line-height: 1.7;
    border-bottom: dotted 1px #CCC;
	}
	
table.company th{
	width: 20%;
	padding: 10px 0 10px 10px;
	border: none;
    font-size: 16px;
	text-align: left;
	background: #333;
	color: #FFF;
	box-sizing: border-box;
	}
    table.company th,
    table.company td{
    width: 100%;
    display: block;
    border-top: none;
        padding: 10px 0 10px 10px;
		font-size: 16px;
		box-sizing: border-box;
    }


.google-map {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
    margin-top: 20px;
}
.google-map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


@media screen and (min-width: 920px) {
   
    
    table.company th{
        width: 180px;
        padding: 20px 0 20px 45px;
        border-bottom: dotted 1px #DCDCDC;
        }
	table.company{
        text-align: left;
        width: 100%;
        margin: 50px auto;
        border-collapse: collapse;
        line-height: 1.7;
        display: table;
        border-top: dotted 1px #DCDCDC;
        }

    table.company th{
        width: 180px;
        display:table-cell;
        padding: 20px 0 20px 45px;
        border-bottom: dotted 1px #CCC;
		font-size: 18px;
        background: none;
		color: #222;
		
        }
	table.company td{
		width: auto;
		display:table-cell;
		border-top: none;
		border-bottom: dotted 1px #CCC;
		font-size: 16px;
	}
	.google-map {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 36.25%;
        overflow: hidden;
        margin-top: 20px;
    }
}





/* sec_privacy
------------------------------------------------------------*/

#sec_privacy{
    margin:30px 0 30px 0;
    padding:0 0 0 0;
    text-align: left;
    vertical-align: bottom;
    position: relative;
}
#sec_privacy .inner h1 {
    
    position: relative;
    font-weight: 600;
    font-size: 20px;
    padding-bottom: 5px;
	margin-bottom: 30px;
	
}
#sec_privacy .inner h1:before {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 4px #F97316;
    bottom: -3px;
    width: 100px;
	
    
}
#sec_privacy .inner h1:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 4px #E11D48;
    bottom: -3px;
    width: 50px;
    
}
#sec_privacy .outer_white{
    padding:30px 0 40px 0;
}


#sec_privacy .outer_gray{
    background: #F4F4F4;
	padding:30px 0 40px 0;
}


#sec_privacy .inner{
    margin: 0 auto;
	width: 100%;
    max-width: 1400px;
	padding: 0 10px;
	box-sizing: border-box;
    position: relative;
}


#sec_privacy .inner p{
    font-size: 15px;
    font-weight: 400;
	text-align: left;
	color: #222;
	margin-bottom: 15px;
}

#sec_privacy .inner p.txt_bk{
    font-size: 16px;
    font-weight: 500;
	text-align: left;
	color: #28100B;
}

#sec_privacy .inner .txt_unei{
	font-size: 16px;
	font-weight: bold;
}


@media screen and (min-width: 700px) {

    
    
    
    
}

@media screen and (min-width: 920px) {
    #sec_privacy{
        margin:50px 0 80px 0;
        padding:0 0 0 0;
    }
	#sec_privacy .inner h1{
        font-size: 30px;
    }
    
    #sec_privacy .outer_white{
		padding:50px 0 60px 0;
	}
	#sec_privacy .outer_gray{
		background: #F4F4F4;
		padding:50px 0 60px 0;
	}
    #sec_privacy .inner p{
        font-size: 15px;
    }
    
	#sec_privacy .inner p.txt_bk{
        font-size: 16px;
    }
}




table.entry_form{
	width: 100%;
	margin: 0 auto 0px;
    font-size: 16px;
	}
	
table.entry_form th{
	width: 100%;
	padding: 15px 10px;
	text-align: left;
	border-bottom: dotted 1px #C9C9C9;
    letter-spacing: 0.05em;
    background: #EEE;
    box-sizing: border-box;
	}
table.entry_form th em{
    font-style: normal;
    background: #FF4000;
    color:#FFFFFF;
    font-weight: normal;
    padding: 0px 5px 2px 5px;
    border-radius: 4px;
    font-size: 13px;
    margin-left: 20px;
}
table.entry_form th span{
	margin-right: 55px;
	}
	
table.entry_form td{
    width: 100%;
	padding: 20px 10px;
    overflow: hidden;
	border-bottom: dotted 1px #C9C9C9;
	}

table.entry_form td,
table.entry_form th {
    border-bottom: none;
    display: block;
}
/* entry-button ----- */
.form-button-wrap {
	text-align: center;
	margin-bottom: 40px;
    margin-top: 40px;
}
.form-button {
	color: #fff;
	text-decoration: none;
	font-size: 18px;
	line-height: 1;
	text-align: center;
	display: inline-block;
	padding: 30px 0;
	transition: all 0.2s ease-in-out;
	background-color: #f97316;
	position: relative;
	width: 80%;
	cursor: pointer;
    border: none;
    font-weight: bold;
    margin: 2% 0;
	border-radius: 50px;
}

.form-button:hover {
	background-color: #e11d48;
	color: #fff;
}


.form-button2 {
	color: #fff;
	text-decoration: none;
	font-size: 18px;
	line-height: 1;
	text-align: center;
	display: inline-block;
	padding: 30px 0;
	transition: all 0.2s ease-in-out;
	background-color: #666;
	position: relative;
	width: 80%;
	cursor: pointer;
	border: none;
    font-weight: bold;
    margin: 2% 0;
	border-radius: 50px;
}

.form-button2:hover {
	background-color: #444;
	color: #FFF;
}


input[type="text"],
input[type="tel"],
textarea {
    padding: 0.6em;
    outline: none;
    border: 1px solid #AAA;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;6
    font-size: 16px;
    width: 90%;
    box-sizing: border-box;
    margin-top: 0px;
}
input[type="email"]{
    padding: 0.6em;
    outline: none;
    border: 1px solid #AAA;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;6
    font-size: 16px;
    width: 90%;
    box-sizing: border-box;
    margin-top: 0px;
}
input[type="date"]{
    padding: 0.5em;
    outline: none;
    border: 1px solid #AAA;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    font-size: 16px;
    width: 200px;
    box-sizing: border-box;
    margin-top: 0px;
}
input[type="number"]{
    padding: 0.5em;
    outline: none;
    border: 1px solid #AAA;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    font-size: 16px;
    width: 200px;
    box-sizing: border-box;
    margin-top: 0px;
}

select{
    padding: 0.3em;
    outline: none;
    border: 1px solid #AAA;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    font-size: 16px;
    width: 200px;
    box-sizing: border-box;
    margin-top: 0px;
}

select.sim_relationship{
    margin-left: 20px !important;
}

select.sim_kyuutou01{
    margin-left: 0px !important;
    width: 200px;
}

select.sim_kyuutou03{
    margin-left: 0px !important;
    width: 200px;
}

select.sim_kyuutou02{
    margin-left: 0px !important;
    width: 300px;
}

textarea{
    height: 200px;
}
/* 
*****************************************/
input[type="text"]:focus,
textarea:focus {
	box-shadow: 0 0 7px #3498db;
	border: 1px solid #3498db;
}

/* 
*****************************************/
input[type="text"]:focus,
textarea:focus {
	box-shadow: 0 0 7px #3498db;
	border: 1px solid #3498db;
}


@media screen and (min-width: 920px) {
    
    
    table.entry_form{
            width: 100%;
            max-width: 1160px;
            margin: 0 auto 60px;
            font-size: 16px;
        }

        table.entry_form th{
            width: 270px;
            padding: 20px;
            text-align: right;
            border-bottom: dotted 1px #C9C9C9 !important;
            letter-spacing: 0.05em;
            background: none;
        }
        table.entry_form th em{
            font-style: normal;
            background: #FF4000;
            color:#FFFFFF;
            font-weight: normal;
            padding: 0px 5px 2px 5px;
            border-radius: 4px;
            font-size: 13px;
            margin-left: 20px;
        }
        table.entry_form th span{
            margin-right: 55px;
            }

        table.entry_form td{
            width: calc(100% - 270px);
            padding: 20px;
            border-bottom: dotted 1px #C9C9C9 !important;
            }

        table.entry_form td,
        table.entry_form th {
            border-bottom: none;
            display:table-cell;
        }
        .add-wrap {
            max-width: 100%;
            margin: 0px auto;
        }
        .add-wrap dt {
            width: 120px;
            float: left;
            padding-top: 5px;
        }
        .add-wrap dd {
            padding: 0 0 0 10px;
            margin-bottom: 15px;
            overflow: hidden;
        }
        .add-wrap dd:last-child {
         margin-bottom: 0px;
        }
    
        .form-button {
            width: 40%;
            margin: 0 2%;
        }
        .form-button2 {
            width: 40%;
            margin: 0 2%;
        }
    
}





