/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Mar 27 2025 | 03:12:37 */
/* ここにCSSコードを追加

例:
.example {
    color: red;
}

CSS の知識に磨きをかけるためにご覧ください。
http://www.w3schools.com/css/css_syntax.asp

コメント終わり */

/* 追記 */

/* -----------------------------------------------------
　　　　　　　　　　　　　リセット
----------------------------------------------------- */
div.wp-site-blocks {
    padding-left: 0;
    padding-right: 0;
}

div.wp-block-column,
/* カラム（列）を表すブロック */
div.wp-block-columns,
/* 複数のwp-block-columnをまとめるコンテナ */
div.is-layout-flex,
/* Flexboxレイアウトを適用するためのクラス */
div.is-layout-constrained,
div.is-layout-flow,
.wp-block-list {
    /* コンテンツの幅を制限するためのクラス */
    margin: 0;
    padding: 0;
    gap: 0;
}

div.wp-block-column figure,
div.wp-block-columns figure,
div.is-layout-flex figure,
div.is-layout-constrained figure,
div.is-layout-flow figure {
    margin: 0;
    padding: 0;
}

* {
    box-sizing: border-box;
    text-decoration: none !important;
    list-style: none;
    letter-spacing: 0.07em;
    font-family: "Inter", "Hiragino Sans", "ヒラギノ角ゴ ProN", "游ゴシック", "メイリオ", "MS Pゴシック", sans-serif !important;
	
}

li {
    list-style: none;
}

.wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open {
    margin-right: 10px;
}

html {
    scroll-behavior: smooth;
    scroll-padding: 70px;
}

header {
	margin:0 !important;
    display: flex;
    align-items: center;
    position: sticky;
    top: 0;
    background-color: #FFF;
    z-index: 10000;
    opacity: 0.99;
    background: rgba(255, 255, 255, 0.80);
}

header .is-style-fill img {
    width: 30px;
    margin-bottom: 3px;
}

header .nav {
    margin: 0 0 0 auto;
}

div.wp-block-column figure, div.wp-block-columns figure, div.is-layout-flex figure, div.is-layout-constrained figure, div.is-layout-flow figure {
    margin: 0;
    padding: 0;
    font-size: 18px;
}

.wp-block-navigation__responsive-container-close svg, .wp-block-navigation__responsive-container-open svg {
    fill: currentColor;
    display: block;
    height: 35px;
    pointer-events: none;
    width: 35px;
    color: #00AADE;
}

.wp-block-navigation .wp-block-navigation-item__label{
	    font-size: 17px;
}

.wp-block-navigation__container:only-child, .wp-block-page-list:only-child {
    flex-grow: 1;
    margin: 0 20px;
}

.wp-block-navigation ul, .wp-block-navigation ul li {
    list-style: none;
    padding: 0;
}

heder .wp-block-navigation-item__content {
    border-bottom: 1px solid #00AADE ;
}

.wp-block-site-logo{
	margin-left:20px !important;
}

.simple{
	padding:20px 0;
}

main{
	margin:0 !important;
}

/* title */

#case h2,
#service h2,
#flow h2,
#question h2 {
    width: fit-content;
    margin: 80px auto;
    text-align: center;
    font-size: 6.4vw;
    font-weight: 400;
    position: relative;
}

#case h2::before,
#service h2::before,
#flow h2::before,
#question h2::before {
    color: #00AADE;
    font-size: 2.8vw;
    font-weight: 400;
    position: absolute;
    bottom: -25px;
    left: 0;
    right: 0;
}

#case h2::before {
    content: "CASE";
}

#service h2::before {
    content: "SERVICE";
}

#flow h2::before {
    content: "FLOW";
}

#question h2::before {
    content: "QUESTION";
}

#case h2::after,
#service h2::after,
#flow h2::after,
#question h2::after {
    content: "";
    width: 85%;
    height: 3px;
    margin: auto;
    background: #00AADE;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}

/* /title */

#FV {
    padding: 0;
    padding-bottom: 19px;
    margin-top: 0;
    background: linear-gradient(180deg, #29CDFF 14%, #1FC0F2 20.63%, #1BBAEB 23.94%, #16B4E4 27.25%, #029BCA 40.5%);
}

#FV h1 span {
    display: none;
}

#FV .top {
    width: 100%;
}

#FV .fv_image{
	background-image: url(https://rakumeka.com/wp-content/uploads/2025/01/049035002dccb2fe506cc3088e129e48.jpg);
    background-position: right 0px;
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;
    height: 220px;
    margin: auto;
}

#FV .top img {
    aspect-ratio: 1;
    object-fit: cover;
}

#FV .text {
    width: fit-content;
    margin: 32px auto 19px auto !important;
    padding: 25px;
    background: rgba(255, 255, 255, 0.95);
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
    position: relative;
}

#FV .comment {
    width: fit-content;
    padding: 11px 24px;
    background: #EDCB41;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
    font-size: 4vw;
    font-weight: 400;
    position: absolute;
    top: -25px;
    left: 0;
    right: 0;
}

