@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Template:   cocoon-master
Version:    1.0.8
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/

/* ノーマライズ */
/* *{ 
    font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', 'Segoe UI', YuGothic, 'Yu Gothic Medium', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif; 
} */
.article h2 {
    font-size: 22px;
    margin: 0;
    padding: 0;
    background-color: transparent;
    border-radius: initial;
    text-align: center;
}
.article h3 {
    margin: initial;
    padding: 0;
    border: none;
}
.article h4 { border: none; }
.article h5 { font-size: initial; }
.entry-content>*, .demo .entry-content p {
    margin: 0;
}
a { text-decoration: none; }
a:hover { color: #ff4d00; }
strong {
    background-color: #ffd300;
}
.content { margin-top: 40px; } /*.content { margin-top: 0; }*/
.search-box { margin: 1em 0 1em; }

.pc_br { display: block; }
.sp_br { display: none; }



/* サイズ調整 */
#container { overflow-x: hidden; }
.entry-content { margin: 0; }

#front-news, #front-service, #front-characteristic, #front-popular_sample, #front-contact, #front-reviews, #front-faq {
    margin: 0 -200%;
    padding: 3em 200%; 
}
#front-recent_sample {
    margin: 0 -200%;
    padding: 2em 200%; 
}
#front-deliverd, #estimate-contact {
    margin: 0 -200%;
    padding: 0.5em 200%;
}
#strength {
    margin: 0 -200%;
    padding: 0 200% 1em;
    background-color: #FAFAFA;
}
#items h2, #strength h2, #semi_ordermade h2,
#quick_start_guide h2, #works h2 {
    margin: 0 -200%;
    padding: 1em 200%;
    background-color: #ffd300;
    color: white;
    text-shadow: 0 0 12px #f39800;
}
#strength h2, #semi_ordermade h2, #quick_start_guide h2, #works h2 { margin: 0 -200% 1em;/*margin: 0 -200%;*/ }

.common-contact { /* 共通コンタクト */
    margin: 0 -200% 0;
    padding: 1em 200%;
}
.main, .common-size {
    margin: 0 auto !important;
    width: 1020px;
    padding-top: 0;
    padding-bottom: 0;
    border: none;
}
.single-news .content-in {
    max-width: 1020px;
}
.bg_a{
    margin: 1em -200% 0;/*margin: 1em -200% 2em;*/
    padding: 0.1em 200% 0.5em;
    background-color: #EEFAFF;
}
#items .item-menu {
    margin: 0 -200%;
    padding: 0 200%;
    background-color: #f2f2f2;
} 



/* *********共通********* */
/* 背景画像・メニュー・タイトル */
.main header:not(.home-header) {
    background-image: url(images/bg_common.png);
    background-position: center top;
    background-size: 20%;
    background-repeat: no-repeat;
    background-color: #FFDE40;
    margin: 0 -200%;
    padding: 1em 200% 0;
}
.header-container {
    position: fixed;
    z-index: 100;
    /*margin: 0 -200%;
    padding: 0 200%;*/
    width: 100%;
    background-color: #ff8116;
    height: 40px;
}
.header-container-in { width: 100vw; }
.site-name-text { display: none; }
.logo a::before {
	display: block;
    content: "";
    width: 230px;
    height: 40px;
    background: url(images/logo.png) no-repeat;
    background-size: contain;
}
.navi-in > ul li { height: 40px; line-height: 40px; }

.breadcrumb { display: block; margin: 1em .4em 0; }
.breadcrumb span.sp { margin: 0 5px; }
.entry-title, .archive-title { display: inline-block; }
.home .entry-title { display: initial; }

.entry-title, .archive-title {
    margin: .5em 0 1em .5em;
    color: #ff8116/*#ff4d00*/;
    text-shadow: white 2px 0px, white -2px 0px,
    white 0px -2px, white 0px 2px,
    white 2px 2px, white -2px 2px,
    white 2px -2px, white -2px -2px,
    white 1px 2px, white -1px 2px,
    white 1px -2px, white -1px -2px,
    white 2px 1px, white -2px 1px,
    white 2px -1px, white -2px -1px, 3px 3px 5px #ff8116;
}

table th { background-color: #fff0df; }
table tr:nth-of-type(2n+1) { background-color: #fffcf8; }

.page .pager-post-navi {
    margin: 10px 0;
}

.copyright { margin-top: 20px; margin-bottom: 10px; }
.navi-footer-in a {
    color: #666;
    font-size: 12px;
}

.navi-footer-in > .menu-footer li {
    border-left: 1px solid #666;
}
.navi-footer-in > .menu-footer li:last-child {
    border-right: 1px solid #666;
}



/* グローバルメニュー */
.navi-in a {
    background-color: rgba(255,129,22,0.5);
    font-size: 0.75em;
    font-weight: bold;
    z-index: 100;
    color: antiquewhite;
}
/*.home .navi-in a {background-color: transparent; }
.home ul.sub-menu li { height: 40px !important; line-height: 40px !important; }*/

.navi-in a:hover {
    background-color: rgba(255,77,0,0.5);
    color: antiquewhite;
}
ul.sub-menu li a { 
    position: relative; 
    padding-left: 2em !important; 
    font-weight: normal !important;
    background-color: rgba(255,255,255,0.5);
    color: #FF8015;
}
ul.sub-menu li a::before {
    position: absolute;
    top: 0.8em;
    left: 1em;
    content: '';
	width: 0;
	height: 0;
	border: 7px solid;
	border-color: transparent transparent transparent #ff8116;
}

.home .logo {
    opacity: 0;
    transition : all 0.5s;
} 
.home .logo.fade{
    opacity : 1;
    transition : all 0.5s;
}


/* 詳細リンク */
.more {
    margin-right: 2px;
    padding-right: 1.5em;
    background: url(images/arrow.svg) no-repeat right;
    background-size: contain;
    vertical-align: middle;
}
.more:hover {
    background: url(images/arrow_h.svg) no-repeat right;
    transition: all 0.3s ease-in-out;
}
.p_more {
    margin: 0;
    margin-bottom: 0!important;
    text-align: right !important;
}

a.link_btn {
    background-color: #0673ff;
    color: #fff;
    text-align: center;
    display: block;
    margin: 1.5em auto;
    padding: 0.3em;
    border-radius: 50px;
    width: 70%;
}
a.link_btn:hover {
    background-color: #ff4d00;
    transition: all 0.3s ease-in-out;
}


/* wrapper (decoration) */
.wrap_o, .wrap_b, .wrap_g {
    position: relative;
    margin: 2.5em 0 1.5em;
    padding: 1.5em 2em 0.5em;
    text-align: center;
}
.wrap_o { border: #ff8116 solid 3px; }
.wrap_b { border: #0673FF solid 3px; }
.wrap_g { border: #65D300 solid 3px; }
.wrap_o h3, .wrap_b h3, .wrap_g h3 {
    position: absolute;
    display: inline-block;
    top: -15px;
    left: 50%;
    padding: 0 1.5em 0 2.5em;
    background: url(images/h3_icon_normal.svg) no-repeat #fff;
    background-position: 1em;
    background-size: 1.2em;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);/*位置調整*/
    font-size: 1.1em;
    color: #ff8116;
}
.wrap_b h3 {
    background-image: url(images/h3_icon_mail_b.svg);
    color: #0673FF;
}
.wrap_g h3 {
    background-image: url(images/h3_icon_mail_g.svg);
    color: #65D300;
}
.bg_a .wrap_o h3 { background-color: #EEFAFF; }

/* コーディネーター吹き出し */
.sample h5, .contact h5, #about h5, ul.speech_bubble-r,
#estimate-contact h5, #quick_start_guide h5, #trial h5, .wrap_o h5,
#client_interview dt, #client_interview dd {
    position: relative;
    display: block;
    margin: 2em 100px 2em 0;
    padding: 1.5em 2em;
    color: #ff4d00;
    background-color: #FFF;
    border: solid 1px #e2e2e2;
    border-radius: 10px;
    box-sizing: border-box;
    line-height: 1.6; 
    text-align: left;
    font-size: 0.95em;
}
#about h5 { font-size: 1em; }
.sample h5::before, .contact h5::before, #about h5::before, ul.speech_bubble-r::before,
#estimate-contact h5::before, #quick_start_guide h5::before, #trial h5::before, .wrap_o h5::before,
#client_interview dt::before, #client_interview dd::before {/* 吹き出し */
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: -8px;
    margin: auto;
    width: 12px;
    height: 12px;
    border: 1px solid;
    border-color: #e2e2e2 #e2e2e2 transparent transparent;
    background-color: #fff;
    transform: rotate(45deg);
}
.sample h5::after, .contact h5::after, #about h5::after,  ul.speech_bubble-r::after, 
#estimate-contact h5::after, #quick_start_guide h5::after, #trial h5::after, .wrap_o h5::after,
#client_interview dt::after, #client_interview dd::after {/* コーディネーター */
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: -100px;
    margin: auto;
    width: 80px;
    height: 55px;
    background: url(images/coordinator1.png) no-repeat;
    background-size: contain;
}
.sample h5.speech_bubble-smile, .sample h5.speech_bubble-smile::before,
.contact h5.speech_bubble-smile, .contact h5.speech_bubble-smile::before { background-color: #FFFBE5; color: goldenrod; }
.sample h5.speech_bubble-smile::after, .contact h5.speech_bubble-smile::after {
    background: url(images/coordinator2.png) no-repeat;
    background-size: contain;
}
ul.speech_bubble-r { margin: 2em 2em 2em 150px; border-color: #ff4d00; }
ul.speech_bubble-r::before { right: initial; left: -8px; border-color: transparent transparent #ff4d00 #ff4d00; }
ul.speech_bubble-r::after, #client_interview dd::after { right: initial; left: -100px; }
#client_interview dd { margin: 2em 0 2em 100px; }
#client_interview dd::before { right: initial; left: -8px; border-color: transparent transparent #e2e2e2 #e2e2e2; }

#trial ul.speech_bubble-r { margin-left: 180px; }
#trial ul.speech_bubble-r::after { 
    left: -150px;
    width: 130px;
    height: 130px;
    background: url(images/free_trial/trial-client_image.png) no-repeat;
    background-size: 130px 130px;
}


/* 背景カラー */
.wrap-bg_o{
    padding: 2em;
    border-radius: 0.5em;
    background-color: #FFE0BA;

}
.wrap-bg_o p {
    margin: 1em;
}
.bg_a p{ margin: 0; font-size: 0.8em; }


/* 共通コンタクト */
.common-contact {
    background-color: #ff8116;
}

.side_banner a { color: #1A8AF4; }
p.tel_banner, p.line_banner, p.estimate_banner, p.trial_banner {
    position: fixed;
    right: -2px;
    padding: 15px 10px;
    border: #1A8AF4 solid 2px;
    border-radius: 10px 0 0 10px;
    background-color: #fff;
    z-index: 99;
    writing-mode: vertical-rl;  
    font-size: 0.9em;
}
_::-webkit-full-page-media, _:future, :root p.tel_banner { right: 13px; }
_::-webkit-full-page-media, _:future, :root p.line_banner,
_::-webkit-full-page-media, _:future, :root p.estimate_banner,
_::-webkit-full-page-media, _:future, :root p.trial_banner {
    right: 20px;
}
_::-webkit-full-page-media, _:future, :root .fa { display: initial; }
/*_::-webkit-full-page-media, _:future, :root .sample h2.category-name, 
_::-webkit-full-page-media, _:future, :root .single h2.category-name { padding: 2px 0; }
_::-webkit-full-page-media, _:future, :root .sample h2.category-name button,
_::-webkit-full-page-media, _:future, :root .single h2.category-name button { background-position: 0.3em 0.15em; }*/

.side_banner a p:hover { color: #ff4d00; border-color: #ff4d00; background-color: #FFE0BA; }

p.tel_banner { 
    top: 30px;
    padding: 8px 8px;
    border-color: red/*#FB50A4*/;
    background-color: red/*#FB50A4*/;
    color: white; 
    font-size: 1em;
    font-weight: bold;
}
p.line_banner { top: 210px; border-color: #00B900; color: #00B900 }
p.estimate_banner { top: 285px; }
p.trial_banner { top: 410px; border-color: #9243FF; color: #9243FF; }

/* フッター */
#footer {
    margin: 0 !important;
    background-color: #ffd300 !important;
}

/* *********ホーム********* */
/*.home .header-container,*/ .home .main, .navi {
    background-color: transparent;
}

#front-news { padding-top: 0.6em; padding-bottom: 0.6em }
#front-recent_sample { padding-bottom: 0; }

.home #front-service h2,
.home #front-characteristic h2,
.home #front-popular_sample h2,
.home #front-service h2,
.home #front-contact h2,
.home #front-reviews h2,
.home #front-faq h2,
#front-popular_sample h2 {
    position: relative;
    margin-bottom: 1.5em;
    padding-bottom: 0.5em;
    color: #ff8116;
    text-shadow: white 2px 0px, white -2px 0px, white 0px -2px, white 0px 2px, white 2px 2px, white -2px 2px, white 2px -2px, white -2px -2px, white 1px 2px, white -1px 2px, white 1px -2px, white -1px -2px, white 2px 1px, white -2px 1px, white 2px -1px, white -2px -1px, 3px 3px 5px #ff8116;
    font-size: 1.35em;
    line-height: 1.4;
}
.home #front-service h2:before,
.home #front-characteristic h2:before,
.home #front-popular_sample h2:before,
.home #front-service h2:before,
.home #front-contact h2:before,
.home #front-reviews h2:before,
.home #front-faq h2:before,
#front-popular_sample h2:before {
  content: '';
  position: absolute;
  left: 50%;
  bottom: 0;/*線の上下位置*/
  display: inline-block;
  width: 40%;/*線の長さ*/
  height: 3px;/*線の太さ*/
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);/*位置調整*/
  background-color:  #ff8116;/*線の色*/
  border-radius: 2px;/*線の丸み*/
}

.home section > p{
    text-align: center;
}
.home .entry-content {
    margin: 0;
}

/* ヘッダー・ロゴ */
#main-copy {
    position: absolute;
    top: -10px;
    z-index: 200;
    width: 270px;
    height: 120px;
    background: url(images/front/logo_home.png) no-repeat;
    background-size: contain;
}
#main-copy p {
    margin-top: 65px;
    margin-left: 12px;
    font-size: 13px;
    font-weight: bold;
    font-feature-settings: "palt";
    line-height: 1.5;
    color: #1A8AF4;
}

/*.home .header-container {
    border-top: #ff8116 8px solid;
    height: 48px;
}
.home .logo a::before {
	display: block;
    content: "";
    margin-bottom: -40px;
    width: 260px;
    height: 120px;
    background: url(images/front/logo_home.png) no-repeat;
    background-size: contain;
}
.home .header-container-in { align-items: stretch; }
.home .fixed-header .logo a::before {
    margin-bottom: 0;
    width: 230px;
    height: 40px;
    background: url(images/logo.png) no-repeat;
    background-size: contain;
}
.home .fixed-header {
    border-top: none;
    background-color: #ff8116;
    height: 40px;
}
*/


/* メインビジュアル */
.home {
    background-image: url(images/front/bg.png);
    background-position: left top;
    background-size: contain;
    background-repeat: no-repeat;
    background-attachment: scroll;
} 
.home header:after { content: ""; display: block; clear: both; }
.home header:before { content: ""; display: block; clear: both; }
.home header {
    position: relative;
	display: block;
}
.home #main_visual h1 { overflow: hidden; }
.home #main_visual h1 img {   
    display: block;
    float: left;
}
.home #main_visual h1 img.kc1 { margin: 70px -25px 0 0; max-width: 48%; }
.home #main_visual h1 img.kv { margin: 70px 0 20px -5px; max-width: 52%; }
.home #main_visual h1 img.kc2 { margin: -110px 0 20px; max-width: 48%; }
.home #main_visual p { 
    margin: 0 0 1em 2em;
    color: #3669D5;
    clear: both; 
    text-align: left;
    font-size: 22px;
    font-feature-settings: "palt";
}
.home #main_visual p strong { color: #FC4E1E; background-color: transparent; }

