@charset "utf-8";
/* CSS Document */
.page_thumb .hambarger_box {display: none;}

/*about*/
#about .box01 {background: url("img/about/box01_bg.jpg")top left repeat; padding-bottom: 80px;}
#about .box01 .title {background: url("img/about/box01_title_bg.jpg") top left repeat; padding: 20px 0; position: relative; overflow: hidden;}
#about .box01 span {font-size: 30px; line-height: 1; position: relative; z-index: 10;}
#about .box01 h2 p::before {content: ''; background: url("img/about/box01_icon01.svg") no-repeat; width: 30px; height: 30px; position: absolute; left: 355px; top: 10px;}
#about .box01 h2::before {content: ''; position: absolute; width: 245px; height: 100px; background: rgba(12, 26, 43, .6); transform: skewX(-46deg); left: 40px; bottom: 0;}
#about .box01 h2::after {content: ''; position: absolute; width: 245px; height: 100px; background: rgba(12, 26, 43, .6); transform: skewX(-46deg); left: 80px; bottom: 0;}
#about .box01 .inner {margin-top: 60px; padding: 0 60px; font-size: 16px; line-height: 2.3;}
#about .box01 .inner .img01 {margin-right: 60px;}
#about .box01 .inner .img02 {margin-left: 60px;}
#about .box01 .img_box {margin-top: 60px; padding: 0 60px;}
#about .bnr01 .bdr01 {background: url("img/about/bnr01_bg02.svg") center left no-repeat,url("img/about/bnr01_bg01.jpg") top left repeat; border: 5px solid #1c334f; padding: 60px 0;} 
#about .bnr01 .bdr02 {height: 10px; background: url("img/about/box01_title_bg.jpg") top left repeat;} 
#about .bnr01 img {margin: auto;}
#about .bnr01 p {font-size: 40px; line-height: 1;}
#about .bnr01 p:nth-of-type(1) {margin: 55px auto 25px;}
#about .box02 {background: url("img/about/box01_bg.jpg")top left repeat; padding-bottom: 60px;}
#about .box02 .title {background: url("img/about/box02_title_bg.jpg") top left no-repeat; outline: 10px solid rgba(255,255,255,.4); outline-offset: -10px; padding: 70px 250px;}
#about .box02 .title .box {background: rgba(12, 26, 43, .75); padding: 50px 0 60px;}
#about .box02 .title .box p {font-size: 30px; line-height: 1.7;}
#about .box02 .title .box h2 {position: relative;}
#about .box02 .title .box h2 span {font-size: 60px; line-height: 1; position: relative; display: table; margin: 40px auto 0;}
#about .box02 .title .box h2::before {content: ''; background: url("img/about/box01_icon01.svg") no-repeat; width: 30px; height: 30px; position: absolute; left: 160px; top: -5px;}
#about .box02 .text01 {font-size: 18px; line-height: 2;}
#about .box02 .text02 {margin-top: 40px;}
#about .box02 .text_area {position: relative; padding: 50px 0 60px;}
#about .box02 .text_area .icon {position: absolute; top: 40px; left: 40px;}
#about .box02 .charm_box {width: 1050px; margin: auto;}
#about .box02 .charm_box .box {outline: 1px solid #1c334f; outline-offset: 10px; background: #1c334f; width: 300px; height: 230px; margin-top: 10px; padding: 30px 0 50px; position: relative; box-sizing: border-box;}
#about .box02 .charm_box .box p:nth-of-type(1) {font-size: 25px; line-height: 1;}
#about .box02 .charm_box .box .bdr {width: 240px; height: 1px; background: #fff; margin: 25px auto;}
#about .box02 .charm_box .box p:nth-of-type(2) {font-size: 25px; line-height: 1.6;}
#about .box02 .charm_box .box::after {content: ''; width: 0; height: 0; border-style: solid; border-width: 15px 26px 0 26px; border-color: #e3ab03 transparent transparent transparent; position: absolute; right: 0; left: 0; bottom: -9px; margin: auto;}
#about .box02 .con {margin-top: 100px; padding-top: -100px;}
#about .box02 .con .txt01 {font-size: 35px; line-height: 1;}
#about .box02 .con h3 {font-size: 40px; line-height: 1; margin-top: 40px;}
#about .box02 .con .inner {font-size: 16px; line-height: 2.3; padding: 0 60px; margin-top: 60px;}
#about .box02 .con .inner img {margin-right: 60px;}
#about .box02 .bnr {background: url("img/about/box02_bnr_bg.jpg")top left repeat; padding: 75px 0; width: calc(100% - 120px); margin: auto; margin-top: 60px; position: relative; overflow: hidden;}
#about .box02 .bnr p {font-size: 35px; line-height: 1;}
#about .box02 .bnr .txt02 {margin-top: 25px;}
#about .box02 .bnr .txt01::before {margin-right: 70px;}
#about .box02 .bnr .txt01::after {margin-left: 50px;}
#about .box02 .bnr .txt01::before,#about .box02 .bnr .txt01::after {content: ''; display: block; flex-grow: 1; height: 1px; background: #fff;}
#about .box02 .bnr .square01 {width: 160px; height: 150px; background: rgba(255,255,255,.15); position: absolute; top: 33px; left: 75px;}
#about .box02 .bnr .square02 {width: 250px; height: 175px; background: rgba(255,255,255,.15); position: absolute; top: 120px; left: 35px;} 	
#about .box02 .bnr .square03 {width: 250px; height: 175px; background: rgba(255,255,255,.15); position: absolute; bottom: 120px; right: 40px;}
#about .box02 .con02 .inner img {margin-right: 0; margin-left: 60px;}
#about .bnr02 {background: url("img/about/bnr02_bg.jpg")top left no-repeat; padding: 84px 326px;}
#about .bnr02 .txt {background: #1c334f; padding:  20px 0 40px;}
#about .bnr02 .txt p:nth-of-type(1) {font-size: 35px; line-height: 1.8;}
#about .bnr02 .txt p:nth-of-type(2) {font-size: 50px; line-height: 1;}