#FV .title {
    display: flex;
    margin: 7px auto 5px;
}

#FV .title .logo {
    margin: 0 10px 0 0 !important;
}

#FV h1 {
    width: fit-content;
    margin: 0 !important;
    align-content: center;
    padding: 10px 7px;
    font-size: 4.6vw;
    border-bottom: 3px solid #05A7EB;
	font-weight:500;
}

#FV .logo img {
    display: block;
    width: 67vw;
    margin: auto;
}

#FV .tag {
    display: flex;
    width: fit-content;
    margin: auto;
}

#FV .tag p {
    display: flex;
    width: fit-content;
    margin: 27px 3px 0px !important;
    padding: 12px 24px;
    border-radius: 100px;
    border: 1px solid #00C4FF;
    background: #FFF;
    font-size: 3.7vw;
}

#FV a {
    display: none;
}

#FV li {
    width: 100%;
    display: flex;
    align-items: center;
    padding: 16px 5px 10px;
    margin: auto;
    border-bottom: 3px dotted #0082AA;
    font-size: 11px !important;
}

#FV li figure {
    width: 20px;
    height: 10px;
    margin-right: 10px;
    margin-bottom: 20px;
    font-size: 15px;
}

#FV li p {
    font-size: 3.7vw;
	margin:5px;
}

#customer h3 {
    width: fit-content;
    margin: 50px 20px;
    text-align: center;
    font-size: 5.1VW;
    position: relative;
}

#customer h3::before,
#customer h3::after {
    content: "";
    width: 30px;
    height: 1px;
    background: #000;
    position: absolute;
    top: 50%;
}

#customer h3::before {
    left: -50px;
}

#customer h3::after {
    right: -50px;
}

#customer figure {
    width: 100px;
    height: 90px;
    position: relative;
}

.slick-slide img {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
	width: 100%;align-content
}

#customer ul {
    display: flex;
}

#assignment {
    background: #D6D6D6;
    padding: 0 !important;
}

#assignment .list {
    width: 95%;
    margin-top: 40px;
    background: rgba(255, 255, 255, 0.79);
    position: relative;
}

#assignment .image1 {
    position: absolute;
    bottom: -3%;
    left: -3%;
}

#assignment .image2 {
    position: absolute;
    bottom: -3%;
    right: -3%;
}

#assignment h3 {
    margin-bottom: 30px;
    text-align: center;
    font-size: 4vw;
    letter-spacing: 0.9px;
}

#assignment h3 strong {
    font-size: 4.5vw;
    font-weight: 700;
    line-height: 70px;
    letter-spacing: 1.15px;
}

#assignment h3 strong:nth-child(1),
#assignment h3 strong:nth-child(2) {
    width: fit-content;
    padding: 5px;
    border-bottom: 3px #00AADE dotted;
}

#assignment h3 .border {
    width: fit-content;
    padding: 10px;
    margin: 10px;
    border: 1px solid #000;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.50);
    position: relative;
}

#assignment h3 .border::after {
    content: "";
    width: 100%;
    height: 5px;
    border-radius: 8px;
    background-color: #FF3939;
    transform: rotate(-2.169deg);
    position: absolute;
    bottom: 13%;
    left: 0;
    right: 0;
}

#assignment h3 strong:nth-child(3)::after {
    width: 23vw;
    height: 0px;
    transform: rotate(-1.169deg);
    stroke-width: 5px;
    stroke: #FF3939;
}

#assignment ul {
    width: 95%;
    margin-left: 10%;
}

#assignment ul li {
    margin-bottom: 22px;
    margin-left: 6%;
    position: relative;
    width: 100%;
    font-size: 3.5vw;
}

#assignment ul li:before {
    content: "×";
    color: #FF3939;
    font-size: 20px;
    font-weight: 700;
    position: absolute;
    left: -10%;
}

#assignment .list_back::after {
    content: "";
    width: 100%;
    height: 151px;
    aspect-ratio: 2;
    clip-path: polygon(50% 50%, 100% 0, 0 0);
    background: #d6d6d6;
    position: absolute;
    bottom: -149px;
    left: 0;
    right: 0;
    z-index: 10;
}

#assignment p {
    padding-top: 44px;
    padding-bottom: 44px;
    background: #00AADE;
    color: #FFF;
    text-align: center;
    font-size: 5vw;
    font-weight: 400;
    line-height: 50px;
}

#assignment p strong {
    font-size: 7.1vw;
    font-weight: 600;
}

#case li {
    width: 360px;
    margin: auto;
    border: 1px solid rgba(0, 0, 0, 0.57);
    box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, 0.25);
    padding: 14px;
}

#case li h5 {
    font-size: 16px;
}

#case ul li .blue {
    width: 100px;
    padding: 5px 0;
    margin-top: 0;
    margin-right: 15px;
    text-align: center;
    background-color: #014357;
    color: #FFF;
}

#case li p {
    font-size: 15px;
}