header #main_visual dl {
    position: absolute;
}
header #main_visual dl {
    bottom: 0.5em;
    right: 0;
    padding: 1em;
    border-radius: 10px;
    background-color: rgba(255, 211, 0, 0.7);
    font-size: 0.85em;
    width: 25%;
}
header #main_visual dl dt { font-weight: bold; }
header #main_visual dl dt::before { 
    position: absolute;
    top: 40px;
    left: -40px;
    display: block;
    content: "";
    width: 60px;
    height: 60px;
    background: url(images/front/ai.svg) no-repeat;
}
header #main_visual dl dd {
    margin: 0 0 0 -4em;
    padding-left: 5em;
    font-size: 0.8em;
}

/* ニュース */   
#front-news {
    position: relative;
    background-color: #ffd300;
    font-size: 0.8em;
    overflow: hidden;
}
#front-news h2 {  
    position: absolute;
    top: 1em;
    display: inline-block;
    padding: 0.3em 0.8em;
    background-color: #fff;
    font-size: 1em;
}
#front-news ul {  
    display: inline-block;
    margin: 0;
    padding-left: 7em/*1em*/;
}
#front-news ul li {  
    list-style: none;
}
#front-news .p_more {  
    display: inline-block;
    float: right;
}

/* 制作総数・先月納品 */ 
#front-deliverd { 
    background-color: #FFE0BA;
    text-align: left; 
    font-size: 0.8em;
}
#front-deliverd h2 {
    display: inline-block;
    padding: 0.3em 0.8em;
    border: #ff8116 solid 2px;
    background-color: #fff;
    color: #ff8116;
    font-size: 1em;
}
#front-deliverd p strong { 
    background-color: transparent;
    color: #ff4d00;
    font-size: 1.2em;
}
#front-deliverd p {
    display: inline-block;
    margin: 0;
    padding: 0.2em 0 0.2em 0.5em;
}
#front-deliverd p small { padding-right: 0.5em; }



/* 最新サンプル */  
#front-recent_sample {
    background-color: #FFFBE5; 
}
#front-recent_sample h2 {
    margin-right: 1em;
    padding-top: 40px;
    border-radius: 50%;
    background-color: #ff8116;
    width: 125px;
    height: 125px;
    float: left;
    color: #fff;
    font-size: 1em;
}

#front-recent_sample ul {
    display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
    -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;
    -webkit-justify-content: space-between; -ms-justify-content: space-between; justify-content: space-between;
    margin: 0 0 1em;
    padding: 0;
}
#front-recent_sample ul li {
    margin: 0;
    padding: 0;
    width: calc((100% - 60px) / 6);
    list-style: none;

}
#front-recent_sample ul li a {
    display: block;
    border: #e2e2e2 solid 2px;
    border-radius: 5px;
    background-color: #fff;
    width: 100%;
}
#front-recent_sample ul li a:hover {
    border: #ff4d00 solid 2px;
    transition: all 0.3s ease-in-out;
}
#front-recent_sample ul li a::before {
    position: absolute;
    display: block;
    content: "NEW";
    padding: 0 0.5em;
    border-radius: 3px 0 0 0;
    background-color: #ff4d00;
    color: #fff;
    font-size: 0.8em;
}

#front-recent_sample ul li a img {
    width: 100%;
    vertical-align: bottom;
    border-radius: 5px;
}
#front-recent_sample ul li small {
    color: #999;
    font-size: 0.65em;
    text-align: center;
    display: inherit;
}
#front-recent_sample p {
    clear: left;
}

/* 商品 */  
#front-service {
    background-color: #FFFBE5;
}
#front-service h3 {
    margin: 0;
    padding: 0 0 0.5em;
    font-size: 1em;
    text-align: center;
}
#front-service > p {
    font-size: 0.9em;
}
#front-service #pr:after { content: ""; display: block; clear: both; }
#front-service #pr:before { content: ""; display: block; clear: both; }
#front-service #pr {
    position: relative;
	display: block;
    margin: -1.5em 0 1em;
}
#front-service img.pr1, #front-service img.pr2 { max-width: 53%; float: left;}
#front-service img.pr1 { margin-right: -45px; }
#front-service img.pr2 { margin-left: -45px; }

#front-service ul#front-service_items,
#front-service ul#front-service_contact,
#front-service ul#front-service_situation {
    display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
    -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;
    -webkit-justify-content: space-between; -ms-justify-content: space-between; justify-content: space-between;
    padding: 0;
}
#front-service ul#front-service_items li,
#front-service ul#front-service_contact li,
#front-service ul#front-service_situation li {
    margin: 0;
    padding: 0;
    list-style: none;
}
#front-service ul#front-service_contact li,
#front-service ul#front-service_situation li {
    padding-right: 1em;
    border-right: #666 solid 0.5px;
    font-size: 0.8em;
}
#front-service ul#front-service_contact li:last-child,
#front-service ul#front-service_situation li:last-child {
    padding-right: 0;
    border-right: none;
}

#front-service ul#front-service_items li {
    width: calc((100% - 40px) / 7);   
}
#front-service ul#front-service_items li a {
    position: relative;
    display: block;
    padding: 1em 1em 2.5em;
    border: #e2e2e2 solid 2px;
    border-radius: 10px;
    background-color: #fff;
    text-align: center;
    color: #333;
    font-size: 0.7em;
    font-weight: bold;
}
#front-service ul#front-service_items li a:hover {
    border: #ff4d00 solid 2px;
    color: #ff4d00;
    transition: all 0.3s ease-in-out;
}
#front-service ul#front-service_items li a span {
    position: absolute;
    bottom: 0.5em;
    color: #ff4d00;
    left: 3em;
}
#front-service ul#front-service_items li a::after {
	display: block;
    content: "";
    margin: 0 auto;
    width: 50px;
    height: 50px;
    background: url(images/front/menu.png) no-repeat;
    background-size: 50px 350px;
}
#front-service ul#front-service_items li:nth-child(1) a::after { background-position: 0 0; }
#front-service ul#front-service_items li:nth-child(2) a::after { background-position: 0 -50px; }
#front-service ul#front-service_items li:nth-child(3) a::after { background-position: 0 -100px; }
#front-service ul#front-service_items li:nth-child(4) a::after { background-position: 0 -150px; }
#front-service ul#front-service_items li:nth-child(5) a::after { background-position: 0 -200px; }
#front-service ul#front-service_items li:nth-child(6) a::after { background-position: 0 -250px; }
#front-service ul#front-service_items li:nth-child(7) a::after { background-position: 0 -300px; }

#front-service .wrap-bg_o h3 { margin-bottom: 1rem; border-bottom: #ff8116 dotted 2px; color: #ff4d00; }
#front-service .flow-2 .sutuation-pic:before { border-left: 15px solid #ff8116; }

#front-service ul#front-service_contact li {
    width: calc((100% - 40px) / 4);
}
#front-service ul#front-service_contact li p {
    margin: 0; 
}
#front-service ul#front-service_contact li p::before {
	display: block;
    content: "";
    margin: 0 auto;
    width: 150px;
    height: 100px;
    background: url(images/front/service-contact.png) no-repeat;
    background-size: 150px 400px;
}
#front-service ul#front-service_contact li:nth-child(1) p::before { background-position: 0 0; }
#front-service ul#front-service_contact li:nth-child(2) p::before { background-position: 0 -100px; }
#front-service ul#front-service_contact li:nth-child(3) p::before { background-position: 0 -200px; }
#front-service ul#front-service_contact li:nth-child(4) p::before { background-position: 0 -300px; }

#front-service ul#front-service_situation li {
    width: calc((100% - 20px) / 2);
}
#front-service ul#front-service_situation li:last-child { padding-left: 1em; }