/*model_sim*/
#model_sim .main {background: url("img/model_sim/main.jpg")top center no-repeat; outline: 1px solid #fff; outline-offset: -10px; padding: 160px 227px 100px 227px;}
#model_sim .main .txt {background: rgba(255,255,255,.6); padding: 65px 60px 60px; position: relative; line-height: 1;}
#model_sim .main .txt::before {content: ''; width: 0; height: 0; border-style: solid; border-width: 0 372.5px 75px 372.5px; border-color: transparent transparent #ffffff transparent; opacity: .6; position: absolute; top: -75px; right: 0; left: 0; margin: auto;}
#model_sim .main .txt .title {background: #1c334f; padding: 13px 0; transform: skewX(25deg); position: absolute; top: -30px; right: 0; left: 0; margin: auto; display: block; width: 640px;}
#model_sim .main .txt .title span {font-size: 32px; line-height: 1; transform: skewX(-25deg); display: block; position: relative; letter-spacing: 3px;} 
#model_sim .main .txt .title span::before {content: ''; width: 0; height: 0; border-style: solid; border-width: 0 25px 55px 25px; border-color: transparent transparent #1c334f transparent; position: absolute; bottom: -13px; left: -11px;}
#model_sim .main .txt .title span::after {content: ''; width: 0; height: 0; border-style: solid; border-width: 55px 25px 0 25px; border-color: #1c334f transparent transparent transparent; position: absolute; top: -13px; right: -14px;}
#model_sim .main .txt .txt01 {font-size: 40px; border-bottom: 3px solid #1c334f; padding-bottom: 10px; display: table; letter-spacing: 4px; margin-bottom: 10px;}
#model_sim .main .txt .txt02 {font-size: 60px; letter-spacing: 4px; border-bottom: 3px solid #1c334f; padding-bottom: 10px; display: table; margin-bottom: 10px;}
#model_sim .main .txt .txt03 {font-size: 60px; letter-spacing: 2px;}
#model_sim .main .txt .txt03 span {font-size: 50px;}
#model_sim .box01 {background: url("img/model_sim/box01_bg.jpg") top left repeat; padding-top: 60px;}
#model_sim .box01 h2 {font-size: 40px; line-height: 1; padding: 10px 0; background: #1c334f; width: calc(100% - 120px); margin: auto; letter-spacing: 3px;}
#model_sim .box01 .inner {margin-top: 60px; padding: 0 60px; position: relative;}
#model_sim .box01 .inner .txt {width: 620px; background: rgba(255,255,255,.9); padding: 30px; position: absolute; right: 60px; bottom: 20px; box-sizing: border-box;}
#model_sim .box01 .inner .txt h3 {font-size: 30px; margin-bottom: 20px; letter-spacing: 3px;}
#model_sim .box01 .inner .txt p {font-size: 16px; line-height: 2.3; letter-spacing: 1px;}
#model_sim .box01 .img_box {margin-top: 60px; padding: 0 60px;}
#model_sim .box01 .img_box img {margin-right: 10px;}
#model_sim .box01 .img_box img:nth-of-type(3) {margin-right: 0;}
#model_sim .box01 .inner02 img {margin-left: auto;}
#model_sim .box01 .inner02 .txt {left: 60px;}
#model_sim .box01 .con {margin-top: 60px; padding: 0 60px; position: relative;}
#model_sim .box01 .con .left .img01 {margin-top: 45px;} 
#model_sim .box01 .con .left .txt {background: #1c334f; padding: 20px; position: absolute; bottom: 160px; left: 278px; letter-spacing: 3px;}
#model_sim .box01 .con .left .txt::after {content: ''; width: 0; height: 0; border-style: solid; border-width: 20px 20px 0 20px; border-color: #1c334f transparent transparent transparent; position: absolute; bottom: -20px; right: 0; left: 0; margin: auto;}
#model_sim .box01 .con .left .txt p:nth-of-type(1) {font-size: 24px; line-height: 1;}
#model_sim .box01 .con .left .txt p:nth-of-type(2) {font-size: 40px; line-height: 1; margin-top: 10px;}
#model_sim .box01 .con .left {margin-right: 60px;}
#model_sim .box01 .con .left .text {line-height: 1;font-size: 45px; opacity: .3; position: absolute; top: 320px; left: 500px;}
#model_sim .box01 .con .left .text::before {content: ''; background: url("img/model_sim/box01_bdr01.svg") no-repeat; width: 63px; height: 62px; position: absolute; top: 21px; left: -80px;}
#model_sim .box01 .con .left .text::after {content: ''; background: url("img/model_sim/box01_bdr02.svg") no-repeat; width: 63px; height: 82px; position: absolute; top: -60px; right: -85px;}
#model_sim .box01 .con .right {width: 485px;}
#model_sim .box01 .con .right .img02 {position: absolute; top: 205px; right: 60px;}
#model_sim .box01 .con .right .txt {margin-top: 190px; letter-spacing: 1px;}
#model_sim .box01 .con .right .txt p:nth-of-type(1) {font-size: 30px; line-height: 1; margin-bottom: 15px; letter-spacing: 3px;}
#model_sim .box01 .con .right .txt p:nth-of-type(2) {font-size: 16px; line-height: 2.3;} 
#model_sim .box01 .bnr {background: url("img/model_sim/box01_bnr_bg.jpg") top left no-repeat; margin-top: 60px; border: 3px solid #1c334f; padding: 90px 0 85px;}
#model_sim .box01 .bnr p:nth-of-type(1)::before {content: ''; background: url("img/model_sim/box01_bnr_icon.svg") no-repeat; position: absolute; top: -43px; right: 0; left: 0; margin: auto;  width: 73px; height: 43px;}
#model_sim .box01 .bnr p:nth-of-type(1) {font-size: 35px; line-height: 1; background: #1c334f; padding: 5px 15px 5px 30px; display: table; margin: auto; position: relative; margin-bottom: 20px;}
#model_sim .box01 .bnr p:nth-of-type(2) {font-size: 50px; line-height: 1;}
#model_sim .box02 {background: url("img/model_sim/box02_bg.jpg") top left repeat;}
#model_sim .box02 .title {background: url("img/model_sim/box02_title_bg.jpg")top left no-repeat; padding: 80px 227px; border: 3px solid #1c334f; position: relative; box-sizing: border-box;}
#model_sim .box02 .title .txt {background: rgba( 28, 51, 79, .9); border: 3px solid #fff; padding: 40px 75px;}
#model_sim .box02 .title .txt p:nth-of-type(1) {font-size: 30px; line-height: 1.5;}
#model_sim .box02 .title .txt p:nth-of-type(2){font-size: 50px; line-height: 1; margin: 30px 0 20px;}
#model_sim .box02 .title h2 {font-size: 50px; line-height: 1;}
#model_sim .box02 .title .logo {position: absolute; bottom: 20px; left: 20px;}
#model_sim .box02 .con {padding: 0 60px; margin-top: 60px;}
#model_sim .box02 .con .theme {background: url("img/model_sim/box02_theme_bg.jpg")top left repeat; font-size: 40px; line-height: 1; position: relative;}
#model_sim .box02 .con .theme .no {background: #e3aa03; padding: 20px 15px; font-size: 60px;}
#model_sim .box02 .con .theme h3 {padding-left: 140px; letter-spacing: 3px;}
#model_sim .box02 .con .theme .point {position: absolute; bottom: -6px; right: 0; font-size: 60px; opacity: .1;}
#model_sim .box02 .con .theme .point span {font-size: 100px;}
#model_sim .box02 .con .inner {margin-top: 60px; font-size: 16px; line-height: 2.3;}
#model_sim .box02 .con .inner img {margin-right: 60px;}
#model_sim .box02 .con .bnr01 {margin-top: 60px; background: url("img/model_sim/box02_bnr01.jpg")top left no-repeat; height: 300px; border: 3px solid #1c334f; position: relative; box-sizing: border-box;}
#model_sim .box02 .con .bnr01 p {font-size: 40px; line-height: 1.3; padding: 20px 25px 20px 60px; position: absolute; bottom: 0; left: 0; background: #1c334f; letter-spacing: 1px;}
#model_sim .box02 .con .inner .img02 {margin-left: 60px; margin-right: 0;}
#model_sim .box02 .con .bnr02 {background: url("img/model_sim/box02_bnr02.jpg")top left no-repeat;}
#model_sim .box02 .con .bnr02 p {right: 0; left: inherit; padding: 20px 30px 20px 40px;}
#model_sim .box02 .con:nth-of-type(2) .theme h3 {padding-left: 222px;}
#model_sim .box02 .con:nth-of-type(2) {padding-bottom: 60px;}
#model_sim .banner01 {border: 3px solid #1c334f;}
#model_sim .banner01 .over {background: url("img/model_sim/banner01_bg.jpg") top left no-repeat; padding-top: 35px; height: 327px; position: relative; box-sizing: border-box;}
#model_sim .banner01 .over p:nth-of-type(1) {font-size: 50px; line-height: 1; text-shadow: #fff 3px 3px 5px, #fff -3px 3px 5px, #fff 3px -3px 5px, #fff -3px -3px 5px; padding-left: 30px;}
#model_sim .banner01 .over p:nth-of-type(2) {font-size: 36px; line-height: 1; text-shadow: #fff 3px 3px 5px, #fff -3px 3px 5px, #fff 3px -3px 5px, #fff -3px -3px 5px; padding-left: 30px; margin-top: 20px;}
#model_sim .banner01 .over p:nth-of-type(3) {font-size: 150px; line-height: 1; position: absolute; bottom: -10px; right: -10px;}
#model_sim .banner01 .under {background: #1c334f; padding: 24px 0; box-sizing: border-box;}
#model_sim .banner01 .under .logo {padding-left: 30px;}
#model_sim .banner01 .under p {font-size: 30px; line-height: 1; padding-right: 30px;}
#model_sim .plan_box {margin-top: 60px; position: relative;}
#model_sim .plan_box .item {position: relative;}
#model_sim .plan_box .btn {position: absolute; right: 0; bottom: 0; z-index: 10; width: 450px; height: 60px; box-sizing: border-box; border: 2px solid #ad8100; background: #e3aa03; font-size: 14px;}
#model_sim .plan_box .txt01 span {font-size: 60px; margin-right: 20px;}
#model_sim .plan_box .txt01 {font-size: 20px; line-height: 1; transform: rotate(-7deg); position: absolute; top: -10px; left: 0;}
#model_sim .banner02 {margin-top: 60px; background: url("img/model_sim/banner02_bg.jpg")top left no-repeat; outline: 10px solid rgba(255,255,255,.4); outline-offset: -10px; padding: 70px 265px;}
#model_sim .banner02 .txt {background: url("img/model_sim/banner02_txt_bg.jpg")top left repeat; padding: 30px 80px 40px; position: relative;}
#model_sim .banner02 .txt p {font-size: 33px; line-height: 1.5; word-break: keep-all;}
#model_sim .banner02 .txt .logo {margin: auto; margin-top: 15px;}
#model_sim .banner02 .txt::before {content: ''; background: url("img/model_sim/banner02_icon.svg") no-repeat; width: 30px; height: 30px; position: absolute; top: -15px; left: -15px;}
#model_sim .banner02 .txt::after {content: ''; background: url("img/model_sim/banner02_icon.svg") no-repeat; width: 30px; height: 30px; position: absolute; bottom: -15px; right: -15px;}

/*model_b-kle*/
#model_sim .model_b-kle .main {background: url(img/model_b-kle/main.jpg)top center no-repeat;}
#model_sim .model_b-kle .main .txt .title {background: #000;}
#model_sim .model_b-kle .main .txt .title span::before {border-color: transparent transparent #000 transparent;}
#model_sim .model_b-kle .main .txt .title span::after {border-color: #000 transparent transparent transparent;}
#model_sim .model_b-kle .main .txt .txt01,#model_sim .model_b-kle .main .txt .txt02 {border-bottom: 3px solid #000;}
#model_sim .model_b-kle .box01 {background: url(img/model_b-kle/box01_bg.jpg) top left repeat;}
#model_sim .model_b-kle .box01 h2 {background: #000;}
#model_sim .model_b-kle .box01 .con .left .txt p:nth-of-type(2) {font-size: 30px;}
#model_sim .model_b-kle .box01 .con .left .txt {background: #000;}
#model_sim .model_b-kle .box01 .con .left .txt::after {border-color: #000 transparent transparent transparent; bottom: -15px;}
#model_sim .model_b-kle .box01 .con .left .txt {bottom: 175px; left: 220px;}
#model_sim .model_b-kle .box01 .con .left .text {color: #000;}
#model_sim .model_b-kle .box01 .con .left .text::before {background: url(img/model_b-kle/box01_bdr01.svg) no-repeat; top: 20px; left: -135px; width: 115px; height: 62px;}
#model_sim .model_b-kle .box01 .con .left .text::after {background: url(img/model_b-kle/box01_bdr02.svg) no-repeat; top: -61px;}
#model_sim .model_b-kle .box01 .bnr {background: url(img/model_b-kle/box01_bnr_bg.jpg) center center no-repeat; border: 3px solid #000;}
#model_sim .model_b-kle .box01 .bnr p:nth-of-type(1)::before {background: url(img/model_b-kle/box01_bnr_icon.svg) no-repeat;}
#model_sim .model_b-kle .box01 .bnr p:nth-of-type(1) {background: #000;}
#model_sim .model_b-kle .box02 {background: url("img/model_b-kle/box02_bg.jpg")top left repeat;}
#model_sim .model_b-kle .box02 .title {background: url(img/model_b-kle/box02_title_bg.jpg)top left no-repeat; border: 3px solid #000;}
#model_sim .model_b-kle .box02 .title .txt {background: rgba( 0, 0, 0, .9);}
#model_sim .model_b-kle .box02 .con .theme {background: #000;}
#model_sim .model_b-kle .box02 .con .bnr01 {background: url(img/model_b-kle/box02_bnr01.jpg)top left no-repeat; border: 3px solid #000;}
#model_sim .model_b-kle .box02 .con .bnr01 p {background: #000;}
#model_sim .model_b-kle .box02 .con .bnr02 {background: url(img/model_b-kle/box02_bnr02.jpg)top left no-repeat;}
#model_sim .model_b-kle .banner01 {border: 3px solid #000;}
#model_sim .model_b-kle .banner01 .over {background: url(img/model_b-kle/banner01_bg.jpg) top left no-repeat;}
#model_sim .model_b-kle .banner01 .over p:nth-of-type(3) {color: #000;}
#model_sim .model_b-kle .banner01 .under {background: #000;}

/*model_g-all*/
#model_sim .model_g-all .main {background: url(img/model_g-all/main.jpg)top center no-repeat;}
#model_sim .model_g-all .main .txt {background: rgba(255,255,255,.8);}
#model_sim .model_g-all .main .txt::before {opacity: .8;}
#model_sim .model_g-all .main .txt .title {background: #bda366;}
#model_sim .model_g-all .main .txt .title span::before {border-color: transparent transparent #bda366 transparent;}
#model_sim .model_g-all .main .txt .title span::after {border-color: #bda366 transparent transparent transparent;}
#model_sim .model_g-all .main .txt .txt01,#model_sim .model_g-all .main .txt .txt02 {border-bottom: 3px solid #bda366;}
#model_sim .model_g-all .box01 {background: url(img/model_g-all/box01_bg.jpg) top left repeat;}
#model_sim .model_g-all .box01 h2 {background: #bda366;}
#model_sim .model_g-all .box01 .inner .txt {background: rgba(255,255,255,1);}
#model_sim .model_g-all .box01 .con .left .txt p:nth-of-type(2) {font-size: 30px;}
#model_sim .model_g-all .box01 .con .left .txt {background: #bda366;}
#model_sim .model_g-all .box01 .con .left .txt::after {border-color: #bda366 transparent transparent transparent; bottom: -15px;}
#model_sim .model_g-all .box01 .con .left .txt {bottom: 175px; left: 220px;}
#model_sim .model_g-all .box01 .con .left .text {color: #bda366;}
#model_sim .model_g-all .box01 .con .left .text::before {background: url(img/model_g-all/box01_bdr01.svg) no-repeat; top: 20px; left: -80px; width: 63px; height: 62px;}
#model_sim .model_g-all .box01 .con .left .text::after {background: url(img/model_g-all/box01_bdr02.svg) no-repeat; top: -61px;}
#model_sim .model_g-all .box01 .bnr {background: url(img/model_g-all/box01_bnr_bg.jpg) top left no-repeat; border: 3px solid #bda366;}
#model_sim .model_g-all .box01 .bnr p:nth-of-type(1)::before {background: url(img/model_g-all/box01_bnr_icon.svg) no-repeat;}
#model_sim .model_g-all .box01 .bnr p:nth-of-type(1) {background: #bda366;}
#model_sim .model_g-all .box02 {background: url("img/model_g-all/box01_bg.jpg")top left repeat;}
#model_sim .model_g-all .box02 .title {background: url(img/model_g-all/box02_title_bg.jpg)top left no-repeat; border: 3px solid #bda366;}
#model_sim .model_g-all .box02 .title .txt {background: rgba(189, 163, 102, .9);}
#model_sim .model_g-all .box02 .con .theme {background: #bda366;}
#model_sim .model_g-all .box02 .con .theme .no {background: #1c334f;}
#model_sim .model_g-all .box02 .con .bnr01 {background: url(img/model_g-all/box02_bnr01.jpg)top left no-repeat; border: 3px solid #bda366;}
#model_sim .model_g-all .box02 .con .bnr01 p {background: #bda366;}
#model_sim .model_g-all .box02 .con .bnr02 {background: url(img/model_g-all/box02_bnr02.jpg)top left no-repeat;}
#model_sim .model_g-all .banner01 {border: 3px solid #bda366;}
#model_sim .model_g-all .banner01 .over {background: url(img/model_g-all/banner01_bg.jpg) top left no-repeat;}
#model_sim .model_g-all .banner01 .over p:nth-of-type(3) {color: #bda366; right: -4px;}
#model_sim .model_g-all .banner01 .under {background: #bda366;}