#case li strong {
    border-bottom: 6px solid rgba(255, 0, 0, 0.30);
    font-size: 15px;
}

#case ul li p:nth-child(1),
#case ul li p:nth-child(2),
#case ul li p:nth-child(3) {
    padding-top: 5px;
    margin-top: 0;
}

#case ul li .aqua {
    width: 63px;
    height: 63px;
    padding: 20px 15px;
    margin-right: 10px;
    border-radius: 100px;
    color: #000;
    background-color: #C9F8FE;
    font-size: 15px;
}

#case ul li .gray {
    padding: 5px 0;
    margin: 0;
    border-radius: 10px 10px 0px 0px;
    background-color: #E0E0E0;
    text-align: center;
}

#case ul li .sky {
    padding: 5px 0;
    margin: 0;
    border-radius: 10px 10px 0px 0px;
    background-color: #00AADE;
    color: #FFF;
    text-align: center;
}

#case ul li .before p {
    padding: 10px;
    margin: 0;
    border-radius: 0 0 10px 10px;
    border: 3px solid #E0E0E0;
    margin-bottom: 5px;
}

#case li .before {
    margin-bottom: 10px;
    position: relative;
}

#case li .before::after {
    content: "";
    width: 10%;
    height: 30px;
    aspect-ratio: 2;
    margin: auto;
    clip-path: polygon(50% 50%, 100% 0, 0 0);
    background: #d6d6d6;
    position: absolute;
    bottom: -30px;
    left: 0;
    right: 0;
    z-index: 100;
}

#case ul li .after p {
    padding: 10px;
    margin-top: 0;
    border-radius: 0 0 10px 10px;
    border: 3px solid #00AADE;
    background: #E8FCFF;
    line-height: 1.8em;
}

#case .content:nth-child(1) {
    padding: 10px 5px;
    background: #F9F9F9;
}

#case .content:nth-child(2) {
    padding: 20px 0;
}

#case .content:nth-child(1) .flex:nth-child(3) h5 {
    margin-bottom: 0;
}

#case .content:nth-child(2) h5 {
    margin: 0;
}

#case .content:nth-child(1) .flex {
    display: flex;
    align-items: flex-start;
}

#case .content:nth-child(2) .flex {
    display: flex;
    align-items: center;
}

#case .else {
    width: 100%;
    margin-top: 80px;
    background: #00AADE;
}

#case .else .list {
    width: 90%;
    margin: 50px auto;
    background: rgba(255, 255, 255, 0.85);
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 20px;
    padding-bottom: 20px;
}

#case .else .list p {
    font-size: 4.8vw;
    font-weight: 400;
    line-height: 2em;
    margin-bottom: 5px;
}

#case .else .list p strong {
    font-size: 5.5vw;
    font-weight: 600;
    position: relative;
}

#case .list p strong::before {
    content: "・・";
    color: #FF3939;
    font-size: 5.5vw;
    display: block;
    position: absolute;
    top: -1.2em ;
	left: 0;
    right: 0;
}

#case .else .jobs {
    display: flex;
    flex-wrap: wrap;
}

#case .else .jobs .job:nth-child(3) {
    margin: auto 23% !important;
}

#case .else .jobs .job:nth-child(4) {
    margin-right: 6px !important;
}

#case .else .jobs .job:nth-child(5) {
    margin-left: 6px !important;
}

#case .else .list .job {
    width: fit-content;
    padding: 1px 10px;
    border-radius: 100px;
    border: 2px solid #029BC9;
    background: #FFF;
    box-shadow: 2px 4px 4px 0px rgba(0, 0, 0, 0.25);
    font-size: 4.2vw;
    margin: 15px 2px;
}

#case .else .list .job::before {
    content: "#";
    color: #41B3D6;
    font-size: 5vw;
}

#case .else .jobs .job:nth-child(3),
#case .else .jobs .job:nth-child(4),
#case .else .jobs .job:nth-child(5) {
    font-size: 3.6vw;
}

#case .else .list .job:nth-child(3)::before,
#case .else .list .job:nth-child(4)::before,
#case .else .list .job:nth-child(5)::before {
    font-size: 4.1vw;
}

#service svg {
    width: 95%;
}

#service h3 {
    font-size: 5.89vw;
    padding-left: 10px;
}

#service h3 svg {
    margin-left: -15px;
}

#service h3 strong {
    font-size: 7.17vw;
    position: relative;
}

#service h3 ::before {
    content: "";
    width: 10.25vw;
    height: 10.25vw;
    background: #C9F8FE;
    position: absolute;
    top: -40%;
    left: -2%;
    z-index: -100;
}

#service .item:nth-child(2) h3 ::after {
    content: "About the service";
}

#service .item:nth-child(3) h3 ::after {
    content: "Reason for choosing";
}

#service .item:nth-child(4) h3 ::after {
    content: "What We can do";
}

#service h3 strong::after {
    width: 150%;
    color: rgb(66 66 66 / 15%);
    font-size: 5.12vw;
    position: absolute;
    top: -40%;
    left: 40%;
    z-index: -100;
}