#front-service ul#front-service_contact li h4,
#front-service ul#front-service_situation li h4 {
    margin: 0 0 0.5em;
    padding: 0;
    font-size: 1em;
    color: darkorange;
}
#front-service .wrap-bg_o p strong {
    display: block;
    margin: 0 -1em 2em;
    padding: 0.5em 0;
    border-radius: 5px;
    background-color: darkorange;
    color: white;
    font-size: 0.85em;
    line-height: 1.5;
}
#front-service .sutuation-pic {
    font-size: 14px;
    color: initial;
}
#front-service .wrap-bg_o p.p_more { margin: 0; }

/* 特徴 */  
#front-characteristic {
    background-color: #ffd300; 
}
#front-characteristic ul {
    display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
    -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;
    -webkit-justify-content: space-between; -ms-justify-content: space-between; justify-content: space-between;
    margin-bottom: 0;
    padding: 0;
}
#front-characteristic ul li {
    margin: 0.5em 0;
    padding: 0;
    background-color: #FFE980;
    width: calc((100% - 20px) / 2);
    list-style: none;
}
#front-characteristic ul li:nth-child(1) {
    background-color: #F1FFEE;
}
#front-characteristic ul li:nth-child(4) {
    background-color: #EEFAFF;
}
#front-characteristic ul li:nth-child(5) {
    background-color: #FFF5EB;
}

#front-characteristic ul li:nth-child(odd){
	text-align: right;
}
#front-characteristic ul li a {
    display: block;
    padding: 1em;
    color: #333;
}
#front-characteristic ul li a:hover {
    opacity: 0.7;
    transition: all 0.3s ease-in-out;
}
#front-characteristic ul li h3 {
    margin: 1em 0 0.5em;
    font-feature-settings: "palt";
    color: darkorange;
    text-shadow: white 2px 0px, white -2px 0px, white 0px -2px, white 0px 2px, white 2px 2px, white -2px 2px, white 2px -2px, white -2px -2px, white 1px 2px, white -1px 2px, white 1px -2px, white -1px -2px, white 2px 1px, white -2px 1px, white 2px -1px, white -2px -1px, 3px 3px 5px #999;
}
#front-characteristic ul li:nth-child(1) h3 { color: cadetblue;}
#front-characteristic ul li:nth-child(4) h3 { color: deepskyblue;}
#front-characteristic ul li:nth-child(5) h3 { color: tomato;}
#front-characteristic ul li p {
    margin: 0.5em 0;
    font-size: 0.8em;
}
#front-characteristic ul li p strong, #main_visual dl dd strong {
    background-color: #FFBC64;
}
#front-characteristic ul li:nth-child(odd) img,
#front-characteristic ul li:nth-child(even) img {
    max-width: 120%;
    display: block;
    margin-bottom: -5em;
}
#front-characteristic ul li:nth-child(odd) img {
    margin-left: -20%;
}
#front-characteristic ul li:nth-child(3) img {
    margin-bottom: -7em;
}
#front-characteristic ul li:nth-child(4) img {
    margin-bottom: -3em;
}
#front-characteristic small {
    display: block;
    margin-bottom: 1em;
    font-size: 0.7em;
    text-align: right;
}
p#client_logo::after {
	display: block;
    content: "";
    margin: 0 auto;
    width: 100%;
    height: 40px;
    background: url(images/front/client-logos.png) no-repeat;
    background-size: contain;
    background-position: center;
}


/* 人気サンプル */  
#front-popular_sample {
    background-color: #FFFBE5; 
}

.widget-entry-cards {
    display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
    -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;
    -webkit-justify-content: space-between; -ms-justify-content: space-between; justify-content: space-between;
}
.widget-entry-cards.card-large-image .a-wrap {
    margin-bottom: 0.3em;
    width: calc((100% - 40px) / 8);
    padding: 0;
    border: #e2e2e2 solid 3px;
    border-radius: 5px;
    background-color: #fff;
}
.widget-entry-cards.card-large-image .a-wrap:hover {
    border: #ff4d00 solid 3px;
}
.entry-card-thumb, .widget-entry-card-thumb, .related-entry-card-thumb, .carousel-entry-card-thumb {
    margin-top: 0;
}

.widget-entry-cards.card-large-image .card-content {
    display: none;
}

/* コンタクト・共通コンタクト */
#front-contact ul,
.common-contact ul {
    display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
    -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;
    -webkit-justify-content: space-between; -ms-justify-content: space-between; justify-content: space-between;
    padding: 0;
}
#front-contact ul li,
.common-contact ul li {
    margin: 0;
    padding: 0;
    width: calc((100% - 20px) / 3);
    list-style: none;
    text-align: center;
}
#front-contact ul li a, #front-contact p a.tel,
.common-contact ul li a, .common-contact p a.tel {
    display: block;
    padding: 1em;
    border: #e2e2e2 solid 2px;
    border-radius: 10px;
    background-color: #fff;
    color: #333;
    font-weight: bold;
}
#front-contact ul li a:hover, #front-contact p a.tel:hover,
.common-contact ul li a:hover, .common-contact p a.tel:hover {
    border: #ff4d00 solid 2px;
    color: #ff4d00;
    transition: all 0.3s ease-in-out;
}

#front-contact ul li a::after,
.common-contact ul li a::after {
	display: block;
    content: "";
    margin: 0 auto;
    width: 100px;
    height: 75px;
    background: url(images/contact.png) no-repeat;
    background-size: 100px 225px;
}
#front-contact ul li:nth-child(1) a::after,
.common-contact ul li:nth-child(1) a::after { background-position: 0 0; }
#front-contact ul li:nth-child(2) a::after,
.common-contact ul li:nth-child(2) a::after { background-position: 0 -75px; }
#front-contact ul li:nth-child(3) a::after,
.common-contact ul li:nth-child(3) a::after { background-position: 0 -150px; }

.common-contact p { margin: 1em 0;}

#front-contact p a.tel,
.common-contact p a.tel {
    margin: 0;
    padding: 0.5em;
    text-align: center;
    font-size: 1.8em;
    color: red;
}
#front-contact p a.tel small,
.common-contact p a.tel small {
    display: block;
    font-size: 0.38em;
    color: #333;
}


#front-order_flow #order_flow-wrap, #trial-flow #order_flow-wrap {
    display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
    -webkit-justify-content: space-between; -ms-justify-content: space-between; justify-content: space-between;
}
#front-order_flow #order_flow-wrap div, #trial-flow #order_flow-wrap div {
    position: relative;
    width: calc((100% - 2em) / 5);
}
#front-order_flow #order_flow-wrap div::before {
    position: absolute;
    content: attr(data-text)"";
    padding: 0.3em 0;
    font-size: 0.8em;
    font-weight: bold;
    text-align: center;
}
#front-order_flow #order_flow-wrap div:nth-child(1)::before {
    width: 100%;
    background-color: #CFEFFF;
}
#front-order_flow #order_flow-wrap div:nth-child(2)::before {     
    margin-left: 7px;
    width: 408%;
    background-color: #FFEDCC;
}
#front-order_flow #order_flow-wrap div h6, #trial-flow #order_flow-wrap div h6 {
    margin: 2.5em 0 0.3em;
    border: none;
    font-size: 1em;
    text-align: center;
}
#trial-flow #order_flow-wrap div h6 { margin-top: 0; }

#front-order_flow #order_flow-wrap div:nth-child(1) h6,
#trial-flow #order_flow-wrap div:nth-child(1) h6 {
    margin-right: -15px;
    background: url(images/order_flow-arrow/order_flow-arrow01.svg) no-repeat; 
}
#front-order_flow #order_flow-wrap div:nth-child(2) h6,
#front-order_flow #order_flow-wrap div:nth-child(3) h6,
#front-order_flow #order_flow-wrap div:nth-child(4) h6 {
    margin-right: -10px;
    background: url(images/order_flow-arrow/order_flow-arrow03.svg) no-repeat;
    background-position: 8px 0;
    background-size: 95%;
}
#trial-flow #order_flow-wrap div:nth-child(2) h6,
#trial-flow #order_flow-wrap div:nth-child(3) h6,
#trial-flow #order_flow-wrap div:nth-child(4) h6 {
    margin-right: -10px;
    background: url(images/order_flow-arrow/order_flow-arrow02.svg) no-repeat;
    background-position: 8px 0;
    background-size: 95%;
}
#front-order_flow #order_flow-wrap div:nth-child(5) h6,
#trial-flow #order_flow-wrap div:nth-child(5) h6 {
    background: url(images/order_flow-arrow/order_flow-arrow04.svg) no-repeat;
}
#front-order_flow #order_flow-wrap div h6::after, #trial-flow #order_flow-wrap div h6::after {
	display: block;
    content: "";
    margin: 0.5em auto 0;
    width: 100px;
    height: 100px;
    background: url(images/front/order-flow.png) no-repeat;
    background-size: 100px 500px;
}
#front-order_flow #order_flow-wrap div:nth-child(1) h6::after { background-position: 0 0; }
#front-order_flow #order_flow-wrap div:nth-child(2) h6::after { background-position: 0 -100px; }
#front-order_flow #order_flow-wrap div:nth-child(3) h6::after { background-position: 0 -200px; }
#front-order_flow #order_flow-wrap div:nth-child(4) h6::after { background-position: 0 -300px; }
#front-order_flow #order_flow-wrap div:nth-child(5) h6::after { background-position: 0 -400px; }
#trial-flow #order_flow-wrap div h6::after { background-image: url(images/free_trial/trial-order-flow.png); }
#trial-flow #order_flow-wrap div:nth-child(1) h6::after { background-position: 0 0; }
#trial-flow #order_flow-wrap div:nth-child(2) h6::after { background-position: 0 -100px; }
#trial-flow #order_flow-wrap div:nth-child(3) h6::after { background-position: 0 -200px; }
#trial-flow #order_flow-wrap div:nth-child(4) h6::after { background-position: 0 -300px; }
#trial-flow #order_flow-wrap div:nth-child(5) h6::after { background-position: 0 -400px; }

#front-order_flow #order_flow-wrap div p,
#trial-flow #order_flow-wrap div p { margin: 0 0 1.5em; padding: 0 0.5em; font-size: 0.8em; }



#front-order_flow table {
    table-layout: fixed;
}
#front-order_flow table th,
#front-order_flow table td {
	border: none;
}
#front-order_flow table tr:nth-child(1) {
    border-bottom: #fff solid 0.5em;
	font-size: 0.8em;
}
#front-order_flow table tr:nth-child(1) th:nth-child(1) {
    display: block;
    margin-right: 10px;
	background-color: #CFEFFF;
}
#front-order_flow table tr:nth-child(1) th:nth-child(2) {
	background-color: #FFEDCC;
}

#front-order_flow table tr:nth-child(2) { 
    font-weight: bold;
    background: url(images/front/bg-order_flow.svg) no-repeat;
    background-size: 100% auto;
    text-align: center;
}
#front-order_flow table tr:nth-child(2) td::after {
	display: block;
    content: "";
    margin: 0 auto;
    width: 100px;
    height: 100px;
    background: url(images/front/order-flow.png) no-repeat;
    background-size: 100px 500px;
}
#front-order_flow table tr:nth-child(2) td:nth-child(1)::after { background-position: 0 0; }
#front-order_flow table tr:nth-child(2) td:nth-child(2)::after { background-position: 0 -100px; }
#front-order_flow table tr:nth-child(2) td:nth-child(3)::after { background-position: 0 -200px; }
#front-order_flow table tr:nth-child(2) td:nth-child(4)::after { background-position: 0 -300px; }
#front-order_flow table tr:nth-child(2) td:nth-child(5)::after { background-position: 0 -400px; }

#front-order_flow table tr:nth-child(3) {
    background-color: #fff;
    vertical-align: top;
	font-size: 0.8em;
}

/* お客様の声 */  
#front-reviews {
    background-color: #FFE0BA;
}
#front-reviews ul {
    padding: 0;
    font-size: 0.85em;
}
#front-reviews ul li {
    background-color: #FFF;
    border-radius: 0.5em;
    margin: 1em 0 0;
    padding: 1em 2em;
    list-style: none;
    overflow: hidden;
}
#front-reviews ul li h4 {
    margin: 0;
    padding: 1em 0 0;
    font-size: 1em;
    color: darkorange;
}
#front-reviews ul li p {
    margin: 0.5em 0;
}