/*sim*/

#sim .diagnose_box {padding: 250px 0; position: relative; z-index: 10;}
#sim .diagnose_box .txt01 {font-size: 40px; line-height: 1; font-weight: 900; letter-spacing: 2px; padding-left: 30px;}
#sim .diagnose_box .txt02 {font-size: 65px; line-height: 1; margin-top: 20px; font-weight: 900; letter-spacing: 5px; transition-delay: .1s;}
#sim .diagnose_box .txt03 {font-size: 35px; line-height: 1;}
#sim .diagnose_box h2 {margin: 80px 0 20px; font-size: 30px; font-weight: 900; transition-delay: .2s;}
#sim .diagnose_box .inner a {box-sizing: border-box; border: 1px solid #1c334f; width: 350px; height: 60px; font-size: 16px; line-height: 1; position: relative; color: #1c334f; font-weight: bold; overflow: hidden;}
#sim .diagnose_box .inner .item:nth-of-type(1) {transition-delay: .5s;}
#sim .diagnose_box .inner .item:nth-of-type(2) {margin-left: 50px; transition-delay: .6s;}
#sim .diagnose_box .inner a p {position: relative; z-index: 10; transition-duration: .5s;}
#sim .diagnose_box .inner a::after {content: ''; position: absolute; right: -110px; bottom: -100px; background: #1c334f; width: 150px; height: 150px; transition-duration: .4s; transform: rotate(45deg);}
#sim .diagnose_box .inner a:hover p {color: #fff;}
#sim .diagnose_box .inner a:hover::after {width: 550px; height: 450px; bottom: -100px;}
#sim .fade_slide_box {margin-bottom: 100px;}
#sim .swiper-pagination {text-align: left; padding-left: 20px; box-sizing: border-box;}
#sim .swiper-pagination-bullet {opacity: .5; width: 12px; height: 12px;}
#sim .swiper-pagination-bullet-active {opacity: 1;}

#sim .main {background: url("img/sim/main.jpg")top left no-repeat; position: relative; padding: 80px 0 50px; outline: 1px solid #fff; outline-offset: -10px; height: 600px; box-sizing: border-box;}
#sim .main .logo {margin-bottom: 40px;}
#sim .main .txt01 {font-size: 40px; line-height: 1; letter-spacing: 10px; text-shadow: #000 1px 1px 5px, #000 -1px 1px 5px, #000 1px -1px 5px, #000 -1px -1px 5px;}
#sim .main .txt02 {background: rgba(0,0,0,.8); position: absolute; bottom: 20px; width: 100%; padding: 20px 0;}
#sim .main .txt02 p:nth-of-type(1){font-size: 50px; line-height: 1;}
#sim .main .txt02 p:nth-of-type(2){font-size: 30px; line-height: 1; margin-top: 20px;}
#sim .box01 {background: url("img/sim/box01_bg.jpg")top left repeat; padding: 60px;}
#sim .box01 .top { height: 545px; position: relative;}
#sim .box01 .top h2 {font-size: 25px; line-height: 1.5; letter-spacing: 2px; background: #e3aa03; position: absolute; left: -30px; bottom: 55px; padding: 5px 30px; border: 1px solid #fff;}
#sim .box01 .top .img02 {position: absolute; right: 0; bottom: 0;}
#sim .box01 .top .txt01 p:nth-of-type(1){font-size: 40px; line-height: 1; text-shadow: #fff 5px 5px 10px, #fff -5px 5px 10px, #fff 5px -5px 10px, #fff -5px -5px 10px;}
#sim .box01 .top .txt01 p:nth-of-type(2){font-size: 40px; line-height: 1; opacity: .5; margin-top: 20px; letter-spacing: 4px;}
#sim .box01 .top .txt01 {position: absolute; top: 60px; right: 0;}
#sim .box01 .theme {font-size: 30px; line-height: 1; background: url("img/sim/box01_theme_bg.jpg")top left repeat; padding: 10px 0; width: 1080px; margin: auto; margin-top: 60px; letter-spacing: 3px; position: relative; z-index: 10;}
#sim .box01 .inner {margin-top: 60px; font-size: 16px; line-height: 2.3;}
#sim .box01 .inner .img01 {margin-right: 60px;}
#sim .box01 .inner .img02 {margin-left: 60px;}
#sim .box01 .con h3 {font-size: 30px; line-height: 1; margin-bottom: 60px; position: relative; letter-spacing: 3px;}
#sim .box01 .con h3::before {content: ''; background: url("img/sim/box01_icon.svg") no-repeat; width: 30px; height: 30px; position: absolute; top: -13px; left: -20px;}
#sim .box01 .con h3 span {position: relative;}
#sim .box01 .inner01 {position: relative;}
#sim .box01 .inner03 {margin-top: -40px;}
#sim .box01 .top h2::before {content: ''; background: url("img/sim/box01_bdr01.jpg") no-repeat; width: 1px; height: 652px; position: absolute; top: 85px; left: 170px;}
#sim .box01 .inner02::before {content: ''; background: url("img/sim/box01_bdr02.svg") no-repeat; width: 666px; height: 81px; position: absolute; top: -60px; left: 141px;}
#sim .box01 .inner02 {position: relative;}
#sim .box01 .inner02::after {content: ''; background: url("img/sim/box01_bdr03.jpg") no-repeat; width: 531px; height: 1px; position: absolute; bottom: 20px; left: 270px;}
#sim .box01 .inner02 img {margin-left: 135px;}
#sim .box01 .inner03 {position: relative;}
#sim .box01 .inner03::after {content: ''; background: url("img/sim/box01_bdr04.svg") no-repeat; width: 615px; height: 81px; position: absolute; bottom: -61px; right: 190px;}
#sim .box01 .inner03 img {margin-left: 0; margin-right: 140px;}
#sim .box01 .inner04 {position: relative;}
#sim .box01 .inner04::after {content: ''; background: url("img/sim/box01_bdr05.jpg") no-repeat; width: 1px; height: 60px; position: absolute; bottom: -61px; right: 190px;}
#sim .box01 .bnr {margin-top: 60px; position: relative; width: calc(100% + 120px); margin: 60px 0 0 -60px;}
#sim .box01 .bnr .txt {background: #1c334f; font-size: 35px; line-height: 1.3; padding: 25px 0 20px 30px; position: absolute; bottom: 0; right: 0;}
#sim .box02 {background: url("img/sim/box02_bg.jpg")top left repeat; padding-bottom: 70px; padding-top: 60px; margin-top: 100px;}
#sim .box02 .title {background: url("img/sim/box02_title_icon01.svg")top left no-repeat,url("img/sim/box02_title_icon02.svg")bottom right no-repeat,url("img/sim/box02_title_bg.jpg")top left no-repeat; padding: 70px 0 110px;}
#sim .box02 .title p:nth-of-type(1) {font-size: 30px; line-height: 1.8; text-shadow: #fff 3px 3px 5px, #fff -3px 3px 5px, #fff 3px -3px 5px, #fff -3px -3px 5px;}
#sim .box02 .title p:nth-of-type(2) {font-size: 50px; line-height: 1; margin-top: 50px; text-shadow: #fff 3px 3px 5px, #fff -3px 3px 5px, #fff 3px -3px 5px, #fff -3px -3px 5px;}
#sim .box02 .theme {font-size: 40px; line-height: 1; margin-top: 60px; position: relative;}
#sim .box02 h2::before,#sim .box02 h2::after {content: ''; display: block; flex-grow: 1; height: 2px; background: #000;}
#sim .box02 h2::before {margin-right: 108px; width: 210px;}
#sim .box02 h2::after {margin-left: 30px; width: 290px;}
#sim .box02 h2 .bdr01 {height: 2px; background: #000; width: 290px; position: absolute; top: 10px; bottom: 0; left: 0; margin: auto;}
#sim .box02 h2 .bdr02 {height: 2px; background: #000; width: 210px; position: absolute; top: 10px; bottom: 0; right: 0; margin: auto;}
#sim .box02 .inner {margin-top: 60px; padding: 0 60px; font-size: 16px; line-height: 2;}
#sim .box02 .inner .img01 {margin-right: 60px;}
#sim .box02 .theme02 {font-size: 30px; line-height: 1; background: url("img/sim/box01_theme_bg.jpg")top left repeat; padding: 10px 0; width: 1080px; margin: auto; letter-spacing: 3px; position: relative; z-index: 10;}
#sim .box02 .img_box {margin-top: 60px; padding: 0 60px; width: 1080px;}
#sim .box02 .img_box .box {width: 353px; margin-right: 10px;}
#sim .box02 .img_box .box:nth-of-type(3n) {margin-right: 0;}
#sim .box02 .img_box .box:nth-of-type(n + 4) {margin-top: 30px;}
#sim .box02 .img_box .box p {font-size: 18px; line-height: 1.5; margin-top: 20px;}
#sim .box02 .img_box .box p:nth-of-type(2) {font-size: 16px; margin-top: 5px; line-height: 1.5;}
#sim .box02 .panel {display: none; height: 100%;}
#sim .box02 .panel.is-show {display: block;}
#sim .box02 .table {box-sizing: border-box; border: 2px solid #000; background: #fff;}
#sim .box02 .table .over {background: #000; height: 70px; width: 100%; line-height: 1; font-size: 20px;}
#sim .box02 .table .title01 {width: 75%;}
#sim .box02 .table .title02 {width: 25%; height: auto; background: #12243A; box-sizing: border-box; border-left: 2px solid #000; line-height: 1.2;}
#sim .box02 .table .center_box {width: 50%; position: relative;}
#sim .box02 .table .line {border-top: 2px solid #000;}
#sim .box02 .table .line:nth-child(1) {border-top: none;}
#sim .box02 .table .txt01,#sim .box02 .table .txt02,#sim .box02 .table .txt03 {width: 25%; font-size: 14px; line-height: 1.5; padding: 10px; box-sizing: border-box; border-left: 2px solid #000; text-align: left;}
#sim .box02 .table .txt01 p,#sim .box02 .table .txt02 p,#sim .box02 .table .txt03 p {display: flex; align-items: center; justify-content: flex-start; height: 100%;}
#sim .box02 .table .txt03 p {justify-content: center;}
#sim .box02 .table .txt01 {background: #6b6b6b; border-left: none;}
#sim .box02 .table .txt02 {width: 50%;}
#sim .box02 .table .txt02.txt-none {height: 100%;}
#sim .box02 .table .txt03 {text-align: center;}
#sim .box02 .table .center_box .txt02:nth-child(1) {border-right: 2px solid #000;}
#sim .box02 .table .center_box .txt02:nth-child(2) {border-left: none;}
#sim .box02 .table.sim_table01 .title02 {background: #12243A;}
#sim .box02 .table.sim_table02 .title02 {background: #12243A;}
#sim .box02 .table.b-kle_table01 .title02 {background: #78A8C6;}
#sim .box02 .table.g-all_table01 .title02 {background: #001130;}
#sim .box02 .tab-group {display: none;}
#sim .box02 .tab-group .tab {width: calc(1010px / 4); height: 60px; display: flex; align-items: center; justify-content: center; color: #fff; font-size: 16px; cursor: pointer; position: relative;}
#sim .box02 .tab-group .tab-A {background: #3E9782;}
#sim .box02 .tab-group .tab-B {background: #1c5d4e;}
#sim .box02 .tab-group .tab-C {background: #78A8C6;}
#sim .box02 .tab-group .tab-D {background: #001130;}
#sim .box02 .tab-group .tab::before {content: ''; position: absolute; background: #fff; width: 10px; height: 10px; right: 5px; bottom: 5px; clip-path: polygon(100% 0, 100% 100%, 0 100%);}
#sim .box02 .tab-group .tab::after {content: ''; position: absolute; width: 30px; height: 15px; bottom: -15px; left: 0; right: 0; margin: auto; clip-path: polygon(0 0, 100% 0,50% 100%); opacity: 0;}
#sim .box02 .tab-group .tab-A::after {background: #3E9782;}
#sim .box02 .tab-group .tab-B::after {background: #1c5d4e;}
#sim .box02 .tab-group .tab-C::after {background: #78A8C6;}
#sim .box02 .tab-group .tab-D::after {background: #001130;}
#sim .box02 .tab-group .tab.is-active::after {opacity: 1;}
#sim .box02 .tab-panel {padding: 0 50px;}