#service .item:nth-child(2) .image {
    width: fit-content;
    margin: 60px auto 20px;
}

#service .item:nth-child(2) .content:nth-child(2) img {
    width: 250px;
}

#service .item:nth-child(2) p {
    text-align: center;
    font-size: 16px;
}

#service .item:nth-child(2) .content:nth-child(1) .text,
#service .item:nth-child(2) .content:nth-child(2) .text {
    width: 93%;
    padding: 54px 20px 37px;
    margin-bottom: 80px;
    border: 1px solid #BFBFBF;
    background: #FFF;
    box-shadow: -2px 4px 4px 0px rgba(0, 0, 0, 0.25);
}

#service .item:nth-child(2) .content h4 {
    font-size: 4.2vw;
    line-height: 1.8em;
    text-align: left !important;
}

#service .item:nth-child(2) .content .text svg {
    margin-top: 10px;
}

#service .item:nth-child(2) .content .text p {
    text-align: left;
    font-size: 16px;
}

#service .item:nth-child(2) .content h4 strong {
    font-size: 5vw;
    position: relative;
}

#service .item:nth-child(2) h4 strong::before {
    color: #F00;
    font-size: 5vw;
    position: absolute;
    top: -1.2em;
    left: 0;
    right: 0;
}

#service .item:nth-child(2) h4 .strong01::before {
    content: "・・・・・・・・";
}

#service .item:nth-child(2) h4 .strong02::before {
    content: "・・・";
}

#service .item:nth-child(2) h4 .strong03::before {
    content: "・・";
}

#service .item:nth-child(2) .no_copy {
    display: flex;
    align-items: center;
    width: 90%;
    padding: 20px 11px;
    margin-bottom: 115px;
    border: 1px solid #BFBFBF;
    background: #FFF;
}

#service .item:nth-child(2) .no_copy figure {
    width: 45%;
    margin: auto 15px !important;
}

#service .item:nth-child(2) .no_copy img {
    display: block;
    width: 80px;
    margin: auto;
}


#service .item:nth-child(2) .no_copy p {
    font-size: 9px;
    text-align: left;
    margin-top: 0;
}

#service .item:nth-child(2) .no_copy a {
    text-decoration: none;
    text-align: left;
    font-size: 10px;
}

#service .item:nth-child(2) {
    position: relative;
}

#service .item:nth-child(2) .content {
    margin-bottom: 60px;
}

#service .item .decoration_img {
    width: 90%;
    position: absolute;
    bottom: -40px;
    right: 0;
    z-index: -10;
}

#service .item:nth-child(2) h4 svg {
    position: static !important;
}

#service .item:nth-child(3) p {
    font-size: 16px;
}

#service .item:nth-child(3) .content {
    width: 85%;
    margin-bottom: 30px;
    padding: 30px 25px;
    background: #FFF;
    position: relative;
}

#service .item:nth-child(3) .content:nth-child(3) {
    margin-bottom: 130px;
}

#service .triangle {
    width: 30%;
    aspect-ratio: 1;
    clip-path: polygon(0 0, 100% 0, 0 100%);
    background: #014357;
    position: absolute;
    top: 0;
    left: 0;
}

#service .item:nth-child(3) .content h4 {
    text-align: center;
    font-size: 4.9vw;
	font-weight: 600;
}

#service .item:nth-child(3) {
    position: relative;
}

#service .item:nth-child(3) .content::before {
    white-space: pre;
    color: #FFF;
    font-size: 3.8vw;
    position: absolute;
    top: 6px;
    left: 10px;
    z-index: 200;
}

#service .item:nth-child(3) .content:nth-child(1)::before {
    content: "Point \A 01";
}

#service .item:nth-child(3) .content:nth-child(2)::before {
    content: "Point \A 02";
}

#service .item:nth-child(3) .content:nth-child(3)::before {
    content: "Point \A 03";
}

#service .item:nth-child(4) .list {
    width: 85%;
    padding: 30px 20px;
    border: 1px solid #BDBDBD;
    background: #FFF;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}

#service .item:nth-child(4) .list h4 {
    padding: 16px;
    font-size: 4.3vw;
    color: #fff;
    text-align: center;
    border-radius: 10px;
    background: #014357;
	font-weight:600;
}

#service .item:nth-child(4) .list h4 br {
    display: none;
}

#service .item:nth-child(4) li {
    font-size: 16px;
}

#service .item:nth-child(4) {
    position: relative;
}

#service .item:nth-child(4) .list .category:nth-child(1),
#service .item:nth-child(4) .list .category:nth-child(2) {
    border-bottom: 1px dotted #D6D6D6;
    margin-bottom: 20px;
}

#service .item:nth-child(4) .list .category ul {
    padding: 30px 10px;
}

#flow {
    background: rgba(201, 248, 254, 0.50);
}

#flow ol {
    width: 90%;
    margin: auto;
}

#flow li {
    width: 100%;
    padding: 30px;
    background: #FFF;
    margin-bottom: 15px;
    position: relative;
}