#front-reviews ul li::before {
    display: inline-block;
    content: "";
    margin: 0.5em 1em 0 0;
    float: left;
    width: 250px;
    height: 135px;
    background: url(images/front/front-review.png) no-repeat;
    background-size: 250px 405px;
}
#front-reviews ul li:nth-child(1)::before { background-position: 0 0; }
#front-reviews ul li:nth-child(2)::before { background-position: 0 -135px; }
#front-reviews ul li:nth-child(3)::before { background-position: 0 -270px; }

/* よくある質問 */
#front-faq {
    background-color: #FAFAFA; 
}
#front-faq dl, .faq dl {
    padding: 1em 0;
    border-bottom: #e2e2e2 solid 1px;
}
#front-faq dt, .faq dt {
    padding-left: 3em;
    padding-bottom: 5px;
    font-weight: bold;
    background: url(images/front/faq-Q.svg) no-repeat left 0px;
    background-size: 35px;
    vertical-align: middle;
    color: #f39800;
}
#front-faq dd, .faq dd {
    margin-left: 0;
    padding: 1em 0 1em 3em;
    background: url(images/front/faq-A.svg) no-repeat left 15px;
    background-size: 35px;
    vertical-align: middle;
}


/* ********* イラスト工房とは ********* */

#about p { margin: 1em 1.5em; font-size: 0.9em; }


/* ********* 商品 ********* */

#items h2 a { color: white; }
#items ul.item-link { 
    display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
    flex-wrap: nowrap;
    -webkit-justify-content: center; -ms-justify-content: center; justify-content: center;
    margin: 0;
    padding: 0;
    width: 100%;
    font-size: 0.75em;
}
#items ul.item-link li {
    margin: 0;
    padding: 0;
    border-left: #e2e2e2 dotted 1px;
    width: calc(100% / 7);
    list-style: none;
    text-align: center;
    font-feature-settings: "palt";
    color: #999;
}
#items ul.item-link li:last-child { border-right: #e2e2e2 dotted 1px; }
#items ul.item-link li a {
    display: inline-block;
    padding: 0.5em 0;
    width: 100%;
}
#items ul.item-link li a::before {
	display: inline-block;
    content: "";
    margin: 0 auto;
    padding-right: 0.3em;
    width: 20px;
    height: 20px;
    background: url(images/front/menu.png) no-repeat;
    background-size: 20px 140px;
    vertical-align: middle;
}
#items ul.item-link li:nth-child(2) a::before { background-position: 0 -20px }
#items ul.item-link li:nth-child(3) a::before { background-position: 0 -40px }
#items ul.item-link li:nth-child(4) a::before { background-position: 0 -60px }
#items ul.item-link li:nth-child(5) a::before { background-position: 0 -80px }
#items ul.item-link li:nth-child(6) a::before { background-position: 0 -100px }
#items ul.item-link li:nth-child(7) a::before { background-position: 0 -120px }
#items ul.item-link li a.item_current { background-color: #fff; height: 100%; color: #ff8116; }

#items .wrap_o { text-align: left; } 
#items .wrap_o p { font-size: 0.9em; } 
#items .wrap_o p.p_more { margin-bottom: 1em; }
#items .wrap_o > ul {
    display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
    padding: 0;
    width: 100%;
}
#items .wrap_o > ul > li {
    
    padding: 0 1em;
    border-right: #e2e2e2 solid 1px;
    width: 25%;
    list-style: none;
    font-size: 0.8em;
    font-weight: bold;
    text-align: center;
}
#items .wrap_o > ul > li:last-child { border-right: none; }
#items .wrap_o > ul > li > img { margin-top: 1em; }

#items .wrap_o ul#item-character_plan { -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; margin-top: -1em; }
#items .wrap_o ul#item-character_plan li {
    position: relative;
    margin: 2em 1em 0 0;
    border: #7CEA89 solid 4px;
    border-radius: 10px;
    width: calc((100% - 3em) / 4);
}
#items .wrap_o ul#item-character_plan li:nth-child(4n) { margin-right: 0; }
#items .wrap_o ul#item-character_plan li h4 {
    margin: -1em -0.5em;
    padding: 0.5em 2em;
    border-radius: 30px;
    background-color: #7CEA89;
    font-size: 1em;
    color: #fff;
}
#items .wrap_o ul#item-character_plan li img { padding: 2em 0 1em; }
#items .wrap_o ul#item-character_plan li:nth-child(2) { border-color: #52CEEA; }
#items .wrap_o ul#item-character_plan li:nth-child(3) { border-color: #EF70BF; }
#items .wrap_o ul#item-character_plan li:nth-child(4) { border-color: #A56EE5; }
#items .wrap_o ul#item-character_plan li:nth-child(2) h4 { background-color: #52CEEA; }
#items .wrap_o ul#item-character_plan li:nth-child(3) h4 { background-color: #EF70BF; }
#items .wrap_o ul#item-character_plan li:nth-child(4) h4 { background-color: #A56EE5; }

#items .wrap_o ul#item-character_plan p { text-align: left; }

#items .wrap_o table {
    text-align: center; 
    font-size: 0.8em;
}
#items .wrap_o table img { padding: 1em; }
#items .wrap_o table ul { padding-left: 20px;}
#items .wrap_o table ul li {
    text-align: left; 
}
#items .wrap_o table strong { background-color: transparent; color: #ff4d00; }
#items .wrap_o ul li strong { background-color: #ffd300; color: initial; }
.item-price { color: #ff4d00; font-weight: bold; }
#items h6 {
    margin: 1.5em 0 1em;
    padding: 0;
    border: none;
    font-size: 0.9em;
}
#items h6::before {
	display: inline-block;
    content: '';
    margin-right: 0.5em;
	background: #333;
	width: 15px;
	height: 15px;
    vertical-align: middle;
}
table.item-discount th { background-color: #FFF3F3; font-size: 0.9em; }

#items .wrap_o th { width: 15% }
#items .wrap_o td:nth-child(2) { width: 25%; }
#items .wrap_o td:nth-child(3) { width: 60%; }

#items .price-pic th { width: 15% }
#items .price-pic td:nth-child(2), .price-pic td:nth-child(3) { width: 20% !important; }
#items .price-pic td:nth-child(4) { width: 45% !important; }


/* ********* イラスト工房の強み ********* */

#strength ul {
    padding: 0.5em 0 0;
}
#strength ul li {
    position: relative;
    margin: 0 0 1.5em 0;
    padding: 1em;
    border: #ff4d00 solid 3px;
    border-radius: 15px;
    background: #FEE4C3 url(images/quarter_do.svg) no-repeat;
    background-position: 0 0;
    background-size: 4.5em;
    list-style: none;
}
#strength ul li#strength01,
#strength ul li#strength01 ol li { border-color: #65D300; background-image: url(images/quarter_g.svg); }
#strength ul li#strength03,
#strength ul li#strength03 ol li { border-color: #FF8015; background-image: url(images/quarter_o.svg); }
#strength ul li#strength04,
#strength ul li#strength04 ol li { border-color: #6DC4E2; background-image: url(images/quarter_b.svg); }
#strength ul li#strength01 { background-color: #F1FFEE }
#strength ul li#strength04 { background-color: #EFFAFF }

#strength > ul > li > p {
    position: absolute;
    top: 0;
    left: 0.6em;
    font-size: 0.6em;
    font-weight: bold;
    font-feature-settings: "palt";
    color: #fff;
}
#strength > ul > li > p > strong {
    background-color: transparent;
    font-size: 1.8em;
}
#strength ul li h3 {
    margin-left: 4em;
    padding: 3em 0;
    width: 45%;
    float: left;
    line-height: 1.6;
    text-shadow: white 2px 0px, white -2px 0px, white 0px -2px, white 0px 2px, white 2px 2px, white -2px 2px, white 2px -2px, white -2px -2px, white 1px 2px, white -1px 2px, white 1px -2px, white -1px -2px, white 2px 1px, white -2px 1px, white 2px -1px, white -2px -1px, 3px 3px 5px #999;
}
#strength > ul > li > img {
    margin: 0 1em -2em 0;
    width: 40%;
    float: left;
}
#strength > ul > li#strength01 > img { margin-bottom: -3em; }
#strength > ul > li#strength03 > h3 { padding-top: 4em; width: 50%; }
#strength > ul > li#strength03 > img { width: 35%; }

#strength ul li ol {
    display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
    -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row;
    -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;
    padding: 0;
    width: 100%;
    clear: both;
}
#strength ul li ol li {
    margin: 1em 1em 0 0;
    padding: 1em;
    border: #ff4d00 solid 2px;
    border-radius: 10px;
    background-size: 2em;
    background-color: #fff;
    width: calc((100% - 1em) /2);
    overflow: hidden;
}
#strength ul li ol li:nth-child(2n) {
    margin-right: 0;
}
#strength ul li ol li:nth-child(1):before, #start_guide-estimate ol li:nth-child(1):before { content: "1";}
#strength ul li ol li:nth-child(2):before, #start_guide-estimate ol li:nth-child(2):before { content: "2";}
#strength ul li ol li:nth-child(3):before, #start_guide-estimate ol li:nth-child(3):before { content: "3";}
#strength ul li ol li:nth-child(4):before, #start_guide-estimate ol li:nth-child(4):before { content: "4";}
#strength ul li ol li:nth-child(5):before, #start_guide-estimate ol li:nth-child(5):before { content: "5";}
#strength ul li ol li:nth-child(6):before, #start_guide-estimate ol li:nth-child(6):before { content: "6";}
#strength ul li ol li:nth-child(7):before, #start_guide-estimate ol li:nth-child(7):before { content: "7";}
#strength ul li ol li:nth-child(8):before, #start_guide-estimate ol li:nth-child(8):before { content: "8";}
#start_guide-estimate ol li:nth-child(6):before { content: "6";}
#start_guide-estimate ol li:nth-child(7):before { content: "7";}
#strength ul li ol li:before { 
    position: absolute;
    top: 0;
    left: 0.5em;
    font-weight: bold;
    color: #fff;
}
#strength ul li ol li h4 {
    margin: 0 0 0 1em;
    font-size: 1em;
}
#strength ul li#strength01 h3, #strength ul li#strength01 ol li h4 { color: #65D300; }
#strength ul li#strength02 h3, #strength ul li#strength02 ol li h4 { color: #ff4d00; }
#strength ul li#strength03 h3, #strength ul li#strength03 ol li h4 { color: #FF8015; }
#strength ul li#strength04 h3, #strength ul li#strength04 ol li h4 { color: #6DC4E2; }
#strength ul li ol li p {
    font-size: 0.8em;
}
#strength ul li ol li img {
    margin: 1em 1em 1em 0;
    width: 40%;
    float: left;
}
#semi_ordermade .wrap_o:after { 
    content: "";
    clear: both;
    display: block;
}
#semi_ordermade .wrap_o p { text-align: left; font-size: 0.9em; }
#semi_ordermade .wrap_o img {
    margin: 0 1em 1em 0;
    width: 20%;
    float: left;
}


/* ********* 業績 ********* */

ul.works-qlients {
    margin: 1.5em 0;
    width: 32%;
    float: left;
    font-size: 0.7em;
}
#works .entry-content p { margin: 1em; clear: both;}