#sim .box02 .text {font-size: 16px; line-height: 2.3; margin-top: 20px;}
#sim .box02 .bnr {background: url("img/sim/box02_bnr_bg.svg")top right no-repeat; background-color: #12243a; outline: 1px solid #fff; outline-offset: -10px; padding: 70px 0 70px 60px; margin-top: 60px;}
#sim .box02 .bnr p {font-size: 40px; line-height: 1;}
#sim .box02 .bnr p:nth-of-type(1) {margin-bottom: 20px;}
#sim .box03 .logo {margin: 60px auto 0;}
#sim .box03 h2 {font-size: 30px; line-height: 1; margin-top: 30px;}
#sim .box03 .btn_box {margin-top: 60px;}
#sim .box03 .btn_box a {width: 366px; position: relative;}
#sim .box03 .btn_box a .under {background: #12243a; padding: 16px;}
#sim .box03 .btn_box a .under .btn {font-size: 18px; line-height: 1; background: #e3aa03; border: 1px solid #fff; padding: 15px 0;}
#sim .box03 .bnr {background: url("img/sim/box03_bnr_bg.jpg")top left no-repeat; padding: 75px 365px; margin-top: 60px;}
#sim .box03 .bnr .logo {margin: auto;}
#sim .box03 .bnr .txt {background: url("img/sim/box03_txt_bg.jpg")top left repeat; padding: 40px 0 35px;}
#sim .box03 .bnr .txt p {font-size: 30px; line-height: 1;}
#sim .box03 .bnr .txt p:nth-of-type(1){margin: 0 0 12px;}
#sim .add_box01 {margin: 100px auto;}
#sim .add_box01 .item {box-sizing: border-box; margin-right: 30px; overflow: hidden;}
#sim .add_box01 .item:nth-child(3n) {margin-right: 0;}
#sim .add_box01 .item:nth-child(n + 4) {margin-top: 30px;}
#sim .add_box01 a img {transition-duration: .5s;}
#sim .add_box01 a:hover img {transform: scale(1.05); opacity: .7;}
#sim .add_box03 h2 {font-size: 40px; line-height: 1; margin-bottom: 80px; position: relative;}
#sim .add_box03 h2::before {content: ''; position: absolute; left: 0; bottom: -20px; background: #0c1a2b; width: 500px; height: 2px;}
#sim .add_box03 h2::after {content: ''; position: absolute; left: 0; bottom: -27px; background: #0c1a2b; width: 700px; height: 2px;}
#sim .add_box03 .item {box-sizing: border-box; background: url("img/sim/add_box03_bg.jpg")top left repeat; border: 5px solid #efefef; padding: 20px;}
#sim .add_box03 .item02 {margin-top: 50px;}
#sim .add_box03 .item .left_box {margin-right: 50px; min-width: 400px; width: 400px;}
#sim .add_box03 .item .left_box .img02 {margin-top: 20px;}
#sim .add_box03 .item .left_box .min {font-size: 12px; line-height: 1.8; margin-top: 10px;}
#sim .add_box03 .item .right_box h3 {font-size: 40px; line-height: 1.4; margin-bottom: 10px;}
#sim .add_box03 .item .right_box h3 .min {font-size: 20px; font-weight: bold;}
#sim .add_box03 .item .right_box .text {font-size: 16px; line-height: 2.2;}
#sim .add_box03 .s_bdr span {content: ''; display: block; position: relative; background: #0c1a2b; width: 100%; height: 2px;}
#sim .add_box03 .s_bdr span:nth-of-type(2) {margin-top: 5px;}
#sim .add_box03 .s_bdr {margin-top: 50px;}
#sim .add_box04  {margin-top: 100px;}
#sim .add_box04 h2 {font-size: 40px; line-height: 1; position: relative; display: table; margin: 0 auto 80px;}
#sim .add_box04 h2::before {content: ''; position: absolute; left: 50%; margin-left: -250px; bottom: -20px; background: #0c1a2b; width: 500px; height: 2px;}
#sim .add_box04 h2::after {content: ''; position: absolute; left: 50%; margin-left: -350px; bottom: -27px; background: #0c1a2b; width: 700px; height: 2px;}
#sim .add_box04 .img:nth-of-type(n + 2) {margin-top: 50px;}
#sim .g-all .box02 .tab-panel {margin-top: 50px;}
#sim .add_catch {font-size: 14px; letter-spacing: .5px;}
#sim .galdo .add_catch {margin-right: 18px;}
#sim .edge .add_catch {margin-right: 5px;}
#sim .right_box {position: relative; width: 100%;}
#sim .right_box .point {position: absolute; right: 5px; top: 5px;}
#sim #optionals_menu {margin-top: 100px;}
/*
右から左へ
----------------------------*/
@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}

/*
IE11対策
----------------------------*/
_:-ms-lang(x)::-ms-backdrop,
.scroll_slide_box {
  display: -ms-grid;
  overflow: hidden;
}
/*----------------------------*/

.scroll_slide__wrap {
  display: flex;
  overflow: hidden;
}

.scroll_slide__list {
  display: flex;
  list-style: none;
}

.scroll_slide__list--left{
animation :infinity-scroll-left 95s infinite linear 0.5s both;
}

.scroll_slide__item {
  width: 405px
}
.scroll_slide__item > img{
   width: 100%;
}














/*edge*/
#sim .edge .main {background: url("img/edge/main.jpg")top left no-repeat;}
#sim .edge .main .txt01 {line-height: 1.3;}
#sim .edge .main .txt02 {background: url("img/edge/main_bg.svg")top left repeat; text-shadow: #000 1px 1px 5px, #000 -1px 1px 5px, #000 1px -1px 5px, #000 -1px -1px 5px; letter-spacing: 3px;}
#sim .edge .box01 {background: url("img/edge/box01_bg.jpg")top left repeat;}
#sim .edge .box01 .top h2 {background: #000;}
#sim .edge .box01 .top .txt01 p:nth-of-type(1) {letter-spacing: 3px;}
#sim .edge .box01 .theme {background: none; background-color: #000;}
#sim .edge .box01 .inner02 img {margin-left: 270px;}
#sim .edge .box01 .bnr .txt {background: url("img/edge/box01_bnr_txt_bg.jpg")top left repeat; text-shadow: #000 3px 3px 5px, #000 -3px 3px 5px, #000 3px -3px 5px, #000 -3px -3px 5px;}
#sim .edge .box02 {background: url("img/edge/box02_bg.jpg")top left repeat;}
#sim .edge .box02 .title {background: url(img/sim/box02_title_icon01.svg)top left no-repeat,url(img/sim/box02_title_icon02.svg)bottom right no-repeat,url(img/edge/box02_title_bg.jpg)top left no-repeat;}
#sim .edge .box02 h2 .bdr01 {width: 230px;}
#sim .edge .box02 h2 .bdr02 {width: 185px;}
#sim .edge .box02 h2::before {width: 185px; margin-right: 70px;}
#sim .edge .box02 h2::after {width: 230px; margin-left: 20px;}
#sim .edge .box02 .bnr {background: url(img/edge/box02_bnr_bg.svg)top right no-repeat, url("img/edge/box01_bnr_txt_bg.jpg")top left repeat; text-shadow: #000 3px 3px 5px, #000 -3px 3px 5px, #000 3px -3px 5px, #000 -3px -3px 5px; padding: 60px 0 60px 60px;}
#sim .edge .box03 .bnr {background: url("img/edge/box03_bnr_bg.jpg")center center no-repeat;}

/*g-all*/
#sim .g-all .main {background: url("img/g-all/main.jpg")top left no-repeat;}
#sim .g-all .main .txt01 {line-height: 1.5;}
#sim .g-all .main .txt02 {text-shadow: #000 1px 1px 5px, #000 -1px 1px 5px, #000 1px -1px 5px, #000 -1px -1px 5px;}
#sim .g-all .box01 {background: url("img/g-all/box01_bg.jpg")top left repeat;}
#sim .g-all .box01 .top h2 {background: #bda366;}
#sim .g-all .box01 .top .txt01 p:nth-of-type(1) {letter-spacing: 3px;}
#sim .g-all .box01 .theme {background: none; background-color: #bda366;}
#sim .g-all .box01 .inner02 img {margin-left: 215px;}
#sim .g-all .box01 .bnr .txt {background-color: #bda366;}
#sim .g-all .box02 {background: url("img/g-all/box02_bg.jpg")top left repeat;}
#sim .g-all .box02 .title {background: url(img/g-all/box02_title_icon01.svg)top left no-repeat,url(img/g-all/box02_title_icon02.svg)bottom right no-repeat,url(img/g-all/box02_title_bg.jpg)top left no-repeat;}
#sim .g-all .box02 h2 .bdr01 {width: 240px;}
#sim .g-all .box02 h2 .bdr02 {width: 160px;}
#sim .g-all .box02 h2::before {width: 160px; margin-right: 140px;}
#sim .g-all .box02 h2::after {width: 240px; margin-left: 50px;}
#sim .g-all .box02 .theme02 {background: none; background-color: #bda366; margin-top: 50px;}
#sim .g-all .box02 .bnr {background: url(img/g-all/box02_bnr_bg.svg)top right no-repeat; background-color: #bda366;}