#flow li figure {
    width: fit-content;
    margin: auto;

}

#flow li h4 {
    padding-left: 15px;
    padding-bottom: 30px;
    text-align: center;
    font-size: 4.35vw;
    border-bottom: 1px dotted #029BCA;
    position: relative;
	font-weight: 600;
}

#flow li h4::before {
    white-space: pre;
    color: #029BC9;
    font-size: 15px;
    font-weight: 600;
    position: absolute;
    top: -15%;
    left: 3%;
}

#flow li:nth-child(1) h4::before {
    content: "STEP \A 1";
}

#flow li:nth-child(2) h4::before {
    content: "STEP \A 2";
}

#flow li:nth-child(3) h4::before {
    content: "STEP \A 3";
}

#flow li:nth-child(4) h4::before {
    content: "STEP \A 4";
}

#flow li h4 br {
    display: none;
}

#flow li p {
    font-size: 16px;
}

#flow ol li::after {
    content: "";
    width: 20%;
    height: 50px;
    aspect-ratio: 2;
    margin: auto;
    clip-path: polygon(50% 50%, 100% 0, 0 0);
    background: #d6d6d6;
    position: absolute;
    bottom: -50px;
    left: 0;
    right: 0;
    z-index: 100;
}

#flow li:nth-child(4)::after {
    display: none;
}

#question .content {
    width: 85%;
    margin-bottom: 15px;
}

#question .content h5 {
    padding: 20px 20px 20px 50px;
    background: rgba(227, 251, 254, 0.38);
    position: relative;
    font-size: 16px;
}

#question .content h5::before {
    content: "Q";
    color: #8F8F8F;
    font-size: 21px;
    font-weight: 700;
    position: absolute;
    top: 14px;
    left: 18px;
}

#question .content p {
    margin-top: 0;
    padding: 20px 20px 20px 50px;
    background: rgba(252, 252, 252, 0.38);
    box-shadow: 0px 1px 4px 0px rgba(0, 0, 0, 0.10);
    font-size: 16px;
    position: relative;
}

#question .content p::before {
    content: "A";
    color: #029BCA;
    font-size: 21px;
    font-weight: 700;
    position: absolute;
    top: 18px;
    left: 21px;
}

footer {
    border: 1px solid #F5F5F5;
    background: rgba(0, 167, 234, 0.42);
	margin-top:60px;
}

footer .information {
    width: 80%;
    margin: auto;
}

footer .information h6 {
    width: 30%;
    margin-right: 20px;
    text-align: right;
    font-size: 15px;
}

footer .information p {
    width: 85%;
    font-size: 14px;
}

footer .information .info:first-child {
    margin-bottom: 10px;
}

footer .nav {
    margin: 30px auto;
}

footer .nav p {
    font-size: 15px;
}

/* contact,support,privacypolicy */

form,
.support .content,
.privacypolicy  .content{
    width: 90%;
    margin: auto;
	max-width:700px;
}
label{
	font-weight:600;
}

.wpcf7-list-item label{
	font-weight:500;
	font-size:4.1vw;
	display:flex;
	align-items: flex-end;
	margin: 20px auto 20px 0;
}

.wpcf7-submit{
	width: fit-content;
    height: fit-content;
    color: #FFF;
    background: #FF4902;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
    border-radius: 3px;
    padding: 15px 30px;
	margin-top:40px;
    margin-left: 72px;
	font-weight: 700;
}

form p:last-of-type{
	width:fit-content;
	margin:auto;
}

.wpcf7-form label::before{
	content:"|";
	font-weight:1000;
	color:#00AADE;
}

.wpcf7-list-item label::before{
	display:none;
}

.wpcf7-not-valid-tip{
	color: #dc3232;
    font-size: 1em;
    font-weight: 700;
    display: block;
    background-color: #ffffab;
    padding: 10px;
    margin-top: 10px;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
    border-color: red;
    background-color: #ffffab;
	    color: red;
    font-weight: 700;
	padding:15px;
}

form .Required .title::after {
    content: "必須";
    color: #FFF;
    background-color: red;
    width: fit-content;
    border-radius: 5px;
    font-size: 3.5vw;
    padding: 3px 5px;
	margin-left: 10px;
}

input,
select,
textarea {
    border: 1px #c6c6c6 solid;
    border-radius: 3px;
    margin-top: 10px;
    width: 100%;
	padding:10px;
}

.wpcf7-list-item input{
	width:19px;
	aspect-ratio: 1;
	margin-right:10px;
}

.wpcf7-list-item{
	display:block;
	margin:0;
}

form .submit::before{
	display:none;
}