ul.works-items, ul.works-reviews {
    padding: 0;
    overflow: hidden;
}
ul.works-items li, ul.works-reviews li {
    display: block;
    margin-right: 1em;
    float: left;
    width: 30%;
}
ul.works-items li a, ul.works-reviews li a {
    display: block;
    border: #e2e2e2 solid 3px;
    border-radius: 10px;
    font-weight: bold;
}
ul.works-items li a img, ul.works-reviews li a img {
    border-radius: 7px 7px 0 0;
    vertical-align: bottom;
    width: 100%;
    height: 160px;
    object-fit: cover;
}
ul.works-items li a h4, ul.works-reviews li a p:nth-child(4) {
    margin: 0;
    padding: 0 0.5em 0.5em;
    font-size: 0.9em;
}
ul.works-items li a p, ul.works-reviews li a p {
    margin: 0;
    padding: 0.7em 0.7em 0;
    font-size: 0.7em;
    color: #333;
}
ul.works-items li a:hover, ul.works-reviews li a:hover { border: #ff4d00 solid 3px; }
#works h2 a { color: white;}


/* ********* ご利用・納品・お支払い方法 ********* */

#quick_start_guide { margin-top: 0; margin-bottom: 2em; }
#start_guide-estimate ol {
    margin: 2em 0;
    padding: 0;
}
#start_guide-estimate ol li {
    position: relative;
    list-style: none;
    margin: 0 0 0 15px;
    padding-bottom: 1em;
    border-left: #ff8116 solid 3px;
    list-style: none;
}
#start_guide-estimate ol li:nth-child(1),
#start_guide-estimate ol li:nth-child(2),
#start_guide-estimate ol li:nth-child(3) { border-color: #6DC4E2; }
#start_guide-estimate ol li:nth-child(6) { border-color: #EA47D3; }

#start_guide-estimate ol li:last-child { border: none; }
#start_guide-estimate ol li:before { 
    position: absolute;
    top: 0;
    left: -15px;
    border-radius: 50%;
    background-color: #ff8116;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    font-weight: bold;
    color: #fff;

}
#start_guide-estimate ol li:nth-child(1):before,
#start_guide-estimate ol li:nth-child(2):before,
#start_guide-estimate ol li:nth-child(3):before { background-color: #6DC4E2; }
#start_guide-estimate ol li:nth-child(6):before,
#start_guide-estimate ol li:nth-child(7):before { background-color: #EA47D3; }

#start_guide-estimate ol li h3 {
    margin: 0 1.5em 0.5em;
    color: #ff8116;
}
#start_guide-estimate ol li h4 {
    margin: 1.5em;
    padding: 0;
    font-size: 1em;
    color: #ff8116;
}
#start_guide-estimate ol li:nth-child(1) h3,
#start_guide-estimate ol li:nth-child(2) h3,
#start_guide-estimate ol li:nth-child(3) h3,
#start_guide-estimate ol li:nth-child(1) h4 { color: #6DC4E2; }
#start_guide-estimate ol li:nth-child(6) h3,
#start_guide-estimate ol li:nth-child(7) h3,
#start_guide-estimate ol li:nth-child(7) h4 { color: #EA47D3; }

#start_guide-estimate ol li p {
    margin: 1.5em;
    font-size: 0.9em;
}
#start_guide-estimate ol li img{
    margin: 1em 1em 0.5em 1em;
    width: 20%;
    float: left;
}
#start_guide-estimate ol li .flow-2 img { margin-top: 0; width: 40%; }

.wrap_o-bg_y, .wrap_a-bg_y, .wrap_m-bg_y {
    margin: 0 0 1em 1.5em; 
    border: #ff8116 solid 3px;
    border-radius: 0.5em;
    background-color: #FFFBE5;
    overflow: hidden;
}
.wrap_a-bg_y { border-color: #6DC4E2; }
.wrap_m-bg_y { border-color: #EA47D3; }

#quick_start_guide h2 a { color: white; }

#quick_start_guide .flow-2 {
    display: table-cell;
    border-bottom: #e2e2e2 dotted 1px;
    border-right: #e2e2e2 dotted 1px;
}

#quick_start_guide table { font-size: 0.8em; }
#quick_start_guide table tbody th { font-size: 0.9em; }
#quick_start_guide table#order_flow-payment tbody th:nth-child(1) { width: 50% }

#quick_start_guide table td {
    padding: 1em;
}
#quick_start_guide table td img {
    display: block;
    margin: 1em auto;
    width: 40%;
}
#quick_start_guide .wrap_o p { text-align: left; font-size: 0.9em; }


/* ********* こんな時にご利用ください ********* */

.sutuation {
    margin: 1.5em 0;
    border: #65D300 solid 3px;
    border-radius: 10px;
    overflow: hidden;
}
.sutuation h3 {
    /*margin: 1.5em 1em 0;*/
    font-size: 1em;
    text-align: center;
    color: #fff;
    background-color: #65D300;
    padding: 0.5em;
}
.sutuation .flow-2, .sutuation p{
    margin: 1em;
    width: calc((100% - 3em)/2);
    float: left;
}
.sutuation .flow-2 {
    margin-right: 0;
    overflow: hidden;
}
.sutuation-pic {
    position: relative;
    display: inline-block;
    width: calc((100% - 3em)/2);
    float: left;
    font-size: 0.7em;
    color: #65D300;
}
.flow-2 .sutuation-pic:first-child { margin-right: 3em; }
.flow-2 .sutuation-pic:first-child:before {
    position: absolute;
    content: '';
    width: 0;
    height: 0;
    top: 50%;
    right: -2em;
    border-left: 15px solid #65D300;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
}



/* ********* 無料試作 ********* */

#trial-advantage ul {
    display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
    -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row;
    -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;
    padding: 0;
    width: 100%;
    clear: both;
} 
#trial-advantage ul li {
    position: relative;
    margin: 1em 1em 0 0;
    padding: 1em;
    border: #ff4d00 solid 2px;
    border-radius: 10px;
    background: url(images/quarter_do.svg) no-repeat;
    background-position: 0 0;
    background-size: 2em;
    width: calc((100% - 1em) /2);
    list-style: none;
}
#trial-advantage ul li img {
    margin: 1em 1em 0 0;
    width: 30%;
    float: left;
}
#trial-advantage ul li:nth-child(2n) { margin-right: 0; }
#trial-advantage ul li:nth-child(1):before { content: "1";}
#trial-advantage ul li:nth-child(2):before { content: "2";}
#trial-advantage ul li:nth-child(3):before { content: "3";}
#trial-advantage ul li:nth-child(4):before { content: "4";}
#trial-advantage ul li:nth-child(5):before { content: "5";}
#trial-advantage ul li:nth-child(6):before { content: "6";}
#trial-advantage ul li:before { 
    position: absolute;
    top: 0.1em;
    left: 0.5em;
    font-weight: bold;
    color: #fff;
}
#trial-advantage ul li h3 {
    margin: 0 0 0 1.5em;
    font-size: 1em;
    color: #ff4d00;
}
#trial-advantage ul li p {
    font-size: 0.8em;
}

.wrap_or_dotted-bg_y {
    margin: 2em 0; 
    border: #ff4d00 dotted 2px;
    border-radius: 0.5em;
    background-color: #FFFBE5;
}
.wrap_or_dotted-bg_y h2 {
    padding: 0.3em;
    background-color: #ff4d00;
    color: #fff;
}
ul#trial_condition { position: relative; margin: 1.5em; padding: 0; }
ul#trial_condition::before {
    position: absolute;
    left: 15%;
    display: block;
    content: "";
    width: 120px;
    height: 120px;
    background: url(images/free_trial/trial-client.png) no-repeat;
    background-size: 120px 120px;
}
ul#trial_condition li {
    margin: 0.5em 0.5em 0.5em 30%;
    padding-left: 2.5em;
    background: url(images/free_trial/trial-check.svg) no-repeat;
    list-style: none;
    font-weight: bold;
}
.wrap_or_dotted-bg_y ul#trial_condition + p {
    margin: 1em 25px 0;
    padding: 0.8em;
    background-color: #ff4d00;
    border-radius: 10px 10px 0 0;
    font-size: 1.1em;
    font-weight: bold;
    text-align: center;
    color: #fff;
}
.wrap_or_dotted-bg_y ul#trial_condition  + p + p {
    margin: 0 25px 1em;
    padding: 0.2em;
    background-color: #ffd300;
    font-size: 0.9em;
    text-align: center;
}

#trial-order_cancel { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-justify-content: space-between; -ms-justify-content: space-between; justify-content: space-between; padding: 0 1.5em 2em; }
#trial-order_cancel .flow-2 {
    width: calc((100% - 20px)/2);
    text-align: center;
}
#trial-order_cancel .flow-2 h3 { 
    position: relative;
    margin: 0 0 1em 40px;
    font-size: 1em; 
}
#trial-order_cancel .flow-2 h3:before {
    position: absolute;
    margin-left: -40px;
    content: "";
    top: 0.2em;
    width: 0;
    height: 0;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-top: 15px solid #ff4d00;
}
#trial-order_cancel > .flow-2 + .flow-2 > h3:before { border-top: 15px solid #00BDFF; }

#trial-order, #trial-cancel {
    display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
    flex-direction: column;
    border: #ff4d00 solid 2px;
    border-radius: 10px;
    background: #fff url(images/free_trial/trial-order.svg) no-repeat;
    background-size: 30%;
    background-position: center 3em;
    height: 100%;
    text-align: left;
}
#trial-cancel { background-image: url(images/free_trial/trial-cancel.svg); }
#trial-cancel { border-color: #00BDFF; }
#trial-order p, #trial-cancel p { margin: 1em; }
#trial-order ul, #trial-cancel ul {
    margin: auto 0 0;
    padding: 1em;
    border-top: #e2e2e2 dotted 1px;
    border-radius: 0 0 10px 10px;
    background-color: #FFEDE5;
    vertical-align: bottom;
}
#trial-cancel ul { background-color: #E5F8FF; }
#trial-order ul li, #trial-cancel ul li {
    margin-left: 1em;
    font-size: 0.8em;
}

#trial-order_cancel + table {
    margin: 2em 1.5em;
    background-color: #fff;
    width: initial;
    font-size: 0.9em;
}

table#trial-flow {
    table-layout: fixed;
}
table#trial-flow td {
	border: none;
}
table#trial-flow tr:nth-child(1) { 
    font-weight: bold;
    background: url(images/free_trial/bg-order_flow-trial.svg) no-repeat;
    background-size: 100% auto;
    text-align: center;
}
table#trial-flow tr:nth-child(1) td::after {
	display: block;
    content: "";
    margin: 0 auto;
    width: 100px;
    height: 100px;
    background: url(images/free_trial/trial-order-flow.png) no-repeat;
    background-size: 100px 500px;
}
table#trial-flow tr:nth-child(1) td:nth-child(1)::after { background-position: 0 0; }
table#trial-flow tr:nth-child(1) td:nth-child(2)::after { background-position: 0 -100px; }
table#trial-flow tr:nth-child(1) td:nth-child(3)::after { background-position: 0 -200px; }
table#trial-flow tr:nth-child(1) td:nth-child(4)::after { background-position: 0 -300px; }
table#trial-flow tr:nth-child(1) td:nth-child(5)::after { background-position: 0 -400px; }

table#trial-flow tr:nth-child(2) {
    vertical-align: top;
	font-size: 0.8em;
}
table#trial-flow tr:nth-child(2) td:nth-child(1) { padding-left: 1.5em; }
table#trial-flow tr:nth-child(2) td:nth-child(5) { padding-right: 1.5em; }

#trial-advantage + .wrap_or_dotted-bg_y + .wrap_or_dotted-bg_y p{
    margin: 1.5em;
}

/* ********* サンプル ********* */

ul.sample-category, ul.cat-list {
    padding: 0;
    overflow: hidden;
}
ul.sample-category li, ul.cat-list li {
    display: block;
    margin-right: 1em;
    margin-bottom: 1em;
    float: left;
}
ul.sample-category li:nth-child(3n), ul.cat-list li:nth-child(4n) { margin-right: 0; }

ul.sample-category li a, ul.cat-list li a {
    display: block;
    border: #e2e2e2 solid 3px;
    border-radius: 10px;
    font-weight: bold;
    color: #fff;
}
ul.cat-list li a button{
    border: none;
    background-color: transparent;
    font-size: 1em;
    font-weight: bold;
    color: #fff;
}
ul.sample-category li a img,
ul.cat-list li a img {
    border-radius: 7px 7px 0 0;
    vertical-align: bottom;
}
ul.sample-category li a p,
ul.cat-list li a p {
    margin: 0;
    padding: 0.3em;
    border-radius: 0 0 7px 7px;
    background-color: #0673FF;
}
ul.sample-category li a:hover,
ul.cat-list li a:hover {
    border: #0673FF solid 3px;
}
ul.sample-category li  { width: 31.5%; }
ul.cat-list li { width: 23%; }