/*hiraya*/
#hiraya .main {background: url("img/hiraya/main.jpg")top left no-repeat; position: relative; padding: 50px 0; height: 600px; box-sizing: border-box;}
#hiraya .main .txt01 {font-size: 40px; line-height: 1; letter-spacing: 10px; text-shadow: #000 1px 1px 5px, #000 -1px 1px 5px, #000 1px -1px 5px, #000 -1px -1px 5px;}
c{font-size: 30px; line-height: 1.5; background: rgba(0,0,0,.8); padding: 10px 50px; display: table; position: absolute; left: 0; bottom: 50px;}
#hiraya .main .txt02 {font-size: 30px; background: rgba(0,0,0,.8); display: table; padding: 10px 50px; position: absolute; left: 0; bottom: 50px;}
#hiraya .box01 {background: url("img/hiraya/box01_bg.jpg")top left repeat; padding-top: 80px;}
#hiraya .box01 h2 {font-size: 40px; line-height: 1;}
#hiraya .box01 .text01 {font-size: 25px; line-height: 1; margin-top: 20px;}
#hiraya .box01 .text02 {font-size: 16px; line-height: 2.3; margin-top: 60px;}
#hiraya .box01 .charm_box {width: 1000px; margin: 70px auto 0;}
#hiraya .box01 .charm_box .box {width: 270px; height: 270px; border-radius: 50%; background: url("img/hiraya/box01_icon01.svg")center center no-repeat; background-color: #1c334f;}
#hiraya .box01 .charm_box .box p {font-size: 30px; line-height: 1; border-bottom: 1px solid #fff; padding-bottom: 10px; letter-spacing: 2px;}
#hiraya .box01 .charm_box .bdr {border: 1px solid #000; padding: 14px; border-radius: 50%;}
#hiraya .box01 h3 {background: #1c334f; padding: 25px 0; width: 800px; position: relative;}
#hiraya .box01 h3:nth-of-type(1)::after,#hiraya .box01 h3:nth-of-type(3)::after {content: ''; height: 1px; background: #1c334f; position: absolute; right: -400px; width: 400px;}
#hiraya .box01 .h3_02 {margin-left: 400px;}
#hiraya .box01 .h3_02::before{content: ''; height: 1px; background: #1c334f; position: absolute; left: -400px; width: 400px;}
#hiraya .box01 .h3_02::after {display: none;}
#hiraya .box01 h3 p {font-size: 30px; line-height: 1; padding-left: 60px; position: relative; z-index: 10;}
#hiraya .box01 h3 p span {position: relative; z-index: 20;}
#hiraya .box01 h3 p::before{content: ''; background: url("img/hiraya/box01_icon02.svg") no-repeat; width: 30px; height: 30px; position: absolute; top: -15px; left: 35px} 
#hiraya .box01 h3 .icon01 {content: ''; position: absolute; width: 245px; height: 100%; background: rgba(12, 26, 43, .6); transform: skewX(-40deg); right: 120px; bottom: 0px;}
#hiraya .box01 h3 .icon02 {content: ''; position: absolute; width: 245px; height: 100%; background: rgba(12, 26, 43, .6); transform: skewX(-40deg); right: 85px; bottom: 0;}
#hiraya .box01 h3 .icon03 {content: ''; position: absolute; width: 245px; height: 100%; background: rgba(12, 26, 43, .6); transform: skewX(-40deg); right: 40px; bottom: 0;}
#hiraya .box01 .title .bdr {height: 1px; background: #1c334f; width: 400px;}
#hiraya .box01 .inner {padding: 0 60px; margin-top: 60px; font-size: 16px; line-height: 2.3;}
#hiraya .box01 .inner .img01 {margin-right: 60px;}
#hiraya .box01 .inner .img02 {margin-left: 60px;}
#hiraya .box01 .bnr {background: url("img/hiraya/box01_bnr_bg.svg")top right no-repeat; background-color: #1c334f; height: 350px; position: relative; overflow: hidden;}
#hiraya .box01 .bnr .icon01 {content: ''; position: absolute; width: 260px; height: 100%; background: rgba(12, 26, 43, .6); transform: skewX(-30deg); left: -100px; bottom: 0;}
#hiraya .box01 .bnr .icon02 {content: ''; position: absolute; width: 260px; height: 100%; background: rgba(12, 26, 43, .6); transform: skewX(-30deg); left: -70px; bottom: 0;}
#hiraya .box01 .bnr .icon03 {content: ''; position: absolute; width: 260px; height: 100%; background: rgba(12, 26, 43, .6); transform: skewX(-30deg); left: -35px; bottom: 0;}
#hiraya .box01 .bnr .txt01 p {font-size: 25px; line-height: 1; background: #fff; padding: 10px 20px;}
#hiraya .box01 .bnr .txt01 p:nth-of-type(2) {margin-top: 10px;}
#hiraya .box01 .bnr .txt01 {position: absolute; left: 0; top: 170px; z-index: 10;}
#hiraya .box01 .bnr .txt02 {font-size: 50px; line-height: 1; background: #1c334f; padding: 10px 20px; position: absolute; bottom: 0; left: 0; z-index: 10;}
#hiraya .box02 {background: url("img/hiraya/box01_bg.jpg")top left repeat;}
#hiraya .box02 .title {background: url("img/hiraya/box02_title_bg.jpg")top left no-repeat; outline: 10px solid rgba(255,255,255,.4); outline-offset: -10px; padding: 90px 250px; height: 450px; box-sizing: border-box;}
#hiraya .box02 .title .txt p:nth-of-type(1) {font-size: 30px; line-height: 1.5; position: relative; z-index: 10;}
#hiraya .box02 .title .txt p:nth-of-type(2) {font-size: 60px; line-height: 1; margin-top: 30px; position: relative; z-index: 10;}
#hiraya .box02 .title .txt {background: rgba(255,255,255,.85); padding: 40px 0 30px; position: relative;}
#hiraya .box02 .title img {position: absolute; right: 23px; top: 85px;}
#hiraya .box02 .theme {font-size: 50px; line-height: 1; margin-top: 120px; position: relative;}
#hiraya .box02 h2::before,#hiraya .box02 h2::after {content: ''; display: block; flex-grow: 1; height: 2px; background: #000;}
#hiraya .box02 h2::before {margin-right: 120px;}
#hiraya .box02 h2::after {margin-left: 40px; width: 80px;}
#hiraya .box02 h2 .bdr01 {height: 2px; background: #000; width: 390px; position: absolute; top: 10px; bottom: 0; left: 0; margin: auto;}
#hiraya .box02 h2 .bdr02 {height: 2px; background: #000; width: 310px; position: absolute; top: 10px; bottom: 0; right: 0; margin: auto;}
#hiraya .box02 .inner {margin-top: 60px; padding: 0 60px; font-size: 16px; line-height: 2.3;}
#hiraya .box02 .inner .img01 {margin-right: 60px;}
#hiraya .box02 .inner .img02 {margin-left: 60px;}
#hiraya .box02 .bnr {background: url("img/hiraya/box02_bnr_bg.jpg")top left repeat; padding: 60px 0; position: relative;}
#hiraya .box02 .bnr .logo {margin: auto;}
#hiraya .box02 .bnr p {font-size: 40px; line-height: 1;}
#hiraya .box02 .bnr p:nth-of-type(1) {margin: 60px 0 30px;}
#hiraya .box02 .bnr .square01 {width: 160px; height: 150px; background: rgba(255,255,255,.05); position: absolute; top: 75px; left: 90px;}
#hiraya .box02 .bnr .square02 {width: 250px; height: 170px; background: rgba(255,255,255,.05); position: absolute; bottom: 0px; left: 50px;}
#hiraya .box02 .bnr .icon {position: absolute; top: 60px; right: 40px;}
#hiraya .banner {background: url("img/hiraya/banner_bg.jpg")top left no-repeat; padding: 90px 570px 90px 30px;}
#hiraya .banner .txt {background: rgba(12, 26, 43, .8); padding: 30px 0; padding: 30px; padding-right: 0;}
#hiraya .banner p:nth-of-type(1),#hiraya .banner p:nth-of-type(2) {font-size: 30px; line-height: 1;}
#hiraya .banner p:nth-of-type(2) {margin: 20px 0 30px;}
#hiraya .banner p:nth-of-type(3) {font-size: 50px; line-height: 1;} 