.contact h2,
.privacypolicy h2,
.support h2 {
    font-size: 6.8vw;
    font-weight: 600;
	margin-bottom:50px;
    padding: 20px 0 40px 20px;
    border-bottom: 3px solid #00AADE;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}

.privacypolicy p,
.support p {
    width: 85%;
    margin: 50px auto;
}

.contact p,{
	width: 95%;
	margin:20px auto;
}

.wpcf7 form.sent .wpcf7-response-output {
    border-color: #46b450;
    padding: 20px;
    background-color: #e3ffe6;
	margin-top: 50px;
}

.explanation{
	text-align:center;
	margin-bottom: 40px;
}

.support h3{
	font-size: 5.5vw;
    background-color: #e3f6f6;
    width: 100%;
    padding: 13px;
	margin-bottom:15px;
    border-radius: 5px;
}

.privacypolicy h3{
	font-size:5.6vw;
	margin-bottom:15px;
}

}

@media screen and (min-width: 600px) {
	
	.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content{
		width: fit-content;
        margin: auto 0 auto auto;
	}
	
	.wp-block-navigation .wp-block-navigation-item__label {
    font-size: 14px;
    padding-left: 0px;
}
	
	.wp-block-navigation__container:only-child, .wp-block-page-list:only-child {
    margin: 0px 20px;
}
	
	header .is-style-fill figure{
		line-height:1;
	}
	
	.wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content {
    font-size: 18px;
}
	
	.wp-block-navigation .wp-block-navigation-item__content {
    display: contents !important;
}
	
	.wp-block-navigation ul, .wp-block-navigation ul li{
		margin-bottom:0;
	}
	
}
@media screen and (min-width: 700px) {
    .is-layout-constrained> :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
        max-width: 100%;
    }
	
	.wp-block-image img{
		vertical-align: middle;
	}

    #case h2,
    #service h2,
    #flow h2,
    #question h2 {
        font-size: 30px;
        margin: 110px auto;
    }

    #case h2::before,
    #service h2::before,
    #flow h2::before,
    #question h2::before {
        font-size: 16px;
    }

    p {
        font-size: 18px;
    }

	#FV .text{
		width:90%;
		margin-top:40px !important;
	}
	
    #FV .comment,
    #FV h1,
    #FV .tag p {
        font-size: 20px;
    }

    #FV .title {
        margin-top: 35px;
    }

    #FV .cv a {
        display: block;
        margin: 20px auto;
        background: #FF4902;
        box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
        font-size: 22px;
        font-weight: 600;
    }

    #FV .cv a span {
        display: inline;
        font-size: 18px;
    }

	#FV ul{
		width:fit-content;
	}
	
    #FV ul figure {
        font-size: 18px;
    }
	
	#FV li p {
    font-size: 19px;
}

    #FV .top {
        width: 85%;
        margin: 20px auto;
    }

    #FV .top img {
        aspect-ratio: 0;
    }
	
	#FV .fv_image {
    height: 450px;
}

    #customer h3 {
        font-size: 28px;
        margin-top: 70px;
    }

    #customer h3::before {
        left: -100px;
    }

    #customer h3::after {
        right: -90px;
    }

    #assignment h3 {
        font-size: 23px;
    }

    #assignment h3 strong {
        font-size: 28px;
    }

    #assignment .list {
        width: 854px;
        margin-top: 70px;
        margin-bottom: 90px;
    }

    #assignment ul {
        width: fit-content;
    }

    #assignment ul li {
        font-size: 17px;
    }

    #assignment ul li br {
        display: none;
    }

    #assignment ul li:before {
        font-size: 22px;
        left: -5%;
        top: 0;
    }

    #assignment .wp-block-image img {
        width: 150px !important;
    }

    #assignment .image1,
    #assignment .image2 {
        bottom: -9%;
    }

    #assignment p {
        padding-top: 100px;
        padding-bottom: 100px;
        font-size: 30px;
    }

    #assignment p strong {
        font-size: 40px;
    }
	
	    #case .else {
        margin-top: 150px;
    }

	#case .else .list{
		width:800px;
	}
	
    #case .else .list p {
        font-size: 28px;
        line-height: 2.5em;
    }

    #case .else .list p strong {
        font-size: 35px;
    }

    #case .list p strong::before {
        font-size: 35px;
        top: -44px;
    }

    #case .else .list .job {
        font-size: 25px;
        margin: 25px 15px !important;
    }

    #case .else .jobs .job:nth-child(3) {
        margin: auto 10px !important;
    }

    #case .else .jobs .job:nth-child(4) {
        margin-right: 10px !important;
    }

    #case .else .jobs .job:nth-child(5) {
        margin-left: 10px !important;
    }

    #case .else .list .job::before {
        font-size: 23px;
    }

    #case .else .jobs .job:nth-child(3),
    #case .else .jobs .job:nth-child(4),
    #case .else .jobs .job:nth-child(5) {
        font-size: 20px;
    }

    #case .else .list .job:nth-child(3)::before,
    #case .else .list .job:nth-child(4)::before,
    #case .else .list .job:nth-child(5)::before {
        font-size: 20px;
    }

    #case .else .list {
        padding-top: 42px;
        padding-bottom: 59px;
    }

    #case .else .jobs {
        justify-content: center;
    }

    #service h3 {
        font-size: 35px;
        margin-top: 180px;
		margin-bottom:80px;
    }

    #service h3 strong {
        font-size: 40px;
        position: relative;
        margin-left: 10%;
    }

    #service h3 ::before {
        width: 73px;
        height: 73px;
        top: -80%;
    }

    #service h3 strong::after {
        font-size: 30px;
    }
	
	#service .item:nth-child(2) .content:nth-child(1) .text, #service .item:nth-child(2) .content:nth-child(2) .text{
		width:650px;
	}

    #service svg {
        margin-top: 0;
    }

    #service .item:nth-child(2) .content:nth-child(1) img {
        width: 586px;
    }

    #service .item:nth-child(2) .content:nth-child(2) img {
        width: 320px;
    }

    #service .item:nth-child(2) .content:nth-child(1) .text h4 {
        font-size: 22px;
        width: 80%;
    }

    #service .item:nth-child(2) .content:nth-child(2) .text h4 {
        font-size: 22px;
        width: 80%;
		margin:auto;
    }

    #service .item:nth-child(2) .content h4 strong {
        font-size: 28px;
    }

    #service .item:nth-child(2) h4 strong::before {
        font-size: 28px;
        top: -30px;
    }

    #service .item:nth-child(2) .content:nth-child(1) .text p {
        margin-top: 0px;
        width: 80%;
    }

    #service .item:nth-child(2) .content:nth-child(2) .text p {
        margin-top: 0px;
        width: 80%;
		margin:auto;
    }

    #service .item:nth-child(2) .no_copy {
        width: 620px;
        padding: 14px 37px;
    }

    #service .item:nth-child(2) .no_copy img {
        width: 220px;
        display: block;
    }

    #service .item:nth-child(2) .no_copy .text {
        margin-left: 30px;
    }


    #service .item:nth-child(2) .no_copy p {
        font-size: 13px;
    }

    #service .item:nth-child(2) .no_copy a {
        font-size: 13px;
    }

    #service .item:nth-child(3) .contents {
        width: fit-content;
    }

    #service .item:nth-child(3) .content::before {
        font-size: 15px;
    }

    #service .item:nth-child(3) .content h4 {
        font-size: 20px;
        margin-top: 35px;
    }


    #service .item:nth-child(3) .picture {
        width: 270px;
        height: 190px;
    }

    #service .item:nth-child(3) .contents img {
        width: 270px;
        height: 190px;
    }

    #service .item:nth-child(3) .content .text {
        margin-top: 35px;
    }

    #service .item:nth-child(3) .content {
        width: 330px;
        height: max-content;
        margin-left: 5px !important;
        margin-right: 5px !important;
    }
	
	#service .item:nth-child(4){
		width:fit-content;
	}
	
	#service .item:nth-child(4) .list h4 {
        font-size: 25px;
    }

    #service .item .decoration_img {
        width: auto;
    }

    #flow ol {
        width: fit-content;
    }

    #flow li:nth-child(2) figure {
        margin-bottom: 0 !important;
    }

    #flow li h4 {
        font-size: 20px;
        padding-left: 40px;
    }

    #flow li:nth-child(2) h4 {
        padding-bottom: 20px;
    }

    #flow li:nth-child(2) h4::before {
        top: 10%;
    }

    #flow li h4 br {
        display: block;
    }

    #flow li {
        width: 250px;
        padding: 28px;
        margin-left: 7px;
        margin-right: 7px;
    }

    #question .content {
        width: 761px;
        margin-bottom: 15px;
    }

    footer {
        padding-bottom: 30px;
    }

    footer .flex {
        display: flex;
        align-items: center;
        width: fit-content;
        margin: 57px auto 46px;
    }

    footer img {
        width: 268px;
    }

    footer .information {
        margin-top: 0;
        margin-left: 70px !important;
    }

    footer .information h6 {
        width: 16%;
    }

    footer .information p {
        width: fit-content;
    }

    footer br {
        display: none;
    }

    footer .nav {
        width: 500px;
        display: flex;
        align-items: center;
        margin-bottom: 60px;
    }

    footer .nav p {
        margin: 0 10px;
    }
    
	.contact h2,
    .privacypolicy h2,
    .support h2 {
        font-size: 40px;
        padding: 30px 0 60px 100px;
		margin-bottom: 80px;
    }
	
	.contact p,
    .privacypolicy p,
    .support p {
        width: auto;
        margin: auto;
    }
	
	.contact p{
		margin-bottom:20px;
	}
	
	.wpcf7-form label::before{
	font-size:20px;
}