.sample h2.category-name,
.single h2.category-name {
    margin: 1em 0;
    background-color: #ff8116;
}
.sample h2.category-name button, .single h2.category-name button {
    display: block;
    border: none;
    background: transparent url(images/faq-right.svg) no-repeat;
    background-size: 20px;
    background-position: 0.3em 0.3em;
    width: 100%;
    font-size: 0.75em;
    font-weight: bold;
    color: #fff;
}
.single h2.category-name button { font-size: 0.9em; }

.sample h2.category-name button:focus,
.single h2.category-name button:focus { outline:0; }

ul#cat_list-family, ul#cat_list-child, ul#cat_list-woman, ul#cat_list-man, ul#cat_list-senior, ul#cat_list-game, ul#cat_list-sticker,
ul#cat_list-instruction, ul#cat_list-illustration, ul#cat_list-medical, ul#cat_list-human_like, ul#cat_list-scene,
ul#cat_list-animal, ul#cat_list-bird, ul#cat_list-fish, ul#cat_list-insect, ul#cat_list-plant, ul#cat_list-food,
ul#cat_list-pictogram, ul#cat_list-vehicle, ul#cat_list-japanese, ul#cat_list-illust_map, ul#cat_list-business,
ul#cat_list-others { display: none; }

.sample ul.category-list, .single ul.category-list {
    padding: 0;
    overflow: hidden;
}
.sample ul.category-list li, .single ul.category-list li {
    display: block;
    margin-right: 1em;
    margin-bottom: 1em;
    width: 14.5%;
    float: left;
    list-style: none;
}
.single ul.category-list li { margin-right: 0.8em; }
.sample ul.category-list li a, .single ul.category-list li a {
    display: block;
    border: #e2e2e2 solid 3px;
    border-radius: 5px;
}
.sample ul.category-list li a:hover, .single ul.category-list li a:hover {
    border: #ff4d00 solid 3px;
}
.sample ul.category-list li img, .single ul.category-list li img {
    width: 100%;
    height: 134px;
    vertical-align: bottom;
    border-radius: 3px;
    object-fit: cover;
}
.sample ul.category-list li:last-child, .single ul.category-list li:last-child {
    margin-bottom: 1em;
}


.sample_detail {
    margin: 2em 0;
    border: #e2e2e2 solid 1px;
}
.sample_detail h2 {
    margin: 0;
    padding: 0.3em;
    background-color: #ff8116;
    font-size: 1em;
    text-align: center;
    color: #fff;
}
.sample_detail p { margin: 0; padding: 1em; }
.sample_detail .sample_desc { 
    background-color: #FAFAFA;
    color: #666;
    font-size: 0.9em;
}

.sample_detail ul {
    display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
    -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row;
    -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;
    margin: 0;
    padding: 0;
    border-bottom: #e2e2e2 solid 1px;
}
.sample_detail ul li {
    position: relative;
    display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
    align-items: center;
    margin: 0;
    padding: 0 0.5em;
    border-right: #e2e2e2 solid 1px;
    border-bottom: #e2e2e2 solid 1px;
    text-align: center;
    list-style: none;
}
.sample_detail img { cursor: zoom-in; }
#baguetteBox-overlay .full-image img { background-color: white; }

.categoryid-5 li.sample_pic, .categoryid-21 li.sample_pic { 
    width: 100% !important;
    border-bottom: #e2e2e2 solid 1px !important; 
}
.categoryid-5 li:last-child.sample_pic,
.categoryid-21 li:last-child.sample_pic { border-bottom: none !important; }

.sample_detail ul li:last-child,
.sample_detail ul li:nth-child(3n) {
    border-right: none;
}
.sample_detail .video-container { 
    margin-left: auto; 
    margin-right: auto; 
    border-bottom: #e2e2e2 solid 1px;
}


.sample_pic span {
    display: block;
    margin: 0 auto;
}
.sample_pic img {
    margin: 1em 0 5em;
}
.sample_pic p {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    font-size: 0.65em;
    color: #999;
}
.sample_pic p button {
    display: block;
    margin: 0 auto;
    padding: 0.2em 2em;
    border-radius: 10px;
    background-color: antiquewhite;
}
.sample_pic p button:hover { background-color: #ff8116; color: #fff; }

a#added-icon {
    display: block;
    position: fixed;
    top: 3em;
    right: 3.5em;
    z-index: 100;
}
a#added-icon img {
    width: 60px;
    height: 60px;
    filter: drop-shadow(3px 3px 3px rgba(0,0,0,0.6));
}
a#added-icon img:hover { opacity: 0.8; }


/* ********* よくある質問 ********* */

.faq {
    border-bottom: #FCB637 solid 2px;
}
.faq:first-of-type { margin-top: 2em; }
.faq:nth-of-type(6) { margin-bottom: 3em; }

.faq h2 {
    text-align: left;
}
.faq h2 button {
    border: none;
    font-size: 0.9em;
    font-weight: bold;
    padding: 1em 0 1em 3em;
    background: url(images/faq-right.svg) no-repeat;
    background-size: 30px;
    background-position: left;
}
.faq h2 button:focus { outline:0; }
.toggle-arrow1 { background-image: url(images/faq-right.svg) !important; }
.toggle-arrow2 { background-image: url(images/faq-down.svg) !important; }

.faq dl:first-child { margin-top: 0; }
.faq dl:last-child { border-bottom: none;}

#faq-before, #faq-making, #faq-after, #faq-payment, #faq-character, #faq-copyright {
    display: none;
    padding-left: 3em;
}

/* ********* お見積もり・コンタクト ********* */

.contact_form {
    margin: 1em 0;
    font-size: 0.8em;
}
.contact_form td {
    text-align: left;
}
.contact_form td p {
    margin: 0.2em 0.2em 0.5em;
}
.contact_form td input.required {
    width: 93%;
    background-color: #FFDEDE;
}
.contact_form td textarea.required {
    background-color: #FFDEDE;
}

.wrap_b form thead th { background-color: #E9F5FF; }
.wrap_b form tbody th { background-color: #F3F9FF; }
.wrap_g form thead th { background-color: #EBFFED; }
.wrap_g form tbody th { background-color: #F5FFF6; }

 input.form-samll {
    margin-right: 0.5em;
    width: 30%;
}

#estimate-contact {
    background-color: #ff8116;
}
#contact_method {
    margin: 0;
    padding: 1em 0;
    border-top: #fff dotted 2px;
}
#contact_method li {
    margin: 0;
    list-style: none;
}
#contact_method h4 {
    margin: 0.5em 0 0;
    padding: 0;
    font-size: 1.2em;
    color: #fff;
}
#contact_method p {
    margin: 0;
    font-size: 0.8em;
    color: #fff;
}
#contact_method a {
    display: block;
    margin: 0.5em 0 1em;
    padding: 0.5em;
    border: #e2e2e2 solid 3px;
    border-radius: 10px;
    background-color: #fff;
    font-size: 1.2em;
    font-weight: bold;
    text-align: center;
}
#contact_method a:hover {
    border: #ff4d00 solid 3px;
}
#contact_method a small {
    display: block;
    font-size: 0.7em;
    font-weight: normal;
}

.added_wrapper {
    display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
    -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;
}
.added_sample {
    position: relative;
    flex-basis: 30%;
    margin-right: 10px; margin-bottom: 10px;
    padding: 10px;
    border: #ccc dotted thin;
    border-radius: 3px;
    background-color: #fff;
}
.added_sample button {
    position: absolute;
    top: 10px;
    right: 10px;
    display:block;
    border: none;
    background: url(images/delete.png) no-repeat;
    background-size: 25px 25px;
    width: 25px;
    height: 25px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    cursor: pointer;  
}
.added_sample button:hover { opacity: 0.7; }

input.contact_button {
    margin-bottom: 0.5em;
    border-radius: 5px;
    background-color: #0673FF;
    color: white;
    font-size: 0.9em
}
input.contact_button:hover {
    background-color: #ff4d00;
}

    
/* ********* ニュース・業績 ********* */

.single-news h2, .single-works h2, .single-news h3, .single-works h3 { margin: 1.5em 0 1em; padding: 0.2em 0; }
.single-news h2, .single-works h2 { border-bottom: #ff8116 solid 2px; background-color: #FFFBE5; }
.single-news h3, .single-works h3 { color: #ff8116; }
.single-news h6, .single-works h6 { font-size: 0.9em; }
.single-news .main ul, .single-works .main ul, .single-news .main ol, .single-works .main ol, 
.single-news .main dl, .single-works .main dl, .single-news .main table, .single-works .main table {
    margin: 1.5em 0 1em; font-size: 0.9em; 
}
.single-news p, .single-works p { margin: 1em 0; }

.single-works .main dl { 
    margin-bottom: 1.5em; 
    padding: 1em;
    border: #ff8116 solid 1px;
    width: 100%;
}

.single-news .main header { background: none; }
.single-news .sidebar h3 { 
    border-radius: 7px;
    background-color: #e2e2e2;
    text-align: center;
    font-size: 1em;
    color: initial;
}
.single-news h1.entry-title { margin: 1em 0 1em 0; }
.single-news .date-tags { color: #999; text-align: left; }
.single-news .pager-post-navi figure { display: none; }

.single-news .sidebar ul { margin: 0; padding: 0; font-size: 0.8em; }
.single-news .sidebar ul li { margin-left: 1.5em; }
.single-news .sidebar ul li small { display: block; color: #999; }

.single-works .work_pics { padding-left: 0; }
.single-works .work_pics li { list-style: none; }
.single-works .work_pics li img { display: block; margin: 1em auto; }
    

/* ********* (ニュース・業績・)お客様の声 ********* */

.single-news .content h4, .single-works .content h4, #review .content h4 {
    position: relative;
    font-size: 0.9em;
    margin: 2em 0 0.5em 2.5em;
    padding: 0;
}
.single-news .content h4::before, .single-works .content h4::before, #review .content h4::before {
    position: absolute;
    top: 0.2em;
    left: -2.5em;
    content: '';
    width: 0px;
    height: 0px;
    border: 15px solid;
    border-color: #ff8116 transparent transparent  transparent;
}
#client_profile {
    padding: 1.5em;
    border: #ff8116 solid 1px;
    font-size: 0.8em;
}
.single-news dl, .single-works dl, #client_profile dl { margin: 0 0 1em; float: left; }
.single-news dt, .single-works dt, #client_profile dt  { position: relative; margin-left: 1.5em; float: left; }
.single-news dt::before, .single-works dt::before, #client_profile dt::before {
    position: absolute;
    top: 0.6em;
    left: -1em;
    content: '';
    width:10px;
	height:10px;
	background:#ff8116;
}
.single-news dd, .single-works dd, #client_profile dd { margin-left: 100px; }

#client_profile img { float: right; margin-bottom: 1em; }
#client_profile p { margin-bottom: 0;  padding: 1em; background-color: #FFFBE5; clear: both; }

#client_interview dt { padding: 1em 2em; background-color: #e2e2e2; margin-bottom: 1em; }
#client_interview dt::before { background-color: #e2e2e2; }
#client_interview dd { margin-top: 0; padding: 1em 2em; }
#client_interview dd::after {
    background-image: url(images/avatar.png);
    height: 80px;
}
#client_interview p { color: #666; }

#client_comment { font-size: 0.9em; }
#review ul { margin: 0; padding: 0; }
#review ul li {
    margin: 0 1em 1em 0;
    width: calc((100% - 1em) /2);
    float: left;
    list-style: none;
}
#review ul li:nth-child(2n) {
    margin-right: 0;
}


/* ********* カテゴリー・アーカイブ ********* */