/*courtyard*/
#hiraya .courtyard .main {background: url("img/courtyard/main.jpg")top left no-repeat;}
#hiraya .courtyard .box01 .charm_box .box {background: url("img/courtyard/box01_icon01.svg")center center no-repeat; background-color: #e3aa03;}
#hiraya .courtyard .box01 .bnr {background: url(img/courtyard/box01_bnr_bg.svg)top right no-repeat;}
#hiraya .courtyard .box01 .bnr .txt02 {background: #e3aa03;}
#hiraya .courtyard .box02 .title {background: url(img/courtyard/box02_title_bg.jpg)top left no-repeat;}
#hiraya .courtyard .banner .txt {background: rgba(227, 170, 3, .8);}
#hiraya .courtyard .banner {background: url(img/courtyard/banner_bg.jpg)top left no-repeat;}
/*security*/
#security .box01 .main {background: url("img/security/main_bg.jpg")top left no-repeat; padding: 145px 230px;}
#security .box01 .main .txt {background: rgba(28, 51, 79, .9); padding: 55px 0 60px;}
#security .box01 .main .txt h2 {font-size: 60px; line-height: 1; letter-spacing: 15px; position: relative; display: table; margin: auto;}
#security .box01 .main .txt h2::before {content: ''; background: url("img/security/box01_main_icon.svg") no-repeat; width: 30px; height: 30px; position: absolute; top: -12px; left: -20px;}
#security .box01 .main .txt h2 span {position: relative; z-index: 10;}
#security .box01 .main .txt p {font-size: 30px; line-height: 1;}
#security .box01 .main .txt p:nth-of-type(1) {margin: 55px 0 20px;}
#security .box01 .con h3 {background: #1c334f; padding: 25px 0; position: relative; overflow: hidden;}
#security .box01 .con h3 span:nth-of-type(3)::after {content: ''; position: absolute; width: 245px; height: 100%; background: rgba(12, 26, 43, .6); transform: skewX(-40deg); right: 70px; bottom: 0px;}
#security .box01 .con h3::before {content: ''; position: absolute; width: 245px; height: 100%; background: rgba(12, 26, 43, .6); transform: skewX(-40deg); right: 40px; bottom: 0;}
#security .box01 .con h3::after {content: ''; position: absolute; width: 245px; height: 100%; background: rgba(12, 26, 43, .6); transform: skewX(-40deg); right: 0px; bottom: 0;}
#security .box01 .con .title span:nth-child(1) {font-size: 30px; line-height: 1;}
#security .box01 .con .title span:nth-child(2) {font-size: 30px; line-height: 1; margin: 0 30px 0;}
#security .box01 .con .title span:nth-child(3) {font-size: 18px; line-height: 1;}
#security .box01 .con {background: url("img/security/box01_con_bg.jpg")top left repeat;}
#security .box01 .inner {padding: 60px 20px 60px 145px;}
#security .box01 .inner .img01 {margin-right: 145px; box-shadow: 2px 2px 5px #aaa;}
#security .box01 .inner .txt01 {font-size: 25px; line-height: 1.5;}
#security .box01 .inner .txt02 {font-size: 16px; line-height: 2; margin-top: 20px;}
#security .box01 .inner .btn {font-size: 16px; line-height: 1; width: 350px; padding: 15px 0; margin-top: 30px; background: #e3aa03; margin-left: auto;}
#security .box02 .title {background: url("img/security/box02_title_bg.jpg")top left no-repeat; padding: 60px 0; outline: 1px solid #fff; outline-offset: -10px; height: 337px; box-sizing: border-box;}
#security .box02 .title .txt01 {font-size: 20px; line-height: 1; background: #eee; padding: 10px 20px; display: table; margin: auto; position: relative;}
#security .box02 .title .txt01::after{content: ''; width: 0; height: 0; border-style: solid; border-width: 10px 10px 0 10px; border-color: #eeeeee transparent transparent transparent; position: absolute;  bottom: -9px; right: 0; left: 0; margin: auto;}
#security .box02 .title h2 {font-size: 35px; line-height: 1.5; margin: 30px 0 20px;}
#security .box02 .title .txt02 {font-size: 20px; line-height: 1;}
#security .box02 .question {background: #1c334f; padding: 20px 0 20px 20px; margin-top: 20px;}
#security .box02 .question:nth-of-type(1) {margin-top: 0;}
#security .box02 .question .icon {background: #e3aa03; width: 40px; height: 40px; border-radius: 50%; font-size: 25px; margin-right: 20px;}
#security .box02 .question .txt {font-size: 20px; line-height: 1;}
#security .box02 .answer {background: #eee; padding: 20px 0 20px 20px;}
#security .box02 .answer .icon {background: #1c334f; width: 40px; height: 40px; border-radius: 50%; font-size: 25px; margin-right: 20px;}
#security .box02 .answer .txt {font-size: 18px; line-height: 1.6;}
#security .box02 .answer p:nth-of-type(n + 2) {margin-top: 25px; font-size: 16px;} 
#security .box02 .under {background: url("img/security/box02_under_bg.jpg")top left repeat; border: 30px solid #1c334f; position: relative;}
#security .box02 .under::before {content: ''; width: 0; height: 0; border-style: solid; border-width: 100px 600px 0 600px; border-color: #1c334f transparent transparent transparent; position: absolute; top: 0; left: -30px;}
#security .box02 .under .theme {font-size: 25px; line-height: 1; position: relative; z-index: 10;}
#security .box02 .under .inner {font-size: 18px; line-height: 1.5; padding: 50px 30px 30px;}
#security .box02 .under .inner .img01 {margin-right: 125px; margin-left: 90px;}
#security .box02 .under .btn {font-size: 16px; line-height: 1; background: #e3aa03; padding: 20px 0; margin-top: 30px;}
#security .box02 .under .icon {margin: auto; position: relative; z-index: 10; margin-bottom: 5px;}
#security .box02 .under .txt {font-size: 18px; line-height: 1.8;}
#security .box03 .title {background: url("img/security/box03_title_bg01.svg")top left no-repeat, url("img/security/box03_title_bg02.svg")top right no-repeat; backgrorund-color: #fff; padding: 30px 0;}
#security .box03 {background: url("img/security/box03_bg.jpg")top left repeat; padding-bottom: 60px;}
#security .box03 h2 {font-size: 25px; line-height: 1; background: #000; padding: 10px 30px; display: table; margin: auto;}
#security .box03 .title .txt_icon {margin: -30px auto;}
#security .box03 .title .txt {font-size: 18px; line-height: 1.5; text-shadow: #fff 3px 3px 7px, #fff -3px 3px 7px, #fff 3px -3px 7px, #fff -3px -3px 7px;}
#security .box03 .inner {font-size: 16px; line-height: 2.3; margin-top: 60px; padding: 0 60px;}
#security .box03 .inner .img01 {margin-right: 60px;}
#security .box03 .inner .img02 {margin-left: 60px;}
#security .box03 .btn {font-size: 16px; line-height: 1; background: #e3aa03; padding: 20px 60px; display: table; margin: 60px auto 0;}
#security .box04 .title {background: url("img/security/box04_title_bg.svg") top left no-repeat; background-color: #000; padding: 60px 0; overflow: hidden; position: relative;}
#security .box04 .title h2 span {font-size: 25px; line-height: 1; padding: 10px 30px; background: #1c334f; position: relative; z-index: 10;}
#security .box04 .title h2::before{content: ''; position: absolute; width: 300px; height: 100%; background: rgba(12, 26, 43, .6); transform: skewX(-25deg); left: -65px; bottom: 0px;}
#security .box04 .title::before {content: ''; position: absolute; width: 300px; height: 100%; background: rgba(12, 26, 43, .5); transform: skewX(-25deg); left: -100px; bottom: 0;}
#security .box04 .title::after {content: ''; position: absolute; width: 300px; height: 100%; background: rgba(12, 26, 43, .3); transform: skewX(-25deg); left: -135px; bottom: 0;}
#security .box04 .inner {margin-top: 60px; font-size: 16px; line-height: 2.3;}
#security .box04 .inner .txt h3 {font-size: 22px; line-height: 1; margin-bottom: 20px;}
#security .box04 .inner .img01 {margin-right: 60px;}
#security .box04 .inner .img02 {margin-left: 60px;}

/*company*/
#company table {box-sizing: border-box; border: 1px solid #939393; width: 100%;}
#company th,#company td {box-sizing: border-box; border-bottom: 1px solid #939393; font-size: 16px; line-height: 1; padding: 15px 20px;}
#company th {background: #1c334f; width: 200px; border-color: #fff;}
#company iframe {box-sizing: border-box; width: 100%; height: 445px; border: 3px solid #1c334f;}
#company .inner {background: url("img/company/bg01.jpg")top left repeat; padding: 60px;}
#company .inner img {margin-right: 60px;}
#company .inner .txt p {font-size: 16px; line-height: 2; margin-top: 25px;}
#company .inner .txt p:nth-of-type(1) {margin-top: 0;}
#company .privacy_box .title01 {font-size: 20px; line-height: 1;}
#company .privacy_box .title02 {background: url("img/company/title02_bg.jpg")top left repeat; padding: 20px 0; font-size: 20px; line-height: 1; letter-spacing: 1px; margin-top: 50px;}
#company .privacy_box .text {font-size: 16px; line-height: 1.7; margin-top: 40px;}
#company .privacy_box .text a {display: inline;}

#company .sitemap_box a {box-sizing: border-box; background: #1c334f; width: 386px; margin-right: 20px; position: relative; padding: 20px; font-size: 16px; border-right: 30px solid #ffbe00; line-height: 1;}
#company .sitemap_box a:nth-child(3n) {margin-right: 0;}
#company .sitemap_box a:nth-child(n + 4) {margin-top: 20px;}
#company .sitemap_box a::after {content: ''; position: absolute; background: url("img/company/arrow.svg")no-repeat; width: 5px; height: 11px; right: -17px; top: 0; bottom: 0; margin: auto; z-index: 10;}
#access {margin-top: -90px; padding-top: 90px;}

/*contact*/
#contact .txt01 {font-size: 18px; line-height: 1; margin-top: 100px;}
#contact .tel {font-size: 40px; line-height: 1; margin-top: 15px;}
#contact .tel span {font-size: 70px;}
#contact_form {margin-top: 100px;}
#contact_form table {width: 100%; border-top: 1px solid #1c334f; border-bottom: 1px solid #1c334f;}
#contact_form table th {font-size: 20px; line-height: 1; vertical-align: middle; width: 345px; padding: 20px 0 20px 30px; position: relative; background: #e3e3e3; box-sizing: border-box;}
#contact_form table td {background: #eee; padding: 20px;}
#contact_form table .essential {padding: 5px 10px; background: #e3aa03; position: absolute; right: 30px; font-size: 16px; margin-top: -3px;}
#contact_form table td input {width: 100%; padding: 10px; outline: none; box-sizing: border-box; font-size: 16px; font-weight: bold; background: #fff; border: 0; font-family: 'Noto Sans JP', sans-serif, "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, Meiryo, sans-serif;}
#contact_form table td, #contact_form table th {border-bottom: 1px solid #b7b7b7; font-weight: bold;}
#contact_form table tr:last-child td, #contact_form table tr:last-child th {border: 0;}
#contact_form table textarea {border: none; background: #fff; width: 100%; font-weight: bold; height: 200px; outline: none; padding: 10px; font-size: 16px; box-sizing: border-box; font-family: 'Noto Sans JP', sans-serif, "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, Meiryo, sans-serif;}
#contact_form .form_btn {font-size: 18px; line-height: 1; color: #fff; background: #1c334f; border: none; padding: 30px 0; width: 600px; display: block; margin: auto; font-weight: 600; margin-top: 50px; cursor: pointer;}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output,.wpcf7 form .wpcf7-response-output {display: none;}
.wpcf7 .ajax-loader {display: none;}
#contact .precautionary,#document .precautionary {font-size: 20px; line-height: 1.5; margin-top: 30px;}
#contact .wpcf7-list-item {display: block; margin: 5px 0 0; font-size: 16px;}
#contact .wpcf7-list-item label {display: flex; align-items: center; justify-content: flex-start;}
#contact .wpcf7-list-item label input {width: auto; margin: 0 10px 0 0;}
#contact .date01 input {font-size: 16px; width: auto;}
#contact .time01 select {font-size: 16px; outline: none; font-weight: bold;}
#contact .time01 select option {font-weight: bold;}

/*end*/
#end .thanks {font-size: 16px; line-height: 2.3;}

/*document*/
#document .txt01 {font-size: 18px; line-height: 1; margin-top: 100px;}
#document .tel {font-size: 40px; line-height: 1; margin-top: 15px;}
#document .tel span {font-size: 70px;}

/*blog＆news*/
#blog .item,#news .item {box-sizing: border-box; border-bottom: 2px solid #e3aa03; padding: 20px 0;}
#blog .item:nth-child(1),#news .item:nth-child(1) {padding-top: 0;}

#blog .time,#news .time {font-size: 16px; line-height: 1; margin-right: 20px;}
#blog h3,#news h3 {font-size: 16px;}
#blog .text,#news .text {font-size: 14px; line-height: 2; margin-top: 15px;}
#news .item {border-color: #00c7eb;}
#single_blog .box01,#single_news .box01 {box-sizing: border-box; background: url("img/blog/bg.jpg")top left repeat; padding: 50px;}
#single_blog .time,#single_news .time {font-size: 16px; line-height: 1;}
#single_blog .tag,#single_news .tag {box-sizing: border-box; display: table; background: #E3AA03; padding: 2px 3px; font-size: 14px; line-height: 1; margin-left: 10px;}
#single_blog h1,#single_news h1 {font-size: 16px; line-height: 1.8; margin: 20px 0;}
#single_blog .text,#single_news .text {font-size: 16px; line-height: 2;}
#single_blog .text img {margin-top: 30px;}
#single_news .tag  {background: #00C7EB;}