.contact .title{
	font-size:20px;
}

form .Required .title::after{
	font-size: 18px;
}
	form input, form select, form textarea,.wpcf7-list-item-label{
		font-size:20px;
	}
	
	.wpcf7-submit {
    margin-top: 80px;
}
	
	.wpcf7-not-valid-tip{
		font-size:18px;
	}
	
	.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
    font-size: 20px;
    text-align: center;
}
	form select option{
		font-size:18px;
	}
	.wpcf7 form.sent .wpcf7-response-output {
    font-size: 18px;
    text-align: center;
}
	
	.support h3,
	.privacypolicy h3{
	font-size: 20px;
}
	
}

@media screen and (min-width: 880px) {
    #case li {
        width: 865px;
        margin: 40px;
        border: 1px solid rgba(0, 0, 0, 0.57);
        box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, 0.25);
    }

    #case .content:nth-child(1) {
        display: flex;
        align-items: flex-start;
        padding: 30px;
    }

    #case ul li .blue,
    #case ul li p:nth-child(2) {
        margin-bottom: 0;
    }

    #case .content:nth-child(1) .flex {
        margin-right: 25px;
    }

    #case .content:nth-child(2) {
        display: flex;
        width: fit-content;
        margin: auto;
    }

    #case .content:nth-child(2) h5 {
        margin-right: 18px;
    }

    #case .content:nth-child(2) .flex:nth-child(1) {
        position: relative;
        margin-right: 113px;
    }


    #case .content:nth-child(2) .flex:nth-child(1)::after {
        content: "×";
        font-size: 50px;
        color: #00AADE;
        position: absolute;
        right: -88px;
    }


    #case ul li .before,
    #case ul li .after {
        display: flex;
        width: fit-content;
        margin: 44px auto;
        align-items: center;
    }

    #case ul li .before {
        margin-bottom: 0;
    }

    #case ul li .gray,
    #case ul li .sky {
        padding: 13px 29px;
        margin-right: 30px;
        border-radius: 10px 10px 10px 10px;
        width: fit-content;
        height: fit-content;
    }

    #case ul li .before p,
    #case ul li .after p {
        border: none;
        background: none;
        width: 560px;
    }

    #case li .before::after {
        bottom: -40px;
    }
}