.list { margin-top: 1.5em; }
.list .entry-card-wrap { 
    width: calc((100% - 3em)/5); 
    margin-right: 0.5em !important; 
    border: 2px solid #e2e2e2;
    border-radius: 5px;
}
.list .entry-card-wrap:hover { border-color: #ff4d00; }
.list .entry-card-thumb img { vertical-align: bottom; height: 163px; }
.list .entry-card-content { display: none; }
.post-type-archive-news .entry-card-content { display: initial; }
.post-type-archive-news .entry-card-thumb { display: none; }
.post-type-archive-news .entry-card-wrap { width: 100% !important; }

.archive .bg_a{ margin-bottom: 0; }

.single-works .post-date, .single-reviews .post-date { display: none; }


/* ********* 固定ページ一般 ********* */
.pages {
    margin: 2em 0;
    font-size: 0.9em;
}
.pages dt { position: relative; margin-left: 1.5em; float: left; }
.pages dt::before {
    position: absolute;
    top: 0.6em;
    left: -1em;
    content: '';
    width:10px;
	height:10px;
	background:#333;
}
.pages dd { 
    margin-left: 20%;
    margin-bottom: 0.5em;
    padding-bottom: 0.5em;
    border-bottom: #e2e2e2 dotted 1px;
}
.pages h2, .pages h3 { margin: 1.5em 0 1em; padding: 0.2em 0; }
.pages h2, .pages h2 { border-bottom: #ff8116 solid 2px; background-color: #FFFBE5; }
.pages h3, .pages h3 { color: #ff8116; }
.pages h6, .pages h6 { font-size: 0.9em; }
.pages p {
    margin: 1.5em 0;
}
table.staff-info {
    font-size: 0.9em;
}
table.staff-info th {
    border-color: #fff;
    background-color: #FFE0BA;
    width: 15%;
    font-size: 0.9em;
}
table.staff-info td { border-color: #fff; }
table.staff-info tr:nth-child(1) td:nth-child(3) { background-color: #fff; width: 28%; }

#activities div { 
    padding: 1em 0;
    border-bottom: #e2e2e2 dotted 1px;
    overflow: hidden;
}
#activities div h4 { margin: 0 0 1em 0; padding: 0; }
#activities div img { padding-right: 1em; float: left; }


/* ********* フッター ********* */
#footer_sitemap {
    display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
    -webkit-justify-content: space-between; -ms-justify-content: space-between; justify-content: space-between;
    padding: 0 15%;
    font-size: 0.85em;
}
.sitemap { margin-top: 2em; }
.sitemap h4 { padding-bottom: 0.5em; border-bottom: #ff4d00 solid 1px; }
.sitemap ul { margin-top: 1em; padding: 0; }
.sitemap ul li { margin-bottom: 0.2em; list-style: none; font-size: 0.9em; }
.sitemap ul li a { color: #666; }
.sitemap ul li a:hover { color: #ff4d00; }

.search-no-results .common-contact { margin-top: 80px; }
.home .common-contact, .page-id-264 .common-contact { display: none; }

.zopim { right: 60px !important; }


/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1260px以上*/
@media screen and (min-width: 1260px){
    .single-news .main { width: 67%; }
    .single-news .sidebar { padding: 10px; width: 30%; }
}
/*1240px以下*/
@media screen and (max-width: 1240px){
  /*必要ならばここにコードを書く*/
}

/*1030px以下*/
@media screen and (max-width: 1030px){
    
    .common-size { 
        padding: 0 1em;
        width: 100%;
    }
    ul.sample-category li { width: 30%; }
    #footer_sitemap { padding: 0 10%; }
    
    .sample ul.category-list li img, .single ul.category-list li img { height: 13vw; }
    .list .entry-card-thumb img { height: 16vw; }
    
    #front-recent_sample h2 { padding-top: calc(3.3vw); width: calc(11vw); height: calc(11vw); font-size: 0.9em; }
    
}

/*1023px以下*/
@media screen and (max-width: 1023px){
    
    /*モバイルメニューボタン背景色*/
    .navi-menu-button {
    background-color: gold;
    margin-top: -1px !important;
    padding-top: 6px !important;
    }
    /*ここまで*/
    
    #main-copy, .side_banner { display: none; }
    
    .mobile-header-menu-buttons .logo-menu-button a.menu-button-in {
        text-indent:100%;
        white-space:nowrap;
        overflow:hidden;
        background: url(images/logo.png) no-repeat;
        background-size: 230px 40px;
        background-position: center 2px;
    }
    .mobile-menu-buttons { background: #ff8116; height: 50px; } 

    .mobile-header-menu-buttons li.menu-button { margin-top: 3px; }
    
    .header-container { display: none; }
    .home { background-position: left 50px; }
    .home h1 img { margin-top: 130px; }
    header #main_visual p#copy1 { top: 20px; }
    header #main_visual p#copy2 { top: 12em; }
    header #main_visual p#copy3 { top: 20em; }
   
}

/*834px以下*/
@media screen and (max-width: 834px){   

    .content { margin-top: 0; }
    main.main { padding-top: 0; padding-bottom: 0; }
    
    .home #main_visual h1 img.kc1 { margin: 30px -20px 0 20px; max-width: 48%; }
    .home #main_visual h1 img.kv { margin: 20px 0 0 -10px; max-width: 52%; }
    .home #main_visual h1 img.kc2 { margin: -80px 0 10px 20px; max-width: 48%; }

    .home #main_visual p { line-height: 1.4/*0.9*/; }
    
    header #main_visual dl {
        position: relative; bottom: initial; right: initial;
        margin: 0 -20px;
        border-radius: 0;
        width: initial;
        font-size: 1em;
        }
    header #main_visual dl dt, header #main_visual dl dd { margin-left: 80px; padding: 0; }
    header #main_visual dl dt::before { top: 1em; left: 1.5em; }

    #front-news { position: relative; margin: 0 -16px; padding: 0; min-height: 100px; }
    #front-news h2 {
        position: static;
        display: block;
        margin: 1em 1em 0;
        background-color: transparent;
        text-align: left;
        font-size: 1.1em
    }
    #front-news ul { margin: 0 100px 1em 2em; padding: 0; }
    #front-news ul li { line-height: 1.5; }
    #front-news .p_more { position: absolute; top: 0; right: 16px; }
    #front-news .p_more a {
        display: block;
        background: #ff8116 url(images/arrow_white.svg) no-repeat center;
        background-size: 20px;
        margin-right: -16px;
        width: 80px;
        min-height: 140px;/*min-height: 100px;*/
        color: #ff8116;
        white-space: nowrap;
        }

    #front-recent_sample h2 {
        margin: 0; padding: 0 1em 1em; border-radius: 0; background-color: transparent;
        width: initial; height: initial; float: none;
        color: #ff8116;
        font-size: 1.4em;
        }
    #front-service h3 { padding: 0.5em 0; }   
    #front-service ul#front-service_items {
        -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row;
        -webkit-justify-content: center; -ms-justify-content: center; justify-content: center;
    }
    #front-service ul#front-service_items li {
        width: calc((100% - 40px) / 4);
        margin: 0 0.5em 0.5em 0;
        }
    #front-service ul#front-service_items li:nth-child(4) { margin-right: 0; }
    #front-service ul#front-service_items li a span { left: 50%; transform:translateX(-50%); }
    .wrap-bg_o { padding: 1em; }
    .wrap_o, .wrap_b, .wrap_g { padding: 1em 1em 0.5em; }

    #front-service ul#front-service_contact li p::before {
        width: 120px;
        height: 80px;
        background-size: 120px 320px;
    }
    #front-service ul#front-service_contact li:nth-child(2) p::before { background-position: 0 -80px; }
    #front-service ul#front-service_contact li:nth-child(3) p::before { background-position: 0 -160px; }
    #front-service ul#front-service_contact li:nth-child(4) p::before { background-position: 0 -240px; } 

    #front-service_contact + p { line-height: 1.4; }

    #strength ul li h3 { margin-left: 1.5em; padding: 3em 0 1.5em; width: 50%;}
    p#client_logo { text-align: center !important; }
    p#client_logo::after {
        height: 80px;
        background-image: url(images/front/client-logos_m.png);
    }
    
    #front-characteristic small { text-align: left; }

    #items .wrap_o ul#item-character_plan li { width: calc((100% - 1em) / 2); }
    #items .wrap_o ul#item-character_plan li:nth-child(2n) { margin-right: 0; }
    #items .wrap_o ul#item-character_plan li h4 { margin: -1em 2em; }

    ul.cat-list li { margin-right: 0.5em; }
    .sample ul.category-list li { margin-right: 0.8em; }
    .single ul.category-list li { margin-right: 0.6em; }
    
    /*.sample ul.category-list li img, .single ul.category-list li img { height: 13vw; }*/

    table td { padding: 5px; font-size: 0.9em; }

    #footer_sitemap { padding: 0 4%; } 
    .footer-bottom { padding: 8px 8px 60px; }
    
    .menu-drawer > li {
        position: relative;
        padding-left: 15px;
        line-height: 2;
    }
    .menu-drawer > li a::before {
        position: absolute;
        top: 1em;
        left: 0;
        content: '';
        width: 0;
        height: 0;
        border: 7px solid;
        border-color: transparent transparent transparent #ff8116;
    }

    .posts-not-found { width: 80%; }
    .pc_br { display: none; }
    .sp_br { display: block; }
    
    a#added-icon { top: 3.5em; right: 1.5em }
    
    #activities div img { padding-bottom: 0.5em; float: none; }
    
    .zopim { margin-bottom: 3em !important; right: 10px !important; }
    
}


/*768px以下*/
@media screen and (max-width: 768px){   

    #front-faq dt, .faq dt { background-position: left 0px; background-size: 35px; min-height: 40px; }  
    #items ul.item-link li a::before { display: block; }

}