/*voice*/
#voice .item {box-sizing: border-box; width: 366px; margin-right: 40px;}
#voice .item:nth-child(3n) {margin-right: 0;}
#voice .item:nth-child(n + 4) {margin-top: 30px;}
#voice .img {width: 100%;}
#voice .img img {width: 100%; height: 244px; object-fit: cover; object-position: center;}
#voice h3::before {content: ''; position: absolute; width: 125px; height: 1px; right: 20px; top: 0; bottom: 0; margin: auto; background: #fff;}
#voice h3::after {content: ''; position: absolute; width: 1px; height: 10px; right: 24px; top: 20px; transform: rotate(-45deg); background: #fff;}
#voice h3 {background: #1c334f; padding: 0 20px; font-size: 18px; line-height: 1; position: relative; height: 57px;}
#single_voice .gallery_box .txt,#single_works .gallery_box .txt {font-size: 16px; line-height: 1; margin-bottom: 60px;}
#single_voice .gallery_box .txt span,#single_works .gallery_box .txt span {font-size: 30px; margin-right: 20px;}
#single_voice .gallery_list a,#single_works .gallery_list a {box-sizing: border-box; width: 380px; margin-right: 30px;}
#single_voice .gallery_list a:nth-child(3n),#single_works .gallery_list a:nth-child(3n) {margin-right: 0;}
#single_voice .gallery_list a:nth-child(n + 4),#single_works .gallery_list a:nth-child(n + 4) {margin-top: 30px;}
#single_voice .box01,#single_works .box01 {box-sizing: border-box; background: url("img/voice/bg.jpg")top left repeat; padding: 50px;}
#single_voice h1,#single_works h1 {font-size: 16px; line-height: 1.7; margin-bottom: 30px;}
#single_voice .text,#single_works .text {font-size: 16px; line-height: 2;}
#single_voice .gallery_list a .img,#single_works .gallery_list a .img {padding-top: 59%; background-size: cover; background-position: top center; background-repeat: no-repeat; position: relative;}

/*works*/
#works .item {box-sizing: border-box; width: 366px; margin-right: 50px;}
#works .item:nth-child(3n) {margin-right: 0;}
#works .item:nth-child(n + 4) {margin-top: 30px;}
#works .img {width: 100%; position: relative;}
#works .img .cat_icon {position: absolute; top: 10px; right: 20px; width: auto; height: auto;}
#works .img img {width: 100%; height: 244px; object-fit: cover; object-position: center;}
#works h3 {font-size: 18px; line-height: 1; position: relative; height: 57px;}
#works h3::before {content: ''; position: absolute; background: #0c1a2b; width: 125px; height: 1px; right: 0; top: 0; bottom: 0; margin: auto;}
#works h3::after {content: ''; position: absolute; background: #0c1a2b; width: 1px; height: 10px; right: 4px; top: 20px; transform: rotate(-45deg);}
#works .link_box {margin-bottom: 110px;}
#works .link_box .link_item {width: 262px; border: 3px solid #1c334f; background: #fff; height: 80px; box-sizing: border-box;}
#works .link_box .link_item p {font-size: 20px; line-height: 1;}
#single_works .box01 {background: url("img/works/bg.jpg")top left repeat;}
#works .wp-pagenavi {display: flex; align-items: center; justify-content: center; margin: 50px auto 0;}




/*ecomss*/
#ecomss .main {background: url("img/ecomss/main_bg.jpg")center center no-repeat; box-sizing: border-box; border: 10px solid #1c334f; width: 100%; height: 600px;}
#ecomss .main .con {padding: 50px 130px; box-sizing: border-box; position: relative;}
#ecomss .main .con .bg {width: 100%; height: 100%; position: absolute; background: url("img/ecomss/main_bg02.svg")top left repeat; z-index: 10; top: 0; bottom: 0; left: 0; right: 0; margin: auto;}
#ecomss .main .con::after {content: ''; position: absolute; background: rgba(255,255,255,.4); width: calc(100% + 20px); height: calc(100% + 20px); top: -10px; left: -10px; margin: auto;}
#ecomss .main .logo {position: relative; z-index: 20;}
#ecomss .main .txt01 {font-size: 40px; line-height: 1; margin: 30px auto 25px; position: relative; z-index: 20;}
#ecomss .main .txt02 {font-size: 25px; line-height: 1.5; position: relative; z-index: 20;}
#ecomss .link_box a {box-sizing: border-box; width: 575px; border-left: 3px solid #24b7b3; padding-left: 20px;}
#ecomss .link_box a:nth-child(n + 3) {margin-top: 50px;}
#ecomss .link_box .title {position: relative;}
#ecomss .link_box .title::after {content: ''; position: absolute; background: url("img/ecomss/link_arrow.svg")no-repeat; width: 24px; height: 24px; top: 0; bottom: 0; right: 0; margin: auto;}
#ecomss .link_box .txt {font-size: 14px; line-height: 1.7; margin-top: 15px;}
#ecomss .box01 .title {background: url("img/ecomss/box01_title_icon.svg")bottom 20px right 190px no-repeat; background-color: #1c334f; padding: 20px; position: relative;}
#ecomss .box01 h2 {box-sizing: border-box; border-left: 10px solid #24b7b3; padding-left: 20px; font-size: 40px; line-height: 1; width: 100%; height: 110px;}
#ecomss .box01 h2 p span {display: block;}
#ecomss .box01 h2 p span:nth-child(2) {margin-top: 20px;}
#ecomss .box01 .icon_text {font-size: 26px; line-height: 1.3; box-sizing: border-box; background: #e3aa03; border-radius: 100%; width: 120px; height: 120px; position: absolute; right: 50px; top: 0; bottom: 0; margin: auto; text-align: center;}
#ecomss .box01 .con {padding-top: 50px;}
#ecomss .h3_01 {font-size: 25px;}
#ecomss .box01 .inner {font-size: 16px; line-height: 2.3; margin-top: 50px;}
#ecomss .box01 .inner .img01 {margin-right: 50px;}
#ecomss .box01 .inner .img02 {margin-left: 50px;}
#ecomss .box01 .tag_box {margin-top: 50px;}
#ecomss .box01 .tag_box li {font-size: 20px; line-height: 1; color: #1c334f;}
#ecomss .box01 .tag_box ul li:nth-child(2) {margin-left: 10px;}
#ecomss .box01 .tag_box .tag {box-sizing: border-box; width: 100px; height: 37px; margin-left: 10px; position: relative;}
#ecomss .box01 .tag_box .g_tag {background: #001130;}
#ecomss .box01 .tag_box .b_tag {background: #78a8c6;}
#ecomss .box01 .tag_box .s_tag {background: #3e9782;}
#ecomss .box01 .inner .min_text {font-size: 14px; line-height: 1; color: #001130;}
#ecomss .box01 .con02 {box-sizing: border-box; border-top: 1px solid #1c334f; margin-top: 50px; position: relative;}
#ecomss .box01 .con_title p {box-sizing: border-box; width: 120px; height: 120px; background: #1c334f; font-size: 25px; line-height: 1.1; margin-right: 45px; border-radius: 100%; text-align: center;}
#ecomss .box01 .con_title .h3_02 {font-size: 40px; line-height: 1.5;}
#ecomss .bnr {background: url("img/ecomss/bnr_bg.jpg")center center no-repeat; height: 486px; position: relative;}
#ecomss .bnr .bg {background: rgba(28,51,79.9); width: 100%; height: 100%; position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; z-index: 10; border: 10px solid rgba(255,255,255,.54); box-sizing: border-box;}
#ecomss .bnr .con {padding: 55px 65px; box-sizing: border-box; position: relative;}
#ecomss .bnr .con::after {content: ''; background: rgba(255,255,255,.3); width: calc(100% + 20px); height: calc(100% + 20px); top: -10px; left: -10px; position: absolute;}
#ecomss .bnr .txt01 {display: table; background: #fff; padding: 10px 20px; line-height: 1; font-size: 30px; position: relative; z-index: 20;}
#ecomss .bnr .txt02 {font-size: 50px; line-height: 1.5; position: relative; z-index: 20; margin-top: 15px;}
#ecomss #system01,#ecomss #system02,#ecomss #system03,#ecomss #system04 {margin-top: -90px; padding-top: 150px;}
#ecomss .box01 .img03 {margin: 50px auto;}
#ecomss .ecomssplus_ul li:nth-child(2) {margin-top: 50px;}
#ecomss .ecomssplus_ul .icon {margin-right: 20px;}
#ecomss .ecomssplus_ul .li_txt01 {font-size: 35px; line-height: 1; box-sizing: border-box; border-bottom: 2px solid #1c334f; padding-bottom: 20px; margin-bottom: 20px;}
#ecomss .ecomssplus_ul .li_txt02 {font-size: 25px; line-height: 1;}
#ecomss .ecomssplus_ul .li_txt02_02 {margin-top: 10px;}
#ecomss .ecomssplus_ul .li_txt03:nth-child(n + 2) {margin-top: 5px;}
#ecomss .ecomssplus_ul .li_txt03 p {font-size: 18px; line-height: 1;}
#ecomss .ecomssplus_ul .li_txt03 .no {font-size: 38px; line-height: 1; padding: 10px 20px 10px 0; box-sizing: border-box; border-right: 1px solid #1c334f; margin-right: 20px;}
#ecomss .icon_text02 {position: absolute; right: 0; top: 50px; width: 298px; height: 112px; background: #044471; box-sizing: border-box; border-radius: 56px; font-size: 30px; line-height: 1.5; color: #e3aa03;}
#ecomss .box01 .min_txt {font-size: 16px; line-height: 1; margin-left: 20px;}
#ecomss .box01 .as {position: absolute; left: 2px; top: 2px; font-size: 14px; line-height: 1;}
#ecomss .movie_box {margin: 50px auto 0;}
#ecomss .movie_box .item {width: 366px;}
#ecomss .movie_box .item .text01 {font-size: 16px; line-height: 1; margin-bottom: 10px;}
#ecomss .movie_box .item a {box-sizing: border-box; width: 100%; height: 37px; position: relative; font-size: 14px; line-height: 1; background: #001130;}
#ecomss .movie_box .item a::after {content: ''; position: absolute; top: 0; bottom: 0; right: 10px; margin: auto; background: #fff; width: 5px; height: 7px; clip-path: polygon(0 0, 100% 50%, 0 100%);}
#ecomss .precautionary_text {font-size: 16px; margin-top: 16px; margin-left: 205px; color: #1c334f;}
#ecomss .ecomssplus_box {padding: 80px 0 50px; position: relative; z-index: 10;}
#ecomss .ecomssplus_box .txt01 {font-size: 30px; line-height: 1;}
#ecomss .ecomssplus_box .ecomssplus_title {margin: 30px auto 50px; transition-delay: .5s;}
#ecomss .ecomssplus_box .txt02 {font-size: 30px; line-height: 1.7; margin-bottom: 40px; transition-delay: .7s;}
#ecomss .ecomssplus_box .txt03 {font-size: 16px; line-height: 2;}
#ecomss .ecomssplus_box .txt03 span {transition-delay: 1s; animation-delay: 1s;}



