@charset "utf-8";

/*------------------------- 共通 -------------------------*/
.wrapper{ width:auto; max-width:1200px; margin:0 auto; }
.s-wrapper{ width:90%; max-width:1400px; margin:0 auto;}
.min_inner{max-width: 727px; margin: 0 auto;}
.main_box .sec_box{margin: 0 auto;}
section {  position: relative;  overflow: unset;}

.content_box .list_box{border: 8px solid #EBEBEB; padding: 32px 25px 36px; background: #fff; margin: 51px 0 0;}
.content_box .list_box h3,
.content_box .list_box h5{font-size: 20px; line-height: 145%; font-weight: 600; }
.content_box .list_box ul{padding: 20px 0 0 20px; }
.content_box .list_box ul li{ font-weight: 400; font-size: 18px; line-height: 165%; position: relative; list-style-type: disc; list-style-position: inside; text-indent: -16px; }
.content_box .list_box ul li:not(:last-child){padding: 0 0 15px;}
.content_box .list_box ul li::marker { font-size: 75%; }

.content_box .gray_bg{background: #EEEBE7; padding: 26px 18px 20px; max-width: 727px; margin: 0 auto;}
.content_box .gray_bg h3{ font-weight: 500; font-size: 16px; font-family: neue-haas-grotesk-text, sans-serif; font-weight: 500; padding: 0 0 16px;}
.content_box .gray_bg h3 span{font-size: 20px; line-height: 145%; font-family: 'Noto-Sans-JP', sans-serif; font-weight: 700;padding: 0px 11px 0 0;}
.content_box .gray_bg ul{background: #fff; box-shadow: 8px 8px 0px 0px #D5D1CC; padding: 25px;}
.content_box .gray_bg ul li{ font-family: 'Noto-Sans-JP', sans-serif; font-weight: 400; line-height: 165%; font-size: 18px; position: relative; padding-left: 25px;}
.content_box .gray_bg ul li:not(:last-child){margin: 0px 0 24px;}
.content_box .gray_bg ul li:before{content: ""; display: block; width: 10px; height: 10px; background: #000; position: absolute; left: 0px; top:11px;}

#sec1.content_box .img_box{padding: 40px 0 0;}
.content_box .content{padding: 0px 0 0;}
.content_box .content .box{width: 100%; margin: 0 auto; padding: 40px 0 0;}
.content_box .content .box h4{line-height: 160%; font-size: 24px; font-weight: 500; border-bottom: 1px solid #E4E4E4; padding: 0 0 14px;}
.content_box .content .box .text_box{padding: 0;}
.content_box .content .box .text_box p{font-size: 17px; line-height: 175%; font-weight: 300; padding: 20px 0 0;}

.content_box .content .box .table_box h5{ font-weight: 600; font-size: 20px; line-height: 175%; padding: 0px 0 17px;}
.content_box .content .box .table_box table thead tr th{background: #000; line-height: 50%; text-align: left; padding: 23px 32px 20px; color: #fff; font-size: 14px; font-weight: 500;}
.content_box .content .box .table_box table thead tr th:nth-child(2){padding: 20px 60px;}
 
.content_box .content .box .table_box table tbody tr th{font-size: 16px; font-weight: 500; line-height: 144%; background: #EBEBEB; width: 200px; text-align: left; padding: 19px 21px 19px 18px;}
.content_box .content .box .table_box table tbody tr td{font-size: 16px; font-weight: 400; line-height: 163%; padding: 16px 19px 19px 34px;}
.content_box .content .box .table_box table tbody tr:not(:last-child) th,
.content_box .content .box .table_box table tbody tr:not(:last-child) td{border-bottom: 1px solid #C4C4C4;}

.content_box .content .box .table_box table tbody tr:first-child th,
.content_box .content .box .table_box table tbody tr:first-child td{border-top: 1px solid #fff;}
.content_box .content .youtube_box{padding: 58px 0 0;}
.content_box .content .youtube_box .youtube_box_2{position: relative; width: 100%; height: auto; padding: 56.25% 0 0; }
.content_box .content .youtube_box iframe{position: absolute; top: 0px; left: 0px; width: 100%; height: 100%;}

.content_box .slider_box {width: 727px; margin: 0 auto; padding: 60px 0 40px;}
.content_box .slider_box .img{margin: 0 8px;}
.content_box .slider_box .slick-dots{bottom: 0px; }
.content_box .slider_box .slick-dots li{background: #D0D0D0; width: 12px; height: 12px; border-radius: 1000px;margin: 0 8px;}
.content_box .slider_box .slick-dots li.slick-active{background: #DE0000;}
.content_box .slider_box .slick-dots li button{ width: 100%; height: 100%; border-radius: 1000px;}
.content_box .slider_box .slick-dots li button:before{display: none;}

/*------------------------- #image_modal -------------------------*/
body.stop{overflow: hidden;}
/* modal base */
#image_modal { display: none; position: fixed; inset: 0; z-index: 9999;}

#image_modal.active {display: block;}

/* background */
#image_modal .modal_bg {  position: absolute;inset: 0;background: rgba(0,0,0,0.8);}

/* inner */
#image_modal .modal_inner { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); max-width: 1200px; width: 90%; height: auto;}

#image_modal img { width: 100%; height: auto; display: block;}

/* close */
#image_modal .modal_close {position: absolute; top: -50px; right: 0px; width: 36px; height: 36px; border-radius: 50%; border: none; background: #fff; font-size: 20px; cursor: pointer;}

/* carousel */
#image_modal .modal_carousel { position: relative; width: 100%; overflow: hidden;}
#image_modal .modal_carousel .carousel-track { display: flex; transition: transform 0.3s ease;}
#image_modal .modal_carousel .carousel-slide { flex: 0 0 100%; width: 100%; display: flex; align-items: center; justify-content: center; min-height: 200px;}
#image_modal .modal_carousel .carousel-slide img { width: 100%; height: auto; display: block;}
#image_modal .modal_carousel .carousel-slide .carousel-youtube { position: relative; width: 100%; padding-top: 56.25%;}
#image_modal .modal_carousel .carousel-slide .carousel-youtube iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none;}
#image_modal .modal_carousel .carousel-slide .carousel-youtube-poster { position: absolute; top: 0; left: 0; width: 100%; height: 100%; cursor: pointer; background: #000;}
#image_modal .modal_carousel .carousel-slide .carousel-youtube-poster img { width: 100%; height: 100%; object-fit: cover;}
#image_modal .modal_carousel .carousel-slide .carousel-youtube-poster .yt-play-btn { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 68px; height: 48px; background: rgba(0,0,0,0.7); border-radius: 14px; display: flex; align-items: center; justify-content: center;}
#image_modal .modal_carousel .carousel-slide .carousel-youtube-poster .yt-play-btn::after { content: ''; display: block; width: 0; height: 0; border-style: solid; border-width: 10px 0 10px 18px; border-color: transparent transparent transparent #fff;}

/* carousel arrows */
#image_modal .modal-arrow { position: absolute; top: 50%; transform: translateY(-50%); width: 44px; height: 44px; border: none; border-radius: 50%; background: rgba(255,255,255,0.9); font-size: 22px; cursor: pointer; z-index: 10; display: flex; align-items: center; justify-content: center; color: #333; box-shadow: 0 2px 6px rgba(0,0,0,0.3);}
#image_modal .modal-arrow:hover { background: #fff;}
#image_modal .modal-arrow-prev { left: -56px;}
#image_modal .modal-arrow-next { right: -56px;}

/* carousel counter */
#image_modal .modal-counter { text-align: center; color: #fff; font-size: 14px; margin-top: 12px; font-family: neue-haas-grotesk-text, sans-serif;}

/* media sidebar item with modal class for carousel */
.main_box .aside_box.media .media_box a.modal-carousel { position: relative; cursor: pointer;}
.main_box .aside_box.media .media_box a.modal-carousel:before { content: ""; display: block; width: 30%; height: 30%; background: url(../images/common/clos_2.svg) no-repeat center center, #fff; background-size: 50%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); border-radius: 100px; opacity: 0; transition: opacity 0.2s;}
.main_box .aside_box.media .media_box a.modal-carousel:hover:before { opacity: 1;}



/*------------------------- .main_box -------------------------*/
.main_box{display: flex; justify-content: space-between; align-items: flex-start; position: relative;; padding: 69px 0 0}
.main_box .aside_box{width: 370px; height: auto; position: sticky; top: 80px; align-self: flex-start;}
.main_box .aside_box.is_close{position: fixed; background: #fff; z-index: 1000;}
.main_box .aside_box h3{font-size: 16px; font-family: neue-haas-grotesk-text, sans-serif; font-weight: 500; line-height: 120%; border-bottom: 1px solid #000; width: auto; padding: 0 0 7px; margin: 0 26px;}


.main_box #select_1,
.main_box #select_3{box-sizing: border-box; height: auto;border: 1px solid #EBEBEB; }
.main_box #select_1 .over_scroll,
.main_box #select_3 .over_scroll{ max-height: calc(100vh - 80px); overflow-y: auto;  }

.main_box .aside_box.index .bg_box{background: #FCFCFC; padding: 40px 0 0px;}
.main_box .aside_box.index .link_list{padding: 25px 26px 48px;}
.main_box .aside_box.index .link_list ul li.link:not(:last-child){padding: 0 0 30px;}
.main_box .aside_box.index .link_list ul li.link a.title_link{font-size: 13px; line-height: 160%; display: block; padding: 0 12px;margin: 0 0 8px;}
.main_box .aside_box.index .link_list ul li.link ul .sub_link a{position: relative; font-size: 15px; line-height: 160%; padding: 0 0 0 13px;display: block;border-left: 2px solid #D9D9D9;}
.main_box .aside_box.index .link_list ul li.link ul .sub_link a:before{content: ""; display: block; width: 4px; height: 4px; background: #000; border-radius: 100px; position: absolute; left: 18px; top: 11px;}

.main_box .aside_box.index .sns_box{display: flex; justify-content: space-between; align-items: center; padding: 24px 30px 28px 35px; border-bottom: 1px solid #E3E3E3; border-top: 1px solid #E3E3E3;}
.main_box .aside_box.index .sns_box a{display: block;}
.main_box .aside_box.index .sns_box .sns,
.main_box .aside_box.index .sns_box .btn{display: flex; align-items: center; }
.main_box .aside_box.index .sns_box .sns a:not(:last-child){margin: 0 23px 0 0;}
.main_box .aside_box.index .sns_box .btn a:not(:last-child){margin: 0 39px 0 0;}
.main_box .aside_box.index .btn_box{padding: 24px 30px 28px 41px; display: flex; justify-content: space-between; align-items: center;}
.main_box .aside_box.index .btn_box a{display: block; font-size: 13px;line-height: 100%;}
.main_box .aside_box.index .btn_box a img{margin: 0 9px 0 0;}
.main_box .aside_box.index .btn_box p{font-size: 13px;line-height: 100%;}
.main_box .aside_box.index .btn_box p img{margin: 0 9px 0 0;}
.main_box .aside_box.index .btn_box .btn_3{}
.main_box .aside_box.index .btn_box .btn_3 .clos_2{display: none;}
.main_box .aside_box.index .btn_box .btn_3.is_close .clos_1{display: none;}
.main_box .aside_box.index .btn_box .btn_3.is_close .clos_2{display: block;}

.main_box .aside_box.index .link_list ul li.link ul .sub_link a{padding: 0px 0px 0px 33px;}
.main_box .aside_box.index .link_list ul li.link ul .sub_link:not(:last-child) a{padding: 0 0 17px 33px;}
.main_box .aside_box.index .link_list ul li.link ul .sub_link:hover a{color: #1885FF; transition: 0;border-left: 2px solid #1885FF;}
.main_box .aside_box.index .link_list ul li.link ul .sub_link:hover a:before{background: #1885FF;}


.main_box .aside_box.index .link_list ul li.link ul .sub_link a.is_current{color: #1885FF; transition: 0;border-left: 2px solid #1885FF;}
.main_box .aside_box.index .link_list ul li.link ul .sub_link a.is_current:before{background: #1885FF;}



.main_box .aside_box.media .over_scroll{padding: 40px 24px 23px 26px; }
.main_box .aside_box.media h3{margin: 0px;}
.main_box .aside_box.media .media_box{gap: 9px 12px; display: flex; flex-wrap: wrap; padding: 30px 0 0;}
.main_box .aside_box.media .media_box a{display: block; width: calc(100% / 3 - 8px); height: auto; position: relative;}
.main_box .aside_box.media .media_box a.youtebe_mark:before{content: ""; display: block; width: 100%; height: 100%; background: url(../images/common/icn_05.svg) no-repeat center center; background-size: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%);}
.main_box .aside_box.media .media_box a.youtebe_mark:hover:before{opacity: 1;}
.main_box .aside_box.media .media_box a.modal:before{content: ""; display: block; width: 30%; height: 30%; background: url(../images/common/clos_2.svg) no-repeat center center , #fff; background-size: 50%; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); border-radius: 100px;}
.main_box .aside_box.media .media_box a img{width: 100%; height: auto;}

/*------------------------- #firstview -------------------------*/
#firstview{width: 100%; height: auto; }
#firstview img{width: 100%; height: auto; }

/*------------------------- #sec1 -------------------------*/
#sec1{padding: 0;}
#sec1 h1{ font-weight: 600; font-size: 28px; line-height: 157%; display: inline-block; padding: 0px 0 26px;}
#sec1 h2{ font-weight: 500; font-size: 14px; line-height: 143%; border-bottom: 1px solid #707070; padding: 0 0 6px;}
#sec1 .box .logo{padding: 20px 0 0;}
#sec1 .box .flex{display: flex; align-items: center;}
#sec1 .box .flex img{margin: 0 18px 0 0;}
#sec1 .box .flex p{font-size: 14px; font-weight: 500; line-height: 145%; }
#sec1 .box .flex p span{font-size: 14px; font-weight: 500; line-height: 145%; }
#sec1 .box .tag_tt{font-size: 14px; line-height: 143%;  font-weight: 300; padding: 20px 0 43px;}
#sec1 .box .tbl_box{padding: 50px 0 0;}
#sec1 .box .tbl_box .flex{align-items: flex-start;}
#sec1 .box .tbl_box .flex:not(:last-child) p.title_tt,
#sec1 .box .tbl_box .flex:not(:last-child) p.tag{margin-bottom: 19px;}
#sec1 .box .tbl_box .flex p.title_tt{display: block; border: 1px solid #000; text-align: center; font-size: 12px; line-height: 140%; font-weight: 500; padding: 7px 0; width: 121px; margin-right: 22px;}
#sec1 .box .tbl_box .flex p.tag{display: block; font-size: 14px; width: calc(100% - 121px);line-height: 172%;}

/*------------------------- #sec2 -------------------------*/
#sec2{padding: 50px 0 0;}
#sec2 .slider_box{margin: 0;}

/*------------------------- #sec3 -------------------------*/
#sec3{padding: 40px 0 0;}
#sec3.content_box .content .box .text_box { padding:0;}
#sec3 .slider_box{margin: 0;}
#sec3.content_box .content .box h4{line-height: 160%; font-size: 24px;}

/*------------------------- #sec4 -------------------------*/
#sec4{padding: 54px 0 0;}
#sec4.content_box .content .box {padding: 40px 0 0;}
#sec4.content_box .content .box .text_box { padding:0;}
#sec4.content_box .content .box .list_box { margin:43px 0 0;}
#sec4.content_box .content .contact_gray_bg{background: #EEEBE7; padding: 13px; margin: 55px auto 0;}
#sec4.content_box .content .contact_gray_bg .bg_white{background: #fff; padding: 37px 50px 39px;}
#sec4.content_box .content .contact_gray_bg .bg_white .flex{display: flex; align-items: center; justify-content: center;}
#sec4.content_box .content .contact_gray_bg .bg_white .tt_box{}
#sec4.content_box .content .contact_gray_bg .bg_white .tt_box img{margin: 0 51px 0 0;}
#sec4.content_box .content .contact_gray_bg .bg_white .tt_box .text{width: 300px;}
#sec4.content_box .content .contact_gray_bg .bg_white .tt_box h4{font-size: 13px; font-family: 'Noto-Sans-JP', sans-serif; font-weight: 700;padding: 0; border: none;}
#sec4.content_box .content .contact_gray_bg .bg_white .tt_box .title_tt{padding: 14px 0 0; font-size: 21px; line-height: 143%;font-weight: 700;}
#sec4.content_box .content .contact_gray_bg .bg_white .tt_box p.tt{font-size: 12px; padding: 18px 0 0; line-height: 160%;}
#sec4.content_box .content .contact_gray_bg .bg_white .btn_box{padding: 41px 0 0;}
#sec4.content_box .content .contact_gray_bg .bg_white .btn_box a{display: block; width: 49px; border-radius: 1000px; color: #FFFFFF; text-align: center; line-height: 160%; padding: 14px 0 17px; width: 248px; font-size: 11px;}
#sec4.content_box .content .contact_gray_bg .bg_white .btn_box a.btn_1{background: #D67D4E; margin: 0 13px 0 0;}
#sec4.content_box .content .contact_gray_bg .bg_white .btn_box a.btn_2{background: #000000;}

/*------------------------- #casestudy -------------------------*/
#casestudy{padding: 100px 0 0;}
#casestudy h3{font-size: 39px; line-height: 143%;  font-weight: 600; text-align: center;padding: 0 0 37px;}

#casestudy .responsive-inner{ padding: 0 5%; }
#casestudy .tab-panel{ border-bottom: 1px solid #000; }
#casestudy .tab-group{ display: flex; align-items: stretch; border-bottom: 1px solid #000; }
#casestudy .tab-group .tab{ display: flex; align-items: center; justify-content: center; width: 210px; padding: 16px 10px; border-width: 1px 1px 0 0; border-color: #000; border-style: solid; font-size: 19px; font-weight: 800; }
#casestudy .tab-group .tab.is-active{ position: relative; }
#casestudy .tab-group .tab.is-active:before{ z-index: 10; position: absolute; content: ""; bottom: -1px; left: 0; width: 100%; height: 2px; background: #fff; }

#casestudy .panel{border-bottom: 1px solid #000; padding: 0 0 31px; display: block;}
#casestudy .panel:not(:last-child){margin: 0 0 77px; padding: 0 0 31px;}

#casestudy .btn_box{padding: 49px 0 155px;}
#casestudy .btn_box .btn{width: 308px; margin:0 auto; display: block; height: auto; border-radius: 1000px; border: 1px solid #000; color: #000; text-align: center; padding: 23px 10px 23px 0; font-size: 18px; line-height: 160%; position: relative; }
#casestudy .btn_box .btn img{position: absolute; top: 50%; transform: translateY(-50%); right: 12px;}

@media only screen and (max-width: 1500px) {
	.main_box .aside_box.media{display: none;}
}

@media only screen and (max-width: 768px) {
	.wrapper{ width:90%; max-width:initial; }
	.s-wrapper{ width:90%; max-width:initial; }
	.min_inner{max-width: 100%; }
	.main_box{display: flex; align-items: flex-start; padding: 69px 0 0;}
	.main_box .sec_box{margin: 0 auto;}
	.content_box .sp_inner{width: 90%; margin: 0 auto;}
	
	.content_box .list_box{border: 4px solid #EBEBEB; padding: 15px 16px 24px; margin: 30px 0 0;}
	.content_box .list_box h3,
	.content_box .list_box h5{font-size: 16px; line-height: 150%; text-align: center; }
	.content_box .list_box ul{padding: 16px 0 0 14px; }
	.content_box .list_box ul li{ font-weight: 400; font-size: 14px; line-height: 150%; text-indent: -14px; }
	.content_box .list_box ul li:not(:last-child){padding: 0 0 5px;}
	.content_box .list_box ul li::marker { font-size: 75%; }
	
	.content_box .gray_bg{ padding: 26px 6% 29px 5%;}
	.content_box .gray_bg h3{ font-size: 16px; padding: 0 0 16px;}
	.content_box .gray_bg h3 span{font-size: 20px; line-height: 145%; padding: 0px 11px 0 0;}
	.content_box .gray_bg ul{padding: 18px 20px 27px 15px;}
	.content_box .gray_bg ul li{ line-height: 163%; font-size: 16px; padding-left: 22px;}
	.content_box .gray_bg ul li:not(:last-child){margin: 0px 0 20px;}
	.content_box .gray_bg ul li:before{width: 10px; height: 10px; left: 0px; top:9px;}
	
	.content_box .img_box{padding: 26px 0 0;}
	.content_box .content{padding: 0px;}
	.content_box .content .box{width: 100%; margin: 0 auto; padding:0;}
	.content_box .content .box h4 {line-height: 140%; font-size: 20px; padding:30px 0 10px;}
	.content_box .content .box .text_box { padding: 0;}
	.content_box .content .box .text_box p{font-size: 16px; line-height: 170%; padding: 15px 0 0;}
	
	.content_box .content .box .table_box h5{ font-size: 18px; line-height: 120%; padding: 20px 0 6px;}
	.content_box .content .box .table_box table thead tr th{padding: 3px 9px 7px; font-size: 12px; line-height: 167%;}
	.content_box .content .box .table_box table thead tr th:nth-child(2){padding: 3px 9px 7px;}
	
	.content_box .content .box .table_box table tbody tr th{font-size: 14px; line-height: 129%; width: 100px; padding: 19px 15px 24px 15px;}
	.content_box .content .box .table_box table tbody tr td{font-size: 14px; line-height: 158%; padding: 8px 19px 9px 17px;}
	
	.content_box .content .youtube_box {padding: 40px 0 0;}
	
	.content_box .slider_box {width: 100%; padding: 38px 0 27px;}
	.content_box .slider_box .img{margin: 0 8px;}
	.content_box .slider_box .slick-dots li{ width: 7px; height: 7px; margin: 0 5px;}
	
	
	/*------------------------- .main_box -------------------------*/
	body.stop{overflow: hidden; position: fixed;}

	.main_box{display: block; padding: 0px; position: unset;}
	.main_box .select_box{border-bottom: 1px solid #D8D8D8; padding: 17px 0 6px; width: 100%; z-index: 100; background: #fff;position: relative; }
	.main_box .select_box .select_flex{display: flex; width: 90%; margin: 0 auto; justify-content: space-between;}
	.main_box .select_box .select_flex p{color: #C1C1C1; font-size: 14px; background: #fff; text-align: center; padding: 2px 19px 4px 22px; border-radius: 1000px; font-weight: 700; line-height: 136%;}	
	.main_box .select_box .select_flex p.active{background: #3C3C3C; color: #fff;}
	
	.main_box .sp_none{display: none;}
	.main_box .sp_none.active{display: block;}
	.main_box #select_1.active,
	.main_box #select_3.active{position: absolute; background: #fff; z-index: 1; height: 100vh; top: 0px;padding: 0;box-sizing: unset; overflow-y: scroll;}
	.main_box #select_1.active{padding: 0; height: 100vh;}
	.main_box #select_1 .over_scroll{height: 100%; max-height: none; overflow-y: auto; padding: 82px 0 168px;}
	.main_box #select_3 .over_scroll{height: 100%; max-height: none; overflow-y: auto; padding: 100px 13px 190px;}
	
	.main_box .aside_box{width: 100%;}
	.main_box .aside_box h3{font-size: 16px; padding: 0 0 7px; margin: 0 26px;}
	
	.main_box .aside_box.index .bg_box{ padding: 40px 0 0px;}
	.main_box .aside_box.index .link_list{padding: 25px 0px 48px; width: 90%; margin: 0 auto;}
	.main_box .aside_box.index .link_list ul li.link:not(:last-child){padding: 0 0 30px;}
	.main_box .aside_box.index .link_list ul li.link a.title_link{padding: 0 14px;margin: 0 0 8px;}
	.main_box .aside_box.index .link_list ul li.link ul .sub_link a{font-size: 15px; line-height: 150%; padding: 0px 0 0 33px;}
	.main_box .aside_box.index .link_list ul li.link_1.link ul .sub_link a{font-size: 16px;padding: 0px 0 0 33px;}
	.main_box .aside_box.index .link_list ul li.link ul .sub_link a:before{width: 4px; height: 4px; top: 11px;}
	
	.main_box .aside_box.index .link_list ul li.link_1 ul{padding: 0; }
	.main_box .aside_box.index .sns_box{padding: 24px 9% 28px 7%; }
	.main_box .aside_box.index .sns_box .sns a:not(:last-child){margin: 0 23px 0 0;}
	.main_box .aside_box.index .sns_box .btn a:not(:last-child){margin: 0 39px 0 0;}
	.main_box .aside_box.index .btn_box{padding: 24px 5% 28px; justify-content: center; }
	.main_box .aside_box.index .btn_box a{display: block; font-size: 15px; line-height: 187%;}
	.main_box .aside_box.index .btn_box a img{margin: 0 9px 0 0;}
	.main_box .aside_box.index .btn_box a.btn_1{margin: 0 80px 0 0;}
	.main_box .aside_box.index .btn_box a.btn_1 img{width: 16px; height: auto;}
	.main_box .aside_box.index .btn_box a.btn_2 img{width: 24px; height: auto;}
	.main_box .aside_box.index .btn_box p{font-size: 13px;line-height: 100%;}
	.main_box .aside_box.index .btn_box p img{margin: 0 9px 0 0;}
	
	.main_box .aside_box.media{padding: 15px 13px;}
	.main_box .aside_box.media .over_scroll {  padding: 0};
	.main_box .aside_box.media h3{margin: 0px;}
	.main_box .aside_box.media .media_box{padding: 0;}
	
	.main_box .aside_box.media .media_box a.youtebe_mark:before{width: 100%; height: 100%;}
	/*------------------------- #firstview -------------------------*/
	#firstview{width: 100%; height: auto; }
	#firstview img{width: 100%; height: auto; }
	
	/*------------------------- #sec1 -------------------------*/
	#sec1{padding: 25px 0 0;}
	#sec1 h1{ font-size: 22px; line-height: 146%; padding: 0px 0 16px;}
	#sec1 h2{ font-size: 14px; line-height: 143%; padding: 0 0 6px;}
	#sec1 .box{width: 100%; margin: 0 auto;}
	#sec1 .box .logo{ padding: 5px 0 0;}
	#sec1 .box .flex{ display: block; }
	#sec1 .box .flex img{margin: 0 ;}
	#sec1 .box .flex p{font-size: 12px; line-height: 184%; padding: 0; }
	#sec1 .box .flex p span{font-size: 12px; line-height: 184%; }
	#sec1 .box .tag_tt{font-size: 14px; line-height: 143%;  font-weight: 300; padding: 20px 0 43px;}
	#sec1 .box .tbl_box{padding: 24px 0 0;}
	#sec1 .box .tbl_box .flex:not(:last-child) p.title_tt,
	#sec1 .box .tbl_box .flex:not(:last-child) p.tag{margin-bottom: 19px;}
	#sec1 .box .tbl_box .flex p.title_tt{font-size: 12px; line-height: 142%; padding: 7px 0 8px; width: 121px; margin: 0;}
	#sec1 .box .tbl_box .flex p.tag{display: block; font-size: 14px; width: 100%;line-height: 172%;}
	
	
	#sec1.content_box .img_box { padding: 20px 0 0; }
	
	/*------------------------- #sec2 -------------------------*/
	#sec2{padding: 45px 0 0;}
	#sec2 .slider_box{margin: 0;}
	
	/*------------------------- #sec3 -------------------------*/
	#sec3{padding: 25px 0 0;}
	#sec3.content_box .content .box .text_box { padding:0;}
	#sec3 .slider_box{margin: 0;}
	#sec3.content_box .content .box h4{line-height: 140%; font-size: 20px;}
	
	/*------------------------- #sec4 -------------------------*/
	#sec4{padding: 45px 0 0;}
	#sec4.content_box .content .box {padding: 0 0 0;}
	#sec4.content_box .content .box .text_box { padding: 0 0 0;}
	#sec4.content_box .content .box .list_box { margin:30px 0 0;}
	#sec4.content_box .content .contact_gray_bg{padding: 13px; margin: 40px auto 0;}
	#sec4.content_box .content .contact_gray_bg .bg_white{padding: 21px 7px 28px;}
	#sec4.content_box .content .contact_gray_bg .bg_white .flex{display: flex; align-items: center; justify-content: center;}
	#sec4.content_box .content .contact_gray_bg .bg_white .tt_box{display: block;text-align: center; padding: 0 10px;}
	#sec4.content_box .content .contact_gray_bg .bg_white .tt_box img{margin: 25px 0 0;width: 80.4%; height: auto;}
	#sec4.content_box .content .contact_gray_bg .bg_white .tt_box .text{width: auto;}
	#sec4.content_box .content .contact_gray_bg .bg_white .tt_box h4{font-size: 13px;text-align: center; }
	#sec4.content_box .content .contact_gray_bg .bg_white .tt_box .title_tt{ padding: 10px 0 0; font-size: 19px; line-height: 143%; text-align: center;}
	#sec4.content_box .content .contact_gray_bg .bg_white .tt_box p.tt{font-size: 12px; padding: 10px 0 0; line-height: 150%; text-align: left;}
	#sec4.content_box .content .contact_gray_bg .bg_white .btn_box{padding: 16px 0 0;}
	#sec4.content_box .content .contact_gray_bg .bg_white .btn_box a{line-height: 147%; padding: 12px 0 16px; width: 49%; font-size: 13px;}
	#sec4.content_box .content .contact_gray_bg .bg_white .btn_box a.btn_1{margin: 0 2% 0 0;}
	
	/*------------------------- #casestudy -------------------------*/
	#casestudy{padding: 45px 0 0;}
	#casestudy h3{font-size: 19px; width: 90%; margin: 0 auto;padding: 0 0 22px;}
	
	#casestudy .responsive-inner{ padding: 0 5%; }
	#casestudy .tab-group{ display: flex; align-items: stretch; border-bottom: 1px solid #000; }
	#casestudy .tab-group .tab{ display: flex; align-items: center; justify-content: center; width: 210px; padding: 16px 10px; border-width: 1px 1px 0 0; border-color: #000; border-style: solid; font-size: 19px; font-weight: 800; }
	#casestudy .tab-group .tab.is-active{ position: relative; }
	#casestudy .tab-group .tab.is-active:before{ z-index: 10; position: absolute; content: ""; bottom: -1px; left: 0; width: 100%; height: 2px; background: #fff; }
	
	#casestudy .panel{border-bottom: 1px solid #000; padding: 0 0 31px; display: block;}
	#casestudy .panel:not(:last-child){margin: 0 0 77px; padding: 0 0 31px;}
	
	#casestudy .btn_box {padding: 25px 0 55px;width: 85%; margin:0 auto;}
	#casestudy .btn_box .btn{width: 100%; padding: 17px 10px 18px 0; font-size: 16px;line-height: 157%; }

	/* carousel SP */
	#image_modal .modal-arrow-prev { left: 8px;}
	#image_modal .modal-arrow-next { right: 8px;}
	#image_modal .modal-arrow { width: 36px; height: 36px; font-size: 18px;}
	#image_modal .modal_close { top: -42px; width: 32px; height: 32px; font-size: 18px;}
}