/*480px以下*/
@media screen and (max-width: 480px){

    .mobile-header-menu-buttons .logo-menu-button a.menu-button-in { background-size: 200px 35px; }

    .entry-title, .archive-title { margin: 0 0 .5em 0; }
    .breadcrumb { font-size: 12px; }
    
    .home #main_visual h1 img { float: none; }
    .home #main_visual h1 img.kc1 { margin: 0; max-width: 100%; }
    .home #main_visual h1 img.kv { margin: 0px auto; max-width: 90%; }
    .home #main_visual h1 img.kc2 { margin: 0 0 -20px 20px; max-width: 100%; }
    .home #main_visual p {
        margin: 0.5em 0 1em;
        text-align: center !important;
        clear: both;
        font-size: 18px;
        line-height: 1.4;
    }
    
    #front-news ul { margin-right: 50px; }
    #front-news .p_more a { width: 40px; min-height: 170px; }

    #front-recent_sample ul li {
        margin-bottom: 1em; width: calc((100% - 10px) / 3);
    }  
    
    #front-service #pr { margin: -1em 0 1.5em; }
    #front-service img.pr1, #front-service img.pr2 { max-width: 100%; float: none;}
    #front-service img.pr1 { margin: 5px 0 -20px 0; }
    #front-service img.pr2 { margin-left: 0; }
    
    #front-service ul#front-service_items li { width: calc((100% - 40px) / 2); }
    #front-service ul#front-service_items li:nth-child(2n) { margin-right: 0; }
    .home section > p { text-align: left; }
    #front-service ul#front-service_contact { -webkit-justify-content: space-around; -ms-justify-content: space-around; justify-content: space-around; }
    #front-service ul#front-service_contact li { width: calc((100% - 1em) / 2); }
    #front-service ul#front-service_contact li:nth-child(2n) { margin-left: 1em; padding-right: 0; border-right: none; }
    #front-service ul#front-service_contact li:nth-child(3),
    #front-service ul#front-service_contact li:nth-child(4) { margin-top: 1em; }
    #front-service ul#front-service_contact li p::before {
        width: 105px;
        height: 70px;
        background-size: 105px 280px;
    }
    #front-service ul#front-service_contact li:nth-child(2) p::before { background-position: 0 -70px; }
    #front-service ul#front-service_contact li:nth-child(3) p::before { background-position: 0 -140px; }
    #front-service ul#front-service_contact li:nth-child(4) p::before { background-position: 0 -210px; } 
    #front-service ul#front-service_contact li h4 { margin-bottom: 0.5em; }
    #front-service ul#front-service_contact li:nth-child(4) h4 { font-feature-settings: "palt"; }    
    #front-service ul#front-service_situation li { width: 100%; }
    #front-service ul#front-service_situation li { padding-right: 0; border-right: none; } 
    #front-service ul#front-service_situation li:last-child  { margin-top: 1.2em; padding-left: 0; } 
    #front-service .wrap-bg_o p strong { margin: 0 0 1em; padding: 0.8em; font-size: 0.8em; }
    #front-characteristic ul li { width: 100%; }
    #front-characteristic ul li:nth-child(odd) img, #front-characteristic ul li:nth-child(even) img { margin-bottom: -3em; }
    #front-characteristic ul li:nth-child(3) img { margin-bottom: -5em; }
    #front-service ul#front-service_contact li, #front-service ul#front-service_situation li { font-size: 15px; }
    #front-service ul#front-service_contact li p { font-size: 0.85em; }
    .widget-entry-cards.card-large-image .a-wrap { width: calc((100% - 20px) / 4); } 

    #front-service_contact + p { margin: 1em 0; }
    #front-reviews ul li::before { display: block; float: none; }
    #front-contact ul li, .common-contact ul li { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; width: calc((100% - 10px) / 3); }
    #front-contact ul li a, .common-contact ul li a { padding: 1em 0.5em; width: 100%; font-size: 14px; }
    #front-contact ul li a::after, .common-contact ul li a::after { width: 66px; height: 50px; background-size: 66px 150px; }
    #front-contact ul li:nth-child(2) a::after, .common-contact ul li:nth-child(2) a::after { background-position: 0 -50px; }
    #front-contact ul li:nth-child(3) a::after, .common-contact ul li:nth-child(3) a::after { background-position: 0 -100px; }

    .sample h5::after, .contact h5::after, #about h5::after, ul.speech_bubble-r::after, #estimate-contact h5::after, #quick_start_guide h5::after, #trial h5::after, .wrap_o h5::after, #client_interview dt::after, #client_interview dd::after {
        right: -75px; width: 60px; height: 41px; 
    }
    .sample h5, .contact h5, #about h5, ul.speech_bubble-r, #estimate-contact h5, #quick_start_guide h5, #trial h5, .wrap_o h5, #client_interview dt, #client_interview dd {
        margin: 2em 70px 2em 0;
        padding: 1em 1em;
    }
    #about p { margin: 0.5em; }
    .wrap_o h3, .wrap_b h3, .wrap_g h3 {
        position: relative;
        display: block;
        top: initial; left: initial;
        padding: 0 0 0 1.8em;
        background-position: 0;
        -webkit-transform: none;
        transform: none;
        text-align: left;
    }
    .wrap_o, .wrap_b, .wrap_g { padding: 0.8em 0.8em 0.5em; }
    .wrap_o > ul { -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
    #items .wrap_o > ul > li {padding: 0 0.8em 0 0; width: 47%; }
    #items .wrap_o > ul > li:nth-child(2n) { padding: 0 0 0 0.8em; border: none; }

    #items .wrap_o ul#item-character_plan li { margin: 1em 0; padding: 0 1em; width: 100%; }
    #strength ul li h3 {
        margin: 0;
        padding: 0 0 1.5em 4em;
        width: 100%;
        float: none;
        font-size: 16px;
    }
    #strength > ul > li > img { margin: 0 0 -2em 0; width: 100%; float: left; }
    #strength ul li ol li { margin: 1em 0 0; width: 100%; }
    #strength > ul > li#strength01 > img { margin-bottom: -2em; }
    #strength > ul > li#strength03 > h3 { padding-top: 0; width: 100%; }
    #strength > ul > li#strength03 > img { width: 100%; }
    #semi_ordermade .wrap_o img { width: 40%; }

    ul.works-items li, ul.works-reviews li { width: 98%; }
    #client_interview dd::after { left: -65px; right: initial; }
    #client_interview dd { margin: 2em 0 2em 65px; }
    #review ul li { width: 100%; float: none; }

    #quick_start_guide .flow-2 { display: block; }
    #start_guide-estimate ol li img { width: 40%; }
    .sutuation .flow-2, .sutuation p { width: 90%; }

    #trial-advantage ul li { width: 100%; margin-right: 0; }
    ul#trial_condition::before { display: none; }
    ul#trial_condition li { margin: 0.5em 0; padding-left: 2em; background-size: 30px; background-position: 0 5px; }
    .wrap_or_dotted-bg_y ul#trial_condition + p { margin: 1em 15px 0; }
    .wrap_or_dotted-bg_y ul#trial_condition + p + p { margin: 0 15px 1em; }
    #trial-order_cancel { display: block; }
    #trial-order_cancel .flow-2 { width: 100%; }
    #trial-order_cancel .flow-2 h3 { margin-top: 1em; }
    #trial-order, #trial-cancel { background-position: center 2em; }
    #trial ul.speech_bubble-r { margin-left: 70px; }
    #trial ul.speech_bubble-r::after {
        left: -60px;
        right: initial;
        width: 50px;
        height: 50px;
        background-size: 50px 50px;
    }
    ul.speech_bubble-r { margin: 1em 15px 1em 0; padding: 0.5em 0.5em 0.5em 1.5em; }

    ul.sample-category li, ul.cat-list li { margin-bottom: 0.3em; width: 47%; }
    ul.sample-category li, ul.cat-list li, ul.sample-category li:nth-child(3n) { margin-right: 0.3em; }
    ul.sample-category li:nth-child(2n), ul.cat-list li:nth-child(2n) { margin-right: 0; }
    .sample h2.category-name, .single h2.category-name { padding: 0.2em 0; }
    .sample h2.category-name button, .single h2.category-name button { background-position: 0.3em 0.1em; }
    .sample ul.category-list li { margin-right: 0.3em; width: 23%; }
    .single ul.category-list li { margin-right: 0.3em; width: 22%; }
    .sample ul.category-list li img, .single ul.category-list li img { height: 20vw; }
    .list .entry-card-thumb img { height: 22vw; }
    
    .bg_a p { margin-top: 1em; }
    .sample h2.category-name button, .single h2.category-name button { background-size: 18px; }
    
    .wrap_o table th, .wrap_o table td,
    .contact table tbody th, .contact table tbody td {     
        display: block;
        border-bottom: none;
        width: 100% !important;
    }
    #items .price-pic td:nth-child(2), #items .price-pic td:nth-child(3), #items .price-pic td:nth-child(4) { width: 100% !important; }
    .price-pic th, .price-pic td { width: 100% !important; }
    .wrap_o table td:nth-child(2), .price-pic td:nth-child(3) { border-bottom: 1px dotted #ddd; }
    .wrap_o table td:nth-child(3), .price-pic td:nth-child(4) { border-top: none; }
    .wrap_o table tbody, .contact table tbody { border-bottom: 1px solid #ddd; }
    .contact table thead th { border-bottom: none; }
    .contact th, .contact td { font-size: 0.9em; }

    #front-order_flow #order_flow-wrap, #trial-flow #order_flow-wrap { display: block; }
    #front-order_flow #order_flow-wrap div, #trial-flow #order_flow-wrap div { width: 100%; }
    #front-order_flow #order_flow-wrap div::before {
        position: relative;
        display: block;
    }
    #front-order_flow #order_flow-wrap div:nth-child(2)::before { width: initial; margin-left: 0; padding: 0.3em 1em; }
    #front-order_flow #order_flow-wrap div h6,
    #trial-flow #order_flow-wrap div h6 { margin-top: 0.5em; background-image: none; }
    #front-order_flow #order_flow-wrap div:nth-child(1) h6,
    #trial-flow #order_flow-wrap div:nth-child(1) h6,
    #trial-flow #order_flow-wrap div:nth-child(2) h6,
    #trial-flow #order_flow-wrap div:nth-child(3) h6,
    #trial-flow #order_flow-wrap div:nth-child(4) h6 { margin-right: 0; background-color: #CFEFFF; }
    #front-order_flow #order_flow-wrap div:nth-child(2) h6,
    #front-order_flow #order_flow-wrap div:nth-child(3) h6,
    #front-order_flow #order_flow-wrap div:nth-child(4) h6,
    #front-order_flow #order_flow-wrap div:nth-child(5) h6,
    #trial-flow #order_flow-wrap div:nth-child(5) h6 { margin-right: 0; background-color: #FFEDCC; }

    #front-order_flow #order_flow-wrap div p,
    #trial-flow #order_flow-wrap div p { font-size: 0.9em; }
    
    #quick_start_guide .wrap_o-bg_y, #quick_start_guide .wrap_a-bg_y, 
    #quick_start_guide .wrap_m-bg_y{ margin-left: 0.7em; margin-right: 0; }
    #start_guide-estimate ol li h4, #start_guide-estimate ol li p { margin: 1em; }

    #quick_start_guide .wrap_o table thead, #quick_start_guide .wrap_o table tbody tr { border-bottom: 1px solid #ddd; }
    #quick_start_guide .wrap_o table tbody th:nth-child(1), #quick_start_guide .wrap_o table tbody th:nth-child(2),
    #quick_start_guide .wrap_o table tbody th:nth-child(3), #quick_start_guide .wrap_o table tbody th:nth-child(4),
    #quick_start_guide .wrap_o table tbody tr:nth-child(3) td:nth-child(4),
    #quick_start_guide .wrap_o table tbody tr:nth-child(4) td:nth-child(4) { display: none; }
    #quick_start_guide .wrap_o table tbody td { 
        position: relative; padding-left: 90px; border-top: none; border-bottom: 1px dotted #ddd; 
    }
    #quick_start_guide .wrap_o table tbody td:last-child,
    #quick_start_guide .wrap_o table tbody tr:nth-child(3) td:nth-child(3),
    #quick_start_guide .wrap_o table tbody tr:nth-child(4) td:nth-child(3) { border-bottom: none; }
    #quick_start_guide .wrap_o table tbody td::before {
        position: absolute;
        content: attr(data-text)"";
        left: 10px;
    }


    .contact_form td input.required { width: 85%; }
    .contact_form td input { font-size: 1em; }

    .pages dd { margin-left: 40%; }
        
    .list .entry-card-wrap { width: calc((100% - 3em)/3); }
    .main .common-size { padding: 0; }
    #footer_sitemap { display: none; }

    .article h2 { font-size: 16px; }

    .menu-drawer > li a::before { top: 0.4em; }
    .menu-drawer a { padding: 0; font-size: 14px;}
    .sub-menu { margin-top: 0; padding-left: 0 !important; }
    .sub-menu li { line-height: 2.5; }
    
    .p_more { font-size: 0.85em; text-align: center !important; }
    a.link_btn { margin: 1em auto; padding: 0 1em; width: 100%; }
    
    a#added-icon { top: 3.5em; right: 1em; }
    a#added-icon img { width: 50px; height: 50px; }
    
    .added_sample { flex-basis: 100%; margin-right: 0; }
    .home .article h3 { font-size: 22px; line-height: 1.4; }
    
}

/*320px以下*/
@media screen and (max-width: 320px){
    
    header #main_visual p#copy1 { top: 30px; font-size: 0.7em; }
    #front-contact ul li a, .common-contact ul li a { padding: 1em 0.3em; font-size: 13px; }
    #front-service ul#front-service_items li a span { font-size: 0.9em; }
    .list .entry-card-wrap { width: calc((100% - 3em)/3) !important; }
    ul.sample-category li a, ul.cat-list li a { font-size: 0.9em } 
}

/*電話　768px以上*/
@media(min-width: 768px){
  a[href^="tel:"]{
    pointer-events: none;
  }
}

/*メールアイコンのアニメーション*/
.shake_div {
    animation: anim_sc 0.5s;
    color:#FFF;
}

@keyframes anim_sc {    
    0% {
        transform: scale(1.0,1.0);
    }
    6% {
        transform: scale(1.1,1.1);
    }
    16% {
        transform: scale(1.2,1.2);
    }
    27% {
        transform: scale(1.1,1.1);
    }
    39% {
        transform: scale(1.0,1.0);
    }
    52% {
        transform: scale(0.9,0.9);
    }
    66% {
        transform: scale(0.8,0.8);
    }
    81% {
        transform: scale(0.9,0.9);
    }
    100% {
        transform: scale(1.0,1.0);
    }
}