/*diagnose*/
.diagnose_page {margin-top: 300px; padding-bottom: 200px;}
.diagnose_query_txt {font-size: 30px; line-height: 1; margin-bottom: 50px; font-weight: bold;}
.diagnose_query_box .btn {box-sizing: border-box; border: 1px solid #1c334f; width: 350px; height: 60px; font-size: 16px; line-height: 1; position: relative; color: #1c334f; font-weight: bold; overflow: hidden; cursor: pointer;}
.diagnose_query_box .btn:nth-of-type(n + 2) {margin-left: 50px;}
.diagnose_query_box .btn p {position: relative; z-index: 10; transition-duration: .4s;}
.diagnose_query_box .btn::after {content: ''; position: absolute; right: -110px; bottom: -100px; background: #1c334f; width: 150px; height: 150px; transition-duration: .5s; transform: rotate(45deg);}
.diagnose_query_box .btn:hover p {color: #fff;}
.diagnose_query_box .btn:hover::after {width: 550px; height: 450px; bottom: -100px;}
.diagnose_txt01 {font-size: 30px; line-height: 1; font-weight: 900; letter-spacing: 5px;}
.diagnose_txt02 {font-size: 60px; line-height: 1; margin: 20px auto 50px; font-weight: 900; letter-spacing: 15px;}
.diagnose_txt03 {font-size: 30px; line-height: 1; font-weight: 900;}
.diagnose_category_list {margin: 100px auto;}
.diagnose_category_list li {box-sizing: border-box; border: 3px solid #1c334f; background: #fff; width: 285px; height: 60px; line-height: 1; font-size: 16px; position: relative; margin-right: 20px; color: #1c334f; font-weight: bold;}
.diagnose_category_list li::before {content: ''; position: absolute; background: #1c334f; width: 40px; height: 40px; clip-path: polygon(0 0,100% 0,0 100%); top: 0; left: 0; color: #1c334f;}
.diagnose_category_list li:nth-of-type(4n) {margin-right: 0;}
.diagnose_category_list li:nth-of-type(n + 5) {margin-top: 20px;}
#single_diagnose .box01 h2 {font-size: 60px; line-height: 1; color: #1c334f; letter-spacing: 10px; font-weight: 900;}
#single_diagnose .explanation_text {font-size: 16px; line-height: 2; margin-top: 40px; color: #1c334f;}
#single_diagnose .img_inner {margin-top: 45px;}
#single_diagnose .img_inner .img01 {margin-right: 50px;}
#single_diagnose .box02 {margin-top: 70px;}
#single_diagnose .box02 h3 {font-size: 20px; line-height: 1; background: #1c334f; padding: 10px; color: #fff;}
#single_diagnose .box02 h3 span {display: block; box-sizing: border-box; border-left: 5px solid #fff; padding: 5px 0 5px 10px;}
#single_diagnose .box02 table {margin-top: 50px;}
#single_diagnose .box02 table tr th,#single_diagnose .box02 table tr td {font-size: 16px; line-height: 1; font-weight: bold;}
#single_diagnose .box02 table tr th {padding-right: 10px;}
#single_diagnose .box02 table tr:nth-of-type(n + 2) th,#single_diagnose .box02 table tr:nth-of-type(n + 2) td {padding-top: 20px;}
#single_diagnose .box02 table tr.info_txt04 th,#single_diagnose .box02 table tr.info_txt04 td {padding-top: 50px;}
#single_diagnose .box03 {margin-top: 70px;}
#single_diagnose .box03 h3 {font-size: 30px; line-height: 1; font-weight: 900; position: relative; color: #1c334f; margin-bottom: 50px;}
#single_diagnose .box03 h3::before,#single_diagnose .box03 h3::after {content: ''; display: block; background: #000; height: 3px; flex-grow: 1;}
#single_diagnose .box03 h3::before {margin-right: 30px;}
#single_diagnose .box03 h3::after {margin-left: 30px;}
#single_diagnose .box03 .list .item {width: 575px; margin-right: 50px; background: #e2e2e2; padding-bottom: 20px; color: #1c334f; transition-duration: .3s;}
#single_diagnose .box03 .list .item:nth-of-type(2n) {margin-right: 0;}
#single_diagnose .box03 .list .item:nth-of-type(n + 3) {margin-top: 50px;}
#single_diagnose .box03 .list .item .img {width: 100%; overflow: hidden; position: relative;}
#single_diagnose .box03 .list .item .img img {transition-duration: .5s;}
#single_diagnose .box03 .list .item .item_txt01 {font-size: 25px; line-height: 1; margin-top: 20px; font-weight: 900; letter-spacing: 1px;}
#single_diagnose .box03 .list .item .item_txt02 {font-size: 25px; line-height: 1; margin-top: 10px; font-weight: bold; letter-spacing: 1px;}
#single_diagnose .box03 .list .item:hover {opacity: .7;}
#single_diagnose .box03 .list .item:hover .img img {transform: scale(1.05);}
#single_diagnose .fade_slide_box {margin-bottom: 100px;}
#single_diagnose .swiper-pagination-bullet {opacity: .5; width: 12px; height: 12px;}
#single_diagnose .swiper-pagination-bullet-active {opacity: 1;}
#single_diagnose .ecomss_box {background: #f8f8f8; padding: 80px 0; position: relative; z-index: 10; margin-top: 80px;}
#single_diagnose .ecomss_box h2 {margin-bottom: 80px;}
#single_diagnose .ecomss_box .con {width: 570px; box-sizing: border-box; border-left: 3px solid #24b7b3; padding-left: 20px; transition-delay: .5s;}
#single_diagnose .ecomss_box .con:nth-child(n + 3) {margin-top: 50px;}
#single_diagnose .ecomss_box h3 {margin-bottom: 20px;}
#single_diagnose .ecomss_box p {font-size: 14px; line-height: 1.7;}
#single_diagnose .ecomss_box .btn {box-sizing: border-box; border: 1px solid #1c334f; width: 450px; height: 60px; font-size: 16px; line-height: 1; margin: 70px auto 0; position: relative; z-index: 50; transition-duration: .5s;}
#single_diagnose .ecomss_box .btn:hover {background: #1c334f; color: #fff;}
#single_diagnose .ecomss_box .btn::after {background: #1c334f;}
#single_diagnose .ecomss_box .con:nth-child(2) {transition-delay: .6s;}
#single_diagnose .ecomss_box .con:nth-child(3) {transition-delay: .7s;}
#single_diagnose .ecomss_box .con:nth-child(4) {transition-delay: .8s;}

#diagnose01 .panel {display: none;}
#diagnose01 .panel.is-show {display: block;}
#diagnose01 .off_box {display: none;}
#diagnose01 .price_list .item,#single_diagnose .price_list .item {width: 366px; margin-right: 51px; font-weight: bold; transition-duration: .3s;}
#diagnose01 .price_list .item:nth-of-type(3n),#single_diagnose .price_list .item:nth-of-type(3n) {margin-right: 0;}
#diagnose01 .price_list .item:nth-of-type(n + 4),#single_diagnose .price_list .item:nth-of-type(n + 4) {margin-top: 50px;}
#diagnose01 .price_list .item .img,#single_diagnose .price_list .item .img {margin-bottom: 20px;}
#diagnose01 .price_list .item .img img,#single_diagnose .price_list .item .img img {transition-duration: .3s;}
#diagnose01 .price_list .item .text01 p,#single_diagnose .price_list .item .text01 p {font-size: 16px; line-height: 1;}
#diagnose01 .price_list .item .text01 p:nth-of-type(n + 2),#single_diagnose .price_list .item .text01 p:nth-of-type(n + 2) {margin-left: 10px;}
#diagnose01 .price_list .item .text01:nth-of-type(n + 2),#single_diagnose .price_list .item .text01:nth-of-type(n + 2) {margin-top: 10px;}
#diagnose01 .price_list .item .text02,#single_diagnose .price_list .item .text02 {margin-top: 10px; line-height: 1;}
#diagnose01 .price_list .item .text02 p:nth-of-type(n + 2),#single_diagnose .price_list .item .text02 p:nth-of-type(n + 2) {margin-left: 10px;}
#diagnose01 .price_list .item:hover,#single_diagnose .price_list .item:hover {opacity: .7;}
#diagnose01 .price_list .item:hover .img img,#single_diagnose .price_list .item:hover .img img {transform: scale(1.02);}


#single_diagnose .form_box {margin-top: 80px;}
#single_diagnose .form_box .form_txt01 {font-size: 50px; line-height: 1; font-weight: 900; letter-spacing: 5px;}
#single_diagnose .form_box .form_txt02 {font-size: 20px; line-height: 1; margin-top: 10px; font-weight: bold; letter-spacing: 2px;}
#single_diagnose .form_box .tel_box {background: url("img/diagnose/tel_bg.jpg")center center no-repeat; box-sizing: border-box; position: relative; margin-top: 50px; padding: 30px 0;}
#single_diagnose .form_box .tel_box .bdr {background: #fff; position: absolute; margin: auto;}
#single_diagnose .form_box .tel_box .bdr01 {width: 1px; height: calc(100% - 10px); top: 0; bottom: 0; left: 5px;}
#single_diagnose .form_box .tel_box .bdr02 {width: 1px; height: calc(100% - 10px); top: 0; bottom: 0; right: 5px;}
#single_diagnose .form_box .tel_box .bdr03 {width: calc(100% - 10px); height: 1px; top: 5px; left: 0; right: 0;}
#single_diagnose .form_box .tel_box .bdr04 {width: calc(100% - 10px); height: 1px; bottom: 5px; left: 0; right: 0;}
#single_diagnose .form_box .tel_box .tel_txt01 {font-size: 18px; font-weight: 500; line-height: 1; letter-spacing: 1px;}
#single_diagnose .form_box .tel_box .tel {font-size: 30px; font-weight: 900; line-height: 1; margin: 10px; letter-spacing: 2px;}
#single_diagnose .form_box .tel_box .tel span {font-size: 60px;}
#single_diagnose .form_box .tel_box .tel_txt02 {font-size: 16px; font-weight: 500; line-height: 1.5; letter-spacing: 1px;}
#single_diagnose #contact_form {margin-top: 50px;}

#optionals_menu .txt01 {font-size: 20px; line-height: 1; margin-top: 80px;}
#optionals_menu .link_box {margin: 100px auto;}
#optionals_menu .link_box a {box-sizing: border-box; width: 266px; height: 60px; font-size: 16px; line-height: 1; background: #1c334f;}
#optionals_menu .link_box a:nth-of-type(n + 2) {margin-left: 100px;}
#optionals_menu .con {margin-top: 50px;}
#optionals_menu .con .img02 {margin-top: 20px;}
#optionals_menu #Optionals01,#optionals_menu #Optionals02,#optionals_menu #Optionals03 {margin-top: -150px; padding-top: 150px;}

#type-r .link_box {max-width: 1300px; margin: 80px auto 0;}
#type-r .link_box a {margin-right: 25px;}
#type-r .link_box a:nth-of-type(3n) {margin-right: 0;}
#type-r .link_box a:nth-of-type(n + 4) {margin-top: 40px;}
#type-r .sec01 {box-sizing: border-box; border-bottom: 1px dashed #000; padding-bottom: 80px; margin: 80px auto 0; max-width: 1200px;}
#type-r .sec02 {max-width: 1200px; margin: 80px auto 0;}
#type-r .sec_link {margin-top: -80px; padding-top: 80px;}