@media screen and (min-width: 1100px){
	
	    .wp-block-navigation .wp-block-navigation-item__label {
        font-size: 18px;
        padding-right: 20px;
    }
	
	#service .item:nth-child(2) .content {
        display: flex;
        align-items: center;
    }

    #service .item:nth-child(2) .content:nth-child(1) {
        flex-direction: row-reverse;
    }
	
	#service .item:nth-child(2) .content:nth-child(1) .text {
        width: 60%;
        margin-left: -1px !important;
        padding-right: 50px;
    }
	
	    #service .item:nth-child(2) .content:nth-child(2) .text {
        width: 60%;
        margin-right: -1px !important;
        padding-left: 50px;
    }
	
	#service .item:nth-child(2) .content:nth-child(1) .text h4 {
        margin-right: 0 !important;
    }
	
	#service .item:nth-child(2) .content:nth-child(1) .text p {
        margin-right: 0 !important;
    }
	
	   #service .item:nth-child(2) .content:nth-child(2) .text p {
        margin-left: 30px !important;
    }
	
	#service .item:nth-child(2) .content:nth-child(2) .text h4 {
        margin-left: 30px !important;
    }
	
	#service .item:nth-child(3) .contents {
        display: flex;
    }
	
	#service .item:nth-child(3) .decoration_img {
        bottom: 50px;
    }
	
	#service .item:nth-child(3) .content:nth-child(1),
	#service .item:nth-child(3) .content:nth-child(3){
		padding-bottom:53px;
	}
	
	#service .item:nth-child(4) .list {
        width: fit-content;
        padding: 30px;
    }


    #service .item:nth-child(4) .list .category:nth-child(1) h4 {
        padding: 40px 55px;
        margin: auto 95px 30px 45px !important;
    }

    #service .item:nth-child(4) .list .category:nth-child(2) h4 {
        padding: 55px 42px;
        margin: 30px 95px 30px 45px !important;
    }

    #service .item:nth-child(4) .list .category:nth-child(3) h4 {
        padding: 40px 43px;
        margin: 30px 95px auto 45px !important;
    }

    #service .item:nth-child(4) .list h4 br {
        display: block;
    }

    #service .item:nth-child(4) .list .category {
        display: flex;
    }

    #service .item:nth-child(4) .list .category:nth-child(2),
    #service .item:nth-child(4) .list .category:nth-child(3) {
        align-items: center;
    }

    #service .item:nth-child(4) .list .category ul {
        margin-left: 0 !important;
    }

    #service .item:nth-child(4) .list .category:nth-child(1) ul {
        padding-top: 20px;
    }

    #service .item:nth-child(4) .list .category:nth-child(3) ul {
        padding-top: 45px;
        column-count: 2;
        width: fit-content;
        column-gap: 0.5em;
    }
	
	#flow ol {
        display: flex;
    }
	
	#flow ol li::after {
        bottom: 40%;
        left: auto;
        right: -50px;
        transform: rotate(-90deg);
    }

}
	
	
@media screen and (min-width: 1200px) {
    #FV {
        display: flex;
        flex-direction: row-reverse;
        align-items: center;
    }

    #FV .top {
        width: 100%;
    }

    #FV .top img {
        aspect-ratio: 1;
    }

	
	#FV .fv_image {
    background-position: 25% 18px;
		height: 700px

}
}